/* ==========================================================================
   Tablet: 768px and up
   ========================================================================== */

@media (min-width: 768px) {
  .hero__ctas,
  .cta-banner__ctas {
    flex-wrap: nowrap;
  }

  .benefits-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .steps {
    grid-template-columns: repeat(2, 1fr);
  }

  .usecase-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .expect-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .form-row--2col {
    grid-template-columns: 1fr 1fr;
  }

  .footer-grid {
    grid-template-columns: 1.4fr 1fr 1fr 1fr;
  }
}

/* ==========================================================================
   Desktop: 1024px and up
   ========================================================================== */

@media (min-width: 1024px) {
  .main-nav {
    display: block;
  }

  .header-actions .btn-secondary {
    display: inline-flex;
  }

  .hamburger,
  .mobile-nav {
    display: none;
  }

  .hero__grid {
    grid-template-columns: 1.05fr 0.95fr;
    column-gap: 5rem;
  }

  .trust-strip__grid {
    grid-template-columns: repeat(5, 1fr);
  }

  .benefits-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .steps {
    grid-template-columns: repeat(4, 1fr);
  }

  .preferences {
    grid-template-columns: 1.3fr 1fr;
  }

  .usecase-grid {
    grid-template-columns: repeat(4, 1fr);
  }

  .recurring__features {
    grid-template-columns: repeat(2, 1fr);
  }

  .expect-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .contact-grid {
    grid-template-columns: 1.4fr 1fr;
  }

  .mobile-cta-bar {
    display: none;
  }

  .floating-whatsapp__label {
    display: inline;
  }

  .category-scroller {
    overflow-x: visible;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
  }

  .category-card {
    flex: 1 1 calc(25% - var(--space-md));
  }

  .logo-ribbon__grid {
    overflow-x: visible;
    justify-content: center;
  }

  .logo-card {
    min-width: 0;
  }

  .scroll-fade::after {
    display: none;
  }
}

/* ==========================================================================
   Hero visual: mobile/tablet overlay adjustments
   ========================================================================== */

@media (max-width: 1023px) {
  .hero__overlay-card {
    width: min(300px, 88%);
  }

  .hero__overlay-list {
    display: none;
  }
}

@media (max-width: 767px) {
  .hero__ctas .btn {
    width: 100%;
  }

  .hero__ctas .btn-whatsapp {
    order: -1;
  }
}

/* ==========================================================================
   Small mobile refinements
   ========================================================================== */

@media (max-width: 480px) {
  .recurring__features {
    grid-template-columns: 1fr;
  }

  .announcement-bar__variant--full {
    display: none;
  }

  .announcement-bar__variant--short {
    display: inline;
  }
}

/* ==========================================================================
   Avoid horizontal overflow
   ========================================================================== */

html, body {
  overflow-x: hidden;
}
