/* A static, race-team-inspired identity for the landing page. */
:root{color-scheme:dark;--ink:#101310;--panel:#1a1e1b;--panel-raised:#222824;--line:#3a423c;--muted:#b6c0b8;--white:#f2f4ee;--green:#b3f34a;--blue:#88d5e3;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--ink);color:var(--white)}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;scroll-behavior:auto}
body{background:var(--ink);line-height:1.5}
a{color:inherit}
a:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.skip{position:absolute;left:16px;top:-100px;z-index:10;background:var(--green);color:#111;padding:12px;font-weight:800}
.skip:focus{top:12px}
.page-shell{width:min(1392px,calc(100% - 72px));margin:0 auto}
.site-header{min-height:92px;display:grid;grid-template-columns:auto 1fr auto;gap:38px;align-items:center}
.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-size:13px;line-height:1.05;letter-spacing:.105em;font-weight:900}
.brand img{display:block;width:50px;height:50px;object-fit:contain}
.site-header nav{display:flex;justify-content:flex-end;align-items:center;gap:34px}
.site-header nav a{text-decoration:none;color:#d4dbd4;font-size:13px;font-weight:700}
.site-header nav a:hover{color:var(--green)}
.spectator-link{display:inline-flex;align-items:center;justify-content:center;min-height:46px;min-width:142px;padding:12px 18px;background:var(--green);color:#111b0a;text-decoration:none;font-size:13px;font-weight:900;letter-spacing:.02em}
.spectator-link:after{content:"↗";margin-left:17px;font-size:15px}
.spectator-link:hover,.button-green:hover,.spectator-button:hover{background:#c8ff70}
.identity-bar{height:37px;padding:0 13px 0 16px;display:flex;justify-content:space-between;align-items:center;background:var(--green);color:#192410;font-size:10px;font-weight:850;letter-spacing:.13em}
.identity-bar b{color:#49652f;padding:0 7px}
.identity-right{display:flex;align-items:center;gap:18px;color:#2e4223}
.checker{display:block;width:28px;height:20px;background:repeating-conic-gradient(#16220f 0 25%,#b3f34a 0 50%) 0 0/10px 10px}
.hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(48px,6vw,100px);padding:94px 0 106px}
.hero-copy{max-width:600px}
.section-label{display:flex;align-items:center;gap:10px;color:var(--green);font-size:11px;line-height:1.3;letter-spacing:.14em;font-weight:900;margin:0}
.label-square{display:block;width:9px;height:9px;background:var(--green);flex:none}
.hero h1{font-size:clamp(52px,5.3vw,78px);line-height:.98;letter-spacing:-.055em;font-weight:950;margin:24px 0 28px}
.hero h1 span{display:block}
.hero h1 span:last-child{color:var(--green)}
.hero-lead{font-size:clamp(19px,1.75vw,23px);line-height:1.35;font-weight:750;color:#eef1ea;max-width:470px;margin:0 0 14px}
.hero-description{font-size:16px;line-height:1.7;max-width:465px;color:var(--muted);margin:0}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:31px}
.button{min-height:54px;display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:13px 18px;text-decoration:none;font-size:13px;font-weight:900;letter-spacing:.015em}
.button span{font-size:17px;line-height:1}
.button-green{background:var(--green);border:1px solid var(--green);color:#111b0b;min-width:197px}
.button-outline{background:#171c18;border:1px solid #69756b;color:#eef3ed;min-width:164px}
.button-outline:hover{border-color:var(--green);color:var(--green)}
.join-note{max-width:460px;color:#aab6ac;font-size:12px;line-height:1.6;border-left:2px solid #667563;padding-left:12px;margin:27px 0 0}
.join-note strong{display:block;font-size:10px;letter-spacing:.1em;color:#dce3da;margin-bottom:3px}
.hero-visual{min-width:0}
.visual-label,.visual-bottom{display:flex;justify-content:space-between;gap:12px;font-size:10px;letter-spacing:.13em;font-weight:850;color:#c2cbc1}
.visual-label{padding:0 0 11px}
.visual-label span:last-child{color:#96a49a}
.screen-frame{background:#111512;border:1px solid #566257;border-top:5px solid var(--green);box-shadow:10px 10px 0 #292f29}
.screen-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;background:#242c25;border-bottom:1px solid #536054}
.screen-top>div{display:flex;align-items:center;gap:10px;font-size:10px;line-height:1.15;letter-spacing:.1em;font-weight:900}
.screen-top small{display:block;margin-top:5px;color:#bac5b8;font-size:9px;letter-spacing:.09em}
.screen-monogram{display:grid;place-items:center;width:36px;height:36px;background:var(--green);color:#11180c;font-size:14px;letter-spacing:0}
.sample-tag{border:1px solid #889587;color:#e0e8dc;font-size:9px;letter-spacing:.09em;font-weight:850;padding:7px 9px;white-space:nowrap}
.screen-body{padding:20px}
.screen-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}
.micro-label,.dash-heading,.dash-footer{color:#b7c4b6;font-size:9px;line-height:1.3;letter-spacing:.11em;font-weight:850}
.screen-heading p{margin:0}
.screen-heading h2{font-size:24px;line-height:1.15;letter-spacing:-.03em;margin:6px 0 0}
.course-status{display:flex;align-items:center;gap:7px;padding:8px 10px;background:#b3f34a;color:#14200c;font-size:10px;letter-spacing:.03em;font-weight:900;white-space:nowrap}
.course-status i{width:7px;height:7px;background:#213512;border-radius:50%}
.dashboard{display:grid;grid-template-columns:1.35fr .8fr;gap:8px}
.dashboard-map,.dashboard-session{background:#222a23;border:1px solid #485449;min-width:0;padding:13px}
.dash-heading,.dash-footer{display:flex;justify-content:space-between;gap:6px}
.dashboard-map img{display:block;width:100%;height:154px;object-fit:contain;padding:5px 0}
.dashboard-session{display:flex;flex-direction:column;align-items:flex-start}
.dashboard-session>strong{margin-top:17px;font-size:21px;line-height:1.15}
.dashboard-session>span:not(.micro-label){color:#c0cbc0;font-size:12px;margin-top:3px}
.session-clock{margin-top:auto;width:100%;padding-top:15px}
.session-clock b{display:block;color:var(--green);font-size:clamp(35px,3.5vw,56px);line-height:1.15;letter-spacing:-.05em;font-variant-numeric:tabular-nums}
.clock-rule{background:#526056;height:4px;margin-top:9px}
.clock-rule i{display:block;background:var(--green);width:68%;height:100%}
.activity{margin-top:8px;border:1px solid #485449;background:#1c231d;padding:13px 13px 3px}
.activity .dash-heading{padding-bottom:5px}
.activity-row{display:grid;grid-template-columns:40px 7px 1fr auto;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid #3d493e;color:#e0e6dd;font-size:11px}
.activity-row:last-child{border:0}
.activity-row time{font-variant-numeric:tabular-nums;color:#becbbd}
.activity-row i{display:block;width:6px;height:6px;background:var(--green);border-radius:50%}
.activity-row small{color:#b3c2b2;font-size:8px;letter-spacing:.07em}
.visual-bottom{color:#9daa9b;margin-top:22px;padding-left:1px}
.roles-section,.setup-section{border-top:1px solid var(--line);padding:94px 0}
.section-header{display:flex;justify-content:space-between;align-items:flex-end;gap:36px;margin-bottom:41px}
.section-header h2,.setup-section h2,.spectator-section h2{font-size:clamp(38px,4.3vw,62px);line-height:1;letter-spacing:-.05em;font-weight:950;margin:17px 0 0}
.section-header h2 em{font-style:normal;color:var(--green)}
.section-header>p{max-width:350px;color:var(--muted);font-size:15px;line-height:1.6;margin:0}
.role-list{border-top:1px solid #5a665b}
.role-list article{display:grid;grid-template-columns:50px minmax(170px,.9fr) minmax(200px,1.35fr) 20px;align-items:center;gap:20px;min-height:81px;border-bottom:1px solid #39443a}
.role-index{font-size:12px;font-weight:900;color:var(--green)}
.role-list h3{font-size:18px;letter-spacing:-.01em;margin:0}
.role-list p{font-size:14px;line-height:1.5;color:#bdc7bd;margin:0}
.role-marker{color:#8d9e8e;text-align:right}
.demo-callout{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;padding:56px 58px;background:var(--green);color:#111a0b}
.demo-callout>div:first-child{max-width:650px}
.dark-label{color:#2e431f}
.dark-label .label-square{background:#25391a}
.demo-callout h2{font-size:clamp(38px,4.5vw,64px);line-height:.96;letter-spacing:-.055em;margin:17px 0 20px}
.demo-callout p:not(.section-label){font-size:15px;line-height:1.6;color:#2d4225;max-width:610px;margin:0}
.demo-callout .demo-note{margin-top:14px!important;font-size:12px!important;font-weight:700}
.demo-actions{display:flex;flex-direction:column;gap:10px;min-width:220px}
.button-dark{background:#172016;color:#f3f6ee;border:1px solid #172016}
.button-dark:hover{background:#2b3c25}
.button-dark-outline{border:1px solid #354c2a;color:#182712}
.button-dark-outline:hover{background:#caff82}
.setup-section{margin-top:94px}
.text-link{color:var(--white);font-size:14px;font-weight:800;text-underline-offset:6px;white-space:nowrap}
.text-link span{color:var(--green);margin-left:5px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.steps article{border-top:2px solid #819182;padding-top:21px}
.steps article>span{font-weight:900;font-size:13px;letter-spacing:.1em;color:var(--green)}
.steps h3{font-size:20px;margin:17px 0 8px}
.steps p{max-width:320px;margin:0;color:var(--muted);font-size:14px;line-height:1.65}
.spectator-section{display:flex;justify-content:space-between;align-items:center;gap:35px;background:#242b24;border-left:5px solid var(--green);padding:40px 44px}
.spectator-section h2{font-size:clamp(32px,3vw,42px);margin:14px 0 10px}
.spectator-section p:not(.section-label){max-width:650px;color:#c2cbc1;font-size:15px;margin:0}
.spectator-button{background:var(--green);color:#14200e;min-width:180px;flex-shrink:0}
.beta-note{border-bottom:1px solid var(--line);font-size:13px;color:#aeb9ae;padding:32px 0;margin:0}
.beta-note a{color:#d9e7d7;text-underline-offset:3px}
footer{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap;padding:32px 0 40px;color:#b0bdb0;font-size:12px}
footer strong{color:#eff3ed;font-size:12px;letter-spacing:.1em}
footer p{margin:8px 0 0}
.footer-links{display:flex;align-items:flex-start;gap:20px;flex-wrap:wrap}
.footer-links p{flex-basis:100%;margin-top:-9px}
footer .site-version-link{align-self:flex-end}
@media(max-width:1100px){.hero{gap:40px}.hero h1{font-size:clamp(49px,5.2vw,66px)}.screen-body{padding:15px}.dashboard-map img{height:130px}.screen-heading h2{font-size:21px}}
@media(max-width:850px){.page-shell{width:calc(100% - 48px)}.site-header{gap:18px}.site-header nav{gap:20px}.hero{grid-template-columns:1fr;gap:48px;padding:66px 0 80px}.hero-copy{max-width:680px}.hero h1{font-size:clamp(56px,9vw,80px)}.hero-visual{max-width:760px;width:100%}.dashboard-map img{height:180px}.session-clock b{font-size:54px}.roles-section,.setup-section{padding:74px 0}.setup-section{margin-top:74px}.demo-callout{padding:42px;gap:30px}.role-list article{grid-template-columns:42px minmax(160px,.9fr) minmax(190px,1.3fr) 20px}}
@media(max-width:640px){.page-shell{width:calc(100% - 32px)}.site-header{grid-template-columns:1fr auto;gap:10px 12px;padding:14px 0 15px;min-height:0}.brand img{width:41px;height:41px}.brand{font-size:11px;gap:8px}.site-header nav{grid-column:1/-1;grid-row:2;justify-content:space-between;gap:10px;margin-top:9px}.site-header nav a{font-size:12px}.spectator-link{min-width:0;min-height:42px;padding:10px 13px;font-size:12px}.spectator-link:after{margin-left:10px}.identity-bar{font-size:8px;letter-spacing:.08em;padding-left:10px}.identity-right{gap:0}.identity-right{font-size:0}.checker{width:25px;height:18px}.hero{padding:47px 0 64px;gap:38px}.hero h1{font-size:clamp(43px,10.7vw,64px);margin:20px 0 23px}.hero-lead{font-size:19px}.hero-description{font-size:15px}.hero-actions{display:grid;grid-template-columns:1fr 1fr}.button{min-width:0;gap:8px;padding:12px;font-size:12px}.join-note{font-size:12px}.visual-label,.visual-bottom{font-size:8px;letter-spacing:.08em}.screen-frame{box-shadow:6px 6px 0 #292f29}.screen-top{padding:10px 12px}.screen-monogram{width:30px;height:30px}.screen-body{padding:12px}.screen-heading{margin-bottom:12px}.screen-heading h2{font-size:18px}.course-status{font-size:9px;padding:7px}.dashboard{grid-template-columns:1.1fr .9fr;gap:6px}.dashboard-map,.dashboard-session{padding:9px}.dashboard-map img{height:118px}.dashboard-session>strong{font-size:17px;margin-top:12px}.session-clock b{font-size:clamp(30px,8vw,44px)}.dash-heading,.dash-footer,.micro-label{font-size:8px}.activity{padding:10px 10px 2px}.activity-row{font-size:10px;gap:6px;grid-template-columns:35px 6px 1fr auto}.visual-bottom{margin-top:16px}.roles-section,.setup-section{padding:59px 0}.section-header{display:block;margin-bottom:28px}.section-header h2,.setup-section h2{font-size:clamp(37px,9.4vw,52px)}.section-header>p,.section-header>.text-link{display:block;margin-top:19px}.role-list article{grid-template-columns:32px 1fr 18px;gap:8px 12px;padding:16px 0;min-height:0}.role-list h3{font-size:16px}.role-list p{grid-column:2;grid-row:2;font-size:13px}.role-marker{grid-column:3;grid-row:1}.demo-callout{display:block;padding:32px 24px}.demo-callout h2{font-size:clamp(38px,10vw,56px)}.demo-actions{margin-top:25px;min-width:0}.demo-actions .button{min-height:50px}.setup-section{margin-top:60px}.steps{grid-template-columns:1fr;gap:24px}.steps article{padding-top:14px}.steps h3{margin:8px 0}.spectator-section{display:block;padding:29px 23px}.spectator-button{margin-top:23px;width:100%}.beta-note{line-height:1.65}footer{display:block}.footer-links{margin-top:22px}.footer-links p{margin-top:-8px}}
@media(max-width:360px){.hero-actions{grid-template-columns:1fr}.hero h1{font-size:38px}.identity-bar{font-size:7px;letter-spacing:.04em}.identity-bar>span:first-child{white-space:nowrap}.screen-top>div{font-size:9px}.sample-tag{font-size:8px}.activity-row small{display:none}.activity-row{grid-template-columns:35px 6px 1fr}.visual-bottom span:last-child{display:none}}

/* Approved RCO identity: white checkered flag, neon O and ONLINE. */
.brand .rco-wordmark{width:292px;height:auto;max-width:100%;object-fit:contain}
.screen-wordmark{display:block;width:112px;height:auto;object-fit:contain}
.footer-wordmark{display:block;width:236px;height:auto;margin-bottom:14px}
@media(max-width:850px){.brand .rco-wordmark{width:240px}.site-header{gap:22px}.site-header nav{gap:20px}}
@media(max-width:640px){.brand .rco-wordmark{width:210px}.site-header{gap:10px 12px}.screen-wordmark{width:96px}}
@media(max-width:380px){.brand .rco-wordmark{width:182px}}
