@media (max-width: 1100px) {
  .logo img { width: 240px; height: 68px; }
  .site-nav a { padding: 8px 8px; font-size: 0.84rem; }
  .topbar__left { display: none; }
}

@media (max-width: 1024px) {
  .service-grid { grid-template-columns: repeat(2, 1fr); }
  .brand-grid { grid-template-columns: repeat(4, 1fr); }
  .footer__grid { grid-template-columns: 1fr 1fr; }
  .split, .page-hero__grid, .contact-grid, .book-layout { grid-template-columns: 1fr; }
  .map-wrap--book iframe { height: 240px; }
  .gallery-grid { columns: 2; }
  .trust-row { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 860px) {
  .site-nav {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    margin-left: 0;
    padding: 12px 16px 18px;
    border-left: 0;
    background: var(--white);
    border-bottom: 1px solid var(--line);
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }
  .site-nav.is-open { display: flex; }
  .site-nav ul { flex-direction: column; gap: 4px; }
  .site-nav a { display: block; padding: 10px 4px; }
  .nav-toggle { display: block; }
  .header-tools { margin-left: auto; }
  .icon-btn { width: 42px; height: 42px; }
  .emergency__inner, .cta-band__inner, .footer__bottom-inner {
    flex-direction: column;
    align-items: flex-start;
  }
  .why-grid, .step-grid, .problem-grid, .review-grid, .area-grid {
    grid-template-columns: 1fr;
  }
  .hero { min-height: 520px; }
  .float-wa { display: none; }
  .mobile-action-bar {
    display: grid;
    grid-template-columns: 1fr 1fr;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 90;
    background: var(--navy);
    padding: 8px;
    gap: 8px;
  }
  .mobile-action-bar .btn { width: 100%; }
  .site-footer { margin-bottom: 72px; }
  .book-section { padding: 36px 0 24px; }
  body { padding-bottom: 0; }
}

@media (max-width: 640px) {
  .container { width: min(1180px, calc(100% - 24px)); }
  .section, .hours-band { padding: 48px 0; }
  .service-grid, .popular-list, .footer__grid { grid-template-columns: 1fr; }
  .brand-grid { grid-template-columns: repeat(2, 1fr); }
  .gallery-grid { columns: 1; }
  .topbar__inner { justify-content: center; text-align: center; }
  .topbar__left,
  .topbar-email { display: none; }
  .icon-btn--mail { display: none; }
  .logo img { width: 200px; height: 56px; }
  .hero__content { padding: 48px 0 40px; }
  .hero h1 { font-size: 1.7rem; }
  .btn { width: 100%; }
  .hero-actions, .emergency__inner .hero-actions { width: 100%; }
  .icon-btn { width: 42px; height: 42px; min-width: 42px; }
  .page-hero__image img, .split img { height: 240px; }
  .form { padding: 16px; }
  .logo img { width: 200px; height: 56px; }
  .logo--footer img { width: 200px; height: 56px; }
}

@media (max-width: 375px) {
  .header__inner { min-height: 64px; }
  .hero { min-height: 480px; }
}

@media (min-width: 1440px) {
  .container { width: min(1240px, calc(100% - 48px)); }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  * { animation: none !important; transition: none !important; }
}
