/* Tout à Portée retail tokens and responsive components. */
:root{--sf-accent:#0F3D6E;--sf-ink:#0B1528;--sf-surface:#F7F7F5;--sf-soft:#F5EDEE;--sf-muted:#5E5E62;--sf-line:#E2E1DE;--sf-width:1280px;--sf-radius:8px}
body.sf-store{font-size:16px;line-height:1.65}
.sf-container{width:min(calc(100% - 64px),var(--sf-width))}
a,button,input,select,textarea,summary{touch-action:manipulation}
.sf-store h1,.sf-store h2,.sf-store h3{letter-spacing:-.035em}
.sf-store p,.sf-store li{overflow-wrap:break-word}
.sf-announcement{background:var(--sf-ink);font-size:12px}
.sf-header-main{min-height:84px;gap:32px}
.sf-brand{font-size:27px;letter-spacing:-.05em;white-space:nowrap}
.sf-brand-accent{color:var(--sf-accent)}
.sf-search{border-radius:8px}
.sf-search input[type=search]{font-size:16px!important}
.sf-navigation a,.sf-nav-departments>summary{font-size:13px;min-height:44px}
.sf-navigation>.sf-container{gap:0 23px}
.sf-cart-count{font-size:11px}
.sf-help{font-size:13px}
.sf-eyebrow{font-size:12px;letter-spacing:.11em}
.sf-store .button,.sf-store.woocommerce a.button,.sf-store.woocommerce button.button{border-radius:7px;font-size:15px;min-height:48px}
.sf-store .button:disabled,.sf-store .button.disabled{box-shadow:none;cursor:not-allowed;opacity:.6}
.sf-store .button[aria-busy=true]{opacity:.7;cursor:wait}
.sf-text-link{font-size:14px;min-height:44px}
.sf-hero{gap:48px;padding-block:40px 48px}
.sf-hero h1{font-size:clamp(40px,4.5vw,62px);line-height:1.05;letter-spacing:-.055em}
.sf-hero-description{font-size:17px;line-height:1.65}
.sf-hero-note{font-size:13px}
.sf-hero-label{font-size:12px}
.sf-hero-media{border-radius:12px;background:var(--sf-surface)}
.sf-hero-caption{color:var(--sf-ink);padding:20px 24px;border-top:1px solid var(--sf-line)}
.sf-hero-caption small{font-size:12px;opacity:1;color:var(--sf-muted)}
.sf-hero-caption strong{font-size:17px}
.sf-hero-image{aspect-ratio:1.25}
.sf-section{padding-block:56px}
.sf-section-heading h2{font-size:clamp(28px,3vw,38px)}
.sf-section-heading>a{font-size:14px;min-height:44px}
.sf-category{border-radius:9px}
.sf-category-grid{gap:16px}
.sf-category-image{aspect-ratio:1.15;padding:20px}
.sf-category h3{font-size:15px}
.sf-category-count{font-size:12px}
.sf-category>div.sf-category-meta:last-child{min-height:100px;gap:3px 10px;padding:16px}
.sf-benefits{gap:24px;padding-block:24px}
.sf-benefit{padding-inline:16px}
.sf-benefit strong{font-size:14px}
.sf-benefit span,.sf-benefit p{font-size:13px}
.sf-guide{padding-block:48px;gap:64px}
.sf-guide-copy>p:not(.sf-eyebrow),.sf-guide-steps p{font-size:16px}
.sf-guide-steps h3{font-size:20px}
.sf-faq-items summary{font-size:16px;min-height:56px}
.sf-faq-items details>div,.sf-faq-items details>p{font-size:15px}
.sf-footer{color:#D4D4D6;background:var(--sf-ink);padding-top:48px;font-size:14px}
.sf-footer-grid{gap:40px;grid-template-columns:1.3fr 1fr 1fr 1fr}
.sf-footer h2{font-size:12px;letter-spacing:.08em;margin-bottom:18px}
.sf-footer li a{display:inline-block;min-height:32px}
.sf-footer .sf-brand{font-size:26px}
.sf-footer-brand>p,.sf-footer address{font-size:13px;line-height:1.7}
.sf-footer-bottom{font-size:12px}
.sf-commerce{padding-top:20px}
.woocommerce-breadcrumb{font-size:12px;line-height:1.5;margin-bottom:24px;padding-bottom:16px}
.woocommerce div.sf-retail-product{display:block}
.sf-product-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);grid-template-rows:auto 1fr;gap:0 48px;align-items:start}
.sf-product-layout>*{min-width:0}
.sf-product-heading{grid-column:2;grid-row:1;padding-top:4px}
.woocommerce div.product .sf-product-layout>.woocommerce-product-gallery{grid-column:1;grid-row:1/3;width:100%;float:none;margin:0;position:relative!important;top:auto;border:1px solid var(--sf-line);border-radius:10px;overflow:hidden}
.woocommerce div.product .sf-product-layout>.summary{grid-column:2;grid-row:2;width:100%;float:none;margin:0;padding-top:10px}
.woocommerce div.product .product_title{font-size:clamp(28px,2.7vw,38px);line-height:1.17;letter-spacing:-.04em;margin:0 0 14px}
.sf-product-topline{font-size:12px;gap:10px 16px;letter-spacing:.04em;margin-bottom:12px}
.sf-product-condition,.sf-product-topline .stock{font-size:12px!important;letter-spacing:0}
.sf-product-identifiers{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13px;line-height:1.5;border:0;margin:0;padding:0 0 8px}
.sf-product-identifiers span:last-child:first-child{margin:0}
.woocommerce div.product .summary>.price{font-size:36px;line-height:1.2;letter-spacing:-.04em;margin:4px 0 16px;font-variant-numeric:tabular-nums}
.woocommerce-product-details__short-description{font-size:16px;line-height:1.55;margin-bottom:16px}
.woocommerce-product-details__short-description p:last-child{margin-bottom:0}
.sf-offer-delivery{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.5;margin:18px 0}
.sf-offer-exclusion{font-size:14px;font-weight:650;line-height:1.5;padding:10px 12px;margin:0 0 14px;background:var(--sf-surface);border:1px solid var(--sf-line);border-radius:6px}
.sf-offer-delivery>svg{width:21px;height:21px;margin-top:2px;color:var(--sf-ink)}
.sf-offer-delivery a{text-decoration:none;font-weight:600}
.sf-offer-delivery a span{display:block;font-size:12px;font-weight:400;color:var(--sf-muted);text-decoration:underline;text-underline-offset:3px;margin-top:3px}
.woocommerce div.product form.cart{margin:18px 0 14px;gap:12px}
.quantity .qty{border-radius:7px;min-height:52px;font-size:16px}
.sf-store .single_add_to_cart_button{border-radius:7px!important;min-height:52px!important;font-size:16px!important;font-weight:700}
.sf-offer-support{display:grid;gap:10px;margin-top:18px}
.sf-offer-support a{display:flex;gap:10px;align-items:center;font-size:13px;text-decoration:none;min-height:32px}
.sf-offer-support a:hover span{text-decoration:underline}
.sf-offer-support svg{height:18px;width:18px;color:var(--sf-muted)}
.sf-offer-seller{font-size:12px;color:var(--sf-muted);margin:14px 0 0}
.sf-product-highlights{gap:12px 24px;padding:18px 0;margin:20px 0 0;border-bottom:0}
.sf-product-highlights dt{font-size:12px;line-height:1.5}
.sf-product-highlights dd{font-size:14px;line-height:1.5}
.woocommerce-product-gallery__image img{padding:24px;object-fit:contain}
.woocommerce-product-gallery .flex-control-thumbs{padding:12px;gap:8px;display:flex;overflow-x:auto;scrollbar-width:thin}
.woocommerce-product-gallery .flex-control-thumbs li{flex:0 0 64px;min-width:64px;max-width:72px}
.woocommerce-product-gallery .flex-control-thumbs img{height:64px;width:64px;object-fit:contain;border-radius:5px}
.sf-product-jumpnav{margin-top:36px;gap:28px;padding:10px 0}
.sf-product-jumpnav a{font-size:14px;min-height:44px;display:inline-flex;align-items:center}
.sf-product-section{padding-block:36px}
.sf-product-section-heading h2,.sf-product-section>h2{font-size:28px;line-height:1.2;margin-bottom:20px}
.sf-product-section-heading .sf-eyebrow{display:none}
.sf-product-main-description{font-size:16px;line-height:1.75}
.sf-product-description-body{max-width:920px}
.sf-product-description-body>ul{margin:24px 0}
.sf-product-description-body>ul>li{margin-bottom:12px}
.sf-product-main-description h2{font-size:26px;margin-top:32px}
.sf-product-main-description p,.sf-product-main-description li{font-size:16px}
.sf-product-main-description .sf-specifications{font-size:15px;display:table;table-layout:fixed;margin-block:20px}
.sf-product-main-description .sf-specifications th{width:44%;font-weight:600}
.sf-product-main-description .sf-specifications th,.sf-product-main-description .sf-specifications td{padding:16px;min-width:0;overflow-wrap:anywhere;line-height:1.6}
.sf-product-main-description .sf-specifications-source{font-size:14px;line-height:1.6;margin:0 0 20px}
.sf-product-help-grid h3{font-size:19px}
.sf-product-help-grid p{font-size:15px}
.sf-product-help-grid .sf-text-link{font-size:14px}
.sf-package-section{padding:28px;background:var(--sf-surface);border:1px solid var(--sf-line);border-radius:10px;margin:12px 0 24px}
.sf-package-section p{font-size:16px;max-width:850px}
.sf-sticky-purchase{display:none}
.woocommerce ul.products li.sf-product-card{border-radius:9px}
.sf-card-image{aspect-ratio:1.15;padding:20px}
.sf-card-meta,.sf-card-meta span:last-child:not(:first-child){font-size:11px;letter-spacing:0}
.sf-card-meta{flex-wrap:wrap;gap:6px}
.sf-card-content .sf-stock{font-size:11px}
.woocommerce ul.products li.product .sf-card-price .price{font-size:24px;font-variant-numeric:tabular-nums}
.sf-card-content{padding:0 18px 18px}
.sf-card-reference{font-size:12px;line-height:1.5;color:var(--sf-muted);margin:-5px 0 12px;overflow-wrap:anywhere}
.sf-card-specs dt{font-size:12px}
.sf-card-specs dd{font-size:13px}
.woocommerce ul.products li.product .button{font-size:14px;min-height:46px;border-radius:6px}
.sf-catalog-header{padding-top:4px;gap:40px}
.sf-catalog-header h1{font-size:clamp(32px,4vw,48px)}
.sf-catalog-header p{font-size:16px}
.sf-catalog-image{max-height:190px}
.sf-catalog-filters label,.sf-filter-price>span{font-size:13px}
.sf-catalog-filters input,.sf-catalog-filters select{font-size:16px!important;min-height:48px}
.sf-collection-chips a{font-size:13px;min-height:44px;border-radius:6px}
.sf-catalog-toolbar details>summary{font-size:15px;min-height:44px}
.sf-active-filters{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:16px;font-size:13px;line-height:1.4}
.sf-active-filters>span{font-weight:600;margin-right:4px}
.sf-active-filters a{display:inline-flex;align-items:center;gap:12px;min-height:44px;max-width:100%;padding:9px 12px;border:1px solid var(--sf-line);border-radius:6px;background:var(--sf-surface);text-decoration:none;overflow-wrap:anywhere}
.sf-active-filters a:hover{border-color:var(--sf-accent)}
.sf-active-filters a>span:first-child{min-width:0}
.sf-active-filters a>span:last-child{font-size:20px;line-height:1;flex-shrink:0}
.woocommerce-result-count,.woocommerce-ordering select{font-size:14px}
.sf-results-toolbar .woocommerce-ordering select{min-height:44px;font-size:14px}
.sf-page-content{font-size:16px}
.sf-page-content input,.sf-page-content select,.sf-page-content textarea{font-size:16px}
.sf-store .woocommerce-error{border-color:#b42332;background:#fff4f5;color:#8d1a27}
.sf-store .woocommerce-message{border-color:#28734b;background:#f1faf4;color:#215e3e}
@media(max-width:980px){
 .sf-header-main{gap:16px;padding-block:12px}
 .sf-footer-grid{gap:32px;grid-template-columns:repeat(2,minmax(0,1fr))}
 .sf-product-layout{gap:0 28px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .woocommerce div.product .product_title{font-size:29px}
 .sf-product-identifiers{font-size:12px}
 .sf-product-topline{font-size:11px}
 .sf-product-topline .sf-stock{font-size:11px}
 .sf-product-layout>.summary{padding-top:8px}
 .sf-benefits{gap:12px}
 .sf-benefit{padding-inline:12px}
 .sf-benefit strong{font-size:13px}
 .sf-benefit span{font-size:12px}
 .sf-guide{gap:36px}
}
@media(max-width:700px){
 .sf-container{width:calc(100% - 32px)}
 .sf-announcement{font-size:11px;line-height:1.4}
 .sf-announcement>.sf-container{padding-block:6px;justify-content:center}
 .sf-header-main{gap:8px;min-height:0;padding-block:9px 10px}
 .sf-brand{font-size:24px;max-width:none}
 .sf-header-actions{gap:4px}
 .sf-icon-link{min-height:40px;min-width:40px}
 .sf-search{flex-basis:100%;min-height:44px;margin:0}
 .sf-search input[type=search]{padding:8px 12px;min-height:42px}
 .sf-search button{min-height:42px;padding:8px 12px}
 .sf-navigation>.sf-container{padding-block:8px}
 .sf-navigation a,.sf-nav-departments>summary{font-size:14px}
 .sf-hero{padding-block:28px;gap:22px}
 .sf-hero-copy{padding:0}
 .sf-hero h1{font-size:39px;margin-bottom:18px}
 .sf-hero-description{font-size:16px;margin-bottom:20px}
 .sf-hero-actions{gap:12px}
 .sf-hero-actions>a:not(.button){font-size:14px;min-height:44px}
 .sf-hero-note{font-size:12px;margin-top:16px}
 .sf-hero-image{aspect-ratio:1.4}
 .sf-hero-caption{padding:16px}
 .sf-section{padding-block:36px}
 .sf-section-heading{gap:12px;margin-bottom:22px}
 .sf-section-heading h2{font-size:28px}
 .sf-section-heading>a{font-size:13px}
 .sf-category-image{padding:16px;aspect-ratio:1.2}
 .sf-category>div.sf-category-meta:last-child{padding:14px;min-height:100px}
 .sf-category h3{font-size:14px;line-height:1.4}
 .sf-category-count{font-size:12px;margin-top:8px}
 .sf-benefits{gap:16px;padding-block:22px}
 .sf-benefit strong{font-size:14px}
 .sf-benefit span{font-size:13px}
 .sf-guide{padding-block:32px;gap:24px}
 .sf-guide-copy h2{font-size:28px}
 .sf-guide-copy>p:not(.sf-eyebrow),.sf-guide-steps p{font-size:15px}
 .sf-faq{gap:24px;padding-block:36px}
 .sf-faq-heading h2{font-size:28px}
 .sf-footer{padding-top:36px;font-size:14px}
 .sf-footer-grid{gap:30px 20px}
 .sf-footer h2{font-size:12px;margin-bottom:16px}
 .sf-footer-bottom{font-size:12px}
 .sf-commerce{padding-top:14px;padding-bottom:40px}
 .woocommerce-breadcrumb{font-size:11px;line-height:1.5;margin:0 0 14px;padding:0;border:0}
 .sf-product-layout{display:flex;flex-direction:column;gap:0}
 .sf-product-heading{order:0;width:100%;padding:0}
 .sf-product-topline{font-size:11px;margin-bottom:8px;gap:6px 12px}
 .sf-product-condition{font-size:11px!important}
 .woocommerce div.product .product_title{font-size:25px;line-height:1.16;letter-spacing:-.035em;margin-bottom:9px}
 .sf-product-identifiers{font-size:12px;gap:5px 12px;padding-bottom:14px;margin:0}
 .woocommerce div.product .sf-product-layout>.woocommerce-product-gallery{order:1;border-radius:8px;margin:0 0 14px;width:100%}
 .sf-product-layout .woocommerce-product-gallery__image img{height:242px!important;width:100%;object-fit:contain;padding:12px}
 .sf-product-layout .woocommerce-product-gallery__image .zoomImg{display:none!important}
 .sf-product-layout .flex-viewport{height:242px!important}
 .woocommerce-product-gallery .flex-control-thumbs{padding:8px;gap:8px}
 .woocommerce-product-gallery .flex-control-thumbs li{flex-basis:44px;min-width:44px;max-width:48px}
 .woocommerce-product-gallery .flex-control-thumbs img{width:44px;height:44px}
 .woocommerce div.product .sf-product-layout>.summary{order:2;padding:0;width:100%}
 .woocommerce div.product .summary>.price{font-size:32px;margin:0 0 12px}
 .woocommerce-product-details__short-description{font-size:15px;line-height:1.55;margin:0 0 14px}
 .sf-offer-delivery{font-size:13px;line-height:1.5;margin:14px 0;gap:10px}
 .sf-offer-delivery a span{font-size:12px}
 .woocommerce div.product form.cart{margin:14px 0 12px}
 .sf-offer-support{gap:8px;margin-top:14px}
 .sf-offer-support a{font-size:13px;min-height:32px}
 .sf-offer-seller{font-size:12px}
 .sf-product-highlights{padding:16px 0;margin-top:18px;gap:16px}
 .sf-product-highlights dt{font-size:12px}
 .sf-product-highlights dd{font-size:14px}
 .sf-product-jumpnav{margin-top:24px;gap:22px;padding:8px 0}
 .sf-product-jumpnav a{font-size:13px;min-height:44px}
 .sf-product-section{padding-block:28px}
 .sf-product-section-heading h2,.sf-product-section>h2{font-size:25px;margin-bottom:18px}
 .sf-product-main-description,.sf-product-main-description p,.sf-product-main-description li{font-size:16px;line-height:1.7}
 .sf-product-main-description h2{font-size:24px}
 .sf-product-main-description .sf-specifications{font-size:14px}
 .sf-product-main-description .sf-specifications th,.sf-product-main-description .sf-specifications td{padding:12px 10px}
 .sf-package-section{padding:20px;margin-top:8px}
 .sf-product-help-grid p{font-size:15px}
 .sf-product-help-grid .sf-text-link{font-size:14px}
 .sf-sticky-purchase{position:fixed;bottom:0;left:0;right:0;z-index:45;display:flex;align-items:center;gap:16px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--sf-line);background:#fff;box-shadow:0 -6px 24px #0B15280c}
 .sf-sticky-purchase>div{min-width:0;flex:1}
 .sf-sticky-title{display:block;font-size:12px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
 .sf-sticky-price{font-size:19px;font-weight:750;letter-spacing:-.025em;font-variant-numeric:tabular-nums}
 .sf-sticky-price del{font-size:12px;color:var(--sf-muted)}
 .sf-sticky-purchase .button{font-size:14px;padding:12px 16px;min-height:48px;flex-shrink:0}
 body.single-product{padding-bottom:84px}
 .sf-card-image{padding:12px;aspect-ratio:1}
 .sf-card-content{padding:0 12px 12px}
 .sf-card-meta,.sf-card-meta span:last-child:not(:first-child),.sf-card-content .sf-stock{font-size:11px}
 .woocommerce-loop-product__title,.woocommerce div.product .related h2.woocommerce-loop-product__title{font-size:15px;line-height:1.45}
 .woocommerce ul.products li.product .sf-card-price .price{font-size:22px;line-height:1.25}
 .sf-card-price{margin-bottom:14px}
 .sf-card-specs{margin-bottom:16px}
 .sf-card-specs dt{font-size:12px}
 .sf-card-specs dd{font-size:13px}
 .woocommerce ul.products li.product .button{font-size:13px;min-height:44px;padding:10px}
 .sf-catalog-header h1{font-size:32px}
 .sf-catalog-header p{font-size:15px}
 .sf-catalog-image{display:none}
 .sf-collection-chips a{font-size:13px}
 .sf-catalog-filters label{font-size:13px}
 .sf-results-toolbar .woocommerce-ordering select{font-size:14px}
 .sf-page{padding-block:30px 44px}
 .sf-page-title{font-size:32px}
}
@media(max-width:359px){
 .sf-container{width:calc(100% - 24px)}
 .sf-brand{font-size:22px}
 .sf-header-actions{gap:0}
 .sf-icon-link{min-width:36px}
 .sf-sticky-purchase{padding-inline:12px;gap:10px}
 .sf-sticky-purchase .button{font-size:13px;padding:12px}
 .woocommerce div.product .product_title{font-size:23px}
 .sf-card-specs{display:none}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

.sf-hero-image{display:block}.sf-hero-product-price{display:block;font-size:22px;font-weight:750;margin-top:10px;font-variant-numeric:tabular-nums}.sf-hero-product-price ins{text-decoration:none}

.tap-consent-open .sf-sticky-purchase{display:none!important}

/* The delivery notice remains visible after changing it to a policy link. */
@media(max-width:980px){.sf-announcement>.sf-container>a:first-child{display:block}}

.tap-manufacturer-specs{padding:clamp(20px,3vw,36px);border:1px solid var(--sf-line);border-radius:16px;background:#fff;margin:0 0 24px}.tap-manufacturer-specs dl{margin:0}.tap-manufacturer-specs dl>div{display:grid;grid-template-columns:minmax(120px,1fr) 2fr;gap:18px;padding:12px 0;border-bottom:1px solid #e4e3e0}.tap-manufacturer-specs dt{font-weight:650}.tap-manufacturer-specs dd{margin:0}.tap-manufacturer-source{font-size:14px;margin:20px 0 0}
