/* Targeted readability changes; preserve the existing headings, palette and links. */
.sv-next .sv-hero-facts span { font-size: 14px; line-height: 1.6; }
.sv-next .sv-hero-facts small { font-size: 15px; line-height: 1.6; }
.sv-next .sv-call-label, .sv-next .sv-booking-phone span { font-size: 14px; }
.sv-next .sv-care-note, .sv-next .sv-eyebrow, .sv-next .sv-card-top > span,
.sv-next .sv-digital-card span, .sv-next .care-path .path-number { font-size: 14px; }
.sv-next .sv-card-description { font-size: 16px; line-height: 1.8; }
.sv-bio-demo-tag, .sv-bio-guide-footer > p, .sv-bio-motion-status { font-size: 14px; }
.sv-bio-guide-intro, .sv-bio-answer p, .sv-bio-answer dl,
.sv-bio-topics button, .sv-bio-answer a { font-size: 16px; }
.sv-bio-answer a.sv-bio-notice-link, .sv-bio-greet { font-size: 15px; }
.care-detail .header-actions .reserve { font-size: 16px; min-height: 48px; padding: 10px 14px; }
.care-detail .mobile-dock a, .care-detail .mobile-dock button { font-size: 17px; min-height: 52px; }
.implant-phone { font-size: 16px !important; line-height: 1.5; min-height: 48px; }
.booking-explainer { font-size: 14px !important; line-height: 1.7; }
.scan-pair > div > span { color: #42677a; font-size: 14px; }
.footer-top p > a { display: inline-flex; align-items: center; min-height: 44px; }
.back-top { width: 44px; height: 44px; flex: 0 0 44px; }

/* Keep section navigation available between phone and full desktop layouts. */
@media (min-width: 701px) and (max-width: 1150px) {
 :root { --header: 162px; }
 .header { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: 100px 44px; column-gap: 14px; row-gap: 0; padding: 0 4% 10px; }
 .header > .brand { grid-column: 1; grid-row: 1; }
 .header .header-actions { grid-column: 2; grid-row: 1; }
 .header .nav { display: flex; grid-column: 1 / -1; grid-row: 2; justify-content: center; gap: clamp(20px, 4vw, 46px); margin: 0; }
 .header .nav a { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px; font-size: 18px; line-height: 1.4; white-space: nowrap; }
}
@media (min-width: 701px) {
 .sv-next .footer .back-top { margin-right: 128px; }
}
/* The compact companion occupies its own dock slot instead of sitting on copy. */
@media (max-width: 700px) {
 body.bio-compact-dock .mobile-dock { padding-right: 68px; }
 body.bio-compact-dock .sv-bio-expand { position: fixed; right: 10px; bottom: calc(10px + env(safe-area-inset-bottom)); display: grid; place-items: center; grid-template-rows: 28px 16px; gap: 0; width: 48px; height: 52px; padding: 3px; border-radius: 14px; font-size: 12px; line-height: 16px; box-shadow: none; }
 body.bio-compact-dock .sv-bio-expand img { width: 28px; height: 30px; }
 body.bio-compact-dock .sv-bio-expand > span:last-child { display: none; }
 .care-detail .header .brand { min-width: 0; }
 .care-detail .header .original-lettering { width: clamp(122px, calc(100vw - 220px), 180px); }
 .care-detail .header .brand-original-ko, .care-detail .header .brand-original-en,
 .care-detail .header .brand-original-clinic { width: 100%; height: auto; }
}
@media (max-width: 359px) {
 body.bio-compact-dock .mobile-dock { padding-right: 60px; }
 body.bio-compact-dock .sv-bio-expand { right: 6px; width: 46px; }
 body.bio-compact-dock .mobile-dock a, body.bio-compact-dock .mobile-dock .naver-button-label { font-size: 16px; }
 body.bio-compact-dock .mobile-dock .sv-dock-arrow { display: none; }
 .care-detail .header-actions .reserve { font-size: 15px; padding-inline: 10px; }
 .care-detail .mobile-dock a, .care-detail .mobile-dock button { font-size: 16px; }
}
/* Same dialog ordering and scrolling; only use available landscape width and reduce outer padding. */
@media (max-height: 500px) and (min-width: 600px) {
 .sv-bio-guide-dialog { width: min(620px, calc(100vw - 28px)); }
 .sv-bio-guide-dialog .sv-bio-dialog-header { padding: 7px 14px; }
 .sv-bio-guide-dialog .sv-bio-dialog-header > img { width: 36px; height: 39px; }
 .sv-bio-guide-dialog .sv-bio-dialog-body { padding: 12px 16px; }
 .sv-bio-guide-footer { padding: 6px 14px; }
}
