.map-page{margin:0;background:#f3f6f2;color:#11201d;font:16px/1.55 Aptos,"Segoe UI",Helvetica,Arial,sans-serif}.map-page *{box-sizing:border-box}.map-page [hidden]{display:none!important}.map-page a{color:#0e604d}.map-page button,.map-page input,.map-page select{font:inherit}.map-page button,.map-page select,.map-page input{min-height:44px;border:1px solid #a8bbb1;border-radius:8px;background:white;color:#112d25;padding:9px 12px}.map-page button{cursor:pointer}.map-page button:hover{background:#e8eee9}.map-page :focus-visible{outline:3px solid #0e604d;outline-offset:3px}.map-page .site-header{max-width:1240px;background:transparent;flex-wrap:wrap}.map-page .site-nav{flex-wrap:wrap;gap:8px 20px}.map-page .site-footer{max-width:1160px}.map-main{max-width:1240px;margin:auto;padding:24px 40px 48px}.map-intro h1{font:400 clamp(32px,4vw,48px)/1.15 "Iowan Old Style",Palatino,Georgia,serif;letter-spacing:-1px;margin:8px 0 16px}.map-intro p{margin:8px 0}.eyebrow{font-size:12px;letter-spacing:1.4px;font-weight:700;color:#53645e}.map-disclaimer{font-size:14px;border-left:3px solid #0e604d;padding:12px 16px;background:#e8eee9;border-radius:0 8px 8px 0}.muted{color:#53645e;font-size:13px}.map-toolbar{display:flex;flex-wrap:wrap;gap:18px;align-items:end}.map-toolbar label{display:grid;gap:6px;font-weight:600;font-size:14px}.map-toolbar select{width:240px;max-width:100%}.search-control{flex:1;min-width:240px}.map-toolbar fieldset{border:0;padding:0;margin:0}.map-toolbar legend{font-size:14px;font-weight:600;margin-bottom:6px}.service-controls{width:100%}.chip-group{display:flex;flex-wrap:wrap;gap:8px}.chip-group button{font-size:13px}.chip-group button[aria-pressed=true]{background:#d8ece4;border-color:#0e604d;color:#112d25;box-shadow:inset 0 0 0 1px #0e604d}.map-summary{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:16px}.map-layout{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(300px,1fr);gap:20px;align-items:start}.map-section{position:sticky;top:16px}.map-section,#practice-map{border-radius:12px;overflow:hidden}.map-section{border:1px solid #cbd6ce;background:#e8eee9}#practice-map{height:600px;min-height:350px}#practice-map>p{padding:24px;color:#53645e}.clinic-list-panel,.clinic-detail{background:white;border:1px solid #cbd6ce;border-radius:12px;padding:20px;max-height:640px;overflow:auto}.clinic-list-panel h2{font-size:18px;margin:0 0 16px}#clinic-list{list-style:none;padding:0;margin:0}#clinic-list li+li{margin-top:12px}.clinic-card{width:100%;display:block;text-align:left!important;padding:16px!important}.clinic-card strong{font-size:18px;display:block}.clinic-card span{display:block;margin-top:6px;font-size:14px}.clinic-card .tier-badge,.tier-badge{display:inline-block;color:#112d25;font-size:12px;background:#d8ece4;border-radius:5px;padding:4px 8px}.clinic-card.selected,.clinic-card.highlighted{outline:2px solid #0e604d}.clinic-detail h2{font:400 28px/1.2 Georgia,serif;margin:20px 0 12px}.clinic-detail p{overflow-wrap:anywhere}.clinic-detail a{display:inline-flex;align-items:center;min-height:44px}.detail-links{display:flex;flex-wrap:wrap;gap:6px 18px}.verified-badge{font-weight:700}.map-legend{display:flex;flex-wrap:wrap;gap:18px;font-size:13px;margin:20px 0}.map-legend span{display:flex;align-items:center;gap:8px}.clinic-pin{display:inline-flex;align-items:center;justify-content:center;background:#0e604d;color:white;border:2px solid white;box-shadow:0 1px 5px #11201d55;border-radius:50%;width:42px;height:42px;font:bold 23px Arial,sans-serif;flex:none}.clinic-pin.coming-soon{width:24px;height:24px;background:white;border:3px solid #53645e;color:#11201d}.clinic-pin.highlighted{outline:4px solid #11201d;outline-offset:3px}.map-legend .clinic-pin{width:24px;height:24px;font-size:15px}.map-legend .coming-soon{width:16px;height:16px}.map-legend i{font-style:normal}#filter-sheet{position:static;display:block;width:100%;max-width:none;max-height:none;margin:24px 0 0;padding:20px;border:1px solid #cbd6ce;border-radius:12px;background:white;color:inherit}#filter-sheet::backdrop{background:#11201d77}.filter-heading,.mobile-controls{display:none}.map-layout.maps-failed{grid-template-columns:1fr}.maps-failed .clinic-list-panel{max-height:none}.plain-list{list-style:none;padding:0}.plain-list li{margin:16px 0;padding:20px;background:white;border:1px solid #cbd6ce;border-radius:12px}.plain-list h2{font-size:20px}.map-page .site-nav a{min-height:44px}
@media(min-width:901px){.map-layout.has-selection .clinic-list-panel{display:none}.clinic-detail{grid-column:2;grid-row:1}.maps-failed.has-selection .clinic-detail{grid-column:1}}
@media(max-width:900px){.map-main{padding:16px 20px 32px}.map-page .site-header{padding:16px 20px}.map-layout{display:block}.map-section{position:static}#practice-map{height:55vh}.mobile-controls{display:flex;justify-content:space-between;gap:10px;margin:20px 0}.mobile-controls button[aria-pressed=true]{background:#112d25;color:white}#filter-sheet:not([open]){display:none}#filter-sheet[open]{position:fixed;inset:auto 0 0;margin:0;max-height:88vh;border-radius:16px 16px 0 0;overflow:auto;width:100%}.filter-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.filter-heading h2{font-size:20px}.map-toolbar{display:block}.map-toolbar label,.map-toolbar fieldset{margin:14px 0}.map-toolbar input,.map-toolbar select{width:100%}.search-control{min-width:0}.map-layout[data-view=map]:not(.maps-failed) .clinic-list-panel{display:none}.map-layout[data-view=list] .map-section{display:none}.clinic-list-panel{max-height:none}.clinic-detail{position:fixed;z-index:10;bottom:0;left:0;right:0;max-height:75vh;box-shadow:0 -10px 40px #11201d33;border-radius:16px 16px 0 0;padding-bottom:max(24px,env(safe-area-inset-bottom))}.clinic-detail::before{content:"";display:block;width:40px;height:4px;background:#a8bbb1;border-radius:4px;margin:0 auto 12px}.map-summary{font-size:14px}.map-summary a{min-height:44px;display:flex;align-items:center}.map-legend{gap:12px}}
@media(prefers-reduced-motion:reduce){.map-page *{scroll-behavior:auto!important;transition:none!important}}
.near-me-controls{width:100%}.near-me-row{display:flex;align-items:end;flex-wrap:wrap;gap:10px}.near-me-row input{max-width:150px}#near-status{margin:8px 0;font-size:14px}.near-me-controls small{color:#53645e;font-size:13px}.coverage-swatch{width:26px;height:22px;border:1px solid #53645e;border-radius:4px}.in-person-coverage{background:rgba(14,96,77,.5)}.telehealth-coverage{background:rgba(14,96,77,.15);border-style:dashed}

/* Reserve asynchronous content and keep long public labels inside narrow screens. */
.map-main{overflow-wrap:anywhere}#service-chips{height:96px;overflow:auto;align-content:flex-start}#clinic-status,#map-status,#near-status{min-height:25px}.clinic-pin-target{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px}.map-page .site-footer a{display:inline-flex;align-items:center;min-height:44px}.map-sheet-open,.map-sheet-open body{overflow:hidden;overscroll-behavior:none}.clinic-detail,#filter-sheet[open]{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.map-page .site-nav a{display:inline-flex;align-items:center}.map-page button:disabled{opacity:1;color:#53645e;background:#e8eee9;cursor:wait}
@media(max-width:900px){.clinic-detail{max-height:75dvh}#filter-sheet[open]{max-height:88dvh;padding-bottom:max(20px,env(safe-area-inset-bottom))}.map-page .signature-wordmark{max-width:100%;height:auto}.map-summary>*{min-width:0}.map-toolbar input,.map-toolbar select{min-width:0}.map-page .site-footer{padding:20px}.map-page .site-footer nav{flex-wrap:wrap}}
.map-sheet-open body{position:fixed;top:var(--map-locked-top,0);width:100%}

/* Locally hosted Leaflet retains accessible controls and pin targets. */
.map-page .leaflet-control-zoom a{width:44px;height:44px;line-height:44px;color:#112d25;background:#fff}
.map-page .leaflet-control-attribution{color:#11201d;background:#fff;font-size:12px}
.map-page .leaflet-control-attribution a{color:#0e604d}
.map-page .leaflet-container{font-family:inherit;background:#e8eee9;isolation:isolate;z-index:0}
.map-page .clinic-pin-wrapper{background:transparent;border:0}
.map-page .leaflet-control a:focus-visible,.map-page .clinic-pin-wrapper:focus-visible{outline:3px solid #0e604d;outline-offset:3px}

.map-page .clinic-pin.direct-primary-care{background:#245a9a;color:#fff;border:2px solid #fff;width:42px;height:42px}

.map-page .clinic-pin.coming-soon{width:42px;height:42px}.clinic-pin svg{display:block;flex:none}
.map-page .clinic-pin-target{width:56px;height:56px}
.map-page .clinic-pin,.map-page .clinic-pin.direct-primary-care,.map-page .clinic-pin.coming-soon{width:52px;height:52px;border-width:3px;box-shadow:0 0 0 1px #11201d66,0 3px 8px #11201d66}
