/* Home hero only: preserve the approved desktop layout. */
@media (max-width: 900px) {
  .home-page .site-header {
    grid-template-columns: minmax(0, 1fr) !important;
    column-gap: 0;
  }
  .home-page .site-header .nav {
    display: flex !important;
    position: static !important;
    width: 100% !important;
    min-width: 0;
    transform: none !important;
    justify-self: stretch !important;
    align-items: center;
    gap: clamp(12px, 4vw, 28px) !important;
    flex-wrap: wrap;
  }
  .home-page .site-header .nav a {
    min-height: 44px;
    white-space: nowrap;
  }
  .home-page .hero-v2 {
    /* svh keeps the CTA above browser chrome; short screens can scroll. */
    min-height: max(100svh, 560px, calc(392px + 42vw)) !important;
  }
  .home-page .hero-v2-inner {
    top: calc(56% - 56px) !important;
  }
  .home-page .hero-logo {
    /* Add 12px of breathing room on each side of the existing logo. */
    width: calc(86vw - 24px) !important;
    max-width: 100%;
  }
  .home-page .hero-statement {
    line-height: 1.06 !important;
  }
  .home-page .hero-bottomline {
    bottom: calc(42px + env(safe-area-inset-bottom, 0px)) !important;
  }
  .home-page .hero-bottomline a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
  }

  /* Keep the service list compact on touch screens. Each row still has a
     generous visual preview, but no longer leaves a full-screen gap. */
  .home-page .services-v3-head { margin-bottom: 38px !important; }
  .home-page .service-row-v59 {
    padding-top: 18px !important;
    padding-bottom: 18px !important;
  }
  .home-page .service-row-v59.is-active,
  .home-page .service-row-v59:hover,
  .home-page .service-row-v59:focus-visible {
    padding: 18px 14px !important;
  }
  .home-page .service-row-v59::after {
    height: clamp(170px, 54vw, 260px) !important;
    margin-top: 12px !important;
  }

  /* Prevent long client names and contact details from creating horizontal
     overflow on narrow Safari viewports. */
  .home-page .client-marquee { width: 100%; max-width: 100%; }
  .home-page .client-track { max-width: none; }
  .home-page .contact-email-copy { overflow-wrap: anywhere; word-break: break-word; }
  .home-page .final-cta-v9,
  .home-page .footer,
  .home-page .footer-main { overflow-x: hidden; }

  /* A monochrome arrow is consistent with the rest of the interface and
     avoids platform emoji rendering. */
  .home-page .case-hover-cta b,
  .home-page .all-works span,
  .home-page .service-row-v59 > b,
  .home-page .final-actions a,
  .home-page .contact-social-secondary a { font-variant-emoji: text; }
}

/* release-v135-cache-refresh */

/* release-v136-standard-static-route */

/* release 138: validated standalone stylesheet */
