@font-face {
  font-family: "Inter";
  src: url("fonts/InterVariable.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

html, body {
  font-family: "Inter", "Segoe UI", system-ui, sans-serif;
  font-optical-sizing: auto;
  font-synthesis: none;
}
button, input, select, textarea { font-family: inherit; }

/* Keep the existing wordmark and orange identity while making the type calmer. */
#brand-title, .legal-brand {
  font-family: "Inter", "Segoe UI", system-ui, sans-serif;
  font-weight: 780;
  letter-spacing: -.045em;
}
.mobile-nav-item,
#quick-metrics button, #metric-button, #filter-shortcut,
#detail-summary-actions button, #detail-empty-search {
  font-weight: 650;
  letter-spacing: -.01em;
}
#quick-metrics button, #metric-button, #filter-shortcut { font-size: 12.5px; }
#search, .search-result-name { font-size: 13px; }

.assistant-welcome h1, #detail-empty h2 {
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 600;
  letter-spacing: -.025em;
  line-height: 1.14;
}
.assistant-welcome p, #detail-empty p { font-size: 14px; line-height: 1.55; }
.assistant-start-actions strong { font-size: 13px; font-weight: 650; }
.assistant-bubble { font-size: 14px; font-weight: 400; line-height: 1.55; }
.assistant-message.user .assistant-bubble { font-weight: 500; }
.assistant-suggestions button { padding: 7px 11px; font-size: 11.5px; font-weight: 600; }
.assistant-composer input { font-size: 14px; }
.assistant-composer button { font-size: 12px; font-weight: 700; }
.assistant-place-choices strong { font-size: 13px; font-weight: 650; }
.assistant-place-choices span { font-size: 11.5px; }

#detail h2 { font-weight: 700; letter-spacing: -.025em; }
#detail-sub, .selected-metric-label, .detail-empty-kicker { font-weight: 650; letter-spacing: .065em; }
.selected-metric-value { font-weight: 720; letter-spacing: -.035em; font-variant-numeric: tabular-nums; }
.detail-empty-steps { font-weight: 600; }
.metric-map-label span { font-size: 9px; font-weight: 650; line-height: 1.12; }
.metric-map-label strong { font-size: 10px; font-weight: 720; line-height: 1.12; font-variant-numeric: tabular-nums; }
#legend-title { font-weight: 700; }
.legend-row { font-size: 11.5px; }

/* Dense comparison and buyer figures should remain readable at a glance. */
.buyer-metric-add label { font-size: 11px; font-weight: 650; }
.buyer-metric-chip { font-size: 11.5px; font-weight: 650; }
.buyer-metric-table { font-size: 13px; }
.buyer-metric-table thead th, .buyer-metric-table tbody th { font-weight: 650; }
.buyer-metric-table thead th small { font-size: 10px; font-weight: 550; }
.buyer-metric-table td { font-weight: 700; font-variant-numeric: tabular-nums; }
.buyer-hub-place { font-weight: 700; }
.buyer-hub-level { font-size: 11px; font-weight: 600; }
.buyer-hub-stat span, .property-summary-grid > div > span { font-size: 11.5px; font-weight: 500; line-height: 1.35; }
.buyer-hub-stat strong, .property-summary-grid strong { font-weight: 700; font-variant-numeric: tabular-nums; }
.buyer-cost-breakdown, .property-result-note { font-size: 11px; line-height: 1.45; }
.property-form-head p, .property-section-head p, .property-input-label small { font-size: 11px; }
.property-input-label strong, .buyer-assumption-field { font-size: 11.5px; font-weight: 600; }
.investment-summary-grid span, .property-neighborhood-stat span { font-size: 11px; }
.amortization-table { font-size: 11.5px; }

.legal-back, .legal-action { font-weight: 650; }
.legal-kicker { font-weight: 700; }

@media (max-width: 860px) {
  .assistant-bubble { font-size: 13.5px; }
  .assistant-composer input { font-size: 14px; }
  .metric-map-label span { font-size: 8px; }
  .metric-map-label strong { font-size: 9.5px; }
  .mobile-nav-item { font-size: 11px; font-weight: 650; }
}
