.derisoft-banner {
  width: 100%;
  height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  margin: 0;
  padding: 0;
}

.derisoft-banner-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  width: 100%;
  max-width: 1100px;
  padding: 0 1rem;
}

.banner-moulin img,
.banner-cabane img,
.banner-moulin,
.banner-cabane {
  height: 70px;
  width: auto;
  object-fit: contain;
}

.banner-title {
  color: #691a1d;
  font-family: 'Merriweather', serif;
  font-size: 1.8rem;
  font-weight: 700;
  margin: 0;
  white-space: nowrap;
  text-align: center;
}

@media (max-width: 768px) {
  .derisoft-banner {
    height: 90px;
  }
  .banner-moulin img,
  .banner-cabane img,
  .banner-moulin,
  .banner-cabane {
    height: 50px;
  }
  .banner-title {
    font-size: 1.2rem;
  }
}

/* Sticky version */
.derisoft-sticky {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(255,255,255,0.92);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  box-shadow: 0 2px 10px rgba(0,0,0,.06);
}

@media screen and (min-width: 783px) {
  body.admin-bar .derisoft-sticky { top: 32px; }
}
@media screen and (max-width: 782px) {
  body.admin-bar .derisoft-sticky { top: 46px; }
}


/* Palette variables */
:root {
  --auberge-brown: #6B4E3D;
  --auberge-brown-2: #A67C52;
  --auberge-red: #D6432A;
  --auberge-cream: #FAF4EE;
  --auberge-text: #2B221A;
}

/* Header bar */
.gite-header-bar {
  background: var(--auberge-brown);
  color: var(--auberge-cream);
  padding: 12px 0;
}
.gite-header-bar a { color: var(--auberge-cream); }
.gite-header-bar a:hover { color: var(--auberge-red); }

/* Hero overlay (warm/darker) */
.hero-overlay::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.5));
  mix-blend-mode: multiply;
  pointer-events: none;
}
.hero-title { text-shadow: 0 3px 18px rgba(0,0,0,.35); }

/* Card look */
.is-style-card {
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(0,0,0,.07);
  padding: 1.25rem;
}

/* Emphasis styles */
.emphasis-red { color: var(--auberge-red); font-style: italic; font-weight: 700; }
.underline-accent { box-shadow: inset 0 -0.4em 0 rgba(214,67,42,.15); }

/* Navigation hover */
.wp-block-navigation__container a:hover { color: var(--auberge-red); }

/* Gallery */
.gite-gallery { display:grid; grid-template-columns: repeat(12, 1fr); gap: 12px; }
.gite-gallery img { width:100%; height:auto; border-radius:12px; display:block; }
.g-col-6 { grid-column: span 6; } .g-col-4 { grid-column: span 4; } .g-col-8 { grid-column: span 8; }
@media (max-width: 768px) { .g-col-6, .g-col-4, .g-col-8 { grid-column: span 12; } }

/* CTA buttons in header */
.header-cta a { padding:.55rem 1rem; border-radius:999px; border:1px solid currentColor; }
