/* type.css — Typography utilities */

.t-hero {
  font-family: var(--font-display);
  font-size: var(--type-hero);
  font-weight: 500;
  line-height: 0.9;
  letter-spacing: -0.04em;
  color: var(--paper);
}

.t-display {
  font-family: var(--font-display);
  font-size: var(--type-display);
  font-weight: 500;
  line-height: 0.95;
  letter-spacing: -0.03em;
}

.t-h2 {
  font-family: var(--font-display);
  font-size: var(--type-h2);
  font-weight: 600;
  line-height: 1.05;
  letter-spacing: -0.02em;
}

.t-h3 {
  font-family: var(--font-display);
  font-size: var(--type-h3);
  font-weight: 600;
  line-height: 1.2;
}

.t-body { font-family: var(--font-body); font-size: var(--type-body); line-height: 1.6; }

.t-lead {
  font-family: var(--font-body);
  font-size: 1.125rem;
  line-height: 1.55;
  max-width: 60ch;
}

.t-small { font-size: var(--type-small); color: var(--paper-dim); }

.t-mono {
  font-family: var(--font-mono);
  font-size: var(--type-micro);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--paper-dim);
}

.eyebrow {
  font-family: var(--font-mono);
  font-size: var(--type-micro);
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--paper-dim);
  display: inline-block;
  margin-bottom: var(--sp-6);
}

.eyebrow::before { content: '— '; }

.hl { color: var(--accent); }
.dim { color: var(--paper-dim); }
