/* =============================================================
   AdBiz Communications — Responsive
   Breakpoints: 1200 / 1024 / 768 / 560
   ============================================================= */

@media (max-width: 1200px) {
  .hero-visual { height: 460px; }
  .footer-top { grid-template-columns: 1.4fr 1fr 1.2fr; }
  .footer-contact { grid-column: 1 / -1; }
}

@media (max-width: 1024px) {
  .nav { display: none; }
  .hamburger { display: block; }
  .header-actions .btn { display: none; }
  .cursor-dot, .cursor-ring { display: none; }
  body { cursor: auto; }

  .hero .container { grid-template-columns: 1fr; gap: 40px; }
  .hero-visual { height: 400px; max-width: 520px; }
  .hero-stats { gap: 28px; }

  .svc-grid, .feat-grid, .svc-detail, .mvv-grid, .portfolio { grid-template-columns: repeat(2, 1fr); }
  .counters { grid-template-columns: repeat(2, 1fr); }
  .contact-grid { grid-template-columns: 1fr; gap: 36px; }

  /* timeline becomes single column */
  .timeline::before, .tl-line { left: 20px; }
  .tl-item { width: 100%; left: 0 !important; text-align: left !important; padding-left: 56px; padding-right: 0; }
  .tl-item .tl-dot { left: 10px !important; right: auto !important; }
  .tl-card { text-align: left; }

  .chapter { grid-template-columns: 1fr; gap: 12px; }
  .footer-top { grid-template-columns: 1fr 1fr; }
  .footer-about { grid-column: 1 / -1; }
}

@media (max-width: 768px) {
  body { font-size: 16px; }
  .form-row { grid-template-columns: 1fr; }
  .values-list { grid-template-columns: 1fr; }
  .hero { padding-top: 110px; }
  .hero-stats { flex-wrap: wrap; gap: 20px 32px; }
  .cta-band .btns, .hero-cta { width: 100%; }
  .hero-cta .btn { flex: 1; justify-content: center; }
}

@media (max-width: 560px) {
  :root { --gutter: 20px; }
  .svc-grid, .feat-grid, .svc-detail, .mvv-grid, .portfolio, .counters { grid-template-columns: 1fr; }
  .footer-top { grid-template-columns: 1fr; }
  .footer-bottom { flex-direction: column; text-align: center; }
  .hero-visual { height: 340px; }
  .fc-laptop { width: 72%; }
  .btn { padding: 14px 22px; font-size: 0.92rem; }
  .lb-body { padding: 24px; }
}
