/* ==========================================================================
   JUST DROP LTD — responsive rules (mobile-first adjustments)
   ========================================================================== */

@media (max-width:1080px){
  .grid-4{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:repeat(3,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr;gap:34px}
}

@media (max-width:992px){
  .nav{
    position:fixed;inset:0 0 0 auto;width:min(320px,86vw);background:#fff;
    flex-direction:column;align-items:stretch;gap:2px;padding:86px 20px 30px;
    transform:translateX(100%);transition:transform .25s ease;
    box-shadow:-10px 0 40px rgba(11,31,58,.18);overflow-y:auto;z-index:960;
  }
  .nav.is-open{transform:translateX(0)}
  .nav a{padding:13px 12px;font-size:1rem;border-bottom:1px solid var(--line)}
  .nav .nav-mobile-cta{display:grid;gap:10px;margin-top:20px}
  .nav .nav-mobile-cta .btn{width:100%}
  .nav-toggle{display:grid}
  .header-cta .btn--primary{display:none}
  .nav-backdrop{
    position:fixed;inset:0;background:rgba(7,17,31,.5);z-index:950;
    opacity:0;visibility:hidden;transition:opacity .25s ease;
  }
  .nav-backdrop.is-open{opacity:1;visibility:visible}
  body.nav-open{overflow:hidden}

  .hero .wrap{grid-template-columns:1fr;gap:38px;padding-top:52px;padding-bottom:62px}
  .hero-media{order:-1}
  .hero-note{position:static;max-width:none;margin-top:16px;box-shadow:var(--shadow)}
  .split{grid-template-columns:1fr;gap:30px}
  .split--reverse .split__media{order:0}
  .gallery-grid{grid-template-columns:repeat(2,1fr)}
}

@media (max-width:768px){
  body{font-size:16px}
  .section{padding:56px 0}
  .section--tight{padding:42px 0}
  .grid-3{grid-template-columns:1fr}
  .grid-2{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}
  .checks{grid-template-columns:1fr}
  .topbar .tb-links{display:none}
  .topbar .wrap{justify-content:center;text-align:center}
  .form-card{padding:22px}
  .footer-bottom{flex-direction:column;align-items:flex-start}
  .map-embed iframe{height:320px}
  .btn-row .btn{flex:1 1 100%}
}

@media (max-width:560px){
  .grid-4{grid-template-columns:1fr}
  .gallery-grid{grid-template-columns:1fr}
  .logo-text span{display:none}
  .float-contact{right:14px;bottom:14px;gap:10px}
  .float-contact a{width:52px;height:52px}
  .pagehead{padding:40px 0 36px}
}

@media print{
  .site-header,.float-contact,.cta-band,.site-footer,.nav-toggle{display:none!important}
  body{font-size:12pt;color:#000}
}
