:root{--bg:#fafaf8;--bg-alt:#fdfdf8;--text:#1a1a1a;--text-dim:#555;--text-muted:#999;--hairline:#e8e6e2;--hairline-soft:#edebe7;--accent:#cf0;--accent-dark:#9c0;--accent-text:#6b8c00;--ink:#1a1a1a;--glow:#fafaf8;--shadow-glow:0 0 30px #ccff0038;--shadow-card:0 1px 3px #0000000a;--ease:cubic-bezier(.2, 0, 0, 1);--display:var(--font-display), "Barlow Condensed", system-ui, -apple-system, sans-serif;--body:var(--font-body), "DM Sans", system-ui, -apple-system, BlinkMacSystemFont, sans-serif}.skip-link{background:var(--text);color:#fff;font-family:var(--body);z-index:999;border-radius:4px;padding:8px 16px;font-size:.9rem;text-decoration:none;position:absolute;top:8px;left:-9999px}.skip-link:focus{outline:2px solid var(--accent);outline-offset:2px;left:8px}*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--body);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:17px;line-height:1.7;overflow-x:hidden}img,svg{max-width:100%;display:block}h1,h2,h3{font-family:var(--display);letter-spacing:-.01em;color:var(--text);font-weight:800;line-height:.96}.eyebrow{font-family:var(--display);letter-spacing:.22em;text-transform:uppercase;color:var(--text);font-size:.78rem;font-weight:700}.hero{flex-direction:column;justify-content:center;align-items:flex-start;max-width:820px;min-height:92vh;margin:0 auto;padding:56px 24px 120px;display:flex}.wordmark{font-family:var(--display);letter-spacing:.28em;text-transform:uppercase;color:var(--text);align-items:center;gap:12px;margin-bottom:44px;font-size:.82rem;font-weight:700;display:flex}.wordmark:before{content:"";background:var(--accent);width:8px;height:8px;box-shadow:var(--shadow-glow);border-radius:50%;animation:2s ease-out infinite beatPulse}@keyframes beatPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.85)}}.hero h1{letter-spacing:-.02em;text-transform:uppercase;margin-bottom:32px;font-size:clamp(2.8rem,8.5vw,5.8rem);font-weight:800;line-height:.92}.hero h1 em{background:linear-gradient(180deg, transparent 58%, var(--accent) 58%, var(--accent) 96%, transparent 96%);-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 .08em;font-style:normal}.hero .intro{font-family:var(--body);max-width:54ch;color:var(--text);margin-bottom:32px;font-size:1.08rem;line-height:1.65}.hero .race-day{font-family:var(--display);color:var(--text-dim);letter-spacing:.14em;text-transform:uppercase;border-top:1px solid var(--hairline);margin-bottom:48px;padding-top:20px;font-size:.88rem;font-weight:600}.scroll-cue{font-family:var(--display);letter-spacing:.28em;text-transform:uppercase;color:var(--text);align-items:center;gap:14px;font-size:.82rem;font-weight:700;display:flex}.scroll-cue:after{content:"";background:var(--accent);width:2px;height:36px;box-shadow:var(--shadow-glow);animation:cue 2s var(--ease) infinite}@keyframes cue{0%{opacity:0;transform:scaleY(0)translateY(-10px)}40%{opacity:1;transform:scaleY(1)translateY(0)}to{opacity:0;transform:scaleY(1)translateY(16px)}}.run{background:var(--bg);isolation:isolate;position:relative;overflow:clip}.map-col{border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);z-index:3;background:var(--bg-alt);width:100%;height:42vh;position:sticky;top:0;box-shadow:0 10px 18px -12px #0000001f}#map,#map-fallback{background:var(--bg-alt);width:100%;height:100%}#map-fallback{padding:24px}.maplibregl-canvas{outline:none!important}.maplibregl-ctrl-attrib{font-family:var(--body)!important;color:var(--text-dim)!important;background:#fafaf8e6!important;border-radius:4px!important;padding:3px 8px!important;font-size:10px!important}.maplibregl-ctrl-attrib a{color:var(--text-dim)!important}.beats{z-index:2;max-width:100%;padding:40px 24px 0;position:relative}.beat{text-align:left;flex-direction:column;justify-content:flex-start;max-width:560px;min-height:100vh;margin:0 auto;padding:18vh 12px 10vh;scroll-margin-top:20vh;display:flex}.beat:first-of-type{padding-top:14vh}.beat:last-of-type{padding-bottom:80px}.beat-eyebrow{font-family:var(--display);letter-spacing:.22em;text-transform:uppercase;color:var(--accent-text);align-items:center;gap:10px;margin-bottom:22px;font-size:.75rem;font-weight:700;display:inline-flex}.beat-eyebrow:before{content:"";background:var(--accent);width:24px;height:2px;display:inline-block}.beat-tip{font-family:var(--body);color:var(--text);letter-spacing:-.005em;margin-bottom:0;font-size:clamp(1.2rem,2.9vw,1.55rem);font-weight:500;line-height:1.35}.beat-tip em{background:linear-gradient(180deg, transparent 60%, var(--accent) 60%, var(--accent) 94%, transparent 94%);-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 .1em;font-style:normal;font-weight:600}.beat-details{border-top:1px solid var(--hairline);width:100%;margin-top:32px;padding-top:24px}.tip-group{margin-bottom:22px}.tip-group:last-child{margin-bottom:0}.tip-pill{background:var(--text);color:var(--bg);font-family:var(--display);letter-spacing:.22em;text-transform:uppercase;border-radius:999px;margin-bottom:10px;padding:5px 13px 4px;font-size:.66rem;font-weight:700;display:inline-block}.tip-pill.pill-pace{background:var(--accent);color:var(--text);box-shadow:var(--shadow-glow)}.tip-body{font-family:var(--body);color:var(--text);margin:0;font-size:.94rem;line-height:1.6}.tip-list{margin:0;padding:0;list-style:none}.tip-list li{font-family:var(--body);color:var(--text);margin-bottom:6px;padding-left:18px;font-size:.94rem;line-height:1.5;position:relative}.tip-list li:last-child{margin-bottom:0}.tip-list li:before{content:"";background:var(--accent-text);width:9px;height:2px;position:absolute;top:10px;left:0}.tip-list li em{background:linear-gradient(180deg, transparent 62%, var(--accent) 62%, var(--accent) 94%, transparent 94%);-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 .08em;font-style:normal;font-weight:600}.here-dot{pointer-events:none;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.here-dot .inner{background:var(--accent);border:2.5px solid var(--text);z-index:2;width:12px;height:12px;box-shadow:var(--shadow-glow);border-radius:50%;position:relative}.here-dot:before{content:"";background:var(--accent);opacity:.5;border-radius:50%;width:24px;height:24px;animation:1.8s ease-out infinite pulse;position:absolute}@keyframes pulse{0%{opacity:.5;transform:scale(.55)}to{opacity:0;transform:scale(2.4)}}.landmark-marker{pointer-events:none;flex-direction:column;align-items:center;gap:3px;display:flex;transform:translateY(3px)}.lm-dot{background:var(--text);border:2px solid var(--bg);border-radius:50%;width:10px;height:10px;box-shadow:0 1px 3px #00000040}.lm-label{font-family:var(--display);letter-spacing:.16em;text-transform:uppercase;color:var(--text);white-space:nowrap;border:1px solid var(--hairline);background:#fafaf8f0;border-radius:3px;padding:3px 7px;font-size:11px;font-weight:700}.outro{border-top:1px solid var(--hairline);max-width:680px;margin:0 auto;padding:96px 24px 60px}.outro .eyebrow{align-items:center;gap:12px;margin-bottom:32px;display:inline-flex}.outro .eyebrow:before{content:"";background:var(--accent);width:28px;height:2px;box-shadow:var(--shadow-glow);display:inline-block}.outro .note p{font-family:var(--body);color:var(--text);margin-bottom:18px;font-size:1.08rem;line-height:1.7}.outro .signature{font-family:var(--display);text-transform:uppercase;letter-spacing:.06em;color:var(--text);font-weight:700;display:inline-block;position:relative;margin-top:24px!important;font-size:1.5rem!important}.outro .signature:after{content:"";background:var(--accent);z-index:-1;opacity:.9;height:8px;position:absolute;bottom:3px;left:0;right:-4px}.email-row{border-top:1px solid var(--hairline);margin:56px 0 40px;padding-top:32px}.email-row label{font-family:var(--display);letter-spacing:.16em;text-transform:uppercase;color:var(--text);margin-bottom:14px;font-size:.78rem;font-weight:700;display:block}.email-fields{grid-template-columns:1fr;gap:8px;display:grid}.email-row input{font-family:var(--body);border:1.5px solid var(--hairline);background:var(--bg-alt);min-height:48px;color:var(--text);transition:border-color .15s var(--ease), box-shadow .15s var(--ease);border-radius:4px;padding:12px 14px;font-size:.95rem}.email-row input::placeholder{color:var(--text-muted)}.email-row input:focus-visible{border-color:var(--accent-dark);outline:none;box-shadow:0 0 0 3px #ccff0040}.email-row button{font-family:var(--display);letter-spacing:.18em;text-transform:uppercase;color:var(--text);background:var(--accent);cursor:pointer;min-height:48px;transition:all .18s var(--ease);box-shadow:var(--shadow-glow);border:none;border-radius:4px;padding:12px 24px;font-size:.9rem;font-weight:700}.email-row button:hover,.email-row button:focus-visible{background:var(--accent-dark);transform:translateY(-1px);box-shadow:0 4px 20px #cf06}.email-row button:focus-visible{outline:2px solid var(--text);outline-offset:3px}.email-row button:disabled{background:var(--hairline);color:var(--text-muted);box-shadow:none;cursor:default;transform:none}footer.site-foot{font-family:var(--display);color:var(--text-dim);text-align:center;border-top:1px solid var(--hairline);letter-spacing:.12em;text-transform:uppercase;padding-top:32px;font-size:.78rem;font-weight:600}footer.site-foot p:last-child{letter-spacing:.04em;text-transform:none;color:var(--text-muted);font-weight:500;font-family:var(--body);margin-top:6px;font-size:.76rem}@media (min-width:1024px){.hero{max-width:920px;min-height:95vh;padding:72px 56px 140px}.run{grid-template-columns:55vw 1fr;display:grid}.map-col{border-top:none;border-bottom:none;border-right:1px solid var(--hairline);align-self:start;height:100vh}.beats{padding:0 48px 0 0}.beat{max-width:540px;min-height:100vh;padding:60px 48px}.beat:first-of-type{min-height:100vh}.outro{padding:120px 48px 72px}.email-fields{grid-template-columns:1fr 1.4fr auto;gap:10px}}@media (min-width:640px) and (max-width:1023px){.hero{padding:72px 48px 140px}.map-col{height:58vh}.beats{padding:40px 32px 0}.beat{padding:60px 24px}.email-fields{grid-template-columns:1fr 1.4fr auto;gap:10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.scroll-cue:after,.here-dot:before{display:none}.wordmark:before{animation:none}}:focus-visible{outline:2px solid var(--accent-dark);outline-offset:3px;border-radius:4px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.map-col{flex-direction:column;display:flex}.map-inner{flex:auto;min-height:0;position:relative}.map-inner>#map,.map-inner>#map-fallback{width:100%;height:100%;position:absolute;inset:0}.map-inner>[hidden]{display:none!important}.elevation-panel{background:var(--bg);border-top:1px solid var(--hairline);flex:none;height:54px;padding:8px 12px 4px;position:relative}.elevation-panel-label{font-family:var(--display);letter-spacing:.22em;text-transform:uppercase;color:var(--text-dim);pointer-events:none;z-index:2;font-size:.58rem;font-weight:700;display:none;position:absolute;top:6px;left:14px}#elev-svg{width:100%;height:100%;display:block;overflow:visible}.elev-area{fill:var(--accent);opacity:.18}.elev-line{fill:none;stroke:var(--text);stroke-width:1.3px;stroke-linejoin:round;stroke-linecap:round}.elev-climb-band{fill:var(--accent);opacity:.22}.elev-mile-tick{stroke:var(--hairline);stroke-width:1px}.elev-mile-label{font-family:var(--display);fill:var(--text-dim);text-anchor:middle;letter-spacing:.04em;font-size:8px;font-weight:700}.elev-here-dot{fill:var(--accent);stroke:var(--text);stroke-width:1.5px;filter:drop-shadow(0 0 4px #ccff008c);transition:cx .7s var(--ease), cy .7s var(--ease)}@media (prefers-reduced-motion:reduce){.elev-here-dot{transition:none}}@media (max-width:639px){.elev-mile-label{display:none}}@media (min-width:640px) and (max-width:1023px){.map-col{height:55vh}}@media (min-width:640px){.elevation-panel{height:88px;padding:14px 14px 6px}.elevation-panel-label{display:inline-block}}@media (min-width:1024px){.elevation-panel{height:118px;padding:16px 20px 8px}.elev-mile-label{font-size:9px}.elevation-panel-label{top:8px;left:20px}}.plan-export .lead{font-family:var(--body);color:var(--text);max-width:58ch;margin-bottom:28px;font-size:1.02rem;line-height:1.6}.plan-contents{background:var(--bg-alt);border-radius:10px;margin:0 0 32px;padding:18px 22px;list-style:none}.plan-contents li{font-family:var(--body);color:var(--text);padding:6px 0 6px 30px;font-size:.96rem;line-height:1.5;position:relative}.plan-contents li:before{content:"✓";color:var(--accent-text);font-family:var(--display);font-size:1rem;font-weight:900;position:absolute;top:6px;left:2px}.plan-form{background:var(--text);color:var(--bg);border-radius:12px;padding:22px 22px 20px}.plan-form label{font-family:var(--display);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:14px;font-size:.76rem;font-weight:700;display:block}.plan-fields{grid-template-columns:1fr;gap:10px;display:grid}.plan-form input{font-family:var(--body);color:#fff;min-height:48px;transition:border-color .14s var(--ease), box-shadow .14s var(--ease);background:#0f0f0f;border:1px solid #444;border-radius:6px;padding:12px 14px;font-size:.95rem}.plan-form input::placeholder{color:#888}.plan-form input:focus-visible{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #ccff004d}.plan-btn{font-family:var(--display);letter-spacing:.18em;text-transform:uppercase;color:var(--text);background:var(--accent);cursor:pointer;min-height:48px;transition:all .16s var(--ease);box-shadow:var(--shadow-glow);border:none;border-radius:6px;padding:14px 22px;font-size:.9rem;font-weight:700}.plan-btn:hover,.plan-btn:focus-visible{background:var(--accent-dark);transform:translateY(-1px)}.plan-btn:focus-visible{outline-offset:3px;outline:2px solid #fff}.plan-btn:disabled{color:#888;box-shadow:none;cursor:default;background:#444;transform:none}.plan-note{font-family:var(--body);color:#aaa;margin:12px 0 0;font-size:.78rem;line-height:1.5}.plan-success{background:var(--accent-soft);border:1.5px solid var(--accent);border-radius:12px;padding:22px 22px 20px}.plan-success-title{font-family:var(--display);letter-spacing:-.01em;text-transform:uppercase;color:var(--text);align-items:center;gap:10px;margin-bottom:6px;font-size:1.15rem;font-weight:800;display:flex}.plan-success-title:before{content:"✓";color:var(--accent-text);font-size:1.1em}.plan-success p{font-family:var(--body);color:var(--text);margin:0 0 12px;font-size:.95rem;line-height:1.55}.plan-preview{text-align:center;margin-top:18px}.preview-link{font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--text);border:none;border-bottom:2px solid var(--accent);cursor:pointer;transition:all .14s var(--ease);background:0 0;padding:4px 2px;font-size:.82rem;font-weight:700}.preview-link:hover{color:var(--accent-deep);border-bottom-color:var(--accent-dark)}.preview-link:focus-visible{outline:2px solid var(--accent-dark);outline-offset:4px}.print-plan{max-width:740px;font-family:var(--body);color:#000;background:#fff;margin:0 auto;padding:40px 48px;line-height:1.4;display:none}.pp-header{border-bottom:2px solid #000;margin-bottom:20px;padding-bottom:14px}.pp-kicker{font-family:var(--display);letter-spacing:.22em;text-transform:uppercase;color:#666;margin-bottom:6px;font-size:.72rem;font-weight:700}.pp-title{font-family:var(--display);letter-spacing:-.02em;text-transform:uppercase;color:#000;margin-bottom:8px;font-size:2.4rem;font-weight:900;line-height:.95}.pp-subtitle{font-family:var(--display);letter-spacing:.08em;color:#333;font-size:.9rem;font-weight:700}.pp-subtitle em{background:#cf0;padding:0 6px;font-style:normal}.pp-section{break-inside:avoid;margin-bottom:20px}.pp-section h3{font-family:var(--display);letter-spacing:.2em;text-transform:uppercase;color:#000;border-bottom:1px solid #999;margin-bottom:8px;padding-bottom:4px;font-size:.74rem;font-weight:700}.pp-splits{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.86rem}.pp-splits th,.pp-splits td{text-align:left;border-bottom:1px solid #ddd;padding:6px 4px}.pp-splits th{font-family:var(--display);letter-spacing:.16em;text-transform:uppercase;color:#666;font-size:.6rem;font-weight:700}.pp-splits td.pp-pace{font-family:var(--display);font-weight:700}.pp-splits td.pp-clock{font-family:var(--display);color:#333;font-weight:700}.pp-two-col{grid-template-columns:1fr 1fr;gap:18px;display:grid}.pp-list{margin:0;padding:0;font-size:.84rem;line-height:1.5;list-style:none}.pp-list li{padding:2px 0 2px 16px;position:relative}.pp-list li:before{content:"—";color:#666;font-weight:700;position:absolute;left:0}.pp-moves{margin:0;padding-left:22px;font-size:.86rem;list-style:decimal}.pp-moves li{margin-bottom:3px;padding:2px 0 2px 4px}.pp-moves strong{font-family:var(--display);font-weight:700}.pp-quote{font-family:var(--display);color:#000;background:#fafaf0;border-left:3px solid #cf0;margin:8px 0;padding:10px 16px;font-size:1rem;font-style:italic;font-weight:600}.pp-signoff{font-family:var(--display);letter-spacing:.08em;color:#666;border-top:1px solid #999;justify-content:space-between;align-items:baseline;margin-top:28px;padding-top:14px;font-size:.76rem;display:flex}.pp-signoff strong{color:#000}@media print{@page{size:letter;margin:.5in}body{visibility:hidden}.print-plan,.print-plan *{visibility:visible}.print-plan{width:100%;max-width:100%;padding:0;position:absolute;top:0;left:0;display:block!important}.print-plan .pp-title{font-size:28pt}.print-plan .pp-section h3,.print-plan .pp-splits,.print-plan .pp-list,.print-plan .pp-moves{font-size:9pt}.print-plan .pp-quote{font-size:11pt}}.hero-toc{background:var(--bg-alt);border:1px solid var(--hairline);border-radius:8px;width:100%;max-width:600px;margin-top:44px;margin-bottom:48px;padding:22px 26px}.hero-toc-header{font-family:var(--display);letter-spacing:.22em;text-transform:uppercase;color:var(--text);align-items:center;gap:10px;margin-bottom:14px;font-size:.76rem;font-weight:700;display:flex}.hero-toc-header:before{content:"";background:var(--accent);width:6px;height:6px;box-shadow:var(--shadow-glow);border-radius:50%}.hero-toc ol{list-style:none}.hero-toc li{border-top:1px solid var(--hairline-soft)}.hero-toc li:first-child{border-top:none}.hero-toc a{color:var(--text);transition:all .16s var(--ease);grid-template-columns:30px 1fr auto;align-items:baseline;gap:14px;padding:11px 4px 11px 0;text-decoration:none;display:grid;position:relative}.hero-toc a:before{content:"";background:var(--accent);width:0;transition:width .16s var(--ease);border-radius:0 2px 2px 0;position:absolute;top:10px;bottom:10px;left:-18px}.hero-toc a:hover:before,.hero-toc a:focus-visible:before{width:4px}.hero-toc .n{font-family:var(--display);letter-spacing:.14em;color:var(--accent-text);font-size:.8rem;font-weight:700}.hero-toc .t{font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--text);font-size:.95rem;font-weight:700}.hero-toc .d{font-family:var(--body);color:var(--text-dim);text-align:right;font-size:.78rem}.nav-chip{background:var(--text);color:var(--bg);cursor:pointer;z-index:50;opacity:0;pointer-events:none;transition:opacity .22s var(--ease), transform .22s var(--ease), background .16s var(--ease);max-width:calc(100vw - 32px);min-height:44px;font-family:var(--display);border:none;border-radius:999px;align-items:center;gap:10px;padding:10px 18px 10px 14px;display:inline-flex;position:fixed;bottom:16px;right:16px;transform:translateY(8px);box-shadow:0 4px 24px #0000002e}.nav-chip.visible,.nav-chip[data-visible]{opacity:1;pointer-events:auto;transform:translateY(0)}.nav-chip-dot{background:var(--accent);width:8px;height:8px;box-shadow:var(--shadow-glow);border-radius:50%;flex-shrink:0}.nav-chip-num{letter-spacing:.16em;color:var(--accent);font-size:.7rem;font-weight:700}.nav-chip-title{letter-spacing:.12em;text-transform:uppercase;color:var(--bg);text-overflow:ellipsis;white-space:nowrap;max-width:160px;font-size:.82rem;font-weight:700;overflow:hidden}.nav-chip:hover{background:#000}.nav-chip:focus-visible{outline:2px solid var(--accent-dark);outline-offset:3px}.nav-drawer{background:var(--bg);border:1px solid var(--hairline);z-index:49;opacity:0;pointer-events:none;width:min(380px,100vw - 32px);transition:opacity .2s var(--ease), transform .2s var(--ease);border-radius:12px;padding:6px;position:fixed;bottom:72px;right:16px;transform:translateY(8px);box-shadow:0 10px 40px #0000002e}.nav-drawer[aria-hidden=false]{opacity:1;pointer-events:auto;transform:translateY(0)}.nav-drawer-header{font-family:var(--display);letter-spacing:.22em;text-transform:uppercase;color:var(--text-dim);border-bottom:1px solid var(--hairline);margin-bottom:4px;padding:14px 16px 10px;font-size:.68rem;font-weight:700}.nav-drawer ol{list-style:none}.nav-drawer li{position:relative}.nav-drawer a{color:var(--text);transition:background .16s var(--ease);border-radius:8px;grid-template-rows:auto auto;grid-template-columns:38px 1fr;column-gap:14px;padding:11px 14px;text-decoration:none;display:grid}.nav-drawer a:hover{background:var(--bg-alt)}.nav-drawer a:focus-visible{outline:2px solid var(--accent-dark);outline-offset:-2px}.nav-drawer li.active a:before,.nav-drawer li[data-active] a:before{content:"";background:var(--accent);width:3px;box-shadow:var(--shadow-glow);border-radius:0 2px 2px 0;position:absolute;top:10px;bottom:10px;left:0}.nav-drawer li.active .t,.nav-drawer li[data-active] .t{color:var(--accent-text)}.nav-drawer .n{font-family:var(--display);letter-spacing:.14em;color:var(--accent-text);grid-row:1/3;align-self:center;font-size:.88rem;font-weight:700}.nav-drawer .t{font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--text);grid-column:2;font-size:.9rem;font-weight:700}.nav-drawer .d{font-family:var(--body);color:var(--text-dim);grid-column:2;margin-top:2px;font-size:.8rem}.nav-backdrop{z-index:48;opacity:0;pointer-events:none;transition:opacity .2s var(--ease);background:#1a1a1a47;position:fixed;inset:0}.nav-backdrop.visible,.nav-backdrop[data-open]{opacity:1;pointer-events:auto}.sec-marker{border-bottom:1px solid var(--hairline);flex-wrap:wrap;align-items:baseline;gap:8px 14px;margin-bottom:24px;padding-bottom:14px;display:flex}.sec-marker-num{font-family:var(--display);letter-spacing:.22em;text-transform:uppercase;color:var(--accent-text);align-items:center;gap:10px;font-size:.72rem;font-weight:700;display:inline-flex}.sec-marker-num:before{content:"";background:var(--accent);width:22px;height:2px;display:inline-block}.sec-marker-title{font-family:var(--display);letter-spacing:.18em;text-transform:uppercase;color:var(--text);font-size:.72rem;font-weight:600}.info-section{border-top:1px solid var(--hairline);max-width:720px;margin:0 auto;padding:72px 24px 56px;scroll-margin-top:24px}.info-section h2{letter-spacing:-.01em;text-transform:uppercase;margin-bottom:24px;font-size:clamp(1.85rem,5vw,2.75rem);font-weight:700;line-height:1}.info-section h3{font-family:var(--display);letter-spacing:.22em;text-transform:uppercase;color:var(--text);align-items:center;gap:10px;margin-top:32px;margin-bottom:12px;font-size:.82rem;font-weight:700;display:inline-flex}.info-section h3:before{content:"";background:var(--accent);width:16px;height:2px;display:inline-block}.info-section p{font-family:var(--body);color:var(--text);margin-bottom:16px;font-size:1.02rem;line-height:1.7}.info-section em{background:linear-gradient(180deg, transparent 60%, var(--accent) 60%, var(--accent) 94%, transparent 94%);-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 .1em;font-style:normal;font-weight:600}.callout{background:var(--bg-alt);border-left:3px solid var(--accent);border-radius:0 6px 6px 0;margin:20px 0;padding:14px 18px;font-size:.94rem;line-height:1.55}.callout strong{font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--accent-text);margin-bottom:4px;font-size:.76rem;font-weight:700;display:block}.stats-strip{border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);grid-template-columns:repeat(2,1fr);gap:20px;margin-top:32px;padding:20px 0;display:grid}.stats-strip>div{flex-direction:column;gap:4px;display:flex}.stats-strip strong{font-family:var(--display);letter-spacing:-.01em;color:var(--text);font-variant-numeric:tabular-nums;font-size:1.7rem;font-weight:800;line-height:1}.stats-strip span{font-family:var(--display);letter-spacing:.2em;text-transform:uppercase;color:var(--text-dim);font-size:.68rem;font-weight:600}.mta-row{flex-wrap:wrap;align-items:center;gap:8px 10px;margin:14px 0 20px;display:flex}.mta-row .label{font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);font-size:.74rem;font-weight:700}.mta-chip{width:30px;height:30px;font-family:var(--display);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;font-weight:800;display:inline-flex}.mta-chip.red{background:#ee352e}.mta-chip.green{background:#00933c}.mta-chip.orange{background:#ff6319}.mta-chip.yellow{color:#1a1a1a;background:#fccc0a}.weather-bars{background:var(--bg-alt);border-radius:8px;grid-template-columns:repeat(3,1fr);gap:14px;margin:28px 0;padding:22px 20px 18px;display:grid}.weather-bar-item{flex-direction:column;justify-content:flex-end;height:180px;display:flex}.weather-bar-item .temp{font-family:var(--display);color:var(--text);text-align:center;font-variant-numeric:tabular-nums;margin-bottom:6px;font-size:1.45rem;font-weight:800}.weather-bar-item .bar{width:100%;min-height:10px;transition:height .4s var(--ease);border-radius:4px 4px 0 0}.weather-bar-item .bar.cool{background:linear-gradient(#7fb5dc,#9fc8e8)}.weather-bar-item .bar.ideal{background:linear-gradient(180deg, var(--accent-dark), var(--accent))}.weather-bar-item .bar.hot{background:linear-gradient(#d44a22,#f59e5a)}.weather-bar-item .year{font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--text);text-align:center;border-top:1px solid var(--hairline);margin-top:10px;padding-top:10px;font-size:.7rem;font-weight:700}.weather-bar-item .kind{font-family:var(--body);color:var(--text-dim);text-align:center;margin-top:2px;font-size:.72rem}.weather-cards{grid-template-columns:1fr;gap:12px;margin:20px 0;display:grid}.weather-card{background:var(--bg-alt);border-top:3px solid var(--hairline);border-radius:8px;padding:18px 20px}.weather-card.cold{border-top-color:#9fc8e8}.weather-card.ideal{border-top-color:var(--accent)}.weather-card.warm{border-top-color:#e85c2c}.weather-card h4{font-family:var(--display);letter-spacing:.18em;text-transform:uppercase;color:var(--text);justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:8px;font-size:.82rem;font-weight:700;display:flex}.weather-card h4 .range{color:var(--text-dim);letter-spacing:.12em;font-size:.68rem;font-weight:600}.weather-card p{margin:0;font-size:.92rem;line-height:1.55}.wave-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;margin:18px 0 22px}.wave-table th,.wave-table td{text-align:left;border-bottom:1px solid var(--hairline);padding:12px 10px}.wave-table th{font-family:var(--display);letter-spacing:.18em;text-transform:uppercase;color:var(--text-dim);border-bottom-color:var(--text);font-size:.68rem;font-weight:700}.wave-table td{font-family:var(--display);letter-spacing:.04em;color:var(--text);font-size:1rem;font-weight:700}.wave-table td.time{color:var(--accent-text)}.wave-table td.pace{font-family:var(--body);color:var(--text-dim);text-align:right;font-size:.9rem;font-weight:500}@media (min-width:1024px){.hero-toc{margin-top:48px;padding:26px 32px}.info-section{max-width:780px;padding:100px 48px 72px}.stats-strip{grid-template-columns:repeat(4,1fr)}.weather-cards{grid-template-columns:1fr 1fr 1fr}.nav-chip{bottom:24px;right:24px}.nav-drawer{bottom:80px;right:24px}}@media (min-width:640px) and (max-width:1023px){.info-section{padding:80px 32px 64px}.stats-strip{grid-template-columns:repeat(4,1fr)}.weather-cards{grid-template-columns:1fr 1fr 1fr}}.pace-setup{border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);max-width:720px;margin:0 auto;padding:72px 24px 56px}.pace-setup h2{font-family:var(--display);letter-spacing:-.01em;text-transform:uppercase;margin-bottom:16px;font-size:clamp(1.85rem,5vw,2.75rem);font-weight:800;line-height:1}.pace-setup .lead{font-family:var(--body);color:var(--text);max-width:58ch;margin-bottom:32px;font-size:1.02rem;line-height:1.6}.pace-field-label{font-family:var(--display);letter-spacing:.22em;text-transform:uppercase;color:var(--text-dim);margin-bottom:12px;font-size:.72rem;font-weight:700;display:block}.pace-time-group{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:36px;display:flex}.pace-time-display{font-family:var(--display);letter-spacing:-.03em;color:var(--text);font-variant-numeric:tabular-nums;transition:color .2s var(--ease);align-items:baseline;gap:.04em;margin-bottom:8px;font-size:clamp(3.6rem,11vw,5.5rem);font-weight:800;line-height:1;display:flex}.pace-time-display .d-colon{color:var(--accent-text);margin:0 .02em;font-size:.85em;display:inline-block;transform:translateY(-.08em)}.pace-time-display .d-suffix{font-family:var(--display);letter-spacing:.18em;text-transform:uppercase;color:var(--text-dim);align-self:center;margin-left:.4em;padding-bottom:.4em;font-size:.18em;font-weight:700}.pace-slider-wrap{margin:4px 0 24px;padding:14px 4px 0}.pace-slider{appearance:none;cursor:grab;background:0 0;outline:none;width:100%;height:48px;margin:0;padding:0}.pace-slider:active{cursor:grabbing}.pace-slider::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--accent) var(--fill,33%), var(--bg-alt) var(--fill,33%));border:1px solid var(--hairline);border-radius:4px;height:8px;box-shadow:inset 0 1px 2px #0000000a}.pace-slider::-moz-range-track{background:var(--bg-alt);border:1px solid var(--hairline);border-radius:4px;height:8px}.pace-slider::-moz-range-progress{background:var(--accent);border-radius:4px;height:8px}.pace-slider::-webkit-slider-thumb{appearance:none;background:var(--text);border:3px solid var(--accent);width:28px;height:28px;box-shadow:var(--shadow-glow), 0 2px 6px #00000026;cursor:grab;transition:transform .12s var(--ease);border-radius:50%;margin-top:-11px}.pace-slider::-webkit-slider-thumb:hover{transform:scale(1.08)}.pace-slider::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.15)}.pace-slider::-moz-range-thumb{background:var(--text);border:3px solid var(--accent);width:28px;height:28px;box-shadow:var(--shadow-glow), 0 2px 6px #00000026;cursor:grab;border-radius:50%}.pace-slider:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px #ccff0059, var(--shadow-glow)}.pace-slider:focus-visible::-moz-range-thumb{box-shadow:0 0 0 4px #ccff0059, var(--shadow-glow)}.pace-slider-scale{font-family:var(--display);letter-spacing:.1em;color:var(--text-dim);font-variant-numeric:tabular-nums;pointer-events:none;justify-content:space-between;padding:8px 2px 0;font-size:.68rem;font-weight:600;display:flex}.pace-presets-label{font-family:var(--display);letter-spacing:.22em;text-transform:uppercase;color:var(--text-dim);margin-bottom:10px;font-size:.68rem;font-weight:700;display:block}.pace-presets{flex-wrap:wrap;gap:8px;margin-bottom:30px;display:flex}.pace-preset{background:var(--bg-alt);border:1.5px solid var(--hairline);font-family:var(--display);letter-spacing:.04em;color:var(--text);cursor:pointer;transition:all .14s var(--ease);font-variant-numeric:tabular-nums;-webkit-tap-highlight-color:transparent;border-radius:999px;min-height:40px;padding:8px 14px;font-size:.92rem;font-weight:700}.pace-preset:hover{border-color:var(--text);background:var(--bg)}.pace-preset[aria-pressed=true]{background:var(--text);color:var(--accent);border-color:var(--text);box-shadow:var(--shadow-glow)}.pace-preset:focus-visible{outline:2px solid var(--accent-dark);outline-offset:2px}.pace-colon{font-family:var(--display);color:var(--text);margin-bottom:6px;font-size:2rem;font-weight:800;line-height:1}.pace-suffix{font-family:var(--display);letter-spacing:.16em;text-transform:uppercase;color:var(--text-dim);align-self:center;margin-left:6px;font-size:.82rem;font-weight:700}.pace-model-cards{grid-template-columns:1fr;gap:10px;margin-bottom:30px;display:grid}.pace-model-card{background:var(--bg-alt);cursor:pointer;transition:all .16s var(--ease);text-align:left;border:2px solid #0000;border-radius:10px;width:100%;padding:16px 18px;font-family:inherit;display:block}.pace-model-card:hover{border-color:var(--hairline);background:var(--bg)}.pace-model-card[aria-pressed=true]{border-color:var(--text);background:var(--bg)}.pace-model-card:focus-visible{outline:2px solid var(--accent-dark);outline-offset:3px}.pace-model-name{font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--text);align-items:center;gap:10px;margin-bottom:5px;font-size:.98rem;font-weight:700;display:flex}.pace-model-name:before{content:"";border:1.5px solid var(--text-dim);width:10px;height:10px;transition:all .16s var(--ease);border-radius:50%;flex-shrink:0}.pace-model-card[aria-pressed=true] .pace-model-name:before{background:var(--accent);border-color:var(--accent);box-shadow:var(--shadow-glow)}.pace-model-desc{font-family:var(--body);color:var(--text-dim);margin:0;padding-left:22px;font-size:.85rem;line-height:1.5}.pace-actions{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.pace-set-btn{font-family:var(--display);letter-spacing:.18em;text-transform:uppercase;color:var(--text);background:var(--accent);cursor:pointer;min-height:52px;transition:all .18s var(--ease);box-shadow:var(--shadow-glow);border:none;border-radius:6px;padding:14px 28px;font-size:.9rem;font-weight:700}.pace-set-btn:hover,.pace-set-btn:focus-visible{background:var(--accent-dark);transform:translateY(-1px);box-shadow:0 4px 20px #cf06}.pace-set-btn:focus-visible{outline:2px solid var(--text);outline-offset:3px}.plan-summary{background:var(--text);color:var(--bg);border-radius:999px;flex-wrap:wrap;align-items:center;gap:12px;padding:14px 18px;display:inline-flex}.plan-summary[hidden]{display:none}.plan-summary .plan-dot{background:var(--accent);width:8px;height:8px;box-shadow:var(--shadow-glow);border-radius:50%;flex-shrink:0}.plan-summary-label{font-family:var(--display);letter-spacing:.2em;text-transform:uppercase;color:var(--accent);font-size:.66rem;font-weight:700}.plan-summary-value{font-family:var(--display);letter-spacing:.06em;color:var(--bg);text-transform:uppercase;font-size:.9rem;font-weight:700}.beat-split{background:var(--text);color:var(--bg);border-radius:10px;margin-bottom:22px;padding:16px 18px 14px}.beat-split[hidden]{display:none}.beat-split-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.beat-split-title{font-family:var(--display);letter-spacing:.24em;text-transform:uppercase;color:var(--accent);align-items:center;gap:8px;font-size:.64rem;font-weight:700;display:inline-flex}.beat-split-title:before{content:"";background:var(--accent);width:6px;height:6px;box-shadow:var(--shadow-glow);border-radius:50%}.beat-split-range{font-family:var(--display);letter-spacing:.08em;color:#aaaaa8;font-variant-numeric:tabular-nums;font-size:.7rem;font-weight:600}.beat-split-stats{grid-template-columns:1fr 1fr;gap:14px;display:grid}.beat-split-stat{flex-direction:column;gap:2px;display:flex}.beat-split-stat-label{font-family:var(--display);letter-spacing:.22em;text-transform:uppercase;color:#8a8a87;font-size:.6rem;font-weight:700}.beat-split-stat-value{font-family:var(--display);letter-spacing:-.01em;color:#fff;font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:800;line-height:1.1}.beat-split-stat-value .unit{color:#aaaaa8;letter-spacing:.05em;text-transform:uppercase;margin-left:2px;font-size:.58em;font-weight:600}.beat-split-change{font-family:var(--display);letter-spacing:.18em;text-transform:uppercase;color:#888;text-underline-offset:3px;margin-top:12px;font-size:.62rem;font-weight:600;-webkit-text-decoration:underline #555;text-decoration:underline #555;display:inline-block}.beat-split-change:hover{color:var(--accent);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}@media (min-width:1024px){.pace-setup{max-width:780px;padding:100px 48px 72px}.pace-model-cards{grid-template-columns:1fr 1fr 1fr;gap:12px}.pace-model-card{padding:18px 20px}}@media (min-width:640px) and (max-width:1023px){.pace-setup{padding:80px 32px 64px}.pace-model-cards{grid-template-columns:1fr 1fr 1fr}}
