.simple-home .neighborhood-atlas{--atlas-paper:#f6efdc;--atlas-ink:#374638;--atlas-line:#c8b997;max-width:1496px;margin:8px 32px 0;background:var(--atlas-paper);border:1px solid var(--atlas-line);box-shadow:0 5px 18px #453c2810;color:var(--atlas-ink)}
.atlas-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:17px 20px 12px}
.atlas-title{display:flex;align-items:center;gap:14px;min-width:0}
.atlas-edition{font:700 13px/1.1 Georgia,serif;letter-spacing:1px;padding:9px 8px;border:1px solid #8e8b6c;transform:rotate(-3deg);white-space:nowrap}
.atlas-title h2{margin:0;font-size:1.2rem;line-height:1.4;letter-spacing:-.5px}
.atlas-style-switch{display:flex;border:1px solid #a89978;padding:3px;gap:3px;flex-shrink:0;border-radius:5px}
.atlas-style-switch button{font-size:14px;min-height:38px;padding:7px 12px;border:0;border-radius:3px;background:transparent;color:#4d5344;white-space:nowrap}
.atlas-style-switch button[aria-pressed=true]{background:#344837;color:#fff9e9}
.atlas-neighborhoods{display:flex;align-items:center;flex-wrap:wrap;gap:6px 18px;padding:0 20px 12px;border-bottom:1px solid var(--atlas-line)}
.atlas-neighborhoods button{background:transparent;border:0;border-bottom:1px solid #b9b097;padding:7px 0;color:#4c5645;font-size:14px;min-height:38px}
.atlas-neighborhoods button:hover,.atlas-neighborhoods button[aria-current=true]{color:#973f27;border-color:#973f27}
.atlas-instruction{margin-left:auto;font-size:14px;color:#65705c}
.atlas-status{margin:0;padding:9px 20px;border-bottom:1px solid var(--atlas-line);font-size:14px;line-height:1.5;background:#fff8e7}
.simple-home .neighborhood-atlas .map-workspace{margin:0;max-width:none;border:0;border-radius:0;height:clamp(480px,68svh,760px);max-height:none;min-height:480px;grid-template-columns:300px minmax(0,1fr)}
.neighborhood-atlas .results-pane{border-right:1px solid var(--atlas-line)}
.simple-home .neighborhood-atlas .results-heading{background:#eee5ce;border-color:#d4c7a9}
.simple-home .neighborhood-atlas .result-card{background:#fffbef;border-color:#e3d9c2}
.simple-home .neighborhood-atlas .result-card:hover{background:#f4eedb}
.simple-home .neighborhood-atlas .result-list{background:#fffbef;scrollbar-color:#c4b99c #fffbef}
.simple-home .neighborhood-atlas .load-more{background:#fffbef}
.neighborhood-atlas .map-pane,.neighborhood-atlas #food-map{background:#f6efdc}
/* Moving map tiles/pins and replaced result cards must not anchor page scroll. */
.neighborhood-atlas .map-workspace{overflow-anchor:none}
/* A long results column must not enlarge the implicit grid row behind the
   clipped workspace. Leaflet must measure the visible map, not all 30 cards. */
.simple-home .neighborhood-atlas .map-workspace{grid-template-rows:minmax(0,1fr)}
.neighborhood-atlas .results-pane{min-height:0;overflow:hidden}
.neighborhood-atlas .result-list{min-height:0}
.atlas-paper-grain{position:absolute;inset:0;z-index:410;pointer-events:none;opacity:.28;background-image:repeating-radial-gradient(ellipse at 17% 31%,#705c361c 0 .7px,transparent .8px 3.7px),repeating-linear-gradient(96deg,transparent 0 24.7%,#aa91651a 24.9%,#fff9e94a 25%,transparent 25.2% 50%);background-size:7px 9px,100% 100%;box-shadow:inset 0 0 32px #5d4b2124}
.map-pane[data-basemap=standard] .atlas-paper-grain,.map-pane[data-basemap=standard] .atlas-north{display:none}
.map-pane[data-basemap=illustrated] .atlas-raster-base{filter:sepia(.4) saturate(.5) contrast(.9) brightness(1.06)}
.atlas-north{position:absolute;left:19px;top:91px;z-index:450;pointer-events:none;display:flex;align-items:center;flex-direction:column;width:26px;color:#4a503a;text-shadow:0 1px #fff8df}
.atlas-north b{font:700 13px Georgia,serif}
.atlas-north span{font:32px/1 Georgia,serif;margin-top:-1px}
.simple-home .neighborhood-atlas .leaflet-control-zoom{border:1px solid #aa9b7c!important;border-radius:3px!important;box-shadow:2px 3px 0 #4d402818}
.simple-home .neighborhood-atlas .leaflet-control-zoom a{background:#fff9e9!important;color:#374638!important;width:34px;height:34px;line-height:34px}
.neighborhood-atlas .atlas-zoom-controls button{display:block;width:36px;height:36px;padding:0;border:0;border-radius:0;background:#fff9e9;color:#374638;font:700 24px/36px Arial,sans-serif;text-align:center}
.neighborhood-atlas .atlas-zoom-controls button+button{border-top:1px solid #aa9b7c}
.neighborhood-atlas .atlas-zoom-controls button:hover{background:#eee5ce}
.neighborhood-atlas .atlas-zoom-controls button:disabled{color:#a5a69a;cursor:default}
.simple-home .neighborhood-atlas .map-topline button{background:#fff9e9f5;border:1px solid #ac9d7f;color:#374638;min-height:42px;border-radius:3px;box-shadow:2px 3px 0 #4d402818;font-size:14px}
.simple-home .neighborhood-atlas .map-hint{background:#fff9e9ed;color:#4b5140;border:1px solid #c6b997;border-radius:3px;font-size:14px;bottom:30px;box-shadow:1px 2px 0 #4d402816;max-width:calc(100% - 36px)}
.neighborhood-atlas .leaflet-control-attribution{background:#fff9e9eb!important;font-size:12px!important;max-width:100%;line-height:1.5}
.neighborhood-atlas .leaflet-control-attribution a{color:#405d61!important}
.simple-home .neighborhood-atlas .cluster-circle{background:#fdf5dc;color:#41513c;border:2px solid #7c8968;border-radius:46% 54% 49% 51%;box-shadow:2px 3px 0 #8c815137,0 0 0 3px #fff9e9a1;font-family:Georgia,serif;font-weight:700}
.simple-home .neighborhood-atlas .pin-shape{border:2px solid #fff9e9;box-shadow:1px 2px 0 #393d3659}
.simple-home .neighborhood-atlas .has-finder .pin-shape{box-shadow:0 0 0 2px #d7a945,2px 3px 0 #393d3659}
.atlas-landmark{background:none;border:0;text-align:center;cursor:pointer!important;outline-offset:3px;filter:drop-shadow(0 1px 1px #fff9e9b0)}
.atlas-landmark:focus-visible{outline:3px solid #a44128;border-radius:5px}
.atlas-landmark-art{display:block;width:var(--landmark-size);height:var(--landmark-size);margin:0 auto;background-image:url('/assets/maps/ny-nj-landmarks-atlas.png');background-repeat:no-repeat;background-size:400% 200%;background-position:var(--sprite-x) var(--sprite-y);pointer-events:none}
.atlas-landmark-name{position:absolute;top:calc(var(--landmark-size) - 3px);left:50%;transform:translateX(-50%);display:block;white-space:normal;width:max-content;max-width:148px;color:#30482f;font:700 14px/1.25 Local,Arial,sans-serif;background:#fff9e9e8;padding:3px 6px;border-radius:3px;box-shadow:0 1px 0 #b5a5848c}
html[lang=en] .atlas-landmark-name{font-family:Editorial,Georgia,serif;font-weight:400;font-size:15px}
.atlas-landmark:after{content:'';position:absolute;left:50%;bottom:0;width:5px;height:5px;background:#6d7755;border:1px solid #fff8e8;border-radius:50%;transform:translate(-50%,50%)}
.atlas-landmark:hover .atlas-landmark-name{background:#fff4cd;color:#723c25}
.atlas-landmark-popup .leaflet-popup-content-wrapper{background:#fff9e9;border:1px solid #b9ac8e;border-radius:6px;color:#374638;box-shadow:2px 4px 0 #58482224}
.atlas-landmark-popup .leaflet-popup-tip{background:#fff9e9}
.atlas-landmark-popup .leaflet-popup-content{margin:16px;min-width:190px}
.atlas-landmark-popup h3{font-size:18px;line-height:1.4;margin:0 0 6px}
.atlas-landmark-popup p{font-size:14px;line-height:1.5;margin:0 0 14px}
.atlas-landmark-popup button{display:block;background:#344837;border:0;border-radius:3px;color:#fff9e9;padding:10px 14px;font-size:15px;min-height:44px;width:100%}
.atlas-footer{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;padding:11px 20px;border-top:1px solid var(--atlas-line);font-size:14px;color:#596048;line-height:1.5}
.atlas-footer>span{display:inline-flex;align-items:center;gap:7px}
.atlas-legend-dot{width:9px;height:9px;background:#49745d;border:1px solid #fff9e9;box-shadow:0 0 0 1px #738866;border-radius:50%}
.atlas-legend-star{font-size:17px;color:#91691d}
.atlas-footer-note{margin-left:auto}
.neighborhood-atlas .paul-pin-key{top:auto;background:#fff9e9ef;border:1px solid #c6b997;right:14px;bottom:76px}
@media(min-width:1560px){.simple-home .neighborhood-atlas{margin-left:auto;margin-right:auto}}
@media(max-width:1000px){.atlas-instruction{display:none}.simple-home .neighborhood-atlas .map-workspace{grid-template-columns:260px minmax(0,1fr)}}
@media(max-width:800px){.simple-home .neighborhood-atlas{margin-inline:20px}.atlas-heading{padding:14px 14px 8px}.atlas-neighborhoods{padding-inline:14px;gap:5px 16px}.atlas-title{gap:10px}.atlas-edition{display:none}.atlas-style-switch button{padding-inline:10px}.atlas-footer{padding-inline:14px}.atlas-footer-note{display:none}}
@media(max-width:700px){.simple-home .neighborhood-atlas{margin:4px 16px 0}.atlas-heading{align-items:flex-start;flex-direction:column;gap:10px}.atlas-title h2{font-size:1.1rem}.atlas-style-switch{width:100%}.atlas-style-switch button{flex:1;min-height:40px}.atlas-neighborhoods{padding-top:0;gap:2px 14px}.atlas-neighborhoods button{font-size:14px;min-height:42px}.simple-home:has(.map-purpose) .neighborhood-atlas .map-workspace{height:66svh;min-height:430px;max-height:720px;display:block;margin:0}.atlas-footer{gap:5px 15px;font-size:14px}.atlas-landmark-name{max-width:115px;font-size:13px}.simple-home .neighborhood-atlas .map-hint{font-size:13px;bottom:58px}.neighborhood-atlas .paul-pin-key{bottom:103px}.neighborhood-atlas .leaflet-control-attribution{font-size:12px!important;max-width:100%;white-space:normal}}
@media(prefers-reduced-motion:reduce){.neighborhood-atlas *{scroll-behavior:auto!important}}
/* Native MapLibre gestures, pins and artwork share one untransformed camera. */
.neighborhood-atlas .atlas-map-marker{position:absolute;display:block;padding:0;border:0;background:transparent;color:inherit;line-height:1;text-align:center;border-radius:0;cursor:pointer;overflow:visible}
.neighborhood-atlas .atlas-map-marker:focus-visible{outline:3px solid #a44128;outline-offset:5px;border-radius:4px}
.neighborhood-atlas .maplibregl-popup{z-index:750;font-family:Local,Arial,sans-serif;line-height:1.5}
.neighborhood-atlas .maplibregl-popup-content{padding:0;background:#fff9e9;color:#374638;border-radius:6px;box-shadow:0 5px 24px #453c282e;overflow:hidden}
.neighborhood-atlas .maplibregl-popup-close-button{position:absolute;right:6px;top:6px;border:0;border-radius:50%;background:#fff9e9f5;color:#374638;width:30px;height:30px;font-size:23px;line-height:30px;z-index:1}
.neighborhood-atlas .atlas-landmark-popup .maplibregl-popup-content{padding:16px;border:1px solid #b9ac8e;min-width:220px}
.neighborhood-atlas .atlas-landmark-popup h3{padding-right:18px}
.neighborhood-atlas .maplibregl-popup-anchor-bottom .maplibregl-popup-tip{border-top-color:#fff9e9}
.neighborhood-atlas .maplibregl-popup-anchor-top .maplibregl-popup-tip{border-bottom-color:#fff9e9}
.neighborhood-atlas .maplibregl-ctrl-top-left,.neighborhood-atlas .maplibregl-ctrl-bottom-right{z-index:800}
.neighborhood-atlas .maplibregl-ctrl-group{margin-top:14px;border:1px solid #aa9b7c;border-radius:3px;background:#fff9e9;box-shadow:2px 3px 0 #4d402818}
.neighborhood-atlas .maplibregl-ctrl-group button{width:36px;height:36px}
.neighborhood-atlas .maplibregl-ctrl-attrib{background:#fff9e9f0;font-size:12px;color:#405d61;line-height:1.5}
.neighborhood-atlas .maplibregl-ctrl-attrib a{color:#405d61}
.neighborhood-atlas .maplibregl-ctrl-attrib.maplibregl-compact{min-height:26px;padding-top:4px;padding-bottom:4px}

/* Quiet neighborhood guides sit below place pins and never capture gestures. */
.community-area-label.leaflet-tooltip{font-family:inherit;font-size:14px;font-weight:700;color:#243a50;background:rgba(255,255,255,.94);border:1px solid #b8c8d4;border-radius:5px;padding:4px 7px;box-shadow:0 1px 3px #17334a12;pointer-events:none}
.community-area-label.leaflet-tooltip:before{display:none}
.neighborhood-legend{display:inline-block;width:15px;height:15px;margin-right:6px;vertical-align:middle;border:1px solid #397eae80;border-radius:50%;background:#397eae29}
.food-area-dot{display:grid;place-items:center;background:none;border:0}
.food-area-dot span{width:12px;height:12px;border:2px solid white;border-radius:50%;background:#456c66;box-shadow:0 1px 4px #17334a55}
.food-area-dot:hover span,.food-area-dot:focus span{transform:scale(1.25)}

.venue-symbol{background:none;border:0}
.venue-symbol-disc{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#fffdf7;border:2px solid var(--cuisine);color:var(--cuisine);box-shadow:0 2px 6px #152f4933;position:relative}
.venue-symbol-disc svg{width:25px;height:25px;stroke-width:2}
.venue-symbol:focus .venue-symbol-disc,.venue-symbol:hover .venue-symbol-disc{outline:3px solid #ffffffc9;transform:scale(1.1)}
.venue-symbol .pin-finder{position:absolute;right:-2px;bottom:-3px;color:#926414;background:#fff9e5;border-radius:50%;padding:0 3px}
.venue-name-tooltip.leaflet-tooltip{font-family:inherit;font-size:14px;font-weight:700;background:#142d4e;color:white;border:0;padding:7px 10px;box-shadow:0 2px 8px #142d4e33}
.finder-map-action{display:block!important;background:#142d4e;color:white!important;padding:12px 10px;border-radius:8px;margin:12px 0;text-align:center;font-size:14px!important;font-weight:700;text-decoration:none!important}
.place-source-note{font-size:12px!important;color:#64748b;margin-top:8px!important}
.restaurant-preview .preview-copy p{margin:6px 0;line-height:1.4}
.restaurant-preview .preview-copy h3{margin:7px 0}
.restaurant-preview .finder-map-action{padding:9px 8px;margin:9px 0}

/* Strong town labels remain visible on the opening overview. */
.community-area-label.leaflet-tooltip{font-size:16px;font-weight:800;color:#102c4d;background:#fff;border:2px solid #385b79;padding:5px 9px;box-shadow:0 2px 7px #102c4d30;opacity:1!important}
.overview-town-label.leaflet-tooltip{font-size:16px;font-weight:900;border-color:#142d4e;background:#142d4e;color:#fff;box-shadow:0 2px 8px #102c4d40}

.community-area-label.leaflet-tooltip{padding:0}
.town-zoom-button{display:block;min-height:44px;padding:8px 10px;border:0;border-radius:3px;background:transparent;color:inherit;font:inherit;font-weight:inherit;line-height:1.3;white-space:nowrap;pointer-events:auto;cursor:pointer;touch-action:manipulation}
.town-zoom-button:hover{background:#397eae30}.town-zoom-button:focus-visible{outline:3px solid #e8aa32;outline-offset:3px}
