body {
  font-family: var(--font-body);
  font-size: var(--text-base);
  color: var(--color-dark);
}

h1, h2, h3, h4, h5, h6, .display-font {
  font-family: var(--font-display);
  font-weight: 900;
  line-height: 1.1;
  text-transform: uppercase;
}

.font-quote {
  font-family: var(--font-quote);
}

.text-caps {
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-caps);
}

.text-white { color: var(--color-white); }
.text-purple { color: var(--color-purple); }
.text-yellow { color: var(--color-yellow); }
.text-dark { color: var(--color-dark); }

.hero-title {
  font-size: var(--text-hero);
  color: var(--color-yellow);
}

.hero-subtitle {
  font-size: var(--text-xl);
  color: var(--color-white);
  font-family: var(--font-display);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-caps);
}

.section-title {
  font-size: var(--text-xl);
  margin-bottom: var(--space-md);
}

.section-title--white {
  color: var(--color-white);
}

.section-intro {
  font-family: var(--font-body);
  font-size: var(--text-md);
  line-height: 1.7;
  max-width: 800px;
  margin-top: 0;
  margin-bottom: var(--space-lg);
}

.section-label {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--text-sm);
  letter-spacing: var(--letter-spacing-caps);
  text-transform: uppercase;
}

.url-top, .cta-overline, .hero-overline {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--text-sm);
  letter-spacing: var(--letter-spacing-caps);
  margin-bottom: var(--space-sm);
}

blockquote {
  font-family: var(--font-quote);
  font-style: italic;
}
