/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:1100px){
  .grid-4{grid-template-columns:repeat(2,1fr);}
  .grid-3{grid-template-columns:repeat(2,1fr);}
  .preview-grid{grid-template-columns:repeat(2,1fr);}
  .gallery-grid{grid-template-columns:repeat(3,1fr);}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .hero-grid{grid-template-columns:1fr;}
  .hero-visual{height:400px;order:-1;}
}

@media (max-width:900px){
  .nav-links{display:none;}
  .hamburger{display:flex;}
  .nav-cta > a.btn-primary{display:none;}
  .nav-links.mobile-open{
    display:flex;position:fixed;top:0;right:0;height:100vh;width:78%;max-width:340px;
    background:rgba(5,7,13,0.98);backdrop-filter:blur(20px);flex-direction:column;
    padding:100px 32px 40px;gap:26px;border-left:1px solid var(--border);z-index:1050;
    overflow-y:auto;
  }
  .nav-links.mobile-open a{font-size:1.05rem;}
  .nav-links.mobile-open .mobile-download-btn{
    display:inline-flex;margin-top:10px;width:100%;
  }
  .nav-overlay{
    display:none;position:fixed;inset:0;background:rgba(4,6,12,0.6);z-index:1040;
  }
  .nav-overlay.show{display:block;}
  .grid-3{grid-template-columns:1fr 1fr;}
  .gallery-grid{grid-template-columns:repeat(2,1fr);}
  section{padding:70px 0;}

  .hero-visual{display:none;}
}

@media (max-width:520px){
  .logo{font-size:1.1rem;}
  .logo-mark{width:30px;height:30px;}
  .site-header .container{padding:0 18px;}
}

@media (max-width:640px){
  .container{padding:0 20px;}
  .grid-4, .grid-3, .grid-2, .preview-grid{grid-template-columns:1fr;}
  .gallery-grid{grid-template-columns:1fr 1fr;}
  .footer-grid{grid-template-columns:1fr;gap:34px;}
  .hero{padding:140px 0 70px;}
  .hero-actions{flex-direction:column;align-items:stretch;}
  .hero-actions .btn{width:100%;}
  .trusted-row{flex-direction:column;align-items:flex-start;}
  .stat-cards{flex-direction:column;}
  .why-list .card{flex-direction:column;}
  .shortcuts-table{font-size:.85rem;}
  .shortcuts-table th,.shortcuts-table td{padding:12px 14px;}
  .t-step{gap:16px;}
  .t-num{width:44px;height:44px;font-size:1rem;}
}
