:root{--paper: #fafbf9;--card: #ffffff;--ink: #242d44;--muted: #5d6577;--soft: #848b9a;--line: #2f435417;--violet: #6e16f1;--violet-soft: #f0e8fc;--brand-dark: #bc9bef;--night: #1d1a4c;--mono: "Geist Mono", ui-monospace, "SF Mono", monospace;--ease: cubic-bezier(.2, 0, 0, 1);font-family:DM Sans,system-ui,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@supports (color: color(display-p3 0 0 0)){:root{--violet: color(display-p3 .43268 .08444 .94702)}}*{box-sizing:border-box}html{scroll-padding-top:64px}body{margin:0;min-width:320px;overflow-x:clip}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}h1,h2,h3,p,dl,dd{margin:0}h1,h2,h3{text-wrap:balance}p,dd{text-wrap:pretty}img,video,svg{display:block}:focus-visible{outline:2px solid var(--violet);outline-offset:4px;border-radius:6px}.container{width:min(1080px,calc(100% - 96px));margin-inline:auto}.mono{font-family:var(--mono);font-feature-settings:"zero","tnum"}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip{position:fixed;z-index:30;top:12px;left:12px;padding:10px 14px;border-radius:10px;background:var(--card);transform:translateY(-200%)}.skip:focus{transform:none}.wordmark{--logo-accent: #7952b3;display:inline-flex;align-items:center}.hupser-logo{display:block;height:27px;width:auto}.wordmark-mark{display:inline-block;width:22px;height:26px;background:currentColor;mask:url(/favicon.svg) center / contain no-repeat;-webkit-mask:url(/favicon.svg) center / contain no-repeat}.eyebrow{font-size:13px;font-weight:600;color:var(--violet)}h2{font-size:clamp(42px,5vw,66px);font-weight:500;line-height:1.075;letter-spacing:-.058em}.section{padding:128px 0}.section-head{max-width:680px}.section-head>p:not(.eyebrow){max-width:520px}.section-head h2{margin-top:14px}.section-head>p:not(.eyebrow){margin-top:22px;font-size:16px;line-height:1.75;color:var(--muted)}.ride-act>p:not(.ride-eyebrow){font-size:16px;line-height:1.75;max-width:420px}.ride-hint,.ride-rail{display:none}.ride-story:after{content:"";position:absolute;left:0;right:0;bottom:0;height:28vh;background:linear-gradient(transparent,var(--night));pointer-events:none}[data-reveal]{opacity:0;transform:translateY(14px);transition:opacity .8s var(--ease),transform .8s var(--ease)}[data-reveal].is-in{opacity:1;transform:none}.ticker{display:inline-flex}.ticker-slot{position:relative;display:inline-block}.ticker-slot>span{display:inline-block}.ticker-slot>.ticker-out{position:absolute;left:0;top:0}.store{display:inline-flex;align-items:center;gap:10px;height:52px;padding:0 20px 0 16px;border-radius:13px;background:#0d0d10;color:#fff;white-space:nowrap;transition:transform .2s var(--ease)}.store svg{flex:none;width:23px;height:23px}.store-text{display:flex;flex-direction:column;font-size:18px;font-weight:600;letter-spacing:-.02em;line-height:1.05}.store-text small{font-size:10.5px;font-weight:500;letter-spacing:0;opacity:.75}.store.is-soon{cursor:default}a.store:active{transform:scale(.97)}.nav{position:fixed;z-index:20;inset:0 0 auto;color:var(--ink);transition:color .35s var(--ease)}.nav:before,.nav:after{content:"";position:absolute;z-index:-1;top:0;right:0;bottom:-40px;left:0;pointer-events:none}.nav:before{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);mask-image:linear-gradient(#000 55%,#0000);-webkit-mask-image:linear-gradient(#000 55%,#0000)}.nav:after{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);mask-image:linear-gradient(#000 25%,#0000 70%);-webkit-mask-image:linear-gradient(#000 25%,#0000 70%)}.nav.is-story-dusk{color:#fff}.nav.is-page [data-on]{transition:color .3s var(--ease),background-color .3s var(--ease),opacity .2s}.nav.is-page [data-on=dark]{color:#fff}.nav-inner{display:flex;align-items:center;gap:40px;height:64px;width:min(1080px,calc(100% - 96px));margin-inline:auto}.nav .hupser-logo{height:25px}.nav.is-story-dusk .wordmark,.nav.is-page .wordmark[data-on=dark]{--logo-accent: var(--brand-dark)}.nav nav{display:flex;gap:28px;margin-left:auto;font-size:14px;font-weight:500}.nav nav a{opacity:.72;transition:opacity .2s}.nav-sign-in{margin-right:-24px;white-space:nowrap;font-size:14px;font-weight:500;opacity:.72;transition:opacity .2s}.nav-cta{display:inline-flex;align-items:center;height:36px;white-space:nowrap;padding:0 16px;border-radius:18px;font-size:14px;font-weight:500;transition:transform .2s var(--ease),background-color .35s,color .35s}.is-story .nav-cta,.is-page .nav-cta{background:var(--ink);color:#fff}.is-story-dusk .nav-cta,.is-page .nav-cta[data-on=dark]{background:#fff;color:#0d0d10}.nav-cta:active{transform:scale(.97)}.ride-act h1{font-size:clamp(52px,6.2vw,86px);line-height:1;letter-spacing:-.06em}.ride-act:first-of-type{left:0;right:0;width:min(760px,calc(100% - 96px));margin-inline:auto;text-align:center}.ride-act:first-of-type>p:not(.ride-eyebrow){margin-inline:auto;max-width:440px}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 20px;margin-top:30px}.ride-act{width:min(560px,calc(100% - 96px))}.ride-act>.hero-actions,.hero-actions *{text-shadow:none}.hero-note{display:flex;flex-direction:column;gap:3px;font-size:13px;font-weight:500;line-height:1.3;color:var(--muted);text-align:left}.hero-note strong{font-size:14.5px;font-weight:600;color:var(--ink)}.ride-act:first-of-type>*{animation:arrive 1s var(--ease) both}.ride-act:first-of-type>:nth-child(2){animation-delay:.08s}.ride-act:first-of-type>:nth-child(3){animation-delay:.16s}.ride-act:first-of-type>:nth-child(4){animation-delay:.24s}.workout-panel{margin-top:56px;padding:20px 24px;border-radius:26px;background:var(--card);box-shadow:0 0 0 1px var(--line),0 30px 70px -50px #1e2a5066}.workout-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.workout-tabs button{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:13px 15px;border:0;border-radius:15px;background:transparent;text-align:left;cursor:pointer;transition:background-color .2s}.workout-tabs button[aria-pressed=true]{background:var(--violet-soft)}.tab-name{font-size:15px;font-weight:600;letter-spacing:-.01em}.workout-tabs button[aria-pressed=true] .tab-name{color:var(--violet)}.tab-meta{font-size:11.5px;color:var(--soft)}.tab-kind{font-size:12px;color:var(--muted)}.workout-chart{margin-top:20px;padding:0 6px}.chart-readout{display:flex;align-items:center;gap:14px;min-height:30px;font-size:14px;flex-wrap:wrap}.chart-time{min-width:46px;color:var(--soft)}.readout-power{color:var(--muted)}.readout-power b{color:var(--ink);font-weight:600}.zone-pill{margin-left:auto;padding:5px 10px;border-radius:8px;background:color-mix(in srgb,var(--zone) 15%,white);color:color-mix(in srgb,var(--zone) 72%,black);font-size:12px;font-weight:600;transition:background-color .2s,color .2s}.chart-surface{position:relative;height:230px;margin-top:14px;cursor:ew-resize;touch-action:pan-y;border-radius:10px}.chart-surface svg{width:100%;height:100%}.chart-blocks path{stroke-width:1;vector-effect:non-scaling-stroke}.ftp-line{stroke:#242d4455;stroke-dasharray:3 5;fill:none}.playhead{stroke:var(--ink);stroke-width:1.2}.ftp-label{position:absolute;right:0;transform:translateY(-140%);padding:2px 6px;border-radius:6px;background:#ffffffd9;font-size:11px;color:var(--muted)}.playhead-dot{position:absolute;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:#fff;box-shadow:0 0 0 2.5px var(--ink);pointer-events:none}.chart-axis{display:flex;justify-content:space-between;margin-top:10px;font-size:11.5px;color:var(--soft)}.panel-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding:16px 6px 0;border-top:1px solid var(--line);flex-wrap:wrap}.panel-note{font-size:13px;color:var(--soft)}.ftp-stepper{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:var(--muted)}.ftp-stepper>span{margin-right:6px}.ftp-stepper button{display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:50%;background:#242d440a;font-size:17px;cursor:pointer;transition:background-color .2s,transform .15s var(--ease)}.ftp-stepper button:active{transform:scale(.92)}.ftp-stepper output{min-width:62px;text-align:center;color:var(--ink);font-size:13px}.specs{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-top:64px}.specs dt{font-size:14px;font-weight:600;padding-bottom:12px;border-bottom:1px solid var(--line)}.specs dd{margin-top:12px;font-size:14px;line-height:1.65;color:var(--muted)}.mac{--muted: #c6bfdc;color:#f6f0fb;padding-bottom:96px;background:var(--night)}.mac .eyebrow{color:var(--brand-dark)}.mac{position:relative;z-index:1;border-radius:0 0 56px 56px}.screen{position:relative;margin-top:56px;aspect-ratio:16 / 9.4;border-radius:18px;overflow:hidden;background:#050506;box-shadow:0 0 0 1px #ffffff1a,0 0 0 9px #121027,0 0 0 10px #ffffff14,0 50px 100px -40px #000;container-type:inline-size;font-family:Geist,system-ui,sans-serif}.menubar{position:absolute;z-index:3;inset:0 0 auto;display:flex;justify-content:space-between;align-items:center;height:30px;padding:0 16px;background:#1d1e22b8;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);font-size:12.5px;font-weight:500;color:#e9eaee}.menubar-left{display:flex;gap:18px;color:#c9ccd3}.menubar-left b{color:#fff;font-weight:600}.menubar-right{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-feature-settings:"zero","tnum"}.menubar-right .wordmark-mark{width:12px;height:14px}.menubar-right span:last-child{margin-left:14px}.scene{position:absolute;top:30px;right:0;bottom:0;left:0;overflow:hidden;background:#07080a;animation:scene-in .6s var(--ease) both}.film{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.scene-art{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.race-live{position:absolute;top:5%;left:3%;padding:.3em .7em;border-radius:4px;background:#e5322d;color:#fff;font-size:clamp(9px,1.1cqi,13px);font-weight:700;letter-spacing:.08em}.race-lower{position:absolute;left:3%;bottom:7%;display:flex;overflow:hidden;border-radius:6px;font-size:clamp(10px,1.4cqi,17px);font-weight:600;color:#fff;box-shadow:0 8px 24px -10px #0008}.race-lower b{padding:.45em .8em;background:#1d1a4c}.race-lower span{padding:.45em .8em;background:#0d0d10cc;font-family:var(--mono);font-feature-settings:"tnum"}.sheet{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;background:#fff;color:#2a2f3a;font-size:clamp(9px,1.15cqi,14px)}.sheet-bar{display:flex;align-items:center;gap:1.2em;height:3em;padding:0 1.2em;border-bottom:1px solid #e3e5ea;background:#f6f7f9}.sheet-title{font-weight:600}.sheet-cell-name{padding:.2em .6em;border-radius:4px;background:#fff;box-shadow:0 0 0 1px #dfe2e8;font-family:var(--mono);color:#6b7280}.sheet-formula{font-family:var(--mono);color:#6b7280}.sheet table{width:100%;border-collapse:collapse;table-layout:fixed}.sheet th,.sheet td{height:2.6em;padding:0 .9em;border:1px solid #eceef2;text-align:right;font-weight:400;white-space:nowrap;overflow:hidden;font-feature-settings:"tnum"}.sheet thead th{height:2.2em;background:#f6f7f9;color:#8a909c;text-align:center;font-weight:500}.sheet tbody th{width:22%;text-align:left;color:#2a2f3a}.sheet tr.is-total{font-weight:600}.sheet td.is-selected{box-shadow:inset 0 0 0 2px #2f6fed;background:#2f6fed14}.hud-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none}.mac-hud>*{opacity:var(--hud-opacity, 1);transition:opacity .3s var(--ease)}.film-scene{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.film-ridge{animation:pan 26s ease-in-out infinite alternate}.film-ridge.mid{animation-duration:22s}.film-ridge.near{animation-duration:18s}.film-ridge.front{animation-duration:14s}.film:before,.film:after{content:"";position:absolute;z-index:2;left:0;right:0;height:9.5%;background:#000}.film:before{top:0}.film:after{bottom:0}.subtitle{position:absolute;z-index:3;left:0;right:0;bottom:14%;text-align:center;font-size:clamp(11px,1.7cqi,20px);font-weight:500;color:#fff;text-shadow:0 1px 3px #000}.mac-hud{--pt: clamp(.66px, .074cqi, .95px);--muted: #bbc4d2;position:absolute;z-index:4;color:#fff;background:color-mix(in srgb,#0b0d14 calc(58% * var(--hud-opacity, 1)),transparent);backdrop-filter:blur(22px) saturate(1.6);-webkit-backdrop-filter:blur(22px) saturate(1.6);box-shadow:inset 0 0 0 1px #ffffff29,inset 0 1px #ffffff1f,0 24px 50px -20px #000a;font-family:Geist,system-ui,sans-serif;animation:rise .5s var(--ease) both}.mac-hud small{font-size:calc(12 * var(--pt));font-weight:500;color:var(--muted)}.mac-hud .ticker{font-family:var(--mono);font-feature-settings:"zero","tnum"}.mac-hud.corner{top:calc(30px + 2.2cqi);right:2.2cqi;display:flex;flex-direction:column;gap:calc(8 * var(--pt));width:calc(380 * var(--pt));padding:calc(12 * var(--pt)) calc(16 * var(--pt));border-radius:calc(26 * var(--pt))}.mac-hud .hud-top{display:flex;align-items:center;gap:calc(12 * var(--pt))}.mac-hud .hud-power{display:flex;flex:1;align-items:baseline;gap:calc(3 * var(--pt))}.mac-hud .hud-power .ticker{font-size:calc(60 * var(--pt));font-weight:700;line-height:1.05;letter-spacing:-.02em}.mac-hud .hud-power small{font-size:calc(13 * var(--pt))}.mac-hud .hud-sensors{display:flex;flex-direction:column;gap:calc(4 * var(--pt));width:calc(104 * var(--pt))}.mac-hud .hud-sensors>span{display:flex;align-items:baseline;gap:calc(5 * var(--pt))}.mac-hud .hud-sensors svg{align-self:center;width:calc(14 * var(--pt));height:calc(14 * var(--pt));margin:0 calc(1 * var(--pt))}.mac-hud .hud-sensors .heart svg{color:#ff375f}.mac-hud .hud-sensors .cadence svg{color:#0a84ff}.mac-hud .hud-sensors .ticker{font-size:calc(26 * var(--pt));font-weight:600;line-height:1.1}.mac-hud .hud-profile{display:flex;flex-direction:column;gap:calc(4 * var(--pt))}.mac-hud .hud-strip{position:relative;height:calc(30 * var(--pt))}.mac-hud .hud-strip svg{display:block;width:100%;height:100%;overflow:visible}.mac-hud .hud-trace{fill:none;vector-effect:non-scaling-stroke;stroke-linejoin:round}.mac-hud .hud-trace.power{stroke:#ff9f0a;stroke-width:1.5}.mac-hud .hud-trace.heart{stroke:#fa4f73;stroke-width:1}.mac-hud .hud-playhead{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:#fff;transition:left 1s linear}.mac-hud .hud-playhead:before{content:"";position:absolute;top:-1px;left:-2.5px;width:7px;height:7px;border-radius:50%;background:#fff}.mac-hud .hud-times{display:flex;justify-content:space-between;font-size:calc(12 * var(--pt));font-weight:600}.mac-hud .hud-step{display:flex;flex-direction:column;gap:calc(6 * var(--pt));padding-top:calc(8 * var(--pt));border-top:1px solid #ffffff1f}.mac-hud .hud-step-row{display:flex;align-items:center;gap:calc(10 * var(--pt))}.mac-hud .hud-chip{display:grid;flex:none;place-items:center;width:calc(40 * var(--pt));height:calc(46 * var(--pt));border-radius:calc(7 * var(--pt));font-family:var(--mono);font-size:calc(16 * var(--pt));font-weight:700;color:#fff}.mac-hud .hud-chip.small{height:calc(22 * var(--pt));font-size:calc(13 * var(--pt))}.mac-hud .hud-step-text{display:flex;flex:1;flex-direction:column;gap:calc(2 * var(--pt));min-width:0;font-family:var(--mono);font-size:calc(15 * var(--pt));font-weight:600;white-space:nowrap}.mac-hud .hud-step-text small{font-family:Geist,system-ui,sans-serif}.mac-hud .hud-step-left{font-size:calc(32 * var(--pt));font-weight:700}.mac-hud .meter{height:4px;border-radius:4px;background:#ffffff1f;overflow:hidden}.mac-hud .meter span{display:block;height:100%;background:var(--brand-dark);transform-origin:left;transition:transform 1s linear,background-color .3s}.mac-hud .hud-next{display:flex;align-items:center;gap:calc(8 * var(--pt));height:calc(22 * var(--pt));font-family:var(--mono);font-size:calc(13 * var(--pt));font-weight:600}.mac-hud .hud-next small{font-family:Geist,system-ui,sans-serif}.mac-hud .hud-next .hud-next-time{margin-left:auto;font-family:var(--mono);font-size:calc(13 * var(--pt))}.mac-hud.pill{top:calc(30px + 1.4cqi);left:50%;display:flex;flex-direction:column;justify-content:center;gap:calc(10 * var(--pt));width:min(calc(480 * var(--pt)),calc(100% - 24px));height:calc(88 * var(--pt));padding:0 calc(16 * var(--pt));border-radius:calc(28 * var(--pt));translate:-50% 0;font-family:ui-rounded,SF Pro Rounded,system-ui,sans-serif;white-space:nowrap}.mac-hud.pill .ticker{font-family:inherit;font-feature-settings:"tnum"}.pill-row{display:flex;align-items:center;gap:calc(14 * var(--pt))}.pill-row>.wordmark-mark{width:calc(22 * var(--pt));height:calc(24 * var(--pt));color:var(--brand-dark)}.pill-power{display:inline-flex;align-items:baseline;gap:calc(4 * var(--pt));font-size:calc(32 * var(--pt));font-weight:700}.pill-power small{font-size:calc(12 * var(--pt));font-weight:600}.pill-target{display:flex;flex:1;flex-direction:column;gap:calc(2 * var(--pt));font-size:calc(16 * var(--pt));font-weight:600;color:var(--brand-dark)}.pill-target small{font-size:calc(9 * var(--pt));font-weight:600;text-transform:uppercase}.pill-interval{font-size:calc(26 * var(--pt));font-weight:600}.overlay-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:16px 40px;margin-top:36px}.segmented{display:flex;align-items:center;gap:12px}.segmented-label{font-size:13px;font-weight:500;color:var(--muted)}.segmented>div{display:flex;gap:2px;padding:3px;border-radius:20px;background:#ffffff12}.segmented button{height:32px;padding:0 14px;border:0;border-radius:16px;background:transparent;font-size:13.5px;font-weight:500;color:var(--muted);cursor:pointer;transition:background-color .2s,color .2s}.segmented button[aria-pressed=true]{background:#ffffff24;color:#fff}.overlay-specs{margin-top:72px}.mac .specs dt{border-color:#ffffff1f}.integrations{border-top:1px solid var(--line)}.integrations-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.answers{margin-top:40px}.answers>div{padding:18px 0;border-top:1px solid var(--line)}.answers dt{font-size:15px;font-weight:600}.answers dd{margin-top:6px;font-size:14px;line-height:1.65;color:var(--muted)}.sync-card{padding:22px 24px 10px;border-radius:26px;background:var(--card);box-shadow:0 0 0 1px var(--line),0 30px 70px -50px #1e2a5066}.sync-head{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:16px;border-bottom:1px solid var(--line)}.sync-title{font-size:17px;font-weight:600;letter-spacing:-.01em}.sync-meta{font-size:12px;color:var(--soft)}.sync-card ol{margin:0;padding:0;list-style:none}.sync-card li{display:flex;align-items:center;gap:14px;padding:15px 0}.sync-card li+li{border-top:1px solid var(--line)}.sync-icon{flex-shrink:0;width:34px;height:34px}.sync-icon img{width:100%;height:100%;border-radius:9px}.sync-icon svg{width:100%;height:100%;fill:none;stroke:var(--soft);stroke-width:1.5;stroke-linejoin:round}.sync-icon text{fill:var(--muted);stroke:none;font-family:var(--mono);font-size:7px;font-weight:600}.sync-name{display:flex;flex-direction:column;font-size:15px;font-weight:600}.sync-name small{margin-top:2px;font-size:12.5px;font-weight:500;color:var(--soft)}.sync-status{display:grid;margin-left:auto;font-size:13px;font-weight:500;text-align:right}.sync-status>span{grid-area:1 / 1;display:inline-flex;align-items:center;justify-content:flex-end;gap:6px;opacity:0}.sync-pending{color:var(--soft)}.sync-done{color:var(--ink)}.sync-done svg{width:16px;height:16px;fill:none;stroke:#2e9e6b;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.sync-card.is-in .sync-pending{animation:sync-pending .8s linear calc(.5s + var(--step) * .9s) both}.sync-card.is-in .sync-done{animation:sync-done .45s var(--ease) calc(1.25s + var(--step) * .9s) both}.footer{border-top:1px solid var(--line)}.footer-inner{display:flex;align-items:center;gap:24px;min-height:104px}.footer .hupser-logo{height:23px}.footer .store{height:40px;padding:0 14px 0 12px;border-radius:10px}.footer .store svg{width:18px;height:18px}.footer .store-text{font-size:14.5px}.footer .store-text small{font-size:9px}.footer nav{display:flex;align-items:center;gap:24px;margin-left:auto;font-size:13px;color:var(--muted)}.footer small{font-size:13px;color:var(--soft)}@keyframes sync-pending{0%{opacity:0}15%,85%{opacity:1}to{opacity:0}}@keyframes sync-done{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes arrive{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes pan{0%{transform:translate(-60px)}to{transform:translate(60px)}}@keyframes scene-in{0%{opacity:0}to{opacity:1}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(hover:hover){.nav nav a:hover,.nav-sign-in:hover{opacity:1}.workout-tabs button:not([aria-pressed=true]):hover{background:#242d440a}.ftp-stepper button:hover{background:#242d4414}.segmented button:hover{color:#fff}.footer nav a:hover{color:var(--ink)}}@media(max-width:900px){.integrations-grid{grid-template-columns:1fr;gap:48px}.workout-tabs,.specs{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.ride-act,.ride-act:first-of-type{width:calc(100% - 40px)}.ride-act h1{font-size:clamp(40px,14vw,52px)}.hero-note{align-items:center;text-align:center}.container,.nav-inner{width:calc(100% - 40px)}.nav nav{display:none}.nav-sign-in{margin-left:auto}.nav-inner{justify-content:space-between}.section{padding:88px 0}.mac{padding-bottom:64px}.workout-panel{padding:14px;border-radius:22px}.chart-surface{height:180px}.zone-pill{margin-left:0}.specs{grid-template-columns:1fr;gap:24px;margin-top:48px}.screen{aspect-ratio:4 / 5}.mac-hud{--pt: .8px}.mac-hud.corner{right:12px;top:42px;width:min(calc(380 * var(--pt)),calc(100% - 24px))}.menubar-left span,.menubar-right span:last-child{display:none}.mac{border-radius:0 0 32px 32px}.footer-inner{flex-wrap:wrap;gap:12px 24px;padding:28px 0}.footer nav{flex-wrap:wrap;width:100%;margin:0;gap:12px 20px}}@media(max-height:760px)and (min-width:701px){.ride-act:first-of-type{top:96px}.ride-act h1{font-size:clamp(48px,5.2vw,70px)}.ride-act:first-of-type>p:not(.ride-eyebrow){margin-top:16px}.hero-actions{margin-top:22px}}@media(max-width:380px){.nav-inner{gap:12px}.nav .hupser-logo{height:22px}.nav-sign-in{margin-right:0;font-size:13px}.nav-cta{padding:0 12px;font-size:13px}.hero-actions{column-gap:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}[data-reveal]{opacity:1;transform:none}.sync-done{opacity:1!important}}
