/* Public pages: shared reading, navigation and touch-target refinements. */
:root {
  --ui-ink:#19334c;
  --ui-muted:#526b80;
  --ui-line:#d9e4ef;
  --ui-blue:#2459df;
  --ui-soft:#f3f7fc;
  --ui-shadow:0 8px 26px rgba(28,59,92,.055);
}
body{color:var(--ui-ink)}
textarea{font:inherit}
a,button,input,select,textarea,summary{touch-action:manipulation}
:where(a,button,input,select,textarea,summary):focus-visible{outline-color:#2459df;outline-width:3px;outline-offset:3px}
::selection{background:#dce9ff;color:#163c77}
.hero-copy,.page-heading p,.discovery-heading>p,.guide-byline,.results-heading>span,
.sitemap-link small,.sitemap-hospitals small,.sitemap-help p,.sitemap-steps li,
.card-top .muted,.institution-card .address,.card-bottom>span,.type-card>span:last-child,
.detail-section>p,.booking-fact,.source-details p{color:var(--ui-muted)}
.hero .eyebrow,.section-heading .eyebrow{letter-spacing:.025em}
.header-inner{gap:28px}
.header-inner nav{gap:5px}
.header-inner nav a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 14px;border-radius:10px;color:#3e566d}
.header-inner nav a:hover{background:#f2f6fd;color:var(--ui-blue)}
.header-inner nav a[aria-current]{background:#eaf1ff;color:#1e4fca}
.header-source{color:#506f7b}
.hero{background:radial-gradient(ellipse at 88% 18%,#e8f4f1 0,transparent 44%),linear-gradient(120deg,#f7faff,#eff5ff);border-bottom:1px solid #e5edf7}
.hero-grid{gap:clamp(32px,4vw,64px)}
.hero h1{font-size:clamp(38px,3.6vw,54px);line-height:1.3}
.hero-copy{line-height:1.95}
.hero-form{border-radius:18px;border-color:#cddbef;box-shadow:0 10px 32px #204a8510}
.search-form:focus-within{border-color:#729bdd;box-shadow:0 0 0 3px #2459df0d}
.search-form label{font-size:12px;color:#4f657c}
.search-selects select{min-height:36px}
.hero-note{transform:none;border-radius:22px;box-shadow:var(--ui-shadow)}
.hero-note li a{border-radius:8px}
.hero-note li a:hover{background:#f4f8ff}
.popular a{display:inline-flex;align-items:center;min-height:36px;border:1px solid #d9e4f3;border-radius:20px;padding:5px 12px;background:#ffffffa8;color:#385d8b}
.popular a:hover{background:#fff;border-color:#829fce}
.data-strip strong{font-variant-numeric:tabular-nums}
.data-strip>div>span,.data-strip>a>span{color:#596d80}
.section{padding-top:56px}
.section-heading{align-items:center}
.section-heading>.text-link{min-height:44px;white-space:normal;text-align:right;flex-shrink:0}
.type-card,.exam-card{--exam-ink:#2854a4;--exam-tint:#f0f5ff;--exam-line:#c9d9f4}
.type-card[href$='/oral'],.exam-card[href$='/oral']{--exam-ink:#116857;--exam-tint:#eaf7f2;--exam-line:#bcdfd2}
.type-card[href$='/infant'],.exam-card[href$='/infant']{--exam-ink:#835422;--exam-tint:#fff7e9;--exam-line:#ead6af}
.type-card[href$='/stomach'],.type-card[href$='/colon'],.type-card[href$='/liver'],
.exam-card[href$='/stomach'],.exam-card[href$='/colon'],.exam-card[href$='/liver']{--exam-ink:#655098;--exam-tint:#f5f1fc;--exam-line:#d8ccea}
.type-card[href$='/breast'],.type-card[href$='/cervical'],.exam-card[href$='/breast'],.exam-card[href$='/cervical']{--exam-ink:#934466;--exam-tint:#fff1f6;--exam-line:#edcad9}
.type-card{display:flex;flex-direction:column;min-width:0;border-radius:16px;border-top:3px solid var(--exam-line);box-shadow:0 3px 12px #18355404}
.type-card .type-icon{background:var(--exam-tint);color:var(--exam-ink);border:1px solid var(--exam-line)}
.type-card p{font-size:14px;line-height:1.85}
.type-card>span:last-child{margin-top:auto;font-size:13px}
.type-card:hover{border-color:var(--exam-line);box-shadow:var(--ui-shadow)}
.exam-card.is-registered{background:var(--exam-tint);border-color:var(--exam-line);border-radius:14px}
.exam-card .exam-icon,.exam-card .exam-status,.exam-card .exam-more{color:var(--exam-ink)}
.exam-card .exam-description{color:#475f75}
.exam-card .exam-more{line-height:1.75;gap:8px}
.exam-learn-link{min-height:44px;line-height:1.65}
.place-card,.collection-card,.purpose-card,.guide-card,.sitemap-category{box-shadow:0 3px 12px #18355404}
.place-card{border-radius:13px}
.place-count,.region-grid span{color:#536c84}
.institution-option{border-color:#d4e0ed;border-radius:17px;box-shadow:0 3px 16px #1a3b6405;transition:border-color .15s,box-shadow .15s}
.institution-option:hover{border-color:#8caeda;box-shadow:var(--ui-shadow)}
.institution-option>.institution-card{padding:27px}
.institution-card h3{font-size:22px;line-height:1.45}
.institution-card .address{font-size:14px;line-height:1.8}
.card-top{align-items:flex-start}
.card-top .muted{text-align:right;line-height:1.7}
.kind{border-radius:6px;color:#3e607c;background:#edf3f9;font-size:12px}
.chip{font-size:12px;color:#355d9e;background:#edf3ff}
.card-bottom{font-size:13px;flex-wrap:wrap}
.card-bottom .card-detail{color:#2459bd;font-weight:650}
.institution-option>.compare-toggle{font-size:13px;min-height:46px;background:#f5f8fc}
.institution-option>.compare-toggle[aria-pressed=true]{background:#e8f0ff;color:#1747bd}
.list-controls{border-color:#d2deec;background:#f4f7fc;border-radius:16px}
.list-query>div:focus-within{border-color:#6c96d7}
.pagination{gap:8px}
.pagination a,.pagination>span{min-width:44px;min-height:44px;height:auto;border-radius:10px;font-size:14px}
.pagination a:hover{border-color:#8faede;background:#f0f5ff;color:#2459df}
.pagination [aria-current]{box-shadow:0 3px 10px #2459df20}
.results-heading>span{line-height:1.7}
.landing-shortcuts .btn{max-width:100%;white-space:normal;text-align:left;line-height:1.7}
.institution-heading{margin:24px 0;padding:30px;border:1px solid #d9e5f3;border-radius:20px;background:linear-gradient(115deg,#f4f8ff,#f5faf9)}
.institution-heading>div{min-width:0}
.institution-heading h1{font-size:clamp(28px,3vw,38px);line-height:1.4}
.institution-heading>div>p{line-height:1.8;color:#4c657a}
.heading-actions .btn,.heading-actions .compare-toggle{min-height:46px}
.detail-summary a{min-height:40px;border:1px solid #dce6f2;background:#fff;line-height:1.6;color:#3d5f81}
.detail-summary a:first-child{border-color:#c8e0d6;color:#23634e;background:#f2faf5}
.detail-nav{border:1px solid #dce5f0;border-radius:13px;padding:9px;background:#fffffffa;box-shadow:0 3px 10px #24456106;scroll-padding-inline:10px}
.detail-nav a{border-color:transparent;background:#f2f6fb;color:#3e5874;min-height:44px}
.detail-nav a:focus-visible{outline-offset:-3px}
.detail-layout{gap:40px}
.detail-section{padding:36px 0;scroll-margin-top:0}
.detail-section>p{font-size:15px;line-height:1.9}
.detail-section .footnote,.detail-section .exam-sources{font-size:13px;line-height:1.9}
.detail-sidebar .sidebar-card{border-radius:18px;background:#f5f8fd;border-color:#d8e4f2;box-shadow:var(--ui-shadow)}
.resource-actions{gap:10px;margin-top:20px;padding-top:18px}
.resource-actions a{display:inline-flex;align-items:center;justify-content:space-between;gap:10px;max-width:100%;min-height:46px;padding:11px 14px;border:1px solid #d5e3f1;border-radius:10px;background:#f5f9fe;color:#285a90;font-size:13px;line-height:1.7;overflow-wrap:anywhere}
.resource-actions a[target='_blank']{background:#f0f8f5;border-color:#cfe4db;color:#286453}
.resource-actions a:hover{border-color:#86a6cf;background:#eaf2fd}
.resource-actions .icon{flex-shrink:0}
.subsection-heading{margin-top:30px;color:#24425e}
.related-exam-links a{border-radius:13px}
.faq-list details{border:1px solid #dce6ef;border-radius:12px;padding:0 20px;margin:10px 0;background:#fff}
.faq-list summary{min-height:58px;display:flex;align-items:center;line-height:1.75;font-size:15px;padding:15px 0}
.faq-list details[open]{background:#f7faff;border-color:#bfd2ee}
.faq-list details p{font-size:14px;color:#4b657c;line-height:1.9;padding-bottom:8px}
.reading-article p,.reading-article li{line-height:1.95}
.guide-byline{font-size:13px}
.report-form-card .field label{font-size:14px;color:#335574}
.report-form-card .field input,.report-form-card .field select,.report-form-card .field textarea{border-color:#ccdbea;border-radius:10px;font-size:16px}
.sitemap-search-row input{font-size:16px}
.compare-table-scroll{border-color:#cdddec;box-shadow:var(--ui-shadow)}
.compare-table tbody tr:nth-child(even) td{background:#fafcfe}
.compare-table th:first-child{box-shadow:3px 0 8px #193a5810}
.site-footer{background:#f6f9fc}
.site-footer p,.footer-top nav,.footer-bottom{color:#566e82}
.footer-top nav a{display:inline-flex;align-items:center;min-height:40px}

@media(min-width:1100px){
 .detail-layout{grid-template-columns:minmax(0,1fr) 275px;gap:48px}
 .hero-form{padding:22px}.hero{padding-top:64px;padding-bottom:64px}
}
@media(max-width:1000px){
 .header-inner{gap:15px}.header-inner nav a{padding-inline:10px;font-size:14px}
 .detail-layout{gap:28px}
}
@media(max-width:800px){
 .header-inner{gap:0}
 .header-inner nav{justify-content:flex-start;gap:4px;overflow-x:auto;overscroll-behavior-x:contain;padding:3px 0 9px;scrollbar-width:thin;scrollbar-color:#b7cbe1 transparent}
 .header-inner nav a{font-size:14px;padding:10px 12px;flex:0 0 auto}
 .hero h1{font-size:clamp(35px,6vw,44px)}
 .institution-heading{padding:24px}
 .detail-layout{grid-template-columns:minmax(0,1fr)}
 .section{padding-top:42px}
 .header-inner nav a:focus-visible{outline-offset:-3px}
}
@media(max-width:600px){
 .wrap{width:calc(100% - 32px)}
 .hero{padding:34px 0 36px}
 .hero-copy{font-size:15px;line-height:1.9}
 .hero-form{padding:18px}
 .hero-form .search-selects{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
 .hero-form .search-selects>.btn{grid-column:1/-1;min-height:48px;font-size:15px}
 .hero-form .search-selects>div{padding:8px 10px;background:#f5f8fd;border:1px solid #e2eaf4;border-radius:9px}
 .hero-form .search-selects select{background:transparent}
 .popular{gap:7px;font-size:12px;align-items:center}
 .popular>span{flex-basis:100%;color:#526b80}.popular a{padding:5px 10px}
 .section-heading{align-items:flex-start;gap:12px}.section-heading h2{font-size:24px;line-height:1.45}
 .section-heading>.text-link{max-width:90px;font-size:12px;text-align:right}
 .data-strip{gap:18px 12px}.data-strip strong{font-size:25px}
 .data-strip>div:not(:first-child){padding-left:16px}
 .type-grid{gap:12px}.type-card{padding:20px 16px}.type-card h3,.type-card h2{font-size:18px}
 .type-card p{font-size:13px;line-height:1.8}.type-card>span:last-child{font-size:12px}
 .place-card{padding:15px 13px}.place-card strong{line-height:1.6}
 .institution-option>.institution-card{padding:22px 20px}
 .institution-card h3{font-size:22px}.institution-card .address{font-size:14px;margin-bottom:17px}
 .institution-heading{padding:23px 20px;margin:20px 0;border-radius:17px}
 .institution-heading h1{font-size:29px}
 .institution-heading>div>p{font-size:14px}
 .heading-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:9px}
 .heading-actions .btn,.heading-actions .compare-toggle{min-width:0;padding:10px 7px;font-size:13px}
 .detail-summary{gap:8px}.detail-summary a{font-size:12px}
 .detail-nav{padding:7px;gap:6px;border-radius:10px}
 .detail-nav a{font-size:13px;padding:10px 12px}
 .detail-section{padding:29px 0}.detail-section>p{font-size:14px;line-height:1.9}
 .detail-section .footnote,.detail-section .exam-sources{font-size:12px}
 .checkup-heading{align-items:flex-start}.checkup-heading h2{font-size:22px}
 .exam-card .exam-description{font-size:13px;line-height:1.85}
 .exam-card .exam-more{font-size:12px}
 .resource-actions{gap:9px}.resource-actions a{width:100%;min-height:48px;font-size:13px}
 .booking-fact,.booking-question{font-size:14px}
 .faq-list details{padding:0 16px}.faq-list summary{font-size:15px}
 .results-heading{align-items:flex-start;flex-wrap:wrap;gap:8px}
 .results-heading>span{font-size:12px}
 .list-controls{padding:18px 16px}
 .filter-chips a,.day-filter a{min-height:44px}
 .report-form-card .field input,.report-form-card .field select,.report-form-card .field textarea,
 .sitemap-search-row input{font-size:16px;min-height:48px}
 .footer-top nav{gap:4px 16px;font-size:13px}
 .pagination{gap:6px}.pagination a,.pagination>span{min-width:42px;min-height:44px;padding:0 9px}
}
@media(max-width:380px){
 .hero h1{font-size:35px}.brand{font-size:24px}
 .type-grid,.exam-grid{grid-template-columns:minmax(0,1fr)}
 .type-card p{font-size:14px}.type-card .type-icon{margin-bottom:14px}
 .listing-insights-grid{grid-template-columns:minmax(0,1fr)}
 .listing-insight-card{padding:20px}.listing-insight-card h3{font-size:16px;min-height:0}
 .listing-insight-card .listing-insight-copy{font-size:14px}.listing-insight-link{font-size:13px}
 .checkup-heading{flex-wrap:wrap}.registered-count{font-size:12px}
 .institution-heading h1{font-size:27px}
}
@media(prefers-reduced-motion:reduce){
 .type-card:hover,.purpose-card:hover{transform:none}
 .note-mark{transform:none}
}
@media print{
 .institution-heading{background:#fff;padding:15px;border-color:#bbb;box-shadow:none}
 .resource-actions a{background:#fff;padding:4px;border:0;min-height:0}
 .faq-list details{border-color:#ddd}.institution-option,.compare-table-scroll{box-shadow:none}
}
.verified-guidance{border-top:4px solid #127765;background:linear-gradient(150deg,#f5fcf9 0%,#fff 55%)}
.verified-guidance .section-heading{align-items:flex-start;gap:14px;flex-wrap:wrap;margin-bottom:12px}
.verified-source-label{display:inline-flex;align-items:center;gap:6px;background:#e1f3ec;color:#14624f;border-radius:99px;padding:7px 11px;font-size:12px;font-weight:750;white-space:nowrap}
.verified-source-label .icon{width:16px;height:16px}
.verified-facts{display:grid;gap:12px;margin:20px 0 16px}
.verified-facts article{padding:18px 20px;border:1px solid #d7e6e1;border-radius:14px;background:#fff;min-width:0}
.verified-facts h3{margin:0 0 8px;font-size:17px;color:#193c36;line-height:1.5}
.verified-facts article>p{margin:0 0 12px;color:#354b47;line-height:1.8;word-break:keep-all;overflow-wrap:anywhere}
.verified-fact-source{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 16px;border-top:1px solid #e6eee9;padding-top:10px;font-size:12px;color:#50665d}
.verified-fact-source a{display:inline-flex;align-items:center;gap:4px;min-height:40px;color:#116955;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.verified-fact-source .icon{width:14px;height:14px;flex-shrink:0}
@media(max-width:600px){.verified-facts article{padding:15px}.verified-fact-source{align-items:flex-start;flex-direction:column}.verified-source-label{font-size:11px}.verified-guidance .section-copy{line-height:1.8}}
