/* self-hosted fonts (SIL OFL, via Fontsource) */
@font-face { font-family: 'Big Shoulders Display'; font-style: normal; font-display: swap; font-weight: 700; src:url(webfonts/big-shoulders-display-latin-ext-700-normal.woff2) format('woff2'); unicode-range: U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'Big Shoulders Display'; font-style: normal; font-display: swap; font-weight: 700; src:url(webfonts/big-shoulders-display-latin-700-normal.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: 'Big Shoulders Display'; font-style: normal; font-display: swap; font-weight: 800; src:url(webfonts/big-shoulders-display-latin-ext-800-normal.woff2) format('woff2'); unicode-range: U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'Big Shoulders Display'; font-style: normal; font-display: swap; font-weight: 800; src:url(webfonts/big-shoulders-display-latin-800-normal.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: 'Big Shoulders Display'; font-style: normal; font-display: swap; font-weight: 900; src:url(webfonts/big-shoulders-display-latin-ext-900-normal.woff2) format('woff2'); unicode-range: U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'Big Shoulders Display'; font-style: normal; font-display: swap; font-weight: 900; src:url(webfonts/big-shoulders-display-latin-900-normal.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+2074,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-display: swap; font-weight: 400; src:url(webfonts/barlow-latin-ext-400-normal.woff2) format('woff2'); unicode-range: U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'Barlow'; font-style: normal; font-display: swap; font-weight: 400; src:url(webfonts/barlow-latin-400-normal.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+2074,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-display: swap; font-weight: 500; src:url(webfonts/barlow-latin-ext-500-normal.woff2) format('woff2'); unicode-range: U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'Barlow'; font-style: normal; font-display: swap; font-weight: 500; src:url(webfonts/barlow-latin-500-normal.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+2074,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-display: swap; font-weight: 600; src:url(webfonts/barlow-latin-ext-600-normal.woff2) format('woff2'); unicode-range: U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'Barlow'; font-style: normal; font-display: swap; font-weight: 600; src:url(webfonts/barlow-latin-600-normal.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+2074,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-display: swap; font-weight: 700; src:url(webfonts/barlow-latin-ext-700-normal.woff2) format('woff2'); unicode-range: U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'Barlow'; font-style: normal; font-display: swap; font-weight: 700; src:url(webfonts/barlow-latin-700-normal.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: 'IBM Plex Mono'; font-style: normal; font-display: swap; font-weight: 400; src:url(webfonts/ibm-plex-mono-latin-ext-400-normal.woff2) format('woff2'); unicode-range: U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'IBM Plex Mono'; font-style: normal; font-display: swap; font-weight: 400; src:url(webfonts/ibm-plex-mono-latin-400-normal.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: 'IBM Plex Mono'; font-style: normal; font-display: swap; font-weight: 600; src:url(webfonts/ibm-plex-mono-latin-ext-600-normal.woff2) format('woff2'); unicode-range: U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'IBM Plex Mono'; font-style: normal; font-display: swap; font-weight: 600; src:url(webfonts/ibm-plex-mono-latin-600-normal.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }

/* grandprixodds.com — "Night Race" design system */
:root{
  --bg:#0B0D12; --bg-2:#080A0E; --surface:#141821; --surface-2:#1B202B; --line:#262C38; --line-2:#323A49;
  --text:#F2F4F8; --text-2:#C3C9D4; --muted:#98A1B2;
  --accent:#FF6A13; --accent-ink:#0B0D12; --ice:#7FD6FF; --lime:#B6F04A; --blue:#5B8CFF;
  --f1:#FF6A13; --motogp:#B6F04A; --nascar:#7FD6FF;
  --display:'Big Shoulders Display',system-ui,sans-serif; --body:'Barlow',system-ui,sans-serif; --mono:'IBM Plex Mono',ui-monospace,monospace;
  --wrap:1240px; --radius:10px;
  color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--body);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--text);text-decoration-color:var(--accent);text-underline-offset:3px}
a:hover{color:var(--ice)}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;z-index:99;background:var(--ice);color:#111;padding:8px 12px}
.mono{font-family:var(--mono)}
.chequer{height:14px;background-color:var(--bg);background-image:conic-gradient(#F2F4F8 25%,transparent 0 50%,#F2F4F8 0 75%,transparent 0);background-size:14px 14px;opacity:.9}

/* header */
.site-header{background:rgba(8,10,14,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;backdrop-filter:blur(6px)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:66px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text)}
.logo svg{flex:none}
.logo .wm{font-family:var(--display);font-weight:900;font-size:26px;letter-spacing:.5px;line-height:1;text-transform:uppercase}
.logo .wm i{font-style:normal;color:var(--accent)}
.nav{display:flex;gap:2px;align-items:center}
.nav>a,.nav .dd>summary{font-family:var(--display);font-weight:800;font-size:18px;letter-spacing:.8px;text-transform:uppercase;text-decoration:none;padding:10px 11px;cursor:pointer;list-style:none;border-radius:8px;color:var(--text)}
.nav .dd>summary::-webkit-details-marker{display:none}
.nav>a:hover,.nav .dd>summary:hover,.nav a[aria-current=page],.nav .dd.cur>summary{color:var(--ice)}
.dd{position:relative}
.dd>summary::after{content:"";display:inline-block;width:6px;height:6px;margin-left:7px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg) translateY(-3px)}
.dd-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:240px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:8px;display:flex;flex-direction:column;box-shadow:0 18px 40px rgba(0,0,0,.55)}
.dd-menu a{padding:10px 12px;text-decoration:none;font-size:15px;border-radius:8px}
.dd-menu a:hover{background:var(--surface-2)}
.dd-menu .dot{width:8px;height:8px;border-radius:50%;margin-right:10px;flex:none}
.header-cta{display:inline-flex;align-items:center;height:44px;padding:0 18px;background:var(--accent);color:var(--accent-ink);border-radius:10px;font-family:var(--display);font-weight:900;font-size:18px;text-transform:uppercase;letter-spacing:.8px;text-decoration:none;white-space:nowrap}
.header-cta:hover{color:var(--accent-ink);filter:brightness(1.08)}
.burger{display:none}
.burger>summary{list-style:none;cursor:pointer;height:44px;width:44px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line-2);border-radius:10px}
.burger>summary::-webkit-details-marker{display:none}
.mobile-nav{position:absolute;right:16px;left:16px;top:70px;background:var(--surface);border:1px solid var(--line);padding:12px;display:grid;grid-template-columns:1fr 1fr;gap:2px;border-radius:12px;max-height:75vh;overflow:auto;box-shadow:0 18px 40px rgba(0,0,0,.55)}
.mobile-nav a{padding:10px;text-decoration:none;font-size:15px;border-radius:8px}
.mobile-nav .h4{grid-column:1/-1;margin:8px 0 0;font-family:var(--mono);font-size:11px;color:var(--ice);letter-spacing:2px;font-weight:400}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:54px;padding:0 26px;border-radius:12px;font-family:var(--display);font-weight:900;font-size:21px;text-transform:uppercase;letter-spacing:.8px;text-decoration:none;border:2px solid transparent;white-space:nowrap}
.btn-red,.btn-accent{background:var(--accent);color:var(--accent-ink)}.btn-red:hover,.btn-accent:hover{color:var(--accent-ink);filter:brightness(1.08)}
.btn-ghost{border-color:var(--text);color:var(--text)}.btn-ghost:hover{color:var(--ice);border-color:var(--ice)}

/* home hero */
.hero{background:radial-gradient(1200px 500px at 85% -10%,rgba(255,106,19,.16),transparent 60%),radial-gradient(900px 500px at 0% 120%,rgba(127,214,255,.08),transparent 60%),var(--bg-2);border-bottom:1px solid var(--line)}
.hero .wrap{display:flex;flex-wrap:wrap;gap:40px;align-items:center;padding-top:60px;padding-bottom:56px}
.hero-text{flex:999 1 520px;min-width:0;display:flex;flex-direction:column;gap:20px}
.eyebrow{font-family:var(--mono);font-size:13px;color:var(--ice);letter-spacing:2px;text-transform:uppercase}
.hero h1{margin:0;font-family:var(--display);font-weight:900;font-size:96px;line-height:.9;text-transform:uppercase;letter-spacing:-.5px}
.hero h1 em{font-style:normal;color:var(--accent)}
.hero p{margin:0;font-size:19px;color:var(--text-2);max-width:580px}
.hero-btns{display:flex;gap:12px;flex-wrap:wrap}
.race-card{flex:1 1 360px;display:flex;flex-direction:column;gap:12px}
.rc-top{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px 20px;display:flex;flex-direction:column;gap:4px}
.rc-top .mono{font-size:12px;letter-spacing:2px;color:var(--ice)}
.rc-top b{font-family:var(--display);font-weight:900;font-size:40px;line-height:1;text-transform:uppercase}
.rc-top span{color:var(--muted);font-size:15px}
.cd{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;font-family:var(--mono);text-align:center}
.cd div{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 4px}
.cd b{display:block;font-size:28px;font-weight:600;line-height:1.1}
.cd div:last-child b{color:var(--accent)}
.cd small{font-size:10px;color:var(--muted);letter-spacing:2px}
.tz-box{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px 16px}
.tz-box .lbl{display:block;font-family:var(--mono);font-size:11px;letter-spacing:2px;color:var(--muted);margin-bottom:10px}
.tz-row{display:flex;gap:8px;flex-wrap:wrap}
.tz-btn{cursor:pointer;min-height:44px;padding:6px 12px;border-radius:10px;border:2px solid var(--line-2);background:var(--bg-2);color:var(--text);font-family:var(--mono);font-size:15px;text-align:left}
.tz-btn small{font-size:11px;color:var(--muted)}
.tz-btn[aria-pressed=true]{border-color:var(--ice)}
.chips{display:flex;gap:8px}

/* series band */
.series{padding:44px 0 8px}
.series .wrap>h2{margin:0 0 16px;font-family:var(--display);font-weight:900;font-size:40px;text-transform:uppercase;line-height:1}
.series-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.s-card{display:flex;flex-direction:column;gap:8px;text-decoration:none;background:var(--surface);border:1px solid var(--line);border-left:6px solid var(--c);border-radius:12px;padding:20px 22px;min-height:150px}
.s-card .mono{font-size:12px;letter-spacing:1.5px;color:var(--muted)}
.s-card b{font-family:var(--display);font-weight:900;font-size:34px;text-transform:uppercase;line-height:1}
.s-card span{color:var(--text-2);font-size:15px}
.s-card:hover{border-color:var(--c);color:var(--text)}

/* race bar on inner F1 pages */
.racebar{background:var(--bg-2);border-bottom:1px solid var(--line)}
.racebar .wrap{display:flex;flex-wrap:wrap;gap:12px 22px;align-items:center;padding-top:14px;padding-bottom:14px}
.racebar .rb-name{display:flex;flex-direction:column;gap:2px;margin-right:auto}
.racebar .rb-name .mono{font-size:11px;letter-spacing:2px;color:var(--ice)}
.racebar .rb-name b{font-family:var(--display);font-weight:900;font-size:26px;line-height:1;text-transform:uppercase}
.racebar .cd{grid-template-columns:repeat(4,64px)}
.racebar .cd div{padding:6px 2px}
.racebar .cd b{font-size:20px}
.racebar .tz-row .tz-btn{min-height:40px;font-size:13px;padding:4px 10px}

/* page hero (inner) */
.page-hero{position:relative;overflow:hidden;background:radial-gradient(900px 360px at 100% 0%,rgba(255,106,19,.13),transparent 65%),var(--bg-2);border-bottom:1px solid var(--line)}
.page-hero::after{content:"";position:absolute;right:0;top:0;width:220px;height:100%;background-image:conic-gradient(rgba(242,244,248,.06) 25%,transparent 0 50%,rgba(242,244,248,.06) 0 75%,transparent 0);background-size:28px 28px;-webkit-mask-image:linear-gradient(90deg,transparent,#000);mask-image:linear-gradient(90deg,transparent,#000)}
.page-hero .wrap{position:relative;z-index:1;padding-top:36px;padding-bottom:40px}
.crumbs{font-family:var(--mono);font-size:13px;color:var(--muted);margin-bottom:16px}
.crumbs a{color:var(--text-2);text-decoration:none}.crumbs a:hover{color:var(--ice)}
.page-hero .tagline{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:12px;letter-spacing:2px;color:var(--c,var(--ice));margin-bottom:10px;text-transform:uppercase}
.page-hero .tagline::before{content:"";width:22px;height:4px;border-radius:2px;background:var(--c,var(--ice))}
.page-hero h1{margin:0;max-width:960px;font-family:var(--display);font-weight:900;font-size:66px;line-height:.95;text-transform:uppercase}

/* sections on home */
.sec{padding:56px 0}

/* footer */
.site-footer{background:var(--bg-2);border-top:1px solid var(--line);padding:48px 0 28px;font-size:14px;color:var(--muted)}
.foot-grid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:28px}
.site-footer .h5{margin:0 0 12px;font-family:var(--mono);font-weight:400;font-size:12px;letter-spacing:2px;color:var(--ice)}
.site-footer ul{list-style:none;margin:0;padding:0}
.site-footer li a{display:block;padding:5px 0;text-decoration:none;color:var(--text-2)}
.site-footer li a:hover{color:var(--ice)}
.foot-bottom{margin-top:36px;padding-top:20px;border-top:1px solid var(--line);display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap;align-items:center}
.foot-bottom .age{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;border:2px solid var(--muted);color:var(--text);font-weight:700;margin-right:10px}

/* article layout */
.layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:48px;padding:48px 0 72px;align-items:start}
.article{min-width:0}
.byline{font-family:var(--mono);font-size:13px;color:var(--muted);border-left:4px solid var(--accent);padding:8px 14px;background:var(--surface);margin:0 0 28px;border-radius:0 4px 4px 0}
.byline a{color:var(--ice);text-decoration:none}
.article>p:first-of-type{font-size:19px;color:var(--text)}
.article h2{font-family:var(--display);font-weight:900;text-transform:uppercase;font-size:38px;line-height:1;margin:56px 0 18px;padding-top:18px;border-top:2px solid var(--line);scroll-margin-top:90px}
.article h2::before{content:"";display:block;width:56px;height:6px;margin:-26px 0 20px;background:repeating-linear-gradient(90deg,var(--accent) 0 14px,var(--text) 14px 28px)}
.article h3{font-family:var(--display);font-weight:800;font-size:26px;line-height:1.1;margin:34px 0 12px;color:var(--ice);scroll-margin-top:90px}
.article h4{font-family:var(--display);font-weight:800;font-size:21px;margin:26px 0 10px}
.article p{margin:0 0 18px;color:var(--text-2)}
.article strong{color:var(--text)}
.article em{color:var(--muted)}
.article ul,.article ol{margin:0 0 20px;padding-left:0;list-style:none;color:var(--text-2)}
.article li{position:relative;padding:10px 0 10px 34px;border-bottom:1px solid #1E2430}
.article ul li::before{content:"";position:absolute;left:4px;top:19px;width:14px;height:8px;background:var(--accent);border-radius:2px}
.article ol{counter-reset:s}
.article ol li{counter-increment:s}
.article ol li::before{content:counter(s);position:absolute;left:0;top:9px;width:24px;height:24px;background:var(--ice);color:#111;font-family:var(--display);font-weight:900;font-size:16px;display:flex;align-items:center;justify-content:center;border-radius:3px}
.table-wrap{overflow-x:auto;margin:0 0 22px;border:1px solid var(--line);border-radius:6px;background:var(--bg-2)}
.article table{width:100%;border-collapse:collapse;font-size:15px;min-width:560px}
.article th{background:var(--surface-2);font-family:var(--mono);font-weight:400;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--ice);padding:12px 12px;text-align:left;border-bottom:2px solid var(--accent)}
.article td{padding:11px 12px;border-bottom:1px solid #1E2430;color:var(--text-2);text-align:left;vertical-align:top}
.article tbody tr:hover td{background:#121620}
.article td:first-child{font-family:var(--mono);color:var(--text)}
.article tr.hl td{background:rgba(255,106,19,.10)}
.sprint-dot{color:var(--accent)}
.placeholder{border:2px dashed var(--line-2);border-radius:6px;padding:18px 20px;margin:0 0 22px;font-family:var(--mono);font-size:13px;color:var(--muted);background:repeating-linear-gradient(45deg,transparent 0 12px,rgba(127,214,255,.03) 12px 24px)}
.placeholder b{color:var(--ice);font-weight:400}
.cta{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;margin:28px 0;padding:20px 22px;background:linear-gradient(90deg,#2A160B,#121620 60%);border:1px solid #4A2A14;border-left:6px solid var(--accent);border-radius:6px}
.cta .rk{font-family:var(--display);font-weight:900;font-size:44px;line-height:1;color:var(--accent)}
.cta .tx b{display:block;font-family:var(--display);font-weight:900;font-size:24px;text-transform:uppercase}
.cta .tx span{font-size:14px;color:var(--text-2)}
.cta .tx code{font-family:var(--mono);background:#000;color:var(--ice);padding:2px 6px;border-radius:3px}
.cta .btn{height:50px;font-size:20px}
.disclaimer{margin:40px 0 0;padding:16px 18px;border:1px solid var(--line);border-radius:6px;font-size:13px;color:var(--muted);display:flex;gap:14px;align-items:flex-start}
.disclaimer .age{flex:none;width:40px;height:40px;border-radius:50%;border:2px solid var(--muted);display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--text);font-size:14px}
.disclaimer p{margin:0;color:var(--muted)}
.faq details{border:1px solid var(--line);border-radius:6px;margin:0 0 10px;background:var(--bg-2)}
.faq summary{cursor:pointer;list-style:none;padding:16px 50px 16px 18px;font-family:var(--display);font-weight:800;font-size:20px;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:18px;top:12px;font-family:var(--mono);font-size:24px;color:var(--accent)}
.faq details[open] summary::after{content:"–"}
.faq details>div{padding:0 18px 6px}
.company{margin:24px 0;padding:18px 20px;border:1px solid var(--line);border-radius:6px;background:var(--surface);font-size:15px;color:var(--text-2)}
.company b{color:var(--text)}

/* driver cards */
.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 22px}
.dcard{background:var(--bg-2);border:1px solid var(--line);border-top:5px solid var(--c,#fff);border-radius:6px;padding:16px 18px;display:flex;flex-direction:column;gap:8px}
.dcard .top{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.dcard .top b{font-family:var(--display);font-weight:900;font-size:24px;text-transform:uppercase}
.dcard .num{font-family:var(--display);font-weight:900;font-size:34px;color:var(--c,#fff);line-height:1}
.dcard .meta{font-family:var(--mono);font-size:12px;color:var(--muted)}
.dcard p{margin:0;font-size:15px}
.dcard .angle{font-size:14px;color:var(--ice);font-family:var(--body)}

/* sidebar */
.side{position:sticky;top:90px;display:flex;flex-direction:column;gap:18px}
.side-box{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:16px 18px}
.side-box .h4{margin:0 0 10px;font-family:var(--mono);font-weight:400;font-size:12px;letter-spacing:2px;color:var(--ice)}
.toc{list-style:none;margin:0;padding:0;max-height:46vh;overflow:auto}
.toc a{display:block;padding:7px 0;font-size:14px;line-height:1.35;text-decoration:none;color:var(--text-2);border-bottom:1px solid #232936}
.toc a:hover{color:var(--ice)}
.side-cta{background:linear-gradient(160deg,#2A160B,#1B1C1E 70%);border-color:#4A2A14}
.side-cta .big{font-family:var(--display);font-weight:900;font-size:30px;line-height:1;text-transform:uppercase;margin:4px 0 8px}
.side-cta p{margin:0 0 12px;font-size:14px;color:var(--text-2)}
.side-cta .btn{width:100%;height:48px;font-size:19px}
.mini-cd{font-family:var(--mono)}
.mini-cd .gp{font-family:var(--display);font-weight:800;font-size:20px;text-transform:uppercase}
.mini-cd .t{font-size:26px;margin:4px 0}
.mini-cd small{color:var(--muted)}


/* ---------- LIVE BLOCK ---------- */
.live-block{background:var(--bg-2);border:1px solid var(--line);border-top:6px solid var(--accent);border-radius:6px;margin:0 0 28px;overflow:hidden;
  background-image:repeating-linear-gradient(90deg,transparent 0 79px,rgba(255,255,255,.015) 79px 80px)}
.lb-head{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:14px 22px;border-bottom:1px solid var(--line);background:#0A0C11}
.lb-live{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:13px;letter-spacing:2px;color:var(--accent)}
.lb-live i{width:9px;height:9px;border-radius:50%;background:var(--accent);animation:lbpulse 1.4s infinite}
@keyframes lbpulse{0%{box-shadow:0 0 0 0 rgba(255,106,19,.7)}70%{box-shadow:0 0 0 10px rgba(255,106,19,0)}100%{box-shadow:0 0 0 0 rgba(255,106,19,0)}}
.lb-rnd{font-size:13px;color:var(--muted);margin-right:auto}
.lb-badge{font-family:var(--mono);font-size:11px;letter-spacing:1px;text-transform:uppercase;padding:4px 8px;border:1px solid var(--line-2);border-radius:3px;color:var(--text-2)}
.lb-badge.red{border-color:var(--accent);color:var(--text);background:rgba(255,106,19,.15)}
.lb-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:28px;padding:22px}
.article .lb-name,.lb-name{margin:0;font-family:var(--display);font-weight:900;font-size:44px;line-height:.95;text-transform:uppercase;color:var(--text)}
.article .lb-venue,.lb-venue{margin:8px 0 0;font-size:15px;color:var(--text-2)}
.article .lb-race,.lb-race{margin:6px 0 0;font-size:15px;color:var(--ice)}
.lb-next{margin-top:20px;padding:14px 16px;background:#000;border:1px solid var(--line);border-radius:6px}
.lb-next small{display:block;font-size:11px;letter-spacing:2px;color:var(--muted)}
.lb-next>b{display:block;font-family:var(--display);font-weight:800;font-size:24px;text-transform:uppercase;margin:2px 0 10px}
.lb-next .cd b{font-size:30px}
.lb-tz{margin-bottom:10px;flex-wrap:wrap}.lb-tz .tz-btn{flex:1 1 auto;min-height:40px;padding:4px 8px;font-size:13px}
.lb-table table{width:100%;border-collapse:collapse;font-size:15px;min-width:0}
.lb-table th{font-family:var(--mono);font-weight:400;font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--ice);text-align:left;padding:8px 10px;border-bottom:2px solid var(--accent);background:transparent}
.lb-table td{padding:10px;border-bottom:1px solid #1E2430;color:var(--text-2);text-align:left}
.lb-table td:first-child{font-family:var(--mono);color:var(--text-2)}
.lb-table tr.done td{opacity:.45}
.lb-table tr.next td{background:rgba(127,214,255,.07)}
.lb-table tr.live td{background:rgba(255,106,19,.14)}
.lb-table tr.is-race td b{color:var(--text)}
.lb-table tr.is-race td{border-bottom:0}
.lb-live.idle{color:var(--ice)}.lb-live.idle i{background:var(--ice);animation:none}
.lb-table td.mono,.lb-table td:first-child{white-space:nowrap}
.lb-chip{display:inline-block;font-family:var(--mono);font-size:11px;letter-spacing:1px;padding:3px 7px;border-radius:3px;background:var(--ice);color:#111}
.lb-chip.live{background:var(--accent);color:var(--text);animation:lbpulse 1.4s infinite}
.lb-foot{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;padding:14px 22px;border-top:1px solid var(--line)}
.lb-foot>span:first-child{font-size:12px;color:var(--muted)}
.lb-links{display:flex;gap:10px;flex-wrap:wrap}.lb-links .btn{height:44px;font-size:17px;padding:0 18px;white-space:nowrap}
@media (max-width:900px){.lb-main{grid-template-columns:minmax(0,1fr);padding:16px;gap:18px}.article .lb-name,.lb-name{font-size:34px}.lb-head,.lb-foot{padding:12px 16px}}
@media (max-width:520px){.lb-table table{font-size:13px}.lb-table td,.lb-table th{padding:8px 5px}.lb-table .z{display:none}.lb-chip{font-size:10px;padding:2px 5px}.lb-links{width:100%}.lb-links .btn{flex:1 1 0;font-size:15px;padding:0 10px;white-space:nowrap}}

/* ===== visual layer (visuals.py) ===== */
/* flags */
.flag{display:inline-block;width:20px;height:15px;object-fit:cover;border-radius:2px;vertical-align:-2px;margin-right:8px;box-shadow:0 0 0 1px rgba(255,255,255,.12)}
.dd-menu a,.mobile-nav a{display:flex;align-items:center}
.th-flag{display:inline-flex;align-items:center;white-space:nowrap}
.dcard .meta .flag{width:16px;height:12px;margin-right:6px;vertical-align:-1px}
/* circuits */
.trk-cell{display:inline-flex;align-items:center;gap:12px}
.trk{flex:none;opacity:.92}
.lb-map{display:block;width:150px;height:auto;margin:0 0 12px;opacity:.95}
.race{position:relative}
.race-map{position:absolute;right:14px;top:16px;width:56px;height:auto;opacity:.55}
.race .r,.race b{padding-right:58px}
.race b{position:relative}
/* icons */
.ico{width:22px;height:22px;flex:none}
.article h3.h-ico{display:flex;align-items:center;gap:12px}
.article h3.h-ico .ico{width:30px;height:30px;color:var(--accent)}
.article h3.h-bk{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.article h3 .bk{display:inline-block;height:26px;max-width:160px;margin:0}
.article li.li-ico{padding-left:44px}
.article li.li-ico::before{display:none}
.article li.li-ico>.ico,.article li.li-ico>.flag{position:absolute;left:4px;top:11px;color:var(--accent);margin:0}
.article li.li-ico>.flag{top:15px}
/* table marks */
.pays{display:inline-flex;gap:6px;margin-right:10px;vertical-align:-7px}
.pay{height:24px;width:auto;max-width:74px;object-fit:contain;background:#fff;border-radius:4px;padding:3px 5px}
.bk{display:block;height:20px;width:auto;max-width:120px;object-fit:contain;object-position:left center;margin:0 0 6px}
.rflag{vertical-align:-5px;margin-right:10px}
/* figures */
.fig{margin:22px 0 28px;padding:18px;background:var(--bg-2);border:1px solid var(--line)}
.fig figcaption{margin-top:12px;font-family:var(--mono);font-size:12px;color:var(--muted)}
.wk{display:grid;gap:12px}
.wk-row{display:grid;grid-template-columns:150px repeat(3,minmax(0,1fr));gap:8px;align-items:stretch}
.wk-row>b{font-family:var(--display);font-weight:800;font-size:18px;text-transform:uppercase;align-self:center}
.wk-row.spr>b{color:var(--ice)}
.wk-day{background:var(--surface);padding:10px;display:flex;flex-direction:column;gap:6px;min-width:0}
.wk-day small{font-family:var(--mono);color:var(--muted);font-size:11px;letter-spacing:.1em}
.wk-s{font-size:14px;padding:4px 8px;border-left:3px solid var(--line-2);background:var(--surface-2)}
.wk-s.q{border-color:var(--ice)}.wk-s.s{border-color:var(--blue)}.wk-s.r{border-color:var(--accent);font-weight:700}
.quali{display:grid;gap:10px}
.q-st{display:grid;grid-template-columns:minmax(0,1fr);gap:4px}
.q-bar{height:30px;background:linear-gradient(90deg,var(--accent),#8A3509);display:flex;align-items:center;padding:0 12px;transform:skewX(-12deg);transform-origin:left}
.q-bar b{transform:skewX(12deg);font-family:var(--display);font-weight:900;font-size:18px}
.q-st span{font-size:14px;color:var(--text-2)}
.tyres{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:flex-start}
.tyres figcaption{flex-basis:100%}
.ty{display:flex;flex-direction:column;align-items:center;gap:4px;width:76px;text-align:center}
.ty b{font-size:14px}.ty small{font-family:var(--mono);font-size:11px;color:var(--muted);text-transform:uppercase}
.mg-row{display:grid;grid-template-columns:110px minmax(0,1fr) 190px;gap:12px;align-items:center;margin-bottom:10px}
.mg-bar{display:flex;height:30px;position:relative;background:var(--surface)}
.mg-bar i{font-style:normal;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:12px;background:var(--surface-2);border-right:2px solid var(--bg-2)}
.mg-bar::after{content:"";position:absolute;top:-4px;bottom:-4px;left:calc(100% * 100 / var(--tot,108.1));border-left:2px dashed var(--ice)}
.mg-tot{font-size:13px;color:var(--ice)}
.mg-lbl{font-size:13px}
.fm-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.fm{background:var(--surface);padding:10px 14px;min-width:110px}
.fm small{display:block;font-family:var(--mono);font-size:11px;color:var(--muted);text-transform:uppercase}
.fm b{font-size:26px}
.fm-eq{font-family:var(--display);font-size:26px;color:var(--accent)}
.fm-note{margin:12px 0 0;font-size:13px;color:var(--text-2)}
.dr-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.dr{background:var(--surface);padding:12px 16px;min-width:150px}
.dr small{display:block;font-family:var(--mono);font-size:11px;color:var(--muted)}
.dr b{font-size:34px;display:block;line-height:1.1}
.dr span{font-size:13px;color:var(--text-2)}
.dr-arrow{display:flex;flex-direction:column;align-items:center;color:var(--accent);font-family:var(--mono);font-size:12px}
.tile-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}
.tile{background:var(--surface);padding:14px;display:flex;flex-direction:column;gap:10px}
.tile .ico{width:28px;height:28px;color:var(--accent)}
.tile b{font-size:14px;line-height:1.3}
@media (max-width:700px){
  .wk-row{grid-template-columns:repeat(3,minmax(0,1fr))}.wk-row>b{grid-column:1/-1}
  .mg-row{grid-template-columns:minmax(0,1fr)}
  .lb-map{width:120px}
  .race-map{width:64px}
}

@media (max-width:520px){
  .wk-row{grid-template-columns:minmax(0,1fr)}
  .wk-day{flex-direction:row;flex-wrap:wrap;align-items:center}
  .wk-day small{width:36px}
}
td .flag{margin-right:6px}

.cta-logo{display:block;height:22px;width:auto;margin-bottom:6px}
.side-cta .big{display:flex;align-items:center;gap:10px}
.side-cta .big img{height:28px;width:auto}

/* phone screenshots */
.shots{background:transparent;border:0;padding:0}
.ph-row{display:flex;flex-wrap:wrap;gap:22px;justify-content:center}
.ph{width:240px;max-width:100%;display:flex;flex-direction:column;gap:10px}
.ph-frame{border:7px solid #050505;border-radius:30px;overflow:hidden;background:#050505;box-shadow:0 0 0 1px #323A49,0 18px 40px rgba(0,0,0,.45)}
.ph-frame img{display:block;width:100%;height:auto}
.ph span{font-family:var(--mono);font-size:12px;line-height:1.45;color:var(--muted)}
@media (max-width:520px){.ph-row{gap:12px}.ph-row .ph{width:calc(50% - 6px)}.ph-row .ph:only-child{width:230px}.ph-frame{border-width:5px;border-radius:22px}.ph span{font-size:11px}}

.pc-wrap{overflow-x:auto}
.pchart svg{display:block;width:100%;min-width:560px;height:auto}
.pc-grid{stroke:#262C38;stroke-width:1}
.pc-ax{fill:#98A1B2;font-family:var(--mono);font-size:11px}
.pc-lab{font-family:var(--mono);font-size:12px;font-weight:700}
.pc-v{fill:#C3C9D4;font-weight:400}

.related{margin:34px 0;padding:18px 20px;background:var(--bg-2);border:1px solid var(--line);border-left:4px solid var(--accent)}
.related .h4{margin:0 0 10px;font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ice)}
.article .related ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:4px 18px;margin:0}
.article .related li{padding:6px 0 6px 20px;border:0}
.article .related li::before{top:14px;width:10px;height:6px}
.related a{color:var(--text);text-decoration:none;border-bottom:1px solid var(--accent)}
.related a:hover{color:var(--ice)}

/* contact form */
.cform{margin:24px 0 8px;padding:22px;background:var(--bg-2);border:1px solid var(--line);display:grid;gap:14px;max-width:640px}
.cform h3{margin:0}
.cf-row{display:grid;gap:6px}
.cf-row label{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-2)}
.cf-row small{text-transform:none;letter-spacing:0;color:var(--muted)}
.cform input[type=text],.cform input[type=email],.cform input[type=url],.cform select,.cform textarea{width:100%;font:inherit;font-size:16px;color:var(--text);background:var(--surface);border:1px solid var(--line-2);border-radius:4px;padding:10px 12px}
.cform textarea{resize:vertical;min-height:130px}
.cform :focus-visible{outline:2px solid var(--ice);outline-offset:1px}
.cf-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cf-consent{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--text-2)}
.cf-consent input{margin-top:4px;accent-color:var(--accent)}
.cform .btn{justify-self:start;border:0;cursor:pointer}
.cf-status{margin:0;font-size:14px;color:var(--ice);min-height:1em}
.cf-alt{margin:0;font-size:13px;color:var(--muted)}

.byline a{text-decoration:underline;text-underline-offset:2px}
.race-odds{margin:22px 0}.race-odds .ro-head{font-size:12px;letter-spacing:1.5px;color:var(--ice);margin:0 0 8px}.race-odds .ro-note{font-size:14px;color:var(--muted);margin:8px 0 0}
/* race-odds: all columns shown on mobile */
.article .race-odds table{min-width:0}@media (max-width:600px){.race-odds th,.race-odds td{padding-left:10px;padding-right:10px}}
/* editorial images */
.fig.photo{padding:0;background:none;border:0}
.fig.photo img{width:100%;height:auto;border-radius:12px;border:1px solid var(--line)}
.fig.photo.tall{max-width:400px;margin-left:auto;margin-right:auto}
.fig.photo figcaption{margin-top:10px}

/* ===== hero visuals & tools ===== */
.page-hero.has-vis::after{display:none}
.page-hero.has-vis .wrap{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:28px 40px;align-items:center}
.page-hero.has-vis h1{font-size:58px}
.hv{margin:0;background:linear-gradient(160deg,var(--surface),var(--bg-2));border:1px solid var(--line);border-radius:16px;padding:18px 20px;position:relative;overflow:hidden}
.hv .mono,.hv figcaption .mono{font-family:var(--mono);font-size:11px;letter-spacing:2px;color:var(--muted)}
.hv figcaption{font-size:14px;color:var(--text-2);line-height:1.45}

/* lights out gantry (home) */
.gantry{display:flex;align-items:center;gap:16px;height:40px}
.pods{display:flex;gap:8px;padding:6px 8px;background:#050608;border:1px solid var(--line-2);border-radius:8px}
.pod{display:flex;gap:4px}
.pod i{width:13px;height:13px;border-radius:50%;background:#2A0B0B;box-shadow:inset 0 0 0 1px #3B1414}
.gantry .lo{font-size:12px;letter-spacing:3px;color:var(--muted);opacity:0}
.gantry.run .pod i{animation:lamp 3.6s steps(1,end) forwards}
.gantry.run .pod:nth-child(1) i{animation-name:lamp1}.gantry.run .pod:nth-child(2) i{animation-name:lamp2}.gantry.run .pod:nth-child(3) i{animation-name:lamp3}
.gantry.run .pod:nth-child(4) i{animation-name:lamp4}.gantry.run .pod:nth-child(5) i{animation-name:lamp5}
@keyframes lamp1{0%{background:#2A0B0B}12%,82%{background:#FF2B2B;box-shadow:0 0 12px #FF2B2B}83%,100%{background:#2A0B0B;box-shadow:inset 0 0 0 1px #3B1414}}
@keyframes lamp2{0%,26%{background:#2A0B0B}27%,82%{background:#FF2B2B;box-shadow:0 0 12px #FF2B2B}83%,100%{background:#2A0B0B;box-shadow:inset 0 0 0 1px #3B1414}}
@keyframes lamp3{0%,41%{background:#2A0B0B}42%,82%{background:#FF2B2B;box-shadow:0 0 12px #FF2B2B}83%,100%{background:#2A0B0B;box-shadow:inset 0 0 0 1px #3B1414}}
@keyframes lamp4{0%,56%{background:#2A0B0B}57%,82%{background:#FF2B2B;box-shadow:0 0 12px #FF2B2B}83%,100%{background:#2A0B0B;box-shadow:inset 0 0 0 1px #3B1414}}
@keyframes lamp5{0%,71%{background:#2A0B0B}72%,82%{background:#FF2B2B;box-shadow:0 0 12px #FF2B2B}83%,100%{background:#2A0B0B;box-shadow:inset 0 0 0 1px #3B1414}}
.gantry.run .lo{animation:lo 3.6s forwards}
@keyframes lo{0%,82%{opacity:0}83%{opacity:1;color:var(--lime)}100%{opacity:1;color:var(--lime)}}
.gantry.done .lo{opacity:1;color:var(--lime)}

/* track */
.hv-track{display:grid;grid-template-columns:1fr;gap:6px;min-height:290px}
.trk-svg{width:100%;height:190px;overflow:visible}
.trk-svg path{fill:none;stroke-linecap:round;stroke-linejoin:round}
.tk-base{stroke:var(--line-2);stroke-width:7}
.tk-draw{stroke:var(--text);stroke-width:2.4;stroke-dasharray:1;stroke-dashoffset:1;animation:tkdraw 2s ease-out .2s forwards}
@keyframes tkdraw{to{stroke-dashoffset:0}}
.tk-s{stroke-width:3.4;stroke-dasharray:1 2;opacity:0;animation:tkfade .6s ease 2s forwards}
.tk-s.s1{stroke:var(--accent)}.tk-s.s2{stroke:var(--ice);stroke-dashoffset:-1}.tk-s.s3{stroke:var(--lime);stroke-dashoffset:-2}
@keyframes tkfade{to{opacity:1}}
.tk-car{fill:#fff;filter:drop-shadow(0 0 5px var(--accent))}
.hv-track figcaption{display:flex;flex-direction:column;gap:2px}
.hv-track figcaption b{font-family:var(--display);font-weight:900;font-size:28px;line-height:1;text-transform:uppercase}
.sec-key{display:flex;gap:6px;align-items:center;margin-top:6px}
.sec-key i{display:inline-block;width:14px;height:4px;border-radius:2px;margin-left:6px}
.sec-key .k1{background:var(--accent);margin-left:0}.sec-key .k2{background:var(--ice)}.sec-key .k3{background:var(--lime)}

/* odds buttons (ticker, race-week table) */
.ob{cursor:pointer;font-family:var(--mono);font-weight:600;font-size:15px;color:var(--text);background:var(--bg-2);border:1px solid var(--line-2);border-radius:8px;padding:6px 12px;min-width:64px;min-height:36px;transition:border-color .15s,background .15s}
.ob:hover,.ob:focus-visible{border-color:var(--accent);background:#21140C;outline:none}
.ob.best{border-color:var(--lime);color:var(--lime)}
.ob.is-on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.race-odds{margin:18px 0 26px}
.ro-head{font-size:12px;letter-spacing:2px;color:var(--ice);margin:0 0 8px}
.article .ro-t td{vertical-align:middle}
.ro-t small{color:var(--muted)}
.ro-note{font-size:14px;color:var(--muted)}

/* ticker */
.ticker{position:relative;z-index:1;border-top:1px solid var(--line);background:#06080B;overflow:hidden;height:52px}
.tk-run{display:flex;width:max-content;height:52px;align-items:center;animation:tkrun 60s linear infinite}
.ticker:hover .tk-run,.ticker:focus-within .tk-run{animation-play-state:paused}
@keyframes tkrun{to{transform:translateX(-50%)}}
.tk-g{display:flex;align-items:center;gap:18px;padding-right:40px}
.tk-l{font-family:var(--mono);font-weight:400;font-size:11px;letter-spacing:2px;color:var(--accent);white-space:nowrap}
.tk-i{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:13px;color:var(--text-2);white-space:nowrap}
.ob-t{min-height:32px;padding:3px 9px;font-size:14px;min-width:0}
.tk-i .up{color:var(--accent);font-style:normal;font-size:11px}.tk-i .dn{color:var(--lime);font-style:normal;font-size:11px}.tk-i .eq{color:var(--muted);font-style:normal;font-size:8px}

/* converter */
.conv{background:var(--surface);border:1px solid var(--line);border-left:6px solid var(--ice);border-radius:12px;padding:16px 18px;margin:18px 0 24px}
.conv-h{font-family:var(--mono);font-size:11px;letter-spacing:2px;color:var(--ice);margin-bottom:10px}
.conv-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.conv label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}
.conv input{width:100%;min-height:46px;background:var(--bg-2);border:2px solid var(--line-2);border-radius:8px;color:var(--text);font-family:var(--mono);font-size:20px;font-weight:600;padding:6px 10px}
.conv input:focus{outline:none;border-color:var(--accent)}
.conv-n{margin:10px 0 0;font-size:13px;color:var(--muted)}
.page-hero .conv{margin:0;border-left-width:1px;border-top:6px solid var(--ice)}
.conv-c .conv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}

/* standings bars */
.hb-top{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.hb-top b{color:var(--text);font-weight:600}
.bars{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:8px}
.bars li{display:grid;grid-template-columns:42px 1fr 46px 92px;gap:10px;align-items:center;margin:0;padding:0}
.bars li::before{display:none}
.b-n{font-size:13px!important;color:var(--text)!important;letter-spacing:1px!important}
.b-bar{height:14px;background:var(--bg-2);border-radius:3px;overflow:hidden}
.b-bar i{display:block;height:100%;width:var(--w);background:var(--c);transform-origin:left;animation:bgrow 1.2s cubic-bezier(.2,.8,.2,1) both}
.bars li:nth-child(2) i{animation-delay:.08s}.bars li:nth-child(3) i{animation-delay:.16s}.bars li:nth-child(4) i{animation-delay:.24s}.bars li:nth-child(5) i{animation-delay:.32s}.bars li:nth-child(6) i{animation-delay:.4s}
@keyframes bgrow{from{transform:scaleX(0)}}
.b-p{font-family:var(--mono);font-size:15px;text-align:right}
.b-s{font-size:10px!important;letter-spacing:1px!important;text-align:right}
.bars li.alive .b-s{color:var(--lime)!important}.bars li.out{opacity:.55}

/* h2h */
.hh-h{margin-bottom:12px}
.hh-h b{color:var(--text);font-weight:600}
.hh-g{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:start}
.hh-vs{font-family:var(--display);font-weight:900;font-size:26px;color:var(--accent);align-self:center}
.hh-s select{width:100%;min-height:44px;background:var(--bg-2);color:var(--text);border:2px solid var(--line-2);border-radius:8px;font-family:var(--body);font-size:15px;font-weight:600;padding:6px 8px}
.hh-pos{display:block;font-family:var(--display);font-weight:900;font-size:44px;line-height:1;margin:10px 0 6px}
.hh-s[data-side="1"] .hh-pos{color:var(--ice)}.hh-s[data-side="0"] .hh-pos{color:var(--accent)}
.hh-s dl{display:grid;grid-template-columns:auto auto;gap:3px 10px;margin:0;font-size:14px}
.hh-s dt{color:var(--muted)}.hh-s dd{margin:0;font-family:var(--mono);font-weight:600;text-align:right}
.hh-bar{height:8px;background:var(--ice);border-radius:4px;overflow:hidden;margin:14px 0 8px}
.hh-bar i{display:block;height:100%;background:var(--accent);transition:width .5s}

/* gauge */
.hv-gauge svg{width:100%;height:170px}
.g-arc{fill:none;stroke:var(--line-2);stroke-width:14}
.g-red{fill:none;stroke:var(--motogp);stroke-width:14;stroke-dasharray:1;stroke-dashoffset:1;animation:gfill 1.6s cubic-bezier(.2,.8,.2,1) .2s forwards}
@keyframes gfill{to{stroke-dashoffset:.086}}
.g-ticks line{stroke:var(--muted);stroke-width:2}.g-ticks text{fill:var(--muted);font-family:var(--mono);font-size:9px;text-anchor:middle}
.g-needle{transform-origin:120px 120px;transform:rotate(-90deg);animation:gneedle 1.6s cubic-bezier(.2,.8,.2,1) .2s forwards}
.g-needle line{stroke:var(--text);stroke-width:4;stroke-linecap:round}.g-needle circle{fill:var(--motogp)}
@keyframes gneedle{to{transform:rotate(74.6deg)}}
.hv-gauge figcaption,.hv-oval figcaption{display:flex;flex-direction:column;gap:3px}
.g-v{font-family:var(--display);font-weight:900;font-size:44px;line-height:1;color:var(--motogp)}
.hv-oval figcaption b{font-family:var(--display);font-weight:900;font-size:26px;line-height:1.05;text-transform:uppercase}

/* oval */
.hv-oval svg{width:100%;height:170px}
.o-out{fill:#10141B;stroke:var(--line-2);stroke-width:2}.o-in{fill:var(--bg-2);stroke:var(--line-2);stroke-width:2}
.o-line{fill:none;stroke:var(--line-2);stroke-width:1;stroke-dasharray:4 6}
.o-sf{stroke:#fff;stroke-width:3;stroke-dasharray:3 3}
.o-car{fill:var(--nascar)}.o-car.c2{fill:var(--accent)}.o-car.c3{fill:#fff}

/* country switcher */
.cs-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.cs-t{cursor:pointer;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:4px 10px;background:var(--bg-2);border:2px solid var(--line-2);border-radius:8px;color:var(--text-2);font-family:var(--body);font-size:14px;font-weight:600}
.cs-t .flag{width:20px;height:14px;border-radius:2px}
.cs-t[aria-selected=true]{border-color:var(--accent);color:var(--text)}
.cs-c{min-height:226px}
.cs-cur{display:flex;align-items:baseline;gap:10px}
.cs-cur b{font-family:var(--display);font-weight:900;font-size:52px;line-height:1;color:var(--accent)}
.cs-logos{display:flex;gap:6px;margin:10px 0 4px;min-height:26px}
.cs-logos img{width:34px;height:22px;object-fit:contain;background:#fff;border-radius:4px;padding:2px}
.cs-rails{margin:0 0 10px;font-size:14px;color:var(--text-2)}
.hv dl{margin:0}
.cs-c dl{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;font-size:14px}
.cs-c dt{color:var(--muted)}.cs-c dd{margin:0;font-family:var(--mono);font-weight:600;text-align:right}
.cs-go{margin-top:14px;width:100%;justify-content:center}

/* bonus calculator */
.cl-h{margin-bottom:10px;color:var(--accent)!important}
.cl-cur,.cl-row{display:flex;gap:6px;align-items:center;margin-bottom:10px}
.cl-row .mono{width:56px}
.hv-calc button{cursor:pointer;min-height:38px;padding:4px 12px;background:var(--bg-2);border:2px solid var(--line-2);border-radius:8px;color:var(--text);font-family:var(--mono);font-size:14px;font-weight:600}
.hv-calc button[aria-pressed=true]{border-color:var(--accent);background:#21140C}
.cl-in{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted);margin-bottom:10px}
.cl-in input{min-height:48px;background:var(--bg-2);border:2px solid var(--line-2);border-radius:8px;color:var(--text);font-family:var(--mono);font-size:22px;font-weight:600;padding:6px 12px}
.cl-in input:focus{outline:none;border-color:var(--accent)}
.cl-out{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:4px 0 10px!important}
.cl-out dt{grid-row:1;font-family:var(--mono);font-size:10px;letter-spacing:1px;color:var(--muted);text-transform:uppercase}
.cl-out dd{grid-row:2;margin:0;font-family:var(--display);font-weight:900;font-size:26px;line-height:1}
.cl-out dd[data-co=bonus]{color:var(--lime)}

/* guides chapter */
.hv-ch{display:flex;flex-direction:column;align-items:flex-end;background:none;border:0;padding:0}
.ch-n{font-family:var(--display);font-weight:900;font-size:200px;line-height:.8;color:transparent;-webkit-text-stroke:2px var(--ice);opacity:.9}
.page-hero.has-vis .wrap:has(.hv-ch){grid-template-columns:minmax(0,1fr) 260px}

/* bet slip (pit board) */
.slip{position:fixed;right:20px;bottom:20px;z-index:60;width:340px;max-width:calc(100vw - 24px)}
.slip[hidden]{display:none}
.sl-board{background:#050608;border:3px solid var(--accent);border-radius:14px;padding:14px 16px;box-shadow:0 24px 60px rgba(0,0,0,.6);animation:slin .25s ease-out}
@keyframes slin{from{transform:translateY(16px);opacity:0}}
.sl-top{display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:2px;color:var(--accent)}
.sl-x{cursor:pointer;width:36px;height:36px;border-radius:8px;background:var(--surface);border:1px solid var(--line-2);color:var(--text);font-size:22px;line-height:1}
.sl-sel{display:flex;flex-direction:column;margin:6px 0 10px}
.sl-sel b{font-family:var(--display);font-weight:900;font-size:30px;line-height:1;text-transform:uppercase;color:#fff}
.sl-sel span{font-size:13px;color:var(--muted)}
.sl-odd{display:flex;align-items:baseline;gap:10px;padding:8px 12px;background:#FFD400;color:#050608;border-radius:6px}
.sl-odd .mono{font-family:var(--mono);font-size:11px;letter-spacing:2px}
.sl-odd b{font-family:var(--display);font-weight:900;font-size:40px;line-height:1}
.sl-odd [data-s=pct]{margin-left:auto}
.sl-stake{margin:12px 0 8px}
.sl-stake .mono{font-family:var(--mono);font-size:11px;letter-spacing:2px;color:var(--muted)}
.sl-chips{display:flex;gap:6px;margin:6px 0}
.sl-chips button{cursor:pointer;flex:1;min-height:38px;background:var(--surface);border:1px solid var(--line-2);border-radius:8px;color:var(--text);font-family:var(--mono);font-size:13px;font-weight:600}
.sl-chips button[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}
.sl-stake input{width:100%;min-height:44px;background:var(--bg-2);border:2px solid var(--line-2);border-radius:8px;color:#fff;font-family:var(--mono);font-size:20px;font-weight:600;padding:4px 10px}
.sl-ret{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
.sl-ret div{background:var(--surface);border-radius:8px;padding:8px 10px}
.sl-ret .mono{display:block;font-family:var(--mono);font-size:10px;letter-spacing:2px;color:var(--muted)}
.sl-ret b{font-family:var(--display);font-weight:900;font-size:26px;line-height:1.1}
.sl-ret div:first-child b{color:var(--lime)}
.sl-go{width:100%;justify-content:center}
.sl-n{margin:8px 0 0;font-size:12px;color:var(--muted);line-height:1.4}

@media (max-width:1100px){.page-hero.has-vis .wrap{grid-template-columns:minmax(0,1fr) 380px}}
@media (max-width:900px){
  .page-hero.has-vis .wrap{grid-template-columns:1fr}
  .page-hero.has-vis h1{font-size:44px}
  .hv-ch{display:none}
  .page-hero.has-vis .wrap:has(.hv-ch){grid-template-columns:1fr}
  .conv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:520px){
  .page-hero.has-vis h1{font-size:36px}
  .hv{padding:14px}
  .trk-svg{height:150px}.hv-track{min-height:240px}
  .bars li{grid-template-columns:36px 1fr 40px 74px;gap:6px}
  .cl-out dd{font-size:20px}
  .slip{right:12px;left:12px;bottom:12px;width:auto}
  .sl-sel b{font-size:24px}.sl-odd b{font-size:32px}
}
@media (prefers-reduced-motion:reduce){
  .tk-draw,.tk-s,.b-bar i,.g-red,.g-needle,.gantry .lo,.gantry .pod i,.sl-board{animation:none!important}
  .tk-draw{stroke-dashoffset:0}.tk-s{opacity:1}.g-red{stroke-dashoffset:.086}.g-needle{transform:rotate(74.6deg)}.gantry .lo{opacity:1;color:var(--lime)}
  .tk-run{animation:none}.ticker{overflow-x:auto}
  .tk-car,.o-car.c2,.o-car.c3{display:none}
}

/* ===== home promo banner ===== */
.promo{position:relative;overflow:hidden;background:var(--bg-2);border-bottom:1px solid var(--line);isolation:isolate}
.pr-bg{position:absolute;inset:0;z-index:-1}
.pr-bg img{position:absolute;right:0;top:0;width:84%;height:100%;object-fit:cover;object-position:right 50%}
.pr-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,10,14,.92) 25%,rgba(8,10,14,.6) 45%,rgba(8,10,14,0) 65%),linear-gradient(0deg,var(--bg-2),transparent 25%)}
.pr-wrap{padding-top:44px;padding-bottom:44px}
.pr-text{max-width:700px;display:flex;flex-direction:column;gap:16px}
.promo h1{margin:0;font-family:var(--display);font-weight:900;font-size:64px;line-height:.92;text-transform:uppercase;text-wrap:balance}
.offer{display:flex;flex-direction:column;gap:8px;padding:16px 20px 18px;border-left:6px solid var(--accent);background:linear-gradient(90deg,rgba(255,106,19,.16),rgba(255,106,19,0));border-radius:0 12px 12px 0}
.of-tag{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.of-tag img{height:20px;width:auto}
.of-tag .mono{font-family:var(--mono);font-size:12px;letter-spacing:2px;color:var(--ice)}
.of-big{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;font-family:var(--display);font-weight:900;line-height:.9;text-transform:uppercase;font-size:104px;color:var(--accent);text-shadow:0 0 40px rgba(255,106,19,.35)}
.of-big small{font-size:32px;color:var(--text);letter-spacing:1px}
.of-big span{color:#fff}
.of-sub{font-size:16px;color:var(--text-2)}.of-sub b{color:var(--text);font-weight:600}
.pr-act{display:flex;gap:14px;align-items:stretch;flex-wrap:wrap}
.btn-xl{position:relative;overflow:hidden;height:62px;padding:0 30px;font-size:26px;letter-spacing:1px;box-shadow:0 10px 30px rgba(255,106,19,.35)}
.btn-xl::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);animation:shine 3.2s ease-in-out 1.5s infinite}
@keyframes shine{0%{left:-60%}35%,100%{left:130%}}
.code{display:flex;align-items:center;gap:10px;padding:6px 6px 6px 14px;border:2px dashed var(--line-2);border-radius:10px;background:rgba(5,6,8,.7)}
.code .mono{font-family:var(--mono);font-size:10px;letter-spacing:2px;color:var(--muted)}
.code b{font-family:var(--mono);font-size:19px;color:var(--ice);letter-spacing:.5px}
.code button{cursor:pointer;min-height:44px;padding:0 14px;border-radius:8px;border:1px solid var(--line-2);background:var(--surface);color:var(--text);font-family:var(--mono);font-size:13px}
.code button:hover{border-color:var(--ice)}
.pr-trust{display:flex;align-items:center;gap:8px 16px;flex-wrap:wrap;font-size:14px;color:var(--muted)}
.pr-trust .pays{display:flex;gap:5px}
.pr-trust .pays img{width:34px;height:22px;object-fit:contain;background:#fff;border-radius:4px;padding:2px}
.pr-trust a{color:var(--ice);text-decoration:none;font-weight:600}
.promo + .racebar{border-top:0}
@media (max-width:900px){
  .pr-bg{position:relative;height:210px;inset:auto}
  .pr-bg img{width:100%;object-position:78% 50%}
  .pr-bg::after{background:linear-gradient(0deg,var(--bg-2),transparent 55%)}
  .pr-wrap{padding-top:0;margin-top:-40px;position:relative}
  .promo h1{font-size:44px}
  .of-big{font-size:72px}.of-big small{font-size:24px}
}
@media (max-width:520px){
  .promo h1{font-size:36px}
  .of-big{font-size:56px;gap:8px}.of-big small{font-size:20px}
  .btn-xl{width:100%;justify-content:center;font-size:22px}
  .code{width:100%;justify-content:space-between}
}
@media (prefers-reduced-motion:reduce){.btn-xl::after{animation:none;display:none}}
.pr-trust .age{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;border:2px solid var(--muted);color:var(--text);font-weight:700;font-size:12px}
@media (min-width:901px) and (max-width:1250px){.pr-bg::after{background:linear-gradient(90deg,rgba(8,10,14,.94) 35%,rgba(8,10,14,.72) 58%,rgba(8,10,14,.15) 85%),linear-gradient(0deg,var(--bg-2),transparent 25%)}}


/* ===== Night Race overrides ===== */
.article h2{font-size:42px;letter-spacing:.2px;border-top:1px solid var(--line)}
.article h2::before{width:44px;height:5px;border-radius:3px;background:var(--accent)}
.article h3{font-size:27px;color:var(--ice)}
.byline{border-left-color:var(--accent);border-radius:0 8px 8px 0}
.article ul li::before{width:8px;height:8px;top:19px;left:6px;border-radius:50%}
.article ol li::before{background:var(--accent);color:var(--accent-ink);border-radius:6px}
.table-wrap{border-radius:var(--radius)}
.cta{background:linear-gradient(90deg,#2A160B,#141821 60%);border-radius:var(--radius)}
.side-box{border-radius:12px}
.side-cta{background:linear-gradient(160deg,#2A160B,#141821 70%)}
.faq details{border-radius:10px}
.faq summary{font-size:21px}
.disclaimer{border-radius:var(--radius)}
.live-block{border-radius:14px;border-top-width:4px}
.lb-next{border-radius:10px;background:var(--bg-2)}
.related{border-radius:0 10px 10px 0}
.fig{border-radius:12px}
.wk-day,.wk-s,.tile,.fm,.dr{border-radius:8px}
.q-bar{transform:none;border-radius:6px}.q-bar b{transform:none}
.mini-cd .t{font-size:24px}
.side .tz-row .tz-btn{flex:1 1 auto;min-height:40px;padding:4px 8px;font-size:13px}
.lb-table th{border-bottom-color:var(--accent)}

/* responsive */
@media (max-width:1100px){
  .layout{grid-template-columns:minmax(0,1fr)}
  .side{position:static}
  .foot-grid{grid-template-columns:repeat(2,1fr)}
  .nav{display:none}.burger{display:block}
}
@media (max-width:900px){
  .wrap{padding:0 16px}
  body{font-size:16px}
  .hero .wrap{padding-top:32px;padding-bottom:36px;gap:26px}
  .hero h1{font-size:60px}
  .page-hero h1{font-size:42px}
  .page-hero::after{width:110px}
  .article h2{font-size:32px}
  .cards{grid-template-columns:minmax(0,1fr)}
  .cta{grid-template-columns:1fr}.cta .rk{display:none}
  .header-cta{height:40px;padding:0 12px;font-size:16px}
  .racebar .cd{grid-template-columns:repeat(4,minmax(0,1fr));width:100%}
  .racebar .rb-name{width:100%}
  .series .wrap>h2{font-size:32px}
}
@media (max-width:520px){
  .foot-grid{grid-template-columns:1fr}
  .mobile-nav{grid-template-columns:1fr}
  .logo .wm{font-size:22px}
  .hero h1{font-size:50px}
  .header-cta{display:none}
}
.article>p.byline{font-size:13px;color:var(--muted);line-height:1.6}
.article>p.byline+p{font-size:19px;color:var(--text)}
.tz-box .tz-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
.tz-box .tz-btn{font-size:14px;padding:6px 8px}
.dated{display:contents}
.live-note{display:flex;align-items:center;gap:8px;margin:-12px 0 22px;font-family:var(--mono);font-size:12px;color:var(--muted)}
.live-note .dot{width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 3px rgba(182,240,74,.18)}

