/* Homepage hero only: keep mobile actions in an explicit, usable stack. */
@media (max-width: 700px) {
  .page-home .r2-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .page-home .r2-hero-copy,
  .page-home .r2-hero-photo {
    min-width: 0;
  }

  /* Reserve the photo in normal flow: WebKit can collapse an aspect-ratio-only
     grid item when all its children are absolutely positioned. */
  .page-home .r2-hero-photo {
    width: 100%;
    height: auto;
    aspect-ratio: auto;
  }

  .page-home .r2-hero-photo::before {
    content: "";
    display: block;
    padding-top: 75.7575758%; /* Preserve the approved 1.32 crop ratio. */
  }

  .page-home .r2-hero-photo img {
    top: 0;
    left: 0;
  }

  .page-home .r2-hero .r2-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .page-home .r2-hero .r2-actions .r2-button {
    width: 100%;
    min-width: 0;
  }

  .page-home .r2-hero .r2-actions .r2-button span {
    flex-shrink: 0;
  }

  .page-home .r2-hero .r2-actions .r2-text-link {
    align-self: flex-start;
    max-width: 100%;
  }
}
