/* District navigation extends the approved POSH catalogue. */
.district-links {padding:40px 0;border-top:1px solid #dce1e5}
.district-links h2 {font-size:32px;line-height:1.2;font-weight:500;margin:0 0 20px;letter-spacing:-.025em}
.district-links > p {font-size:18px;line-height:1.55;color:#40505c;max-width:820px;margin:0 0 20px}
.district-link-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 24px;list-style:none;padding:0;margin:0}
.district-link-grid a {display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:12px 0;border-bottom:1px solid #e1e5e8;font-size:17px;line-height:1.4;text-decoration:none;color:#29333b}
.district-link-grid a:hover {color:#111;text-decoration:underline;text-underline-offset:4px}
.district-link-grid a:focus-visible,.district-switch a:focus-visible {outline:2px solid #42576b;outline-offset:3px}
.district-link-grid .district-count {flex-shrink:0;color:#66737e;font-size:15px}
.district-index-link {display:inline-flex;align-items:center;min-height:44px;margin-top:20px;font-size:17px;text-decoration:underline;text-underline-offset:4px}
.district-switch {display:flex;flex-wrap:wrap;gap:8px 20px;margin:0 0 18px;font-size:16px;line-height:1.5}
.district-switch a {display:inline-flex;align-items:center;min-height:44px;color:#40505c;text-decoration:underline;text-underline-offset:4px}
body.district-page .catalog-title>div {min-width:0;max-width:900px}
body.district-page .catalog-title h1 {font-size:clamp(32px,4vw,54px);line-height:1.12;text-wrap:balance}
body.district-page .catalog-title p {display:block!important;font-size:18px;line-height:1.5;max-width:760px;margin-top:18px}
body.district-page .catalog-types {margin-top:20px}
body.district-page .catalog-controls {display:grid;grid-template-columns:minmax(160px,240px) minmax(0,1fr);gap:10px 24px;margin:16px 0}
body.district-page #catalog-filters {grid-column:1;grid-row:1;min-width:0}
body.district-page #catalog-filters>summary {display:flex;align-items:center;gap:8px;list-style:none;border:1px solid #aab2b6;border-radius:4px;padding:9px 12px;min-height:44px;font-size:16px;line-height:24px;cursor:pointer}
body.district-page #catalog-filters>summary::-webkit-details-marker {display:none}
body.district-page #catalog-filters .filter-disclosure-icon {display:block;width:20px;height:20px;margin-left:auto}
body.district-page #catalog-filters[open] .filter-disclosure-icon {transform:rotate(90deg)}
body.district-page .catalog-toolbar {display:contents}
body.district-page .catalog-toolbar>h2#result-count {grid-column:1/-1;grid-row:2;font-size:17px;line-height:1.5;margin:0}
body.district-page .catalog-toolbar>div {grid-column:2;grid-row:1;justify-self:end;min-width:0;width:240px}
body.district-page .catalog-toolbar .sort-label {display:block;width:100%}
body.district-page .catalog-toolbar .sort-label select {width:100%;min-height:44px;font-size:16px}
body.district-page .catalog-toolbar .mobile-visually-hidden {position:absolute!important;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
body.district-page #catalog-filters[open] {grid-column:1/-1}
body.district-page #catalog-filters[open]>summary {max-width:240px}
body.district-page #catalog-filters[open]~.catalog-toolbar>div {grid-row:2}
body.district-page #catalog-filters[open]~.catalog-toolbar>h2#result-count {grid-row:3}
body.district-index-page .catalog-title {margin-bottom:28px}
body.district-index-page .district-links {border:0;padding-top:0}
@media(max-width:1000px){.district-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.district-links h2{font-size:28px}}
@media(max-width:650px){
 .district-links{padding:32px 0}.district-links h2{font-size:26px;margin-bottom:16px}
 .district-link-grid{grid-template-columns:minmax(0,1fr);gap:0}.district-link-grid a{font-size:17px;min-height:48px}
 body.district-page .catalog-title h1{font-size:32px;line-height:1.15}
 body.district-page .catalog-title p{font-size:17px;line-height:1.45;margin:12px 0 0}
 body.district-page .catalog-types{margin-top:16px}.district-switch{font-size:16px;gap:0 14px;margin-bottom:10px}
 body.district-page .catalog-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 12px}
 body.district-page .catalog-toolbar>div{width:100%}
}
