/* ---------- ≤1200 ---------- */
@media (max-width:1200px){
  .grid-areas{grid-template-columns:repeat(3,1fr)}
}

/* ---------- ≤1024 ---------- */
@media (max-width:1024px){
  section{padding:80px 0}
  .hero{padding:140px 0 80px}
  .hero-grid{gap:50px}
  .split{gap:50px}
  .contact-grid{gap:50px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:40px}
}

/* ---------- ≤900 (nav collapse) ---------- */
@media (max-width:900px){
  .nav-toggle{display:flex}
  .primary-nav{
    position:fixed;top:0;right:-100%;width:min(340px,88vw);height:100vh;
    background:#fff;flex-direction:column;align-items:flex-start;
    padding:90px 30px 40px;gap:0;
    box-shadow:-20px 0 60px rgba(15,30,52,.15);
    transition:right .35s ease;overflow-y:auto;z-index:1050;
  }
  .primary-nav.open{right:0}
  .primary-nav ul{flex-direction:column;gap:0;width:100%;margin-bottom:30px}
  .primary-nav ul li{border-bottom:1px solid var(--line)}
  .primary-nav ul a{display:block;padding:18px 0;font-size:1rem}
  .primary-nav a::after{display:none}
  .nav-cta{width:100%}
  .nav-toggle{position:relative;z-index:1100}
  .nav-toggle.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .nav-toggle.active span:nth-child(2){opacity:0}
  .nav-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

  .hero-grid{grid-template-columns:1fr;gap:50px}
  .hero-portrait{max-width:440px;margin:0 auto;width:100%}
  .split{grid-template-columns:1fr;gap:40px}
  .split .portrait-frame{max-width:460px;margin:0 auto}
  .contact-grid{grid-template-columns:1fr;gap:40px}
  .cta-inner{grid-template-columns:1fr;gap:40px}
  .why-grid{grid-template-columns:1fr 1fr}
  .grid-areas{grid-template-columns:1fr 1fr}
  .trust-grid{grid-template-columns:1fr 1fr;gap:26px}
}

/* ---------- ≤640 ---------- */
@media (max-width:640px){
  section{padding:64px 0}
  .hero{padding:120px 0 64px}
  .container{padding:0 18px}
  .form-row{grid-template-columns:1fr}
  .why-grid{grid-template-columns:1fr}
  .grid-areas{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr;gap:36px}
  .footer-bottom-inner{flex-direction:column;text-align:center;gap:14px}
  .footer-bottom ul{justify-content:center;flex-wrap:wrap}
  .form-card{padding:26px}
  .facts li span:last-child{max-width:55%}
  .wa-float{right:16px;bottom:16px;width:52px;height:52px;font-size:1.4rem}
  .wa-float::after{display:none}
  .hero-actions .btn{width:100%}
  .btn{padding:13px 22px}
  .timeline{padding-left:32px}
}

/* ---------- Focus styles ---------- */
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{
  outline:2px solid var(--gold);
  outline-offset:2px;
}