*{box-sizing:border-box}.v2l-layout{all:unset;display:block}.v2l-root{--font-display:"Inter Tight", system-ui, sans-serif;--font-mono:var(--v2l-font-mono);--font-serif:var(--v2l-font-serif)}body{background:#fbfaf8;background:lab(98.2757% -.0089407 1.14335)}.dark body{background:#060709;background:lab(1.97728% -.085026 -.779876)}@media (prefers-color-scheme:dark){body{background:#060709;background:lab(1.97728% -.085026 -.779876)}}.v2l-root{font-family:var(--font-display);background:var(--ui-bg);color:var(--ui-text-primary);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-feature-settings:"ss01", "cv11";font-variant-numeric:tabular-nums;min-height:100vh;margin:0;padding:0}::selection{background:var(--ui-text-primary);color:var(--ui-bg)}.v2l-root[data-viewport=mobile]{border-left:1px solid var(--ui-border);border-right:1px solid var(--ui-border);max-width:390px;min-height:100vh;margin:0 auto}.nav{z-index:50;background:color-mix(in oklch, var(--ui-bg) 88%, transparent);-webkit-backdrop-filter:saturate(140%)blur(8px);backdrop-filter:saturate(140%)blur(8px);border-bottom:1px solid var(--ui-border);justify-content:space-between;align-items:center;padding:18px 56px;display:flex;position:sticky;top:0}.v2l-root[data-viewport=mobile] .nav{padding:14px 20px}.brand{color:var(--ui-text-primary);white-space:nowrap;align-items:baseline;gap:14px;text-decoration:none;display:inline-flex}.tc-mono{font-family:var(--font-mono);font-weight:var(--weight-semibold);letter-spacing:-.04em;background:var(--ui-text-primary);color:var(--ui-bg);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.tc-mono.t16{width:16px;height:16px;font-size:8px}.tc-mono.t22{width:22px;height:22px;font-size:10px}.tc-mono.t32{width:32px;height:32px;font-size:14px}.tc-mono.t48{width:48px;height:48px;font-size:20px}.tc-mono.round{border-radius:50%}.wm{font-family:var(--font-mono);font-weight:var(--weight-bold);color:var(--ui-text-primary);white-space:nowrap;align-items:baseline;line-height:1;display:inline-flex}.wm .tri{font-weight:var(--weight-bold);color:var(--ui-text-primary)}.wm .dot{font-weight:var(--weight-regular);color:var(--ui-text-quaternary);align-self:center}.wm .coach{font-weight:var(--weight-regular);color:var(--ui-text-secondary)}.wm.s56{letter-spacing:.02em;font-size:56px}.wm.s56 .dot{margin:0 .12em;font-size:.78em}.wm.s32{letter-spacing:.06em;font-size:32px}.wm.s32 .dot{margin:0 .14em;font-size:.78em}.wm.s22{letter-spacing:.08em;font-size:22px}.wm.s22 .dot{margin:0 .18em;font-size:.78em}.wm.s16{letter-spacing:.12em;font-size:16px}.wm.s16 .dot{margin:0 .2em;font-size:.78em}.wm.s14{letter-spacing:.14em;font-size:14px}.wm.s14 .dot{margin:0 .22em;font-size:.78em}.wm.s11{letter-spacing:.16em;font-size:11px}.wm.s11 .dot{margin:0 .25em;font-size:.78em}.nav-links{align-items:center;gap:28px;display:flex}.nav-link{font-family:var(--font-mono);font-size:var(--type-xs);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--ui-text-tertiary);transition:color var(--motion-fast);text-decoration:none}.nav-link:hover{color:var(--ui-text-primary)}.nav-actions{align-items:center;gap:10px;display:flex}.v2l-root[data-viewport=mobile] .nav-links,.v2l-root[data-viewport=mobile] .nav-actions .nav-link{display:none}.nav-hamburger{border:1px solid var(--ui-border);border-radius:var(--radius-md);width:36px;height:36px;color:var(--ui-text-primary);cursor:pointer;background:0 0;justify-content:center;align-items:center;display:none}.v2l-root[data-viewport=mobile] .nav-hamburger{width:44px;height:44px;display:inline-flex}.v2l-root[data-viewport=mobile] .nav .nav-actions .btn,.nav-sheet{display:none}.v2l-root[data-viewport=mobile] .nav-sheet{z-index:49;background:color-mix(in oklch, var(--ui-bg) 96%, transparent);-webkit-backdrop-filter:saturate(140%)blur(8px);backdrop-filter:saturate(140%)blur(8px);border-bottom:1px solid var(--ui-border);flex-direction:column;padding:6px 20px 14px;display:flex;position:sticky;top:72px}.v2l-root[data-viewport=mobile] .nav-sheet[hidden]{display:none}.v2l-root[data-viewport=mobile] .nav-sheet-link{min-height:44px;font-family:var(--font-mono);font-size:var(--type-xs);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--ui-text-secondary);border-bottom:1px solid var(--ui-border-2);transition:color var(--motion-fast);align-items:center;gap:8px;text-decoration:none;display:flex}.v2l-root[data-viewport=mobile] .nav-sheet-link:last-child{border-bottom:0}.v2l-root[data-viewport=mobile] .nav-sheet-link:hover,.v2l-root[data-viewport=mobile] .nav-sheet-link:active{color:var(--ui-text-primary)}.v2l-root[data-viewport=mobile] .nav-sheet-link--cta{background:var(--ui-text-primary);color:var(--ui-bg);border-radius:var(--radius-sm);font-weight:var(--weight-semibold);border-bottom:0;justify-content:center;margin-top:8px}.v2l-root[data-viewport=mobile] .nav-sheet-link--cta:hover,.v2l-root[data-viewport=mobile] .nav-sheet-link--cta:active{color:var(--ui-bg)}.v2l-root[data-viewport=mobile] .hero-cta-row .btn,.v2l-root[data-viewport=mobile] .sticky-cta .btn{min-height:44px}.btn{font-family:var(--font-mono);font-size:var(--type-xs);letter-spacing:var(--tracking-wider);text-transform:uppercase;font-weight:var(--weight-semibold);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--motion-fast), color var(--motion-fast), border-color var(--motion-fast), opacity var(--motion-fast);border:0;align-items:center;gap:8px;padding:9px 16px;line-height:normal;text-decoration:none;display:inline-flex}.btn--primary{background:var(--ui-text-primary);color:var(--ui-bg)}.btn--primary:hover{background:var(--ui-text-secondary)}.btn--secondary{color:var(--ui-text-primary);border:1px solid var(--ui-border);background:0 0}.btn--secondary:hover{border-color:var(--ui-text-tertiary)}.btn--ghost{color:var(--ui-text-tertiary);background:0 0;padding:9px 12px}.btn--ghost:hover{color:var(--ui-text-primary)}.btn--lg{font-size:var(--type-sm);padding:12px 22px}.btn[disabled]{opacity:.45;cursor:not-allowed}.btn .arrow{transition:transform var(--motion-base);display:inline-block}.btn:hover .arrow{transform:translate(2px)}.container{max-width:1200px;margin:0 auto;padding:0 56px}@media (max-width:1080px){.v2l-root[data-viewport=desktop] .container{padding:0 40px}}.v2l-root[data-viewport=mobile] .container{padding:0 20px}section{border-top:1px solid var(--ui-border);padding:96px 0}@media (max-width:1080px){.v2l-root[data-viewport=desktop] section{padding:72px 0}}.v2l-root[data-viewport=mobile] section{padding:56px 0}section:first-of-type{border-top:0}.section-head{border-bottom:1px solid var(--ui-border);justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:48px;padding-bottom:18px;display:flex}.v2l-root[data-viewport=mobile] .section-head{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:32px}.section-eyebrow{font-family:var(--font-display);font-size:var(--type-sm);letter-spacing:-.005em;font-weight:var(--weight-medium);color:var(--ui-text-tertiary);margin-bottom:6px;line-height:normal}.v2l-root .section-title{font-size:32px;line-height:38px;font-weight:var(--weight-medium);letter-spacing:var(--tracking-tight);color:var(--ui-text-primary);max-width:640px}.v2l-root .section-title em{font-family:var(--font-serif);font-style:italic;font-weight:var(--weight-regular);color:var(--ui-text-secondary);letter-spacing:-.015em}.section-meta{font-family:var(--font-display);font-size:var(--type-sm);letter-spacing:-.005em;color:var(--ui-text-tertiary);white-space:nowrap;line-height:normal}.v2l-root[data-viewport=mobile] .section-meta{white-space:normal;font-size:var(--type-sm);color:var(--ui-text-tertiary)}.hero{border-top:0;padding:80px 0 88px}.v2l-root[data-viewport=mobile] .hero{padding:40px 0 48px}.hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(560px,1fr);align-items:end;gap:64px;display:grid}@media (max-width:1280px){.v2l-root[data-viewport=desktop] .hero-grid{grid-template-columns:1fr;gap:40px}.v2l-root[data-viewport=desktop] .hero-vis{max-width:none}}.v2l-root[data-viewport=mobile] .hero-grid{grid-template-columns:1fr;gap:32px}.hero-overline{font-family:var(--font-mono);font-size:var(--type-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--ui-text-secondary);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.hero-overline .dot{color:var(--ui-text-quaternary)}.hero-overline .pulse-dot{background:var(--score-good);border-radius:50%;width:6px;height:6px;margin-right:4px;animation:2s ease-in-out infinite pulse;display:inline-block}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.v2l-root .hero-h1{font-family:var(--font-display);font-size:clamp(48px,6.4vw,76px);line-height:1;font-weight:var(--weight-semibold);letter-spacing:-.04em;color:var(--ui-text-primary);max-width:700px;margin:26px 0 0}.v2l-root[data-viewport=mobile] .hero-h1{letter-spacing:-.03em;margin-top:18px;font-size:38px;line-height:1.08}.v2l-root .hero-h1 em{font-family:var(--font-serif);font-style:italic;font-weight:var(--weight-regular);color:var(--ui-text-secondary);letter-spacing:-.025em;font-size:.98em}.hero-sub{font-size:var(--type-md);color:var(--ui-text-secondary);letter-spacing:-.003em;max-width:520px;margin:28px 0 0;line-height:1.55}.v2l-root[data-viewport=mobile] .hero-sub{font-size:var(--type-base)}.hero-cta-row{flex-wrap:wrap;align-items:center;gap:12px;margin-top:36px;display:flex}.hero-meta-row{font-family:var(--font-mono);font-size:var(--type-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--ui-text-tertiary);flex-wrap:wrap;align-items:center;gap:20px;margin-top:24px;display:flex}.hero-meta-row .sep{color:var(--ui-text-quaternary)}.hero-vis{border:1px solid var(--ui-border);border-radius:var(--radius-lg);background:var(--ui-surface);box-shadow:var(--shadow-soft-2);overflow:hidden}.hero-vis-head{border-bottom:1px solid var(--ui-border-2);justify-content:space-between;align-items:center;gap:12px;padding:18px 22px;display:flex}.hero-vis-head .label{font-family:var(--font-display);font-size:var(--type-sm);letter-spacing:-.005em;color:var(--ui-text-primary);font-weight:var(--weight-medium);white-space:nowrap}.hero-vis-head .week{font-family:var(--font-display);font-size:var(--type-sm);letter-spacing:-.005em;color:var(--ui-text-tertiary);white-space:nowrap}.hero-vis-grid{background:var(--ui-border-2);border-bottom:1px solid var(--ui-border-2);grid-template-columns:repeat(7,1fr);gap:1px;display:grid}.hero-vis-grid>.day{background:var(--ui-surface);flex-direction:column;gap:8px;min-height:200px;padding:12px 8px;display:flex}.hero-vis-grid .dow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ui-text-quaternary);font-size:9px}.hero-vis-grid .stack{flex-direction:column;flex:1;gap:4px;display:flex}.hero-vis-grid .session{--h:max(26px, calc(var(--min,60) * .7px));height:var(--h);background:var(--ui-surface-2);border-left:3px solid var(--ui-text-quaternary);border-radius:0 var(--radius-xs) var(--radius-xs) 0;letter-spacing:-.005em;color:var(--ui-text-primary);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;min-width:0;padding:0 8px 0 0;font-size:10.5px;display:flex;overflow:hidden}.hero-vis-grid .sport-ico{stroke-width:1.6px;flex-shrink:0;width:12px;height:12px;margin-left:8px}.session.swim{border-left-color:var(--sport-swim)}.session.swim .sport-ico{color:var(--sport-swim)}.session.bike{border-left-color:var(--sport-bike)}.session.bike .sport-ico{color:var(--sport-bike)}.session.run{border-left-color:var(--sport-run)}.session.run .sport-ico{color:var(--sport-run)}.session.strength{border-left-color:var(--sport-strength)}.session.strength .sport-ico{color:var(--sport-strength)}.session.conditioning{border-left-color:var(--sport-conditioning)}.session.conditioning .sport-ico{color:var(--sport-conditioning)}.session.mobility{background:var(--ui-surface-2);border:0;border-left:3px solid var(--ui-text-tertiary);border-radius:0 var(--radius-xs) var(--radius-xs) 0;color:var(--ui-text-tertiary);padding-left:12px}.session.mobility .sport-ico{display:none}.hero-vis-foot{flex-wrap:wrap;justify-content:space-between;align-items:stretch;gap:16px 0;padding:20px 22px;display:flex}.hero-vis-foot .stat{border-left:1px solid var(--ui-border);flex-direction:column;flex:110px;gap:8px;min-width:0;padding-left:18px;display:flex}.hero-vis-foot .stat:first-of-type{border-left:0;padding-left:0}.hero-vis-foot .stat-l{font-family:var(--font-display);font-size:var(--type-sm);letter-spacing:-.005em;color:var(--ui-text-tertiary);font-weight:var(--weight-medium);white-space:nowrap}.hero-vis-foot .stat-v{font-family:var(--font-mono);font-size:22px;font-weight:var(--weight-semibold);color:var(--ui-text-primary);letter-spacing:-.01em;font-variant-numeric:tabular-nums;white-space:nowrap}.hero-vis-foot .stat-v.good{color:var(--score-good)}.hero-vis-foot .stat-v.poor{color:var(--score-poor)}.hero-vis{container:hv/inline-size}@container hv (max-width:520px){.hero-vis-grid>.day{min-height:200px;padding:10px 6px}.hero-vis-grid .dow{letter-spacing:.16em;font-size:8.5px}.hero-vis-grid .session{font-size:9.5px}.hero-vis-grid .sport-ico{width:11px;height:11px;margin-left:6px}.hero-vis-head{flex-wrap:wrap;row-gap:4px;padding:14px 16px}.hero-vis-head .label,.hero-vis-head .week{white-space:normal}.hero-vis-foot{row-gap:14px;padding:14px 16px}.hero-vis-foot .stat-v{font-size:18px}}@container hv (max-width:380px){.hero-vis-foot .stat{flex-basis:45%}.hero-vis-foot .stat:nth-child(2){border-left:1px solid var(--ui-border);padding-left:14px}.hero-vis-foot .stat:nth-child(3){border-left:0;border-top:1px solid var(--ui-border-2);flex-basis:100%;padding-top:12px;padding-left:0}}.v2l-root[data-viewport=mobile] .hero-vis-grid>.day{min-height:96px;padding:10px}.v2l-root[data-viewport=mobile] .hero-vis-grid .session{gap:6px;font-size:10px}.v2l-root[data-viewport=mobile] .hero-vis-grid .sport-ico{width:12px;height:12px}.v2l-root[data-viewport=mobile] .hero-vis-foot{padding:16px}.v2l-root[data-viewport=mobile] .hero-vis-foot .stat-v{font-size:18px}.features-grid{background:var(--ui-border);border:1px solid var(--ui-border);border-radius:var(--radius-md);grid-template-columns:repeat(2,1fr);gap:1px;display:grid}.v2l-root[data-viewport=mobile] .features-grid{grid-template-columns:1fr}.feature{background:var(--ui-bg);flex-direction:column;gap:14px;padding:32px 32px 28px;display:flex}.v2l-root[data-viewport=mobile] .feature{padding:24px 22px}.feature-num{font-family:var(--font-mono);font-size:var(--type-xs);letter-spacing:.16em;color:var(--ui-text-quaternary)}.v2l-root .feature-title{font-size:22px;line-height:26px;font-weight:var(--weight-medium);letter-spacing:-.015em;color:var(--ui-text-primary)}.feature-body{font-size:var(--type-base);color:var(--ui-text-secondary);max-width:460px;line-height:1.55}.feature-foot{border-top:1px solid var(--ui-border-2);justify-content:flex-start;align-items:center;margin-top:auto;padding-top:16px;display:flex}.swatch-row .swatch{border-radius:2px;width:12px;height:12px;display:inline-block}.swatch-row .swatch.swim{background:var(--sport-swim)}.swatch-row .swatch.bike{background:var(--sport-bike)}.swatch-row .swatch.run{background:var(--sport-run)}.swatch-row .swatch.strength{background:var(--sport-strength)}.swatch-row .swatch.conditioning{background:var(--sport-conditioning)}.swatch-row{gap:6px;display:inline-flex}.test-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.v2l-root[data-viewport=mobile] .test-grid{grid-template-columns:1fr;gap:16px}.test{border:1px solid var(--ui-border);border-radius:var(--radius-md);background:var(--ui-surface);flex-direction:column;gap:18px;padding:28px 28px 22px;display:flex}.test-quote{font-size:var(--type-md);color:var(--ui-text-primary);letter-spacing:-.005em;line-height:1.55}.test-quote em{font-family:var(--font-serif);font-style:italic;font-weight:var(--weight-regular);color:var(--ui-text-primary);letter-spacing:-.01em;font-size:1.05em}.test-attr{border-top:1px solid var(--ui-border-2);align-items:center;gap:12px;margin-top:auto;padding-top:14px;display:flex}.test-avatar{border:1px solid var(--ui-border);background:var(--ui-surface-2);width:32px;height:32px;font-family:var(--font-mono);font-size:11px;font-weight:var(--weight-semibold);color:var(--ui-text-secondary);text-transform:uppercase;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.test-attr-meta{flex-direction:column;gap:2px;display:flex}.test-attr-name{font-size:var(--type-sm);font-weight:var(--weight-medium);color:var(--ui-text-primary)}.test-attr-role{font-family:var(--font-mono);font-size:var(--type-2xs);letter-spacing:.14em;text-transform:uppercase;color:var(--ui-text-tertiary)}.how-grid{border:1px solid var(--ui-border);border-radius:var(--radius-md);background:var(--ui-bg);grid-template-columns:repeat(3,1fr);gap:0;display:grid;overflow:hidden}.v2l-root[data-viewport=mobile] .how-grid{grid-template-columns:1fr}.how-step{border-right:1px solid var(--ui-border-2);flex-direction:column;gap:16px;padding:36px 32px 32px;display:flex;position:relative}.v2l-root[data-viewport=mobile] .how-step{border-right:0;border-bottom:1px solid var(--ui-border-2);padding:28px 24px 24px}.how-step:last-child{border-bottom:0;border-right:0}.how-num{font-family:var(--font-mono);font-size:40px;font-weight:var(--weight-light);color:var(--ui-text-quaternary);letter-spacing:-.03em;line-height:1}.v2l-root .how-title{font-size:20px;line-height:24px;font-weight:var(--weight-medium);letter-spacing:-.015em}.how-body{font-size:var(--type-base);color:var(--ui-text-secondary);line-height:1.55}.how-step .arrow-glyph{background:var(--ui-bg);width:16px;height:16px;color:var(--ui-text-quaternary);justify-content:center;align-items:center;display:inline-flex;position:absolute;top:44px;right:-8px}.v2l-root[data-viewport=mobile] .how-step .arrow-glyph,.how-step:last-child .arrow-glyph{display:none}.shots{flex-direction:column;gap:64px;display:flex}.shot{grid-template-columns:1fr 1.4fr;align-items:center;gap:56px;display:grid}@media (max-width:1080px){.v2l-root[data-viewport=desktop] .shot{grid-template-columns:1fr;gap:28px}.v2l-root[data-viewport=desktop] .shot.reverse .shot-text{order:1}.v2l-root[data-viewport=desktop] .shot.reverse .shot-vis{order:2}}.v2l-root[data-viewport=mobile] .shot{grid-template-columns:1fr;gap:24px}.shot.reverse{grid-template-columns:1.4fr 1fr}.shot.reverse .shot-text{order:2}.v2l-root[data-viewport=mobile] .shot.reverse{grid-template-columns:1fr}.v2l-root[data-viewport=mobile] .shot.reverse .shot-text{order:1}.v2l-root[data-viewport=mobile] .shot.reverse .shot-vis{order:2}.shot-text{flex-direction:column;gap:16px;max-width:460px;display:flex}.shot-eyebrow{font-family:var(--font-display);font-size:var(--type-sm);letter-spacing:-.005em;font-weight:var(--weight-medium);color:var(--ui-text-tertiary)}.v2l-root .shot-title{font-size:28px;line-height:32px;font-weight:var(--weight-medium);letter-spacing:-.02em;color:var(--ui-text-primary)}.v2l-root .shot-title em{font-family:var(--font-serif);font-style:italic;font-weight:var(--weight-regular);color:var(--ui-text-secondary)}.shot-body{font-size:var(--type-base);color:var(--ui-text-secondary);line-height:1.55}.shot-bullets{flex-direction:column;gap:8px;margin-top:8px;display:flex}.shot-bullet{font-family:var(--font-display);font-size:var(--type-base);color:var(--ui-text-secondary);letter-spacing:-.005em;align-items:baseline;gap:12px;display:flex}.shot-bullet:before{content:"";background:var(--ui-text-quaternary);flex-shrink:0;width:8px;height:1px;display:inline-block;transform:translateY(-4px)}.window{border:1px solid var(--ui-border);border-radius:var(--radius-lg);background:var(--ui-surface);box-shadow:var(--shadow-soft-2);overflow:hidden}.v2l-root[data-viewport=mobile] .window{box-shadow:none;border-radius:var(--radius-md)}.v2l-root[data-viewport=mobile] .window-bar{display:none}.window-bar{border-bottom:1px solid var(--ui-border-2);background:var(--ui-surface-2);align-items:center;gap:10px;padding:10px 14px;display:flex}.window-bar .label{font-family:var(--font-display);font-size:var(--type-sm);color:var(--ui-text-tertiary);letter-spacing:-.005em}.window-body{min-height:340px;padding:18px 18px 20px}.mock-coach{background:var(--ui-border-2);grid-template-columns:220px 1fr;gap:1px;min-height:380px;display:grid}.mock-coach-side{background:var(--ui-surface);flex-direction:column;gap:14px;padding:14px 12px;display:flex}.mock-coach-side .group{flex-direction:column;gap:4px;display:flex}.mock-coach-side .group-h{font-family:var(--font-display);font-size:var(--type-sm);letter-spacing:-.005em;color:var(--ui-text-tertiary);margin-bottom:4px}.mock-coach-side .row{border-radius:var(--radius-sm);justify-content:space-between;align-items:center;padding:6px 8px;font-size:11px;line-height:normal;display:flex}.mock-coach-side .row.active{background:var(--ui-surface-tint);color:var(--ui-text-primary);font-weight:var(--weight-medium);border-left:2px solid var(--ui-text-primary);padding-left:6px}.mock-coach-side .row .ct{font-family:var(--font-mono);color:var(--ui-text-tertiary);letter-spacing:.12em;font-size:9px}.mock-coach-main{background:var(--ui-bg);flex-direction:column;gap:12px;padding:16px 18px;display:flex}.mock-coach-main .pageh{border-bottom:1px solid var(--ui-border-2);justify-content:space-between;align-items:baseline;padding-bottom:10px;display:flex}.mock-coach-main .pageh-t{font-size:18px;font-weight:var(--weight-semibold);letter-spacing:-.015em;line-height:normal}.mock-coach-main .pageh-s{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ui-text-tertiary);font-size:9px;line-height:normal}.mock-card{border:1px solid var(--ui-border-2);border-radius:var(--radius-sm);background:var(--ui-surface);grid-template-columns:4px 1fr auto auto;gap:0;display:grid;overflow:hidden}.mock-card .stripe{background:var(--ui-text-quaternary)}.mock-card .stripe.run{background:var(--sport-run)}.mock-card .stripe.bike{background:var(--sport-bike)}.mock-card .stripe.strength{background:var(--sport-strength)}.mock-card .stripe.swim{background:var(--sport-swim)}.mock-card .stripe.conditioning{background:var(--sport-conditioning)}.mock-card .body{flex-direction:column;gap:2px;min-width:0;padding:10px 12px;display:flex}.mock-card .t{font-size:12px;font-weight:var(--weight-medium);white-space:nowrap;text-overflow:ellipsis;line-height:normal;overflow:hidden}.mock-card .m{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ui-text-tertiary);font-size:9px;line-height:normal}.mock-card .pill{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;border-radius:var(--radius-xs);color:var(--ui-text-tertiary);border:1px solid;align-self:center;margin-right:10px;padding:3px 7px;font-size:9px;line-height:normal}.mock-card .pill.poor{color:var(--score-poor)}.mock-card .pill.good{color:var(--score-good)}.mock-card .pill.mod{color:var(--score-moderate)}.mock-card .act{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ui-text-tertiary);align-self:center;padding:0 14px 0 8px;font-size:9px;line-height:normal}.mock-athlete{padding:18px 20px}.mock-athlete .hero-overline{letter-spacing:.16em;gap:6px;font-size:9.5px}.mock-athlete h2{font-size:32px;line-height:1.02;font-weight:var(--weight-semibold);letter-spacing:-.035em;color:var(--ui-text-primary);max-width:100%;margin:12px 0 4px}.mock-athlete h2 em{font-family:var(--font-serif);font-style:italic;font-weight:var(--weight-regular);color:var(--ui-text-secondary)}.mock-athlete .sub{color:var(--ui-text-secondary);margin:8px 0 16px;font-size:11px}.mock-athlete .triad{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px;display:grid}.mock-athlete .triad .stat{border-left:1px solid var(--ui-border);flex-direction:column;gap:4px;padding:8px 0 8px 10px;display:flex}.mock-athlete .triad .l{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ui-text-tertiary);font-size:9px;line-height:normal}.mock-athlete .triad .v{font-family:var(--font-mono);font-size:22px;font-weight:var(--weight-semibold);line-height:normal}.mock-athlete .triad .v.poor{color:var(--score-poor)}.mock-athlete .feed{flex-direction:column;gap:8px;display:flex}.mock-athlete .feed-card{border:1px solid var(--ui-border-2);border-radius:var(--radius-sm);background:var(--ui-surface);grid-template-columns:3px 1fr auto;padding:0;display:grid;overflow:hidden}.mock-athlete .feed-card .stripe{background:var(--ui-text-quaternary)}.mock-athlete .feed-card .body{min-width:0;padding:10px 12px}.mock-athlete .feed-card .t{font-size:12px;font-weight:var(--weight-medium);line-height:normal}.mock-athlete .feed-card .m{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ui-text-tertiary);margin-top:2px;font-size:9px;line-height:normal}.mock-athlete .feed-card .right{flex-direction:column;align-items:flex-end;gap:2px;padding:10px 12px;display:flex}.mock-athlete .feed-card .right .pill{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;border-radius:var(--radius-xs);border:1px solid;padding:2px 6px;font-size:8.5px;line-height:normal}.mock-cal{background:var(--ui-border-2);grid-template-columns:60px repeat(7,1fr);gap:1px;min-height:380px;display:grid}.mock-cal>.cell{background:var(--ui-bg);flex-direction:column;gap:4px;min-height:56px;padding:8px 6px;display:flex}.mock-cal .cell.head,.mock-cal .cell.time{background:var(--ui-surface-2)}.mock-cal .dow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ui-text-tertiary);font-size:9px;line-height:normal}.mock-cal .date{font-family:var(--font-mono);font-size:14px;font-weight:var(--weight-medium);color:var(--ui-text-primary);line-height:normal}.mock-cal .date.today{color:var(--score-good)}.mock-cal .time-l{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ui-text-tertiary);font-size:9px;line-height:normal}.mock-cal .ev{border-left:2px solid var(--ui-text-quaternary);background:var(--ui-surface);border-radius:0 var(--radius-sm) var(--radius-sm) 0;flex-direction:column;gap:1px;margin-bottom:2px;padding:4px 6px;display:flex}.mock-cal .ev.swim{border-left-color:var(--sport-swim)}.mock-cal .ev.bike{border-left-color:var(--sport-bike)}.mock-cal .ev.run{border-left-color:var(--sport-run)}.mock-cal .ev.strength{border-left-color:var(--sport-strength)}.mock-cal .ev.conditioning{border-left-color:var(--sport-conditioning)}.mock-cal .ev .et{font-size:10px;font-weight:var(--weight-medium);white-space:nowrap;text-overflow:ellipsis;line-height:normal;overflow:hidden}.mock-cal .ev .em{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ui-text-tertiary);font-size:8.5px;line-height:normal}.int-grid{background:var(--ui-border-2);border:1px solid var(--ui-border);border-radius:var(--radius-md);grid-template-columns:repeat(6,1fr);gap:1px;display:grid}.v2l-root[data-viewport=mobile] .int-grid{grid-template-columns:repeat(2,1fr)}.int-cell{background:var(--ui-bg);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:110px;padding:32px 16px 28px;display:flex}.int-name{font-family:var(--font-display);font-size:14px;font-weight:var(--weight-medium);color:var(--ui-text-primary);letter-spacing:-.005em;line-height:1.25}.int-status{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--score-good);font-size:9px;line-height:normal}.price-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.v2l-root[data-viewport=mobile] .price-grid{grid-template-columns:1fr;gap:16px}.price{border:1px solid var(--ui-border);border-radius:var(--radius-md);background:var(--ui-surface);flex-direction:column;gap:20px;padding:32px 28px 28px;display:flex}.price.featured{border-color:var(--ui-text-primary)}.price-head{flex-direction:column;gap:6px;display:flex}.price-tag{font-family:var(--font-display);font-size:var(--type-sm);letter-spacing:-.005em;font-weight:var(--weight-medium);color:var(--ui-text-tertiary);line-height:normal}.price.featured .price-tag{color:var(--ui-text-primary)}.v2l-root .price-name{font-size:22px;line-height:26px;font-weight:var(--weight-medium);letter-spacing:-.015em}.price-amount{border-bottom:1px solid var(--ui-border-2);align-items:baseline;gap:6px;padding-bottom:18px;display:flex}.price-amount .n{font-family:var(--font-mono);font-size:42px;font-weight:var(--weight-semibold);color:var(--ui-text-primary);letter-spacing:-.02em;line-height:normal}.price-amount .u{font-family:var(--font-mono);color:var(--ui-text-tertiary);letter-spacing:.14em;text-transform:uppercase;font-size:11px;line-height:normal}.price-free .n{color:var(--score-good)}.price-list{flex-direction:column;flex:1;gap:10px;display:flex}.price-row{color:var(--ui-text-primary);align-items:baseline;gap:10px;font-size:13px;line-height:1.45;display:flex}.price-row:before{content:"";background:var(--ui-text-tertiary);flex-shrink:0;width:8px;height:1px;margin-top:8px}.price-row.dim{color:var(--ui-text-tertiary)}.faq{border-top:1px solid var(--ui-border)}.faq-row{border-bottom:1px solid var(--ui-border-2);cursor:pointer;grid-template-columns:48px 1fr auto;align-items:baseline;gap:24px;padding:22px 0;display:grid}.faq-row:hover .faq-q{color:var(--ui-text-primary)}.faq-num{font-family:var(--font-mono);font-size:var(--type-xs);letter-spacing:.14em;color:var(--ui-text-quaternary);line-height:normal}.faq-q{font-size:var(--type-md);font-weight:var(--weight-medium);color:var(--ui-text-primary);letter-spacing:-.005em;line-height:normal}.faq-toggle{font-family:var(--font-mono);font-size:16px;font-weight:var(--weight-regular);color:var(--ui-text-tertiary);line-height:normal}.faq-a{font-size:var(--type-base);color:var(--ui-text-secondary);grid-column:2/4;max-width:720px;margin-top:12px;line-height:1.55}.faq-row.collapsed .faq-a{display:none}.about{grid-template-columns:1fr 1.6fr;align-items:start;gap:56px;display:grid}.about-side{font-family:var(--font-display);font-size:var(--type-base);color:var(--ui-text-primary);letter-spacing:-.005em;flex-direction:column;gap:12px;line-height:1.45;display:flex}.about-side .l{font-size:var(--type-sm);color:var(--ui-text-tertiary);font-weight:var(--weight-medium);margin-bottom:2px;display:block}.about-body p{font-size:var(--type-md);color:var(--ui-text-primary);letter-spacing:-.005em;max-width:640px;margin-bottom:16px;line-height:1.6}.about-body p em{font-family:var(--font-serif);font-style:italic;font-weight:var(--weight-regular);color:var(--ui-text-secondary)}.cta-band{border-top:1px solid var(--ui-border);background:var(--ui-surface-2);padding:96px 0}.v2l-root[data-viewport=mobile] .cta-band{padding:56px 0}.cta-inner{flex-direction:column;align-items:flex-start;gap:28px;max-width:720px;display:flex}.v2l-root .cta-title{font-size:44px;line-height:1.1;font-weight:var(--weight-semibold);letter-spacing:-.035em;color:var(--ui-text-primary);max-width:12ch;margin:0}@media (max-width:1080px){.v2l-root[data-viewport=desktop] .cta-title{max-width:14ch;font-size:38px}}.v2l-root[data-viewport=mobile] .cta-title{font-size:30px}.v2l-root .cta-title em{font-family:var(--font-serif);font-style:italic;font-weight:var(--weight-regular);color:var(--ui-text-secondary)}.cta-sub{font-size:var(--type-md);color:var(--ui-text-secondary);max-width:540px}footer{background:var(--ui-surface-2);border-top:1px solid var(--ui-border);padding:64px 0 32px}.v2l-root[data-viewport=mobile] footer{padding:40px 0 24px}.footer-grid{border-bottom:1px solid var(--ui-border-2);grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding-bottom:40px;display:grid}.v2l-root[data-viewport=mobile] .footer-grid{grid-template-columns:1fr 1fr;gap:24px}.footer-col{flex-direction:column;gap:12px;display:flex}.footer-col h5{font-family:var(--font-mono);font-size:var(--type-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--ui-text-tertiary);font-weight:var(--weight-semibold);margin:0}.footer-col a{font-size:var(--type-sm);color:var(--ui-text-secondary);line-height:normal;text-decoration:none}.footer-col a:hover{color:var(--ui-text-primary)}.footer-brand-blurb{font-size:var(--type-sm);color:var(--ui-text-tertiary);max-width:320px;margin-top:4px;line-height:1.5}.footer-bottom{font-family:var(--font-mono);font-size:var(--type-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--ui-text-quaternary);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:24px;display:flex}.footer-social{gap:14px;display:flex}.footer-social a{color:var(--ui-text-tertiary)}.footer-social a:hover{color:var(--ui-text-primary)}.v2l-root[data-state=loading] .hide-on-loading{display:none!important}.v2l-root[data-state=loading] section:not(.hero),.v2l-root[data-state=loading] .cta-band,.v2l-root[data-state=loading] footer,.v2l-root[data-state=loading] .error-block,.skel{display:none}.v2l-root[data-state=loading] .skel{display:block}.v2l-root[data-state=loading] .skel-buttons{gap:12px;margin-top:36px;display:flex}.skel{background:linear-gradient(90deg, var(--ui-border-2) 0%, var(--ui-border) 50%, var(--ui-border-2) 100%);animation:shimmer var(--motion-shimmer) ease-in-out infinite;border-radius:var(--radius-sm);color:#0000;background-size:200% 100%}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.v2l-root[data-state=loading] .skel-overline{width:480px;max-width:80%;height:14px;margin-top:0}.v2l-root[data-state=loading] .skel-h1{max-width:700px;height:188px;margin-top:26px}.v2l-root[data-viewport=mobile][data-state=loading] .skel-h1{height:120px}.v2l-root[data-viewport=mobile][data-state=loading] .skel-overline{width:240px}.v2l-root[data-state=loading] .skel-sub{max-width:520px;height:56px;margin-top:28px}.v2l-root[data-state=loading] .skel-vis{width:100%;height:380px}.v2l-root[data-state=loading] .skel-buttons .skel{height:44px;display:inline-block}.v2l-root[data-state=loading] .skel-buttons .skel.b1{width:168px}.v2l-root[data-state=loading] .skel-buttons .skel.b2{width:110px}.error-block{border-left:3px solid var(--score-poor);background:color-mix(in oklch, var(--score-poor) 8%, var(--ui-bg));margin:0;padding:18px 22px 18px 24px;display:none}.v2l-root[data-state=error] .error-block{display:block}.error-block .e-msg{font-size:var(--type-md);color:var(--ui-text-primary);max-width:540px;line-height:1.5}.error-block .e-msg em{font-family:var(--font-serif);font-style:italic;font-weight:var(--weight-regular);color:var(--ui-text-secondary);letter-spacing:-.005em}.v2l-root[data-state=error] .int-grid{opacity:.4}.v2l-root[data-state=error] .int-cell .int-status{color:var(--ui-text-quaternary)}.v2l-root[data-viewport=mobile] .hero-vis,.v2l-root[data-viewport=mobile] .skel-vis{display:none}.v2l-root[data-viewport=mobile] .hero-grid{flex-direction:column;gap:0;display:flex}.v2l-root[data-viewport=mobile] .hero-text{flex-direction:column;display:flex}.v2l-root[data-viewport=mobile] .hero-meta-row,.v2l-root[data-viewport=mobile] .hero-cta-row .btn--secondary{display:none}.v2l-root[data-viewport=mobile] .section-head{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:28px;padding-bottom:14px}.v2l-root[data-viewport=mobile] .section-meta{display:none}.v2l-root[data-viewport=mobile] .section-title{font-size:26px;line-height:30px}.v2l-root[data-viewport=mobile] .features-grid{background:0 0;border:0;border-radius:0;gap:0}.v2l-root[data-viewport=mobile] .feature{border-top:1px solid var(--ui-border);gap:10px;padding:26px 0 22px}.v2l-root[data-viewport=mobile] .feature:first-child{border-top:0;padding-top:4px}.v2l-root[data-viewport=mobile] .feature-foot,.v2l-root[data-viewport=mobile] .feature-num{display:none}.v2l-root[data-viewport=mobile] .feature-body{font-size:var(--type-base)}.v2l-root[data-viewport=mobile] .about{grid-template-columns:1fr;gap:24px}.v2l-root[data-viewport=mobile] .about-side{font-size:var(--type-sm)}.v2l-root[data-viewport=mobile] .cta-title{font-size:28px;line-height:32px}.sticky-cta{display:none}.v2l-root[data-viewport=mobile] .sticky-cta{z-index:60;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:color-mix(in oklch, var(--ui-bg) 92%, transparent);-webkit-backdrop-filter:saturate(140%)blur(8px);backdrop-filter:saturate(140%)blur(8px);border-top:1px solid var(--ui-border);align-items:center;gap:10px;display:flex;position:fixed;bottom:0;left:0;right:0}.sticky-cta .btn{flex:1;justify-content:center;padding:12px 14px}.sticky-cta .btn--ghost{color:var(--ui-text-secondary);flex:none;padding:12px 14px}.v2l-root[data-viewport=mobile]{padding-bottom:80px}.v2l-root[data-viewport=mobile] footer{padding-bottom:calc(40px + env(safe-area-inset-bottom))}.v2l-root[data-state=empty] .empty-disclaimer{border-left:3px solid var(--ui-text-tertiary);background:var(--ui-surface);font-family:var(--font-mono);font-size:var(--type-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--ui-text-secondary);margin:0;padding:18px 22px;display:block}.empty-disclaimer{display:none}@media (max-width:767px){.v2l-root[data-viewport=mobile] section{overflow-x:clip}.v2l-root[data-viewport=mobile] .shot-vis{overflow:hidden}.v2l-root[data-viewport=mobile] .mock-cal{transform-origin:0 0;margin-bottom:-164px;transform:scale(.568)}}
