.hero {
  background:
    radial-gradient(circle at 12% 16%, rgba(12, 156, 124, 0.23), transparent 40%),
    radial-gradient(circle at 87% 80%, rgba(124, 58, 237, 0.18), transparent 44%),
    var(--obsidian);
}

.hero-wrap {
  padding: 4.5rem 0 4rem;
}

.eyebrow {
  margin-bottom: 0.9rem;
}

.hero h1 {
  color: var(--white);
  font-size: clamp(2rem, 5.1vw, 3.35rem);
  max-width: 24ch;
  margin-bottom: 1rem;
}

.hero p {
  font-size: clamp(1rem, 1.65vw, 1.18rem);
  max-width: 58ch;
  color: var(--platinum);
}

.diagram {
  background: var(--white);
  border: 1px solid var(--platinum);
  border-radius: 12px;
  padding: 1rem;
  margin-bottom: 1rem;
}

.diagram img {
  width: 100%;
  height: auto;
  border-radius: 8px;
  display: block;
}

.diagram figcaption {
  margin-top: 0.62rem;
  color: var(--graphite);
  font-size: 0.92rem;
}

@media (max-width: 640px) {
  .hero-wrap {
    padding: 3rem 0 2.75rem;
  }

  .hero h1 {
    max-width: none;
  }

  .diagram {
    padding: 0.8rem;
  }
}
