/* Dial 4 Duct — balanced mobile hero for homepage + service/location pages.
   Desktop is intentionally untouched. */
@media (max-width: 640px) {
  body.mobile-home-hero-final .utility-bar,
  body.service-location-page-final .utility-bar {
    display: none !important;
  }

  body.mobile-home-hero-final .premium-nav-wrap,
  body.service-location-page-final .premium-nav-wrap {
    min-height: 64px !important;
    padding-top: 2px !important;
    padding-bottom: 2px !important;
  }
  body.mobile-home-hero-final .premium-brand,
  body.service-location-page-final .premium-brand {
    min-width: 92px !important;
    padding: 5px 9px !important;
  }
  body.mobile-home-hero-final .premium-brand img,
  body.service-location-page-final .premium-brand img {
    width: 94px !important;
    max-height: 42px !important;
  }

  body.mobile-home-hero-final .hero,
  body.service-location-page-final .hero {
    min-height: 0 !important;
    padding: 0 !important;
  }
  body.mobile-home-hero-final .hero-grid,
  body.service-location-page-final .hero-grid {
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
    gap: 0 !important;
    padding-top: 14px !important;
    padding-bottom: 22px !important;
  }
  body.mobile-home-hero-final .hero-copy,
  body.service-location-page-final .hero-copy {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
  }

  /* Homepage: keep the same trust elements, but place them where the eyebrow was. */
  body.mobile-home-hero-final .hero-copy {
    display: flex !important;
    flex-direction: column !important;
  }
  body.mobile-home-hero-final .hero-copy > .eyebrow {
    display: none !important;
  }
  body.mobile-home-hero-final .hero-copy > .hero-badges { order: 1 !important; }
  body.mobile-home-hero-final .hero-copy > h1 { order: 2 !important; }
  body.mobile-home-hero-final .hero-copy > .hero-text { order: 3 !important; }
  body.mobile-home-hero-final .hero-copy > .hero-actions { order: 4 !important; }
  body.mobile-home-hero-final .hero-copy > .hero-note { order: 5 !important; }

  /* Trust badges are deliberately stacked, readable, and not tiny. */
  body.mobile-home-hero-final .hero-copy > .hero-badges,
  body.service-location-page-final .hero-copy > .local-hero-trust {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    margin: 0 0 10px !important;
  }
  body.mobile-home-hero-final .hero-badges .rating-pill,
  body.mobile-home-hero-final .hero-badges .green-pill,
  body.service-location-page-final .local-hero-trust .rating-pill,
  body.service-location-page-final .local-hero-trust .green-pill {
    width: auto !important;
    min-height: 32px !important;
    margin: 0 !important;
    padding: 6px 11px !important;
    font-size: 12px !important;
    line-height: 1.1 !important;
    justify-content: flex-start !important;
  }
  body.mobile-home-hero-final .hero-badges .g-mark,
  body.service-location-page-final .local-hero-trust .g-mark {
    width: 18px !important;
    height: 18px !important;
    font-size: 10px !important;
  }
  body.mobile-home-hero-final .hero-badges .stars,
  body.service-location-page-final .local-hero-trust .stars {
    font-size: 10px !important;
  }

  /* Only a modest reduction from the original mobile hero typography. */
  body.mobile-home-hero-final .hero h1,
  body.service-location-page-final .hero h1 {
    max-width: 100% !important;
    margin: 0 0 9px !important;
    font-size: clamp(32px, 9.4vw, 39px) !important;
    line-height: 1.01 !important;
    letter-spacing: -.035em !important;
  }
  body.mobile-home-hero-final .hero-location,
  body.service-location-page-final .hero-location {
    display: block !important;
    margin-top: 3px !important;
    font-size: .56em !important;
    line-height: 1.05 !important;
  }
  body.mobile-home-hero-final .hero-text,
  body.service-location-page-final .hero-text {
    max-width: 100% !important;
    margin: 0 0 12px !important;
    font-size: 13.5px !important;
    line-height: 1.38 !important;
  }
  body.mobile-home-hero-final .hero-actions,
  body.service-location-page-final .hero-actions {
    margin: 0 !important;
    gap: 0 !important;
  }
  body.mobile-home-hero-final .hero-actions .btn-primary,
  body.service-location-page-final .hero-actions .btn-primary {
    min-height: 44px !important;
    padding: 10px 16px !important;
    font-size: 13.5px !important;
    line-height: 1 !important;
  }
  body.mobile-home-hero-final .hero-actions .hero-call-static,
  body.service-location-page-final .hero-actions .hero-call-static,
  body.mobile-home-hero-final .hero-note,
  body.service-location-page-final .hero-note {
    display: none !important;
  }

  /* Mobile uses the popup quote form. The large inline form starts below the fold on desktop only. */
  body.mobile-home-hero-final .hero-form-card,
  body.service-location-page-final .hero-form-card {
    display: none !important;
  }
  body.mobile-home-hero-final .hero-van,
  body.service-location-page-final .hero-van {
    display: none !important;
  }
}

@media (max-width: 350px) {
  body.mobile-home-hero-final .hero h1,
  body.service-location-page-final .hero h1 {
    font-size: 30px !important;
  }
  body.mobile-home-hero-final .hero-text,
  body.service-location-page-final .hero-text {
    font-size: 13px !important;
    line-height: 1.35 !important;
  }
}
