/* SDS store - brand ratio: white 60%, red 30%, black 10% */
:root{--white:#fff;--grey:#f4f4f4;--line:#d9d9d9;--ink:#111;--mute:#6b6b6b;--red:#d71920;--red-d:#b0131a;--red-l:#fdecec;--w:1224px;color-scheme:light;
box-sizing:border-box}
*,*::before,*::after{box-sizing:inherit}
html{scroll-padding-top:150px;scroll-behavior:smooth}
body{margin:0;background:var(--white);color:var(--ink);font:16px/1.5 "Helvetica Neue",Helvetica,Arial,sans-serif;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
h1,h2,h3,h4{margin:0;line-height:1.05;font-family:"Barlow Condensed","Arial Narrow",Arial,sans-serif;text-transform:uppercase;letter-spacing:.06em;font-weight:700}
:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:#fff;padding:10px 16px;z-index:100}.skip:focus{left:8px;top:8px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.wrap{max-width:var(--w);margin:0 auto;padding:0 40px}
main{min-height:60vh}
main:not(.home){max-width:var(--w);margin:0 auto;padding:24px 40px 70px}
/* promo bar (red) */
.promo{background:var(--red);color:#fff;position:relative;z-index:30}
.promo>button{display:flex;align-items:center;justify-content:center;width:100%;height:38px;background:none;border:0;color:#fff;font-weight:700;font-size:13px;letter-spacing:.03em;text-transform:uppercase}
.promo svg{margin-left:10px;transition:transform .25s}.promo.open svg{transform:rotate(180deg)}
.promo-panel{background:#fff;border-bottom:1px solid var(--line);max-height:0;overflow:hidden;transition:max-height .3s ease}.promo.open+.promo-panel{max-height:180px}
.promo-panel ul{list-style:none;margin:0 auto;padding:16px 40px;max-width:var(--w);display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;font-size:14px}
.promo-panel b{color:var(--red)}
/* header */
header{position:sticky;top:0;z-index:40;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:26px;padding:0 40px;transition:transform .3s}
header.hide{transform:translateY(-100%)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;padding:8px 0}
.brand img{height:46px;width:auto}

.hr{flex:1;display:flex;flex-direction:column;min-width:0}
.util{display:flex;justify-content:flex-end;gap:18px;font-size:12px;padding-top:8px}
.util a{text-decoration:none}.util a:hover{text-decoration:underline}.util .joinlink{color:var(--red);font-weight:700}
.mainrow{display:flex;align-items:center;gap:8px}
nav{flex:1;display:flex;justify-content:flex-end}
.nv>a{display:block;padding:15px 11px 13px;font-size:15px;text-transform:uppercase;text-decoration:none;border-bottom:3px solid transparent;transition:border-color .2s}
.nv:nth-child(-n+3)>a{font-weight:700}
.nv:hover>a,.nv>a[aria-current]{border-bottom-color:var(--red)}
.sw{position:relative}
.sf{display:flex;align-items:center;background:var(--grey);width:230px;padding:0 6px 0 12px;transition:width .25s,box-shadow .2s}
.sf:focus-within{width:300px;box-shadow:inset 0 0 0 2px var(--ink)}
.sf input{border:0;background:transparent;flex:1;min-width:0;padding:10px 0;outline:0}
.sf button{background:none;border:0;padding:4px;display:flex}
.sug{position:absolute;right:0;top:100%;width:360px;background:#fff;border:1px solid var(--line);box-shadow:0 14px 28px rgba(0,0,0,.12);display:none;z-index:50;padding:14px 16px}
.sug.show{display:block}.sug b{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin:4px 0 8px}
.sug a{display:flex;gap:10px;align-items:center;padding:6px 0;text-decoration:none;font-size:14px}.sug a:hover{text-decoration:underline}
.sug img{width:44px;height:44px;object-fit:cover;background:var(--grey)}
.ib{position:relative;background:none;border:0;padding:8px 7px;display:inline-flex;align-items:center;text-decoration:none;color:var(--ink)}
.ib:hover svg{transform:scale(1.1)}.ib svg{transition:transform .15s}
.cb{position:absolute;top:0;right:-2px;background:var(--red);color:#fff;border-radius:50%;font-size:11px;font-weight:700;min-width:18px;height:18px;display:grid;place-items:center;padding:0 3px}.cb:empty{display:none}
.menu-btn{display:none}
/* mega menu */
.nv{position:static}
.mega{position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid var(--line);box-shadow:0 18px 28px rgba(0,0,0,.1);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .2s,transform .2s,visibility 0s .2s}
.nv:hover .mega,.nv:focus-within .mega{opacity:1;visibility:visible;transform:none;transition-delay:.06s,.06s,0s}
.mega::before{content:"";position:absolute;top:-16px;left:0;right:0;height:16px}
.mg{display:flex;max-width:var(--w);margin:0 auto;padding:34px 40px;gap:30px}
.lead{flex:0 0 220px;border-right:1px solid var(--line);padding-right:24px}
.mc{flex:1;display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));gap:24px}.mgrp+.mgrp{margin-top:22px}.mega b a{padding:0;display:inline;font-size:14px;font-weight:700;text-transform:uppercase}
.mega b{display:block;text-transform:uppercase;font-size:14px;margin-bottom:12px}
.mega a{display:block;padding:5px 0;font-size:14px;text-decoration:none;position:relative}.mega a:hover{text-decoration:underline;color:var(--red)}
.mega .promo2{background:var(--red);color:#fff;font-weight:800;width:140px;padding:10px;margin-top:14px;font:800 20px/1.1 "Barlow Condensed",Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}.mega .promo2:hover{color:#fff;background:var(--red-d);text-decoration:none}
.allbar{border-top:1px solid var(--line);display:flex;gap:40px;max-width:var(--w);margin:0 auto;padding:6px 40px;flex-wrap:wrap}.allbar a{font-weight:700}
.featc{flex:0 0 260px;border:1px solid var(--line);text-decoration:none}.featc img{aspect-ratio:1;object-fit:cover;width:100%}.featc b,.featc span{display:block;padding:0 16px}.featc b{margin-top:14px}.featc span{font-size:14px;padding-bottom:16px}
/* mobile nav */
.mnav{position:fixed;inset:0 25% 0 0;max-width:420px;background:#fff;z-index:92;transform:translateX(-102%);transition:transform .3s;overflow:auto;padding:16px 20px 40px}.mnav.open{transform:none}
.mnav details{border-bottom:1px solid var(--line)}.mnav summary{padding:16px 0;font-weight:700;text-transform:uppercase;cursor:pointer}.mnav a{display:block;padding:8px 0 8px 12px;text-decoration:none;font-size:15px}
.mnav .mt{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
/* buttons */
.btn{display:inline-flex;align-items:center;gap:10px;background:var(--red);color:#fff;border:2px solid var(--red);padding:13px 24px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;text-decoration:none;transition:background .2s,color .2s,border-color .2s}
.btn::after{content:"\2192";transition:transform .2s}.btn:hover::after{transform:translateX(5px)}.btn:hover{background:var(--red-d);border-color:var(--red-d)}
.btn.ghost{background:#fff;color:var(--ink);border-color:var(--ink)}.btn.ghost:hover{background:var(--ink);color:#fff}
.btn.noarrow::after{display:none}.btn.block{width:100%;justify-content:center}
.btn[disabled]{opacity:.5;pointer-events:none}
.link{background:none;border:0;padding:0;font-weight:700;text-decoration:underline;color:var(--ink)}
.black{background:var(--ink);border-color:var(--ink)}.black:hover{background:#000}
/* strip + hero */
.strip{background:var(--grey);text-align:center;font-weight:700;padding:14px 60px;position:relative}.strip a{position:absolute;right:30px;top:9px;text-decoration:none;font-size:22px;transition:transform .2s}.strip a:hover{transform:translateX(4px)}
.hero{position:relative}
.hg{display:grid;grid-template-columns:repeat(3,1fr);height:600px}
.hp{position:relative;overflow:hidden;color:#fff;background:var(--ink)}
.hp img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s ease}.hp:hover img{transform:scale(1.04)}
.hp::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.35),transparent 40%,rgba(0,0,0,.25))}
.hbig{position:absolute;z-index:2;top:22px;left:0;right:0;text-align:center;font:800 clamp(34px,4.6vw,76px)/1 "Barlow Condensed","Arial Narrow",Arial,sans-serif;text-transform:uppercase;letter-spacing:.04em;text-shadow:0 2px 14px rgba(0,0,0,.35)}
.hs{position:absolute;z-index:2;top:34px;left:0;right:0;text-align:center;font:800 28px "Barlow Condensed",Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.hcap{position:absolute;z-index:3;left:max(24px,6vw);bottom:28px;max-width:430px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.bx{background:#fff;color:var(--ink);padding:2px 10px;font:800 24px "Barlow Condensed",Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.bx2{background:#fff;color:var(--ink);margin:0;padding:2px 10px;font-size:16px}
.hb{display:inline-block;background:#fff;color:var(--ink);border:1px solid var(--ink);padding:9px 14px;font-weight:700;text-transform:uppercase;text-decoration:none;margin:6px 8px 0 0;transition:background .2s,color .2s}.hb::after{content:" \2192"}.hb:hover{background:var(--red);border-color:var(--red);color:#fff}
/* sections / rails */
.sh{font:700 36px/1.1 "Barlow Condensed","Arial Narrow",Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase;margin:64px 0 24px}
.sh::after{content:"";display:block;width:56px;height:4px;background:var(--red);margin-top:12px}
.rail{position:relative}.track{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-behavior:smooth}.track::-webkit-scrollbar{display:none}
.nx,.pv{position:absolute;top:40%;width:48px;height:48px;background:#fff;color:var(--ink);border:1px solid var(--ink);font-size:22px;z-index:2;transition:background .2s,color .2s,opacity .2s}.nx{right:0}.pv{left:0}.nx:hover,.pv:hover{background:var(--ink);color:#fff}.nx[hidden],.pv[hidden]{display:none}
.dc{flex:0 0 max(240px,calc((100% - 24px)/4));scroll-snap-align:start;text-decoration:none;border:1px solid transparent;display:flex;flex-direction:column;padding-bottom:20px;transition:border-color .2s}.dc:hover{border-color:var(--ink)}
.di{aspect-ratio:3/4;overflow:hidden;background:var(--grey)}.di img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.dc:hover .di img{transform:scale(1.05)}
.dc h3{font-size:18px;margin:20px 16px 10px}.dc p{margin:0 16px 16px;flex:1}.sn{margin:0 16px;font-weight:700;text-decoration:underline;text-transform:uppercase}.dc:hover .sn{color:var(--red)}
.st{flex:0 0 197px;aspect-ratio:1;background:var(--grey);position:relative;display:grid;place-items:center;text-decoration:none;scroll-snap-align:start;border:1px solid transparent;transition:border-color .2s}.st:hover{border-color:var(--ink)}
.st img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.st:hover img{transform:scale(1.07)}
.lb{position:absolute;left:8px;bottom:8px;background:#fff;padding:6px 10px;font-size:14px;text-transform:uppercase}
.rc{flex:0 0 max(260px,calc((100% - 32px)/4));scroll-snap-align:start;text-decoration:none;border:1px solid transparent;transition:border-color .2s}.rc:hover{border-color:var(--ink)}
.ri{aspect-ratio:3/2;overflow:hidden;background:var(--grey)}.ri img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.rc:hover .ri img{transform:scale(1.05)}
.cp{background:#fff;margin:-22px 0 0 20px;position:relative;padding:14px 20px 18px}.cp b{display:block;margin-bottom:8px}.cp span{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:15px;color:var(--mute)}
.seas{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:30px;margin:60px 0}.seas b{display:block;text-transform:uppercase;margin-bottom:14px}.seas a{display:block;padding:9px 0;color:var(--mute);text-decoration:none;font-size:14px}.seas a:hover{color:var(--red);text-decoration:underline}
.seo{background:var(--grey);padding:70px 20px;text-align:center}.seo h2{font-size:34px;max-width:640px;margin:0 auto 26px}.seo p{max-width:604px;margin:0 auto 22px;text-align:justify;font-size:15px}
/* grid + cards */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:6px}
.card{font-size:14px;display:flex;flex-direction:column;position:relative}
.card>:not(.ph){padding:0 8px}
.ph{background:var(--grey);position:relative;aspect-ratio:3/4;overflow:hidden;margin-bottom:12px}
.ph a{display:block;height:100%}
.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .35s,transform .5s}
.ph.cut img{mix-blend-mode:multiply;object-fit:contain;padding:6%}
.ph img.b{opacity:0}.card:hover .ph img.b{opacity:1}.card:hover .ph img.a:not(:only-child){opacity:0}.card:hover .ph img:only-child{transform:scale(1.05)}
.card{border:1px solid transparent;padding-bottom:14px;transition:border-color .2s}.card:hover{border-color:var(--ink)}
.wl{position:absolute;top:6px;right:8px;background:none;border:0;padding:6px;line-height:0;z-index:2}
.wl svg{width:24px;height:24px;fill:none;stroke:var(--ink);stroke-width:1.6;transition:fill .15s,stroke .15s}
.wl[aria-pressed=true] svg{fill:var(--red);stroke:var(--red)}.wl.pop svg{animation:pop .35s}
@keyframes pop{40%{transform:scale(1.35)}}
.pr b{font-size:15px}.pr s{color:var(--mute);margin-left:6px}.pr em{font-style:normal;color:var(--red);font-weight:700;margin-left:6px}
.card .nm{text-decoration:none;text-transform:uppercase}.card:hover .nm{text-decoration:underline}
.card .sub{color:var(--mute)}.card .tg{color:var(--red);font-weight:700}
/* breadcrumb / titles */
.crumb{font-size:14px;margin:26px 0 22px}.crumb a{text-decoration:underline}
.ptitle{font-size:46px;letter-spacing:.12em;margin:0 0 14px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:800}.ptitle sup{font-size:14px;letter-spacing:0;margin-left:6px;color:var(--red)}
.desc{max-width:880px;font-size:17px;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.desc.open{display:block}
.fbar{display:flex;justify-content:flex-end;margin:20px 0 18px;gap:12px;align-items:center}
.fsbtn{display:flex;gap:12px;align-items:center;border:1px solid var(--ink);background:#fff;padding:14px 22px;font-weight:700;transition:background .2s,color .2s}.fsbtn:hover{background:var(--ink);color:#fff}.fsbtn b{background:var(--red);color:#fff;font-size:11px;min-width:16px;text-align:center}.fsbtn b:empty{display:none}
.fp{position:fixed;top:0;left:0;bottom:0;width:min(400px,100%);background:#fff;z-index:90;transform:translateX(-100%);transition:transform .3s;padding:22px;overflow:auto}.fp.open{transform:none}
fieldset{border:0;border-top:1px solid var(--line);padding:14px 0 6px;margin:0}legend{font-weight:700;padding-right:8px;text-transform:uppercase;font-size:14px}fieldset label{display:block;padding:4px 0;cursor:pointer}
.more{text-align:center;padding:36px 0}.prog{width:min(260px,100%);height:3px;background:var(--line);margin:10px auto 18px}.prog i{display:block;height:100%;background:var(--red);transition:width .4s}
.empty{padding:50px 0;text-align:center}.empty p{max-width:46ch;margin:10px auto 20px;color:var(--mute)}
/* product page */
.pdp{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,1fr);gap:48px;align-items:start}
.gal{position:sticky;top:130px}
.gm{background:var(--grey);aspect-ratio:3/4;overflow:hidden;position:relative;cursor:zoom-in}
.gm img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .25s}.gm.cut img{mix-blend-mode:multiply;object-fit:contain;padding:5%}.gm.z img{transform:scale(2)}
.thumbs{display:flex;gap:8px;margin-top:8px}.thumbs button{width:84px;aspect-ratio:3/4;background:var(--grey);border:2px solid transparent;padding:0;overflow:hidden}.thumbs button[aria-pressed=true]{border-color:var(--ink)}.thumbs img{width:100%;height:100%;object-fit:cover}.thumbs .cut img{mix-blend-mode:multiply}
.pinfo h1{font-size:44px;letter-spacing:.04em;margin:6px 0 8px}.pinfo .pr b{font-size:22px}
.tagline{color:var(--red);font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:.08em}
.sizes{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:10px 0 8px}
.sizes button{padding:14px 6px;background:#fff;border:1px solid var(--line);transition:border-color .15s,background .15s}.sizes button:hover{border-color:var(--ink)}.sizes button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
.sizes.err{animation:shake .4s;outline:2px solid var(--red);outline-offset:4px}
@keyframes shake{25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.perks{list-style:none;padding:0;margin:20px 0;display:grid;gap:8px;font-size:14px}.perks li::before{content:"";display:inline-block;width:8px;height:8px;background:var(--red);margin-right:10px}
details{border-bottom:1px solid var(--line);padding:16px 0}summary{font-weight:700;cursor:pointer;text-transform:uppercase;font-size:14px;letter-spacing:.04em}details p{margin:10px 0 0;color:var(--mute)}
.stars{color:var(--red);letter-spacing:2px}
.rev{border-top:1px solid var(--line);padding:16px 0;max-width:680px}
/* forms */
.form{display:grid;gap:14px;max-width:520px}
.form label{display:grid;gap:6px;font-weight:600;font-size:14px}
.form input,.form select,.form textarea{border:1px solid var(--ink);padding:13px 12px;background:#fff;border-radius:0;font-weight:400}
.form input:focus,.form select:focus,.form textarea:focus{outline:3px solid var(--red);outline-offset:0}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.msg{padding:12px 14px;border-left:4px solid var(--red);background:var(--red-l);font-size:14px}.msg.ok{border-color:var(--ink);background:var(--grey)}
.check{display:flex!important;grid-template-columns:none!important;gap:10px;align-items:flex-start;font-weight:400!important}.check input{margin-top:4px}
.tabs{display:flex;gap:0;border-bottom:2px solid var(--ink);margin-bottom:26px}.tabs button{flex:1;background:none;border:0;padding:14px;font-weight:700;text-transform:uppercase}.tabs button[aria-selected=true]{background:var(--ink);color:#fff}
.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}
.panel{border:1px solid var(--line);padding:24px}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;margin:20px 0 30px}
.tile{background:var(--grey);padding:22px;text-decoration:none;min-height:130px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid transparent;text-align:left;transition:border-color .2s,background .2s}.tile:hover,.tile[aria-pressed=true]{border-color:var(--ink);background:#fff}.tile h3{font-size:26px}.tile span{color:var(--mute);font-size:14px}
.ben{border-top:4px solid var(--red);background:var(--grey);padding:22px}.ben h3{font-size:24px;margin-bottom:8px}
table{border-collapse:collapse;width:100%;font-size:14px}th,td{border:1px solid var(--line);padding:10px 12px;text-align:left}th{background:var(--grey);text-transform:uppercase;font-size:12px;letter-spacing:.06em}
/* stores */
.stores{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:24px;align-items:start}
.store{border:1px solid var(--line);padding:18px;margin-bottom:8px;cursor:pointer;transition:border-color .2s,box-shadow .2s;background:#fff;width:100%;text-align:left}.store:hover,.store.on{border-color:var(--ink);box-shadow:inset 4px 0 0 var(--red)}
.store h3{font-size:24px;margin-bottom:6px}.store p{margin:2px 0;color:var(--mute);font-size:14px}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.chip{border:1px solid var(--ink);background:#fff;padding:7px 14px;font-size:14px}.chip[aria-pressed=true]{background:var(--ink);color:#fff}
.map{background:var(--grey);aspect-ratio:4/3;position:relative;border:1px solid var(--line);overflow:hidden;position:sticky;top:130px}
.pin{position:absolute;transform:translate(-50%,-100%);background:none;border:0;padding:0}.pin svg{width:34px;height:42px;fill:var(--ink);transition:fill .2s,transform .2s}.pin.on svg,.pin:hover svg{fill:var(--red);transform:scale(1.2)}
/* bag / checkout */
.lines{display:grid;gap:8px}
.line{display:grid;grid-template-columns:120px 1fr auto;gap:18px;border:1px solid var(--line);padding:12px;align-items:start}
.line .th{background:var(--grey);aspect-ratio:1;overflow:hidden}.line .th img{width:100%;height:100%;object-fit:cover}.line .th.cut img{mix-blend-mode:multiply;object-fit:contain}
.qty{display:inline-flex;align-items:center;border:1px solid var(--ink);margin:8px 0}.qty button{width:34px;height:34px;background:#fff;border:0}.qty button:hover{background:var(--ink);color:#fff}.qty span{min-width:34px;text-align:center}
.sum{border:1px solid var(--ink);padding:22px;position:sticky;top:130px}.sum h2{font-size:26px;margin-bottom:14px}
.sum .r{display:flex;justify-content:space-between;padding:6px 0}.sum .t{border-top:1px solid var(--line);margin-top:8px;padding-top:12px;font-weight:700;font-size:18px}
.ship{height:6px;background:var(--grey);margin:6px 0 4px}.ship i{display:block;height:100%;background:var(--red);transition:width .4s}
.bagwrap{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:36px;align-items:start}
.opts{display:grid;gap:8px}.opt{border:1px solid var(--line);padding:14px;display:flex;gap:12px;align-items:flex-start;cursor:pointer}.opt:has(input:checked){border-color:var(--ink);box-shadow:inset 4px 0 0 var(--red)}
/* drawer */
.scrim{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:80;opacity:0;pointer-events:none;transition:opacity .3s}.scrim.open{opacity:1;pointer-events:auto}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(430px,100%);background:#fff;z-index:95;transform:translateX(100%);transition:transform .3s;display:flex;flex-direction:column;padding:20px}.drawer.open{transform:none}
.drawer .items{flex:1;overflow:auto;display:grid;gap:8px;align-content:start;margin:14px 0}
.mini{display:grid;grid-template-columns:76px 1fr auto;gap:12px;border:1px solid var(--line);padding:8px;align-items:center;font-size:14px}.mini .th{background:var(--grey);aspect-ratio:1;overflow:hidden}.mini .th img{width:100%;height:100%;object-fit:cover}.mini .th.cut img{mix-blend-mode:multiply;object-fit:contain}
.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:var(--ink);color:#fff;padding:12px 20px;z-index:120;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s}.toast.show{opacity:1;transform:translate(-50%,0)}
#top{position:fixed;right:24px;bottom:24px;width:52px;height:52px;background:var(--ink);color:#fff;border:0;font-size:22px;display:none;z-index:35;transition:background .2s}#top:hover{background:var(--red)}
/* footer */
.join{background:var(--red);color:#fff;display:flex;justify-content:center;align-items:center;gap:36px;padding:36px 20px;flex-wrap:wrap;text-align:center}
.join h2{font-size:30px;letter-spacing:.1em}
.jb{background:#fff;color:var(--ink);padding:16px 22px;font-weight:700;text-transform:uppercase;text-decoration:none;box-shadow:4px 4px 0 var(--ink);transition:transform .15s,box-shadow .15s}.jb::after{content:" \2192"}.jb:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}
footer{background:var(--ink);color:#fff;padding:46px 40px 30px}
.fcols{max-width:var(--w);margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:28px}.fcols b{display:block;text-transform:uppercase;margin-bottom:14px;letter-spacing:.04em}.fcols a{display:block;padding:5px 0;color:#fff;text-decoration:none;font-size:14px}.fcols a:hover{text-decoration:underline;color:#ff8a8f}
.fine{max-width:var(--w);margin:34px auto 0;border-top:1px solid #333;padding-top:20px;color:#aaa;font-size:13px;display:flex;gap:24px;flex-wrap:wrap}.fine a{color:#aaa}
.brandf{display:flex;align-items:center;gap:10px;margin-bottom:14px}.brandf img{height:38px;width:auto}
/* scroll reveal */
.rv{opacity:0;transform:translateY(18px);transition:opacity .6s,transform .6s}.rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}.rv{opacity:1;transform:none}}
@media(max-width:1000px){
 header{padding:0 16px;gap:10px;flex-wrap:wrap}.menu-btn{display:inline-flex}.brand img{width:40px;height:40px}.hr{display:contents}.util{display:none}.mainrow{display:contents}nav{display:none}.sw{order:9;flex:1 1 100%;padding-bottom:10px}.sf,.sf:focus-within{width:100%}.sug{width:100%}
 .mega{display:none}.wrap{padding:0 16px}main:not(.home){padding:16px 16px 60px}
 .pdp,.two,.bagwrap,.stores{grid-template-columns:1fr}.gal,.sum,.map{position:static}
 .hg{grid-template-columns:1fr;height:auto}.hp{height:360px}.hcap{position:static;padding:16px}.nx,.pv{display:none}
 .line{grid-template-columns:90px 1fr}.line>:last-child{grid-column:2}.form .row{grid-template-columns:1fr}.ptitle{font-size:32px}.pinfo h1{font-size:34px}
 footer{padding:36px 16px}.promo-panel ul{padding:16px}
}

/* account portal */
.portal{display:grid;grid-template-columns:250px minmax(0,1fr);gap:40px;align-items:start}
.pnav{position:sticky;top:130px;border:1px solid var(--line)}
.pnav a{display:block;padding:14px 16px;text-decoration:none;font-weight:700;border-left:4px solid transparent;border-bottom:1px solid var(--line);transition:background .2s}
.pnav a:hover{background:var(--grey)}.pnav a[aria-current]{border-left-color:var(--red);background:var(--grey)}
.stat{background:var(--grey);padding:18px;text-decoration:none;border-top:4px solid var(--red);display:flex;flex-direction:column;gap:4px;transition:background .2s}.stat b{font:800 36px/1 "Barlow Condensed",Arial,sans-serif;letter-spacing:.04em}.stat span{font-size:14px;color:var(--mute)}.stat:hover{background:#fff;outline:1px solid var(--ink)}
.ord{border:1px solid var(--line);margin-bottom:10px}.ord-h{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:14px 16px;background:var(--grey)}.ord-b{padding:14px 16px;display:grid;gap:8px}
.pill{display:inline-block;padding:2px 10px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;background:var(--ink);color:#fff}.pill.red{background:var(--red)}
@media(max-width:1000px){.portal{grid-template-columns:1fr}.pnav{position:static;display:flex;overflow-x:auto}.pnav a{white-space:nowrap;border-bottom:0;border-left:0;border-bottom:4px solid transparent}.pnav a[aria-current]{border-bottom-color:var(--red)}}

/* category hero */
.chero{position:relative;aspect-ratio:16/5;min-height:230px;background:linear-gradient(115deg,var(--red) 0 58%,#111 58% 100%);overflow:hidden;margin:0 0 8px}
.chero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}
.cword{position:absolute;right:24px;top:50%;transform:translateY(-50%);font:800 clamp(44px,8vw,130px)/1 "Barlow Condensed","Arial Narrow",Arial,sans-serif;color:rgba(255,255,255,.14);text-transform:uppercase;white-space:nowrap;letter-spacing:.04em}
.cbox{position:absolute;left:28px;bottom:26px;z-index:3;max-width:min(560px,86%);display:flex;flex-direction:column;gap:6px;align-items:flex-start}
a.chip{text-decoration:none;display:inline-block}a.chip:hover{background:var(--ink);color:#fff}
@media(max-width:1000px){.chero{aspect-ratio:16/8}.cword{display:none}}

.ccol{position:absolute;right:0;top:0;bottom:0;width:62%;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;z-index:1;clip-path:polygon(9% 0,100% 0,100% 100%,0 100%)}
.ccol img{width:100%;height:100%;object-fit:cover;position:static}
.chero img{position:static}
.chero .ccol img{position:static}
.brand span.wm{display:flex;flex-direction:column;line-height:1;gap:4px}
.wm b{font:800 28px/1 "Barlow Condensed","Arial Narrow",Arial,sans-serif;letter-spacing:.1em}
.wm small{font:600 12px/1 "Helvetica Neue",Arial,sans-serif;letter-spacing:.08em;color:var(--mute)}
footer .wm small{color:#aaa}
@media(max-width:1000px){.ccol{width:100%;clip-path:none;opacity:.55}.wm b{font-size:22px}}

.store a{color:var(--ink)}.gal{max-width:560px}

@media(max-width:1000px){.chero{aspect-ratio:auto;height:240px;min-height:0;width:100%}}

/* ===== store finder ===== */
main.full{max-width:none;padding:0}
.sfinder{display:grid;grid-template-columns:480px minmax(0,1fr);height:calc(100vh - 160px);min-height:620px}
.sf-left{overflow:auto;padding:28px 32px 40px;background:#fff}
.sf-title{font:800 46px/1 "Barlow Condensed","Arial Narrow",Arial,sans-serif;letter-spacing:.08em;margin:0 0 26px}
.sf-search{display:flex;border:1px solid #111;height:62px;margin-bottom:6px}.sf-search:focus-within{outline:3px solid var(--red)}
.sf-search input{flex:1;border:0;padding:0 16px;font-size:18px;min-width:0;outline:0;background:transparent}.sf-search button{background:none;border:0;width:58px;display:grid;place-items:center}.sf-search button:hover{color:var(--red)}
.sf-item{border-top:1px solid var(--line);padding:26px 0 24px;cursor:pointer;transition:background .2s,padding .2s}
.sf-item:first-of-type{border-top:0}
.sf-item:hover,.sf-item:focus-visible{background:var(--grey)}
.sf-item.on{box-shadow:inset 5px 0 0 var(--red);padding-left:16px;background:var(--grey)}
.sf-item>b{font-size:18px}.sf-item p{margin:9px 0;font-size:17px}.sf-item .mute{color:var(--mute);font-size:15px}
.sd{font-size:17px;text-decoration:underline;display:inline-block;margin-top:2px}
.sf-map{position:relative;background:#e5e3df;isolation:isolate}#map{position:absolute;inset:0}
.sf-map .leaflet-tile-pane,.sd-map .leaflet-tile-pane{filter:grayscale(1) contrast(.9) brightness(1.05)}
.sd-map{position:relative;height:380px;background:#e5e3df;isolation:isolate}#dmap{position:absolute;inset:0}
.pin{background:none;border:0;color:#000;transition:transform .2s,color .2s;transform-origin:50% 100%}.pin svg{display:block;filter:drop-shadow(0 2px 2px rgba(0,0,0,.3))}.pin:hover{color:var(--red)}.pin.on{color:var(--red);transform:scale(1.25)}
.leaflet-popup-content{font:14px/1.5 "Helvetica Neue",Arial,sans-serif;margin:14px 16px}.leaflet-popup-content a{color:var(--ink)}
.sf-tabs{display:none}
/* ===== mobile header (menu + heart | logo | account, search, bag) ===== */
.sbtn{display:none}
@media(max-width:1000px){
 header{padding:0 6px;gap:0;min-height:60px;flex-wrap:wrap;align-items:center}
 .brand{position:absolute;left:50%;top:0;height:60px;transform:translateX(-50%);padding:0;gap:8px;order:3}
 .brand img{height:34px}.brand .wm b{font-size:19px}.brand .wm small{font-size:9px;letter-spacing:.06em}
 .menu-btn{order:1;display:inline-flex}.wl-link{order:2}.acc-link{order:4;margin-left:auto}.sbtn{order:5;display:inline-flex}#bagBtn{order:6}
 .ib{padding:10px 9px}
 .sw{display:none;order:9;flex:1 1 100%;padding:4px 8px 12px}header.sopen .sw{display:block}
 .sf,.sf:focus-within{width:100%}
 .sfinder{display:block;height:auto;min-height:0}
 .sf-tabs{display:grid;grid-template-columns:1fr 1fr;position:sticky;top:60px;z-index:5;background:#fff;border-bottom:1px solid var(--line)}
 .sf-tabs button{padding:14px;font-weight:700;border:0;border-bottom:3px solid transparent;background:#fff}.sf-tabs button[aria-pressed=true]{border-bottom-color:var(--red)}
 .sf-map{display:none;height:calc(100vh - 150px);min-height:420px}.sfinder.showmap .sf-map{display:block}.sfinder.showmap .sf-left{display:none}
 .sf-left{padding:20px 16px 40px}.sf-title{font-size:34px;margin-bottom:18px}.sd-map{height:300px}
}
@media(max-width:700px){.mnav{inset:0;max-width:none;width:100%}.promo>button{font-size:12px}}

.is-open{color:#117a3d}.is-closed{color:#e20000}.is-open b,.is-closed b{font-weight:700}
@media(max-width:400px){.brand .wm small{display:none}.brand .wm b{font-size:18px}.brand img{height:30px}}

.map-note{position:absolute;left:12px;top:12px;z-index:500;background:#fff;border-left:4px solid var(--red);padding:10px 14px;font-size:13px;line-height:1.4;max-width:300px;margin:0;box-shadow:0 2px 8px rgba(0,0,0,.18)}
