/* Mobile homepage readability; desktop composition stays unchanged. */
@media (max-width: 700px) {
  .sv-next .sv-hero-location { font-size: 14px; line-height: 1.6; }
  .sv-next .hero-summary { font-size: 16px; line-height: 1.65; letter-spacing: -.02em; }
  .sv-next .sv-call-label { font-size: 14px; }
  .sv-next .hero-booking .secondary-link { font-size: 18px; gap: 4px; }

  .sv-next .sv-hero-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; padding-top: 16px; margin-top: 22px; }
  .sv-next .sv-hero-facts > a { min-width: 0; padding: 0 8px; align-items: center; justify-content: center; text-align: center; gap: 7px; min-height: 112px; }
  .sv-next .sv-hero-facts > a + a { padding-left: 8px; }
  .sv-next .sv-hero-facts span { font-size: 14px; line-height: 1.55; word-break: keep-all; text-wrap: balance; }
  .sv-next .sv-hero-facts strong { font-size: 20px; line-height: 1.45; white-space: normal; word-break: keep-all; text-wrap: balance; }
  .sv-next .sv-hero-facts small { font-size: 14px; line-height: 1.6; word-break: keep-all; text-wrap: balance; }
  .sv-next .sv-hero-facts i { font-size: 14px; margin-left: 3px; }
  .sv-next .sv-hours-notice { font-size: 14px; line-height: 1.75; text-align: center; margin-top: 13px; }

  .sv-next .mobile-dock { gap: 6px; padding-inline: 10px; }
  .sv-next .mobile-dock a { min-width: 0; min-height: 52px; display: flex; align-items: center; justify-content: center; padding: 10px 4px; font-size: 17px; font-weight: 700; white-space: nowrap; }
  .sv-next .mobile-dock .naver-action-green { flex: 1.25; }

  .sv-next .sv-eyebrow, .sv-next .section-label,
  .sv-next .sv-card-top > span, .sv-next .sv-digital-card span,
  .sv-next .care-path .path-number { font-size: 14px; }
  .sv-next .sv-section-description, .sv-next .sv-card-description,
  .sv-next .sv-card-link, .sv-next .sv-booking-band p:not(.sv-eyebrow),
  .sv-next .visit-updates p { font-size: 16px; line-height: 1.8; word-break: keep-all; }
  .sv-next .sv-concern { font-size: 15px; line-height: 1.7; }
  .sv-next .sv-digital-heading p, .sv-next .sv-digital-card p { font-size: 15px; line-height: 1.75; }
  .sv-next .sv-care-note { font-size: 14px; line-height: 1.8; word-break: keep-all; }
  .sv-next .sv-booking-phone span { font-size: 14px; }
  .sv-next .sv-booking-phone strong { font-size: 21px; }
  .sv-next .hours-list dt, .sv-next .hours-list dd { word-break: keep-all; }
  .sv-next .hours-list dt .sv-today-badge { font-size: 14px; }
  .sv-next .footer-top p { font-size: 16px; }
  .sv-next .footer-links, .sv-next .footer-links button { font-size: 15px; }
  .sv-next .footer-bottom { font-size: 14px; }
}

@media (max-width: 359px) {
  .sv-next .sv-hero-facts > a { padding-inline: 6px; }
  .sv-next .sv-hero-facts > a + a { padding-left: 6px; }
  .sv-next .sv-hero-facts strong { font-size: 18px; }
  .sv-next .hero-booking { gap: 12px; }
  .sv-next .hero-booking .secondary-link { font-size: 17px; }
  .sv-next .mobile-dock { gap: 4px; padding-inline: 6px; }
}
