:root{font-family:Arial,Helvetica,sans-serif;color:#152b3d;background:#f5f7f9;font-size:16px;line-height:1.5;--navy:#13263a;--yellow:#f6c445;--muted:#586776;--line:#d9e0e6}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}a{color:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}:focus-visible{outline:3px solid #257ad3;outline-offset:4px}.skip{position:absolute;left:16px;top:-60px;background:white;padding:12px;z-index:9}.skip:focus{top:10px}header{max-width:1240px;margin:auto;display:flex;align-items:center;gap:32px;padding:24px 36px}header>a:last-child{font-size:.9rem;text-decoration:none}.brand{font-size:1.5rem;font-weight:800;display:flex;align-items:center;gap:10px;text-decoration:none;letter-spacing:-.7px}.mark{display:grid;place-items:center;background:var(--navy);color:var(--yellow);width:36px;height:36px;border-radius:9px;font-size:1.4rem}.beta{font-size:.65rem;letter-spacing:1.4px;border:1px solid #cad3db;border-radius:4px;padding:3px 5px;margin-left:3px}.region{margin-left:auto;font-size:.75rem;letter-spacing:1.5px;color:var(--muted)}main{max-width:1240px;margin:auto;padding:8px 36px 0}.search-panel{background:var(--navy);color:white;padding:40px 48px 26px;border-radius:18px;border-top:5px solid var(--yellow)}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:1.8px}.search-panel .eyebrow{color:var(--yellow)}h1{font-size:clamp(2.2rem,4.2vw,3.6rem);line-height:1.09;letter-spacing:-2px;margin:18px 0}h1 span{color:#b9c7d4}.intro{color:#cad5df;margin:18px 0 28px}form>label{display:block;font-size:.9rem;font-weight:700;margin-bottom:9px}.search-row{display:flex;gap:10px}.search-row input{min-width:0;flex:1;background:#fff;border:2px solid transparent;border-radius:8px;padding:16px 18px;color:var(--navy)}.primary{background:var(--yellow);color:var(--navy);border:0;font-weight:700;border-radius:8px;padding:16px 24px;display:flex;justify-content:center;align-items:center;gap:24px}.primary:hover{background:#ffd669}.location-row{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin:12px 0 24px}.text-button{border:0;background:none;color:inherit;padding:6px 0;font-weight:600;text-decoration:underline;text-underline-offset:4px;font-size:.9rem}.location-row span{font-size:.8rem;color:#b9c7d4}.filters{display:flex;gap:22px;align-items:end;border-top:1px solid #3c4e60;padding-top:20px}.filters label{display:flex;flex-direction:column;gap:6px;font-size:.85rem;flex:1}.filters select{border:1px solid #647585;border-radius:6px;background:#1f354a;color:white;min-height:44px;padding:8px 12px;max-width:100%}.filters label.check{display:flex;flex-direction:row;align-items:center;gap:9px;min-height:44px;flex:1.2}.check input{width:19px;height:19px;accent-color:var(--yellow)}#status{margin:12px 0 0;font-size:.9rem;color:#ffe29c}#status:empty{display:none}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:32px;margin-top:40px}.results-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}h2{font-size:1.65rem;line-height:1.2;letter-spacing:-.65px;margin:8px 0 14px}.coverage-note{color:var(--muted);font-size:.9rem;margin:0 0 22px}.card{background:white;border:1px solid var(--line);border-radius:12px;padding:24px;margin-bottom:15px}.card-top{display:flex;justify-content:space-between;gap:14px;align-items:start}.card h3{font-size:1.2rem;line-height:1.3;margin:0 0 4px}.city{font-size:.9rem;color:var(--muted);margin:0}.hours{font-size:.75rem;background:#eaf4ef;color:#2a6649;white-space:nowrap;padding:5px 8px;border-radius:5px}.tags{display:flex;gap:8px;flex-wrap:wrap;margin:17px 0}.tag{font-size:.8rem;background:#f0f3f6;padding:4px 8px;border-radius:4px}.card p.description{font-size:.9rem;color:var(--muted);margin:10px 0 18px}.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.call{background:var(--navy);color:white;border-radius:7px;padding:11px 16px;text-decoration:none;font-weight:700;font-size:.9rem}.outline{display:inline-block;border:1px solid #bcc8d2;border-radius:7px;padding:10px 14px;text-decoration:none;font-size:.9rem;font-weight:600;background:#fff}.source{margin-left:auto;font-size:.8rem;color:var(--muted)}.call-guide{background:#e8eef3;border-radius:12px;padding:27px 25px}.call-guide .eyebrow{color:#496276}.call-guide h2{margin-top:15px}ol{padding:0;list-style:none;counter-reset:steps;margin:22px 0 0}li{position:relative;padding:0 0 23px 34px;counter-increment:steps}li:last-child{padding-bottom:0}li:before{content:counter(steps);position:absolute;left:0;top:0;border-bottom:2px solid #adbbc6;font-weight:700;color:#5d7588;width:19px}li strong{display:block;font-size:.9rem}li span{display:block;font-size:.85rem;color:var(--muted);margin-top:4px}.ad-space{margin-top:24px;border:1px dashed #b6c1ca;border-radius:10px;min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#647483;background:#f0f3f5}.ad-space>span{font-size:.7rem;letter-spacing:2px}.ad-space p{margin:24px 0 3px;font-size:.9rem}.ad-space small{font-size:.75rem}.more-results,.empty{background:white;border:1px solid var(--line);border-radius:12px;padding:24px;margin:18px 0}.more-results h3,.empty h3{margin:0 0 8px}.more-results p,.empty p{color:var(--muted);font-size:.9rem}.more-results .small{font-size:.75rem;margin-bottom:0}.coverage{margin-top:45px;border-top:1px solid var(--line);padding:42px 0;display:grid;grid-template-columns:1fr 1fr;gap:70px}.coverage p{font-size:.9rem;color:var(--muted);max-width:480px}.city-groups{display:grid;grid-template-columns:1fr 1fr;gap:25px}.city-groups h3{font-size:.9rem;margin:0 0 14px}.city-groups button{display:block;border:0;background:none;padding:7px 0;font-size:.9rem;color:#314f67;text-align:left}.city-groups button:hover{text-decoration:underline}footer{border-top:1px solid var(--line);max-width:1168px;margin:0 auto;padding:25px 0 35px;display:flex;align-items:center;flex-wrap:wrap;gap:20px}footer .brand{font-size:1.15rem}footer .mark{width:28px;height:28px;font-size:1rem}footer>p{font-size:.75rem;color:var(--muted);margin-left:auto}details{width:100%;font-size:.85rem;color:var(--muted)}summary{cursor:pointer;width:fit-content}details p{max-width:850px} [hidden]{display:none!important}@media(max-width:850px){.content-grid{grid-template-columns:1fr}aside{display:grid;grid-template-columns:1fr 1fr;gap:20px}.ad-space{margin:0}.coverage{gap:30px}.search-panel{padding:30px}.filters{flex-wrap:wrap}.filters label.check{flex-basis:100%}footer{margin:0 36px}}@media(max-width:540px){header{padding:19px 20px;gap:12px}.region{display:none}header>a:last-child{margin-left:auto}main{padding:0 16px}.search-panel{padding:26px 20px;border-radius:12px}h1{letter-spacing:-1.3px}.search-row{flex-direction:column}.primary{width:100%;padding:14px}.location-row{gap:3px}.filters{gap:14px}.filters label{min-width:0}.content-grid{margin-top:28px}.results-heading{align-items:start}h2{font-size:1.4rem}.card{padding:20px}.card-top{flex-direction:column;gap:10px}.source{margin-left:0}.actions{gap:10px}.call{flex:1;text-align:center}.coverage{grid-template-columns:1fr;gap:22px}aside{grid-template-columns:1fr}.ad-space{min-height:120px}.call-guide h2 br{display:none}footer{margin:0 20px}footer>p{margin:0}.results-heading .text-button{white-space:nowrap}}
.filters{flex-wrap:wrap;gap:15px}.filters>label{min-width:145px}.filter-checks{display:flex;gap:22px;flex-wrap:wrap;margin-top:18px}.filter-checks .check{display:flex;gap:8px;align-items:center;font-size:.85rem}.search-help{font-size:.78rem;color:#c2ced8;margin-bottom:0}#place-choice{margin-top:18px}#place-choice label{display:block;font-weight:700;margin-bottom:6px}#place-select{padding:10px;width:100%;border-radius:6px;background:white;color:var(--navy)}#result-count{color:var(--muted);font-size:.85rem}.pagination{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:20px 0}.pagination span{font-size:.85rem}.card .metadata{font-size:.78rem;color:#586776;margin:14px 0 0}.card .distance{font-size:.85rem;margin:8px 0;color:#35566e}.card .address{font-size:.85rem;margin:8px 0;color:var(--muted)}.missing-phone{font-size:.85rem;color:var(--muted)}.neutral-hours{background:#f1f3f5;color:#596776}.attribution{width:100%;line-height:1.6!important;margin:0!important}.source{margin-left:0}.actions .call{white-space:normal;overflow-wrap:anywhere}.card h3{overflow-wrap:anywhere}#results-title{overflow-wrap:anywhere}@media(max-width:540px){.filters>label{min-width:calc(50% - 15px)}.filter-checks{gap:12px;flex-direction:column}.card-top{flex-direction:column}.source{width:auto}.pagination .outline{padding:10px}.pagination{gap:8px}}
.filters .filter-field{display:flex;flex-direction:column;gap:6px;font-size:.875rem;flex:1;min-width:0}.dropdown{position:relative;min-width:0}.dropdown select[hidden]{display:none}.dropdown-trigger{width:100%;display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;border:1px solid #647585;border-radius:6px;background:#1f354a;color:white;min-height:44px;padding:8px 12px;font-size:.875rem}.chevron{flex:none;font-size:1.2rem;pointer-events:none}.dropdown-trigger[aria-expanded=true]{border-color:var(--yellow)}.dropdown-menu{position:absolute;top:calc(100% + 5px);left:0;min-width:100%;width:max-content;max-width:min(320px,80vw);max-height:280px;overflow-y:auto;background:#fff;color:var(--navy);border:1px solid var(--line);border-radius:7px;box-shadow:0 8px 24px #0003;z-index:20;padding:5px}.dropdown-menu[hidden]{display:none}.dropdown-menu button{display:block;width:100%;border:0;border-radius:4px;background:white;color:var(--navy);text-align:left;padding:10px 12px;min-height:44px;font-size:.875rem}.dropdown-menu button:hover,.dropdown-menu button:focus-visible{background:#e8eff5;outline-offset:-3px}.dropdown-menu button[aria-selected=true]{background:#e8eff5;font-weight:bold}@media(max-width:650px){.filters .filter-field{flex:1 1 40%}}
/* Location picker */
.location-row{flex-wrap:wrap;gap:12px}#map-dialog{width:min(800px,calc(100% - 24px));max-height:92dvh;overflow:auto;border:0;border-radius:16px;padding:22px;color:#13263a;background:#fff}#map-dialog::backdrop{background:rgba(10,25,40,.65)}.map-heading,.map-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.map-heading h2{margin:0}#location-map{height: min(52dvh,440px);min-height:240px;border-radius:8px;background:#e4e9ee;margin:16px 0}#map-dialog p{line-height:1.5}#map-dialog .primary{color:#13263a}#map-dialog .small{font-size:12px}#map-status{min-height:24px}.leaflet-control-attribution a{color:#075a85}button:disabled{cursor:wait;opacity:.65}@media(max-width:480px){#map-dialog{padding:14px}.map-heading h2{font-size:22px}.map-actions{flex-wrap:wrap}.map-actions button{flex:1}}

/* Theme preference */
:root{color-scheme:light}
.theme-toggle{border:1px solid var(--line);border-radius:8px;background:transparent;color:inherit;padding:10px 12px;font-size:.875rem;min-height:44px;white-space:nowrap}
.theme-toggle:hover{border-color:var(--muted)}
:root[data-theme="dark"]{color-scheme:dark;background:#0c1621;color:#e7eef5;--muted:#b3c1ce;--line:#3a4c5d}
[data-theme="dark"] .card,[data-theme="dark"] .more-results,[data-theme="dark"] .empty,[data-theme="dark"] .outline,[data-theme="dark"] .skip,[data-theme="dark"] #map-dialog{background:#182735;color:#e7eef5}
[data-theme="dark"] .call-guide,[data-theme="dark"] .ad-space{background:#162331;color:#b3c1ce}
[data-theme="dark"] .call-guide .eyebrow,[data-theme="dark"] li:before,[data-theme="dark"] .city-groups button,[data-theme="dark"] .card .distance{color:#b8d5ee}
[data-theme="dark"] .card .metadata{color:var(--muted)}
[data-theme="dark"] .tag,[data-theme="dark"] .neutral-hours{background:#2c3d4e;color:#d3dfe9}
[data-theme="dark"] .hours:not(.neutral-hours){background:#193e32;color:#b3e4c8}
[data-theme="dark"] .call{background:#294760;color:#fff}
[data-theme="dark"] .search-row input,[data-theme="dark"] #place-select,[data-theme="dark"] .dropdown-menu,[data-theme="dark"] .dropdown-menu button{background:#1b2c3c;color:#e7eef5}
[data-theme="dark"] .search-row input{border-color:#647585}
[data-theme="dark"] input::placeholder{color:#b3c1ce;opacity:1}
[data-theme="dark"] .dropdown-menu button:hover,[data-theme="dark"] .dropdown-menu button:focus-visible,[data-theme="dark"] .dropdown-menu button[aria-selected=true]{background:#344e65}
[data-theme="dark"] :focus-visible{outline-color:#80bcff}
[data-theme="dark"] .leaflet-container{color:#13263a;color-scheme:light}
[data-theme="dark"] .leaflet-popup-content-wrapper,[data-theme="dark"] .leaflet-popup-tip{background:#182735;color:#e7eef5}
@media(max-width:650px){header{flex-wrap:wrap;gap:12px}header .region{display:none}header>a[href="#coverage"]{margin-left:auto}.theme-toggle{font-size:.8125rem;padding:8px}header .brand{font-size:1.3rem}}
