/*
  REVALYTICS — TYPOGRAPHY SYSTEM
  All text utility classes. Use these rather than inline font styles.
*/

.rev-display,
.rev-h0 {
  font-family: var(--rev-font-sans);
  font-size: clamp(48px, 6vw, 80px);
  font-weight: var(--rev-weight-medium);
  line-height: var(--rev-leading-tight);
  letter-spacing: -0.01em;
  color: var(--rev-text);
}

.rev-h1 {
  font-size: var(--rev-text-6xl);
  font-weight: var(--rev-weight-medium);
  line-height: var(--rev-leading-tight);
  color: var(--rev-text);
  letter-spacing: -0.01em;
}

.rev-h2 {
  font-size: var(--rev-text-4xl);
  font-weight: var(--rev-weight-medium);
  line-height: var(--rev-leading-tight);
  color: var(--rev-text);
}

.rev-h3 {
  font-size: var(--rev-text-2xl);
  font-weight: var(--rev-weight-medium);
  line-height: var(--rev-leading-tight);
  color: var(--rev-text);
}

.rev-h4 {
  font-size: var(--rev-text-lg);
  font-weight: var(--rev-weight-medium);
  line-height: var(--rev-leading-tight);
}

.rev-eyebrow {
  font-size: var(--rev-text-sm);
  font-weight: var(--rev-weight-bold);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--rev-blue);
}

.rev-hero-shout {
  font-size: clamp(48px, 6.5vw, 96px);
  font-weight: var(--rev-weight-medium);
  line-height: 1.05;
  color: var(--rev-text-on-dark);
  letter-spacing: -0.01em;
}

.rev-hero-support {
  font-size: var(--rev-text-2xl);
  line-height: var(--rev-leading-snug);
  font-weight: var(--rev-weight-regular);
  color: var(--rev-text-on-dark-muted);
}

.rev-body {
  font-size: var(--rev-text-base);
  line-height: var(--rev-leading-snug);
  color: var(--rev-text-body);
}

.rev-body-lg {
  font-size: var(--rev-text-2xl);
  line-height: var(--rev-leading-snug);
  color: var(--rev-text-body);
}

.rev-stat {
  font-size: var(--rev-text-5xl);
  font-weight: var(--rev-weight-medium);
  line-height: var(--rev-leading-tight);
  color: var(--rev-text);
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.01em;
}

.rev-stat-sm {
  font-size: var(--rev-text-3xl);
  font-weight: var(--rev-weight-medium);
  font-variant-numeric: tabular-nums;
  color: var(--rev-text);
}

.rev-stat-xl {
  font-size: 70px;
  font-weight: var(--rev-weight-medium);
  font-variant-numeric: tabular-nums;
  color: var(--rev-blue);
}

.rev-label {
  font-size: var(--rev-text-md);
  font-weight: var(--rev-weight-medium);
  color: var(--rev-text-muted);
  line-height: var(--rev-leading-tight);
}

.rev-meta {
  font-size: var(--rev-text-sm);
  font-weight: var(--rev-weight-medium);
  color: var(--rev-text-muted);
}

.rev-link {
  color: var(--rev-blue);
  text-decoration: none;
  transition: color var(--rev-dur) var(--rev-ease);
}

.rev-link:hover {
  color: var(--rev-navy-400);
}

.rev-quote {
  font-style: italic;
  font-weight: var(--rev-weight-medium);
  font-size: var(--rev-text-2xl);
  color: var(--rev-white);
  line-height: var(--rev-leading-snug);
}
