/* ASNK Promo — bandeau + section accueil + header (nav Boutique + panier) + side panel panier.
   Couleurs = charte ASNK réelle (kit Elementor) : bleu + doré. AUCUN vert. */
:root{
  --asnkp-navy:  var(--e-global-color-secondary, #0A1F44);
  --asnkp-blue:  var(--e-global-color-primary,   #0033A0);
  --asnkp-gold:  var(--e-global-color-accent,    #D4A559);
  --asnkp-cream: var(--e-global-color-c312d75,   #FFFCF9);
  --asnkp-beige: var(--e-global-color-b744107,   #DFD3C7);
  --asnkp-text:  var(--e-global-color-text,      #58544F);
  --asnkp-line:  #E7DFD2;
  --asnkp-band:  #F7F1E8;
  --asnkp-ft:"Playfair Display",Georgia,serif;
  --asnkp-fb:"Inter",-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --asnkp-ease:cubic-bezier(.22,1,.36,1);
}

/* ============ BANDEAU HAUT DE SITE ============ */
.asnk-topbar{ background:var(--asnkp-navy); color:#fff; font-family:var(--asnkp-fb); position:relative; z-index:100; }
.asnk-topbar__in{ max-width:1280px; margin:0 auto; padding:9px 44px 9px 18px; display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:6px 14px; text-align:center; }
.asnk-topbar__txt{ font-size:13.5px; line-height:1.4; color:rgba(255,255,255,.9); }
.asnk-topbar__txt strong{ color:var(--asnkp-gold); font-weight:700; text-transform:uppercase; letter-spacing:.05em; font-size:12px; }
.asnk-topbar__cta{ display:inline-flex; align-items:center; gap:6px; font-size:13px; font-weight:700; color:var(--asnkp-navy); text-decoration:none; background:var(--asnkp-gold); padding:5px 15px; border-radius:999px; transition:filter .16s ease; white-space:nowrap; }
.asnk-topbar__cta:hover{ filter:brightness(1.08); color:var(--asnkp-navy); }
.asnk-topbar__close{ position:absolute; right:12px; top:50%; transform:translateY(-50%); background:none; border:0; color:rgba(255,255,255,.7); font-size:22px; line-height:1; cursor:pointer; padding:0 6px; }
.asnk-topbar__close:hover{ color:#fff; }
@media (max-width:600px){ .asnk-topbar__txt{ font-size:12.5px; } .asnk-topbar__in{ padding-right:38px; } }

/* ============ SECTION ACCUEIL ============ */
.asnk-promo-section{ font-family:var(--asnkp-fb); color:var(--asnkp-navy); background:var(--asnkp-band); padding:64px 0; }
.asnk-promo-section *{ box-sizing:border-box; }
.asnk-promo__wrap{ max-width:1200px; margin:0 auto; padding:0 20px; }
.asnk-promo__card{ display:grid; grid-template-columns:1fr; gap:34px; align-items:center; }
@media (min-width:900px){ .asnk-promo__card{ grid-template-columns:1.05fr .95fr; gap:54px; } }
.asnk-promo__eyebrow{ display:inline-flex; align-items:center; gap:8px; margin:0 0 14px; font-size:12px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--asnkp-gold); }
.asnk-promo__eyebrow svg{ width:16px; height:16px; }
.asnk-promo-section .asnk-promo__title{ font-family:var(--asnkp-ft); font-weight:700; line-height:1.1; letter-spacing:-.01em; font-size:clamp(27px,3.6vw,40px); margin:0 0 18px; color:var(--asnkp-navy); }
.asnk-promo-section .asnk-promo__title em{ font-style:italic; color:var(--asnkp-gold); }
.asnk-promo__lead{ font-size:15.5px; line-height:1.7; color:var(--asnkp-text); margin:0 0 14px; }
.asnk-promo__points{ list-style:none; margin:18px 0 26px; padding:0; display:flex; flex-wrap:wrap; gap:10px; }
.asnk-promo__points li{ display:inline-flex; align-items:center; gap:8px; background:#fff; border:1px solid var(--asnkp-line); border-radius:999px; padding:8px 15px; font-size:13.5px; font-weight:600; color:var(--asnkp-navy); }
.asnk-promo__points svg{ width:15px; height:15px; color:var(--asnkp-gold); }
.asnk-promo__cta{ display:inline-flex; align-items:center; gap:9px; background:var(--asnkp-navy); color:#fff; text-decoration:none; font-size:15px; font-weight:600; padding:15px 26px; border-radius:14px; transition:background .18s ease, transform .18s ease; }
.asnk-promo__cta svg{ width:17px; height:17px; }
.asnk-promo__cta:hover{ background:var(--asnkp-blue); color:#fff; transform:translateY(-2px); }
.asnk-promo__media{ position:relative; border-radius:20px; overflow:hidden; box-shadow:0 20px 50px rgba(10,31,68,.16); aspect-ratio:4/3; background:var(--asnkp-navy); }
.asnk-promo__media img{ width:100%; height:100%; object-fit:cover; display:block; }

/* ============ HEADER : nav Boutique + panier (injectés) ============ */
.asnk-nav-cart .asnk-cart-link{ position:relative; display:inline-flex !important; align-items:center; padding:13px 0 13px 18px !important; }
.asnk-nav-cart .asnk-cart-link svg{ width:22px; height:22px; }
.asnk-cart-count{ position:absolute; top:-4px; right:-6px; min-width:18px; height:18px; padding:0 4px; display:inline-flex; align-items:center; justify-content:center; background:var(--asnkp-gold); color:var(--asnkp-navy); border-radius:999px; font-family:var(--asnkp-fb); font-size:11px; font-weight:700; line-height:1; }
.asnk-cart-count[hidden]{ display:none; }

/* ============ SIDE PANEL PANIER (sitewide) ============ */
.asnkp-overlay{ position:fixed; inset:0; background:rgba(10,31,68,.42); z-index:100000; opacity:0; visibility:hidden; transition:opacity .3s var(--asnkp-ease), visibility .3s; }
.asnkp-overlay.is-open{ opacity:1; visibility:visible; }
.asnkp-drawer{ position:fixed; top:0; right:0; height:100%; width:min(410px,92vw); z-index:100001; background:#fff; box-shadow:0 20px 50px rgba(10,31,68,.22); display:flex; flex-direction:column; transform:translateX(100%); transition:transform .42s var(--asnkp-ease); font-family:var(--asnkp-fb); color:var(--asnkp-navy); }
.asnkp-drawer.is-open{ transform:translateX(0); }
.asnkp-drawer *{ box-sizing:border-box; }
.asnkp-drawer__head{ display:flex; align-items:center; justify-content:space-between; padding:22px 26px; border-bottom:1px solid var(--asnkp-line); }
.asnkp-drawer__head h3{ font-family:var(--asnkp-ft); font-weight:700; font-size:19px; margin:0; color:var(--asnkp-navy); display:flex; align-items:center; gap:9px; }
.asnkp-drawer__head h3 svg{ width:20px; height:20px; color:var(--asnkp-gold); }
.asnkp-close{ width:38px; height:38px; border-radius:50%; border:1px solid var(--asnkp-line); background:#fff; display:grid; place-items:center; color:var(--asnkp-navy); cursor:pointer; transition:background .15s, border-color .15s; }
.asnkp-close:hover{ background:var(--asnkp-band); border-color:var(--asnkp-navy); }
.asnkp-close svg{ width:18px; height:18px; }
.asnkp-drawer__body{ flex:1; overflow:auto; padding:16px 26px 26px; }

/* mini-cart WooCommerce dans le drawer */
.asnkp-drawer ul.woocommerce-mini-cart{ list-style:none; margin:0; padding:0; }
/* spécificité renforcée + !important : bat le défaut WooCommerce `.woocommerce ul.product_list_widget li{padding:4px 0}` qui sinon colle le nom sur l'image */
.asnkp-drawer ul.woocommerce-mini-cart li.woocommerce-mini-cart-item{ position:relative!important; display:block!important; padding:16px 30px 16px 72px!important; margin:0!important; min-height:80px; border-bottom:1px solid var(--asnkp-line); }
.asnkp-drawer ul.woocommerce-mini-cart li.woocommerce-mini-cart-item img{ position:absolute!important; left:0!important; top:16px!important; width:56px!important; height:56px!important; object-fit:contain!important; background:#fff; border-radius:10px; border:1px solid var(--asnkp-line); padding:3px; float:none!important; margin:0!important; }
.asnkp-drawer ul.woocommerce-mini-cart li.woocommerce-mini-cart-item a:not(.remove){ display:block!important; font-size:13.5px; font-weight:600; color:var(--asnkp-navy); text-decoration:none; line-height:1.35; }
.asnkp-drawer ul.woocommerce-mini-cart li.woocommerce-mini-cart-item .quantity{ display:block; font-size:12.5px; color:var(--asnkp-text); margin-top:6px; }
.asnkp-drawer a.remove{ position:absolute!important; top:16px; right:0; left:auto!important; width:22px; height:22px; line-height:20px!important; text-align:center; border-radius:50%; color:var(--asnkp-text)!important; font-size:15px; border:1px solid var(--asnkp-line); background:#fff!important; text-decoration:none!important; }
.asnkp-drawer a.remove:hover{ color:#fff!important; background:var(--asnkp-navy)!important; border-color:var(--asnkp-navy); }
/* Totaux side cart : détail HT / TVA 20% / TTC */
.asnkp-drawer .woocommerce-mini-cart__total{ display:block!important; border-top:1px solid var(--asnkp-line); padding:16px 0 2px!important; margin:6px 0 14px!important; }
.asnkp-drawer .asnkp-tl{ display:flex; justify-content:space-between; align-items:baseline; font-size:13.5px; color:var(--asnkp-text); margin:0 0 9px; }
.asnkp-drawer .asnkp-tl__v{ color:var(--asnkp-navy); font-weight:600; }
.asnkp-drawer .asnkp-tl .woocommerce-Price-amount{ font-family:var(--asnkp-fb); font-size:13.5px; color:inherit; }
.asnkp-drawer .asnkp-tl--ttc{ margin:12px 0 0; padding-top:13px; border-top:1px solid var(--asnkp-line); }
.asnkp-drawer .asnkp-tl--ttc .asnkp-tl__k{ font-size:15px; font-weight:700; color:var(--asnkp-navy); }
.asnkp-drawer .asnkp-tl--ttc .asnkp-tl__v{ font-weight:700; }
.asnkp-drawer .asnkp-tl--ttc .woocommerce-Price-amount{ font-family:var(--asnkp-ft); font-size:21px; color:var(--asnkp-navy); }
.asnkp-drawer .woocommerce-mini-cart__buttons{ display:flex; flex-direction:column; gap:9px; margin:0; padding:0 0 6px; }
.asnkp-drawer .woocommerce-mini-cart__buttons a{ width:100%; text-align:center; border-radius:14px; padding:14px; font-size:14px; font-weight:600; text-decoration:none; }
.asnkp-drawer .woocommerce-mini-cart__buttons a.button:not(.checkout){ background:#fff; color:var(--asnkp-navy); border:1px solid var(--asnkp-line); }
.asnkp-drawer .woocommerce-mini-cart__buttons a.checkout{ background:var(--asnkp-navy); color:#fff; }
.asnkp-drawer .woocommerce-mini-cart__buttons a.checkout:hover{ background:var(--asnkp-blue); }
.asnkp-drawer .woocommerce-mini-cart__empty-message{ text-align:center; color:var(--asnkp-text); padding:54px 10px; margin:0; }

.asnkp-fly{ position:fixed; z-index:100002; border-radius:14px; overflow:hidden; pointer-events:none; box-shadow:0 20px 50px rgba(10,31,68,.22); transition:transform .85s cubic-bezier(.5,-0.2,.4,1), opacity .85s ease, width .85s var(--asnkp-ease), height .85s var(--asnkp-ease); }
.asnkp-fly img{ width:100%; height:100%; object-fit:cover; }
.asnkp-toast{ position:fixed; left:50%; bottom:26px; transform:translate(-50%,16px); z-index:100003; background:var(--asnkp-navy); color:#fff; padding:13px 20px; border-radius:999px; font-size:14px; font-weight:600; box-shadow:0 20px 50px rgba(10,31,68,.22); display:flex; align-items:center; gap:9px; opacity:0; visibility:hidden; transition:opacity .3s var(--asnkp-ease), transform .3s var(--asnkp-ease), visibility .3s; font-family:var(--asnkp-fb); }
.asnkp-toast.is-on{ opacity:1; visibility:visible; transform:translate(-50%,0); }
.asnkp-toast svg{ width:18px; height:18px; color:var(--asnkp-gold); }

/* Pages fonctionnelles WooCommerce (panier/commande/compte) : dégager le header transparent */
body.woocommerce-cart .page-content,
body.woocommerce-checkout .page-content,
body.woocommerce-account .page-content{ padding-top:150px; }
@media (max-width:880px){
  body.woocommerce-cart .page-content,
  body.woocommerce-checkout .page-content,
  body.woocommerce-account .page-content{ padding-top:90px; }
}

/* Le thème force la couleur des liens du contenu → garantir la lisibilité des CTA */
.asnk-promo-section a.asnk-promo__cta, .asnk-promo-section a.asnk-promo__cta:visited, .asnk-promo-section a.asnk-promo__cta:hover{ color:#fff !important; }
.asnk-topbar a.asnk-topbar__cta, .asnk-topbar a.asnk-topbar__cta:visited, .asnk-topbar a.asnk-topbar__cta:hover{ color:var(--asnkp-navy) !important; }

/* Le thème stylise tous les <button> (padding pilule) → forcer le bouton fermeture rond */
.asnkp-drawer .asnkp-close{ width:38px!important; height:38px!important; min-width:0!important; min-height:0!important; padding:0!important; border-radius:50%!important; flex:0 0 auto; }
