@charset "UTF-8";

:root { --paper:#0f212e; --surface:#1a2c38; --raised:#213743; --ink:#f5f8fa; --accent:#00e701; --muted:#b1bdc6; --line:#2b414e; --body:Arial,"Helvetica Neue",sans-serif; color-scheme:dark; }
* { box-sizing:border-box; }
[hidden] { display:none!important; }
html { scroll-behavior:smooth; scroll-padding-top:24px; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--body); -webkit-font-smoothing:antialiased; }
::selection { background:var(--accent); color:#062b11; }
a { color:inherit; text-decoration:none; }
button,input { font:inherit; }
button { cursor:pointer; }
button:disabled { cursor:not-allowed; opacity:.6; }
.auth-form[aria-busy="true"] button:disabled { cursor:progress; }
button,a { -webkit-tap-highlight-color:transparent; }
a:focus-visible,button:focus-visible,input:focus-visible { outline:2px solid #61ff73; outline-offset:4px; }
h1,h2,h3,p { margin-top:0; }
h1,h2,h3 { font-weight:700; letter-spacing:-.035em; }
.skip-link { position:fixed; top:12px; left:12px; padding:12px 18px; z-index:10; background:var(--accent); color:#062b11; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.skip-link:focus { width:auto; height:auto; overflow:visible; clip-path:none; }
.site-header { max-width:1184px; min-height:84px; margin:auto; padding:18px 32px; display:flex; align-items:center; gap:46px; border-bottom:1px solid var(--line); }
.brand { display:inline-flex; font-size:25px; letter-spacing:-1px; font-weight:800; white-space:nowrap; }
.brand-period { color:var(--accent); }
.site-nav { display:flex; align-items:center; gap:28px; font-size:12px; font-weight:700; color:var(--muted); }
.site-nav a { padding:12px 0; }
.site-nav a:hover { color:var(--ink); }
.header-actions { display:flex; align-items:center; gap:21px; margin-left:auto; }
.launch-status { display:inline-flex; align-items:center; gap:7px; color:var(--muted); font-size:10px; white-space:nowrap; }
.status-dot { display:inline-block; width:5px; height:5px; border-radius:50%; background:var(--accent); flex-shrink:0; }
.header-login { padding:12px 0; border:0; background:transparent; color:var(--ink); font-size:12px; font-weight:700; white-space:nowrap; }
.header-login:hover { color:var(--accent); }
.menu-toggle { display:none; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:24px; min-height:46px; padding:14px 21px; border:1px solid transparent; border-radius:6px; font-size:12px; font-weight:700; line-height:1.3; transition:background .2s; }
.button-small { min-height:40px; padding:11px 18px; gap:12px; font-size:11px; white-space:nowrap; }
.button-dark,.button-lime { background:var(--accent); color:#063710; }
.button-dark:hover,.button-lime:hover { background:#31f632; }
.button-outline { background:var(--raised); color:var(--ink); border-color:var(--line); }
.button-outline:hover { background:#2b4554; }
.button span { font-size:18px; font-weight:400; line-height:1; }
.hero { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); align-items:center; gap:54px; max-width:1184px; margin:auto; padding:66px 32px 55px; }
.hero-copy { min-width:0; }
.eyebrow { display:flex; align-items:center; gap:9px; margin:0 0 20px; color:var(--muted); font-size:11px; font-weight:700; letter-spacing:.35px; }
h1 { font-size:clamp(40px,4.7vw,62px); line-height:1.08; margin-bottom:24px; }
.hero-description { max-width:390px; color:var(--muted); font-size:14px; line-height:1.8; margin-bottom:26px; }
.hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:16px 26px; }
.hero-more { color:var(--muted); font-size:12px; font-weight:700; padding:12px 0; }
.hero-more:hover { color:var(--ink); }
.hero-more span { margin-left:7px; }
.hero-footnote { margin:23px 0 0; color:#8195a3; font-size:11px; }
.hero-art { position:relative; background:linear-gradient(140deg,#1a2c38,#132734); border:1px solid #263c49; border-radius:12px; width:100%; max-width:470px; overflow:hidden; }
.sport-visual { display:block; width:100%; }
.art-caption { position:absolute; bottom:20px; left:0; right:0; display:flex; justify-content:center; align-items:center; gap:8px; color:#95aab8; font-size:10px; }
.section-shell { max-width:1184px; margin:auto; padding:28px 32px; }
.vision { display:flex; align-items:flex-start; justify-content:space-between; gap:40px; border-top:1px solid var(--line); }
.vision h2 { flex:1; font-size:22px; margin:5px 0 0; line-height:1.35; }
.vision p { flex:1; max-width:480px; font-size:13px; line-height:1.8; color:var(--muted); margin:0; }
.lineup { padding-top:16px; padding-bottom:40px; }
.section-heading { font-size:15px; letter-spacing:-.02em; margin:0 0 18px; color:var(--muted); }
.feature-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.feature-card { display:flex; align-items:flex-start; gap:17px; padding:25px 23px; background:var(--surface); border:1px solid #243a47; border-radius:8px; }
.feature-card>svg { width:31px; height:31px; flex-shrink:0; margin-top:1px; fill:none; stroke:#85a0b1; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.feature-card h3 { font-size:14px; letter-spacing:0; margin-bottom:10px; }
.feature-card p { font-size:11px; line-height:1.8; color:var(--muted); margin:0; }
.closing { display:flex; align-items:center; justify-content:space-between; gap:30px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding-top:28px; padding-bottom:28px; }
.closing h2 { font-size:22px; line-height:1.35; margin-bottom:8px; }
.closing p { color:var(--muted); font-size:12px; margin:0; }
.site-footer { max-width:1184px; margin:auto; padding:27px 32px 35px; display:flex; align-items:center; gap:24px; }
.footer-brand { font-size:18px; }
.site-footer p { color:#8aa0af; font-size:10px; margin:0; }
.footer-note { color:#8aa0af; font-size:10px; margin-left:auto; }
.footer-links { display:flex; gap:20px; margin-left:auto; }
.footer-links button { border:0; padding:7px 0; background:transparent; color:var(--muted); font-size:10px; }
.footer-links button:hover { color:var(--ink); }
.noscript-note { max-width:1184px; margin:0 auto; padding:16px 32px; font-size:12px; color:var(--muted); line-height:1.7; }

.site-dialog { position:fixed; width:min(100% - 32px,480px); max-height:calc(100% - 40px); margin:auto; padding:34px; border:1px solid #365160; border-radius:12px; background:var(--surface); color:var(--ink); box-shadow:0 24px 90px #0008; overflow:auto; overscroll-behavior:contain; }
.site-dialog::backdrop { background:#05101bc9; backdrop-filter:blur(4px); }
.site-dialog:not([open]) { display:none; }
.dialog-close { position:absolute; right:13px; top:11px; display:grid; place-items:center; width:34px; height:34px; padding:0; background:transparent; border:0; border-radius:5px; color:#a8bcc9; font-size:27px; line-height:1; }
.dialog-close:hover { background:var(--raised); color:var(--ink); }
.dialog-eyebrow { margin:0 40px 12px 0; font-size:10px; letter-spacing:.2px; }
.dialog-title { font-size:27px; line-height:1.25; margin:0 0 12px; text-transform:none; }
.dialog-description { font-size:12px; line-height:1.7; color:var(--muted); margin-bottom:20px; }
.auth-tabs { display:flex; gap:4px; margin-bottom:19px; padding:4px; background:var(--paper); border-radius:6px; }
.auth-tab { flex:1; padding:10px; border:0; border-radius:4px; background:transparent; color:var(--muted); font-size:12px; font-weight:700; }
.auth-tab[aria-selected="true"] { background:var(--raised); color:var(--ink); }
.config-note { padding:12px 13px; background:#213743; border:1px solid #34515f; border-radius:5px; color:#c2d1da; font-size:11px; line-height:1.6; margin-bottom:20px; }
.form-field { display:grid; gap:7px; margin-bottom:16px; }
.form-field>label { font-size:11px; font-weight:700; color:#c5d2da; }
.form-field>input { width:100%; min-height:44px; padding:11px 12px; border:1px solid #3b5260; border-radius:5px; background:var(--paper); color:var(--ink); font-size:14px; }
.form-field>input::placeholder { color:#7f96a6; }
.form-field>input:focus { border-color:#71a387; }
.field-hint { display:block; font-size:10px; line-height:1.65; color:#a5bac8; }
.check-field { display:grid; grid-template-columns:18px 1fr; align-items:start; gap:10px; margin:17px 0; }
.check-field>input { width:17px; height:17px; margin:2px 0 0; accent-color:var(--accent); }
.check-field>label { font-size:11px; line-height:1.7; color:#c2d0d9; }
.check-field .field-hint { margin-top:4px; }
.optional-check { padding-top:15px; border-top:1px solid var(--line); }
.inline-link { display:inline; padding:0; border:0; background:transparent; color:inherit; font-size:inherit; line-height:inherit; font-weight:700; text-decoration:underline; text-underline-offset:3px; }
.inline-link:hover { color:var(--ink); }
.form-submit { width:100%; margin-top:4px; }
.form-message { font-size:12px; line-height:1.7; color:#6eeb96; margin:14px 0; overflow-wrap:anywhere; }
.form-message:empty { display:none; }
.form-message.is-error { color:#ffb3ac; }
.forgot-password { display:block; color:var(--muted); margin:17px auto 0; font-size:11px; }
.auth-footnote { margin:19px 0 0; padding-top:16px; border-top:1px solid var(--line); color:#91a8b8; font-size:10px; line-height:1.7; }
.account-details { padding:19px 0; margin:21px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
.account-name { font-size:17px; margin-bottom:7px; font-weight:700; }
.account-name:empty { display:none; }
.account-email { font-size:12px; color:var(--muted); margin-bottom:0; }
.account-actions { display:grid; gap:10px; }
.account-actions .button { padding:12px 17px; font-size:12px; }
.cookie-banner { position:fixed; z-index:9; bottom:18px; left:50%; width:min(1060px,calc(100% - 36px)); transform:translateX(-50%); display:flex; align-items:center; gap:26px; padding:19px 23px; background:var(--raised); border:1px solid #3b5463; border-radius:8px; box-shadow:0 12px 50px #0006; }
.cookie-copy { flex:1; }
.cookie-copy p { font-size:10px; line-height:1.7; color:#c1cfd8; margin:0; }
.cookie-copy .cookie-eyebrow { font-size:12px; font-weight:700; color:var(--ink); margin-bottom:6px; }
.cookie-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.cookie-actions .button { min-height:36px; font-size:10px; padding:10px 12px; }
.cookie-actions .button-dark { background:#2d4656; color:var(--ink); border-color:#4e6979; }
.cookie-actions .button-dark:hover { background:#3d596b; }
.cookie-actions .button-outline { background:transparent; border-color:#506775; }
.cookie-customize { padding:10px 2px; border:0; background:transparent; color:var(--muted); font-size:10px; font-weight:700; text-decoration:underline; text-underline-offset:4px; }
.preference-card { padding:19px 0; border-top:1px solid var(--line); }
.preference-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:10px; }
.preference-card h3 { font-size:12px; letter-spacing:0; margin:0; }
.required-badge { padding:5px 7px; border-radius:4px; background:var(--raised); color:#b9ccd7; font-size:9px; font-weight:700; white-space:nowrap; }
.preference-card p,.privacy-detail { font-size:11px; line-height:1.75; color:var(--muted); margin:0; }
.preference-card .check-field { margin:0 0 10px; }
.privacy-detail { margin-bottom:20px; }
.privacy-dialog { width:min(100% - 32px,620px); }
.privacy-content p { color:var(--muted); font-size:12px; line-height:1.8; margin-bottom:14px; }
.privacy-content h3 { font-size:13px; letter-spacing:0; margin:23px 0 8px; }
.privacy-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:23px; }
.privacy-actions .button { font-size:11px; padding:12px 17px; }

@media(max-width:1000px) { .site-header { gap:30px; } .header-actions { gap:17px; } .header-actions .launch-status { display:none; } .hero { gap:35px; } .feature-card { gap:12px; padding:22px 18px; } .feature-card p { font-size:10px; } }
@media(max-width:760px) { .site-header { min-height:72px; padding:16px 22px; gap:18px; flex-wrap:wrap; } .brand { font-size:22px; } .header-actions { gap:16px; } .button-small { min-height:37px; padding:10px 14px; font-size:11px; } .header-login { font-size:11px; } .menu-toggle { display:flex; align-items:center; gap:6px; order:3; padding:8px 0; border:0; background:transparent; color:var(--muted); font-size:10px; } .menu-toggle span { font-size:15px; } .site-nav { display:none; order:4; width:100%; gap:25px; border-top:1px solid var(--line); padding-top:4px; font-size:12px; } .site-nav.is-open { display:flex; } .hero { grid-template-columns:1fr; gap:31px; padding:46px 24px 32px; } .hero-copy { max-width:510px; } h1 { font-size:clamp(38px,7.7vw,52px); margin-bottom:20px; } .eyebrow { margin-bottom:17px; font-size:10px; } .hero-description { font-size:13px; margin-bottom:23px; max-width:400px; } .hero-footnote { margin-top:18px; font-size:10px; } .hero-art { max-width:none; height:190px; } .sport-visual { width:280px; max-width:100%; height:200px; margin:-20px auto 0; } .art-caption { bottom:14px; font-size:9px; } .section-shell { padding:24px; } .vision { display:block; } .vision h2 { font-size:20px; margin:0 0 13px; } .vision p { font-size:12px; } .lineup { padding-top:10px; padding-bottom:27px; } .section-heading { font-size:13px; margin-bottom:14px; } .feature-grid { grid-template-columns:1fr; gap:10px; } .feature-card { padding:19px 20px; gap:18px; } .feature-card>svg { width:28px; height:28px; } .feature-card h3 { font-size:13px; margin-bottom:6px; } .feature-card p { font-size:11px; } .feature-card p br { display:none; } .closing { padding-top:27px; padding-bottom:27px; } .closing h2 { font-size:19px; } .closing p { font-size:11px; line-height:1.7; } .closing .button { white-space:nowrap; gap:12px; padding:13px 16px; font-size:11px; } .site-footer { padding:25px 24px 30px; flex-wrap:wrap; gap:14px 18px; } .footer-links { gap:19px; } .footer-note { display:none; } .site-dialog { width:calc(100% - 28px); max-height:calc(100% - 28px); padding:31px 24px 26px; border-radius:10px; } .dialog-title { font-size:25px; } .cookie-banner { display:block; bottom:12px; width:calc(100% - 24px); padding:16px 18px; } .cookie-actions { margin-top:12px; gap:8px 13px; } .cookie-customize { margin-left:auto; } .cookie-copy p { font-size:10px; } .cookie-copy .cookie-eyebrow { font-size:11px; } }
@media(max-width:460px) { .site-header { gap:12px; padding-left:22px; padding-right:22px; } .header-actions { margin-left:auto; gap:15px; } .menu-toggle { width:100%; padding-top:0; padding-bottom:0; justify-content:flex-end; font-size:9px; } .menu-toggle span { font-size:12px; } .hero { padding-top:36px; } h1 { font-size:38px; line-height:1.12; } .hero-actions { gap:21px; } .button { font-size:11px; min-height:43px; padding:13px 18px; gap:20px; } .hero-more { font-size:11px; } .closing { flex-direction:column; align-items:flex-start; gap:19px; } .site-footer p { margin-left:auto; } .footer-links { width:100%; margin-left:0; } .site-dialog { padding-left:20px; padding-right:20px; } .form-field>input { font-size:16px; } .privacy-actions { gap:9px; } .privacy-actions .button { font-size:10px; padding:12px 13px; } .cookie-customize { margin-left:0; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*:before,*:after { transition:none!important; animation:none!important; } }

/* Keep modal choices inside the visible area, including mobile browser chrome. */
.site-dialog { width:min(calc(100% - 32px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)),480px); max-height:calc(100vh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)); max-height:calc(100dvh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)); overflow-x:hidden; overflow-wrap:anywhere; -webkit-overflow-scrolling:touch; }
.privacy-dialog { width:min(calc(100% - 32px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)),620px); }
.site-dialog.dialog-fallback { display:block; inset:50% auto auto 50%; margin:0; transform:translate(-50%,-50%); z-index:1001; box-shadow:0 0 0 100vmax #05101bc9,0 24px 90px #0008; }
.cookie-banner { bottom:calc(18px + env(safe-area-inset-bottom,0px)); width:min(1060px,calc(100% - 36px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px))); max-height:calc(100vh - 36px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)); max-height:calc(100dvh - 36px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)); overflow:auto; }
@media(max-width:460px) { .cookie-choice-actions { grid-template-columns:1fr; gap:10px; } .cookie-choice-dialog .dialog-title { font-size:25px; } .cookie-choice-details { margin-top:18px; } .cookie-choice-details>div { padding:15px 0; } .cookie-choice-details p { font-size:11px; } .cookie-choice-actions .button { min-height:44px; font-size:12px; } .cookie-banner { bottom:calc(12px + env(safe-area-inset-bottom,0px)); width:calc(100% - 24px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)); } }

/* A non-blocking first-visit notice, capped at one tenth of the viewport height. */
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); clip-path:inset(50%); white-space:nowrap; border:0; }
.cookie-notice.cookie-choice-dialog,.cookie-notice.cookie-banner { position:fixed; inset:auto; top:auto; left:auto; right:max(12px,env(safe-area-inset-right,0px)); bottom:max(12px,env(safe-area-inset-bottom,0px)); margin:0; transform:none; align-items:center; gap:12px; width:min(380px,calc(100% - 24px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px))); height:min(52px,10vh); height:min(52px,10dvh); max-height:10vh; max-height:10dvh; min-height:0; padding:6px 12px; border:1px solid #3b5463; border-radius:7px; background:var(--raised); box-shadow:0 8px 30px #0004; overflow:hidden; z-index:20; }
.cookie-notice.cookie-choice-dialog[open],.cookie-notice.cookie-banner { display:flex; }
.cookie-notice.cookie-choice-dialog:not([open]) { display:none; }
.cookie-choice-dialog::backdrop { display:none; background:transparent; backdrop-filter:none; }
.cookie-notice-copy { flex:1; min-width:75px; }
.cookie-notice-copy h2 { margin:0 0 2px; color:var(--ink); font-size:11px; line-height:1.15; font-weight:700; letter-spacing:0; }
.cookie-notice-copy .cookie-notice-summary { margin:0; color:#b5c6d1; font-size:9px; line-height:1.1; white-space:nowrap; }
.cookie-notice .cookie-notice-actions { display:flex; align-items:stretch; flex-shrink:0; gap:6px; height:100%; margin:0; }
.cookie-notice .cookie-notice-actions .button { min-height:0; height:100%; padding:0 9px; font-size:10px; line-height:1.1; gap:0; border-radius:4px; white-space:nowrap; }
.cookie-notice-preferences { display:grid; place-items:center; width:30px; min-height:0; padding:0; border:1px solid #506775; border-radius:4px; background:transparent; color:#c1d1db; }
.cookie-notice-preferences:hover { background:#2b4554; color:var(--ink); }
.cookie-notice-preferences svg { width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; }
@media(max-height:420px) { .cookie-notice.cookie-choice-dialog,.cookie-notice.cookie-banner { padding-top:3px; padding-bottom:3px; } .cookie-notice-copy { display:flex; align-items:center; flex-wrap:wrap; gap:3px 8px; } .cookie-notice-copy h2 { margin:0; } }
