.hero-stage--family {
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  padding: 0;
  gap: 0;
  min-height: 560px;
  align-items: stretch;
  background: var(--surface-sunk, #eff1ee);
  border: 1px solid var(--rule, #e1e4e0);
}
.hero-stage--family::after { display: none; }
.hero-stage--family .hero-stage__copy {
  align-self: center;
  padding: clamp(1.5rem, 4vw, 3.25rem);
  gap: 1.5rem;
}
.alv-family-brand {
  width: 195px;
  padding: .25rem .5rem;
  border-radius: 10px;
  background: #f7f8f6;
  margin-bottom: .5rem;
}
.alv-family-brand img { display: block; width: 100%; height: auto; }
.hero-stage--family .hero-stage__title { font-size: clamp(3rem, 5.1vw, 5rem); line-height: 1.02; }
.hero-stage--family .hero-stage__lede { max-width: 33ch; }
.alv-family-photo { margin: 0; min-width: 0; min-height: 560px; position: relative; }
.alv-family-photo img { display: block; width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; object-position: center; }
@media (max-width: 900px) {
  .hero-stage--family { grid-template-columns: 1fr; min-height: 0; gap: 0; padding: 0; }
  .hero-stage--family .hero-stage__copy { padding: 2rem 1.5rem; }
  .hero-stage--family .hero-stage__title { font-size: clamp(3rem, 9vw, 4.4rem); }
  .alv-family-photo { min-height: 0; aspect-ratio: 3 / 2; }
}
