/* Ajustes responsivos mobile-first para tablets e desktops. */
@media (min-width: 720px) {
  .form-row,
  .contact-grid,
  .cta-panel,
  .footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .about-grid,
  .trust-grid,
  .case-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .service-grid,
  .differentials-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

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

@media (min-width: 980px) {
  .menu-toggle {
    display: none;
  }

  .nav-panel {
    position: static;
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    opacity: 1;
    pointer-events: auto;
    transform: none;
  }

  .nav-panel a {
    padding: 0.75rem 0.9rem;
  }

  .hero-grid,
  .contact-grid,
  .cta-panel {
    grid-template-columns: minmax(0, 1.05fr) minmax(420px, 0.95fr);
    align-items: center;
  }

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

  .service-grid,
  .differentials-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .tech-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

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

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

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

  .hero-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 479px) {
  .hero-copy h1 {
    font-size: 2.45rem;
  }

  .solution-grid {
    grid-template-columns: 1fr;
  }

  .hero-surface {
    min-height: 0;
  }

  .infra-panel {
    margin-top: 0;
  }

  .infra-grid {
    grid-template-columns: 1fr;
  }

  .badge-secondary {
    margin-top: -0.35rem;
  }

  .hero-metrics {
    margin-top: 1rem;
  }

  .floating-whatsapp {
    left: 1rem;
    right: 1rem;
  }
}
