/* Thème : custom */
:root {
  --gold: #cd9a32;
  --gold-light: #95a876;
  --noir: #f8f6f0;
  --noir-soft: #ede9df;
  --noir-card: #fffffa;
  --cream: #1e2418;
  --white: #1e2418;
  --text-light: #4a5240;
  --text-muted: #7a7d6e;
}

body { background: #f8f6f0; color: #1e2418; }
::selection { background: #cd9a32; color: #f8f6f0; }

/* Loader */
.loader { background: #f8f6f0; }

/* Nav — toujours lisible sur vidéo hero */
.nav-links a { color: #FEFCF9 !important; text-shadow: 0 1px 6px rgba(0,0,0,.6); }
.nav-links a:hover { color: #cd9a32 !important; }
.nav-cta { border-color: rgba(254,252,249,.4) !important; color: #FEFCF9 !important; text-shadow: 0 1px 6px rgba(0,0,0,.6); }
.nav-cta:hover { background: #cd9a32 !important; color: #f8f6f0 !important; text-shadow: none; }
.nav-links a::after { background: #cd9a32; }
.logo-top { text-shadow: 0 1px 6px rgba(0,0,0,.5); }
.logo-bottom { color: #FEFCF9 !important; text-shadow: 0 1px 6px rgba(0,0,0,.5); }
.nav-sub { background: #f8f6f0; border-color: rgba(205,154,50,.12); }
.nav-sub li a { text-shadow: none !important; color: #4a5240 !important; }
.nav-sub li a:hover { color: #cd9a32 !important; background: rgba(205,154,50,.06); }
/* Nav scrolled — fond visible, utiliser couleurs du thème */
.nav.scrolled { background: #f8f6f0 !important; }
.nav.scrolled .nav-links a { color: #1e2418 !important; text-shadow: none; }
.nav.scrolled .nav-links a:hover { color: #cd9a32 !important; }
.nav.scrolled .nav-cta { border-color: #cd9a32 !important; color: #cd9a32 !important; text-shadow: none; }
.nav.scrolled .nav-cta:hover { background: #cd9a32 !important; color: #f8f6f0 !important; }
.nav.scrolled .logo-top { text-shadow: none; }
.nav.scrolled .logo-bottom { color: #1e2418 !important; text-shadow: none; }
/* Menu mobile — fond et texte du thème, toujours */
@media(max-width:768px) {
  .nav-links, .nav.scrolled .nav-links { background: #f8f6f0 !important; }
  .nav-links a, .nav.scrolled .nav-links a { color: #1e2418 !important; text-shadow: none !important; }
  .nav-links a:hover, .nav.scrolled .nav-links a:hover { color: #cd9a32 !important; }
  .nav-sub li a, .nav.scrolled .nav-sub li a { color: #4a5240 !important; }
  .nav-sub li a:hover, .nav.scrolled .nav-sub li a:hover { color: #cd9a32 !important; }
  .nav-cta, .nav.scrolled .nav-cta { border-color: #cd9a32 !important; color: #cd9a32 !important; text-shadow: none !important; }
  .hamburger span { background: #FEFCF9; box-shadow: 0 0 4px rgba(0,0,0,.5); }
  .nav.scrolled .hamburger span { background: #cd9a32; box-shadow: none; }
}

/* Sections */
.section-label { color: #cd9a32; }
.section-title { color: #1e2418; }
.section-title em { color: #cd9a32; }
.hero h1 em { color: #cd9a32; }
.gold-line { background: #cd9a32; }

/* Hébergements */
.hebergements { background: #ede9df; }
.heb-card { background: #fffffa; border-color: rgba(205,154,50,.08); }
.heb-card-body h3 { color: #1e2418; }
.heb-feature { color: #cd9a32; }
.card-link { color: #cd9a32; }

/* Salles */
.salle-card-overlay h3 { color: #1e2418; }

/* Timeline */
.timeline::before { background: linear-gradient(to bottom, transparent, #cd9a32, transparent); }
.timeline-item::before { background: #cd9a32; box-shadow: 0 0 15px rgba(205,154,50,.4); }
.timeline-year { color: #cd9a32; }

/* Galerie */
.gal-arrow { border-color: rgba(205,154,50,.3); color: #cd9a32; }

/* Témoignages */
.temoignage-stars { color: #cd9a32; }
.temoignage-dot.active { background: #cd9a32; }

/* Événements */
.evt-card:hover { border-color: rgba(205,154,50,.3); }
.evt-icon-overlay { background: rgba(205,154,50,.1); }

/* Boutons */
.btn-gold { background: #cd9a32; color: #f8f6f0; }
.btn-gold:hover { background: #95a876; box-shadow: 0 10px 40px rgba(205,154,50,.3); }
.btn-outline:hover { border-color: #cd9a32; color: #cd9a32; }

/* Footer */
.footer-col h4 { color: #cd9a32; }
.footer-legal a:hover { color: #cd9a32; }
.stat-number { color: #cd9a32; }

/* Scrollbar */
::-webkit-scrollbar-thumb { background: #cd9a32; }

/* Lang switcher */
.lang-btn.active { color: #cd9a32; border-color: #cd9a32; }

/* CTA Banner */
.cta-banner-content h2 { color: #1e2418; }

/* Hero — toujours lisible sur vidéo */
.hero-badge { color: #cd9a32; border-color: rgba(205,154,50,.5); background: rgba(0,0,0,.55); backdrop-filter: blur(8px); text-shadow: 0 1px 4px rgba(0,0,0,.8); }
.hero h1 { color: #FEFCF9; text-shadow: 0 2px 20px rgba(0,0,0,.7), 0 4px 40px rgba(0,0,0,.5), 0 0 80px rgba(0,0,0,.3); }
.hero h1 em { color: #cd9a32; text-shadow: 0 2px 20px rgba(0,0,0,.7), 0 4px 40px rgba(0,0,0,.5); }
.hero-sub { color: rgba(254,252,249,.9); text-shadow: 0 2px 12px rgba(0,0,0,.7), 0 0 30px rgba(0,0,0,.4); }
.hero-buttons .btn-outline { color: #FEFCF9 !important; border-color: rgba(254,252,249,.4) !important; background: rgba(0,0,0,.3); backdrop-filter: blur(6px); text-shadow: 0 1px 4px rgba(0,0,0,.6); }
.hero-buttons .btn-outline:hover { border-color: #cd9a32 !important; color: #cd9a32 !important; background: rgba(0,0,0,.5); }
.hero-buttons .btn-gold { text-shadow: none; }
.hero-scroll-line { background: linear-gradient(to bottom, #cd9a32, transparent); }
.hamburger span { background: #cd9a32; }