/* =========================================================
   BROKEN ARMS — WordPress & WooCommerce
   ========================================================= */

/* ---------- WordPress de base ---------- */
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.skip-link:focus{clip:auto;clip-path:none;height:auto;width:auto;left:16px;top:16px;z-index:200;background:var(--bone);color:var(--ink);padding:12px 18px}
.admin-bar .site-header{top:32px}
@media (max-width:782px){.admin-bar .site-header{top:0}}
.logo-img img{max-height:62px;width:auto;mix-blend-mode:multiply}
.alignwide{max-width:1200px;margin-inline:auto}
.alignfull{width:100vw;margin-left:calc(50% - 50vw)}
.f-bottom{align-items:center}
.f-legal{display:flex;gap:16px;flex-wrap:wrap}
.f-legal a:hover{color:var(--bone)}
.page-body{padding:clamp(50px,7vw,100px) 0}
.page-hero h1{overflow-wrap:break-word}
.single .page-body .prose{font-size:19px;line-height:1.75}

/* texte éditorial */
.prose{max-width:760px;margin:0 auto;font-size:17px;color:#2b2a27}
.prose-lg{max-width:1000px;font:400 clamp(24px,2.6vw,38px)/1.25 var(--serif);color:var(--bone)}
.prose>*+*{margin-top:1.1em}
.prose h2,.prose h3,.prose h4{font-family:var(--font-display);font-weight:900;text-transform:uppercase;line-height:1;color:var(--bone);margin-top:1.6em}
.prose h2{font-size:clamp(34px,4vw,54px)}
.prose h3{font-size:clamp(26px,3vw,36px)}
.prose a{color:var(--ember-2);text-decoration:underline;text-underline-offset:3px}
.prose ul,.prose ol{padding-left:1.2em}
.prose li+li{margin-top:.4em}
.prose blockquote{border-left:2px solid var(--ember);padding-left:24px;font:700 26px/1.3 var(--font-display);color:var(--bone)}
.prose img{height:auto}
.prose figure{margin:2em 0}
.prose figcaption{font-size:13px;color:var(--mute);margin-top:8px}
.prose table{width:100%;border-collapse:collapse;font-size:15px}
.prose th,.prose td{padding:10px;border-bottom:1px solid var(--line);text-align:left}
.prose hr{border:0;border-top:1px solid var(--line)}
.post-navigation{margin-top:60px;padding-top:30px;border-top:1px solid var(--line)}
.post-navigation .nav-links{display:flex;justify-content:space-between;gap:20px;font:600 12px/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase}

/* formulaires génériques (CF7, commentaires, recherche, WooCommerce) */
.ba-form input:not([type=submit]):not([type=checkbox]):not([type=radio]),.ba-form select,.ba-form textarea,
.woocommerce input.input-text,.woocommerce select,.woocommerce textarea,.woocommerce-page input.input-text,
.comment-form input:not([type=submit]):not([type=checkbox]),.comment-form textarea,.search-form .search-field,
.woocommerce form .form-row .input-text,.select2-container .select2-selection{
  width:100%;background:var(--panel);border:1px solid transparent;color:var(--fg);padding:13px 16px;font:400 16px var(--sans);border-radius:10px;outline:none;transition:border-color .25s,background .25s}
.ba-form input:focus,.ba-form textarea:focus,.woocommerce input.input-text:focus,.woocommerce textarea:focus,.comment-form textarea:focus{border-color:var(--fg);background:#fff}
.ba-form textarea,.comment-form textarea{min-height:140px}
.ba-form label,.woocommerce form .form-row label,.comment-form label{display:block;font:600 11px/1.4 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--mute);margin-bottom:6px}
.ba-form p{margin-bottom:22px}
.ba-form input[type=submit],.comment-form input[type=submit],.search-form .search-submit,
.woocommerce .button,.woocommerce button.button,.woocommerce a.button,.woocommerce input.button,.wc-block-components-button:not(.is-link){
  display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 28px;background:var(--fg);color:#fff;border:1px solid var(--fg);border-radius:999px;
  font:600 12px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;cursor:pointer;transition:all .35s var(--ease)}
.ba-form input[type=submit]:hover,.comment-form input[type=submit]:hover,.woocommerce .button:hover,.woocommerce button.button:hover,.woocommerce a.button:hover,.wc-block-components-button:not(.is-link):hover{background:var(--ember);border-color:var(--ember);color:#fff}
.woocommerce .button.alt,.woocommerce button.button.alt,.woocommerce #place_order{background:var(--ember);border-color:var(--ember);width:100%}
.woocommerce .button.alt:hover,.woocommerce #place_order:hover{background:var(--fg);border-color:var(--fg)}
.woocommerce .button:disabled,.woocommerce button.button.disabled,.woocommerce .button.disabled{opacity:.4;cursor:not-allowed}
.select2-container--default .select2-selection--single{height:auto;background:transparent}
.select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--bone);padding-left:0;line-height:1.6}
.select2-dropdown{background:var(--coal);border-color:var(--line);color:var(--bone)}
.select2-container--default .select2-results__option--highlighted[aria-selected]{background:var(--ember);color:var(--ink)}
.select2-search--dropdown .select2-search__field{background:var(--ink);color:var(--bone);border:1px solid var(--line)}
.wpcf7-not-valid-tip{color:var(--ember-2);font-size:13px;margin-top:6px}
.wpcf7 form .wpcf7-response-output{border-color:var(--ember)!important;margin:20px 0 0;padding:14px}

/* ---------- notices ---------- */
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-message,.woocommerce-info,.woocommerce-error,.wc-block-components-notice-banner{
  list-style:none;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;
  background:var(--panel);border:0;border-left:3px solid var(--ember);border-radius:8px;color:var(--bone);padding:18px 22px;margin:0 0 28px;font-size:15px}
.woocommerce-error{border-left-color:#d9452b}
.woocommerce-message .button,.woocommerce-info .button{order:2;padding:12px 18px}
.woocommerce-message a:not(.button),.woocommerce-info a:not(.button){color:var(--ember-2);text-decoration:underline}

/* ---------- grilles produits ---------- */
ul.products{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.6vw,24px);margin:0;padding:0}
ul.products::before,ul.products::after{display:none}
ul.products li.product{width:auto!important;margin:0!important;float:none!important}
.card-media .img-alt{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s var(--ease)}
.card:hover .card-media .img-alt{opacity:1}
.card-link{position:relative}
.quick .quick-full{width:100%;justify-content:center;padding:14px}
.sizes{grid-template-columns:repeat(auto-fill,minmax(44px,1fr))}
.sizes button.loading{opacity:.5;pointer-events:none}
.card .star-rating{margin-top:8px}
.card .price{color:var(--bone)}
.card .price em{display:inline;margin-right:6px;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.card .price del{color:var(--mute);font-weight:400;margin-right:4px}
.card .price ins{text-decoration:none}
.price .woocommerce-Price-currencySymbol{margin-left:2px}

/* étoiles */
.star-rating{position:relative;display:inline-block;font-size:12px;letter-spacing:3px;line-height:1;width:5.9em;height:1em;overflow:hidden;color:transparent}
.star-rating::before{content:"★★★★★";position:absolute;inset:0;color:rgba(17,17,17,.2)}
.star-rating span{position:absolute;top:0;left:0;height:100%;overflow:hidden;padding-top:1.5em}
.star-rating span::before{content:"★★★★★";position:absolute;top:0;left:0;color:var(--ember)}
p.stars a{color:var(--ember);font-size:0;text-decoration:none}
p.stars a::before{content:"★";font-size:22px;margin-right:4px;color:rgba(17,17,17,.25)}
p.stars:hover a::before,p.stars.selected a.active::before,p.stars.selected a:not(.active)::before{color:var(--ember)}
p.stars.selected a.active~a::before,p.stars a:hover~a::before{color:rgba(17,17,17,.25)}

/* ---------- boutique ---------- */
.toolbar .filters a.chip{display:inline-block}
.toolbar-right{display:flex;gap:18px;align-items:center}
.woocommerce-result-count{font-size:13px;color:var(--mute);margin:0}
.woocommerce-ordering{margin:0}
.woocommerce-ordering select{background-color:#fff;color:var(--fg);border:1px solid var(--line);padding:10px 36px 10px 16px;font:500 12px var(--sans);letter-spacing:.1em;text-transform:uppercase;appearance:none;border-radius:40px;cursor:pointer;width:auto;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23111' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}
.woocommerce-ordering select option{background:var(--coal)}
.ba-pagination{margin-top:60px}
.ba-pagination ul,.ba-pagination .nav-links{list-style:none;display:flex;justify-content:center;gap:6px;border:0;padding:0}
.ba-pagination li{border:0}
.ba-pagination a,.ba-pagination span{display:grid;place-items:center;min-width:44px;height:44px;padding:0 12px;border:1px solid var(--line);border-radius:999px;font:600 13px var(--sans)}
.ba-pagination .current{background:var(--fg);color:#fff;border-color:var(--fg)}
.ba-pagination a:hover{border-color:var(--bone)}

/* ---------- fiche produit ---------- */
.pdp-section{padding-top:30px;padding-bottom:clamp(60px,8vw,110px)}
.crumbs b{font-weight:500;color:var(--bone)}
.pdp-gallery{position:relative;align-self:start}
@media (min-width:861px){.pdp-gallery{position:sticky;top:96px}}
.pdp-gallery .onsale{position:absolute;top:14px;left:14px;z-index:3;padding:7px 11px;background:var(--ember);color:var(--ink);font:600 10px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase}
.woocommerce-product-gallery{position:relative;opacity:1!important}
.woocommerce-product-gallery__wrapper{margin:0}
.woocommerce-product-gallery__image{background:var(--char)}
.woocommerce-product-gallery__image img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.woocommerce-product-gallery .flex-control-thumbs{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:10px;padding:0}
.woocommerce-product-gallery .flex-control-thumbs img{aspect-ratio:1;object-fit:cover;opacity:.5;cursor:pointer;transition:opacity .3s;border:1px solid transparent}
.woocommerce-product-gallery .flex-control-thumbs img.flex-active,.woocommerce-product-gallery .flex-control-thumbs img:hover{opacity:1;border-color:var(--ember)}
.woocommerce-product-gallery__trigger{position:absolute;top:14px;right:14px;z-index:5;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.92);display:grid;place-items:center;font-size:0}
.woocommerce-product-gallery__trigger::before{content:"";width:14px;height:14px;border:1.5px solid var(--bone);border-radius:50%;box-shadow:5px 5px 0 -4px var(--bone)}
.woocommerce-product-gallery__trigger img{display:none!important}

.pdp-info .tagline{font:500 18px/1.4 var(--sans);color:var(--mute);margin-bottom:18px}
.pdp-info .tagline p{margin:0}
.pdp-info .woocommerce-product-rating{display:flex;gap:10px;align-items:center;font-size:13px;color:var(--mute);margin-bottom:20px}
.pdp-info .woocommerce-review-link{color:var(--mute);text-decoration:underline}
.pdp-price .price{font:700 30px/1 var(--sans);margin:0;color:var(--fg)}
.pdp-price .price del{font-size:.6em;color:var(--mute);margin-right:8px}
.pdp-price .price ins{text-decoration:none}

form.cart{margin-bottom:22px}
form.cart table.variations{width:100%;border:0;margin-bottom:6px}
form.cart table.variations tr{display:block}
form.cart table.variations th,form.cart table.variations td{display:block;padding:0;border:0;text-align:left}
form.cart table.variations th.label label{font:600 11px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;display:flex;gap:8px;margin-bottom:12px}
form.cart table.variations th.label .ba-chosen{color:var(--ember-2)}
form.cart table.variations select.ba-hidden{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
.ba-swatches{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}
.ba-swatches button{padding:15px 0;border:1px solid var(--line);border-radius:8px;font:600 13px/1 var(--sans);transition:all .2s}
.ba-swatches button:hover{border-color:var(--bone)}
.ba-swatches button.on{background:var(--fg);color:#fff;border-color:var(--fg)}
.ba-swatches button:disabled{opacity:.3;text-decoration:line-through;cursor:not-allowed}
.reset_variations{font-size:12px;color:var(--mute);text-decoration:underline}
.woocommerce-variation{margin:10px 0 18px}
.woocommerce-variation-price .price{font:600 15px var(--sans);color:var(--ember-2)}
.woocommerce-variation-availability .stock,.pdp-info .stock{font-size:13px;color:var(--mute)}
.pdp-info .out-of-stock{color:#e07a5f}
.woocommerce-variation-add-to-cart,form.cart:not(.variations_form){display:flex;gap:10px;flex-wrap:wrap}
.quantity{display:inline-flex;align-items:stretch;border:1px solid var(--line);border-radius:999px}
.quantity .qty{width:56px;background:transparent;border:0;color:var(--bone);text-align:center;font:600 15px var(--sans);-moz-appearance:textfield;padding:0}
.quantity .qty::-webkit-inner-spin-button,.quantity .qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.quantity .ba-q{width:44px;font-size:18px;color:var(--bone)}
.quantity .ba-q:hover{color:var(--ember)}
form.cart .single_add_to_cart_button{flex:1;min-height:56px}
form.cart .single_add_to_cart_button:hover{background:var(--ember);border-color:var(--ember)}
form.cart .single_add_to_cart_button.loading{opacity:.6}
form.cart .wcpay-payment-request-wrapper,form.cart #wcpay-express-checkout-element{flex-basis:100%}
.pdp-info .product_meta{margin-top:24px;font-size:12px;color:var(--mute);display:grid;gap:4px}
.pdp-info .product_meta a{color:var(--bone)}
.acc .body .woocommerce-product-attributes{margin-top:14px}
.acc .body .woocommerce-product-attributes th{width:40%}
.acc .body p{margin:0 0 .8em}

/* avis */
#reviews .commentlist{list-style:none;padding:0;display:grid;gap:22px;margin-bottom:28px}
#reviews .comment_container{display:grid;grid-template-columns:44px 1fr;gap:14px}
#reviews .avatar{border-radius:50%;width:44px;height:44px}
#reviews .meta{font-size:13px;color:var(--mute)}
#reviews .woocommerce-review__author{color:var(--bone);font-weight:600}
#reviews .description p{margin-top:6px}
#review_form #reply-title{font:900 22px/1 var(--font-display);text-transform:uppercase;display:block;margin-bottom:14px}
#review_form .comment-form>p{margin-bottom:18px}

/* produits liés */
.related-section{padding:clamp(60px,8vw,110px) 0;border-top:1px solid var(--line)}
.related-section section{padding:0}
.related-section section+section{margin-top:80px}
.related-section h2{font:900 clamp(40px,5vw,72px)/.9 var(--font-display);text-transform:uppercase;margin-bottom:40px}
.sticky-buy strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ---------- mini-panier (tiroir) ---------- */
.drawer .ship-bar .ok{color:var(--ember-2)}
.d-body{flex:1;overflow:auto;display:flex;flex-direction:column}
.d-body .widget_shopping_cart_content{display:flex;flex-direction:column;flex:1}
.woocommerce-mini-cart{list-style:none;padding:8px 28px;margin:0;flex:1}
.woocommerce-mini-cart-item{position:relative;display:grid;grid-template-columns:80px 1fr;gap:6px 16px;padding:18px 28px 18px 0;border-bottom:1px solid var(--line);font-size:14px}
.woocommerce-mini-cart-item>a:not(.remove){display:contents;font:900 17px/1.1 var(--font-display);text-transform:uppercase}
.woocommerce-mini-cart-item img{grid-row:span 3;width:80px!important;height:100px!important;object-fit:cover;margin:0!important}
.woocommerce-mini-cart-item .variation{font-size:12px;color:var(--mute);display:flex;gap:4px;margin:0}
.woocommerce-mini-cart-item .variation dt,.woocommerce-mini-cart-item .variation dd,.woocommerce-mini-cart-item .variation p{margin:0;display:inline}
.woocommerce-mini-cart-item .remove{position:absolute;top:16px;right:0;width:24px;height:24px;display:grid;place-items:center;color:var(--mute)!important;font-size:20px;line-height:1;border-radius:50%}
.woocommerce-mini-cart-item .remove:hover{color:var(--ember)!important;background:rgba(17,17,17,.06)}
.mini-qty{display:flex;align-items:center;gap:12px;margin-top:6px}
.mini-qty .unit{font-size:13px;color:var(--mute)}
.mini-qty .qty button:disabled{opacity:.3}
.woocommerce-mini-cart__total{display:flex;justify-content:space-between;align-items:baseline;padding:22px 28px 6px;margin:0;border-top:1px solid var(--line);font:900 24px/1 var(--font-display);text-transform:uppercase}
.woocommerce-mini-cart__total strong{font-weight:900}
.woocommerce-mini-cart__buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:16px 28px 26px;margin:0}
.woocommerce-mini-cart__buttons .button{padding:16px 10px;background:#fff;color:var(--fg)}
.woocommerce-mini-cart__buttons .button.checkout{background:var(--fg);color:#fff}
.woocommerce-mini-cart__buttons .button.checkout:hover{background:var(--ember);border-color:var(--ember)}
.woocommerce-mini-cart__empty-message{text-align:center;padding:60px 28px;color:var(--mute)}
.woocommerce-mini-cart__empty-message::before{content:"La route est libre.";display:block;font:700 30px/1.2 var(--font-display);color:var(--bone);margin-bottom:8px}
.drawer.busy .d-body{opacity:.5;pointer-events:none}

/* ---------- panier ---------- */
.wc-page .wc-content{max-width:1200px;margin:0 auto}
.woocommerce-cart-form{margin-bottom:50px}
table.shop_table{width:100%;border-collapse:collapse;border:0;font-size:15px}
table.shop_table th{font:600 11px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--mute);text-align:left;padding:14px 10px;border-bottom:1px solid var(--line)}
table.shop_table td{padding:20px 10px;border-bottom:1px solid var(--line);vertical-align:middle}
table.shop_table td.product-thumbnail img{width:80px;height:100px;object-fit:cover}
table.shop_table td.product-name a{font:900 20px/1.1 var(--font-display);text-transform:uppercase}
table.shop_table td.product-name .variation{font-size:13px;color:var(--mute);margin-top:4px}
table.shop_table td.product-name dl.variation dt,table.shop_table td.product-name dl.variation dd{display:inline;margin:0}
table.shop_table td.product-name dl.variation dd p{display:inline}
table.shop_table td.product-remove a{font-size:22px;color:var(--mute)!important}
table.shop_table td.product-remove a:hover{color:var(--ember)!important}
table.shop_table td.actions{padding-top:28px}
table.shop_table td.actions .coupon{display:inline-flex;gap:10px;align-items:center;flex-wrap:wrap}
table.shop_table td.actions .coupon .input-text{width:220px}
table.shop_table td.actions>.button{float:right;background:transparent;color:var(--bone)}
.cart-collaterals{display:flex;justify-content:flex-end}
.cart_totals{width:100%;max-width:480px;background:var(--panel);padding:34px;border-radius:16px}
.cart_totals h2,.woocommerce-checkout h3,#order_review_heading,.woocommerce-order-details__title,.woocommerce-column__title{font:900 30px/1 var(--font-display);text-transform:uppercase;margin-bottom:20px}
.cart_totals table.shop_table th{width:40%;padding-left:0}
.cart_totals table.shop_table td{padding-right:0;text-align:right}
.cart_totals .order-total td,.cart_totals .order-total th{font:900 24px/1 var(--font-display);color:var(--bone);border-bottom:0}
.wc-proceed-to-checkout{padding-top:16px}
.wc-proceed-to-checkout .checkout-button{width:100%;background:var(--ember)!important;border-color:var(--ember)!important;padding:20px}
#shipping_method{list-style:none;padding:0;margin:0;display:grid;gap:6px}
.woocommerce-shipping-destination,.shipping-calculator-button{font-size:13px;color:var(--mute)}
.cross-sells{margin-top:60px}
.cross-sells h2{font:900 36px/1 var(--font-display);text-transform:uppercase;margin-bottom:24px}
.cart-empty.woocommerce-info{justify-content:center;font:700 28px/1.3 var(--font-display);border:0;background:none}
.return-to-shop{text-align:center}

/* ---------- commande ---------- */
form.checkout{display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(30px,5vw,70px);align-items:start}
form.checkout>.woocommerce-NoticeGroup{grid-column:1/-1}
form.checkout #customer_details{grid-column:1}
form.checkout #order_review_heading,form.checkout #order_review{grid-column:2}
form.checkout #order_review_heading{grid-row:1}
form.checkout #order_review{grid-row:1;margin-top:56px;background:var(--panel);border-radius:16px;padding:30px;position:sticky;top:110px}
#customer_details .col-1,#customer_details .col-2{width:100%;float:none}
#customer_details .col-2{margin-top:40px}
.woocommerce form .form-row{margin:0 0 22px;padding:0}
.woocommerce form .form-row-first,.woocommerce form .form-row-last{width:48%;float:left}
.woocommerce form .form-row-last{float:right}
.woocommerce form .form-row-wide{clear:both}
.woocommerce form .form-row .required{color:var(--ember);text-decoration:none}
.woocommerce form .form-row.woocommerce-invalid .input-text{border-color:#d9452b}
.woocommerce-billing-fields__field-wrapper::after,.woocommerce-shipping-fields__field-wrapper::after{content:"";display:table;clear:both}
#ship-to-different-address{font:900 22px/1 var(--font-display);text-transform:uppercase}
#ship-to-different-address label{display:flex;gap:10px;align-items:center;cursor:pointer}
.woocommerce-checkout-review-order-table td.product-total,.woocommerce-checkout-review-order-table tfoot td{text-align:right}
.woocommerce-checkout-review-order-table .order-total th,.woocommerce-checkout-review-order-table .order-total td{font:900 24px/1 var(--font-display);color:var(--bone)}
#payment{background:transparent;margin-top:24px}
#payment ul.payment_methods{list-style:none;padding:0;margin:0 0 20px;border-bottom:1px solid var(--line)}
#payment ul.payment_methods li{padding:14px 0;border-top:1px solid var(--line)}
#payment ul.payment_methods li label{font-weight:600;cursor:pointer}
#payment div.payment_box{background:#fff;color:#3d3b37;border-radius:10px;padding:16px;margin-top:12px;font-size:14px}
#payment div.payment_box::before{display:none}
.woocommerce-terms-and-conditions-wrapper{font-size:13px;color:var(--mute);margin-bottom:16px}
.woocommerce-terms-and-conditions-wrapper a{color:var(--bone);text-decoration:underline}
.woocommerce-form-coupon-toggle .woocommerce-info,.woocommerce-form-login-toggle .woocommerce-info{background:transparent}
form.checkout_coupon,form.woocommerce-form-login{border:1px solid var(--line);padding:24px;margin-bottom:30px}

/* blocs panier/commande (si utilisés) */
.wc-block-cart,.wc-block-checkout{color:var(--bone)}
.wc-block-components-text-input input,.wc-block-components-combobox input,.wc-block-components-textarea{background:transparent!important;color:var(--bone)!important;border-color:var(--line)!important}
.wc-block-components-text-input label,.wc-block-components-combobox label{color:var(--mute)!important}
.wc-block-components-totals-wrapper,.wc-block-components-order-summary-item{border-color:var(--line)!important}
.wc-block-components-sidebar-layout .wc-block-components-main{color:var(--bone)}

/* ---------- confirmation & compte ---------- */
.woocommerce-order>.woocommerce-notice{font:700 clamp(28px,3vw,40px)/1.2 var(--font-display);color:var(--ember-2);margin-bottom:30px}
ul.woocommerce-order-overview{list-style:none;display:flex;flex-wrap:wrap;gap:0;padding:0;margin:0 0 50px;border:1px solid var(--line)}
ul.woocommerce-order-overview li{flex:1;min-width:160px;padding:20px;border-right:1px solid var(--line);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--mute)}
ul.woocommerce-order-overview li strong{display:block;margin-top:8px;font:900 22px/1.1 var(--font-display);color:var(--bone);letter-spacing:0}
.woocommerce-customer-details address{font-style:normal;border:1px solid var(--line);padding:22px;line-height:1.8}
.woocommerce-columns--addresses{display:grid;grid-template-columns:1fr 1fr;gap:30px}

.woocommerce-account .wc-content{display:grid;grid-template-columns:240px 1fr;gap:clamp(30px,5vw,70px);align-items:start}
.woocommerce-account .wc-content>.woocommerce{display:contents}
.woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.woocommerce-MyAccount-navigation li a{display:block;padding:16px 0;border-bottom:1px solid var(--line);font:600 12px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--mute);transition:color .3s,padding .3s}
.woocommerce-MyAccount-navigation li a:hover,.woocommerce-MyAccount-navigation li.is-active a{color:var(--bone);padding-left:10px}
.woocommerce-MyAccount-navigation li.is-active a{box-shadow:inset 2px 0 0 var(--ember)}
.woocommerce-MyAccount-content{min-width:0}
.woocommerce-MyAccount-content>p:first-of-type{font:700 24px/1.35 var(--font-display)}
.woocommerce-MyAccount-content a:not(.button){color:var(--ember-2);text-decoration:underline}
.woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:20px}
.woocommerce-Address-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.woocommerce-Address-title h2{font:900 24px/1 var(--font-display);text-transform:uppercase}
#customer_login{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,70px)}
#customer_login h2{font:900 36px/1 var(--font-display);text-transform:uppercase;margin-bottom:24px}
#customer_login .u-column1,#customer_login .u-column2{width:100%;float:none}
.woocommerce-form-login__rememberme{display:flex;gap:8px;align-items:center;margin:10px 0 18px;font-size:14px}
.lost_password a{font-size:13px;color:var(--mute);text-decoration:underline}
.woocommerce-account .wc-content:has(#customer_login){display:block}

/* ---------- responsive ---------- */
@media (max-width:1080px){
  ul.products{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:860px){
  form.checkout{grid-template-columns:1fr}
  form.checkout #order_review_heading,form.checkout #order_review{grid-column:1;grid-row:auto;position:static;margin-top:0}
  .woocommerce-account .wc-content{grid-template-columns:1fr}
  #customer_login,.woocommerce-Addresses,.woocommerce-columns--addresses{grid-template-columns:1fr}
  .cart_totals{max-width:none}
  table.shop_table_responsive thead{display:none}
  table.shop_table_responsive tr{display:grid;grid-template-columns:80px 1fr auto;gap:4px 14px;padding:16px 0;border-bottom:1px solid var(--line)}
  table.shop_table_responsive td{display:block;border:0;padding:0}
  table.shop_table_responsive td.product-thumbnail{grid-row:span 4}
  table.shop_table_responsive td.product-remove{grid-column:3;grid-row:1;text-align:right}
  table.shop_table_responsive td.product-name,table.shop_table_responsive td.product-price,table.shop_table_responsive td.product-quantity,table.shop_table_responsive td.product-subtotal{grid-column:2/4}
  table.shop_table_responsive td.product-price::before,table.shop_table_responsive td.product-subtotal::before{content:attr(data-title) " : ";color:var(--mute);font-size:12px}
  table.shop_table_responsive tr:last-child{display:block}
  table.shop_table td.actions>.button{float:none;width:100%;margin-top:12px}
  table.shop_table td.actions .coupon .input-text{width:100%}
}
@media (max-width:560px){
  ul.products{grid-template-columns:1fr}
  .woocommerce form .form-row-first,.woocommerce form .form-row-last{width:100%;float:none}
  .woocommerce-mini-cart__buttons{grid-template-columns:1fr}
  .toolbar-right{width:100%;justify-content:space-between}
}
