/* ===== fonts.css ===== */
/* Self-hosted OFL-1.1 fonts (latin subset incl. å ä ö). Source: Google Fonts. See assets/fonts/LICENSE.txt */
@font-face{font-family:'Barlow';font-style:normal;font-weight:400 500;font-display:swap;src:url('../fonts/barlow-400.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600 700;font-display:swap;src:url('../fonts/barlow-700.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:600 700;font-display:swap;src:url('../fonts/barlow-condensed-700.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:800;font-display:swap;src:url('../fonts/barlow-condensed-800.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:400 700;font-display:swap;src:url('../fonts/fraunces-400-700.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url('../fonts/inter-400-700.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-weight:400 800;font-display:swap;src:url('../fonts/bricolage-grotesque-400-800.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}

/* ===== objects.css ===== */
/* Product objects: card, toploader, slab, sealed. 3D rig = pointer tilt, flip = front/back.
   The foil only ever sits on the card's art window (positioned in % by cards.js). */
.obj{position:relative;width:100%;aspect-ratio:var(--ar);perspective:1100px;--rx:0deg;--ry:0deg;--mx:50%;--my:50%;--on:0;--sx:0px;--ang:0deg;-webkit-tap-highlight-color:transparent}
.obj__rig{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(var(--rx)) rotateY(var(--ry));transition:transform .55s var(--ease,cubic-bezier(.2,.7,.2,1));will-change:transform}
.obj.is-hot .obj__rig{transition:transform .09s linear}
.obj__flip{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .8s var(--ease-flip,cubic-bezier(.5,0,.2,1))}
.obj.is-flipped .obj__flip{transform:rotateY(180deg)}
.obj__face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.obj__back{transform:rotateY(180deg)}
.obj__svg{display:block;width:100%;height:100%;overflow:visible}
.obj--live .obj__svg{filter:drop-shadow(calc(var(--ry) * -.9) calc(10px + var(--rx) * .5) 14px rgba(0,0,0,.38))}
.obj--live{touch-action:pan-y;cursor:grab}
.obj--live:active{cursor:grabbing}

/* gloss: static plastic highlight that slides with the pointer */
.gloss{position:absolute;inset:0;pointer-events:none;border-radius:3% / 2.2%;opacity:calc(var(--on) * .9);transition:opacity .4s;
  background:linear-gradient(112deg,transparent calc(var(--mx) - 26%),rgba(255,255,255,.34) var(--mx),transparent calc(var(--mx) + 26%));mix-blend-mode:soft-light}
.obj[data-kind=graded] .gloss,.obj[data-kind=single]:not(.obj--bare) .gloss{border-radius:4% / 3%}

/* foil: three layers, each blends with the card art under it */
.foil{position:absolute;overflow:hidden;pointer-events:none}
.foil i{position:absolute;inset:-30%;mix-blend-mode:hard-light;opacity:calc(var(--foil,1) * (.1 + var(--on) * .4));transition:opacity .45s;
  background:linear-gradient(115deg,hsl(330 90% 60%) 0%,hsl(32 95% 58%) 10%,hsl(62 90% 60%) 20%,hsl(160 80% 52%) 30%,hsl(205 95% 60%) 40%,hsl(265 85% 64%) 50%,hsl(330 90% 60%) 60%,hsl(32 95% 58%) 70%,hsl(62 90% 60%) 80%,hsl(160 80% 52%) 90%,hsl(205 95% 60%) 100%) var(--mx) var(--my) / 220% 220%}
.foil::before{content:"";position:absolute;inset:0;mix-blend-mode:overlay;opacity:calc(var(--foil,1) * (.16 + var(--on) * .5));transition:opacity .45s;
  background:url(../img/foil-tile.webp) calc(var(--sx) * -1) calc(var(--sx) * .6) / 210px 210px, linear-gradient(115deg,transparent 30%,rgba(255,255,255,.6) 50%,transparent 70%) var(--mx) 0 / 220% 100%}
.foil::after{content:"";position:absolute;inset:0;mix-blend-mode:soft-light;opacity:calc(var(--on) * var(--foil,1));transition:opacity .45s;
  background:radial-gradient(circle at var(--mx) var(--my),rgba(255,255,255,.95),rgba(255,255,255,0) 46%)}

@media (prefers-reduced-motion:reduce){
  .obj__rig,.obj__flip{transition:none}
  .obj--live .obj__svg{filter:drop-shadow(0 10px 14px rgba(0,0,0,.35))}
  .obj__flip{transform:none!important}
  .obj__face{backface-visibility:visible;transition:opacity .25s}
  .obj__back{transform:none;opacity:0}
  .obj.is-flipped .obj__back{opacity:1}
  .obj.is-flipped .obj__front{opacity:0}
}

/* ===== base.css ===== */
/* RareFinds redesign: tokens, reset and the shared component set.
   Direction files (dir-arena / dir-desk / dir-foil) only change tokens and composition. */
:root{
  --gutter:clamp(16px,3.2vw,44px);--wrap:1440px;--tap:44px;--hh:64px;
  --fs-2xs:11px;--fs-xs:12px;--fs-s:14px;--fs-m:16px;--fs-l:18px;
  --fs-xl:clamp(20px,1.1vw + 15px,28px);--fs-2xl:clamp(28px,2.4vw + 14px,52px);--fs-3xl:clamp(40px,6vw,104px);--fs-hero:clamp(56px,14vw,232px);
  --sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--sp-8:64px;--sp-9:96px;--sp-10:140px;
  --ease:cubic-bezier(.2,.7,.2,1);--ease-flip:cubic-bezier(.5,0,.2,1);--dur-1:140ms;--dur-2:260ms;--dur-3:560ms;
  --color-focus:#2f7dff;--color-error:#d92d20;
  --media-ar:4 / 5;--media-pad:6%;
  --font-num:'Inter',system-ui,sans-serif;
}
/* ---------- direction tokens ---------- */
[data-direction=arena]{--font-display:'Barlow Condensed','Arial Narrow',sans-serif;--font-body:'Barlow',system-ui,sans-serif;--display-weight:800;--display-case:uppercase;--display-track:-.005em;--display-lead:.88;
  --radius-s:6px;--radius-m:12px;--radius-l:20px;--radius-btn:6px;--cobalt:#3a6bff;--cyan:#3fd8ff;--gel:var(--brand)}
[data-direction=desk]{--font-display:'Fraunces',Georgia,serif;--font-body:'Inter',system-ui,sans-serif;--display-weight:420;--display-case:none;--display-track:-.025em;--display-lead:.96;
  --radius-s:2px;--radius-m:4px;--radius-l:8px;--radius-btn:2px}
[data-direction=foil]{--font-display:'Bricolage Grotesque','Inter',system-ui,sans-serif;--font-body:'Inter',system-ui,sans-serif;--display-weight:800;--display-case:none;--display-track:-.025em;--display-lead:.94;
  --radius-s:4px;--radius-m:10px;--radius-l:22px;--radius-btn:999px;
  --iri:conic-gradient(from 20deg,#ff4d9d,#ffb347,#f2ff5c,#4dffb8,#49b3ff,#9a6bff,#ff4d9d)}
[data-direction=arena][data-mode=dark]{--bg:#07070b;--bg2:#0d0d14;--surface:#12121b;--surface2:#1b1b28;--text:#f6f3ef;--muted:#aca8ba;--border:rgba(255,255,255,.16);--border-s:rgba(255,255,255,.3);--mat:#0b0b12;--color-stock:#3ddc97;--color-notice:#ffc044;--color-sold:#8c8a98;--color-sold-bg:#1b1b26}
[data-direction=arena][data-mode=light]{--bg:#f3f0ea;--bg2:#e9e5dd;--surface:#fff;--surface2:#ece8e0;--text:#0b0b10;--muted:#55525e;--border:rgba(11,11,16,.18);--border-s:rgba(11,11,16,.4);--mat:#e2ded5;--color-stock:#0f7a4d;--color-notice:#8a5a00;--color-sold:#6c6a74;--color-sold-bg:#e4e0d8}
[data-direction=desk][data-mode=light]{--bg:#f2ead9;--bg2:#e9dfca;--surface:#faf5e8;--surface2:#ece3cf;--text:#231d16;--muted:#675b4c;--border:rgba(35,29,22,.24);--border-s:rgba(35,29,22,.5);--mat:#e7dcc4;--color-stock:#216b43;--color-notice:#80560a;--color-sold:#6a5e4e;--color-sold-bg:#e3d9c3}
[data-direction=desk][data-mode=dark]{--bg:#15100b;--bg2:#1c150e;--surface:#211a12;--surface2:#2a2118;--text:#f2e8d4;--muted:#bcae96;--border:rgba(242,232,212,.2);--border-s:rgba(242,232,212,.45);--mat:#1a130c;--color-stock:#53d08b;--color-notice:#f2b94b;--color-sold:#9b8f7a;--color-sold-bg:#2a2118}
[data-direction=foil][data-mode=light]{--bg:#eeece7;--bg2:#e3e0d9;--surface:#fff;--surface2:#e8e5de;--text:#0c0c0f;--muted:#4f4d56;--border:rgba(12,12,15,.85);--border-s:#0c0c0f;--mat:#e0ddd6;--color-stock:#0f7a4d;--color-notice:#8a5a00;--color-sold:#6c6a74;--color-sold-bg:#dedbd3}
[data-direction=foil][data-mode=dark]{--bg:#09090c;--bg2:#101015;--surface:#14141a;--surface2:#1d1d25;--text:#f5f3ee;--muted:#aaa8b4;--border:rgba(245,243,238,.8);--border-s:#f5f3ee;--mat:#101016;--color-stock:#3ddc97;--color-notice:#ffc044;--color-sold:#8c8a98;--color-sold-bg:#1b1b24}

/* ---------- reset ---------- */
[hidden]{display:none!important}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--hh) + 16px)}
body{margin:0;background:var(--bg);color:var(--text);font:400 var(--fs-m)/1.55 var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img,svg,video{max-width:100%;display:block}
h1,h2,h3,h4,p,ul,ol,dl,dd,figure{margin:0}
:where(ul,ol)[role=list]{list-style:none;padding:0}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0;padding:0}
:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px;border-radius:2px}
::selection{background:var(--brand);color:var(--on-brand)}
.skip-link{position:absolute;left:12px;top:-60px;z-index:1000;padding:12px 16px;background:var(--text);color:var(--bg);border-radius:var(--radius-s)}
.skip-link:focus{top:12px}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wrap{width:min(var(--wrap),100% - var(--gutter) * 2);margin-inline:auto}
.display{font-family:var(--font-display);font-weight:var(--display-weight);text-transform:var(--display-case);letter-spacing:var(--display-track);line-height:var(--display-lead)}
.num{font-family:var(--font-num);font-variant-numeric:tabular-nums}
.eyebrow{font:600 var(--fs-xs)/1.2 var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.lead{font-size:var(--fs-l);line-height:1.5;color:var(--muted);max-width:52ch}
.stack>*+*{margin-top:var(--sp-4)}

/* ---------- buttons, chips, badges ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:var(--tap);padding:0 22px;border-radius:var(--radius-btn);border:1.5px solid var(--border-s);font:600 var(--fs-s)/1 var(--font-body);letter-spacing:.02em;transition:background var(--dur-1),color var(--dur-1),transform var(--dur-1),border-color var(--dur-1);white-space:nowrap}
.btn:hover{background:var(--text);color:var(--bg);border-color:var(--text)}
.btn:active{transform:scale(.98)}
.btn--primary{background:var(--brand);color:var(--on-brand);border-color:var(--brand)}
.btn--primary:hover{background:var(--text);color:var(--bg);border-color:var(--text)}
.btn--l{min-height:56px;padding:0 30px;font-size:var(--fs-m)}
.btn--s{min-height:var(--tap);padding:0 16px;font-size:var(--fs-s)}
.btn--ghost{border-color:transparent;background:transparent}
.btn--block{width:100%}
.btn[disabled],.btn[aria-disabled=true]{opacity:.45;pointer-events:none}
.icon-btn{display:inline-grid;place-items:center;width:var(--tap);height:var(--tap);border-radius:50%;position:relative;transition:background var(--dur-1)}
.icon-btn:hover{background:color-mix(in srgb,var(--text) 10%,transparent)}
.count{position:absolute;top:2px;right:0;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--brand);color:var(--on-brand);font:700 11px/20px var(--font-num);text-align:center}
.count[hidden]{display:none}
.chip{display:inline-flex;align-items:center;height:22px;padding:0 8px;border:1px solid var(--border);border-radius:var(--radius-s);font:600 11px/1 var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--text)}
.chip--grade{background:var(--text);color:var(--bg);border-color:var(--text)}
.chip--lang{color:var(--muted)}
.badge{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:var(--radius-s);background:var(--surface);color:var(--text);font:700 11px/1 var(--font-body);letter-spacing:.08em;text-transform:uppercase;box-shadow:0 0 0 1px var(--border)}
.badge--new{background:var(--brand);color:var(--on-brand);box-shadow:none}
.price{font:700 var(--fs-l)/1 var(--font-num);font-variant-numeric:tabular-nums;white-space:nowrap}
.price--sold{color:var(--muted);font-weight:500}
.price--xl{font-size:clamp(34px,3.4vw,56px);letter-spacing:-.02em}
.stock{display:inline-flex;align-items:center;gap:7px;font:600 var(--fs-s)/1 var(--font-body);white-space:nowrap}
.stock::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.stock--in{color:var(--color-stock)}.stock--low{color:var(--color-notice)}
.stock--sold{color:var(--color-sold)}.stock--sold::before{background:transparent;box-shadow:inset 0 0 0 2px currentColor}
.live-dot{display:inline-block;flex:none;width:9px;height:9px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 0 var(--brand);animation:pulse 1.8s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 9px transparent}100%{box-shadow:0 0 0 0 transparent}}

/* ---------- announcement bar + header ---------- */
.announce{display:flex;justify-content:space-between;gap:16px;align-items:center;min-height:36px;padding:0 var(--gutter);font:500 12px/1 var(--font-body);letter-spacing:.04em;overflow:hidden}
.announce__r{display:none}
.site-header{position:sticky;top:0;z-index:50;background:var(--bg);border-bottom:1px solid var(--border);transition:box-shadow var(--dur-2),background var(--dur-2)}
.hdr{display:grid;grid-template-columns:var(--tap) 1fr auto;align-items:center;min-height:var(--hh);gap:var(--sp-3)}
.hdr__menu{margin-left:-10px}
.logo{display:inline-flex;align-items:center;gap:10px;min-width:0;min-height:var(--tap)}
.logo__name{font:var(--display-weight) 26px/1 var(--font-display);text-transform:var(--display-case);letter-spacing:var(--display-track);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.logo__mark,.logo__img{flex:none;height:40px;width:auto;max-width:180px}
.logo__img{object-fit:contain}
.nav{display:none}
.hdr__tools{display:flex;align-items:center;gap:2px;margin-right:-8px}
.hdr__tools .js-mode{display:none}
@media (min-width:1024px){
  .hdr{grid-template-columns:auto 1fr auto;gap:var(--sp-6);min-height:76px}
  .hdr__menu{display:none}
  .nav{display:flex;gap:clamp(16px,2vw,36px);justify-self:center}
  .nav a{position:relative;padding:8px 0;font:600 var(--fs-s)/1 var(--font-body);letter-spacing:.04em}
  .nav a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;background:var(--brand);transform:scaleX(0);transform-origin:left;transition:transform var(--dur-2) var(--ease)}
  .nav a:hover::after,.nav a[aria-current=page]::after{transform:scaleX(1)}
  .hdr__tools .js-mode{display:inline-grid}
  .announce__r{display:block}
}
.sheet{border:0;padding:0;background:var(--bg);color:var(--text);max-width:none;max-height:none}
.sheet::backdrop{background:rgba(0,0,0,.55);backdrop-filter:blur(3px)}
.sheet--left{position:fixed;inset:0 auto 0 0;width:min(86vw,360px);height:100%;margin:0}
.sheet--top{position:fixed;inset:0 0 auto 0;width:100%;margin:0;max-height:82vh;overflow:auto}
.sheet__head{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border)}
.sheet__nav{display:grid;padding:8px 16px 32px}
.sheet__nav a{padding:16px 0;border-bottom:1px solid var(--border);font:var(--display-weight) 28px/1 var(--font-display);text-transform:var(--display-case);letter-spacing:var(--display-track)}
.search{max-width:860px;margin:0 auto;padding:12px 16px 24px}
.search__row{display:flex;align-items:center;gap:8px;border-bottom:2px solid var(--text)}
.search__ic{display:grid;place-items:center;width:var(--tap)}
.search__in{flex:1;min-height:56px;background:none;border:0;font-size:22px;outline:0}
.search__in::placeholder{color:var(--muted)}
.search__res{margin-top:8px;display:grid}
.search__res a{display:flex;justify-content:space-between;gap:16px;min-height:var(--tap);align-items:center;padding:10px 4px;border-bottom:1px solid var(--border)}
.search__res a:hover{background:var(--surface)}
.search__t{font-weight:600}.search__p{color:var(--muted);font-size:var(--fs-s);white-space:nowrap}
.search__none{padding:16px 4px;color:var(--muted)}.search__all{color:var(--brand-ink);font-weight:600}

/* ---------- section head, rails ---------- */
.section{padding-block:clamp(44px,6vw,96px)}
.section__head{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--sp-5);margin-bottom:clamp(24px,3vw,48px)}
.section__title{font:var(--display-weight) var(--fs-3xl)/var(--display-lead) var(--font-display);text-transform:var(--display-case);letter-spacing:var(--display-track)}
.section__more{display:inline-flex;align-items:center;gap:8px;min-height:var(--tap);font:600 var(--fs-s)/1 var(--font-body);border-bottom:2px solid var(--brand);white-space:nowrap}
.rail{scroll-padding-inline:var(--gutter);display:flex;gap:var(--sp-4);overflow-x:auto;scroll-snap-type:x proximity;padding:4px var(--gutter) 24px;margin-inline:calc(var(--gutter) * -1);scrollbar-width:none;overscroll-behavior-x:contain}
.rail::-webkit-scrollbar{display:none}
.rail>li{flex:0 0 min(64vw,280px);scroll-snap-align:start}
@media (min-width:900px){.rail>li{flex-basis:clamp(240px,20vw,320px)}}

/* ---------- product card ---------- */
.pcard{position:relative;display:flex;flex-direction:column;min-width:0}
.pcard__link{display:flex;flex-direction:column;height:100%;min-width:0;border-radius:inherit}
.pcard__media{position:relative;aspect-ratio:var(--media-ar);display:grid;place-items:center;padding:var(--media-pad);background:var(--mat);border-radius:var(--radius-m);overflow:hidden;transition:background var(--dur-2)}
.pcard__media .obj{height:100%;width:auto;max-width:100%}
.pcard__media .obj[data-kind=sealed]{height:auto;width:100%}
.pcard__media .obj[data-kind=graded]{height:94%}
.pcard__badges{position:absolute;top:10px;left:10px;display:flex;gap:6px;z-index:2;pointer-events:none}
.pcard__body{display:flex;flex-direction:column;gap:6px;padding:14px 2px 0;flex:1}
.pcard__set{font:500 var(--fs-xs)/1.3 var(--font-body);letter-spacing:.04em;color:var(--muted)}
.pcard__title{font:700 var(--fs-m)/1.2 var(--font-body);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pcard__rar{font:500 var(--fs-xs)/1.3 var(--font-body);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pcard__meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px}
.pcard__foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 8px;margin-top:auto;padding-top:10px}
.pcard[data-state=sold] .pcard__media{opacity:.55;filter:grayscale(.75)}
.pcard[data-state=sold] .pcard__title{color:var(--muted)}
.pcard__add{position:absolute;top:10px;right:10px;z-index:3;width:var(--tap);height:var(--tap);display:grid;place-items:center;border-radius:50%;background:var(--surface);color:var(--text);box-shadow:0 0 0 1px var(--border-s),0 6px 18px rgba(0,0,0,.22);transition:background var(--dur-1),color var(--dur-1),transform var(--dur-1)}
.pcard__add:hover,.pcard__add.is-done{background:var(--brand);color:var(--on-brand)}
.pcard__add:active{transform:scale(.94)}

/* ---------- forms ---------- */
.field{display:grid;gap:6px}
.field label,.label{font:600 var(--fs-s)/1.2 var(--font-body)}
.input,.select{width:100%;min-height:var(--tap);padding:0 14px;background:var(--surface);border:1.5px solid var(--border-s);border-radius:var(--radius-s);color:var(--text)}
.input:focus-visible,.select:focus-visible{outline-offset:1px}
.switch{display:flex;align-items:center;gap:12px;min-height:var(--tap);cursor:pointer}
.switch input{position:absolute;opacity:0}
.switch__t{width:44px;height:26px;border-radius:13px;background:var(--border-s);position:relative;flex:none;transition:background var(--dur-1)}
.switch__t::after{content:"";position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:var(--bg);transition:transform var(--dur-2) var(--ease)}
.switch input:checked+.switch__t{background:var(--brand)}
.switch input:checked+.switch__t::after{transform:translateX(18px);background:var(--on-brand)}
.switch input:focus-visible+.switch__t{outline:3px solid var(--color-focus);outline-offset:2px}
.check{display:flex;align-items:center;gap:12px;min-height:var(--tap);cursor:pointer;font-size:var(--fs-s)}
.check input{width:20px;height:20px;accent-color:var(--brand);flex:none}
.check .n{margin-left:auto;color:var(--muted);font:500 var(--fs-xs) var(--font-num)}
.check input:disabled~span,.check input:disabled~.n{opacity:.4}
.seg{display:flex;border:1.5px solid var(--border-s);border-radius:var(--radius-btn);overflow:hidden}
.seg button{flex:1;min-height:40px;padding:0 12px;font:600 var(--fs-s) var(--font-body)}
.seg button[aria-checked=true]{background:var(--text);color:var(--bg)}

/* ---------- toast ---------- */
.toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom) + var(--bar-h,0px));z-index:90;display:flex;gap:16px;align-items:center;max-width:min(560px,calc(100vw - 32px));padding:12px 12px 12px 20px;border-radius:var(--radius-m);background:var(--text);color:var(--bg);box-shadow:0 18px 50px rgba(0,0,0,.35);transform:translate(-50%,24px);opacity:0;pointer-events:none;transition:transform var(--dur-2) var(--ease),opacity var(--dur-2)}
.toast.is-on{transform:translate(-50%,0);opacity:1;pointer-events:auto}
.toast__cta{display:inline-flex;align-items:center;min-height:var(--tap);padding:0 16px;border-radius:var(--radius-btn);background:var(--brand);color:var(--on-brand);font-weight:700;font-size:var(--fs-s);white-space:nowrap}

/* ---------- footer ---------- */
.site-footer{border-top:1px solid var(--border);padding-block:clamp(40px,5vw,72px) 32px;margin-top:clamp(24px,4vw,64px)}
.foot{display:grid;gap:var(--sp-6);grid-template-columns:1fr 1fr}
.foot__brand{grid-column:1/-1;display:grid;gap:12px;max-width:44ch;color:var(--muted)}
.foot__h{font:700 var(--fs-xs)/1 var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.foot nav{display:grid;align-content:start}
.foot a{padding:8px 0;min-height:var(--tap);display:flex;align-items:center}
.foot a:hover{color:var(--brand-ink);text-decoration:underline}
.foot p{color:var(--muted);font-size:var(--fs-s)}
.foot__base{display:grid;gap:8px;margin-top:var(--sp-7);padding-top:var(--sp-5);border-top:1px solid var(--border);font-size:var(--fs-xs);color:var(--muted)}
@media (min-width:900px){.foot{grid-template-columns:1.6fr 1fr 1fr 1.2fr}.foot__brand{grid-column:auto}.foot__base{grid-template-columns:1fr auto}}

/* ---------- demo bar ---------- */
.demobar{position:fixed;right:14px;bottom:calc(14px + env(safe-area-inset-bottom));transform:translateY(calc(var(--bar-h,0px) * -1));transition:transform var(--dur-2) var(--ease);z-index:80;font-family:var(--font-body)}
.demobar__btn{display:inline-flex;align-items:center;gap:8px;min-height:var(--tap);min-width:var(--tap);padding:0 16px;border-radius:999px;background:var(--text);color:var(--bg);font:700 var(--fs-s)/1 var(--font-body);box-shadow:0 8px 28px rgba(0,0,0,.4)}
.demobar__dot{width:10px;height:10px;border-radius:50%;background:var(--brand)}
.demobar__panel{position:absolute;right:0;bottom:calc(100% + 10px);width:min(320px,calc(100vw - 28px));padding:18px;border-radius:var(--radius-l);background:var(--surface);color:var(--text);border:1px solid var(--border-s);box-shadow:0 24px 70px rgba(0,0,0,.45)}
.demobar__h{font:700 var(--fs-xs)/1 var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:14px 0 8px}
.demobar__h:first-child{margin-top:0}
.demobar__row{display:flex;gap:8px}
.demobar__note{margin-top:14px;font-size:var(--fs-xs);color:var(--muted);line-height:1.45}
.swatches{display:flex;gap:8px;flex-wrap:wrap}
.swatch{width:var(--tap);height:var(--tap);border-radius:50%;background:var(--c);box-shadow:0 0 0 2px var(--surface),0 0 0 3px var(--border-s);position:relative}
.swatch--pick{background:conic-gradient(red,yellow,lime,aqua,blue,magenta,red);display:block;overflow:hidden}
.swatch--pick input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}

/* ---------- crumbs, notices ---------- */
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:0 10px;font:500 var(--fs-xs)/1.4 var(--font-body);color:var(--muted);letter-spacing:.04em;min-width:0}
.crumbs li{display:flex;align-items:center;gap:10px;min-width:0}
.crumbs li+li::before{content:"/";opacity:.5}
.crumbs a{display:inline-flex;align-items:center;min-height:var(--tap)}
.crumbs a:hover{color:var(--text);text-decoration:underline}
.crumbs [aria-current]{min-height:var(--tap);align-items:center;display:inline-flex;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:34ch}
.notice{padding:14px 16px;border-radius:var(--radius-m);background:var(--surface2);font-size:var(--fs-s);color:var(--muted)}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

/* reserve space for the JS-built shell so nothing jumps (CLS) */
#site-header-root{min-height:101px}
#site-footer{min-height:540px}
main{min-height:70vh}
@media (min-width:900px){#site-footer{min-height:330px}}
@media (min-width:1024px){#site-header-root{min-height:113px}[data-direction=desk] #site-header-root{min-height:151px}}
@media (max-width:599px){[data-direction=desk] #site-header-root{min-height:113px}}
.lazy{display:block}
.obj-ph{width:60%;height:60%}

@media (max-width:599px){.demobar__btn{padding:0;justify-content:center;width:48px;height:48px;border-radius:50%;opacity:.92}.demobar__lbl{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.demobar__dot{width:14px;height:14px}}

/* ===== home.css ===== */
/* Start page: shared structure. Direction files add the personality. */
[data-rv=""]{opacity:0;transform:translateY(22px)}
[data-rv=in]{opacity:1;transform:none;transition:opacity .7s var(--ease),transform .7s var(--ease)}
.hero{position:relative;overflow:clip}
.hero__grid{display:grid;gap:var(--sp-6);padding-block:clamp(28px,5vw,72px) clamp(32px,5vw,72px)}
.hero__ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:var(--sp-5)}
@media (max-width:599px){.hero__ctas .btn{flex:1 1 100%}}
.hero__title{font-size:var(--fs-hero);margin:var(--sp-3) 0 var(--sp-4)}
.hero__title span{display:block}
.hero__facts{display:flex;flex-wrap:wrap;gap:8px 28px;list-style:none;padding:0;margin:0;font:500 var(--fs-s)/1.3 var(--font-body);color:var(--muted)}
.hero__facts b{color:var(--text);font-family:var(--font-num)}
.sec__note{max-width:60ch;color:var(--muted);margin:-8px 0 var(--sp-5)}
.sec__split{display:grid;gap:var(--sp-6);align-items:center}
.sec__photo{position:relative;overflow:hidden;border-radius:var(--radius-m)}
.sec__photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.demo-label{position:absolute;left:10px;bottom:10px;padding:5px 9px;border-radius:var(--radius-s);background:rgba(0,0,0,.62);color:#fff;font:600 11px/1 var(--font-body);letter-spacing:.08em;text-transform:uppercase}
.countdown{display:flex;align-items:baseline;gap:14px}
.countdown b{font:var(--display-weight) clamp(40px,6vw,76px)/1 var(--font-display);letter-spacing:var(--display-track)}
.schedule{list-style:none;padding:0;display:grid;gap:0}
.schedule li{padding:12px 0;border-bottom:1px solid var(--border)}
.schedule li::first-letter{text-transform:uppercase}
.sec__about{display:grid;gap:var(--sp-6)}
.facts{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-5)}
.facts li{display:grid;gap:4px;padding-top:14px;border-top:2px solid var(--text)}
.facts span{font:600 var(--fs-xs) var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.facts b{font:600 var(--fs-l)/1.25 var(--font-body)}
.series{list-style:none;padding:0}
.srow{position:relative;display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:4px 12px;padding:18px 0;border-top:1px solid var(--border);min-height:var(--tap);transition:padding var(--dur-2) var(--ease),background var(--dur-2)}
.series li:last-child .srow{border-bottom:1px solid var(--border)}
.srow__n{color:var(--muted);font-size:var(--fs-s)}
.srow__name{font:var(--display-weight) clamp(30px,6vw,64px)/1 var(--font-display);text-transform:var(--display-case);letter-spacing:var(--display-track)}
.srow__meta{grid-column:2;color:var(--muted);font-size:var(--fs-s)}
.srow__c{grid-column:2;font-size:var(--fs-s);font-weight:600}
.srow__go{grid-column:3;grid-row:1;display:grid;place-items:center;width:var(--tap);height:var(--tap)}
.srow__thumb{display:none}
@media (min-width:900px){
  .hero__grid{padding-block:clamp(40px,5vw,88px)}
  .sec__split{grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,112px)}
  .sec__about{grid-template-columns:1.1fr 1fr;gap:clamp(40px,6vw,112px);align-items:end}
  .srow{grid-template-columns:56px minmax(0,1.3fr) minmax(0,1fr) 110px 44px;padding:22px 0}
  .srow__meta,.srow__c{grid-column:auto}
  .srow__go{grid-column:auto;grid-row:auto}
  .srow__thumb{display:block;position:absolute;right:140px;top:50%;width:92px;opacity:0;pointer-events:none;transform:translateY(-44%) rotate(-5deg);transition:opacity var(--dur-2),transform var(--dur-3) var(--ease);z-index:2}
  .srow:hover .srow__thumb{opacity:1;transform:translateY(-52%) rotate(4deg)}
}

/* ===== pages.css ===== */
/* Inner pages: category, product, cart, checkout, info. Shared structure; directions tweak in dir-pages.css. */
.cat{padding-block:20px clamp(40px,6vw,96px);overflow-x:clip}
.crumbs-wrap{margin-bottom:12px}
.cat__head{display:grid;gap:8px;margin-bottom:clamp(14px,2vw,28px)}
#cat-sub{min-height:3em}
@media (min-width:640px){#cat-sub{min-height:1.5em}}
.cat__title{font-size:clamp(48px,9vw,140px);overflow-wrap:anywhere}
.cat__bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 0;border-block:1px solid var(--border);position:sticky;top:var(--hh);z-index:20;background:var(--bg)}
.cat__count{margin-right:auto;font-size:var(--fs-s);color:var(--muted);flex:1 1 150px;min-height:var(--tap);display:flex;align-items:center;gap:6px}
.cat__count b{color:var(--text)}
.cat__sort{min-width:190px}
.cat__active{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0;min-height:0}
.count--inline{position:static;display:inline-block;margin-left:6px}
.count--inline:empty{display:none}
.fchip{display:inline-flex;align-items:center;gap:8px;min-height:var(--tap);padding:0 8px 0 14px;border:1.5px solid var(--border-s);border-radius:999px;font:600 var(--fs-s) var(--font-body)}
.fchip svg{width:16px;height:16px}
.fchip:hover{background:var(--text);color:var(--bg)}
.fchip--clear{border-color:transparent;text-decoration:underline;padding-right:14px}
.cat__body{display:grid;gap:var(--sp-6);margin-top:var(--sp-5)}
.grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px}
.more{display:grid;place-items:center;margin-top:var(--sp-7)}
.empty{padding:clamp(40px,8vw,120px) 0;max-width:46ch;display:grid;gap:14px}
.empty h2{font-size:var(--fs-2xl)}
.chip--btn{height:34px;padding:0 12px;cursor:pointer;background:none}
.chip--btn:hover{background:var(--text);color:var(--bg)}
.filters{border:0;padding:0;background:var(--bg);color:var(--text);position:fixed;inset:0 0 0 auto;width:min(92vw,420px);height:100%;margin:0;max-height:none;display:flex;flex-direction:column}
.filters::backdrop{background:rgba(0,0,0,.55);backdrop-filter:blur(3px)}
.filters:not([open]){display:none}
.filters__head{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border)}
.filters__t{font:var(--display-weight) 28px/1 var(--font-display);text-transform:var(--display-case);letter-spacing:var(--display-track)}
.filters__form{padding:8px 16px 36px;overflow:auto;flex:1;display:grid;align-content:start;gap:4px;-webkit-mask-image:linear-gradient(#000 calc(100% - 32px),transparent);mask-image:linear-gradient(#000 calc(100% - 32px),transparent)}
.filters__form fieldset{border:0;border-bottom:1px solid var(--border);margin:0;padding:14px 0;min-width:0}
.filters__form legend{padding:0;font:700 var(--fs-xs)/1 var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.setlist{max-height:240px;overflow:auto;margin-top:6px}
.pricebox{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center}
.presets{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.filters__foot{display:grid;gap:8px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--border)}
@media (min-width:640px){.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 20px}}
@media (min-width:1024px){
  .cat__filterbtn{display:none}
  .cat__body{grid-template-columns:268px minmax(0,1fr);gap:clamp(32px,4vw,64px);align-items:start}
  .filters,.filters:not([open]){display:block;position:sticky;top:calc(var(--hh) + 74px);inset:auto;width:auto;height:auto;max-height:calc(100vh - var(--hh) - 90px);overflow:auto;background:none;margin:0}
  .filters__head,.filters__foot{display:none}
  .filters__form{padding:0}
  .grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (min-width:1360px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* ---------- product page ---------- */
.pdp{padding-block:20px clamp(40px,6vw,96px)}
.pdp__grid{display:grid;gap:var(--sp-5)}
.gallery__stage{position:relative;display:grid;place-items:center;border-radius:var(--radius-l);background:var(--mat);overflow:hidden;padding:clamp(20px,4vw,56px) 0;min-height:clamp(380px,56vh,620px);isolation:isolate}
.gallery__obj{width:min(62%,380px);position:relative;z-index:2}
.gallery__obj--wide{width:min(86%,560px)}
.gallery__obj .obj{--ar:inherit}
.gallery__sold{position:absolute;top:14px;left:14px;padding:7px 12px;border-radius:var(--radius-s);background:var(--text);color:var(--bg);font:700 12px/1 var(--font-body);letter-spacing:.1em;text-transform:uppercase;z-index:3}
.gallery__stage.is-sold .gallery__obj{opacity:.55;filter:grayscale(.7)}
.gallery__stage.is-sold::before,.gallery__stage.is-sold .foil{display:none}
.setlist{max-height:264px}
.gallery__bar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:12px}
.gallery__bar .btn--s{padding:0 12px}
.gallery__thumbs{display:flex;border:1.5px solid var(--border-s);border-radius:var(--radius-btn);overflow:hidden;margin-right:auto}
.thumb{min-height:var(--tap);padding:0 12px;font:600 var(--fs-s) var(--font-body)}
.thumb[aria-pressed=true]{background:var(--text);color:var(--bg)}
.gallery__hint{margin-top:12px;font-size:var(--fs-s);color:var(--muted)}
.demo-note{margin-top:6px;font-size:var(--fs-xs);color:var(--muted)}
.info{display:grid;gap:14px;align-content:start;min-width:0}
.info__set{color:var(--muted)}
.info__title{font-size:clamp(44px,6.4vw,104px);overflow-wrap:anywhere}
.info__rar{font:500 var(--fs-l)/1.3 var(--font-body);color:var(--muted)}
.info__chips{display:flex;gap:6px;flex-wrap:wrap}
.info__price{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;padding-block:6px}
.buy{display:grid;gap:10px}
.unique{font-size:var(--fs-s);color:var(--muted)}
.stepper{display:inline-grid;grid-template-columns:var(--tap) 56px var(--tap);align-items:center;justify-self:start;border:1.5px solid var(--border-s);border-radius:var(--radius-btn);overflow:hidden}
.stepper button{height:var(--tap);font-size:22px}
.stepper button:hover{background:var(--text);color:var(--bg)}
.stepper output{text-align:center;font-weight:700}
.stepper--s{grid-template-columns:40px 44px 40px}.stepper--s button{height:44px}
.condnote{font-size:var(--fs-s);color:var(--muted);padding:12px 14px;border-left:3px solid var(--brand)}
.ship{list-style:none;padding:14px 0 0;display:grid;gap:10px;border-top:1px solid var(--border);font-size:var(--fs-s);color:var(--muted)}
.ship b{color:var(--text)}
.info__h{font:var(--display-weight) var(--fs-2xl)/1 var(--font-display);text-transform:var(--display-case);letter-spacing:var(--display-track);margin-top:10px}
.specs{display:grid;grid-template-columns:1fr;gap:0;margin:0}
.specs>div{display:grid;grid-template-columns:minmax(110px,.8fr) 2fr;gap:12px;padding:12px 0;border-top:1px solid var(--border);font-size:var(--fs-s)}
.specs dt{color:var(--muted)}.specs dd{margin:0;overflow-wrap:anywhere}
.specs--one>div:last-child{border-bottom:1px solid var(--border)}
.inline{color:var(--brand-ink);text-decoration:underline;text-underline-offset:3px;font-weight:600}
.soldbox{padding:20px;border-radius:var(--radius-m);background:var(--color-sold-bg);display:grid;gap:12px}
.soldbox__t{font:var(--display-weight) var(--fs-2xl)/1 var(--font-display);text-transform:var(--display-case)}
.soldbox__acts{display:flex;flex-wrap:wrap;gap:10px}
.soldbox__note{font-size:var(--fs-s);color:var(--muted)}
.buybar{position:fixed;left:0;right:0;bottom:0;z-index:70;display:flex;align-items:center;gap:12px;padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom));background:var(--bg);border-top:2px solid var(--text);transform:translateY(110%);transition:transform var(--dur-2) var(--ease)}
.buybar.is-on{transform:none}
.buybar__t{display:grid;min-width:0;flex:1}
.buybar__n{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:var(--fs-s)}
.buybar__t .num{font-weight:700;font-size:var(--fs-l)}
.buybar__btn{min-height:48px;padding-inline:26px}
.zoomd{width:min(94vw,640px);height:min(92vh,900px);margin:auto;background:var(--bg);display:none;place-items:center;padding:24px;border-radius:var(--radius-l)}
.zoomd[open]{display:grid}
.zoomd__x{position:absolute;top:8px;right:8px}
.zoomd__obj{width:min(80%,52vh)}
@media (min-width:900px){
  .buybar{display:none}
  .pdp__grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(40px,6vw,104px);align-items:start}
  .gallery{position:sticky;top:calc(var(--hh) + 24px)}
  .gallery__stage{min-height:min(72vh,720px)}
  .gallery__obj{width:min(58%,440px)}
  .specs>div{grid-template-columns:200px 1fr}
}
@media (max-width:899px){.gallery__stage{min-height:clamp(320px,46vh,460px);padding-block:20px}}

/* ---------- cart / checkout / thanks ---------- */
.flow{padding-block:20px clamp(48px,7vw,112px)}
.flow__title{font-size:clamp(48px,8vw,128px);margin-bottom:clamp(20px,3vw,40px)}
.flow--thanks .lead{margin-bottom:clamp(24px,4vw,48px)}
.flow__grid{display:grid;gap:var(--sp-6)}
.lines{list-style:none;padding:0;border-top:2px solid var(--text)}
.line{display:grid;grid-template-columns:76px 1fr auto;gap:6px 16px;padding:18px 0;border-bottom:1px solid var(--border);align-items:start}
.line__img{display:block;width:76px;aspect-ratio:4/5;background:var(--mat);border-radius:var(--radius-s);padding:6px;display:grid;place-items:center}
.line__img .obj{height:100%;width:auto;max-width:100%}
.line__img .obj[data-kind=sealed]{height:auto;width:100%}
.line__main{min-width:0;display:grid;gap:6px}
.line__t{font:700 var(--fs-m)/1.25 var(--font-body)}
.line__t a:hover{text-decoration:underline}
.line__meta{display:flex;gap:6px;flex-wrap:wrap}
.chip--unique{border-style:dashed}
.line__acts{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.linkbtn{min-height:var(--tap);text-decoration:underline;text-underline-offset:3px;color:var(--muted);font-size:var(--fs-s)}
.line__p{font-weight:700;white-space:nowrap}
.line__qty{font-size:var(--fs-s);color:var(--muted)}
.lines--s{margin-bottom:16px}
.lines--s .line{grid-template-columns:56px 1fr auto;padding:12px 0}.lines--s .line__img{width:56px}
.summary{display:grid;gap:12px;align-content:start;padding:22px;border:2px solid var(--text);border-radius:var(--radius-m);background:var(--surface);position:sticky;top:calc(var(--hh) + 16px)}
.summary__t{font:var(--display-weight) 30px/1 var(--font-display);text-transform:var(--display-case);letter-spacing:var(--display-track)}
.summary__rows{display:grid;gap:8px;margin:0}
.summary__rows>div{display:flex;justify-content:space-between;gap:12px}
.summary__rows dd{margin:0}
.summary__total{padding-top:12px;border-top:1px solid var(--border-s);font-weight:800;font-size:var(--fs-xl)}
.summary__vat{font-size:var(--fs-xs);color:var(--muted);margin-top:-8px}
.freebar{height:8px;border-radius:4px;background:var(--surface2);overflow:hidden}
.freebar i{display:block;height:100%;background:var(--brand);border-radius:4px;transition:width var(--dur-3) var(--ease)}
.summary__free{font-size:var(--fs-s);color:var(--muted)}
.kustom{border:2px dashed var(--border-s);border-radius:var(--radius-m);padding:clamp(16px,3vw,28px);display:grid;gap:16px;background:var(--surface)}
.kustom__tag{display:inline-flex;align-items:center;gap:8px;font:700 var(--fs-xs)/1 var(--font-body);letter-spacing:.12em;text-transform:uppercase}
.kustom__note,.kustom__fine{font-size:var(--fs-xs);color:var(--muted)}
.kustom__fake{display:grid;gap:16px}
.kustom fieldset{border:1.5px solid var(--border);border-radius:var(--radius-s);padding:8px 14px;margin:0;display:grid}
.kustom legend{font:700 var(--fs-xs) var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding:0 6px}
.radio{display:flex;align-items:center;gap:12px;min-height:var(--tap);cursor:pointer}
.radio input{width:20px;height:20px;accent-color:var(--brand);flex:none}
.radio span:nth-of-type(1){flex:1}
@media (min-width:900px){.flow__grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(40px,6vw,96px);align-items:start}.line{grid-template-columns:96px 1fr auto}.line__img{width:96px}}

/* ---------- info + system ---------- */
.info-page{padding-block:20px clamp(48px,7vw,112px)}
.info-page__grid{display:grid;gap:var(--sp-6)}
.info-page__nav{display:flex;flex-wrap:wrap;gap:4px 18px;align-content:start;position:sticky;top:var(--hh);background:var(--bg);padding:6px 0;z-index:10;border-bottom:1px solid var(--border)}
.info-page__nav a{display:inline-flex;align-items:center;min-height:var(--tap);font-weight:600}
.info-page__nav a:hover{text-decoration:underline}
.info-sec{padding-block:clamp(24px,4vw,56px);border-bottom:1px solid var(--border)}
.info-sec h2{font-size:var(--fs-3xl);margin-bottom:var(--sp-5)}
.prose{max-width:62ch}
.muted{color:var(--muted);font-size:var(--fs-s)}
.tf{border-radius:2px}
.show-tf .tf{outline:2px dashed var(--brand);outline-offset:2px;background:color-mix(in srgb,var(--brand) 14%,transparent)}
.cform{display:grid;gap:14px;max-width:520px;margin-top:var(--sp-5)}
textarea.input{padding:12px 14px;min-height:120px}
@media (min-width:900px){.info-page__grid{grid-template-columns:220px minmax(0,1fr);gap:clamp(40px,6vw,96px)}.info-page__nav{flex-direction:column;top:calc(var(--hh) + 16px);border:0;gap:0;align-self:start;padding:0}.info-page__nav a{border-bottom:1px solid var(--border)}}
.sys{padding-block:24px clamp(48px,7vw,112px)}
.sys__sec{padding-block:clamp(28px,5vw,72px);border-top:2px solid var(--text);display:grid;gap:var(--sp-5)}
.sys__head h2{font-size:var(--fs-2xl);margin-bottom:8px}
.sys__head p{max-width:70ch;color:var(--muted)}
.sys__sw{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.sys__sw li{display:grid;gap:4px;font-size:var(--fs-xs)}
.sys__sw i{display:block;height:64px;border-radius:var(--radius-s);box-shadow:inset 0 0 0 1px var(--border)}
.sys__sw span{color:var(--muted)}
.sys__row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.sys__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.sys__objs{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:36px 24px;align-items:end}
.sys__objs figure{display:grid;gap:10px}
.sys__objs figcaption{font-size:var(--fs-s);color:var(--muted)}
.sys__obj--l{width:min(100%,340px)}
.sys__foil{display:grid;place-items:center;padding:clamp(24px,5vw,64px);background:var(--mat);border-radius:var(--radius-l)}
@media (min-width:900px){.sys__grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* ===== dir-arena.css ===== */
/* A. Nattsläpp: neon on black, stream night. Orange-red against cobalt, giant condensed type, grain. */
[data-direction=arena] body{background:var(--bg)}
[data-direction=arena][data-mode=dark] body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:200;opacity:.07;mix-blend-mode:screen;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
[data-direction=arena] .announce{background:#000;color:#fff;border-bottom:1px solid rgba(255,255,255,.12)}
[data-direction=arena][data-mode=light] .announce{background:#0b0b10}
[data-direction=arena] .announce__live{display:flex;align-items:center;gap:8px;white-space:nowrap;font:700 12px/1 var(--font-body);letter-spacing:.12em;text-transform:uppercase;flex:none;padding-right:16px}
[data-direction=arena] .announce__live b{font-family:var(--font-num);color:var(--brand);letter-spacing:.04em}
[data-direction=arena] .announce__tick{flex:1;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
[data-direction=arena] .announce__track{display:flex;gap:40px;width:max-content;animation:tick 60s linear infinite}
[data-direction=arena] .announce__track a{white-space:nowrap;color:rgba(255,255,255,.78);font-weight:500}
[data-direction=arena] .announce__track b{color:#fff;text-transform:uppercase;letter-spacing:.06em}
[data-direction=arena] .announce__track a::after{content:"\25CF";margin-left:40px;color:var(--brand);font-size:8px;vertical-align:middle}
@keyframes tick{to{transform:translateX(-50%)}}
[data-direction=arena] .site-header{background:color-mix(in srgb,var(--bg) 84%,transparent);backdrop-filter:blur(14px) saturate(1.3);border-bottom-color:var(--border)}
[data-direction=arena] .logo__name{font-size:28px;letter-spacing:.01em}
[data-direction=arena] .nav a{font:700 15px/1 var(--font-display);letter-spacing:.1em;text-transform:uppercase}
[data-direction=arena] .btn{font:700 15px/1 var(--font-display);letter-spacing:.1em;text-transform:uppercase;border-width:2px}
[data-direction=arena] .btn--primary{box-shadow:0 0 0 0 color-mix(in srgb,var(--brand) 60%,transparent),0 10px 36px -8px color-mix(in srgb,var(--brand) 70%,transparent)}
[data-direction=arena] .eyebrow{font-family:var(--font-display);font-weight:700;font-size:14px;letter-spacing:.18em}
[data-direction=arena] .chip{border-radius:3px;font-family:var(--font-display);font-size:12px;letter-spacing:.1em}

/* hero */
[data-direction=arena] .hero{isolation:isolate}
[data-direction=arena] .hero__bg{position:absolute;inset:0;z-index:-1;
  background:radial-gradient(60% 60% at 82% 28%,color-mix(in srgb,var(--brand) 55%,transparent),transparent 70%),radial-gradient(50% 55% at 6% 96%,color-mix(in srgb,var(--cobalt) 55%,transparent),transparent 72%),radial-gradient(40% 40% at 60% 100%,color-mix(in srgb,var(--cyan) 22%,transparent),transparent 70%)}
[data-direction=arena] .hero__bg::before{content:"";position:absolute;inset:0;background:url(../img/arena-desk-1600.webp) 70% 40% / cover;opacity:.28;mix-blend-mode:screen;mask-image:linear-gradient(90deg,transparent 15%,#000 70%)}
[data-direction=arena][data-mode=light] .hero__bg{opacity:.5}
@media (max-width:700px){[data-direction=arena] .hero__bg::before{background-image:url(../img/arena-desk-800.webp)}}
[data-direction=arena] .hero__eyebrow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--text)}
[data-direction=arena] .hero__eyebrow b{color:var(--brand-ink)}
[data-direction=arena] .hero__title{font-size:clamp(56px,18.4vw,232px);line-height:.84;white-space:nowrap;position:relative;z-index:1;margin-block:12px 18px}
[data-direction=arena] .hero__title .hl{color:var(--brand)}
[data-direction=arena] .hero__title span:last-child{-webkit-text-stroke:2px var(--text);color:transparent}
[data-direction=arena] .hero__copy{position:relative;z-index:1;min-width:0}
[data-direction=arena] .hero__stage{position:relative;aspect-ratio:1/1.08;width:min(100%,520px);margin-inline:auto;z-index:2;perspective:1400px}
[data-direction=arena] .stage__item{position:absolute;display:block}
[data-direction=arena] .stage__item--main{left:20%;top:0;width:58%;z-index:3;transform:rotate(3deg)}
[data-direction=arena] .stage__item--a{left:-2%;bottom:2%;width:34%;z-index:2;transform:rotate(-9deg)}
[data-direction=arena] .stage__item--b{right:-4%;bottom:4%;width:50%;z-index:2;transform:rotate(6deg)}
[data-direction=arena] .stage__tag{position:absolute;left:50%;bottom:-6px;transform:translateX(-50%);z-index:4;white-space:nowrap;padding:8px 14px;border-radius:999px;background:var(--text);color:var(--bg);font:600 12px/1 var(--font-body);letter-spacing:.04em}
[data-direction=arena] .stage__tag b{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;font-size:13px}
[data-direction=arena] .hero__facts{margin-top:var(--sp-6);padding:16px var(--gutter) 0;width:min(var(--wrap),100%);margin-inline:auto;border-top:1px solid var(--border);font:600 12px/1.3 var(--font-display);letter-spacing:.14em;text-transform:uppercase}
@media (min-width:900px){
  [data-direction=arena] .hero__grid{grid-template-columns:minmax(0,1.2fr) minmax(0,.95fr);align-items:center;min-height:min(86vh,820px)}
  [data-direction=arena] .hero__title{font-size:clamp(120px,11.6vw,220px)}
  [data-direction=arena] .hero__stage{width:100%;margin-left:-2vw;max-width:640px}
  [data-direction=arena] .hero__copy .lead{max-width:44ch}
}

/* sections */
[data-direction=arena] .section__title{font-size:clamp(44px,8.4vw,132px);line-height:.96;padding-top:.1em}
[data-direction=arena] .section__head .eyebrow{margin-bottom:.35em}
[data-direction=arena] .pcard__media{background:radial-gradient(70% 55% at 50% 30%,color-mix(in srgb,var(--cobalt) 26%,var(--mat)),var(--mat) 72%);border:1px solid var(--border);transition:border-color var(--dur-2),transform var(--dur-3) var(--ease),box-shadow var(--dur-3)}
[data-direction=arena] .pcard:hover .pcard__media{border-color:var(--brand);transform:translateY(-4px);box-shadow:0 22px 50px -22px color-mix(in srgb,var(--brand) 70%,transparent)}
[data-direction=arena] .pcard__title{font:800 20px/1 var(--font-display);text-transform:uppercase;letter-spacing:.02em}
[data-direction=arena] .pcard__set{font:600 12px/1.2 var(--font-display);letter-spacing:.12em;text-transform:uppercase}
[data-direction=arena] .price{font:800 26px/1 var(--font-display);letter-spacing:.01em}
[data-direction=arena] .rail>li{flex-basis:min(72vw,300px)}
@media (min-width:900px){[data-direction=arena] .rail>li{flex-basis:clamp(260px,21vw,340px)}}
[data-direction=arena] .sec--latest .section__head{align-items:flex-end}
[data-direction=arena] .sec--graded{position:relative;overflow:clip;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--cobalt) 14%,var(--bg)) 30%,transparent)}
[data-direction=arena] .sec--graded::before{content:"10";position:absolute;right:-2vw;top:2%;font:800 clamp(280px,48vw,760px)/.8 var(--font-display);color:transparent;-webkit-text-stroke:2px color-mix(in srgb,var(--cobalt) 40%,transparent);pointer-events:none;z-index:0}
@media (max-width:899px){[data-direction=arena] .sec--graded::before{top:4%;opacity:.55;font-size:clamp(220px,70vw,360px)}}
[data-direction=arena] .sec--graded .wrap{position:relative;z-index:1}
[data-direction=arena] .sec--graded .pcard__media{background:radial-gradient(70% 60% at 50% 25%,color-mix(in srgb,var(--cobalt) 45%,var(--mat)),var(--mat) 78%)}
[data-direction=arena] .sec--sealed .pcard__media{background:radial-gradient(70% 60% at 50% 25%,color-mix(in srgb,var(--brand) 32%,var(--mat)),var(--mat) 78%)}
[data-direction=arena] .srow:hover{padding-left:16px;background:linear-gradient(90deg,color-mix(in srgb,var(--brand) 16%,transparent),transparent)}
[data-direction=arena] .srow:hover .srow__name{color:var(--brand-ink)}
[data-direction=arena] .srow__name{font-size:clamp(34px,7vw,92px)}
[data-direction=arena] .countdown b{color:var(--brand-ink);font-size:clamp(56px,8vw,112px)}
[data-direction=arena] .sec--stream .sec__photo{border-radius:var(--radius-s);box-shadow:0 0 0 1px var(--border),0 40px 90px -40px color-mix(in srgb,var(--cobalt) 80%,transparent)}
[data-direction=arena] .sec--stream .sec__photo::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 28%,transparent),transparent 55%);mix-blend-mode:screen;pointer-events:none}
[data-direction=arena] .facts li{border-top-color:var(--brand)}
[data-direction=arena] .facts b{font:800 26px/1.05 var(--font-display);text-transform:uppercase}
[data-direction=arena] .site-footer{background:#000;color:#fff;--text:#f6f3ef;--muted:#aca8ba;--border:rgba(255,255,255,.16);border-top:0}
[data-direction=arena][data-mode=light] .site-footer{background:#0b0b10}
[data-direction=arena] .site-footer .logo__name{color:#fff}
@media (prefers-reduced-motion:reduce){[data-direction=arena] .announce__track{animation:none}}

/* ===== dir-desk.css ===== */
/* B. Skrivbordet: the collector's desk. Warm paper, ink, binder pockets, slow soft motion. */
[data-direction=desk] body{background-color:var(--bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='p'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.55' numOctaves='3' seed='4'/%3E%3CfeColorMatrix values='0 0 0 0 .35 0 0 0 0 .27 0 0 0 0 .15 0 0 0 .09 0'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23p)'/%3E%3C/svg%3E")}
[data-direction=desk][data-mode=dark] body{background-image:none}
[data-direction=desk] .announce{justify-content:center;gap:28px;background:var(--text);color:var(--bg);font:500 12px/1 var(--font-body);letter-spacing:.14em;text-transform:uppercase}
[data-direction=desk] .site-header{background:var(--bg);border-bottom:1px solid var(--border-s)}
[data-direction=desk] .logo__name{font:420 30px/1 var(--font-display);letter-spacing:-.02em;font-variation-settings:'opsz' 72}
[data-direction=desk] .nav a{font:500 12px/1 var(--font-body);letter-spacing:.2em;text-transform:uppercase}
[data-direction=desk] .btn{border-radius:2px;font:600 12px/1 var(--font-body);letter-spacing:.16em;text-transform:uppercase}
[data-direction=desk] .btn--primary{box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}
[data-direction=desk] .eyebrow{font-weight:500;letter-spacing:.22em}
[data-direction=desk] .section__title{font-weight:380;font-size:clamp(40px,6.4vw,100px);line-height:.98;font-variation-settings:'opsz' 144}
[data-direction=desk] em{font-style:italic;color:var(--brand-ink)}
@media (min-width:1024px){
  [data-direction=desk] .hdr{grid-template-columns:1fr auto 1fr;grid-template-areas:". logo tools" "nav nav nav";row-gap:0;padding-top:14px;min-height:0}
  [data-direction=desk] .hdr .logo{grid-area:logo;justify-self:center}
  [data-direction=desk] .hdr__tools{grid-area:tools;justify-self:end}
  [data-direction=desk] .nav{grid-area:nav;justify-self:stretch;justify-content:center;gap:clamp(28px,4vw,64px);margin-top:10px;padding:2px 0 2px;border-top:1px solid var(--border)}
  [data-direction=desk] .nav a{padding:14px 0}
}
/* hero + binder */
[data-direction=desk] .hero__title{font-size:clamp(54px,14.4vw,168px);font-weight:380;line-height:.92;letter-spacing:-.035em;font-variation-settings:'opsz' 144;margin-block:14px 20px}
[data-direction=desk] .hero__title em{display:block;font-weight:340}
[data-direction=desk] .hero__copy .lead{max-width:40ch}
[data-direction=desk] .binder{position:relative;width:min(100%,560px);margin-inline:auto}
[data-direction=desk] .binder__cover{display:grid;grid-template-columns:1fr;padding:16px;border-radius:8px 12px 12px 8px;background:linear-gradient(145deg,#3a281a,#24170e 60%,#2e1f13);box-shadow:0 50px 80px -34px rgba(40,20,5,.65),inset 0 0 0 1.5px rgba(255,255,255,.07),inset 0 2px 0 rgba(255,255,255,.1)}
[data-direction=desk] .binder__page{background:#eee4cd;padding:12px;border-radius:3px;box-shadow:inset 0 0 0 1px rgba(60,40,20,.16)}
[data-direction=desk] .binder__page--r,[data-direction=desk] .binder__rings{display:none}
[data-direction=desk] .binder__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
[data-direction=desk] .pocket{position:relative;display:block;aspect-ratio:63/88;padding:4.5%;border-radius:5px;background:linear-gradient(160deg,rgba(255,255,255,.55),rgba(255,255,255,.18));box-shadow:inset 0 0 0 1px rgba(60,40,20,.2),inset 0 -2px 0 rgba(60,40,20,.12)}
[data-direction=desk] .pocket::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.4) 48%,transparent 56%)}
[data-direction=desk] .pocket--empty{background:rgba(60,40,20,.05);box-shadow:inset 0 0 0 1px rgba(60,40,20,.16)}
[data-direction=desk] .pocket--empty::after{display:none}
[data-direction=desk] .pocket__card{position:relative;display:block;transition:transform var(--dur-3) var(--ease)}
[data-direction=desk] .pocket:hover,[data-direction=desk] .pocket:focus-visible{z-index:6}
[data-direction=desk] .pocket:hover .pocket__card{transform:translateY(-10px) scale(1.55)}
[data-direction=desk] .binder__cap{margin-top:14px;font:italic 400 13px/1.4 var(--font-display);color:var(--muted);text-align:center}
@media (min-width:900px){
  [data-direction=desk] .hero__grid{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;gap:clamp(32px,5vw,96px)}
  [data-direction=desk] .hero__title{font-size:clamp(80px,9vw,150px)}
  [data-direction=desk] .binder{width:100%;max-width:760px;transform:rotate(-1.4deg)}
  [data-direction=desk] .binder__cover{grid-template-columns:1fr 34px 1fr;padding:22px}
  [data-direction=desk] .binder__page--r{display:block}
  [data-direction=desk] .binder__rings{display:flex;flex-direction:column;justify-content:space-around;align-items:center;padding:30px 0}
  [data-direction=desk] .binder__rings i{width:36px;height:13px;border-radius:7px;background:linear-gradient(#f4f4f4,#8c8c8c);box-shadow:0 2px 3px rgba(0,0,0,.5)}
  [data-direction=desk] .binder__page--l{border-radius:3px 0 0 3px}
}
/* sections */
[data-direction=desk] .pcard__media{border-radius:3px;background:linear-gradient(180deg,color-mix(in srgb,var(--mat) 100%,#fff 8%),var(--mat));box-shadow:inset 0 0 0 1px var(--border);transition:transform var(--dur-3) var(--ease),box-shadow var(--dur-3)}
[data-direction=desk] .pcard:hover .pcard__media{transform:translateY(-3px);box-shadow:inset 0 0 0 1px var(--border-s),0 18px 30px -18px rgba(60,40,20,.5)}
[data-direction=desk] .pcard__title{font:420 20px/1.12 var(--font-display);letter-spacing:-.01em}
[data-direction=desk] .pcard__set,[data-direction=desk] .chip{font-size:11px;letter-spacing:.14em;text-transform:uppercase}
[data-direction=desk] .price{font:420 24px/1 var(--font-display);letter-spacing:-.01em}
[data-direction=desk] .chip{border-radius:1px}
@media (min-width:900px){
  [data-direction=desk] .sec--latest .rail{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:36px 20px;overflow:visible;padding:0;margin:0}
  [data-direction=desk] .sec--latest .rail>li{flex:none}
}
[data-direction=desk] .sec--graded .rail,[data-direction=desk] .sec--sealed .rail{gap:0}
[data-direction=desk] .sec--graded .pcard,[data-direction=desk] .sec--sealed .pcard{padding-inline:10px}
[data-direction=desk] .sec--graded .pcard__media,[data-direction=desk] .sec--sealed .pcard__media{background:none;box-shadow:none;overflow:visible;border-radius:0;position:relative;padding-bottom:0;aspect-ratio:4/5}
[data-direction=desk] .sec--graded .pcard__media::after,[data-direction=desk] .sec--sealed .pcard__media::after{content:"";position:absolute;left:-12px;right:-12px;bottom:-1px;height:16px;background:linear-gradient(#a8794a,#7c5230 70%,#5c3b20);box-shadow:0 12px 14px -8px rgba(40,20,5,.5);z-index:0}
[data-direction=desk] .sec--graded .pcard__media .obj,[data-direction=desk] .sec--sealed .pcard__media .obj{z-index:1;margin-bottom:12px}
[data-direction=desk] .sec--graded .pcard:hover .pcard__media,[data-direction=desk] .sec--sealed .pcard:hover .pcard__media{box-shadow:none;transform:none}
[data-direction=desk] .srow{border-top-color:var(--border-s);padding-left:18px}
[data-direction=desk] .srow::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:6px;background:hsl(var(--h) 55% 45%);border-radius:1px}
[data-direction=desk] .srow__name{font-weight:380;font-size:clamp(34px,5.4vw,72px);font-variation-settings:'opsz' 144;letter-spacing:-.025em}
[data-direction=desk] .srow:hover{background:color-mix(in srgb,var(--text) 5%,transparent)}
[data-direction=desk] .sec--stream .sec__photo{padding:14px 14px 44px;background:#fbf6ea;border-radius:2px;transform:rotate(-1.4deg);box-shadow:0 30px 50px -26px rgba(40,20,5,.55)}
[data-direction=desk] .sec--stream .sec__photo img{border-radius:0;filter:saturate(.95)}
[data-direction=desk] .sec--stream .demo-label{left:auto;right:24px;bottom:14px;background:none;color:#4a3d2d;font:italic 400 14px/1 var(--font-display);letter-spacing:0;text-transform:none}
[data-direction=desk] .countdown b{font-weight:380}
[data-direction=desk] .facts li{border-top:1px solid var(--border-s)}
[data-direction=desk] .facts b{font:420 24px/1.15 var(--font-display)}
[data-direction=desk] .site-footer{border-top:3px double var(--border-s)}
@media (max-width:599px){[data-direction=desk] .logo__name{font-size:22px}[data-direction=desk] .logo__mark{width:32px;height:32px}[data-direction=desk] .announce{font-size:10.5px;letter-spacing:.1em;padding-block:8px;text-align:center;justify-content:center}[data-direction=desk] .announce__r{display:none}}
[data-direction=desk] .sec--graded .pcard__media,[data-direction=desk] .sec--sealed .pcard__media{place-items:end center}
[data-direction=desk] .sec--sealed .pcard__media{aspect-ratio:5/4}

/* ===== dir-foil.css ===== */
/* C. Folie: foil on ink. High-contrast black and white, hard rules, one iridescent accent that only appears on foil. */
[data-direction=foil] .announce{justify-content:center;gap:32px;background:var(--text);color:var(--bg);font:600 12px/1 var(--font-body);letter-spacing:.08em}
[data-direction=foil] .site-header{background:var(--bg);border-bottom:2px solid var(--border-s)}
[data-direction=foil] .logo__name{font:800 26px/1 var(--font-display);letter-spacing:-.028em}
[data-direction=foil] .nav a{font:600 15px/1 var(--font-body);letter-spacing:-.01em}
[data-direction=foil] .nav a::after{height:3px;background:var(--iri)}
[data-direction=foil] .btn{font:700 15px/1 var(--font-body);letter-spacing:-.01em;border-width:2px;border-color:var(--text)}
[data-direction=foil] .btn--primary{border-color:var(--brand)}
[data-direction=foil] .eyebrow{font-weight:700;letter-spacing:.1em;color:var(--text)}
[data-direction=foil] .section__title{font-size:clamp(40px,7.4vw,120px);letter-spacing:-.028em}
[data-direction=foil] .chip{border-width:1.5px;border-color:var(--border-s)}
[data-direction=foil] .hero__title{font-size:clamp(52px,16vw,200px);line-height:.88;letter-spacing:-.028em;margin-block:14px 20px;position:relative;z-index:3}
[data-direction=foil] .hero__title span:nth-child(2){color:var(--brand-ink)}
[data-direction=foil] .hero__copy{position:relative;z-index:3;min-width:0}
[data-direction=foil] .hero__stage{position:relative;aspect-ratio:1/1.05;width:min(100%,560px);margin-inline:auto;z-index:2}
[data-direction=foil] .hero__numeral{position:absolute;right:-6%;top:-6%;font:800 clamp(300px,64vw,560px)/.74 var(--font-display);letter-spacing:-.08em;background:var(--iri);-webkit-background-clip:text;background-clip:text;color:transparent;opacity:.42;filter:saturate(.85);pointer-events:none;user-select:none;white-space:nowrap}
[data-direction=foil] .hero__slab{position:absolute;left:19%;top:4%;width:46%;z-index:3;display:block;transform:rotate(3deg)}
[data-direction=foil] .hero__card{position:absolute;right:2%;bottom:8%;width:32%;z-index:4;transform:rotate(-7deg)}
[data-direction=foil] .hero__chip{position:absolute;left:0;bottom:0;z-index:4;display:flex;gap:10px;align-items:center;padding:10px 16px 10px 10px;border-radius:999px;background:var(--bg);border:2px solid var(--border-s);font:600 13px/1 var(--font-body);white-space:nowrap}
[data-direction=foil] .hero__chip span{padding:7px 10px;border-radius:999px;background:var(--iri);color:#0c0c0f;font-weight:800}
@media (min-width:900px){
  [data-direction=foil] .hero__grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;min-height:min(84vh,800px)}
  [data-direction=foil] .hero__title{font-size:clamp(100px,11.2vw,196px)}
  [data-direction=foil] .hero__stage{width:100%;max-width:640px;margin-left:-4vw}
  [data-direction=foil] .hero__numeral{font-size:clamp(400px,40vw,640px);right:-14%;top:-12%}
}
[data-direction=foil] .pcard__media{border-radius:var(--radius-m);background:var(--mat);border:2px solid transparent;box-shadow:inset 0 0 0 2px var(--border-s);transition:background var(--dur-2),box-shadow var(--dur-2)}
[data-direction=foil] .pcard:hover .pcard__media{background:linear-gradient(var(--mat),var(--mat)) padding-box,var(--iri) border-box;box-shadow:none}
[data-direction=foil] .pcard__title{font:800 18px/1.1 var(--font-display);letter-spacing:-.012em}
[data-direction=foil] .price{font:800 28px/1 var(--font-display);letter-spacing:-.02em}
[data-direction=foil] .pcard__set{font-weight:600;color:var(--muted)}
/* sticky stacked story */
[data-direction=foil] .stack-story{position:relative;margin-top:clamp(24px,4vw,64px)}
[data-direction=foil] .stack-story .sec{position:sticky;top:76px;border-radius:30px 30px 0 0;border-top:2px solid var(--border-s);padding-block:clamp(36px,5vw,72px) clamp(44px,6vw,88px);min-height:78vh;box-shadow:0 -24px 50px -30px rgba(0,0,0,.45)}
[data-direction=foil] .stack-story .sec--latest{top:76px;background:var(--bg)}
[data-direction=foil] .stack-story .sec--graded{top:92px;background:#0c0c0f;--bg:#0c0c0f;--text:#f5f3ee;--muted:#aaa8b4;--surface:#14141a;--mat:#1b1b23;--border:rgba(245,243,238,.35);--border-s:#f5f3ee;color:var(--text);--brand-ink:var(--brand-ink-dark);--color-stock:#3ddc97;--color-notice:#ffc044;--color-sold:#8c8a98}
[data-direction=foil] .stack-story .sec--sealed{top:108px;background:var(--brand);--bg:var(--brand);--text:var(--on-brand);--muted:color-mix(in srgb,var(--on-brand) 82%,var(--brand));--surface:color-mix(in srgb,var(--on-brand) 12%,var(--brand));--mat:color-mix(in srgb,#000 16%,var(--brand));--border:color-mix(in srgb,var(--on-brand) 40%,transparent);--border-s:var(--on-brand);color:var(--on-brand);--brand-ink:var(--on-brand)}
[data-direction=foil] .stack-story .sec--sealed .stock--in,[data-direction=foil] .stack-story .sec--sealed .stock--low{color:var(--on-brand)}
[data-direction=foil] .stack-story .sec--sealed .chip,[data-direction=foil] .stack-story .sec--sealed .chip--lang{color:var(--on-brand);border-color:color-mix(in srgb,var(--on-brand) 55%,transparent)}
[data-direction=foil] .stack-story .sec--sealed .badge--new,[data-direction=foil] .stack-story .sec--sealed .pcard__add:hover{background:var(--on-brand);color:var(--brand)}
[data-direction=foil] .stack-story .sec--sealed .section__more,[data-direction=foil] .stack-story .sec--graded .section__more{border-bottom-color:currentColor}
[data-direction=foil] .srow{border-top:2px solid var(--border-s)}
[data-direction=foil] .series li:last-child .srow{border-bottom:2px solid var(--border-s)}
[data-direction=foil] .srow__name{font-weight:800;letter-spacing:-.028em;font-size:clamp(36px,7.4vw,108px)}
[data-direction=foil] .srow:hover .srow__name{background:var(--iri);-webkit-background-clip:text;background-clip:text;color:transparent}
[data-direction=foil] .countdown b{font-weight:800}
[data-direction=foil] .sec--stream .sec__photo{border-radius:var(--radius-l);border:2px solid var(--border-s)}
[data-direction=foil] .facts li{border-top-width:3px}
[data-direction=foil] .facts b{font:800 24px/1.1 var(--font-display);letter-spacing:-.015em}
[data-direction=foil] .site-footer{border-top:2px solid var(--border-s)}
@media (max-width:899px){[data-direction=foil] .stack-story .sec{min-height:0;top:68px}[data-direction=foil] .stack-story .sec--graded{top:76px}[data-direction=foil] .stack-story .sec--sealed{top:84px}}
@media (prefers-reduced-motion:reduce){[data-direction=foil] .stack-story .sec{position:relative;top:auto}}
@media (max-width:599px){[data-direction=foil] .logo__name{font-size:20px}}

/* ===== dir-pages.css ===== */
/* Inner pages: direction personality. */
/* ---- A. Nattsläpp ---- */
[data-direction=arena] .cat__head{position:relative}
[data-direction=arena] .cat__head::before{content:"";position:absolute;right:-6vw;top:-80px;width:min(60vw,640px);aspect-ratio:1;background:radial-gradient(closest-side,color-mix(in srgb,var(--brand) 38%,transparent),transparent);filter:blur(10px);z-index:-1;pointer-events:none}
[data-direction=arena] .cat__title{font-size:clamp(56px,10.5vw,176px);line-height:.94;padding-top:.06em}
[data-direction=arena] .fchip{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.08em}
[data-direction=arena] .gallery__stage{background:radial-gradient(60% 55% at 50% 38%,color-mix(in srgb,var(--cobalt) 34%,var(--mat)),var(--mat) 74%),var(--mat);border:1px solid var(--border)}
[data-direction=arena] .gallery__stage::before{content:attr(data-numeral);position:absolute;right:-3%;bottom:-8%;font:800 clamp(240px,36vw,560px)/.78 var(--font-display);color:transparent;-webkit-text-stroke:2px color-mix(in srgb,var(--brand) 55%,transparent);z-index:0;pointer-events:none;letter-spacing:-.02em}
[data-direction=arena] .gallery__stage[data-kind=sealed]::before{font-size:clamp(200px,28vw,420px)}
[data-direction=arena] .info__title{font-size:clamp(52px,7.4vw,124px);line-height:.94;padding-top:.06em}
[data-direction=arena] .btn--l.buy-btn{font-size:17px}
[data-direction=arena] .summary,[data-direction=arena] .kustom{border-radius:var(--radius-s)}
[data-direction=arena] .summary__t,[data-direction=arena] .info__h{letter-spacing:.01em}
[data-direction=arena] .buybar{border-top-color:var(--brand)}
/* ---- B. Skrivbordet ---- */
[data-direction=desk] .cat__title{font-weight:380;font-size:clamp(52px,7.4vw,124px);letter-spacing:-.035em;font-variation-settings:'opsz' 144}
[data-direction=desk] .cat__main{background:color-mix(in srgb,var(--surface) 70%,transparent);padding:clamp(14px,2.4vw,32px);border:1px solid var(--border);border-radius:3px;box-shadow:0 30px 50px -40px rgba(60,40,20,.5)}
[data-direction=desk] .cat__bar{border-block-color:var(--border-s)}
[data-direction=desk] .fchip{border-radius:2px;font-weight:500}
[data-direction=desk] .gallery__stage{background:radial-gradient(70% 55% at 50% 38%,rgba(255,255,255,.5),transparent 70%),var(--mat);border:1px solid var(--border);border-radius:3px;box-shadow:inset 0 0 0 10px var(--bg),inset 0 0 0 11px var(--border)}
[data-direction=desk] .gallery__stage::before{content:attr(data-numeral);position:absolute;left:50%;top:50%;transform:translate(-50%,-52%);font:italic 300 clamp(260px,40vw,640px)/1 var(--font-display);color:color-mix(in srgb,var(--text) 6%,transparent);z-index:0;pointer-events:none;white-space:nowrap}
[data-direction=desk] .info__title{font-weight:380;font-size:clamp(44px,6vw,96px);letter-spacing:-.03em;line-height:.98;font-variation-settings:'opsz' 144}
[data-direction=desk] .price--xl{font-family:var(--font-display);font-weight:420}
[data-direction=desk] .thumb{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:500}
[data-direction=desk] .summary,[data-direction=desk] .kustom{border-radius:2px;border-width:1px;border-color:var(--border-s)}
[data-direction=desk] .lines{border-top-width:1px;border-top-color:var(--border-s)}
[data-direction=desk] .info-sec h2{font-weight:380}
/* ---- C. Folie ---- */
[data-direction=foil] .cat__title{font-size:clamp(52px,9.6vw,160px);letter-spacing:-.03em;line-height:.92}
[data-direction=foil] .cat__bar{border-block:2px solid var(--border-s)}
[data-direction=foil] .fchip{border-width:2px}
[data-direction=foil] .gallery__stage{border:2px solid var(--border-s);background:var(--mat)}
[data-direction=foil] .gallery__stage::before{content:attr(data-numeral);position:absolute;right:-4%;top:-6%;font:800 clamp(300px,44vw,640px)/.74 var(--font-display);letter-spacing:-.08em;background:var(--iri);-webkit-background-clip:text;background-clip:text;color:transparent;opacity:.32;filter:saturate(.8);z-index:0;pointer-events:none;white-space:nowrap}
[data-direction=foil] .info__title{font-size:clamp(46px,6.4vw,108px);letter-spacing:-.03em;line-height:.94}
[data-direction=foil] .thumb{font-weight:700}
[data-direction=foil] .summary,[data-direction=foil] .kustom{border-width:2px}
[data-direction=foil] .specs>div{border-top-width:2px;border-top-color:var(--border-s)}
[data-direction=foil] .specs>div:first-child{border-top-width:2px}
[data-direction=foil] .buybar{border-top-width:2px}
[data-direction=foil] .btn--primary.buy-btn--now{background:var(--brand)}
