/* ==========================================================================
   TAXSHOOTER — Responsive overrides
   ========================================================================== */

@media (max-width: 1024px){
  .hero-inner{ grid-template-columns:1fr; gap:48px; }
  .footer-top{ grid-template-columns:1.4fr 1fr 1fr; row-gap:36px; }
  .grid-4{ grid-template-columns:repeat(2,1fr); }
}

@media (max-width: 860px){
  section{ padding:72px 0; }
  .page-hero{ padding:130px 0 56px; }
  .nav-links{
    position:fixed; inset:72px 16px auto 16px;
    background:var(--paper); border:1px solid var(--line); border-radius:var(--radius-md);
    box-shadow:var(--shadow-lg);
    flex-direction:column; align-items:stretch; gap:0; padding:10px;
    transform:translateY(-12px); opacity:0; pointer-events:none;
    transition:all .2s ease;
  }
  .nav-links.open{ transform:translateY(0); opacity:1; pointer-events:auto; }
  .nav-links a{ padding:14px 16px; border-radius:8px; font-size:1rem; }
  .nav-cta{ margin:8px 8px 4px; }
  .nav-cta .btn{ width:100%; justify-content:center; }
  .nav-toggle{ display:flex; }

  .grid-2, .grid-3, .grid-4{ grid-template-columns:1fr; }
  .footer-top{ grid-template-columns:1fr 1fr; }
  .footer-brand{ grid-column:1/-1; }
  .process-item{ grid-template-columns:1fr; gap:10px; }
  .field-row{ grid-template-columns:1fr; }
  .recognition-band{ flex-direction:column; align-items:flex-start; }
  .stat-row{ flex-wrap:wrap; }
  .stat{ flex:1 1 45%; border-right:none; border-bottom:1px solid rgba(255,255,255,0.12); }
  .cta-band{ padding:48px 26px; }
}

@media (max-width: 560px){
  .container{ padding:0 18px; }
  .hero-inner{ padding-bottom:64px; }
  .hero-ctas{ flex-direction:column; align-items:stretch; }
  .hero-ctas .btn{ width:100%; justify-content:center; }
  .footer-top{ grid-template-columns:1fr; }
  h1{ font-size:2.3rem; }
  h2{ font-size:1.75rem; }
  .form-shell{ padding:26px; }
  .contact-info-card{ padding:26px; }
  .footer-recognition{ flex-direction:column; align-items:flex-start; }
  .footer-bottom{ flex-direction:column; }
}
