/* Tablets down */
@media (max-width: 900px) {
  /* So the image doesn't dominate; still tall enough for copy */
  .hero-banner-container { min-height: clamp(560px, 78vh, 820px); } /* uses your existing container, overlay, etc. */
}

/* Phones */
@media (max-width: 640px) {
  /* .hero-banner-container { --hero-overlay: 0.62; } */

  /* Stop absolute centering from causing vertical clipping on short viewports:
     switch to normal flow with comfy padding. */

  /* .hero-banner-content { */
  /*   position: relative; */
  /*   top: auto; left: auto; transform: none; */
  /*   text-align: center; */
  /*   padding: 56px 16px 24px; */
  /* } */

  /* Headline & sub */
  .landing-intro h1 { font-size: clamp(1.85rem, 6.2vw, 2.25rem); line-height: 1.25; margin-bottom: 0.75rem; }
  .landing-intro h2 { font-size: clamp(1.05rem, 3.6vw, 1.25rem); line-height: 1.4; }
  .subtitle-container-new { max-width: 42ch; margin-inline: auto; }

  /* Eyebrow spacing a bit tighter on small screens */
  .landing-intro .eyebrow { margin-bottom: 1.2rem; }

  /* Stars ribbon: compact text & spacing */
  #abv-fold-stars .stars { font-size: 0.95rem; }
  #abv-fold-stars .stars span { font-size: 0.85rem; }

  /* CTA (your .hero-btn / .hero-banner-button) should be thumb-friendly */
  .hero-btn,
  .hero-banner-button {
    display: block;
    width: 90%;
    max-width: 520px;
    margin: 0.9rem auto 0;
    padding: 0.95rem 1.15rem;
    /* border-radius: 9999px; */
    font-size: 1rem;
  }

  /* Quotes: keep on one row but allow smooth horizontal scroll */
  .landing-review-quotes {
    gap: 1rem;
    /* padding-inline: 0.5rem; */
    /* overscroll-behavior-x: contain; */
    /* -webkit-overflow-scrolling: touch; */
  }
  .landing-review-quote-item { min-width: 200px; font-size: 0.82rem; }

  /* Decorative shapes — already toned down in your CSS; hide on very small */
  .intro-shapes { display: none; }
}

/* Very small phones */
@media (max-width: 420px) {
  .landing-intro h1 { font-size: clamp(1.7rem, 7vw, 2rem); }
  .landing-intro h2 { font-size: clamp(1rem, 3.8vw, 1.15rem); }
  .landing-review-quote-item { min-width: 180px; }
}

@media (max-width: 600px){
  .final-cta-container .disclaimer { margin-top: 0.5rem; }
}

@media (max-width: 600px) {
  .contact-form button,
  button.next-btn {
    font-size: clamp(1rem, 0.95rem + 0.6vw, 1.125rem);
    padding: 0.95rem 1.15rem;
    min-height: 44px;            /* a11y target */
    width: 100%;                 /* easier tap on phones */
    border-radius: 6px;
  }

  button.back-btn {
    font-size: 1rem;
    padding: 0.9rem 1rem;
    min-height: 44px;
    width: 100%;
    border-radius: 6px;
  }
}
