/* Patient reading and controls. Layout, photo choices and hero motion stay separate. */
.afc-site [hidden]{display:none!important}
.afc-site #map .map-load-note{margin:0;padding:24px;color:#243650;background:#e2e8f0;font-size:16px;line-height:1.8}
.medical-review{font-size:12px!important;line-height:1.7;margin:14px 0 18px;letter-spacing:0;color:inherit}
.visit-steps{list-style:none;padding:0;counter-reset:visit;display:grid;gap:18px;margin:26px 0}
.visit-steps>li{counter-increment:visit;position:relative;padding:24px 24px 24px 78px;background:#eef2f9;border-radius:14px}
.visit-steps>li:before{content:counter(visit,decimal-leading-zero);position:absolute;left:24px;top:24px;font-size:18px;color:#455d7e}
.visit-steps strong{display:block;font-size:19px;margin-bottom:10px}.visit-steps p{margin:0}
.afc-site :is(button,summary,.button,.text-link,.related-link,.nav-dropdown a,.care-route-nav a,.detail-toc a,.care-detail-toc a,.care-toc a,.breadcrumb a,.site-footer a,.care-sources a,.visual-references a,.faq a){min-height:44px;min-width:44px}
.afc-site :is(.text-link,.related-link,.nav-dropdown a,.care-route-nav a,.detail-toc a,.care-detail-toc a,.care-toc a,.breadcrumb a,.site-footer a,.care-sources a,.visual-references a,.faq a){display:inline-flex;align-items:center}
.afc-site .detail-toc a{flex-shrink:0} /* min-width:44px above replaced flex's auto minimum, letting tab labels overlap */
.afc-site .header-phone{min-height:44px}
.afc-site .brand{display:inline-flex;align-items:center;min-height:44px}
.afc-site .breadcrumb{align-items:center}
/* Keep the 44px home target without pushing the first separator away from the text. */
.afc-site .breadcrumb a{justify-content:center;padding-inline:16px;margin-inline:-16px}
.afc-site :is(.care-byline a,.diagram-caption a){display:inline-flex;align-items:center;min-height:44px;min-width:44px}
.afc-site .closing-cta a{display:inline-flex;align-items:center;min-height:44px}
.afc-site :is(.paper-item a,.xlink),.afc-site.page-parking .care-longform a{display:inline-flex;align-items:center;min-height:44px;min-width:44px}
.clinical-safety{padding:28px;border-left:3px solid #637d9e;background:#eef2f9;border-radius:0 14px 14px 0}
.schedule-hours{padding:30px 0;border-top:1px solid #dce3ed;margin-top:30px}
.afc-site .nav-group>summary{display:flex;align-items:center}
.afc-site .nav-dropdown a{display:flex;line-height:1.55}
.afc-site figcaption{font-size:12px!important;line-height:1.65}
.afc-site .dock-phone{order:1}.afc-site .dock-talk{order:2}.afc-site .dock-calendar{order:3}.afc-site .dock-map{order:4}
.fee-mobile-list{display:none}
@media print{
 .afc-site [data-detail-reveal],.afc-site [data-reveal]{opacity:1!important;visibility:visible!important;transform:none!important;transition:none!important;animation:none!important}
}
@media(max-width:760px){
 .afc-site main p:not(.eyebrow):not(.small):not(.diagram-caption):not(.home-photo-note):not(.content-note):not(.hero-signature):not(.medical-review):not(.fee-kicker){font-size:16px!important;line-height:1.8}
 .afc-site main :is(li,dd){font-size:16px;line-height:1.75}
 .afc-site :is(.small,.diagram-caption,.content-note,.home-photo-note,.eyebrow,.shortcut-index,.hero-signature,.detail-image-note,.care-counter span,.care-sources p,.medical-review,.care-byline){font-size:12px!important;line-height:1.7}
 .afc-site .shortcut-grid>a>span:last-of-type{font-size:15px!important;line-height:1.75}
 .afc-site .shortcut-grid>a{height:auto;min-height:170px;padding:22px 16px}
 .afc-site .shortcut-grid b{top:20px;right:12px}
 .afc-site .shortcut-grid strong{padding-right:8px;line-height:1.5}
 .afc-site .hero-controls{flex-wrap:wrap;gap:8px!important}
 .afc-site .hero-control-group{flex-wrap:wrap;gap:8px!important;margin-right:0!important}
 .afc-site .hero-pagination{gap:4px!important}
 .afc-site .hero-pagination button{min-width:44px!important;min-height:44px!important}
 .afc-site :is(.hero-direction button,.hero-autoplay,.rail-controls button,.device-rail-controls button,.shorts-rail-controls button,.lightbox button,.gallery-lightbox button){min-width:44px!important;min-height:44px!important}
 .afc-site .hero .hero-photo figcaption,.afc-site .detail-photo figcaption{max-width:calc(100% - 40px);font-size:12px!important;line-height:1.65}
 .visit-steps>li{padding:22px 18px 22px 64px}.visit-steps>li:before{left:20px;top:22px}
 .visit-steps strong{font-size:18px}
 .fee-table-scroll,.fee-scroll-hint{display:none}
 .fee-mobile-list{display:block}
 .fee-mobile-group{font-size:21px;margin:32px 0 16px;line-height:1.55}
 .fee-mobile-group:first-child{margin-top:0}
 .fee-mobile-card{padding:22px 18px;margin:0 0 16px;background:#fff;border:1px solid #dce3ed;border-radius:14px;min-width:0}
 .fee-mobile-card h4{font-size:17px;line-height:1.6;margin:0 0 16px;overflow-wrap:anywhere;word-break:keep-all}
 .fee-mobile-card dl{margin:0}.fee-mobile-card dl>div{display:grid;grid-template-columns:74px minmax(0,1fr);gap:12px;padding:9px 0;border-top:1px solid #e7ebf0}
 .fee-mobile-card dt{font-size:12px;color:#5a687c;line-height:1.7}.fee-mobile-card dd{margin:0;font-size:15px;line-height:1.7;overflow-wrap:anywhere}
 .fee-mobile-card .fee-mobile-price dd{font-size:19px;font-weight:700;color:#243b5e;font-variant-numeric:tabular-nums}
}

/* Text-only exam cards have no icon column. Keep mobile labels above text. */
@media(max-width:760px){
 .detail-redesign .care-longform .visual-tiles.text-tiles article{display:block}
 .detail-redesign .care-longform .visual-tiles.text-tiles h3{margin:0 0 12px}
}

/* Failure-only states. Successful rendering keeps the existing presentation. */
.nav-fallback{display:none}
.site-header.nav-pending{z-index:1000}
@media(max-width:1000px){
 .site-header.nav-pending .menu-toggle{display:none}
 .site-header.nav-pending .nav-fallback{display:block;margin-left:auto}
 .site-header.nav-pending .nav-fallback[open]>.nav-fallback-panel{display:block}
 .nav-fallback>summary{cursor:pointer;list-style:none;border:1px solid currentColor;border-radius:4px;padding:8px 12px;font:inherit;font-size:14px;min-height:44px;display:flex;align-items:center;gap:8px}
 .nav-fallback>summary::-webkit-details-marker{display:none}
 .site-header.nav-pending .nav-fallback-panel{position:absolute;left:auto;right:16px;top:100%;width:min(340px,calc(100vw - 32px));max-height:calc(100dvh - 100px);overflow:auto;overscroll-behavior:contain;background:#fff;color:#243b5e;border:1px solid #dce3ed;padding:16px;box-shadow:0 10px 28px #172a4220}
 .nav-fallback-panel>div+div{border-top:1px solid #dce3ed;margin-top:12px;padding-top:12px}
 .nav-fallback-panel strong{display:block;font-size:14px;padding:8px}
 .nav-fallback-panel a{display:flex;align-items:center;min-height:44px;padding:8px;font-size:15px;line-height:1.6}
}
@media(max-width:760px){
 .fee-table-fallback .fee-table-scroll,.fee-table-fallback .fee-scroll-hint{display:block}
 .fee-table-fallback .fee-mobile-list{display:none}
}
@media(min-width:761px) and (max-width:1000px){
 .detail-header.nav-pending .nav-fallback{display:none}
}

/* Record figures in the doctor card (cataract surgery count) read before the profile link. */
.detail-redesign .care-doctor-proof.has-stats{margin-top:30px;padding:28px 32px;background:#fff;border:1px solid #dce3ed;border-radius:20px}
.detail-redesign .care-proof-stats{display:flex;gap:28px;margin:0;padding-left:28px;border-left:1px solid #dce3ed}
.detail-redesign .care-proof-stats div{display:flex;flex-direction:column-reverse;gap:4px}
.detail-redesign .care-proof-stats dd{margin:0;font-size:40px;line-height:1.1;font-weight:700;letter-spacing:-.03em;color:#1f3452;font-variant-numeric:tabular-nums;white-space:nowrap}
.detail-redesign .care-proof-stats dt{font-size:14px;line-height:1.5;color:#3d4f6b}
@media(max-width:760px){
 .detail-redesign .care-doctor-proof.has-stats{padding:20px 18px}
 .detail-redesign .care-proof-stats{grid-column:1/-1;padding:16px 0 0;border-left:0;border-top:1px solid #dce3ed}
 .detail-redesign .care-proof-stats dd{font-size:32px}
}
