
:root{
  --carbon:#0a0a0f; --carbon2:#12121a; --card:#16161f; --f1:#e10600; --f1deep:#a30400;
  --volt:#00e6c3; --white:#f5f5f7; --grey:#8b8b95; --dim:#5a5a63; --line:#26262f;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--carbon);color:var(--white);font-family:'Inter',system-ui,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.mono{font-family:'Spline Sans Mono',monospace}
h1,h2,h3,.disp{font-family:'Titillium Web',sans-serif;font-weight:900;letter-spacing:-.01em;line-height:1}
.eyebrow{font-family:'Spline Sans Mono',monospace;font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;color:var(--volt)}

/* NAV */
nav{position:sticky;top:0;z-index:60;background:rgba(10,10,15,.82);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:64px}
.logo{font-family:'Titillium Web';font-weight:900;font-size:1.15rem;letter-spacing:.02em;display:flex;align-items:center;gap:9px}
.logo .bar{width:5px;height:22px;background:var(--f1);box-shadow:9px 0 0 var(--f1),18px 0 0 var(--f1);margin-right:14px;transform:skewX(-16deg)}
.nav-links{display:flex;gap:28px}
.nav-links a{font-size:.82rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--grey);transition:color .2s}
.nav-links a:hover{color:var(--white)}
@media(max-width:820px){.nav-links{display:none}}

/* HERO */
.hero{position:relative;padding:90px 0 70px;overflow:hidden;border-bottom:1px solid var(--line)}
.hero::before{content:"";position:absolute;inset:0;background:
  radial-gradient(1000px 500px at 78% -10%, rgba(225,6,0,.22), transparent 60%),
  radial-gradient(760px 460px at 8% 110%, rgba(0,230,195,.14), transparent 60%)}
.hero-in{position:relative}
.hero .eyebrow{margin-bottom:22px}
.hero h1{font-size:clamp(3.4rem,11vw,8.5rem);text-transform:uppercase}
.hero h1 .yr{color:var(--f1);text-shadow:0 0 60px rgba(225,6,0,.5)}
.hero .sub{font-family:'Titillium Web';font-weight:700;font-size:clamp(1.2rem,3vw,2rem);margin-top:6px;text-transform:uppercase;letter-spacing:.02em;color:var(--white)}
.hero p.lead{max-width:60ch;color:var(--grey);font-size:1.12rem;margin-top:22px}
.hero .cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
.btn{display:inline-flex;align-items:center;gap:9px;font-family:'Titillium Web';font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:.92rem;padding:14px 24px;border-radius:6px;transition:transform .12s,background .2s,border-color .2s}
.btn-p{background:var(--f1);color:#fff}
.btn-p:hover{background:#ff1a12;transform:translateY(-2px)}
.btn-g{border:1.5px solid var(--line);color:var(--white)}
.btn-g:hover{border-color:var(--volt);color:var(--volt)}
.ticker{margin-top:56px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;overflow:hidden;white-space:nowrap;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.ticker span{font-family:'Titillium Web';font-weight:900;text-transform:uppercase;font-size:1.05rem;letter-spacing:.04em;color:var(--dim);display:inline-block;animation:scroll 34s linear infinite}
.ticker b{color:var(--white)}.ticker i{color:var(--f1);font-style:normal;padding:0 18px}
@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

section{padding:84px 0}
.sec-head{max-width:62ch;margin-bottom:40px}
.sec-head h2{font-size:clamp(2rem,5vw,3.2rem);text-transform:uppercase;margin:12px 0 0}
.sec-head p{color:var(--grey);margin-top:14px;font-size:1.08rem}

/* RESET / rules */
.reset{background:var(--carbon2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.rules{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
@media(max-width:760px){.rules{grid-template-columns:1fr}}
.rule{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:28px 26px;position:relative;overflow:hidden}
.rule::after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--f1)}
.rule.v::after{background:var(--volt)}
.rule .num{font-family:'Spline Sans Mono';font-size:.7rem;letter-spacing:.2em;color:var(--dim);text-transform:uppercase}
.rule h3{font-size:1.5rem;margin:8px 0 10px;text-transform:uppercase}
.rule p{color:var(--grey);font-size:.98rem}
.rule .stat{margin-top:16px;display:flex;gap:22px;flex-wrap:wrap}
.rule .stat b{font-family:'Titillium Web';font-weight:900;font-size:1.7rem;color:var(--white);display:block;line-height:1}
.rule .stat b.volt{color:var(--volt)}.rule .stat b.red{color:var(--f1)}
.rule .stat small{font-family:'Spline Sans Mono';font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}

/* GRID */
.teams{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px}
.team{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:22px 22px 20px;position:relative;overflow:hidden;transition:transform .16s,border-color .16s}
.team:hover{transform:translateY(-4px);border-color:var(--tc,#444)}
.team .tbar{position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--tc,#666)}
.team .thead{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding-left:8px}
.team h3{font-size:1.45rem;text-transform:uppercase}
.team .pu{font-family:'Spline Sans Mono';font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);text-align:right}
.team .drivers{display:flex;gap:10px;margin:16px 0 12px;padding-left:8px}
.team .drv{flex:1;background:#0e0e15;border:1px solid var(--line);border-radius:8px;padding:10px 12px}
.team .drv .n{font-family:'Titillium Web';font-weight:700;font-size:.98rem}
.team .drv .no{font-family:'Spline Sans Mono';font-size:.66rem;color:var(--tc,var(--grey))}
.team .note{padding-left:8px;color:var(--grey);font-size:.86rem}
.badge-new{display:inline-block;font-family:'Spline Sans Mono';font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;background:var(--volt);color:#04110e;padding:2px 8px;border-radius:20px;margin-left:8px;vertical-align:middle;font-weight:600}

/* QUIZ */
.quiz-sec{background:var(--carbon2);border-top:1px solid var(--line)}
.quiz{max-width:820px;margin:0 auto}
.q{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:26px 26px 24px;margin-bottom:18px}
.q .qn{font-family:'Spline Sans Mono';font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--f1)}
.q h3{font-size:1.4rem;margin:6px 0 16px;text-transform:uppercase}
.chips{display:grid;grid-template-columns:1fr 1fr;gap:11px}
@media(max-width:560px){.chips{grid-template-columns:1fr}}
.chip{display:flex;align-items:center;gap:11px;background:#0e0e15;border:1.5px solid var(--line);border-radius:10px;padding:14px 16px;cursor:pointer;font-weight:600;font-size:.98rem;transition:all .14s;user-select:none}
.chip:hover{border-color:var(--dim)}
.chip.sel{background:var(--f1);border-color:var(--f1);color:#fff}
.chip .em{font-size:1.2rem}
.go{display:block;width:100%;background:var(--volt);color:#04110e;border:none;border-radius:11px;padding:17px;font-family:'Titillium Web';font-weight:900;font-size:1.05rem;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;transition:transform .1s,filter .2s}
.go:hover{filter:brightness(1.08);transform:translateY(-2px)}
.result{display:none;margin-top:26px}
.result.on{display:block}
.res-card{background:var(--card);border:1px solid var(--tc,var(--f1));border-radius:16px;overflow:hidden}
.res-top{padding:26px 28px;position:relative}
.res-top::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,var(--tc,var(--f1)) -20%,transparent 55%);opacity:.16}
.res-top .lab{font-family:'Spline Sans Mono';font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--tc,var(--f1));position:relative}
.res-top h3{font-size:clamp(1.8rem,5vw,2.8rem);text-transform:uppercase;margin:6px 0 0;position:relative}
.res-top .match{position:relative;margin-top:6px;font-family:'Spline Sans Mono';color:var(--volt);font-size:.9rem}
.res-body{padding:8px 28px 26px}
.res-body p{color:var(--grey);margin-bottom:14px}
.res-body .rd{display:flex;gap:12px;flex-wrap:wrap}
.res-body .rd span{background:#0e0e15;border:1px solid var(--line);border-radius:8px;padding:8px 14px;font-family:'Titillium Web';font-weight:700}
.again{display:block;margin:16px auto 0;background:none;border:none;color:var(--grey);font-family:'Spline Sans Mono';font-size:.82rem;cursor:pointer;text-decoration:underline}

footer{border-top:1px solid var(--line);padding:44px 0 40px;color:var(--dim)}
.foot{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center}
.foot .logo{color:var(--white)}
.foot p{font-size:.82rem;max-width:52ch;margin-top:10px}
.disc{margin-top:22px;font-size:.72rem;color:var(--dim);line-height:1.6;max-width:80ch}

/* --- shared/multi-page --- */
.article{max-width:1180px;margin:0 auto;padding:56px 24px 80px}
.crumb{font-family:'Spline Sans Mono';font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);margin-bottom:26px}
.crumb a{color:var(--volt)}
.phead h1{font-size:clamp(2.2rem,6vw,4rem);text-transform:uppercase;margin:10px 0 0}
.phead .eyebrow{margin-bottom:4px}
.prose{max-width:70ch;margin-top:22px}
.prose p{color:#c7c7cf;margin-bottom:16px}
.prose h2{font-size:1.7rem;text-transform:uppercase;margin:34px 0 12px}
.prose b,.prose strong{color:var(--white)}
/* seo block on home */
.seo{background:var(--carbon2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.seo .cols{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:980px;margin:0 auto}
@media(max-width:760px){.seo .cols{grid-template-columns:1fr;gap:8px}}
.seo p{color:#c1c1c9;margin-bottom:15px}
.seo h3{font-size:1.3rem;text-transform:uppercase;margin:8px 0 12px;color:var(--white)}
/* calendar */
.cal{display:flex;flex-direction:column;gap:10px;margin-top:10px}
.round{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:18px;background:var(--card);border:1px solid var(--line);border-left:4px solid var(--f1);border-radius:10px;padding:16px 20px;transition:transform .14s,border-color .14s}
.round:hover{transform:translateX(4px);border-left-color:var(--volt)}
.round.sprint{border-left-color:var(--volt)}
.round .rno{font-family:'Titillium Web';font-weight:900;font-size:1.5rem;color:var(--dim);text-align:center}
.round .rmain .rgp{font-family:'Titillium Web';font-weight:700;font-size:1.15rem;text-transform:uppercase}
.round .rmain .rvenue{color:var(--grey);font-size:.9rem}
.round .rmeta{text-align:right}
.round .rdate{font-family:'Spline Sans Mono';font-weight:600;color:var(--white);font-size:.95rem}
.round .rtag{display:inline-block;font-family:'Spline Sans Mono';font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:var(--volt);border:1px solid var(--volt);border-radius:20px;padding:1px 8px;margin-top:5px}
.calnote{color:var(--dim);font-size:.82rem;margin-top:22px;max-width:70ch}

/* --- driver / team pages --- */
.dhero{display:grid;grid-template-columns:300px 1fr;gap:34px;align-items:center;margin-bottom:20px}
@media(max-width:720px){.dhero{grid-template-columns:1fr;gap:18px}}
.dphoto img{width:100%;border-radius:14px;border:1px solid var(--line);display:block;aspect-ratio:4/5;object-fit:cover;object-position:top center;background:var(--card)}
.credit{font-size:.68rem;color:var(--dim);margin-top:7px;line-height:1.4}
.credit a{color:var(--grey);text-decoration:underline}
.dmeta h1{font-size:clamp(2.2rem,6vw,3.6rem);text-transform:uppercase;margin:4px 0 18px}
.dfacts{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:460px}
.dfacts>div{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--tc,var(--f1));border-radius:9px;padding:10px 14px}
.dfacts span{display:block;font-family:'Spline Sans Mono';font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:var(--dim);margin-bottom:3px}
.dfacts a{color:var(--volt)}
.teammate{margin-top:24px;display:flex;align-items:center;gap:14px;background:var(--carbon2);border:1px solid var(--line);border-radius:11px;padding:14px 18px}
.tm-lab{font-family:'Spline Sans Mono';font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
.teammate a{font-family:'Titillium Web';font-weight:700;color:var(--white)}.teammate a:hover{color:var(--volt)}
.thero{position:relative;padding:30px 26px 26px;background:var(--carbon2);border:1px solid var(--line);border-radius:16px;overflow:hidden;margin-bottom:20px}
.thero::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,var(--tc) -30%,transparent 55%);opacity:.14}
.tbar2{position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--tc)}
.thero h1{font-size:clamp(2.2rem,6vw,3.8rem);text-transform:uppercase;position:relative;margin:4px 0 0}
.tlead{color:#c7c7cf;position:relative;margin-top:10px;max-width:60ch}
.tfacts{display:flex;flex-wrap:wrap;gap:22px;margin-top:20px;position:relative}
.tfacts>div{min-width:110px}
.tfacts span{display:block;font-family:'Spline Sans Mono';font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:var(--dim);margin-bottom:3px}
.dcards{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:30px}
@media(max-width:560px){.dcards{grid-template-columns:1fr}}
.dcard{display:flex;align-items:center;gap:14px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px;transition:border-color .14s,transform .14s}
.dcard:hover{border-color:var(--tc,var(--volt));transform:translateY(-2px)}
.dcard img,.dcard .noimg{width:64px;height:78px;border-radius:8px;object-fit:cover;object-position:top center;flex:none;background:var(--carbon2)}
.dcard .noimg{display:flex;align-items:center;justify-content:center;font-family:'Titillium Web';font-weight:900;color:var(--dim)}
.dcard-b b{font-family:'Titillium Web';font-weight:700;font-size:1.1rem;display:block}
.dcard-b small{color:var(--grey);font-family:'Spline Sans Mono';font-size:.7rem}
.othh{font-size:1.5rem;text-transform:uppercase;margin:36px 0 14px}
.teamnav{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}
.teamnav a{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:9px;padding:11px 14px;font-family:'Titillium Web';font-weight:700;text-transform:uppercase;font-size:.9rem;transition:border-color .14s}
.teamnav a:hover{border-color:var(--tc)}
.teamnav .tn-bar{width:4px;height:18px;background:var(--tc);flex:none}
.dgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.gcard-d{background:var(--card);border:1px solid var(--line);border-top:3px solid var(--tc);border-radius:12px;overflow:hidden;transition:transform .14s}
.gcard-d:hover{transform:translateY(-3px)}
.gcard-d img,.gcard-d .noimg{width:100%;aspect-ratio:1/1;object-fit:cover;object-position:top center;display:block;background:var(--carbon2)}
.gcard-d .noimg{display:flex;align-items:center;justify-content:center;font-family:'Titillium Web';font-weight:900;font-size:1.6rem;color:var(--dim)}
.gcard-b{padding:12px 14px}
.gcard-b b{font-family:'Titillium Web';font-weight:700;display:block;font-size:1.02rem}
.gcard-b small{color:var(--grey);font-family:'Spline Sans Mono';font-size:.68rem}
.credtable{overflow-x:auto}
.credtable table{width:100%;border-collapse:collapse;font-size:.9rem;min-width:520px}
.credtable td,.credtable th{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left}
.credtable th{font-family:'Spline Sans Mono';font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}
.credtable a{color:var(--volt)}

.team{display:block}
.team .more{display:inline-block;margin-top:8px;color:var(--volt);font-family:'Spline Sans Mono';font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}

/* teams index */
.tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.tcard{position:relative;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px 20px 18px;overflow:hidden;transition:transform .14s,border-color .14s}
.tcard:hover{transform:translateY(-3px);border-color:var(--tc)}
.tcard-bar{position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--tc)}
.tcard-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding-left:8px}
.tcard-h h3{font-size:1.4rem;text-transform:uppercase}
.tcard-pu{font-family:'Spline Sans Mono';font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);text-align:right}
.tcard-d{padding-left:8px;margin:8px 0 8px;font-family:'Titillium Web';font-weight:700;color:var(--white)}
.tcard-lead{padding-left:8px;color:var(--grey);font-size:.88rem}
