
:root{
 --dk:#0a0a0b; --dk2:#141416; --dkline:rgba(255,255,255,.10);
 --dkink:#eceae7; --dkink2:#a5a3a0; --dkmute:#7d7b78;
 --bg:#ffffff; --bg2:#f6f6f7; --line:rgba(17,17,17,.12); --line2:rgba(17,17,17,.20);
 --ink:#111113; --ink2:#4d4d51; --mute:#7c7c82;
 --gold:#f8c010;            /* brand gold: dark backgrounds only */
 --goldink:#8a6708;         /* AA-safe gold for light backgrounds */
 --golddim:rgba(248,192,16,.16);
 --wrap:1160px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--ink);overflow-x:hidden;
 font:400 16px/1.7 -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
 -webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
h1,h2,h3{font-weight:600;letter-spacing:-.022em;line-height:1.14}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
:focus-visible{outline:2px solid var(--goldink);outline-offset:3px;border-radius:2px}
.dark :focus-visible{outline-color:var(--gold)}
.skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:12px 18px;z-index:200}
.skip:focus{left:8px;top:8px}

.kick{font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--goldink);font-weight:700}
.dark .kick{color:var(--gold)}
.btn{display:inline-flex;align-items:center;min-height:46px;padding:12px 28px;
 background:var(--ink);color:#fff;border:1px solid var(--ink);font-size:14px;font-weight:600;
 letter-spacing:.02em;transition:.18s}
.btn:hover{background:#2c2c30;border-color:#2c2c30}
.btn.o{background:transparent;color:var(--ink)}
.btn.o:hover{background:var(--bg2)}
.dark .btn{background:var(--gold);color:var(--dk);border-color:var(--gold)}
.dark .btn:hover{background:#ffd23f;border-color:#ffd23f}
.dark .btn.o{background:transparent;color:var(--dkink);border-color:rgba(255,255,255,.34)}
.dark .btn.o:hover{background:rgba(255,255,255,.08)}

/* ── header ───────────────────────────────────────────── */
header.site{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.93);
 backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;min-height:72px;gap:16px}
.nav .logo img{height:24px;width:auto}
.navlinks{display:flex;align-items:center;gap:30px;list-style:none}
.navlinks a{font-size:14.5px;color:var(--ink2);padding:8px 0;display:inline-block}
.navlinks a:hover{color:var(--goldink)}
.navlinks a[aria-current="page"]{color:var(--ink);font-weight:600}
.navcta{display:inline-flex;align-items:center;min-height:44px;padding:10px 20px;
 border:1px solid var(--line2);font-size:14px;font-weight:600}
.navcta:hover{background:var(--bg2)}
/* checkbox-driven mobile menu: works with JS disabled */
#navtoggle{position:absolute;opacity:0;pointer-events:none}
.burger{display:none;align-items:center;justify-content:center;width:46px;height:46px;
 border:1px solid var(--line2);cursor:pointer;background:none}
.burger span{position:relative;display:block;width:19px;height:1.5px;background:var(--ink)}
.burger span::before,.burger span::after{content:"";position:absolute;left:0;width:19px;height:1.5px;
 background:var(--ink);transition:.2s}
.burger span::before{top:-6px} .burger span::after{top:6px}
#navtoggle:checked~.wrap .burger span{background:transparent}
#navtoggle:checked~.wrap .burger span::before{top:0;transform:rotate(45deg)}
#navtoggle:checked~.wrap .burger span::after{top:0;transform:rotate(-45deg)}

@media(max-width:860px){
 .burger{display:flex}
 .navcta{display:none}
 .navlinks{position:fixed;inset:72px 0 auto 0;flex-direction:column;align-items:stretch;gap:0;
  background:var(--bg);border-bottom:1px solid var(--line);padding:8px 24px 20px;
  transform:translateY(-8px);opacity:0;visibility:hidden;transition:.2s;
  max-height:calc(100dvh - 72px);overflow-y:auto}
 #navtoggle:checked~.wrap .navlinks{transform:none;opacity:1;visibility:visible}
 .navlinks li{border-bottom:1px solid var(--line)}
 .navlinks li:last-child{border-bottom:0}
 .navlinks a{display:block;padding:16px 0;font-size:16.5px;min-height:44px}
}

/* ── hero (dark) ──────────────────────────────────────── */
.hero{background:radial-gradient(760px 420px at 76% 18%,rgba(248,192,16,.10),transparent 64%),
 linear-gradient(168deg,#161618 0%,#0a0a0b 62%);color:var(--dkink);padding:92px 0 96px}
.hero .lock{height:30px;width:auto;margin-bottom:26px;opacity:.96}
.hero .tag{font-size:12px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);
 font-weight:700;margin-bottom:22px}
.hero h1{font-size:clamp(32px,5.2vw,58px);margin-bottom:22px;max-width:17ch}
.hero p{color:var(--dkink2);font-size:17.5px;max-width:620px;margin-bottom:32px}
.hero .acts{display:flex;gap:12px;flex-wrap:wrap}

/* ── page header (interior, light) ────────────────────── */
.phead{background:var(--bg2);border-bottom:1px solid var(--line);padding:64px 0 60px}
.phead h1{font-size:clamp(30px,4.4vw,46px);margin:14px 0 14px}
.phead p{color:var(--ink2);max-width:640px;font-size:17px}
.phead .meta{color:var(--mute);font-size:14px;margin-top:14px}

section.blk{padding:80px 0}
section.alt{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.shead{max-width:660px;margin-bottom:44px}
.shead h2{font-size:clamp(25px,3.6vw,38px);margin:14px 0 14px}
.shead p{color:var(--ink2);font-size:16.5px}

.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}
.cap{background:var(--bg);padding:28px 24px 32px}
section.alt .cap{background:var(--bg2)}
.cap .n{font-size:12px;letter-spacing:.16em;color:var(--goldink);font-weight:700;margin-bottom:14px}
.cap h3{font-size:18px;margin-bottom:9px}
.cap p{color:var(--ink2);font-size:14.5px}

.om{border-top:1px solid var(--line2)}
.om .row{display:grid;grid-template-columns:230px 1fr 190px;gap:28px;padding:24px 0;
 border-bottom:1px solid var(--line);align-items:start}
.om h3{font-size:18.5px}
.om p{color:var(--ink2);font-size:15px}
.om .role{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--goldink);
 font-weight:700;padding-top:4px}

.split{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:center}
.split h2{font-size:clamp(25px,3.4vw,36px);margin:14px 0 18px}
.split p{color:var(--ink2);margin-bottom:15px}
/* About band: full-width dark, so the chrome mark sits on its own ground */
section.aboutband{background:radial-gradient(620px 360px at 22% 50%,rgba(248,192,16,.09),transparent 66%),
 linear-gradient(170deg,#141416 0%,#0a0a0b 70%);color:var(--dkink);
 border-top:1px solid var(--dkline);border-bottom:1px solid var(--dkline);padding:84px 0}
section.aboutband .kick{color:var(--gold)}
section.aboutband .split p{color:var(--dkink2)}
.markart{display:flex;align-items:center;justify-content:center;padding:10px}
.markart img{width:74%;max-width:300px;height:auto}

.facts{border-top:1px solid var(--line2)}
.facts .r{display:grid;grid-template-columns:260px 1fr;gap:26px;padding:15px 0;
 border-bottom:1px solid var(--line)}
.facts dt{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);
 font-weight:700;padding-top:4px}
.facts dd{font-size:15.5px}
.facts dd a{color:var(--goldink);text-decoration:underline;text-underline-offset:2px}

.prose{max-width:760px}
.prose .lead{font-size:18px;color:var(--ink);margin-bottom:26px}
.prose h2{font-size:21px;margin:34px 0 12px}
.prose p{color:var(--ink2);margin-bottom:14px}
.prose ul{margin:0 0 16px 20px;color:var(--ink2)}
.prose li{margin-bottom:9px}
.prose a{color:var(--goldink);text-decoration:underline;text-underline-offset:2px}
.callout{background:var(--bg2);border-left:3px solid var(--goldink);padding:20px 22px;margin:22px 0}
.callout p{margin-bottom:0;color:var(--ink)}

.ccards{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:34px}
.ccard{border:1px solid var(--line);padding:26px 24px}
.ccard .l{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);
 font-weight:700;margin-bottom:10px}
.ccard .v{font-size:17px;font-weight:600}
.ccard .v a{color:var(--goldink);text-decoration:underline;text-underline-offset:2px}
.ccard address{font-style:normal;font-size:16px;line-height:1.65;font-weight:500}

/* ── CTA band (dark) ──────────────────────────────────── */
.band{background:var(--dk);color:var(--dkink);padding:74px 0;text-align:center}
.band h2{font-size:clamp(25px,3.4vw,36px);margin-bottom:14px}
.band p{color:var(--dkink2);max-width:560px;margin:0 auto 28px}

/* ── footer (dark) ────────────────────────────────────── */
footer.site{background:var(--dk);color:var(--dkink2);border-top:1px solid var(--dkline);
 padding:58px 0 26px;font-size:14px}
footer.site .lock{height:22px;width:auto;margin-bottom:14px}
.fg{display:grid;grid-template-columns:2.1fr 1fr 1fr 1.5fr;gap:34px;margin-bottom:40px}
.fg .desc{color:var(--dkmute);font-size:13.5px;max-width:300px}
.fg h2{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--dkink);
 margin-bottom:14px;font-weight:700}
.fg ul{list-style:none} .fg li{margin-bottom:10px}
.fg a{color:var(--dkmute)} .fg a:hover{color:var(--gold)}
.fc{color:var(--dkmute);line-height:1.8;font-size:13.5px;font-style:normal}
.fc a{color:var(--dkmute);text-decoration:underline;text-underline-offset:2px}
.fb{border-top:1px solid var(--dkline);padding-top:20px;display:flex;justify-content:space-between;
 flex-wrap:wrap;gap:10px;color:var(--dkmute);font-size:12.5px}

/* ── splash (homepage only, ~620ms, CSS fail-open) ────── */
#splash{position:fixed;inset:0;z-index:9999;background:var(--dk);display:flex;
 flex-direction:column;align-items:center;justify-content:center;gap:18px;
 animation:sOut .22s ease .40s forwards}
#splash .stk{position:relative;width:96px;height:96px}
#splash .stk img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;
 mix-blend-mode:screen}
#splash .base{animation:sIn .26s cubic-bezier(.2,.8,.3,1) both}
#splash .lit{opacity:0;animation:sLit .32s cubic-bezier(.35,.8,.3,1) .10s forwards}
#splash .halo{position:absolute;inset:-20%;border-radius:50%;opacity:0;pointer-events:none;
 background:radial-gradient(circle,rgba(248,192,16,.40),transparent 62%);
 animation:sHalo .34s cubic-bezier(.35,.8,.3,1) .12s forwards}
#splash .wm{font-size:12px;letter-spacing:.42em;padding-left:.42em;font-weight:700;
 color:var(--dkink);opacity:0;animation:sUp .26s ease .18s forwards}
@keyframes sIn{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:none}}
@keyframes sLit{from{opacity:0}to{opacity:1}}
@keyframes sHalo{from{opacity:0;transform:scale(.78)}to{opacity:.6;transform:scale(1)}}
@keyframes sUp{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
@keyframes sOut{to{opacity:0;visibility:hidden;pointer-events:none}}
html.no-splash #splash{display:none}
@media(prefers-reduced-motion:reduce){#splash{display:none}}

/* Utilities replacing inline style attributes, which a strict CSP blocks.
   The class name is doubled on purpose: it raises specificity to (0,2,0) so
   these beat context rules like `.split p` and `.prose h2` (0,1,1) without
   needing !important and without being tied to a parent. */
.mb24.mb24{margin-bottom:24px}
.mt0.mt0{margin-top:0}
.cnote.cnote{color:var(--ink2);font-size:14.5px;margin-top:6px}

@media(max-width:860px){
 .g3{grid-template-columns:1fr 1fr}
 .split{grid-template-columns:1fr;gap:30px}
 .om .row{grid-template-columns:1fr;gap:8px}
 .om .role{padding-top:0}
 .fg{grid-template-columns:1fr 1fr}
 .facts .r{grid-template-columns:1fr;gap:4px}
 .ccards{grid-template-columns:1fr}
}
@media(max-width:560px){
 .g3,.fg{grid-template-columns:1fr}
 .hero{padding:62px 0 66px} section.blk{padding:58px 0} .phead{padding:48px 0 44px}
 .markbox{padding:30px}
}
