/* MARKED: boqo's stage rule (dark, lime marks "this one, now", capsule controls, quiet system type) with one loud voice,
   the condensed display face. One spine runs down the line, like the axis of the sigil. */
@font-face{font-family:"Bricolage Grotesque";src:url(/fonts/bricolage-grotesque.woff2) format("woff2");font-weight:200 800;font-stretch:75% 100%;font-display:swap}
@font-face{font-family:"Geist Mono";src:url(/fonts/geist-mono.woff2) format("woff2");font-weight:100 900;font-display:swap}
:root{--night:#07060b;--panel:#121118;--raised:#1c1b24;--label:#f5f5f7;--label2:#aeaeb2;--label3:#8b8b92;--sep:rgba(255,255,255,.12);--lime:#c8ff4d;--on-lime:#1b2400;--danger:#ff6961;
--ui:-apple-system,BlinkMacSystemFont,"SF Pro Text",Inter,system-ui,sans-serif;--display:"Bricolage Grotesque","Arial Narrow",Arial,sans-serif;--mono:"Geist Mono",ui-monospace,Menlo,monospace;
--gut:max(20px,env(safe-area-inset-left,0px));--ease:cubic-bezier(.2,0,0,1);color-scheme:dark}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--night);color:var(--label);font:400 1rem/1.6 var(--ui);overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
.skip{position:absolute;left:-999px;top:8px;background:var(--lime);color:var(--on-lime);padding:8px 14px;border-radius:999px;z-index:30}
.skip:focus{left:12px}
.top{position:sticky;top:0;z-index:20;height:56px;display:flex;align-items:center;justify-content:space-between;padding-inline:var(--gut);background:rgba(7,6,11,.8);backdrop-filter:blur(24px) saturate(1.4);-webkit-backdrop-filter:blur(24px) saturate(1.4);border-bottom:1px solid var(--sep)}
.brand{display:flex;align-items:center;gap:10px;font-weight:600;text-decoration:none}
.brand img{border-radius:7px}
.eyebrow,.stage,.small,figcaption,dt,.tag,.num{font-family:var(--mono);font-size:.75rem;font-variant-numeric:tabular-nums}
.eyebrow{color:var(--label2);margin:0 0 14px}
.take{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border:0;border-radius:999px;background:var(--lime);color:var(--on-lime);font:600 1rem var(--ui);text-decoration:none;cursor:pointer;transition:transform .1s var(--ease),filter .14s var(--ease)}
.take:hover{filter:brightness(1.08)}.take:active{transform:scale(.98)}.take:disabled{opacity:.6;cursor:not-allowed}
/* hero: the drop photograph pans slowly behind the name */
.hero{position:relative;height:calc(100vh - 56px);height:calc(100svh - 56px);min-height:560px;overflow:hidden;display:flex;align-items:flex-end;background:var(--night)}
.reel{position:absolute;inset:0;overflow:hidden}
/* One photograph, panned edge to edge and back, so it never shows a seam. */
.pano{position:relative;height:100%;width:max-content;min-width:100vw;animation:pan 70s ease-in-out infinite alternate}
.pano>img{display:block;height:100%;width:auto;min-width:100vw;max-width:none;object-fit:cover;object-position:50% 30%}
@keyframes pan{from{transform:translateX(0)}to{transform:translateX(calc(100vw - 100%))}}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(7,6,11,.88) 0,rgba(7,6,11,.25) 34%,rgba(7,6,11,0) 55%);pointer-events:none}
.hero-copy{position:relative;z-index:1;padding:0 var(--gut) 32px;width:100%}
.hero-copy .eyebrow{color:var(--label);text-shadow:0 1px 8px rgba(7,6,11,.9);margin-bottom:10px}
.hero h1{margin:0 0 16px;font:800 clamp(4.5rem,11vw,12rem)/.82 var(--display);font-stretch:75%;letter-spacing:-.02em;text-transform:uppercase}
.hero h1 span{display:inline-block;background:var(--lime);color:var(--night);padding:.03em .08em .05em}
.lede{font-size:1.375rem;line-height:1.3;font-weight:600;margin:0 0 16px;text-wrap:balance}
.intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,300px);gap:48px;align-items:center;max-width:1120px;margin:0 auto;padding:72px var(--gut) 24px;font-size:1.25rem;line-height:1.45}
.intro p{margin:0;max-width:30em}
.sigil{width:100%;max-width:300px;justify-self:end;height:auto}
.small{color:var(--label3);line-height:1.5;margin:0}
.count{display:grid;gap:6px;font:400 .75rem var(--mono);font-variant-numeric:tabular-nums;color:var(--label2);margin-top:8px}
.count progress{display:block;appearance:none;-webkit-appearance:none;width:100%;height:3px;border:0;background:var(--raised)}
.count progress::-webkit-progress-bar{background:var(--raised)}.count progress::-webkit-progress-value{background:var(--lime)}.count progress::-moz-progress-bar{background:var(--lime)}
.top-right{display:flex;align-items:center;gap:14px;min-width:0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* The country control reads as a line of type, like the shop's other labels. Lime marks the one that is on. */
.country{position:relative}
.ct-btn{display:flex;align-items:center;gap:8px;height:32px;padding:0;border:0;background:none;color:var(--label);cursor:pointer;font:inherit;line-height:1}
.ct-label{font:400 .75rem/1 var(--mono);color:var(--label3)}
.ct-val{font:800 1.125rem var(--display);font-stretch:75%;text-transform:uppercase;letter-spacing:.01em;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1;transform:translateY(1px);transition:color .14s var(--ease)}
.ct-btn:hover .ct-val,.ct-btn[aria-expanded="true"] .ct-val{color:var(--lime)}
.ct-chev{flex:none;width:6px;height:6px;border-right:1.5px solid var(--label2);border-bottom:1.5px solid var(--label2);transform:translateY(-1px) rotate(45deg);transition:transform .14s var(--ease)}
.ct-btn[aria-expanded="true"] .ct-chev{transform:translateY(1px) rotate(225deg);border-color:var(--lime)}
.ct-panel{position:absolute;top:calc(100% + 14px);right:0;width:320px;background:var(--night);border:1px solid var(--sep);box-shadow:0 24px 60px rgba(0,0,0,.65);z-index:40}
.ct-panel[hidden]{display:none}
.ct-title{margin:0;padding:16px 16px 10px;font:800 2.25rem/.95 var(--display);font-stretch:75%;text-transform:uppercase}
.ct-search{display:block;padding:0 16px 12px;border-bottom:1px solid var(--sep)}
.ct-search input{width:100%;height:36px;padding:0;border:0;border-bottom:1px solid var(--label3);background:none;color:var(--label);font:400 .9375rem var(--ui);border-radius:0;appearance:none;-webkit-appearance:none}
.ct-search input:focus{outline:0;border-bottom-color:var(--lime)}
.ct-search input::placeholder{color:var(--label3)}
.ct-list{max-height:min(360px,55vh);overflow-y:auto;overscroll-behavior:contain;padding:6px 0 10px;scrollbar-width:thin;scrollbar-color:var(--raised) transparent}
.ct-list ul{list-style:none;margin:0;padding:0}
.ct-list li[hidden]{display:none}
.ct-opt{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:36px;padding:6px 16px;border:0;background:none;color:var(--label2);font:400 .9375rem var(--ui);text-align:left;cursor:pointer}
.ct-opt:hover,.ct-opt:focus-visible{color:var(--label);background:var(--panel);outline:0}
.ct-opt i{font:400 .6875rem var(--mono);color:var(--lime);font-style:normal}
.ct-opt.is-on{background:var(--lime);color:var(--night);font-weight:600}
.ct-opt.is-on i{color:var(--night)}
.ct-group{margin:10px 0 4px;padding:10px 16px 2px;border-top:1px solid var(--sep);font:400 .75rem var(--mono);color:var(--label3)}
.ct-group[hidden],.ct-none[hidden]{display:none}
.ct-none{margin:0;padding:12px 16px;color:var(--label3);font-size:.9375rem}
.away-band{max-width:560px;margin:0 auto;padding:48px var(--gut) 0}
.elsewhere{margin-top:20px}.away-band .elsewhere{margin-top:0}
.away b{display:block;font:800 clamp(1.75rem,4vw,2.5rem)/1.05 var(--display);font-stretch:75%;text-transform:uppercase;margin-bottom:8px;color:var(--lime);text-wrap:balance}
.away p{margin:0;color:var(--label2)}
/* Shoppable photo. The person in the picture is the control: corner ticks frame the piece, the rest of the photo dims, a hairline leads to the card. */
.hero-copy{pointer-events:none;z-index:2}.hero-copy .take{pointer-events:auto}
.hero::after{z-index:1}
.spot{position:absolute;display:block;z-index:2;outline-offset:0;--t:14px;--w:1.5px;background:
  linear-gradient(var(--lime),var(--lime)) 0 0/var(--t) var(--w),linear-gradient(var(--lime),var(--lime)) 0 0/var(--w) var(--t),
  linear-gradient(var(--lime),var(--lime)) 100% 0/var(--t) var(--w),linear-gradient(var(--lime),var(--lime)) 100% 0/var(--w) var(--t),
  linear-gradient(var(--lime),var(--lime)) 0 100%/var(--t) var(--w),linear-gradient(var(--lime),var(--lime)) 0 100%/var(--w) var(--t),
  linear-gradient(var(--lime),var(--lime)) 100% 100%/var(--t) var(--w),linear-gradient(var(--lime),var(--lime)) 100% 100%/var(--w) var(--t);
  background-repeat:no-repeat;background-size:0 0;transition:box-shadow .28s var(--ease)}
.spot::after{content:"";position:absolute;right:-6px;top:-6px;width:13px;height:13px;opacity:0;transition:opacity .2s var(--ease);background:linear-gradient(var(--lime),var(--lime)) 50% 50%/100% 1.5px no-repeat,linear-gradient(var(--lime),var(--lime)) 50% 50%/1.5px 100% no-repeat}
.hero:hover .spot::after{opacity:.85}
.spot.is-on{box-shadow:0 0 80px 300vmax rgba(7,6,11,.38);background-size:var(--t) var(--w),var(--w) var(--t),var(--t) var(--w),var(--w) var(--t),var(--t) var(--w),var(--w) var(--t),var(--t) var(--w),var(--w) var(--t)}
.spot.is-on::after,.pano:has(.spot.is-on) .spot::after{opacity:0}
.spot:focus-visible{outline:2px solid var(--lime)}
.look{position:absolute;inset:0;z-index:3;pointer-events:none}
.lk-line{position:absolute;height:1px;background:var(--lime);transform-origin:0 50%;left:0;top:0}
.lk{position:absolute;display:grid;grid-template-columns:120px minmax(0,1fr);width:372px;background:var(--night);border:1px solid var(--sep);box-shadow:0 30px 70px rgba(0,0,0,.6);pointer-events:auto;opacity:0;transform:translateY(6px);transition:opacity .18s var(--ease),transform .28s var(--ease)}
.lk[hidden]{display:none}
.lk.is-in{opacity:1;transform:none}
.lk-thumb{display:block;min-height:100%;background:var(--panel);overflow:hidden}
.lk-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.lk-body{padding:12px 14px 12px;display:grid;gap:6px;min-width:0}
.lk-body p{margin:0}
.lk-stage{font:400 .6875rem var(--mono);color:var(--label3)}
.lk h2{margin:0;font:800 2rem/.95 var(--display);font-stretch:75%;text-transform:uppercase}
.lk h2 a{text-decoration:none}.lk h2 a:hover{color:var(--lime)}
.lk-kind{font-size:.8125rem;color:var(--label2)}
.lk-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-top:2px}
.lk-price{font-weight:600;font-variant-numeric:tabular-nums}
.lk-left{font:400 .6875rem var(--mono);color:var(--label3)}
.lk-sizes{display:flex;flex-wrap:wrap;gap:4px}
.lk-sizes input{position:absolute;opacity:0;width:1px;height:1px}
.lk-sizes span{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:24px;padding:0 5px;background:var(--raised);font:400 .6875rem var(--mono);cursor:pointer}
.lk-sizes input:checked+span{background:var(--lime);color:var(--on-lime)}
.lk-sizes input:focus-visible+span{outline:2px solid var(--lime);outline-offset:1px}
.lk-buy{height:36px;border:0;border-radius:999px;background:var(--lime);color:var(--on-lime);font:600 .875rem var(--ui);cursor:pointer;transition:filter .14s var(--ease)}
.lk-buy:hover{filter:brightness(1.08)}.lk-buy:disabled{opacity:.6;cursor:not-allowed}
.lk-note{font-size:.8125rem;color:var(--lime);padding:4px 0}
.lk-view{font-size:.8125rem;color:var(--label2);text-align:center}.lk-view:hover{color:var(--label)}
.lk .msg{min-height:0;font-size:.75rem}.lk .msg:empty{display:none}
.lk-close{display:none;position:absolute;top:4px;right:4px;width:32px;height:32px;border:0;background:none;color:var(--label2);font-size:1.25rem;cursor:pointer}
/* the line */
.rites{list-style:none;margin:0 auto;padding:32px var(--gut) 48px;max-width:1120px;position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:96px;row-gap:64px}
.rites::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background:linear-gradient(transparent,var(--sep) 40px,var(--sep) calc(100% - 40px),transparent)}
.rite{position:relative;min-width:0}
.rite:nth-child(even){transform:translateY(96px)}
.num{position:absolute;top:0;font-size:.8125rem;color:var(--lime);background:var(--night);padding:4px 0;width:48px;text-align:center}
.rite:nth-child(odd) .num{right:-72px}.rite:nth-child(even) .num{left:-72px}
.card{display:block;text-decoration:none}
.frame{display:block;overflow:hidden;aspect-ratio:3/4;background:var(--panel)}
.frame img{width:100%;height:100%;object-fit:cover;transition:transform .36s var(--ease)}
.card:hover .frame img{transform:scale(1.03)}
.meta{display:grid;gap:2px;padding-top:14px}
.stage{color:var(--label3)}
.meta strong{font:800 clamp(2.5rem,5vw,4rem)/.95 var(--display);font-stretch:75%;text-transform:uppercase}
.kind{color:var(--label2)}
.row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:6px}
.price{font-variant-numeric:tabular-nums;font-weight:600}
.tag{height:22px;display:inline-flex;align-items:center;padding:0 9px;border-radius:999px;border:1px solid var(--sep);color:var(--label2);white-space:nowrap}
.tag.on{border-color:var(--lime);color:var(--lime)}
/* product */
.product{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;max-width:1240px;margin:0 auto;padding:32px var(--gut) 64px;align-items:start}
.gallery{display:grid;gap:16px;min-width:0}
.product figure{margin:0;min-width:0}
.product figure img{width:100%}
figcaption{color:var(--label3);margin-top:8px}
.panel{position:sticky;top:80px;min-width:0}
.panel h1{font:800 clamp(3.5rem,8vw,6.5rem)/.9 var(--display);font-stretch:75%;text-transform:uppercase;margin:0 0 4px;text-wrap:balance}
.panel .kind{margin:0 0 20px}
dl{margin:20px 0;border-top:1px solid var(--sep)}
dl div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;padding:9px 0;border-bottom:1px solid var(--sep);font-size:.9375rem}
dt{color:var(--label3);padding-top:3px}dd{margin:0;font-variant-numeric:tabular-nums}
.reserve{display:grid;gap:14px;margin-top:20px}
.reserve .take{width:100%}
fieldset{border:0;margin:0;padding:0;min-width:0}
legend,.field{font-size:.875rem;color:var(--label2);padding:0}
legend{margin-bottom:8px}
.sizes{display:flex;flex-wrap:wrap;gap:8px}
.sizes input{position:absolute;opacity:0;width:1px;height:1px}
.sizes span{display:inline-flex;align-items:center;justify-content:center;min-width:48px;height:44px;padding:0 12px;border-radius:999px;background:var(--raised);color:var(--label);cursor:pointer;font-size:.9375rem}
.sizes input:checked+span{background:var(--lime);color:var(--on-lime);font-weight:600}
.sizes input:focus-visible+span{outline:2px solid var(--lime);outline-offset:3px}
.field{display:grid;gap:8px}
.field input{height:48px;width:100%;padding:0 18px;border-radius:999px;border:1px solid var(--sep);background:var(--panel);color:var(--label);font:400 1rem var(--ui)}
.field input:focus{outline:2px solid var(--lime);outline-offset:1px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.check{display:flex;gap:10px;align-items:flex-start;font-size:.875rem;color:var(--label2);cursor:pointer}
.check input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--lime);flex:none}
.msg{margin:0;min-height:1.5em;font-size:.9375rem}.msg.ok{color:var(--lime)}.msg.err{color:var(--danger)}
.closed{margin-top:20px;padding:16px;background:var(--panel);border-radius:12px}
.closed b{display:block}.closed p{margin:4px 0 0;color:var(--label2);font-size:.9375rem}
.next{display:inline-block;margin-top:24px;color:var(--label2);font-size:.9375rem}
.prose{max-width:640px;margin:0 auto;padding:48px var(--gut) 64px}
.prose h1{font:800 clamp(3rem,8vw,5rem)/1 var(--display);font-stretch:75%;text-transform:uppercase;margin:0 0 20px}
.foot{border-top:1px solid var(--sep);padding:28px var(--gut) calc(28px + env(safe-area-inset-bottom,0px));color:var(--label3);font-size:.875rem}
.foot p{margin:0 0 4px}
.foot .fx{margin-bottom:12px}
.foot nav{display:flex;flex-wrap:wrap;gap:16px;margin-top:12px}
@media (hover:none){.spot::after{opacity:.85}.lk-close{display:block}.pano:has(.spot.is-on) .spot::after{opacity:0}}
@media (max-width:820px){
  .lk{left:12px!important;right:12px;top:auto!important;bottom:12px;width:auto}
  .lk-close{display:block}
    .ct-val{max-width:130px}
  .country{position:static}
  .ct-panel{top:56px;left:0;right:0;width:auto;border-width:0 0 1px}
  .top-right{position:static}
  .hero h1{font-size:clamp(4.5rem,25vw,11rem)}
  .pano{animation-duration:45s}
  .intro{grid-template-columns:minmax(0,1fr);padding-top:44px;gap:24px;font-size:1.125rem}
  .sigil{max-width:200px;justify-self:start}
  .rites{grid-template-columns:minmax(0,1fr);row-gap:44px;padding-left:calc(var(--gut) + 34px)}
  .rites::before{left:calc(var(--gut) + 12px)}
  .rite:nth-child(even){transform:none}
  .rite:nth-child(n) .num{left:-44px;right:auto;width:26px;text-align:center}
  .product{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:12px}
  .panel{position:static}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
