/* Lenzoria — en-tête et pied de page v0.9.2 */
body.lenzoria-site-header-active #top-header,
body.lenzoria-site-header-active #main-header,
body.lenzoria-site-header-active .et-l--header,
body.lenzoria-site-header-active header#main-header,
body.lenzoria-site-header-active #main-footer,
body.lenzoria-site-header-active footer#main-footer,
body.lenzoria-site-header-active #footer,
body.lenzoria-site-header-active footer#footer,
body.lenzoria-site-header-active .et-l--footer{display:none!important}
body.lenzoria-site-header-active #page-container{padding-top:0!important;margin-top:0!important}
body.lenzoria-site-header-active{background:#050403}

.lz-site-header{position:sticky;top:0;z-index:99990;width:100%;background:rgba(5,4,3,.97);border-bottom:1px solid rgba(206,163,79,.28);box-shadow:0 8px 30px rgba(0,0,0,.28);backdrop-filter:blur(8px)}
body.admin-bar .lz-site-header{top:32px}
.lz-site-header *{box-sizing:border-box}
.lz-site-header-inner{width:min(100% - 42px,1380px);min-height:88px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:28px}
.lz-site-brand{display:flex;align-items:center;flex:0 0 auto;text-decoration:none}
.lz-site-logo{display:block;object-fit:contain;filter:saturate(.92) contrast(1.04)}
.lz-site-logo-desktop{width:250px;height:58px}
.lz-site-logo-mobile{display:none;width:58px;height:64px}
.lz-site-nav{display:flex;align-items:center;justify-content:flex-end;gap:clamp(15px,1.8vw,28px);flex-wrap:nowrap}
.lz-site-nav a,.lz-site-nav-pending{position:relative;color:#e8dcc1!important;font-family:Arial,Helvetica,sans-serif;font-size:12px;line-height:1.2;font-weight:600;letter-spacing:.08em;text-transform:uppercase;text-decoration:none!important;white-space:nowrap;transition:color .22s ease,opacity .22s ease}
.lz-site-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-9px;height:1px;background:#d2a952;transition:right .25s ease}
.lz-site-nav a:hover,.lz-site-nav a:focus{color:#e8c675!important}
.lz-site-nav a:hover:after,.lz-site-nav a:focus:after{right:0}
.lz-site-nav-pending{opacity:.52;cursor:default}
.lz-site-menu-toggle{display:none;width:46px;height:46px;padding:9px;border:1px solid rgba(208,166,80,.42);border-radius:50%;background:transparent;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}
.lz-site-menu-toggle span{display:block;width:20px;height:1px;background:#e3c271;transition:transform .25s ease,opacity .25s ease}
.lz-site-menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.lz-site-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.lz-site-menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

@media(max-width:1100px){
  .lz-site-header-inner{width:min(100% - 28px,1380px);min-height:82px;gap:18px}
  .lz-site-logo-desktop{width:205px;height:50px}
  .lz-site-nav{gap:14px}
  .lz-site-nav a,.lz-site-nav-pending{font-size:10px;letter-spacing:.055em}
}

@media(max-width:820px){
  body.admin-bar .lz-site-header{top:46px}
  .lz-site-header-inner{min-height:78px}
  .lz-site-logo-desktop{display:none}
  .lz-site-logo-mobile{display:block}
  .lz-site-menu-toggle{display:flex}
  .lz-site-nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:12px 20px 20px;background:rgba(5,4,3,.99);border-bottom:1px solid rgba(206,163,79,.28);box-shadow:0 18px 30px rgba(0,0,0,.32)}
  .lz-site-header.is-open .lz-site-nav{display:flex}
  .lz-site-nav a,.lz-site-nav-pending{display:block;padding:14px 8px;border-bottom:1px solid rgba(206,163,79,.11);font-size:12px;letter-spacing:.09em}
  .lz-site-nav a:after{display:none}
}


/* Pied de page Lenzoria */
.lz-site-footer{visibility:hidden;position:relative;z-index:20;width:100%;background:radial-gradient(circle at 50% 0,rgba(132,94,31,.12),transparent 34%),#050403;border-top:1px solid rgba(206,163,79,.24);color:#bbae93}
.lz-site-footer.lz-site-footer-ready{visibility:visible}
.lz-site-footer *{box-sizing:border-box}
.lz-site-footer-inner{width:min(100% - 40px,1180px);margin:0 auto;padding:54px 20px 34px;text-align:center}
.lz-site-footer-brand{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.lz-site-footer-logo{display:block;width:112px;height:132px;object-fit:contain;filter:saturate(.94) contrast(1.04)}
.lz-site-footer-signature{margin:13px auto 24px;color:#d5b66d;font-family:Georgia,"Times New Roman",serif;font-size:16px;line-height:1.5;font-style:italic;letter-spacing:.035em}
.lz-site-footer-nav{display:flex;align-items:center;justify-content:center;gap:10px 22px;flex-wrap:wrap;margin:0 auto 28px}
.lz-site-footer-nav a,.lz-site-footer-pending{color:#c9bda4!important;font-family:Arial,Helvetica,sans-serif;font-size:10px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;text-decoration:none!important;transition:color .22s ease,opacity .22s ease}
.lz-site-footer-nav a:hover,.lz-site-footer-nav a:focus{color:#e3c271!important}
.lz-site-footer-pending{opacity:.46}
.lz-site-footer-copy{margin:0;padding-top:23px;border-top:1px solid rgba(206,163,79,.13);color:#796f5e;font-family:Arial,Helvetica,sans-serif;font-size:10px;letter-spacing:.08em;text-transform:uppercase}

@media(max-width:820px){
  .lz-site-footer-inner{padding:44px 18px 30px}
  .lz-site-footer-logo{width:96px;height:116px}
  .lz-site-footer-signature{font-size:15px}
  .lz-site-footer-nav{gap:12px 18px}
}

/* v0.9.1 — navigation d’action, luminosité et pied de page */
.lz-site-logo,.lz-site-footer-logo{filter:brightness(1.08) saturate(1.02) contrast(1.06)}
.lz-site-nav .lz-site-nav-cta{padding:10px 15px;border:1px solid rgba(221,180,91,.72);border-radius:999px;color:#f0d78f!important;background:linear-gradient(180deg,rgba(193,145,52,.17),rgba(115,79,23,.10));box-shadow:inset 0 0 18px rgba(211,165,72,.05)}
.lz-site-nav .lz-site-nav-cta:after{display:none}
.lz-site-nav .lz-site-nav-cta:hover,.lz-site-nav .lz-site-nav-cta:focus{background:rgba(202,156,65,.22);color:#ffe4a1!important;border-color:#e1bd6b}
.lz-site-footer{clear:both;float:none!important;display:block!important;margin-top:0!important}

@media(max-width:1180px) and (min-width:821px){
  .lz-site-header-inner{width:min(100% - 24px,1380px);gap:14px}
  .lz-site-logo-desktop{width:185px;height:48px}
  .lz-site-nav{gap:10px}
  .lz-site-nav a,.lz-site-nav-pending{font-size:9.5px;letter-spacing:.04em}
  .lz-site-nav .lz-site-nav-cta{padding:9px 11px}
}
@media(max-width:820px){
  .lz-site-nav .lz-site-nav-cta{margin-top:8px;text-align:center;border-bottom:1px solid rgba(221,180,91,.72);padding:13px 12px}
}

/* v0.9.2 — ancrage sûr du pied de page sur le Sanctuaire */
body.lenzoria-sanctuaire-page .lz-site-footer{position:relative!important;inset:auto!important;transform:none!important;clear:both!important;float:none!important;z-index:20!important}
body.lenzoria-sanctuaire-page .lenzoria-sanctuaire-public + .lz-site-footer{width:100vw;max-width:none;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important}

/* v0.10.0 — application mobile */
.lz-site-app-promo{max-width:720px;margin:24px auto 26px;padding:22px 24px;border:1px solid rgba(166,107,224,.28);border-radius:18px;background:radial-gradient(circle at 50% 10%,rgba(111,62,174,.14),transparent 52%),rgba(9,6,11,.72);box-shadow:inset 0 0 35px rgba(112,65,165,.035)}
.lz-site-app-kicker{margin-bottom:7px;color:#c79c51;font:700 10px/1.2 Arial,Helvetica,sans-serif;letter-spacing:.24em;text-transform:uppercase}
.lz-site-app-promo strong{display:block;color:#e6c87f;font:500 20px/1.35 Georgia,"Times New Roman",serif}
.lz-site-app-promo p{max-width:590px;margin:9px auto 15px;color:#bbae93;font:14px/1.65 Georgia,"Times New Roman",serif}
.lz-site-app-status{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.lz-site-app-status span{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 13px;border:1px solid rgba(211,169,81,.25);border-radius:999px;color:#d7c39a;font:600 10px/1.2 Arial,Helvetica,sans-serif;letter-spacing:.055em;text-transform:uppercase;background:rgba(5,4,5,.48)}
@media(max-width:620px){.lz-site-app-promo{padding:20px 16px}.lz-site-app-promo strong{font-size:18px}.lz-site-app-status{display:grid;grid-template-columns:1fr}.lz-site-app-status span{width:100%}}


/* v0.10.5 — panier Lenzoria + finition des pages WooCommerce */
.lz-site-cart{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:42px;height:42px;border:1px solid rgba(221,180,91,.56);border-radius:50%;color:#e3c271!important;text-decoration:none!important;background:rgba(8,6,6,.5);transition:border-color .2s ease,background .2s ease,transform .2s ease;order:3}
.lz-site-cart:hover,.lz-site-cart:focus{border-color:#e1bd6b;background:rgba(202,156,65,.13);transform:translateY(-1px)}
.lz-site-cart svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.lz-site-cart-count{position:absolute;right:-5px;top:-5px;display:flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:#b7903f;color:#080604;font:700 10px/1 Arial,Helvetica,sans-serif;border:1px solid #e3c271}
.lz-site-nav{order:2;margin-left:auto}.lz-site-menu-toggle{order:4}.lz-site-brand{order:1}
@media(max-width:820px){.lz-site-nav{order:5}.lz-site-cart{width:40px;height:40px;margin-left:auto}.lz-site-header-inner{justify-content:flex-start}.lz-site-menu-toggle{margin-left:6px}}

body.woocommerce-page.lenzoria-site-header-active,
body.single-product.lenzoria-site-header-active{background:#050403!important;color:#cbbfa7}
body.woocommerce-page.lenzoria-site-header-active #main-content,
body.single-product.lenzoria-site-header-active #main-content{background:radial-gradient(circle at 50% 0,rgba(91,40,125,.10),transparent 34%),#080706!important;color:#cbbfa7}
body.woocommerce-page.lenzoria-site-header-active #main-content .container,
body.single-product.lenzoria-site-header-active #main-content .container{width:min(100% - 34px,1180px)!important;max-width:1180px!important;padding-top:46px!important;padding-bottom:58px!important}
body.woocommerce-page.lenzoria-site-header-active #main-content .container:before,
body.single-product.lenzoria-site-header-active #main-content .container:before{display:none!important}
body.woocommerce-page.lenzoria-site-header-active #left-area,
body.single-product.lenzoria-site-header-active #left-area{width:100%!important;padding:0!important;float:none!important}
body.woocommerce-page.lenzoria-site-header-active #sidebar,
body.single-product.lenzoria-site-header-active #sidebar,
body.woocommerce-page.lenzoria-site-header-active .widget-area,
body.single-product.lenzoria-site-header-active .widget-area{display:none!important}
body.woocommerce-page.lenzoria-site-header-active .woocommerce,
body.single-product.lenzoria-site-header-active .woocommerce{color:#cbbfa7!important}
body.woocommerce-page.lenzoria-site-header-active h1,
body.woocommerce-page.lenzoria-site-header-active h2,
body.woocommerce-page.lenzoria-site-header-active h3,
body.single-product.lenzoria-site-header-active h1,
body.single-product.lenzoria-site-header-active h2,
body.single-product.lenzoria-site-header-active h3{color:#e7c879!important;font-family:Georgia,"Times New Roman",serif!important}
body.woocommerce-page.lenzoria-site-header-active a,
body.single-product.lenzoria-site-header-active a{color:#d7b65f}
body.woocommerce-page.lenzoria-site-header-active .wc-block-cart,
body.woocommerce-page.lenzoria-site-header-active .wc-block-checkout,
body.woocommerce-page.lenzoria-site-header-active .wc-block-components-sidebar-layout,
body.woocommerce-page.lenzoria-site-header-active .wc-block-components-order-summary,
body.woocommerce-page.lenzoria-site-header-active .wp-block-woocommerce-cart,
body.woocommerce-page.lenzoria-site-header-active .wp-block-woocommerce-checkout{color:#d4c8af!important}
body.woocommerce-page.lenzoria-site-header-active .wc-block-components-sidebar,
body.woocommerce-page.lenzoria-site-header-active .wc-block-components-main,
body.woocommerce-page.lenzoria-site-header-active .wc-block-components-order-summary,
body.woocommerce-page.lenzoria-site-header-active .wc-block-components-totals-wrapper,
body.woocommerce-page.lenzoria-site-header-active .wc-block-components-checkout-step{background:rgba(10,8,10,.76)!important;border-color:rgba(211,169,81,.24)!important;color:#d4c8af!important}
body.woocommerce-page.lenzoria-site-header-active .wc-block-components-text-input input,
body.woocommerce-page.lenzoria-site-header-active .wc-block-components-combobox .components-combobox-control__input,
body.woocommerce-page.lenzoria-site-header-active input,
body.woocommerce-page.lenzoria-site-header-active select,
body.woocommerce-page.lenzoria-site-header-active textarea{background:#0d0b0d!important;color:#eee2c8!important;border-color:rgba(211,169,81,.32)!important}
body.woocommerce-page.lenzoria-site-header-active .wc-block-components-button:not(.wc-block-components-express-payment__event-buttons button),
body.woocommerce-page.lenzoria-site-header-active .wp-element-button,
body.single-product.lenzoria-site-header-active .button{border:1px solid rgba(226,184,92,.78)!important;border-radius:999px!important;background:linear-gradient(180deg,#d7ae54,#aa792d)!important;color:#130d05!important;font-weight:700!important;box-shadow:none!important}
body.woocommerce-page.lenzoria-site-header-active .wc-block-components-button:hover,
body.single-product.lenzoria-site-header-active .button:hover{filter:brightness(1.06)}
body.woocommerce-page.lenzoria-site-header-active .wc-block-cart-item__image img,
body.woocommerce-page.lenzoria-site-header-active .wc-block-components-order-summary-item__image img,
body.single-product.lenzoria-site-header-active .woocommerce-product-gallery__image img,
body.single-product.lenzoria-site-header-active img.lenzoria-product-card-back{border-radius:16px!important;box-shadow:0 12px 32px rgba(0,0,0,.42),0 0 0 1px rgba(211,169,81,.22)!important;background:#050403!important;object-fit:cover}
body.single-product.lenzoria-site-header-active .product{background:rgba(10,8,10,.72);border:1px solid rgba(211,169,81,.20);border-radius:24px;padding:24px!important}
body.single-product.lenzoria-site-header-active .woocommerce-tabs,
body.single-product.lenzoria-site-header-active .related.products{border-color:rgba(211,169,81,.16)!important}
body.single-product.lenzoria-site-header-active .woocommerce-breadcrumb{color:#8f846e!important}
body.single-product.lenzoria-site-header-active .woocommerce-breadcrumb a{color:#bca66f!important}
@media(max-width:700px){body.woocommerce-page.lenzoria-site-header-active #main-content .container,body.single-product.lenzoria-site-header-active #main-content .container{width:min(100% - 22px,1180px)!important;padding-top:26px!important}body.single-product.lenzoria-site-header-active .product{padding:16px!important;border-radius:18px}}


/* v0.10.6 — checkout Lenzoria compact sur mobile. */
body.woocommerce-checkout.lenzoria-site-header-active .lenzoria-duplicate-order-summary{display:none!important}
body.woocommerce-checkout.lenzoria-site-header-active .wp-block-woocommerce-checkout-order-note-block,
body.woocommerce-checkout.lenzoria-site-header-active .wc-block-checkout__add-note,
body.woocommerce-checkout.lenzoria-site-header-active .wc-block-components-checkout-step--order-notes{display:none!important}
body.woocommerce-checkout.lenzoria-site-header-active .lenzoria-card-payment-help{margin:12px 0 0!important;font-size:13px!important;line-height:1.45!important;color:#a99c84!important;font-style:italic}
body.woocommerce-checkout.lenzoria-site-header-active .wc-block-components-address-form{row-gap:10px!important}
body.woocommerce-checkout.lenzoria-site-header-active .wc-block-components-checkout-step{padding-bottom:18px!important}
@media(max-width:782px){
  body.woocommerce-checkout.lenzoria-site-header-active .wc-block-checkout__main{width:100%!important;max-width:none!important;padding-right:0!important}
  body.woocommerce-checkout.lenzoria-site-header-active .wc-block-components-sidebar-layout{display:block!important}
  body.woocommerce-checkout.lenzoria-site-header-active .wc-block-components-checkout-step__container{padding-left:0!important}
}


/* Stripe Express reste rendu par WooCommerce/Stripe ; aucun DOM n'est déplacé. */
body.woocommerce-checkout.lenzoria-site-header-active #wc-stripe-express-checkout-element,
body.woocommerce-checkout.lenzoria-site-header-active #wc-stripe-payment-request-wrapper,
body.woocommerce-checkout.lenzoria-site-header-active .wc-stripe-express-checkout-element,
body.woocommerce-checkout.lenzoria-site-header-active .wc-stripe-banner-checkout,
body.woocommerce-checkout.lenzoria-site-header-active .wc-stripe-express-checkout-wrapper{display:block!important;visibility:visible!important;opacity:1!important}

/* V0.10.27 — Stripe hydrate les wallets après le premier rendu du Checkout Block.
   Sur mobile on réserve leur hauteur dès le départ pour éviter le saut « coordonnées d'abord,
   moyens de paiement ensuite ». Ce CSS ne déplace ni ne modifie aucun bloc React/Stripe. */
@media (max-width:781px){
  body.woocommerce-checkout.lenzoria-site-header-active .wp-block-woocommerce-checkout-express-payment-block{
    min-height:280px!important;
  }
  body.woocommerce-checkout.lenzoria-site-header-active .wp-block-woocommerce-checkout-express-payment-block:has(.wc-block-components-express-payment__event-buttons button),
  body.woocommerce-checkout.lenzoria-site-header-active .wp-block-woocommerce-checkout-express-payment-block:has(#wc-stripe-express-checkout-element iframe),
  body.woocommerce-checkout.lenzoria-site-header-active .wp-block-woocommerce-checkout-express-payment-block:has(.wc-stripe-express-checkout-element iframe){
    min-height:0!important;
  }
}

/* v0.10.25 — consentement serveur, indépendant de React/Woo Additional Fields.
   Aucun bloc n'est déplacé. La case est un vrai input HTML placé avant Express Checkout. */
body.woocommerce-checkout.lenzoria-site-header-active .lenzoria-pre-express-consent{
  margin:0 0 14px!important;
  padding:15px!important;
  border:1px solid rgba(218,178,90,.34)!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,rgba(96,50,132,.18),rgba(211,169,81,.06))!important;
  position:relative!important;
  z-index:2!important;
}
body.woocommerce-checkout.lenzoria-site-header-active .lenzoria-pre-express-consent__label{
  display:flex!important;
  align-items:flex-start!important;
  gap:11px!important;
  color:#f2e6cf!important;
  font-weight:600!important;
  line-height:1.45!important;
  cursor:pointer!important;
  -webkit-tap-highlight-color:transparent;
}
body.woocommerce-checkout.lenzoria-site-header-active .lenzoria-pre-express-consent__checkbox{
  appearance:auto!important;
  -webkit-appearance:checkbox!important;
  flex:0 0 auto!important;
  width:20px!important;
  height:20px!important;
  margin:2px 0 0!important;
  padding:0!important;
  accent-color:#d7ae54!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  position:relative!important;
  z-index:4!important;
}
body.woocommerce-checkout.lenzoria-site-header-active .lenzoria-pre-express-consent__help{
  margin:9px 0 0 31px!important;
  color:#aa9d85!important;
  font-size:12.5px!important;
  line-height:1.4!important;
}
body.woocommerce-checkout.lenzoria-site-header-active .lenzoria-pre-express-consent__error{
  margin:9px 0 0 31px!important;
  color:#f0b6b6!important;
  font-size:12.5px!important;
  line-height:1.4!important;
}
body.woocommerce-checkout.lenzoria-site-header-active.lenzoria-consent-missing .wp-block-woocommerce-checkout-express-payment-block,
body.woocommerce-checkout.lenzoria-site-header-active.lenzoria-consent-missing .wc-block-components-checkout-place-order-button{
  opacity:.52!important;
}
body.woocommerce-checkout.lenzoria-site-header-active.lenzoria-consent-missing .wp-block-woocommerce-checkout-express-payment-block{
  pointer-events:none!important;
  user-select:none!important;
}

/* V0.10.24 — facturation minimale pour les achats numériques Lenzoria.
   Les champs rue, CP, ville, société, région et téléphone sont retirés côté WooCommerce.
   On garde prénom, nom et pays ; le titre « Adresse de facturation » devient inutile visuellement. */
body.woocommerce-checkout.lenzoria-site-header-active .wp-block-woocommerce-checkout-billing-address-block .wc-block-components-checkout-step__heading,
body.woocommerce-checkout.lenzoria-site-header-active .wp-block-woocommerce-checkout-billing-address-block .wc-block-components-checkout-step__description{
  display:none!important;
}
body.woocommerce-checkout.lenzoria-site-header-active .wp-block-woocommerce-checkout-billing-address-block .wc-block-components-checkout-step__container{
  margin-top:0!important;
  padding-left:0!important;
}



/* V0.10.29 — restauration du bouton Mon compte.
   Le nettoyage V0.10.23 avait conserve le HTML du bouton mais supprime ses styles,
   ce qui le rendait pratiquement invisible dans l'en-tete mobile. */
.lz-site-account{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:42px;height:42px;border:1px solid rgba(221,180,91,.56);border-radius:50%;color:#e3c271!important;text-decoration:none!important;background:rgba(8,6,6,.5);transition:border-color .2s ease,background .2s ease,transform .2s ease;order:3}
.lz-site-account:hover,.lz-site-account:focus{border-color:#e1bd6b;background:rgba(202,156,65,.13);transform:translateY(-1px)}
.lz-site-account svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.lz-site-nav{order:2;margin-left:auto}
.lz-site-account{order:3}
.lz-site-cart{order:4}
.lz-site-menu-toggle{order:5}
.lz-site-brand{order:1}
@media(max-width:820px){.lz-site-nav{order:6}.lz-site-account{width:40px;height:40px;margin-left:auto}.lz-site-cart{width:40px;height:40px;margin-left:6px}.lz-site-menu-toggle{margin-left:6px}.lz-site-header-inner{justify-content:flex-start;gap:0}}
@media(max-width:360px){.lz-site-logo-mobile{width:52px;height:58px}.lz-site-account,.lz-site-cart{width:38px;height:38px}.lz-site-menu-toggle{width:42px;height:42px}}
