/* ============================================================
   ANGÉLIQUE — Design system global (header, footer, WooCommerce)
   Chargé sur TOUTES les pages du site via le plugin mu-plugins/
   angelique-global.php. Ne pas dupliquer ces règles ailleurs.
   ============================================================ */

:root{
  --color-chocolate:#3B2A20;
  --color-chocolate-deep:#2A1D15;
  --color-cream:#F5F0E8;
  --color-cream-warm:#ECE3D3;
  --color-bronze:#B08D57;
  --color-bronze-soft:#CBAB7C;
  --color-charcoal:#1A1A1A;
  --color-white:#FFFFFF;
  --font-display:'Playfair Display', Georgia, 'Times New Roman', serif;
  --font-sans:'Inter', -apple-system, 'Segoe UI', Arial, sans-serif;
  --wrap:1280px;
}

/* ---- Reset léger, sans toucher à l'admin bar ---- */
body.angelique-site{
  font-family:var(--font-sans);
  color:var(--color-charcoal);
  background:var(--color-cream);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
body.angelique-site h1,
body.angelique-site h2,
body.angelique-site h3{
  font-family:var(--font-display);font-weight:500;color:var(--color-chocolate-deep);line-height:1.2;
}
body.angelique-site a{color:inherit;}
body.angelique-site .angelique-wrap{max-width:var(--wrap);margin:0 auto;padding:0 40px;}
@media(max-width:640px){body.angelique-site .angelique-wrap{padding:0 24px;}}

body.angelique-site .btn,
body.angelique-site .button,
body.angelique-site button.button,
body.angelique-site input.button,
body.angelique-site a.button,
body.angelique-site .single_add_to_cart_button,
body.angelique-site .checkout-button{
  display:inline-flex!important;align-items:center;gap:10px;
  padding:16px 32px!important;
  font-size:12px!important;letter-spacing:.14em!important;text-transform:uppercase!important;
  border:1px solid var(--color-chocolate-deep)!important;
  background:var(--color-chocolate-deep)!important;color:var(--color-cream)!important;
  border-radius:0!important;box-shadow:none!important;font-weight:500!important;
  transition:background .3s ease, color .3s ease, transform .3s ease;
}
body.angelique-site .btn:hover,
body.angelique-site .button:hover,
body.angelique-site button.button:hover,
body.angelique-site .single_add_to_cart_button:hover,
body.angelique-site .checkout-button:hover{
  background:var(--color-bronze)!important;border-color:var(--color-bronze)!important;color:var(--color-chocolate-deep)!important;
  transform:translateY(-2px);
}

/* ============ HEADER (partagé sur toutes les pages) ============ */
body.angelique-site .angelique-header{
  position:sticky;top:0;z-index:100;
  background:rgba(245,240,232,.94)!important;
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(59,42,32,.12);
}
body.angelique-site .angelique-header-inner{
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;
  padding:22px 40px;max-width:var(--wrap);margin:0 auto;
}
@media(max-width:640px){body.angelique-site .angelique-header-inner{padding:16px 20px;}}
body.angelique-site .angelique-logo{
  font-family:var(--font-display);font-size:22px;letter-spacing:.3em;
  color:var(--color-chocolate-deep)!important;text-align:center;
}
body.angelique-site .angelique-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;}
body.angelique-site .angelique-icon-btn{
  width:38px;height:38px;display:flex;align-items:center;justify-content:center;
  border-radius:50%;color:var(--color-chocolate)!important;background:transparent!important;
}
body.angelique-site .angelique-icon-btn svg{width:18px;height:18px;}
body.angelique-site .angelique-menu-toggle{
  display:flex;flex-direction:column;gap:5px;width:38px;height:38px;align-items:center;justify-content:center;
  background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important;
}
body.angelique-site .angelique-menu-toggle span{width:20px;height:1px;background:var(--color-chocolate)!important;display:block!important;}
body.angelique-site .angelique-primary-nav{
  position:fixed;inset:0;top:72px;z-index:99;background:var(--color-cream)!important;
  display:flex;flex-direction:column;padding:8px 0;
  transform:translateY(-12px);opacity:0;visibility:hidden;
  transition:opacity .25s ease, transform .25s ease, visibility .25s ease;
}
body.angelique-site .angelique-primary-nav.is-open{opacity:1;visibility:visible;transform:translateY(0);}
body.angelique-site .angelique-primary-nav a{
  padding:18px 40px;width:100%;border-bottom:1px solid rgba(59,42,32,.08);
  font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:var(--color-chocolate-deep)!important;
  background:transparent!important;
}
body.angelique-site .angelique-primary-nav a:hover{color:var(--color-bronze)!important;}

/* ============ FOOTER (partagé) ============ */
body.angelique-site .angelique-footer{background:var(--color-chocolate-deep)!important;color:rgba(245,240,232,.72)!important;padding:44px 0 32px;font-size:13px;}
body.angelique-site .angelique-footer-grid{display:grid!important;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:36px;margin:0 0 44px!important;}
body.angelique-site .angelique-footer-brand{font-family:var(--font-display);font-size:19px;letter-spacing:.26em;color:var(--color-cream)!important;margin-bottom:14px;}
body.angelique-site .angelique-footer-col{padding:0!important;margin:0!important;border:none!important;background:transparent!important;}
body.angelique-site .angelique-footer-col h3{color:var(--color-cream)!important;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;margin:0 0 18px!important;padding:0!important;}
body.angelique-site .angelique-footer-col ul{list-style:none!important;padding:0!important;margin:0!important;}
body.angelique-site .angelique-footer-col li{margin:0 0 10px!important;padding:0!important;list-style:none!important;}
body.angelique-site .angelique-footer-col a{color:#EFE7D8!important;background:transparent!important;padding:0!important;margin:0!important;}
body.angelique-site .angelique-footer-col a:hover{color:var(--color-bronze)!important;}
body.angelique-site .angelique-footer-bottom{
  border-top:1px solid rgba(176,141,87,.3);padding-top:24px;
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;
  font-size:11px;color:rgba(245,240,232,.5);
}
@media(max-width:900px){
  body.angelique-site .angelique-footer-grid{display:block!important;text-align:center;max-width:460px;margin:0 auto 40px!important;}
  body.angelique-site .angelique-footer-col{padding:22px 0!important;border-top:1px solid rgba(245,240,232,.14)!important;}
  body.angelique-site .angelique-footer-col:first-child{border-top:none!important;}
  body.angelique-site .angelique-footer-bottom{justify-content:center;text-align:center;}
}

/* ============================================================
   WOOCOMMERCE — boutique, fiche produit, panier, paiement
   ============================================================ */

/* Page shop / archive produit (grille) */
body.angelique-site.woocommerce ul.products,
body.angelique-site.woocommerce-page ul.products{
  display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:36px 28px!important;
  margin:0!important;padding:0!important;
}
@media(max-width:900px){
  body.angelique-site.woocommerce ul.products,
  body.angelique-site.woocommerce-page ul.products{grid-template-columns:repeat(2,1fr)!important;gap:24px 16px!important;}
}
body.angelique-site.woocommerce ul.products li.product{
  width:100%!important;margin:0!important;text-align:left!important;
}
body.angelique-site.woocommerce ul.products li.product img{
  border-radius:0!important;aspect-ratio:3/4;object-fit:cover;margin-bottom:14px!important;
}
body.angelique-site.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--font-sans)!important;font-size:16px!important;font-weight:500!important;
  color:var(--color-charcoal)!important;margin:0 0 6px!important;
}
body.angelique-site.woocommerce ul.products li.product .price{
  font-family:var(--font-sans)!important;font-size:14.5px!important;color:var(--color-chocolate)!important;
}
body.angelique-site.woocommerce ul.products li.product .price del{color:#9a9086!important;opacity:1!important;text-decoration:line-through!important;margin-right:8px!important;}
body.angelique-site.woocommerce ul.products li.product .price ins{text-decoration:none!important;}
body.angelique-site.woocommerce ul.products li.product .button{margin-top:10px!important;padding:10px 18px!important;font-size:11px!important;}
body.angelique-site.woocommerce span.onsale{
  background:var(--color-bronze)!important;color:var(--color-chocolate-deep)!important;
  border-radius:0!important;font-family:var(--font-sans)!important;font-size:11px!important;
  font-weight:600!important;text-transform:uppercase;letter-spacing:.06em;
  min-height:auto!important;min-width:auto!important;padding:5px 10px!important;
  top:0;left:0;
}

/* Fiche produit */
body.angelique-site.woocommerce div.product .product_title{font-size:clamp(26px,3vw,36px)!important;margin-bottom:14px!important;}
body.angelique-site.woocommerce div.product p.price,
body.angelique-site.woocommerce div.product span.price{
  color:var(--color-chocolate)!important;font-family:var(--font-sans)!important;font-size:20px!important;
}
body.angelique-site.woocommerce div.product .woocommerce-product-details__short-description{color:#5a5147;font-size:15px;}
body.angelique-site.woocommerce #reviews h2,
body.angelique-site.woocommerce .woocommerce-tabs ul.tabs li a{
  font-family:var(--font-display)!important;color:var(--color-chocolate-deep)!important;
}
body.angelique-site.woocommerce .woocommerce-tabs ul.tabs li.active a{border-bottom:2px solid var(--color-bronze)!important;}

/* Panier */
body.angelique-site.woocommerce-cart table.cart,
body.angelique-site.woocommerce-cart table.shop_table{
  border:none!important;
}
body.angelique-site.woocommerce-cart table.cart th{
  font-family:var(--font-sans)!important;font-size:11px!important;letter-spacing:.1em;text-transform:uppercase;
  color:var(--color-bronze)!important;border-bottom:1px solid rgba(59,42,32,.15)!important;background:none!important;
}
body.angelique-site.woocommerce-cart table.cart td{border-bottom:1px solid rgba(59,42,32,.08)!important;}
body.angelique-site.woocommerce-cart .cart-collaterals .cart_totals{
  background:var(--color-cream-warm)!important;padding:28px!important;border-radius:0!important;
}
body.angelique-site.woocommerce-cart .cart_totals h2{font-size:20px!important;}

/* Paiement / Checkout */
body.angelique-site.woocommerce-checkout form.checkout input.input-text,
body.angelique-site.woocommerce-checkout form.checkout select,
body.angelique-site.woocommerce-checkout form.checkout textarea{
  border:1px solid rgba(59,42,32,.25)!important;border-radius:0!important;
  padding:12px 14px!important;font-family:var(--font-sans)!important;background:var(--color-white)!important;
}
body.angelique-site.woocommerce-checkout #order_review,
body.angelique-site.woocommerce-checkout .woocommerce-checkout-review-order-table{
  background:var(--color-cream-warm)!important;padding:24px!important;
}
body.angelique-site.woocommerce-checkout h3#order_review_heading{font-family:var(--font-display)!important;}

/* Fil d'Ariane WooCommerce, sobre */
body.angelique-site .woocommerce-breadcrumb{
  font-size:12px;color:#8a8177;padding:20px 0 0;max-width:var(--wrap);margin:0 auto;
}
@media(max-width:640px){body.angelique-site .woocommerce-breadcrumb{padding-left:24px;padding-right:24px;}}
body.angelique-site .woocommerce-breadcrumb a{color:var(--color-bronze);}

/* Liens de contenu (descriptions, avis...) : le bleu par défaut du
   thème devient la couleur de texte de la marque, avec le bronze
   comme seul accent cliquable. */
body.angelique-site #angelique-main a:not(.button):not(.btn){color:var(--color-bronze);text-decoration:underline;text-decoration-color:rgba(176,141,87,.4);}
body.angelique-site #angelique-main a:not(.button):not(.btn):hover{color:var(--color-chocolate-deep);}
body.angelique-site #angelique-main p,
body.angelique-site #angelique-main li{color:#3d362d;}

/* ============================================================
   TITRE DE PAGE PAR DÉFAUT (Astra) — masqué partout : chaque page
   porte déjà son propre titre éditorial dans son contenu Elementor.
   ============================================================ */
body.angelique-site .entry-header,
body.angelique-site .page-header,
body.angelique-site .ast-woo-shop-archive-title-container,
body.angelique-site h1.entry-title,
body.angelique-site .ast-archive-title{
  display:none!important;
}

/* ============================================================
   ESPACE HEADER → PREMIER CONTENU : 50px sur toutes les pages
   secondaires (hors accueil, qui a son propre gabarit).
   ============================================================ */
body.angelique-site #angelique-main{padding-top:50px!important;}
body.angelique-site #angelique-main > *:first-child{margin-top:0!important;}

/* Page "À propos" : on retire l'espace vide entre la dernière
   section de contenu et le footer. */
body.angelique-page-apropos #angelique-main{padding-bottom:0!important;}
body.angelique-page-apropos #angelique-main > *:last-child{margin-bottom:0!important;padding-bottom:0!important;}
body.angelique-page-apropos .angelique-footer{margin-top:0!important;}

/* ============================================================
   FICHE PRODUIT — mise en page plus premium : respiration, galerie
   traitée comme une vraie photo de mode, onglets discrets, listes
   à puce bronze au lieu des puces par défaut du navigateur.
   ============================================================ */
body.angelique-site.woocommerce div.product{
  max-width:var(--wrap);margin:0 auto;padding:0 40px 80px;
  display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:start;
}
@media(max-width:900px){
  body.angelique-site.woocommerce div.product{grid-template-columns:1fr;gap:32px;padding:0 24px 56px;}
}
body.angelique-site.woocommerce div.product .woocommerce-product-gallery{grid-column:1;}
body.angelique-site.woocommerce div.product .woocommerce-product-gallery__wrapper{
  border:1px solid rgba(59,42,32,.1);background:var(--color-cream-warm);
}
body.angelique-site.woocommerce div.product .woocommerce-product-gallery img{
  aspect-ratio:3/4;object-fit:cover;width:100%;
}
body.angelique-site.woocommerce div.product .summary.entry-summary{grid-column:2;padding-top:4px;}
body.angelique-site.woocommerce div.product .product_title{
  font-size:clamp(28px,3vw,38px)!important;margin:0 0 16px!important;letter-spacing:.01em;
}
body.angelique-site.woocommerce div.product p.price,
body.angelique-site.woocommerce div.product span.price{
  color:var(--color-chocolate)!important;font-family:var(--font-sans)!important;font-size:21px!important;
  font-weight:500;display:block;margin-bottom:22px!important;
}
body.angelique-site.woocommerce div.product .woocommerce-product-details__short-description{
  color:#5a5147;font-size:15px;line-height:1.7;margin-bottom:28px;padding-bottom:28px;
  border-bottom:1px solid rgba(59,42,32,.12);
}
body.angelique-site.woocommerce div.product form.cart{margin-bottom:8px;}
body.angelique-site.woocommerce div.product .quantity input.qty{
  border:1px solid rgba(59,42,32,.25);border-radius:0;height:52px;width:64px;
  text-align:center;font-family:var(--font-sans);margin-right:12px;
}
body.angelique-site.woocommerce div.product .single_add_to_cart_button{width:auto;}
body.angelique-site.woocommerce div.product .product_meta{
  margin-top:24px;padding-top:20px;border-top:1px solid rgba(59,42,32,.12);
  font-size:12.5px;color:#8a8177;
}
body.angelique-site.woocommerce div.product .product_meta a{color:var(--color-bronze);}

/* Onglets Description / Avis : version discrète, sans le bleu par défaut */
body.angelique-site.woocommerce div.product .woocommerce-tabs{grid-column:1/-1;margin-top:16px;border-top:1px solid rgba(59,42,32,.12);padding-top:40px;}
body.angelique-site.woocommerce .woocommerce-tabs ul.tabs{
  border-bottom:1px solid rgba(59,42,32,.15)!important;margin:0 0 28px!important;padding:0!important;display:flex;gap:32px;background:none!important;
}
body.angelique-site.woocommerce .woocommerce-tabs ul.tabs li{
  background:none!important;border:none!important;margin:0!important;padding:0 0 14px!important;
}
body.angelique-site.woocommerce .woocommerce-tabs ul.tabs li a{
  font-family:var(--font-sans)!important;font-size:12px!important;letter-spacing:.1em;text-transform:uppercase;
  color:#8a8177!important;text-decoration:none!important;padding:0!important;
}
body.angelique-site.woocommerce .woocommerce-tabs ul.tabs li.active a{color:var(--color-chocolate-deep)!important;}
body.angelique-site.woocommerce .woocommerce-tabs ul.tabs li::before{display:none!important;}
body.angelique-site.woocommerce .woocommerce-tabs .panel{max-width:70ch;}
body.angelique-site.woocommerce .woocommerce-tabs .panel h2{font-size:20px;margin-bottom:16px;}
body.angelique-site.woocommerce .woocommerce-tabs .panel ul{padding-left:0;margin:16px 0;}
body.angelique-site.woocommerce .woocommerce-tabs .panel ul li{
  list-style:none;padding-left:22px;position:relative;margin-bottom:10px;
}
body.angelique-site.woocommerce .woocommerce-tabs .panel ul li::before{
  content:'—';position:absolute;left:0;color:var(--color-bronze);
}

/* Produits liés : mêmes cartes que la grille boutique */
body.angelique-site.woocommerce .related.products{grid-column:1/-1;margin-top:56px;padding-top:40px;border-top:1px solid rgba(59,42,32,.12);}
body.angelique-site.woocommerce .related.products > h2{font-size:22px;margin-bottom:28px;}
