/* ==========================================================================
   JABER LAW — Responsive
   ========================================================================== */

@media (max-width: 1180px) {
  .nav { display: none; }
  .burger { display: grid; }
  .header__phone span { display: none; }
  .header__phone { padding: 0; width: 42px; justify-content: center; }
  .footer__top { grid-template-columns: 1fr 1fr; }
  .metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .services, .practice-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 1024px) {
  .hscroll__track { overflow-x: auto; width: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; padding-bottom: 2rem; scrollbar-width: none; }
  .hscroll__track::-webkit-scrollbar { display: none; }
  .practice-card { scroll-snap-align: start; width: min(78vw, 400px); }
  .hscroll__progress { display: none; }
  .hscroll__pin { padding-bottom: var(--section-y); }
  .timeline { grid-template-columns: 1fr; }
  .timeline__rail { position: static; }
  .article { grid-template-columns: 1fr; }
  .article__aside { position: static; }
  .method { grid-template-columns: 1fr; }
  .cta__grid { grid-template-columns: 1fr; }
  .section-head--split { grid-template-columns: 1fr; }
  .statement { grid-template-columns: 1fr; }
  .split { grid-template-columns: 1fr; }
  .split--rev > :first-child { order: 0; }
  .split__media { aspect-ratio: 16 / 10; }
  .hero__grid { grid-template-columns: 1fr; }
  .hero__actions { justify-content: flex-start; }
  .calc { grid-template-columns: 1fr; }
  .grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  :root { --header-h: 68px; }
  .header { padding: 10px 10px 0; }
  .header__bar { height: 58px; }
  .header__wordmark { display: none; }
  .hero__foot-inner { grid-template-columns: auto 1fr; }
  .hero__coords { display: none; }
  .hero__title { max-width: none; }
  .metrics { grid-template-columns: 1fr; }
  .stat { min-height: 0; padding: 1.4rem; }
  .stat__value { font-size: 3rem; }
  .form-row { grid-template-columns: 1fr; }
  .grid-2, .grid-3, .grid-4, .services, .services--2, .practice-grid { grid-template-columns: 1fr; }
  .steps { grid-template-columns: 1fr; }
  .footer__top { grid-template-columns: 1fr; gap: 2rem; }
  .footer__logo { height: 110px; }
  .footer { padding: 0 6px 6px; }
  .cta { padding: 1.8rem 1.3rem; border-radius: var(--r-lg); }
  .founder__sig { display: none; }
  .wa-float span { display: none; }
  .wa-float { padding: 0 0.4rem; width: 50px; justify-content: center; }
  .a11y { bottom: 84px; }
  .to-top { bottom: 84px; }
  .practice-card { width: min(84vw, 360px); aspect-ratio: 4 / 4.6; }
  .table { font-size: 0.85rem; }
  .table th, .table td { padding: 0.6rem 0.5rem; }
  .prose { font-size: 1rem; }
  .btn--lg { height: 54px; padding: 0 1.6rem; font-size: 0.95rem; }
  .page-top .display-xl { max-width: none; }
  .map { aspect-ratio: 4 / 3; }
}

@media (max-width: 420px) {
  .hero__actions .btn { width: 100%; }
  .page-top__actions .btn { width: 100%; }
}

@media print {
  .header, .drawer, .wa-float, .to-top, .a11y, .cursor, .grain, .ambient, .preloader, .curtain, .scroll-progress, .marquee { display: none !important; }
  body { background: #fff; color: #000; }
  .section--light, .cta { background: #fff; }
}
