.hero {
  max-width: 83rem;
  margin-inline: auto;
  padding: var(--space-32) var(--space-6) var(--space-16);
}
.hero-grid {
  display: grid;
  align-items: center;
  gap: var(--space-12);
}
.hero-copy {
  display: grid;
  justify-items: start;
  gap: var(--space-8);
  min-width: 0;
}
.hero-badge {
  padding: var(--space-1) var(--space-3);
  border-radius: var(--radius-full);
  background: var(--action-primary);
  color: var(--ink-inverse);
  font-size: var(--text-xs);
  font-weight: var(--weight-bold);
  letter-spacing: 0.05em;
}
.hero-title {
  --c-heading-highlight: var(--action-primary);
  font: var(--weight-regular) var(--text-5xl)/1.1 var(--font-heading);
}
.hero-intro {
  max-width: 28rem;
  color: var(--ink-muted);
  font-size: var(--text-lg);
  font-weight: var(--weight-light);
  line-height: var(--leading-relaxed);
}
.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
}
.hero-proof {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  padding-top: var(--space-4);
}
.hero-members {
  display: flex;
  padding-left: var(--space-3);
  flex-shrink: 0;
}
.hero-avatar {
  width: 3rem;
  height: 3rem;
  object-fit: cover;
  border-radius: var(--radius-full);
  border: 4px solid var(--bg-page);
  margin-left: calc(-1 * var(--space-3));
}
.hero-proof_text {
  color: var(--ink-muted);
  font-size: var(--text-sm);
}
.hero-media {
  position: relative;
  min-width: 0;
  isolation: isolate;
}
.hero-decoration {
  position: absolute;
  inset: 1rem -0.5rem -1rem 0.5rem;
  z-index: var(--z-sink);
  background: var(--bg-brand-soft);
  border-radius: var(--radius-hero);
}
.hero[data-variant='home'] .hero-decoration {
  background: var(--bg-accent-soft);
}
.hero-frame {
  position: relative;
  overflow: hidden;
  border-radius: var(--radius-hero);
  background: var(--bg-sunken);
  box-shadow: var(--shadow-far);
}
.hero-image {
  width: 100%;
  height: 28rem;
  object-fit: cover;
}
.hero-caption {
  position: absolute;
  bottom: 1rem;
  left: 1rem;
  right: 1rem;
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-3);
  background: var(--bg-overlay);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-base);
}
.hero-symbol {
  display: flex;
  flex-shrink: 0;
  padding: var(--space-3);
  background: var(--action-primary);
  color: var(--ink-inverse);
  border-radius: var(--radius-md);
  font-size: var(--text-2xl);
}
.hero[data-variant='home'] .hero-symbol {
  background: var(--bg-accent);
}
.hero-caption_text {
  min-width: 0;
}
.hero-label {
  font-size: var(--text-xs);
  color: var(--ink-faint);
  letter-spacing: 0.05em;
}
.hero-value {
  font-size: var(--text-xl);
  font-weight: var(--weight-bold);
}
@media (min-width: 40rem) {
  .hero-title {
    font-size: var(--text-6xl);
  }
  .hero-image {
    height: 37.5rem;
  }
  .hero-caption {
    left: 2rem;
    right: auto;
    bottom: 2rem;
    max-width: 20rem;
    padding: var(--space-4);
    gap: var(--space-4);
  }
  .hero-value {
    font-size: var(--text-2xl);
  }
}
@media (min-width: 64rem) {
  .hero {
    padding-top: var(--space-40);
    padding-bottom: var(--space-24);
  }
  .hero-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-16);
  }
  .hero-title {
    font-size: var(--text-7xl);
  }
  .hero-intro {
    font-size: var(--text-xl);
  }
}
