@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Syne:wght@500;600;700;800&display=swap');

:root { --ink:#101317; --near:#171c22; --steel:#aeb8c3; --paper:#eeeee9; --fog:#cad2da; --acid:#d5f147; --line:rgba(238,238,233,.24); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; background:var(--ink); }
body { margin:0; color:var(--paper); background:#12161b; font-family:'DM Mono', monospace; overflow-x:hidden; }
a { color:inherit; text-decoration:none; }
.grain { position:fixed; z-index:8; inset:0; pointer-events:none; opacity:.09; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E"); }
.route-sky { position:absolute; z-index:0; inset:0 0 auto; height:980px; opacity:.6; overflow:hidden; background:radial-gradient(ellipse at 80% 8%,#8997a7 0%,#4c5865 29%,#1d242c 68%,#11151a 100%); }
.route-sky i { position:absolute; width:4px; height:520px; background:linear-gradient(transparent,#d8e3e9 30%,transparent); transform:rotate(33deg); filter:blur(.4px); opacity:.55; animation:roadLines 9s linear infinite; }
.route-sky i:nth-child(1){left:9%;top:-240px}.route-sky i:nth-child(2){left:28%;top:-390px;animation-delay:-3s}.route-sky i:nth-child(3){left:50%;top:-170px;animation-delay:-6s}.route-sky i:nth-child(4){left:73%;top:-300px;animation-delay:-1s}.route-sky i:nth-child(5){left:90%;top:-420px;animation-delay:-4s}
@keyframes roadLines{to{translate:0 680px}}
.masthead { height:76px; max-width:1440px; margin:auto; padding:0 4.5vw; display:flex; align-items:center; justify-content:space-between; position:relative; z-index:2; border-bottom:1px solid var(--line); font-size:.68rem; letter-spacing:.12em; }
.wordmark { font-family:Syne,sans-serif; font-weight:800; font-size:1.28rem; letter-spacing:-.07em; }.wordmark span { color:var(--acid); }.route-number{opacity:.75}.mini-link span{color:var(--acid);font-size:1.1rem;margin-left:.4rem}
main{position:relative;z-index:1}.hero{min-height:720px;max-width:1440px;margin:auto;padding:8.7vw 4.5vw 5.4vw;display:grid;grid-template-columns:1.05fr .95fr;gap:2.8vw;align-items:center;position:relative}.hero-copy{position:relative;z-index:2}.eyebrow{font-size:.68rem;letter-spacing:.14em;margin:0 0 1.2rem;color:#d9e1e6}.eyebrow span{display:inline-block;width:8px;height:8px;background:var(--acid);border-radius:50%;margin-right:.55rem;box-shadow:0 0 0 5px rgba(213,241,71,.14)}
h1,h2,h3,p{margin-top:0}h1,h2{font-family:Syne,sans-serif;font-weight:700;letter-spacing:-.08em;line-height:.85}h1{font-size:clamp(4rem,8.5vw,8.1rem);margin:0 0 1.65rem}h1 em,h2 em{font-style:normal;color:var(--acid)}.intro{max-width:395px;line-height:1.65;font-size:.92rem;color:#d3d9de;margin-bottom:2rem}.hero-actions,.footer-actions{display:flex;flex-wrap:wrap;gap:.7rem}.button{display:inline-flex;gap:1.35rem;align-items:center;justify-content:space-between;padding:.92rem 1rem;font-family:'DM Mono',monospace;font-size:.7rem;letter-spacing:.06em;transition:transform .2s,background .2s,color .2s;border:1px solid transparent}.button b{font-family:Arial;font-size:1.05rem;font-weight:400}.button:hover{transform:translateY(-4px)}.button-light{background:var(--acid);color:#101317}.button-dark{background:#131920;border-color:#59636e}.button-outline{border-color:#c8d0d3;background:transparent}.ca-copy{width:min(100%,430px);margin-top:.75rem;padding:.82rem .9rem;display:grid;grid-template-columns:auto 1fr auto;gap:.85rem;align-items:center;border:1px solid #51606c;background:rgba(11,15,19,.36);color:var(--paper);font:inherit;font-size:.66rem;letter-spacing:.08em;text-align:left;cursor:pointer;transition:border-color .2s,background .2s,transform .2s}.ca-copy:hover,.ca-copy:focus-visible{border-color:var(--acid);background:#171e25;outline:none;transform:translateY(-2px)}.ca-label{color:var(--acid);padding-right:.85rem;border-right:1px solid #57636d;font-weight:500}.ca-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ca-action{color:var(--acid);font-size:.58rem}.ca-copy.is-copied{border-color:var(--acid);background:#1d2527}.ca-copy.is-copied .ca-action{color:var(--paper)}
.hero-photo-wrap{align-self:stretch;min-height:480px;position:relative;display:flex;align-items:center;justify-content:center}.photo-crop{width:min(33vw,470px);aspect-ratio:1/1.22;overflow:hidden;transform:rotate(3deg);border:10px solid var(--paper);box-shadow:18px 22px 0 rgba(10,13,16,.31);background:#ccd5dc;animation:float 5s ease-in-out infinite}.photo-crop img{width:100%;height:100%;object-fit:cover;object-position:51% 46%;filter:contrast(1.05) grayscale(.18)}@keyframes float{50%{transform:rotate(1.3deg) translateY(-11px)}}.photo-stamp{position:absolute;z-index:2;top:8%;right:1%;color:var(--acid);border:1px solid var(--acid);font-size:.6rem;line-height:1.35;letter-spacing:.1em;padding:.55rem;transform:rotate(9deg);background:#161c20}.photo-caption{position:absolute;right:0;bottom:4%;font-size:.58rem;letter-spacing:.13em;writing-mode:vertical-rl}.photo-caption span{color:var(--acid)}.hero-meta{position:absolute;bottom:1.4rem;left:4.5vw;display:flex;gap:clamp(1.5rem,4vw,4rem);font-size:.6rem;line-height:1.5;letter-spacing:.1em;color:#aeb9c3}.hero-meta strong{color:var(--paper);font-size:.68rem;font-weight:500}
.ride-strip{background:var(--acid);color:#101317;overflow:hidden;height:52px;display:flex;align-items:center;font-weight:500;font-size:.73rem;letter-spacing:.06em;transform:rotate(-1.1deg) scale(1.02);position:relative;z-index:2}.ride-track{display:flex;width:max-content;will-change:transform;animation:ticker 32s linear infinite}.ride-group{flex:none;display:flex;align-items:center;gap:1.35rem;padding-right:1.35rem;white-space:nowrap}.ride-group b{font-size:1.15rem;font-weight:400}@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.story-section{padding:9rem 4.5vw 10rem;max-width:1440px;margin:auto;display:grid;grid-template-columns:27% 1fr;gap:4vw}.section-aside{border-top:1px solid var(--line);padding-top:1.1rem}.side-label{font-family:Syne,sans-serif;font-size:clamp(1.3rem,2.3vw,2.3rem);font-weight:600;letter-spacing:-.07em;line-height:.95;margin-top:5.5rem;color:#88939e}.story-heading{display:flex;align-items:flex-end;justify-content:space-between;border-top:1px solid var(--line);padding-top:1.1rem;margin-bottom:4.5rem}.mile{font-size:.63rem;letter-spacing:.1em;color:var(--acid);align-self:flex-start}.story-heading h2{font-size:clamp(2.9rem,6vw,6.1rem);margin:1.4rem 0 0}.story-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.story-card{min-height:285px;background:#181e24;padding:1.35rem;position:relative}.story-card::after{content:'';position:absolute;right:1.3rem;bottom:1.2rem;width:36px;height:36px;border:1px solid #76818a;border-radius:50%;background:repeating-conic-gradient(transparent 0 10deg,rgba(238,238,233,.15) 11deg 12deg);animation:spin 8s linear infinite}@keyframes spin{to{rotate:360deg}}.card-two{background:#d2d9dc;color:#12161b;transform:translateY(2.2rem)}.card-three{background:#242c34}.card-mark{font-size:.65rem;color:var(--acid)}.card-two .card-mark{color:#364052}.story-card h3{font-family:Syne,sans-serif;font-size:1.6rem;line-height:1;letter-spacing:-.06em;margin:3.2rem 0 1rem}.story-card p{font-size:.74rem;line-height:1.65;max-width:88%;margin:0}.story-signoff{font-size:.65rem;letter-spacing:.1em;text-align:right;margin:6.3rem 0 0}.story-signoff span{color:var(--acid)}
.token-section{background:#c9d2d8;color:#151a20;padding:9.2rem 4.5vw;min-height:740px;display:grid;grid-template-columns:1fr minmax(310px,.8fr) 1fr;align-items:center;gap:4vw;position:relative;overflow:hidden}.token-section::before{content:'BIKE UNC';position:absolute;left:-3vw;bottom:-5vw;font-family:Syne,sans-serif;font-size:19vw;letter-spacing:-.11em;color:rgba(24,31,37,.075);font-weight:800;white-space:nowrap}.token-title-block,.token-specs{position:relative;z-index:1}.token-title-block .eyebrow{color:#151a20}.token-title-block h2{font-size:clamp(4rem,7vw,7rem);margin:.7rem 0 1.7rem}.token-title-block>p:last-child{font-size:.82rem;line-height:1.65;max-width:230px}.token-wheel{width:min(31vw,400px);height:min(31vw,400px);min-width:310px;min-height:310px;border:2px solid #171d23;border-radius:50%;margin:auto;position:relative;z-index:1;animation:wheelBreathe 5s ease-in-out infinite}@keyframes wheelBreathe{50%{transform:rotate(7deg) scale(1.035)}}.token-wheel::before,.token-wheel::after{content:'';position:absolute;inset:10%;border:1px solid rgba(22,27,33,.55);border-radius:50%}.token-wheel::after{inset:44%;background:#161c22;border:5px double #c9d2d8}.hub{position:absolute;z-index:2;inset:39%;display:grid;place-content:center;text-align:center;background:#161c22;color:var(--acid);border-radius:50%;font-family:Syne,sans-serif;font-size:.83rem;line-height:.87;letter-spacing:-.06em}.spoke{position:absolute;top:50%;left:12%;width:76%;height:1px;background:#161c22;transform-origin:center}.s2{rotate:45deg}.s3{rotate:90deg}.s4{rotate:135deg}.wheel-label{position:absolute;font-size:.56rem;line-height:1.3;text-align:center;letter-spacing:.08em;font-weight:500}.wheel-label.top{top:10%;left:36%}.wheel-label.bottom{bottom:10%;left:39%}.token-specs{border-top:1px solid rgba(20,25,31,.6)}.token-specs div{padding:1.05rem 0;border-bottom:1px solid rgba(20,25,31,.6);display:flex;justify-content:space-between;gap:.6rem;font-size:.65rem;letter-spacing:.07em}.token-specs strong{font-family:Syne,sans-serif;font-size:.94rem;letter-spacing:-.04em}.token-specs>p{font-size:.74rem;line-height:1.65;margin:1.7rem 0 0;max-width:255px}
.will-reveal{opacity:0;transform:translateY(30px);transition:opacity .75s ease,transform .75s cubic-bezier(.16,1,.3,1)}.will-reveal.is-visible{opacity:1;transform:translateY(0)}.story-card:nth-child(2){transition-delay:.12s}.story-card:nth-child(3){transition-delay:.24s}
.manifesto{min-height:65vh;padding:10vw 4.5vw 7vw;background:linear-gradient(135deg,#11161c,#222c35);position:relative;display:flex;align-items:flex-end;justify-content:space-between;overflow:hidden}.manifesto::before{content:'';position:absolute;width:90vw;height:90vw;border:1px dashed rgba(208,222,230,.25);border-radius:50%;right:-24vw;bottom:-46vw;animation:spin 70s linear infinite}.manifesto p{position:relative;font-family:Syne,sans-serif;font-size:clamp(3.2rem,8.8vw,9rem);font-weight:700;line-height:.79;letter-spacing:-.1em;margin:0}.manifesto p span{color:var(--acid)}.road-arrow{position:relative;width:72px;height:72px;border:1px solid var(--paper);border-radius:50%;display:grid;place-items:center;font-size:2rem;color:var(--acid);animation:bob 1.7s ease-in-out infinite}@keyframes bob{50%{translate:0 9px}}
footer{padding:7vw 4.5vw 1.3rem;background:#0e1216}.footer-top{max-width:1440px;margin:auto}.footer-top h2{font-size:clamp(4.2rem,11vw,11rem);margin:1.3rem 0 2.6rem}.footer-line{border-top:1px solid var(--line);padding-top:1.1rem;margin-top:7.4rem;font-size:.57rem;letter-spacing:.09em;display:flex;justify-content:space-between;gap:1rem;color:#b6c0c7}
@media (max-width:760px){.masthead{padding:0 1.25rem;height:64px}.route-number{display:none}.hero{min-height:unset;padding:4rem 1.25rem 5rem;grid-template-columns:1fr;gap:1.3rem}.hero-photo-wrap{min-height:360px;grid-row:1}.photo-crop{width:70vw;max-width:370px}.photo-caption{right:0}.hero-copy{grid-row:2}.hero-meta{position:static;grid-row:3;gap:1rem;justify-content:space-between}.hero-meta p{margin:0}.hero-meta strong{font-size:.57rem}.story-section{padding:6rem 1.25rem;grid-template-columns:1fr;gap:1.3rem}.side-label{margin:1.5rem 0 1rem}.story-heading{margin-bottom:2.4rem;display:block}.story-cards{grid-template-columns:1fr}.story-card{min-height:220px}.card-two{transform:none}.story-signoff{margin-top:2.8rem;text-align:left}.token-section{padding:6.5rem 1.25rem;grid-template-columns:1fr;gap:3.2rem}.token-wheel{width:82vw;height:82vw;min-width:0;min-height:0}.token-title-block h2{font-size:4.6rem}.manifesto{padding:8rem 1.25rem 4rem;min-height:60vh;align-items:flex-end}.road-arrow{width:55px;height:55px;font-size:1.5rem}.footer-top,footer{padding-left:0;padding-right:0}.footer-line{flex-wrap:wrap;line-height:1.8}.footer-line span:last-child{width:100%}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}
