@media (max-width: 991px) {
  .nav {
    position: fixed;
    inset: var(--header-height) 0 0 0;
    background: var(--color-black);
    transform: translateY(-100%);
    transition: transform var(--transition-base);
  }

  .nav--open {
    transform: translateY(0);
  }

  .nav__list {
    flex-direction: column;
    padding: 2rem;
    gap: 1.75rem;
  }

  .nav-toggle {
    display: block;
  }

  body.body--locked {
    overflow: hidden;
  }

  .grid--2 {
    grid-template-columns: 1fr;
  }
}