@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Poppins-Regular.ttf)format("truetype")}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/Poppins-Medium.ttf)format("truetype")}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/Poppins-SemiBold.ttf)format("truetype")}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/Poppins-Bold.ttf)format("truetype")}:root{--bg:#eef5fa;--surface:#fff;--navy:#163a6b;--cta:#ff6a00;--soft-orange:#ffe8d4;--blue:#3d7ab5;--well:#d7e6f4;--line:#c5d6e8;--on-accent:#fff;--text:#163a6b;--muted:#3d5a7a;--header-bg:#163a6b;--header-fg:#fff;--accent:#ff6a00;--chip:#ffe8d4;--shadow:0 8px 24px #163a6b1a;--radius:18px;--tap:44px;--font:Poppins, "Segoe UI", sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-category=shelters-housing]{--bg:#fff8f3;--header-bg:#f26b21;--header-fg:#fff;--text:#1a2b4a;--navy:#1a2b4a;--cta:#1e4e8c;--accent:#ffb070;--chip:#ffe0c8;--well:#ffe8d6;--line:#f0c8a8}[data-category=meal-sites]{--bg:#fffbf7;--header-bg:#9a3b00;--header-fg:#fff;--text:#1c2e44;--navy:#1c2e44;--cta:#2e6ba6;--accent:#e86a1f;--chip:#fff1e6;--well:#fff1e6;--line:#f0d0b4}[data-category=mental-health]{--bg:#d6ebfa;--header-bg:#7eb8e8;--header-fg:#163a5f;--text:#163a5f;--navy:#163a5f;--cta:#163a5f;--accent:#ff9a56;--chip:#ffe4d0;--well:#fff;--line:#b5d4ec}[data-category=counseling]{--bg:#fff;--header-bg:#12315a;--header-fg:#fff;--text:#12315a;--navy:#12315a;--cta:#4a90d9;--accent:#e86a2d;--chip:#eef4fb;--well:#f7fafd;--line:#d3e2f2}[data-category=addiction-recovery]{--bg:#f4f8fc;--header-bg:#0d2c54;--header-fg:#fff;--text:#0d2c54;--navy:#0d2c54;--cta:#0d2c54;--accent:#ff7a1a;--chip:#ffe4cc;--well:#e8f0f8;--line:#c5d4e4}[data-category=detox]{--bg:#d9ecf8;--header-bg:#0a2e4a;--header-fg:#fff;--text:#0a2e4a;--navy:#0a2e4a;--cta:#1565a8;--accent:#ff8c42;--chip:#fff;--well:#fff;--line:#b4d4e8}[data-category=housing-navigator]{--bg:#f7fafd;--header-bg:#1a365d;--header-fg:#fff;--text:#1a365d;--navy:#1a365d;--cta:#f15a22;--accent:#f15a22;--chip:#ffe0c2;--well:#b8d9f5;--line:#c8d8ea}[data-category=emergency-alerts]{--bg:#fff5ee;--header-bg:#0b1c33;--header-fg:#fff;--text:#0b1c33;--navy:#0b1c33;--cta:#0b1c33;--accent:#e85d04;--chip:#ffe0cc;--well:#fff;--line:#e8c8b0}[data-category=reentry-programs]{--bg:#fff;--header-bg:#082f4f;--header-fg:#fff;--text:#082f4f;--navy:#082f4f;--cta:#1b4f8a;--accent:#e85d04;--chip:#ffd4b0;--well:#e6f0f8;--line:#ffd4b0}[data-category=utility-assistance]{--bg:#fff;--header-bg:#0e3a5c;--header-fg:#fff;--text:#0e3a5c;--navy:#0e3a5c;--cta:#2a6f97;--accent:#f4a261;--chip:#fff1e6;--well:#e8f6fb;--line:#cde4ee}[data-category=transportation-bus-routes]{--bg:#fff;--header-bg:#102a4c;--header-fg:#fff;--text:#102a4c;--navy:#102a4c;--cta:#1e6091;--accent:#f26b21;--chip:#ffe6d2;--well:#eef4fa;--line:#d0dce8}[data-category=legal-services]{--bg:#f3f6fb;--header-bg:#0a1f3d;--header-fg:#fff;--text:#0a1f3d;--navy:#0a1f3d;--cta:#0a1f3d;--accent:#d95d0f;--chip:#e8eef7;--well:#e8eef7;--line:#c8d2e0}[data-category=health-clinics]{--bg:#f0f7fc;--header-bg:#0b4f8a;--header-fg:#fff;--text:#0b4f8a;--navy:#0b4f8a;--cta:#1a7ac2;--accent:#ff7e3e;--chip:#ffe4d4;--well:#fff;--line:#c5dcea}[data-category=medicaid-medicare]{--bg:#e3f0fa;--header-bg:#123a63;--header-fg:#fff;--text:#123a63;--navy:#123a63;--cta:#1f4e8c;--accent:#ff6b2c;--chip:#f5a15d;--well:#fff;--line:#c5d6e8}[data-category=drop-in-centers]{--bg:#fffaf6;--header-bg:#1a6b9a;--header-fg:#fff;--text:#1a3a52;--navy:#1a3a52;--cta:#1a6b9a;--accent:#e56b1f;--chip:#fff0e4;--well:#e7f3fb;--line:#e8d0bc}[data-scheme=health]{--bg:#f4ede0;--surface:#fff8ee;--navy:#1b2e4b;--text:#1b2e4b;--header-bg:#1b2e4b;--header-fg:#fff8ee;--cta:#1b2e4b;--accent:#2c4a6e;--chip:#e8d9c4;--well:#e8d9c4;--line:#d4c6b0}[data-scheme=pediatric]{--bg:#eaf7f5;--surface:#fff;--navy:#1a6b76;--text:#1c3a40;--header-bg:#1a6b76;--header-fg:#fff;--cta:#1f8a8a;--accent:#f08a2a;--chip:#fde4c8;--well:#d4f0ee;--line:#b5d8d6}html[data-text=sm]{font-size:15px}html[data-text=md]{font-size:16px}html[data-text=lg]{font-size:18px}html[data-text=xl]{font-size:20px}html[data-contrast=high]{--bg:#fff;--surface:#fff;--text:#000;--navy:#000;--muted:#111;--line:#000;--header-bg:#000;--header-fg:#fff;--cta:#000;--accent:#c44a00;--well:#fff3e0;--chip:#fff3e0}html[data-contrast=high] .card,html[data-contrast=high] .listing-card,html[data-contrast=high] .tile,html[data-contrast=high] .module-card{box-shadow:none;border:2px solid #000}html[data-contrast=high] a,html[data-contrast=high] .phone-link{text-decoration:underline}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.45}img{max-width:100%;height:auto;display:block}button,a,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}a{color:var(--navy)}h1,h2,h3{margin:0 0 .4em;font-weight:700;line-height:1.2}p{margin:0 0 .75em}:focus-visible{outline:3px solid var(--cta);outline-offset:3px;border-radius:8px}.skip-link{z-index:1000;background:var(--navy);color:#fff;border-radius:8px;padding:8px 14px;position:absolute;top:-48px;left:8px}.skip-link:focus{top:8px}.app-shell{background:var(--bg);min-height:100dvh;color:var(--text);padding-bottom:calc(88px + env(safe-area-inset-bottom))}.topbar{z-index:40;min-height:calc(56px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 8px 6px;background:var(--header-bg);color:var(--header-fg);align-items:center;gap:4px;display:flex;position:sticky;top:0}.topbar .title{text-align:center;white-space:nowrap;text-overflow:ellipsis;flex:1;padding:0 4px;font-size:1.05rem;font-weight:700;overflow:hidden}.icon-btn{width:var(--tap);height:var(--tap);min-width:var(--tap);background:#ffffff29;border-radius:50%;place-items:center;display:grid}.icon-btn img{object-fit:contain;width:28px;height:28px}.topbar .icon-btn{background:#ffffff2e}.topbar[data-on=light] .icon-btn{background:#0a142814}.page{max-width:560px;margin:0 auto;padding:16px 16px 24px}.page-wide{max-width:720px}.crisis-bar{grid-template-columns:1fr 1fr;gap:10px;margin:0 0 16px;display:grid}.crisis-btn{color:#fff;border-radius:16px;flex-direction:column;justify-content:center;align-items:flex-start;min-height:64px;padding:10px 14px;font-weight:700;text-decoration:none;display:flex}.crisis-btn small{opacity:.92;font-size:.78rem;font-weight:500}.crisis-911{background:#163a6b}.crisis-988{background:#c4284a}html[data-contrast=high] .crisis-988{background:#7a1028}.card,.listing-card{background:var(--surface,#fff);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--line);margin-bottom:12px;padding:14px 16px}.listing-card h2{margin-bottom:6px;font-size:1.05rem}.meta{color:var(--muted);margin-bottom:4px;font-size:.92rem}.actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.btn,.call-btn,.map-btn{min-height:var(--tap);border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary,.call-btn{background:var(--cta);color:var(--on-accent)}.btn-navy{background:var(--navy);color:#fff}.btn-ghost,.map-btn{background:var(--well);color:var(--navy);border:1px solid var(--line)}.call-btn.unverified{background:var(--surface);color:var(--navy);border:2px dashed var(--accent)}.verify-banner{background:var(--soft-orange,#ffe8d4);border-left:4px solid var(--accent);border-radius:8px;margin:8px 0;padding:8px 12px;font-size:.88rem}.verify-banner strong{display:block}.badge{letter-spacing:.02em;text-transform:uppercase;background:var(--chip);color:var(--navy);vertical-align:middle;border-radius:999px;margin-left:6px;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-block}.badge-sample{color:#5c4500;background:#fff3cd;border:1px solid #e0c060}.badge-unverified{color:#8a3b00;background:#fff0e0}.grid-cats{grid-template-columns:1fr 1fr;gap:12px;display:grid}.tile{color:var(--text);background:var(--surface,#fff);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:20px;flex-direction:column;min-height:148px;text-decoration:none;display:flex;overflow:hidden}.tile .art{background:var(--well);place-items:center;height:96px;padding:8px;display:grid}.tile .art img{object-fit:contain;width:auto;max-height:84px}.tile span{text-align:center;padding:8px 10px 12px;font-size:.88rem;font-weight:600;display:block}.search-wrap{margin:0 0 16px;position:relative}.search-wrap input{width:100%;min-height:var(--tap);border:1px solid var(--line);background:var(--well);border-radius:999px;padding:10px 16px 10px 44px}.search-wrap .search-icon{opacity:.6;pointer-events:none;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.module-card{color:var(--navy);border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:24px;margin-bottom:16px;text-decoration:none;display:block;overflow:hidden}.module-card .module-head{color:#fff;text-align:center;background:#163a6b;padding:10px 12px;font-weight:600}.module-card.health .module-head{background:#1b2e4b}.module-card.peds .module-head{background:#1a6b76}.module-card .module-body{text-align:center;background:#fff;padding:16px 16px 20px}.module-card img.emblem{object-fit:contain;width:auto;height:160px;margin:8px auto 12px}.module-card h2{font-size:1.25rem}.coming{background:var(--chip);color:var(--navy);border-radius:999px;margin-top:8px;padding:4px 10px;font-size:.8rem;font-weight:600;display:inline-block}.sidebar-backdrop{z-index:50;background:#0a162873;border:0;position:fixed;inset:0}.sidebar{color:#fff;z-index:60;width:min(320px,88vw);padding:calc(12px + env(safe-area-inset-top)) 0 24px;background:#163a6b;position:fixed;top:0;bottom:0;left:0;overflow:auto;box-shadow:8px 0 32px #00000040}.sidebar h2{color:#fff;padding:8px 20px 16px;font-size:1.15rem}.sidebar a,.sidebar button.navrow{text-align:left;color:#fff;width:100%;min-height:var(--tap);background:0 0;border-radius:0;align-items:center;gap:12px;padding:10px 20px;text-decoration:none;display:flex}.sidebar a[aria-current=page],.sidebar a:hover,.sidebar button.navrow:hover{background:#ffffff1a}.sidebar img{object-fit:contain;width:32px;height:32px}.sidebar .soon{opacity:.7;margin-left:auto;font-size:.8rem}.sidebar .group-label{letter-spacing:.06em;text-transform:uppercase;opacity:.7;padding:16px 20px 4px;font-size:.75rem}.need-help{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:45;color:#163a6b;border:1px solid var(--line);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:6px 12px 6px 6px;font-size:.9rem;font-weight:600;text-decoration:none;display:flex;position:fixed;box-shadow:0 8px 24px #163a6b40}.need-help img{object-fit:contain;width:44px;height:44px}.chat{flex-direction:column;gap:10px;margin-bottom:12px;display:flex}.bubble{border-radius:16px;max-width:88%;padding:10px 14px;line-height:1.4}.bubble.user{color:#1a365d;background:#b8d9f5;margin-left:auto}.bubble.guide{color:#1a365d;background:#ffe0c2}.chat-form{background:var(--bg);z-index:46;gap:8px;padding:8px 88px 8px 0;display:flex;position:sticky;bottom:0}.chat-form input{min-height:var(--tap);border:1px solid var(--line);background:#fff;border-radius:999px;flex:1;padding:8px 14px}.chat-form button[type=submit]{color:#fff;min-width:var(--tap);background:#f15a22;border-radius:999px;padding:0 16px;font-weight:700}.map-wrap{border:1px solid var(--line);z-index:1;border-radius:16px;height:min(62vh,520px);margin-bottom:12px;overflow:hidden}.map-wrap .leaflet-container{width:100%;height:100%;font-family:var(--font)}.pin-icon{background:#ff6a00;border:2px solid #fff;border-radius:50% 50% 50% 0;width:18px;height:18px;transform:rotate(-45deg);box-shadow:0 2px 6px #0000004d}.folder-row{text-align:left;border-bottom:1px solid var(--line);width:100%;color:var(--navy);background:0 0;align-items:center;gap:12px;padding:10px 0;display:flex}.folder-row img{object-fit:contain;width:48px;height:48px}.legal-draft{background:#fff4d6;border:1px solid #e0c060;border-radius:12px;margin-bottom:16px;padding:12px 14px}.legal-body h1{font-size:1.4rem}.legal-body h2{margin-top:1.2em;font-size:1.1rem}.legal-body ul,.legal-body ol{padding-left:1.2em}.settings-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:12px 0;display:flex}.settings-row img{object-fit:contain;width:52px;height:52px}.settings-row .grow{flex:1;min-width:0}.settings-row select{max-width:42%}.seg{background:var(--well);border-radius:999px;gap:4px;padding:4px;display:flex}.seg button{border-radius:999px;min-height:36px;padding:4px 10px;font-weight:600}.seg button[aria-pressed=true]{background:var(--navy);color:#fff}.switch{background:#c5d6e8;border-radius:999px;width:52px;height:32px;position:relative}.switch[aria-checked=true]{background:var(--cta)}.switch i{background:#fff;border-radius:50%;width:24px;height:24px;transition:left .15s;position:absolute;top:4px;left:4px}.switch[aria-checked=true] i{left:24px}.alert-card header{color:#fff;border-radius:16px 16px 0 0;padding:10px 14px;font-weight:700}.alert-card{padding:0;overflow:hidden}.alert-card .body{padding:12px 14px 16px}.alert-1 header{background:#e85d04}.alert-2 header{background:#123e73}.alert-3 header{color:#0b1c33;background:#f4a261}.alert-4 header{background:#2176ae}.filter-row{-webkit-overflow-scrolling:touch;gap:8px;margin-bottom:8px;padding-bottom:10px;display:flex;overflow-x:auto}.chip-btn{border:1px solid var(--line);background:#fff;border-radius:999px;flex:none;min-height:36px;padding:4px 12px;font-size:.85rem;font-weight:600}.chip-btn[aria-pressed=true]{background:var(--navy);color:#fff;border-color:var(--navy)}.heart-btn{min-width:var(--tap);border-radius:50%}.heart-btn img{width:28px;height:28px}.empty{text-align:center;color:var(--muted);padding:24px 8px}.visually-hidden{clip:rect(0,0,0,0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width>=720px){.grid-cats{grid-template-columns:1fr 1fr 1fr}}.notes-clamp{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.listing-notes .more-btn{min-height:var(--tap);color:var(--navy);background:0 0;align-items:center;padding:0 4px;font-weight:600;text-decoration:underline;display:inline-flex}
