/* Keep the complete introduction in the first mobile viewport.
   Natural content height still allows scrolling with enlarged text. */
@media (max-width: 720px) {
  .home-hero,
  .hero .hero-grid.container {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    min-height: 100vh;
    min-height: 100svh;
    padding: 0;
    gap: 0;
  }

  .home-hero-photo,
  .hero .hero-visual {
    position: relative;
    inset: auto;
    flex: 1 0 180px;
    width: 100%;
    max-width: none;
    height: auto;
    min-height: 180px;
    margin: 0;
    padding: 0;
  }

  .home-hero-photo img,
  .hero .hero-photo {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    aspect-ratio: auto;
  }

  .home-hero-photo img,
  .hero .hero-photo img {
    object-fit: cover;
    object-position: center 35%;
  }

  .home-hero-inner.container {
    width: 100%;
    padding: 16px 20px max(20px, env(safe-area-inset-bottom));
    flex: 0 0 auto;
  }

  .home-hero-copy { max-width: 560px; backdrop-filter: none; }
  .hero .hero-copy {
    flex: 0 0 auto;
    width: 100%;
    padding: 14px 20px max(16px, env(safe-area-inset-bottom));
  }

  .home-hero .eyebrow,
  .hero .eyebrow { margin: 0 0 10px; font-size: 9px; line-height: 1.4; }

  .home-hero .display,
  .hero h1 {
    --h1-size: clamp(26px, 7.2vw, 32px);
    line-height: 1.12;
    letter-spacing: -.025em;
    margin: 0;
  }

  .home-hero .lead,
  .hero .hero-lead {
    margin: 12px 0 16px;
    font-size: 14px;
    line-height: 1.5;
  }

  .home-hero .btn,
  .hero .hero-copy .button {
    display: flex;
    justify-content: center;
    width: 100%;
    min-height: 48px;
    margin: 0;
    padding: 12px 14px;
    font-size: 13px;
    line-height: 1.35;
    gap: 8px;
  }

  .hero .hero-note { margin: 8px 0 0; font-size: 11px; line-height: 1.4; }
  .hero .hero-note br { display: none; }
  .hero-brand-row { min-height: 66px; }
  .hero-logo img { width: 150px; }
  .hero .hero-brand { top: 16px; left: 20px; width: 140px; }
}

@media (max-width: 720px) and (max-height: 600px) {
  .home-hero-photo,
  .hero .hero-visual { flex-basis: 140px; min-height: 140px; }
  .home-hero .lead,
  .hero .hero-lead { font-size: 13px; margin-block: 10px 12px; }
}
