/* All Black Apparel v9 · "The Thread". No grain, no noise, no vignette. */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-font-smoothing:antialiased;background:var(--ab-void)}
html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}
body{overflow-x:hidden;min-height:100vh;position:relative}
img{display:block;max-width:100%}a{color:inherit}
::selection{background:var(--ox);color:var(--ab-bone)}
.accent{font-family:var(--ab-font-accent);font-weight:400;letter-spacing:.02em;color:#cfc9bf;opacity:.85}
.label.ox-l,.ox-l{color:var(--ox-2)}
.btn{display:inline-flex;align-items:center;gap:12px;padding:15px 28px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;border:1px solid var(--ab-bone);cursor:pointer;transition:background .5s,color .5s,border-color .5s;border-radius:0}
.btn:hover{background:var(--ox);border-color:var(--ox);color:var(--ab-bone)}
.btn--ghost{background:none;color:var(--ab-bone);border:1px solid rgba(242,240,235,.5)}
.btn--ink{background:var(--cream-ink);color:var(--cream);border-color:var(--cream-ink)}
.tlink{font:500 12px var(--ab-font-body);letter-spacing:.18em;text-transform:uppercase;text-decoration:none;padding-bottom:6px;background:linear-gradient(var(--ox-2),var(--ox-2)) 0 100%/0 1px no-repeat,linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;transition:background-size .7s cubic-bezier(.16,1,.3,1)}
.tlink:hover{background-size:100% 1px,100% 1px}

/* nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:700;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:26px 4vw;mix-blend-mode:difference;color:#f2f0eb}
.nav nav{display:flex;gap:30px}.nav nav a,.cart-btn{font:500 11px var(--ab-font-body);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;color:#f2f0eb;position:relative;padding-bottom:5px}
.nav nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .7s cubic-bezier(.16,1,.3,1)}
.nav nav a:hover::after{transform:scaleX(1)}
.nav-mark img{width:150px;height:auto}
.cart-btn{justify-self:end;background:none;border:0;cursor:pointer;display:flex;gap:8px;align-items:center}
.nav-ox{position:fixed;top:0;left:0;right:0;z-index:701;pointer-events:none;display:grid;grid-template-columns:1fr auto 1fr;padding:26px 4vw}
.nav-ox nav{display:flex;gap:30px}.nav-ox nav span{font:500 11px var(--ab-font-body);letter-spacing:.2em;text-transform:uppercase;color:transparent;position:relative;padding-bottom:5px}
.nav-ox nav span.on::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--ox-2)}

/* thread */
.thread{position:absolute;left:0;top:0;width:100%;pointer-events:none;overflow:visible}
.thread path{fill:none;stroke-linecap:round;stroke-linejoin:round}
.thread .t-core{stroke:var(--ox-2);stroke-width:2.2}
.thread .t-hi{stroke:var(--ox-3);stroke-width:.7;opacity:.75;transform:translate(-.8px,-.8px)}
.thread--back{z-index:1}.thread--front{z-index:6;filter:drop-shadow(0 6px 5px rgba(0,0,0,.38))}
.thread-tip{fill:var(--ox-3)}
main{position:relative}
.sec{position:relative}
.layer{position:relative;z-index:2}.front{position:relative;z-index:3}

/* scene 1 · blackout */
.blackout{height:100vh;min-height:560px;background:#030303;display:flex;align-items:center;justify-content:center;overflow:hidden}
.bo-pull{position:absolute;left:0;top:50%;width:100%;height:4px;overflow:visible;z-index:2}
.bo-pull path{fill:none;stroke:var(--ox-2);stroke-width:1.6;stroke-linecap:round}
.bo-mark{position:relative;z-index:3;width:min(78vw,980px);text-align:center;margin-top:-3vh}
.bo-word{position:relative;aspect-ratio:1369/306}
.bo-word i{position:absolute;inset:0;-webkit-mask:url(../img/brand/logo_primary.svg) center/contain no-repeat;mask:url(../img/brand/logo_primary.svg) center/contain no-repeat}
.bo-word .w-base{background:#151515}
.bo-word .w-emb{background:transparent;filter:drop-shadow(0 -1px 0 rgba(255,255,255,.06)) drop-shadow(0 2px 1px rgba(0,0,0,.9))}
.bo-word .w-emb::before{content:"";position:absolute;inset:0;background:#121212}
.bo-word .w-lit{background:linear-gradient(100deg,transparent 0%,transparent 38%,rgba(242,240,235,.08) 44%,#d9d4ca 50%,rgba(242,240,235,.08) 56%,transparent 62%,transparent 100%) 0 0/300% 100% no-repeat;background-position:110% 0}
.bo-word .w-rest{background:#2c2a28;opacity:0}
.bo-line{margin-top:5vh;font:400 clamp(17px,1.5vw,22px) var(--ab-font-display);letter-spacing:.14em;color:#b9b4ab;opacity:0}
.bo-cue{position:absolute;bottom:5vh;left:50%;transform:translateX(-50%);z-index:3;opacity:0}
.bo-cue::after{content:"";display:block;width:1px;height:46px;margin:12px auto 0;background:linear-gradient(var(--ox-2),transparent)}

/* scene 2 · signature */
.sig{height:100vh;overflow:hidden;background:#050505;z-index:2}
.sig-stage{position:absolute;inset:0;overflow:hidden}
.sig-cam{position:absolute;left:50%;top:50%;width:max(100vw,178vh);aspect-ratio:2752/1536;transform-origin:50% 50%;will-change:transform}
.sig-cam img,.sig-cam canvas,.sig-cam svg{position:absolute;inset:0;width:100%;height:100%}
.sig-cam .sig-blur{filter:blur(6px);-webkit-mask-image:linear-gradient(90deg,transparent 0%,transparent var(--fa,30%),#000 calc(var(--fa,30%) + 18%));mask-image:linear-gradient(90deg,transparent 0%,transparent var(--fa,30%),#000 calc(var(--fa,30%) + 18%))}
.sig-clip{position:absolute;inset:0;opacity:0}
.sig-clip canvas{position:absolute;left:50%;top:50%;width:max(100vw,177.8vh);height:auto;aspect-ratio:16/9;transform:translate(-50%,-50%)}
.sig-stitch path{fill:none;stroke:var(--ox-2);stroke-width:5;stroke-linecap:round;filter:drop-shadow(0 4px 3px rgba(0,0,0,.6))}
.sig-cap{position:absolute;left:4vw;bottom:6vh;z-index:3;display:flex;gap:18px;align-items:baseline}
.sig-cap .n{font:400 13px var(--ab-font-body);letter-spacing:.2em;color:var(--ox-3)}
.sig-cap h2{font-size:clamp(26px,2.6vw,40px);font-weight:400;letter-spacing:.04em}
.sig-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,5,5,.75),transparent 20%,transparent 75%,rgba(5,5,5,.85));z-index:2;pointer-events:none}

/* scene 3 · into the cloth */
.cloth{height:100vh;overflow:hidden;background:#060606;z-index:2}
.cl-fleece,.cl-iris{position:absolute;inset:0}
.cl-fleece img,.cl-iris img{width:100%;height:100%;object-fit:cover}
.cl-iris{clip-path:circle(0% at 50% 46%)}
.cl-detail{position:absolute;right:7vw;bottom:10vh;width:min(22vw,300px);aspect-ratio:4/5;box-shadow:0 40px 80px rgba(0,0,0,.6);opacity:0}
.cl-detail img{width:100%;height:100%;object-fit:cover}
.cl-copy{position:absolute;left:5vw;top:50%;transform:translateY(-50%);z-index:3;max-width:420px}
.cl-copy h2{font-size:clamp(40px,5vw,84px);font-weight:400;line-height:.95}
.cl-copy p{margin-top:18px;color:#bdb8af;font-size:15px;line-height:1.7}
.cl-ring{position:absolute;left:50%;top:46%;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;border:1.5px solid var(--ox-3);z-index:3}

/* scene 4 · after dark */
.dark{background:#040404;padding:24vh 0 18vh;overflow:hidden}
.dk-back{position:absolute;inset:-10% 0;z-index:0}
.dk-back img{width:100%;height:100%;object-fit:cover;opacity:.55}
.dk-back::after{content:"";position:absolute;inset:0;background:linear-gradient(#040404 0%,rgba(4,4,4,.2) 30%,rgba(4,4,4,.35) 70%,#040404 100%)}
.dk-head{position:relative;z-index:3;padding:0 6vw;max-width:780px}
.dk-head h2{font-size:clamp(46px,6.5vw,112px);font-weight:400;line-height:.92}
.dk-head p{margin-top:22px;color:#bdb8af;max-width:380px;line-height:1.7}
.dk-frames{position:relative;display:grid;grid-template-columns:repeat(12,1fr);gap:2vw;padding:16vh 4vw 0}
.fr{position:relative;overflow:hidden;box-shadow:0 50px 100px rgba(0,0,0,.6)}
.fr img{width:100%;height:118%;object-fit:cover;will-change:transform}
.fr figcaption{position:absolute;left:16px;bottom:14px;z-index:2}
.fr-a{grid-column:1/8;aspect-ratio:16/10}
.fr-b{grid-column:8/13;aspect-ratio:4/5;margin-top:30vh}
.fr-c{grid-column:3/11;aspect-ratio:16/9;margin-top:10vh}
.wipe{clip-path:inset(0 0 100% 0)}

/* light section · featured piece */
.is-light{background:radial-gradient(120% 90% at 30% 20%,#f4f0e8 0%,var(--cream) 45%,var(--cream-2) 100%);color:var(--cream-ink)}
.is-light .label{color:#6f6860}.is-light .accent{color:#6f6860}
.emboss{position:absolute;left:50%;top:var(--et,50%);transform:translate(-50%,-50%);width:min(92vw,1500px);aspect-ratio:1369/306;filter:drop-shadow(-1px -1px 0 rgba(255,255,255,.85)) drop-shadow(1.5px 1.5px 1px rgba(80,66,50,.22));pointer-events:none;z-index:0}
.emboss i{position:absolute;inset:0;background:var(--cream);-webkit-mask:url(../img/brand/logo_primary.svg) center/contain no-repeat;mask:url(../img/brand/logo_primary.svg) center/contain no-repeat}
.piece{padding:22vh 6vw 20vh;overflow:hidden}
.pc-plane{position:absolute;right:0;top:12vh;width:44vw;height:76vh;background:linear-gradient(160deg,#e7e0d3,#dcd3c3);box-shadow:inset 0 1px 0 rgba(255,255,255,.6);z-index:0}
.pc-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center;max-width:1300px;margin:0 auto}
.pc-copy{position:relative;z-index:3}
.pc-copy h2{font-size:clamp(48px,6vw,104px);font-weight:400;line-height:.9;margin:16px 0 8px}
.pc-copy .pr{font:500 16px var(--ab-font-body);letter-spacing:.08em;color:var(--ox)}
.pc-copy p.d{margin:24px 0 34px;max-width:400px;line-height:1.75;color:#4b4640}
.pc-copy .acts{display:flex;gap:28px;align-items:center;flex-wrap:wrap}
.pc-fig{position:relative;z-index:2;justify-self:center;width:min(100%,520px)}
.pc-card{position:relative;aspect-ratio:4/5;overflow:hidden;box-shadow:0 2px 4px rgba(40,30,20,.08),0 30px 80px rgba(40,30,20,.22),0 60px 120px rgba(40,30,20,.14)}
.pc-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1.6s cubic-bezier(.16,1,.3,1)}
.pc-card .b{opacity:0}.pc-card:hover .b{opacity:1}.pc-card:hover .a{transform:scale(1.03)}
.pc-det{position:absolute;left:-14%;bottom:-8%;width:42%;aspect-ratio:4/5;overflow:hidden;box-shadow:0 30px 60px rgba(40,30,20,.3);z-index:3}
.pc-det img{width:100%;height:100%;object-fit:cover}
.is-light .btn--ghost{color:var(--cream-ink);border-color:rgba(42,39,36,.5)}
.is-light .btn--ghost:hover{color:var(--ab-bone);border-color:var(--ox);background:var(--ox)}

/* jewelry */
.jt{padding:20vh 6vw;background:#050505}
.jt-head{display:flex;justify-content:space-between;align-items:end;gap:30px;max-width:1300px;margin:0 auto 8vh;position:relative;z-index:3}
.jt-head h2{font-size:clamp(38px,4.4vw,72px);font-weight:400;line-height:.95}
.jt-row{display:grid;grid-template-columns:1fr 1fr;gap:4vw;max-width:900px;margin:0 auto}
.jc{position:relative;z-index:2;text-decoration:none;display:block}
.jc-img{aspect-ratio:1/1;overflow:hidden;position:relative;background:#0c0c0c}
.jc-img img{width:100%;height:100%;object-fit:cover}
.jc-img:not([data-done]){display:none}
.jc-img[data-done]+.jc-face{display:none}
.jc-face{aspect-ratio:1;background:radial-gradient(ellipse at 50% 38%,#1b1b1b,#0a0a0a 72%);border:1px solid #1c1c1c;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;position:relative;box-shadow:0 40px 80px rgba(0,0,0,.55)}
.jc-face>.label:first-child{position:absolute;top:16px;left:18px}.jc-face>.label:last-child{position:absolute;bottom:18px;font-size:10px}
.jc-name{font:400 clamp(26px,2.4vw,40px) var(--ab-font-display);letter-spacing:.1em;text-transform:uppercase;color:#d8d3ca}
.jc-rule{width:48px;height:1px;background:var(--ox-2)}
.card-meta{display:flex;justify-content:space-between;align-items:baseline;margin-top:16px;gap:12px}
.card-meta h3,.card-meta h2{font:400 20px var(--ab-font-display);letter-spacing:.04em}
.card-meta .pr,.lc-meta .pr{font:500 13px var(--ab-font-body);letter-spacing:.08em;transition:color .5s}
.jc:hover .pr,.lc:hover .pr{color:var(--ox-3)}
.jc .sub{color:#8f8a82;font-size:13px;margin-top:6px;line-height:1.6}

/* footer */
.foot{position:relative;padding:18vh 6vw 6vh;background:#030303;border-top:1px solid #121212;text-align:center}
.foot .fm{width:min(46vw,420px);margin:0 auto;opacity:.92}
.foot .knot{display:block;margin:0 auto 5vh;width:60px;height:60px;overflow:visible}
.foot .knot path{fill:none;stroke:var(--ox-2);stroke-width:2;stroke-linecap:round}
.foot .ln{margin-top:3vh}
.foot-links{display:flex;justify-content:center;gap:30px;flex-wrap:wrap;margin-top:8vh}
.foot-links a{text-decoration:none}
.foot small{display:block;margin-top:5vh;color:#5c5852;font-size:11px;letter-spacing:.12em}

/* clothing */
.ph{padding:30vh 6vw 10vh;position:relative}
.ph h1{font-size:clamp(64px,10vw,190px);font-weight:400;line-height:.86;letter-spacing:.01em;position:relative;z-index:3}
.ph h1 em{font-style:normal;color:var(--ox)}
.ph .sub{max-width:420px;margin-top:4vh;line-height:1.75;position:relative;z-index:3}
.ph .accent{font-size:26px;display:block;margin-bottom:1vh;position:relative;z-index:3}
.line-sec{padding:4vh 4vw 22vh;overflow:hidden}
.line{display:grid;grid-template-columns:repeat(4,1fr);gap:4vw 2.4vw;max-width:1500px;margin:0 auto;position:relative}
.lc{display:block;text-decoration:none;position:relative;z-index:2}
.lc:nth-child(4n+2),.lc:nth-child(4n+4){margin-top:12vh}
.lc-frame{position:relative;aspect-ratio:3/4.6;overflow:hidden;background:#141414;box-shadow:0 2px 4px rgba(40,30,20,.08),0 30px 70px rgba(40,30,20,.22)}
.lc-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1.8s cubic-bezier(.16,1,.3,1)}
.lc.is-still .lc-a{object-fit:cover;object-position:50% 50%}
.lc-b{opacity:0}.lc:hover .lc-b,.lc:focus-visible .lc-b{opacity:1}.lc:hover .lc-a{transform:scale(1.04)}
.lc-meta{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:baseline;margin-top:16px}
.lc-meta h3,.lc-meta h2{font:400 22px var(--ab-font-display);letter-spacing:.04em}
.lc-meta .label{color:var(--ox)}
.spin-sec{height:100vh;background:radial-gradient(70% 60% at 50% 45%,#161616,#060606 70%);overflow:hidden;z-index:2}
.spin-wrap{position:absolute;left:50%;top:52%;transform:translate(-50%,-50%);height:min(76vh,780px);aspect-ratio:4/5;touch-action:pan-y;cursor:grab;user-select:none}
.spin-wrap:active{cursor:grabbing}
.spin-wrap canvas,.spin-wrap .spin-fb{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.spin-wrap .spin-fb{object-fit:cover;-webkit-mask:radial-gradient(75% 70% at 50% 46%,#000 60%,transparent 100%);mask:radial-gradient(75% 70% at 50% 46%,#000 60%,transparent 100%)}
.spin-floor{position:absolute;left:50%;bottom:6%;width:70%;height:7%;transform:translateX(-50%);background:radial-gradient(50% 50% at 50% 50%,rgba(0,0,0,.75),transparent 70%);z-index:-1}
.spin-ring{position:absolute;right:5vw;bottom:8vh;width:84px;height:84px;display:none}
.spin-sec.has-frames .spin-ring{display:block}
.spin-ring circle{fill:none;stroke:#333;stroke-width:1}.spin-ring .tick{stroke:var(--ox-3);stroke-width:2}
.spin-copy{position:absolute;left:5vw;top:50%;transform:translateY(-50%);z-index:3;max-width:330px}
.spin-copy h2{font-size:clamp(40px,4.4vw,76px);font-weight:400;line-height:.95;margin:14px 0}
.spin-copy p{color:#a9a49b;line-height:1.7;font-size:14px}
.spin-note{position:absolute;left:50%;bottom:5vh;transform:translateX(-50%);z-index:3;white-space:nowrap}
.spin-load{position:absolute;inset:auto 0 -30px;height:1px;background:#222}.spin-load i{display:block;height:100%;width:0;background:var(--ox-2);transition:width .3s}
.co-sec{padding:22vh 6vw 20vh;background:#050505}
.co-wrap{max-width:900px;margin:0 auto;position:relative;z-index:3}
.co-wrap h2{font-size:clamp(44px,5vw,88px);font-weight:400;line-height:.95;margin:14px 0 6vh}
.quick{list-style:none}
.quick li{display:grid;grid-template-columns:auto 1fr auto auto;gap:22px;align-items:center;padding:22px 0;border-bottom:1px solid #1a1a1a}
.q-n{font:400 26px var(--ab-font-display);letter-spacing:.03em}.q-rule{height:1px;background:linear-gradient(90deg,#2a2a2a,transparent)}
.q-p{font:500 14px var(--ab-font-body);letter-spacing:.08em}.q-go{text-decoration:none;color:var(--ab-bone)!important;transition:color .4s}.q-go:hover{color:var(--ox-3)!important}
.co-acts{display:flex;gap:30px;align-items:center;margin-top:7vh;flex-wrap:wrap}
.bag-knot{width:44px;height:44px;overflow:visible}.bag-knot path{fill:none;stroke:var(--ox-2);stroke-width:2;stroke-linecap:round;stroke-dasharray:140;stroke-dashoffset:140}
.bag-knot.tie path{animation:tie 1.4s cubic-bezier(.65,0,.35,1) forwards}
@keyframes tie{to{stroke-dashoffset:0}}

/* jewelry page */
.jw-sec{padding:6vh 6vw 20vh}
.jw-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6vh 3vw;max-width:1300px;margin:0 auto}
.jw-grid .jc:nth-child(3n+2){margin-top:10vh}
.jspin{padding:18vh 6vw;background:radial-gradient(60% 60% at 60% 50%,#151515,#050505 70%);overflow:hidden}
.jspin-grid{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center;max-width:1200px;margin:0 auto}
.jspin .spin-wrap{position:relative;left:auto;top:auto;transform:none;width:100%;height:auto;aspect-ratio:1/1}
.jspin .spin-fb-face{position:absolute;inset:0}
.jspin .spin-fb-face .jc-face{height:100%}

/* coming soon */
.soon{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:18vh 6vw 10vh;position:relative;overflow:hidden}
.soon h1{font-size:clamp(56px,8vw,150px);font-weight:400;line-height:.9;position:relative;z-index:3}
.soon .accent{font-size:28px;position:relative;z-index:3}
.soon-list{list-style:none;display:flex;gap:5vw;margin:8vh 0 6vh;flex-wrap:wrap;justify-content:center;position:relative;z-index:3}
.soon-list li{font:400 22px var(--ab-font-display);letter-spacing:.06em}
.soon-list li span{display:block;margin-top:8px}
.soon .notify{position:relative;z-index:3}
.notify{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.notify input{background:none;border:0;border-bottom:1px solid rgba(42,39,36,.4);padding:14px 4px;font:400 15px var(--ab-font-body);min-width:min(320px,80vw);color:inherit;outline:none}
.notify input:focus{border-color:var(--ox)}.notify input.bad{border-color:#b33}
.notify .ok{display:none;width:100%}.notify.done .ok{display:block}.notify.done input,.notify.done button{display:none}

/* overlays (PDP / drawer) */
html.locked,html.locked body{overflow:hidden}
.view-pdp{position:fixed;inset:0;z-index:800;background:#060606;overflow-y:auto;padding:120px 5vw 8vh;clip-path:inset(100% 0 0 0);transition:clip-path .9s cubic-bezier(.76,0,.24,1)}
.view-pdp.on{clip-path:inset(0)}
.x{position:fixed;top:30px;right:4vw;z-index:5;background:#0a0a0a;border:1px solid #2b2b2b;color:var(--ab-bone);padding:10px 16px;cursor:pointer}
.pdp{display:grid;grid-template-columns:1.1fr .9fr;gap:5vw;max-width:1400px;margin:0 auto}
.ph-img{position:relative;overflow:hidden;background:#111}
.ph-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .6s}
.ph-img img:not([src]){opacity:0}
.gal-main{aspect-ratio:4/5;box-shadow:0 40px 80px rgba(0,0,0,.5)}
.thumbs{display:flex;gap:10px;margin-top:12px}.thumbs button{width:64px;height:80px;border:1px solid #222;background:#111;cursor:pointer;padding:0;overflow:hidden}.thumbs button.on{border-color:var(--ox-2)}.thumbs img{width:100%;height:100%;object-fit:cover}
.info h1,.info h2{font-size:clamp(44px,5vw,84px);line-height:.92;margin:14px 0;font-weight:400}.info .pr{font:500 20px var(--ab-font-body)}.info .lede{color:#cfcac2;line-height:1.7;margin:20px 0;font-size:16px}
.opt{margin:24px 0}.opt>.label{display:block;margin-bottom:10px}
.seg{display:flex;flex-wrap:wrap;gap:8px}.seg button{font:600 11px var(--ab-font-body);letter-spacing:.1em;color:var(--ab-bone);background:none;border:1px solid #2b2b2b;padding:12px 16px;min-width:54px;cursor:pointer}
.seg button:hover{border-color:var(--ab-bone)}.seg button.on{background:var(--ab-bone);color:#0a0a0a;border-color:var(--ab-bone)}.seg.err button{border-color:var(--ox-2)}
.row{display:flex;gap:12px;align-items:stretch;margin:28px 0}
.qty{display:flex;align-items:center;border:1px solid #2b2b2b}.qty button{background:none;border:0;color:var(--ab-bone);width:42px;height:50px;font-size:18px;cursor:pointer}.qty span{min-width:22px;text-align:center}
.qty.sm{display:inline-flex;margin-top:8px}.qty.sm button{height:30px;width:30px}.row .btn{flex:1;justify-content:center;background:var(--ab-bone);color:#0a0a0a}.row .btn:hover{background:var(--ox);color:var(--ab-bone)}
details{border-top:1px solid #1c1c1c;padding:16px 0}details summary{cursor:pointer;list-style:none}details p{margin-top:10px;color:#cfcdc8;font-size:15px;line-height:1.6}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(440px,100vw);z-index:850;background:#0d0d0d;border-left:1px solid #1c1c1c;padding:70px 26px 26px;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .6s cubic-bezier(.16,1,.3,1);overflow-y:auto}
.drawer.on{transform:none}.drawer header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.drawer h2{font-size:30px;font-weight:400}.drawer .x{position:static}
.lines{list-style:none;flex:1}.lines li{display:grid;grid-template-columns:72px 1fr auto;gap:14px;padding:16px 0;border-bottom:1px solid #1c1c1c}.lines .ph-img{width:72px;height:90px}.lines h3{font:600 15px var(--ab-font-body)}.lines .r{text-align:right;display:flex;flex-direction:column;justify-content:space-between;font-size:13px}.rm{background:none;border:0;color:var(--ab-ash);cursor:pointer;font:600 10px var(--ab-font-body);letter-spacing:.1em}
.tot{padding-top:16px;font-size:14px}.tot>div{display:flex;justify-content:space-between;padding:6px 0}.tot .btn{margin-top:16px;width:100%;justify-content:center;background:var(--ab-bone);color:#0a0a0a}.tot .btn:hover{background:var(--ox);color:var(--ab-bone)}
.tot .ph{padding:0;color:var(--ab-ash)}
.empty{color:var(--ab-ash);padding:20px 0}.co-note{margin-top:10px;text-align:center}
.toast{position:fixed;left:50%;bottom:30px;transform:translate(-50%,30px);opacity:0;z-index:950;background:var(--ab-bone);color:#0a0a0a;padding:12px 20px;transition:.5s cubic-bezier(.16,1,.3,1)}.toast.on{opacity:1;transform:translate(-50%,0)}
.is-light .ph-img{background:#ddd5c8}

@media (max-width:820px){
 .nav{grid-template-columns:auto 1fr auto;padding:18px 5vw}.nav nav{gap:14px}.nav nav a{font-size:9.5px;letter-spacing:.14em}.nav-mark img{width:104px}.nav-mark{order:-1}.nav nav{justify-self:center}.nav-ox{display:none}
 .sig-cap{left:6vw;right:6vw}
 .cl-detail{width:38vw;right:5vw;bottom:6vh}.cl-copy{top:auto;bottom:34vh;transform:none}
 .fr-a,.fr-b,.fr-c{grid-column:1/13;margin-top:6vh}
 .pc-grid{grid-template-columns:1fr}.pc-plane{width:80vw;top:auto;bottom:6vh;height:50vh}.pc-det{left:-4%;width:38%}
 .jt-head{flex-direction:column;align-items:flex-start}
 .line{grid-template-columns:1fr 1fr;gap:8vh 4vw}.lc:nth-child(4n+2),.lc:nth-child(4n+4){margin-top:0}.lc:nth-child(2n){margin-top:8vh!important}
 .lc-meta{grid-template-columns:1fr auto}.lc-meta .label{display:none}.lc-meta h3,.lc-meta h2{font-size:18px}
 .spin-copy{top:13vh;transform:none;left:6vw}.spin-copy h2{font-size:38px}.spin-copy p{display:none}.spin-wrap{height:56vh;top:58%}
 .quick li{grid-template-columns:1fr auto;gap:8px 16px}.q-rule{display:none}.q-go{grid-column:1/3}
 .pdp{grid-template-columns:1fr}
 .jw-grid{grid-template-columns:1fr 1fr}.jw-grid .jc:nth-child(3n+2){margin-top:0}.jw-grid .jc:nth-child(2n){margin-top:6vh}
 .jspin-grid{grid-template-columns:1fr}.jt-row{gap:5vw}
 .jc .sub{display:none}.card-meta{flex-direction:column;gap:4px}.card-meta h3,.card-meta h2{font-size:17px}
}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}

.lc.on .lc-b{opacity:1}.lc.is-flat .lc-frame{background:#fff}.lc.is-flat .lc-a{object-fit:contain;padding:8% 4%}
.emboss--faint{opacity:.28}
.soon-list li{width:min(240px,80vw)}.soon-ph{aspect-ratio:4/5;overflow:hidden;margin-bottom:18px;box-shadow:0 2px 4px rgba(40,30,20,.08),0 30px 70px rgba(40,30,20,.22)}.soon-ph img{width:100%;height:100%;object-fit:cover}
.fr-c{grid-column:6/13;margin-top:18vh}
@media (max-width:820px){.jw-sec{padding-bottom:4vh}.jspin{padding:4vh 6vw 12vh}.jspin-grid{gap:5vh}.soon-list{gap:6vh}.fr-c{grid-column:1/13;margin-top:6vh}}

/* v9.1 tilt treatment for the hoodie until real frames exist */
.tilt{position:absolute;inset:0;transform-style:preserve-3d;will-change:transform}
.spin-wrap{perspective:1400px}
.spin-sec.has-frames .tilt{display:none}
.tilt .spin-fb{position:absolute;inset:0;width:100%;height:100%}
.tilt-light{position:absolute;inset:0;pointer-events:none;mix-blend-mode:screen;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.10) 48%,transparent 62%);background-size:220% 100%;background-position:var(--lx,50%) 0;-webkit-mask:radial-gradient(75% 70% at 50% 46%,#000 60%,transparent 100%);mask:radial-gradient(75% 70% at 50% 46%,#000 60%,transparent 100%)}
.spin-floor{transition:none}
/* coming soon, dark studio */
.soon{background:#050505;color:var(--ab-bone);display:block;text-align:left;padding:24vh 8vw 14vh}
.soon-head{max-width:1200px;margin:0 auto;padding-left:3vw}
.soon .accent{font-size:26px;color:#cfc9bf}
.soon h1{margin:8px 0 18px}
.soon-sub{color:#a9a49b;max-width:420px;line-height:1.7}
.soon-grid{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:3vw;max-width:1200px;margin:9vh auto 8vh;padding-left:3vw;position:relative;z-index:3}
.sc h3,.sc h2{font:400 22px var(--ab-font-display);letter-spacing:.04em;margin-top:16px}
.sc .label{display:block;margin-top:6px}
.sc .soon-ph{aspect-ratio:4/5;overflow:hidden;box-shadow:0 40px 80px rgba(0,0,0,.6);margin:0}
.sc .soon-ph img{width:100%;height:100%;object-fit:cover;transition:transform 1.6s cubic-bezier(.16,1,.3,1)}.sc:hover img{transform:scale(1.03)}
.soon .notify{justify-content:flex-start;max-width:1200px;margin:0 auto;padding-left:3vw}
.soon .notify input{border-bottom-color:rgba(242,240,235,.35)}
@media (max-width:820px){.soon{padding:18vh 6vw 10vh}.soon-grid{grid-template-columns:1fr 1fr;gap:6vw}.soon-grid .sc:last-child{grid-column:1/3;width:calc(50% - 3vw);justify-self:center}.sc h3,.sc h2{font-size:17px}.soon-head,.soon-grid,.soon .notify{padding-left:4vw}}
/* leather grounds with a slow light sweep (photographic texture, no grain) */
.leather{background:#070707 url(../img/bg/bg_leather_folds_16x9.webp) center/cover no-repeat;position:relative}
.leather--flat{background-image:url(../img/bg/bg_leather_flat_16x9.webp)}
.leather::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,5,5,.72),rgba(5,5,5,.42) 40%,rgba(5,5,5,.78));pointer-events:none}
.leather::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 35%,rgba(255,240,225,.06) 50%,transparent 65%) 0 0/250% 100% no-repeat;animation:sweep 14s ease-in-out infinite alternate}
@keyframes sweep{from{background-position:120% 0}to{background-position:-20% 0}}
@media (max-width:820px){.leather{background-image:url(../img/bg/bg_leather_folds_9x16.webp)}.leather--flat{background-image:url(../img/bg/bg_leather_flat_16x9.webp)}}
.leather>*{position:relative;z-index:2}
.line-sec.leather{padding-top:14vh;color:var(--ab-bone)}
.line-sec.leather .lc-frame{box-shadow:0 40px 80px rgba(0,0,0,.6)}
.ch-hero{padding:22vh 6vw 14vh;overflow:hidden}
.ch-grid{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center;max-width:1300px;margin:0 auto;position:relative;z-index:3}
.ch-copy h1{font-size:clamp(60px,8vw,150px);font-weight:400;line-height:.88;color:var(--cream-ink);margin:16px 0 22px}
.ch-copy h1 em{font-style:normal;color:var(--ox)}
.ch-sub{color:#3e3934;max-width:420px;line-height:1.75;font-size:16px}
.ch-tap{margin:18px 0 32px;color:#6f6860}
.ch-fig{position:relative;margin:0}
.ch-card{aspect-ratio:4/5;overflow:hidden;box-shadow:0 2px 4px rgba(40,30,20,.08),0 30px 80px rgba(40,30,20,.25)}
.ch-card img{width:100%;height:100%;object-fit:cover;object-position:35% 50%}
.ch-det{position:absolute;left:-12%;bottom:-8%;width:38%;aspect-ratio:4/5;overflow:hidden;box-shadow:0 30px 60px rgba(40,30,20,.3)}.ch-det img{width:100%;height:100%;object-fit:cover}
.jspin{padding:12vh 6vw}.js-pr{font:500 18px var(--ab-font-body);letter-spacing:.08em;color:var(--ox-3)!important;margin:6px 0 14px}
.jspin .spin-copy p{margin-bottom:12px}.js-buy{justify-content:flex-start;margin-top:22px}.js-buy input{border-bottom-color:rgba(242,240,235,.35);min-width:min(260px,70vw)}
.jt{padding:16vh 6vw 10vh}.jt-head{margin-bottom:6vh}
@media (max-width:820px){.ch-hero{padding:16vh 6vw 10vh}.ch-grid{grid-template-columns:1fr;gap:7vh}.ch-det{left:-3%;width:34%}.jspin{padding:6vh 6vw 8vh}.jt{padding:12vh 6vw 8vh}.jspin .spin-copy p:not(.ok){display:block}}
.drawer{z-index:990}.toast{z-index:995}

/* FAQ + product search lines (Elena, Oct 18 2026) */
.lc-d{color:#8f8a82;font-size:13px;line-height:1.6;margin-top:8px;max-width:38ch}
.faq{padding:18vh 6vw 16vh;background:#050505;border-top:1px solid #121212}
.faq-wrap{max-width:1100px;margin:0 auto;position:relative;z-index:3}
.faq-wrap>h2{font-size:clamp(38px,4.4vw,72px);font-weight:400;line-height:.95;margin:14px 0 7vh}
.faq-list{border-bottom:1px solid #1a1a1a}
.faq-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:4vw;padding:28px 0;border-top:1px solid #1a1a1a}
.faq-item h3{font:400 clamp(22px,1.8vw,28px)/1.2 var(--ab-font-display);letter-spacing:.03em;color:var(--ab-bone)}
.faq-item p{color:#a9a49b;font-size:15px;line-height:1.75;max-width:60ch}
.faq-item a{color:var(--ab-bone);text-underline-offset:3px;text-decoration-color:var(--ox-2)}
@media (max-width:820px){.lc-d{display:none}.faq{padding:12vh 6vw 10vh}.faq-item{grid-template-columns:1fr;gap:10px;padding:22px 0}.faq-item p{font-size:14px}}
