@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Playfair+Display:wght@400;600;700&display=swap";.cyclist-svg{filter:drop-shadow(0 2px 4px #00000026);width:100%;max-width:160px;height:auto;display:block}.tire{fill:none;stroke:#181b20;stroke-width:3.2px}.rim{fill:none;stroke:#b7c0c8;stroke-width:1.1px}.spoke{stroke:#9ca7b0;stroke-width:.55px;opacity:.8}.hub{fill:#2e3740}.frame{fill:none;stroke:#e63946;stroke-width:3.25px;stroke-linejoin:round;stroke-linecap:round}.fork{fill:none;stroke:#c1121f;stroke-width:2.55px;stroke-linecap:round}.seat-post,.handlebars{fill:none;stroke:#303840;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.chain-stay{fill:none;stroke:#a61b29;stroke-width:2.2px;stroke-linecap:round}.chainring{fill:#10151a;stroke:#a8b0b8;stroke-width:1.2px}.crank,.pedals{fill:none;stroke:#b9c3cb;stroke-width:1.7px;stroke-linecap:round}.chain{fill:none;stroke:#aeb8bf;stroke-width:.85px;stroke-dasharray:2 1.5}.wheel{animation:.46s linear infinite spin-wheel}.back-wheel{transform-origin:52px 145px}.front-wheel{transform-origin:148px 145px}@keyframes spin-wheel{to{transform:rotate(360deg)}}.pedal-group{animation:.46s linear infinite pedal}@keyframes pedal{to{transform:rotate(360deg)}}.jersey{fill:none;stroke:#173a5e;stroke-width:8px;stroke-linecap:round;stroke-linejoin:round}.face{fill:#f2a36e}.helmet{fill:#4f8eaf}.glasses{stroke:#102235;stroke-width:2px;stroke-linecap:round}.arm{fill:none;stroke:#f2a36e;stroke-width:3.5px;stroke-linecap:round}.arm-back{stroke:#df8f62;stroke-width:3px}.leg{fill:none;stroke:#111d2b;stroke-width:5.5px;stroke-linecap:round;stroke-linejoin:round}.leg-front{transform-origin:83px 91px;animation:.46s ease-in-out infinite alternate leg-drive}.leg-back{transform-origin:83px 91px;animation:.46s ease-in-out infinite alternate-reverse leg-drive}@keyframes leg-drive{to{transform:rotate(13deg)}}.rider{animation:.23s ease-in-out infinite alternate rider-drive}@keyframes rider-drive{to{transform:translate(1px,-1px)}}.speed-lines path{fill:none;stroke:#c5d3de;stroke-width:1.5px;stroke-linecap:round;opacity:.65;animation:.38s linear infinite speed-streak}@keyframes speed-streak{0%{opacity:.1;transform:translate(0)}30%{opacity:.7}to{opacity:0;transform:translate(-16px)}}@media (prefers-reduced-motion:reduce){.wheel,.pedal-group,.leg,.rider,.speed-lines path{animation:none}}.terrain-container{border-radius:0 12px 12px 0;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.terrain-svg{width:100%;height:100%;display:block}:root{--sidebar-width:20%;--bg-primary:#0d1117;--bg-card:#161b22;--text-primary:#e6edf3;--text-secondary:#8b949e;--border-subtle:#ffffff0f}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.7}.app{min-height:100vh;display:flex}.cyclist-sidebar{width:var(--sidebar-width);z-index:100;border-right:1px solid var(--border-subtle);background:#0a0f14;flex-direction:column;height:100vh;display:flex;position:fixed;top:0;left:0}.cycling-scene{flex:1;position:relative;overflow:hidden}.cyclist-wrapper{width:min(160px,86%);transform:translate(-50%, -72.5%) rotate(var(--road-angle,0deg));transform-origin:50% 72.5%;z-index:10;pointer-events:none;transition:top .12s linear;position:absolute;left:50%}.scroll-indicator{border-top:1px solid var(--border-subtle);background:#0a0f14e6;align-items:center;gap:10px;padding:12px 16px;display:flex}.scroll-track{background:#ffffff14;border-radius:3px;flex:1;height:3px;position:relative;overflow:hidden}.scroll-thumb{background:linear-gradient(90deg,#e63946,#f4a261);border-radius:3px;height:100%;transition:width .15s ease-out;position:absolute;top:0;left:0}.scroll-label{color:var(--text-secondary);font-variant-numeric:tabular-nums;text-align:right;letter-spacing:.02em;min-width:32px;font-size:11px;font-weight:500}.main-content{margin-left:var(--sidebar-width);flex:1;padding:0}.content-section{border-bottom:1px solid var(--border-subtle);flex-direction:column;justify-content:center;min-height:80vh;padding:80px 60px;display:flex;position:relative}.content-section h2{letter-spacing:-.02em;color:var(--text-primary);margin-bottom:20px;font-family:Playfair Display,Georgia,serif;font-size:clamp(2rem,3.5vw,3.2rem);font-weight:600;line-height:1.2}.content-section p{color:var(--text-secondary);max-width:540px;font-size:clamp(1rem,1.3vw,1.15rem);font-weight:300;line-height:1.8}.section-accent{opacity:.8;border-radius:4px;width:4px;height:40px;margin-bottom:24px}.section-decoration{align-items:center;gap:8px;margin-top:40px;display:flex}.deco-line{opacity:.4;border-radius:2px;width:40px;height:2px}.deco-dot{opacity:.5;border-radius:50%;width:6px;height:6px}.hero-section{text-align:center;align-items:center;min-height:100vh}.hero-section h1{letter-spacing:-.03em;margin-bottom:16px;font-family:Playfair Display,Georgia,serif;font-size:clamp(2.8rem,5vw,4.5rem);font-weight:700;line-height:1.1}.hero-section .subtitle{color:var(--text-secondary);letter-spacing:.02em;font-size:clamp(1rem,1.5vw,1.2rem);font-weight:300}.scroll-arrow{color:var(--text-secondary);opacity:.5;margin-top:48px;animation:2s ease-in-out infinite bounce-arrow}@keyframes bounce-arrow{0%,to{transform:translateY(0)}50%{transform:translateY(10px)}}@media (width<=1024px){:root{--sidebar-width:25%}.content-section{padding:60px 40px}}@media (width<=768px){:root{--sidebar-width:30%}.content-section{padding:40px 24px}.content-section h2{font-size:1.6rem}}
