@media (max-width: 992px) {
  .hero-home .container,
  .about-grid,
  .service-detail-grid,
  .contact-layout,
  .dashboard-grid {
    grid-template-columns: 1fr;
  }

  .hero-home {
    padding: 48px 0;
  }

  .hero-box,
  .service-detail-block,
  .service-side-box,
  .contact-form,
  .contact-panel,
  .contact-side-box {
    padding: 24px;
  }

  .footer-content {
    justify-content: center;
  }
}

@media (max-width: 768px) {
  .container {
    padding: 0 18px;
  }

  .section {
    padding: 66px 0;
  }

  .hero-home h1 {
    font-size: 2.4rem;
  }
}

@media (max-width: 576px) {
  .hero-home {
    padding: 36px 0;
  }

  .hero-home h1 {
    font-size: 2rem;
  }

  .whatsapp-float {
    right: 14px;
    bottom: 14px;
    min-width: 52px;
    height: 52px;
    padding: 0 14px;
    font-size: 0.82rem;
  }
}

@media (max-width: 767px) {
  /* In-flow contact link avoids covering any form or CTA at any scroll position. */
  .whatsapp-float { position: static; display: flex; width: fit-content; margin: 0 auto 24px; }
  .hero-actions { flex-direction: column; }
  .hero-actions .btn { width: 100%; }
  .site-navbar .brand-name { font-size: 0.95rem; }
  .page-hero { padding: 42px 0; }
  .service-detail-block, .contact-form { padding: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  html, body { scroll-behavior: auto; }
  *, *::before, *::after { transition: none !important; }
}
