/* ===========================================
   OVERRIDES — chargé APRÈS theme.php
   =========================================== */

/* Salles — titre et description sur photo */
.salle-card-overlay h3 { color: #FEFCF9 !important; text-shadow: 0 2px 10px rgba(0,0,0,.8), 0 0 30px rgba(0,0,0,.4) !important; }
.salle-card-overlay p { color: rgba(245,240,232,.85) !important; text-shadow: 0 1px 6px rgba(0,0,0,.7) !important; }

/* Événements — titre sur photo */
.evt-icon-overlay h3 { color: #FEFCF9 !important; text-shadow: 0 2px 10px rgba(0,0,0,.8) !important; }
.evt-svg-icon { stroke: #FEFCF9 !important; filter: drop-shadow(0 1px 4px rgba(0,0,0,.6)); }

/* CTA Banner — fond = couleur du thème */
.cta-banner { background: var(--noir, #0A0A0A) !important; padding: 4rem 4rem !important; }
.cta-banner:not(:has(.cta-banner-bg)) .cta-banner-overlay { display: none !important; }
.cta-banner-overlay { background: linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,.7)) !important; }
.cta-banner-content h2 { color: var(--white, #FEFCF9) !important; text-shadow: none; }
.cta-banner-content p { color: var(--text-light, #B8B0A0) !important; text-shadow: none; }

/* Galerie — légende sur photo */
.gal-slide-caption { color: #FEFCF9 !important; }

/* ===== NAV SCROLLÉ — texte toujours lisible (max specificity avec #nav) ===== */
#nav.scrolled .nav-links a:not(.nav-cta) {
  color: #3A3630 !important;
  text-shadow: none !important;
}
#nav.scrolled .nav-links a:not(.nav-cta):hover {
  color: #8B7D3C !important;
}
#nav.scrolled .nav-logo-text,
#nav.scrolled .logo-top,
#nav.scrolled .logo-bottom {
  color: #3A3630 !important;
}
#nav.scrolled .hamburger span {
  background: #3A3630 !important;
}

/* ===== BOUTON RÉSERVER — toujours lisible ===== */
#nav .nav-cta,
#nav.scrolled .nav-cta {
  border: 1px solid #8B7D3C !important;
  color: #8B7D3C !important;
  background: transparent !important;
}
#nav .nav-cta:hover,
#nav.scrolled .nav-cta:hover {
  background: #8B7D3C !important;
  color: #FFFFFF !important;
  border-color: #8B7D3C !important;
}

/* ===== NAV DROPDOWN — même fond que le nav scrollé ===== */
.nav-sub,
.nav-dropdown > .nav-sub {
  background: var(--noir, #0A0A0A) !important;
  border-color: rgba(198,169,108,.15) !important;
  backdrop-filter: blur(20px);
}
.nav.scrolled .nav-sub,
.nav.scrolled .nav-dropdown > .nav-sub {
  background: var(--noir, #0A0A0A) !important;
}
.nav-sub li a {
  color: var(--text-light, #B8B0A0) !important;
  text-shadow: none !important;
}
.nav-sub li a:hover {
  color: var(--gold, #C6A96C) !important;
}

/* ===== MOBILE MENU — plein écran, couleurs du thème ===== */
@media(max-width:768px) {
  .nav-links {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100vh !important;
    height: 100dvh !important;
    background: var(--noir, #0A0A0A) !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    z-index: 1000 !important;
    overflow-y: auto !important;
  }
  .nav-links a,
  .nav.scrolled .nav-links a {
    color: var(--cream, #FEFCF9) !important;
    text-shadow: none !important;
    font-size: .9rem !important;
  }
  .nav-links a:hover,
  .nav.scrolled .nav-links a:hover {
    color: var(--gold, #C6A96C) !important;
  }
  .nav-sub li a,
  .nav.scrolled .nav-sub li a {
    color: var(--text-light, #B8B0A0) !important;
  }
  .nav-sub li a:hover,
  .nav.scrolled .nav-sub li a:hover {
    color: var(--gold, #C6A96C) !important;
  }
  .nav-cta,
  .nav.scrolled .nav-cta {
    border-color: var(--gold, #C6A96C) !important;
    color: var(--gold, #C6A96C) !important;
    text-shadow: none !important;
  }
  .nav-dropdown > .nav-sub {
    background: transparent !important;
    border: none !important;
  }
  .hamburger span {
    background: var(--gold, #C6A96C) !important;
  }
}
/* ── Guillemet témoignages ── */
.temoignage-quote { position: relative; z-index: 1; }
.temoignage-quote::before {
  content: '\201C' !important;
  font-family: var(--serif) !important;
  font-size: clamp(20rem, 30vw, 38rem) !important;
  color: var(--gold) !important;
  opacity: .13 !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -25%) !important;
  line-height: .75 !important;
  pointer-events: none !important;
  z-index: 0 !important;
  white-space: nowrap !important;
}

/* ── V3 DESIGN UPGRADES ── */

/* Hero ornement couleur gold */
.hero-ornament svg { color: var(--gold, #C6A96C); }
.hero-orn-line { opacity: .6; }

/* Cards hébergements — ombre au hover */
.heb-card:hover {
  box-shadow: 0 20px 60px rgba(0,0,0,.4), 0 0 40px rgba(198,169,108,.06) !important;
}

/* Cards événements — ombre au hover */
.evt-card:hover {
  box-shadow: 0 20px 50px rgba(0,0,0,.35) !important;
}

/* Salles — zoom image légèrement plus marqué */
.salle-card img {
  transition: transform .9s cubic-bezier(.16,1,.3,1) !important;
}

/* Timeline épique — dot glow au hover */
.tl-epic-row:hover .tl-epic-dot {
  background: var(--gold, #C6A96C) !important;
  box-shadow: 0 0 25px rgba(198,169,108,.5) !important;
}

/* Bouton retour en haut */
.back-to-top {
  position: fixed;
  bottom: 2rem;
  left: 2rem;
  z-index: 998;
  width: 44px;
  height: 44px;
  background: rgba(10,10,10,.85);
  border: 1px solid rgba(198,169,108,.25);
  color: var(--gold, #C6A96C);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transform: translateY(20px);
  transition: all .4s;
  pointer-events: none;
  backdrop-filter: blur(8px);
}
.back-to-top.visible {
  opacity: 1;
  transform: translateY(0);
  pointer-events: all;
}
.back-to-top:hover {
  background: var(--gold, #C6A96C);
  color: var(--noir, #0A0A0A);
}
