/* ===================================================================
   ADÉLIE BIJOUX — Overrides globaux (header/footer/cookie/typo)
   Activé par <html class="is-adelie"> (posé par shop-adelie-inject.js)
   ZÉRO impact sur BEV master tant que la classe n'est pas posée.
   =================================================================== */

html.is-adelie {
  --adelie-noir: #0a0a0a;
  --adelie-noir-soft: #1a1a1a;
  --adelie-noir-velours: #141414;
  --adelie-or: #c9a55a;
  --adelie-or-clair: #e8c674;
  --adelie-or-tres-clair: rgba(201, 165, 90, 0.4);
  --adelie-ivoire: #f5f0e8;
  --adelie-ivoire-doux: rgba(245, 240, 232, 0.85);
  --adelie-gris-muet: rgba(245, 240, 232, 0.5);
  --adelie-gris-faible: rgba(245, 240, 232, 0.25);
  --adelie-gris-tres-faible: rgba(245, 240, 232, 0.1);
  --adelie-header-h: 80px;
  --adelie-font-display: 'Playfair Display', 'Cormorant Garamond', Georgia, serif;
  --adelie-font-body: 'Inter', 'Helvetica Neue', Arial, sans-serif;
  --adelie-transition-rapide: 300ms ease;
  --adelie-max-w: 1280px;
  --adelie-pad-x: 24px;
}

/* ---------- Body de base ---------- */
html.is-adelie,
html.is-adelie body {
  background: var(--adelie-noir) !important;
  color: var(--adelie-ivoire);
}
html.is-adelie body {
  font-family: var(--adelie-font-body) !important;
  font-weight: 300;
}

html.is-adelie ::selection { background: var(--adelie-or); color: var(--adelie-noir); }

html.is-adelie h1, html.is-adelie h2, html.is-adelie h3,
html.is-adelie h4, html.is-adelie h5, html.is-adelie h6 {
  font-family: var(--adelie-font-display) !important;
  color: var(--adelie-ivoire);
  font-weight: 400;
}

/* ---------- 1. Masquer le header / footer BEV ---------- */
/* On masque uniquement le header sticky BEV existant et les footers BEV "luxury-black".
   On préserve les sous-headers/footers de zones produit ou checkout (`.product-footer`,
   `.checkout-footer`, etc.) en ciblant de manière chirurgicale.
   IMPORTANT : exclusion explicite des headers/footers injectés Adélie + natifs Adélie. */
html.is-adelie body > header:not(.adelie-injected-header):not(.adelie-header),
html.is-adelie header.sticky:not(.adelie-injected-header):not(.adelie-header),
html.is-adelie header.bev-header,
html.is-adelie header.main-header,
html.is-adelie header.site-header,
html.is-adelie #header:not(.adelie-injected-header):not(.adelie-header),
html.is-adelie header.cf-header,
html.is-adelie header[class*="bg-white"][class*="sticky"]:not(.adelie-injected-header):not(.adelie-header) {
  display: none !important;
}

html.is-adelie body > footer:not(.adelie-injected-footer):not(.adelie-footer),
html.is-adelie footer.bev-footer,
html.is-adelie footer.main-footer,
html.is-adelie footer.site-footer,
html.is-adelie footer.bg-luxury-black,
html.is-adelie footer[class*="bg-luxury-black"]:not(.adelie-injected-footer):not(.adelie-footer) {
  display: none !important;
}

/* Le footer SEO legacy + bandes promo qui reprennent les styles BEV master */
html.is-adelie .cf-seo-legacy-section-wrap { background: var(--adelie-noir-soft) !important; }
html.is-adelie .cf-seo-legacy { background: var(--adelie-noir-velours) !important; border-color: var(--adelie-gris-tres-faible) !important; }
html.is-adelie .cf-seo-legacy-summary,
html.is-adelie .cf-seo-legacy-body { color: var(--adelie-ivoire-doux) !important; }
html.is-adelie .cf-seo-legacy-summary { font-family: var(--adelie-font-display) !important; }

/* ---------- 2. Header Adélie injecté ---------- */
.adelie-injected-header {
  position: fixed;
  top: 0; left: 0; right: 0;
  height: var(--adelie-header-h, 80px);
  background: rgba(10, 10, 10, 0.7);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  z-index: 9000;
  transition: background var(--adelie-transition-rapide, 300ms ease),
              box-shadow var(--adelie-transition-rapide, 300ms ease);
  font-family: var(--adelie-font-body, 'Inter', sans-serif);
}
.adelie-injected-header.is-scrolled {
  background: rgba(10, 10, 10, 0.95);
  box-shadow: 0 1px 0 rgba(245, 240, 232, 0.1);
}
.adelie-injected-header__inner {
  max-width: var(--adelie-max-w, 1280px);
  height: 100%;
  margin: 0 auto;
  padding: 0 var(--adelie-pad-x, 24px);
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 24px;
}
.adelie-injected-header__nav {
  display: flex;
  align-items: center;
  gap: 28px;
}
.adelie-injected-header__nav a {
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--adelie-ivoire-doux, rgba(245,240,232,0.85));
  text-decoration: none;
  position: relative;
  padding: 4px 0;
  transition: color 300ms ease;
}
.adelie-injected-header__nav a::after {
  content: '';
  position: absolute;
  left: 0; bottom: -2px;
  width: 0; height: 1px;
  background: var(--adelie-or, #c9a55a);
  transition: width 300ms ease;
}
.adelie-injected-header__nav a:hover { color: var(--adelie-ivoire, #f5f0e8); }
.adelie-injected-header__nav a:hover::after { width: 100%; }

.adelie-injected-header__logo {
  font-family: var(--adelie-font-display, 'Playfair Display', serif);
  font-style: italic;
  font-weight: 400;
  font-size: 28px;
  letter-spacing: 0.02em;
  color: var(--adelie-ivoire, #f5f0e8);
  text-align: center;
  text-decoration: none;
  line-height: 1;
}

.adelie-injected-header__icons {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 18px;
}
.adelie-injected-header__icons a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 28px; height: 28px;
  color: var(--adelie-ivoire-doux, rgba(245,240,232,0.85));
  font-size: 18px;
  text-decoration: none;
  transition: color 300ms ease;
}
.adelie-injected-header__icons a:hover { color: var(--adelie-or, #c9a55a); }

.adelie-cart-badge {
  position: absolute;
  top: -4px; right: -8px;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 9px;
  background: var(--adelie-or, #c9a55a);
  color: var(--adelie-noir, #0a0a0a);
  font-family: var(--adelie-font-body, 'Inter', sans-serif);
  font-size: 10px;
  font-weight: 600;
  display: none;
  align-items: center;
  justify-content: center;
  line-height: 1;
}
.adelie-cart-badge.is-visible { display: inline-flex; }

/* Burger mobile */
.adelie-injected-header__burger {
  display: none;
  width: 36px; height: 36px;
  align-items: center;
  justify-content: center;
  color: var(--adelie-ivoire, #f5f0e8);
  background: transparent;
  border: 0;
  cursor: pointer;
}
.adelie-injected-header__burger span {
  display: block;
  width: 22px; height: 1px;
  background: currentColor;
  position: relative;
}
.adelie-injected-header__burger span::before,
.adelie-injected-header__burger span::after {
  content: '';
  position: absolute;
  left: 0; right: 0;
  height: 1px;
  background: currentColor;
}
.adelie-injected-header__burger span::before { top: -7px; }
.adelie-injected-header__burger span::after  { top: 7px; }

.adelie-injected-mobile-nav {
  display: none;
  position: fixed;
  top: var(--adelie-header-h, 80px); left: 0; right: 0;
  background: rgba(10, 10, 10, 0.98);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  padding: 28px var(--adelie-pad-x, 24px);
  border-top: 1px solid rgba(245, 240, 232, 0.1);
  z-index: 8999;
}
.adelie-injected-mobile-nav.is-open {
  display: block;
}
.adelie-injected-mobile-nav a {
  display: block;
  font-family: var(--adelie-font-display, 'Playfair Display', serif);
  font-size: 22px;
  font-weight: 300;
  letter-spacing: 0.02em;
  padding: 10px 0;
  color: var(--adelie-ivoire, #f5f0e8);
  text-decoration: none;
}

@media (max-width: 900px) {
  .adelie-injected-header__nav { display: none; }
  .adelie-injected-header__inner {
    grid-template-columns: auto 1fr auto;
  }
  .adelie-injected-header__burger { display: inline-flex; }
}

/* ---------- 3. Page wrapper : compense header sticky 80px ---------- */
/* On pousse le content vers le bas pour éviter qu'il passe sous le header */
html.is-adelie main,
html.is-adelie body > section:first-of-type,
html.is-adelie body > .content,
html.is-adelie body > .page-content,
html.is-adelie body > .container {
  padding-top: 0;
}
html.is-adelie body {
  padding-top: var(--adelie-header-h, 80px);
}
/* Si la home Adélie a déjà son propre wrapper (template adeliebijoux), ne pas double-pousser */
html.is-adelie body.adelie-body {
  padding-top: 0;
}

/* ---------- 4. Footer Adélie injecté ---------- */
.adelie-injected-footer {
  background: var(--adelie-noir, #0a0a0a);
  color: var(--adelie-ivoire-doux, rgba(245,240,232,0.85));
  padding: 64px var(--adelie-pad-x, 24px) 32px;
  margin-top: 80px;
  border-top: 1px solid rgba(245, 240, 232, 0.1);
  font-family: var(--adelie-font-body, 'Inter', sans-serif);
}
.adelie-injected-footer__inner {
  max-width: var(--adelie-max-w, 1280px);
  margin: 0 auto;
  text-align: center;
}
.adelie-injected-footer__logo {
  display: inline-block;
  font-family: var(--adelie-font-display, 'Playfair Display', serif);
  font-style: italic;
  font-size: 32px;
  color: var(--adelie-ivoire, #f5f0e8);
  text-decoration: none;
  letter-spacing: 0.02em;
  margin-bottom: 24px;
}
.adelie-injected-footer__divider {
  width: 60px;
  height: 1px;
  background: var(--adelie-or, #c9a55a);
  margin: 0 auto 32px;
}
.adelie-injected-footer__nav {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 28px;
  margin-bottom: 24px;
}
.adelie-injected-footer__nav a {
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--adelie-ivoire-doux, rgba(245,240,232,0.85));
  text-decoration: none;
  transition: color 300ms ease;
}
.adelie-injected-footer__nav a:hover { color: var(--adelie-or, #c9a55a); }

.adelie-injected-footer__social {
  display: flex;
  justify-content: center;
  gap: 24px;
  margin-bottom: 32px;
}
.adelie-injected-footer__social a {
  font-size: 12px;
  letter-spacing: 0.15em;
  color: var(--adelie-gris-muet, rgba(245,240,232,0.5));
  text-decoration: none;
  transition: color 300ms ease;
}
.adelie-injected-footer__social a:hover { color: var(--adelie-or, #c9a55a); }

.adelie-injected-footer__copyright {
  font-size: 11px;
  letter-spacing: 0.1em;
  color: var(--adelie-gris-muet, rgba(245,240,232,0.5));
  margin: 0;
}

/* ---------- 5. Cookie banner discret ---------- */
html.is-adelie [class*="cookie-banner"],
html.is-adelie [class*="cookie-consent"],
html.is-adelie [id*="cookie-banner"],
html.is-adelie [id*="cookie-consent"],
html.is-adelie [class*="bev-cookie"] {
  background: rgba(10, 10, 10, 0.96) !important;
  color: var(--adelie-ivoire-doux, rgba(245,240,232,0.85)) !important;
  border-top: 1px solid var(--adelie-gris-tres-faible, rgba(245,240,232,0.1)) !important;
  font-family: var(--adelie-font-body, 'Inter', sans-serif) !important;
}
html.is-adelie [class*="cookie"] button,
html.is-adelie [class*="consent"] button {
  background: transparent !important;
  border: 1px solid var(--adelie-or, #c9a55a) !important;
  color: var(--adelie-or, #c9a55a) !important;
  font-size: 11px !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  padding: 10px 18px !important;
  border-radius: 0 !important;
}
html.is-adelie [class*="cookie"] button:hover,
html.is-adelie [class*="consent"] button:hover {
  background: var(--adelie-or, #c9a55a) !important;
  color: var(--adelie-noir, #0a0a0a) !important;
}

/* ---------- 6. Cartes produit / pages catégorie / produit ---------- */
/* Cartes produit : fond crème -> noir velours, texte ivoire */
html.is-adelie .product-card,
html.is-adelie .nouveaute-card,
html.is-adelie [class*="product-card"],
html.is-adelie article.product {
  background: var(--adelie-noir-velours, #141414) !important;
  color: var(--adelie-ivoire, #f5f0e8);
}
html.is-adelie .product-card h3,
html.is-adelie .nouveaute-card h3,
html.is-adelie article.product h3,
html.is-adelie .product-card .name {
  color: var(--adelie-ivoire, #f5f0e8) !important;
  font-family: var(--adelie-font-display, 'Playfair Display', serif) !important;
}
html.is-adelie .product-card .price,
html.is-adelie .nouveaute-card .text-luxury-gold,
html.is-adelie .product-card [class*="price"] {
  color: var(--adelie-or, #c9a55a) !important;
}
/* Image background des cartes : garde un fond clair pour le contraste produit */
html.is-adelie .nouveaute-card .aspect-square,
html.is-adelie .product-card .aspect-square {
  background: #fafafa !important;
}

/* Boutons or */
html.is-adelie .btn-primary,
html.is-adelie .bev-btn-primary,
html.is-adelie button[type="submit"],
html.is-adelie .add-to-cart,
html.is-adelie .checkout-btn {
  background: var(--adelie-or, #c9a55a) !important;
  color: var(--adelie-noir, #0a0a0a) !important;
  border: 1px solid var(--adelie-or, #c9a55a) !important;
  font-family: var(--adelie-font-body, 'Inter', sans-serif) !important;
  font-size: 11px !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  padding: 14px 28px !important;
  transition: all 300ms ease !important;
}
html.is-adelie .btn-primary:hover,
html.is-adelie .bev-btn-primary:hover,
html.is-adelie button[type="submit"]:hover,
html.is-adelie .add-to-cart:hover,
html.is-adelie .checkout-btn:hover {
  background: var(--adelie-or-clair, #e8c674) !important;
  border-color: var(--adelie-or-clair, #e8c674) !important;
}

/* Inputs checkout */
html.is-adelie .checkout-input,
html.is-adelie input[type="text"],
html.is-adelie input[type="email"],
html.is-adelie input[type="tel"],
html.is-adelie input[type="password"],
html.is-adelie textarea,
html.is-adelie select {
  background: var(--adelie-noir-velours, #141414) !important;
  border: 1px solid var(--adelie-gris-faible, rgba(245,240,232,0.25)) !important;
  color: var(--adelie-ivoire, #f5f0e8) !important;
  border-radius: 0 !important;
}
html.is-adelie .checkout-input:focus,
html.is-adelie input:focus,
html.is-adelie textarea:focus,
html.is-adelie select:focus {
  outline: none !important;
  border-color: var(--adelie-or, #c9a55a) !important;
  box-shadow: 0 0 0 2px var(--adelie-or-tres-clair, rgba(201,165,90,0.4)) !important;
}

/* Liens or */
html.is-adelie a {
  color: var(--adelie-or, #c9a55a);
}
html.is-adelie a:hover {
  color: var(--adelie-or-clair, #e8c674);
}

/* Backgrounds blancs forcés → fond noir velours */
html.is-adelie .bg-white {
  background: var(--adelie-noir-velours, #141414) !important;
  color: var(--adelie-ivoire, #f5f0e8) !important;
}
/* Sauf les images produit et zones spécifiques */
html.is-adelie .product-card .bg-white,
html.is-adelie .nouveaute-card .bg-white {
  background: #fafafa !important;
}

/* Sections "luxury-cream" / "luxury-pearl" en fond clair → noir soft */
html.is-adelie [class*="luxury-cream"],
html.is-adelie [class*="luxury-pearl"],
html.is-adelie [class*="bg-luxury-cream"],
html.is-adelie [class*="bg-luxury-pearl"] {
  background: var(--adelie-noir-soft, #1a1a1a) !important;
}

/* Couleurs texte forcées BEV → ivoire */
html.is-adelie .text-luxury-black,
html.is-adelie .text-gray-900,
html.is-adelie .text-gray-800,
html.is-adelie .text-black {
  color: var(--adelie-ivoire, #f5f0e8) !important;
}
html.is-adelie .text-luxury-gold {
  color: var(--adelie-or, #c9a55a) !important;
}

/* Titres de section catégorie / produit en Playfair italique */
html.is-adelie .category-header h1,
html.is-adelie .product-detail h1,
html.is-adelie .page-title,
html.is-adelie h1.font-serif,
html.is-adelie h2.font-serif {
  font-family: var(--adelie-font-display, 'Playfair Display', serif) !important;
  font-style: italic;
  font-weight: 400;
}
