/* TYPOGRAPHY — three families, each with one job.
   Display = Cormorant Garamond (the brand voice, echoes the logo serif)
   UI/body = Archivo
   Data    = Spline Sans Mono (prices, sqft, commute minutes — credibility) */
:root {
  --font-display: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
  --font-ui: 'Archivo', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-mono: 'Spline Sans Mono', ui-monospace, 'SFMono-Regular', Menlo, monospace;

  /* Weights */
  --fw-regular: 400; /* @kind font */
  --fw-medium: 500; /* @kind font */
  --fw-semibold: 600; /* @kind font */
  --fw-bold: 700; /* @kind font */

  /* Display scale (Cormorant) — set large; it runs small visually */
  --text-display-xl: 74px;   /* hero */
  --text-display-lg: 50px;   /* page title */
  --text-display-md: 34px;   /* section / card title */
  --text-display-sm: 27px;   /* sub-title */

  /* UI / body scale (Archivo) */
  --text-body-lg: 16px;
  --text-body: 14px;
  --text-body-sm: 13px;
  --text-caption: 12px;

  /* Mono / label scale (Spline Sans Mono) */
  --text-mono: 13px;
  --text-mono-sm: 12px;
  --text-label: 11px;        /* uppercase tracked labels */

  /* Line heights */
  --lh-tight: 1.02; /* @kind font */
  --lh-snug: 1.2; /* @kind font */
  --lh-body: 1.6; /* @kind font */

  /* Tracking */
  --tracking-label: 0.12em;  /* uppercase mono labels */
  --tracking-wordmark: 0.06em;
  --tracking-boulder: 0.42em; /* the "BOULDER" sub-lockup */
}

/* Convenience role classes (optional; tokens are the source of truth) */
.tnb-display { font-family: var(--font-display); font-weight: var(--fw-semibold); line-height: var(--lh-tight); letter-spacing: -0.005em; color: var(--color-text-strong); }
.tnb-display-italic { font-family: var(--font-display); font-style: italic; font-weight: var(--fw-medium); }
.tnb-body { font-family: var(--font-ui); font-size: var(--text-body); line-height: var(--lh-body); color: var(--color-text); }
.tnb-label { font-family: var(--font-mono); font-size: var(--text-label); letter-spacing: var(--tracking-label); text-transform: uppercase; }
.tnb-data { font-family: var(--font-mono); color: var(--color-data); }
