.hero {
  position: relative;
  background: var(--color-navy-deep);
  color: var(--color-cream);
  overflow: hidden;
  padding-block: var(--space-2xl);
}

.hero .constellation {
  position: absolute;
  inset: 0;
  opacity: 0.5;
  pointer-events: none;
}

.hero .container {
  position: relative;
  z-index: 1;
  max-width: 720px;
}

.hero h1 {
  color: var(--color-cream);
  margin-bottom: var(--space-md);
}

.hero p.lead {
  font-size: 1.15rem;
  color: var(--color-text-muted-dark);
  max-width: 560px;
  margin-bottom: var(--space-lg);
}

.hero .hero-ctas {
  display: flex;
  gap: var(--space-sm);
  flex-wrap: wrap;
}

.teaser-row {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: var(--space-lg);
  align-items: center;
}

@media (max-width: 780px) {
  .teaser-row {
    grid-template-columns: 1fr;
  }
}

.video-teaser-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-md);
  margin-bottom: var(--space-lg);
}

@media (max-width: 900px) {
  .video-teaser-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 640px) {
  .video-teaser-grid {
    grid-template-columns: 1fr;
  }
}
