/* ============================================================
   TETRA CON — Responsive Rules
   ============================================================ */

/* ---------- Laptop / small desktop ---------- */
@media (max-width: 1180px) {
  .card-grid { grid-template-columns: repeat(2, 1fr); }
  .product-grid { grid-template-columns: repeat(3, 1fr); }
  .industry-grid { grid-template-columns: repeat(3, 1fr); }
  .project-grid { grid-template-columns: repeat(2, 1fr); }
  .news-grid { grid-template-columns: repeat(2, 1fr); }
  .footer-grid { grid-template-columns: 1.4fr 1fr 1fr; row-gap: var(--space-8); }
}

/* ---------- Tablet ---------- */
@media (max-width: 960px) {
  .nav-links, .nav-cta .btn { display: none; }
  .nav-toggle { display: flex; }

  .split { grid-template-columns: 1fr; }
  .split-media { order: -1; max-width: 420px; margin-inline: auto; }

  .stat-grid { grid-template-columns: repeat(3, 1fr); }
  .stat-item:nth-child(4) { border-left: none; }

  .card-grid { grid-template-columns: 1fr 1fr; }
  .product-grid { grid-template-columns: repeat(2, 1fr); }
  .industry-grid { grid-template-columns: repeat(2, 1fr); }
  .project-grid { grid-template-columns: 1fr 1fr; }
  .news-grid { grid-template-columns: 1fr; }

  .contact-grid { grid-template-columns: 1fr; gap: var(--space-10); }

  .cta-banner { flex-direction: column; text-align: center; }

  .process-row { grid-template-columns: 60px 1fr; }
  .process-arrow { display: none; }
}

/* ---------- Mobile ---------- */
@media (max-width: 640px) {
  :root { --container-pad: 1.25rem; }

  .card-grid, .product-grid, .industry-grid, .project-grid, .grid-2, .grid-3, .grid-4 {
    grid-template-columns: 1fr;
  }
  .stat-grid { grid-template-columns: repeat(2, 1fr); }
  .stat-item:nth-child(3) { border-left: none; }
  .stat-item { padding: var(--space-6) var(--space-3); }

  .hero-actions { flex-direction: column; align-items: stretch; }
  .hero-actions .btn { justify-content: center; }
  .hero-watch { justify-content: center; }

  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-bottom { flex-direction: column; gap: var(--space-4); text-align: center; }

  .field-row { grid-template-columns: 1fr; }

  .cta-banner { padding: var(--space-8) var(--space-6); }

  .to-top { bottom: var(--space-4); right: var(--space-4); width: 42px; height: 42px; }

  .cursor-dot, .cursor-ring { display: none; }
}

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