/* ============================================================
   GRS Security — Responsive Breakpoints
   1440 / 1200 / 992 / 768 / 576 / 375
   ============================================================ */

@media (max-width: 1440px) {
  :root { --container: 1140px; }
}

@media (max-width: 1200px) {
  :root { --container: 980px; --nav-h: 80px; }

  .nav-brand { display: none; }
  .nav-links a { padding: 0.5rem 0.5rem; font-size: 0.76rem; }
  .nav-cta .btn { padding: 0.7rem 0.95rem; font-size: 0.72rem; }
  .services-grid { grid-template-columns: repeat(2, 1fr); }
  .why-grid { grid-template-columns: repeat(2, 1fr); }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 2rem 1.5rem; }
  .services-gallery { grid-template-columns: repeat(2, 1fr); }
  .industry-grid { grid-template-columns: repeat(3, 1fr); }
  .hud-1, .radar, .shield-outline { opacity: 0.35; transform: scale(0.85); }
}

@media (max-width: 992px) {
  :root { --container: 720px; }

  .nav-links,
  .nav-cta { display: none; }

  .nav-toggle { display: grid; }

  .usp-bar,
  .pillar-bar,
  .hero-trust {
    grid-template-columns: repeat(2, 1fr);
  }

  .usp-item:nth-child(2),
  .pillar-item:nth-child(2) { border-right: none; }

  .split,
  .split.reverse,
  .mission-wrap,
  .solutions-layout,
  .command-grid,
  .founder-wrap,
  .contact-layout {
    grid-template-columns: 1fr;
  }

  .split.reverse .split-media { order: 0; }
  .media-frame img { min-height: 320px; }
  .tech-grid { grid-template-columns: repeat(2, 1fr); }
  .mission-points { grid-template-columns: 1fr 1fr; }

  .network {
    width: min(460px, 92vw);
    height: min(460px, 92vw);
  }

  .mobile-float-cta { display: inline-flex; }
}

@media (max-width: 768px) {
  :root { --container: 540px; }

  .container { width: min(100% - 1.5rem, var(--container)); }
  .section { padding: 3.75rem 0; }

  .hero {
    min-height: auto;
    padding: calc(var(--nav-h) + 1.5rem) 0 0;
  }

  .hero h1 { font-size: clamp(2.4rem, 12vw, 3.6rem); }
  .hero-content { padding-bottom: 3rem; }
  .hero-desc { font-size: 1rem; }

  .btn-group { flex-direction: column; align-items: stretch; }
  .btn-group .btn { width: 100%; }

  .services-grid,
  .tech-grid,
  .about-points,
  .mission-points {
    grid-template-columns: 1fr;
  }

  .industry-grid { grid-template-columns: repeat(2, 1fr); }
  .form-grid { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-bottom { flex-direction: column; text-align: center; }
  .hud-1, .hud-2, .radar, .shield-outline { display: none; }
  .command-stats { padding-top: 10rem; }
  .back-to-top { bottom: 4.5rem; }
}

@media (max-width: 576px) {
  :root { --nav-h: 72px; }

  .nav-logo img { width: 48px; height: 48px; }

  .usp-bar,
  .pillar-bar,
  .hero-trust,
  .why-grid,
  .services-gallery,
  .industry-grid {
    grid-template-columns: 1fr;
  }

  .usp-item,
  .pillar-item { border-right: none; border-bottom: 1px solid rgba(197, 160, 89, 0.12); }

  .trust-card,
  .service-card,
  .why-card { padding: 1.2rem; }

  .contact-form,
  .contact-card { padding: 1.35rem; }

  .gallery-card img { height: 240px; }
  .founder-photo img { width: min(240px, 78%); }
}

@media (max-width: 375px) {
  .container { width: min(100% - 1.1rem, 100%); }
  .hero-brand { letter-spacing: 0.16em; font-size: 0.68rem; }
  .btn { padding: 0.85rem 1.2rem; font-size: 0.8rem; }
  .mobile-float-cta { font-size: 0.76rem; padding: 0.75rem 1.1rem; }
}

@media (hover: none), (pointer: coarse) {
  body.has-custom-cursor { cursor: auto; }
  .cursor-dot,
  .cursor-ring { display: none !important; }
}
