/* Racing page. All rules are scoped to .race-page. */
.race-page .rh{min-height:100svh;padding:18vh 4vw 8vh;display:flex;flex-direction:column;justify-content:flex-end;background:radial-gradient(55% 50% at 80% 20%,rgba(228,0,43,.3),transparent 70%),#07070a}
.race-page .rh .lead{max-width:56ch;color:#cfcac0;font-size:1.1rem;margin-bottom:5vh}
.race-page .tcw{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.race-page .tcd{display:flex;flex-direction:column;justify-content:space-between;gap:2.4rem;min-height:clamp(16rem,36vh,22rem);padding:clamp(1.4rem,2.4vw,2.2rem);border:1px solid var(--line);border-radius:8px;background:#0d0d10;border-top:3px solid var(--red)}
.race-page .tcd.hri{background:var(--red);border-color:var(--red)}
.race-page .tcd small{font-weight:800;opacity:.85}
.race-page .tcd b{display:block;font:900 clamp(4.5rem,9vw,8rem)/.85 var(--d);margin:.8rem 0 .5rem}
.race-page .tcd h3{font:800 1.15rem/1.25 var(--b)}
.race-page .tcd p{opacity:.9;max-width:44ch}
.race-page .nx{background:#0d0d10;display:grid;grid-template-columns:1.1fr .9fr;gap:6vw;align-items:center}
.race-page .nx h2{font-size:clamp(2.8rem,7vw,6.5rem);margin:1rem 0 1.4rem}
.race-page .nx p{color:#cfcac0;max-width:46ch;margin-top:1rem}
.race-page .tb2{display:inline-block;border-radius:99px;padding:.2rem .8rem;font-weight:800;font-size:.75rem;margin-right:.6rem}
.race-page .tb2.hri{background:var(--red);color:#fff}
.race-page .tb2.hmrt{border:1px solid var(--ink)}
.race-page .cdn{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}
.race-page .cdn div{border:1px solid var(--line);border-radius:6px;padding:1.3rem .6rem;text-align:center}
.race-page .cdn b{display:block;font:900 clamp(3rem,6vw,5.5rem)/.9 var(--d);font-variant-numeric:tabular-nums}
.race-page .cdn span{color:var(--mute);font-size:.8rem;font-weight:600}
.race-page .cdl{margin-top:1rem;color:var(--mute);font-size:.85rem}
.race-page .tflt{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:3vh}
.race-page .tflt button{cursor:pointer;font:800 .85rem var(--b);color:var(--ink);background:transparent;border:1px solid var(--line);border-radius:99px;padding:.55rem 1.3rem;transition:background .3s,border-color .3s}
.race-page .tflt button:hover{border-color:var(--red)}
.race-page .tflt button[aria-pressed="true"]{background:var(--red);border-color:var(--red);color:#fff}
.race-page .grp{font-weight:800;color:var(--mute);letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;margin:3rem 0 .6rem}
.race-page .ev{display:grid;grid-template-columns:10rem 1fr 14rem;gap:1.2rem 2rem;padding:1.6rem 0;border-top:1px solid var(--line);transition:background .3s,padding .3s}
.race-page .ev[hidden]{display:none}
.race-page .ev:hover{background:rgba(228,0,43,.08);padding-inline:1rem}
.race-page .ev time{font:900 1.7rem/1 var(--d);text-transform:uppercase}
.race-page .ev h3{font:800 1.2rem/1.3 var(--b)}
.race-page .ev p{color:#cfcac0;max-width:62ch;margin-top:.5rem}
.race-page .ev.up{border-top-color:var(--red)}
.race-page .chips{display:flex;gap:.4rem;flex-wrap:wrap;justify-content:flex-end;align-items:flex-start}
.race-page .chip{font:900 1.4rem/1 var(--d);text-transform:uppercase;padding:.45rem .8rem;border:1px solid var(--line);border-radius:4px}
.race-page .chip.p1{background:var(--red);border-color:var(--red);color:#fff}
.race-page .chip.dns{color:var(--mute)}
.race-page .chip.nx2{border-color:var(--red);color:var(--red)}
.race-page .pg2{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.race-page .pc{border:1px solid var(--line);border-radius:8px;padding:clamp(1.4rem,2.4vw,2.2rem)}
.race-page .pc.hri{border-top:3px solid var(--red)}
.race-page .pc.hmrt{border-top:3px solid var(--ink)}
.race-page .pc h3{font-size:clamp(2rem,3.4vw,3rem);margin:1rem 0 .4rem}
.race-page .pc>p{color:var(--mute);margin-bottom:1.4rem}
.race-page .pc dl{margin:0}
.race-page .pc dl>div{display:grid;grid-template-columns:8rem 1fr;gap:1rem;padding:.8rem 0;border-top:1px solid var(--line)}
.race-page .pc dt{color:var(--mute)}
.race-page .pc dd{margin:0;font-weight:700}
.race-page .src{padding:0 4vw 10vh;color:var(--mute);font-size:.85rem;max-width:90ch}
.race-page .src a{text-decoration:underline}
.race-page .go{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2.4rem}
.race-page .go .btn{box-shadow:none}
@media(max-width:900px){.race-page .tcw,.race-page .nx,.race-page .pg2{grid-template-columns:1fr}
.race-page .ev{grid-template-columns:1fr}
.race-page .chips{justify-content:flex-start}
.race-page .pc dl>div{grid-template-columns:6.5rem 1fr}}
.race-page{background:var(--bg)}
