/* Loaded after page styles. Text grows without scaling photos, icons, or layout widths. */
.site-header .text-size-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 8px 13px;
  border: 1px solid #aab3c4;
  border-radius: 9px;
  background: #fff;
  color: #161b2b;
  font-family: inherit;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  white-space: nowrap;
}
.site-header .text-size-toggle:hover,
.site-header .text-size-toggle[aria-pressed="true"] { background: #f0f4ff; border-color: #2454ff; }
.site-header .text-size-toggle:focus-visible { outline: 3px solid #2454ff; outline-offset: 3px; }

html.care-large-text body { font-size: 21px; line-height: 1.7; }
html.care-large-text body.customer-surface,
html.care-large-text .support-shell { font-size: 21px; }
html.care-large-text .site-header nav,
html.care-large-text .site-header nav a,
html.care-large-text .site-header .text-size-toggle { font-size: 19px; }
html.care-large-text .site-header nav { flex-wrap: wrap; }
html.care-large-text .site-header nav a { min-width: 0; white-space: normal; overflow-wrap: anywhere; }
html.care-large-text .brand small { font-size: 15px; }

html.care-large-text main :is(p, li, dt, dd, label, summary, time),
html.care-large-text main :is(a, button, input, select, textarea) { font-size: 21px !important; }
html.care-large-text main :is(small, .eyebrow, .care-eyebrow, .required, .optional,
  .document-privacy, .support-help, .care-hero-note, .care-boundary-note,
  .care-coverage-note) { font-size: 17px !important; }
html.care-large-text main :is(.consumer-primary, .consumer-secondary, .button,
  .button-secondary, .care-secondary, .v3-submit, .v3-save-all,
  .support-shell button, .support-shell .button) { font-size: 21px !important; line-height: 1.5; white-space: normal; }
html.care-large-text main :is(.consumer-form .field input, .field select, .field textarea,
  .support-form input, .support-form select, .support-form textarea) { font-size: 21px !important; }
html.care-large-text main .checkbox,
html.care-large-text main .consumer-form .checkbox { font-size: 21px !important; }
html.care-large-text main :is(.consumer-form .field small, .field small, .help,
  .notice, .error, .form-error, .support-badge, .consumer-document-list small,
  .case-card small, .case-card-meta) { font-size: 17px !important; }

html.care-large-text main h1,
html.care-large-text main .care-hero h1,
html.care-large-text main .consumer-page-head h1,
html.care-large-text main .v3-flow .v3-flow-head h1,
html.care-large-text main .support-shell h1 { font-size: clamp(38px, 5vw, 54px); line-height: 1.3; }
html.care-large-text main .care-home .care-hero h1 { font-size: clamp(40px, 4.9vw, 70px); }
html.care-large-text main .care-home h2 { font-size: clamp(32px, 3.8vw, 40px); line-height: 1.4; }
html.care-large-text main :is(.consumer-section h2, .support-shell h2,
  .v3-flow h2, .panel h2) { font-size: 30px; line-height: 1.4; }
html.care-large-text main .care-process h3 { font-size: 27px; line-height: 1.4; }
html.care-large-text main .v3-steps span,
html.care-large-text main .v3-file-choice > span:last-of-type,
html.care-large-text main :is(.v3-queue-copy small, .v3-stored-copy small,
  .v3-confirm-list span) { font-size: 18px; }
html.care-large-text main :is(.v3-file-choice strong, .v3-queue-copy strong,
  .v3-stored-copy strong, .v3-confirm-list strong) { font-size: 23px; }
html.care-large-text main .v3-section-head > span { font-size: 19px; white-space: normal; }
html.care-large-text main .care-partner-copy > strong,
html.care-large-text main .care-process-top > span { font-size: 17px; }
html.care-large-text main .care-partner-title { font-size: 26px; }
html.care-large-text main :is(.care-partner-description, .care-partner-cta) { font-size: 20px; }
html.care-large-text main .care-hero-photo figcaption { font-size: 18px; }
html.care-large-text .footer,
html.care-large-text .footer nav a,
html.care-large-text .footer-brand span { font-size: 17px; }
html.care-large-text .help-widget :is(.help-widget-welcome p, .help-widget-questions button,
  .help-widget-answer p, .help-widget-answer a, .help-widget-contact a) { font-size: 19px; }
html.care-large-text .help-widget :is(.help-widget-contact p, .help-widget-bottom a,
  .help-widget-answer button) { font-size: 17px; }
html.care-large-text .help-widget-toggle { font-size: 18px; }

@media (max-width: 360px) {
  .site-header .text-size-toggle { padding-inline: 9px; }
  html.care-large-text .site-header nav,
  html.care-large-text .site-header nav a,
  html.care-large-text .site-header .text-size-toggle { font-size: 18px; }
  html.care-large-text main h1,
  html.care-large-text main .care-hero h1,
  html.care-large-text main .consumer-page-head h1 { font-size: 37px; }
  html.care-large-text main .care-home .care-hero h1 { font-size: 37px; }
}
