@media (max-width: 767px) {
  .site-header__inner {
    min-height: 64px;
  }

  .menu-toggle {
    display: inline-flex;
  }

  .main-navigation {
    display: none;
    position: absolute;
    top: 64px;
    left: 0;
    right: 0;
    z-index: 20;
    border-bottom: 1px solid var(--color-border);
    background: var(--color-bg);
  }

  .main-navigation.is-open {
    display: block;
  }

  .main-navigation ul {
    display: grid;
    gap: 0;
    width: min(100% - 2rem, var(--container));
    margin-inline: auto;
    padding-block: var(--space-sm);
  }

  .main-navigation a {
    display: block;
    padding-block: 0.65rem;
  }

  .site-footer__inner {
    align-items: flex-start;
    flex-direction: column;
  }

  .footer-navigation ul {
    align-items: flex-start;
    flex-direction: column;
  }
}
