/* The map is one neighborhood, not a collection of generic geometric tiles. */
.map-sheet{aspect-ratio:auto;margin-top:0;background:#e9eddf;border-radius:24px;overflow:hidden}
.map-canvas{position:relative;aspect-ratio:640/460;overflow:hidden}
.neighborhood{width:100%;height:100%;border-radius:0;display:block}
.map-tab{position:static;display:flex;justify-content:space-between;align-items:center;padding:18px 24px;height:auto;background:transparent;font-size:15px;font-weight:800;border-radius:0}
.map-tab>span{font-size:13px;font-weight:400;color:#526c5b}
.map-route{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.walking-route{stroke:#789d7e;stroke-width:2.5;stroke-dasharray:2 9}
.cat-pin{width:56px;height:56px;min-width:48px;min-height:48px;border:3px solid #f7faf7;border-radius:50%;padding:4px;background:#f7faf7;transform:translate(-50%,-100%);color:var(--forest);scale:1;z-index:1;transition:scale .2s,background .2s,border-color .2s}
.cat-pin::after{content:'';position:absolute;bottom:-9px;left:50%;transform:translateX(-50%);border-left:7px solid transparent;border-right:7px solid transparent;border-top:9px solid #f7faf7;transition:border-top-color .2s}
.cat-pin svg{width:100%;height:100%;transform:none}
.cat-pin.selected{background:#f7faf7;border-color:var(--forest);scale:1.08;z-index:2}
.cat-pin.selected::after{border-top-color:var(--forest)}
.cat-pin:hover{scale:1.08}
.pin-oyen{left:24%;top:62%}.pin-milo{left:32%;top:32%}.pin-bubu{left:78%;top:58%}
.pin-name{position:absolute;left:50%;top:calc(100% + 12px);transform:translateX(-50%);font-size:12px;line-height:1.2;font-weight:800;color:#244d40;white-space:nowrap}
.cat-story{position:relative;inset:auto;display:flex;align-items:center;gap:12px;padding:16px 20px;margin:0 16px;border-radius:12px;background:#f7faf7;min-height:92px}
.story-face{width:48px;height:48px;flex-shrink:0;background:#eaf0e4;border-radius:50%;padding:2px}
.cat-story strong{font-size:17px;line-height:1.3;display:block}
.cat-story p{font-size:13px;line-height:1.5;margin-top:4px;max-width:320px}
.next-cat{border:0;background:#e8eee2;color:var(--forest);width:40px;height:40px;border-radius:50%;margin-left:auto;flex-shrink:0;display:grid;place-items:center;transition:background .2s}
.next-cat:hover{background:#d7e4cd}.next-cat svg{width:18px;height:18px}
.map-caption{position:static;font-size:12px;line-height:1.4;padding:12px 20px 16px;color:#526c5b}
@media(max-width:760px){.map-sheet{border-radius:20px;aspect-ratio:auto}.map-tab{padding:16px 20px}.cat-pin{width:48px;height:48px}.cat-story{padding:12px;gap:8px;margin:0 12px;min-height:88px}.story-face{width:40px;height:40px}.cat-story strong{font-size:15px}.cat-story p{font-size:12px}.map-caption{font-size:12px;padding:12px 16px 16px}.next-cat{width:44px;height:44px}.pin-name{font-size:11px}}
