/* Compact, progressively enhanced neighborhood directory. */
.nc-directory,.editorial .section.nc-directory{background:#f0f3eb;padding-block:36px}
.nc-directory>.eyebrow{margin:0 0 10px}
.nc-directory h2{font-size:clamp(28px,3.4vw,44px);line-height:1.15;margin:8px 0 14px}
.nc-directory .nc-intro{max-width:70ch;margin:0 0 22px;font-size:16px;line-height:1.65}
.nc-search-tools{display:flex;gap:12px;align-items:end;max-width:680px;margin-bottom:12px}
.nc-search-field{flex:1;min-width:0}
.nc-search-field label{display:block;font-size:13px;font-weight:700;margin:0 0 7px}
.nc-search-field input{box-sizing:border-box;width:100%;min-height:46px;border:1px solid #9caf9e;border-radius:8px;padding:10px 13px;background:#fffef9;color:#173d34;font:inherit;font-size:16px}
.nc-reset{min-height:46px;padding:9px 14px;border:1px solid #9caf9e;background:transparent;color:#173d34;border-radius:8px;font:inherit;font-size:14px;cursor:pointer}
.nc-status{font-size:13px!important;color:#516357;margin:8px 0 17px!important;min-height:20px}
.nc-directory details{border:0;border-top:1px solid #c5d0c4;margin:0;padding:0;border-radius:0;background:transparent}
.nc-directory details#manhattan-neighborhoods{background:transparent}
.nc-directory details:last-of-type{border-bottom:1px solid #c5d0c4}
.nc-directory summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 0;list-style:none}
.nc-directory summary::-webkit-details-marker{display:none}
.nc-borough-name{font-size:20px;font-weight:700}
.nc-borough-count{font-size:12px;font-weight:400;color:#506357;margin-left:10px;white-space:nowrap}
.nc-directory summary::after{content:'+';font-size:24px;font-weight:400;line-height:1}
.nc-directory details[open]>summary::after{content:'−'}
.nc-borough-note{font-size:14px;line-height:1.65;margin:0 0 10px}
.nc-link-grid,.nc-results{list-style:none;padding:0;margin:8px 0 20px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:20px;row-gap:0}
.nc-link-grid li,.nc-results li{min-width:0;margin:0}
.nc-link{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;box-sizing:border-box;padding:9px 0;border-bottom:1px solid #d7dfd3;text-decoration:none;color:#173d34;font-size:14px;line-height:1.4}
.nc-link::after{content:'↗';color:#547263;flex:none}
.nc-link:hover{color:#176a54;text-decoration:underline;text-underline-offset:3px}
.nc-directory :is(a,button,input,summary):focus-visible{outline:3px solid #b9984b;outline-offset:3px;border-radius:5px}
.nc-directory [hidden]{display:none!important}
.nc-directory .nc-footnote{font-size:13px;line-height:1.7;margin:17px 0 0;max-width:88ch;color:#506357}
.nc-results{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:16px}
.nc-results .nc-link{align-items:start;min-height:64px}
.nc-result-copy{display:flex;flex-direction:column;gap:4px}
.nc-result-copy strong{font-size:15px}
.nc-result-copy small{font-size:12px;font-weight:400;color:#506357;line-height:1.5}
.nc-empty{padding:16px 0;font-size:15px;line-height:1.7}
.nc-area-coverage{background:#f7f3e9}
.nc-area-coverage p{max-width:85ch}
.nc-area-list{display:flex;flex-wrap:wrap;gap:7px 18px;padding:0;list-style:none;margin:18px 0}
.nc-area-list li{padding:6px 0;font-size:15px;border-bottom:1px solid #d5dbce}
.nc-profile-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:36px}
.nc-profile-grid h2{font-size:clamp(26px,3vw,36px);line-height:1.2}
.nc-profile-grid ul{padding-left:22px;line-height:1.8}
.nc-profile-grid li{margin-bottom:12px}
.nc-real-work{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;background:#f7f3e9}
.nc-real-work img{width:100%;height:auto;max-height:420px;object-fit:contain;border-radius:8px}
.nc-real-work figcaption{font-size:12px;line-height:1.6;color:#526159;margin-top:10px}
.nc-real-work h2{font-size:clamp(25px,3vw,36px);line-height:1.2}
.nc-hero h1{font-size:clamp(32px,3.5vw,49px);line-height:1.12}
.nc-hero figure img{max-height:480px}
.nc-guide-shortcuts{display:flex;flex-wrap:wrap;gap:10px 20px;line-height:1.7;font-size:14px}
.nc-directory,.nc-directory details,.nc-area-coverage{scroll-margin-top:0}
@media(max-width:1000px){.nc-link-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.nc-results{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.nc-directory{padding:30px 20px}.nc-link-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}.nc-directory h2{font-size:30px}.nc-borough-name{font-size:18px}.nc-borough-count{font-size:11px;margin-left:6px}.nc-profile-grid,.nc-real-work{grid-template-columns:1fr;gap:22px}.nc-hero h1{font-size:34px}.nc-results{grid-template-columns:1fr}.nc-search-tools{gap:8px}.nc-reset{padding:9px 10px}.nc-link{font-size:13px}.nc-directory .nc-intro{font-size:15px}.nc-real-work img{max-height:360px}}
