/* =========================================================
   MISTERAYZE - pages interieures (boutique, fiche produit,
   panier, paiement, compte, pages legales).
   S'appuie sur les variables et composants de misterayze.css
   (couleurs, polices, .mz-nav, .mz-foot, .mz-card, .mz-btn).
   Tout est prefixe body.mz-inner pour passer devant Astra.
   ========================================================= */

/* ---------- Socle ---------- */
body.mz-inner{
  background:#fff !important; color:var(--mz-fg);
  font-family:var(--mz-body); font-weight:400; line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
body.mz-inner ::selection{ background:var(--mz-accent); color:#fff; }
body.mz-inner #page, body.mz-inner .site-content, body.mz-inner #content{ background:#fff; }
body.mz-inner button, body.mz-inner input, body.mz-inner select, body.mz-inner textarea{ font-family:var(--mz-body); }
body.mz-inner a{ color:var(--mz-fg); }
body.mz-inner a:hover{ color:var(--mz-accent); }
body.mz-inner h1, body.mz-inner h2, body.mz-inner h3, body.mz-inner h4,
body.mz-inner .entry-title, body.mz-inner .product_title, body.mz-inner .woocommerce-products-header__title{
  font-family:var(--mz-display); font-weight:400; letter-spacing:-.025em; line-height:.98; color:var(--mz-fg);
  text-transform:none;
}

/* ---------- Navigation : toujours en version collee sur blanc ---------- */
body.mz-inner .mz-chrome{ background:transparent; }
body.mz-inner .mz-nav{ position:fixed; }
body.admin-bar.mz-inner .mz-nav{ top:32px; }
@media (max-width:782px){ body.admin-bar.mz-inner .mz-nav{ top:46px; } }
body.mz-inner .mz-nav .mz-logo, body.mz-inner .mz-nav .mz-logo:hover{ color:var(--mz-fg); }
body.mz-inner .mz-nav .mz-links a.is-current::after{ width:100%; }
body.mz-inner .mz-nav .mz-cart-btn{ color:var(--mz-fg); }
@media (max-width:760px){ body.admin-bar.mz-inner .mz-links{ padding-top:7.5rem; } }

/* ---------- Gabarit general ---------- */
body.mz-inner #content{ padding-top:clamp(7rem,14vh,9.5rem); padding-bottom:clamp(4rem,10vh,7rem); }
body.mz-inner .ast-container{ max-width:var(--mz-maxw) !important; padding-inline:var(--mz-pad) !important; display:block; }
body.mz-inner #primary{ width:100% !important; margin:0 !important; padding:0 !important; float:none !important; border:0 !important; }
body.mz-inner #secondary{ display:none !important; }
body.mz-inner.ast-separate-container .ast-article-single,
body.mz-inner.ast-separate-container .ast-article-post,
body.mz-inner.ast-separate-container .ast-woocommerce-container,
body.mz-inner .ast-woocommerce-container,
body.mz-inner.ast-separate-container .site-main > .ast-row,
body.mz-inner .ast-article-single{
  background:transparent !important; padding:0 !important; margin:0 !important; box-shadow:none !important; border:0 !important;
}
body.mz-inner.ast-separate-container{ background:#fff !important; }

/* Titre de page : monumental, precede d'un sur-titre */
body.mz-inner .entry-header{ margin-bottom:clamp(2rem,6vh,3.5rem); text-align:left; }
body.mz-inner .entry-header .entry-title,
body.mz-inner .woocommerce-products-header__title.page-title{
  font-size:clamp(2.6rem,7.5vw,6rem); margin:0; color:var(--mz-fg);
}
body.mz-inner .entry-header::before,
body.mz-inner .woocommerce-products-header::before{
  display:block; font-size:.72rem; letter-spacing:.24em; text-transform:uppercase;
  color:var(--mz-muted); margin-bottom:1.25rem; content:'MisterAyze';
}
body.mz-inner.woocommerce-cart .entry-header::before{ content:'Votre sélection'; }
body.mz-inner.woocommerce-checkout .entry-header::before{ content:'Dernière étape'; }
body.mz-inner.woocommerce-order-received .entry-header::before{ content:'Commande confirmée'; }
body.mz-inner.woocommerce-account .entry-header::before{ content:'Espace client'; }
body.mz-inner.mz-legal-page .entry-header::before{ content:'Informations légales'; }
body.mz-inner .woocommerce-products-header::before{ content:'03 — Boutique'; }
body.mz-inner .woocommerce-products-header{ margin-bottom:clamp(2.5rem,6vh,4rem); padding:0; }
body.mz-inner .mz-shop-intro{ color:var(--mz-muted); max-width:52ch; margin-top:1.25rem; font-size:1.02rem; }

/* Fil d'Ariane : discret, en sur-titre */
body.mz-inner .woocommerce-breadcrumb, body.mz-inner .ast-breadcrumbs-wrapper{
  font-size:.72rem; letter-spacing:.18em; text-transform:uppercase; color:var(--mz-muted); margin-bottom:2rem;
}
body.mz-inner .woocommerce-breadcrumb a{ color:var(--mz-muted); }
body.mz-inner .woocommerce-breadcrumb a:hover{ color:var(--mz-accent); }

/* ---------- Boutons ---------- */
body.mz-inner .woocommerce a.button, body.mz-inner .woocommerce button.button, body.mz-inner .woocommerce input.button,
body.mz-inner a.button, body.mz-inner button.button, body.mz-inner input[type=submit], body.mz-inner .wc-block-components-button,
body.mz-inner .woocommerce #respond input#submit{
  display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
  padding:.95rem 1.9rem !important; border-radius:999px !important; border:1px solid var(--mz-fg) !important;
  background:var(--mz-fg) !important; color:#fff !important;
  font-family:var(--mz-body) !important; font-size:.8rem !important; font-weight:500 !important;
  letter-spacing:.14em !important; text-transform:uppercase !important; line-height:1.2 !important;
  box-shadow:none !important; transition:background .3s var(--mz-ease), color .3s, border-color .3s, box-shadow .3s !important;
}
body.mz-inner .woocommerce a.button:hover, body.mz-inner .woocommerce button.button:hover, body.mz-inner a.button:hover,
body.mz-inner button.button:hover, body.mz-inner input[type=submit]:hover{
  background:var(--mz-accent) !important; border-color:var(--mz-accent) !important; color:#fff !important;
}
/* Actions principales : le bleu du personnage */
body.mz-inner .single_add_to_cart_button, body.mz-inner .checkout-button, body.mz-inner #place_order,
body.mz-inner .woocommerce a.button.alt, body.mz-inner .woocommerce button.button.alt,
body.mz-inner .woocommerce button.button.single_add_to_cart_button, body.mz-inner .woocommerce a.button.checkout-button, body.mz-inner .woocommerce button.button#place_order, body.mz-inner .woocommerce #payment #place_order{
  background:var(--mz-accent) !important; border-color:var(--mz-accent) !important; color:#fff !important;
  box-shadow:0 12px 40px -12px var(--mz-accent) !important;
}
body.mz-inner .single_add_to_cart_button:hover, body.mz-inner .checkout-button:hover, body.mz-inner #place_order:hover,
body.mz-inner .woocommerce button.button.single_add_to_cart_button:hover, body.mz-inner .woocommerce a.button.checkout-button:hover, body.mz-inner .woocommerce #payment #place_order:hover{
  background:var(--mz-fg) !important; border-color:var(--mz-fg) !important; box-shadow:none !important;
}
body.mz-inner .button.disabled, body.mz-inner .button:disabled, body.mz-inner .single_add_to_cart_button.disabled{
  opacity:.35 !important; cursor:not-allowed; box-shadow:none !important;
}
/* Boutons secondaires (mise a jour du panier, code promo) */
body.mz-inner .woocommerce button[name=update_cart], body.mz-inner .woocommerce button[name=apply_coupon]{
  background:transparent !important; color:var(--mz-fg) !important; border:1px solid var(--mz-line) !important;
}
body.mz-inner .woocommerce button[name=update_cart]:hover, body.mz-inner .woocommerce button[name=apply_coupon]:hover{
  border-color:var(--mz-fg) !important; background:transparent !important; color:var(--mz-fg) !important;
}

/* ---------- Champs ---------- */
body.mz-inner .woocommerce form .form-row label, body.mz-inner .woocommerce-page form .form-row label,
body.mz-inner .variations th.label label, body.mz-inner .mz-field-label{
  font-size:.7rem; letter-spacing:.18em; text-transform:uppercase; color:var(--mz-muted); font-weight:500; margin-bottom:.45rem; line-height:1.4;
}
body.mz-inner .woocommerce form .form-row .required{ color:var(--mz-accent); text-decoration:none; }
body.mz-inner .woocommerce form .form-row input.input-text, body.mz-inner .woocommerce form .form-row textarea,
body.mz-inner .woocommerce form .form-row select, body.mz-inner input.input-text, body.mz-inner .woocommerce input[type=email],
body.mz-inner .woocommerce input[type=tel], body.mz-inner .woocommerce input[type=text], body.mz-inner .woocommerce input[type=password],
body.mz-inner .select2-container--default .select2-selection--single, body.mz-inner .quantity .qty{
  height:auto; min-height:52px; padding:.85rem 1.3rem !important; border:1px solid var(--mz-line) !important; border-radius:999px !important;
  background:#fff !important; color:var(--mz-fg) !important; font-size:1rem !important; box-shadow:none !important;
  transition:border-color .25s, box-shadow .25s;
}
body.mz-inner .woocommerce form .form-row textarea{ border-radius:22px !important; min-height:120px; }
body.mz-inner .woocommerce form .form-row input.input-text:focus, body.mz-inner .woocommerce form .form-row textarea:focus,
body.mz-inner .select2-container--open .select2-selection--single, body.mz-inner .quantity .qty:focus, body.mz-inner input.input-text:focus{
  border-color:var(--mz-accent) !important; box-shadow:0 0 0 3px rgba(44,79,240,.14) !important; outline:none;
}
body.mz-inner .select2-container--default .select2-selection--single{ display:flex; align-items:center; }
body.mz-inner .select2-container--default .select2-selection--single .select2-selection__rendered{ padding:0 !important; line-height:1.4; color:var(--mz-fg); }
body.mz-inner .select2-container--default .select2-selection--single .select2-selection__arrow{ height:100%; right:1rem; }
body.mz-inner .select2-dropdown{ border:1px solid var(--mz-line); border-radius:18px; overflow:hidden; }
body.mz-inner .select2-results__option--highlighted[aria-selected]{ background:var(--mz-accent) !important; }
body.mz-inner .woocommerce form .form-row{ margin-bottom:1.1rem; padding:0; }
body.mz-inner .woocommerce form .form-row.woocommerce-invalid input.input-text{ border-color:#c0392b !important; }
body.mz-inner input[type=checkbox], body.mz-inner input[type=radio]{ accent-color:var(--mz-accent); width:18px; height:18px; vertical-align:-3px; }

/* ---------- Messages ---------- */
body.mz-inner .woocommerce-message, body.mz-inner .woocommerce-info, body.mz-inner .woocommerce-error,
body.mz-inner .woocommerce-notices-wrapper .woocommerce-message{
  background:var(--mz-night) !important; color:var(--mz-fg) !important; border:0 !important; border-left:3px solid var(--mz-accent) !important;
  border-radius:6px; padding:1.1rem 1.4rem !important; margin:0 0 2rem !important; font-size:.95rem; line-height:1.5;
  display:flex; flex-wrap:wrap; align-items:center; gap:.75rem 1.25rem; list-style:none;
}
body.mz-inner .woocommerce-error{ border-left-color:#c0392b !important; flex-direction:column; align-items:flex-start; }
body.mz-inner .woocommerce-message::before, body.mz-inner .woocommerce-info::before, body.mz-inner .woocommerce-error::before{ display:none !important; }
body.mz-inner .woocommerce-message .button, body.mz-inner .woocommerce-info .button{
  order:2; margin-left:auto !important; padding:.6rem 1.2rem !important; font-size:.7rem !important; float:none !important;
}
body.mz-inner .woocommerce-info a.showcoupon, body.mz-inner .woocommerce-info a{ color:var(--mz-accent); text-decoration:underline; text-underline-offset:3px; }

/* ---------- Prix ---------- */
body.mz-inner .price, body.mz-inner .woocommerce-Price-amount{ color:var(--mz-fg); }
body.mz-inner .summary .price, body.mz-inner .woocommerce-variation-price .price{
  font-family:var(--mz-display); font-size:clamp(1.6rem,3vw,2.2rem); color:var(--mz-coral) !important; font-weight:400; margin:0 0 1.5rem; display:block;
}
body.mz-inner .summary .price .screen-reader-text{ position:absolute; }

/* =========================================================
   BOUTIQUE (archive) et produits lies : cartes MisterAyze
   ========================================================= */
body.mz-inner ul.products{
  display:grid !important; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:2.5rem 2rem;
  margin:0 !important; padding:0 !important; list-style:none;
}
body.mz-inner ul.products::before, body.mz-inner ul.products::after{ display:none !important; }
body.mz-inner ul.products li.product{
  width:auto !important; margin:0 !important; padding:0 !important; float:none !important; text-align:left !important;
  background:transparent !important; box-shadow:none !important; border:0 !important;
}
body.mz-inner ul.products li.product .mz{ background:transparent; }
body.mz-inner .mz-card-art{ display:block; background:#fff; }
body.mz-inner .mz-card-art img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .8s var(--mz-ease); margin:0 !important; }
body.mz-inner .mz-card:hover .mz-card-art img{ transform:scale(1.05); }
body.mz-inner .mz-card-row h3{ font-size:1.15rem; margin:0; }
body.mz-inner .mz-card-row h3 a{ color:var(--mz-fg); }
body.mz-inner .mz-card-row b{ font-family:var(--mz-display); font-weight:400; color:var(--mz-coral); white-space:nowrap; }
body.mz-inner a.mz-add, body.mz-inner a.mz-add:visited{ display:block; text-align:center; color:#fff; }
body.mz-inner a.mz-add:hover{ color:#fff; }
body.mz-inner .woocommerce-result-count, body.mz-inner .woocommerce-ordering{ display:none !important; }
body.mz-inner .woocommerce-pagination{ margin-top:3rem; }
@media (max-width:760px){
  body.mz-inner ul.products{ grid-template-columns:repeat(2,1fr); gap:1.75rem .75rem; }
  body.mz-inner .mz-card-row{ display:block; }
  body.mz-inner .mz-card-row h3{ font-size:.95rem; }
  body.mz-inner .mz-card-row b{ display:block; margin-top:.2rem; font-size:.9rem; }
}

/* =========================================================
   FICHE PRODUIT
   ========================================================= */
body.mz-inner.single-product div.product{
  display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr); gap:clamp(2rem,6vw,6rem); align-items:start;
}
body.mz-inner.single-product div.product > *{ grid-column:1/-1; }
body.mz-inner.single-product div.product > .woocommerce-product-gallery{
  grid-column:1; width:100% !important; float:none !important; margin:0 !important; position:sticky; top:110px;
}
body.mz-inner.single-product div.product > .summary{ grid-column:2; width:100% !important; float:none !important; margin:0 !important; padding-top:clamp(0rem,4vh,2.5rem); }
body.mz-inner .woocommerce-product-gallery{ background:#fff; }
body.mz-inner .woocommerce-product-gallery .flex-viewport, body.mz-inner .woocommerce-product-gallery__wrapper{
  border-radius:6px; overflow:hidden; box-shadow:0 40px 90px -50px rgba(44,79,240,.55);
}
body.mz-inner .woocommerce-product-gallery img{ border-radius:0; }
body.mz-inner .woocommerce-product-gallery .flex-control-thumbs{ display:flex; gap:.75rem; margin-top:1rem !important; }
body.mz-inner .woocommerce-product-gallery .flex-control-thumbs li{ width:84px !important; margin:0 !important; float:none !important; }
body.mz-inner .woocommerce-product-gallery .flex-control-thumbs img{ border-radius:4px; opacity:.5; border:1px solid var(--mz-line); transition:opacity .3s; }
body.mz-inner .woocommerce-product-gallery .flex-control-thumbs img.flex-active, body.mz-inner .woocommerce-product-gallery .flex-control-thumbs img:hover{ opacity:1; border-color:var(--mz-fg); }
body.mz-inner .woocommerce-product-gallery__trigger{
  background:#fff !important; border:1px solid var(--mz-line); border-radius:999px !important; width:44px !important; height:44px !important;
  top:1rem !important; right:1rem !important; box-shadow:none !important;
}
body.mz-inner .onsale{ display:none !important; }

body.mz-inner .summary .mz-eyebrow{ font-size:.72rem; letter-spacing:.24em; text-transform:uppercase; color:var(--mz-muted); margin:0 0 1.25rem; }
body.mz-inner .summary .product_title{ font-size:clamp(3rem,8vw,6.5rem); line-height:.88; letter-spacing:-.035em; margin:0 0 1.5rem; word-break:break-word; }
body.mz-inner .summary .woocommerce-product-details__short-description{ color:var(--mz-muted); font-size:1.02rem; max-width:46ch; margin-bottom:2rem; }
body.mz-inner .summary .woocommerce-product-details__short-description p{ margin:0; }

/* Choix du format : pastilles */
body.mz-inner .summary table.variations{ border:0; margin:0 0 1.25rem; width:100%; }
body.mz-inner .summary table.variations tr{ display:block; }
body.mz-inner .summary table.variations th, body.mz-inner .summary table.variations td{ display:block; padding:0; border:0; background:none; text-align:left; }
body.mz-inner .summary table.variations th{ margin-bottom:.7rem; }
body.mz-inner .summary table.variations select.mz-hidden-select{ position:absolute !important; opacity:0 !important; pointer-events:none; width:1px !important; height:1px !important; }
body.mz-inner .summary .reset_variations{ display:none !important; }
body.mz-inner .mz-formats{ display:flex; flex-wrap:wrap; gap:.6rem; }
body.mz-inner .mz-format{
  display:flex; flex-direction:column; align-items:flex-start; gap:.1rem; min-width:150px;
  padding:.85rem 1.3rem; border:1px solid var(--mz-line); border-radius:18px; background:#fff; color:var(--mz-fg);
  cursor:pointer; text-align:left; transition:border-color .25s, background .25s, color .25s, transform .25s var(--mz-ease);
}
body.mz-inner .mz-format b{ font-family:var(--mz-display); font-weight:400; font-size:1.15rem; letter-spacing:-.01em; }
body.mz-inner .mz-format span{ font-size:.78rem; color:var(--mz-muted); letter-spacing:.04em; }
body.mz-inner .mz-format:hover{ border-color:var(--mz-fg); }
body.mz-inner .mz-format.is-on{ background:var(--mz-fg); border-color:var(--mz-fg); color:#fff; }
body.mz-inner .mz-format.is-on span{ color:rgba(255,255,255,.7); }
body.mz-inner .single_variation_wrap .woocommerce-variation{ margin-bottom:1rem; }
body.mz-inner .woocommerce-variation-availability{ display:none; }

body.mz-inner .summary form.cart{ margin:0 0 2rem !important; }
body.mz-inner .summary .woocommerce-variation-add-to-cart, body.mz-inner .summary form.cart:not(.variations_form){
  display:flex; gap:.75rem; align-items:stretch; flex-wrap:wrap;
}
body.mz-inner .summary .quantity{ margin:0 !important; float:none !important; }
body.mz-inner .summary .quantity .qty{ width:92px !important; text-align:center; padding-inline:.6rem !important; }
body.mz-inner .summary .single_add_to_cart_button{ flex:1 1 220px; min-height:56px; float:none !important; margin:0 !important; }
body.mz-inner .ast-qty-placeholder, body.mz-inner .quantity .minus, body.mz-inner .quantity .plus{ display:none !important; }

body.mz-inner .summary .mz-specs{ border-top:1px solid var(--mz-line); margin:0 0 2rem; padding:0; list-style:none; }
body.mz-inner .summary .mz-specs li{ display:flex; justify-content:space-between; align-items:baseline; gap:1rem; padding:.95rem 0; border-bottom:1px solid var(--mz-line); margin:0; }
body.mz-inner .summary .mz-specs span{ color:var(--mz-muted); font-size:.78rem; letter-spacing:.14em; text-transform:uppercase; }
body.mz-inner .summary .mz-specs b{ font-family:var(--mz-display); font-weight:400; font-size:1rem; text-align:right; }
body.mz-inner .summary .mz-reassure{ font-size:.85rem; color:var(--mz-muted); }
body.mz-inner .summary .mz-reassure a{ color:var(--mz-fg); text-decoration:underline; text-underline-offset:3px; }
body.mz-inner .summary .product_meta, body.mz-inner .summary .ast-single-product-payments{ display:none !important; }

/* Recit de l'oeuvre et caracteristiques */
body.mz-inner .mz-p-story{
  display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:clamp(2rem,6vw,6rem);
  border-top:1px solid var(--mz-line); margin-top:clamp(4rem,10vh,7rem); padding-top:clamp(3rem,8vh,5rem);
}
body.mz-inner .mz-p-story h2{ font-size:clamp(2rem,5vw,3.8rem); margin:0; }
body.mz-inner .mz-p-story .mz-eyebrow{ font-size:.72rem; letter-spacing:.24em; text-transform:uppercase; color:var(--mz-muted); margin:0 0 1.25rem; }
body.mz-inner .mz-p-story-body > p:first-child{ font-size:clamp(1.1rem,1.6vw,1.35rem); line-height:1.55; color:var(--mz-fg); margin:0 0 2.5rem; font-weight:300; }
body.mz-inner .mz-p-story-body h3{ font-size:1.05rem; letter-spacing:0; margin:2.25rem 0 1rem; }
body.mz-inner .mz-p-story-body p{ color:var(--mz-muted); font-size:.95rem; }
body.mz-inner .mz-p-story-body ul{ list-style:none; margin:0; padding:0; border-top:1px solid var(--mz-line); }
body.mz-inner .mz-p-story-body ul li{ padding:.75rem 0; border-bottom:1px solid var(--mz-line); color:var(--mz-fg); font-size:.95rem; }

body.mz-inner .related.products, body.mz-inner .up-sells{ margin-top:clamp(4rem,10vh,7rem); border-top:1px solid var(--mz-line); padding-top:clamp(3rem,8vh,5rem); }
body.mz-inner .related.products > h2, body.mz-inner .up-sells > h2{ font-size:clamp(2rem,5vw,3.6rem); margin:0 0 clamp(2rem,5vh,3rem); }

@media (max-width:960px){
  body.mz-inner.single-product div.product{ grid-template-columns:1fr; }
  body.mz-inner.single-product div.product > .woocommerce-product-gallery, body.mz-inner.single-product div.product > .summary{ grid-column:1; position:static; }
  body.mz-inner .mz-p-story{ grid-template-columns:1fr; }
}

/* =========================================================
   PANIER
   ========================================================= */
body.mz-inner.woocommerce-cart .woocommerce{
  display:grid; grid-template-columns:minmax(0,1.5fr) minmax(320px,.9fr); gap:clamp(2rem,5vw,4.5rem); align-items:start;
}
body.mz-inner.woocommerce-cart .woocommerce > *{ grid-column:1/-1; }
body.mz-inner.woocommerce-cart .woocommerce > form.woocommerce-cart-form{ grid-column:1; }
body.mz-inner.woocommerce-cart .woocommerce > .cart-collaterals{ grid-column:2; width:100% !important; position:sticky; top:110px; }
body.mz-inner.woocommerce-cart .woocommerce:has(.cart-empty){ display:block; }
body.mz-inner table.shop_table{ border:0 !important; border-radius:0 !important; border-collapse:collapse !important; width:100%; margin:0 0 1.5rem !important; }
body.mz-inner table.shop_table th{
  font-family:var(--mz-body); font-size:.7rem; letter-spacing:.18em; text-transform:uppercase; color:var(--mz-muted); font-weight:500;
  border:0 !important; border-bottom:1px solid var(--mz-line) !important; padding:1rem .75rem !important; background:transparent !important;
}
body.mz-inner table.shop_table td{ border:0 !important; border-bottom:1px solid var(--mz-line) !important; padding:1.25rem .75rem !important; background:transparent !important; vertical-align:middle; }
body.mz-inner.woocommerce-cart table.cart img{ width:96px !important; border-radius:4px; border:1px solid var(--mz-line); }
body.mz-inner.woocommerce-cart table.cart td.product-name a{ font-family:var(--mz-display); font-size:1.1rem; color:var(--mz-fg); }
body.mz-inner.woocommerce-cart table.cart td.product-name .variation{ margin-top:.35rem; font-size:.85rem; color:var(--mz-muted); }
body.mz-inner.woocommerce-cart table.cart td.product-name .variation dt, body.mz-inner.woocommerce-cart table.cart td.product-name .variation dd{ margin:0; display:inline; font-weight:400; }
body.mz-inner.woocommerce-cart table.cart td.product-name .variation dd p{ display:inline; margin:0; }
body.mz-inner table.cart a.remove{
  display:grid !important; place-items:center; width:34px !important; height:34px !important; border-radius:999px; font-size:1.1rem !important;
  color:var(--mz-muted) !important; border:1px solid var(--mz-line); background:#fff !important; line-height:1 !important;
}
body.mz-inner table.cart a.remove:hover{ color:#fff !important; background:var(--mz-fg) !important; border-color:var(--mz-fg); }
body.mz-inner table.cart td.actions{ padding-top:1.5rem !important; border-bottom:0 !important; }
body.mz-inner table.cart td.actions .coupon{ display:flex; gap:.6rem; flex-wrap:wrap; align-items:center; }
body.mz-inner table.cart td.actions .coupon .input-text{ width:220px !important; min-height:48px; }
body.mz-inner table.cart .quantity .qty{ width:84px !important; text-align:center; padding-inline:.5rem !important; }
body.mz-inner .cart-collaterals .cart_totals, body.mz-inner .woocommerce-checkout-review-order{ width:100% !important; float:none !important; }
body.mz-inner .cart-collaterals .cart_totals{
  background:var(--mz-night); border-radius:6px; padding:clamp(1.5rem,3vw,2.25rem);
}
body.mz-inner .cart_totals > h2{ font-size:1.6rem; margin:0 0 1rem; }
body.mz-inner .cart_totals table.shop_table th{ width:38%; padding-left:0 !important; }
body.mz-inner .cart_totals table.shop_table td{ padding-right:0 !important; text-align:right; }
body.mz-inner .cart_totals .order-total td, body.mz-inner .woocommerce-checkout-review-order-table .order-total td{
  font-family:var(--mz-display); font-size:1.5rem; color:var(--mz-fg);
}
body.mz-inner .cart_totals .order-total td strong, body.mz-inner .woocommerce-checkout-review-order-table .order-total strong{ font-weight:400; }
body.mz-inner .wc-proceed-to-checkout{ padding:1.25rem 0 0 !important; }
body.mz-inner .wc-proceed-to-checkout .checkout-button{ width:100%; min-height:58px; font-size:.85rem !important; margin:0 !important; }
body.mz-inner ul#shipping_method{ list-style:none; margin:0; padding:0; text-align:left; }
body.mz-inner ul#shipping_method li{ display:flex; gap:.6rem; align-items:flex-start; margin:0 0 .6rem; font-size:.9rem; line-height:1.4; text-indent:0 !important; padding:0 !important; }
body.mz-inner ul#shipping_method li input{ margin:.15rem 0 0 !important; flex:none; }
body.mz-inner ul#shipping_method li label{ display:inline; }
body.mz-inner .woocommerce-shipping-destination, body.mz-inner .shipping-calculator-button{ font-size:.82rem; color:var(--mz-muted); }
body.mz-inner .shipping-calculator-button{ color:var(--mz-accent) !important; }
body.mz-inner .cart-empty.woocommerce-info{ font-family:var(--mz-display); font-size:1.4rem !important; border-left-color:var(--mz-fg) !important; }
body.mz-inner .return-to-shop .button{ background:var(--mz-accent) !important; border-color:var(--mz-accent) !important; }
@media (max-width:960px){
  body.mz-inner.woocommerce-cart .woocommerce{ grid-template-columns:1fr; }
  body.mz-inner.woocommerce-cart .woocommerce > form.woocommerce-cart-form, body.mz-inner.woocommerce-cart .woocommerce > .cart-collaterals{ grid-column:1; position:static; }
}
@media (max-width:768px){
  body.mz-inner table.shop_table_responsive tr{ display:block; border-bottom:1px solid var(--mz-line); padding:.75rem 0; }
  body.mz-inner table.shop_table_responsive tr td{ border-bottom:0 !important; padding:.4rem 0 !important; }
  body.mz-inner table.shop_table_responsive tr td::before{ font-size:.7rem; letter-spacing:.16em; text-transform:uppercase; color:var(--mz-muted); font-weight:500; }
  body.mz-inner table.cart td.actions .coupon .input-text{ width:100% !important; }
}

/* =========================================================
   PAIEMENT
   ========================================================= */
body.mz-inner form.checkout.woocommerce-checkout{
  display:grid; grid-template-columns:minmax(0,1.25fr) minmax(340px,1fr); column-gap:clamp(2rem,5vw,4.5rem); align-items:start;
}
body.mz-inner form.checkout > *{ grid-column:1/-1; }
body.mz-inner form.checkout > #customer_details{ grid-column:1; grid-row:2 / span 3; }
body.mz-inner form.checkout > #order_review_heading{ grid-column:2; grid-row:2; margin:0; }
body.mz-inner form.checkout > #order_review{ grid-column:2; grid-row:3; position:sticky; top:110px; }
body.mz-inner form.checkout .col2-set{ width:100%; float:none; display:block; }
body.mz-inner form.checkout .col2-set .col-1, body.mz-inner form.checkout .col2-set .col-2{ width:100% !important; float:none !important; max-width:none !important; padding:0 !important; margin:0 !important; }
body.mz-inner form.checkout .col2-set .col-2{ margin-top:1.5rem !important; }
body.mz-inner .woocommerce-billing-fields > h3, body.mz-inner .woocommerce-shipping-fields > h3, body.mz-inner .woocommerce-additional-fields > h3,
body.mz-inner #order_review_heading{
  font-size:clamp(1.4rem,2.6vw,2rem); margin:0 0 1.5rem; padding:0; border:0;
}
body.mz-inner #ship-to-different-address{ font-family:var(--mz-body); font-size:.95rem; letter-spacing:0; }
body.mz-inner #ship-to-different-address label{ display:flex; gap:.6rem; align-items:center; cursor:pointer; }
body.mz-inner .woocommerce-billing-fields__field-wrapper, body.mz-inner .woocommerce-shipping-fields__field-wrapper{
  display:grid; grid-template-columns:1fr 1fr; column-gap:1rem;
}
body.mz-inner .woocommerce-billing-fields__field-wrapper .form-row, body.mz-inner .woocommerce-shipping-fields__field-wrapper .form-row{ width:auto !important; float:none !important; grid-column:1/-1; }
body.mz-inner .woocommerce-billing-fields__field-wrapper .form-row-first, body.mz-inner .woocommerce-shipping-fields__field-wrapper .form-row-first{ grid-column:1; }
body.mz-inner .woocommerce-billing-fields__field-wrapper .form-row-last, body.mz-inner .woocommerce-shipping-fields__field-wrapper .form-row-last{ grid-column:2; }
@media (max-width:560px){
  body.mz-inner .woocommerce-billing-fields__field-wrapper, body.mz-inner .woocommerce-shipping-fields__field-wrapper{ grid-template-columns:1fr; }
  body.mz-inner .woocommerce-billing-fields__field-wrapper .form-row-last, body.mz-inner .woocommerce-shipping-fields__field-wrapper .form-row-last{ grid-column:1; }
}
body.mz-inner #order_review{
  background:var(--mz-night); border-radius:6px; padding:clamp(1.5rem,3vw,2.25rem); border:0 !important;
}
body.mz-inner .woocommerce-checkout-review-order-table th{ padding-left:0 !important; }
body.mz-inner .woocommerce-checkout-review-order-table td:last-child, body.mz-inner .woocommerce-checkout-review-order-table th:last-child{ text-align:right; padding-right:0 !important; }
body.mz-inner .woocommerce-checkout-review-order-table td.product-name{ font-size:.95rem; }
body.mz-inner .woocommerce-checkout-review-order-table td.product-name .product-quantity{ color:var(--mz-muted); font-weight:400; }
body.mz-inner .woocommerce-checkout-review-order-table .woocommerce-shipping-totals td{ text-align:left; }
body.mz-inner #payment{ background:transparent !important; border-radius:0 !important; margin-top:1rem; }
body.mz-inner #payment ul.payment_methods{ border:0 !important; padding:0 !important; margin:0 0 1.25rem !important; list-style:none; }
body.mz-inner #payment ul.payment_methods li{
  background:#fff; border:1px solid var(--mz-line); border-radius:14px; padding:1rem 1.15rem !important; margin:0 0 .6rem !important; line-height:1.4;
}
body.mz-inner #payment ul.payment_methods li > label{ font-weight:500; display:inline-flex; align-items:center; gap:.5rem; }
body.mz-inner #payment div.payment_box{ background:transparent !important; padding:1rem 0 0 !important; margin:0 !important; color:var(--mz-fg); font-size:.9rem; }
body.mz-inner #payment div.payment_box::before{ display:none !important; }
body.mz-inner #payment div.form-row.place-order{ padding:0 !important; margin:0 !important; }
body.mz-inner .woocommerce-privacy-policy-text, body.mz-inner .woocommerce-terms-and-conditions-wrapper{ font-size:.82rem; color:var(--mz-muted); }
body.mz-inner .woocommerce-terms-and-conditions-wrapper a, body.mz-inner .woocommerce-privacy-policy-text a{ color:var(--mz-fg); text-decoration:underline; text-underline-offset:3px; }
body.mz-inner .woocommerce-form__label-for-checkbox{ display:flex !important; gap:.6rem; align-items:flex-start; font-size:.9rem; color:var(--mz-fg); }
body.mz-inner #place_order{ width:100%; min-height:60px; font-size:.88rem !important; margin-top:1rem !important; float:none !important; }
body.mz-inner .woocommerce-form-coupon-toggle .woocommerce-info{ margin-bottom:1rem !important; }
body.mz-inner form.checkout_coupon{ border:1px dashed var(--mz-line) !important; border-radius:14px !important; padding:1.25rem !important; margin:0 0 2rem !important; }
body.mz-inner #wcpay-express-checkout-button-separator, body.mz-inner .wcpay-express-checkout-button-separator{
  font-size:.7rem; letter-spacing:.24em; text-transform:uppercase; color:var(--mz-muted); text-align:center; margin:1rem 0 2rem;
}
@media (max-width:960px){
  body.mz-inner form.checkout.woocommerce-checkout{ display:block; }
  body.mz-inner form.checkout > #order_review{ position:static; }
  body.mz-inner form.checkout > #order_review_heading{ margin-top:2.5rem; }
}

/* =========================================================
   COMMANDE CONFIRMEE
   ========================================================= */
body.mz-inner .woocommerce-order .woocommerce-thankyou-order-received{
  font-family:var(--mz-display); font-size:clamp(1.6rem,3.5vw,2.6rem); line-height:1.05; margin:0 0 2.5rem; max-width:22ch;
}
body.mz-inner ul.woocommerce-order-overview{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:1px; background:var(--mz-line);
  border:1px solid var(--mz-line); border-radius:6px; overflow:hidden; padding:0 !important; margin:0 0 3rem !important; list-style:none;
}
body.mz-inner ul.woocommerce-order-overview li{
  background:#fff; margin:0 !important; padding:1.25rem 1.4rem !important; border:0 !important; float:none !important;
  font-size:.7rem; letter-spacing:.16em; text-transform:uppercase; color:var(--mz-muted);
}
body.mz-inner ul.woocommerce-order-overview li strong{ display:block; margin-top:.45rem; font-family:var(--mz-display); font-weight:400; font-size:1.05rem; letter-spacing:0; text-transform:none; color:var(--mz-fg); }
body.mz-inner .woocommerce-order-details__title, body.mz-inner .woocommerce-column__title, body.mz-inner .woocommerce-customer-details h2{ font-size:1.6rem; margin:2.5rem 0 1rem; }
body.mz-inner .woocommerce-customer-details address{ border:1px solid var(--mz-line) !important; border-radius:6px; padding:1.25rem !important; font-style:normal; }

/* =========================================================
   COMPTE CLIENT
   ========================================================= */
body.mz-inner.woocommerce-account .woocommerce{ display:grid; grid-template-columns:240px minmax(0,1fr); gap:clamp(2rem,5vw,4rem); }
body.mz-inner.woocommerce-account .woocommerce > *{ grid-column:1/-1; }
body.mz-inner.woocommerce-account .woocommerce-MyAccount-navigation{ grid-column:1; width:100% !important; float:none !important; }
body.mz-inner.woocommerce-account .woocommerce-MyAccount-content{ grid-column:2; width:100% !important; float:none !important; }
body.mz-inner .woocommerce-MyAccount-navigation ul{ list-style:none; margin:0; padding:0; border-top:1px solid var(--mz-line); }
body.mz-inner .woocommerce-MyAccount-navigation li{ border-bottom:1px solid var(--mz-line); margin:0; padding:0; }
body.mz-inner .woocommerce-MyAccount-navigation li a{ display:block; padding:.9rem 0; font-size:.9rem; }
body.mz-inner .woocommerce-MyAccount-navigation li.is-active a{ color:var(--mz-accent); font-weight:500; }
body.mz-inner.woocommerce-account .woocommerce:has(form.woocommerce-form-login){ display:block; }
body.mz-inner form.woocommerce-form-login, body.mz-inner form.woocommerce-form-register, body.mz-inner form.lost_reset_password{
  border:1px solid var(--mz-line) !important; border-radius:6px !important; padding:clamp(1.5rem,4vw,2.5rem) !important; max-width:520px; margin:0 0 2rem !important;
}
body.mz-inner .woocommerce-account h2{ font-size:1.8rem; margin:0 0 1.5rem; }
@media (max-width:760px){
  body.mz-inner.woocommerce-account .woocommerce{ display:block; }
  body.mz-inner .woocommerce-MyAccount-navigation{ margin-bottom:2rem; }
}

/* =========================================================
   PAGES DE TEXTE (mentions, CGV, confidentialite, retours)
   ========================================================= */
body.mz-inner.mz-legal-page .entry-content{ max-width:760px; font-size:1rem; color:var(--mz-fg); }
body.mz-inner.mz-legal-page .entry-content h2{ font-size:clamp(1.4rem,2.6vw,1.9rem); margin:3rem 0 1rem; padding-top:1.5rem; border-top:1px solid var(--mz-line); }
body.mz-inner.mz-legal-page .entry-content h2:first-of-type{ margin-top:1rem; }
body.mz-inner.mz-legal-page .entry-content p, body.mz-inner.mz-legal-page .entry-content li{ color:#3b3650; line-height:1.75; }
body.mz-inner.mz-legal-page .entry-content a{ color:var(--mz-accent); text-decoration:underline; text-underline-offset:3px; }

/* 404 */
body.mz-inner .error-404 .page-title{ font-size:clamp(2.6rem,7vw,5.5rem); }

/* Pied de page : rien d'Astra ne doit subsister */
body.mz-inner .site-footer, body.mz-inner #masthead, body.mz-inner .ast-mobile-header-wrap, body.mz-inner #ast-scroll-top{ display:none !important; }
body.mz-inner .mz-chrome-foot .mz-foot{ margin-top:0; border-top:1px solid var(--mz-line); }
body.mz-inner .mz-chrome-foot a:hover{ color:var(--mz-fg); }

/* Actions principales : specificite renforcee (la fiche produit n'a pas
   de conteneur .woocommerce, la regle generique des boutons l'emportait). */
body.mz-inner button.button.single_add_to_cart_button, body.mz-inner a.button.checkout-button,
body.mz-inner button.button#place_order, body.mz-inner .return-to-shop a.button{
  background:var(--mz-accent) !important; border-color:var(--mz-accent) !important; color:#fff !important;
  box-shadow:0 12px 40px -12px var(--mz-accent) !important;
}
body.mz-inner button.button.single_add_to_cart_button:hover, body.mz-inner a.button.checkout-button:hover,
body.mz-inner button.button#place_order:hover, body.mz-inner .return-to-shop a.button:hover{
  background:var(--mz-fg) !important; border-color:var(--mz-fg) !important; box-shadow:none !important;
}
body.mz-inner button.button.single_add_to_cart_button.disabled{ opacity:.35 !important; box-shadow:none !important; }

/* Prix : la couleur du montant suit celle du bloc */
body.mz-inner .summary .price .woocommerce-Price-amount, body.mz-inner .mz-card-row b .woocommerce-Price-amount{ color:inherit; }
body.mz-inner .summary .price del{ opacity:.5; }
body.mz-inner .summary .price ins{ text-decoration:none; }
/* Format choisi : le prix du format remplace la fourchette */
body.mz-inner .summary.mz-has-var > p.price{ display:none; }
body.mz-inner .single_variation_wrap .woocommerce-variation-price .price{ margin:0 0 1.25rem; }

/* La galerie ne colle plus : dans une grille, elle recouvrait le recit de l'oeuvre. */
body.mz-inner.single-product div.product > .woocommerce-product-gallery{ position:relative !important; top:auto !important; }
body.mz-inner .mz-p-story, body.mz-inner .related.products{ position:relative; z-index:1; background:#fff; }

/* Trois oeuvres par ligne : la grille ne laisse plus de colonne vide */
body.mz-inner ul.products{ grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
@media (max-width:760px){ body.mz-inner ul.products{ grid-template-columns:repeat(2,minmax(0,1fr)) !important; } }

/* Panier : on retire les fonds gris d'Astra et on aere */
body.mz-inner table.shop_table, body.mz-inner table.shop_table thead, body.mz-inner table.shop_table tbody,
body.mz-inner table.shop_table tfoot, body.mz-inner table.shop_table tr, body.mz-inner table.shop_table th{ background:transparent !important; }
body.mz-inner .cart_totals > h2, body.mz-inner .cart-collaterals .cart_totals h2{
  background:transparent !important; padding:0 !important; border:0 !important; font-size:1.6rem !important;
}
body.mz-inner .cart-collaterals .cart_totals{ border:0 !important; }
body.mz-inner .cart_totals tr.woocommerce-shipping-totals th, body.mz-inner .cart_totals tr.woocommerce-shipping-totals td,
body.mz-inner .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals th, body.mz-inner .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals td{
  display:block; width:100% !important; text-align:left !important; padding-left:0 !important; padding-right:0 !important;
}
body.mz-inner .cart_totals tr.woocommerce-shipping-totals th, body.mz-inner .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals th{ border-bottom:0 !important; padding-bottom:.25rem !important; }
body.mz-inner .woocommerce-shipping-totals .woocommerce-shipping-destination, body.mz-inner .woocommerce-shipping-totals p{ font-size:.8rem; color:var(--mz-muted); margin:.6rem 0 0; text-align:left; }
body.mz-inner .woocommerce-shipping-totals .shipping-calculator-button{ display:inline-block; margin-top:.4rem; }
body.mz-inner.woocommerce-cart table.cart th.product-price, body.mz-inner.woocommerce-cart table.cart td.product-price{ display:none; }
body.mz-inner.woocommerce-cart table.cart td.product-name{ min-width:200px; }
body.mz-inner.woocommerce-cart table.cart td.product-subtotal{ font-family:var(--mz-display); white-space:nowrap; }
body.mz-inner table.cart td.actions::before{ display:none !important; }
body.mz-inner table.cart td.actions .coupon{ float:none !important; }
body.mz-inner table.cart td.actions > .button{ float:none !important; margin:0 !important; }

/* =========================================================
   PANIER ET RECAPITULATIFS : lignes en grille, plus de tableau
   ========================================================= */
body.mz-inner.woocommerce-cart table.cart, body.mz-inner.woocommerce-cart table.cart tbody{ display:block; width:100%; }
body.mz-inner.woocommerce-cart table.cart thead{ display:none; }
body.mz-inner.woocommerce-cart table.cart tr.cart_item{
  display:grid; grid-template-columns:96px minmax(0,1fr) auto auto 40px; align-items:center; gap:1rem 1.5rem;
  padding:1.4rem 0; border-bottom:1px solid var(--mz-line); border-top:0;
}
body.mz-inner.woocommerce-cart table.cart tr.cart_item:first-child{ border-top:1px solid var(--mz-line); }
body.mz-inner.woocommerce-cart table.cart tr.cart_item td{ display:block; padding:0 !important; border:0 !important; width:auto !important; text-align:left !important; min-width:0; }
body.mz-inner.woocommerce-cart table.cart td::before{ display:none !important; }
body.mz-inner.woocommerce-cart table.cart td.product-thumbnail{ order:1; }
body.mz-inner.woocommerce-cart table.cart td.product-name{ order:2; min-width:0 !important; }
body.mz-inner.woocommerce-cart table.cart td.product-quantity{ order:3; }
body.mz-inner.woocommerce-cart table.cart td.product-subtotal{ order:4; text-align:right !important; font-size:1.1rem; }
body.mz-inner.woocommerce-cart table.cart td.product-remove{ order:5; }
body.mz-inner.woocommerce-cart table.cart td.product-thumbnail img{ width:96px !important; height:auto; display:block; }
body.mz-inner.woocommerce-cart table.cart tr:not(.cart_item){ display:block; }
body.mz-inner.woocommerce-cart table.cart td.actions{
  display:flex !important; justify-content:space-between; align-items:center; gap:1rem; flex-wrap:wrap;
  padding:1.5rem 0 0 !important; border:0 !important; width:100%;
}
body.mz-inner.woocommerce-cart table.cart td.actions .coupon{ display:flex; gap:.6rem; flex-wrap:wrap; }
body.mz-inner.woocommerce-cart table.cart td.actions .coupon label{ display:none; }
@media (max-width:600px){
  body.mz-inner.woocommerce-cart table.cart tr.cart_item{
    grid-template-columns:72px minmax(0,1fr) 34px; grid-template-areas:'thumb name remove' 'thumb qty total'; gap:.6rem 1rem;
  }
  body.mz-inner.woocommerce-cart table.cart td.product-thumbnail{ grid-area:thumb; align-self:start; }
  body.mz-inner.woocommerce-cart table.cart td.product-thumbnail img{ width:72px !important; }
  body.mz-inner.woocommerce-cart table.cart td.product-name{ grid-area:name; }
  body.mz-inner.woocommerce-cart table.cart td.product-remove{ grid-area:remove; }
  body.mz-inner.woocommerce-cart table.cart td.product-quantity{ grid-area:qty; }
  body.mz-inner.woocommerce-cart table.cart td.product-subtotal{ grid-area:total; align-self:center; }
  body.mz-inner.woocommerce-cart table.cart td.actions .coupon{ width:100%; }
  body.mz-inner.woocommerce-cart table.cart td.actions .coupon .input-text{ flex:1 1 160px; width:auto !important; }
}

/* Totaux du panier et recapitulatif de commande : lignes souples */
body.mz-inner .cart_totals table.shop_table, body.mz-inner .cart_totals table.shop_table tbody,
body.mz-inner .woocommerce-checkout-review-order-table, body.mz-inner .woocommerce-checkout-review-order-table thead,
body.mz-inner .woocommerce-checkout-review-order-table tbody, body.mz-inner .woocommerce-checkout-review-order-table tfoot{
  display:block; width:100%;
}
body.mz-inner .cart_totals table.shop_table tr, body.mz-inner .woocommerce-checkout-review-order-table tr{
  display:flex; justify-content:space-between; align-items:baseline; gap:1rem; padding:.95rem 0; border-bottom:1px solid var(--mz-line);
}
body.mz-inner .cart_totals table.shop_table th, body.mz-inner .cart_totals table.shop_table td,
body.mz-inner .woocommerce-checkout-review-order-table th, body.mz-inner .woocommerce-checkout-review-order-table td{
  display:block; padding:0 !important; border:0 !important; width:auto !important; background:transparent !important;
}
body.mz-inner .cart_totals table.shop_table td::before, body.mz-inner .woocommerce-checkout-review-order-table td::before{ display:none !important; }
body.mz-inner .cart_totals table.shop_table td{ text-align:right; }
body.mz-inner .cart_totals tr.woocommerce-shipping-totals, body.mz-inner .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals{
  flex-direction:column; align-items:stretch; gap:.6rem;
}
body.mz-inner .cart_totals tr.order-total, body.mz-inner .woocommerce-checkout-review-order-table tr.order-total{ border-bottom:0; padding-top:1.25rem; }
body.mz-inner .woocommerce-checkout-review-order-table thead tr{ padding-top:0; }
body.mz-inner .woocommerce-checkout-review-order-table td.product-name{ flex:1; }
body.mz-inner ul#shipping_method li{ background:#fff; border:1px solid var(--mz-line); border-radius:14px; padding:.8rem 1rem !important; margin:0 0 .5rem !important; }
body.mz-inner ul#shipping_method li .amount{ font-weight:600; }
body.mz-inner.woocommerce-cart table.cart tr.cart_item td.product-price{ display:none !important; }
body.mz-inner.woocommerce-cart table.cart td.product-name a{ line-height:1.15; display:inline-block; }

/* Paiement : Astra fixe des largeurs en pourcentage, la grille reprend la main */
body.mz-inner form.checkout > #customer_details, body.mz-inner form.checkout > #order_review_heading, body.mz-inner form.checkout > #order_review{
  width:auto !important; float:none !important; margin-left:0 !important; margin-right:0 !important; padding-left:0; padding-right:0; clear:none !important;
}
body.mz-inner form.checkout > #order_review{ padding:clamp(1.5rem,3vw,2.25rem) !important; }
body.mz-inner form.checkout > #order_review_heading{ border:0 !important; padding:0 !important; background:none !important; align-self:end; margin-bottom:1rem !important; }
body.mz-inner form.checkout > .wcpay-express-checkout-wrapper{ margin-bottom:1.5rem; }
body.mz-inner form.checkout .woocommerce-checkout-review-order-table, body.mz-inner form.checkout #payment{ width:100% !important; float:none !important; }
body.mz-inner.woocommerce-checkout .woocommerce > .woocommerce-form-coupon-toggle, body.mz-inner.woocommerce-checkout .woocommerce > form.checkout_coupon{ max-width:none; }

body.mz-inner table.shop_table.woocommerce-checkout-review-order-table th, body.mz-inner table.shop_table.woocommerce-checkout-review-order-table td,
body.mz-inner .cart_totals table.shop_table th, body.mz-inner .cart_totals table.shop_table td{ border:0 !important; padding:0 !important; }
body.mz-inner table.shop_table.woocommerce-checkout-review-order-table tr{ border-bottom:1px solid var(--mz-line); }
body.mz-inner table.shop_table.woocommerce-checkout-review-order-table thead th{ font-size:.7rem; letter-spacing:.18em; text-transform:uppercase; color:var(--mz-muted); font-weight:500; }

/* Cases a cocher du paiement : texte courant, pas d'etiquette en capitales */
body.mz-inner #payment .form-row label, body.mz-inner .woocommerce-terms-and-conditions-wrapper label,
body.mz-inner #payment label.woocommerce-form__label, body.mz-inner #payment .woocommerce-SavedPaymentMethods-saveNew label{
  text-transform:none !important; letter-spacing:0 !important; font-size:.88rem !important; color:var(--mz-fg) !important; font-weight:400 !important;
}
body.mz-inner .woocommerce-terms-and-conditions-wrapper .form-row{ margin:1rem 0 0 !important; }
body.mz-inner .woocommerce-terms-and-conditions-wrapper .required{ margin-left:.15rem; }

/* Menu mobile : panneau plein, logo et panier restent visibles */
@media (max-width:760px){
  body.mz-inner .mz-chrome .mz-links{ background:#fff; box-shadow:0 40px 60px -40px rgba(15,13,26,.35); }
  body.mz-inner .mz-chrome .mz-logo, body.mz-inner .mz-chrome .mz-actions{ position:relative; z-index:2; }
}

body.mz-inner .woocommerce-MyAccount-navigation ul{ border:0 !important; border-top:1px solid var(--mz-line) !important; }
body.mz-inner .woocommerce-MyAccount-navigation ul li{ border:0 !important; border-bottom:1px solid var(--mz-line) !important; background:transparent !important; }
body.mz-inner .woocommerce-MyAccount-navigation ul li a{ padding:.95rem 0 !important; background:transparent !important; color:var(--mz-fg); }
body.mz-inner .woocommerce-MyAccount-navigation ul li.is-active a{ color:var(--mz-accent) !important; }
body.mz-inner .woocommerce-MyAccount-content{ color:#3b3650; }
body.mz-inner .woocommerce-MyAccount-content a{ color:var(--mz-accent); }

/* Plus de beige : encadres blancs a fine bordure */
body.mz-inner .cart-collaterals .cart_totals,
body.mz-inner form.checkout > #order_review,
body.mz-inner #order_review{
  background:#fff !important; border:1px solid var(--mz-line) !important;
}
body.mz-inner .woocommerce-message, body.mz-inner .woocommerce-info, body.mz-inner .woocommerce-error,
body.mz-inner .woocommerce-notices-wrapper .woocommerce-message{
  background:#fff !important; border:1px solid var(--mz-line) !important; border-left:3px solid var(--mz-accent) !important;
}
body.mz-inner .woocommerce-error{ border-left-color:#c0392b !important; }
body.mz-inner .cart-empty.woocommerce-info{ border-left-color:var(--mz-fg) !important; }

/* Message mis au point par WooCommerce (accessibilite) : contour aux couleurs du site */
body.mz-inner .woocommerce-message:focus, body.mz-inner .woocommerce-info:focus, body.mz-inner .woocommerce-error:focus,
body.mz-inner .woocommerce-notices-wrapper:focus, body.mz-inner .woocommerce-notices-wrapper *:focus{
  outline:2px solid rgba(44,79,240,.35) !important; outline-offset:3px;
}

/* Recit de l'oeuvre sous le titre */
body.mz-inner .summary .woocommerce-product-details__short-description{
  color:var(--mz-fg); font-size:clamp(1.02rem,1.3vw,1.15rem); line-height:1.65; font-weight:300; max-width:52ch; margin-bottom:2.25rem;
}
body.mz-inner .mz-p-story-body > h3:first-child{ margin-top:0; }
