
.city-map-section{padding-top:36px}.city-map-section .section-head{align-items:end}#city-map{height:460px;width:100%;background:#fafbf8;border:1px solid #e6eae1;border-radius:18px;overflow:hidden;z-index:0;position:relative}.map-loading{padding:30px;color:#465a45}.leaflet-container{font-family:Arial,sans-serif}.leaflet-popup-content{margin:18px;max-height:320px;overflow:auto;line-height:1.5}.map-popup-title{font-size:15px;margin:0 0 4px;font-weight:600;color:#304b3a}.map-popup-address{font-size:12px;color:#687163;margin:0 0 12px}.map-artwork{display:flex;align-items:center;gap:10px;background:white;border:0;border-top:1px solid #e4e8df;padding:10px 0;text-align:left;width:100%;font-size:12px;color:#304b3a}.map-artwork img{width:58px;height:58px;object-fit:contain}.map-artwork:hover span{text-decoration:underline}.map-addresses{border-top:1px solid var(--line);padding:14px 0}.map-addresses summary{cursor:pointer;color:#344e3e;font-size:13px}.map-address-group{padding:12px 0;border-bottom:1px solid #edf0e8}.map-address-group p{margin:0 0 5px;font-size:13px}.map-address-group button{border:0;background:none;text-decoration:underline;padding:3px 12px 3px 0;font-size:12px;text-align:left}.map-address-group a{display:inline-block;font-size:12px;color:#52684b;text-decoration:underline}#map-address-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 26px;margin-top:18px}#city-map-status{margin:10px 0 18px}.leaflet-control-attribution a{text-decoration:underline}.leaflet-container a.leaflet-popup-close-button{width:30px;height:30px;font-size:23px}
@media(max-width:800px){#city-map{height:380px}#map-address-list{grid-template-columns:repeat(2,minmax(0,1fr))}.city-map-section .section-head{display:block}.city-map-section .section-description{margin-top:14px}}
@media(max-width:500px){#city-map{height:340px}#map-address-list{grid-template-columns:1fr}.city-map-section{padding-top:24px}}

/* A quiet, light city backdrop keeps the illustrations and green pins prominent. */
#city-map .leaflet-tile-pane{filter:grayscale(1) contrast(.88) brightness(1.08);opacity:.84}
#city-map .leaflet-overlay-pane path.leaflet-interactive{filter:drop-shadow(0 2px 3px rgba(34,66,45,.18));transition:fill .16s,stroke-width .16s}
#city-map .leaflet-overlay-pane path.leaflet-interactive:hover,#city-map .leaflet-overlay-pane path.leaflet-interactive:focus{fill:#203e2c;stroke-width:3;outline:none}
#city-map .leaflet-control-zoom{border:1px solid #e2e8de;border-radius:12px;overflow:hidden;box-shadow:0 3px 15px rgba(45,63,40,.08);margin:18px}
#city-map .leaflet-control-zoom a{width:34px;height:34px;line-height:34px;background:#fff;color:#476044;font:22px/34px Arial,sans-serif}
#city-map .leaflet-control-zoom a:first-child{border-bottom:1px solid #edf0e9}
#city-map .leaflet-control-zoom a:hover{background:#f3f6ef}
#city-map .leaflet-control-attribution{background:rgba(255,255,255,.94);color:#63705e;font-size:10px;padding:3px 9px;border-radius:7px 0 0 0}
#city-map .leaflet-control-attribution a{color:#52644c}
#city-map .leaflet-popup-content-wrapper{border:1px solid #e6eae1;border-radius:15px;box-shadow:0 7px 28px rgba(39,58,35,.12)}
#city-map .leaflet-popup-tip{box-shadow:0 5px 12px rgba(39,58,35,.08)}
.map-sources{color:#788171;font-size:10px}.map-sources a:hover{text-decoration:underline}
@media(prefers-reduced-motion:reduce){#city-map .leaflet-overlay-pane path.leaflet-interactive{transition:none}}
