/* =====================================================================
   AZURACE SHOP — Design system
   Repris de la charte du site principal (azuracerunningclub.com)
   ===================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Epilogue:ital,wght@0,100..900;1,100..900&family=Archivo:ital,wght@0,300..800;1,300..800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Anton&family=Space+Mono:wght@400;700&display=swap');

:root{
  --btn-orange: #E2572C;
  --btn-noir: #191410;
  --btn-creme: #F2E9DD;
  --btn-blanc: #FBF7F0;
  --btn-skew: 0deg;
  --cta-skew: -12deg;
  --text-skew: -12deg;
  --azurace-primary:#DF5630;
  --azurace-dark:#1c1c1c;
  --azurace-light-bg:#f7f6f4;
  --azurace-border:#e9e5df;
  --azurace-success:#2e9e5b;
  --azurace-radius:14px;
  --azrc-media-bg: #EDE9E0;
  --azrc-line: rgba(25,20,16,.10);
  /* Formes & ombres : coins arrondis et ombres diffuses (plus d'ombre orange décalée). */
  --radius-btn: 10px;
  --radius-field: 10px;
  --radius-card: 14px;
  --field-border: rgba(25,20,16,.22);
  --focus-ring: 0 0 0 3px rgba(226,87,44,.18);
  --shadow-soft: 0 1px 2px rgba(25,20,16,.04), 0 6px 20px rgba(25,20,16,.05);
  --shadow-lift: 0 2px 6px rgba(25,20,16,.06), 0 16px 34px rgba(25,20,16,.12);
  --shadow-btn: 0 1px 2px rgba(25,20,16,.14), 0 6px 16px -6px rgba(25,20,16,.40);
  --shadow-btn-hover: 0 2px 4px rgba(25,20,16,.14), 0 12px 24px -8px rgba(25,20,16,.45);
  --azrc-text: #3A382F;
  --azrc-taupe: #8E897F;
  --font-display: 'Anton', sans-serif;
  --font-mono: 'Space Mono', monospace;
  --font-label: 'Epilogue', sans-serif;
  --font-body: 'Archivo', sans-serif;
}

*{ box-sizing:border-box; }
body{
  margin:0;
  background:var(--btn-blanc);
  color:var(--azrc-text);
  font:400 16px/1.6 var(--font-body);
  -webkit-font-smoothing:antialiased;
}
img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }
ul{ margin:0; padding:0; }
.azrc-skew{ display:inline-block; transform:skewX(var(--text-skew)); }
.screen-reader-text{ position:absolute!important; left:-9999px; }

/* ---------- Titres ---------- */
.azrc-h1{ margin:0; font:400 84px/.9 var(--font-display); color:var(--btn-orange); text-transform:uppercase; }
.azrc-h1--stripe{
  display:inline-block;
  background-image:repeating-linear-gradient(rgb(242,238,229) 0px, rgb(242,238,229) 5px, rgba(242,238,229,0) 0px, rgba(242,238,229,0) 7px);
  background-clip:text;
  color:transparent;
}
.azrc-h1--product{ font-size:54px; line-height:.92; }
.azrc-h2{ margin:0; font:400 58px/.92 var(--font-display); color:var(--btn-noir); text-transform:uppercase; }
.azrc-eyebrow{ display:inline-block; margin-bottom:14px; font:700 11px/1 var(--font-mono); letter-spacing:.18em; color:var(--btn-orange); }
.azrc-lead{ margin-top:20px; font:300 21px/1.4 var(--font-body); color:rgba(242,233,221,.92); max-width:560px; }
.azrc-btn-row{ display:flex; flex-wrap:wrap; gap:14px; margin-top:30px; }

/* ---------- Boutons : un seul style pour tout le site ----------
   Noir par défaut, orange pour l'action principale des bandeaux, crème sur fond sombre.
   Les !important sont nécessaires face au CSS WooCommerce (classique + blocs). */
.btn--azr a, .btn--azr button,
.azrc-addtocart .single_add_to_cart_button,
.woocommerce button.button, .woocommerce input.button, .woocommerce a.button, .woocommerce #respond input#submit,
.wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button, .wc-block-components-totals-coupon__button,
.azrc-empty-cart__cta .wp-block-button__link,
.azrc-desc .azrc-account-btn,
.wpcf7-form input[type="submit"],
.azrc-thankyou .azrc-thankyou__retry,
.azrc-track-form .azrc-track-form__submit{
  display:inline-flex!important; align-items:center!important; justify-content:center!important; gap:8px;
  height:48px!important; min-height:0!important; padding:0 26px!important;
  background:var(--btn-noir)!important; color:var(--btn-blanc)!important;
  border:0!important; border-radius:var(--radius-btn)!important;
  font:700 13px/1 var(--font-body)!important; letter-spacing:.05em!important; text-transform:uppercase!important; text-decoration:none!important;
  box-shadow:var(--shadow-btn)!important; cursor:pointer!important; white-space:nowrap;
  transition:background-color .2s ease, box-shadow .2s ease, transform .2s ease!important;
}
.btn--azr a:hover, .btn--azr button:hover,
.azrc-addtocart .single_add_to_cart_button:hover,
.woocommerce button.button:hover, .woocommerce input.button:hover, .woocommerce a.button:hover,
.wc-block-cart__submit-button:hover, .wc-block-components-checkout-place-order-button:hover, .wc-block-components-totals-coupon__button:hover,
.azrc-empty-cart__cta .wp-block-button__link:hover,
.azrc-desc .azrc-account-btn:hover,
.wpcf7-form input[type="submit"]:hover,
.azrc-thankyou .azrc-thankyou__retry:hover,
.azrc-track-form .azrc-track-form__submit:hover{
  background:#2E2620!important; box-shadow:var(--shadow-btn-hover)!important; transform:translateY(-1px);
}
.btn--azr a:active, .btn--azr button:active, .woocommerce .button:active, .azrc-addtocart .single_add_to_cart_button:active{ transform:translateY(0); box-shadow:var(--shadow-btn)!important; }
.btn--azr a:focus-visible, .btn--azr button:focus-visible, .woocommerce .button:focus-visible,
.wc-block-cart__submit-button:focus-visible, .wc-block-components-checkout-place-order-button:focus-visible{ outline:2px solid var(--btn-orange)!important; outline-offset:3px; }
.btn--azr a span, .btn--azr button span{ display:inline-flex; }

.btn--primary a, .btn--primary button{ background:var(--btn-orange)!important; box-shadow:0 1px 2px rgba(226,87,44,.3), 0 8px 20px -8px rgba(226,87,44,.8)!important; }
/* Chaque variante garde une ombre de sa propre couleur au survol (sinon l'ombre noire générique s'applique). */
.btn--primary a:hover, .btn--primary button:hover{ background:#CF4A22!important; box-shadow:0 2px 4px rgba(226,87,44,.3), 0 12px 26px -8px rgba(226,87,44,.85)!important; }
.btn--secondary a, .btn--secondary button{ background:var(--btn-creme)!important; color:var(--btn-noir)!important; box-shadow:0 1px 2px rgba(0,0,0,.12), 0 6px 16px -6px rgba(0,0,0,.35)!important; }
.btn--secondary a:hover, .btn--secondary button:hover{ background:#fff!important; box-shadow:0 2px 4px rgba(0,0,0,.12), 0 12px 24px -8px rgba(0,0,0,.4)!important; }

/* Petits boutons dans les tableaux (ex. « Voir » dans la liste des commandes) */
.woocommerce table a.button, .woocommerce table button.button{ height:36px!important; padding:0 16px!important; font-size:11.5px!important; }

@media (max-width:600px){
  .btn--azr a, .btn--azr button,
  .azrc-addtocart .single_add_to_cart_button,
  .woocommerce button.button, .woocommerce input.button, .woocommerce a.button,
  .azrc-empty-cart__cta .wp-block-button__link, .azrc-desc .azrc-account-btn,
  .wpcf7-form input[type="submit"], .azrc-thankyou .azrc-thankyou__retry, .azrc-track-form .azrc-track-form__submit{
    height:44px!important; padding:0 20px!important; font-size:12px!important;
  }
  .azrc-btn-row{ gap:10px; margin-top:24px; width:100%; max-width:420px; }
  .azrc-cta-banner .azrc-btn-row{ margin-left:auto; margin-right:auto; }
  /* Deux boutons côte à côte, chacun sur la moitié de la ligne (un bouton seul garde sa largeur). */
  .azrc-btn-row > .btn--azr{ flex:1 1 0; min-width:0; }
  .azrc-btn-row > .btn--azr:only-child{ flex:0 0 auto; }
  .azrc-btn-row > .btn--azr a, .azrc-btn-row > .btn--azr button{ width:100%; padding:0 12px!important; }
}

/* ---------- Badges ---------- */
.azrc-badge{ display:inline-block; padding:6px 10px; border-radius:6px; font:700 9.5px/1 var(--font-mono); letter-spacing:.1em; }
.azrc-badge--orange{ background:var(--btn-orange); color:#fff; }
.azrc-badge--dark{ background:var(--btn-noir); color:var(--btn-creme); }
.azrc-badge--line{ border:1.5px solid var(--btn-noir); color:var(--btn-noir); }
.azrc-badge--dashed{ background:var(--btn-creme); border:1.5px dashed var(--azrc-taupe); color:var(--btn-noir); }
.azrc-badge-row{ display:flex; gap:8px; margin-bottom:16px; flex-wrap:wrap; }

/* =====================================================================
   HEADER — logo centré, menu en tiroir permanent
   ===================================================================== */
.azrc-header{ background:var(--btn-noir); position:sticky; top:0; z-index:1000; }
.azrc-header__inner{
  max-width:1450px; margin:0 auto; padding:14px 32px;
  display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:16px;
}
.azrc-header__logo{ display:flex; align-items:center; justify-self:center; text-decoration:none; }
.azrc-header__logo img{ height:52px; width:auto; filter:brightness(0) invert(1); transition:transform .25s ease; }

.azrc-header__cart{ position:relative; color:var(--btn-creme); text-decoration:none; display:flex; align-items:center; justify-self:end; transition:color .2s; }
.azrc-header__cart:hover{ color:var(--btn-orange); }
.azrc-header__cart svg{ width:26px; height:26px; }
.azrc-header__cart-count{ position:absolute; top:-8px; right:-11px; background:var(--btn-orange); color:#fff; font:700 10px/1 var(--font-mono); min-width:18px; height:18px; padding:0 3px; border-radius:999px; display:flex; align-items:center; justify-content:center; }

.azrc-header__burger{ display:flex; align-items:center; justify-self:start; background:none; border:none; color:var(--btn-creme); cursor:pointer; padding:6px; transition:color .2s; }
.azrc-header__burger:hover{ color:var(--btn-orange); }

/* Tiroir de navigation : toujours en overlay, quelle que soit la largeur d'écran */
.azrc-header__overlay{ position:fixed; inset:0; background:rgba(10,8,6,.5); backdrop-filter:blur(3px); -webkit-backdrop-filter:blur(3px); opacity:0; pointer-events:none; transition:opacity .3s ease; z-index:1090; }
.azrc-header__overlay.is-open{ opacity:1; pointer-events:auto; }
body.azrc-nav-open{ overflow:hidden; }

.azrc-header__nav{
  position:fixed; top:0; left:0; bottom:0; width:min(400px, 90vw); z-index:1100;
  display:flex; flex-direction:column;
  background:var(--btn-noir); color:var(--btn-creme);
  border-radius:0 20px 20px 0; box-shadow:24px 0 60px rgba(0,0,0,.35);
  transform:translateX(-102%); transition:transform .4s cubic-bezier(.22,.9,.34,1);
  overflow-y:auto; overscroll-behavior:contain;
}
.azrc-header__nav.is-open{ transform:translateX(0); }
/* Barre d'admin WordPress (utilisateurs connectés) : le tiroir démarre en dessous. */
.admin-bar .azrc-header__nav{ top:32px; }
@media (max-width:782px){ .admin-bar .azrc-header__nav{ top:46px; } }

.azrc-nav__top{ display:flex; align-items:center; justify-content:space-between; padding:22px 24px 10px 28px; }
.azrc-header__nav .azrc-nav__logo{ height:30px; width:auto; filter:brightness(0) invert(1); opacity:.9; }
.azrc-header__nav-close{
  width:40px; height:40px; padding:0; border:0; border-radius:999px; background:rgba(242,233,221,.08); color:var(--btn-creme);
  display:flex; align-items:center; justify-content:center; cursor:pointer; transition:background .2s ease, transform .3s ease;
}
.azrc-header__nav-close svg{ width:18px; height:18px; }
.azrc-header__nav-close:hover{ background:var(--btn-orange); color:#fff; transform:rotate(90deg); }

.azrc-header__nav-inner{ flex:1; display:flex; flex-direction:column; padding:14px 28px 24px; }
.azrc-header__nav ul{ list-style:none; margin:0; padding:0; }

/* Liens principaux : grands, numérotés, flèche au survol, page courante en orange. Arrivée en cascade à l'ouverture. */
.azrc-nav__main{ display:flex; flex-direction:column; }
.azrc-nav__main li{ border-bottom:1px solid rgba(242,233,221,.08); opacity:0; transform:translateX(-14px); transition:opacity .35s ease, transform .35s ease; transition-delay:calc(.08s + var(--i, 0) * .05s); }
.azrc-header__nav.is-open .azrc-nav__main li{ opacity:1; transform:none; }
.azrc-nav__main a{
  display:flex; align-items:center; gap:14px; padding:16px 2px;
  color:var(--btn-creme); text-decoration:none; transition:color .2s ease;
}
.azrc-nav__num{ font:700 11px/1 var(--font-mono); color:rgba(242,233,221,.35); min-width:20px; transition:color .2s ease; }
.azrc-nav__text{ flex:1; font:400 30px/1 var(--font-display); text-transform:uppercase; letter-spacing:.01em; transition:transform .25s ease; }
.azrc-nav__arrow{ width:20px; height:20px; opacity:0; transform:translateX(-8px); transition:opacity .2s ease, transform .25s ease; color:var(--btn-orange); }
.azrc-nav__main a:hover .azrc-nav__text{ transform:translateX(4px); }
.azrc-nav__main a:hover .azrc-nav__arrow{ opacity:1; transform:none; }
.azrc-nav__main a:hover .azrc-nav__num, .azrc-nav__main li.is-current .azrc-nav__num{ color:var(--btn-orange); }
.azrc-nav__main a:hover, .azrc-nav__main a:focus-visible, .azrc-nav__main li.is-current a{ color:var(--btn-orange); }
.azrc-nav__main li.is-current .azrc-nav__arrow{ opacity:1; transform:none; }

.azrc-nav__label{ margin:28px 0 12px; font:700 10.5px/1 var(--font-mono); letter-spacing:.16em; text-transform:uppercase; color:var(--btn-orange); }
.azrc-nav__chips{ display:flex; flex-wrap:wrap; gap:8px; }
.azrc-nav__chips a{
  padding:9px 14px; border-radius:999px; border:1px solid rgba(242,233,221,.18);
  font:600 13px/1 var(--font-body); color:var(--btn-creme); text-decoration:none; transition:background .2s ease, border-color .2s ease, color .2s ease;
}
.azrc-nav__chips a:hover{ background:var(--btn-creme); border-color:var(--btn-creme); color:var(--btn-noir); }

.azrc-nav__secondary{ display:flex; flex-direction:column; gap:2px; }
.azrc-nav__secondary a{
  display:flex; align-items:center; gap:12px; padding:10px 12px; margin:0 -12px; border-radius:10px;
  font:500 15px/1.2 var(--font-body); color:rgba(242,233,221,.85); text-decoration:none; transition:background .2s ease, color .2s ease;
}
.azrc-nav__secondary a:hover{ background:rgba(242,233,221,.07); color:#fff; }
.azrc-nav__secondary svg{ width:20px; height:20px; flex:none; color:var(--btn-orange); }
.azrc-nav__count{ margin-left:auto; min-width:22px; height:22px; padding:0 6px; border-radius:999px; background:var(--btn-orange); color:#fff; font:700 11px/22px var(--font-body); text-align:center; }

.azrc-nav__foot{ padding:20px 28px 28px; border-top:1px solid rgba(242,233,221,.08); }
.azrc-nav__foot .btn--azr a{ width:100%; }
.azrc-nav__foot p{ margin:14px 0 0; text-align:center; font:400 11px/1 var(--font-mono); letter-spacing:.08em; color:rgba(242,233,221,.4); }

@media (prefers-reduced-motion:reduce){
  .azrc-header__nav, .azrc-nav__main li{ transition:none; }
  .azrc-nav__main li{ opacity:1; transform:none; }
}
@media (max-width:600px){
  .azrc-header__inner{ padding:12px 16px; }
  .azrc-header__logo img{ height:38px; }
  .azrc-header__nav{ width:min(360px, 88vw); }
  .azrc-nav__top{ padding:18px 18px 6px 22px; }
  .azrc-header__nav-inner{ padding:10px 22px 20px; }
  .azrc-nav__text{ font-size:26px; }
  .azrc-nav__main a{ padding:14px 2px; }
  .azrc-nav__foot{ padding:18px 22px 24px; }
}

/* =====================================================================
   FOOTER
   ===================================================================== */
.azrc-footer{ background:var(--btn-noir); color:var(--btn-creme); }
.azrc-footer__inner{ max-width:1450px; margin:0 auto; padding:64px 48px 32px; display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; }
.azrc-footer__brand img{ height:34px; width:auto; margin-bottom:16px; filter:brightness(0) invert(1); }
.azrc-footer__brand p{ font:400 14px/1.6 var(--font-body); color:rgba(242,233,221,.7); max-width:280px; }
.azrc-footer h4{ font:700 11px/1 var(--font-mono); letter-spacing:.14em; text-transform:uppercase; color:var(--btn-orange); margin:0 0 18px; }
.azrc-footer ul{ list-style:none; display:flex; flex-direction:column; gap:10px; }
.azrc-footer a{ font:400 14px/1.5 var(--font-body); color:rgba(242,233,221,.85); text-decoration:none; }
.azrc-footer a:hover{ color:var(--btn-orange); }
/* Réassurance discrète, alignée sur les colonnes du pied de page. */
.azrc-footer__trust{
  max-width:calc(1450px - 96px); margin:8px auto 0; padding:24px 0; box-sizing:border-box; width:calc(100% - 96px);
  border-top:1px solid rgba(242,233,221,.1);
  display:flex; align-items:center; justify-content:space-between; gap:20px 32px; flex-wrap:wrap;
}
.azrc-footer__secure{ display:flex; align-items:center; gap:12px; min-width:0; }
.azrc-footer__secure-icon{
  flex:none; width:24px; display:flex; align-items:center; justify-content:center; color:var(--btn-creme);
}
.azrc-footer__secure-icon svg{ width:20px; height:20px; }
.azrc-footer__secure-text{ display:flex; flex-direction:column; gap:5px; }
.azrc-footer__secure-text strong{ font:600 14px/1.4 var(--font-body); color:var(--btn-creme); }
.azrc-footer__secure-text span{ font:400 12px/1.6 var(--font-body); color:rgba(242,233,221,.6); }
.azrc-footer .azrc-pay-cards{ flex-direction:row; flex-wrap:nowrap; gap:8px; }
.azrc-footer .azrc-pay-card{ width:46px; height:30px; border-radius:5px; background:#f2e9dd; box-shadow:none; transition:none; }
.azrc-footer .azrc-pay-card:hover{ transform:none; }
.azrc-footer .azrc-pay-card--visa svg{ width:31px; }
.azrc-footer .azrc-pay-card--mastercard svg{ width:28px; }
.azrc-footer .azrc-pay-card--amex svg{ width:22px; height:22px; }
.azrc-footer .azrc-pay-card--stripe svg{ width:16px; height:16px; }

.azrc-pay-cards{ list-style:none; margin:0; padding:0; display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.azrc-pay-card{
  width:56px; height:36px; flex:none; display:flex; align-items:center; justify-content:center;
  background:#fff; border-radius:8px; box-shadow:0 1px 2px rgba(0,0,0,.25), 0 6px 14px -6px rgba(0,0,0,.45);
  transition:transform .2s ease;
}
.azrc-pay-card:hover{ transform:translateY(-2px); }
.azrc-pay-card svg{ display:block; }
.azrc-pay-card--visa svg{ width:38px; height:auto; }
.azrc-pay-card--mastercard svg{ width:32px; height:auto; }
.azrc-pay-card--amex svg{ width:26px; height:26px; }
.azrc-pay-card--stripe svg{ width:20px; height:20px; }

.azrc-footer__bottom{
  max-width:1450px; margin:0 auto; padding:20px 48px 30px; border-top:1px solid rgba(242,233,221,.1);
  display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px 24px;
  font:400 11.5px/1.6 var(--font-mono); color:rgba(242,233,221,.5);
}
.azrc-footer__legal{ display:flex; gap:18px; }
.azrc-footer .azrc-footer__legal a{ font:400 11.5px/1.6 var(--font-mono); color:rgba(242,233,221,.6); }
.azrc-footer .azrc-footer__legal a:hover{ color:var(--btn-orange); }

/* Encart de la fiche produit : mêmes cartes, un peu plus petites, sur fond clair. */
.azrc-secure-pay .azrc-pay-cards{ gap:6px; }
.azrc-secure-pay .azrc-pay-card{ width:44px; height:28px; border-radius:6px; box-shadow:0 0 0 1px var(--azrc-line), 0 2px 6px rgba(25,20,16,.06); }
.azrc-secure-pay .azrc-pay-card--visa svg{ width:30px; }
.azrc-secure-pay .azrc-pay-card--mastercard svg{ width:26px; }
.azrc-secure-pay .azrc-pay-card--amex svg{ width:20px; height:20px; }
.azrc-secure-pay .azrc-pay-card--stripe svg{ width:16px; height:16px; }
@media (max-width:900px){
  .azrc-footer__inner{ grid-template-columns:1fr 1fr; padding:48px 24px 24px; }
  .azrc-footer__bottom{ padding:16px 24px 24px; }
  .azrc-footer__trust{ width:calc(100% - 48px); }
}

/* =====================================================================
   HOMEPAGE
   ===================================================================== */
/* Heros : photo en carte arrondie (décollée des bords), dégradé plus doux côté texte, légère entrée animée. */
.azrc-hero-home{ position:relative; height:calc(100svh - 104px); min-height:560px; max-height:860px; margin:12px; border-radius:24px; background:#0d0d0d; overflow:hidden; isolation:isolate; display:flex; flex-direction:column; }
.admin-bar .azrc-hero-home{ height:calc(100svh - 136px); }
.azrc-hero-home__bg, .azrc-shop-hero img.azrc-hero-bg{ animation:azrc-hero-zoom 1.8s cubic-bezier(.2,.8,.2,1) both; }
.azrc-hero-home__bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; }
.azrc-hero-home::before, .azrc-shop-hero::before{
  content:""; position:absolute; inset:0; z-index:1;
  background:linear-gradient(90deg, rgba(10,8,6,.62) 0%, rgba(10,8,6,.25) 55%, rgba(10,8,6,.05) 100%), linear-gradient(0deg, rgba(10,8,6,.78) 0%, rgba(10,8,6,0) 60%);
}
.azrc-hero-home__content{ position:relative; z-index:2; flex:1; width:100%; max-width:1450px; margin:0 auto; padding:0 48px 44px; display:flex; flex-direction:column; justify-content:flex-end; }
.azrc-hero-home__content > *, .azrc-shop-hero__bottom > *{ animation:azrc-hero-rise .7s cubic-bezier(.2,.8,.2,1) both; }
.azrc-hero-home__content > :nth-child(2), .azrc-shop-hero__bottom > :nth-child(2){ animation-delay:.08s; }
.azrc-hero-home__content > :nth-child(3), .azrc-shop-hero__bottom > :nth-child(3){ animation-delay:.16s; }
.azrc-hero-home__content > :nth-child(4){ animation-delay:.24s; }
.azrc-hero-home__content > :nth-child(5){ animation-delay:.32s; }
@keyframes azrc-hero-zoom{ from{ transform:scale(1.08); } to{ transform:none; } }
@keyframes azrc-hero-rise{ from{ opacity:0; transform:translateY(16px); } to{ opacity:1; transform:none; } }
@media (prefers-reduced-motion:reduce){
  .azrc-hero-home__bg, .azrc-shop-hero img.azrc-hero-bg, .azrc-hero-home__content > *, .azrc-shop-hero__bottom > *{ animation:none; }
}

/* Pastille « La boutique officielle » (remplace le tiret) */
.azrc-hero-chip{
  display:inline-flex; align-items:center; gap:8px; align-self:flex-start; margin-bottom:18px; padding:8px 14px 8px 12px;
  border-radius:999px; background:rgba(242,233,221,.12); border:1px solid rgba(242,233,221,.18);
  backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
  font:700 10.5px/1 var(--font-mono); letter-spacing:.14em; text-transform:uppercase; color:var(--btn-creme);
}
.azrc-hero-chip__dot{ width:7px; height:7px; border-radius:999px; background:var(--btn-orange); box-shadow:0 0 0 4px rgba(226,87,44,.25); }

/* Arguments sous les boutons */
.azrc-hero-perks{ list-style:none; display:flex; flex-wrap:wrap; gap:8px 22px; margin:34px 0 0; padding:18px 0 0; border-top:1px solid rgba(242,233,221,.16); }
.azrc-hero-perks li{ display:flex; align-items:center; gap:8px; font:500 13px/1.3 var(--font-body); color:rgba(242,233,221,.85); }
.azrc-hero-perks li::before{
  content:""; width:16px; height:16px; flex:none; border-radius:999px; background:var(--btn-orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4L18 8'/%3E%3C/svg%3E") center/10px no-repeat;
}
@media (max-width:768px){
  .azrc-hero-home__content{ padding:0 24px 32px; }
  .azrc-hero-home, .azrc-shop-hero{ border-radius:18px; }
  .azrc-hero-home{ margin:8px; height:auto; min-height:calc(100svh - 96px); max-height:none; }
  .azrc-shop-hero{ margin:0 8px; height:380px; }
  .azrc-shop{ padding-top:8px; }
  .azrc-hero-home::before, .azrc-shop-hero::before{ background:linear-gradient(0deg, rgba(10,8,6,.85) 0%, rgba(10,8,6,.35) 55%, rgba(10,8,6,.15) 100%); }
  .azrc-hero-perks{ margin-top:24px; padding-top:14px; gap:8px 16px; }
  .azrc-hero-perks li{ font-size:12px; }
}
@media (max-width:480px){ .azrc-hero-home__content{ padding:0 18px 26px; } .azrc-hero-chip{ margin-bottom:14px; } }


.azrc-section{ max-width:1450px; margin:0 auto; padding:88px 48px; }
.azrc-section--tight{ padding:56px 48px; }
.azrc-section__head{ margin-bottom:44px; }

.azrc-collections{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.azrc-collection{ position:relative; aspect-ratio:3/4; overflow:hidden; text-decoration:none; display:flex; border-radius:var(--radius-card); box-shadow:var(--shadow-soft); transition:transform .25s ease, box-shadow .25s ease; }
.azrc-collection img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.azrc-collection:hover img{ transform:scale(1.06); }
.azrc-collection::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.8)); }
.azrc-collection__label{ position:relative; z-index:1; margin-top:auto; padding:26px; color:#fff; }
.azrc-collection__eyebrow{ font:700 10.5px/1 var(--font-mono); letter-spacing:.16em; color:var(--btn-orange); text-transform:uppercase; }
.azrc-collection__title{ margin-top:8px; font:400 34px/1 var(--font-display); text-transform:uppercase; }
.azrc-collection:hover{ transform:translateY(-4px); box-shadow:var(--shadow-lift); }
.azrc-collection__sticker{
  position:absolute; top:18px; right:18px; z-index:2; padding:7px 12px; border-radius:6px;
  font:700 10.5px/1 var(--font-mono); letter-spacing:.06em; text-transform:uppercase;
  transform:rotate(3deg); box-shadow:0 4px 12px rgba(0,0,0,.2);
}
.azrc-collection__sticker--orange{ background:var(--btn-orange); color:#fff; }
.azrc-collection__sticker--dark{ background:var(--btn-noir); color:var(--btn-creme); }
.azrc-collection__sticker--line{ background:var(--btn-creme); border:1.5px dashed var(--btn-noir); color:var(--btn-noir); box-shadow:none; transform:rotate(-3deg); }
@media (max-width:900px){ .azrc-collections{ grid-template-columns:1fr; } }

.azrc-cta-banner{ background:var(--btn-noir); color:var(--btn-creme); text-align:center; padding:90px 48px; }
.azrc-cta-banner .azrc-h2{ color:var(--btn-blanc); }
.azrc-cta-banner .azrc-btn-row{ justify-content:center; margin-top:34px; }

/* =====================================================================
   BOUTIQUE / ARCHIVE PRODUIT
   ===================================================================== */
.azrc-shop, .azrc-product{ background:var(--btn-creme); color:var(--azrc-text); }
.azrc-shop-hero{ position:relative; height:440px; margin:0 12px; border-radius:24px; background:#0d0d0d; overflow:hidden; isolation:isolate; }
.azrc-shop{ padding-top:12px; }
.azrc-shop-hero img.azrc-hero-bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; }
.azrc-shop-hero__overlay{ position:relative; z-index:2; height:100%; padding:40px 48px; display:flex; flex-direction:column; justify-content:flex-end; }
.azrc-shop-hero__bottom{ max-width:1450px; width:100%; margin:0 auto; padding:0 4px; }

.azrc-stripe-divider{ position:relative; height:1px; max-width:1200px; margin:0 auto; background:linear-gradient(90deg, transparent 0%, var(--azrc-line) 20%, var(--azrc-line) 80%, transparent 100%); }
.azrc-stripe-divider::after{ content:""; position:absolute; top:50%; left:50%; width:9px; height:9px; background:var(--btn-orange); transform:translate(-50%,-50%) rotate(45deg); }

.azrc-shop-index{ max-width:1450px; margin:0 auto; padding:64px 48px 96px; position:relative; }
.azrc-index-head{ position:relative; display:flex; align-items:flex-end; justify-content:space-between; gap:40px; flex-wrap:wrap; }
.azrc-index-count{ font:300 20px/1.4 var(--font-body); color:var(--azrc-text); }
.azrc-filter-result-count{ font-family:var(--font-display); font-size:26px; color:var(--btn-orange); }

.azrc-filters-panel{ margin-top:34px; display:flex; flex-wrap:wrap; align-items:center; gap:12px; }

.azrc-filter-dd{ position:relative; }
.azrc-filter-dd--sort{ margin-left:auto; }
.azrc-filter-dd__toggle{
  display:inline-flex; align-items:center; gap:10px; padding:12px 18px; border:1.5px solid var(--azrc-line);
  border-radius:999px; background:#fff; font:700 11px/1 var(--font-mono); letter-spacing:.04em;
  text-transform:uppercase; color:var(--btn-noir); cursor:pointer; transition:all .15s ease;
}
.azrc-filter-dd__toggle:hover{ border-color:var(--btn-noir); }
.azrc-filter-dd.is-open .azrc-filter-dd__toggle, .azrc-filter-dd.has-active .azrc-filter-dd__toggle{
  background:var(--btn-noir); color:var(--btn-creme); border-color:var(--btn-noir);
}
.azrc-filter-dd__chevron{ width:9px; height:6px; transition:transform .2s ease; flex:none; }
.azrc-filter-dd.is-open .azrc-filter-dd__chevron{ transform:rotate(180deg); }

.azrc-filter-dd__panel{
  position:absolute; top:calc(100% + 10px); left:0; min-width:240px; background:#fff;
  border:1px solid var(--azrc-line); border-radius:14px; box-shadow:0 12px 32px rgba(25,20,16,.12);
  padding:10px; z-index:20; opacity:0; visibility:hidden; transform:translateY(-6px);
  transition:opacity .15s ease, transform .15s ease, visibility .15s;
}
.azrc-filter-dd--sort .azrc-filter-dd__panel{ left:auto; right:0; }
.azrc-filter-dd.is-open .azrc-filter-dd__panel{ opacity:1; visibility:visible; transform:translateY(0); }

.azrc-check{ display:flex; align-items:center; gap:10px; padding:10px 12px; border-radius:8px; cursor:pointer; font:400 13.5px/1 var(--font-body); color:var(--btn-noir); white-space:nowrap; transition:background .12s ease; }
.azrc-check:hover{ background:var(--azrc-media-bg); }
.azrc-check input{ position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
.azrc-check__box{ width:16px; height:16px; border:1.5px solid var(--azrc-taupe); border-radius:4px; flex:none; position:relative; transition:all .12s ease; }
.azrc-check--radio .azrc-check__box{ border-radius:999px; }
.azrc-check input:checked + .azrc-check__box{ background:var(--btn-noir); border-color:var(--btn-noir); }
.azrc-check:not(.azrc-check--radio) input:checked + .azrc-check__box::after{
  content:""; position:absolute; left:4px; top:1px; width:5px; height:8px;
  border:solid var(--btn-creme); border-width:0 1.5px 1.5px 0; transform:rotate(45deg);
}
.azrc-check--radio input:checked + .azrc-check__box::after{
  content:""; position:absolute; top:50%; left:50%; width:6px; height:6px; margin:-3px 0 0 -3px;
  background:var(--btn-creme); border-radius:999px;
}
.azrc-check__label{ flex:1; }
.azrc-check__count{ color:var(--azrc-taupe); font:400 11.5px/1 var(--font-mono); }

.azrc-filter-reset{ background:none; border:none; text-decoration:underline; font:400 12px/1 var(--font-body); color:var(--azrc-taupe); cursor:pointer; }
.azrc-filter-reset:hover{ color:var(--btn-orange); }

@media (max-width:640px){
  .azrc-filter-dd--sort{ margin-left:0; }
  /* Sur mobile, chaque panneau s'étend sur toute la largeur de la barre de filtres (ancrée sur le conteneur,
     pas sur le bouton) pour ne jamais dépasser l'écran, quel que soit le bouton cliqué. */
  .azrc-filters-panel{ position:relative; }
  .azrc-filter-dd{ position:static; }
  .azrc-filter-dd__panel{ left:0; right:0; top:calc(100% + 8px); min-width:0; width:auto; }
}

.azrc-grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; margin-top:32px; width:100%; transition:opacity .2s ease; }
.azrc-grid.is-loading{ opacity:.4; pointer-events:none; }
@media (max-width:1024px){ .azrc-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
/* Mobile : 2 produits par ligne par défaut, 1 par ligne via le bouton d'affichage (.is-cols-1, posé par shop.js). */
@media (max-width:560px){
  .azrc-grid{ gap:12px; }
  .azrc-grid.is-cols-1{ grid-template-columns:minmax(0,1fr); gap:20px; }
}

/* Bouton d'affichage (mobile uniquement) */
.azrc-view-toggle{ display:none; }
@media (max-width:560px){
  .azrc-view-toggle{ display:inline-flex; gap:2px; margin-left:auto; padding:3px; background:#fff; border:1.5px solid var(--azrc-line); border-radius:999px; }
  .azrc-view-toggle__btn{
    width:34px; height:30px; padding:0; border:0; border-radius:999px; background:none; color:var(--azrc-taupe);
    display:flex; align-items:center; justify-content:center; cursor:pointer; transition:background .15s ease, color .15s ease;
  }
  .azrc-view-toggle__btn svg{ width:15px; height:15px; }
  .azrc-view-toggle__btn.is-active{ background:var(--btn-noir); color:var(--btn-creme); }
}

/* Carte étroite (grille 2 colonnes mobile, carrousels) : contenu resserré. */
.azrc-card{ container-type:inline-size; }
@container (max-width:230px){
  .azrc-card .azrc-card__body{ padding:12px 12px 14px; gap:6px; }
  .azrc-card .azrc-card__cat{ font-size:8.5px; letter-spacing:.1em; }
  .azrc-card .azrc-card__title{ font-size:17px; line-height:1.05; }
  .azrc-card .azrc-card__price{ font-size:16px; padding:2px 8px; }
  .azrc-card .azrc-card__media .azrc-badge{ top:8px; left:8px; padding:5px 7px; font-size:8.5px; }
}

.azrc-card{ display:flex; flex-direction:column; background:#fff; border:1px solid var(--azrc-line); border-radius:var(--radius-card); overflow:hidden; color:inherit; box-shadow:var(--shadow-soft); transition:transform .25s ease, box-shadow .25s ease; }
.azrc-card:hover{ transform:translateY(-4px); box-shadow:var(--shadow-lift); }
.azrc-card__media{ position:relative; aspect-ratio:4/5; background:var(--azrc-media-bg); overflow:hidden; }
.azrc-card__media img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .4s ease; }
.azrc-card:hover .azrc-card__media img{ transform:scale(1.04); }
/* 2e photo au survol (uniquement avec une souris : sur mobile, le premier tap doit ouvrir le produit). */
.azrc-card__media .azrc-card__alt{ position:absolute; inset:0; opacity:0; transition:opacity .35s ease, transform .4s ease; }
@media (hover:hover){ .azrc-card:hover .azrc-card__media .azrc-card__alt{ opacity:1; } }
.azrc-card__media .azrc-badge{ position:absolute; top:12px; left:12px; }
.azrc-card__body{ padding:18px; display:flex; flex-direction:column; gap:8px; }
.azrc-card__cat{ font:700 9.5px/1 var(--font-mono); letter-spacing:.14em; color:var(--azrc-taupe); }
.azrc-card__title{ font:400 22px/1 var(--font-display); color:var(--btn-noir); text-transform:uppercase; }
.azrc-card__foot{ margin-top:4px; display:flex; justify-content:space-between; align-items:baseline; }
.azrc-card__price{ display:inline-flex; padding:3px 10px; background:var(--btn-creme); border-radius:6px; font:400 20px/1.3 var(--font-display); color:var(--btn-noir); }
.azrc-card__price ins{ text-decoration:none; color:var(--btn-orange); }
.azrc-card__price del{ color:var(--azrc-taupe); font-size:.6em; margin-right:6px; }
.azrc-card__meta{ font:400 10.5px/1 var(--font-mono); color:var(--azrc-taupe); }
.azrc-card__no-image{ display:flex; align-items:center; justify-content:center; height:100%; font:700 11px/1.4 var(--font-mono); color:var(--azrc-taupe); text-align:center; padding:20px; text-transform:uppercase; letter-spacing:.08em; }

.azrc-placeholder{ display:flex; align-items:center; justify-content:center; height:100%; width:100%; background:var(--azrc-media-bg); padding:20px; }
/* Sélecteur renforcé : sinon `.azrc-card__media img` (100% / cover) l'emporte et rogne le logo. */
.azrc-placeholder .azrc-placeholder__logo{ width:44%; max-width:170px; height:auto; object-fit:contain; filter:brightness(0); opacity:.15; transform:none!important; }

.azrc-shop-index .woocommerce-pagination{ margin-top:48px; }
.azrc-shop-index .woocommerce-pagination ul{ display:flex; gap:8px; list-style:none; padding:0; }
.azrc-shop-index .woocommerce-pagination a, .azrc-shop-index .woocommerce-pagination span{ display:flex; align-items:center; justify-content:center; width:40px; height:40px; border:1px solid var(--field-border); border-radius:var(--radius-field); background:#fff; font:700 12px/1 var(--font-mono); color:var(--btn-noir); text-decoration:none; }
.azrc-shop-index .woocommerce-pagination .current{ background:var(--btn-noir); border-color:var(--btn-noir); color:var(--btn-creme); }
.azrc-empty{ padding:60px 0; text-align:center; font:400 18px/1.6 var(--font-body); color:var(--azrc-taupe); }

/* =====================================================================
   FICHE PRODUIT
   ===================================================================== */
.azrc-product__top{ max-width:1450px; margin:0 auto; padding:44px 48px 64px; }
.azrc-breadcrumb{ display:flex; align-items:center; flex-wrap:wrap; gap:8px; font:700 11px/1 var(--font-mono); letter-spacing:.1em; text-transform:uppercase; }
.azrc-breadcrumb__dash{ color:var(--btn-orange); }
.azrc-breadcrumb a{ text-decoration:none; color:var(--azrc-taupe); transition:color .15s ease; }
.azrc-breadcrumb a:hover{ color:var(--btn-orange); }
.azrc-breadcrumb__sep{ color:var(--azrc-taupe); opacity:.4; font-size:11px; }
.azrc-breadcrumb__current{ color:var(--btn-orange); }
.azrc-product__grid{ margin-top:26px; display:grid; grid-template-columns:1.05fr minmax(0,1fr); gap:44px; align-items:start; }
@media (max-width:900px){ .azrc-product__grid{ grid-template-columns:1fr; } }

.azrc-gallery{ display:grid; grid-template-columns:88px minmax(0,1fr); gap:14px; }
.azrc-gallery__thumbs{ display:flex; flex-direction:column; gap:12px; }
.azrc-gallery__thumb{ width:100%; aspect-ratio:4/5; object-fit:cover; display:block; background:var(--azrc-media-bg); border:1px solid var(--azrc-line); border-radius:8px; cursor:pointer; transition:border-color .15s ease, opacity .15s ease; opacity:.75; }
.azrc-gallery__thumb:hover{ opacity:1; }
.azrc-gallery__thumb--active{ border:1.5px solid var(--btn-noir); opacity:1; }
.azrc-gallery__main{ aspect-ratio:4/5; background:var(--azrc-media-bg); border:1px solid var(--azrc-line); border-radius:var(--radius-card); overflow:hidden; cursor:zoom-in; touch-action:pan-y; }
.azrc-gallery__main img{ width:100%; height:100%; object-fit:cover; display:block; }

/* Galerie mobile : carrousel horizontal (swipe) avec pagination, pas d'empilement vertical. */
.azrc-gallery-mobile{ display:none; }
@media (max-width:640px){
  .azrc-gallery{ display:none; }
  .azrc-gallery-mobile{ display:block; }
  .azrc-gallery-mobile__track{
    display:flex; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch;
    scrollbar-width:none; background:var(--azrc-media-bg);
  }
  .azrc-gallery-mobile__track::-webkit-scrollbar{ display:none; height:0; }
  .azrc-gallery-mobile__img{
    flex:0 0 100%; width:100%; aspect-ratio:4/5; object-fit:cover; display:block;
    scroll-snap-align:start; cursor:zoom-in; background:var(--azrc-media-bg);
  }
  .azrc-gallery-mobile .azrc-placeholder{ aspect-ratio:4/5; }
  .azrc-gallery-mobile__dots{ display:flex; align-items:center; justify-content:center; gap:6px; margin-top:12px; }
  .azrc-gallery-mobile__dot{ width:6px; height:6px; border-radius:999px; background:var(--azrc-line); transition:background .15s ease; flex:none; }
  .azrc-gallery-mobile__dot.is-active{ background:var(--btn-orange); }
}

/* Zoom produit (lightbox) */
.azrc-lightbox{
  position:fixed; inset:0; z-index:2000; display:flex; flex-direction:column;
  background:rgba(14,11,9,.94); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
  opacity:0; visibility:hidden; transition:opacity .25s ease, visibility .25s;
}
.azrc-lightbox.is-open{ opacity:1; visibility:visible; }
.azrc-lightbox__bar{ display:flex; align-items:center; justify-content:space-between; padding:18px 22px; }
.azrc-lightbox__counter{ font:700 12px/1 var(--font-mono); letter-spacing:.12em; color:rgba(242,233,221,.7); }
.azrc-lightbox__stage{ position:relative; flex:1; min-height:0; display:flex; align-items:center; justify-content:center; gap:20px; padding:0 24px; }
.azrc-lightbox__frame{ position:relative; max-width:min(88vw, 900px); height:100%; display:flex; align-items:center; justify-content:center; overflow:hidden; border-radius:var(--radius-card); }
.azrc-lightbox__img{
  max-width:100%; max-height:100%; width:auto; object-fit:contain; border-radius:var(--radius-card);
  cursor:zoom-in; transform:scale(.97); transition:transform .35s cubic-bezier(.2,.8,.2,1), opacity .2s ease;
}
.azrc-lightbox.is-open .azrc-lightbox__img{ transform:none; }
.azrc-lightbox__img.is-changing{ opacity:.25; }
.azrc-lightbox__frame.is-zoomed .azrc-lightbox__img{ transform:scale(2); cursor:zoom-out; transition:transform .3s ease; }
.azrc-lightbox__close, .azrc-lightbox__prev, .azrc-lightbox__next{
  flex:none; width:46px; height:46px; padding:0; border:0; border-radius:999px;
  background:rgba(242,233,221,.1); color:var(--btn-creme); cursor:pointer;
  display:flex; align-items:center; justify-content:center; transition:background .2s ease, color .2s ease, transform .2s ease;
}
.azrc-lightbox__close svg, .azrc-lightbox__prev svg, .azrc-lightbox__next svg{ width:20px; height:20px; }
.azrc-lightbox__close:hover, .azrc-lightbox__prev:hover, .azrc-lightbox__next:hover{ background:var(--btn-creme); color:var(--btn-noir); }
.azrc-lightbox__close:hover{ transform:rotate(90deg); }
.azrc-lightbox__thumbs{ display:flex; justify-content:center; gap:10px; padding:18px 22px 10px; overflow-x:auto; scrollbar-width:none; }
.azrc-lightbox__thumbs::-webkit-scrollbar{ display:none; }
.azrc-lightbox__thumb{ flex:none; width:54px; height:68px; padding:0; border:2px solid transparent; border-radius:8px; overflow:hidden; background:none; cursor:pointer; opacity:.45; transition:opacity .2s ease, border-color .2s ease; }
.azrc-lightbox__thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.azrc-lightbox__thumb:hover{ opacity:.8; }
.azrc-lightbox__thumb.is-active{ opacity:1; border-color:var(--btn-orange); }
.azrc-lightbox__hint{ margin:0; padding:4px 0 16px; text-align:center; font:400 11px/1 var(--font-mono); letter-spacing:.08em; color:rgba(242,233,221,.4); }
body.azrc-lightbox-open{ overflow:hidden; }
@media (max-width:640px){
  .azrc-lightbox__bar{ padding:14px 14px; }
  .azrc-lightbox__stage{ padding:0 12px; }
  .azrc-lightbox__frame{ max-width:100%; }
  /* En mobile on navigue au doigt : flèches superposées, plus discrètes. */
  .azrc-lightbox__prev, .azrc-lightbox__next{ position:absolute; top:50%; z-index:1; width:40px; height:40px; margin-top:-20px; background:rgba(14,11,9,.55); }
  .azrc-lightbox__prev{ left:18px; }
  .azrc-lightbox__next{ right:18px; }
  .azrc-lightbox__thumb{ width:44px; height:56px; }
  .azrc-lightbox__hint{ display:none; }
}
@media (hover:none){ .azrc-lightbox__hint{ display:none; } }

/* Loupe sur la photo principale : indique qu'on peut l'agrandir. */
.azrc-gallery__main{ position:relative; }
.azrc-gallery__main::after{
  content:""; position:absolute; right:14px; bottom:14px; width:40px; height:40px; border-radius:999px;
  background:rgba(255,255,255,.92) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23191410' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6'/%3E%3Cpath d='M15 15l5 5M10.5 8v5M8 10.5h5'/%3E%3C/svg%3E") center/18px no-repeat;
  box-shadow:var(--shadow-soft); opacity:.85; transform:scale(.92); transition:opacity .2s ease, transform .2s ease; pointer-events:none;
}
.azrc-gallery__main:hover::after{ opacity:1; transform:none; }
.azrc-gallery__main img{ transition:transform .5s ease; }
.azrc-gallery__main:hover img{ transform:scale(1.03); }

.azrc-summary{ display:flex; flex-direction:column; gap:22px; }
.azrc-price-row{ margin-top:16px; display:flex; align-items:baseline; gap:14px; flex-wrap:wrap; }
.azrc-price{ font:400 40px/1 var(--font-display); color:var(--btn-noir); }
.azrc-price ins{ text-decoration:none; color:var(--btn-orange); }
.azrc-price del{ color:var(--azrc-taupe); font-size:.55em; margin-right:8px; }
.azrc-price-member{ font:700 12px/1.4 var(--font-mono); color:var(--btn-orange); }
.azrc-desc{ font:400 15.5px/1.7 var(--font-body); color:var(--azrc-text); }
.azrc-desc h2{ font:400 26px/1.1 var(--font-display); text-transform:uppercase; color:var(--btn-noir); margin:40px 0 14px; padding-bottom:10px; border-bottom:2px solid var(--btn-orange); }
.azrc-desc h2:first-child{ margin-top:0; }
.azrc-desc p, .azrc-desc ul{ margin:0 0 16px; }
.azrc-desc ul{ padding-left:22px; }
.azrc-desc li{ margin-bottom:6px; }
.azrc-desc a{ color:var(--btn-orange); text-decoration:underline; }
.azrc-desc em{ color:var(--azrc-taupe); }
.azrc-secure-pay{
  display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap;
  padding:16px 20px; background:#fff; border:1px solid var(--azrc-line); border-radius:12px;
}
.azrc-secure-pay__main{ display:flex; align-items:flex-start; gap:12px; }
.azrc-secure-pay__main svg{ width:21px; height:21px; flex:none; color:var(--btn-orange); margin-top:1px; }
.azrc-secure-pay__main strong{ display:block; font:700 13.5px/1.3 var(--font-body); color:var(--btn-noir); }
.azrc-secure-pay__main span{ display:block; margin-top:3px; font:400 12.5px/1.4 var(--font-body); color:var(--azrc-taupe); max-width:320px; }
.azrc-secure-pay__cards{ display:flex; align-items:center; gap:6px; flex:none; }

/* Réassurance livraison / retrait / retour */
.azrc-info-list{ list-style:none; margin:0; padding:0; display:grid; gap:0; background:#fff; border:1px solid var(--azrc-line); border-radius:var(--radius-card); box-shadow:var(--shadow-soft); overflow:hidden; }
.azrc-info-list li{ display:flex; align-items:center; gap:14px; padding:14px 18px; }
.azrc-info-list li + li{ border-top:1px solid var(--azrc-line); }
.azrc-info-list__icon{ width:36px; height:36px; flex:none; display:flex; align-items:center; justify-content:center; border-radius:10px; background:#FBEDE6; color:var(--btn-orange); }
.azrc-info-list__icon svg{ width:19px; height:19px; }
.azrc-info-list__text{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.azrc-info-list__text strong{ font:700 13.5px/1.3 var(--font-body); color:var(--btn-noir); }
.azrc-info-list__text > span{ font:400 13px/1.4 var(--font-body); color:var(--azrc-taupe); }
.azrc-info-list__text a{ color:var(--btn-orange); text-decoration:underline; }

/* Pastille de stock à côté du prix */
.azrc-stock{ display:inline-flex; align-items:center; gap:6px; padding:5px 10px; border-radius:999px; font:700 11.5px/1 var(--font-body); align-self:center; }
.azrc-stock::before{ content:""; width:6px; height:6px; border-radius:999px; background:currentColor; }
.azrc-stock--in{ background:#e6f4ea; color:#2e7d46; }
.azrc-stock--out{ background:#efefef; color:#777; }

.azrc-addtocart form.cart{ display:flex; flex-direction:column; gap:18px; }
.azrc-addtocart table.variations{ width:auto!important; border:none!important; }
.azrc-addtocart table.variations tr{ display:flex!important; flex-direction:column!important; gap:10px!important; }
.azrc-addtocart table.variations th.label{ font:700 10.5px/1 var(--font-mono)!important; letter-spacing:.14em!important; color:var(--azrc-taupe)!important; text-transform:uppercase!important; text-align:left!important; padding:0!important; border:none!important; }
.azrc-addtocart table.variations td.value{ padding:0!important; border:none!important; }
/* Le <select> natif reste caché dès le premier rendu (avant même l'exécution du JS) pour éviter le flash select -> pastilles. */
.variations select[name^="attribute_"], .azrc-swatches__native{ position:absolute!important; width:1px!important; height:1px!important; opacity:0!important; pointer-events:none!important; }
.azrc-swatches{ display:flex; gap:10px; flex-wrap:wrap; }
.azrc-swatch{ min-width:50px; height:44px; padding:0 14px; display:flex; align-items:center; justify-content:center; border:1px solid var(--field-border); border-radius:var(--radius-field); font:700 13px/1 var(--font-body); color:var(--btn-noir); cursor:pointer; background:#fff; transition:all .15s ease; }
.azrc-swatch:hover{ border-color:var(--btn-noir); }
.azrc-swatch:focus-visible{ outline:2px solid var(--btn-orange); outline-offset:2px; }
.azrc-swatch--active{ background:var(--btn-noir); border-color:var(--btn-noir); color:var(--btn-creme); box-shadow:var(--shadow-btn); }
.azrc-swatch--disabled{ background:transparent; border:1px dashed var(--azrc-taupe); color:var(--azrc-taupe); cursor:not-allowed; text-decoration:line-through; opacity:.5; }
.azrc-addtocart .quantity{ display:inline-flex!important; align-items:stretch!important; border:1px solid var(--field-border)!important; border-radius:var(--radius-field); overflow:hidden; background:#fff; width:fit-content!important; height:48px; }
.azrc-addtocart .quantity .qty{ width:38px!important; height:48px!important; text-align:center!important; border:none!important; font:700 14px/1 var(--font-mono)!important; color:var(--btn-noir)!important; background:transparent!important; -moz-appearance:textfield!important; padding:0!important; }
.azrc-addtocart .quantity .qty::-webkit-inner-spin-button, .azrc-addtocart .quantity .qty::-webkit-outer-spin-button{ -webkit-appearance:none!important; margin:0!important; }
.azrc-qty-btn{ width:34px; height:48px; flex:none; display:flex; align-items:center; justify-content:center; background:transparent; border:none; font:400 17px/1 var(--font-body); color:var(--btn-noir); cursor:pointer; transition:background .15s ease; user-select:none; }
.azrc-qty-btn--minus{ border-right:1px solid var(--azrc-line); }
.azrc-qty-btn--plus{ border-left:1px solid var(--azrc-line); }
.azrc-qty-btn:hover{ background:var(--azrc-media-bg); }
.azrc-qty-btn:active{ background:var(--btn-orange); color:#fff; }
.azrc-addtocart .single_add_to_cart_button.disabled{ opacity:.4!important; cursor:not-allowed!important; box-shadow:none!important; transform:none!important; }
.azrc-addtocart form.cart > .quantity, .azrc-addtocart form.cart > .single_add_to_cart_button{ display:flex; gap:0; align-items:center; flex-wrap:wrap; width:fit-content; }

.azrc-tabs-wrap{ max-width:1450px; margin:0 auto; padding:0 48px 72px; }
/* Onglets : sélecteur segmenté (fond discret, onglet actif en carte blanche) + panneau en carte. */
.azrc-tabs-wrap .woocommerce-tabs{ max-width:860px; }
.azrc-tabs-wrap .woocommerce-tabs ul.tabs{
  display:inline-flex; gap:4px; list-style:none; margin:0 0 16px; padding:4px;
  background:var(--azrc-media-bg); border-radius:12px; max-width:100%; overflow-x:auto; scrollbar-width:none;
}
.azrc-tabs-wrap .woocommerce-tabs ul.tabs::-webkit-scrollbar{ display:none; }
.azrc-tabs-wrap .woocommerce-tabs ul.tabs:has(> li:only-child){ display:none; } /* un seul onglet : pas de sélecteur */
.azrc-tabs-wrap .woocommerce-tabs ul.tabs::before, .azrc-tabs-wrap .woocommerce-tabs ul.tabs li::before, .azrc-tabs-wrap .woocommerce-tabs ul.tabs li::after{ display:none!important; }
.azrc-tabs-wrap .woocommerce-tabs ul.tabs li{ margin:0; padding:0; border:0; background:none; flex:none; }
.azrc-tabs-wrap .woocommerce-tabs ul.tabs li a{
  display:block; padding:10px 18px; border-radius:9px; white-space:nowrap;
  font:700 13px/1 var(--font-body); color:var(--azrc-taupe); text-decoration:none; transition:background .15s ease, color .15s ease, box-shadow .15s ease;
}
.azrc-tabs-wrap .woocommerce-tabs ul.tabs li a:hover{ color:var(--btn-noir); }
.azrc-tabs-wrap .woocommerce-tabs ul.tabs li.active a{ background:#fff; color:var(--btn-noir); box-shadow:0 1px 2px rgba(25,20,16,.08), 0 2px 8px rgba(25,20,16,.06); }
.azrc-tabs-wrap .woocommerce-tabs .panel{
  margin:0; padding:26px 28px; background:#fff; border:1px solid var(--azrc-line); border-radius:var(--radius-card); box-shadow:var(--shadow-soft);
  font:400 15px/1.75 var(--font-body); color:var(--azrc-text);
}
.azrc-tabs-wrap .woocommerce-tabs .panel > :first-child{ margin-top:0; }
.azrc-tabs-wrap .woocommerce-tabs .panel > :last-child{ margin-bottom:0; }
.azrc-tabs-wrap .woocommerce-tabs .panel ul{ padding-left:0; list-style:none; }
.azrc-tabs-wrap .woocommerce-tabs .panel ul li{ position:relative; padding-left:22px; margin-bottom:6px; }
.azrc-tabs-wrap .woocommerce-tabs .panel ul li::before{ content:""; position:absolute; left:4px; top:.72em; width:7px; height:7px; border-radius:2px; background:var(--btn-orange); transform:rotate(45deg); }
/* Tableau « Caractéristiques » */
.azrc-tabs-wrap table.shop_attributes{ display:table!important; width:100%; margin:0; border:0!important; border-collapse:collapse!important; box-shadow:none; background:none; }
.azrc-tabs-wrap table.shop_attributes tbody{ display:table-row-group!important; }
.azrc-tabs-wrap table.shop_attributes tr{ display:table-row!important; }
.azrc-tabs-wrap table.shop_attributes th, .azrc-tabs-wrap table.shop_attributes td{ display:table-cell!important; vertical-align:middle; }
.azrc-tabs-wrap table.shop_attributes tr + tr th, .azrc-tabs-wrap table.shop_attributes tr + tr td{ border-top:1px solid var(--azrc-line)!important; }
.azrc-tabs-wrap table.shop_attributes th{ width:36%; padding:12px 16px 12px 0!important; background:none!important; border:0!important; text-align:left; font:700 11px/1.4 var(--font-mono)!important; letter-spacing:.06em!important; text-transform:uppercase; color:var(--azrc-taupe)!important; }
.azrc-tabs-wrap table.shop_attributes td{ padding:12px 0!important; border:0!important; background:none!important; font-style:normal; color:var(--btn-noir); }
.azrc-tabs-wrap table.shop_attributes td p{ margin:0; padding:0; }
@media (max-width:600px){
  .azrc-tabs-wrap .woocommerce-tabs ul.tabs{ display:flex; }
  .azrc-tabs-wrap .woocommerce-tabs ul.tabs li{ flex:1 1 0; }
  .azrc-tabs-wrap .woocommerce-tabs ul.tabs li a{ text-align:center; padding:10px 12px; }
  .azrc-tabs-wrap .woocommerce-tabs .panel{ padding:20px; font-size:14.5px; }
}

.azrc-related, .azrc-recent{ max-width:1450px; margin:0 auto; padding:0 48px 96px; }
.azrc-related h2, .azrc-recent h2{ font:400 38px/.95 var(--font-display); text-transform:uppercase; color:var(--btn-noir); margin:0 0 24px; }
/* Le carrousel coupe ce qui dépasse : on lui donne de la marge intérieure (compensée par une marge négative)
   pour que l'ombre et le soulèvement des cartes au survol ne soient plus rognés. */
.azrc-related .azrc-related-swiper, .azrc-recent .azrc-recent-swiper{ overflow:hidden; padding:14px 22px 40px; margin:-14px -22px -40px; }
.azrc-related-swiper .swiper-slide, .azrc-recent-swiper .swiper-slide{ height:auto; }
.azrc-related-swiper .swiper-slide .azrc-card, .azrc-recent-swiper .swiper-slide .azrc-card{ height:100%; }

.azrc-swiper-nav{ display:flex; align-items:center; justify-content:center; gap:20px; margin-top:26px; }
.azrc-swiper-nav__arrow{
  width:44px; height:44px; flex:none; padding:0; border:1px solid var(--azrc-line); border-radius:999px; background:#fff; color:var(--btn-noir);
  display:flex; align-items:center; justify-content:center; cursor:pointer; box-shadow:var(--shadow-soft);
  transition:background .15s ease, color .15s ease, box-shadow .15s ease, transform .15s ease, opacity .15s ease;
}
.azrc-swiper-nav__arrow svg{ width:18px; height:18px; }
.azrc-swiper-nav__arrow:hover{ background:var(--btn-noir); border-color:var(--btn-noir); color:#fff; box-shadow:var(--shadow-btn-hover); transform:translateY(-1px); }
.azrc-swiper-nav__arrow.swiper-button-disabled{ opacity:.35; cursor:default; pointer-events:none; box-shadow:none; }
.azrc-swiper-nav__arrow.swiper-button-lock{ display:none; }
.azrc-related__pagination, .azrc-recent__pagination{ display:flex!important; align-items:center; justify-content:center; gap:8px; position:static!important; width:auto!important; }
.azrc-related__pagination .swiper-pagination-bullet, .azrc-recent__pagination .swiper-pagination-bullet{
  width:10px; height:10px; border-radius:999px; background:rgba(25,20,16,.2); opacity:1; margin:0!important; cursor:pointer;
  transition:width .25s ease, background .25s ease;
}
.azrc-related__pagination .swiper-pagination-bullet:hover, .azrc-recent__pagination .swiper-pagination-bullet:hover{ background:rgba(25,20,16,.4); }
.azrc-related__pagination .swiper-pagination-bullet-active, .azrc-recent__pagination .swiper-pagination-bullet-active{ width:28px; background:var(--btn-orange)!important; }
@media (max-width:768px){ .azrc-related, .azrc-recent{ padding:0 24px 64px; } }
@media (max-width:600px){
  .azrc-related .azrc-related-swiper, .azrc-recent .azrc-recent-swiper{ padding:12px 20px 32px; margin:-12px -20px -32px; }
  .azrc-swiper-nav{ gap:14px; }
  .azrc-swiper-nav__arrow{ width:40px; height:40px; }
}

/* =====================================================================
   PANIER / COMMANDE (habillage léger des templates WooCommerce natifs)
   ===================================================================== */
.azrc-page{ max-width:1100px; margin:0 auto; padding:64px 48px 96px; }
.azrc-page .azrc-h2{ margin-bottom:36px; }
.woocommerce table.shop_table{ border:1px solid var(--azrc-line); border-collapse:collapse; }
.woocommerce table.shop_table th{ background:var(--btn-noir); color:var(--btn-creme); font:700 11px/1 var(--font-mono); letter-spacing:.08em; text-transform:uppercase; padding:14px; }
.woocommerce table.shop_table td{ padding:14px; border-bottom:1px solid var(--azrc-line); }
.woocommerce #payment{ background:#fff!important; border:1px solid var(--azrc-line)!important; border-radius:var(--radius-card)!important; }
.woocommerce table.shop_table{ border-collapse:separate!important; border-spacing:0; border-radius:var(--radius-card)!important; overflow:hidden; background:#fff; }

/* Blocs blancs : même carte arrondie + ombre douce partout (compte, connexion, suivi, confirmation, récap). */
.azrc-account-nav, .azrc-desc .azrc-account-card, body.woocommerce-account .woocommerce-MyAccount-content > form,
.woocommerce-form-login, .woocommerce-form-register, .woocommerce-ResetPassword,
.azrc-desc .azrc-track-form, .azrc-desc .azrc-track-result,
.azrc-thankyou .azrc-thankyou__overview, .azrc-thankyou .azrc-thankyou__steps li,
.woocommerce-customer-details .woocommerce-column{
  border-radius:var(--radius-card)!important; box-shadow:var(--shadow-soft);
}
.azrc-thankyou .azrc-thankyou__overview{ overflow:hidden; }
.azrc-account-last__relay, .azrc-thankyou__steps .azrc-thankyou__point{ border-radius:0 8px 8px 0; }
.woocommerce-checkout-review-order-table .order-total .woocommerce-Price-amount,
.woocommerce table.shop_table td.product-total{ font-family:var(--font-display); font-size:18px; }
/* Messages WooCommerce (erreur, succès, info) : bandeaux arrondis, icône à gauche, couleur selon le type.
   Sélecteurs renforcés : `.azrc-desc ul{ padding-left:22px }` écrasait la marge de l'icône (texte chevauché). */
.woocommerce .woocommerce-error, .woocommerce .woocommerce-message, .woocommerce .woocommerce-info,
.azrc-desc .woocommerce .woocommerce-error, .azrc-desc .woocommerce .woocommerce-message, .azrc-desc .woocommerce .woocommerce-info{
  position:relative; margin:0 0 20px; padding:14px 18px 14px 50px!important; list-style:none;
  border:1px solid var(--azrc-line)!important; border-radius:var(--radius-field); background:#fff!important;
  font:500 14px/1.5 var(--font-body); color:var(--btn-noir); box-shadow:var(--shadow-soft);
}
.woocommerce .woocommerce-error::before, .woocommerce .woocommerce-message::before, .woocommerce .woocommerce-info::before{
  position:absolute; top:50%; left:16px; transform:translateY(-50%); font-size:18px; line-height:1;
}
.woocommerce .woocommerce-error li, .woocommerce .woocommerce-message li{ margin:0; padding:0; }
.woocommerce .woocommerce-error li + li{ margin-top:4px; }
.woocommerce .woocommerce-error{ background:#FDF1EC!important; border-color:rgba(226,87,44,.35)!important; color:#8f3415; }
.woocommerce .woocommerce-error::before{ color:var(--btn-orange); }
.woocommerce .woocommerce-message{ background:#EEF8F1!important; border-color:#bfe2ca!important; color:#24603a; }
.woocommerce .woocommerce-message::before{ color:#2e9e5b; }
.woocommerce .woocommerce-info::before{ color:var(--btn-noir); }
.woocommerce .woocommerce-error a, .woocommerce .woocommerce-message a:not(.button), .woocommerce .woocommerce-info a:not(.button){ color:inherit; font-weight:700; text-decoration:underline; }
/* Page de connexion : le message s'aligne sur la carte. */
body.woocommerce-account:not(.logged-in) .woocommerce-notices-wrapper{ max-width:1040px; margin:0 auto; }
.woocommerce-form-login input[type="text"], .woocommerce-form-login input[type="password"],
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea,
.woocommerce-checkout select{
  border:1px solid var(--field-border)!important; border-radius:var(--radius-field)!important; padding:12px 14px!important; font-family:var(--font-body)!important; background:#fff;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.woocommerce-form-login input:focus, .woocommerce form .form-row input.input-text:focus, .woocommerce form .form-row textarea:focus{
  outline:none; border-color:var(--btn-orange)!important; box-shadow:var(--focus-ring);
}
.azrc-mobile-only{ display:none; }
@media (max-width:900px){ .azrc-mobile-only{ display:block; } }

/* =====================================================================
   RECHERCHE
   ===================================================================== */
.azrc-search-results{ display:flex; flex-direction:column; gap:16px; margin-top:32px; }
.azrc-search-result{ display:flex; gap:20px; background:#fff; border:1px solid var(--azrc-line); border-radius:var(--radius-card); padding:16px; box-shadow:var(--shadow-soft); transition:transform .25s ease, box-shadow .25s ease; }
.azrc-search-result:hover{ transform:translateY(-3px); box-shadow:var(--shadow-lift); }
.azrc-search-result__media{ width:90px; height:112px; flex:none; background:var(--azrc-media-bg); overflow:hidden; border-radius:8px; }
.azrc-search-result__media img{ width:100%; height:100%; object-fit:cover; }
.azrc-search-result__body{ display:flex; flex-direction:column; gap:6px; justify-content:center; }
.azrc-search-result__title{ font:400 22px/1.1 var(--font-display); text-transform:uppercase; color:var(--btn-noir); }
.azrc-search-result__excerpt{ font-size:14px; color:var(--azrc-text); margin:0; }

/* =====================================================================
   404
   ===================================================================== */
.azrc-404{ min-height:70vh; display:flex; align-items:center; background:var(--btn-blanc); position:relative; overflow:hidden; }
.azrc-404::before{
  content:"404"; position:absolute; right:-60px; top:50%; transform:translateY(-50%);
  font:900 300px/1 var(--font-display); color:var(--azrc-border); z-index:0; pointer-events:none; opacity:.6;
}
.azrc-404__inner{ position:relative; z-index:1; max-width:1450px; width:100%; margin:0 auto; padding:80px 48px; }
.azrc-404__inner .azrc-lead{ max-width:520px; }
@media (max-width:900px){ .azrc-404::before{ font-size:200px; opacity:.35; } }
@media (max-width:768px){
  .azrc-404::before{ font-size:150px; right:-10px; opacity:.3; }
  .azrc-404__inner{ padding:56px 24px; }
}

/* =====================================================================
   PANIER / COMMANDE — blocs WooCommerce (Cart & Checkout blocks)
   ===================================================================== */
.wc-block-cart, .wc-block-checkout{ font-family:var(--font-body); color:var(--azrc-text); }
.wc-block-cart a, .wc-block-checkout a{ color:var(--btn-orange); text-decoration:none; }
.wc-block-cart a:hover, .wc-block-checkout a:hover{ text-decoration:underline; }

.wc-block-components-product-name{ font-weight:700; color:var(--btn-noir)!important; text-decoration:none!important; }
.wc-block-cart-items__row{ border-bottom:1px solid var(--azrc-line)!important; padding:22px 0!important; }
.wc-block-cart-items__header{ display:none!important; }
.wc-block-cart-item__image img, .wc-block-cart-items__row img{ border:1px solid var(--azrc-line); }

.wc-block-components-quantity-selector{ border:1px solid var(--field-border)!important; border-radius:var(--radius-field)!important; overflow:hidden; background:#fff; }
.wc-block-components-quantity-selector::after{ display:none!important; }
.wc-block-components-quantity-selector__input{ font:700 14px/1 var(--font-mono)!important; color:var(--btn-noir)!important; }
.wc-block-components-quantity-selector__button{ color:var(--btn-noir)!important; border-radius:0!important; }
.wc-block-components-quantity-selector__button:hover{ background:var(--azrc-media-bg)!important; }

/* Récap (panier + commande) : UNE seule carte — les blocs internes de WooCommerce perdent leurs propres cadres. */
.wc-block-components-sidebar{
  background:#fff!important; border:1px solid var(--azrc-line)!important; border-radius:var(--radius-card)!important; padding:26px!important; box-shadow:var(--shadow-soft);
}
.wc-block-components-sidebar .wp-block-woocommerce-checkout-order-summary-block,
.wc-block-components-sidebar .wc-block-components-order-summary,
.wc-block-components-sidebar .wp-block-woocommerce-cart-order-summary-block{ border:0!important; border-radius:0!important; box-shadow:none!important; padding:0!important; background:none!important; }
.wc-block-components-checkout-order-summary__title, .wc-block-cart__totals-title{
  margin:0 0 6px!important; padding:0 0 14px!important; border-bottom:1px solid var(--azrc-line);
}
.wc-block-components-checkout-order-summary__title-text, .wc-block-cart__totals-title{
  font:400 24px/1.1 var(--font-display)!important; text-transform:uppercase!important; letter-spacing:0!important; color:var(--btn-noir)!important;
}
.wc-block-components-checkout-order-summary__title-icon{ color:var(--btn-noir); }
.wc-block-components-order-summary .wc-block-components-order-summary-item{ padding:14px 0!important; border:0!important; }
.wc-block-components-order-summary-item + .wc-block-components-order-summary-item{ border-top:1px solid var(--azrc-line)!important; }
.wc-block-components-order-summary-item__image{ width:56px!important; }
.wc-block-components-order-summary-item__image img{ width:56px!important; height:70px!important; object-fit:cover; }
.wc-block-components-order-summary-item__quantity{ background:var(--btn-noir)!important; color:#fff!important; border:2px solid #fff!important; box-shadow:none!important; font:700 11px/1 var(--font-body)!important; min-width:22px!important; height:22px!important; }
.wc-block-components-order-summary-item__description .wc-block-components-product-metadata{ font-size:12.5px; color:var(--azrc-taupe); }
.wc-block-components-order-summary-item__total-price{ font-weight:700; color:var(--btn-noir); }
.wc-block-components-sidebar .wc-block-components-totals-wrapper{ border-top:1px solid var(--azrc-line)!important; padding:14px 0!important; }
.wc-block-components-sidebar .wc-block-components-totals-wrapper:empty{ display:none; }
.wc-block-components-totals-coupon .wc-block-components-panel__button{ font:700 13px/1.2 var(--font-body)!important; text-transform:none!important; letter-spacing:0!important; color:var(--btn-noir)!important; }
.wc-block-components-totals-shipping__via, .wc-block-components-totals-item__description{ font-size:12.5px; color:var(--azrc-taupe); }
.wc-block-cart-item__image img, .wc-block-components-order-summary-item__image img{ border-radius:8px; }
.wc-block-components-totals-item{ font-family:var(--font-body); }
.wc-block-components-totals-item__label{ color:var(--azrc-text); }
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  font:400 26px/1 var(--font-display)!important; color:var(--btn-noir)!important;
}

/* Boutons « Commander » / « Valider la commande » : style commun (section Boutons), pleine largeur dans le récap. */
.wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button{ width:100%; height:52px!important; }
@media (max-width:600px){ .wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button{ height:48px!important; } }
.wc-block-components-totals-coupon__button{ height:auto!important; min-height:44px!important; padding:0 18px!important; }
.wc-block-components-checkout-return-to-cart-button{ color:var(--btn-noir)!important; font-weight:600; }

/* Panier vide */
.wp-block-woocommerce-empty-cart-block{ text-align:center; padding:12px 0 8px; }
.wc-block-cart__empty-cart__title.with-empty-cart-icon::before{ width:64px!important; height:64px!important; margin:0 auto 18px!important; background-color:var(--btn-orange)!important; -webkit-mask-size:contain!important; mask-size:contain!important; }
.wp-block-woocommerce-empty-cart-block h2{ font:400 34px/1 var(--font-display)!important; text-transform:uppercase; border:0!important; padding:0!important; }
.wp-block-woocommerce-empty-cart-block h2::after{ display:none!important; }
.azrc-empty-cart__lead{ color:var(--azrc-taupe); margin:12px auto 22px!important; max-width:420px; }
.wp-block-woocommerce-empty-cart-block h2 + .wc-block-grid, .wp-block-woocommerce-empty-cart-block .wc-block-grid{ margin-top:22px; }
.wp-block-woocommerce-empty-cart-block .azrc-empty-cart__cta{ margin-bottom:64px; }

/* Étapes du checkout : chaque étape est une carte, titre en Anton sans gros soulignement. */
.wc-block-checkout__main .wc-block-components-checkout-step{
  background:#fff; border:1px solid var(--azrc-line); border-radius:var(--radius-card); box-shadow:var(--shadow-soft);
  padding:24px 26px!important; margin:0 0 16px!important;
}
.wc-block-checkout__main .wc-block-components-checkout-step::after{ display:none!important; } /* trait vertical des étapes numérotées */
.wc-block-components-checkout-step__heading{ border:none!important; margin:0 0 14px!important; padding:0!important; }
.wc-block-components-checkout-step__title{
  font:400 22px/1.1 var(--font-display)!important; letter-spacing:0!important; text-transform:uppercase!important;
  color:var(--btn-noir)!important; padding:0!important; border:0!important; margin:0!important;
}
.wc-block-components-checkout-step__description{ font-size:13.5px!important; color:var(--azrc-taupe)!important; margin:-6px 0 14px!important; }
/* Même espace en bas qu'en haut : la dernière option / le dernier champ ne doit pas rajouter sa marge. */
.wc-block-components-checkout-step__content > :last-child,
.wc-block-components-checkout-step__content .wc-block-components-radio-control > :last-child{ margin-bottom:0!important; }

.wc-block-components-text-input input, .wc-blocks-components-select__select,
.wc-block-components-combobox input{
  border:1px solid var(--field-border)!important; border-radius:var(--radius-field)!important; font-family:var(--font-body)!important; background:#fff!important;
}
.wc-block-components-text-input label{ font-family:var(--font-body)!important; }
.wc-block-components-text-input input:focus, .wc-block-components-combobox input:focus{
  border-color:var(--btn-orange)!important; box-shadow:var(--focus-ring)!important;
}
.wc-block-components-address-card{ border:1px solid var(--azrc-line)!important; border-radius:var(--radius-field)!important; background:var(--btn-blanc)!important; padding:14px 16px!important; }
.wc-block-components-address-card__edit{ color:var(--btn-orange)!important; font-weight:700; text-decoration:underline!important; }

/* Options (livraison, paiement) : un seul contour par option. WooCommerce ajoute un contour intérieur (box-shadow)
   et un séparateur (::after) : on les retire pour éviter le double trait. */
.wc-block-components-radio-control::after, .wc-block-components-radio-control__option::after{ display:none!important; }
.wc-block-components-radio-control__option{
  border:1px solid var(--field-border)!important; border-radius:var(--radius-field)!important; box-shadow:none!important;
  margin:0 0 10px!important; padding:15px 16px 15px 48px!important; background:#fff!important; transition:border-color .15s ease, box-shadow .15s ease;
}
.wc-block-components-radio-control__option:hover{ border-color:rgba(25,20,16,.45)!important; }
.wc-block-components-radio-control__option-checked,
.wc-block-components-radio-control__option--checked-option-highlighted{
  border-color:var(--btn-noir)!important; box-shadow:0 0 0 1px var(--btn-noir)!important; background:#fff!important;
}
.wc-block-components-radio-control__input{ left:16px!important; border-color:var(--field-border)!important; }
.wc-block-components-radio-control__input:checked{ border-color:var(--btn-noir)!important; background:var(--btn-noir)!important; }
.wc-block-components-radio-control__input:checked::before{ background:#fff!important; }
.wc-block-components-radio-control__label-group .wc-block-components-radio-control__label{ font-weight:700; color:var(--btn-noir); }
.wc-block-components-radio-control__secondary-label{ font-weight:700; color:var(--btn-noir); }
.wc-block-components-radio-control__description{ font-size:13px; color:var(--azrc-taupe); }
@media (max-width:600px){
  .wc-block-checkout__main .wc-block-components-checkout-step{ padding:20px 18px!important; }
  .wc-block-components-sidebar{ padding:20px!important; }
}

.wc-block-components-checkbox svg{ color:var(--btn-orange)!important; }
.wc-block-components-notice-banner{ border-radius:var(--radius-field)!important; border-left-width:3px!important; }
.wc-block-components-notice-banner.is-success{ border-color:var(--azrc-success)!important; }
.wc-block-components-notice-banner.is-error{ border-color:var(--btn-orange)!important; }

/* =====================================================================
   MON COMPTE
   ===================================================================== */
/* Mise en page : une vraie grille menu + contenu (le CSS WooCommerce utilise des flottants 30 % / 68 %). */
body.woocommerce-account .azrc-page{ max-width:1180px; }
body.woocommerce-account.logged-in .azrc-page .woocommerce{ display:grid; grid-template-columns:240px minmax(0,1fr); gap:40px; align-items:start; }
body.woocommerce-account.logged-in .azrc-page .woocommerce::before,
body.woocommerce-account.logged-in .azrc-page .woocommerce::after{ content:none; display:none; }
body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-content{ float:none; width:auto; max-width:none; margin:0; }
body.woocommerce-account .woocommerce-MyAccount-content{ font:400 15px/1.6 var(--font-body); }

/* Menu */
.azrc-account-nav{ position:sticky; top:96px; background:#fff; border:1px solid var(--azrc-line); padding:8px; }
.azrc-desc .azrc-account-nav ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:2px; }
.azrc-desc .azrc-account-nav li{ margin:0; }
.azrc-desc .azrc-account-nav a{
  display:flex; align-items:center; gap:12px; padding:12px 14px; border-left:3px solid transparent;
  font:600 14px/1.2 var(--font-body); color:var(--btn-noir); text-decoration:none; transition:background .15s ease;
}
.azrc-account-nav__icon{ display:flex; flex:none; }
.azrc-account-nav svg{ width:19px; height:19px; flex:none; color:var(--azrc-taupe); }
.azrc-account-nav__label{ flex:1; }
.azrc-account-nav__hello, .azrc-account-nav__value, .azrc-account-nav__chevron, .azrc-account-back{ display:none; }
.azrc-desc .azrc-account-nav a:hover{ background:var(--azrc-media-bg); }
.azrc-desc .azrc-account-nav li.is-active a{ background:var(--btn-noir); color:var(--btn-creme); border-left-color:var(--btn-orange); }
.azrc-account-nav li.is-active svg{ color:var(--btn-orange); }
.azrc-desc .azrc-account-nav .azrc-account-nav__group--logout{ margin-top:6px; padding-top:6px; border-top:1px solid var(--azrc-line); }
.azrc-desc .azrc-account-nav .azrc-account-nav__group--logout a{ color:var(--azrc-taupe); font-weight:500; }

/* Cartes, boutons, liens */
.azrc-desc .azrc-account-card{ display:block; background:#fff; border:1px solid var(--azrc-line); padding:22px 24px; color:inherit; text-decoration:none; }
.azrc-account-card__eyebrow{ margin-bottom:12px; font:700 10.5px/1 var(--font-mono); letter-spacing:.12em; text-transform:uppercase; color:var(--btn-orange); }
.azrc-desc .azrc-account-btn{ margin-top:18px; height:44px!important; padding:0 22px!important; }
.azrc-desc .azrc-account-link{ padding-bottom:2px; border-bottom:1.5px solid currentColor; font:700 12px/1 var(--font-body); text-transform:uppercase; letter-spacing:.03em; color:var(--btn-orange); text-decoration:none; }
.azrc-account-empty{ margin:0; color:var(--azrc-taupe); }
.azrc-account-intro{ margin:0 0 18px!important; color:var(--azrc-taupe); }

/* Pastilles de statut */
.azrc-status{ display:inline-flex; align-items:center; gap:6px; padding:5px 11px; border-radius:999px; font:700 11.5px/1 var(--font-body); white-space:nowrap; }
.azrc-status::before{ content:""; width:6px; height:6px; border-radius:999px; background:currentColor; }
.azrc-status--ok{ background:#e6f4ea; color:#2e7d46; }
.azrc-status--progress{ background:#fdeee6; color:#c2461d; }
.azrc-status--wait{ background:var(--azrc-media-bg); color:#6b665d; }
.azrc-status--off{ background:#efefef; color:#777; }
.azrc-status--error{ background:#fde8e8; color:#c0392b; }

/* Tableau de bord */
.azrc-account-dash{ display:grid; gap:18px; }
.azrc-account-dash__hello{ margin:0!important; font-size:17px; line-height:1.55; }
.azrc-account-dash__hello strong{ color:var(--btn-noir); }
.azrc-account-last__row{ display:flex; justify-content:space-between; align-items:flex-start; gap:16px; flex-wrap:wrap; }
.azrc-account-last__num{ font:400 24px/1.1 var(--font-display); text-transform:uppercase; color:var(--btn-noir); }
.azrc-account-last__meta{ margin-top:6px; font-size:14px; color:var(--azrc-taupe); }
.azrc-account-last__relay{ margin:14px 0 0!important; padding:10px 14px; background:var(--azrc-media-bg); border-left:3px solid var(--btn-orange); font-size:14px; color:var(--btn-noir); }
.azrc-account-last__relay span{ display:block; margin-bottom:3px; font:700 10.5px/1 var(--font-mono); letter-spacing:.1em; text-transform:uppercase; color:var(--azrc-taupe); }
.azrc-account-shortcuts{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:14px; }
.azrc-desc .azrc-account-shortcut{ position:relative; padding-right:48px; transition:border-color .15s ease; }
.azrc-desc .azrc-account-shortcut:hover{ border-color:var(--btn-noir); }
.azrc-account-shortcut strong{ display:block; font:400 19px/1.1 var(--font-display); text-transform:uppercase; color:var(--btn-noir); }
.azrc-account-shortcut span{ display:block; margin-top:6px; font-size:13.5px; line-height:1.4; color:var(--azrc-taupe); }
.azrc-account-shortcut::after{ content:"→"; position:absolute; right:20px; top:50%; transform:translateY(-50%); font-size:18px; color:var(--btn-orange); }

/* Adresses */
.azrc-account-addresses{ display:grid; grid-template-columns:repeat(auto-fit, minmax(240px, 1fr)); gap:16px; }
.azrc-account-addresses .woocommerce-Address-title{ display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:14px; }
.azrc-account-addresses .woocommerce-Address-title::before,
.azrc-account-addresses .woocommerce-Address-title::after{ content:none; display:none; }
.azrc-account-addresses .woocommerce-Address-title h3{ float:none; margin:0; font:400 19px/1.1 var(--font-display); text-transform:uppercase; color:var(--btn-noir); }
.azrc-account-addresses address{ margin:0; font-style:normal; font-size:14.5px; line-height:1.7; }

/* Formulaires (informations du compte, édition d'adresse) */
body.woocommerce-account .woocommerce-MyAccount-content > form{ background:#fff; border:1px solid var(--azrc-line); padding:28px; }
body.woocommerce-account .woocommerce-MyAccount-content > form > h2:first-child,
body.woocommerce-account .woocommerce-MyAccount-content > form > h3:first-child{ margin-top:0; }
body.woocommerce-account .woocommerce-MyAccount-content .input-text,
body.woocommerce-account .woocommerce-MyAccount-content select{
  width:100%; padding:12px 14px; border:1px solid var(--field-border); border-radius:var(--radius-field); background:#fff; font:400 14.5px/1.4 var(--font-body);
}
body.woocommerce-account .woocommerce-MyAccount-content .input-text:focus{ outline:none; border-color:var(--btn-orange); box-shadow:var(--focus-ring); }
body.woocommerce-account .woocommerce-MyAccount-content .form-row label{ display:block; margin-bottom:6px; font:700 11px/1.4 var(--font-mono); letter-spacing:.04em; text-transform:uppercase; color:var(--azrc-taupe); }
body.woocommerce-account .woocommerce-MyAccount-content .select2-container .select2-selection--single{ height:47px; border:1px solid var(--field-border); border-radius:var(--radius-field); }
body.woocommerce-account .woocommerce-MyAccount-content .select2-container .select2-selection--single .select2-selection__rendered{ line-height:44px; padding-left:14px; font:400 14.5px/44px var(--font-body); }
body.woocommerce-account .woocommerce-MyAccount-content .select2-container .select2-selection--single .select2-selection__arrow{ height:44px; right:8px; }
body.woocommerce-account .woocommerce-MyAccount-content form em{ display:block; margin-top:6px; font-style:normal; font-size:12.5px; color:var(--azrc-taupe); }
body.woocommerce-account .woocommerce-MyAccount-content fieldset{ margin:28px 0 0; padding:22px 0 0; border:0; border-top:1px solid var(--azrc-line); }
body.woocommerce-account .woocommerce-MyAccount-content legend{ padding:0; margin-bottom:6px; font:400 19px/1.1 var(--font-display); text-transform:uppercase; color:var(--btn-noir); }

@media (max-width:900px){
  body.woocommerce-account.logged-in .azrc-page .woocommerce{ grid-template-columns:minmax(0,1fr); gap:22px; }
  /* --- Menu mobile façon Réglages iOS ---
     Racine (tableau de bord) : grande liste. Sous-pages : liste masquée, bouton "‹ retour" au-dessus du titre. */
  .azrc-account-nav{ position:static; padding:0; border:0; background:none; box-shadow:none; border-radius:0!important; }
  .azrc-desc .azrc-account-nav ul.azrc-account-nav__group{ border-radius:var(--radius-card); overflow:hidden; box-shadow:var(--shadow-soft); }
  body.azrc-account-sub .azrc-account-nav{ display:none; }
  body.azrc-account-root .azrc-account-dash__hello,
  body.azrc-account-root .azrc-account-shortcuts{ display:none; }

  .azrc-desc .azrc-account-nav__hello{ display:block; margin:0 0 14px; font-size:17px; line-height:1.4; }
  .azrc-account-nav__hello strong{ color:var(--btn-noir); }
  .azrc-desc .azrc-account-nav ul.azrc-account-nav__group{ gap:0; background:#fff; border:1px solid var(--azrc-line); }
  .azrc-desc .azrc-account-nav .azrc-account-nav__group--logout{ margin-top:22px; padding-top:0; border-top:1px solid var(--azrc-line); }
  .azrc-desc .azrc-account-nav li{ position:relative; }
  .azrc-desc .azrc-account-nav li + li::before{ content:""; position:absolute; top:0; left:62px; right:0; height:1px; background:var(--azrc-line); }
  .azrc-desc .azrc-account-nav li.woocommerce-MyAccount-navigation-link--dashboard{ display:none; }
  .azrc-desc .azrc-account-nav li.woocommerce-MyAccount-navigation-link--dashboard + li::before{ display:none; }
  .azrc-desc .azrc-account-nav a,
  .azrc-desc .azrc-account-nav li.is-active a{
    min-height:58px; padding:12px 16px; gap:14px; border-left:0; background:none; color:var(--btn-noir);
    font:600 16px/1.2 var(--font-body); -webkit-tap-highlight-color:transparent;
  }
  .azrc-desc .azrc-account-nav a:hover{ background:none; }
  .azrc-desc .azrc-account-nav a:active{ background:var(--azrc-media-bg); }
  .azrc-account-nav__icon{ width:32px; height:32px; align-items:center; justify-content:center; background:var(--btn-noir); border-radius:8px; }
  .azrc-account-nav .azrc-account-nav__icon svg,
  .azrc-account-nav li.is-active .azrc-account-nav__icon svg{ width:18px; height:18px; color:var(--btn-creme); }
  .azrc-desc .azrc-account-nav__value{ display:inline; font-weight:400; color:var(--azrc-taupe); }
  .azrc-desc .azrc-account-nav__chevron{ display:inline; margin-left:2px; font:400 26px/1 var(--font-body); color:var(--btn-orange); }
  .azrc-account-nav__group--logout .azrc-account-nav__icon{ background:var(--azrc-media-bg); }
  .azrc-account-nav .azrc-account-nav__group--logout .azrc-account-nav__icon svg{ color:var(--btn-orange); }
  .azrc-desc .azrc-account-nav .azrc-account-nav__group--logout a{ color:var(--btn-orange); font-weight:600; }

  .azrc-desc a.azrc-account-back,
  a.azrc-account-back{
    display:inline-flex; align-items:center; gap:2px; margin:0 0 10px -4px; padding:4px 4px 4px 0;
    font:600 16px/1 var(--font-body); color:var(--btn-orange); text-decoration:none; -webkit-tap-highlight-color:transparent;
  }
  .azrc-account-back span{ font-size:30px; line-height:.7; margin-top:-3px; }
  body.azrc-account-sub .azrc-page > .azrc-eyebrow{ display:none; }

  .azrc-account-shortcuts{ grid-template-columns:minmax(0,1fr); }
  body.woocommerce-account .woocommerce-MyAccount-content > form{ padding:20px; }
  /* Avis WooCommerce : le bouton précède le texte dans le HTML, on le remet dessous. */
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info{ display:flex; flex-direction:column-reverse; align-items:flex-start; gap:14px; }
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button{ float:none; margin:0; }
}
/* Transitions entre pages de l'espace client en mobile (classes posées par shop.js). */
@keyframes azrc-push-in{ from{ transform:translateX(56px); opacity:0; } to{ transform:none; opacity:1; } }
@keyframes azrc-pop-in{ from{ transform:translateX(-56px); opacity:0; } to{ transform:none; opacity:1; } }
body.woocommerce-account{ overflow-x:clip; }
.azrc-page.azrc-enter-push{ animation:azrc-push-in .34s cubic-bezier(.2,.8,.2,1) both; }
.azrc-page.azrc-enter-pop{ animation:azrc-pop-in .34s cubic-bezier(.2,.8,.2,1) both; }
.azrc-page.azrc-leave-push, .azrc-page.azrc-leave-pop{ transition:transform .2s ease-in, opacity .2s ease-in; opacity:0; }
.azrc-page.azrc-leave-push{ transform:translateX(-40px); }
.azrc-page.azrc-leave-pop{ transform:translateX(40px); }
@media (prefers-reduced-motion:reduce){
  .azrc-page.azrc-enter-push, .azrc-page.azrc-enter-pop{ animation:none; }
  .azrc-page.azrc-leave-push, .azrc-page.azrc-leave-pop{ transition:none; transform:none; }
}

/* Liste des commandes en mobile : WooCommerce masque la colonne "Commande", on l'affiche en tête de chaque carte. */
@media (max-width:768px){
  .azrc-desc .woocommerce table.woocommerce-orders-table tbody th{ display:block; padding:12px 14px; background:var(--btn-noir); text-align:left; border:0; }
  .azrc-desc .woocommerce table.woocommerce-orders-table tbody th::before{ content:"Commande "; font:700 11px/1 var(--font-mono); letter-spacing:.08em; text-transform:uppercase; color:var(--btn-creme); }
  .azrc-desc .woocommerce table.woocommerce-orders-table tbody th a{ color:var(--btn-orange); }
  .woocommerce table.woocommerce-orders-table tbody tr{ display:block; margin-bottom:14px; border:1px solid var(--azrc-line); border-radius:var(--radius-card); overflow:hidden; background:#fff; box-shadow:var(--shadow-soft); }
  .woocommerce table.woocommerce-orders-table{ border:0!important; background:none; box-shadow:none; overflow:visible; }
}

/* Connexion / inscription (visiteur non connecté) */
.woocommerce .u-columns .col-1, .woocommerce .u-columns .col-2{ float:none; width:auto; }
.woocommerce-ResetPassword{ background:#fff; border:1px solid var(--azrc-line); padding:32px; max-width:520px; }
.woocommerce-ResetPassword > p:first-child{ margin-top:0; color:var(--azrc-taupe); font-size:14px; }
.woocommerce-ResetPassword .form-row-first{ float:none!important; width:auto!important; }
.woocommerce-form-login, .woocommerce-form-register{
  background:#fff; border:1px solid var(--azrc-line); padding:32px; max-width:440px; margin-bottom:24px;
}
.woocommerce-form-login::before{ content:"— CONNEXION"; display:block; font:700 10.5px/1 var(--font-mono); letter-spacing:.14em; color:var(--btn-orange); margin-bottom:18px; }
.woocommerce-form-register::before{ content:"— CRÉER UN COMPTE"; display:block; font:700 10.5px/1 var(--font-mono); letter-spacing:.14em; color:var(--btn-orange); margin-bottom:18px; }
.woocommerce-form-row label{ font:700 11px/1.4 var(--font-mono); letter-spacing:.04em; text-transform:uppercase; color:var(--azrc-taupe); display:block; margin-bottom:6px; }
.u-columns{ display:grid; grid-template-columns:1fr 1fr; gap:24px; align-items:start; max-width:920px; }
.woocommerce .u-columns::before, .woocommerce .u-columns::after{ display:none; } /* clearfix WooCommerce : sinon il occupe une case de la grille */
.u-columns h2{ font:400 26px/1 var(--font-display); text-transform:uppercase; margin:0 0 14px; }
.u-columns .woocommerce-form-login, .u-columns .woocommerce-form-register{ max-width:none; margin:0; }
.u-columns .woocommerce-form-login::before, .u-columns .woocommerce-form-register::before{ display:none; } /* le h2 fait déjà office de titre */
.woocommerce-form-register > p:not(.form-row){ font-size:13px; color:var(--azrc-taupe); }
@media (max-width:700px){ .u-columns{ grid-template-columns:1fr; } }
.woocommerce-account-fields{ margin-top:6px; }
.woocommerce-LostPassword{ margin-top:14px; font-size:13px; }

/* --- Page de connexion / inscription (woocommerce/myaccount/form-login.php) --- */
.azrc-auth{
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); max-width:1040px; margin:0 auto; min-height:600px;
  background:#fff; border:1px solid var(--azrc-line); border-radius:24px; box-shadow:var(--shadow-lift); overflow:hidden;
}
/* Colonne visuelle */
.azrc-auth__visual{ position:relative; isolation:isolate; display:flex; align-items:flex-end; padding:40px; background:var(--btn-noir); color:var(--btn-creme); }
.azrc-auth__visual::before{ content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(0deg, rgba(10,8,6,.92) 0%, rgba(10,8,6,.45) 55%, rgba(10,8,6,.2) 100%); }
.azrc-desc .azrc-auth__bg, .azrc-auth__bg{ position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; object-position:center 30%; margin:0; }
.azrc-auth__visual-inner{ display:flex; flex-direction:column; }
.azrc-auth__visual-title{ margin:0; font:400 54px/.92 var(--font-display); text-transform:uppercase; color:var(--btn-blanc); }
.azrc-auth__visual-title span{ color:var(--btn-orange); }
.azrc-desc ul.azrc-auth__perks{ list-style:none; margin:24px 0 0; padding:0; display:flex; flex-direction:column; gap:12px; }
.azrc-desc .azrc-auth__perks li{ display:flex; align-items:center; gap:10px; margin:0; font:500 14.5px/1.4 var(--font-body); color:rgba(242,233,221,.9); }
.azrc-auth__perks li::before{
  content:""; width:20px; height:20px; flex:none; border-radius:999px;
  background:var(--btn-orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4L18 8'/%3E%3C/svg%3E") center/12px no-repeat;
}

/* Colonne formulaire */
.azrc-auth__panel{ display:flex; flex-direction:column; padding:40px 44px 32px; }
.azrc-auth__switch{ display:grid; grid-template-columns:1fr 1fr; gap:4px; padding:4px; margin-bottom:30px; background:var(--azrc-media-bg); border-radius:12px; }
.azrc-auth__switch button{
  height:42px; padding:0 12px; border:0; border-radius:9px; background:none; cursor:pointer;
  font:700 13.5px/1 var(--font-body); color:var(--azrc-taupe); transition:background .15s ease, color .15s ease, box-shadow .15s ease;
}
.azrc-auth__switch button:hover{ color:var(--btn-noir); }
.azrc-auth__switch button[aria-selected="true"]{ background:#fff; color:var(--btn-noir); box-shadow:0 1px 2px rgba(25,20,16,.08), 0 2px 8px rgba(25,20,16,.06); }
.azrc-auth__pane.is-entering{ animation:azrc-auth-in .3s ease both; }
@keyframes azrc-auth-in{ from{ opacity:0; transform:translateY(6px); } to{ opacity:1; transform:none; } }
.azrc-desc h2.azrc-auth__title{ margin:0; padding:0; border:0; font:400 34px/1 var(--font-display); text-transform:uppercase; color:var(--btn-noir); }
.azrc-desc h2.azrc-auth__title::after{ display:none; }
.azrc-desc .azrc-auth__intro{ margin:8px 0 24px; font-size:14.5px; color:var(--azrc-taupe); }

/* Les formulaires perdent l'habillage « carte » générique : la carte, c'est .azrc-auth. */
.woocommerce .azrc-auth form.login, .woocommerce .azrc-auth form.register,
.azrc-auth .woocommerce-form-login, .azrc-auth .woocommerce-form-register{
  max-width:none; margin:0; padding:0; background:none; border:0; border-radius:0!important; box-shadow:none;
}
.azrc-auth .woocommerce-form-login::before, .azrc-auth .woocommerce-form-register::before{ display:none; }
.azrc-auth .form-row{ margin:0 0 16px; padding:0; }
.azrc-auth .woocommerce-form-row label{ margin-bottom:7px; }
.azrc-auth .woocommerce-form-row label .required{ color:var(--btn-orange); }
.azrc-auth input.input-text{ height:50px; font-size:15px; }
.azrc-auth .password-input{ position:relative; display:block; }
.azrc-auth .password-input input{ padding-right:48px!important; }
.azrc-auth .show-password-input{
  position:absolute; top:50%; right:8px; width:36px; height:36px; margin-top:-18px; padding:0; border:0; border-radius:999px;
  background:none; color:var(--azrc-taupe); cursor:pointer; display:flex; align-items:center; justify-content:center;
}
.azrc-auth .show-password-input::after{
  content:""; width:20px; height:20px; background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center/contain no-repeat;
}
.woocommerce .azrc-auth .show-password-input::before{ display:none; } /* icône WooCommerce remplacée par la nôtre (::after) */
.azrc-auth .show-password-input.display-password{ color:var(--btn-orange); }
.azrc-auth .show-password-input.display-password::after{ -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 3l18 18M10.6 5.1A10.5 10.5 0 0 1 12 5c6.4 0 10 7 10 7a17.6 17.6 0 0 1-3.2 4.2M6.6 6.6C3.8 8.4 2 12 2 12s3.6 7 10 7a9.7 9.7 0 0 0 5.4-1.6M9.9 9.9a3 3 0 0 0 4.2 4.2'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 3l18 18M10.6 5.1A10.5 10.5 0 0 1 12 5c6.4 0 10 7 10 7a17.6 17.6 0 0 1-3.2 4.2M6.6 6.6C3.8 8.4 2 12 2 12s3.6 7 10 7a9.7 9.7 0 0 0 5.4-1.6M9.9 9.9a3 3 0 0 0 4.2 4.2'/%3E%3C/svg%3E") center/contain no-repeat; }
.azrc-auth .show-password-input:hover{ background:var(--azrc-media-bg); color:var(--btn-noir); }

.azrc-auth__row{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin:2px 0 22px; flex-wrap:wrap; }
.azrc-auth .woocommerce-form-login__rememberme{ display:inline-flex; align-items:center; gap:8px; margin:0; font:500 13.5px/1.3 var(--font-body); letter-spacing:0; text-transform:none; color:var(--azrc-text); cursor:pointer; }
.azrc-auth .woocommerce-form-login__rememberme input{ width:17px; height:17px; margin:0; accent-color:var(--btn-noir); cursor:pointer; }
.azrc-desc a.azrc-auth__lost{ font:600 13.5px/1.3 var(--font-body); color:var(--btn-orange); text-decoration:none; }
.azrc-desc a.azrc-auth__lost:hover{ text-decoration:underline; }
.azrc-auth .azrc-auth__submit{ margin:0; }
.azrc-auth .azrc-auth__submit .button{ width:100%; height:52px!important; }

.azrc-desc .azrc-auth__hint{ display:flex; gap:10px; align-items:flex-start; margin:0 0 16px; padding:12px 14px; border-radius:var(--radius-field); background:var(--btn-blanc); border:1px solid var(--azrc-line); font-size:13.5px; line-height:1.45; color:var(--azrc-text); }
.azrc-auth__hint svg{ width:20px; height:20px; flex:none; color:var(--btn-orange); }
.azrc-auth .woocommerce-privacy-policy-text p{ margin:0 0 18px; font-size:12.5px; line-height:1.5; color:var(--azrc-taupe); }
.azrc-auth .woocommerce-privacy-policy-text a{ color:var(--btn-noir); text-decoration:underline; }

.azrc-desc .azrc-auth__alt{ margin:20px 0 0; text-align:center; font-size:14px; color:var(--azrc-taupe); }
.azrc-auth__alt button{ padding:0; border:0; background:none; cursor:pointer; font:700 14px/1 var(--font-body); color:var(--btn-noir); text-decoration:underline; text-underline-offset:3px; }
.azrc-auth__alt button:hover{ color:var(--btn-orange); }

.azrc-auth__guest{ margin-top:auto; padding-top:24px; border-top:1px solid var(--azrc-line); display:flex; flex-direction:column; gap:4px; font-size:13.5px; line-height:1.5; color:var(--azrc-taupe); }
.azrc-auth__guest strong{ color:var(--btn-noir); font-weight:700; }
.azrc-auth__guest a{ color:var(--btn-orange); text-decoration:underline; }
.azrc-auth__pane{ margin-bottom:28px; }

@media (max-width:860px){
  .azrc-auth{ grid-template-columns:minmax(0,1fr); min-height:0; border-radius:20px; }
  .azrc-auth__visual{ min-height:220px; padding:26px; }
  .azrc-auth__visual-title{ font-size:40px; }
  .azrc-desc ul.azrc-auth__perks{ display:none; } /* en mobile, on va droit au formulaire */
  .azrc-auth__panel{ padding:26px 22px 24px; }
}
@media (max-width:480px){
  .azrc-auth__visual{ min-height:170px; padding:22px 20px; }
  .azrc-auth__visual-title{ font-size:34px; }
  .azrc-desc h2.azrc-auth__title{ font-size:28px; }
  .azrc-auth input.input-text{ font-size:16px; } /* évite le zoom automatique d'iOS */
}
@media (prefers-reduced-motion:reduce){ .azrc-auth__pane.is-entering{ animation:none; } }

/* =====================================================================
   TOASTS — notices (ajout au panier, erreurs...)
   ===================================================================== */
.azrc-toasts{ position:fixed; top:20px; right:20px; z-index:3000; display:flex; flex-direction:column; gap:10px; max-width:min(360px, calc(100vw - 32px)); }
.azrc-toast{
  background:var(--btn-noir); color:var(--btn-blanc); font:400 14px/1.5 var(--font-body);
  padding:14px 18px; border-radius:12px; box-shadow:0 8px 28px rgba(0,0,0,.22); cursor:pointer;
  opacity:0; transform:translateY(-10px); transition:opacity .25s ease, transform .25s ease;
  border-left:3px solid var(--btn-orange);
}
.azrc-toast.is-visible{ opacity:1; transform:translateY(0); }
.azrc-toast--error{ border-left-color:#e2472c; }
.azrc-toast--success{ border-left-color:#5bc27a; }
@media (max-width:600px){
  .azrc-toasts{ left:16px; right:16px; top:auto; bottom:16px; max-width:none; }
}

/* =====================================================================
   FAQ
   ===================================================================== */
.azrc-faq-page{ max-width:1180px; }
.azrc-faq-hero{ max-width:720px; }
.azrc-faq-page .azrc-h2{ margin-bottom:0; }
.azrc-faq-hero__lead{ margin:16px 0 0; font:400 17px/1.6 var(--font-body); color:var(--azrc-text); }
.azrc-faq-search{
  position:relative; display:flex; align-items:center; margin-top:26px; max-width:560px;
  background:#fff; border:1px solid var(--field-border); border-radius:999px; box-shadow:var(--shadow-soft);
  transition:border-color .15s ease, box-shadow .15s ease;
}
.azrc-faq-search:focus-within{ border-color:var(--btn-orange); box-shadow:var(--focus-ring), var(--shadow-soft); }
.azrc-faq-search svg{ position:absolute; left:18px; width:19px; height:19px; color:var(--azrc-taupe); pointer-events:none; }
.azrc-faq-search input{ width:100%; height:52px; padding:0 20px 0 48px; border:0; background:none; border-radius:999px; font:400 15px/1 var(--font-body); color:var(--btn-noir); outline:none; }
.azrc-faq-search input::-webkit-search-cancel-button{ cursor:pointer; }

.azrc-faq-layout{ display:grid; grid-template-columns:260px minmax(0,1fr); gap:48px; align-items:start; margin-top:48px; }
.azrc-faq-aside{ position:sticky; top:100px; display:flex; flex-direction:column; gap:18px; }
.azrc-faq-nav{ display:flex; flex-direction:column; gap:2px; }
.azrc-faq-nav__btn{
  display:flex; align-items:center; justify-content:space-between; gap:10px; width:100%; padding:11px 14px;
  border:0; border-radius:10px; background:none; text-align:left; cursor:pointer;
  font:600 14px/1.3 var(--font-body); color:var(--azrc-text); transition:background .15s ease, color .15s ease;
}
.azrc-faq-nav__btn:hover{ background:rgba(25,20,16,.05); color:var(--btn-noir); }
.azrc-faq-nav__btn.is-active{ background:var(--btn-noir); color:var(--btn-creme); }
.azrc-faq-nav__count{ min-width:22px; height:22px; padding:0 6px; border-radius:999px; background:rgba(25,20,16,.07); font:700 11px/22px var(--font-body); text-align:center; color:var(--azrc-taupe); }
.azrc-faq-nav__btn.is-active .azrc-faq-nav__count{ background:var(--btn-orange); color:#fff; }
.azrc-faq-help{ padding:22px; border-radius:var(--radius-card); background:var(--btn-noir); color:var(--btn-creme); }
.azrc-faq-help strong{ display:block; font:400 21px/1.1 var(--font-display); text-transform:uppercase; }
.azrc-faq-help p{ margin:8px 0 16px; font-size:14px; line-height:1.5; color:rgba(242,233,221,.75); }
.azrc-faq-help .btn--azr a{ width:100%; }

.azrc-faq-group + .azrc-faq-group{ margin-top:40px; }
.azrc-faq-group__title{ margin:0 0 14px; font:700 11px/1 var(--font-mono); letter-spacing:.14em; text-transform:uppercase; color:var(--btn-orange); }
.azrc-faq-list{ display:flex; flex-direction:column; gap:10px; }
.azrc-faq-item{ background:#fff; border:1px solid var(--azrc-line); border-radius:var(--radius-card); transition:box-shadow .2s ease, border-color .2s ease; }
.azrc-faq-item:hover{ border-color:rgba(25,20,16,.2); }
.azrc-faq-item[open]{ box-shadow:var(--shadow-soft); border-color:rgba(25,20,16,.16); }
.azrc-faq-item summary{
  list-style:none; cursor:pointer; padding:18px 20px; display:flex; align-items:center; justify-content:space-between; gap:16px;
  font:600 16px/1.35 var(--font-body); color:var(--btn-noir); border-radius:var(--radius-card);
}
.azrc-faq-item summary::-webkit-details-marker{ display:none; }
.azrc-faq-item summary:focus-visible{ outline:2px solid var(--btn-orange); outline-offset:2px; }
.azrc-faq-item__icon{
  flex:none; width:30px; height:30px; border-radius:999px; background:var(--azrc-media-bg); color:var(--btn-noir);
  display:flex; align-items:center; justify-content:center; transition:transform .25s ease, background .2s ease, color .2s ease;
}
.azrc-faq-item__icon svg{ width:16px; height:16px; }
.azrc-faq-item[open] .azrc-faq-item__icon{ transform:rotate(180deg); background:var(--btn-orange); color:#fff; }
.azrc-faq-item__answer{ padding:0 20px 20px; font:400 15px/1.7 var(--font-body); color:var(--azrc-text); overflow:hidden; }
.azrc-faq-item__answer p{ margin:0; }
.azrc-faq-item__answer p + p{ margin-top:10px; }
.azrc-faq-item__answer a{ color:var(--btn-orange); text-decoration:underline; }
.azrc-faq-item mark{ background:#FBE3D6; color:inherit; border-radius:3px; padding:0 2px; }
.azrc-faq-empty{ padding:28px; border:1px dashed var(--field-border); border-radius:var(--radius-card); text-align:center; color:var(--azrc-text); }
.azrc-faq-empty p{ margin:6px 0 0; font-size:14px; }
.azrc-faq-empty a{ color:var(--btn-orange); text-decoration:underline; }

@media (max-width:900px){
  /* Thèmes en pastilles défilantes au-dessus des questions ; l'encart contact passe en bas. */
  .azrc-faq-layout{ display:flex; flex-direction:column; gap:24px; margin-top:28px; }
  .azrc-faq-aside{ display:contents; }
  .azrc-faq-nav{ order:0; flex-direction:row; gap:8px; overflow-x:auto; margin:0 -20px; padding:2px 20px 6px; scrollbar-width:none; }
  .azrc-faq-nav::-webkit-scrollbar{ display:none; }
  .azrc-faq-nav__btn{ width:auto; flex:none; white-space:nowrap; padding:9px 14px; border:1px solid var(--azrc-line); border-radius:999px; background:#fff; font-size:13px; }
  .azrc-faq-nav__btn.is-active{ border-color:var(--btn-noir); }
  .azrc-faq-nav__count{ display:none; }
  .azrc-faq-content{ order:1; }
  .azrc-faq-help{ order:2; }
}
@media (max-width:600px){
  .azrc-faq-hero__lead{ font-size:15.5px; }
  .azrc-faq-search input{ height:48px; font-size:16px; } /* 16 px : évite le zoom automatique d'iOS */
  .azrc-faq-item summary{ padding:16px; font-size:15px; }
  .azrc-faq-item__answer{ padding:0 16px 16px; font-size:14.5px; }
}

/* =====================================================================
   CONTACT
   ===================================================================== */
.azrc-contact-page{ max-width:1100px; }
.azrc-contact-page .azrc-h2{ margin-bottom:0; }
.azrc-contact-lead{ margin:16px 0 0; max-width:620px; font:400 17px/1.6 var(--font-body); color:var(--azrc-text); }
.azrc-contact-grid{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.35fr); gap:40px; margin-top:40px; align-items:start; }
.azrc-contact-links{ display:flex; flex-direction:column; gap:12px; }
.azrc-contact-link{
  display:flex; align-items:center; gap:16px; padding:18px 18px 18px 16px;
  background:#fff; border:1px solid var(--azrc-line); border-radius:var(--radius-card); box-shadow:var(--shadow-soft);
  color:inherit; text-decoration:none; transition:transform .2s ease, box-shadow .2s ease;
}
.azrc-contact-link:hover{ transform:translateY(-2px); box-shadow:var(--shadow-lift); }
.azrc-contact-link__icon{ flex:none; width:44px; height:44px; border-radius:12px; background:#FBEDE6; color:var(--btn-orange); display:flex; align-items:center; justify-content:center; }
.azrc-contact-link__icon svg{ width:22px; height:22px; }
.azrc-contact-link__body{ flex:1; min-width:0; display:flex; flex-direction:column; gap:3px; }
.azrc-contact-link__body strong{ font:700 15px/1.3 var(--font-body); color:var(--btn-noir); }
.azrc-contact-link__body span{ font:400 13.5px/1.45 var(--font-body); color:var(--azrc-taupe); }
.azrc-contact-link__arrow{ flex:none; width:18px; height:18px; color:var(--btn-noir); opacity:.35; transition:opacity .2s ease, transform .2s ease; }
.azrc-contact-link:hover .azrc-contact-link__arrow{ opacity:1; transform:translateX(3px); color:var(--btn-orange); }

.azrc-contact-form{ padding:30px; background:#fff; border:1px solid var(--azrc-line); border-radius:var(--radius-card); box-shadow:var(--shadow-soft); }
.azrc-contact-form__title{ margin:0; font:400 26px/1.1 var(--font-display); text-transform:uppercase; color:var(--btn-noir); }
.azrc-contact-form__intro{ margin:6px 0 22px; font-size:13.5px; color:var(--azrc-taupe); }

.wpcf7-form p{ margin:0 0 16px; }
.wpcf7-form label{ display:block; font:700 11px/1.4 var(--font-mono); letter-spacing:.06em; text-transform:uppercase; color:var(--azrc-taupe); }
.wpcf7-form label br{ display:none; } /* retours à la ligne ajoutés par Contact Form 7 */
.azrc-cf7-optional{ text-transform:none; letter-spacing:0; font:400 12px/1 var(--font-body); color:var(--azrc-taupe); }
.azrc-cf7-row{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:14px; }
.azrc-cf7-row p{ margin:0 0 16px; }
.wpcf7-text, .wpcf7-email, .wpcf7-select, .wpcf7-textarea{
  width:100%; margin-top:7px; border:1px solid var(--field-border); background:#fff; padding:12px 14px;
  font:400 15px/1.4 var(--font-body); color:var(--btn-noir); border-radius:var(--radius-field); transition:border-color .15s ease, box-shadow .15s ease;
}
.wpcf7-text:focus, .wpcf7-email:focus, .wpcf7-select:focus, .wpcf7-textarea:focus{ outline:none; border-color:var(--btn-orange); box-shadow:var(--focus-ring); }
.wpcf7-form ::placeholder{ color:#b1aba1; }
.wpcf7-select{
  appearance:none; -webkit-appearance:none; padding-right:40px; cursor:pointer;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23191410' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 14px center/16px no-repeat;
}
.wpcf7-textarea{ min-height:150px; resize:vertical; }
/* Case de consentement */
.wpcf7-acceptance{ display:block; margin:4px 0 20px; }
.wpcf7-acceptance .wpcf7-list-item{ margin:0; }
.wpcf7-acceptance label{ display:flex; align-items:flex-start; gap:10px; font:400 13px/1.5 var(--font-body); letter-spacing:0; text-transform:none; color:var(--azrc-text); cursor:pointer; }
.wpcf7-acceptance input[type="checkbox"]{ flex:none; width:18px; height:18px; margin:1px 0 0; accent-color:var(--btn-noir); cursor:pointer; }
.wpcf7-acceptance a{ color:var(--btn-orange); text-decoration:underline; }
.wpcf7-form input[type="submit"]{ width:100%; }
.wpcf7-form input[type="submit"]:disabled{ opacity:.45; cursor:not-allowed!important; box-shadow:none!important; transform:none!important; }
.wpcf7-spinner{ display:block; margin:10px auto 0; }
.wpcf7-not-valid-tip{ color:var(--btn-orange); font:400 12.5px/1.4 var(--font-body); letter-spacing:0; text-transform:none; margin-top:6px; }
.wpcf7-response-output{ margin:18px 0 0!important; border-radius:var(--radius-field)!important; padding:14px 16px!important; font:400 13.5px/1.5 var(--font-body)!important; border-width:1px!important; }
.wpcf7-form.sent .wpcf7-response-output{ border-color:#5bc27a!important; background:#e6f4ea; color:#2e7d46!important; }
.wpcf7-form.invalid .wpcf7-response-output, .wpcf7-form.unaccepted .wpcf7-response-output, .wpcf7-form.failed .wpcf7-response-output{ border-color:var(--btn-orange)!important; background:#FBEDE6; color:#b3401c!important; }

@media (max-width:800px){
  .azrc-contact-grid{ grid-template-columns:minmax(0,1fr); gap:24px; margin-top:28px; }
  .azrc-contact-form{ order:-1; }
}
@media (max-width:600px){
  .azrc-contact-lead{ font-size:15.5px; }
  .azrc-contact-form{ padding:22px 18px; }
  .azrc-cf7-row{ grid-template-columns:minmax(0,1fr); gap:0; }
  .wpcf7-text, .wpcf7-email, .wpcf7-select, .wpcf7-textarea{ font-size:16px; } /* évite le zoom automatique d'iOS */
}

/* =====================================================================
   CONFIRMATION DE COMMANDE (woocommerce/checkout/thankyou.php)
   ===================================================================== */
.azrc-thankyou .azrc-thankyou__hero{ padding-bottom:4px; }
.azrc-thankyou__check{
  width:56px; height:56px; border-radius:999px; background:var(--btn-orange); color:#fff;
  display:flex; align-items:center; justify-content:center; margin-bottom:22px;
}
.azrc-thankyou__check svg{ width:28px; height:28px; }
.azrc-thankyou .azrc-h2{ margin:0; }
.azrc-thankyou .azrc-thankyou__lead{ margin:16px 0 0; font:400 16px/1.6 var(--font-body); color:var(--azrc-text); max-width:640px; }
.azrc-thankyou .azrc-thankyou__lead strong{ color:var(--btn-noir); }

.azrc-thankyou .azrc-thankyou__overview{
  list-style:none; margin:30px 0 0; padding:0; display:grid; gap:1px;
  grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));
  background:var(--azrc-line); border:1px solid var(--azrc-line);
}
.azrc-thankyou .azrc-thankyou__overview li{ margin:0; padding:16px 18px; background:#fff; }
.azrc-thankyou__overview li > span{ display:block; margin-bottom:6px; font:700 10.5px/1 var(--font-mono); letter-spacing:.1em; text-transform:uppercase; color:var(--azrc-taupe); }
.azrc-thankyou__overview strong{ font:400 20px/1.2 var(--font-display); color:var(--btn-noir); }

.azrc-thankyou .azrc-thankyou__next{ margin-top:44px; }
.azrc-thankyou .azrc-thankyou__steps{ list-style:none; margin:0; padding:0; counter-reset:azrc-step; display:grid; gap:12px; }
.azrc-thankyou .azrc-thankyou__steps li{
  counter-increment:azrc-step; position:relative; margin:0;
  padding:18px 20px 18px 64px; background:#fff; border:1px solid var(--azrc-line);
}
.azrc-thankyou__steps li::before{
  content:counter(azrc-step); position:absolute; left:20px; top:17px; width:28px; height:28px; border-radius:999px;
  background:var(--btn-noir); color:var(--btn-creme); font:400 15px/1 var(--font-display);
  display:flex; align-items:center; justify-content:center;
}
.azrc-thankyou__steps strong{ display:block; margin-bottom:4px; font:700 13px/1.3 var(--font-body); letter-spacing:.04em; text-transform:uppercase; color:var(--btn-noir); }
.azrc-thankyou__steps span{ display:block; font:400 14.5px/1.55 var(--font-body); color:var(--azrc-text); }
.azrc-thankyou__steps .azrc-thankyou__point{ margin:8px 0; padding:10px 14px; background:var(--azrc-media-bg); font-weight:600; color:var(--btn-noir); border-left:3px solid var(--btn-orange); }

.azrc-thankyou .azrc-thankyou__retry{ margin-top:24px; }

.azrc-thankyou .woocommerce-order-details, .azrc-thankyou .woocommerce-customer-details{ margin-top:48px; }

/* Récap (confirmation + Mon compte) : totaux moins lourds, point relais à la place de l'adresse de livraison. */
.woocommerce table.shop_table tfoot th{ background:transparent; color:var(--azrc-taupe); }
.woocommerce table.shop_table tbody th{ background:transparent; color:var(--btn-noir); border-bottom:1px solid var(--azrc-line); }
.woocommerce table.shop_table tfoot tr:last-child th, .woocommerce table.shop_table tfoot tr:last-child td{ color:var(--btn-noir); font-weight:700; }
.azrc-relay-address__carrier{ margin:10px 0 0; font:700 10.5px/1.4 var(--font-mono); letter-spacing:.08em; text-transform:uppercase; color:var(--azrc-taupe); }

/* Suivi public de commande (page "Suivi de commande") */
.azrc-desc .azrc-track-form{ max-width:640px; background:#fff; border:1px solid var(--azrc-line); padding:28px; }
.azrc-desc .azrc-track-form__intro{ margin:0 0 20px; color:var(--azrc-text); }
.azrc-track-form__fields{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:16px; }
.azrc-track-form .form-row{ float:none; width:auto; margin:0; padding:0; }
.azrc-track-form label{ display:block; margin-bottom:6px; font:700 11px/1.4 var(--font-mono); letter-spacing:.04em; text-transform:uppercase; color:var(--azrc-taupe); }
.azrc-track-form .input-text{ width:100%; padding:12px 14px; border:1px solid var(--field-border); border-radius:var(--radius-field); background:#fff; font:400 14.5px/1.4 var(--font-body); }
.azrc-track-form .input-text:focus{ outline:none; border-color:var(--btn-orange); box-shadow:var(--focus-ring); }
.azrc-track-form .azrc-track-form__submit{ margin-top:22px; }
.azrc-desc .azrc-track-form__hint{ margin:18px 0 0; font-size:13.5px; color:var(--azrc-taupe); }
.azrc-desc .azrc-track-result{ background:#fff; border:1px solid var(--azrc-line); padding:24px; margin-bottom:32px; }
.azrc-track-result__head{ display:flex; justify-content:space-between; align-items:flex-start; gap:16px; flex-wrap:wrap; }
.azrc-desc .azrc-track-result__date{ margin:0; font:400 24px/1.1 var(--font-display); text-transform:uppercase; color:var(--btn-noir); }
.azrc-desc .azrc-track-result__title{ margin:26px 0 12px; padding:0; border:0; font:700 11px/1 var(--font-mono); letter-spacing:.1em; text-transform:uppercase; color:var(--azrc-taupe); }
.azrc-desc .azrc-track-result__notes{ list-style:none; margin:0; padding:0 0 0 18px; border-left:2px solid var(--btn-noir); }
.azrc-desc .azrc-track-result__notes li{ position:relative; margin:0 0 16px; }
.azrc-track-result__notes li::before{ content:""; position:absolute; left:-25px; top:3px; width:10px; height:10px; border-radius:999px; background:#fff; border:2px solid var(--btn-noir); }
.azrc-track-result__notes li:first-child::before{ background:var(--btn-orange); border-color:var(--btn-orange); }
.azrc-track-result__note-date{ display:block; margin-bottom:3px; font:700 10.5px/1 var(--font-mono); letter-spacing:.06em; color:var(--azrc-taupe); }
.azrc-desc .azrc-track-result__note-text p{ margin:0; font-size:14.5px; }
@media (max-width:600px){
  .azrc-track-form__fields{ grid-template-columns:minmax(0,1fr); }
  .azrc-desc .azrc-track-form{ padding:20px; }
}

/* Adresse de facturation / point relais : même carte que "Suivi de votre colis". */
.woocommerce-customer-details .col2-set{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:16px; }
.woocommerce-customer-details .col2-set::before, .woocommerce-customer-details .col2-set::after{ content:none; display:none; }
.woocommerce-customer-details .col2-set .col-1, .woocommerce-customer-details .col2-set .col-2{ float:none; width:auto; margin:0; }
.woocommerce-customer-details .woocommerce-column{ background:#fff; border:1px solid var(--azrc-line); padding:24px; }
.azrc-desc .woocommerce-customer-details .woocommerce-column__title{
  margin:0 0 16px; padding-bottom:10px; border-bottom:2px solid var(--btn-orange);
  font:400 26px/1.1 var(--font-display); text-transform:uppercase; color:var(--btn-noir);
}
.woocommerce .woocommerce-customer-details address{ margin:0; padding:0; border:0; font-style:normal; font-size:14.5px; line-height:1.7; }
.woocommerce .woocommerce-customer-details address p{ margin:4px 0 0; }

@media (max-width:768px){
  .woocommerce-customer-details .col2-set{ grid-template-columns:minmax(0,1fr); }
}
@media (max-width:600px){
  .azrc-thankyou .azrc-thankyou__steps li{ padding:16px 16px 16px 56px; }
  .azrc-thankyou__steps li::before{ left:16px; top:15px; }
}

/* =====================================================================
   RESPONSIVE GLOBAL — en fin de fichier pour l'emporter sur les règles de base
   (placées plus haut, elles étaient écrasées : 48 px de marge latérale sur mobile).
   ===================================================================== */
@media (max-width:768px){
  .azrc-h1{ font-size:44px; }
  .azrc-h1--stripe{ background-image:unset!important; background-clip:unset!important; color:inherit!important; }
  .azrc-h2{ font-size:32px; }
  .azrc-section, .azrc-page{ padding:64px 24px; }
  .azrc-section--tight{ padding:44px 24px; }
  .azrc-shop-index{ padding:48px 24px 72px; }
  .azrc-product__top{ padding:32px 24px 48px; }
  .azrc-tabs-wrap, .azrc-related{ padding:0 24px 56px; }
  .azrc-shop-hero__overlay{ padding:32px 24px; }
  .azrc-cta-banner{ padding:64px 24px; }
}
@media (max-width:480px){
  .azrc-h1{ font-size:34px; line-height:1.02; }
  .azrc-h1--product{ font-size:30px; }
  .azrc-h2{ font-size:26px; }
  .azrc-lead{ font-size:16px; }
  .azrc-header__inner{ padding:12px 16px; }
  .wc-block-components-sidebar{ padding:20px!important; }
  .azrc-price{ font-size:30px; }
  .azrc-section, .azrc-page{ padding:48px 20px; }
  .azrc-section--tight{ padding:40px 20px; }
  .azrc-shop-index{ padding:40px 20px 64px; }
  .azrc-product__top{ padding:28px 20px 40px; }
  .azrc-tabs-wrap, .azrc-related{ padding:0 20px 48px; }
  .azrc-cta-banner{ padding:56px 20px; }
  .azrc-footer__inner{ grid-template-columns:1fr; padding:40px 20px 20px; gap:32px; }
  .azrc-footer__bottom{ padding:16px 20px 24px; flex-direction:column; align-items:flex-start; }
  .azrc-footer__trust{ width:calc(100% - 40px); padding:22px 0; flex-direction:column; align-items:flex-start; gap:16px; }
  .azrc-footer__secure{ align-items:flex-start; }
  .azrc-footer__secure-icon{ margin-top:1px; }
  .azrc-footer .azrc-pay-cards{ margin-left:36px; }
  .azrc-filter-dd--sort{ margin-left:0; }
}

/* =====================================================================
   PANIER LATÉRAL (cart-drawer.js)
   ===================================================================== */
body.azrc-cart-open{ overflow:hidden; }
.azrc-cart-drawer{ position:fixed; inset:0; z-index:1200; }
.azrc-cart-drawer[hidden]{ display:none; }
.azrc-cart-drawer__overlay{ position:absolute; inset:0; background:rgba(10,8,6,.5); backdrop-filter:blur(3px); -webkit-backdrop-filter:blur(3px); opacity:0; transition:opacity .3s ease; }
.azrc-cart-drawer.is-open .azrc-cart-drawer__overlay{ opacity:1; }
.azrc-cart-drawer__panel{
  position:absolute; top:0; right:0; bottom:0; width:min(420px, 92vw);
  display:flex; flex-direction:column; background:var(--btn-blanc);
  border-radius:20px 0 0 20px; box-shadow:-24px 0 60px rgba(0,0,0,.25);
  transform:translateX(102%); transition:transform .4s cubic-bezier(.22,.9,.34,1);
}
.azrc-cart-drawer.is-open .azrc-cart-drawer__panel{ transform:none; }
.admin-bar .azrc-cart-drawer{ top:32px; }
@media (max-width:782px){ .admin-bar .azrc-cart-drawer{ top:46px; } }

.azrc-cart-drawer__head{ display:flex; align-items:center; justify-content:space-between; gap:12px; padding:22px 22px 16px 24px; border-bottom:1px solid var(--azrc-line); }
.azrc-cart-drawer__head h2{ margin:0; font:400 26px/1 var(--font-display); text-transform:uppercase; color:var(--btn-noir); }
.azrc-cart-drawer__count{ font:700 13px/1 var(--font-mono); color:var(--btn-orange); vertical-align:middle; }
.azrc-cart-drawer__close{ width:40px; height:40px; flex:none; padding:0; border:0; border-radius:999px; background:rgba(25,20,16,.06); color:var(--btn-noir); display:flex; align-items:center; justify-content:center; cursor:pointer; transition:background .2s ease, color .2s ease, transform .3s ease; }
.azrc-cart-drawer__close svg{ width:18px; height:18px; }
.azrc-cart-drawer__close:hover{ background:var(--btn-noir); color:#fff; transform:rotate(90deg); }

.azrc-cart-drawer__body{ flex:1; overflow-y:auto; overscroll-behavior:contain; padding:8px 24px; }
.azrc-cart-drawer__items{ list-style:none; margin:0; padding:0; }
.azrc-cart-item{ position:relative; display:flex; gap:14px; padding:16px 0; border-bottom:1px solid var(--azrc-line); transition:opacity .2s ease; }
.azrc-cart-item:last-child{ border-bottom:0; }
.azrc-cart-item.is-updating{ opacity:.45; pointer-events:none; }
.azrc-cart-item__media{ flex:none; width:76px; aspect-ratio:4/5; border-radius:10px; overflow:hidden; background:var(--azrc-media-bg); }
.azrc-cart-item__media img{ width:100%; height:100%; object-fit:cover; }
.azrc-cart-item__info{ flex:1; min-width:0; display:flex; flex-direction:column; gap:4px; padding-right:28px; }
.azrc-cart-item__name{ font:400 18px/1.1 var(--font-display); text-transform:uppercase; color:var(--btn-noir); text-decoration:none; }
.azrc-cart-item__name:hover{ color:var(--btn-orange); }
.azrc-cart-item__meta{ font:400 13px/1.4 var(--font-body); color:var(--azrc-taupe); }
.azrc-cart-item__row{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:auto; padding-top:8px; }
.azrc-cart-item__qty{ display:inline-flex; align-items:center; height:34px; border:1px solid var(--field-border); border-radius:999px; background:#fff; overflow:hidden; }
.azrc-cart-item__qty button{ width:32px; height:100%; padding:0; border:0; background:none; font:400 17px/1 var(--font-body); color:var(--btn-noir); cursor:pointer; transition:background .15s ease; }
.azrc-cart-item__qty button:hover:not(:disabled){ background:var(--azrc-media-bg); }
.azrc-cart-item__qty button:disabled{ color:#c9c4bb; cursor:default; }
.azrc-cart-item__qty span{ min-width:22px; text-align:center; font:700 13px/1 var(--font-mono); color:var(--btn-noir); }
.azrc-cart-item__price{ font:700 15px/1 var(--font-body); color:var(--btn-noir); white-space:nowrap; }
.azrc-cart-item__remove{ position:absolute; top:14px; right:0; width:28px; height:28px; padding:0; border:0; border-radius:999px; background:none; color:var(--azrc-taupe); display:flex; align-items:center; justify-content:center; cursor:pointer; transition:background .15s ease, color .15s ease; }
.azrc-cart-item__remove svg{ width:14px; height:14px; }
.azrc-cart-item__remove:hover{ background:#FBEDE6; color:var(--btn-orange); }

.azrc-cart-drawer__foot{ padding:18px 24px 22px; border-top:1px solid var(--azrc-line); background:#fff; border-radius:0 0 0 20px; box-shadow:0 -8px 24px rgba(25,20,16,.05); }
.azrc-cart-drawer__foot[hidden]{ display:none; }
.azrc-cart-drawer__subtotal{ display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.azrc-cart-drawer__subtotal span{ font:700 11px/1 var(--font-mono); letter-spacing:.1em; text-transform:uppercase; color:var(--azrc-taupe); }
.azrc-cart-drawer__subtotal strong{ font:400 28px/1 var(--font-display); color:var(--btn-noir); }
.azrc-cart-drawer__note{ margin:8px 0 16px; font:400 12.5px/1.5 var(--font-body); color:var(--azrc-taupe); }
.azrc-cart-drawer__checkout a{ width:100%; }
.azrc-cart-drawer__view{ display:block; margin-top:12px; text-align:center; font:600 13.5px/1 var(--font-body); color:var(--btn-noir); text-decoration:underline; text-underline-offset:3px; }
.azrc-cart-drawer__view:hover{ color:var(--btn-orange); }

.azrc-cart-drawer__empty{ display:flex; flex-direction:column; align-items:center; text-align:center; padding:56px 12px; }
.azrc-cart-drawer__empty-icon{ width:64px; height:64px; border-radius:999px; background:#FBEDE6; color:var(--btn-orange); display:flex; align-items:center; justify-content:center; margin-bottom:16px; }
.azrc-cart-drawer__empty-icon svg{ width:30px; height:30px; }
.azrc-cart-drawer__empty strong{ font:400 24px/1 var(--font-display); text-transform:uppercase; color:var(--btn-noir); }
.azrc-cart-drawer__empty p{ margin:8px 0 18px; font-size:14px; color:var(--azrc-taupe); }
.azrc-cart-drawer__empty-link{ font:700 13px/1 var(--font-body); text-transform:uppercase; letter-spacing:.05em; color:var(--btn-orange); text-decoration:underline; text-underline-offset:4px; }

.azrc-cart-drawer__loading{ display:flex; justify-content:center; gap:6px; padding:60px 0; }
.azrc-cart-drawer__loading span{ width:8px; height:8px; border-radius:999px; background:var(--btn-orange); animation:azrc-dots 1s ease-in-out infinite; }
.azrc-cart-drawer__loading span:nth-child(2){ animation-delay:.15s; }
.azrc-cart-drawer__loading span:nth-child(3){ animation-delay:.3s; }
@keyframes azrc-dots{ 0%, 80%, 100%{ opacity:.25; transform:scale(.8); } 40%{ opacity:1; transform:none; } }

/* Pastille du panier qui « rebondit » après un ajout */
.azrc-header__cart-count.is-bump{ animation:azrc-bump .45s cubic-bezier(.3,1.6,.5,1); }
@keyframes azrc-bump{ 0%{ transform:scale(.6); } 60%{ transform:scale(1.25); } 100%{ transform:none; } }
.single_add_to_cart_button.is-loading{ opacity:.7; cursor:progress!important; }

@media (prefers-reduced-motion:reduce){
  .azrc-cart-drawer__panel, .azrc-cart-drawer__overlay{ transition:none; }
  .azrc-header__cart-count.is-bump{ animation:none; }
}
@media (max-width:600px){
  .azrc-cart-drawer__head{ padding:18px 18px 14px 20px; }
  .azrc-cart-drawer__body{ padding:4px 20px; }
  .azrc-cart-drawer__foot{ padding:16px 20px 20px; }
  .azrc-cart-item__media{ width:68px; }
}

/* Barre d'achat fixe (fiche produit, mobile uniquement) */
.azrc-buybar{ display:none; }
@media (max-width:900px){
  .azrc-buybar{
    position:fixed; left:12px; right:12px; bottom:12px; z-index:900;
    display:flex; align-items:center; gap:12px; padding:10px 10px 10px 16px;
    background:rgba(25,20,16,.94); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
    border-radius:16px; box-shadow:0 12px 32px rgba(0,0,0,.3);
    transform:translateY(calc(100% + 24px)); transition:transform .35s cubic-bezier(.22,.9,.34,1);
  }
  .azrc-buybar.is-visible{ transform:none; }
  .azrc-buybar__info{ flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; }
  .azrc-buybar__title{ font:400 17px/1.05 var(--font-display); text-transform:uppercase; color:var(--btn-blanc); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .azrc-buybar__price{ font:600 13px/1.2 var(--font-body); color:rgba(242,233,221,.75); }
  .azrc-buybar__price del{ opacity:.6; margin-right:4px; }
  .azrc-buybar__price ins{ text-decoration:none; color:var(--btn-orange); }
  .azrc-buybar__btn{
    flex:none; height:44px; padding:0 18px; border:0; border-radius:var(--radius-btn); cursor:pointer;
    background:var(--btn-orange); color:#fff; font:700 12px/1 var(--font-body); letter-spacing:.05em; text-transform:uppercase;
    box-shadow:0 6px 16px -6px rgba(226,87,44,.8);
  }
  .azrc-buybar__btn:active{ transform:scale(.97); }
  /* Les notifications passent au-dessus de la barre. */
  body.single-product .azrc-toasts{ bottom:88px; }
}
@media (prefers-reduced-motion:reduce){ .azrc-buybar{ transition:none; } }
/* Pastilles de taille qui « secouent » quand on demande de choisir une taille */
.azrc-swatches.is-attention{ animation:azrc-shake .5s ease; }
@keyframes azrc-shake{ 0%, 100%{ transform:none; } 20%, 60%{ transform:translateX(-6px); } 40%, 80%{ transform:translateX(6px); } }

/* =====================================================================
   RETRAIT AU CLUB — mis en avant partout (fiche produit, checkout, panier latéral, accueil)
   ===================================================================== */
.azrc-info-list li.azrc-info-list__item--featured{ background:linear-gradient(90deg, #FDF1EC, #fff 85%); }
.azrc-info-list__item--featured .azrc-info-list__icon{ background:var(--btn-orange); color:#fff; }
.azrc-info-list__badge{
  display:inline-flex; align-items:center; margin-left:6px; padding:3px 8px; border-radius:999px; vertical-align:1px;
  background:#e6f4ea; color:#2e7d46; font:700 10.5px/1 var(--font-body); letter-spacing:.04em; text-transform:uppercase;
}
/* Checkout : option « Retrait » en premier (ordre de la zone) + prix « Gratuit » en pastille verte. */
.wc-block-components-radio-control__option:has(input[value^="local_pickup"]) .wc-block-components-radio-control__secondary-label,
.wc-block-components-radio-control__option:has(input[value^="pickup_location"]) .wc-block-components-radio-control__secondary-label{
  flex:0 0 auto!important; width:auto!important; align-self:flex-start; margin-left:auto;
  padding:4px 10px; border-radius:999px; background:#e6f4ea; color:#2e7d46!important; font-size:12px; line-height:1.2; text-transform:uppercase; letter-spacing:.04em;
}
.azrc-cart-drawer__pickup{ display:flex; align-items:flex-start; gap:10px; margin:0 0 14px; padding:12px 14px; border-radius:var(--radius-field); background:#FDF1EC; border:1px solid rgba(226,87,44,.25); font:400 13px/1.45 var(--font-body); color:var(--azrc-text); }
.azrc-cart-drawer__pickup strong{ color:var(--btn-noir); }
.azrc-cart-drawer__pickup-icon{ flex:none; width:30px; height:30px; border-radius:9px; background:var(--btn-orange); color:#fff; display:flex; align-items:center; justify-content:center; }
.azrc-cart-drawer__pickup-icon svg{ width:17px; height:17px; }
.azrc-cart-drawer__subtotal{ margin-bottom:16px; }
/* Accueil : bandeau « Retrait gratuit au club » */
.azrc-pickup-band{ max-width:1450px; margin:0 auto; padding:0 48px; }
.azrc-pickup-band__inner{
  display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:24px 32px;
  padding:30px 34px; border-radius:24px; background:var(--btn-noir); color:var(--btn-creme);
  box-shadow:var(--shadow-lift); position:relative; overflow:hidden;
}
.azrc-pickup-band__inner::after{ content:""; position:absolute; right:-80px; top:-80px; width:260px; height:260px; border-radius:999px; background:radial-gradient(circle, rgba(226,87,44,.35), rgba(226,87,44,0) 70%); pointer-events:none; }
.azrc-pickup-band__icon{ width:64px; height:64px; border-radius:18px; background:var(--btn-orange); color:#fff; display:flex; align-items:center; justify-content:center; box-shadow:0 10px 24px -8px rgba(226,87,44,.8); }
.azrc-pickup-band__icon svg{ width:32px; height:32px; }
.azrc-pickup-band__text .azrc-eyebrow{ margin-bottom:8px; }
.azrc-pickup-band__title{ margin:0; font:400 32px/1 var(--font-display); text-transform:uppercase; color:var(--btn-blanc); }
.azrc-pickup-band__text p{ margin:10px 0 0; max-width:560px; font:400 15px/1.55 var(--font-body); color:rgba(242,233,221,.75); }
.azrc-pickup-band__steps{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; position:relative; z-index:1; }
.azrc-pickup-band__steps li{ display:flex; align-items:center; gap:10px; font:600 14px/1.3 var(--font-body); color:var(--btn-blanc); white-space:nowrap; }
.azrc-pickup-band__steps span{ width:26px; height:26px; flex:none; border-radius:999px; border:1px solid rgba(242,233,221,.3); display:flex; align-items:center; justify-content:center; font:700 12px/1 var(--font-mono); color:var(--btn-orange); }
@media (max-width:1000px){
  .azrc-pickup-band__inner{ grid-template-columns:auto minmax(0,1fr); }
  .azrc-pickup-band__steps{ grid-column:1 / -1; flex-direction:row; flex-wrap:wrap; gap:10px 20px; }
}
@media (max-width:768px){
  .azrc-pickup-band{ padding:0 8px; }
  .azrc-pickup-band__inner{ grid-template-columns:minmax(0,1fr); padding:24px 20px; border-radius:18px; gap:16px; }
  .azrc-pickup-band__icon{ width:52px; height:52px; border-radius:14px; }
  .azrc-pickup-band__icon svg{ width:26px; height:26px; }
  .azrc-pickup-band__title{ font-size:26px; }
  .azrc-pickup-band__steps{ flex-direction:column; }
}
/* Intertitres des descriptions produit (« Ce qu'on aime », « Taille & entretien ») */
.azrc-tabs-wrap .woocommerce-tabs .panel h3{ margin:24px 0 10px; font:700 11px/1 var(--font-mono); letter-spacing:.14em; text-transform:uppercase; color:var(--btn-orange); }
.azrc-tabs-wrap .woocommerce-tabs .panel p strong{ color:var(--btn-noir); }
/* Suivi de commande : le message d'erreur prend la largeur du formulaire. */
.azrc-desc .woocommerce:has(.azrc-track-form) .woocommerce-error,
.azrc-desc .woocommerce:has(.azrc-track-form) .woocommerce-info{ max-width:640px; }
/* Panier vide — grille « Les nouveautés » : titres et boutons lisibles (la règle des liens orange du panier s'y appliquait). */
.wc-block-cart .wc-block-grid__product-title, .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-link{ color:var(--btn-noir)!important; text-decoration:none!important; }
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title{ font:400 18px/1.1 var(--font-display)!important; text-transform:uppercase; }
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img{ border-radius:var(--radius-card); }
.wp-block-woocommerce-empty-cart-block .wp-block-button__link, .wp-block-woocommerce-empty-cart-block .add_to_cart_button{
  color:#fff!important; text-decoration:none!important; background:var(--btn-noir)!important; border-radius:var(--radius-btn)!important;
  font:700 12px/1 var(--font-body)!important; letter-spacing:.05em; text-transform:uppercase; padding:12px 18px!important; box-shadow:var(--shadow-btn);
}
.wp-block-woocommerce-empty-cart-block .wp-block-button__link:hover, .wp-block-woocommerce-empty-cart-block .add_to_cart_button:hover{ background:#2E2620!important; }
