/* ==========================================================================
   FightCardboard — design system v3 "Chrome"
   A premium modern card product, brought to the web.
   Black stages, clean white reading surfaces, steel and chrome for structure,
   holographic refractor accents used sparingly where value lives.
   ========================================================================== */

/* Self-hosted fonts (SIL Open Font License — /assets/fonts/LICENSE-*.txt) */
@font-face{font-family:"Barlow";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/barlow-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Barlow";font-style:italic;font-weight:400;font-display:swap;src:url(/assets/fonts/barlow-latin-400-italic.woff2) format("woff2")}
@font-face{font-family:"Barlow";font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/barlow-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Barlow";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/barlow-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Barlow Condensed";font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/barlow-condensed-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Barlow Condensed";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/barlow-condensed-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Barlow Condensed";font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/barlow-condensed-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Barlow Condensed";font-style:normal;font-weight:800;font-display:swap;src:url(/assets/fonts/barlow-condensed-latin-800-normal.woff2) format("woff2")}
@font-face{font-family:"Barlow Condensed";font-style:italic;font-weight:700;font-display:swap;src:url(/assets/fonts/barlow-condensed-latin-700-italic.woff2) format("woff2")}
@font-face{font-family:"Barlow Condensed";font-style:italic;font-weight:800;font-display:swap;src:url(/assets/fonts/barlow-condensed-latin-800-italic.woff2) format("woff2")}

:root{
  /* ink & surfaces */
  --ink:#0A0B0D;
  --ink-2:#111317;
  --ink-3:#1A1D22;
  --ink-4:#252932;
  --ink-line:#2C3039;
  --white:#FFFFFF;
  --surface:#F4F5F7;
  --surface-2:#EAECEF;
  /* steel */
  --steel:#8C939E;
  --steel-2:#B9BFC8;
  --steel-3:#D6DAE0;
  --gray:#555C66;
  --gray-2:#838A95;
  --rule:#DCDFE4;
  --rule-strong:#AFB5BE;
  /* accent */
  --red:#D3241C;
  --red-hot:#FF3B2F;
  --red-deep:#9F140E;
  --green:#18794E;
  --blue:#2463A6;
  --amber:#9A6200;

  /* materials */
  --holo:linear-gradient(115deg,#ff4d6d 0%,#ffae52 14%,#f7f06b 27%,#5ef2b0 41%,#43c7ff 55%,#8b7bff 70%,#ff5ed1 85%,#ff4d6d 100%);
  --holo-soft:linear-gradient(115deg,rgba(255,77,109,.55),rgba(255,174,82,.5),rgba(247,240,107,.45),rgba(94,242,176,.5),rgba(67,199,255,.55),rgba(139,123,255,.55),rgba(255,94,209,.5),rgba(255,77,109,.55));
  --chrome:linear-gradient(135deg,#f7f8fa 0%,#a9b0ba 16%,#ffffff 30%,#6f7782 47%,#e6e9ee 63%,#949ba6 80%,#f7f8fa 100%);
  --chrome-dark:linear-gradient(135deg,#3a3f48 0%,#8f97a3 22%,#2a2e36 45%,#c3c9d2 62%,#353a43 80%,#7c848f 100%);
  --gunmetal:linear-gradient(180deg,#1d2026 0%,#101216 100%);

  --f-display:"Barlow Condensed","Arial Narrow",sans-serif;
  --f-body:"Barlow",system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-cond:"Barlow Condensed","Arial Narrow",sans-serif;

  --g:clamp(1rem,4vw,3rem);
  --maxw:1360px;
  --read:68ch;
  --cut:14px;
  --shadow-card:0 2px 3px rgba(10,11,13,.25),0 14px 28px -10px rgba(10,11,13,.45),0 40px 70px -30px rgba(10,11,13,.55);
  --shadow-card-dark:0 0 0 1px rgba(255,255,255,.06),0 8px 18px rgba(0,0,0,.6),0 50px 90px -30px rgba(0,0,0,.95);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;background:var(--white);color:var(--ink);
  font-family:var(--f-body);font-size:1.0625rem;line-height:1.62;
  -webkit-font-smoothing:antialiased;font-kerning:normal;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
p{margin:0 0 1.1em}
button{font:inherit}
::selection{background:var(--ink);color:#fff}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--g)}
.wrap--read{max-width:calc(var(--read) + 2*var(--g))}

/* ---------- type ---------- */
h1,h2,h3,h4{margin:0;font-family:var(--f-display);font-weight:800;line-height:.95;letter-spacing:-.01em;text-transform:uppercase}
h1{font-size:clamp(2.6rem,6vw,5rem)}
h2{font-size:clamp(1.8rem,3.2vw,2.8rem)}
h3{font-size:1.3rem;font-weight:700;letter-spacing:.01em}
.hed-xl{font-family:var(--f-display);font-weight:800;font-style:italic;text-transform:uppercase;font-size:clamp(2.8rem,7vw,6.2rem);line-height:.88;letter-spacing:-.015em}
.hed-sec{font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:clamp(2rem,3.8vw,3.2rem);line-height:.92}
.name{font-family:var(--f-display);font-weight:800;font-style:italic;text-transform:uppercase;line-height:.82;letter-spacing:-.02em}
.name--xxl{font-size:clamp(4.4rem,15vw,14rem)}
.name--xl{font-size:clamp(3.2rem,9vw,7.6rem)}
.name--l{font-size:clamp(2.3rem,5.4vw,4.4rem);line-height:.86}
.name--m{font-size:clamp(1.6rem,3vw,2.4rem);line-height:.9}
.numeral{font-family:var(--f-display);font-weight:800;font-style:italic;font-variant-numeric:lining-nums tabular-nums;line-height:.8;letter-spacing:-.03em}
/* ghost numerals = chrome outline, not a fill */
.ghost{color:transparent;-webkit-text-stroke:1.5px var(--steel-3);user-select:none;pointer-events:none}
.band .ghost{-webkit-text-stroke:1.5px rgba(255,255,255,.1)}

/* foil text — for the few words that deserve it */
.foil{background:var(--holo);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:holoshift 9s linear infinite}
.chrome-text{background:var(--chrome);background-size:200% 200%;-webkit-background-clip:text;background-clip:text;color:transparent}

.label{font-family:var(--f-cond);font-weight:700;text-transform:uppercase;font-size:.74rem;letter-spacing:.2em;color:var(--gray)}
.label--red{color:var(--red)}
.band .label{color:var(--steel)}
.band .label--red{color:var(--red-hot)}
.kicker{display:flex;align-items:center;gap:.7rem;margin:0 0 1rem}
.kicker::before{content:"";width:1.8rem;height:3px;background:var(--red);transform:skewX(-24deg)}
.band .kicker::before{background:var(--holo);background-size:200% 100%;animation:holoshift 9s linear infinite}
.catno{font-family:var(--f-cond);font-weight:600;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gray-2);font-variant-numeric:tabular-nums lining-nums}
.deck{font-family:var(--f-body);font-weight:400;font-size:clamp(1.1rem,1.7vw,1.35rem);line-height:1.45;color:var(--gray);max-width:46ch;margin:1.1rem 0 0}
.band .deck{color:var(--steel-2)}
.meta{font-family:var(--f-cond);font-size:.86rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gray);font-weight:600}
.caption{font-family:var(--f-cond);font-size:.86rem;letter-spacing:.03em;line-height:1.45;color:var(--gray);margin-top:.7rem;font-weight:500}
.band .caption{color:var(--steel)}
.muted{color:var(--gray)}
.band .muted{color:var(--steel-2)}
.lede-p{font-size:1.2rem;line-height:1.55}
.link{border-bottom:1px solid var(--rule-strong);transition:color .15s,border-color .15s}
.link:hover{color:var(--red);border-color:var(--red)}
.band .link{border-color:var(--ink-4)}
.band .link:hover{color:#fff;border-color:var(--red-hot)}
.more{font-family:var(--f-cond);font-weight:700;text-transform:uppercase;font-size:.82rem;letter-spacing:.16em;display:inline-flex;align-items:center;gap:.6rem}
.more::after{content:"";width:1.6rem;height:2px;background:currentColor;transform:skewX(-30deg);transition:width .2s}
.more:hover{color:var(--red)}
.more:hover::after{width:2.6rem;background:var(--holo)}
.band .more:hover{color:#fff}

/* ---------- surfaces & rhythm ---------- */
.rule{border:0;border-top:1px solid var(--rule);margin:0}
.holo-rule{border:0;height:2px;margin:0;background:var(--holo);background-size:200% 100%;animation:holoshift 12s linear infinite;opacity:.9}
.sec{padding:clamp(3rem,7vw,6rem) 0}
.sec--s{padding:clamp(2rem,4vw,3.2rem) 0}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;flex-wrap:wrap;margin-bottom:clamp(1.6rem,3vw,2.6rem);padding-bottom:1rem;border-bottom:1px solid var(--rule)}
.band .sec-head{border-color:var(--ink-line)}
.band{background:var(--ink);color:var(--white);position:relative}
.band h1,.band h2,.band h3{color:var(--white)}
.band--2{background:var(--ink-2)}
/* refractor texture on dark stages: fine diagonal line field + spotlight */
.stage-band{background:
  radial-gradient(ellipse 60% 70% at 30% 45%,rgba(120,135,160,.16),transparent 70%),
  repeating-linear-gradient(115deg,rgba(255,255,255,.018) 0 1px,transparent 1px 7px),
  var(--ink)}
.stage-band::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--holo);background-size:200% 100%;animation:holoshift 12s linear infinite;opacity:.85}
.tint{background:var(--surface)}

/* ---------- header ---------- */
.utility{background:var(--ink);color:var(--steel);font-family:var(--f-cond);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600}
.utility .wrap{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:32px}
.utility a:hover{color:#fff}
.masthead{background:var(--ink);color:#fff;border-bottom:1px solid var(--ink-line)}
.masthead .wrap{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1.5rem;padding-top:1.2rem;padding-bottom:1.1rem}
.mast-left{font-family:var(--f-cond);font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--steel);font-weight:600}
.brand{text-align:center;line-height:.84}
.brand__mark{font-family:var(--f-display);font-weight:800;font-style:italic;text-transform:uppercase;font-size:clamp(2rem,4.6vw,3.3rem);letter-spacing:-.01em;display:block;background:var(--chrome);background-size:220% 220%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:chromeshift 14s ease-in-out infinite}
.brand__mark em{font-style:italic;background:linear-gradient(135deg,#ff6a5c,#d3241c 45%,#ff8a70 70%,#b0170f);-webkit-background-clip:text;background-clip:text;color:transparent}
.brand__sub{font-family:var(--f-cond);text-transform:uppercase;font-size:.64rem;letter-spacing:.46em;color:var(--steel);margin-top:.45rem;display:block;padding-left:.46em;font-weight:600}
.mast-search{justify-self:end;width:100%;max-width:280px;display:flex;border-bottom:1px solid var(--ink-4);padding-bottom:.3rem}
.mast-search:focus-within{border-image:var(--holo) 1}
.mast-search input{flex:1;min-width:0;border:0;background:transparent;font-family:var(--f-cond);font-size:1rem;color:#fff;padding:.15rem 0}
.mast-search input::placeholder{color:var(--steel);text-transform:uppercase;font-size:.74rem;letter-spacing:.16em}
.mast-search input:focus{outline:none}
.mast-search button{border:0;background:transparent;cursor:pointer;font-family:var(--f-cond);text-transform:uppercase;font-size:.72rem;letter-spacing:.16em;font-weight:700;color:var(--red-hot)}
.nav{background:rgba(10,11,13,.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);position:sticky;top:0;z-index:50;border-bottom:1px solid var(--ink-line)}
.nav .wrap{display:flex;justify-content:center;gap:clamp(1rem,2.4vw,2.3rem);overflow-x:auto;scrollbar-width:none}
.nav .wrap::-webkit-scrollbar{display:none}
.nav a{font-family:var(--f-cond);text-transform:uppercase;font-weight:700;font-size:.84rem;letter-spacing:.15em;padding:.85rem 0;white-space:nowrap;color:var(--steel-2);position:relative;transition:color .15s}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--holo);background-size:200% 100%;transform:scaleX(0);transform-origin:left;transition:transform .25s}
.nav a:hover{color:#fff}
.nav a:hover::after{transform:scaleX(1)}
.nav a[aria-current]{color:#fff}
.nav a[aria-current]::after{transform:scaleX(1);animation:holoshift 9s linear infinite}
@media(max-width:760px){
  .masthead .wrap{grid-template-columns:1fr;justify-items:center;gap:.9rem;padding-top:1rem;padding-bottom:.9rem}
  .mast-left,.utility__date{display:none}
  .mast-search{justify-self:stretch;max-width:none}
  .nav .wrap{justify-content:flex-start}
  .utility .wrap{justify-content:center}
}
.crumbbar{background:var(--ink-2);border-bottom:1px solid var(--ink-line)}
.crumb{font-family:var(--f-cond);font-size:.72rem;text-transform:uppercase;letter-spacing:.16em;color:var(--steel);padding:.55rem 0;font-weight:600}
.crumb a:hover{color:#fff}
.crumb span{padding:0 .5rem;color:var(--ink-4)}
.crumb span[style]{color:var(--steel-2)!important}

/* ---------- cards: the product ---------- */
.card-img{display:block;position:relative;margin:0}
.card-img img{width:100%;height:auto;box-shadow:var(--shadow-card);background:var(--ink)}
.band .card-img img{box-shadow:var(--shadow-card-dark)}
.card-img[data-lightbox]{cursor:zoom-in}
.card-img picture{display:block}
.img-credit{font-family:var(--f-cond);font-size:.7rem;letter-spacing:.04em;color:var(--gray-2);margin-top:.45rem;line-height:1.3}
.band .img-credit{color:var(--steel)}
.stack .img-credit{display:none}
.card-img--tilt-l{transform:rotate(-2deg)}
.card-img--tilt-r{transform:rotate(1.6deg)}

/* holo / chrome frames — the "case" around a key card */
.cframe{position:relative;padding:clamp(8px,1.2vw,14px);border:2px solid transparent;
  background:linear-gradient(160deg,#16181d,#0b0c0e) padding-box,var(--chrome-dark) border-box}
.cframe--holo{background:linear-gradient(160deg,#16181d,#0b0c0e) padding-box,var(--holo) border-box;background-size:100% 100%,220% 220%;animation:holoborder 10s linear infinite}
.cframe--chrome{background:linear-gradient(160deg,#16181d,#0b0c0e) padding-box,var(--chrome) border-box;background-size:100% 100%,220% 220%}
.cframe .card-img img{box-shadow:0 10px 30px -10px rgba(0,0,0,.9)}
.cframe__tag{position:absolute;top:-2px;left:clamp(10px,1.4vw,18px);transform:translateY(-50%);z-index:3}
.cframe__no{position:absolute;right:clamp(10px,1.4vw,16px);bottom:-.62em;z-index:3;font-family:var(--f-display);font-weight:800;font-style:italic;font-size:1.3rem;line-height:1;color:#fff;background:var(--ink);padding:0 .35rem}

/* reflective sheen — follows the pointer where supported (site.js sets --mx/--my) */
.shine{position:relative;isolation:isolate}
.shine::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:2;opacity:0;transition:opacity .35s;
  background:
    radial-gradient(circle at var(--mx,30%) var(--my,20%),rgba(255,255,255,.35),transparent 42%),
    linear-gradient(115deg,transparent 30%,rgba(255,255,255,.06) 40%,transparent 50%),
    var(--holo-soft);
  background-size:100% 100%,100% 100%,250% 250%;
  background-position:0 0,0 0,var(--mx,30%) var(--my,20%);
  mix-blend-mode:color-dodge}
.shine:hover::after{opacity:.55}
.band .shine:hover::after{opacity:.5}

/* unphotographed card — a sealed graphite blank with a chrome edge */
.slip{position:relative;aspect-ratio:2.5/3.5;display:flex;flex-direction:column;justify-content:space-between;padding:10% 9% 9%;overflow:hidden;
  border:1px solid transparent;
  background:
    repeating-linear-gradient(115deg,rgba(255,255,255,.025) 0 1px,transparent 1px 6px) padding-box,
    linear-gradient(160deg,#20242b,#0f1114) padding-box,
    var(--chrome-dark) border-box;color:#fff}
.slip::after{content:"";position:absolute;inset:5%;border:1px solid rgba(255,255,255,.08);pointer-events:none}
.slip--land{aspect-ratio:3.5/2.5}
.slip__no{font-family:var(--f-display);font-weight:800;font-style:italic;font-variant-numeric:lining-nums;font-size:clamp(1.3rem,3vw,2.2rem);line-height:1;color:#fff;position:relative;z-index:1}
.slip__yr{font-family:var(--f-cond);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--steel);position:relative;z-index:1;font-weight:600}
.slip__name{font-family:var(--f-display);font-weight:800;font-style:italic;text-transform:uppercase;font-size:clamp(.82rem,1.6vw,1.05rem);line-height:1.08;position:relative;z-index:1}
.slip__set{font-family:var(--f-cond);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--steel);margin-top:.3rem}
.slip__flag{font-family:var(--f-cond);font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gray-2);position:relative;z-index:1;font-weight:600}
.slip--rc .slip__no{background:var(--holo);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent}
.slip--xs{padding:12%;justify-content:center;align-items:center;text-align:center}
.slip--xs .slip__yr,.slip--xs .slip__name,.slip--xs .slip__flag,.slip--xs .slip__set{display:none}
.slip--xs .slip__no{font-size:1.25rem}
.pslot .slip{opacity:.9}

/* front + back, heights matched */
.pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.96fr);gap:clamp(.9rem,2vw,1.6rem);align-items:start}
@media(max-width:560px){.pair{grid-template-columns:1fr}.pair>div:first-child{max-width:62%}}

/* overlap stage: front upright over the landscape back */
.stack{position:relative;aspect-ratio:1/1.02}
.stack .card-img{position:absolute}
.stack__back{width:74%;top:4%;right:0;transform:rotate(3.5deg)}
.stack__front{width:47%;left:1%;bottom:2%;transform:rotate(-3deg);z-index:2}
.stack::before{content:"";position:absolute;left:8%;right:8%;bottom:-4%;height:18%;background:radial-gradient(ellipse at center,rgba(0,0,0,.55),transparent 70%);filter:blur(8px);z-index:0}
.band .stack::before{background:radial-gradient(ellipse at center,rgba(0,0,0,.9),transparent 70%)}

.marks{position:relative}

/* ---------- labels, tags, status ---------- */
.status{display:inline-flex;align-items:center;gap:.45rem;font-family:var(--f-cond);font-weight:700;text-transform:uppercase;font-size:.72rem;letter-spacing:.16em;white-space:nowrap}
.status::before{content:"";width:.5rem;height:.5rem;background:currentColor;transform:skewX(-20deg)}
.status--verified{color:var(--green)}
.status--high{color:var(--blue)}
.status--probable{color:var(--amber)}
.status--uncertain{color:var(--red)}
.status--unknown{color:var(--gray-2)}
.band .status--verified{color:#4ED49A}
.band .status--high{color:#6FB4FF}
.band .status--probable{color:#F2B84B}
.band .status--uncertain{color:var(--red-hot)}

.tag{display:inline-block;font-family:var(--f-cond);font-weight:700;text-transform:uppercase;font-size:.68rem;letter-spacing:.18em;padding:.28rem .6rem .24rem;line-height:1.2;border:1px solid currentColor;
  clip-path:polygon(6px 0,100% 0,calc(100% - 6px) 100%,0 100%)}
.tag--demo{color:#fff;background:var(--red);border-color:var(--red)}
/* foil badge: rookie / key card / verified sale */
.tag--rc,.tag--foil{position:relative;border:0;color:var(--ink);background:var(--holo);background-size:220% 100%;animation:holoshift 8s linear infinite;padding:.32rem .75rem .28rem}
.band .tag--rc{color:var(--ink)}
.row{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center}

/* ---------- notes ---------- */
.note{border-top:1px solid var(--rule);padding-top:.9rem;margin:1.8rem 0;font-size:.97rem;max-width:var(--read)}
.note__label{display:block;margin-bottom:.35rem}
.note p:last-child{margin:0}
.demo-line{font-family:var(--f-cond);font-size:.82rem;letter-spacing:.05em;color:var(--gray);display:flex;gap:.7rem;align-items:center;margin:0 0 1rem;font-weight:500}
.band .demo-line{color:var(--steel)}
.callout{border-left:3px solid var(--ink);padding:.3rem 0 .3rem 1.2rem;margin:2rem 0;max-width:var(--read)}
.callout__label{display:block;margin-bottom:.4rem}
.callout p{margin:0}
.callout--wanted{border-image:var(--holo) 1}

/* ---------- facts: premium spec block ---------- */
.facts{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}
.facts li{display:grid;grid-template-columns:9.5rem 1fr;gap:1rem;padding:.72rem 0;border-bottom:1px solid var(--rule);align-items:baseline}
.facts .k{font-family:var(--f-cond);text-transform:uppercase;font-size:.72rem;letter-spacing:.18em;color:var(--gray);font-weight:700}
.facts .v{font-family:var(--f-cond);font-size:1.15rem;font-weight:600;line-height:1.3}
.band .facts{border-top:2px solid transparent;border-image:var(--chrome) 1}
.band .facts li{border-color:var(--ink-line)}
.band .facts .k{color:var(--steel)}
@media(max-width:480px){.facts li{grid-template-columns:7rem 1fr}}

.figures{display:flex;flex-wrap:wrap;gap:1.2rem clamp(1.6rem,4vw,3.4rem)}
.figure .n{font-family:var(--f-display);font-weight:800;font-style:italic;font-variant-numeric:lining-nums;font-size:clamp(2.4rem,4.4vw,3.8rem);line-height:.85;display:block;letter-spacing:-.02em}
.band .figure .n{background:var(--chrome);background-size:200% 200%;-webkit-background-clip:text;background-clip:text;color:transparent}
.figure .k{display:block;margin-top:.45rem}

/* ---------- reading surfaces: clean, no effects ---------- */
.prose{max-width:var(--read);font-size:1.12rem;line-height:1.7;color:#1C1F24}
.prose>p.dropcap::first-letter{font-family:var(--f-display);font-weight:800;font-style:italic;float:left;font-size:4.4em;line-height:.78;padding:.08em .1em 0 0;color:var(--ink)}
.prose h2{margin:2.8rem 0 1rem;font-size:clamp(1.7rem,2.8vw,2.3rem)}
.prose h3{margin:2rem 0 .6rem}
.prose strong{font-weight:600;color:var(--ink)}
.prose a{border-bottom:1px solid var(--rule-strong)}
.prose a:hover{color:var(--red);border-color:var(--red)}
.prose ul{list-style:none;padding:0;margin:0 0 1.4em}
.prose li{position:relative;padding-left:1.6rem;margin-bottom:.6em}
.prose li::before{content:"";position:absolute;left:0;top:.72em;width:.75rem;height:3px;background:var(--red);transform:skewX(-30deg)}
.pull{margin:3rem 0;padding:1.4rem 0 1.4rem 1.6rem;font-family:var(--f-display);font-style:italic;font-weight:800;text-transform:uppercase;font-size:clamp(1.7rem,3.4vw,2.6rem);line-height:1;max-width:22ch;position:relative;border-left:4px solid transparent;border-image:var(--holo) 1}
.fig-break{margin:3rem 0}
@media(min-width:1000px){.fig-break--wide{margin-left:-8rem;margin-right:-8rem}}

/* ---------- tables: clean ---------- */
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
table.data{width:100%;border-collapse:collapse;font-family:var(--f-cond);font-size:1rem}
table.data th{text-align:left;text-transform:uppercase;font-size:.7rem;letter-spacing:.18em;font-weight:700;color:var(--gray);padding:.6rem .8rem .6rem 0;border-bottom:2px solid var(--ink);white-space:nowrap}
table.data td{padding:.55rem .8rem .55rem 0;border-bottom:1px solid var(--rule);vertical-align:middle}
table.data .c-no{font-family:var(--f-display);font-weight:800;font-style:italic;font-variant-numeric:lining-nums;width:4.2rem;font-size:1.1rem}
table.data .is-rc .c-no{color:var(--red)}
table.data .c-name{font-weight:600}
table.data tr.is-key td{background:var(--ink);color:#fff;border-color:var(--ink);padding-top:1rem;padding-bottom:1rem}
table.data tr.is-key td:first-child{padding-left:.9rem;box-shadow:inset 3px 0 0 0 var(--red)}
table.data tr.is-key .c-no{background:var(--holo);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;font-size:1.5rem}
table.data tr.is-key a{border-bottom:1px solid var(--steel)}
table.data tr.is-key .muted,table.data tr.is-key .catno{color:var(--steel)}
.keythumb{display:inline-block;width:34px;vertical-align:middle;margin-right:.8rem}
.keythumb img{box-shadow:0 2px 8px rgba(0,0,0,.6)}
table.data tbody tr:not(.is-key):hover td{background:var(--surface)}
.c-name a{border-bottom:1px solid var(--rule-strong)}
.c-name a:hover{color:var(--red)}
@media(max-width:640px){table.data .c-type,table.data th.c-type{display:none}table.data{font-size:.95rem}table.data .c-no{width:3rem}}
.filterbar{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;margin-bottom:1.2rem}
.filterbar input[type=search]{font-family:var(--f-cond);font-size:1rem;padding:.5rem 0;border:0;border-bottom:2px solid var(--ink);background:transparent;min-width:210px;color:var(--ink);margin-right:.8rem}
.filterbar input:focus{outline:none;border-bottom-color:var(--red)}
.chip{font-family:var(--f-cond);text-transform:uppercase;font-size:.72rem;letter-spacing:.15em;font-weight:700;padding:.45rem .8rem;border:1px solid var(--rule-strong);background:transparent;cursor:pointer;color:var(--gray);clip-path:polygon(6px 0,100% 0,calc(100% - 6px) 100%,0 100%)}
.chip[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
.chip:hover{border-color:var(--ink);color:var(--ink)}
.filter-count{font-family:var(--f-cond);font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gray);margin-left:auto;font-weight:600}

/* ---------- buttons: angular, cut corners ---------- */
.btn{position:relative;display:inline-block;font-family:var(--f-cond);text-transform:uppercase;font-weight:700;font-size:.86rem;letter-spacing:.16em;padding:.85rem 1.6rem;border:0;background:transparent;color:var(--ink);cursor:pointer;text-align:center;
  box-shadow:inset 0 0 0 2px var(--ink);clip-path:polygon(0 0,calc(100% - var(--cut)) 0,100% var(--cut),100% 100%,var(--cut) 100%,0 calc(100% - var(--cut)));transition:background .15s,color .15s,box-shadow .15s;overflow:hidden}
.btn:hover{background:var(--ink);color:#fff}
.btn--ink{background:var(--ink);color:#fff;box-shadow:none}
.btn--ink:hover{background:var(--ink-4)}
.btn--red{background:linear-gradient(180deg,#e0342b,#b8170f);color:#fff;box-shadow:none}
.btn--red:hover{background:linear-gradient(180deg,#f0463d,#c81d15)}
/* premium sheen sweep on primary actions */
.btn--red::after,.btn--ink::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);transition:left .6s ease}
.btn--red:hover::after,.btn--ink:hover::after{left:120%}
.btn--block{display:block;width:100%}
.btn--s{padding:.55rem 1rem;font-size:.74rem;--cut:9px}
.band .btn{color:#fff;box-shadow:inset 0 0 0 2px var(--steel-2)}
.band .btn:hover{background:#fff;color:var(--ink)}
.band .btn--ink{background:#fff;color:var(--ink);box-shadow:none}

/* ---------- layouts ---------- */
.split{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(2rem,5vw,4.5rem);align-items:start}
@media(max-width:980px){.split{grid-template-columns:1fr}}
.split--2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
@media(max-width:760px){.split--2{grid-template-columns:minmax(0,1fr)}}
.aside h3{font-size:.78rem;text-transform:uppercase;letter-spacing:.2em;font-weight:700;color:var(--gray);margin-bottom:.9rem;padding-top:.9rem;border-top:2px solid var(--ink);font-family:var(--f-cond);font-style:normal}
.aside+.aside{margin-top:2.6rem}
.aside ul{list-style:none;margin:0;padding:0}
.aside li{padding:.6rem 0;border-bottom:1px solid var(--rule);font-size:.97rem;line-height:1.4}
.aside li:last-child{border-bottom:0}
.aside a:hover{color:var(--red)}
.aside .sub{display:block;font-family:var(--f-cond);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gray-2);margin-top:.15rem}
.band .aside h3{color:var(--steel);border-color:var(--steel-2)}

/* homepage hero */
.front{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:0}
.front__lead{padding:clamp(2.4rem,5vw,4rem) clamp(1.6rem,4vw,3.4rem) clamp(2.4rem,5vw,4rem) 0;border-right:1px solid var(--ink-line)}
.front__side{padding:clamp(2.4rem,5vw,4rem) 0 2rem clamp(1.6rem,3vw,2.6rem)}
.lead-comp{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1.6rem,3.4vw,3.2rem);align-items:center;margin-top:clamp(1.8rem,3vw,2.8rem)}
.lead-comp__text p{font-size:1.08rem;line-height:1.6;color:var(--steel-2)}
.side-story{display:block;padding:1.4rem 0;border-bottom:1px solid var(--ink-line)}
.side-story:first-of-type{padding-top:.6rem}
.side-story:last-child{border-bottom:0}
.side-story h3{font-size:1.55rem;line-height:.98;margin-top:.45rem;font-style:italic}
.side-story p{font-size:.95rem;color:var(--steel);margin:.55rem 0 0;line-height:1.5}
.side-story:hover h3{color:var(--red-hot)}
.side-story--num{display:grid;grid-template-columns:2.6rem 1fr;gap:.8rem}
.side-story--num .idx{font-family:var(--f-display);font-style:italic;font-weight:800;font-size:2.2rem;line-height:.9;color:transparent;-webkit-text-stroke:1.2px var(--steel)}
.side-story--num:hover .idx{-webkit-text-stroke:0;background:var(--holo);background-size:200% 100%;-webkit-background-clip:text;background-clip:text}
@media(max-width:900px){
  .front{grid-template-columns:1fr}
  .front__lead{padding-right:0;border-right:0;border-bottom:1px solid var(--ink-line)}
  .front__side{padding-left:0}
  .lead-comp{grid-template-columns:1fr}
}

/* spotlight */
.spot{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(2rem,5vw,5rem);align-items:center;position:relative}
.spot__num{position:absolute;right:-1rem;top:-3.4rem;font-size:clamp(9rem,24vw,22rem);z-index:0}
.spot>*{position:relative;z-index:1}
@media(max-width:860px){.spot{grid-template-columns:1fr}.spot__num{top:-2rem;right:0}}

/* finder */
.finder{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:end}
@media(max-width:820px){.finder{grid-template-columns:1fr}}
.finder__form{display:flex;border-bottom:3px solid var(--ink);padding-bottom:.5rem;margin-top:1.4rem;position:relative}
.finder__form:focus-within{border-image:var(--holo) 1}
.finder__form input{flex:1;min-width:0;background:transparent;border:0;font-family:var(--f-display);font-style:italic;font-weight:700;text-transform:uppercase;font-size:1.7rem;color:var(--ink)}
.finder__form input::placeholder{color:var(--steel-2)}
.finder__form input:focus{outline:none}
.finder__form button{background:transparent;border:0;color:var(--red);font-family:var(--f-cond);text-transform:uppercase;letter-spacing:.16em;font-weight:700;cursor:pointer;font-size:.86rem}
.namelist{list-style:none;margin:0;padding:0;columns:2;column-gap:2rem}
.namelist li{break-inside:avoid;padding:.55rem 0;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;gap:.6rem;align-items:baseline}
.namelist a,.namelist span.n{font-family:var(--f-display);font-weight:800;font-style:italic;text-transform:uppercase;letter-spacing:.01em;font-size:1.15rem}
.namelist a:hover{color:var(--red)}
.namelist .s{font-family:var(--f-cond);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gray-2);font-weight:700}
.namelist .live .s{color:var(--red)}
.namelist span.n{color:var(--steel)}
@media(max-width:480px){.namelist{columns:1}}

/* set feature */
.setfeat{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,.8fr);gap:clamp(1.6rem,4vw,3.6rem);align-items:end}
.setfeat__yr{font-size:clamp(5rem,13vw,11rem)}
@media(max-width:900px){.setfeat{grid-template-columns:1fr}.setfeat__yr{font-size:clamp(5rem,26vw,9rem)}}

/* vault — premium inventory modules */
.vault{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:clamp(.8rem,1.6vw,1.2rem)}
.lot{position:relative;display:grid;grid-template-columns:92px 1fr;gap:1.1rem;padding:1.1rem;align-items:start;color:#fff;
  background:linear-gradient(160deg,#1a1d23,#0c0d10) padding-box,var(--chrome-dark) border-box;border:1px solid transparent;
  clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px));transition:transform .2s}
.lot::before{content:"";position:absolute;inset:0;pointer-events:none;background:var(--holo-soft);background-size:250% 250%;mix-blend-mode:color-dodge;opacity:0;transition:opacity .3s}
.lot:hover{transform:translateY(-2px)}
.lot:hover::before{opacity:.28;animation:holoborder 6s linear infinite}
.lot .status--verified{color:#4ED49A}
.lot .muted{color:var(--steel)}
.lot__grade{font-family:var(--f-display);font-weight:800;font-style:italic;text-transform:uppercase;font-size:1.35rem;margin-top:.35rem;line-height:1}
.lot__price{font-family:var(--f-display);font-weight:800;font-variant-numeric:lining-nums;font-size:1.7rem;line-height:1;margin-top:.7rem;background:var(--chrome);background-size:200% 200%;-webkit-background-clip:text;background-clip:text;color:transparent}
.lot__title{font-family:var(--f-cond);font-size:.95rem;line-height:1.25;margin-top:.35rem;font-weight:500}
.lot .catno{color:var(--steel)}
.lot--sold{opacity:.72}
.lot--sold .lot__price{background:none;color:var(--steel);text-decoration:line-through;text-decoration-thickness:2px}

/* ---------- fighter pages ---------- */
.fhero{position:relative;padding:clamp(2rem,5vw,4rem) 0 0;overflow:hidden}
.fhero__name{position:relative;z-index:1;background:linear-gradient(176deg,#ffffff 0%,#eef0f3 30%,#8b939e 52%,#dde1e6 60%,#ffffff 72%,#a2a9b3 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.fhero__nick{display:block;font-family:var(--f-display);font-style:italic;font-weight:700;text-transform:uppercase;font-size:clamp(1.1rem,2.2vw,1.8rem);letter-spacing:.12em;line-height:1;margin-bottom:.6rem;color:var(--red)}
.band .fhero__nick{color:var(--red-hot)}
.fhero__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:end;margin-top:clamp(1.6rem,4vw,3rem);padding-bottom:clamp(2.8rem,5vw,4.4rem)}
@media(max-width:860px){.fhero__grid{grid-template-columns:1fr}}

.keycards{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(1.4rem,3vw,2.8rem);align-items:start}
.keycards__hero{position:relative}
.klist{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}
.klist li{display:grid;grid-template-columns:4.2rem 1fr;gap:.9rem;padding:.9rem 0;border-bottom:1px solid var(--rule)}
.klist .yr{font-family:var(--f-display);font-weight:800;font-style:italic;font-variant-numeric:lining-nums;font-size:1.45rem;line-height:1}
.klist .t{font-family:var(--f-cond);font-weight:700;font-size:1.05rem;line-height:1.2}
.klist .s{font-size:.9rem;color:var(--gray);margin-top:.2rem;line-height:1.4}
.band .klist{border-color:var(--steel-2)}
.band .klist li{border-color:var(--ink-line)}
.band .klist .s{color:var(--steel)}
@media(max-width:980px){.keycards{grid-template-columns:1fr 1fr}.keycards>.klist-wrap{grid-column:1/-1}}
@media(max-width:560px){.keycards{grid-template-columns:1fr}.keycards__hero{max-width:320px}.keycards__major{max-width:240px}}

.timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));position:relative;border-top:2px solid var(--ink)}
.timeline__step{padding:1.4rem 1.6rem 0 0;position:relative}
.timeline__step::before{content:"";position:absolute;top:-7px;left:0;width:12px;height:12px;background:var(--ink);transform:skewX(-20deg)}
.timeline__step:first-child::before{background:var(--holo);background-size:300% 100%}
.timeline__yr{font-size:clamp(2.8rem,5vw,4.2rem)}
.timeline__label{margin:.8rem 0 .5rem}
.timeline__body{font-size:.98rem;color:var(--gray);line-height:1.6;max-width:36ch}
@media(max-width:760px){.timeline{grid-template-columns:repeat(3,minmax(78%,1fr));overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.timeline__step{scroll-snap-align:start}}

/* ---------- card record / lot header ---------- */
.lothead{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:center;padding:clamp(2.4rem,5vw,4rem) 0 clamp(3rem,6vw,5rem);position:relative}
.lothead__num{position:absolute;right:0;top:.4rem;font-size:clamp(7rem,18vw,16rem);z-index:0}
.lothead>*{position:relative;z-index:1}
.spot>.spot__num,.lothead>.lothead__num{position:absolute;z-index:0}
@media(max-width:900px){.lothead{grid-template-columns:1fr}.lothead__num{font-size:clamp(6rem,30vw,10rem)}}
.lothead h1{font-style:italic;font-size:clamp(2.8rem,6.4vw,5.4rem);line-height:.84;margin:.5rem 0 0}
.band .lothead h1{background:linear-gradient(180deg,#fff 0%,#dfe3e8 45%,#9aa2ad 64%,#f2f4f7 82%);-webkit-background-clip:text;background-clip:text;color:transparent}
.lothead .deck{margin-top:.9rem}

.chapter{display:grid;grid-template-columns:minmax(0,230px) minmax(0,1fr);gap:clamp(1.4rem,4vw,4rem);padding:clamp(2.4rem,5vw,4rem) 0;border-top:1px solid var(--rule)}
.chapter__head{position:sticky;top:4.2rem;align-self:start}
.chapter__no{font-family:var(--f-display);font-style:italic;font-weight:800;font-size:1.1rem;display:inline-block;margin-bottom:.5rem;background:var(--holo);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent}
.chapter__head h2{font-size:clamp(1.6rem,2.4vw,2.1rem);font-style:italic}
@media(max-width:860px){.chapter{grid-template-columns:minmax(0,1fr)}.chapter__head{position:static}}
.chapter>*,.split>*,.spot>*,.lothead>*,.finder>*,.fhero__grid>*,.archive-feature>*,.setfeat>*,.keycards>*,.front>*{min-width:0}

/* commerce offer */
.offer{position:relative;padding:1.3rem 1.3rem 1.4rem;margin-top:1rem;color:#fff;
  background:linear-gradient(160deg,#1a1d23,#0b0c0f) padding-box,var(--chrome-dark) border-box;border:1px solid transparent;
  clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px))}
.offer__head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}
.offer__grade{font-family:var(--f-display);font-weight:800;font-style:italic;text-transform:uppercase;font-size:1.5rem;line-height:1}
.offer__price{font-family:var(--f-display);font-weight:800;font-variant-numeric:lining-nums;font-size:2rem;line-height:1;background:var(--chrome);background-size:200% 200%;-webkit-background-clip:text;background-clip:text;color:transparent}
.offer__sku{font-family:var(--f-cond);font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--steel);margin-top:.4rem;font-weight:600}
.offer__actions{display:flex;gap:.6rem;margin-top:1.1rem;flex-wrap:wrap}
.offer__actions .btn{flex:1;min-width:8rem}
.offer .btn:not(.btn--red){color:#fff;box-shadow:inset 0 0 0 2px var(--steel)}
.offer .btn:not(.btn--red):hover{background:#fff;color:var(--ink)}
.offer__note{font-size:.86rem;color:var(--steel-2);margin:.9rem 0 0;line-height:1.45}
.offer .link{border-color:var(--ink-4)}
.offer .status--verified{color:#4ED49A}
.soldlist{list-style:none;margin:0;padding:0}
.soldlist li{display:flex;justify-content:space-between;gap:1rem;padding:.6rem 0;border-bottom:1px solid var(--rule);font-family:var(--f-cond);font-size:1rem;font-weight:500}
.soldlist .p{font-family:var(--f-display);font-weight:800;font-style:italic}

/* ---------- provenance: plain and quiet ---------- */
.prov{border-top:2px solid var(--ink);margin-top:3rem}
.prov summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding:1.1rem 0}
.prov summary::-webkit-details-marker{display:none}
.prov__title{font-family:var(--f-cond);font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:.95rem;display:flex;align-items:center;gap:.7rem}
.prov__title::after{content:"+";font-size:1.5rem;font-weight:500;line-height:1;color:var(--red);transition:transform .2s}
.prov[open] .prov__title::after{transform:rotate(45deg)}
.prov__sum{display:flex;gap:1.1rem;flex-wrap:wrap}
.prov__body{padding-bottom:1rem}
.prov__intro{max-width:62ch;color:var(--gray);font-size:.97rem}
.claim{padding:1.1rem 0;border-top:1px solid var(--rule)}
.claim__stmt{font-family:var(--f-cond);font-size:1.1rem;font-weight:600;line-height:1.35;margin:.45rem 0 .35rem}
.claim__note{font-size:.94rem;color:var(--gray);margin:0 0 .5rem;line-height:1.5;max-width:70ch}
.srclist{list-style:none;margin:.4rem 0 0;padding:0;display:grid;gap:.35rem}
.srclist li{font-family:var(--f-cond);font-size:.9rem;line-height:1.4;color:var(--gray);font-weight:500}
.srclist a{border-bottom:1px solid var(--rule-strong);color:var(--ink-3)}
.srclist a:hover{color:var(--red)}
.srclist .pub{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;color:var(--red);margin-right:.3rem;font-weight:700}
.srclist .n{display:block;color:var(--gray-2);font-size:.84rem}
.inline-status{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;align-items:center;margin-top:1.2rem}
.inline-status a{font-family:var(--f-cond);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid var(--rule-strong);color:var(--gray);font-weight:700}
.inline-status a:hover{color:var(--red)}
.band .inline-status a{color:var(--steel-2);border-color:var(--ink-4)}
.band .inline-status .catno{color:var(--steel)}

/* ---------- articles ---------- */
.ahero{padding:clamp(2.4rem,6vw,5rem) 0 clamp(2rem,4vw,3rem)}
.ahero .hed-xl{max-width:16ch}
.ahero__meta{display:flex;flex-wrap:wrap;gap:.4rem 1.6rem;margin-top:1.8rem;padding-top:1rem;border-top:1px solid var(--ink-line);max-width:var(--read)}
.band .ahero__meta .meta{color:var(--steel)}
.afeature{padding:clamp(2.4rem,5vw,4rem) 0}
.alist{border-top:2px solid var(--ink)}
.acard{display:grid;grid-template-columns:minmax(0,1fr) 140px;gap:2rem;padding:1.8rem 0;border-bottom:1px solid var(--rule);align-items:start}
.acard h3{font-family:var(--f-display);font-weight:800;font-style:italic;font-size:clamp(1.5rem,2.6vw,2.2rem);line-height:.95;margin:.5rem 0 .7rem}
.acard:hover h3{color:var(--red)}
.acard p{color:var(--gray);margin:0;font-size:1rem;line-height:1.5;max-width:60ch}
@media(max-width:620px){.acard{grid-template-columns:1fr}.acard__fig{max-width:120px;order:-1}}
.related-end{border-top:2px solid var(--ink);margin-top:4rem;padding-top:1.6rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2rem}

/* ---------- archive index ---------- */
.archive-feature .name{background:linear-gradient(176deg,#fff 0%,#eef0f3 30%,#8b939e 52%,#dde1e6 60%,#fff 72%,#a2a9b3 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.archive-feature{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:center}
@media(max-width:860px){.archive-feature{grid-template-columns:1fr}}
.research-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:0;border-top:2px solid var(--ink);margin:0;padding:0}
.research-grid li{list-style:none;padding:1.1rem 1.2rem 1.1rem 0;border-bottom:1px solid var(--rule)}
.research-grid .n{font-family:var(--f-display);font-weight:800;font-style:italic;text-transform:uppercase;font-size:1.6rem;line-height:.92;color:var(--ink-3)}
.research-grid .nick{font-family:var(--f-cond);font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-size:.78rem;color:var(--gray-2);display:block;margin-top:.35rem}
.research-grid .r{font-size:.88rem;color:var(--gray);margin-top:.5rem;line-height:1.45}

/* ---------- parallel ladder: the rarity bar ---------- */
.ladder{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}
.ladder__step{position:relative;padding:1.1rem 1rem 1.2rem;background:var(--surface);clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%)}
.ladder__step::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--steel-2)}
.ladder__step:nth-child(2)::before{background:linear-gradient(90deg,#b8862b,#f3d27a,#a3721c)}
.ladder__step:nth-child(3)::before{background:linear-gradient(90deg,#0a0b0d,#5b616b,#0a0b0d)}
.ladder__step:nth-child(4)::before{background:linear-gradient(90deg,#8d0c1d,#ff4d6d,#8d0c1d)}
.ladder__step:nth-child(5)::before{background:var(--holo);background-size:200% 100%;animation:holoshift 8s linear infinite}
.ladder__name{font-family:var(--f-display);font-weight:800;font-style:italic;text-transform:uppercase;font-size:1.5rem;line-height:.9}
.ladder__run{font-family:var(--f-display);font-weight:800;font-style:italic;font-variant-numeric:lining-nums;font-size:2.2rem;line-height:1;margin:.6rem 0 .5rem}
@media(max-width:760px){.ladder{grid-template-columns:repeat(5,minmax(44%,1fr));overflow-x:auto;scroll-snap-type:x mandatory}.ladder__step{scroll-snap-align:start}}
.pslots{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(4,minmax(0,1fr));gap:clamp(.8rem,2vw,1.6rem);align-items:end}
@media(max-width:760px){.pslots{grid-template-columns:1fr 1fr}.pslots>div:first-child{grid-column:1/-1;max-width:62%}}
.band .ladder__step{background:var(--ink-3)}

/* ---------- forms ---------- */
.form{display:grid;gap:1.2rem;max-width:640px}
.field{display:grid;gap:.4rem}
.field label{font-family:var(--f-cond);text-transform:uppercase;font-size:.72rem;letter-spacing:.18em;font-weight:700;color:var(--gray)}
.field input,.field textarea,.field select{font-family:var(--f-body);font-size:1.02rem;padding:.7rem .1rem;border:0;border-bottom:2px solid var(--rule-strong);background:transparent;color:var(--ink);width:100%;border-radius:0}
.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-bottom-color:var(--red)}
.field textarea{min-height:120px;resize:vertical;border:2px solid var(--rule-strong);padding:.7rem}
.field input[type=file]{border:0;font-family:var(--f-cond)}
.field__hint{font-size:.85rem;color:var(--gray);line-height:1.4}
.form__row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
@media(max-width:560px){.form__row{grid-template-columns:1fr}}
.hp{position:absolute;left:-9999px}

/* search */
.sresults{margin-top:1.6rem;border-top:2px solid var(--ink)}
.sresult{display:block;padding:1rem 0;border-bottom:1px solid var(--rule)}
.sresult h3{font-size:1.3rem;font-style:italic}
.sresult:hover h3{color:var(--red)}
.sresult p{font-size:.95rem;color:var(--gray);margin:.3rem 0 0}
.sresult .eyebrow{font-family:var(--f-cond);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--red);font-weight:700}

/* footer */
.footer{background:var(--ink);color:var(--steel-2);margin-top:clamp(3rem,7vw,6rem);padding:0 0 2rem;font-size:.95rem;position:relative}
.footer::before{content:"";display:block;height:2px;background:var(--holo);background-size:200% 100%;animation:holoshift 12s linear infinite;margin-bottom:clamp(2.6rem,5vw,4rem)}
.footer a:hover{color:#fff}
.footer__top{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:2.4rem}
@media(max-width:860px){.footer__top{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.footer__top{grid-template-columns:1fr}}
.footer h4{font-family:var(--f-cond);text-transform:uppercase;font-size:.7rem;letter-spacing:.22em;color:var(--steel);margin-bottom:1rem;font-weight:700;font-style:normal}
.footer ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.footer ul a{font-family:var(--f-cond);font-size:1.02rem;letter-spacing:.03em;font-weight:600}
.footer__brand .brand__mark{font-size:2.3rem;text-align:left}
.footer__brand p{color:var(--steel);margin-top:1rem;max-width:34ch;line-height:1.55}
.footer__legal{margin-top:3rem;padding-top:1.2rem;border-top:1px solid var(--ink-line);font-family:var(--f-cond);font-size:.8rem;letter-spacing:.06em;color:var(--gray-2);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;align-items:center}
.regmark{display:inline-block;width:14px;height:14px;vertical-align:-2px;margin-right:.5rem}
.newsletter form{display:flex;gap:0;margin-top:.9rem;border-bottom:2px solid var(--ink-4)}
.newsletter form:focus-within{border-image:var(--holo) 1}
.newsletter input{flex:1;min-width:0;background:transparent;border:0;color:#fff;padding:.55rem 0;font-family:var(--f-cond);font-size:1rem}
.newsletter input::placeholder{color:var(--gray-2)}
.newsletter input:focus{outline:none}
.newsletter button{background:transparent;border:0;color:var(--red-hot);font-family:var(--f-cond);text-transform:uppercase;letter-spacing:.16em;font-weight:700;font-size:.78rem;cursor:pointer}
.newsletter button:hover{color:#fff}

/* misc */
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:2px solid var(--red);outline-offset:3px}
.mt-1{margin-top:1rem}.mt-2{margin-top:2rem}.mt-3{margin-top:3rem}
.swipe{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:1.4rem}
@media(max-width:760px){.swipe{grid-auto-columns:72%;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:.6rem}.swipe>*{scroll-snap-align:start}}
@media(max-width:900px){.lead-comp>.marks,.lead-comp>.cframe{max-width:260px}}

/* ---------- motion (slow, subtle, and off when asked) ---------- */
@keyframes holoshift{from{background-position:0% 50%}to{background-position:200% 50%}}
@keyframes holoborder{0%{background-position:0 0,0% 50%}100%{background-position:0 0,220% 50%}}
@keyframes chromeshift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
@media print{.nav,.utility,.footer,.mast-search{display:none}}

/* ---------- archive grids (fighters, key cards, rookies) ---------- */
.fgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:clamp(.8rem,1.6vw,1.2rem)}
.fcell{position:relative;display:grid;grid-template-columns:96px 1fr;gap:1.1rem;align-items:center;padding:1rem;color:#fff;
  background:linear-gradient(160deg,#1a1d23,#0c0d10) padding-box,var(--chrome-dark) border-box;border:1px solid transparent;
  clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));transition:transform .2s}
.fcell::before{content:"";position:absolute;inset:0;pointer-events:none;background:var(--holo-soft);background-size:250% 250%;mix-blend-mode:color-dodge;opacity:0;transition:opacity .3s}
.fcell:hover{transform:translateY(-2px)}
.fcell:hover::before{opacity:.25;animation:holoborder 6s linear infinite}
.fcell__body{display:flex;flex-direction:column;gap:.25rem;min-width:0}
.fcell__nick{font-family:var(--f-cond);font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;color:var(--red-hot)}
.fcell__name{font-family:var(--f-display);font-weight:800;font-style:italic;text-transform:uppercase;font-size:1.7rem;line-height:.92}
.fcell .meta{color:var(--steel-2);font-size:.8rem}
.fcell .catno{color:var(--steel)}
.kgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(170px,44%),1fr));gap:clamp(1rem,2vw,1.8rem) clamp(.9rem,1.8vw,1.6rem);align-items:start}
.kcell{display:block}
.kcell--lg{grid-column:span 2;grid-row:span 2}
@media(max-width:560px){.kcell--lg{grid-column:span 2}}
.kcell__meta{margin-top:.8rem;display:flex;flex-direction:column}
.kcell__yr{font-family:var(--f-display);font-weight:800;font-style:italic;font-size:1.25rem;line-height:1}
.kcell__t{font-family:var(--f-cond);font-weight:600;font-size:.98rem;line-height:1.2;margin-top:.2rem}
.kcell:hover .kcell__t{color:var(--red)}
.kcell .tag{font-size:.6rem;padding:.2rem .45rem .16rem}
.rgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(200px,44%),1fr));gap:clamp(1.4rem,3vw,2.4rem) clamp(1rem,2vw,1.8rem);border-top:2px solid var(--ink);padding-top:clamp(1.6rem,3vw,2.4rem)}
.rcell{display:flex;flex-direction:column}
.rcell__name{font-family:var(--f-display);font-weight:800;font-style:italic;text-transform:uppercase;font-size:1.5rem;line-height:.92;margin-top:.9rem}
.rcell:hover .rcell__name{color:var(--red)}
.rcell .meta{margin-top:.35rem;font-size:.78rem}

/* parallel photographs on card pages */
.parphotos{display:flex;flex-wrap:wrap;gap:1.2rem}
.parphoto{margin:0;max-width:340px;flex:1 1 220px}
.parphoto__imgs{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.5rem;align-items:start}

/* stack layouts by orientation (front/back: p = portrait, l = landscape); stack--pl is the original layout */
.stack--pp .stack__back{width:54%;top:2%;right:4%}
.stack--pp .stack__front{width:54%;left:3%;bottom:0}
.stack--lp .stack__back{width:46%;top:0;right:3%}
.stack--lp .stack__front{width:78%;left:0;bottom:6%}
.stack--ll .stack__back{width:74%;top:4%;right:0}
.stack--ll .stack__front{width:74%;left:0;bottom:4%}
