.city-map{display:block;width:100%;height:auto;overflow:hidden;isolation:isolate;font-family:inherit;color:#405546;touch-action:pan-y}
.city-map text{paint-order:stroke fill;user-select:none}
.map-borough-labels{font-size:14px;font-weight:800;letter-spacing:3px;fill:#889276;text-anchor:middle}
.map-borough-labels text:first-child{font-size:12px;fill:#a0ab91}
.map-water-labels{font-size:15px;font-style:italic;font-family:Georgia,serif;letter-spacing:1px;fill:#7aaba4;text-anchor:middle}
.map-neighborhood-labels{font-size:8px;font-weight:700;letter-spacing:1.2px;fill:#9a9478;text-anchor:middle}
.map-park-name{font-size:10px;font-weight:900;letter-spacing:1.6px;fill:#597449;text-anchor:middle;stroke:#b8cc99;stroke-width:4px}
.map-tree path:first-child{stroke:#7c9164;stroke-width:2;stroke-linecap:round;fill:none}
.map-tree path:last-child{fill:#91b179;stroke:#82a468;stroke-width:1.5}
.map-mile-labels{font-size:9px;font-weight:800;letter-spacing:.4px;fill:#b6745b;stroke:#f7efd9;stroke-width:4px}
.map-q-stations circle{fill:#f2c348;stroke:#fff8e7;stroke-width:2.2}
.map-q-stations text{fill:#514c2e;text-anchor:middle;font-size:11px;font-weight:900}
.map-station-labels{fill:#746747;font-size:10px;font-weight:750;stroke:#fff8e7;stroke-width:4px}
.map-start-marker text{fill:#aa7057;font-size:10px;font-weight:900;letter-spacing:1px;text-anchor:middle;stroke:#f7efd9;stroke-width:3px}
.map-finish-label{font-size:8px;font-weight:900;fill:#637e53;letter-spacing:1px;stroke:#f7efd9;stroke-width:3px}
.map-place-labels path{fill:#fffaf0;stroke:#e4dbc2;stroke-width:1}
.map-place-labels text{fill:#4c604a;font-size:10px;font-weight:800;text-anchor:middle}
.map-stop{cursor:pointer;outline:none}
.map-stop-halo{fill:#fffaf0;opacity:.8;transition:opacity .2s,transform .2s;transform-origin:center}
.map-stop-disc{fill:#526e49;stroke:#fffaf0;stroke-width:3;transition:fill .2s}
.map-stop-number{fill:#fffaf0;font-size:15px;font-weight:900;text-anchor:middle}
.map-stop:hover .map-stop-halo,.map-stop:focus-visible .map-stop-halo{transform:scale(1.16);opacity:1}
.map-stop:hover .map-stop-disc,.map-stop:focus-visible .map-stop-disc,.map-stop.is-selected .map-stop-disc{fill:#d87557}
.map-stop:focus-visible .map-stop-halo{stroke:#385844;stroke-width:2}
.map-compass text{font-size:11px;font-weight:900;letter-spacing:1px;fill:#53756a;text-anchor:middle}
.map-key text{font-size:11px;font-weight:700;fill:#64705a}
.map-caption text{font-size:10px;font-weight:650;fill:#79856c;letter-spacing:.1px}
@media(prefers-reduced-motion:reduce){.map-stop-halo,.map-stop-disc{transition:none}}

.map-reunion-label{fill:#60795c;font-size:9px;font-weight:800;stroke:#fff9e9;stroke-width:4px}

.map-landmark-label{fill:#8c9174;font-size:8px;font-weight:800;letter-spacing:1.2px;text-anchor:middle;stroke:#f7efd9;stroke-width:3px}
.map-bridge-label{fill:#7d9c8c;stroke:#d4e7e2;stroke-width:3px}

/* Geographic phone map: the coordinate system is fixed, with uniform scaling. */
.geographic-map{background:#d4e7e2}
/* All place text goes through the same viewport/collision layout. The halo
   is modest: it should never cut a white trench through an illustration. */
.geographic-map{font-family:Arial,sans-serif}
.geo-bridge{stroke-linejoin:round;stroke-linecap:round}
.geo-label{font-size:16px;font-weight:700;fill:#71816a;pointer-events:none}
.geo-label text{stroke:#f7efd9;stroke-width:2px;paint-order:stroke fill;stroke-linejoin:round}
.geo-label-borough{font-size:17px;font-weight:750;letter-spacing:1.3px;fill:#8a9478}
.geo-label-water{font:italic 18px Georgia,serif;fill:#739d95}
.geo-label-water text,.geo-label-landmark text{stroke:#d4e7e2;stroke-width:2px}
.geo-label-park{font-size:15px;font-weight:800;letter-spacing:.8px;fill:#638452}
.geo-label-central{font-size:11px;font-weight:800;letter-spacing:.4px;fill:#547449}
.geo-label-central text{stroke:#b6ca96;stroke-width:2px}
.geo-label-stop{font-size:18px;font-weight:800;fill:#4b6447;cursor:pointer;pointer-events:auto}
.geo-label-stop rect{fill:#fffbf0;stroke:#ded9bf;stroke-width:1.2}
.geo-label-stop text{stroke:none}
.geo-label .geo-label-sub{font-size:13px;font-weight:600;letter-spacing:0;fill:#7d856d;stroke:none}
[data-map-label][data-stop]:focus-visible{outline:none}
[data-map-label][data-stop]:focus-visible rect,[data-map-label][data-stop]:hover rect{stroke:#587553;stroke-width:2.5}
.geo-label-meet{font-size:17px;fill:#587651}
.geo-label-landmark{font-size:14px;fill:#769083}
.geo-label-station{font-size:14px;fill:#94804e}
.geo-label-place{font-size:13px;font-weight:800;letter-spacing:.8px}
.geo-leader{fill:none;stroke:#8d9f82;stroke-width:1.1;stroke-dasharray:2.5 3;pointer-events:none}
.geographic-map .map-landmark-label{display:none}
.map-camera-controls{display:none}

.map-mascot-name rect{fill:#fffbef;stroke:#d3d7bf;stroke-width:1.2}
.map-mascot-name text{font-size:19px;font-weight:800;fill:#425f44;text-anchor:middle}
