.area-section{background:#f8faf7}
.area-layout{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(44px,6vw,105px)}
.area-header{align-self:center}
.area-intro-note{margin-top:30px;color:var(--sage-deep);font-size:15px;font-weight:500}
.area-map-card{background:#fff;border:1px solid var(--border);border-radius:10px;padding:27px 29px 24px;box-shadow:0 15px 48px rgba(64,84,57,.055)}
.area-map-topline{display:flex;justify-content:space-between;align-items:end;gap:16px}
.area-map-topline .county-label{margin:0 0 5px;font-size:11px}
.area-map-topline h3{font-size:32px;line-height:1.05}
.map-count{white-space:nowrap;font-size:12px;color:var(--sage-deep);font-weight:500}
.area-map-canvas{position:relative;margin-top:21px;border-radius:8px;overflow:hidden;background:radial-gradient(circle at 50% 45%,#f9fcf8 0%,#eef5eb 100%);border:1px solid #dfe9d9}
.area-map-canvas::before{content:"";position:absolute;inset:0;background-image:radial-gradient(#8ba783 1px,transparent 1px);background-size:25px 25px;opacity:.12;pointer-events:none}
.area-map{display:block;width:100%;max-height:470px;touch-action:manipulation}
.map-county{cursor:pointer;outline:none;transform-box:fill-box;transform-origin:center;transition:transform .2s ease,filter .2s ease}
.map-county path{fill:#a8c49a;stroke:#fff;stroke-width:3;stroke-linejoin:round;transition:fill .2s,stroke .2s,stroke-width .2s}
.map-county text{font-family:var(--font-sans);font-weight:500;font-size:13px;fill:#283d28;text-anchor:middle;dominant-baseline:middle;pointer-events:none;transition:fill .2s}
.map-county.is-hovered,.map-county.is-selected,.map-county:focus-visible{transform:translateY(-4px);filter:drop-shadow(0 6px 5px rgba(35,66,34,.18))}
.map-county.is-hovered path,.map-county.is-selected path,.map-county:focus-visible path{fill:#52764c;stroke:#f8fff5;stroke-width:3.5}
.map-county.is-hovered text,.map-county.is-selected text,.map-county:focus-visible text{fill:#fff}
.map-feedback{display:flex;align-items:center;gap:9px;min-height:44px;padding:12px 0 9px;border-bottom:1px solid var(--border);color:var(--charcoal);font-size:14px;font-weight:500}
.map-feedback-mark{height:8px;width:8px;flex:none;background:var(--sage);border-radius:50%}
.map-county-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;padding:14px 0 4px}
.map-county-choice{border:1px solid #dbe6d7;border-radius:4px;background:#f8fbf7;color:#465c42;min-height:32px;padding:4px 5px;font-size:11px;line-height:1.2;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.map-county-choice:hover,.map-county-choice.is-hovered,.map-county-choice.is-selected,.map-county-choice:focus-visible{background:#52764c;border-color:#52764c;color:#fff}
.area-map-card .area-note{margin:17px 0 0;font-size:13px;line-height:1.5}
.map-source{margin:8px 0 0;font-size:10px;color:#84927f}
@media(max-width:1100px){.area-layout{gap:44px}.area-map-card{padding:23px}.map-county-list{grid-template-columns:repeat(5,minmax(0,1fr))}.map-county-choice{font-size:10px}}
@media(max-width:900px){.area-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:28px}.area-map-card{padding:20px}.map-county-choice{font-size:10px}}
@media(max-width:680px){.area-layout{grid-template-columns:1fr;gap:26px}.area-header{max-width:650px}.area-map-card{max-width:670px;width:100%;justify-self:center;padding:20px 17px}.area-map-topline h3{font-size:29px}.map-count{font-size:11px}.area-map{max-height:none}.map-county text{font-size:14px}.map-county-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.map-county-choice{font-size:10px;min-height:30px;padding:3px}.area-intro-note{margin-top:20px}}
@media(max-width:420px){.map-county-list{grid-template-columns:repeat(2,minmax(0,1fr))}.map-county-choice{font-size:12px}.map-county text{font-size:16px}}
@media(prefers-reduced-motion:reduce){.map-county,.map-county path,.map-county text,.map-county-choice{transition:none!important}.map-county.is-hovered,.map-county.is-selected,.map-county:focus-visible{transform:none!important}}
