@media (max-width: 1200px) {
  .nav-menu {
    gap: 13px;
  }

  .nav-menu a {
    font-size: 12px;
  }

  .nav-cta {
    padding: 11px 16px;
  }
}

@media (max-width: 980px) {
  .topbar {
    flex-direction: column;
    align-items: flex-start;
    padding: 10px 5%;
  }

  .navbar {
    padding: 0 5%;
  }

  .menu-toggle {
    display: block;
  }

  .nav-menu {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #fff;
    display: none;
    flex-direction: column;
    align-items: flex-start;
    padding: 25px 5%;
    box-shadow: 0 20px 30px rgba(0,0,0,.12);
  }

  body.dark .nav-menu {
    background: #060606;
  }

  .nav-menu.show {
    display: flex;
  }

  .search-panel {
    grid-template-columns: 1fr;
  }

  .search-panel form {
    grid-template-columns: 1fr;
  }

  .search-panel button {
    height: 56px;
  }

  .trust-strip,
  .service-grid,
  .stats-section,
  .footer-grid {
    grid-template-columns: 1fr;
  }

  .trust-strip div,
  .stat {
    border-right: none;
    border-bottom: 1px solid rgba(0,0,0,.1);
    padding-bottom: 20px;
  }

  .trust-strip div:last-child,
  .stat:last-child {
    border-bottom: none;
  }

  .cta-section {
    flex-direction: column;
    align-items: flex-start;
  }

  .footer-bottom {
    flex-direction: column;
  }
}

@media (max-width: 600px) {
  .brand img {
    height: 54px;
  }

  .hero {
    padding: 80px 5% 145px;
  }

  .hero h1 {
    font-size: 45px;
  }

  .hero h3 {
    font-size: 24px;
  }

  .search-panel {
    width: 92%;
    padding: 22px;
  }
}
