.route-map{margin:24px 0 14px;background:#e5f2f8;border:1px solid #c6dfe9;border-radius:18px;overflow:hidden;isolation:isolate}
.route-map svg{display:block;width:100%;height:auto;max-height:290px}
.map-land{fill:#f8fbfc;stroke:#a9c9d8;stroke-width:1.5;stroke-linejoin:round}
.map-lakes{fill:#d6eaf4}.map-guide{fill:none;stroke:#dce8ec;stroke-width:1;stroke-dasharray:3 5}
.map-track,.map-progress{fill:none;stroke-width:3;stroke-linecap:round}.map-track{stroke:#a3c7d9;stroke-dasharray:4 7}.map-progress{stroke:#00669e}
.map-stop{fill:#00669e;stroke:#fff;stroke-width:3}.map-boston{fill:#183f57;font-size:15px;font-weight:750}
.map-caption{padding:0 18px 16px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:5px 12px;color:#183f57;font-size:13px;font-weight:700}
.map-caption small{font-size:10px;color:#4d6474;font-weight:400}
.route-direction{font:inherit;font-size:13px;font-weight:700;display:flex;align-items:center;gap:10px;min-height:44px;border:1px solid #a7c8d9;background:#fff;color:#174e6d;padding:9px 15px;border-radius:24px;cursor:pointer}
.route-direction span{font-size:23px;line-height:1}.route-direction[aria-pressed=true]{background:#00669e;color:#fff;border-color:#00669e}.route-direction:hover{box-shadow:0 2px 10px #173f571a}.route-direction:focus-visible{outline:3px solid #bf8100;outline-offset:3px}
@media(max-width:700px){.route-map{margin-top:18px}.route-map svg{max-height:240px}.map-caption{padding:0 12px 12px;display:grid}.route-direction{width:100%;justify-content:center}.refined .route-visual{min-width:0}}
