/* Typography Styles - Using Actual Oakie Fonts */
body {
  font-family: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Oxygen',
    'Ubuntu', 'Cantarell', 'Helvetica Neue', sans-serif;
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-normal);
  line-height: var(--line-height-normal);
  color: var(--color-text-primary);
  background-color: var(--color-bg-cream);
}

h1, h2, h3, h4, h5, h6 {
  font-weight: var(--font-weight-bold);
  color: var(--color-text-primary);
  margin-bottom: 0.5em;
}

h1, h2 {
  font-family: 'Recoleta', 'Georgia', 'Times New Roman', serif;
}

h1 {
  font-size: var(--font-size-h1);
  line-height: var(--line-height-tight);
  letter-spacing: -0.015em;      /* Tighter for "incised" feel */
  font-weight: 300;               /* Lighter = more refined/editorial */
  font-variant-numeric: lining-nums; /* Consistent figure height */
}

h2 {
  font-size: var(--font-size-h2);
  line-height: var(--line-height-snug);
  letter-spacing: -0.01em;
  font-weight: 300;               /* Lighter = authority, not heavy */
  font-variant-numeric: lining-nums;
}

h3 {
  font-size: var(--font-size-h3);
  line-height: var(--line-height-snug);
}

h4 {
  font-size: var(--font-size-h4);
  line-height: var(--line-height-snug);
}

p {
  margin-bottom: 1em;
  color: var(--color-text-secondary);
}

.text-large {
  font-size: var(--font-size-body-large);
  line-height: var(--line-height-relaxed);
}

.text-small {
  font-size: var(--font-size-small);
}

.text-bold {
  font-weight: var(--font-weight-bold);
}

.text-semibold {
  font-weight: var(--font-weight-semibold);
}

.text-medium {
  font-weight: var(--font-weight-medium);
}

.text-primary {
  color: var(--color-text-primary);
}

.text-secondary {
  color: var(--color-text-secondary);
}

.text-brand {
  color: var(--color-brand-primary);
}

.text-center {
  text-align: center;
}

.text-balance {
  text-wrap: balance;
}

/* Tabular Figures - "Data Integrity" for numbers */
.metric, .currency, .percentage, .data-value {
  font-variant-numeric: tabular-nums lining-nums;
  letter-spacing: -0.01em;
}

/* Optional: Dedicated monospace for pure data tables */
.data-table {
  font-family: 'Roboto', sans-serif;
  font-variant-numeric: tabular-nums;
}
