html.nuc-directory-pending [data-world] {visibility:hidden;}
/* Run 1: scoped additions; the existing page grid and centre modal remain intact. */
#page-home .directory-search {display:flex;flex-direction:column;align-items:stretch;gap:10px;}
#page-home .directory-search .search-field {width:min(680px,100%);max-width:100%;flex:0 0 auto;margin:0 auto!important;}
#page-home .directory-view-toolbar {display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;width:100%;}
#page-home .directory-view-switch {display:inline-flex;padding:4px;border:1px solid #c9ddea;border-radius:12px;background:#eaf3fa;gap:4px;}
#page-home .directory-view-switch button {min-width:116px;min-height:42px;padding:9px 20px;border:1px solid transparent;border-radius:9px;color:#33596f;background:transparent;font:600 14px 'DM Sans',sans-serif;cursor:pointer;}
#page-home .directory-view-switch button[aria-pressed="true"] {background:#1565c0;border-color:#1565c0;color:white;box-shadow:0 2px 5px #10497624;}
#page-home #resetFilters {font-size:12px;background:transparent;border-color:transparent;text-decoration:underline;text-underline-offset:3px;min-height:42px;}
#page-home #resultStatus {flex-basis:auto;margin:0;}
#page-home .directory-panel {min-width:0;width:100%;box-sizing:border-box;padding:24px;background:#f5f4f0;border-radius:0;align-self:start;}
.directory-panel-heading {display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px;}
#page-home .directory-panel-heading h2 {font:700 26px 'Playfair Display',Georgia,serif;color:#123e58;margin:0;}
.directory-panel-heading p {color:#536f83;font-size:14px;margin:0;}
.directory-results {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.directory-result {display:flex;flex-direction:column;padding:22px;border:1px solid #d7e4ed;border-radius:16px;background:#fff;box-shadow:0 5px 18px #183b5705;min-width:0;}
.directory-result-tags {display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px;}
.directory-badge {font-size:11px;line-height:1.5;padding:3px 9px;border-radius:15px;}
.directory-badge.public {background:#fff0f0;color:#a8333d;}
.directory-badge.private {background:#eaf3ff;color:#1b5792;}
.directory-badge.riv {background:#e7f7f0;color:#186a51;}
#page-home .directory-result h3 {font:700 19px/1.35 'Playfair Display',Georgia,serif;margin:0 0 10px;overflow-wrap:anywhere;}
.directory-result-link {color:#173f58;text-decoration:none;}
.directory-result-link:hover {text-decoration:underline;text-underline-offset:3px;}
.directory-result-location {color:#587286;font-size:13px;line-height:1.65;margin:0 0 20px;overflow-wrap:anywhere;}
.directory-result-actions {margin-top:auto;display:flex;flex-wrap:wrap;align-items:center;gap:10px;}
.directory-result-actions button,.directory-result-actions a {display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:42px;padding:9px 12px;border-radius:8px;font:600 12px/1.4 'DM Sans',sans-serif;text-decoration:none;text-align:center;}
.directory-preview {background:white;color:#47687e;border:1px solid #c9ddea;}
.directory-full {background:#eaf3fa;color:#125485;border:1px solid #c9ddea;}
.directory-full:hover,.directory-preview:hover {background:#dbeefa;}
.directory-pagination {display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap;margin:26px 0 16px;color:#4d6a80;font-size:13px;}
.directory-pagination button,.centre-page-message button {min-height:42px;padding:10px 16px;background:white;border:1px solid #b5cbdc;border-radius:8px;color:#184e73;}
.directory-coverage {font-size:12px;color:#607486;line-height:1.7;text-align:center;}
.directory-empty {grid-column:1/-1;padding:34px;text-align:center;color:#426176;background:#fff;border:1px dashed #bfd5e5;border-radius:14px;}
.directory-empty h3 {font-size:19px;margin:0 0 12px;}
.directory-empty p {font-size:14px;line-height:1.7;}
.directory-profile-link {display:inline-flex;margin-bottom:20px;background:#1565c0;color:#fff!important;border-color:#1565c0;}
.centre-page-shell {max-width:1040px;margin:0 auto;padding:26px 24px 64px;}
.centre-page-breadcrumb {display:flex;flex-wrap:wrap;gap:12px;color:#627b8d;font-size:13px;line-height:1.5;margin:0 0 24px;}
.centre-page-breadcrumb a {color:#245e87;}
.centre-page-card {border:1px solid #d2e3ee;border-radius:20px;background:white;overflow:hidden;box-shadow:0 12px 38px #153b5c09;}
.centre-page-header {padding:30px 32px;background:linear-gradient(115deg,#eaf3fa,#f4f9fc);border-bottom:1px solid #d2e3ee;}
.centre-page-header h1 {font:700 30px/1.35 'Playfair Display',Georgia,serif;color:#103f60;margin:12px 0 20px;overflow-wrap:anywhere;}
.centre-page-header .detail-action {display:inline-flex;background:#fff;min-height:42px;align-items:center;box-sizing:border-box;}
.centre-page-card .detail-body {padding:30px 32px;font-size:15px;line-height:1.8;}
.centre-page-card .detail-body h3 {margin-top:28px;font-size:18px;}
.centre-page-message {background:white;border:1px solid #d2e3ee;border-radius:16px;padding:28px;line-height:1.8;color:#34566b;}
.centre-page-message h1 {font:700 26px/1.4 'Playfair Display',Georgia,serif;}
.centre-page-message a {display:inline-block;margin:16px;}
.centre-page .copy-feedback input {display:block;box-sizing:border-box;max-width:100%;width:100%;padding:10px;color:#23475d;border:1px solid #b5cbdc;border-radius:6px;}
@media(min-width:1650px) {.directory-results {grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:1050px) {.directory-results {grid-template-columns:minmax(0,1fr);}}
@media(max-width:640px) {
 #page-home .directory-panel {padding:16px 10px;}
 #page-home .directory-panel-heading h2 {font-size:23px;}
 #page-home .directory-view-toolbar {gap:4px;}
 #page-home .directory-view-switch button {min-width:105px;padding:9px 15px;}
 .directory-result {padding:19px;}
 .directory-result-actions a,.directory-result-actions button {flex:1 1 130px;}
 .centre-page-shell {padding:18px 10px 50px;}
 .centre-page-header,.centre-page-card .detail-body {padding:22px 18px;}
 .centre-page-header h1 {font-size:24px;}
 .centre-page-message {padding:20px;}
}

#page-home .directory-search .directory-coverage {text-align:left;font-size:11px;margin:0;}

/* RUN 47 — one lower-right navigation group; attribution stays unobstructed. */
#map .map-pan-pad{right:12px;bottom:30px;grid-template-columns:44px 44px 44px;grid-template-rows:44px 44px 44px;gap:4px}
#map .map-pan-pad button{width:44px;height:44px;border:1px solid #0d3b5c}
#map .leaflet-control-zoom{margin-right:60px;margin-bottom:176px;border:1px solid #0d3b5c;box-shadow:0 2px 8px #0d3b5c26}
#map .leaflet-control-zoom a{box-sizing:border-box;width:44px;height:44px;line-height:44px;color:#0d3b5c}
#map .leaflet-control-zoom a:first-child{border-bottom:1px solid #0d3b5c}
#map .leaflet-control-attribution{position:absolute;bottom:0;right:0;max-width:calc(100vw - 30px)}
#map button:focus-visible,#map .leaflet-control-zoom a:focus-visible{outline:3px solid #1565c0;outline-offset:3px}
.map-region-controls{display:flex;gap:8px 16px;align-items:center;flex-wrap:wrap;padding:8px 14px;background:#f7fbff;color:#153c50;font-size:.8rem}
.map-region-controls select,.map-region-controls button{font:inherit;padding:7px;border:1px solid #c1d7e7;border-radius:8px;background:white;color:#153c50}
.map-region-controls small{max-width:430px;color:#557284}
@media(max-width:640px){.map-region-controls small{display:none}#map{min-height:430px}}

#map .leaflet-bottom.leaflet-right{width:100%;pointer-events:none}
#map .leaflet-control-attribution{max-width:100%;white-space:nowrap;font-size:10px;line-height:18px;padding:0 4px}

/* NUC48: compact visible controls, with separate non-overlapping touch targets. */
/* NUC61: halve desktop faces and footprint; keep separate touch targets. */
#map {--map-face:clamp(20px,1.5vw,22px);--map-hit:var(--map-face);--map-icon:12px;--map-gap:2px;--map-right:8px;--map-bottom:26px;cursor:grab}
#map.leaflet-drag-target,#map.leaflet-dragging{cursor:grabbing}
#map.leaflet-touch-drag.leaflet-touch-zoom{touch-action:none}
#map .map-pan-pad{grid-template-columns:repeat(3,var(--map-hit));grid-template-rows:repeat(3,var(--map-hit));gap:var(--map-gap);right:var(--map-right);bottom:var(--map-bottom)}
#map .map-pan-pad button,#map .leaflet-control-zoom a{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:var(--map-hit);height:var(--map-hit);min-width:0;min-height:0;padding:0;border:0;background:transparent;box-shadow:none;color:#0d3b5c;font:700 var(--map-icon)/1 system-ui,sans-serif;touch-action:manipulation}
#map .map-pan-pad button::before,#map .leaflet-control-zoom a::before{content:"";position:absolute;z-index:-1;left:50%;top:50%;transform:translate(-50%,-50%);width:var(--map-face);height:var(--map-face);box-sizing:border-box;background:#fff;border:1px solid #0d3b5c;border-radius:6px;box-shadow:0 2px 5px #0d3b5c24;pointer-events:none}
#map .map-pan-pad button:hover::before,#map .leaflet-control-zoom a:hover::before{background:#eaf3fa}
#map .map-pan-pad .pan-center::before{background:#f2f7fb}
#map .map-pan-pad button:active{transform:none}
#map .leaflet-control-zoom{margin-right:calc(var(--map-right) + var(--map-hit) + var(--map-gap));margin-bottom:calc(var(--map-bottom) + 3 * var(--map-hit) + 3 * var(--map-gap));border:0;background:none;box-shadow:none}
#map .leaflet-control-zoom a:first-child{border:0}
#map .leaflet-control-zoom a.leaflet-disabled{color:#859baa}
#map .map-control-glyph{pointer-events:none}
@media(max-width:600px){#map{--map-face:20px;--map-icon:11px;--map-right:6px}}
@media(any-pointer:coarse){#map{--map-hit:44px}}

/* NUC49: map fits the available viewport, independently of fixed legacy heights. */
#page-home #resultStatus{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}
#page-home #directoryCoverage{display:none!important}
body #page-home .map-area-v2{height:var(--responsive-map-height,60dvh)!important;min-height:0!important}
body #page-home .map-grid-v2,body #page-home .right-sidebar-v2{min-height:0!important}
body #page-home .right-sidebar-v2{max-height:var(--responsive-map-height,60dvh);overflow-y:auto}
@media(max-width:980px){body #page-home .right-sidebar-v2{max-height:none}}

/* NUC62: compact home footer, without changing other pages' legal links. */
body #homePartnerFooter{box-sizing:border-box;padding:8px 16px!important;line-height:1.35!important}
#homePartnerFooter .home-partner-link{margin:0 auto 4px;padding:7px 16px;line-height:1.35}
#homePartnerFooter p{margin:2px 0;line-height:1.35}
#homePartnerFooter .nuc-legal-footer{margin:0;padding:6px 0 0;gap:4px 18px;font-size:12px;line-height:1.5}
@media(min-width:1201px){
 body #homePartnerFooter{display:grid;grid-template-columns:minmax(240px,1fr) minmax(280px,1.25fr) minmax(240px,1fr);gap:2px 20px;align-items:center;padding:8px 18px!important}
 #homePartnerFooter .home-partner-link{grid-column:1;grid-row:1 / 4;width:auto;margin:0;justify-self:center;padding:8px 14px}
 #homePartnerFooter p{grid-column:2;margin:0}
 #homePartnerFooter .seo-access{grid-row:1}
 #homePartnerFooter .seo-access + p{grid-row:2}
 #homePartnerFooter .home-partner-caption{grid-row:3}
 #homePartnerFooter .nuc-legal-footer{grid-column:3;grid-row:1 / 4;padding:0;gap:4px 16px;align-content:center}
}
