@media (max-width: 1080px) {
  .services-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .slider-prev {
    left: 1rem;
  }

  .slider-next {
    right: 1rem;
  }
}

@media (max-width: 860px) {
  .menu-toggle {
    display: block;
    position: relative;
    z-index: 70;
  }

  .menu-toggle[aria-expanded="true"] span:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
  }

  .menu-toggle[aria-expanded="true"] span:nth-child(2) {
    opacity: 0;
  }

  .menu-toggle[aria-expanded="true"] span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
  }

  .nav-panel {
    position: fixed;
    top: 76px;
    right: 0;
    left: 0;
    display: grid;
    align-content: start;
    gap: 1.5rem;
    height: calc(100vh - 76px);
    padding: 1.5rem 1rem 2rem;
    background: rgba(251, 249, 244, 0.98);
    border-top: 1px solid var(--line);
    transform: translateX(100%);
    visibility: hidden;
    transition: transform 260ms ease, visibility 260ms ease;
  }

  .nav-panel.is-open {
    transform: translateX(0);
    visibility: visible;
  }

  .nav-links {
    display: grid;
    gap: 0;
    width: 100%;
  }

  .nav-links a {
    display: block;
    padding: 1rem 0;
    border-bottom: 1px solid var(--line);
    font-size: 1.2rem;
  }

  .nav-links a::after {
    display: none;
  }

  .nav-panel .btn {
    width: 100%;
  }

  .hero {
    min-height: 720px;
  }

  .hero-content {
    padding-top: 4rem;
  }

  .hero-overlay {
    background: linear-gradient(180deg, rgba(64, 84, 72, 0.82), rgba(64, 84, 72, 0.54));
  }

  .line {
    width: 34rem;
    height: 34rem;
  }

  .about-grid,
  .page-hero-grid,
  .contact-grid,
  .service-offerings,
  .consultation-content,
  .footer-grid {
    grid-template-columns: 1fr;
  }

  .page-hero-grid {
    align-items: start;
  }

  .consultation-content {
    display: grid;
  }

  .testimonial-grid {
    grid-template-columns: 1fr;
  }

  .testimonial-story {
    grid-template-columns: 1fr;
  }

  .testimonial-person {
    width: 84px;
    height: 84px;
  }
}

@media (max-width: 680px) {
  .container {
    width: min(100% - 24px, 1120px);
  }

  .brand {
    font-size: 1.05rem;
  }

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

  .hero {
    min-height: 680px;
  }

  .hero-content h1,
  .hero-content h2,
  .page-hero-copy h1 {
    font-size: 3rem;
  }

  .page-hero {
    padding-top: 4rem;
  }

  .about-highlights {
    grid-template-columns: 1fr;
  }

  .hero-actions,
  .hero-actions .btn,
  .consultation-content .btn,
  .final-cta .btn {
    width: 100%;
  }

  .slider-arrow {
    top: auto;
    bottom: 1rem;
    width: 42px;
    height: 42px;
    font-size: 1.8rem;
  }

  .slider-prev {
    left: calc(50% - 54px);
  }

  .slider-next {
    right: calc(50% - 54px);
  }

  .slider-dots {
    bottom: 0.75rem;
  }

  .services-grid {
    grid-template-columns: 1fr;
  }

  .service-card {
    min-height: 128px;
  }
}

@media (min-width: 681px) and (max-width: 860px) {
  .services-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
