*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary:#0059d6;--color-primary-dark:#003fa3;--color-primary-light:#e8f0fe;--color-primary-glow:#0059d626;--color-surface:#fff;--color-bg:#f7f8fa;--color-bg-warm:#fafaf8;--color-text:#1a1d23;--color-text-secondary:#5a5f6b;--color-text-muted:#8a8f9a;--color-border:#e4e6eb;--color-border-light:#f0f1f3;--color-success:#0a8754;--color-success-light:#ecfdf3;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--shadow-sm:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-md:0 4px 12px #00000014, 0 2px 4px #0000000a;--shadow-lg:0 12px 40px #0000001a, 0 4px 12px #0000000d;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Roboto, Helvetica, Arial, sans-serif;font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{scroll-behavior:smooth}body{color:var(--color-text);background:var(--color-bg);font-size:17px;line-height:1.6}.container{max-width:720px;margin:0 auto;padding:0 20px}.header{-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);z-index:50;background:#ffffffeb;padding:12px 0;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;display:flex}.site-name{color:var(--color-text);letter-spacing:-.02em;font-size:1.15rem;font-weight:700}.lang-toggle{background:var(--color-bg);border-radius:var(--radius-sm);gap:3px;padding:3px;display:flex}.lang-btn{min-width:44px;min-height:44px;font-size:.9rem;font-weight:600;font-family:var(--font-sans);cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:8px 16px;transition:all .2s;display:flex}.lang-btn.active{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-sm)}.lang-btn:not(.active):hover{color:var(--color-text-secondary)}.lang-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.hero{text-align:center;padding:56px 0 36px}.hero-badge{background:var(--color-success-light);color:var(--color-success);letter-spacing:.01em;border:1px solid #0a875426;border-radius:100px;align-items:center;gap:8px;margin-bottom:20px;padding:6px 14px;font-size:.82rem;font-weight:600;display:inline-flex}.hero-badge-dot{background:var(--color-success);border-radius:50%;width:7px;height:7px;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.hero-title{letter-spacing:-.03em;color:var(--color-text);max-width:600px;margin-bottom:14px;margin-left:auto;margin-right:auto;font-size:2.2rem;font-weight:800;line-height:1.2}.hero-subtitle{color:var(--color-text-secondary);font-size:1.15rem;line-height:1.5}.doors{flex-direction:column;gap:12px;padding-bottom:56px;display:flex}.door{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-height:72px;color:var(--color-text);box-shadow:var(--shadow-sm);cursor:pointer;align-items:center;gap:16px;padding:20px 24px;font-size:1.05rem;font-weight:600;text-decoration:none;transition:border-color .2s,box-shadow .2s;display:flex}.door-icon{background:var(--color-primary-light);border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.5rem;display:flex}.door-label{flex:1}.door-arrow{color:var(--color-text-muted);flex-shrink:0;transition:transform .2s,color .2s}.door:hover .door-arrow{color:var(--color-primary);transform:translate(3px)}.door:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.section{background:var(--color-bg-warm);border-top:1px solid var(--color-border-light);padding:64px 0 48px}.section-records{background:var(--color-bg)}.section-title{letter-spacing:-.02em;color:var(--color-text);margin-bottom:12px;font-size:1.65rem;font-weight:800}.section-intro{color:var(--color-text-secondary);margin-bottom:32px;font-size:1.05rem;line-height:1.6}.clinics-grid{flex-direction:column;gap:20px;margin-bottom:16px;display:flex}.clinic-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:28px;transition:box-shadow .3s}.clinic-card:hover{box-shadow:var(--shadow-md)}.clinic-header{align-items:flex-start;gap:14px;margin-bottom:20px;display:flex}.clinic-marker{background:var(--color-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.85rem;font-weight:700;display:flex}.clinic-name{color:var(--color-text);letter-spacing:-.01em;font-size:1.15rem;font-weight:700;line-height:1.35}.clinic-details{flex-direction:column;gap:14px;display:flex}.clinic-row{flex-direction:column;gap:2px;display:flex}.clinic-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.8rem;font-weight:700}.clinic-value{color:var(--color-text-secondary);font-size:.97rem;line-height:1.55}.clinic-link{color:var(--color-primary);border-bottom:1px solid #0000;align-items:center;gap:5px;font-weight:500;text-decoration:none;transition:border-color .2s;display:inline-flex}.clinic-link:hover{border-bottom-color:var(--color-primary)}.clinic-link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:2px}.clinic-phone{color:var(--color-primary);align-items:center;gap:6px;min-height:44px;font-size:1.05rem;font-weight:600;text-decoration:none;transition:color .2s;display:inline-flex}.clinic-phone:hover{color:var(--color-primary-dark)}.clinic-phone:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:2px}.phone-icon{color:var(--color-primary);flex-shrink:0}.external-icon{opacity:.6;flex-shrink:0}.spanish-badge{background:var(--color-success-light);color:var(--color-success);border-radius:100px;padding:3px 10px;font-size:.9rem;font-weight:600;display:inline-block}.clinic-note{border-top:1px solid var(--color-border-light);color:var(--color-text-muted);margin-top:18px;padding-top:16px;font-size:.92rem;line-height:1.55}.subsection{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-top:40px;padding:28px}.subsection-title{color:var(--color-text);margin-bottom:10px;font-size:1.1rem;font-weight:700}.subsection p{color:var(--color-text-secondary);margin-bottom:10px;line-height:1.6}.subsection p:last-child{margin-bottom:0}.cta-link{color:var(--color-primary);border-bottom:1px solid #0000;align-items:center;gap:6px;font-weight:600;text-decoration:none;transition:border-color .2s;display:inline-flex}.cta-link:hover{border-bottom-color:var(--color-primary)}.cta-link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:2px}.muted{color:var(--color-text-muted);font-size:.9rem;font-style:italic}.checklist{flex-direction:column;gap:10px;list-style:none;display:flex}.checklist-item{color:var(--color-text-secondary);align-items:flex-start;gap:10px;line-height:1.55;display:flex}.check-icon{color:var(--color-success);flex-shrink:0;margin-top:3px}.records-cta{background:var(--color-primary);color:#fff;min-height:56px;font-size:1.1rem;font-weight:700;font-family:var(--font-sans);border-radius:var(--radius-lg);cursor:pointer;border:none;align-items:center;gap:10px;margin:20px 0;padding:18px 32px;text-decoration:none;transition:background .2s;display:inline-flex}.records-cta:hover{background:var(--color-primary-dark)}.records-cta:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.records-cta-icon{font-size:1.2rem}.records-cta-arrow{transition:transform .2s}.records-cta:hover .records-cta-arrow{transform:translate(3px)}.records-note{color:var(--color-text-secondary);margin-bottom:16px}.fallback{color:var(--color-text-muted);margin-top:8px;font-size:.95rem}.fallback-phone{color:var(--color-primary);align-items:center;gap:5px;min-height:44px;font-weight:600;text-decoration:none;display:inline-flex}.fallback-phone:hover{text-decoration:underline}.fallback-phone:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:2px}.clinic-header-text{flex:1}.clinic-badges{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.badge{letter-spacing:.01em;border-radius:100px;padding:2px 10px;font-size:.78rem;font-weight:600;display:inline-block}.badge-appointment{background:var(--color-primary-light);color:var(--color-primary)}.badge-walkin{background:var(--color-success-light);color:var(--color-success)}.quick-call-btn{background:var(--color-primary);color:#fff;width:100%;min-height:48px;font-size:.95rem;font-weight:600;font-family:var(--font-sans);border-radius:var(--radius-md);justify-content:center;align-items:center;gap:8px;margin-bottom:20px;padding:12px 16px;text-decoration:none;transition:background .2s;display:flex}.quick-call-btn:hover{background:var(--color-primary-dark)}.quick-call-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.quick-call-btn svg{color:#fff}.transit-info{color:var(--color-text-muted);font-size:.92rem}.clinic-finder{background:var(--color-surface);border:2px solid var(--color-primary-light);border-radius:var(--radius-xl);margin-bottom:28px;padding:28px}.finder-title{color:var(--color-text);margin-bottom:6px;font-size:1.15rem;font-weight:700}.finder-subtitle{color:var(--color-text-muted);margin-bottom:20px;font-size:.95rem}.quiz-container{min-height:60px}.quiz-start-btn{background:var(--color-primary);color:#fff;min-height:48px;font-size:1rem;font-weight:600;font-family:var(--font-sans);border-radius:var(--radius-md);cursor:pointer;border:none;align-items:center;padding:12px 24px;transition:background .2s;display:inline-flex}.quiz-start-btn:hover{background:var(--color-primary-dark)}.quiz-question{color:var(--color-text);margin-bottom:14px;font-size:1.05rem;font-weight:600}.quiz-options{flex-direction:column;gap:8px;display:flex}.quiz-option{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;min-height:48px;font-size:.97rem;font-weight:500;font-family:var(--font-sans);color:var(--color-text);cursor:pointer;text-align:left;align-items:center;padding:14px 18px;transition:border-color .2s,background .2s;display:flex}.quiz-option:hover{border-color:var(--color-primary);background:var(--color-primary-light)}.quiz-result-text{color:var(--color-success);margin-bottom:16px;font-size:1.05rem;font-weight:600}.quiz-result-cards{flex-direction:column;gap:12px;display:flex}.quiz-result-card{background:var(--color-bg);border-radius:var(--radius-md);border:1px solid var(--color-border);padding:16px}.quiz-result-name{color:var(--color-text);margin-bottom:10px;font-size:1rem;font-weight:700}.quiz-result-actions{flex-wrap:wrap;gap:8px;display:flex}.quiz-action-btn{border-radius:var(--radius-sm);align-items:center;gap:6px;min-height:44px;padding:10px 16px;font-size:.9rem;font-weight:600;text-decoration:none;transition:background .2s;display:inline-flex}.quiz-action-call{background:var(--color-primary);color:#fff}.quiz-action-call:hover{background:var(--color-primary-dark)}.quiz-action-call svg{color:#fff}.quiz-action-map{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border)}.quiz-action-map:hover{background:var(--color-border-light)}.quiz-restart{border:1px solid var(--color-border);border-radius:var(--radius-sm);min-height:44px;font-size:.9rem;font-weight:500;font-family:var(--font-sans);color:var(--color-text-muted);cursor:pointer;background:0 0;margin-top:16px;padding:8px 16px;transition:border-color .2s;display:inline-block}.quiz-restart:hover{border-color:var(--color-text-muted)}.callout{border-radius:var(--radius-md);gap:12px;margin-top:16px;padding:14px 16px;font-size:.92rem;line-height:1.55;display:flex}.callout-reassure{background:#fef9e7;border:1px solid #f5e6a3}.callout-reassure .callout-icon{color:#b8860b;flex-shrink:0;margin-top:1px}.callout p{color:var(--color-text-secondary);margin:0}.timeline-note{background:var(--color-primary-light);border-radius:var(--radius-sm);color:var(--color-primary-dark);margin-top:10px;padding:10px 14px;font-size:.92rem;font-weight:500}.tips-box{background:var(--color-bg);border-radius:var(--radius-md);border:1px solid var(--color-border-light);margin-top:16px;padding:16px}.tips-title{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px;font-size:.85rem;font-weight:700}.tips-list{flex-direction:column;gap:8px;list-style:none;display:flex}.tips-list li{color:var(--color-text-secondary);padding-left:20px;font-size:.92rem;line-height:1.5;position:relative}.tips-list li:before{content:"•";color:var(--color-text-muted);position:absolute;left:6px}.section-faq{background:var(--color-surface)}.faq-list{margin-top:8px}.faq-item{border-bottom:1px solid var(--color-border-light)}.faq-item:last-child{border-bottom:none}.faq-question{width:100%;min-height:56px;font-size:1rem;font-weight:600;font-family:var(--font-sans);color:var(--color-text);cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;padding:18px 0;line-height:1.4;display:flex}.faq-question:hover{color:var(--color-primary)}.faq-chevron{color:var(--color-text-muted);flex-shrink:0;transition:transform .25s}.faq-chevron.rotated{transform:rotate(180deg)}.faq-answer{overflow:hidden}.faq-answer p{color:var(--color-text-secondary);padding-bottom:18px;font-size:.97rem;line-height:1.6}.last-verified{color:var(--color-text-muted);margin-top:12px;font-size:.8rem;font-weight:600}.site-footer{border-top:1px solid var(--color-border);background:var(--color-surface);margin-top:0;padding:32px 0}.site-footer p{color:var(--color-text-muted);max-width:720px;margin:0 auto;padding:0 20px;font-size:.85rem;line-height:1.6}@media (width>=600px){.doors{flex-direction:row}.door{flex:1}.clinic-row{flex-direction:row;gap:12px}.clinic-label{flex-shrink:0;width:90px;padding-top:1px}.hero-title{font-size:2.6rem}.quiz-result-cards{flex-direction:row}.quiz-result-card{flex:1}}a:focus-visible,button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media print{.header,.doors,.clinic-finder,.quiz-container,.quick-call-btn,.records-cta,.quiz-restart,.faq-chevron,.lang-toggle{display:none!important}body{color:#000;background:#fff;font-size:12pt}.section,.section-faq,.section-records{background:#fff;border:none;padding:24px 0}.clinic-card,.subsection{box-shadow:none;break-inside:avoid;page-break-inside:avoid;border:1px solid #ccc}a{color:#000;text-decoration:underline}a[href^=tel\:]:after{content:" (" attr(href) ")";font-size:.9em}.faq-answer{opacity:1!important;height:auto!important}.faq-question{font-weight:700}.county-expand-btn,.county-locations-list{display:none!important}.county-locations-list{display:block!important}.county-clinic-card,.related-resource-card{box-shadow:none;break-inside:avoid;page-break-inside:avoid;border:1px solid #ccc}}.region-section{margin-bottom:36px}.region-title{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);border-bottom:2px solid var(--color-border-light);margin-bottom:16px;padding-bottom:8px;font-size:1.05rem;font-weight:700}.county-clinic-card{background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border);box-shadow:var(--shadow-card);padding:24px}.county-card-header{align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.county-header-text{flex:1}.county-card-title{color:var(--color-text);margin-bottom:8px;font-size:1.1rem;font-weight:700}.county-badges{flex-wrap:wrap;gap:6px;display:flex}.badge-immigrant{color:#2e7d32;background:#e8f5e9}.badge-warning{color:#e65100;background:#fff3e0}.county-description{color:var(--color-text-secondary);margin-bottom:14px;font-size:.95rem;line-height:1.55}.county-meta{margin-bottom:16px}.county-expand-btn{background:var(--color-primary-light);border-radius:var(--radius-md);width:100%;min-height:48px;font-size:.97rem;font-weight:600;font-family:var(--font-sans);color:var(--color-primary);cursor:pointer;border:none;justify-content:space-between;align-items:center;padding:12px 16px;transition:background .2s;display:flex}.county-expand-btn:hover{background:#c9dff7}.expand-chevron{flex-shrink:0;transition:transform .25s}.expand-chevron.expanded{transform:rotate(180deg)}.county-locations-list{border:1px solid var(--color-border-light);border-radius:var(--radius-md);margin-top:8px;list-style:none;overflow:hidden}.county-location-row{border-bottom:1px solid var(--color-border-light);padding:14px 16px}.county-location-row:last-child{border-bottom:none}.county-location-row.has-warning{background:#fffaf5}.county-location-name{color:var(--color-text);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;font-size:.97rem;font-weight:600;display:flex}.county-location-warning{font-size:.75rem}.county-location-meta{flex-direction:column;gap:4px;font-size:.88rem;display:flex}.county-location-address{color:var(--color-primary)}.county-location-phone{color:var(--color-text-secondary);font-weight:500;text-decoration:none}.county-location-phone:hover{color:var(--color-primary);text-decoration:underline}.county-location-note{color:var(--color-text-muted);margin-top:6px;font-size:.85rem;line-height:1.5}.county-warning-text{color:#e65100}.related-resources{background:var(--color-bg);padding:48px 0}.related-resources-list{flex-direction:column;gap:16px;margin-top:16px;display:flex}.related-resource-card{background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border);box-shadow:var(--shadow-card);padding:24px}.related-resource-header{margin-bottom:10px}.related-resource-name{color:var(--color-text);margin-bottom:6px;font-size:1.05rem;font-weight:700}.related-not-vaccines{color:#e65100;background:#fff3e0;border-radius:100px;padding:3px 10px;font-size:.8rem;font-weight:600;display:inline-block}.related-resource-description{color:var(--color-text-secondary);margin-bottom:14px;font-size:.95rem;line-height:1.55}.related-resource-details{margin-top:0}.quiz-result-card--county{flex-direction:column;gap:8px;display:flex}.quiz-result-county-info{color:var(--color-text-secondary);margin:0;font-size:.9rem}.quiz-action-show{background:var(--color-primary-light);color:var(--color-primary);font-family:var(--font-sans);cursor:pointer;border:none;align-self:flex-start}.quiz-action-show:hover{background:#c9dff7}@media (width>=600px){.county-location-meta{flex-direction:row;gap:16px}}
