/* ==========================================================================
   ON STRATEGY PRO — Responsive
   Breakpoints: 1180 · 980 · 760 · 560
   ========================================================================== */

@media (max-width: 1180px) {
  .header__nav {
    gap: 1rem;
  }

  .locale-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .locale__desc {
    font-size: 0.75rem;
  }

  .contact__inner {
    grid-template-columns: minmax(0, 1fr);
  }

  .contact__aside {
    max-width: 640px;
  }
}

@media (max-width: 980px) {
  :root {
    --header-h: 66px;
  }

  /* Navegacion pasa al menu movil */
  .header__nav {
    display: none;
  }

  .burger {
    display: block;
  }

  .header__cta {
    display: none;
  }

  .cursor {
    display: none;
  }

  .section__head {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.25rem;
    align-items: start;
  }

  /* Soluciones, mercados y planes: columna completa (sin carrusel) */
  .hero__layout {
    grid-template-columns: minmax(0, 1fr);
    justify-items: start;
  }

  .hero__map {
    order: -1;
    justify-self: center;
    width: min(100%, 360px);
    margin-bottom: 0.5rem;
  }

  .tools__icons {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .tools__stats,
  .tools__media,
  .tools__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .solutions__grid,
  .markets__grid,
  .plans__grid,
  .focus__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1.15rem;
    margin-inline: 0;
    padding-inline: 0;
    padding-block: 0;
    overflow: visible;
  }

  .solution__title {
    max-width: none;
  }

  .market {
    min-height: 0;
  }

  .plan--top {
    padding-block: clamp(1.75rem, 3vw, 2.5rem);
    box-shadow: 0 18px 40px rgba(255, 210, 0, 0.22);
  }

  .focus__grid {
    gap: 2.25rem;
  }

  .focus__bar {
    max-width: none;
  }

  .bento__grid {
    display: none;
  }

  .locale-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .locale,
  .locale--eau {
    min-height: 360px;
  }

  .locale__desc {
    max-width: none;
  }

  .step-zero__panel {
    grid-template-columns: minmax(0, 1fr);
  }

  .step-zero__who {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1.5rem;
    padding-left: 0;
    padding-top: 1.75rem;
    border-left: 0;
    border-top: 1px solid var(--c-line);
  }

  .footer__inner {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .footer__brand {
    grid-column: span 2;
  }
}

@media (max-width: 760px) {
  .hero {
    min-height: auto;
    padding-block: calc(var(--header-h) + 3.5rem) 5.5rem;
  }

  /* En pantallas estrechas el eco de una linea invade la siguiente */
  .hero__echo {
    display: none;
  }

  .hero__scroll {
    display: none;
  }

  .hero__actions .btn {
    flex: 1 1 100%;
  }

  .about__statement {
    max-width: none;
  }

  .proof__panels {
    grid-template-columns: minmax(0, 1fr);
  }

  .proof__panel {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem;
  }

  .form__row {
    grid-template-columns: minmax(0, 1fr);
  }

  .coverflow__stage {
    height: clamp(300px, 76vw, 380px);
  }

  /* En columna el boton flotante estorba abajo, no a la derecha */
  .footer__bottom {
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    padding-right: 0;
    padding-bottom: 5.5rem;
  }

  .footer__megaweb {
    margin-top: 0.35rem;
  }
}

@media (max-width: 560px) {
  :root {
    --radius-lg: 18px;
    --radius-xl: 22px;
  }

  .header__brand img {
    width: 116px;
  }

  .bento__grid {
    display: none;
  }

  .locale-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .locale,
  .locale--eau {
    min-height: 340px;
  }

  .tools__icons,
  .tools__stats,
  .tools__media,
  .tools__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .tools__media .tools__clip {
    aspect-ratio: 16 / 10;
  }

  .proof__chips {
    justify-content: flex-start;
    flex-wrap: nowrap;
    overflow-x: auto;
    margin-inline: calc(var(--gutter) * -1);
    padding-inline: var(--gutter);
    scrollbar-width: none;
  }

  .proof__chips::-webkit-scrollbar {
    display: none;
  }

  .footer__inner {
    grid-template-columns: minmax(0, 1fr);
  }

  .footer__brand {
    grid-column: span 1;
  }

  .wa-float {
    width: 50px;
    height: 50px;
  }

  .wa-float svg {
    width: 26px;
    height: 26px;
  }
}

/* Pantallas anchas */
@media (min-width: 1600px) {
  :root {
    --shell: 1440px;
  }
}

/* Dispositivos tactiles: sin cursor personalizado ni hovers pesados */
@media (hover: none) {
  .cursor {
    display: none;
  }

  .card--glow::before {
    display: none;
  }
}
