 :root{--map-ink:#16362f;--map-accent:#e46f4c;--map-cream:#fbf8f2;--map-sage:#e4eee9;--map-line:#dce5e0;--map-muted:#6c7d77;--map-paper:#fff}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--map-ink);background:var(--map-cream);line-height:1.55}
a{color:inherit}
.map-wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.map-topbar{background:var(--map-ink);color:#fff;font-size:14px}
.map-topbar .map-wrap{display:flex;justify-content:space-between;gap:18px;padding-top:9px;padding-bottom:9px}
.map-header{background:rgba(251,248,242,.96);border-bottom:1px solid rgba(22,54,47,.08)}
.map-nav{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.map-brand{display:flex;align-items:center;gap:11px;text-decoration:none;font-weight:900}
.map-brand img{width:92px;height:auto;display:block}
.map-brand span{display:flex;flex-direction:column;line-height:1.12}
.map-brand small{font-size:11px;color:var(--map-muted);font-weight:700}
.map-navlinks{display:flex;align-items:center;gap:18px;font-size:14px;font-weight:800}
.map-navlinks a{text-decoration:none}
.map-navlinks a:hover{color:var(--map-accent)}
.map-hero{padding:54px 0 34px}
.map-eyebrow{display:inline-block;background:var(--map-sage);border:1px solid #cfe0d8;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:850}
.map-hero h1{font-size:clamp(40px,6vw,68px);line-height:1;letter-spacing:-.045em;margin:18px 0 16px;max-width:930px}
.map-hero h1 em{font-style:normal;color:var(--map-accent)}.map-lead{font-size:19px;color:#274b43;max-width:850px;margin:0}
.map-proof{margin-top:22px;background:#fff;border:1px solid var(--map-line);border-left:5px solid var(--map-accent);border-radius:16px;padding:16px 18px;max-width:900px}
.map-shell{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start;padding-bottom:30px}
.map-panel{background:#fff;border:1px solid var(--map-line);border-radius:22px;box-shadow:0 14px 40px rgba(28,63,55,.08);overflow:hidden}
.map-toolbar{padding:16px;border-bottom:1px solid var(--map-line);display:grid;gap:12px}
.map-filterrow,.map-jumps{display:flex;gap:8px;flex-wrap:wrap}
.map-filter,.map-jump{border:1px solid var(--map-line);background:#fff;color:var(--map-ink);border-radius:999px;padding:9px 12px;font:inherit;font-size:13px;font-weight:800;cursor:pointer}
.map-filter[aria-pressed="true"]{background:var(--map-ink);border-color:var(--map-ink);color:#fff}
.map-jump{background:var(--map-sage)}
.map-status{font-size:13px;color:var(--map-muted);min-height:20px}
#spair-map{height:610px;background:#e7eeea}
.map-side{display:grid;gap:14px}
.map-card{background:#fff;border:1px solid var(--map-line);border-radius:20px;padding:20px}
.map-card h2,.map-card h3{margin:0 0 10px}
.map-card h2{font-size:24px}
.map-card h3{font-size:19px}
.map-card p{margin:0 0 12px;color:#435f58}
.map-facts{display:grid;gap:8px;margin:14px 0}
.map-fact{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid #edf1ef;font-size:14px}
.map-fact span{color:var(--map-muted)}
.map-fact b{text-align:right}
.map-signal{background:var(--map-sage);border:1px solid #cfe0d8;border-radius:14px;padding:13px;margin:14px 0}
.map-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:12px;padding:12px 16px;background:var(--map-accent);color:#fff!important;text-decoration:none;font-weight:850;border:0}
.map-btn.secondary{background:var(--map-ink)}
.map-btnrow{display:flex;gap:8px;flex-wrap:wrap}
.map-legend{display:grid;gap:8px;font-size:13px}
.map-legend div{display:flex;align-items:center;gap:9px}
.map-dot{width:12px;height:12px;border-radius:50%;display:inline-block;border:2px solid rgba(255,255,255,.8);box-shadow:0 0 0 1px rgba(22,54,47,.15)}.map-dot.large{background:#e46f4c}.map-dot.very{background:#bb4b2d}.map-dot.nonres{background:#16362f}.map-dot.other{background:#8ca39b}
.map-method{padding:56px 0;background:#fff}
.map-method-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.map-method-card{border:1px solid var(--map-line);border-radius:20px;padding:22px}
.map-method-card h2,.map-method-card h3{margin-top:0}
.map-method-card li{margin:8px 0}
.map-cta{margin:34px 0 56px;background:linear-gradient(135deg,var(--map-ink),#244f44);color:#fff;border-radius:26px;padding:34px;display:flex;justify-content:space-between;gap:24px;align-items:center}
.map-cta h2{margin:0 0 8px}
.map-cta p{margin:0;color:#cedbd7;max-width:720px}
.map-footer{padding:34px 0;background:#102a24;color:#c9d6d2}
.map-footer .map-wrap{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}
.map-source{font-size:12px;color:var(--map-muted);margin-top:10px}
.leaflet-popup-content{font-family:Inter,ui-sans-serif,system-ui,sans-serif}
.leaflet-control-attribution{font-size:10px}
@media(max-width:900px){.map-shell{grid-template-columns:1fr}.map-side{grid-template-columns:1fr 1fr}#spair-map{height:560px}.map-navlinks{display:none}}
@media(max-width:640px){.map-wrap{padding:0 16px}.map-topbar .map-wrap span:last-child{display:none}.map-nav{min-height:66px}.map-brand img{width:78px}.map-hero{padding-top:38px}.map-hero h1{font-size:42px}.map-lead{font-size:17px}.map-side,.map-method-grid{grid-template-columns:1fr}.map-cta{display:block;padding:26px 22px}.map-cta .map-btn{margin-top:16px;width:100%}#spair-map{height:520px}.map-filter,.map-jump{font-size:12px;padding:8px 10px}}
