.community-design .area-section { padding-top:48px; padding-bottom:38px; }
.community-design #stats { padding-bottom:12px; }
.community-design .glance-grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:start; }
.community-design .community-school-panel { grid-column:auto; }
.community-design .election-history-controls { margin:20px 0; }
.community-design .school-district-list { grid-template-columns:1fr; }
.community-design .school-district-list a { display:flex; justify-content:space-between; align-items:center; gap:10px; min-height:48px; }
.community-government-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-bottom:20px; }
.community-government-links a { display:grid; gap:9px; padding:20px 22px; color:#fff; background:#0b344b; border-top:4px solid #d4aa52; text-decoration:none; }
.community-government-links a:hover { background:#174e64; }
.community-government-links a:focus-visible { outline:3px solid #147770; outline-offset:4px; }
.community-government-links small { color:#eed197; font-size:11px; text-transform:uppercase; letter-spacing:.08em; font-weight:800; }
.community-government-links strong { display:flex; gap:12px; justify-content:space-between; align-items:center; font-size:19px; }
.community-government-copy { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.community-government-copy article { padding:26px; border:1px solid #d5dedd; background:#fff; border-top:3px solid #147770; }
.community-government-copy h3 { margin:8px 0 16px; color:#0b344b; font:normal 28px/1.18 Georgia,serif; }
.community-government-copy p:not(.section-kicker) { color:#516772; font-size:15px; line-height:1.65; }
.community-government-copy .glance-source { display:block; margin-top:15px; font-size:13px; }
.community-election-note { padding:20px 24px; margin-bottom:24px; border-left:4px solid #d4aa52; background:#eef4f3; color:#173747; }
.community-election-note p { margin:10px 0; max-width:95ch; font-size:14px; line-height:1.6; }
.community-election-note a { color:#14655f; font-weight:700; }
.community-design .election-office-filter { margin-top:0; }
.community-design .precinct-race-category { margin-bottom:18px; }
.community-design .precinct-race-card h4 { overflow-wrap:anywhere; }
.community-design .precinct-race-card strong { font-size:14px; }
.community-design .precinct-race-status { white-space:normal; }
.community-design .community-past { margin-top:24px; border:1px solid #d5dedd; background:#fff; }
.community-design .community-past > summary { padding:20px 24px; }
.community-design .community-past-body { padding:0 24px 24px; }
.community-design .community-past-body > p { color:#526974; font-size:14px; line-height:1.6; }
.community-design #precincts .subarea-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.community-design .related-layer-map { min-height:140px; background:#eef3f4; }
.community-design .related-layer-scope { line-height:1.55; }
.community-design .related-layer-map img,
.community-design #precincts .subarea-media img { filter:var(--area-outline-mark-shadow); }
.community-design .related-layer-actions a[target="_blank"]::after { content:none; }
/* Keep small boundary logos legible: SVG shadows shrink with the artwork,
   so transparent icons also receive a shadow measured in display pixels. */
.community-design {
 --community-boundary-shadow:drop-shadow(0 3px 1px rgba(0,20,34,.48)) drop-shadow(0 6px 4px rgba(0,20,34,.3));
 --community-boundary-shadow-small:drop-shadow(0 2px 1px rgba(0,12,22,.72)) drop-shadow(0 4px 2px rgba(0,12,22,.4));
}
.community-design [data-boundary-map] { filter:var(--community-boundary-shadow); }
.community-design .area-layer-map img,
.community-design .area-outline-mark,
.community-design .area-layer-map.is-state::before { filter:var(--community-boundary-shadow-small); }
.community-design #precincts .subarea-media { background:#eef3f4; }
.community-design [hidden] { display:none!important; }
@media(max-width:850px) {
 .community-design .glance-grid,.community-government-copy { grid-template-columns:1fr; }
 .community-government-links { grid-template-columns:1fr; }
 .community-government-links a { padding:18px 20px; }
}
@media(max-width:600px) {
 .community-design .area-section { padding-top:30px; padding-bottom:24px; }
 .community-design #precincts .subarea-grid { grid-template-columns:1fr; }
 .community-government-copy article { padding:20px; }
 .community-election-note { padding:18px; }
 .community-design .community-past-body { padding:0 14px 18px; }
}
