/* ════════════════════════════════════════════════════════════
   EcoInvest Hub — BRAND FONTS (self-hosted)
   Montserrat (headings/titles/hooks) + Inter (body/UI), per the
   brand type system. Self-hosted variable fonts — NO external
   request, CSP-safe (no fonts.googleapis.com / fonts.gstatic.com).

   Requires the two font files in /fonts/ (shipped alongside):
     fonts/Montserrat-variable.ttf
     fonts/Inter-variable.ttf
   Licenses: fonts/Montserrat-OFL.txt, fonts/Inter-OFL.txt (SIL OFL 1.1).

   Link this AFTER every other stylesheet on the page (main.css,
   blog.css, post.css, portal-polish.css) — the body/heading rules
   below win by source order, not specificity. Paths below are
   relative to /css/ (../fonts/…) — adjust if your fonts live
   elsewhere.
   ════════════════════════════════════════════════════════════ */

@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-variable.ttf") format("truetype-variations");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("../fonts/Inter-variable.ttf") format("truetype-variations");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

/* Body / UI text → Inter */
body {
  font-family: "Inter", -apple-system, BlinkMacSystemFont,
               "Segoe UI", system-ui, sans-serif;
}

/* Headlines, titles, hooks, stats, eyebrows, brand wordmark → Montserrat */
h1, h2, h3, h4,
.sec-label, .hero-badge, .p-num,
.why-stat-num, .step-num, .svc-price,
.error-code,
.logo-text,
.portal-title,
.portal-eyebrow,
.portal-section-title,
.portal-track-eyebrow,
.portal-track-hero-stat,
.portal-track-tile-stat,
.valuation-card-title,
.telegram-card-title,
.portal-report-title,
.portal-login-title,
.track-call-asset,
.track-verify-handle,
.track-chart-endlabel,
.track-call-zone {
  font-family: "Montserrat", -apple-system, BlinkMacSystemFont,
               "SF Pro Display", "Segoe UI", system-ui, sans-serif;
}

/* Montserrat runs a touch wider than SF/Inter — nudge display tracking
   back so the heavy headings keep their tight, confident set. */
.portal-title,
.portal-track-hero-stat,
.track-call-asset { letter-spacing: -0.045em; }
