/* Interactive local-service map */
.service-map-section{background:#eef2eb;padding:85px 0 75px}
.service-map-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,410px);gap:60px;align-items:end;margin-bottom:30px}
.service-map-intro h2{font-size:clamp(30px,3.6vw,51px);line-height:1.15;letter-spacing:-.052em;margin:12px 0 14px;max-width:740px}
.service-map-intro p{color:#586b60;max-width:670px;margin:0;line-height:1.75}
.zip-search{padding:23px;background:#fff;border:1px solid #d9e1d8;border-radius:5px;box-shadow:0 14px 38px rgba(20,50,39,.05)}
.zip-search label{font-size:13px;font-weight:800;display:block;margin-bottom:9px}
.zip-search-controls{display:flex;gap:8px}
.zip-search input{min-width:0;flex:1;border:1px solid #adbfb2;padding:12px 13px;height:49px;font-size:16px;border-radius:3px}
.zip-search button{flex:none;background:#193c35;color:white;border:0;border-radius:3px;padding:0 18px;font-weight:700;cursor:pointer}
.zip-search button:hover{background:#29594b}
.zip-search button:disabled{opacity:.6;cursor:wait}
.zip-search small{display:block;color:#687a71;font-size:11px;line-height:1.5;margin-top:10px}
.zip-status{font-size:13px!important;line-height:1.5!important;margin:10px 0 0!important;min-height:0;color:#234e3d!important}
.zip-status:empty{display:none}
.zip-status[data-error="true"]{color:#9a3e35!important}
.map-shell{border:8px solid #fff;box-shadow:0 14px 50px rgba(17,51,37,.1);border-radius:6px;overflow:hidden;background:#d8e7d7;position:relative}
.service-map{width:100%;height:475px;z-index:1;background:#e2ebe2}
.map-error{position:absolute;z-index:2;bottom:12px;left:12px;right:12px;background:#fff9;padding:12px 15px;font-size:14px}
.map-legend{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;color:#54675e;font-size:12px;margin:14px 0 0}
.map-key-dot{display:inline-block;background:#c17250;border:2px solid white;box-shadow:0 0 0 1px #c17250;border-radius:50%;height:11px;width:11px;margin-right:7px}
.map-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:23px}.map-bottom p{max-width:620px;margin:0;color:#51645a}.map-bottom a{white-space:nowrap;margin:0}
.leaflet-container{font-family:'DM Sans',Arial,sans-serif}.leaflet-popup-content{font-size:13px;line-height:1.6}.leaflet-popup-content strong{font-size:15px;color:#193c35}.leaflet-control-attribution{font-size:10px!important}
@media(max-width:800px){.service-map-intro{grid-template-columns:1fr;gap:24px}.service-map-section{padding:58px 0}.service-map{height:390px}.map-bottom{display:block}.map-bottom a{margin-top:18px}}
@media(max-width:480px){.service-map{height:320px}.zip-search-controls{flex-wrap:wrap}.zip-search-controls input{width:100%}.zip-search-controls button{width:100%;min-height:46px}.map-shell{border-width:5px}.service-map-intro h2{font-size:32px}}
