.language-switcher {
  position: relative;
  margin-left: 14px;
  font: 700 .72rem var(--mono);
  letter-spacing: .04em;
  z-index: 20;
}

.language-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-width: 64px;
  height: 38px;
  padding: 0 12px;
  border: 1px solid var(--line);
  background: transparent;
  color: inherit;
  font: inherit;
  cursor: pointer;
}

.language-toggle span {
  font-size: 1rem;
  transition: transform .2s ease;
}

.language-toggle[aria-expanded="true"] span {
  transform: rotate(180deg);
}

.language-toggle:hover,
.language-toggle:focus-visible {
  background: var(--ink);
  border-color: var(--ink);
  color: #fff;
}

.language-menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  width: 132px;
  padding: 6px;
  border: 1px solid var(--line);
  background: #fff;
  box-shadow: 0 14px 35px rgba(8, 26, 60, .18);
}

.language-menu[hidden] {
  display: none;
}

.language-menu a {
  display: block;
  padding: 10px 12px;
  color: var(--ink);
  text-decoration: none;
}

.language-menu a:hover,
.language-menu a:focus-visible,
.language-menu a[aria-current="page"] {
  background: var(--ink);
  color: #fff;
}

@media (max-width: 900px) {
  .language-switcher {
    position: absolute;
    top: 14px;
    right: 12px;
    margin: 0;
  }

  .language-toggle {
    min-width: 58px;
    height: 34px;
    padding: 0 9px;
  }
}
