/* Reading comfort across the paired public sites and signed-in workspaces.
   Keep compact data labels intact; raise prose, guidance, navigation, and actions. */

body.md-public,
body.vora-public {
  font-size: 17px;
  line-height: 1.65;
  text-rendering: optimizeLegibility;
}

/* Shared public navigation and drawer. */
body.md-public .nav-primary-v3 a,
body.vora-public .nav-primary-v3 a,
body.md-public .nav-phone-v3,
body.vora-public .nav-phone-v3,
body.md-public .nav-signin-v3,
body.vora-public .nav-signin-v3,
body.md-public .nav-apply-v3,
body.vora-public .nav-apply-v3,
body.md-public .nav-burger,
body.vora-public .nav-burger { font-size: 14px; }

body.md-public .public-drawer-label,
body.vora-public .public-drawer-label { font-size: 13px; }
body.md-public .public-drawer-links a,
body.vora-public .public-drawer-links a { font-size: 16px; line-height: 1.45; }
body.md-public .public-drawer-cta,
body.vora-public .public-drawer-cta { font-size: 15px; }

/* MortgageDoor public reading copy. */
body.md-public :is(.feature-card p, .option-card p, .calcs-card p,
  .hl-card-desc, .hl-process-step p, .hl-faq-item > p,
  .mdr-home-faq details p) {
  font-size: 16px;
  line-height: 1.65;
  color: #52677C;
}
body.md-public .legal-container :is(p, li) { font-size: 17px; line-height: 1.75; }
body.md-public .legal-container :is(.legal-note, .legal-foot) { font-size: 15px; line-height: 1.65; }
body.md-public .footer-brand p { font-size: 15px; line-height: 1.65; color: #52677C; }
body.md-public .footer-col :is(h3, h4) { font-size: 13px; }
body.md-public .footer-col a { font-size: 15px; line-height: 1.5; }
body.md-public .footer-legal { font-size: 13px; line-height: 1.7; }
body.md-public .mdr-planner-controls label,
body.vora-public .mdr-planner-controls label { font-size: 14px; }

/* Rates and option comparisons: planning copy and rate disclosures. */
body.md-public .pm-site :is(.pm-goal-list p, .pm-process-list p,
  .pm-factor-list p, .pm-decision-grid > div:first-child > p:not(.pm-eyebrow)) {
  font-size: 16px;
  line-height: 1.65;
  color: #52677C;
}
body.md-public .pm-site :is(.pm-fine-print, .pm-scenario-note p,
  .pm-disclosure p, .pm-rate-program-head p) {
  font-size: 14px;
  line-height: 1.65;
  color: #52677C;
}
body.md-public .pm-site :is(.pm-button, .pm-text-link, .pm-row-action,
  .pm-check-list li) { font-size: 15px; }
body.md-public .pm-site :is(.pm-rate-time, .pm-rate-carousel-status,
  .pm-rate-option-name small) { font-size: 13px; color: #52677C; }
body.md-public .pm-site .pm-rate-option-card small { font-size: 12px; }
body.md-public .pm-site .pm-rate-option-name small { font-size: 13px; }
body.md-public .pm-site .pm-disclosure summary { font-size: 15px; }

/* Keep public and account-entry form labels legible, including on mobile. */
body.md-public .field label { font-size: 14px; }
body.md-public .field :is(input, select, textarea) { font-size: 16px; }

/* Shared payment and planning calculators. */
body.md-public .slider-row .slider-label,
body.vora-public .slider-row .slider-label { font-size: 15px; }
body.md-public .calc-field label,
body.md-public .calc-label,
body.vora-public .calc-field label,
body.vora-public .calc-label { font-size: 14px; color: #52677C; }
body.md-public .calc-form-h,
body.vora-public .calc-form-h { font-size: 13px; color: #52677C; }
body.md-public .calc-rate-context-copy b,
body.vora-public .calc-rate-context-copy b { font-size: 15px; }
body.md-public .calc-rate-context-copy span,
body.vora-public .calc-rate-context-copy span,
body.md-public .calc-result-band .rv-sub,
body.vora-public .calc-result-band .rv-sub { font-size: 14px; line-height: 1.55; color: #52677C; }
body.md-public .calc-rate-context-copy small,
body.vora-public .calc-rate-context-copy small { font-size: 13px; line-height: 1.55; color: #52677C; }
body.md-public .calc-rate-context > a,
body.vora-public .calc-rate-context > a { font-size: 14px; }
body.md-public .slider-bounds,
body.vora-public .slider-bounds { font-size: 13px; color: #52677C; }

/* VORA public forms, guides, and footer. */
body.vora-public .vre-calc-studio-intro > p { font-size: 17px; line-height: 1.65; }
body.vora-public .vre-calc-copy p { font-size: 16px; line-height: 1.65; }
body.vora-public .vre-calc-result p,
body.vora-public .vre-affordability-result > small { font-size: 13px; line-height: 1.6; }
body.vora-public .vre-lead-options b { font-size: 15px; }
body.vora-public .vre-eyebrow { font-size: 13px; }
body.vora-public :is(.vre-button, .vre-arrow-button, .vre-text-link) { font-size: 15px; }
body.vora-public :is(.vre-guide-hero > p:not(.vre-eyebrow),
  .vre-guide-lead, .vre-guide-grid p, .vre-guide-library aside) {
  font-size: 17px;
  line-height: 1.7;
  color: #52677C;
}
body.vora-public .vre-guide-hero > p:not(.vre-eyebrow) { font-size: 18px; }
body.vora-public .vre-guide-hero nav a,
body.vora-public .vre-guide-actions :is(a, button),
body.vora-public .vre-guide-cta .vre-button { font-size: 15px; }
body.vora-public .vre-guide-hero .vre-eyebrow,
body.vora-public .vre-guide-library .vre-eyebrow { font-size: 13px; }
body.vora-public .vre-lead-options small,
body.vora-public .vre-lead-step .vre-consent,
body.vora-public .vora-contact-form .vre-consent,
body.vora-public .vre-inquiry .vre-consent { font-size: 13.5px; line-height: 1.55; color: #52677C; }
body.vora-public .vre-lead-step > label,
body.vora-public .vre-lead-step > .vre-form-row label { font-size: 14px; }
body.vora-public :is(.vre-inquiry label, .vre-search-panel label,
  .vre-affordability-fields label, .vre-calc-fields label,
  .vora-contact-form .vre-form-row label) { font-size: 14px; color: #52677C; }
body.vora-public .public-footer-brand p { font-size: 15px; line-height: 1.65; color: #52677C; }
body.vora-public .public-footer strong { font-size: 13px; }
body.vora-public .public-footer :is(a, span) { font-size: 14px; line-height: 1.5; color: #52677C; }

/* MortgageDoor borrower portal: guidance and task descriptions. */
body.md-public .bd-shell { font-size: 16px; line-height: 1.6; }
body.md-public .bd-greet .bd-sub { font-size: 15px; color: #52677C; }
body.md-public .bd-next-title { font-size: 16px; }
body.md-public .bd-next-sub,
body.md-public .bd-loan-head .lh-sub,
body.md-public .bd-quote-empty .b,
body.md-public .bd-rates-top p,
body.md-public .bd-optin .txt span,
body.md-public .bd-empty-mini,
body.md-public .bd-dropzone span { font-size: 14px; line-height: 1.55; color: #52677C; }
body.md-public .bd-q-note,
body.md-public .bd-disc,
body.md-public .bd-item .it-main .b,
body.md-public .bd-doc-type small,
body.md-public .bd-doc-type-sub,
body.md-public .bd-upload-confirm p { font-size: 13px; line-height: 1.6; color: #52677C; }
body.md-public .bd-card-h h4 { font-size: 15px; }
body.md-public .bd-item { font-size: 14px; line-height: 1.5; }
body.md-public .bd-btn,
body.md-public .bd-btn-g,
body.md-public .bd-card-foot :is(a, button) { font-size: 14px; }
body.md-public .bd-price-inputs label,
body.md-public .bd-q-cell .l,
body.md-public .bd-doc-type-title,
body.md-public .bd-upload-loan span { font-size: 14px; color: #52677C; }
body.md-public .bd-price-inputs :is(input, select),
body.md-public .bd-upload-loan select { font-size: 15px; }
body.md-public .bd-price-go,
body.md-public .bd-price-mini,
body.md-public .bd-contact-btn,
body.md-public .bd-upload-submit { font-size: 14px; }
body.md-public .bd-price-prod > summary { font-size: 15px; }
body.md-public .bd-price-prod > summary .pc,
body.md-public .bd-prog-meta,
body.md-public .bd-quote-h .t,
body.md-public .bd-opts-h .t { font-size: 13px; color: #52677C; }
body.md-public .bd-price-tbl,
body.md-public .bd-opts table,
body.md-public .bd-rateboard table { font-size: 13.5px; }
body.md-public .bd-price-tbl th,
body.md-public .bd-opts th,
body.md-public .bd-rateboard th { font-size: 12px; }
body.md-public .bd-price-scroll,
body.md-public .bd-tablewrap,
body.md-public .bd-opts,
body.md-public .bd-rateboard { overflow-x: auto; }
body.md-public .bd-price-tbl { min-width: 540px; }

/* Borrower pricing workspace: raise guidance and controls, not the dense rate grid. */
body.md-public .bp-page { font-size: 16px; line-height: 1.55; }
body.md-public .bp-nav a { font-size: 14px; }
body.md-public .bp-nav-title span { font-size: 13px; color: #52677C; }
body.md-public .bp-breadcrumb,
body.md-public .bp-link { font-size: 14px; }
body.md-public .bp-card-head p,
body.md-public .bp-results-head p,
body.md-public .bp-select-copy,
body.md-public .bp-empty { font-size: 15px; line-height: 1.6; color: #52677C; }
body.md-public .bp-field label,
body.md-public .bp-assumption-label,
body.md-public .bp-radio-row label { font-size: 14px; color: #334B63; }
body.md-public .bp-field :is(input, select),
body.md-public .bp-assumptions select { font-size: 16px; }
body.md-public .bp-button,
body.md-public .bp-segments button { font-size: 14px; }
body.md-public .bp-status,
body.md-public .bp-saved-item span,
body.md-public .bp-alert span,
body.md-public .bp-analysis-note { font-size: 13px; line-height: 1.55; color: #52677C; }
body.md-public .bp-saved-item strong,
body.md-public .bp-alert strong { font-size: 14px; }
body.md-public .bp-product-title small,
body.md-public .bp-lender-line,
body.md-public .bp-adjustment-lender { font-size: 13px; color: #52677C; }
body.md-public .bp-calc-result span,
body.md-public .bp-calc-graphic h3,
body.md-public .bp-calc-bar-row,
body.md-public .bp-calc-bar-row strong { font-size: 13px; }
body.md-public .bp-calc-graphic p,
body.md-public .bp-disclosure { font-size: 13px; line-height: 1.65; color: #52677C; }

/* Borrower document flow: instructions and progress text, with compact pills intact. */
body.md-public .loan-banner p { font-size: 15px; line-height: 1.55; color: #fff; }
body.md-public .progress-step { font-size: 14px; line-height: 1.4; color: #52677C; }
body.md-public .drop-sub,
body.md-public .checklist-sub,
body.md-public .modal-body p.helper,
body.md-public .success-box p { font-size: 15px; line-height: 1.6; }
body.md-public .checklist-text span,
body.md-public .file-size { font-size: 14px; line-height: 1.5; color: #52677C; }
body.md-public .back-link,
body.md-public .doc-type,
body.md-public .drop-btn { font-size: 15px; }
body.md-public .request-list ul,
body.md-public .message-list ul { font-size: 15px; line-height: 1.7; }
body.md-public .secure-upload-shell .secure-upload-sub { font-size: 17px; }
body.md-public .secure-upload-shell .drop-sub,
body.md-public .secure-upload-shell .upload-note,
body.md-public .upload-modal-copy { font-size: 15px; line-height: 1.6; color: #52677C; }
body.md-public .secure-upload-shell .file-item,
body.md-public .secure-upload-shell .file-folder-select,
body.md-public .secure-upload-shell .upload-status { font-size: 14px; }
body.md-public .secure-upload-shell .file-size { font-size: 13px; color: #52677C; }
body.md-public .secure-upload-shell .upload-submit,
body.md-public .upload-modal-button { font-size: 15px; }

/* Mdash: keep table density, but make messages and guidance easy to scan. */
#appBody { font-size: 14px; line-height: 1.55; }
#appBody .sidebar.sidebar-narrow .nav-item .lbl,
#appBody .sidebar.sidebar-narrow .nav-group summary .lbl { font-size: 13px; }
#appBody .md-home-shortcut-copy strong { font-size: 13px; }
#appBody .md-home-shortcut-copy span,
#appBody .md-home-notification-copy span { font-size: 13px; color: #52677C; }
#appBody .md-home-notification-copy strong { font-size: 13px; }
#appBody .md-home-lead-person strong,
#appBody .md-home-lead-source strong,
#appBody .md-home-activity-message { font-size: 13px; }
#appBody .md-home-lead-person > div > span,
#appBody .md-home-lead-source,
#appBody .md-home-lead-time { font-size: 13px; color: #52677C; }
#appBody .md-home-mini-btn { font-size: 13px; }
#appBody .md-home-limit { font-size: 13px; line-height: 1.5; }
#appBody :is(.md-home-empty, .rk-empty p, .rk-empty-mini, .nbell-empty,
  .notif-empty, .cmp-empty, .ix-empty, .vb-empty) { font-size: 14px; line-height: 1.6; color: #52677C; }
#appBody :is(.cmp-help, .bot-help, .help) { font-size: 13px; line-height: 1.55; color: #52677C; }
#appBody .nbell-row-meta,
#appBody .notif-sub { font-size: 13px; color: #52677C; }
#appBody .lead-search input,
#appBody .lead-table-toolbar select,
#appBody .lead-status-select { font-size: 14px; }
#appBody .lead-table-toolbar .lead-result-count,
#appBody .lead-pagination,
#appBody .lead-meta { font-size: 13px; color: #52677C; }

/* Partner workspace: readable form guidance and actions; referral table stays dense. */
body.partner-portal { font-size: 16px; line-height: 1.6; }
body.partner-portal .p-form label { font-size: 14px; color: #52677C; }
body.partner-portal .p-form :is(input, select, textarea) { font-size: 16px; }
body.partner-portal .p-side-role,
body.partner-portal .p-side-stat .k,
body.partner-portal .p-side-h,
body.partner-portal .p-tile .lbl,
body.partner-portal .p-tile .sub { font-size: 13px; color: #52677C; }
body.partner-portal .p-side-url :is(input, button) { font-size: 13px; }
body.partner-portal .p-side-nav a,
body.partner-portal .p-side-cta,
body.partner-portal .p-copy :is(button, a) { font-size: 14px; }
body.partner-portal .p-card p { font-size: 16px; line-height: 1.6; }
body.partner-portal .p-err,
body.partner-portal .p-ok { font-size: 14px; line-height: 1.55; }
body.partner-portal .p-footer { font-size: 13px; }
