/* ---------- RESPONSIVE (1920 / 1440 / 1024 / 768 / 480 / 360) ---------- */

@media (max-width: 1440px) {
  .container { max-width: 1040px; }
}

@media (max-width: 1024px) {
  .container { max-width: 100%; padding-inline: 20px; }
  .grid { grid-template-columns: repeat(2, 1fr); }
  .hero { padding: 90px 0 70px; }
}

@media (max-width: 768px) {
  .nav-links { display: none; }
  .nav-toggle { display: grid; place-items: center; }
  .navbar-inner.open .nav-links {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: var(--bg-elevated);
    border-bottom: 1px solid var(--border);
    padding: 16px 24px;
    gap: 14px;
  }
  .grid { grid-template-columns: 1fr; }
  .hero-stats { gap: 24px; }
  .footer-grid { flex-direction: column; }
  .download-meta { grid-template-columns: 1fr; }
  .requirement-row { grid-template-columns: 48px 1fr; }
  .requirement-row > strong { grid-column: 2; }
  section { padding: 60px 0; }
}

@media (max-width: 480px) {
  .container, .navbar-inner { padding-inline: 16px; }
  .hero { padding: 70px 0 50px; }
  .hero-actions { flex-direction: column; align-items: stretch; }
  .hero-actions .btn { width: 100%; }
  .auth-card { padding: 24px; }
  .card { padding: 20px; }
  .download-card { padding: 26px; }
  .requirements-body { padding: 20px; }
  .requirements-bar { padding-inline: 14px; }
}

@media (max-width: 360px) {
  .hero h1 { font-size: 1.8rem; }
  .brand span.brand-text { display: none; }
  .eyebrow { font-size: 0.72rem; padding: 5px 12px; }
}

/* Prevent any horizontal overflow globally */
html, body { overflow-x: hidden; width: 100%; }
img, svg, table { max-width: 100%; }
