/* Shared website typography and controls. Gauge readouts retain their own mono styles. */
@import url('https://fonts.googleapis.com/css2?family=Sora:wght@400;600;700;800&family=Space+Mono:wght@400;700&display=swap');
:root{--brand-sans:'Sora',system-ui,sans-serif;--brand-mono:'Space Mono',monospace;--brand-lime:#9bcc15;--brand-ink:#071118;--sans:var(--brand-sans);--mono:var(--brand-mono);--lime:var(--brand-lime);--snow-lime:var(--brand-lime);--ink:var(--brand-ink);--snow-ink:var(--brand-ink)}
body,body.snow-page{font-family:var(--brand-sans);background:var(--brand-ink)}
h1,h2,h3,h4{font-family:var(--brand-sans);font-style:normal}
.mtb-page .h-xl,.snow-page .orbit-hero h1{font-size:clamp(40px,5.5vw,72px);font-weight:800;line-height:1.06;letter-spacing:-.045em}
.mtb-page .h-lg,.snow-page .section-head h2{font-size:clamp(30px,3.6vw,48px);font-weight:800;line-height:1.12;letter-spacing:-.035em}
.mtb-page .lede,.snow-page .orbit-hero .hero-deck{font:400 17px/1.65 var(--brand-sans);letter-spacing:0}
.mtb-page .nav,.snow-page .snow-nav{padding:16px 4vw;min-height:76px;gap:20px;background:#071118ed;border-bottom:1px solid #ffffff24;backdrop-filter:blur(12px)}
.mtb-page .nav .links,.snow-page .snow-nav .links{gap:20px;font:600 12px/1.4 var(--brand-sans);letter-spacing:0;text-transform:none}
.mtb-page .nav .wmText,.snow-page .snow-nav .wm{font:800 22px/1 var(--brand-sans);letter-spacing:-.055em;transform:skewX(-12deg)}
.mtb-page .nav .sportToggle a,.snow-page .snow-nav .sport-toggle a{min-height:36px;padding:8px 12px;font:600 12px/1.2 var(--brand-sans)!important;letter-spacing:0;text-transform:none}
.mtb-page .nav .sportToggle a.active,.snow-page .snow-nav .sport-toggle a.active{background:var(--brand-lime);color:var(--brand-ink)!important}
.btn,.snow-btn,.nav .apply,.snow-nav .links .apply,.nav-cta,.mobile-order-bar a,.mobile-buy a,.suite-cta,.checkout,.install-page .button,body .button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:13px 22px;border:1px solid transparent;border-radius:8px;background:var(--brand-lime);color:var(--brand-ink);font:700 14px/1.4 var(--brand-sans);letter-spacing:0;text-transform:none;text-decoration:none;text-align:center;transition:background .18s,border-color .18s}
.nav .apply,.snow-nav .links .apply{font:700 13px/1.4 var(--brand-sans);padding:11px 18px;min-height:44px;letter-spacing:0;text-transform:none;border-radius:8px}
.btn.ghost,.snow-btn.ghost{background:#07111866;border:1px solid #ffffff70;color:#eef4f5!important;font-weight:600}
.btn:hover,.snow-btn:hover,.snow-btn:focus-visible,.button:hover{transform:none;box-shadow:none;filter:brightness(1.08)}
button,input,select,textarea{font-family:var(--brand-sans)}
button:disabled,.checkout:disabled{cursor:not-allowed;opacity:.6}
a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible{outline:2px solid var(--brand-lime);outline-offset:4px}
.mtb-page .ctas,.snow-page .hero-actions{display:flex;align-items:stretch;gap:12px;flex-wrap:wrap;margin-top:28px}
@media(max-width:1100px){.mtb-page .nav .links,.snow-page .snow-nav .links{gap:12px}.mtb-page .nav .links>.login,.mtb-page .nav .links>a[href='#about'],.snow-page .snow-nav .links>a[href='index.html#about']{display:none}}
@media(max-width:760px){.mtb-page .nav,.snow-page .snow-nav{padding:12px 20px;min-height:70px;gap:12px}.mtb-page .nav .links,.snow-page .snow-nav .links{gap:10px}.mtb-page .nav .links>a:not(.apply),.snow-page .snow-nav .links>a:not(.apply){display:none}.mtb-page .nav .apply,.snow-page .snow-nav .links .apply{font-size:11px;padding:10px 12px;min-height:44px;max-width:108px}.mtb-page .nav .sportToggle a,.snow-page .snow-nav .sport-toggle a{padding:8px;font-size:10px!important}.mtb-page .ctas,.snow-page .hero-actions{flex-direction:column;align-items:stretch}.mtb-page .ctas>.btn,.snow-page .hero-actions>.snow-btn{width:100%}}
@media(prefers-reduced-motion:reduce){.btn,.snow-btn,.button{transition:none}}
/* Match the video-hero overrides as well as the original sport styles. */
.mtb-page .scrub .h-xl,.snow-page.purchase-paths .demo-hero .orbit-copy h1{font-size:clamp(40px,5.5vw,72px);font-weight:800;line-height:1.06;letter-spacing:-.045em}
.mtb-page .ctas .btn,.snow-page .demo-hero .hero-actions .snow-btn{min-height:48px;padding:13px 22px;font:700 14px/1.4 var(--brand-sans);letter-spacing:0;text-transform:none;border-radius:8px}
.mtb-page .ctas .btn.ghost,.snow-page .demo-hero .hero-actions .snow-btn.ghost{font-weight:600}

/* Consistent section rhythm: adjacent sections share one visual gap. */
.snow-page .snow-section{padding-block:clamp(36px,4.5vw,64px)}
.snow-page .section-head{max-width:100%}
.snow-page .section-head h2{max-width:24ch}
.snow-page #explorer-title{max-width:none;font-size:clamp(30px,3.6vw,48px);line-height:1.15}
.snow-page .positions-copy h2{font-size:clamp(34px,3.8vw,52px);line-height:1.12;letter-spacing:-.035em;font-weight:800;max-width:18ch;margin-bottom:24px}
.snow-page .positions-inner{gap:40px}
.snow-page .cross-sport-inner h2{font-size:clamp(30px,3.6vw,48px);line-height:1.12;letter-spacing:-.035em}
.snow-page .snow-purchase-callout{margin-bottom:24px}
@media(max-width:760px){
 .snow-page .snow-section{padding-block:32px}
 .snow-page .positions-inner{gap:24px}
 .snow-page .positions-copy h2{font-size:34px;max-width:20ch}
 .snow-page .section-head h2{max-width:none}
 .snow-page .snow-purchase-callout{margin-bottom:12px}
}

.snow-page .snow-explorer>.section-inner{width:calc(100% - 2 * clamp(20px,6vw,88px));max-width:1180px}
.snow-page #positions{padding-block:32px}
.snow-page #founder{padding-top:32px}
.ride-chart{margin-top:28px;padding:28px;border:1px solid #354854;border-radius:16px;background:#0d1b24}
.ride-chart-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;padding-bottom:26px;border-bottom:1px solid #354854}
.ride-chart-stats strong{display:block;font:700 clamp(28px,3vw,42px)/1.2 var(--brand-sans);color:#9bcc15;letter-spacing:-.04em}
.ride-chart-stats span{display:block;margin-top:8px;color:#c1d0d8;font-size:13px;line-height:1.5}
.ride-chart-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:26px 0 16px}.ride-chart-heading h3{font-size:18px}.ride-chart-heading p{display:flex;gap:20px;font-size:12px}.chart-key-mean{color:#9bcc15}.chart-key-peak{color:#fff}
.ride-chart-scroll{overflow-x:auto}.ride-chart svg{display:block;width:100%;min-width:620px;height:auto}.ride-chart svg text{fill:#b5c8d2;font:12px var(--brand-mono)}.ride-chart svg rect{fill:#9bcc15}.chart-grid{stroke:#354854;stroke-width:1}.chart-peak{stroke:#fff;stroke-width:3}
.ride-chart-caption{font:12px/1.6 var(--brand-mono);margin-top:8px;color:#dae5ea}.ride-chart-note{font-size:12px;line-height:1.6;color:#9cafba;max-width:780px;margin:12px 0 22px}
@media(max-width:650px){.ride-chart{padding:18px 14px}.ride-chart-stats{grid-template-columns:1fr 1fr;gap:20px 12px}.ride-chart-heading{align-items:flex-start}.ride-chart-heading h3{font-size:16px}.ride-chart-heading p{gap:10px}}
/* Demo metric-tile hierarchy and heel/toe readouts, enlarged for the website. */
.ride-gauge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px;--heel:#60a5fa;--toe:#f97316}
.ride-gauge-grid .tc-tile{background:#111e29;border:1px solid #344650;border-radius:8px;padding:24px;display:flex;flex-direction:column;gap:14px;min-width:0}
.ride-gauge-grid .gauge-category{font:700 10px/1.5 var(--brand-mono);letter-spacing:.12em;text-transform:uppercase;color:#9bcc15}
.ride-gauge-grid .tc-tile-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}.ride-gauge-grid .tc-tile-title{font-size:20px;font-weight:600;color:#f2f7f8}
.ride-gauge-grid .tc-tile-vals{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px 0;border-block:1px solid #344650}.ride-gauge-grid .tc-heel,.ride-gauge-grid .tc-toe{font-size:12px;display:block;margin-bottom:8px}.ride-gauge-grid .tc-heel{color:var(--heel)}.ride-gauge-grid .tc-toe{color:var(--toe)}.ride-gauge-grid strong{font:700 30px/1.2 var(--brand-mono);white-space:nowrap}.ride-gauge-grid strong small{font-size:13px;margin-left:4px;color:#afc0ca}
.ride-gauge-grid .gauge-why{font-size:14px;line-height:1.65;color:#d3dfe5;flex:1}.ride-gauge-grid .tc-guide{font-size:12px;line-height:1.6;color:#a5bbc9}.ride-gauge-grid summary{cursor:pointer;color:#e0eaef;min-height:28px}.ride-gauge-grid .tc-guide p{margin-top:10px}
@media(max-width:1000px){.ride-gauge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.ride-gauge-grid{grid-template-columns:1fr}.ride-gauge-grid .tc-tile{padding:20px}}
.coaching-status{display:inline-block;margin-bottom:20px;padding:8px 12px;border:1px solid #9bcc1580;border-radius:6px;background:#9bcc1512;color:#bbdf54;font:700 12px/1.5 var(--brand-sans)}
.coaching-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:30px 0 24px}.coaching-cards article{display:flex;flex-direction:column;gap:16px;padding:28px;border:1px solid #354854;border-radius:12px;background:#10202b}.coaching-step{font:700 11px/1.5 var(--brand-mono);color:#9bcc15;text-transform:uppercase;letter-spacing:.1em}.coaching-cards h3{font-size:24px;line-height:1.2;letter-spacing:-.03em}.coaching-cards p{font-size:15px;line-height:1.7;color:#c4d3dc;flex:1}.coaching-planned{font-size:12px;color:#bdcbd4;border-top:1px solid #354854;padding-top:16px}.coaching-expectations{border-left:3px solid #9bcc15;padding:18px 22px;background:#101c24}.coaching-expectations strong{font-size:16px}.coaching-expectations p{margin-top:10px;max-width:1000px;font-size:14px;line-height:1.7;color:#b9cbd5}
@media(max-width:760px){.coaching-cards{grid-template-columns:1fr;gap:14px}.coaching-cards article{padding:22px}.coaching-expectations{padding:16px}}

/* Keep all three hero actions on one line, including narrow screens. */
.snow-page .demo-hero .hero-actions{flex-direction:row;flex-wrap:nowrap;align-items:stretch;gap:8px}
.snow-page .demo-hero .hero-actions .snow-btn{flex:0 0 auto;width:auto;white-space:nowrap;font-size:13px;padding:13px 12px}
@media(max-width:420px){.snow-page .demo-hero .hero-actions{gap:6px}.snow-page .demo-hero .hero-actions .snow-btn{font-size:11px;padding-inline:8px}}
