.hero-programs {
  position: relative;
}
.hero-grid {
  align-items: center;
  gap: var(--space-10);
}
.hero-text {
  max-width: 40rem;
}
.hero-media {
  max-width: 32rem;
  margin-left: auto;
}
.hero-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
  margin-top: var(--space-4);
}
.hero-meta-text {
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
}
.section-overview {
  background: radial-gradient(circle at top, rgba(34, 197, 94, 0.12), transparent 55%);
}
.program-pillars .card {
  height: 100%;
}
.section-signature {
  background-color: var(--color-surface-alt);
}
.signature-card {
  height: 100%;
}
.program-intensity {
  margin-top: var(--space-3);
}
.section-personal-training {
  background: radial-gradient(circle at top left, rgba(59, 130, 246, 0.16), transparent 60%);
}
.personal-highlights {
  display: grid;
  gap: var(--space-4);
  margin-top: var(--space-4);
}
.personal-highlight h3 {
  font-size: var(--font-size-lg);
  margin-bottom: var(--space-1);
}
.personal-highlight p {
  font-size: var(--font-size-sm);
}
.section-performance {
  background-color: var(--color-surface-alt);
}
.performance-card {
  height: 100%;
}
.strength-media {
  margin-top: var(--space-4);
  border-radius: var(--radius-lg);
}
.section-mind-body {
  background: radial-gradient(circle at top, rgba(34, 197, 94, 0.18), transparent 60%);
}
.mind-body-list {
  margin-top: var(--space-4);
}
.section-age-groups {
  background-color: var(--color-surface-alt);
}
.age-card {
  height: 100%;
}
.age-media {
  margin-top: var(--space-4);
  border-radius: var(--radius-lg);
}
.section-virtual {
  background: radial-gradient(circle at top right, rgba(59, 130, 246, 0.2), transparent 55%);
}
.virtual-list {
  margin-bottom: var(--space-4);
}
.section-enrollment {
  background-color: var(--color-surface);
}
.enrollment-grid {
  display: grid;
  gap: var(--space-6);
}
.section-enrollment ol {
  margin-left: var(--space-5);
}
.section-enrollment li + li {
  margin-top: var(--space-2);
}
.section-enrollment a {
  font-size: var(--font-size-sm);
}
@media (max-width: 900px) {
  .hero-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .hero-media {
    max-width: none;
    margin-left: 0;
  }
  .personal-grid,
  .mind-body-grid,
  .virtual-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 640px) {
  .hero-meta {
    align-items: flex-start;
  }
  .enrollment-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
