/* ============================================================
   Neighborhoods & Areas: descriptive listing (map removed)
   ============================================================ */
.nbhd-head{ background:var(--ink); color:var(--on-dark); padding-top:calc(74px + clamp(3rem,7vw,5.5rem)); padding-bottom:clamp(2rem,4vw,3.5rem); position:relative; }
.nbhd-head::after{ content:''; position:absolute; left:0; right:0; bottom:0; height:1px; background:linear-gradient(90deg, var(--moss), transparent 60%); }
.nbhd-head h1{ font-size:var(--step-4); margin:0 0 .7rem; }
.nbhd-head p{ font-size:var(--step-0); color:var(--on-dark-mute); max-width:54ch; margin:0; }

.nbhd-jump{ position:sticky; top:74px; z-index:90; background:var(--paper); border-bottom:1px solid var(--line-light); overflow-x:auto; scrollbar-width:none; }
.nbhd-jump::-webkit-scrollbar{ display:none; }
.nbhd-jump__inner{ display:flex; padding:0 var(--gutter); min-width:max-content; }
.nbhd-jump a{ padding:.85rem 1.1rem; font-family:var(--ui); font-size:.8rem; font-weight:600; color:var(--on-light-mute); text-decoration:none; border-bottom:2px solid transparent; white-space:nowrap; transition:color .22s var(--ease-out), border-color .22s var(--ease-out); }
.nbhd-jump a:hover{ color:var(--on-light); }
.nbhd-jump a.is-active{ color:var(--moss-deep); border-bottom-color:var(--moss); }

.nbhd-body{ padding-block:clamp(2.5rem,5vw,4.5rem); }
.nbhd-mapnote{ display:flex; gap:1rem; align-items:flex-start; background:var(--paper-2); border:1px solid var(--line-light); border-left:3px solid var(--moss); border-radius:0 14px 14px 0; padding:1rem 1.2rem; margin-bottom:clamp(2.5rem,5vw,4rem); max-width:760px; }
.nbhd-mapnote__icon{ flex:0 0 36px; width:36px; height:36px; border-radius:50%; background:var(--ink); color:var(--moss-lt); display:grid; place-items:center; }
.nbhd-mapnote__icon svg{ width:18px; height:18px; }
.nbhd-mapnote strong{ display:block; font-family:var(--ui); font-size:.9rem; color:var(--on-light); margin-bottom:.2rem; }
.nbhd-mapnote p{ margin:0; font-size:.85rem; color:var(--on-light-mute); line-height:1.6; }

.nbhd-tier{ margin-bottom:clamp(3rem,6vw,5rem); scroll-margin-top:calc(74px + 60px); }
.nbhd-tier__head{ display:flex; align-items:center; gap:.7rem; margin-bottom:.5rem; }
.nbhd-tier__dot{ width:12px; height:12px; border-radius:50%; background:var(--tier); box-shadow:0 0 0 4px color-mix(in srgb, var(--tier) 20%, transparent); }
.nbhd-tier h2{ font-size:var(--step-3); margin:0; }
.nbhd-tier__intro{ color:var(--on-light-mute); max-width:62ch; margin:0 0 1.6rem; }

.nbhd-grid{ display:grid; gap:1.1rem; grid-template-columns:repeat(auto-fill, minmax(300px,1fr)); }
.nbhd-card{ position:relative; background:var(--paper-2); border:1px solid var(--line-light); border-radius:18px; padding:1.4rem 1.35rem 1.25rem; overflow:hidden; transition:transform .35s var(--ease-out), box-shadow .35s var(--ease-out), border-color .35s var(--ease-out); }
.nbhd-card::before{ content:''; position:absolute; left:0; top:0; bottom:0; width:4px; background:var(--tier); opacity:.85; }
.nbhd-card:hover{ transform:translateY(-4px); border-color:color-mix(in srgb, var(--tier) 55%, transparent); box-shadow:0 22px 45px -26px rgba(10,26,32,.55); }
.nbhd-card h3{ font-size:var(--step-1); margin:0 0 .5rem; }
.nbhd-card p{ font-size:.9rem; color:var(--on-light-mute); line-height:1.6; margin:0 0 .9rem; }
.nbhd-card__notes{ list-style:none; margin:0; padding:.85rem 0 0; border-top:1px solid var(--line-light); display:flex; flex-wrap:wrap; gap:.35rem; }
.nbhd-card__notes li{ font-family:var(--ui); font-size:.7rem; font-weight:600; padding:.22rem .6rem; border-radius:999px; background:rgba(18,38,44,.06); color:var(--on-light-mute); }
