/* 2.5.4 — a focused city lookup, calm region navigation and readable information. */
:root{--ink:#1d3b49;--ink-2:#3b5968;--muted:#5e7480;--canvas:#f6f9fa}
body{font-size:16px;line-height:1.75;color:var(--ink);letter-spacing:0}
.section-head p,.screening-intro p,.step-card p,.knowledge-card p,.popular-card p,.faq-answer,.article-content p{font-size:15px;line-height:1.85;color:#536d7b}
.section-head h2{font-size:28px;letter-spacing:.2px;line-height:1.45}
.label{font-size:12px;letter-spacing:1.2px;color:#557789}
.input,.select,.btn{font-size:15px;min-height:46px;border-radius:7px}
.input,.select{background-color:#fff;border-color:#d7e2e7}
.btn-primary,.nav-cta{background:#086c86;border-color:#086c86}
.btn-primary:hover,.nav-cta:hover{background:#07576d;border-color:#07576d}
.portal-utility{font-size:12px;background:#f6f8f9}
.portal-utility>.container{height:28px}
.portal-masthead{min-height:88px;padding-block:12px}
.portal-masthead .brand-mark{width:56px;height:56px;flex-basis:56px}
.portal-brand-copy{gap:5px}
.portal-brand-copy strong{font-size:25px;letter-spacing:1px}
.portal-brand-copy small{font-size:12px;letter-spacing:2px;color:#657d89}
.portal-header-note small{font-size:12px}
.portal-masthead .nav-cta{min-height:42px;font-size:14px;border-radius:7px}
.portal-nav{background:#fff;border-block:1px solid #e6edf0}
.portal-nav-links{justify-content:flex-start;gap:12px}
.portal-nav-links>a{flex:0 1 auto;height:46px;padding-inline:22px;letter-spacing:.2px;color:#425f6f;font-size:15px}
.portal-nav-links>a:hover,.portal-nav-links>a:focus-visible,.portal-nav-links>a.is-current{background:#f2f7f9;color:#075c76}
.portal-nav-links>a.is-current:after{height:2px;width:28px;background:#167a94;border-radius:2px}
.portal-hero{background:linear-gradient(110deg,#f1f7fa,#edf5f8 60%,#f5f9fa);border-bottom-color:#e3ecf0}
.portal-hero-layout{grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);gap:46px;min-height:0;align-items:center;padding-block:42px}
.portal-hero-copy{padding:0;min-width:0}
.portal-eyebrow{font-size:12px;letter-spacing:1.5px;color:#577b8e;border-left-width:2px}
.portal-hero h1{font-size:clamp(32px,3.1vw,42px);line-height:1.4;letter-spacing:1.5px;margin:12px 0 14px}
.portal-hero .hero-copy{font-size:15px;line-height:1.8;max-width:none;color:#567382}
.portal-hero-footnote{font-size:12px;line-height:1.7;margin-top:13px;letter-spacing:0;color:#5e7b8b}
.portal-hero .portal-query{margin-top:23px;background:#fff;border:1px solid #dde8ed;border-radius:12px;box-shadow:0 6px 22px #1a536207;padding:21px}
.portal-hero .portal-query .query-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:14px 12px;padding:0;background:transparent;align-items:end}
.portal-hero .portal-query-title{grid-column:1/-1;margin:0 0 1px;gap:0}
.portal-hero .portal-query-line{display:none}
.portal-hero .portal-query-title h2{font-size:18px;letter-spacing:0;line-height:1.5;margin:0}
.portal-hero .portal-query .field label{font-size:12px;line-height:1.5;margin-bottom:7px;color:#567180}
.portal-hero .portal-query .select{height:46px;min-height:46px;border-radius:7px;font-size:14px}
.portal-hero .portal-query .actions{grid-column:auto;display:block;margin:0}
.portal-hero .portal-query .btn{min-width:110px;min-height:46px;gap:12px;padding:0 15px;white-space:nowrap;font-size:14px}
.portal-hero .portal-query-error{grid-column:1/-1;margin:0;font-size:13px}
.portal-national-overview{background:#ffffffc9;border:1px solid #dce7ed;border-radius:14px;box-shadow:0 10px 30px #1c536209;padding:26px;min-width:0}
.portal-overview-head{display:flex;align-items:center;gap:20px;margin:0 0 23px}
.portal-overview-head h2{font-size:20px;line-height:1.5;color:#254d62}
.portal-overview-head p{display:grid;gap:5px;text-align:right;justify-items:end}
.portal-overview-head strong{font-size:40px;line-height:1;font-variant-numeric:tabular-nums;color:#136d84}
.portal-overview-head p>span{font-size:12px;color:#647d8b}
.portal-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px 7px}
.portal-overview-grid>a{min-height:66px;padding:10px 6px;gap:5px;background:transparent;border:1px solid transparent;border-radius:8px;color:#365d70}
.portal-overview-grid>a>span{font-size:15px;font-weight:600}
.portal-overview-grid small{font-size:12px;color:#66818f}
.portal-overview-grid>a:hover{border-color:#d4e3ea;background:#eaf3f6}
.portal-overview-grid>.portal-overview-all{grid-column:1/-1;display:flex;justify-content:space-between;gap:16px;min-height:43px;margin-top:6px;padding:14px 1px 0;border:0;border-top:1px solid #dce8ee;border-radius:0;background:transparent;color:#0b6982;text-align:left}
.portal-overview-grid>.portal-overview-all small{color:#28768d;font-size:12px}
.portal-overview-grid>.portal-overview-all:hover{background:transparent;border-color:#aacbd8;color:#074d63}
.portal-overview-note{margin:13px 0 0;font-size:12px;line-height:1.8;color:#67808d}
.portal-services{background:#fff}
.portal-service-grid{padding-block:6px}
.portal-service-grid>a{padding-block:22px}
.portal-service-grid strong{font-size:15px;line-height:1.5}
.portal-service-grid small{font-size:12px;line-height:1.6;color:#647b88}
.portal-service-icon{color:#4b8398}
.portal-notice{padding-block:16px;gap:17px}
.portal-notice strong,.portal-notice p,.portal-notice a{font-size:12px;line-height:1.8}
.section{padding-block:56px}
.section-soft{background:#f6f9fa}
.search-box{border-radius:11px;padding:17px;gap:12px;border-color:#dde7eb;background:#fff}
.search-box .input,.search-box .select,.search-box .btn{min-height:46px;font-size:15px}
.directory-tools{padding-block:12px;border-bottom-color:#e1e9ed;gap:16px}
.directory-shortcuts{gap:4px}
.directory-shortcuts>span{font-size:12px;margin-right:8px;color:#627b89}
.directory-shortcuts button{font-size:13px;min-height:38px;padding:6px 12px;border-radius:6px}
.directory-shortcuts button[aria-pressed=true]{color:#075d76;background:#e4f0f4}
.directory-clear{font-size:13px}
.directory-summary{padding-top:20px;font-size:13px;color:#607988}
.directory-summary p{color:#49697b}
.directory-summary>span{font-size:12px}
.search-results{gap:20px}
.city-card{padding:22px;background:#fff;border:1px solid #dde6eb;border-radius:12px;box-shadow:0 3px 14px #214d6004}
.city-card:hover{border-color:#8bb5c5;box-shadow:0 8px 24px #214d6008;transform:none}
.city-card-top{min-width:0}
.city-card-brand-row{display:flex;align-items:flex-start;justify-content:flex-start;gap:13px;min-height:0}
.institution-brand-logo,.institution-brand-fallback{width:46px;height:46px;flex:0 0 46px;padding:4px;border:1px solid #e1e9ed;border-radius:9px;box-shadow:none;background:#fff}
.institution-brand-logo img{border-radius:5px}
.institution-brand-fallback{justify-content:center;background:#eef5f8;color:#26738b;padding:0}
.institution-brand-fallback .institution-symbol{background:transparent;font-size:19px;border:0}
.institution-brand-fallback>span:last-child{display:none}
.city-card-identity{min-width:0;flex:1}
.city-card .city-place{display:block;margin:0 0 5px;padding:0;border:0;background:transparent;border-radius:0;font-size:12px;line-height:1.5;font-weight:400;color:#62808f}
.city-card .city-card-identity h3{font-size:17px;line-height:1.6;font-weight:600;letter-spacing:0;margin:0;min-height:3.2em;color:#213f4f;overflow-wrap:anywhere}
.city-card-status{margin-top:14px}
.city-status{font-size:11px;line-height:1.6;font-weight:400;border-radius:4px;padding:4px 7px}
.card-facts{margin-top:14px;padding-block:16px;gap:12px;border-top-color:#e8eef1}
.card-facts li{gap:9px;font-size:14px;line-height:1.7;color:#496574;min-width:0}
.card-facts li>div{min-width:0;flex:1}
.card-fact-label{display:block;font-size:12px;line-height:1.5;color:#6c8492;margin-bottom:3px}
.card-facts li p{margin:0;font-size:14px;line-height:1.7;overflow-wrap:anywhere}
.card-facts svg{width:20px;height:20px;flex:0 0 20px;padding:2px;margin-top:1px;background:transparent;border-radius:0;color:#6d92a3}
.card-facts .city-card-highlight{background:#f0f7f5;border-radius:7px;padding:10px 9px;color:#35685f}
.card-facts .city-card-highlight svg{background:transparent;color:#568b7f}
.card-facts .city-card-highlight .card-fact-label{color:#5d8078}
.city-card-footer{margin-top:auto;padding-top:14px;border-top-color:#e7edf0}
.city-card .card-link{padding:1px 0;border-radius:0;background:transparent;font-size:14px;line-height:1.7;font-weight:600}
.city-card .card-link svg{width:20px;height:20px;flex:0 0 20px;background:transparent;border-radius:0;padding:2px}
.city-card:hover .card-link svg{background:transparent;transform:none}
.directory-pager{margin-top:26px}
.directory-pager button{min-height:44px;font-size:14px;border-radius:7px}
.directory-pager>span{font-size:13px}
.screening-intro h2{font-size:28px;line-height:1.5}
.screening-intro p,.mini-list div,.screen-step .helper{font-size:14px;line-height:1.85;color:#587382}
.screening-card{border-radius:12px}
.progress-meta{font-size:12px}
.choice label{font-size:14px}
.screening-context{font-size:13px}
.step-card h3{font-size:18px;line-height:1.5}
.step-card .num{font-size:13px}
.knowledge-card,.popular-card{border-radius:10px}
.faq-item button{font-size:16px;font-weight:500;line-height:1.7}
.faq-answer{font-size:15px}
.portal-information-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:48px;align-items:start}
.portal-service-info .section-head{margin-bottom:22px}
.portal-service-info .section-head h2{font-size:28px;max-width:none}
.portal-contact-card{border:1px solid #dbe7ec;border-radius:12px;background:#f0f6f8;padding:26px;gap:23px;grid-template-columns:minmax(0,1fr) 140px;box-shadow:none}
.portal-contact-card .portal-contact-copy h3{font-size:22px;line-height:1.5;margin:0 0 8px}
.portal-contact-card .portal-contact-copy p{font-size:14px;line-height:1.8;color:#56717f;margin:0}
.portal-contact-card>a{border-radius:7px;padding:7px}
.portal-service-facts{gap:13px}
.portal-service-facts article{gap:14px;padding-bottom:13px}
.portal-service-facts article>span{font-family:inherit;font-size:13px;line-height:26px;text-align:center;width:26px;flex:0 0 26px;height:26px;background:#edf4f7;color:#527f92;border-radius:6px}
.portal-service-facts h3{font-size:15px;line-height:1.6;margin:0 0 5px;color:#355c70}
.portal-service-facts p{font-size:13px;line-height:1.75;color:#5f7988;margin-bottom:6px}
.portal-service-facts a{font-size:12px;line-height:1.7}
.footer-note,.footer-links{font-size:13px;line-height:1.85}
.footer-title{font-size:14px}
.footer-bottom{font-size:12px;line-height:1.8}
.city-hero p,.source-chip{color:#567382}
.city-contact-card{border-radius:10px}
.info-item,.side-card{border-radius:9px}
.city-hero .eyebrow,.article-hero .eyebrow{font-size:13px}

@media(max-width:1050px){
 .portal-brand-copy strong{font-size:23px}.portal-brand-copy small{letter-spacing:1.5px}.portal-nav-links{gap:0}.portal-nav-links>a{padding-inline:19px}
 .portal-hero-layout{gap:30px;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);padding-block:34px}.portal-hero .portal-query{padding:18px}
 .portal-hero .portal-query .query-panel{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.portal-hero .portal-query .actions{grid-column:1/-1}.portal-hero .portal-query .btn{width:100%}
 .portal-national-overview{padding:22px 19px}.portal-overview-head{gap:12px}.portal-overview-head h2{font-size:18px}.portal-overview-head strong{font-size:34px}.portal-overview-grid{gap:8px 4px}.portal-overview-grid>a{padding-inline:3px}.portal-overview-grid>a>span{font-size:14px}
 .portal-information-layout{gap:30px}.portal-contact-card{padding:22px;grid-template-columns:minmax(0,1fr) 120px;gap:20px}
}
@media(max-width:800px){
 .portal-masthead{min-height:82px}.portal-masthead .brand-mark{width:52px;height:52px;flex-basis:52px}.portal-brand-copy strong{font-size:22px}.portal-nav-links>a{font-size:14px;padding-inline:15px}
 .portal-hero-layout{grid-template-columns:1fr;gap:25px;min-height:0;padding-block:30px}.portal-hero-copy{max-width:none}.portal-hero h1{font-size:35px}.portal-hero .portal-query .query-panel{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.portal-hero .portal-query .actions{grid-column:auto}
 .portal-national-overview{padding:20px 23px}.portal-overview-head{display:flex;margin-bottom:14px}.portal-overview-head p{display:flex;gap:10px;align-items:baseline}.portal-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.portal-overview-grid>a{min-height:52px}.portal-overview-note{margin-top:10px}
 .portal-service-grid strong{font-size:14px}.portal-service-grid small{font-size:12px}.portal-notice p{font-size:12px}.portal-notice a{font-size:12px}
 .section-head h2,.screening-intro h2{font-size:26px}.portal-information-layout{grid-template-columns:1fr;gap:24px}.portal-contact-card{grid-template-columns:minmax(0,1fr) 140px;max-width:100%}
}
@media(max-width:620px){
 .portal-utility{font-size:11px}.portal-utility>.container{height:28px;gap:6px}.portal-utility .container>div{gap:8px}.portal-utility .container>div>a:first-child{display:none}
 .portal-masthead{min-height:82px;padding-block:12px;gap:8px}.portal-masthead .brand{gap:10px}.portal-masthead .brand-mark{width:48px;height:48px;flex-basis:48px}.portal-brand-copy strong{font-size:19px;letter-spacing:.2px}.portal-brand-copy small{font-size:10px;letter-spacing:1px}
 .portal-nav-links{display:none;padding-block:8px}.portal-nav-links.open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.portal-nav-links>a{height:43px;justify-content:flex-start;padding:0 15px;font-size:14px}.portal-nav-links>a.is-current:after{display:none}
 .portal-hero-layout{padding-block:27px;gap:21px}.portal-eyebrow{font-size:11px;letter-spacing:1px}.portal-hero h1{font-size:30px;line-height:1.45;letter-spacing:.7px;margin:11px 0 12px}.portal-hero .hero-copy{font-size:14px;line-height:1.8}
 .portal-hero .portal-query{margin-top:21px;padding:18px 16px;border-radius:10px}.portal-hero .portal-query .query-panel{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.portal-hero .portal-query-title h2{font-size:17px}.portal-hero .portal-query .field label{font-size:12px}.portal-hero .portal-query .select{height:48px;min-height:48px;font-size:16px;padding-inline:10px}.portal-hero .portal-query .actions{grid-column:1/-1;display:block}.portal-hero .portal-query .btn{width:100%;min-height:48px;font-size:15px;justify-content:center}.portal-hero .portal-query-error{font-size:12px}.portal-hero-footnote{font-size:12px;line-height:1.7;align-items:flex-start;margin-top:12px}.portal-hero-footnote>span{margin-top:8px;flex:0 0 5px}
 .portal-national-overview{border-radius:11px;padding:18px 16px;background:#ffffffb8;box-shadow:none}.portal-overview-head{margin-bottom:14px;align-items:center}.portal-overview-head h2{font-size:18px}.portal-overview-head p{display:grid;gap:3px}.portal-overview-head strong{font-size:30px}.portal-overview-head p>span{font-size:11px}.portal-overview-grid{gap:6px}.portal-overview-grid>a{min-height:55px;padding:7px 3px;gap:5px}.portal-overview-grid>a>span{font-size:14px}.portal-overview-grid small{font-size:12px}.portal-overview-grid>.portal-overview-all{min-height:40px;padding-top:12px;margin-top:4px}.portal-overview-grid>.portal-overview-all>span{font-size:14px}.portal-overview-note{font-size:12px;margin-top:10px;line-height:1.7}
 .portal-service-grid{padding-block:3px}.portal-service-grid>a,.portal-service-grid>a:first-child,.portal-service-grid>a:last-child{padding:16px 10px;gap:9px}.portal-service-grid strong{font-size:13px}.portal-service-grid small{font-size:11px;line-height:1.65}.portal-service-icon{flex-basis:26px}.portal-service-icon svg{width:26px;height:26px}
 .portal-notice{padding-block:14px;gap:10px}.portal-notice strong,.portal-notice p{font-size:12px;line-height:1.8}
 .section{padding-block:38px}.section-head{margin-bottom:21px}.section-head h2,.screening-intro h2{font-size:24px}.section-head p{font-size:14px;line-height:1.8;margin-top:10px}
 .search-box{padding:14px;gap:10px;border-radius:10px}.search-box .input,.search-box .select{font-size:16px;min-height:48px}.search-box .btn{min-height:46px;font-size:14px}.directory-tools{padding-block:12px;gap:8px}.directory-shortcuts>span{font-size:12px}.directory-shortcuts button{font-size:13px;min-height:40px;padding:7px 11px}.directory-clear{font-size:12px;padding-top:31px}.directory-summary{font-size:12px;line-height:1.8;padding-top:16px}
 .search-results{gap:15px}.city-card{padding:19px;border-radius:11px}.city-card-brand-row{gap:12px;min-height:0}.institution-brand-logo,.institution-brand-fallback{width:44px;height:44px;flex:0 0 44px}.city-card .city-place{font-size:12px;margin-bottom:5px}.city-card .city-card-identity h3{font-size:17px;line-height:1.65;min-height:0;margin:0}.city-card-status{margin-top:13px}.city-status{font-size:11px}.card-facts{padding-block:15px;margin-top:14px;gap:12px}.card-facts li p{font-size:14px;line-height:1.8}.card-fact-label{font-size:12px}.city-card-footer{padding-top:13px}.city-card .card-link{font-size:14px;min-height:32px;padding:0}.directory-pager{gap:18px;margin-top:24px}.directory-pager button{font-size:13px;min-height:44px}.directory-pager>span{font-size:12px}
 .screening-intro p,.mini-list div,.screen-step .helper{font-size:14px}.screening-card{border-radius:10px;padding:23px 18px}.choice label{font-size:14px}.screen-step h3{font-size:20px}.faq-item button{font-size:15px}.faq-answer{font-size:14px}.step-card p,.knowledge-card p,.popular-card p{font-size:14px}.step-card h3{font-size:17px}
 .portal-service-info .section-head h2{font-size:24px}.portal-contact-card{grid-template-columns:minmax(0,1fr) 116px;padding:22px 18px;gap:16px;border-radius:11px}.portal-contact-card .portal-contact-copy h3{font-size:21px}.portal-contact-card .portal-contact-copy p{font-size:13px;line-height:1.8}.portal-contact-card>a{width:auto;padding:6px}.portal-service-facts article{gap:12px;padding-bottom:15px}.portal-service-facts h3{font-size:15px}.portal-service-facts p{font-size:13px}.portal-service-facts a{font-size:12px}
 .footer-note,.footer-links{font-size:13px}.footer-bottom{font-size:12px}.final-cta .cta-row h2{font-size:23px}.cta-row p{font-size:14px}
 .portal-home{padding-bottom:calc(78px + env(safe-area-inset-bottom,0px))}.portal-mobile-actions{padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));gap:12px}.portal-mobile-actions a{min-height:47px;font-size:14px;border-radius:7px}.portal-home section[id]{scroll-margin-top:18px}
}
@media(max-width:370px){.portal-brand-copy strong{font-size:17px}.portal-brand-copy small{font-size:9px}.portal-hero h1{font-size:28px}.portal-hero .portal-query{padding-inline:13px}.portal-overview-grid>a>span{font-size:13px}.portal-contact-card{grid-template-columns:minmax(0,1fr) 105px;gap:12px;padding:20px 15px}}

/* 2.5.5: compact facts, clear type and secondary content on demand. */
.section-head{flex-wrap:wrap;align-items:flex-end;row-gap:10px}
.section-head>div{flex:0 0 auto;max-width:100%;min-width:0}
.section-head h2{max-width:100%;word-break:normal;overflow-wrap:normal}
.section-head p{flex:1 1 360px;color:#425e6d}
.label,.portal-eyebrow{color:#496878}
.portal-home .section{padding-block:38px}
.portal-home .section-head{margin-bottom:20px}
.portal-home .portal-overview-head{margin-bottom:12px}
.portal-home .portal-overview-grid>a{min-height:56px}
.portal-home .portal-overview-head p>span,.portal-home .portal-overview-grid small{font-size:13px;color:#4d6978}
.portal-home .portal-hero-footnote{color:#496878;font-size:13px}
.portal-home .portal-query .field label{font-size:13px;color:#415f6e}
.portal-home .directory-summary{padding-top:14px;color:#425e6d}
.portal-home .directory-summary>span{font-size:13px;color:#526c7a}
.directory-shortcuts>span,.directory-pager>span{font-size:13px;color:#496575}
.search-results{gap:14px;margin-top:16px}
.city-card.city-card-compact{padding:18px;gap:12px;min-height:0;border-radius:10px}
.city-card-compact .city-card-brand-row{gap:11px;align-items:center;min-height:0}
.city-card-compact .institution-brand{width:42px;height:42px;flex:0 0 42px;padding:3px}
.city-card-compact .city-place{font-size:13px;color:#486777;line-height:1.5;margin:0 0 3px;min-height:0}
.city-card-compact .city-card-identity h3{font-size:17px;line-height:1.55;min-height:0;margin:0;overflow-wrap:anywhere}
.city-card-address{display:flex;align-items:flex-start;gap:7px;margin:0;color:#3b5868;font-size:14px;line-height:1.7}
.city-card-address>svg{width:18px;height:20px;flex:0 0 18px;margin-top:2px;color:#648594}
.city-card-address>span{min-width:0;overflow-wrap:anywhere}
.city-card-hours{margin:0;font-size:13px;line-height:1.7;color:#3e655b}
.city-card-hours>span{margin-right:8px;color:#4b6d65}
.city-card-meta{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;line-height:1.6}
.city-card-compact .city-status{font-size:13px;padding:0;color:#4e626e;white-space:normal;line-height:1.6}
.city-card-compact .city-status.status-verified{color:#21634f}
.city-card-compact .city-status.status-trial{color:#796039}
.city-card-compact .city-status:before{box-shadow:none;width:5px;height:5px;flex-basis:5px}
.city-card-date{font-size:12px;color:#526c79}
.city-card-date time{font-variant-numeric:tabular-nums}
.city-card-compact .city-card-footer{padding-top:9px}
.city-card-compact .card-link{min-height:30px;font-size:14px}
.screening-contact-link{display:inline-flex;align-items:center;gap:12px;color:#086c86;font-size:14px;margin-top:18px;min-height:36px}
.screening-intro .label{font-size:13px;letter-spacing:.4px}
.screening-intro h2{font-size:27px}
.screening-intro p,.screen-step .helper{color:#425e6d}
.progress-meta{font-size:13px;color:#496575}
.portal-home .screening-shell{gap:42px}
.portal-home .portal-information-layout{grid-template-columns:minmax(0,1.5fr) minmax(0,.7fr);gap:28px;align-items:center}
.portal-home .portal-contact-card{grid-template-columns:minmax(0,1fr) 138px;gap:20px;padding:22px;background:#f2f7f9;border-radius:10px}
.portal-contact-card .portal-contact-copy h3{font-size:18px;margin-bottom:8px}
.portal-contact-card .wechat-account-line{font-size:14px;color:#425e6d;margin:0 0 13px}
.wechat-account{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.3px;font-weight:600;font-size:19px;color:#183e51;margin-left:6px;user-select:all;-webkit-user-select:all}
.wechat-contact-actions{display:flex;flex-wrap:wrap;gap:9px}
.wechat-contact-actions .btn{font-size:14px;min-height:44px;padding:8px 13px;white-space:nowrap}
.portal-contact-card .portal-contact-copy .wechat-copy-status{font-size:13px;line-height:1.6;color:#405e6e;margin:10px 0 0;min-height:21px}
.portal-contact-card>.wechat-qr-link{display:block;background:#fff;padding:7px;border-radius:7px;text-align:center;min-width:0}
.wechat-qr-link img{display:block;width:100%;height:auto}
.wechat-qr-link>span{display:block;font-size:12px;line-height:1.5;color:#476675;margin-top:4px}
.contact-service-note h3{font-size:16px;line-height:1.6;margin:0 0 8px}
.contact-service-note p{font-size:14px;line-height:1.8;color:#405e6e;margin:0 0 12px}
.contact-policy-links{display:flex;flex-wrap:wrap;gap:8px 15px}
.contact-policy-links a{font-size:13px;min-height:30px;display:inline-flex;align-items:center;color:#086c86}
.home-resources{background:#f6f9fa}
.home-resources h2{font-size:25px;line-height:1.5;margin:0 0 18px}
.home-extras{border-top:1px solid #dbe5ea}
.home-extra{border-bottom:1px solid #dbe5ea}
.home-extra>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px;padding:16px 0;cursor:pointer}
.home-extra>summary::-webkit-details-marker{display:none}
.home-extra>summary>span:first-child{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 20px}
.home-extra summary strong{font-size:17px;font-weight:600;color:#254654}
.home-extra summary small{font-size:14px;color:#496775}
.home-extra-indicator{font-size:24px;color:#276a80;font-weight:400;line-height:1;transition:transform .15s}
.home-extra[open]>.home-extra-indicator,.home-extra[open]>summary>.home-extra-indicator{transform:rotate(45deg)}
.home-extra-section>.container{width:100%;padding-inline:0}
.home-extra-section{padding:0 0 24px}
.home-extra .steps{margin-top:8px}
.home-extra .knowledge-tabs{margin-top:6px;flex-wrap:wrap}
.home-extra .knowledge-grid{gap:13px}
.home-extra .knowledge-card{padding:20px;min-height:0}
.home-extra .knowledge-card p{font-size:14px;line-height:1.75}
.home-extra .faq-item button{padding-block:16px;font-size:15px}
.home-extra .faq-item:last-child{border-bottom:0}
.portal-home .footer-note{color:#496575}
.portal-home .footer-bottom{color:#496575}
.home-extra>summary:focus-visible,.wechat-account:focus-visible{outline:2px solid #086c86;outline-offset:4px}
@media(max-width:1050px){.portal-home .portal-information-layout{grid-template-columns:1fr}.contact-service-note{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px}.contact-service-note h3,.contact-service-note p{margin:0}.contact-service-note p{flex:1 1 320px}.contact-policy-links{width:100%}}
@media(max-width:800px){.portal-home .section{padding-block:32px}.portal-home .screening-shell{gap:20px}.portal-home .portal-contact-card{grid-template-columns:minmax(0,1fr) 144px}.section-head p{flex-basis:100%}.home-extra .steps{gap:18px}.home-extra-section .step-card{padding-block:14px}}
@media(max-width:620px){
 .portal-home .section{padding-block:29px}.portal-home .section-head{margin-bottom:18px}
 .section-head h2,.screening-intro h2{font-size:24px;line-height:1.45}.section-head p{font-size:14px;margin:8px 0 0;color:#425e6d}
 .portal-home .portal-overview-head p>span{font-size:12px}.portal-home .portal-overview-grid>a{min-height:48px}.portal-home .portal-overview-grid small{font-size:12px}
 .portal-home .portal-eyebrow{font-size:12px}.portal-home .portal-query .field label{font-size:13px}.portal-home .portal-hero-footnote{font-size:12px}
 .portal-home .directory-summary{padding-top:12px}.portal-home .directory-summary p{font-size:13px}.directory-shortcuts>span{font-size:13px}
 .city-card.city-card-compact{padding:16px;gap:11px}.city-card-compact .institution-brand{width:40px;height:40px;flex-basis:40px}.city-card-compact .city-card-identity h3{font-size:16px;line-height:1.6}.city-card-compact .city-place{font-size:13px}.city-card-address{font-size:14px}.city-card-compact .city-card-footer{padding-top:8px}.city-card-compact .card-link{min-height:32px;font-size:14px}.city-card-compact .city-status{font-size:13px}.city-card-meta{gap:4px 12px}.city-card-date{font-size:12px}
 .screening-contact-link{font-size:14px;margin-top:9px}.screening-card{padding:20px 17px}.screening-intro p,.screen-step .helper{font-size:14px}.screening-intro .label{font-size:12px}
 .portal-home .portal-contact-card{grid-template-columns:minmax(0,1fr) 100px;padding:17px 15px;gap:13px;align-items:center}.portal-contact-card .portal-contact-copy h3{font-size:17px;margin-bottom:7px}.portal-contact-card .wechat-account-line{font-size:13px;margin-bottom:10px}.wechat-account{font-size:18px;display:block;margin:1px 0 0}.wechat-contact-actions{gap:7px}.wechat-contact-actions .btn{font-size:13px;min-height:42px;padding:7px 10px}.portal-contact-card>.wechat-qr-link{padding:5px}.wechat-qr-link>span{font-size:11px;line-height:1.5}.portal-contact-card .portal-contact-copy .wechat-copy-status{font-size:12px;line-height:1.7;margin-top:8px}.contact-service-note p{font-size:14px}.contact-service-note h3{font-size:15px}.contact-policy-links a{font-size:13px;min-height:36px}
 .home-resources h2{font-size:23px;margin-bottom:13px}.home-extra>summary{min-height:72px;gap:12px;padding-block:14px}.home-extra>summary>span:first-child{display:grid;gap:3px}.home-extra summary strong{font-size:16px}.home-extra summary small{font-size:13px}.home-extra-section{padding-bottom:18px}.home-extra .knowledge-tabs{gap:7px}.home-extra .tab-btn{font-size:13px;padding:8px 10px}.home-extra .knowledge-card{padding:17px}.home-extra .faq-item button{font-size:14px}
}
@media(max-width:370px){.portal-home .portal-contact-card{grid-template-columns:minmax(0,1fr) 90px;padding:15px 12px;gap:10px}.wechat-account{font-size:17px}.wechat-contact-actions .btn{font-size:13px;padding-inline:9px}.city-card-meta{display:grid;gap:4px}.home-extra summary small{font-size:13px}}
