.language-menu ul {
  width: min(13.8rem, calc(100vw - 2rem));
  min-width: 0;
  box-sizing: border-box;
  max-height: calc(100vh - 5rem);
  max-height: calc(100dvh - 5rem);
  overflow-y: auto;
  overscroll-behavior: contain;
}

.language-menu li a {
  display: flex;
  align-items: center;
  gap: .7rem;
  min-height: 42px;
  white-space: normal;
}

.language-menu li a:focus-visible {
  outline-offset: -2px;
}

.language-menu .language-flag {
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  object-fit: cover;
  outline: 1px solid rgb(23 71 83 / 18%);
  outline-offset: -1px;
}
