/* Approved software/admin typography — 2026-11-01.
   Marketing typography and brand artwork are intentionally separate. */
:root {
  --rn-font-ui: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --rn-font-heading: "Montserrat", "Inter", sans-serif;
  --display: var(--rn-font-ui);
}
body { font-family: var(--rn-font-ui); font-weight: 400; }

/* Section headings are bold; page titles retain the lighter approved contrast.
   Important overrides are limited to type because legacy feature skins set type
   with ID selectors, shorthand declarations, and important rules. */
:root body :is(h2,h3,h4,.panelTitle,.modalTitle,.winTitle,.finPricingTitle,
  .onboardTitle,.csvDropTitle,.tourTitle,.custTitle,.secEmptyTitle,.refTitle,
  .pcSectionTitle,.faqTitle,.bh-tile-title,.lg-library-title,.lg-link) {
  font-family: var(--rn-font-heading) !important;
  font-weight: 700 !important;
  font-style: normal !important;
}
:root body :is(h1,.opGreeting,.dashGreeting,.brandTag,.bh-banner-label,
  .rp-slim-banner strong,.rn-affirmation-banner,.updates-empty>span) {
  font-family: var(--rn-font-ui) !important;
  font-weight: 500 !important;
  font-style: normal !important;
}
:root body :is(button,input,select,textarea,.btn,.navItem,.sbItem,.navLink,.tabItem) {
  font-family: var(--rn-font-ui) !important;
}
:root body :is(button,.btn,.navItem,.sbItem,.navLink,.tabItem) { font-weight: 500; }
:root body :is(.kpiValue,.finHeroNum,.statValue,.visualMetricValue,.calcRevealNum,
  .subPlanPrice,.kpi .val,.bh-income-value span,#hubIncome,.rp-big,
  .rp-secondary,.rp-comparison strong,.attention-card strong,.welcome-date strong) {
  font-family: var(--rn-font-ui) !important;
  font-weight: 700 !important;
  font-style: normal !important;
  font-variant-numeric: tabular-nums;
}
:root body :is(.lg-topic-cards strong,.lg-practice strong) {
  font-family: var(--rn-font-heading) !important;
  font-weight: 700 !important;
  font-style: normal !important;
}
