:root{color-scheme:dark;font:16px/1.65 Inter,system-ui,sans-serif;color:#e5eeeb;background:#08121a}*{box-sizing:border-box}body{margin:0}header{max-width:1060px;margin:auto;padding:28px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #263b46}a{color:#c5efb0;text-underline-offset:4px}a:focus-visible,summary:focus-visible{outline:3px solid #c5efb0;outline-offset:4px}.brand{font-size:1.3rem;font-weight:700;letter-spacing:-.04em;text-decoration:none;color:#e5eeeb}.map-link{font-size:.875rem}main{max-width:850px;margin:auto;padding:44px 24px 60px}h1{font-size:clamp(2rem,5vw,3.4rem);line-height:1.1;letter-spacing:-.05em;max-width:760px;margin:16px 0 24px}h2{font-size:1.55rem;line-height:1.25;letter-spacing:-.025em}h3{font-size:1.1rem;line-height:1.4;margin:10px 0}p{overflow-wrap:anywhere}.intro{font-size:1.125rem;color:#afc4cd}.eyebrow{letter-spacing:.15em;font-size:.875rem;color:#91b0bd}.open{display:inline-block;background:#c5efb0;color:#10232c;padding:13px 20px;border-radius:10px;text-decoration:none;font-weight:650;min-height:48px;margin:12px 0 24px}.public-verdict{background:#12242c;border:1px solid #36505b;border-radius:18px;padding:26px;margin:16px 0 30px}.public-verdict .fits{color:#c5efb0}.public-verdict .pending{color:#ebcb8f}.public-verdict .over{color:#f0b998}.public-figures{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:24px 0}.public-figures strong{font-size:1.45rem;display:block;color:#c5efb0;line-height:1.3}.public-figures span,.meta,figcaption{font-size:.875rem;color:#9bb2bd}.public-figures span{display:block;margin-top:7px}figure{margin:34px 0}figure svg{display:block;width:100%;height:auto;border:1px solid #2d4755;border-radius:18px}figcaption{margin-top:10px}section{margin:38px 0}.public-stops,.public-legs{list-style:none;padding:0}.public-stops li{display:flex;gap:18px;border-bottom:1px solid #263c47;padding:18px 0}.public-stops li p{margin:4px 0;color:#b3c7cf}.number{display:flex;justify-content:center;align-items:center;flex-shrink:0;border:1px solid #57726b;color:#c5efb0;width:32px;height:32px;border-radius:50%;margin-top:9px}.public-leg{padding:25px 0;border-bottom:1px solid #304650}.confidence{display:inline-block;border:1px solid #425964;border-radius:5px;padding:3px 7px;color:#b6ccdb;font-size:.875rem}.confidence.missing,.confidence.stale{color:#ebcb8f;border-color:#6b5940}.public-leg details{margin-top:16px}.public-leg summary{cursor:pointer;min-height:44px;padding:10px 0}.related{border-top:1px solid #304650;padding-top:20px}.related a{display:block;padding:12px 0;min-height:44px}.coverage-note,.route-origin{background:#13232a;padding:20px;border-radius:12px}footer{border-top:1px solid #304650;padding-top:24px;color:#91aab5;font-size:.875rem}@media(max-width:620px){header{padding:20px 18px}.map-link{font-size:.875rem}main{padding:30px 18px 44px}.public-verdict{padding:20px}.public-figures{grid-template-columns:1fr;gap:16px}.intro{font-size:1rem}h1{font-size:2.25rem}}

.public-booking{margin-top:14px}.public-booking summary{color:#b0c0c8;cursor:pointer;min-height:44px;padding:10px 0;font-size:14px}.public-booking h4{font-size:13px;font-weight:500}.booking-options{display:flex;flex-wrap:wrap;gap:10px}.booking-link{display:block;font-size:13px;border:1px solid #3b505b;border-radius:8px;padding:10px 14px;min-height:44px;text-decoration:none}.booking-link:hover{border-color:#c5efb0}

.price-exclusions{display:block;color:#dae4e7;font-size:14px;margin-top:8px}.public-calendar li{padding:10px 0;line-height:1.6}
