@media (max-width: 1199.98px) {
  .navbar-collapse {
    padding-block: 1rem;
  }

  .footer-grid,
  .team-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .value-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 991.98px) {
  .site-navbar {
    min-height: 72px;
  }

  .home-hero {
    min-height: calc(100svh - 72px);
  }

  .hero-trust-strip {
    position: static;
    margin: -3.2rem 1rem 1rem;
    justify-content: center;
  }

  .section-heading,
  .cta-panel,
  .footer-bottom {
    align-items: flex-start;
    flex-direction: column;
  }

  .trust-counters,
  .card-grid.three,
  .card-grid.four,
  .portfolio-grid,
  .process-grid,
  .timeline-grid,
  .content-columns,
  .service-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .hero-brand {
    max-width: 8ch;
  }

  .home-hero h1 {
    font-size: clamp(2rem, 10vw, 3.5rem);
  }

  .hero-actions .btn {
    width: 100%;
  }

  .trust-counters,
  .card-grid.three,
  .card-grid.four,
  .portfolio-grid,
  .process-grid,
  .timeline-grid,
  .content-columns,
  .service-grid,
  .team-grid,
  .value-grid,
  .why-list,
  .footer-grid {
    grid-template-columns: 1fr;
  }

  .portfolio-card dl {
    grid-template-columns: 1fr;
  }

  .portfolio-note,
  .office-location-panel,
  .contact-strip .container {
    align-items: flex-start;
    flex-direction: column;
  }

  .contact-form {
    padding: 1.1rem;
  }
}

@media (max-width: 420px) {
  .navbar-brand strong {
    font-size: 0.9rem;
  }

  .navbar-brand small {
    font-size: 0.66rem;
  }

  .brand-mark {
    width: 38px;
    height: 38px;
  }
}
