:root{--ink:#17211a;--green:#74d143;--green-text:#3c8524;--paper:#fdfdfb;--muted:#59625b;--line:#d9dfd6;--display:'Barlow Condensed','Arial Narrow',sans-serif;--body:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--body)}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #53a529;outline-offset:5px}.skip{position:absolute;left:20px;top:-80px;background:white;padding:12px;z-index:10}.skip:focus{top:10px}.header{height:100px;margin:0 4%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:30px}.logo{display:block;width:230px;max-width:100%;flex-shrink:1;min-width:0}.logo img{display:block;width:100%;height:auto;mix-blend-mode:multiply}.header nav{display:flex;gap:36px;font-size:14px;font-weight:500}.header nav a:hover{text-decoration:underline;text-underline-offset:6px}.nav-cta{font-size:14px;font-weight:700;padding:11px 19px;background:var(--ink);color:white;display:flex;gap:25px}.nav-cta:hover{background:#344735}.intro{display:grid;grid-template-columns:1.2fr 1fr;align-items:end;gap:40px;padding:58px 6% 58px}.eyebrow{font-size:12px;letter-spacing:.15em;font-weight:600;margin:0 0 15px}h1{font-family:var(--display);font-weight:600;font-size:clamp(80px,8.6vw,132px);line-height:.87;letter-spacing:-.025em;margin:0}h1 span{color:var(--green-text)}.intro-copy{max-width:390px;justify-self:end;padding-bottom:3px}.intro-copy p{margin:0 0 15px;color:var(--muted);font-size:16px;line-height:1.55}.intro-copy p:first-child{font-size:23px;line-height:1.3;color:var(--ink);letter-spacing:-.035em}.text-link{display:inline-flex;align-items:center;gap:25px;border-bottom:1px solid var(--ink);font-size:14px;font-weight:600;padding:8px 0 5px}.routes{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin:0 22px}.route{min-height:520px;position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:26px 28px;color:white;isolation:isolate;overflow:hidden;background:#414d42}.scooter{background:#516254}.bike{background:#665c47}.ebike{background:#48635d}.route:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.22),transparent 28%,rgba(9,19,13,.3) 45%,rgba(9,19,13,.95));z-index:-1}.route-top{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;letter-spacing:.1em}.circle{width:37px;height:37px;display:grid;place-items:center;border:1px solid #ffffff80;border-radius:50%;font-size:20px;transition:.25s}.route:hover .circle{background:var(--green);border-color:var(--green);color:var(--ink);transform:rotate(45deg)}.route-kicker{font-size:13px!important;color:#e0e9df;margin:0 0 9px!important}.route h2{font-size:clamp(27px,3vw,43px);line-height:1.1;letter-spacing:-.05em;margin:0 0 15px;font-weight:600}.route h2 span{font-size:18px;font-weight:400;letter-spacing:-.04em;color:#c6d2c6}.route-content>p{font-size:14px;line-height:1.6;max-width:310px;margin:0 0 24px}.route-link{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff55;padding-top:16px;font-size:14px;font-weight:500}.route-link>span{font-size:23px}.network-line{display:flex;justify-content:space-between;margin:0 4%;padding:22px 0;font-size:12px;color:var(--muted);border-bottom:1px solid var(--line)}.network-line b{margin:0 14px;font-weight:400;color:#a4aea2}footer{margin:0 4%;padding:30px 0;display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:900px){.header nav{gap:20px}.intro{padding:45px 5%;grid-template-columns:1fr 1fr}h1{font-size:90px}.route{padding:20px;min-height:480px}.route h2{font-size:29px}.route-top{font-size:10px}.network-line{font-size:11px}.network-line b{margin:0 6px}}@media(max-width:650px){.header{height:82px;margin:0 22px;gap:10px}.logo{width:178px}.header nav{display:none}.nav-cta{padding:9px 12px;font-size:12px;gap:12px}.intro{display:block;padding:36px 24px}.eyebrow{font-size:10px}h1{font-size:91px}.intro-copy{margin-top:28px}.intro-copy p:first-child{font-size:21px}.intro-copy p{font-size:15px}.routes{grid-template-columns:1fr;margin:0 12px;gap:10px}.route{min-height:475px;padding:24px}.route-top{font-size:12px}.route h2{font-size:40px}.route-content>p{font-size:15px;max-width:300px}.network-line{display:block;margin:0 24px}.network-line span{display:block}.network-line span+span{margin-top:8px;font-size:10px}footer{margin:0 24px;font-size:11px;gap:15px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.finder{margin:76px 4% 90px;background:var(--ink);color:white;display:grid;grid-template-columns:1fr 1.05fr;gap:10%;padding:60px 5%}.finder-intro h2{font:600 clamp(55px,5vw,76px)/1 var(--display);letter-spacing:-.02em;margin:16px 0 22px}.finder-intro em{color:var(--green);font-style:normal}.finder-intro>p:not(.eyebrow){max-width:310px;color:#c0cbbf;font-size:16px}.finder-note{display:block;margin-top:40px;color:#a5b3a4;font-size:12px}.progress{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.1em;color:#bdcaba;margin:5px 0 23px}.progress>div{width:90px;height:3px;background:#53614e}.progress i{display:block;width:50%;height:3px;background:var(--green);transition:width .3s}.finder-panel{min-height:365px}.finder-panel h3{font-size:22px;letter-spacing:-.035em;line-height:1.3;font-weight:500;margin:0 0 22px}.answers{display:grid;gap:8px}.answers button{display:flex;align-items:center;justify-content:space-between;gap:15px;text-align:left;background:transparent;color:white;border:1px solid #687462;padding:13px 17px;cursor:pointer;font-size:15px;line-height:1.4;transition:background .2s,border-color .2s}.answers button:hover{background:#2e402b;border-color:var(--green)}.answers small{display:block;color:#b5c0ae;font-size:12px;margin-top:3px}.answers button>span+span{font-size:20px;color:var(--green)}.back{display:block;background:none;border:0;color:#c7d3c2;font-size:13px;padding:15px 0 0;cursor:pointer}.back:hover{text-decoration:underline}[hidden]{display:none!important}.result-tag{color:var(--green);font-size:12px;letter-spacing:.1em}.finder-panel .result-name{font:600 50px/1.1 var(--display);margin:14px 0}.result-copy{color:#c8d3c1;font-size:16px}.result-link{display:flex;justify-content:space-between;gap:20px;background:var(--green);color:var(--ink);padding:15px 20px;font-weight:600;font-size:15px;margin-top:24px}.result-alt{font-size:13px;color:#b8c5b3}.result-alt a{text-decoration:underline;text-underline-offset:4px}.difference{display:grid;grid-template-columns:1fr 1.2fr;gap:10%;margin:0 9% 90px}.section-heading h2{font:600 55px/1.05 var(--display);letter-spacing:-.02em;margin:15px 0 20px}.section-heading>p:last-child{color:var(--muted);max-width:310px;font-size:15px}.editorial article{display:flex;gap:25px;border-top:1px solid var(--line);padding:22px 0}.article-number{font-size:12px;color:#4e703b;padding-top:3px}.editorial h3{font-size:18px;line-height:1.4;letter-spacing:-.035em;margin:0 0 12px;font-weight:600}.editorial p{margin:0;color:var(--muted);font-size:14px;line-height:1.75}.editorial a,.questions p a{text-decoration:underline;text-underline-offset:3px;color:var(--ink)}.questions{margin:0 9% 80px;padding-top:45px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.2fr;gap:10%}.questions h2{font:600 40px/1.05 var(--display);margin:0}.questions details{border-bottom:1px solid var(--line)}.questions summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:15px;padding:16px 0;line-height:1.5}.questions summary::-webkit-details-marker{display:none}.questions summary span{font-size:22px;font-weight:400}.questions details[open] summary span{transform:rotate(45deg)}.questions details p{color:var(--muted);font-size:14px;margin:0 0 20px}.questions details:first-child summary{padding-top:0}footer{border-top:1px solid var(--line);padding:30px 0 40px;align-items:center}footer strong{display:block;font-size:17px;font-weight:500;letter-spacing:-.035em;color:var(--ink);margin-bottom:5px}.footer-links{display:flex;gap:25px;font-size:12px}.footer-links a:hover{text-decoration:underline}@media(max-width:900px){.finder{gap:5%;padding:40px 5%}.finder-intro h2{font-size:58px}.difference,.questions{margin-left:6%;margin-right:6%;gap:7%}.section-heading h2{font-size:45px}}@media(max-width:650px){.finder{display:block;margin:45px 12px 55px;padding:32px 24px}.finder-intro h2{font-size:62px}.finder-intro>p:not(.eyebrow){font-size:15px}.finder-note{margin:20px 0 32px}.finder-panel h3{font-size:21px}.finder-panel{min-height:365px}.answers button{padding:13px}.difference,.questions{display:block;margin:0 24px 50px}.section-heading{margin-bottom:30px}.section-heading h2{font-size:46px}.editorial article{gap:17px}.editorial p{font-size:15px}.questions{padding-top:30px}.questions h2{margin-bottom:25px;font-size:40px}.questions summary{font-size:14px}.questions details p{font-size:15px}footer{display:block;padding-bottom:28px}.footer-links{gap:20px;margin-top:23px}}
.route-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2;transition:transform .7s cubic-bezier(.2,.65,.2,1)}.route:hover .route-photo{transform:scale(1.035)}.route:after{background:linear-gradient(180deg,rgba(0,0,0,.38),transparent 25%,rgba(9,19,13,.05) 40%,rgba(9,19,13,.85) 74%,rgba(9,19,13,.97))}.ebike .route-photo{object-position:43% center}
.mobile-routes{display:none}@media(max-width:650px){h1{font-size:clamp(60px,17.8vw,76px)}.mobile-routes{display:flex;margin:0 24px 24px;gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.mobile-routes a{flex:1;text-align:center;font-size:13px;font-weight:600;padding:13px 5px}.mobile-routes a+a{border-left:1px solid var(--line)}}
.editorial p,.questions details p,.route-content>p:not(.route-kicker){font-size:16px}.intro-copy p,.finder-intro>p:not(.eyebrow),.section-heading>p:last-child{font-size:16px}
.nav-cta{white-space:nowrap}@media(min-width:651px) and (max-width:900px){.header nav{display:none}.intro h1{font-size:clamp(65px,8.6vw,90px)}}

.route .route-brand{height:90px;margin:0 0 14px;display:flex;align-items:center}.brand-logo{display:block;width:100%;max-width:320px;height:90px;object-fit:contain;object-position:left center;filter:brightness(0) invert(1)}.finder-panel .result-brand{margin:12px 0 18px;max-width:340px}.result-brand .brand-logo{height:96px}@media(min-width:651px) and (max-width:900px){.route .route-brand,.route-brand .brand-logo{height:65px}}
@media(min-width:901px){.route-content>p:not(.route-kicker){min-height:77px}}
.contact-section{margin:0 9% 85px;padding-top:55px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.2fr;gap:10%}.contact-intro h2{font:600 60px/1.02 var(--display);letter-spacing:-.02em;margin:16px 0 25px}.contact-intro>p:not(.eyebrow){color:var(--muted);max-width:320px}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}#contact-form label{display:block;font-size:14px;font-weight:500;margin:0 0 7px}#contact-form input:not([type=hidden]),#contact-form select,#contact-form textarea{width:100%;border:1px solid #b9c3b4;border-radius:0;background:#fff;color:var(--ink);padding:12px;font:16px/1.5 var(--body);margin:0 0 19px}#contact-form textarea{resize:vertical;min-height:140px}#contact-form input:focus,#contact-form select:focus,#contact-form textarea:focus{outline:2px solid #4b9d2a;outline-offset:2px}.contact-privacy{font-size:13px;color:var(--muted);line-height:1.6;margin:0 0 22px}.contact-trap{display:none}.contact-send{background:var(--ink);color:#fff;border:0;cursor:pointer;display:flex;justify-content:space-between;align-items:center;width:100%;padding:15px 20px;font-size:15px}.contact-send:hover{background:#344735}.contact-send:disabled{opacity:.65;cursor:wait}#contact-status{font-size:15px;margin:14px 0 0}#contact-status.error{color:#a72a24}.thanks{max-width:800px;margin:12vh auto;padding:24px}.thanks h1{font-size:80px}.thanks>p:not(.eyebrow){max-width:480px;margin-top:30px}@media(max-width:900px){.header nav{gap:22px}.contact-section{margin-left:6%;margin-right:6%;gap:7%}.contact-intro h2{font-size:48px}.contact-fields{grid-template-columns:1fr;gap:0}}@media(max-width:650px){.contact-section{display:block;margin:0 24px 50px;padding-top:32px}.contact-intro{margin-bottom:32px}.contact-intro h2{font-size:54px}.footer-links{flex-wrap:wrap}.thanks h1{font-size:60px}}
.cf-turnstile{margin:18px 0;min-height:65px}.contact-send:disabled{opacity:.65;cursor:wait}#contact-status:not(:empty){margin-top:18px;line-height:1.5}

.video-section{margin:0 4% 85px;padding:56px 5% 0;background:#edf1e8}.video-heading{display:grid;grid-template-columns:1.25fr 1fr;gap:8%;align-items:end;margin-bottom:36px}.video-heading h2{font:600 clamp(44px,4.8vw,68px)/1.02 var(--display);letter-spacing:-.02em;margin:0}.video-heading>div>p:not(.eyebrow){font-size:16px;color:var(--muted);max-width:410px;margin:0 0 12px}.video-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:5%;align-items:start}.video-grid>.video-story+article{padding-top:65px}.video-frame{aspect-ratio:16/9;background:var(--ink);overflow:hidden}.video-play{display:block;position:relative;width:100%;height:100%;color:white}.video-play:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 45%,#0009)}.video-play img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.video-play:hover img{transform:scale(1.025)}.play-icon{position:absolute;z-index:1;left:50%;top:50%;transform:translate(-50%,-50%);width:60px;height:60px;display:grid;place-items:center;border:1px solid #fff9;background:#17211acc;border-radius:50%;font-size:20px}.video-play:hover .play-icon{background:var(--green);color:var(--ink);border-color:var(--green)}.video-watch{position:absolute;z-index:1;left:20px;bottom:15px;font-size:13px;font-weight:500}.video-frame iframe{width:100%;height:100%;border:0;display:block}.video-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:20px;font-size:10px;letter-spacing:.07em;color:#51604b}.video-meta time{letter-spacing:0}.video-story h3{font:600 clamp(29px,2.8vw,42px)/1.1 var(--display);margin:10px 0 12px}.video-story p{color:var(--muted);font-size:15px;margin:0 0 13px;max-width:480px}.video-source{display:inline-flex;gap:9px;min-height:44px;align-items:center;font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:5px;padding:8px 0}.social-strip{display:flex;justify-content:space-between;gap:36px;border-top:1px solid #bdc9b7;margin-top:42px;padding:30px 0 36px}.social-strip .eyebrow{font-size:10px;margin-bottom:10px}.social-strip h3{font:600 32px/1.1 var(--display);margin:0}.social-groups{display:flex;flex-wrap:wrap;gap:24px 40px}.social-brand{display:block;font-size:13px;font-weight:600;margin:0 0 8px}.social-groups nav{display:flex;gap:18px;flex-wrap:wrap}.social-groups a{font-size:13px;padding:8px 0;min-height:44px;display:inline-flex;align-items:center;gap:8px}.social-groups a:hover{text-decoration:underline;text-underline-offset:5px}.video-play:focus-visible{outline:3px solid var(--green);outline-offset:-3px}@media(max-width:900px){.video-heading{gap:5%}.social-strip{display:block}.social-groups{margin-top:25px}.video-section{padding-top:40px}.video-grid>.video-story+article{padding-top:40px}.footer-links{flex-wrap:wrap;justify-content:flex-end}}@media(max-width:650px){.video-section{margin:0 12px 50px;padding:32px 20px 0}.video-heading,.video-grid{display:block}.video-heading h2{font-size:46px}.video-heading>div+div{margin-top:20px}.video-heading{margin-bottom:28px}.video-grid>.video-story+article{padding-top:32px}.video-story h3{font-size:34px}.video-story p{font-size:16px}.play-icon{width:52px;height:52px}.video-watch{left:14px;bottom:12px}.social-strip{margin-top:30px;padding-bottom:25px}.social-groups{display:grid;gap:20px}.social-groups a{font-size:14px}.footer-links{justify-content:flex-start}.video-meta{font-size:10px}}

/* Shared platform marks inherit the site palette and remain decorative beside labels. */
.social-symbols{position:absolute;overflow:hidden;pointer-events:none}
.social-icon{display:block;width:20px;height:20px;flex-shrink:0}
.play-icon .social-icon{width:32px;height:32px}
.social-groups a:focus-visible,.video-source:focus-visible{outline:2px solid currentColor;outline-offset:4px}

/* Navigation stays available at every viewport width. */
.header{position:relative}
.header .desktop-nav a{display:flex;align-items:center;min-height:44px}
.mobile-menu{display:none}
.mobile-menu summary{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;cursor:pointer;list-style:none}
.mobile-menu summary::-webkit-details-marker{display:none}
.mobile-menu summary>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.header .mobile-menu nav{position:absolute;z-index:5;top:calc(100% - 1px);right:0;left:0;display:grid;gap:0;padding:12px 20px;background:var(--paper);border:1px solid var(--line);box-shadow:0 16px 24px #17211a12}
.header .mobile-menu nav a{display:block;min-height:48px;padding:12px 4px}
.header .mobile-menu nav a+a{border-top:1px solid var(--line)}
.mobile-menu[open] summary{background:var(--ink);color:white}
.route-kicker{display:table;background:#17211aeb;padding:4px 8px;color:white!important}
.route-top>span:first-child{background:#17211acc;padding:4px 7px}
.comparison-link{display:inline-flex;align-items:center;gap:16px;min-height:44px;margin-top:8px;font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.footer-links{gap:8px 22px;flex-wrap:wrap;justify-content:flex-end}
.footer-links a{display:inline-flex;align-items:center;min-height:44px}
.contact-privacy a{text-decoration:underline;text-underline-offset:3px}
.result-reason{font-size:18px;line-height:1.45;color:#fff}
.result-alt a{display:inline-block;padding:8px 0}
.back{min-height:44px}
@media(max-width:900px){
 .header{gap:16px}
 .header .desktop-nav{display:none}
 .mobile-menu{display:block;order:3}
 .nav-cta{margin-left:auto;min-height:44px;align-items:center}
 .header .mobile-menu nav{display:grid}
}
@media(max-width:650px){
 .header{margin:0 16px;gap:8px}
 .logo{width:178px}
 .nav-cta{gap:8px;padding:10px;font-size:12px}
 .intro{padding:28px 24px}
 .intro-copy{margin-top:24px}
 .intro-copy p:first-child{font-size:19px}
 .route{min-height:370px;padding:20px}
 .route .route-brand,.route-brand .brand-logo{height:68px}
 .route-content>p{margin-bottom:16px}
 .route-kicker{font-size:12px!important}
 .route-link{padding-top:12px}
 .finder{padding:28px 24px;margin-top:32px}
 .finder-intro h2{font-size:50px}
 .finder-note{margin:16px 0 24px}
 .finder-panel{min-height:320px}
 .footer-links{justify-content:flex-start;gap:4px 20px}
 .video-section{margin-bottom:50px}
}
@media(max-width:360px){
 .header{height:auto;min-height:124px;display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:0 12px;padding:12px 0}
 .logo{width:178px}
 .mobile-menu{grid-column:2;grid-row:1}
 .nav-cta{grid-column:1/-1;grid-row:2;justify-content:space-between;margin:8px 0 0}
}
/* Secondary pages share the same reading styles and navigation. */
.document-page{max-width:760px;margin:60px auto 80px;padding:0 24px}
.document-page h1{font-size:clamp(52px,9vw,88px);line-height:1}
.document-page h2{font:600 30px/1.15 var(--display);margin:36px 0 12px}
.document-page p,.document-page li{color:var(--muted)}
.document-page a{text-decoration:underline;text-underline-offset:3px}
.document-page .eyebrow{color:var(--ink)}

.secondary-header{display:flex;flex-wrap:wrap;height:auto;min-height:100px;padding:18px 0;gap:12px 24px}
.secondary-header .text-link{font-size:13px;gap:12px}

/* Refreshed visual wayfinding for the three ride pathways. */
.route{border-bottom:4px solid transparent;transition:border-color .25s ease}
.route:hover,.route:focus-within{border-bottom-color:var(--green)}
@media(max-width:650px){.intro{padding-bottom:26px}.mobile-routes{margin-bottom:18px}}

/* Two clear starting points for outings and specialist ride research. */
.intro-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin-top:22px}
.intro-primary{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:44px;padding:10px 14px;background:var(--green);font-size:14px;font-weight:700;color:var(--ink)}
.intro-primary:hover{background:#91e35e}
.intro-actions .text-link{min-height:44px}
@media(max-width:650px){.intro-actions{margin-top:18px;gap:8px 16px}.intro-primary{font-size:13px;gap:10px}.intro-actions .text-link{font-size:13px;gap:12px}}
