/* Tout à Portée — the everyday collection. */
:root{--sf-accent:#0F3D6E;--sf-ink:#0B1528;--sf-surface:#f8f7f3;--sf-soft:#EEF4FB;--sf-muted:#68625D;--sf-line:#DCE4F0;--sf-width:1360px;--tap-ease:cubic-bezier(.22,1,.36,1)}
html{scroll-padding-top:32px}
body.sf-store{color:var(--sf-ink);background:#fff;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}
.sf-store h1,.sf-store h2,.sf-store h3,.sf-brand{font-family:StoreFont,system-ui,sans-serif;font-weight:700;letter-spacing:-.04em}
.sf-container{width:min(calc(100% - 80px),var(--sf-width))}
.sf-announcement{background:var(--sf-ink);font-size:11px;letter-spacing:.02em;font-weight:500}
.sf-announcement>.sf-container{padding-block:9px}
.sf-header-main{min-height:96px;gap:40px}
.sf-brand{font-size:29px;letter-spacing:-.06em}
.sf-brand-accent{color:var(--sf-accent)}
.sf-search{max-width:610px;border:1px solid #d6dfe5;border-radius:8px;background:#EEF4FB;transition:border-color .2s,box-shadow .2s}
.sf-search input[type=search]{padding:15px 19px;font-size:14px!important}
.sf-search button{background:var(--sf-ink);color:#fff;margin:5px;border-radius:5px;width:42px;height:42px;padding:10px;display:grid;place-items:center}
.sf-search:focus-within{outline:0;box-shadow:0 0 0 3px #0F3D6E22;border-color:var(--sf-accent)}
.sf-header-actions{gap:22px}.sf-help{font-size:12px}
.sf-navigation{border-top:1px solid #EBF0F7}.sf-navigation>.sf-container{gap:32px;min-height:53px}
.sf-navigation a{font-size:12px;position:relative}
.sf-navigation a::after{content:"";position:absolute;bottom:7px;left:0;right:0;height:2px;background:var(--sf-accent);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--tap-ease)}
.sf-navigation a:hover{text-decoration:none}.sf-navigation a:hover::after,.sf-navigation a[aria-current=page]::after{transform:scaleX(1)}
.sf-store .button,.sf-store.woocommerce a.button,.sf-store.woocommerce button.button{border-radius:7px;min-height:50px;padding:14px 22px;transition:background .2s,box-shadow .2s,transform .25s var(--tap-ease);font-size:14px}
.sf-store .button:hover{filter:none;background:#0A2B4E;box-shadow:0 6px 18px #0F3D6E2E;transform:translateY(-2px)}
.sf-store .button:active{transform:translateY(0)}
.sf-store .button svg,.sf-text-link svg,.sf-section-heading>a svg{transition:transform .25s var(--tap-ease)}
.sf-store .button:hover svg,.sf-text-link:hover svg,.sf-section-heading>a:hover svg{transform:translateX(4px)}
.sf-eyebrow{font-size:11px;letter-spacing:.14em;font-weight:700;color:var(--sf-accent)}
.tap-hero{grid-template-columns:1fr 1fr;gap:64px;padding-block:50px 54px;align-items:center}
.tap-hero .sf-hero-copy{max-width:590px;padding-block:24px}
.tap-hero .sf-eyebrow{display:flex;gap:12px;align-items:center;margin-bottom:25px;font-size:10px}
.tap-eyebrow-line{display:inline-block;width:28px;height:2px;background:var(--sf-accent)}
.tap-hero h1{font-size:clamp(40px,4.65vw,68px);line-height:1.045;letter-spacing:-.055em;margin-bottom:26px}
.tap-hero h1 span{color:var(--sf-accent)}
.tap-hero .sf-hero-description{font-size:16px;line-height:1.8;max-width:470px;margin-bottom:29px}
.tap-hero .sf-hero-actions{gap:24px}.tap-hero .sf-text-link{font-size:12px}
.tap-hero-points{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:29px;font-size:11px;color:var(--sf-ink)}
.tap-hero-points>span{display:flex;gap:7px;align-items:center}.tap-hero-points svg{width:16px;height:16px}
.tap-hero .sf-hero-note{font-size:10px;color:var(--sf-muted);margin:11px 0 0}
.tap-product-stage{position:relative;border-radius:16px;background:#EEF4FB;overflow:hidden;isolation:isolate;border:1px solid #E6D9CC;box-shadow:0 20px 45px #0B15280A}
.tap-stage-label{position:absolute;top:24px;left:26px;font-size:9px;letter-spacing:.15em;font-weight:650;z-index:2}
.tap-stage-circle{position:absolute;top:11%;left:14%;width:76%;aspect-ratio:1;border-radius:50%;background:#F5DFD3;z-index:-1}
.tap-stage-circle::after{content:"";position:absolute;inset:-28px;border:1px solid #E8C5B0;border-radius:50%}
.tap-product-stage .sf-hero-image{display:block;aspect-ratio:1.24;background:transparent;padding:50px 24px 8px;border-radius:0}
.tap-product-stage .sf-hero-image img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(8px 16px 12px #0B15281A);mix-blend-mode:multiply;transition:transform 1.1s var(--tap-ease)}
.tap-product-stage:hover .sf-hero-image img{transform:translateY(-7px) rotate(-2deg)}
.tap-stage-note{position:absolute;top:42%;right:6%;font-size:10px;line-height:1.65;background:#ffffffea;box-shadow:0 5px 18px #0B15280D;border:1px solid #fff;border-radius:9px;padding:12px 14px;transform:rotate(3deg);pointer-events:none}
.tap-stage-note svg{display:block;width:20px;height:20px;color:var(--sf-accent);margin-bottom:7px}
.tap-stage-note strong{font-size:11px}
.tap-product-stage .sf-hero-caption{background:var(--sf-ink);color:#fff;border:0;padding:19px 24px;position:relative;z-index:2}
.tap-product-stage .sf-hero-caption>span{display:grid;grid-template-columns:1fr auto;column-gap:15px;align-items:center;width:100%}
.tap-product-stage .sf-hero-caption small{color:#afc2ce;font-size:10px;letter-spacing:.06em;grid-column:1/-1;margin-bottom:3px}
.tap-product-stage .sf-hero-caption strong{font-size:14px;line-height:1.5;max-width:290px}
.tap-product-stage .sf-hero-product-price{color:#fff;font-size:17px;white-space:nowrap;margin:0}
.tap-product-stage .sf-hero-caption>svg{width:17px;margin-left:16px}
.sf-benefits{border-top:1px solid var(--sf-line);border-bottom:1px solid var(--sf-line);gap:0;padding-block:23px}
.sf-benefit{padding-inline:30px;gap:16px}.sf-benefit:first-child{padding-left:0}
.sf-benefit>svg{width:25px;height:25px;color:var(--sf-accent)}
.sf-benefit strong{font-size:13px;margin-bottom:3px}.sf-benefit span{font-size:11px;line-height:1.6;color:var(--sf-muted)}
.sf-section{padding-block:66px}.sf-section-heading{margin-bottom:30px;gap:30px}
.sf-section-heading h2{font-size:clamp(28px,3vw,40px);max-width:750px;line-height:1.12}
.sf-section-heading>a{font-size:12px;white-space:nowrap}
.sf-category-grid{gap:17px}.sf-category{background:#EEF4FB;border:1px solid #EBF0F7;border-radius:11px;overflow:hidden;transition:transform .35s var(--tap-ease),border-color .2s,box-shadow .3s}
.sf-category:hover{transform:translateY(-5px);border-color:#DFC7B5;box-shadow:0 12px 22px #0B15280D}
.sf-category-image{aspect-ratio:1.22;background:#EEF4FB;padding:22px;border-radius:0}
.sf-category-image img{mix-blend-mode:multiply;object-fit:contain;transition:transform .6s var(--tap-ease)}
.sf-category:hover img{transform:scale(1.06)}
.sf-category>div.sf-category-meta:last-child{padding:17px 18px 19px;min-height:92px;grid-template-columns:1fr 26px;border-top:1px solid #DCE4F0;background:#fff}
.sf-category h3{font-size:15px;font-weight:600;line-height:1.25;letter-spacing:-.025em}
.sf-category-count{font-size:10px}.sf-category-meta>svg{color:var(--sf-accent);width:20px}
.sf-featured-band{background:var(--sf-surface);margin-top:66px;border-block:1px solid #edeee8}
.woocommerce ul.products,.woocommerce-page ul.products,ul.products{gap:24px}
.woocommerce ul.products li.sf-product-card{border:1px solid #DCE4F0;border-radius:12px;box-shadow:none;transition:transform .35s var(--tap-ease),box-shadow .35s,border-color .2s}
.woocommerce ul.products li.sf-product-card:hover{transform:translateY(-4px);box-shadow:0 14px 28px #0B152812;border-color:#c5d4e3}
.sf-card-image{padding:25px;aspect-ratio:1.13;border-bottom:1px solid #f0f3f5;position:relative}
.woocommerce ul.products li.product .sf-card-image img{object-fit:contain;transition:transform .65s var(--tap-ease)}
.woocommerce ul.products li.product:hover .sf-card-image img{transform:scale(1.055)}
.sf-card-content{padding:21px 20px 20px}
.sf-card-meta{font-size:9px;letter-spacing:.07em;margin-bottom:11px}.sf-card-meta>span:first-child{font-weight:700;color:var(--sf-muted)}
.sf-card-content .sf-stock{font-size:9px;background:#edf5f1;color:#2a6650;padding:3px 7px;border-radius:4px;text-transform:none}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:16px;font-weight:650;letter-spacing:-.025em;line-height:1.45;margin-bottom:9px}
.sf-card-reference{font-size:10px;margin-bottom:12px}
.woocommerce ul.products li.product .sf-card-price .price{font-size:25px;line-height:1.3;color:var(--sf-ink);margin-bottom:15px}
.sf-card-specs{gap:8px;padding-top:13px;margin-bottom:18px}.sf-card-specs dt{font-size:10px}.sf-card-specs dd{font-size:11px}
.woocommerce ul.products li.product .button{font-size:12px;border:1px solid #cdd9e4;border-radius:6px;min-height:45px;color:var(--sf-ink);background:#F6F8FB}
.woocommerce ul.products li.product .button:hover{background:var(--sf-accent);border-color:var(--sf-accent);color:#fff;transform:none}
.woocommerce ul.products li.product .button::after{content:none}
.tap-editorial{padding:54px 58px;background:var(--sf-ink);border-radius:16px;display:grid;grid-template-columns:1fr 1fr;gap:70px;color:#fff;position:relative;overflow:hidden}
.tap-editorial-intro .sf-eyebrow{color:#93C5FD;font-size:10px}.tap-editorial h2{font-size:clamp(32px,3.5vw,47px);line-height:1.1;margin-bottom:22px;color:#fff}
.tap-editorial-intro>p:not(.sf-eyebrow){font-size:14px;line-height:1.8;color:#b6c8d2;max-width:380px}
.tap-editorial .sf-text-link{color:#fff;font-size:12px;display:inline-flex;gap:14px;align-items:center}
.tap-editorial-steps{list-style:none;padding:0;margin:0;display:grid;gap:26px}
.tap-editorial-steps li{display:flex;gap:21px;align-items:flex-start;padding-bottom:23px;border-bottom:1px solid #ffffff20}
.tap-editorial-steps li:last-child{padding:0;border:0}.tap-editorial-steps li>span{font-size:13px;color:#93C5FD;border:1px solid #ffffff36;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;flex:0 0 36px}
.tap-editorial-steps h3{font-size:19px;margin:4px 0 8px;color:#fff}.tap-editorial-steps p{font-size:12px;color:#b6c8d2;line-height:1.8;margin:0;max-width:400px}
.sf-faq{gap:70px;padding-block:76px}.sf-faq-heading h2{font-size:36px;line-height:1.15}.sf-faq-heading .sf-text-link{font-size:12px}
.sf-faq-items summary{font-size:15px;min-height:70px;font-weight:600}.sf-faq-items details>div{font-size:14px;color:var(--sf-muted);padding-bottom:20px}
.sf-footer{background:var(--sf-ink);padding-top:60px;color:#bacbd5;border-top:0}
.sf-footer-grid{gap:48px;padding-bottom:48px}.sf-footer h2{font-size:10px;letter-spacing:.12em;color:#fff;margin-bottom:23px}
.sf-footer .sf-brand{font-size:28px;color:#fff}.sf-footer li a{font-size:12px;min-height:27px}.sf-footer ul{gap:8px}
.sf-footer-brand>p,.sf-footer address{font-size:11px;line-height:1.85}.sf-footer-bottom{font-size:10px;color:#9db2c0}
.sf-catalog-header{padding:35px 40px;background:var(--sf-surface);border-radius:12px;align-items:center;margin-bottom:24px;min-height:220px}
.sf-catalog-header h1{font-size:clamp(34px,4vw,54px);margin-bottom:14px}.sf-catalog-header p{font-size:14px;max-width:660px}.sf-catalog-header .sf-eyebrow{font-size:10px}
.sf-catalog-header .sf-text-link{font-size:12px}.sf-catalog-image{max-height:180px;background:transparent;mix-blend-mode:multiply}
.sf-collection-chips{gap:8px;margin:0 0 26px}.sf-collection-chips a{font-size:11px;border-radius:6px;padding:10px 14px;background:#fff}
.sf-collection-chips a[aria-current=page]{background:var(--sf-ink);border-color:var(--sf-ink);color:#fff}
.sf-catalog-toolbar{padding:0}.sf-filter-disclosure{border:1px solid var(--sf-line);border-radius:9px;padding:0 20px;background:#F6F8FB}
.sf-filter-disclosure>summary{font-size:12px;padding:16px 0}.sf-catalog-filters{padding-bottom:20px;border:0;background:none}
.sf-catalog-filters label,.sf-filter-price>span{font-size:11px}.sf-catalog-filters input,.sf-catalog-filters select{font-size:13px;min-height:45px}
.sf-filter-actions .button{min-height:45px;padding:10px 17px;font-size:12px}.sf-filter-actions>a{font-size:11px}
.sf-results-toolbar{padding-block:18px}.woocommerce-result-count{font-size:12px}.woocommerce-ordering select{border-radius:6px}
.sf-page{padding-block:40px 70px}.sf-page-title{color:var(--sf-ink)}
.woocommerce-checkout .sf-navigation,.woocommerce-checkout .sf-header .sf-search,.woocommerce-checkout .sf-header .sf-menu-toggle,.woocommerce-checkout .sf-header-actions>.sf-icon-link:not(.sf-cart-link){display:none}
.woocommerce-checkout .sf-header-main{min-height:80px}.woocommerce-checkout .sf-help{display:block}
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{background:none;border:0;padding:4px 0 0;margin:0 0 22px;font-size:12px;border-radius:0}
@media(min-width:1000px){.tap-hero .sf-hero-copy{animation:tap-enter .6s var(--tap-ease) both}.tap-product-stage{animation:tap-enter .7s .06s var(--tap-ease) both}}
@keyframes tap-enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
[data-tap-reveal].tap-observed{opacity:0;transform:translateY(14px);transition:opacity .55s var(--tap-ease),transform .55s var(--tap-ease)}
[data-tap-reveal].tap-visible{opacity:1;transform:none}
@media(max-width:1100px){.sf-header-main{gap:22px}.sf-header-actions{gap:15px}.sf-navigation>.sf-container{gap:22px}.tap-hero{gap:35px}.tap-hero h1{font-size:50px}.tap-stage-note{right:4%;top:39%;font-size:9px}.sf-benefit{padding-inline:20px}.tap-editorial{padding:42px;gap:42px}.sf-footer-grid{gap:30px}.sf-section-heading h2{font-size:33px}}
@media(max-width:900px){.sf-container{width:calc(100% - 40px)}.sf-help{display:none}.sf-header-main{min-height:82px}.sf-brand{font-size:25px}.tap-hero{gap:26px}.tap-hero h1{font-size:40px}.tap-hero .sf-hero-description{font-size:14px}.tap-hero .sf-hero-actions{flex-wrap:wrap;gap:12px}.tap-hero-points{gap:10px}.tap-stage-note{display:none}.tap-product-stage .sf-hero-caption{padding:17px}.tap-product-stage .sf-hero-caption strong{font-size:12px}.tap-product-stage .sf-hero-product-price{font-size:14px}.sf-section{padding-block:45px}.sf-category-grid{gap:12px}.sf-category-image{padding:15px}.sf-category>div.sf-category-meta:last-child{padding:13px;min-height:95px}.sf-category h3{font-size:13px}.sf-category-count{font-size:9px}.sf-benefit{padding-inline:15px;gap:10px}.sf-benefit strong{font-size:11px}.sf-benefit span{font-size:10px}.sf-benefit>svg{width:22px}.sf-faq{gap:35px}.sf-faq-heading h2{font-size:29px}.sf-footer-grid{grid-template-columns:1.1fr 1fr;gap:36px}.sf-catalog-header{padding:25px;min-height:180px}}
@media(max-width:700px){.sf-container{width:calc(100% - 32px)}.sf-announcement{font-size:10px}.sf-announcement>.sf-container{justify-content:center;padding-block:8px;gap:0}.sf-announcement a:nth-child(2){display:none}.sf-header-main{gap:12px;min-height:73px;padding-block:15px;flex-wrap:wrap}.sf-brand{font-size:26px;max-width:none}.sf-header-actions{gap:14px;margin-left:auto}.sf-header-actions>.sf-icon-link:not(.sf-cart-link){display:none}.sf-header-actions .sf-menu-toggle{display:flex}.sf-icon-link{min-height:36px;min-width:30px}.sf-search{order:3;flex:0 0 100%;width:100%;max-width:none}.sf-search input[type=search]{padding:10px 14px;min-height:44px;font-size:13px!important}.sf-search button{width:34px;height:34px;padding:8px;margin:4px}.sf-navigation>.sf-container{width:calc(100% - 32px)}.sf-navigation a{font-size:13px}.sf-navigation a::after{content:none}.tap-hero{display:flex;flex-direction:column;gap:23px;padding-block:31px 29px}.tap-hero .sf-hero-copy{max-width:none;padding:0;width:100%}.tap-hero .sf-eyebrow{font-size:9px;margin-bottom:17px;gap:10px}.tap-hero h1{font-size:clamp(36px,9.6vw,52px);line-height:1.04;margin-bottom:17px}.tap-hero .sf-hero-description{font-size:13px;line-height:1.75;max-width:450px;margin-bottom:22px}.tap-hero .sf-hero-actions{gap:18px;flex-wrap:nowrap}.tap-hero .sf-hero-actions .button{font-size:12px;min-height:45px;padding:12px 15px;gap:9px}.tap-hero .sf-text-link{font-size:11px;min-height:42px}.tap-hero-points{margin-top:19px;gap:9px 17px;font-size:9px}.tap-hero-points svg{width:14px;height:14px}.tap-hero .sf-hero-note{font-size:9px;margin-top:8px}.tap-product-stage{width:100%;border-radius:11px}.tap-product-stage .sf-hero-image{aspect-ratio:1.65;padding:32px 18px 3px}.tap-stage-label{top:16px;left:18px;font-size:8px}.tap-stage-circle{width:53%;top:6%;left:23%}.tap-stage-circle::after{inset:-18px}.tap-stage-note{display:block;top:28%;right:8%;font-size:8px;padding:9px 11px;line-height:1.5}.tap-stage-note strong{font-size:9px}.tap-stage-note svg{width:15px;height:15px;margin-bottom:4px}.tap-product-stage .sf-hero-caption{padding:13px 17px}.tap-product-stage .sf-hero-caption small{font-size:9px}.tap-product-stage .sf-hero-caption strong{font-size:12px}.tap-product-stage .sf-hero-product-price{font-size:15px}.sf-benefits{display:grid;grid-template-columns:1fr;padding:0;gap:0}.sf-benefit,.sf-benefit:first-child{padding:16px 4px;border:0;border-bottom:1px solid var(--sf-line);gap:15px}.sf-benefit:last-child{border-bottom:0}.sf-benefit strong{font-size:12px}.sf-benefit span{font-size:10px}.sf-benefit>svg{width:23px;height:23px}.sf-section{padding-block:39px}.sf-section-heading{align-items:start;gap:14px;flex-direction:column;margin-bottom:22px}.sf-section-heading h2{font-size:28px;line-height:1.13}.sf-section-heading>a{font-size:11px;min-height:28px}.sf-section-heading .sf-eyebrow{font-size:9px}.sf-category-grid,.sf-category-grid-5{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sf-category-grid-5>.sf-category:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.sf-category-grid-5>.sf-category:last-child .sf-category-image{aspect-ratio:1.6}.sf-category-grid-5>.sf-category:last-child .sf-category-meta{border:0;background:transparent;align-content:center}.sf-category-image{aspect-ratio:1.38;padding:14px}.sf-category>div.sf-category-meta:last-child{min-height:80px;padding:13px}.sf-category h3{font-size:14px}.sf-category-count{font-size:10px}.sf-featured-band{margin-top:38px}.woocommerce ul.products,.woocommerce-page ul.products,ul.products{gap:13px}.sf-card-image{padding:15px;aspect-ratio:1.06}.sf-card-content{padding:14px 12px 12px}.sf-card-meta{font-size:8px;gap:6px;margin-bottom:8px}.sf-card-content .sf-stock{font-size:8px;padding:2px 5px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:13px;line-height:1.4;margin-bottom:9px}.sf-card-reference{font-size:9px;margin-bottom:9px}.woocommerce ul.products li.product .sf-card-price .price{font-size:21px;margin-bottom:12px}.sf-card-specs{gap:8px;padding-top:10px;margin-bottom:14px}.sf-card-specs dt{font-size:9px}.sf-card-specs dd{font-size:10px}.woocommerce ul.products li.product .button{font-size:10px;min-height:41px;padding:9px 10px;gap:6px}.woocommerce ul.products li.product .button svg{width:16px}.tap-editorial{display:block;padding:30px 25px;border-radius:12px}.tap-editorial-intro .sf-eyebrow{font-size:9px}.tap-editorial h2{font-size:34px;margin-bottom:17px}.tap-editorial-intro>p:not(.sf-eyebrow){font-size:12px}.tap-editorial .sf-text-link{font-size:11px}.tap-editorial-steps{margin-top:30px;gap:20px}.tap-editorial-steps li{padding-bottom:20px;gap:15px}.tap-editorial-steps li>span{width:30px;height:30px;flex-basis:30px;font-size:11px}.tap-editorial-steps h3{font-size:17px;margin-top:2px}.tap-editorial-steps p{font-size:11px}.sf-faq{padding-block:43px;gap:22px}.sf-faq-heading h2{font-size:29px}.sf-faq-items summary{font-size:13px;min-height:61px}.sf-faq-items details>div{font-size:12px}.sf-footer{padding-top:38px}.sf-footer-grid{grid-template-columns:1fr 1fr;gap:28px 20px;padding-bottom:32px}.sf-footer-brand{grid-column:1/-1}.sf-footer .sf-brand{font-size:28px;margin-bottom:15px}.sf-footer-brand>p,.sf-footer address{font-size:11px;max-width:360px}.sf-footer h2{font-size:9px;margin-bottom:14px}.sf-footer li a{font-size:11px;min-height:30px}.sf-footer ul{gap:5px}.sf-footer-grid>div:last-child{grid-column:1/-1}.sf-footer-bottom{font-size:9px}.sf-catalog-header{padding:24px 20px;min-height:0;gap:15px;margin-bottom:20px}.sf-catalog-header h1{font-size:33px}.sf-catalog-header p{font-size:12px}.sf-catalog-image{max-height:130px}.sf-catalog-header .sf-eyebrow{font-size:9px}.sf-catalog-header .sf-text-link{font-size:11px}.sf-collection-chips{gap:7px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:9px;margin-bottom:15px}.sf-collection-chips a{flex:0 0 auto;font-size:10px;padding:9px 12px}.sf-filter-disclosure{padding-inline:15px}.sf-filter-disclosure>summary{font-size:12px}.sf-results-toolbar{padding-block:15px}.woocommerce-result-count{font-size:11px}.woocommerce-ordering select{font-size:11px}.sf-page{padding-block:28px 50px}}
/* Catalogue and shared reading rhythm. */
.sf-catalog-header{padding:26px 30px;min-height:0;gap:26px;margin-bottom:20px}
.sf-catalog-header h1{font-size:clamp(32px,3.3vw,46px);line-height:1.12;margin-bottom:10px}
.sf-catalog-header p{font-size:14px;line-height:1.6}
.sf-catalog-header .sf-eyebrow{font-size:11px;letter-spacing:.12em;margin-bottom:10px}
.sf-catalog-copy>p:last-of-type{margin-bottom:0}
.sf-catalog-header .sf-text-link{display:none}
.sf-catalog-image{max-height:150px}
.sf-collection-chips{margin-bottom:18px}
.sf-collection-chips a{display:inline-flex;align-items:center;min-height:44px;font-size:12px;line-height:1.4;padding:10px 14px}
.sf-results-toolbar{padding-block:14px;gap:16px}
.sf-results-toolbar .woocommerce-result-count{font-size:12px;color:#68625D}
.sf-results-toolbar .woocommerce-ordering select{font-size:13px;min-height:44px}
.sf-catalog-filters label{min-width:0}
.sf-catalog-filters select{display:block;width:100%;max-width:100%;min-width:0;box-sizing:border-box}
.sf-navigation a:hover,.sf-navigation a[aria-current=page]{border-bottom-color:transparent}
.sf-card-meta,.sf-card-meta span:last-child:not(:first-child),.sf-card-content .sf-stock{font-size:11px;line-height:1.4;letter-spacing:.015em}
.sf-card-reference{font-size:11px;line-height:1.5;color:#68625D}
.sf-card-specs dt{font-size:11px;line-height:1.5;color:#68625D}
.sf-card-specs dd{font-size:12px;line-height:1.5}
.woocommerce ul.products li.product .button{min-height:46px;font-size:12px}
.sf-category-count{font-size:11px;color:#68625D}
.sf-benefit strong{font-size:13px}.sf-benefit span{font-size:12px}
.tap-hero .sf-hero-note{font-size:11px;line-height:1.6}
.tap-product-stage .sf-hero-caption small{font-size:11px;color:#c1d0d9}
.sf-footer{color:#c8d5dc}
.sf-footer h2{font-size:11px;letter-spacing:.1em}
.sf-footer li a{display:inline-flex;align-items:center;min-height:36px;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.sf-footer ul{gap:4px}
.sf-footer-brand>p,.sf-footer address{font-size:12px;line-height:1.8}
.sf-footer-bottom{font-size:11px;color:#beced8}
.sf-page-content .contact-details small{display:block;margin-bottom:5px;font-size:12px;line-height:1.5;color:#68625D}
.sf-page-content .contact-details strong{display:block;font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.sf-page-content .contact-details p>a,.sf-page-content .contact-details>div{display:flex;align-items:flex-start;gap:12px}
.sf-page-content .contact-details p>a>span,.sf-page-content .contact-details>div>span{min-width:0}
@media(min-width:701px) and (max-width:900px){
 .sf-catalog-header{padding:23px 26px}
 .tap-hero .sf-hero-actions{gap:12px}
 .sf-category h3{font-size:14px}.sf-category-count{font-size:11px}
 .sf-footer li a{min-height:40px}
}
@media(max-width:700px){
 .sf-header-actions{gap:10px}
 .sf-header-actions .sf-icon-link,.sf-header-actions .sf-menu-toggle{min-height:44px;min-width:40px}
 .sf-search button{width:40px;height:40px;flex:0 0 40px}
 .tap-hero .sf-hero-description{font-size:14px;line-height:1.7}
 .tap-hero .sf-hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%}
 .tap-hero .sf-hero-actions .button{padding:12px 10px;min-height:46px;gap:8px;min-width:0;justify-content:center}
 .tap-hero .sf-text-link{font-size:12px;min-height:46px;justify-content:center}
 .tap-hero-points{font-size:11px;gap:8px 14px;line-height:1.5}
 .tap-hero .sf-hero-note{font-size:11px;margin-top:7px}
 .tap-stage-label{font-size:9px;letter-spacing:.12em}
 .tap-stage-note{font-size:10px;padding:9px 11px;right:6%}.tap-stage-note strong{font-size:10px}
 .sf-section-heading>a,.sf-faq-heading .sf-text-link{font-size:12px;min-height:40px}
 .sf-card-content{padding:14px 12px}
 .sf-card-meta{gap:6px;margin-bottom:9px}.sf-card-content .sf-stock{padding:3px 6px}
 .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:14px;line-height:1.45;overflow-wrap:anywhere}
 .sf-card-reference{font-size:11px;margin-bottom:10px}
 .woocommerce ul.products li.product .button{min-height:46px;font-size:12px;padding:10px 8px;gap:7px}
 .woocommerce ul.products li.product .button svg{width:14px;flex:0 0 14px}
 .tap-editorial-intro>p:not(.sf-eyebrow),.tap-editorial-steps p{font-size:13px;line-height:1.7}
 .tap-editorial .sf-text-link{font-size:12px;min-height:44px}
 .sf-faq-items summary{font-size:14px}.sf-faq-items details>div{font-size:13px;line-height:1.7}
 .sf-footer h2{font-size:11px;margin-bottom:10px}
 .sf-footer li a{font-size:12px;min-height:44px}
 .sf-footer-brand>p,.sf-footer address{font-size:12px}.sf-footer-bottom{font-size:11px}
 .sf-catalog-header{padding:19px 20px;gap:16px;margin-bottom:16px}
 .sf-catalog-header h1{font-size:31px;margin-bottom:8px}
 .sf-catalog-header p{font-size:13px}.sf-catalog-header .sf-eyebrow{font-size:10px;margin-bottom:8px}
 .sf-collection-chips{margin-bottom:12px;padding-bottom:6px;scroll-padding-inline:1px}
 .sf-collection-chips a{font-size:11px;padding:10px 12px;min-height:44px}
 .sf-catalog-filters>label{grid-column:1/-1}
 .sf-results-toolbar{padding-block:13px;gap:10px}
 .sf-results-toolbar .woocommerce-result-count{font-size:11px;white-space:nowrap}
 .sf-results-toolbar .woocommerce-ordering{min-width:0;flex:1}
 .sf-results-toolbar .woocommerce-ordering select{font-size:12px;width:100%;min-width:0}
}
@media(hover:none),(pointer:coarse){.sf-category:hover,.sf-category:hover img,.woocommerce ul.products li.sf-product-card:hover,.woocommerce ul.products li.product:hover .sf-card-image img,.tap-product-stage:hover .sf-hero-image img{transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}[data-tap-reveal].tap-observed{opacity:1;transform:none}.sf-category:hover,.sf-category:hover img,.woocommerce ul.products li.sf-product-card:hover,.woocommerce ul.products li.product:hover .sf-card-image img,.tap-product-stage:hover .sf-hero-image img{transform:none}}

/* === French Card Delivery Badge & Dual Cart Toast Actions === */
.sf-card-price {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 6px 10px;
}
.sf-card-tax-badge {
  font-size: 11px;
  font-weight: 600;
  color: #11694B;
  background: #EAF7F1;
  padding: 2px 8px;
  border-radius: 999px;
  white-space: nowrap;
}
.tap-cart-confirmation-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.tap-cart-confirmation-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 8px 14px;
  border-radius: 8px;
  border: 1px solid #C8D6DF;
  background: #FFFFFF;
  color: #0B1528;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
}
.tap-cart-confirmation-secondary:hover {
  background: #EEF4FB;
}

/* === Flagship Header, Marquee, Brand Mark & Wishlist System === */
@keyframes tap-marquee-scroll {
  0% { transform: translate3d(0, 0, 0); }
  100% { transform: translate3d(-50%, 0, 0); }
}

.sf-announcement.tap-marquee-bar {
  background: linear-gradient(90deg, #0B1528 0%, #2B211C 50%, #0B1528 100%) !important;
  color: #F6F8FB !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: relative;
  z-index: 50;
}

.tap-marquee-viewport {
  width: 100%;
  overflow: hidden;
  padding: 7px 0;
}

.tap-marquee-track {
  display: flex !important;
  width: max-content !important;
  align-items: center;
  animation: tap-marquee-scroll 30s linear infinite !important;
  will-change: transform;
}

.tap-marquee-bar:hover .tap-marquee-track,
.tap-marquee-bar:focus-within .tap-marquee-track {
  animation-play-state: paused !important;
}

.tap-marquee-group {
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
  padding-right: 18px !important;
  white-space: nowrap !important;
}

.tap-marquee-item {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: #EBF0F7 !important;
  font-size: 11.5px !important;
  font-weight: 500 !important;
  letter-spacing: 0.01em !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.tap-marquee-item:hover {
  color: #FFFFFF !important;
  text-decoration: none !important;
}

.tap-mq-badge {
  display: inline-flex;
  align-items: center;
  padding: 2px 7px;
  border-radius: 999px;
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  background: rgba(255, 255, 255, 0.12);
  color: #DCE4F0;
}

.tap-mq-badge.tap-mq-emerald {
  background: rgba(16, 185, 129, 0.22);
  color: #6EE7B7;
  border: 1px solid rgba(52, 211, 153, 0.35);
}

.tap-mq-badge.tap-mq-blue {
  background: rgba(217, 119, 6, 0.25);
  color: #93C5FD;
  border: 1px solid rgba(245, 158, 11, 0.35);
}

.tap-marquee-sep {
  color: rgba(148, 163, 184, 0.55);
  font-size: 12px;
}

/* Flagship Brand Lockup */
.sf-header.tap-flagship-header {
  background: rgba(255, 255, 255, 0.98) !important;
  backdrop-filter: blur(12px);
  border-bottom: 1px solid #DCE4F0 !important;
  box-shadow: 0 2px 14px rgba(28, 25, 23, 0.03);
}

.tap-header-left-mobile {
  display: none;
}

.sf-brand.tap-flagship-brand {
  display: inline-flex !important;
  align-items: center !important;
  gap: 11px !important;
  text-decoration: none !important;
  max-width: none !important;
  flex-shrink: 0;
}

.tap-brand-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(15, 61, 110, 0.18);
  flex-shrink: 0;
}

.tap-brand-mark svg {
  width: 100%;
  height: 100%;
  display: block;
}

.tap-brand-lockup {
  display: flex;
  flex-direction: column;
  line-height: 1.05;
}

.tap-brand-wordmark {
  font-size: 24px;
  font-weight: 800;
  letter-spacing: -0.045em;
  color: #0B1528;
  white-space: nowrap;
}

.tap-brand-wordmark .sf-brand-accent {
  color: #0F3D6E;
}

.tap-brand-tagline {
  font-size: 8.5px;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: #78716C;
  margin-top: 3px;
  white-space: nowrap;
}

/* Desktop Header Proportions */
@media (min-width: 861px) {
  .sf-header.tap-flagship-header .sf-header-main {
    min-height: 76px !important;
    padding-block: 12px !important;
    gap: 28px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
  }
  .tap-mobile-quick-cats {
    display: none !important;
  }
}

/* Sleek Search Bar */
.sf-search.tap-flagship-search {
  display: flex !important;
  align-items: center !important;
  background: #F6F8FB !important;
  border: 1px solid #DFD6CA !important;
  border-radius: 10px !important;
  padding: 3px 4px 3px 14px !important;
  min-height: 44px !important;
  height: 44px !important;
  box-shadow: inset 0 1px 2px rgba(28, 25, 23, 0.02);
}

.sf-search.tap-flagship-search input[type="search"] {
  flex: 1 1 auto !important;
  border: 0 !important;
  background: transparent !important;
  padding: 0 8px 0 0 !important;
  min-height: 36px !important;
  height: 36px !important;
  font-size: 14px !important;
  color: #0B1528 !important;
}

.sf-search.tap-flagship-search button {
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 7px !important;
  background: #0B1528 !important;
  color: #FFFFFF !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: background 0.2s ease;
}

.sf-search.tap-flagship-search button:hover {
  background: #0F3D6E !important;
}

.sf-search.tap-flagship-search button svg {
  width: 16px !important;
  height: 16px !important;
}

/* Header Action Buttons & Wishlist Trigger */
.tap-header-actions {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.tap-wishlist-trigger,
.tap-header-actions .sf-cart-link,
.tap-header-actions .sf-account-link {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  min-height: 40px !important;
  border-radius: 10px !important;
  border: 1px solid #DCE4F0 !important;
  background: #F6F8FB !important;
  color: #0B1528 !important;
  padding: 0 !important;
  cursor: pointer;
  transition: border-color 0.2s, background 0.2s, color 0.2s;
}

.tap-wishlist-trigger:hover,
.tap-header-actions .sf-cart-link:hover,
.tap-header-actions .sf-account-link:hover {
  border-color: #C3D0E2 !important;
  background: #EBF0F7 !important;
  color: #0F3D6E !important;
}

.tap-wishlist-trigger.has-items svg {
  fill: #EF4444;
  stroke: #EF4444;
}

.tap-wishlist-count,
.tap-header-actions .sf-cart-count {
  position: absolute !important;
  top: -5px !important;
  right: -5px !important;
  min-width: 18px !important;
  height: 18px !important;
  padding: 0 5px !important;
  border-radius: 999px !important;
  background: #0F3D6E !important;
  color: #FFFFFF !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  line-height: 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 2px 6px rgba(15, 61, 110, 0.35);
}

.tap-wishlist-count[data-count="0"] {
  background: #78716C !important;
  box-shadow: none;
}

/* Mobile Layout (<= 860px): Centered Logo + Wishlist Next to Logo + Compact Search */
@media (max-width: 860px) {
  .sf-header.tap-flagship-header .sf-container.sf-header-main {
    width: calc(100% - 28px) !important;
    min-height: 0 !important;
    padding: 10px 0 8px !important;
    display: grid !important;
    grid-template-columns: 82px 1fr 82px !important;
    grid-template-areas:
      "menu brand actions"
      "search search search" !important;
    align-items: center !important;
    row-gap: 9px !important;
    column-gap: 4px !important;
  }

  .tap-header-left-mobile {
    grid-area: menu !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }

  .tap-mobile-menu-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
    border-radius: 10px !important;
    border: 1px solid #DCE4F0 !important;
    background: #F6F8FB !important;
    color: #0B1528 !important;
    padding: 0 !important;
  }

  .sf-brand.tap-flagship-brand {
    grid-area: brand !important;
    justify-self: center !important;
    margin: 0 auto !important;
    gap: 8px !important;
  }

  .tap-brand-mark {
    width: 30px !important;
    height: 30px !important;
    border-radius: 8px !important;
  }

  .tap-brand-wordmark {
    font-size: 19.5px !important;
    letter-spacing: -0.045em !important;
  }

  .tap-brand-tagline {
    font-size: 7px !important;
    letter-spacing: 0.12em !important;
    margin-top: 2px !important;
  }

  .tap-header-actions {
    grid-area: actions !important;
    justify-self: end !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 6px !important;
  }

  .tap-header-actions .sf-help,
  .tap-header-actions .sf-account-link {
    display: none !important;
  }

  .tap-header-actions .tap-wishlist-trigger,
  .tap-header-actions .sf-cart-link {
    display: inline-flex !important;
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
  }

  .sf-search.tap-flagship-search {
    grid-area: search !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 40px !important;
    height: 40px !important;
    padding: 2px 4px 2px 12px !important;
    border-radius: 10px !important;
  }

  .sf-search.tap-flagship-search input[type="search"] {
    font-size: 16px !important;
    min-height: 34px !important;
    height: 34px !important;
  }

  .sf-search.tap-flagship-search button {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    border-radius: 7px !important;
  }

  /* Quick Swipeable Mobile Category Strip */
  .tap-mobile-quick-cats {
    display: block !important;
    border-top: 1px solid #EEF2F6;
    background: #FFFFFF;
    padding: 6px 0;
  }

  .tap-mobile-quick-cats-track {
    width: calc(100% - 28px) !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    overflow-x: auto !important;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  .tap-mobile-quick-cats-track::-webkit-scrollbar {
    display: none;
  }

  .tap-mobile-quick-cats-track a {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    padding: 5px 11px;
    border-radius: 999px;
    background: #EBF0F7;
    border: 1px solid #DCE4F0;
    color: #292524;
    font-size: 11.5px;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
  }

  .tap-mobile-quick-cats-track a:first-child {
    background: #EEF4FB;
    border-color: #93C5FD;
    color: #0F3D6E;
  }

  .sf-commerce {
    padding-top: 10px !important;
  }

  .woocommerce-breadcrumb {
    margin-bottom: 10px !important;
    font-size: 11px !important;
    color: #78716C !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}

/* PDP Topline: Brand Pill + Unified Stock Pill + Interactive Wishlist Button */
.sf-product-topline.tap-pdp-topline {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
  margin-bottom: 10px !important;
}

.tap-brand-pill {
  display: inline-flex !important;
  align-items: center !important;
  padding: 4px 11px !important;
  border-radius: 7px !important;
  background: #0B1528 !important;
  color: #FFFFFF !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

.tap-topline-right {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin-left: auto !important;
}

.tap-stock-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 4px 10px !important;
  border-radius: 999px !important;
  background: #ECFDF5 !important;
  border: 1px solid #A7F3D0 !important;
  color: #065F46 !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
}

.tap-pdp-wish-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 4px 10px !important;
  border-radius: 999px !important;
  border: 1px solid #C3D0E2 !important;
  background: #FFFFFF !important;
  color: #292524 !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  cursor: pointer;
  transition: all 0.2s ease;
}

.tap-pdp-wish-btn:hover,
.tap-pdp-wish-btn.is-saved {
  border-color: #FCA5A5 !important;
  background: #FEF2F2 !important;
  color: #DC2626 !important;
}

.tap-pdp-wish-btn.is-saved svg {
  fill: #DC2626;
  stroke: #DC2626;
}

/* Slide-Over Wishlist Drawer */
.tap-wishlist-drawer {
  position: fixed;
  inset: 0;
  z-index: 9999;
  pointer-events: none;
  visibility: hidden;
}

.tap-wishlist-drawer.is-open {
  pointer-events: auto;
  visibility: visible;
}

.tap-wishlist-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(28, 25, 23, 0.45);
  opacity: 0;
  transition: opacity 0.25s ease;
}

.tap-wishlist-drawer.is-open .tap-wishlist-backdrop {
  opacity: 1;
}

.tap-wishlist-panel {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: min(380px, 92vw);
  background: #FFFFFF;
  box-shadow: -12px 0 36px rgba(28, 25, 23, 0.16);
  display: flex;
  flex-direction: column;
  transform: translateX(100%);
  transition: transform 0.28s cubic-bezier(0.22, 1, 0.36, 1);
}

.tap-wishlist-drawer.is-open .tap-wishlist-panel {
  transform: translateX(0);
}

.tap-wishlist-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 20px;
  border-bottom: 1px solid #DCE4F0;
}

.tap-wishlist-head strong {
  display: block;
  font-size: 16px;
  color: #0B1528;
}

.tap-wishlist-sub {
  font-size: 11.5px;
  color: #78716C;
}

.tap-wishlist-close {
  width: 34px;
  height: 34px;
  border-radius: 8px;
  border: 1px solid #DCE4F0;
  background: #F6F8FB;
  color: #0B1528;
  cursor: pointer;
}

.tap-wishlist-body {
  flex: 1;
  overflow-y: auto;
  padding: 16px 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.tap-wish-empty {
  text-align: center;
  padding: 36px 16px;
  color: #78716C;
  font-size: 13px;
}

.tap-wish-card {
  display: grid;
  grid-template-columns: 56px 1fr auto;
  gap: 12px;
  align-items: center;
  padding: 10px;
  border: 1px solid #DCE4F0;
  border-radius: 10px;
  background: #F6F8FB;
}

.tap-wish-card img {
  width: 56px;
  height: 56px;
  object-fit: contain;
  background: #FFFFFF;
  border-radius: 6px;
  padding: 4px;
}

.tap-wish-card-title {
  display: block;
  font-size: 12.5px;
  font-weight: 600;
  color: #0B1528;
  text-decoration: none;
  line-height: 1.35;
  margin-bottom: 3px;
}

.tap-wish-card-price {
  font-size: 13px;
  font-weight: 700;
  color: #0F3D6E;
}

.tap-wish-remove {
  border: 0;
  background: transparent;
  color: #94A3B8;
  font-size: 15px;
  cursor: pointer;
  padding: 4px;
}

.tap-wishlist-foot {
  padding: 16px 20px;
  border-top: 1px solid #DCE4F0;
}

.tap-wishlist-foot .button {
  width: 100%;
  justify-content: center;
  display: flex;
}

/* FR30 Scoped Editorial Product Styles */
/* Scoped storefront description styles. Install once; do not send CSS to Merchant Center. */
.fr30-product{--fr30-ink:#142a25;--fr30-muted:#52615d;--fr30-line:#dce4df;--fr30-tint:#f2f6f2;box-sizing:border-box;max-width:1120px;margin:0 auto;color:var(--fr30-ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}
.fr30-product *{box-sizing:border-box}.fr30-product h2,.fr30-product h3,.fr30-product p,.fr30-product figure{margin:0}
.fr30-product .fr30-eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--fr30-muted);margin-bottom:12px}
.fr30-product h2{font-size:clamp(26px,4vw,38px);line-height:1.15;letter-spacing:-.025em;max-width:850px;margin-bottom:16px}
.fr30-product .fr30-lead{font-size:18px;max-width:820px;color:var(--fr30-muted)}
.fr30-product .fr30-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:28px;align-items:center;padding:30px 0}
.fr30-product .fr30-image{display:block;width:100%;height:auto;max-height:420px;object-fit:contain;background:#fff;border-radius:16px}
.fr30-product .fr30-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0 30px}
.fr30-product .fr30-benefit{background:var(--fr30-tint);border:1px solid var(--fr30-line);border-radius:14px;padding:20px}
.fr30-product h3{font-size:19px;line-height:1.3;margin-bottom:10px}.fr30-product .fr30-benefit p{font-size:15px;color:var(--fr30-muted)}
.fr30-product .fr30-details{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;margin:30px 0}
.fr30-product .fr30-table{width:100%;border-collapse:collapse;font-size:14px}.fr30-product .fr30-table th,.fr30-product .fr30-table td{text-align:left;vertical-align:top;padding:12px 10px;border-bottom:1px solid var(--fr30-line);overflow-wrap:anywhere}.fr30-product .fr30-table th{width:44%;font-weight:600;background:var(--fr30-tint)}
.fr30-product .fr30-feature{margin:30px 0}.fr30-product figcaption{font-size:12px;color:var(--fr30-muted);margin-top:7px}
.fr30-product .fr30-fit{padding:22px;border-left:4px solid #235447;background:var(--fr30-tint);margin:28px 0}
.fr30-product .fr30-note{border-top:1px solid var(--fr30-line);padding-top:22px;margin-top:25px;color:var(--fr30-muted);font-size:14px}
.fr30-product .fr30-box p{margin-bottom:16px}.fr30-product .fr30-media-pending{padding:30px;border:1px dashed #879c91;border-radius:14px;background:var(--fr30-tint);font-size:14px}
@media(max-width:720px){.fr30-product .fr30-hero,.fr30-product .fr30-details{grid-template-columns:1fr;gap:18px}.fr30-product .fr30-benefits{grid-template-columns:1fr}.fr30-product .fr30-hero{padding:18px 0}.fr30-product .fr30-image{max-height:340px}.fr30-product .fr30-benefit{padding:18px}}

.fr30-product img{aspect-ratio:1/1}.fr30-product .fr30-table caption{text-align:left;font-weight:700;margin-bottom:10px}.fr30-product .fr30-description-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}@media(max-width:720px){.fr30-product .fr30-description-gallery{grid-template-columns:1fr}}

/* === ATELIER CUIVRE & ANTHRACITE CHAUD — BESPOKE ARCHITECTURAL DESIGN FOR TOUTALPORTEE.COM === */
body.sf-store {
  background: #F6F8FB;
  color: #0B1528;
}

.sf-announcement.tap-marquee-bar {
  background: linear-gradient(90deg, #171412 0%, #261B16 50%, #171412 100%) !important;
  border-bottom: 2px solid #0F3D6E !important;
}

.tap-mq-badge.tap-mq-blue {
  background: rgba(15, 61, 110, 0.28) !important;
  color: #93C5FD !important;
  border: 1px solid rgba(230, 161, 126, 0.42) !important;
}

.sf-header.tap-flagship-header {
  background: rgba(250, 247, 242, 0.96) !important;
  border-bottom: 1px solid #E2D9CC !important;
}

.sf-navigation {
  background: #F4EFE6;
  border-top: 1px solid #DCE4F0;
  border-bottom: 1px solid #DCE4F0;
}

.sf-navigation > .sf-container > a:first-child {
  background: #0B1528;
  color: #FFFFFF !important;
  padding: 6px 14px;
  border-radius: 999px;
  font-weight: 700;
  margin-block: 7px;
  min-height: 34px;
}

.sf-navigation > .sf-container > a:first-child::after {
  display: none !important;
}

.sf-navigation > .sf-container > a:first-child:hover {
  background: #0F3D6E;
  color: #FFFFFF !important;
}

/* Bespoke Architectural Hero Card & Ledger */
.tap-hero {
  background: linear-gradient(135deg, #FFFFFF 0%, #F5EFE6 100%);
  border: 1px solid #E2D8C9;
  border-left: 5px solid #0F3D6E;
  border-radius: 22px;
  padding: 44px 48px !important;
  margin-top: 24px;
  margin-bottom: 28px;
  box-shadow: 0 18px 42px rgba(28, 25, 23, 0.05);
}

.tap-eyebrow-pill {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 6px;
  background: #0B1528;
  color: #93C5FD;
  font-size: 9.5px;
  font-weight: 800;
  letter-spacing: 0.14em;
}

.tap-hero-ledger {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 26px;
  padding-top: 20px;
  border-top: 1px solid #E5DCD0;
}

.tap-hero-ledger-item {
  background: #FFFFFF;
  border: 1px solid #DCE4F0;
  border-radius: 10px;
  padding: 10px 12px;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.tap-hero-ledger-item strong {
  font-size: 16px;
  font-weight: 800;
  color: #0F3D6E;
  letter-spacing: -0.02em;
}

.tap-hero-ledger-item span {
  font-size: 11px;
  line-height: 1.35;
  color: #57534E;
  font-weight: 500;
}

.tap-product-stage {
  background: radial-gradient(circle at 50% 42%, #FFFFFF 0%, #EFE6D8 100%) !important;
  border: 1px solid #DDD1C0 !important;
  border-radius: 18px !important;
  box-shadow: 0 22px 48px rgba(28, 25, 23, 0.08) !important;
}

.tap-stage-circle {
  background: #E7D9C6 !important;
}

.tap-stage-circle::after {
  border-color: #D6C3AA !important;
}

.tap-product-stage .sf-hero-caption {
  background: linear-gradient(90deg, #0B1528 0%, #2E231D 100%) !important;
  border-top: 2px solid #0F3D6E !important;
}

/* Service Reassurance Cards */
.sf-benefits {
  border: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px !important;
  padding-block: 10px 24px !important;
}

.sf-benefit,
.sf-benefit:first-child {
  background: #FFFFFF;
  border: 1px solid #DCE4F0 !important;
  border-top: 3px solid #0F3D6E !important;
  border-radius: 14px;
  padding: 18px 20px !important;
  box-shadow: 0 6px 18px rgba(28, 25, 23, 0.03);
}

/* Category Cards & Product Cards */
.sf-category {
  background: #FFFFFF !important;
  border: 1px solid #DCE4F0 !important;
  border-radius: 14px !important;
}

.sf-category-image {
  background: #F6F0E6 !important;
}

.sf-category > div.sf-category-meta:last-child {
  background: #FFFFFF !important;
  border-top: 1px solid #EDE5DA !important;
}

.woocommerce ul.products li.sf-product-card {
  background: #FFFFFF !important;
  border: 1px solid #DCE4F0 !important;
  border-radius: 14px !important;
  overflow: hidden;
  box-shadow: 0 4px 14px rgba(28, 25, 23, 0.025);
}

.woocommerce ul.products li.sf-product-card:hover {
  border-color: #0F3D6E !important;
  box-shadow: 0 16px 32px rgba(28, 25, 23, 0.08) !important;
}

.sf-card-image {
  background: #FFFFFF !important;
  border-bottom: 1px solid #EFE9DF !important;
}

.woocommerce ul.products li.product .button {
  background: #0B1528 !important;
  border-color: #0B1528 !important;
  color: #FFFFFF !important;
  font-weight: 700 !important;
  border-radius: 8px !important;
}

.woocommerce ul.products li.product .button:hover {
  background: #0F3D6E !important;
  border-color: #0F3D6E !important;
  color: #FFFFFF !important;
}

/* Warm Obsidian & Copper Editorial Section */
.tap-editorial {
  background: linear-gradient(135deg, #0B1528 0%, #2C211B 60%, #3E2216 100%) !important;
  border: 1px solid #4A3227;
  border-radius: 20px !important;
}

.tap-editorial-steps li > span {
  background: rgba(15, 61, 110, 0.22);
  border-color: #E6A17E !important;
  color: #93C5FD !important;
  font-weight: 700;
}

.sf-footer {
  background: #171412 !important;
  border-top: 3px solid #0F3D6E !important;
}

@media (max-width: 860px) {
  .tap-hero {
    padding: 24px 20px !important;
    margin-top: 14px;
    border-radius: 16px;
  }
  .tap-hero-ledger {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
  }
  .tap-hero-ledger-item {
    padding: 8px 9px;
  }
  .tap-hero-ledger-item strong {
    font-size: 14px;
  }
  .tap-hero-ledger-item span {
    font-size: 10px;
  }
  .sf-benefits {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
}
.sf-card-image { position: relative; }
.sf-card-sale-badge { position: absolute; top: 12px; left: 12px; z-index: 2; display: inline-flex; align-items: center; padding: 4px 10px; border-radius: 999px; background: #0F3D6E; color: #FFFFFF; font-size: 0.76rem; font-weight: 800; letter-spacing: 0.02em; box-shadow: 0 4px 12px rgba(15, 61, 110, 0.24); pointer-events: none; }
.sf-card-price .price del { color: #78716C; font-size: 0.88em; font-weight: 500; margin-right: 6px; text-decoration: line-through; }
.sf-card-price .price ins { text-decoration: none; color: #0F3D6E; font-weight: 800; background: transparent; }

/* ==========================================================================
   CDISCOUNT-GRADE COMMERCIAL RETAIL ARCHITECTURE — TOUT À PORTÉE EDITION
   Palette: Burnt Terracotta (#0F3D6E), Warm Obsidian (#0B1528),
   Warm Alabaster (#F6F8FB), Travertine (#EBF0F7), Botanical Pine (#146C4E)
   ========================================================================== */

/* 1. Marquee Copper Badge */
.tap-mq-badge.tap-mq-copper {
  background: #0F3D6E !important;
  color: #FFFFFF !important;
  border: 1px solid #E6A17E !important;
}

/* 2. Command Header & "Tous nos rayons" Mega-Menu */
.cd-header {
  position: sticky;
  top: 0;
  z-index: 90;
  background: #FFFFFF !important;
  box-shadow: 0 4px 20px rgba(28, 25, 23, 0.06);
}

.cd-rayons-dropdown {
  position: relative;
  flex-shrink: 0;
}

.cd-rayons-trigger {
  list-style: none;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 44px;
  padding: 0 16px;
  border-radius: 10px;
  background: #0B1528;
  color: #FFFFFF;
  font-size: 13.5px;
  font-weight: 750;
  letter-spacing: -0.01em;
  cursor: pointer;
  user-select: none;
  transition: background 0.2s ease, transform 0.15s ease;
  box-shadow: 0 4px 12px rgba(28, 25, 23, 0.12);
}

.cd-rayons-trigger::-webkit-details-marker {
  display: none;
}

.cd-rayons-trigger:hover,
.cd-rayons-dropdown[open] .cd-rayons-trigger {
  background: #0F3D6E;
}

.cd-rayons-burger {
  display: inline-flex;
  align-items: center;
}

.cd-rayons-burger svg {
  width: 18px;
  height: 18px;
}

.cd-rayons-mega {
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
  width: min(720px, calc(100vw - 48px));
  background: #FFFFFF;
  border: 1px solid #DFD6CA;
  border-top: 3px solid #0F3D6E;
  border-radius: 16px;
  box-shadow: 0 24px 54px rgba(28, 25, 23, 0.18);
  padding: 22px;
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  gap: 22px;
  z-index: 120;
}

.cd-mega-kicker {
  margin: 0 0 10px;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #0F3D6E;
}

.cd-mega-cat-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.cd-mega-cat-list li a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 10px;
  background: #F6F8FB;
  border: 1px solid #EDE6DC;
  text-decoration: none;
  transition: border-color 0.18s ease, background 0.18s ease;
}

.cd-mega-cat-list li a:hover {
  background: #EEF4FB;
  border-color: #0F3D6E;
}

.cd-mega-cat-list strong {
  display: block;
  font-size: 13.5px;
  color: #0B1528;
  line-height: 1.25;
}

.cd-mega-cat-list small {
  display: block;
  font-size: 11px;
  color: #68625D;
  margin-top: 2px;
}

.cd-mega-count {
  flex-shrink: 0;
  font-size: 11px;
  font-weight: 700;
  color: #0F3D6E;
  background: #FFFFFF;
  border: 1px solid #DCE4F0;
  padding: 3px 8px;
  border-radius: 999px;
}

.cd-rayons-mega-highlights {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 16px;
}

.cd-mega-promo-card {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 16px;
  border-radius: 12px;
  background: linear-gradient(135deg, #0B1528 0%, #3E2216 100%);
  color: #FFFFFF;
  text-decoration: none;
  border: 1px solid #573021;
}

.cd-mega-promo-badge {
  align-self: flex-start;
  padding: 3px 9px;
  border-radius: 999px;
  background: #0F3D6E;
  color: #FFFFFF;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.06em;
}

.cd-mega-promo-card strong {
  font-size: 15px;
  line-height: 1.3;
  color: #FFFFFF;
}

.cd-mega-promo-card span {
  font-size: 12px;
  line-height: 1.45;
  color: #DCE4F0;
}

.cd-mega-promo-cta {
  margin-top: 4px;
  font-weight: 700;
  color: #93C5FD !important;
}

.cd-mega-brand-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.cd-mega-brand-pills a {
  padding: 5px 10px;
  border-radius: 7px;
  background: #F6F8FB;
  border: 1px solid #E2D9CC;
  color: #0B1528;
  font-size: 11.5px;
  font-weight: 650;
  text-decoration: none;
  transition: all 0.16s ease;
}

.cd-mega-brand-pills a:hover {
  background: #0B1528;
  border-color: #0B1528;
  color: #FFFFFF;
}

/* Search Form & Labeled Header Utilities */
@media (min-width: 861px) {
  .sf-header.cd-header .sf-header-main {
    gap: 16px !important;
  }
  .sf-search.cd-search-form {
    flex: 1 1 420px !important;
    max-width: 580px !important;
    min-height: 46px !important;
    height: 46px !important;
    border: 2px solid #C3D0E2 !important;
    background: #F6F8FB !important;
    border-radius: 11px !important;
  }
  .sf-search.cd-search-form:focus-within {
    border-color: #0F3D6E !important;
    background: #FFFFFF !important;
    box-shadow: 0 0 0 3px rgba(15, 61, 110, 0.15) !important;
  }
  .sf-search.cd-search-form button {
    width: auto !important;
    min-width: 40px !important;
    height: 36px !important;
    padding: 0 14px !important;
    gap: 7px !important;
    background: #0F3D6E !important;
    border-radius: 8px !important;
    font-size: 12.5px !important;
    font-weight: 750 !important;
  }
  .sf-search.cd-search-form button:hover {
    background: #0A2B4E !important;
  }
  .cd-util-link {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    padding: 6px 11px;
    border-radius: 10px;
    background: #F6F8FB;
    border: 1px solid #DCE4F0;
    color: #0B1528;
    text-decoration: none;
    transition: border-color 0.2s, background 0.2s;
  }
  .cd-util-link:hover {
    border-color: #0F3D6E;
    background: #EEF4FB;
  }
  .cd-util-link svg {
    width: 18px;
    height: 18px;
    color: #0F3D6E;
  }
  .cd-util-text {
    display: flex;
    flex-direction: column;
    line-height: 1.15;
  }
  .cd-util-text small {
    font-size: 9.5px;
    color: #68625D;
  }
  .cd-util-text strong {
    font-size: 12px;
    color: #0B1528;
  }
  .tap-header-actions .cd-util-btn {
    width: auto !important;
    min-width: 58px !important;
    height: 44px !important;
    padding: 4px 11px !important;
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 2px !important;
  }
  .tap-header-actions .cd-util-btn svg {
    width: 17px !important;
    height: 17px !important;
  }
  .cd-util-label {
    font-size: 10px;
    font-weight: 650;
    line-height: 1;
    color: inherit;
  }
  .tap-header-actions .cd-cart-btn {
    background: #0B1528 !important;
    border-color: #0B1528 !important;
    color: #FFFFFF !important;
  }
  .tap-header-actions .cd-cart-btn:hover {
    background: #0F3D6E !important;
    border-color: #0F3D6E !important;
    color: #FFFFFF !important;
  }
}

@media (max-width: 1180px) {
  .cd-search-btn-label,
  .cd-util-link {
    display: none !important;
  }
  .sf-search.cd-search-form button {
    padding: 0 10px !important;
  }
}

/* Sub-Navigation Bar */
.sf-navigation.cd-subnav {
  background: #0B1528 !important;
  border-top: 1px solid #2E2723 !important;
  border-bottom: 2px solid #0F3D6E !important;
}

.cd-subnav-inner {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: nowrap !important;
  gap: 12px !important;
  min-height: 44px !important;
  padding-block: 4px !important;
}

.cd-subnav-links {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-wrap: nowrap;
  overflow-x: auto;
  scrollbar-width: none;
}

.cd-subnav-links::-webkit-scrollbar {
  display: none;
}

.sf-navigation.cd-subnav .cd-subnav-links a {
  color: #EBF0F7 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  padding: 5px 10px !important;
  border-radius: 7px !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  min-height: 32px !important;
  margin-block: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  transition: background 0.18s ease, color 0.18s ease;
}

.sf-navigation.cd-subnav .cd-subnav-links a::after {
  display: none !important;
}

.sf-navigation.cd-subnav .cd-subnav-links a:hover,
.sf-navigation.cd-subnav .cd-subnav-links a[aria-current="page"] {
  background: rgba(255, 255, 255, 0.1) !important;
  color: #FFFFFF !important;
}

.sf-navigation.cd-subnav .cd-subnav-links a.cd-subnav-promo {
  background: #0F3D6E !important;
  color: #FFFFFF !important;
  font-weight: 750 !important;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.sf-navigation.cd-subnav .cd-subnav-links a.cd-subnav-promo:hover {
  background: #0A2B4E !important;
}

.cd-subnav-promo-pill {
  background: #0B1528;
  color: #93C5FD;
  font-size: 10.5px;
  font-weight: 800;
  padding: 1px 6px;
  border-radius: 999px;
}

.cd-subnav-perks {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
  white-space: nowrap;
}

@media (max-width: 1380px) {
  .cd-subnav-perks .cd-subnav-perk:nth-child(2) {
    display: none !important;
  }
}

.cd-subnav-perk {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #DCE4F0 !important;
  font-size: 11.5px !important;
  text-decoration: none !important;
}

.cd-subnav-perk svg {
  width: 15px;
  height: 15px;
  color: #93C5FD;
}

.cd-subnav-perk strong {
  color: #FFFFFF;
}

@media (max-width: 1080px) {
  .cd-subnav-perks {
    display: none !important;
  }
}

/* Mobile Header Isolation (<=860px) */
@media (max-width: 860px) {
  .cd-rayons-dropdown,
  .cd-search-btn-label,
  .cd-util-label {
    display: none !important;
  }
  .tap-mobile-quick-cats-track a.tap-mobile-pill-promo {
    background: #0F3D6E !important;
    border-color: #0F3D6E !important;
    color: #FFFFFF !important;
    font-weight: 750 !important;
  }
}

.woocommerce-checkout .cd-rayons-dropdown,
.woocommerce-checkout .cd-subnav,
.woocommerce-checkout .tap-mobile-quick-cats {
  display: none !important;
}

/* 3. Cdiscount Above-the-Fold 3-Card Split Bento Hero */
.cd-hero-bento {
  display: grid;
  grid-template-columns: minmax(0, 1.85fr) minmax(310px, 0.92fr);
  gap: 18px;
  margin-top: 20px;
  margin-bottom: 20px;
  align-items: stretch;
}

.cd-bento-main {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(250px, 0.88fr);
  gap: 24px;
  align-items: center;
  background: linear-gradient(135deg, #FFFFFF 0%, #F5EFE6 100%);
  border: 1px solid #DFD5C6;
  border-left: 5px solid #0F3D6E;
  border-radius: 20px;
  padding: 32px 34px;
  box-shadow: 0 16px 38px rgba(28, 25, 23, 0.05);
}

.cd-bento-copy .sf-eyebrow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 14px;
}

.cd-eyebrow-tag {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.1em;
  color: #0F3D6E;
  background: #EEF4FB;
  border: 1px solid #93C5FD;
  padding: 3px 9px;
  border-radius: 6px;
}

.cd-bento-copy h1 {
  font-size: clamp(32px, 3.3vw, 48px);
  line-height: 1.05;
  letter-spacing: -0.045em;
  margin: 0 0 14px;
  color: #0B1528;
}

.cd-bento-copy h1 span {
  color: #0F3D6E;
}

.cd-bento-copy .sf-hero-description {
  font-size: 14.5px;
  line-height: 1.65;
  color: #44403C;
  margin: 0 0 20px;
}

.cd-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 6px;
}

.cd-btn-flash {
  background: #0F3D6E !important;
  border-color: #0F3D6E !important;
  color: #FFFFFF !important;
  font-weight: 750 !important;
  min-height: 46px !important;
  padding: 11px 18px !important;
  border-radius: 10px !important;
}

.cd-btn-flash:hover {
  background: #0A2B4E !important;
  border-color: #0A2B4E !important;
}

.cd-btn-secondary {
  background: #0B1528 !important;
  border-color: #0B1528 !important;
  color: #FFFFFF !important;
  font-weight: 700 !important;
  min-height: 46px !important;
  padding: 11px 16px !important;
  border-radius: 10px !important;
}

.cd-btn-secondary:hover {
  background: #2E2723 !important;
}

.cd-hero-spotlight {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}

.cd-spotlight-badges {
  position: absolute;
  top: 14px;
  left: 14px;
  right: 14px;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  flex-wrap: wrap;
}

.cd-spotlight-badges .tap-stage-label {
  position: static;
  background: #0B1528;
  color: #FFFFFF;
  padding: 4px 9px;
  border-radius: 6px;
  font-size: 9px;
  font-weight: 800;
}

.cd-spotlight-pct {
  background: #0F3D6E;
  color: #FFFFFF;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 10.5px;
  font-weight: 800;
  box-shadow: 0 4px 12px rgba(15, 61, 110, 0.25);
}

.cd-spotlight-caption > span {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 4px !important;
}

.cd-spotlight-caption strong {
  max-width: none !important;
  font-size: 13.5px !important;
  line-height: 1.35 !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.cd-spotlight-caption del {
  color: #A8A29E;
  font-size: 12px;
  margin-right: 6px;
}

.cd-spotlight-caption ins {
  text-decoration: none;
  color: #93C5FD;
  font-weight: 800;
}

/* Right Column: 2 Stacked "Offres Choc" Deal Cards */
.cd-bento-side {
  display: grid;
  grid-template-rows: repeat(2, 1fr);
  gap: 14px;
}

.cd-side-deal-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: #FFFFFF;
  border: 1px solid #DFD5C6;
  border-top: 3px solid #0F3D6E;
  border-radius: 16px;
  padding: 14px 16px;
  text-decoration: none;
  color: #0B1528;
  box-shadow: 0 10px 26px rgba(28, 25, 23, 0.04);
  transition: transform 0.22s ease, border-color 0.2s ease, box-shadow 0.22s ease;
}

.cd-side-deal-card:hover {
  transform: translateY(-3px);
  border-color: #0F3D6E;
  box-shadow: 0 16px 34px rgba(15, 61, 110, 0.12);
}

.cd-side-deal-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
}

.cd-side-deal-kicker {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  color: #0B1528;
  background: #EBF0F7;
  padding: 3px 8px;
  border-radius: 6px;
}

.cd-side-deal-badge {
  background: #0F3D6E;
  color: #FFFFFF;
  font-size: 11px;
  font-weight: 800;
  padding: 2px 9px;
  border-radius: 999px;
}

.cd-side-deal-body {
  display: grid;
  grid-template-columns: 84px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
}

.cd-side-deal-img {
  width: 84px;
  height: 84px;
  border-radius: 10px;
  background: #F6F8FB;
  border: 1px solid #EBF0F7;
  padding: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cd-side-deal-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.cd-side-deal-info {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}

.cd-side-deal-brand {
  font-size: 9.5px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #78716C;
}

.cd-side-deal-title {
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
  color: #0B1528;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.cd-side-deal-price {
  font-size: 18px;
  font-weight: 800;
  color: #0F3D6E;
  line-height: 1.2;
}

.cd-side-deal-price del {
  font-size: 12px;
  color: #78716C;
  font-weight: 500;
  margin-right: 6px;
}

.cd-side-deal-price ins {
  text-decoration: none;
  color: #0F3D6E;
}

.cd-side-deal-save {
  font-size: 10.5px;
  font-weight: 700;
  color: #146C4E;
}

.cd-side-deal-foot {
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid #F0EAE1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 11.5px;
  font-weight: 700;
  color: #0B1528;
}

.cd-side-deal-foot svg {
  width: 15px;
  height: 15px;
  color: #0F3D6E;
}

/* 4. 4-Pillar Reassurance Bar */
.cd-reassurance-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 24px;
}

.cd-reassurance-card {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 15px 16px 14px;
  background: #FFFFFF;
  border: 1px solid #DCE4F0;
  box-shadow: inset 0 3px 0 #0F3D6E, 0 6px 16px rgba(28, 25, 23, 0.04);
  border-radius: 12px;
  overflow: hidden;
  text-decoration: none;
  color: #0B1528;
  transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.cd-reassurance-card:hover {
  transform: translateY(-2px);
  border-color: #0F3D6E;
  box-shadow: inset 0 3px 0 #0F3D6E, 0 10px 24px rgba(15, 61, 110, 0.1);
}

.cd-reassurance-card .cd-reassurance-icon {
  width: 42px !important;
  height: 42px !important;
  flex: 0 0 42px !important;
  border-radius: 11px;
  background: #EEF4FB !important;
  border: 1px solid #F3D4C3;
  color: #0F3D6E !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
}

.cd-reassurance-card .cd-reassurance-icon svg {
  width: 20px !important;
  height: 20px !important;
  display: block !important;
  margin: auto !important;
  flex-shrink: 0 !important;
  color: #0F3D6E !important;
}

.cd-reassurance-card strong {
  display: block;
  font-size: 12.5px;
  font-weight: 750;
  color: #0B1528;
  line-height: 1.25;
}

.cd-reassurance-card > div > span {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  font-size: 11px;
  color: #57534E;
  line-height: 1.35;
  margin-top: 3px;
}

/* 5. Ventes Flash & Prix Barrés Section */
.cd-flash-section {
  padding-top: 16px !important;
  padding-bottom: 36px !important;
}

.cd-flash-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 24px 28px;
  margin-bottom: 22px;
  border-radius: 18px;
  background: linear-gradient(125deg, #0B1528 0%, #2D1B14 55%, #0F3D6E 100%);
  color: #FFFFFF;
  box-shadow: 0 16px 36px rgba(28, 25, 23, 0.12);
}

.cd-flash-pill {
  display: inline-flex;
  align-items: center;
  padding: 4px 11px;
  border-radius: 999px;
  background: #0F3D6E;
  border: 1px solid rgba(255, 255, 255, 0.25);
  color: #FFFFFF;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 0.08em;
  margin-bottom: 8px;
}

.cd-flash-banner h2 {
  font-size: clamp(22px, 2.5vw, 32px);
  line-height: 1.15;
  color: #FFFFFF;
  margin: 0 0 6px;
}

.cd-flash-banner p {
  margin: 0;
  font-size: 13.5px;
  color: #DCE4F0;
  max-width: 680px;
}

.cd-flash-all-btn {
  background: #FFFFFF !important;
  border-color: #FFFFFF !important;
  color: #0B1528 !important;
  font-weight: 800 !important;
  white-space: nowrap;
  border-radius: 10px !important;
}

.cd-flash-all-btn:hover {
  background: #F6F8FB !important;
  color: #0F3D6E !important;
}

/* 6. Department Cards & Brand Showcase */
.cd-category-card .sf-category-image {
  position: relative;
}

.cd-category-badge {
  position: absolute;
  top: 10px;
  right: 10px;
  left: auto;
  z-index: 2;
  background: rgba(28, 25, 23, 0.9);
  color: #FFFFFF;
  font-size: 10px;
  font-weight: 700;
  padding: 3px 9px;
  border-radius: 999px;
}

.cd-category-brands {
  display: block;
  font-size: 11px;
  color: #68625D;
  margin-top: 3px;
  line-height: 1.35;
}

.cd-brands-section {
  margin-block: 10px 20px;
}

.cd-brands-box {
  background: #FFFFFF;
  border: 1px solid #DCE4F0;
  border-radius: 18px;
  padding: 26px 28px;
  box-shadow: 0 8px 24px rgba(28, 25, 23, 0.03);
}

.cd-brands-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}

.cd-brands-head h2 {
  font-size: clamp(22px, 2.3vw, 28px);
  margin: 4px 0 0;
}

.cd-brands-head > a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12.5px;
  font-weight: 700;
  color: #0F3D6E;
  text-decoration: none;
  white-space: nowrap;
}

.cd-brands-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 10px;
}

.cd-brand-chip {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 12px 14px;
  border-radius: 11px;
  background: #F6F8FB;
  border: 1px solid #DCE4F0;
  text-decoration: none;
  transition: all 0.18s ease;
}

.cd-brand-chip strong {
  font-size: 13.5px;
  font-weight: 800;
  color: #0B1528;
  letter-spacing: -0.02em;
}

.cd-brand-chip span {
  font-size: 10.5px;
  color: #78716C;
  margin-top: 3px;
}

.cd-brand-chip:hover {
  background: #0B1528;
  border-color: #0B1528;
  transform: translateY(-2px);
}

.cd-brand-chip:hover strong {
  color: #FFFFFF;
}

.cd-brand-chip:hover span {
  color: #93C5FD;
}

/* 7. Cdiscount-Grade High-Conversion Product Card */
.woocommerce ul.products li.cd-product-card {
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
}

.cd-product-card .sf-card-content {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
}

.cd-card-select-badge {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  padding: 4px 9px;
  border-radius: 999px;
  background: #EBF0F7;
  border: 1px solid #DFD5C6;
  color: #0B1528;
  font-size: 10px;
  font-weight: 750;
  letter-spacing: 0.03em;
  pointer-events: none;
}

.cd-card-wish-btn {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 3;
  width: 34px !important;
  height: 34px !important;
  padding: 0 !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  border: 1px solid #E2D9CC !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 2px 8px rgba(28, 25, 23, 0.08);
}

.cd-card-brand {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: 5px;
  background: #EBF0F7;
  color: #0B1528 !important;
  font-size: 10px;
  font-weight: 800 !important;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.cd-product-card .woocommerce-loop-product__title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.85em;
}

.cd-card-price-box {
  margin-top: auto;
  margin-bottom: 12px;
  padding: 10px 12px;
  border-radius: 10px;
  background: #F6F8FB;
  border: 1px solid #EDE5DA;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 6px !important;
}

.cd-card-price-top {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 6px;
}

.cd-card-price-box .price {
  margin: 0 !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
}

.cd-card-savings-pill {
  display: inline-flex;
  align-items: center;
  padding: 2px 7px;
  border-radius: 6px;
  background: #146C4E;
  color: #FFFFFF;
  font-size: 10.5px;
  font-weight: 750;
  white-space: nowrap;
}

.cd-card-logistics-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  flex-wrap: wrap;
}

.cd-card-ttc-note {
  font-size: 10px;
  color: #68625D;
  font-weight: 500;
}

/* 8. Shop / Archive Header & Promo Chips */
.cd-catalog-perks {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  margin-top: 12px;
  font-size: 12px;
  font-weight: 650;
  color: #0B1528;
}

.cd-catalog-perks span {
  background: #FFFFFF;
  border: 1px solid #DCE4F0;
  padding: 4px 10px;
  border-radius: 999px;
}

.cd-collection-chips a.cd-chip-promo {
  background: #EEF4FB;
  border-color: #93C5FD;
  color: #0F3D6E;
  font-weight: 750;
}

.cd-collection-chips a.cd-chip-promo[aria-current="page"] {
  background: #0F3D6E;
  border-color: #0F3D6E;
  color: #FFFFFF;
}

/* 9. Footer Top Reassurance Strip & Payment Pills */
.cd-footer {
  padding-top: 0 !important;
}

.cd-footer-top-strip {
  background: #231D19;
  border-bottom: 1px solid #352B25;
  padding: 22px 0;
  margin-bottom: 42px;
}

.cd-footer-perks {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.cd-footer-perk strong {
  display: block;
  font-size: 13px;
  color: #FFFFFF;
  margin-bottom: 3px;
}

.cd-footer-perk span {
  display: block;
  font-size: 11.5px;
  color: #C7B9AE;
  line-height: 1.4;
}

.cd-footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
}

.cd-payment-pills {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.tap-pay-logos {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  vertical-align: middle;
}

.tap-pay-logo {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 0 !important;
  border-radius: 5px;
  overflow: hidden;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.14);
}

.tap-pay-logo svg {
  display: block !important;
  width: 44px;
  height: 28px;
}

.tap-pay-logos--mini .tap-pay-logo svg {
  width: 32px;
  height: 20px;
}

.tap-pay-logos--pdp .tap-pay-logo svg,
.tap-pay-logos--checkout .tap-pay-logo svg {
  width: 38px;
  height: 24px;
}

.tap-trust-row--payment .tap-trust-pay-copy {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  flex: 1 1 auto !important;
  width: auto !important;
}

.cd-pay-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 28px;
  padding: 0 10px;
  border-radius: 5px;
  background: #26201C;
  border: 1px solid #3D332D;
  color: #DCE4F0;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}

.cd-pay-pill.cd-pay-secure {
  border-color: #146C4E;
  background: rgba(20, 108, 78, 0.16);
  color: #6EE7B7;
}

.cd-pay-pill.cd-pay-secure svg {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  color: #34D399;
}

/* Responsive Breakpoints for Cdiscount Bento & Grids */
@media (max-width: 1120px) {
  .cd-hero-bento {
    grid-template-columns: 1fr;
  }
  .cd-bento-side {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: auto;
  }
  .cd-reassurance-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .cd-brands-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .cd-footer-perks {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .cd-bento-main {
    grid-template-columns: 1fr;
    padding: 22px 18px;
    gap: 18px;
  }
  .cd-bento-side {
    grid-template-columns: 1fr;
  }
  .cd-reassurance-strip {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .cd-flash-banner {
    flex-direction: column;
    align-items: flex-start;
    padding: 20px 18px;
    gap: 14px;
  }
  .cd-flash-all-btn {
    width: 100%;
    justify-content: center;
  }
  .cd-brands-box {
    padding: 20px 16px;
  }
  .cd-brands-head {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  .cd-brands-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }
  .cd-footer-perks {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .cd-card-price-box {
    padding: 8px 9px;
  }
  .cd-card-price-box .price {
    font-size: 18px !important;
  }
  .cd-card-ttc-note {
    display: none;
  }
}

/* ==========================================================================
   1:1 SQUARE UNCLIPPED PRODUCT CARD STAGE (ZERO OVERFLOW CLIPPING)
   ========================================================================== */
.sf-card-image,
.woocommerce ul.products li.product .sf-card-image {
  aspect-ratio: 1 / 1 !important;
  padding: 14px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #FFFFFF !important;
  overflow: hidden !important;
  position: relative !important;
}
.sf-card-image > a,
.woocommerce ul.products li.product .sf-card-image > a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
}
.woocommerce ul.products li.product .sf-card-image img,
.sf-card-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 !important;
  background: #FFFFFF !important;
}
@media (max-width: 760px) {
  .sf-card-image,
  .woocommerce ul.products li.product .sf-card-image {
    padding: 10px !important;
  }
}
