/* =============================================================================
   3. TYPOGRAPHY
   Base element styles only. Section headings set their own font-size from
   the token list above via a modifier class, since the approved design
   uses a distinct heading size per section rather than one shared H2 size.
   ============================================================================= */
/* Loads 3rd. Base type element styles. Depends on: tokens.css (font/size/weight vars). */
h1,
h2,
h3 {
  font-family: var(--font-heading);
  font-weight: var(--fw-semibold);
  letter-spacing: var(--ls-tight);
  color: var(--color-text-primary);
  margin: 0;
}

/* Every paragraph in the approved design sets its own line-height (1.6 for
   lead/body copy); this base rule carries that default so components only
   need to override font-size / max-width, not re-declare line-height. */
p {
  margin: 0;
  color: var(--color-text-secondary);
  line-height: var(--lh-body);
}

/* Monospace label used for eyebrows, stats, and system readouts. */
.text-mono-label {
  font-family: var(--font-mono);
  color: var(--color-text-tertiary);
}
