.h-hero { font-size: var(--fs-hero); font-weight: 800; letter-spacing: -.02em; line-height: 1.06; }
.h1 { font-size: var(--fs-h1); font-weight: 700; letter-spacing: -.02em; }
.h2 { font-size: var(--fs-h2); font-weight: 700; letter-spacing: -.01em; }
.h3 { font-size: var(--fs-h3); font-weight: 600; }
.gold { color: var(--color-gold-primary); }
.accent { color: var(--service-accent); }
.muted { color: var(--color-text-secondary); }
.dim { color: var(--color-text-muted); }
.lead { font-size: 1.0625rem; color: var(--color-text-secondary); line-height: 1.65; max-width: 62ch; }
.small { font-size: var(--fs-sm); }
.xs { font-size: var(--fs-xs); }
.eyebrow {
  font-size: var(--fs-label); font-weight: 600; letter-spacing: .12em;
  text-transform: uppercase; color: var(--color-gold-primary);
}
.label {
  font-size: var(--fs-label); font-weight: 600; letter-spacing: .08em;
  text-transform: uppercase; color: var(--color-text-muted);
}
.num { font-family: var(--font-mono); font-variant-numeric: tabular-nums; letter-spacing: -.01em; }
.pos { color: var(--color-success); }
.neg { color: var(--color-danger); }
.warn { color: var(--color-warning); }
.info { color: var(--color-information); }
.strong { font-weight: 600; }
.center { text-align: center; }
.right { text-align: end; }
.nowrap { white-space: nowrap; }
.rich h3 { font-size: 1.0625rem; color: var(--color-gold-primary); margin: var(--sp-6) 0 var(--sp-2); }
.rich p { color: var(--color-text-secondary); margin-bottom: var(--sp-4); }
.rich p:last-child { margin-bottom: 0; }
