:root{font-family:system-ui,-apple-system,sans-serif;color:#182f3d;background:#f4f7f8;color-scheme:light}*{box-sizing:border-box}body{margin:0}header{background:#123d50;color:white;padding:18px max(20px,calc((100% - 1080px)/2));display:flex;justify-content:space-between;gap:20px;font-size:14px}header a{color:white}main{max-width:1120px;margin:auto;padding:36px 20px}h1{font-size:clamp(32px,6vw,52px);line-height:1.1;margin:12px 0}h2{font-size:23px}.eyebrow{font-size:12px;letter-spacing:.13em;font-weight:750;color:#286957}.intro{font-size:19px;max-width:680px;line-height:1.6}nav{display:flex;gap:10px;margin:28px 0}button,input,select{font:inherit;border:1px solid #a3b9c1;border-radius:9px;padding:12px;background:white;color:inherit;min-height:46px}button{cursor:pointer;font-weight:650}button:hover{background:#e2edf0}button[aria-pressed=true],#locate{background:#125f63;color:white;border-color:#125f63}button:disabled{opacity:.6;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #bd6b13;outline-offset:3px}.controls{display:grid;grid-template-columns:1fr 1.5fr 1.3fr;gap:14px;align-items:end}label{display:flex;flex-direction:column;gap:7px;font-size:14px;font-weight:650}#locate{grid-column:1/-1;justify-self:start}.check{flex-direction:row;align-items:center;margin:15px 0}.check input{min-height:20px;width:20px;height:20px}.notice{border-left:4px solid #b98637;background:#fff5e3;padding:14px;line-height:1.55}.muted,.meta{color:#506674;font-size:14px;line-height:1.55}.results{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));gap:14px;margin:18px 0 30px}.card{background:white;border:1px solid #d4e0e4;border-radius:13px;padding:19px}.card h3{font-size:18px;margin:0 0 12px;overflow-wrap:anywhere}.card p{margin:8px 0;line-height:1.5}.card a{display:inline-block;margin:8px 16px 0 0}a{color:#15556b;text-underline-offset:3px}.sources{border-top:1px solid #bbcdd4;margin-top:40px;padding-top:15px;font-size:14px;line-height:1.6}#water-query{max-width:500px}.distance{font-weight:750;color:#165e54}[hidden]{display:none!important}@media(max-width:650px){header{flex-direction:column;gap:8px}.controls{grid-template-columns:1fr}nav button{flex:1;font-size:14px}main{padding-top:24px}}
