/* Balanced desktop hero: copy, portrait and form share the available width. */
@media (min-width: 901px) {
  .hero {
    min-height: 680px;
    padding-top: 64px;
  }

  .hero-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(24px, 3vw, 44px);
    min-height: 616px;
  }

  .hero-grid > * {
    min-width: 0;
    width: 100%;
  }

  .hero h1 {
    font-size: clamp(2.45rem, 3vw, 3.65rem);
    line-height: 1.28;
    margin-bottom: 20px;
  }

  .hero .lead {
    max-width: 100%;
    font-size: clamp(1rem, 1.2vw, 1.12rem);
    line-height: 2;
  }

  .hero .eyebrow {
    font-size: .86rem;
  }

  .hero .trust {
    gap: 8px;
    margin-top: 20px;
  }

  .hero .trust span {
    padding: 6px 11px;
    font-size: .82rem;
  }

  .hero-person {
    align-self: center;
    justify-self: center;
    margin: 0;
    max-width: 390px;
    transform: translateY(-34px);
  }

  .lead-card {
    justify-self: stretch;
    max-width: 380px;
    padding: 27px;
  }

  .lead-card h2 {
    font-size: 1.38rem;
  }
}

@media (min-width: 901px) and (max-width: 1100px) {
  .hero-grid {
    gap: 20px;
  }

  .hero h1 {
    font-size: 2.35rem;
  }

  .hero-person {
    max-width: 330px;
    transform: translateY(-22px);
  }

  .lead-card {
    padding: 22px;
  }
}
