/* Kimikono UX v1.6 — polish layer over Shoptimizer 2.9.1 (palette: --p #31382A, sage #7C8972, sand #F7F4EF) */
:root{--kk-p:#31382A;--kk-a:#7C8972;--kk-s:#F7F4EF;--kk-l:#e6e0d5;--kk-l2:#efeae1;--kk-m:#77756b;--kk-shu:#a8432a;--kk-t:#4a4a42;--kk-bg:#fff;--kk-on-p:#fff;--kk-on-shu:#fff;--kk-r:2px;--kk-r3:3px;--kk-btn-r:2px;--kk-font-h:'Tenor Sans','Tenor Sans Fallback',Georgia,serif;--kk-font-b:'Raleway','Raleway Fallback',-apple-system,'Segoe UI',Roboto,Arial,sans-serif}

/* 1. Header cart: vertically centre amount + icon with the menu */
/* v1.6: the header-row cart is only shown where Shoptimizer shows it (<=992px); on desktop the nav-bar cart is the one
   (forcing display:flex on both duplicated the cart and glued it to the search field). */
.site-header-cart.menu{align-items:center;margin:0}
@media (max-width:992px){.site-header .site-header-cart.menu{display:flex}}
@media (min-width:993px){.site-header .site-header-cart.menu{display:none!important}.col-full-nav .site-header-cart.menu{display:flex}}
.site-header-cart .shoptimizer-cart,.site-header-cart .cart-contents{display:inline-flex!important;align-items:center;gap:8px;line-height:1;height:auto}
.site-header-cart .cart-contents .amount{display:inline-flex;align-items:center;line-height:1;margin:0;padding:0}
.site-header-cart .cart-contents .count,.site-header-cart .shoptimizer-cart-icon{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;top:auto}

/* 2. v1.5 Product cards: image + title + price (+ % badge on the image) ONLY, in every loop (shop, categories, search,
   related, upsells, cross-sells). PHP removes the category label, stars and button; these rules are the fallback. */
ul.products li.product .product__categories,ul.products li.product .star-rating,ul.products li.product .shoptimizer-loop-reviews,
ul.products li.product .button,ul.products li.product .added_to_cart,ul.products li.product .add_to_cart_button,
ul.products li.product .kk-vsw,ul.products li.product .cgkit-swatch-form,ul.products li.product .cgkit-as-wrap,ul.products li.product .variations_form{display:none!important}
ul.products li.product .woocommerce-card__header{padding-bottom:4px}
ul.products li.product .woocommerce-loop-product__title{margin:10px 0 4px!important}
ul.products li.product .woocommerce-loop-product__title a{color:var(--kk-p)!important;line-height:1.35}
ul.products li.product .price{margin:0!important;font-size:14.5px;color:var(--kk-p)}
ul.products li.product .price del{color:var(--kk-m)}
ul.products li.product .price ins{color:var(--kk-shu)}
/* the one % badge, on the image (Shoptimizer label) — same look as ours */
ul.products li.product .sale-item.product-label{background:var(--kk-shu)!important;color:var(--kk-on-shu)!important;border:0!important;border-radius:var(--kk-r)!important;font-size:11.5px!important;font-weight:600!important;letter-spacing:.03em!important;padding:4px 7px!important;line-height:1.25!important;min-width:0!important;min-height:0!important;width:auto!important;height:auto!important}
ul.products li.product .sale-item.product-label::before,ul.products li.product .sale-item.product-label::after{display:none!important}
/* homepage static cards (page 461): same rule — no category, no sizes, only the discount badge */
.kk .kk-card .kk-pcat,.kk .kk-card .kk-sizes,.kk .kk-card .kk-badge:not(.sale){display:none!important}
.kk .kk-card .kk-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:.45em}
.kk .kk-card .kk-price del{order:-1;opacity:.6;font-weight:400}

/* 3. Collection pages: title + intro text only — no category banner image */
.woocommerce-products-header .cg-cat-image,.tax-product_cat .woocommerce-products-header img,.tax-product_cat .cg-cat-image{display:none!important}
.tax-product_cat .woocommerce-products-header,.post-type-archive-product .woocommerce-products-header{display:block!important;margin:0 0 22px!important;padding:0!important;background:none!important;border:0!important;min-height:0!important}
.tax-product_cat .woocommerce-products-header .term-description,.tax-product_cat .term-description{margin:6px 0 0!important;max-width:820px;padding:0!important;background:none!important;border:0!important;box-shadow:none!important}
.tax-product_cat .woocommerce-products-header .term-description p,.tax-product_cat .term-description p{background:none!important;padding:0!important;border:0!important;margin:0 0 .6em;font-size:15.5px;line-height:1.75;color:#5b5b52}
.tax-product_cat .woocommerce-products-header .term-description p:last-child{margin-bottom:0}

/* 4. Notices in brand palette (sage instead of bright green) */
.woocommerce-message,.woocommerce-info,.wc-block-components-notice-banner.is-success{background:var(--kk-s)!important;color:var(--kk-p)!important;border:1px solid var(--kk-l)!important;border-left:3px solid var(--kk-a)!important;border-radius:var(--kk-r)!important;box-shadow:none!important}
.woocommerce-message::before,.woocommerce-info::before{color:var(--kk-a)!important}
.woocommerce-message a,.woocommerce-info a{color:var(--kk-p)!important}
.woocommerce-message .button,.woocommerce-info .button{background:var(--kk-p)!important;color:var(--kk-on-p)!important;border-radius:var(--kk-btn-r)!important}

/* 5. Cookie banner (CookieAdmin): smaller, corner card instead of full-width bar */
.cookieadmin_law_container,.cookieadmin_notice,.cookieadmin_consent_inside{max-width:400px!important;width:calc(100% - 32px)!important;left:16px!important;right:auto!important;bottom:16px!important;font-size:13px!important;padding:16px 18px!important;border-radius:4px!important;box-shadow:0 18px 40px -20px rgba(30,30,20,.45)!important}
.cookieadmin_notice_title{font-size:14px!important;margin-bottom:4px!important}
.cookieadmin_desc{font-size:12.5px!important;line-height:1.5!important}
.cookieadmin_btn{padding:8px 12px!important;font-size:12px!important;min-height:0!important}

/* 6. Prices: crossed-out old price before new price */
.price{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:.45em}
.price del{order:1;opacity:.55;font-size:.9em;font-weight:400}
.price ins{order:2;text-decoration:none;font-weight:600}
.price .screen-reader-text{order:3}

/* 7. Sale badge (percentage) */
.onsale.kk-onsale{background:var(--kk-shu)!important;color:var(--kk-on-shu)!important;border:0!important;border-radius:var(--kk-r)!important;font-size:12px!important;font-weight:600!important;letter-spacing:.04em!important;padding:4px 8px!important;min-height:0!important;min-width:0!important;line-height:1.3!important}

/* 8. Reassurance block (single product) */
.kk-reassure{margin:18px 0 6px;padding:14px 16px;background:var(--kk-s);border:1px solid var(--kk-l);border-radius:var(--kk-r);font-size:13.5px;line-height:1.5;color:var(--kk-p)}
.kk-reassure ul{list-style:none;margin:0;padding:0}
.kk-reassure li{position:relative;padding-left:22px;margin:0 0 6px}
.kk-reassure li:last-child{margin-bottom:0}
.kk-reassure li::before{content:"\2713";position:absolute;left:0;top:0;color:var(--kk-a);font-weight:700}
/* v1.5: no "Guide des tailles" line, no call-back button / size-guide or delivery popups on the product page */
.single-product .call-back-feature,.single-product dialog[data-shoptimizermodal-id="callBack"],.single-product #shoptimizer-modals-wrapper,
.single-product .commercekit-size-guide,.single-product .ckit-size-guide,.single-product .shoptimizer-size-guide,.kk-reassure .kk-size{display:none!important}
.kk-reassure{margin-top:14px}

/* 9. Free-shipping progress */
.kk-fs{margin:0 0 16px;padding:12px 14px;background:var(--kk-s);border:1px solid var(--kk-l);border-radius:var(--kk-r);font-size:13px;color:var(--kk-p)}
.kk-fs p{margin:0 0 8px;line-height:1.4}
.kk-fs .kk-fs-track{height:6px;background:var(--kk-l);border-radius:var(--kk-r3);overflow:hidden}
.kk-fs .kk-fs-bar{height:100%;background:var(--kk-a);border-radius:var(--kk-r3);transition:width .4s}
.kk-fs.is-done{border-left:3px solid var(--kk-a)}
.kk-fs.is-done .kk-fs-track{display:none}.kk-fs.is-done p{margin:0}
.widget_shopping_cart .kk-fs{margin:12px 0}

/* 10. Filter accordions */
#secondary .widget.kk-acc>.widget-title{cursor:pointer;position:relative;padding-right:24px;user-select:none;margin-bottom:12px}
#secondary .widget.kk-acc>.widget-title::after{content:"";position:absolute;right:4px;top:50%;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-70%) rotate(45deg);transition:transform .2s}
#secondary .widget.kk-acc.kk-closed>.widget-title{margin-bottom:0}
#secondary .widget.kk-acc.kk-closed>.widget-title::after{transform:translateY(-30%) rotate(-45deg)}
#secondary .widget.kk-acc.kk-closed>:not(.widget-title){display:none!important}
#secondary .widget.kk-acc{padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid var(--kk-l)}

/* 11. v1.5 Sticky mobile add-to-cart — ALWAYS visible <=768px (even at the top of the page). v1.6.3: one full-width button, price inside the label (25.2) */
body .kk-sticky-atc{display:none!important}
@media (max-width:768px){
 body .kk-sticky-atc{display:flex!important;position:fixed!important;top:auto!important;bottom:0!important;left:0!important;right:0!important;width:100%!important;max-width:none!important;margin:0!important;z-index:99990!important;box-sizing:border-box;align-items:center;gap:14px;padding:10px 12px calc(10px + env(safe-area-inset-bottom)) 16px;background:var(--kk-bg);border-top:1px solid var(--kk-l);box-shadow:0 -10px 28px -18px rgba(30,30,20,.4)}
 .kk-sticky-atc .kk-sa-price{flex:0 0 auto;max-width:38%;display:flex;flex-direction:column;justify-content:center;line-height:1.15;font-size:17px;font-weight:600;color:var(--kk-p);white-space:nowrap}
 .kk-sticky-atc .kk-sa-price .woocommerce-Price-amount{white-space:nowrap}
 .kk-sticky-atc .kk-sa-price.is-range{font-size:13.5px;white-space:normal}
 .kk-sticky-atc .kk-sa-price .onsale,.kk-sticky-atc .kk-sa-price .sale-item,.kk-sticky-atc .kk-sa-price del,.kk-sticky-atc .kk-sa-price .screen-reader-text{display:none!important}
 .kk-sticky-atc .kk-sa-btn{flex:1 1 auto;min-width:0;min-height:52px;display:inline-flex!important;align-items:center;justify-content:center;gap:8px;opacity:1!important;background:var(--kk-p)!important;color:var(--kk-on-p)!important;border:0!important;border-radius:var(--kk-btn-r)!important;padding:0 14px!important;margin:0!important;font-size:13.5px!important;font-weight:600!important;line-height:1!important;letter-spacing:.07em!important;text-transform:uppercase;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .15s}
 .kk-sticky-atc .kk-sa-btn:active{background:var(--kk-a)!important}
 .kk-sticky-atc .kk-sa-btn.is-loading{opacity:.75!important;pointer-events:none}
 .kk-sticky-atc .kk-sa-btn.is-loading::after{content:"";width:14px;height:14px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:kkspin .7s linear infinite}
 .kk-sticky-atc .kk-sa-msg{position:absolute;left:12px;right:12px;bottom:calc(100% + 8px);padding:10px 14px;background:var(--kk-p);color:var(--kk-on-p);font-size:13.5px;line-height:1.35;border-radius:var(--kk-r3);box-shadow:0 10px 24px -12px rgba(30,30,20,.55);opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity .2s,transform .2s}
 .kk-sticky-atc.has-msg .kk-sa-msg{opacity:1;transform:none}
 body.kk-has-sticky-atc{padding-bottom:calc(74px + env(safe-area-inset-bottom))!important}
}
@keyframes kkspin{to{transform:rotate(360deg)}}
/* variation selectors called out when the sticky button is tapped without a choice */
.single-product table.variations.kk-attn{animation:kkattn 1.6s ease}
.single-product table.variations tr.kk-miss th label,.single-product table.variations tr.kk-miss th label span{color:var(--kk-shu)!important}
.single-product table.variations tr.kk-miss select,.single-product table.variations tr.kk-miss .kk-vsw-opt{border-color:var(--kk-shu)!important}
@keyframes kkattn{0%,100%{box-shadow:0 0 0 0 rgba(168,67,42,0)}25%{box-shadow:0 0 0 6px rgba(168,67,42,.18)}}
/* Shoptimizer's own sticky add-to-cart (top bar, no button on some builds) conflicts with ours: hide it. */
.shoptimizer-sticky-add-to-cart,.commercekit-sticky-add-to-cart{display:none!important}

/* 12. One % badge per product page: on the image only (Shoptimizer's price-side label hidden) */
.single-product .summary .sale-item.product-label,.single-product .entry-summary .sale-item.product-label{display:none!important}
.single-product .woocommerce-product-gallery{position:relative}
.single-product .woocommerce-product-gallery .onsale.kk-onsale--img{position:absolute!important;top:14px!important;left:14px!important;right:auto!important;z-index:9!important;margin:0!important}

/* 13. Related products: remove the big gap under the heading */
.single-product section.related>h2,.single-product section.related.products>h2{padding-top:24px!important;margin:0 0 14px!important}
.single-product section.related ul.products{margin-top:0!important;padding-top:0!important}
.single-product section.related{padding-top:0!important}
.single-product section.related li.product img{background:var(--kk-s);aspect-ratio:1/1;object-fit:cover;height:auto}

/* 14. Keep the cookie card above the sticky add-to-cart bar on mobile */
@media (max-width:768px){body.kk-has-sticky-atc .cookieadmin_law_container{bottom:calc(84px + env(safe-area-inset-bottom))!important}}
/* v1.5 The floating cookie re-consent tab sat over card prices (category page): it moves into the footer as a
   "Gérer mes cookies" link (JS adds body.kk-ck-docked only once the link exists, so the tab never disappears alone). */
body.kk-ck-docked .cookieadmin_reconsent_wrap,body.kk-ck-docked .cookieadmin_re_consent{display:none!important}
.kk-ck-wrap{margin:10px 0 0!important;text-align:center;width:100%;clear:both}
.kk-ck-link{background:none!important;border:0!important;padding:4px 2px!important;margin:0!important;min-height:0!important;box-shadow:none!important;color:inherit!important;opacity:.8;font-size:12px!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.kk-ck-link:hover{opacity:1}

/* 14b. v1.5 Secure-payment badges under the add-to-cart button */
.kk-pay{margin:14px 0 2px;text-align:center;clear:both;width:100%}
.kk-pay-list{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;list-style:none!important;margin:0!important;padding:0!important}
.kk-pay-list li{margin:0!important;padding:0!important;list-style:none!important;line-height:0}
.kk-pay-list li::before,.kk-pay-list li::marker{display:none;content:none}
.kk-pay-logo{display:block;width:40px;height:26px}

/* 14c. v1.5 Product accordions (Description / Informations complémentaires / Avis) */
.kk-pacc{clear:both;max-width:880px;margin:34px auto 8px;padding:0 15px;box-sizing:border-box}
.kk-pacc-item{border-bottom:1px solid var(--kk-l)}
.kk-pacc-item:first-child{border-top:1px solid var(--kk-l)}
.kk-pacc .kk-pacc-h{margin:0!important;padding:0!important;font-size:inherit!important;line-height:1!important;border:0!important}
.kk-pacc .kk-pacc-btn{display:flex!important;width:100%;align-items:center;justify-content:space-between;gap:16px;padding:20px 2px!important;margin:0!important;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;min-height:0!important;color:var(--kk-p)!important;font-family:var(--kk-font-h);font-size:19px!important;font-weight:400!important;line-height:1.25!important;letter-spacing:.01em!important;text-transform:none!important;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent}
.kk-pacc .kk-pacc-btn:hover{color:var(--kk-a)!important}
.kk-pacc .kk-pacc-btn:focus-visible{outline:2px solid var(--kk-a);outline-offset:2px}
.kk-pacc-ic{position:relative;flex:0 0 14px;width:14px;height:14px}
.kk-pacc-ic::before,.kk-pacc-ic::after{content:"";position:absolute;left:0;top:6.25px;width:14px;height:1.5px;background:currentColor;transition:transform .3s ease}
.kk-pacc-ic::after{transform:rotate(90deg)}
.kk-pacc-item.is-open .kk-pacc-ic::after{transform:rotate(0deg)}
.kk-pacc.is-ready .kk-pacc-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .32s ease}
.kk-pacc.is-ready .kk-pacc-item.is-open>.kk-pacc-panel{grid-template-rows:1fr}
.kk-pacc-in{min-height:0;overflow:hidden}
.kk-pacc.is-ready .kk-pacc-item:not(.is-open) .kk-pacc-in{visibility:hidden;transition:visibility 0s linear .32s}
.kk-pacc-body{padding:0 2px 24px;font-size:15.5px;line-height:1.75;color:var(--kk-t)}
.kk-pacc-body>:first-child{margin-top:0!important}
.kk-pacc-body h2{font-size:21px!important;line-height:1.3;margin:0 0 .6em!important}
.kk-pacc-body h3{font-size:17px!important;line-height:1.35;margin:1.4em 0 .4em!important}
.kk-pacc-body table.shop_attributes{width:100%;border:0!important;border-collapse:collapse;margin:0!important}
.kk-pacc-body table.shop_attributes th,.kk-pacc-body table.shop_attributes td{padding:11px 0!important;border:0!important;border-bottom:1px solid var(--kk-l2)!important;background:none!important;font-size:14.5px;text-align:left;vertical-align:top}
.kk-pacc-body table.shop_attributes th{width:38%;font-weight:600;color:var(--kk-p);padding-right:16px!important}
.kk-pacc-body table.shop_attributes td p{margin:0!important;padding:0!important;font-style:normal}
.kk-pacc-body table.shop_attributes tr:last-child th,.kk-pacc-body table.shop_attributes tr:last-child td{border-bottom:0!important}
@media (prefers-reduced-motion:reduce){.kk-pacc.is-ready .kk-pacc-panel,.kk-pacc-ic::before,.kk-pacc-ic::after{transition:none}}
@media (max-width:768px){
 .kk-pacc{margin-top:22px;padding:0 15px}
 .kk-pacc .kk-pacc-btn{padding:17px 0!important;font-size:17px!important}
 .kk-pacc-body{font-size:15px;padding:0 0 20px}
}

/* 15. Color swatch chip (shared) */
.kk-sw{display:inline-block;flex:0 0 auto;width:18px;height:18px;border-radius:50%;background:var(--sw,#ccc);box-shadow:inset 0 0 0 1px rgba(0,0,0,.14);vertical-align:middle;position:relative}
.kk-sw--light{box-shadow:inset 0 0 0 1px rgba(0,0,0,.28)}

/* 16. Filter chips: every layered-nav term is a pill with a clear checked state */
#secondary .widget_layered_nav ul.woocommerce-widget-layered-nav-list{display:flex!important;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
#secondary .widget_layered_nav li.wc-layered-nav-term{display:inline-flex!important;align-items:center;gap:4px;margin:0!important;padding:0 10px 0 0!important;border:1px solid var(--kk-l);border-radius:999px;background:var(--kk-bg);cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s;line-height:1.2;list-style:none}
#secondary .widget_layered_nav li.wc-layered-nav-term::before{display:none!important}
#secondary .widget_layered_nav li.wc-layered-nav-term:hover{border-color:var(--kk-a)}
#secondary .widget_layered_nav li.wc-layered-nav-term>a,#secondary .widget_layered_nav li.wc-layered-nav-term>span:not(.count){display:inline-flex!important;align-items:center;gap:8px;padding:7px 0 7px 10px!important;color:var(--kk-p)!important;font-size:13px;text-decoration:none!important;white-space:nowrap}
#secondary .widget_layered_nav li.wc-layered-nav-term>a::before{content:"";flex:0 0 auto;width:14px;height:14px;border:1.5px solid #b9b4a8;border-radius:var(--kk-r3);background:var(--kk-bg);box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;font-size:10px;line-height:1;color:#fff;position:static!important;margin:0!important;transform:none!important}
#secondary .widget_layered_nav li.wc-layered-nav-term .count{position:static!important;top:auto!important;right:auto!important;left:auto!important;transform:none!important;display:inline!important;float:none!important;min-width:0!important;height:auto!important;line-height:1.2!important;font-size:11.5px!important;color:var(--kk-m);padding:0!important;margin:0 0 0 2px!important;background:none!important;border:0!important}
#secondary .widget_layered_nav li.chosen,#secondary .widget_layered_nav li.woocommerce-widget-layered-nav-list__item--chosen{background:var(--kk-p)!important;border-color:var(--kk-p)!important;box-shadow:0 0 0 2px rgba(49,56,42,.15)}
#secondary .widget_layered_nav li.chosen>a,#secondary .widget_layered_nav li.chosen .count{color:#fff!important}
#secondary .widget_layered_nav li.chosen>a::before{content:"\2713";background:var(--kk-a);border-color:var(--kk-a)}
/* color widget: swatch replaces the checkbox, check mark drawn on the swatch */
#secondary .widget_layered_nav.kk-swatch-widget li.wc-layered-nav-term>a::before,#secondary .widget_layered_nav:has(.kk-sw) li.wc-layered-nav-term>a::before{display:none!important}
#secondary .widget_layered_nav li.chosen .kk-sw{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--kk-a)}
#secondary .widget_layered_nav li.chosen .kk-sw::after{content:"\2713";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;text-shadow:0 0 2px rgba(0,0,0,.6)}
#secondary .widget_layered_nav li.chosen .kk-sw--light::after{color:var(--kk-p);text-shadow:none}
/* loading feedback while the filtered page loads */
body.kk-filtering ul.products{opacity:.45;pointer-events:none;transition:opacity .2s}
body.kk-filtering .woocommerce-result-count::after{content:" · mise à jour…";color:var(--kk-a)}

/* 17. Active filters bar */
.kk-active-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 18px;padding:10px 12px;background:var(--kk-s);border:1px solid var(--kk-l);border-radius:var(--kk-r);font-size:13px;width:100%;box-sizing:border-box}
.kk-active-filters .kk-af-label{color:var(--kk-m);margin-right:2px}
.kk-af-chip{display:inline-flex;align-items:center;gap:7px;padding:5px 10px;background:var(--kk-p);color:var(--kk-on-p)!important;border-radius:999px;text-decoration:none!important;font-size:12.5px;line-height:1.2}
.kk-af-chip .kk-sw{width:14px;height:14px;box-shadow:0 0 0 1px rgba(255,255,255,.6)}
.kk-af-chip i{font-style:normal;font-size:15px;line-height:1;opacity:.8}
.kk-af-chip:hover{background:var(--kk-a)}
.kk-af-clear{margin-left:auto;color:var(--kk-p)!important;text-decoration:underline!important;text-underline-offset:2px;font-size:12.5px}

/* 18. Variation color swatches (product page) */
.kk-has-vsw{position:relative}
.kk-has-vsw select[data-kk-swatch]{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden;clip:rect(0 0 0 0);margin:0!important;padding:0!important;border:0!important}
.kk-vsw{display:flex;flex-wrap:wrap;gap:8px;margin:2px 0 6px}
.kk-vsw-opt{display:inline-flex!important;align-items:center;gap:8px;padding:6px 12px 6px 6px!important;background:var(--kk-bg)!important;color:var(--kk-p)!important;border:1px solid var(--kk-l)!important;border-radius:999px!important;font-size:13px!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important;line-height:1.2!important;cursor:pointer;min-height:0!important;box-shadow:none!important;transition:border-color .15s,box-shadow .15s}
.kk-vsw-opt .kk-sw{width:22px;height:22px}
.kk-vsw-opt:hover{border-color:var(--kk-a)!important}
.kk-vsw-opt.is-selected{border-color:var(--kk-p)!important;box-shadow:0 0 0 1px var(--kk-p)!important;font-weight:600!important}
.kk-vsw-opt.is-selected .kk-sw::after{content:"\2713";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;text-shadow:0 0 2px rgba(0,0,0,.6)}
.kk-vsw-opt.is-selected .kk-sw--light::after{color:var(--kk-p);text-shadow:none}
.kk-vsw-opt.is-disabled{opacity:.35;cursor:not-allowed;text-decoration:line-through}
.kk-vsw-chosen{font-weight:400;color:var(--kk-m)}
/* 18b. v1.6 Size pills (taille / size / pointure): buttons instead of the dropdown, same family as the colour swatches */
.kk-vsz{gap:8px;margin:4px 0 4px}
.kk-vsz .kk-vsz-opt{position:relative;justify-content:center;min-width:52px;min-height:44px!important;padding:0 14px!important;font-size:14px!important;font-weight:500!important;letter-spacing:.02em!important;font-variant-numeric:tabular-nums;border-radius:999px!important;background:var(--kk-bg)!important;color:var(--kk-p)!important;-webkit-tap-highlight-color:transparent}
.kk-vsz .kk-vsz-opt .kk-vsw-name{pointer-events:none}
.kk-vsz .kk-vsz-opt:hover{border-color:var(--kk-p)!important}
.kk-vsz .kk-vsz-opt.is-selected{background:var(--kk-p)!important;border-color:var(--kk-p)!important;color:var(--kk-on-p)!important;box-shadow:none!important;font-weight:600!important}
.kk-vsz .kk-vsz-opt.is-disabled{opacity:1;color:#a9a9a2!important;background:#f6f6f3!important;border-color:#e4e4de!important;text-decoration:none;cursor:not-allowed;overflow:hidden}
.kk-vsz .kk-vsz-opt.is-disabled::after{content:"";position:absolute;left:-2px;right:-2px;top:50%;border-top:1px solid #b9b9b2;transform:rotate(-24deg)}
.kk-vsw-opt:focus{outline:none}
.kk-vsw-opt:focus-visible{outline:2px solid var(--kk-p)!important;outline-offset:2px}
.single-product table.variations tr.kk-miss .kk-vsz-opt:not(.is-disabled){border-color:var(--kk-shu)!important}
.variations_form.kk-pills-all .reset_variations{display:none!important}

/* 19. WooCommerce "active filters" widget in the sidebar: same dark chips */
#secondary .widget_layered_nav_filters ul{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
#secondary .widget_layered_nav_filters li{margin:0!important;padding:0!important;list-style:none}
#secondary .widget_layered_nav_filters li::before{display:none!important}
#secondary .widget_layered_nav_filters li a{display:inline-flex!important;align-items:center;gap:6px;padding:5px 10px!important;background:var(--kk-p)!important;color:var(--kk-on-p)!important;border-radius:999px;font-size:12.5px;text-decoration:none!important}
#secondary .widget_layered_nav_filters li a::before{content:"\00d7"!important;position:static!important;font-size:14px;line-height:1;color:#fff!important;background:none!important;border:0!important;width:auto!important;height:auto!important;margin:0!important;transform:none!important}

/* 20. Hide the sidebar "Filtres actifs" widget (the bar above the grid replaces it) */
#secondary .widget_layered_nav_filters,.widget-area .widget_layered_nav_filters{display:none!important}

/* 21. Mega menu — golden template look (ref: preview/kimono_golden_template.html .mainnav / .mega) */
.kk-mega{display:none}
@media (min-width:993px){
 .col-full-nav{position:relative;background:var(--kk-bg);border-bottom:1px solid var(--kk-l2)}
 #site-navigation ul.menu{display:flex;align-items:stretch;gap:4px}
 #site-navigation ul.menu>li{position:relative;display:flex;align-items:center}
 #site-navigation ul.menu>li>a.cg-menu-link{display:flex;align-items:center;gap:6px;height:52px;padding:0 15px!important;font-family:var(--kk-font-b);font-size:13px!important;font-weight:600!important;letter-spacing:.06em!important;text-transform:none!important;color:var(--kk-p)!important;position:relative}
 #site-navigation ul.menu>li>a.cg-menu-link,#site-navigation ul.menu:hover>li>a.cg-menu-link{opacity:1!important}
 #site-navigation ul.menu>li>a.cg-menu-link::after{content:"";position:absolute;left:15px;right:15px;bottom:-1px;height:2px;background:var(--kk-a);transform:scaleX(0);transition:transform .25s}
 #site-navigation ul.menu>li:hover>a.cg-menu-link::after,#site-navigation ul.menu>li.current-menu-item>a.cg-menu-link::after,#site-navigation ul.menu>li.current-menu-ancestor>a.cg-menu-link::after{transform:scaleX(1)}
 #site-navigation ul.menu>li>a.cg-menu-link span{border:0!important;padding:0!important;background:none!important}
 #site-navigation ul.menu>li>a.cg-menu-link span::before,#site-navigation ul.menu>li>a.cg-menu-link span::after{display:none!important}
 #site-navigation ul.menu>li>.caret{opacity:.55;margin-left:-10px;margin-right:6px}
 /* simple dropdowns (.dd) */
 #site-navigation ul.menu>li>.sub-menu-wrapper{top:100%!important;left:0!important;min-width:240px;width:auto!important;padding:0!important;background:var(--kk-bg)!important;border:1px solid var(--kk-l2)!important;border-top:2px solid var(--kk-a)!important;box-shadow:0 24px 40px -18px rgba(30,30,20,.25)!important;border-radius:0!important}
 #site-navigation ul.menu>li>.sub-menu-wrapper .container{padding:14px 0!important;width:auto!important;max-width:none!important;margin:0!important}
 #site-navigation ul.menu>li>.sub-menu-wrapper ul.sub-menu{display:block!important;position:static!important;left:auto!important;top:auto!important;width:auto!important;min-width:0!important;box-shadow:none!important;background:none!important;border:0!important;padding:0!important;margin:0!important;columns:auto!important;transform:none!important}
 #site-navigation ul.menu>li>.sub-menu-wrapper ul.sub-menu>li{width:auto!important;padding:0!important;margin:0!important;float:none!important;display:block!important}
 #site-navigation ul.menu>li>.sub-menu-wrapper ul.sub-menu>li>a{display:block;padding:7px 22px!important;font-size:14px!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important;color:var(--kk-t)!important;white-space:nowrap}
 #site-navigation ul.menu>li>.sub-menu-wrapper ul.sub-menu>li>a:hover{background:#fbf9f5;color:var(--kk-a)!important}
 #site-navigation ul.menu>li.kk-navright{margin-left:auto}
 #site-navigation ul.menu>li.kk-navright>a.cg-menu-link{color:var(--kk-m)!important;font-weight:500!important}
 #site-navigation ul.menu>li.kk-navright>a.cg-menu-link::after{display:none}
 /* trigger "Nos kimonos" (dark filled tab) */
 #site-navigation ul.menu>li.kk-has-mega>a.kk-mega-top{background:var(--kk-p);color:var(--kk-on-p)!important;padding:0 22px!important;margin-right:8px}
 #site-navigation ul.menu>li.kk-has-mega>a.kk-mega-top::after{display:none}
 .kk-mega-top .kk-chev{display:inline-block;width:7px;height:7px;border-right:1.4px solid currentColor;border-bottom:1.4px solid currentColor;transform:translateY(-2px) rotate(45deg);margin-left:4px;transition:transform .2s}
 .kk-has-mega.open .kk-mega-top .kk-chev{transform:translateY(1px) rotate(-135deg)}
 /* panel */
 .kk-mega.is-mounted{display:block;position:absolute;left:0;right:0;top:100%;background:var(--kk-bg);border-top:1px solid var(--kk-l2);box-shadow:0 40px 60px -30px rgba(30,30,20,.35);z-index:999;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .18s,transform .18s,visibility 0s linear .18s}
 .kk-mega.is-mounted.open{opacity:1;visibility:visible;transform:none;transition:opacity .18s,transform .18s}
 .kk-megain{display:grid!important;grid-template-columns:1fr 290px;gap:44px;padding-top:36px!important;padding-bottom:30px!important}
 .kk-megain.no-promo{grid-template-columns:1fr}
 .kk-megain::before,.kk-megain::after,.kk-mfoot::before,.kk-mfoot::after{display:none!important;content:none!important}
 .kk-mcols{display:grid;grid-template-columns:repeat(var(--kk-cols,5),1fr);gap:30px}
 .kk-mcol{display:flex;flex-direction:column;gap:26px}
 .kk-mgroup .kk-mh{display:flex;align-items:center;gap:10px;margin:0 0 8px!important;padding:0 0 11px!important;border-bottom:1px solid var(--kk-l);font:600 11px/1.3 'Raleway',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif!important;letter-spacing:.2em!important;text-transform:uppercase;color:var(--kk-p)}
 .kk-mgroup .kk-mh a,.kk-mgroup .kk-mh span:not(.kk-jp){color:var(--kk-p)!important;text-decoration:none}
 .kk-jp{font:500 15px/1 'Shippori Mincho',serif;color:var(--kk-shu);letter-spacing:0}
 .kk-mgroup ul{list-style:none;margin:0;padding:0}
 .kk-mgroup li{margin:0;padding:0;list-style:none}
 .kk-mgroup li a{display:flex;align-items:center;gap:9px;padding:4px 0;font-size:14.5px;color:var(--kk-t)!important;text-decoration:none;transition:color .2s,transform .2s}
 .kk-mgroup li a:hover{color:var(--kk-a)!important;transform:translateX(3px)}
 .kk-mgroup li a .kk-sw{width:12px;height:12px}
 .kk-mpromo{position:relative;display:block;overflow:hidden;min-height:275px;background:var(--kk-s);text-decoration:none}
 .kk-mpromo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
 .kk-mpromo:hover img{transform:scale(1.04)}
 .kk-mpromo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(25,28,20,.72))}
 .kk-mpt{position:absolute;left:16px;right:16px;bottom:16px;z-index:1;color:#fff}
 .kk-mpt small{display:block;font:600 10px 'Raleway',sans-serif;letter-spacing:.2em;text-transform:uppercase;opacity:.85}
 .kk-mpt b{display:block;font:400 26px/1.15 'Tenor Sans','Shippori Mincho',Georgia,serif;margin:4px 0 8px}
 .kk-mpt span{font:600 11px 'Raleway',sans-serif;letter-spacing:.16em;text-transform:uppercase}
 .kk-mfoot{display:flex!important;justify-content:space-between;align-items:center;border-top:1px solid var(--kk-l2);padding-top:16px!important;padding-bottom:18px!important;font-size:12.5px;color:var(--kk-m)}
 .kk-mfoot a{color:var(--kk-p)!important;font-weight:600;letter-spacing:.04em;text-decoration:none}
}
@media (min-width:993px) and (max-width:1180px){.kk-megain{grid-template-columns:1fr}.kk-mpromo{display:none}.kk-mcols{grid-template-columns:repeat(3,1fr)}}
@media (max-width:992px){#site-navigation ul.menu>li.kk-has-mega,.kk-mega{display:none!important}}

/* ===================================================================== */
/* 22. v1.4 — MOBILE overhaul. Desktop (>=993px) is untouched except 22.1 */
/* ===================================================================== */

/* 22.1 (all widths) Button contrast: every solid olive button gets white text.
   The site-wide custom CSS paints .button olive but leaves Shoptimizer's dark text → unreadable. */
.button,a.button,button.button,input.button,input[type=submit].button,.wc-forward.button,.checkout-button,.single_add_to_cart_button,
.added_to_cart,.woocommerce-mini-cart__buttons a,.woocommerce-message .button,.woocommerce-info .button,.woocommerce-error .button,
.cart .coupon .button,button[name=update_cart],.wc-proceed-to-checkout a,#place_order,.price_slider_amount .button{color:#fff!important}
.button:hover,a.button:hover,button.button:hover,.checkout-button:hover,.single_add_to_cart_button:hover,.woocommerce-mini-cart__buttons a:hover{color:#fff!important}
/* CookieAdmin re-consent button: brand colour instead of bright blue (size/position: mobile only, below) */
.cookieadmin_re_consent{background:var(--kk-a)!important;border:0!important;box-shadow:0 0 0 2px rgba(255,255,255,.95),0 6px 16px -8px rgba(30,30,20,.45)!important}
.cookieadmin_re_consent:hover{background:var(--kk-p)!important}

.kk-fbar{display:none}
@media (max-width:992px){
 /* --- 20 filters drawer --- */
 body.filter-open #secondary{padding-bottom:0!important}
 #secondary .widget_layered_nav ul.woocommerce-widget-layered-nav-list{gap:9px!important}
 #secondary .widget_layered_nav li.wc-layered-nav-term>a,#secondary .widget_layered_nav li.wc-layered-nav-term>span:not(.count){padding:10px 0 10px 12px!important;font-size:14px!important}
 #secondary .widget_layered_nav li.wc-layered-nav-term{padding-right:12px!important}
 #secondary .widget.kk-acc>.widget-title{padding-top:6px;padding-bottom:6px;font-size:15px!important}
 /* price: visible handles + range */
 #secondary .price_slider_wrapper{padding:10px 8px 0}
 #secondary .price_slider.ui-slider{height:4px!important;background:var(--kk-l)!important;border:0!important;margin:12px 4px 22px!important;border-radius:var(--kk-r)}
 #secondary .price_slider .ui-slider-range{background:var(--kk-p)!important;height:4px!important}
 #secondary .price_slider .ui-slider-handle{width:24px!important;height:24px!important;top:-10px!important;margin-left:-12px!important;border-radius:50%!important;background:var(--kk-bg)!important;border:2px solid var(--kk-p)!important;box-shadow:0 2px 6px rgba(0,0,0,.18)!important;cursor:grab;touch-action:none}
 #secondary .price_slider_amount{display:flex!important;flex-direction:row-reverse;align-items:center;justify-content:space-between;gap:10px}
 #secondary .price_slider_amount .price_label{font-size:14px!important;color:var(--kk-p);font-weight:600;float:none!important}
 #secondary .price_slider_amount .button{min-height:40px;padding:0 16px!important;font-size:11.5px!important;float:none!important;margin:0!important}
 body.drawer-open .cookieadmin_reconsent_wrap,body.filter-open .cookieadmin_reconsent_wrap,body.mobile-toggled .cookieadmin_reconsent_wrap,body.m-search-toggled .cookieadmin_reconsent_wrap{display:none!important}
 /* sticky bottom action row */
 body.filter-open .kk-fbar{display:flex;position:sticky;bottom:0;z-index:5;gap:10px;margin:18px -20px 0;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--kk-bg);border-top:1px solid var(--kk-l);box-shadow:0 -10px 20px -16px rgba(30,30,20,.4)}
 .kk-fbar a,.kk-fbar button{flex:1 1 0;min-height:48px;display:flex;align-items:center;justify-content:center;border-radius:var(--kk-btn-r);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;text-decoration:none!important;cursor:pointer;margin:0}
 .kk-fbar .kk-fbar-go{flex:1.6 1 0;background:var(--kk-p);color:var(--kk-on-p)!important;border:0}
 #secondary .kk-fbar .kk-fbar-reset{font-size:11.5px!important;font-weight:700!important;letter-spacing:.03em!important;background:var(--kk-bg)!important;color:var(--kk-p)!important;border:1.5px solid var(--kk-p)!important;opacity:1!important}
 #secondary .kk-fbar .kk-fbar-reset.is-off{color:#9a988f!important;border-color:var(--kk-l)!important;font-weight:600!important;pointer-events:none}

}

/* 22.2 Header, cart icon, off-canvas menu, sticky filter toggle — Shoptimizer's mobile layout is <=992px */
@media (max-width:992px){
 /* homepage content CSS sets html,body.home{overflow-x:hidden} → body becomes a scroll container and position:sticky never sticks.
    overflow-x:clip still prevents sideways scroll but keeps sticky working. */
 html:has(body.home),body.home:not(.mobile-toggled):not(.drawer-open):not(.filter-open):not(.m-search-toggled){overflow-x:clip!important;overflow-y:visible!important}
 body.home header#masthead.site-header{position:sticky!important;top:0;z-index:9}
 header#masthead.site-header{background:var(--kk-bg)!important;transition:box-shadow .2s}
 body.kk-scrolled header#masthead.site-header{box-shadow:0 8px 20px -14px rgba(30,30,20,.45)!important;border-bottom:1px solid var(--kk-l)}
 /* cart icon inside the 70px header row (it was absolute without top → rendered under the header) */
 .site-header .site-header-cart{top:50%!important;bottom:auto!important;right:14px!important;transform:translateY(-50%);height:auto!important;line-height:1!important;margin:0!important}
 .site-header .site-header-cart .cart-contents{padding:8px 0 4px!important}
 .site-header .site-header-cart .cart-contents .amount{display:none!important}
 .shoptimizer-cart a.cart-contents .count{color:var(--kk-p)!important;border-color:var(--kk-p)!important;background:transparent!important;font-weight:600}
 .shoptimizer-cart a.cart-contents .count:after{border-color:var(--kk-p)!important}
 .shoptimizer-cart a.cart-contents:hover .count{background:var(--kk-p)!important;color:var(--kk-on-p)!important}
 /* hamburger: 44px tap target, centred in the row */
 .site-branding button.menu-toggle{top:50%!important;transform:translateY(-50%);height:44px!important;width:72px!important;left:6px!important}
 .site-branding button.menu-toggle .bar{left:9px}
 .site-branding button.menu-toggle .bar-text{top:50%!important;margin-top:-6px!important;margin-left:38px!important;color:var(--kk-p)}
 /* off-canvas menu: no duplicate price/yellow cart, bigger rows */
 .col-full-nav .site-header-cart{display:none!important}
 .col-full-nav .site-search{padding:6px 0 4px}
 .col-full-nav .site-search input.search-field{min-height:44px!important;border-radius:var(--kk-r)!important;font-size:15px!important}
 .col-full-nav .shoptimizer-mobile-menu ul.menu>li{border-bottom:1px solid var(--kk-l2);margin:0!important}
 .col-full-nav .shoptimizer-mobile-menu ul.menu>li>a{display:flex!important;align-items:center;min-height:50px;padding:0 44px 0 0!important;font-size:15px!important;font-weight:600!important;letter-spacing:.02em!important;line-height:1.25!important}
 .col-full-nav .shoptimizer-mobile-menu ul.menu>li>span.caret,.col-full-nav .shoptimizer-mobile-menu ul.menu>li>.caret{top:0!important;height:50px!important;width:44px!important;display:flex!important;align-items:center;justify-content:center}
 .col-full-nav .shoptimizer-mobile-menu ul.sub-menu li a{display:flex!important;align-items:center;min-height:42px;padding:0 0 0 14px!important;font-size:14px!important;color:var(--kk-t)!important}
 /* sticky "Afficher les filtres": park it right under the sticky header instead of under it */
 .mobile-filter.shoptimizer-mobile-toggle,.mobile-filter{top:var(--kk-hh,0px)!important;z-index:8!important;background:var(--kk-bg)!important;border-bottom:1px solid var(--kk-l)!important;letter-spacing:.08em!important;font-weight:600!important;color:var(--kk-p)!important}
}

/* 22.3 Everything else: phones (<=768px) */
@media (max-width:768px){
 /* --- 1/5 buttons: calmer letter-spacing, no overflow --- */
 .button,a.button,button.button,input.button,.checkout-button,.single_add_to_cart_button,.woocommerce-mini-cart__buttons a{letter-spacing:.06em!important}
 .woocommerce-message,.woocommerce-info{display:flex!important;flex-wrap:wrap;align-items:center;gap:8px 10px;font-size:13.5px}
 .woocommerce-message .button,.woocommerce-info .button{order:2;font-size:11px!important;padding:9px 12px!important;line-height:1.1!important;margin:0!important;float:none!important}
 /* product cards: equal heights, one-line buttons */
 ul.products li.product{display:flex!important;flex-direction:column}
 /* v1.5.1: no loop button any more -> theme margin-bottom (35px) on top of the grid row-gap left ~65px dead space under prices */
 ul.products li.product{margin-bottom:0!important}
 ul.products li.product .woocommerce-card__header{flex:1 1 auto;display:flex!important;flex-direction:column}
 ul.products li.product .woocommerce-card__header .price{margin-bottom:4px!important}
 ul.products li.product .woocommerce-loop-product__title{margin:8px 0 3px!important;font-size:14px!important}

 /* --- 4 cookie re-consent: small, quiet, never over the sticky bars/drawers --- */
 /* docked as a slim tab on the left screen edge (lives in the 12-15px page gutter, not over cards/titles) */
 .cookieadmin_re_consent{width:28px!important;height:32px!important;min-width:0!important;min-height:0!important;padding:0 5px 0 0!important;left:0!important;right:auto!important;top:auto!important;bottom:calc(132px + env(safe-area-inset-bottom))!important;border-radius:0 16px 16px 0!important;opacity:.96;display:flex!important;align-items:center!important;justify-content:flex-end!important;transform:translateX(-10px);transition:transform .2s;box-shadow:0 0 0 1.5px rgba(255,255,255,.95),2px 4px 12px -6px rgba(30,30,20,.45)!important}
 .cookieadmin_re_consent:focus-visible,.cookieadmin_re_consent:active{transform:none}
 .cookieadmin_re_consent img,.cookieadmin_reconsent_img{display:block!important;width:15px!important;height:15px!important;margin:0!important;padding:0!important;position:static!important;transform:none!important}
 body.kk-has-sticky-atc .cookieadmin_re_consent{bottom:calc(150px + env(safe-area-inset-bottom))!important}
 body.kk-has-sticky-atc .kk-ck-wrap{margin-bottom:4px!important}

 /* --- 6 main add-to-cart --- */
 .single-product form.cart{display:flex!important;flex-wrap:wrap;gap:10px;align-items:stretch}
 .single-product form.cart .quantity{margin:0!important;flex:0 0 auto}
 .single-product form.cart .single_add_to_cart_button{flex:1 1 0;min-width:0;width:auto!important;margin:0!important;font-size:13.5px!important;letter-spacing:.08em!important;padding:0 12px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex!important;align-items:center;justify-content:center;min-height:52px}
 .single-product form.variations_form.cart{display:block!important}
 .single-product form.variations_form .woocommerce-variation-add-to-cart{display:flex!important;gap:10px;align-items:stretch}
 .single-product form.variations_form .woocommerce-variation-add-to-cart .single_add_to_cart_button{flex:1 1 0}

 /* --- 8 mini-cart drawer: totals and buttons follow the items (no empty gap) --- */
 #shoptimizerCartDrawer .widget_shopping_cart_content{justify-content:flex-start!important;overflow-y:auto}
 #shoptimizerCartDrawer .woocommerce-mini-cart{flex:0 0 auto!important;max-height:none!important;margin-bottom:0!important}
 #shoptimizerCartDrawer .woocommerce-mini-cart__total{margin-top:0!important;padding-top:14px!important;border-top:1px solid var(--kk-l)}
 #shoptimizerCartDrawer .woocommerce-mini-cart__buttons{margin-top:0!important;padding-bottom:calc(14px + env(safe-area-inset-bottom))!important}
 #shoptimizerCartDrawer .woocommerce-mini-cart__buttons a{min-height:48px;display:flex!important;align-items:center;justify-content:center;font-size:12.5px!important}
 #shoptimizerCartDrawer .woocommerce-mini-cart__buttons a:not(.checkout){background:var(--kk-bg)!important;color:var(--kk-p)!important;box-shadow:inset 0 0 0 1px var(--kk-p)}

 /* --- 9 description / info: accordions (section 14c); product meta hidden (section 24.3) --- */
 /* --- 10 related/upsells: clean 2-up grid, max 4, light shadow --- */
 .single-product section.related ul.products,.single-product section.upsells ul.products{display:grid!important;grid-template-columns:1fr 1fr!important;gap:22px 12px!important;overflow:visible!important;transform:none!important;width:auto!important;margin:0 15px!important;padding:0!important;scroll-snap-type:none!important}
 .single-product section.related ul.products li.product,.single-product section.upsells ul.products li.product{width:auto!important;max-width:none!important;min-width:0!important;margin:0!important;padding:0!important;flex:none!important;box-shadow:none!important}
 .single-product section.related ul.products li.product:nth-child(n+5),.single-product section.upsells ul.products li.product:nth-child(n+5){display:none!important}
 .single-product section.related ul.products li.product img,.single-product section.upsells ul.products li.product img{box-shadow:0 8px 18px -16px rgba(30,30,20,.35)!important}
 .single-product section.related>h2{padding-left:15px!important;padding-right:15px!important}

 /* --- 18/19 shop toolbar + pagination --- */
 .shoptimizer-sorting:not(.sorting-end){display:flex!important;flex-direction:column;align-items:stretch;gap:8px;margin-bottom:14px}
 .shoptimizer-sorting:not(.sorting-end) .woocommerce-result-count{order:1;margin:0!important;float:none!important;font-size:12.5px;color:var(--kk-m);text-align:left;white-space:nowrap}
 .shoptimizer-sorting:not(.sorting-end) .woocommerce-ordering{order:2;margin:0!important;float:none!important;width:100%}
 .shoptimizer-sorting:not(.sorting-end) .woocommerce-ordering select{width:100%!important;min-height:44px}
 .shoptimizer-sorting:not(.sorting-end) .woocommerce-pagination{display:none!important}
 .shoptimizer-sorting.sorting-end{display:flex!important;justify-content:center;margin:26px 0 10px}
 .shoptimizer-sorting.sorting-end .woocommerce-ordering,.shoptimizer-sorting.sorting-end .woocommerce-result-count{display:none!important}
 .shoptimizer-sorting.sorting-end .woocommerce-pagination{display:block!important;float:none!important;margin:0 auto!important}
 .woocommerce-pagination ul.page-numbers{display:flex!important;gap:6px;justify-content:center;border:0!important}
 .woocommerce-pagination .page-numbers li{border:0!important}
 .woocommerce-pagination .page-numbers li a,.woocommerce-pagination .page-numbers li span{min-width:42px;height:42px;display:flex!important;align-items:center;justify-content:center;border:1px solid var(--kk-l)!important;border-radius:var(--kk-r);color:var(--kk-p)!important}
 .woocommerce-pagination .page-numbers li span.current{background:var(--kk-p)!important;border-color:var(--kk-p)!important;color:var(--kk-on-p)!important}

 /* --- 21/22/23 cart page --- */
 .woocommerce-cart button[name=update_cart]{background:transparent!important;color:var(--kk-m)!important;border:0!important;box-shadow:none!important;text-decoration:underline;text-underline-offset:3px;font-size:12px!important;font-weight:500!important;text-transform:none!important;letter-spacing:0!important;padding:6px 0!important;min-height:0!important;width:auto!important;display:block;margin:10px 0 0 auto!important}
 .woocommerce-cart button[name=update_cart][disabled]{display:none!important}
 .site ul.checkout-bar{margin-bottom:58px!important}
 .site ul.checkout-bar li span{visibility:visible!important;display:block;line-height:1.25;padding:0 4px;font-size:11px}
 .site ul.checkout-bar li,.site ul.checkout-bar li a{font-size:11px!important;color:var(--kk-p)}
 .site ul.checkout-bar li:not(.active):not(.next) span{color:var(--kk-m)}
 .woocommerce-cart ul.checkout-bar li.active:before,.woocommerce-checkout ul.checkout-bar li.active:before,.woocommerce-checkout ul.checkout-bar li.next:before{background:var(--kk-p)!important}
 ul.checkout-bar:before{background-color:var(--kk-a)!important}
 .checkout-wrap{margin-top:46px!important;margin-bottom:52px!important}
 .kk-coupon-toggle{display:inline-flex;align-items:center;gap:6px;background:none!important;border:0!important;padding:8px 0!important;color:var(--kk-p)!important;font-size:13.5px!important;font-weight:600!important;text-decoration:underline;text-underline-offset:3px;text-transform:none!important;letter-spacing:0!important;cursor:pointer;min-height:0!important;box-shadow:none!important}
 .kk-coupon-toggle::after{content:"+";font-size:16px;line-height:1;text-decoration:none;display:inline-block}
 .kk-coupon-toggle[aria-expanded=true]::after{content:"\2212"}
 .kk-coupon-wrap .coupon{display:flex!important;flex-wrap:wrap;gap:8px;margin-top:6px}
 .kk-coupon-wrap .coupon #coupon_code{flex:1 1 100%;min-height:44px;width:auto!important;margin:0!important}
 .kk-coupon-wrap .coupon .button{flex:1 1 100%;width:100%!important;min-height:44px;font-size:11.5px!important;padding:0 14px!important;margin:0!important}
 .kk-coupon-wrap.is-collapsed .coupon{display:none!important}
 .wc-proceed-to-checkout .checkout-button{font-size:14px!important;letter-spacing:.08em!important;min-height:52px}

 /* --- 11-16 homepage (content CSS lives in page 461; overridden here with higher specificity) --- */
 .kk .kk-hero .kk-eye{font-size:10px;letter-spacing:.16em;gap:10px;white-space:nowrap;margin-bottom:18px}
 .kk .kk-hero .kk-eye:before{width:22px;flex:none}
 .kk .kk-hero .kk-btns{flex-direction:column;gap:10px}
 .kk .kk-hero .kk-btns .kk-btn{width:100%;justify-content:center;box-sizing:border-box;padding:16px 18px;letter-spacing:.12em}
 .kk .kk-hero .kk-meta{flex-direction:column;gap:6px;margin-top:20px;font-size:12.5px}
 .kk .kk-cols{grid-template-columns:1fr 1fr!important;gap:12px!important}
 .kk .kk-cols .kk-col{aspect-ratio:auto!important;min-height:250px;display:flex!important;flex-direction:column;justify-content:flex-end}
 .kk .kk-cols .kk-colt{position:relative!important;padding:56px 12px 14px!important}
 .kk .kk-cols .kk-colt small{font-size:9px;letter-spacing:.16em}
 .kk .kk-cols .kk-colt h3{font-size:19px!important;line-height:1.15;margin:3px 0 6px!important;overflow-wrap:anywhere}
 .kk .kk-cols .kk-colt p{font-size:12px!important;line-height:1.45!important;margin-bottom:8px!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
 .kk .kk-cols .kk-colt span{font-size:10px;letter-spacing:.12em}
 .kk .kk-reas .kk-reasin{grid-template-columns:1fr 1fr!important}
 .kk .kk-reas .kk-ri{flex-direction:column;align-items:flex-start;gap:8px;padding:18px 14px!important;border-right:0!important;border-bottom:1px solid var(--l2,var(--kk-l2))!important}
 .kk .kk-reas .kk-ri:nth-child(odd){border-right:1px solid var(--l2,var(--kk-l2))!important}
 .kk .kk-reas .kk-ri:nth-last-child(-n+2){border-bottom:0!important}
 .kk .kk-reas .kk-ri b{font-size:12px;letter-spacing:.04em}
 .kk .kk-reas .kk-ri span{font-size:12px;line-height:1.4;display:block}
 .kk .kk-newsin>*{min-width:0}
 .kk .kk-nf{grid-template-columns:1fr!important;gap:6px;max-width:100%;box-sizing:border-box}
 .kk .kk-nf input{min-height:48px!important;width:100%!important;box-sizing:border-box}
 .kk .kk-nf button{width:100%;min-height:48px;justify-content:center}
 .kk .kk-faq summary{align-items:center!important;font-size:16.5px!important;padding:18px 0!important;gap:14px!important;text-wrap:pretty}
 .kk .kk-faq summary:after{flex:none;width:22px;text-align:center;line-height:1!important}
 .kk h1,.kk h2,.kk h3{text-wrap:balance}
 /* footer: tidy stacked layout + readable copyright */
 footer.site-footer .col-full{display:grid!important;grid-template-columns:1fr 1fr!important;gap:28px 18px!important;padding-top:6px}
 footer.site-footer .col-full>.widget{margin:0!important;padding:0!important;width:auto!important;min-width:0}
 footer.site-footer .col-full>.widget:first-child,footer.site-footer .col-full>.widget:last-child{grid-column:1/-1}
 footer.site-footer .col-full>.widget:first-child{padding-bottom:22px!important;border-bottom:1px solid rgba(255,255,255,.1)}
 footer.site-footer .col-full>.widget:last-child{padding-top:22px!important;border-top:1px solid rgba(255,255,255,.1)}
 footer.site-footer .widget-title{font-size:15px!important;margin-bottom:12px!important;display:block}
 footer.site-footer li{margin:0 0 10px!important}
 footer.site-footer li a{display:inline-block;padding:2px 0;font-size:14px}
 footer.copyright{margin-top:0!important;padding:16px 0 calc(16px + env(safe-area-inset-bottom))!important}
 footer.copyright .col-full,footer.copyright .widget,footer.copyright .textwidget{text-align:center!important;float:none!important;width:100%!important;font-size:12px!important;line-height:1.5}
 body.kk-has-sticky-atc footer.copyright{padding-bottom:20px!important}
}
.kk-coupon-toggle{display:none}
@media (max-width:768px){.kk-coupon-toggle{display:inline-flex}}

/* 23. v1.6 — layout bug sweep (overlaps, wraps, misalignments). Every rule below fixes a defect seen in qa/v16/. */
/* 23.1 Product cards: price pinned to the bottom of the card so prices line up across a row whatever the title length */
ul.products li.product{display:flex!important;flex-direction:column}
ul.products li.product .woocommerce-card__header{flex:1 1 auto;display:flex!important;flex-direction:column;align-items:stretch}
ul.products li.product .woocommerce-card__header .price{margin-top:auto!important;padding-top:2px}
.kk-grid .kk-card{display:flex;flex-direction:column}
.kk-grid .kk-card .kk-price{margin-top:auto}
/* 23.2 Related / upsells / cross-sells: same flat card as the collection grids (no boxed header, no shadow, no inset title) */
.related ul.products li.product .woocommerce-card__header,.upsells ul.products li.product .woocommerce-card__header,.cross-sells ul.products li.product .woocommerce-card__header{padding:12px 0 0!important;box-shadow:none!important;background:none!important;border:0!important}
/* 23.3 Footer copyright: the "Gérer mes cookies" line no longer squeezes the copyright text into a 70px column */
footer.copyright .col-full{flex-wrap:wrap!important;align-items:center;column-gap:24px}
footer.copyright .col-full>.widget{flex:1 1 auto!important;min-width:0;width:auto}
footer.copyright .col-full>.kk-ck-wrap{flex:0 0 auto!important;width:auto!important;margin:0!important;clear:none}
@media (max-width:768px){footer.copyright .col-full{flex-direction:column;row-gap:6px}footer.copyright .col-full>.kk-ck-wrap{margin-top:4px!important}}
.kk-ck-wrap.kk-ck-page{width:100%;padding:18px 15px calc(18px + env(safe-area-inset-bottom));text-align:center;font-size:12px;color:var(--kk-m)}
/* 23.4 Homepage full-bleed wrapper: 100vw is wider than the page when a classic scrollbar is shown (Windows/Linux):
   the whole homepage was shifted 7px left (left edge cropped, 7px strip on the right). Its parents are already full width. */
.home .entry-content>.kk{width:auto!important;left:auto!important;right:auto!important;margin-left:0!important;margin-right:0!important}
/* 23.5 Desktop nav 993-1199px: labels wrapped on two lines ("Nos / kimonos", "Kimono / femme") */
@media (min-width:993px) and (max-width:1199px){
 #site-navigation ul.menu>li>a.cg-menu-link{white-space:nowrap;padding-left:9px!important;padding-right:9px!important;letter-spacing:.02em!important;font-size:12.5px!important}
 #site-navigation ul.menu>li.kk-has-mega>a.kk-mega-top{padding:0 14px!important;margin-right:4px}
}
@media (min-width:993px){#site-navigation ul.menu>li>a.cg-menu-link{white-space:nowrap}
 /* right-aligned last plain item, without waiting for JS (the late class add shifted the bar) */
 #site-navigation ul.menu>li:last-child:not(.menu-item-has-children){margin-left:auto}
 #site-navigation ul.menu>li:last-child:not(.menu-item-has-children)>a.cg-menu-link{color:var(--kk-m)!important;font-weight:500!important}
 #site-navigation ul.menu>li:last-child:not(.menu-item-has-children)>a.cg-menu-link::after{display:none}}
/* 23.6 Mobile homepage reassurance tiles: the 16px grid gap broke the divider lines */
@media (max-width:560px){.kk-reasin{gap:0!important}}
/* 23.7 Checkout: coupon notice had no padding (text glued to its border); notes textarea used a monospace font */
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{padding:12px 16px!important;border:1px solid var(--kk-l)!important;border-left:3px solid var(--kk-a)!important;background:var(--kk-s)!important;font-size:14px;line-height:1.5;margin:0 0 16px!important}
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before{display:none!important}
textarea,select,input{font-family:inherit}
/* 23.8 Mobile breadcrumb: wraps instead of running off the right edge */
@media (max-width:768px){.woocommerce-breadcrumb{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.5}}
/* 23.9 Font-swap layout shift: metric-matched local fallbacks (measured against Arial/Liberation Sans: Raleway 400 is
   3.6% wider, 600 is 1%, Tenor Sans 8.7%), so text keeps its width and line height while the web fonts load. */
@font-face{font-family:'Raleway Fallback';font-weight:100 500;src:local('Arial'),local('ArialMT'),local('Liberation Sans'),local('LiberationSans'),local('Helvetica'),local('Roboto');size-adjust:103.6%;ascent-override:90.7%;descent-override:22.2%;line-gap-override:0%}
@font-face{font-family:'Raleway Fallback';font-weight:600 900;src:local('Arial Bold'),local('Arial-BoldMT'),local('Liberation Sans Bold'),local('LiberationSans-Bold'),local('Helvetica Bold'),local('Roboto Bold');size-adjust:101%;ascent-override:93.1%;descent-override:22.8%;line-gap-override:0%}
@font-face{font-family:'Tenor Sans Fallback';src:local('Arial'),local('ArialMT'),local('Liberation Sans'),local('LiberationSans'),local('Helvetica'),local('Roboto');size-adjust:108.7%;ascent-override:84.6%;descent-override:23%;line-gap-override:0%}
html body{font-family:var(--kk-font-b)}
html .main-navigation ul.menu>li>a,html .menu-primary-menu-container>ul>li>a{font-family:var(--kk-font-b)}
html h1,html h2,html h3,html .site-title,html .woocommerce-loop-product__title,html .product_title,html .widget-title,html .entry-title,html .site-title a,html .site-branding a{font-family:var(--kk-font-h)!important}

/* 23.10 Product cards: the theme sets align-self:flex-start on every card, so cards in a row had different heights and
   the price pinned by 23.1 still sat 22px higher under a 1-line title than under a 2-line title. */
ul.products li.product{align-self:stretch!important;height:auto!important}
/* 23.11 Desktop footer: the copyright bar was pulled 48px up into the footer (theme margin-top:-48px). Same look, no overlap. */
@media (min-width:769px){footer.copyright{margin-top:0!important}footer.site-footer{padding-bottom:16px!important}}
/* 23.12 (v1.6.1 product-meta full-bleed fix) superseded in v1.6.2: the meta block is no longer printed (24.3). */

/* ==================================================================
   24. v1.6.2 — product page: quantity + add-to-cart row, meta hidden, gallery fallback
   ================================================================== */
/* 24.1 Quantity stepper. Shoptimizer's up/down arrows (.quantity-nav) are absolutely positioned at left:49px inside a
   50px-wide .quantity, so they hung 35px outside their box and sat on top of the add-to-cart button (mobile gap 10px).
   Now the stepper is a real 86px box (field + arrows in flow) and the button fills the rest of the same row. */
.single-product form.cart:not(.variations_form),
.single-product form.variations_form .woocommerce-variation-add-to-cart{display:flex!important;flex-wrap:nowrap!important;align-items:stretch!important;gap:10px!important;width:100%!important;padding:0!important}
/* the theme's clearfix ::before/::after became 0-width flex items, so the gap pushed the row 10px in on both sides */
.single-product form.cart:not(.variations_form)::before,.single-product form.cart:not(.variations_form)::after,
.single-product form.variations_form .woocommerce-variation-add-to-cart::before,.single-product form.variations_form .woocommerce-variation-add-to-cart::after{content:none!important;display:none!important}
.single-product form.cart .quantity{display:flex!important;flex:0 0 auto!important;position:relative;width:auto!important;min-width:0!important;height:52px;margin:0!important;float:none!important;box-sizing:border-box}
.single-product form.cart .quantity input.qty{flex:0 0 52px;width:52px!important;min-width:0!important;height:52px!important;margin:0!important;padding:0 2px!important;text-align:center;box-sizing:border-box;border-top-right-radius:0!important;border-bottom-right-radius:0!important;-moz-appearance:textfield}
.single-product form.cart .quantity input.qty::-webkit-inner-spin-button,.single-product form.cart .quantity input.qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.single-product form.cart .quantity .quantity-nav{position:relative!important;left:auto!important;right:auto!important;top:auto!important;flex:0 0 34px;width:34px!important;height:52px!important;margin:0 0 0 -1px!important;transform:none!important}
.single-product form.cart .single_add_to_cart_button{flex:1 1 0!important;min-width:0!important;width:auto!important;max-width:none!important;margin:0!important;float:none!important;min-height:52px}
.single-product form.cart .quantity.hidden,.single-product form.cart .quantity[style*="display: none"],.single-product form.cart .quantity:has(input[type=hidden]){display:none!important}
/* 24.2 Sold-individually products have no stepper (input[type=hidden]): the button simply takes the full row. */
/* 24.3 Product meta (UGS / Catégorie / Étiquettes): removed server-side; CSS fallback if a plugin prints it again. */
.single-product .product_meta{display:none!important}
/* 24.4 Gallery fallback: WooCommerce keeps the gallery at opacity 0 until its slider script runs; if that script fails
   or is blocked, show the photo anyway after 3s (JS does the same check, this covers no-JS). */
@keyframes kkGalShow{to{opacity:1}}
.single-product .woocommerce-product-gallery{animation:kkGalShow .2s ease 3s forwards}

/* ==================================================================
   25. v1.6.3 — payment badges only, one-sentence intro, full-width sticky button with the price
   ================================================================== */
/* 25.1 Payment badges without the "Paiement 100 % sécurisé" line: a single tidy row right under the add-to-cart row. */
.single-product .kk-pay{margin:12px 0 0!important}
/* 25.2 Mobile sticky add-to-cart: the old separate price column is gone; the button fills the white bar
   (16px side padding) and reads "AJOUTER AU PANIER | 59,90 €" on one line. JS adds .is-tight / .is-tighter
   when a long label (e.g. "dès 129,90 €") would not fit (360px screens). */
@media (max-width:768px){
 body .kk-sticky-atc{gap:0!important;padding:10px 16px calc(10px + env(safe-area-inset-bottom))!important}
 .kk-sticky-atc .kk-sa-price{display:none!important}
 .kk-sticky-atc .kk-sa-btn{flex:1 1 100%!important;width:100%!important;gap:0!important;padding:0 12px!important;overflow:hidden}
 .kk-sticky-atc .kk-sa-lbl,.kk-sticky-atc .kk-sa-amt{white-space:nowrap;flex:0 0 auto}
 .kk-sticky-atc .kk-sa-amt{font-variant-numeric:tabular-nums}
 .kk-sticky-atc .kk-sa-was{opacity:.7;font-weight:400;text-decoration-thickness:1px}
 .kk-sticky-atc .kk-sa-btn.is-tight{font-size:12.5px!important;letter-spacing:.04em!important;padding:0 8px!important}
 .kk-sticky-atc .kk-sa-btn.is-tighter{font-size:11.5px!important;letter-spacing:.02em!important}
 .kk-sticky-atc .kk-sa-btn.is-loading .kk-sa-amt{display:none}
 .kk-sticky-atc .kk-sa-btn.is-loading::after{margin-left:10px}
}
/* 25.3 One-sentence intro under the title + price (PHP keeps only the first sentence of the short description). */
.single-product .summary .woocommerce-product-details__short-description{margin:10px 0 18px!important;padding:0!important}
.single-product .summary .woocommerce-product-details__short-description .kk-lead{margin:0!important;max-width:34em;font-size:15.5px;line-height:1.6;color:#5a5b50;letter-spacing:.005em;text-wrap:pretty}
@media (max-width:768px){.single-product .summary .woocommerce-product-details__short-description{margin:8px 0 14px!important}.single-product .summary .woocommerce-product-details__short-description .kk-lead{font-size:14.5px;line-height:1.5}}
/* 25.4 No category filter on shop / collection pages (sidebar + mobile drawer): removed server-side (15c), CSS fallback. */
.woocommerce.archive #secondary .widget_product_categories,.woocommerce.archive #secondary .widget_categories,.woocommerce.archive #secondary .wc-block-product-categories,
.post-type-archive-product #secondary .widget_product_categories,.tax-product_cat #secondary .widget_product_categories,.search #secondary .widget_product_categories{display:none!important}


/* 26. v1.7.0 — "Questions fréquentes" (same look as the Description accordions, section 14c) */
.kk-pfaq{clear:both;max-width:880px;margin:30px auto 8px;padding:0 15px;box-sizing:border-box}
.kk-pfaq .kk-pfaq-title{margin:0 0 6px!important;padding:0 2px!important;font-family:var(--kk-font-h);font-size:23px!important;font-weight:400!important;line-height:1.3!important;color:var(--kk-p)}
.kk-pfaq .kk-pacc{margin:0;padding:0;max-width:none}
.kk-pacc--faq .kk-pacc-body p{margin:0!important}
@media (max-width:768px){.kk-pfaq{margin-top:22px}.kk-pfaq .kk-pfaq-title{font-size:20px!important}}

/* 27. v1.7.0 — AJAX add-to-cart: discreet inline error; drawer full height + always closable on mobile */
.single-product form.cart .kk-atc-err{flex:1 0 100%;margin:10px 0 0!important;padding:0!important;font-size:13.5px;line-height:1.45;color:#a3342b}
.single-product form.cart .kk-atc-err[hidden]{display:none!important}
.single-product form.cart .single_add_to_cart_button.loading{opacity:.7;pointer-events:none}
#shoptimizerCartDrawer .close-drawer *{pointer-events:none}
body.drawer-open .kk-sticky-atc{visibility:hidden!important;pointer-events:none!important}
@media (max-width:768px){
 #shoptimizerCartDrawer.shoptimizer-mini-cart-wrap{top:0!important;bottom:0!important;height:100%!important;height:100dvh!important;max-height:none!important}
 #shoptimizerCartDrawer .close-drawer{display:flex!important;align-items:center;justify-content:center;min-width:44px;min-height:44px}
}

/* 28. v1.8.0 — "Complétez votre tenue" (upsells): same title scale as "Produits similaires", flat cards (section 23.2) */
.single-product section.upsells{clear:both;padding-top:0!important}
.single-product section.upsells>h2{padding-top:24px!important;margin:0 0 14px!important}
.single-product section.upsells li.product img{background:var(--kk-s);aspect-ratio:1/1;object-fit:cover;height:auto}
@media (max-width:768px){.single-product section.upsells>h2{padding-left:15px!important;padding-right:15px!important}}
/* side cart drawer: up to 3 compact cross-sells under the buttons */
.kk-mxs{margin:18px 0 6px;padding:14px 0 0;border-top:1px solid var(--kk-l)}
.kk-mxs .kk-mxs-t{margin:0 0 10px!important;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--kk-m)}
.kk-mxs .kk-mxs-l{list-style:none!important;margin:0!important;padding:0!important}
.kk-mxs .kk-mxs-i{margin:0 0 10px!important;padding:0!important;list-style:none!important;border:0!important}
.kk-mxs .kk-mxs-a{display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:12px;color:var(--kk-p)!important;text-decoration:none!important}
.kk-mxs .kk-mxs-img{width:56px!important;height:56px!important;max-width:none!important;margin:0!important;object-fit:cover;background:var(--kk-s);border-radius:var(--kk-r)}
.kk-mxs .kk-mxs-n{font-size:14px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.kk-mxs .kk-mxs-p{font-size:14px;white-space:nowrap;text-align:right}
.kk-mxs .kk-mxs-p del{display:block;font-size:12px;color:var(--kk-m);opacity:.8}
.kk-mxs .kk-mxs-p ins{text-decoration:none}

/* 29. v1.8.0 — "La collection en détail" (product-in-collection texts) + "À explorer" filter pages, under the grid */
.kk-landlinks,.kk-catguide{clear:both;max-width:880px;margin:34px auto 0;padding:0 15px;box-sizing:border-box}
.kk-landlinks .kk-ll-t{margin:0 0 10px!important;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--kk-m)}
.kk-landlinks .kk-ll-l{display:flex;flex-wrap:wrap;gap:8px}
.kk-landlinks .kk-ll-a{display:inline-block;padding:8px 14px;border:1px solid var(--kk-l);border-radius:999px;font-size:14px;line-height:1.3;color:var(--kk-p)!important;text-decoration:none!important;background:var(--kk-bg)}
.kk-landlinks .kk-ll-a:hover{border-color:var(--kk-a)}
.kk-catguide .kk-cg-t{margin:0 0 12px!important;font-family:var(--kk-font-h);font-size:23px!important;font-weight:400!important;line-height:1.3!important;color:var(--kk-p)}
.kk-catguide .kk-cg-l{list-style:none!important;margin:0!important;padding:0!important;columns:2;column-gap:40px}
.kk-catguide .kk-cg-i{break-inside:avoid;margin:0 0 16px!important;padding:0!important;list-style:none!important}
.kk-catguide .kk-cg-n{font-weight:600;font-size:15px;color:var(--kk-p)!important;text-decoration:none!important}
.kk-catguide .kk-cg-n:hover{text-decoration:underline!important}
.kk-catguide .kk-cg-d{margin:3px 0 0!important;font-size:14.5px;line-height:1.6;color:var(--kk-t)}
.kk-landing-intro p{margin:0 0 .6em}
.kk-landing-intro a{text-decoration:underline;text-underline-offset:2px}
@media (max-width:768px){.kk-catguide .kk-cg-l{columns:1}.kk-catguide .kk-cg-t{font-size:20px!important}.kk-landlinks,.kk-catguide{margin-top:26px}}

/* 30. v1.8.0 — Magazine: one readable centred column, no sidebar; archive as a clean list */
body.kk-mag.single-post #secondary{display:none!important}
body.kk-mag.single-post #primary{float:none!important;width:100%!important;max-width:760px;margin:0 auto!important}
body.kk-mag.single-post .entry-header .entry-title{font-family:var(--kk-font-h);font-weight:400;font-size:34px;line-height:1.2;color:var(--kk-p)}
body.kk-mag.single-post .entry-content{font-size:17px;line-height:1.75;color:#33352e}
body.kk-mag.single-post .entry-content h2{font-family:var(--kk-font-h);font-weight:400;font-size:25px;line-height:1.3;margin:1.8em 0 .5em;color:var(--kk-p)}
body.kk-mag.single-post .entry-content h3{font-size:19px;font-weight:600;margin:1.4em 0 .4em;color:var(--kk-p)}
body.kk-mag.single-post .entry-content a{color:var(--kk-p);text-decoration:underline;text-decoration-color:var(--kk-a);text-underline-offset:3px}
body.kk-mag.single-post .entry-content ul{margin:0 0 1.2em 1.2em}
body.kk-mag.single-post .post-thumbnail img,body.kk-mag.single-post .wp-post-image{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;background:var(--kk-s)}
body.kk-mag.archive #secondary,body.kk-mag.blog #secondary{display:none!important}
body.kk-mag.archive #primary,body.kk-mag.blog #primary{float:none!important;width:100%!important;max-width:880px;margin:0 auto!important}
body.kk-mag.archive article.post,body.kk-mag.blog article.post{padding:0 0 26px;margin:0 0 26px;border-bottom:1px solid var(--kk-l)}
body.kk-mag.archive article.post .entry-title,body.kk-mag.blog article.post .entry-title{font-family:var(--kk-font-h);font-weight:400;font-size:24px;line-height:1.3}
@media (max-width:768px){
 body.kk-mag.single-post .entry-header .entry-title{font-size:27px}
 body.kk-mag.single-post .entry-content{font-size:16.5px}
 body.kk-mag.single-post .entry-content h2{font-size:22px}
 body.kk-mag.archive article.post .entry-title,body.kk-mag.blog article.post .entry-title{font-size:21px}
}
/* "Magazine" footer link: next to the copyright when the JS moved it, otherwise a small centred line at the page end */
.kk-mag-foot{margin:0!important;padding:14px 15px;text-align:center;font-size:12px}
.kk-mag-foot a{color:inherit!important;text-decoration:underline;text-underline-offset:2px}
footer.copyright .col-full>.kk-mag-foot{flex:0 0 auto!important;width:auto!important;padding:0;clear:none}

/* ===== v1.9.0 ===== */
/* 30. Quantity tiers (product page, above quantity + add to cart) */
.single-product form.cart:not(.variations_form):has(.kk-tiers),.single-product form.variations_form .woocommerce-variation-add-to-cart:has(.kk-tiers){flex-wrap:wrap!important;row-gap:0!important}
.single-product form.cart .kk-tiers{flex:0 0 100%!important;max-width:100%;order:-1}
.kk-tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:8px;margin:4px 0 14px;width:100%;box-sizing:border-box;clear:both;float:none}
.kk-tier{display:flex!important;flex-direction:column;align-items:flex-start;gap:2px;min-height:64px;padding:10px 12px!important;margin:0!important;background:var(--kk-bg)!important;color:var(--kk-p)!important;border:1px solid var(--kk-l)!important;border-radius:var(--kk-r3)!important;box-shadow:none!important;text-align:left;font:inherit!important;text-transform:none!important;letter-spacing:0!important;cursor:pointer;position:relative;transition:border-color .15s,box-shadow .15s}
.kk-tier b{font-size:13px;font-weight:600;line-height:1.2}
.kk-tier em{position:static;align-self:flex-start;margin:1px 0 2px;font-style:normal;font-size:11px;font-weight:700;line-height:1;padding:4px 6px;border-radius:var(--kk-btn-r);background:var(--kk-shu);color:var(--kk-on-shu)}
.kk-tier .kk-tp{font-size:12.5px;color:var(--kk-m);line-height:1.2}.kk-tier .kk-tp small{font-size:11px}
.kk-tier .kk-tp .amount{color:var(--kk-p);font-weight:600}
.kk-tier:hover{border-color:var(--kk-a)!important}
.kk-tier.is-on{border-color:var(--kk-p)!important;box-shadow:inset 0 0 0 1px var(--kk-p)!important}
.kk-tier:focus-visible{outline:2px solid var(--kk-a);outline-offset:2px}
@media (max-width:420px){.kk-tier{padding:9px 9px!important}}
/* 31. "Complétez le look" bundle */
.kk-bundle{clear:both;margin:18px 0 6px;padding:16px;border:1px solid var(--kk-l);border-radius:var(--kk-r3);background:var(--kk-s)}
.kk-bd-h{font-size:15px!important;margin:0 0 12px!important;letter-spacing:.02em}
.kk-bd-items{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:start}
.kk-bd-it{display:flex;flex-direction:column;gap:6px;min-width:0}
.kk-bd-it a{color:inherit;text-decoration:none;display:flex;flex-direction:column;gap:6px}
.kk-bd-it img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:var(--kk-r);background:var(--kk-bg);margin:0!important}
.kk-bd-n{font-size:12.5px;line-height:1.35;color:var(--kk-p);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.kk-bd-plus{align-self:center;font-size:20px;color:var(--kk-m);padding-bottom:30px}
.kk-bd-var{width:100%;font-size:13px;padding:8px;min-height:40px;border:1px solid var(--kk-l);background:var(--kk-bg)}
.kk-bd-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}
.kk-bd-total{margin:0!important;font-size:15px}.kk-bd-total del{color:var(--kk-m);font-size:13px}.kk-bd-total ins{text-decoration:none;font-weight:700;color:var(--kk-p)}
.kk-bd-total em{font-style:normal;font-size:11px;font-weight:700;padding:3px 6px;border-radius:var(--kk-r);background:var(--kk-shu);color:var(--kk-on-shu);margin-left:4px}
.kk-bd-add{margin:0!important;min-height:44px;padding:10px 18px!important;background:var(--kk-p)!important;color:var(--kk-on-p)!important;border-radius:var(--kk-btn-r)!important;font-size:12px!important;letter-spacing:.08em;text-transform:uppercase}
.kk-bd-add[aria-busy=true]{opacity:.6;pointer-events:none}
.kk-bd-err{margin:8px 0 0!important;font-size:12.5px;color:#9b2c1f}
@media (max-width:480px){.kk-bd-foot{flex-direction:column;align-items:stretch}.kk-bd-add{width:100%}}
/* 32. Free-shipping suggestion + bundle saving in the drawer */
.kk-fs-sug{display:flex;align-items:center;gap:10px;margin-top:10px;padding-top:10px;border-top:1px solid var(--kk-l)}
.kk-fs-im img{width:44px;height:56px;object-fit:cover;border-radius:var(--kk-r);display:block;margin:0!important}
.kk-fs-t{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;font-size:12.5px;line-height:1.3}
.kk-fs-t small{color:var(--kk-m);font-size:11.5px}.kk-fs-t a{color:var(--kk-p)!important;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kk-fs-add{flex:0 0 auto;min-height:36px;padding:7px 12px!important;margin:0!important;font-size:11.5px!important;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--kk-p)!important;background:var(--kk-bg)!important;color:var(--kk-p)!important;border-radius:var(--kk-btn-r)!important;text-decoration:none!important;line-height:1.6;cursor:pointer}
.kk-fs-add:hover{background:var(--kk-p)!important;color:var(--kk-on-p)!important}.kk-fs-add[aria-busy=true]{opacity:.6;pointer-events:none}
.kk-mc-save{display:flex;justify-content:space-between;gap:10px;margin:0 0 10px!important;padding:8px 0;font-size:13px;color:var(--kk-p);border-bottom:1px solid var(--kk-l)}.kk-mc-save b{color:var(--kk-shu)}
/* 33. Mobile hero: image first (4:5), title + one CTA over it (front page, body.kk-mhero) */
@media (max-width:768px){
 body.kk-mhero .kk .kk-hero .kk-heroin{display:block!important;position:relative;padding:0!important;max-width:none}
 body.kk-mhero .kk .kk-hero .kk-heroin>div:first-child{position:absolute;left:0;right:0;bottom:0;z-index:3;padding:64px 20px 26px;background:linear-gradient(to top,rgba(18,20,14,.82) 0%,rgba(18,20,14,.55) 55%,rgba(18,20,14,0) 100%)}
 body.kk-mhero .kk .kk-hero h1{color:#fff!important;font-size:clamp(28px,8vw,36px)!important;line-height:1.1!important;margin:0 0 16px!important;text-shadow:0 1px 12px rgba(0,0,0,.25)}
 body.kk-mhero .kk .kk-hero .kk-eye,body.kk-mhero .kk .kk-hero .kk-lead,body.kk-mhero .kk .kk-hero .kk-meta,body.kk-mhero .kk .kk-hero .kk-btn.ghost{display:none!important}
 body.kk-mhero .kk .kk-hero .kk-btn{background:var(--kk-bg);color:var(--kk-p)!important;padding:15px 22px;min-height:48px}
 body.kk-mhero .kk .kk-hero .kk-vis{height:auto!important;aspect-ratio:4/5;max-height:calc(100svh - 120px);width:100%}
 body.kk-mhero .kk .kk-hero .kk-vis .a{position:absolute;inset:0;width:100%!important;height:100%!important;border:0!important;box-shadow:none!important}
 body.kk-mhero .kk .kk-hero .kk-vis .b,body.kk-mhero .kk .kk-hero .kk-vis .c,body.kk-mhero .kk .kk-hero .kk-kanji,body.kk-mhero .kk .kk-hero .kk-cap{display:none!important}
}
/* 34. Cookie banner (CookieAdmin "box" layout): compact bottom bar, Accept / Reject at the same level (CNIL), no vendor mention */
.cookieadmin-poweredby,.cookieadmin_law_container .cookieadmin-poweredby{display:none!important}
.cookieadmin_consent_btns{display:grid!important;grid-template-columns:1fr 1fr;gap:8px!important;margin-top:10px!important}
.cookieadmin_consent_btns .cookieadmin_reject_btn,.cookieadmin_consent_btns .cookieadmin_accept_btn{width:100%!important;margin:0!important;background:var(--kk-p)!important;color:var(--kk-on-p)!important;border:1px solid var(--kk-p)!important;border-radius:var(--kk-btn-r)!important;font-weight:600!important;min-height:40px!important}
.cookieadmin_consent_btns .cookieadmin_customize_btn{grid-column:1/-1;order:3;width:auto!important;justify-self:center;background:none!important;border:0!important;color:var(--kk-p)!important;text-decoration:underline;text-underline-offset:3px;padding:2px 4px!important;min-height:0!important;margin:0!important;font-weight:400!important}
.cookieadmin_consent_btns .cookieadmin_reject_btn{order:1}.cookieadmin_consent_btns .cookieadmin_accept_btn{order:2}
@media (max-width:768px){
 .cookieadmin_law_container{background:var(--kk-bg)!important;color:var(--kk-p)!important;box-shadow:0 -10px 30px -8px rgba(30,30,20,.28)!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;width:100%!important;max-width:none!important;transform:none!important;border-radius:10px 10px 0 0!important;padding:12px 14px calc(10px + env(safe-area-inset-bottom))!important;max-height:42vh;overflow:auto}
 .cookieadmin_law_container .cookieadmin_consent_inside{position:static!important;width:auto!important;max-width:none!important;left:auto!important;bottom:auto!important;padding:0!important;box-shadow:none!important;border-radius:0!important}
 #cookieadmin_notice_title{font-size:13px!important;margin:0 0 2px!important}
 #cookieadmin_notice,.cookieadmin_notice_con p{font-size:12px!important;line-height:1.4!important;margin:0!important}
 .cookieadmin_consent_btns{margin-top:8px!important}
 body.kk-has-sticky-atc .cookieadmin_law_container{bottom:0!important}
}
/* 35. French 404, legal links, contrast (audit A9/A10/A14) */
.kk-404{padding:48px 0 32px}.kk-404in{max-width:640px;margin:0 auto;padding:0 20px;text-align:center}
.kk-404-code{font-size:64px;line-height:1;margin:0 0 8px!important;color:var(--kk-l);font-weight:700;letter-spacing:.05em}
.kk-404 h1{font-size:clamp(26px,4vw,36px);margin:0 0 12px}
.kk-404in>p{color:var(--kk-m)}
.kk-404-s{display:flex;gap:8px;max-width:460px;margin:20px auto}
.kk-404-s input[type=search]{flex:1;min-height:46px;padding:0 14px;border:1px solid var(--kk-l)}
.kk-404-s button{min-height:46px;padding:0 18px;background:var(--kk-p);color:var(--kk-on-p);border:0}
.kk-404-cats{list-style:none;margin:16px 0 24px!important;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.kk-404-cats a{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border:1px solid var(--kk-l);border-radius:20px;color:var(--kk-p);text-decoration:none;font-size:13px}
.kk-404-cats a:hover{border-color:var(--kk-p)}
.kk-404 .kk-404-home{display:inline-flex;align-items:center;min-height:44px;padding:0 22px;border:1px solid var(--kk-p);color:var(--kk-p)!important;background:var(--kk-bg);text-decoration:none;font-size:13px;letter-spacing:.06em;text-transform:uppercase}
.kk-404 .kk-404-home:hover{background:var(--kk-p);color:var(--kk-on-p)!important}
.kk-404 .kk-404-code{color:#8a877c}
.kk-404-pop{max-width:1170px;margin:36px auto 0;padding:0 20px}.kk-404-pop h2{font-size:20px;text-align:center;margin-bottom:18px}
.kk-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 16px;padding:14px 15px;font-size:12px;text-align:center}
.kk-legal a{color:inherit!important;opacity:.85;text-decoration:underline;text-underline-offset:2px}.kk-legal a:hover{opacity:1}
footer.copyright .col-full>.kk-legal{flex:1 1 100%;padding:6px 0 0;order:5}
:root{--kk-m:#66645b}
.site-header-cart .cart-contents .count{background-color:var(--kk-p)!important;color:var(--kk-on-p)!important;border-color:var(--kk-p)!important}
#secondary .widget_layered_nav li .count,.widget_layered_nav .count{color:#66645b!important}
@media (max-width:992px){#secondary .widget_layered_nav li.wc-layered-nav-term>a{min-height:44px}}

/* 35.1 v1.9.0 offer lines in mini-cart / drawer: "Remise quantité : −10 %" on one compact line */
.widget_shopping_cart dl.variation{margin:2px 0 4px!important;font-size:12px!important;line-height:1.35}
.widget_shopping_cart dl.variation dt,.widget_shopping_cart dl.variation dd{display:inline!important;float:none!important;margin:0!important;padding:0!important;font-weight:400!important;color:var(--kk-m)}
.widget_shopping_cart dl.variation dd p{display:inline!important;margin:0!important}
.widget_shopping_cart dl.variation dd::after{content:"";display:block}

/* v1.9.3 — no visible qty stepper on product pages (body.kk-noqty): the input stays in the form (WooCommerce posts it,
   the offer tiers set it), visually hidden; the add-to-cart button takes the whole row. Sticky bar has no stepper. */
body.kk-noqty.single-product form.cart{position:relative}
body.kk-noqty.single-product form.cart .quantity{position:absolute!important;width:1px!important;height:1px!important;min-width:0!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;opacity:0!important;pointer-events:none!important}
body.kk-noqty.single-product form.cart .single_add_to_cart_button,body.kk-noqty.single-product form.variations_form .woocommerce-variation-add-to-cart .single_add_to_cart_button{flex:1 1 100%!important;width:100%!important;max-width:none!important;margin:0!important}