/**
 * Yombal Marché — Design unifié « Terroir Premium »
 * Couche finale : chaleur, lisibilité, cohérence e-commerce.
 */

:root {
  --y-cream: #faf6f0;
  --y-cream-deep: #f0e6d8;
  --y-green: #1a3d2b;
  --y-green-mid: #2a5c40;
  --y-green-soft: #e8f0eb;
  --y-gold: #b8862e;
  --y-gold-light: #d4a84b;
  --y-terra: #c8503a;
  --y-ink: #1a2418;
  --y-muted: rgba(26, 36, 24, 0.62);
  --y-border: rgba(26, 61, 43, 0.1);
  --y-shadow: 0 20px 60px rgba(26, 61, 43, 0.1);
  --y-shadow-lg: 0 32px 80px rgba(26, 61, 43, 0.14);
  --y-radius: 20px;
  --y-ease: cubic-bezier(0.22, 1, 0.36, 1);
}

.site-premium {
  background: var(--y-cream);
  color: var(--y-ink);
}
.site-premium #grain { opacity: 0.03; }

/* Header unifié */
.site-premium .site-header-unified {
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
  z-index: 900;
}
.site-premium .header-shell {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  height: var(--nav-h-primary, 72px) !important;
  padding: 0 clamp(16px, 4vw, 48px) !important;
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  background: rgba(250, 246, 240, 0.94) !important;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-bottom: 1px solid var(--y-border) !important;
  transform: none !important;
  animation: none !important;
  box-shadow: none !important;
}
.site-premium .site-header-unified.is-scrolled .header-shell,
.site-premium .site-header-unified.is-solid .header-shell {
  background: rgba(250, 246, 240, 0.98) !important;
}
.site-premium .site-header-unified.is-scrolled,
.site-premium .site-header-unified.is-solid {
  box-shadow: var(--y-shadow);
}
.site-premium .nav-logo-img {
  filter: none !important;
  opacity: 1 !important;
  height: 52px;
}

/* Mobile : liens masqués, bouton menu visible */
.site-premium .header-shell .nav-links {
  display: none !important;
}
.site-premium .header-shell .nav-toggle {
  display: inline-flex !important;
  position: relative !important;
  top: auto !important;
  right: auto !important;
  width: 44px !important;
  height: 44px !important;
  padding: 0 !important;
  border-radius: 12px !important;
  color: var(--y-green) !important;
  background: var(--y-green-soft) !important;
  border: 1px solid var(--y-border) !important;
  align-items: center;
  justify-content: center;
}

/* Desktop : barre de navigation complète */
@media (min-width: 901px) {
  .site-premium .header-shell .nav-links {
    display: flex !important;
    position: static !important;
    flex: 1;
    justify-content: center;
    align-items: center;
    gap: clamp(8px, 1.2vw, 20px);
    min-width: 0;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
    background: transparent !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
    list-style: none;
  }
  .site-premium .header-shell .nav-links::-webkit-scrollbar {
    display: none;
  }
  .site-premium .header-shell .nav-links a,
  .site-premium .header-shell .nav-dropdown-trigger,
  .site-premium .header-shell .nav-mega-trigger {
    color: var(--y-muted) !important;
    font-family: 'Outfit', sans-serif;
    font-size: 13px;
    font-weight: 500;
    white-space: nowrap;
  }
  .site-premium .header-shell .nav-links a:hover,
  .site-premium .header-shell .nav-links a.active,
  .site-premium .header-shell .nav-dropdown-trigger.active,
  .site-premium .header-shell .nav-mega-trigger.active {
    color: var(--y-green) !important;
  }
  .site-premium .header-shell .nav-toggle {
    display: none !important;
  }
  .site-premium .header-shell .nav-dropdown {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    margin-top: 8px;
    background: #fff;
    border: 1px solid var(--y-border);
    border-radius: 14px;
    box-shadow: var(--y-shadow);
    padding: 8px;
    min-width: 220px;
  }
}
.site-premium .btn-nav {
  background: var(--y-green) !important;
  color: #fff !important;
  border: none !important;
  font-family: 'Outfit', sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 12px 22px;
  border-radius: 100px;
}
.site-premium .btn-nav:hover { background: var(--y-green-mid) !important; }
body.site-premium::before { display: none !important; }

.site-premium .site-main:not(.site-main--xd) {
  padding-top: var(--nav-h) !important;
}
.site-premium .site-main--xd { padding-top: 0 !important; }

/* Hero accueil — photo de fond thématique */
.site-premium .xd-hero {
  min-height: min(92vh, 900px);
  background: var(--y-green-deep, #0f3322);
  opacity: 1 !important;
  padding-top: calc(var(--nav-h) + 48px);
}
.site-premium .xd-hero__scene { opacity: 1; }
.site-premium .xd-hero__photo img {
  object-position: center 40%;
}
.site-premium .xd-hero__photo-overlay {
  background:
    linear-gradient(
      108deg,
      rgba(250, 246, 240, 0.96) 0%,
      rgba(250, 246, 240, 0.88) 42%,
      rgba(26, 61, 43, 0.28) 68%,
      rgba(15, 51, 34, 0.48) 100%
    );
}

/* Hero sans photo — fond animé sombre */
.site-premium .xd-hero--no-photo .xd-line {
  color: #fffcf7;
}
.site-premium .xd-hero--no-photo .xd-line--stroke .xd-char,
.site-premium .xd-hero--no-photo .xd-line--stroke {
  color: transparent !important;
  -webkit-text-stroke: 1.5px rgba(212, 168, 75, 0.8) !important;
}
.site-premium .xd-hero--no-photo .xd-hero__lead {
  color: rgba(255, 252, 247, 0.82);
}
.site-premium .xd-hero--no-photo .xd-stat dt {
  color: #fffcf7;
}
.site-premium .xd-hero--no-photo .xd-stat dd {
  color: rgba(255, 252, 247, 0.55);
}
.site-premium .xd-hero--no-photo .xd-stats {
  border-top-color: rgba(255, 252, 247, 0.12);
}
.site-premium .xd-hero--no-photo .xd-btn--ghost {
  background: transparent !important;
  border-color: rgba(255, 252, 247, 0.35) !important;
  color: #fffcf7 !important;
}
.site-premium .xd-hero--no-photo .xd-float-card {
  background: rgba(255, 252, 247, 0.05) !important;
  border: 1px solid rgba(255, 252, 247, 0.12) !important;
  color: #fffcf7 !important;
  box-shadow: none;
}
.site-premium .xd-hero--no-photo .xd-float-card--hero p,
.site-premium .xd-hero--no-photo .xd-float-card--stat p,
.site-premium .xd-hero--no-photo .xd-float-card--gold p {
  color: rgba(255, 252, 247, 0.5) !important;
}
.site-premium .xd-hero--no-photo .xd-float-card__link {
  color: var(--y-gold);
}
.site-premium .xd-hero--no-photo .xd-hero__vignette,
.site-premium .xd-hero--no-photo .xd-hero__beam,
.site-premium .xd-hero--no-photo .xd-hero__watermark,
.site-premium .xd-hero--no-photo .xd-hero__cursor-glow {
  display: block;
}
.site-premium .xd-hero--no-photo .xd-hero__canvas {
  opacity: 0.45;
}
.site-premium .xd-hero--no-photo .xd-hero__aurora {
  opacity: 1;
}

/* Hero allégé — une colonne, copy lisible */
.site-premium .xd-hero--simple .xd-hero__body {
  grid-template-columns: 1fr;
  max-width: 42rem;
  margin-inline: auto;
  justify-items: start;
  min-height: min(70vh, 640px);
  align-content: center;
}
.site-premium .xd-hero--simple .xd-hero__copy {
  max-width: 38rem;
}
.site-premium .xd-hero--simple .xd-hero__cta {
  margin-bottom: 0;
}

.site-premium .xd-hero:not(.xd-hero--no-photo) .xd-hero__vignette,
.site-premium .xd-hero:not(.xd-hero--no-photo) .xd-hero__beam,
.site-premium .xd-hero:not(.xd-hero--no-photo) .xd-hero__watermark,
.site-premium .xd-hero:not(.xd-hero--no-photo) .xd-hero__cursor-glow { display: none; }
.site-premium .xd-hero:not(.xd-hero--no-photo) .xd-hero__canvas { opacity: 0.2; }
.site-premium .xd-hero:not(.xd-hero--no-photo) .xd-hero__aurora { opacity: 0.45; }
.site-premium .xd-eyebrow { color: var(--y-gold); }
.site-premium .xd-hero:not(.xd-hero--no-photo) .xd-line { color: var(--y-green); }
.site-premium .xd-hero:not(.xd-hero--no-photo) .xd-line--stroke .xd-char,
.site-premium .xd-hero:not(.xd-hero--no-photo) .xd-line--stroke {
  color: var(--y-terra) !important;
  -webkit-text-stroke: 0 !important;
  font-style: italic;
  font-weight: 400 !important;
}
.site-premium .xd-hero:not(.xd-hero--no-photo) .xd-hero__lead { color: var(--y-muted); }
.site-premium .xd-btn--light {
  background: var(--y-green) !important;
  color: #fff !important;
}
.site-premium .xd-hero:not(.xd-hero--no-photo) .xd-btn--ghost {
  background: #fff !important;
  border-color: var(--y-border) !important;
  color: var(--y-green) !important;
}
.site-premium .xd-hero:not(.xd-hero--no-photo) .xd-stat dt { color: var(--y-green); }
.site-premium .xd-hero:not(.xd-hero--no-photo) .xd-stat dd { color: var(--y-muted); }
.site-premium .xd-hero:not(.xd-hero--no-photo) .xd-stats { border-top-color: var(--y-border); }

.site-premium .xd-hero:not(.xd-hero--no-photo) .xd-float-card {
  background: rgba(255, 255, 255, 0.94) !important;
  border: 1px solid var(--y-border) !important;
  color: var(--y-ink) !important;
  box-shadow: var(--y-shadow);
  backdrop-filter: blur(10px);
}
.site-premium .xd-hero:not(.xd-hero--no-photo) .xd-float-card--main p,
.site-premium .xd-hero:not(.xd-hero--no-photo) .xd-float-card--small p { color: var(--y-muted) !important; }
.site-premium .xd-hero:not(.xd-hero--no-photo) .xd-float-card--main strong,
.site-premium .xd-hero:not(.xd-hero--no-photo) .xd-float-card--small strong { color: var(--y-green); }
.site-premium .xd-hero:not(.xd-hero--no-photo) .xd-float-card--gold {
  background: linear-gradient(145deg, #fff9ee, #fff) !important;
}

.site-premium .site-main--xd { background: var(--y-cream); }
.site-premium .xd-marquee { background: var(--y-green); border: none; }
.site-premium .xd-panel--dark,
.site-premium .xd-manifesto { background: var(--y-green) !important; }
.site-premium .xd-section-title { font-family: 'Fraunces', serif; color: var(--y-green); }
.site-premium .xd-section-title em { color: var(--y-terra); font-style: italic; }
.site-premium .xd-bento__cell {
  background: #fff;
  border-color: var(--y-border);
}
.site-premium .xd-bento__cell--accent {
  background: linear-gradient(145deg, var(--y-green), var(--y-green-mid));
  color: #fff;
}
.site-premium .xd-finale {
  background: linear-gradient(160deg, var(--y-green) 0%, #0f281c 100%);
}

.site-premium .btn-primary {
  background: var(--y-green) !important;
  color: #fff !important;
  border-radius: 100px;
  font-family: 'Outfit', sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.site-premium .btn-outline {
  border: 1.5px solid var(--y-border) !important;
  color: var(--y-green) !important;
  border-radius: 100px;
}

.site-premium .boutique-card {
  background: #fff;
  border: 1px solid var(--y-border);
  border-radius: var(--y-radius);
}
.site-premium .boutique-card:hover { box-shadow: var(--y-shadow-lg); }

.site-premium .inner-hero,
.site-premium .boutique-hero--xd,
.site-premium .page-hero {
  background: linear-gradient(160deg, var(--y-green-soft) 0%, var(--y-cream) 70%) !important;
  color: var(--y-ink) !important;
  padding-top: calc(var(--nav-h) + 48px) !important;
}
.site-premium .inner-hero__title,
.site-premium .boutique-hero__title,
.site-premium .page-hero:not(.page-hero--editorial) .section-title { color: var(--y-green) !important; }
.site-premium .inner-hero__title em,
.site-premium .boutique-hero__title em,
.site-premium .page-hero:not(.page-hero--editorial) .section-title em { color: var(--y-terra) !important; }
.site-premium .inner-hero__lead,
.site-premium .boutique-hero__lead,
.site-premium .page-hero:not(.page-hero--editorial) .section-sub { color: var(--y-muted) !important; }

.site-premium .page-hero--editorial .section-title { color: var(--y-green) !important; }
.site-premium .page-hero--editorial .section-title em { color: var(--y-terra) !important; }
.site-premium .page-hero--editorial .section-eyebrow { color: var(--y-gold) !important; opacity: 1 !important; }
.site-premium .page-hero--editorial .section-sub,
.site-premium .page-hero--editorial .page-hero-lead { color: var(--y-ink) !important; opacity: 0.82 !important; }
.site-premium .page-hero--editorial .section-sub strong { color: var(--y-green); }

.site-premium .cine-nav__panel { background: var(--y-green); }
.site-premium .site-footer {
  background: var(--y-green) !important;
  border-top: none;
}
.site-premium .site-footer .footer-logo-img {
  filter: none;
  opacity: 1;
  background: #fff;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.18);
}

.site-premium #xd-preloader { display: none !important; }
.site-premium body.is-preloading .header-shell,
.site-premium body.is-preloading .site-main--xd { visibility: visible !important; }
body.site-premium.page-leave { animation: none !important; }

.site-premium .section-title { font-family: 'Fraunces', serif; color: var(--y-green); }
.site-premium .section-title em { color: var(--y-terra); font-style: italic; }
.site-premium .section-eyebrow { color: var(--y-gold); }

@media (max-width: 900px) {
  .site-premium .header-shell .nav-logo {
    position: relative !important;
    left: auto !important;
    z-index: auto !important;
  }
  .site-premium .nav-actions { display: flex !important; margin-left: auto; margin-right: 8px; }
}
@media (max-width: 480px) {
  .site-premium .nav-actions { display: none !important; }
  .site-premium .nav-logo-img { height: 44px; }
}

@media (pointer: coarse) {
  .site-premium body { cursor: auto !important; }
  .site-premium #cursor-dot,
  .site-premium #cursor-ring { display: none !important; }
}
