.language-switcher {
  display: inline-flex;
  align-items: center;
  gap: 0.2rem;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.68rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.language-switcher a {
  color: inherit;
  padding: 0.28rem 0.38rem;
  border: 1px solid currentColor;
  text-decoration: none;
  opacity: 0.62;
}

.language-switcher a:hover,
.language-switcher a:focus-visible,
.language-switcher a[aria-current='page'] {
  opacity: 1;
  background: currentColor;
  color: var(--bg, #f4f2ed);
}

.link-language {
  white-space: nowrap;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.72em;
  letter-spacing: 0.04em;
}

.tg-language-note {
  padding: 0.45rem 0.7rem;
  border-bottom: 1px solid currentColor;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.68rem;
  letter-spacing: 0.02em;
  opacity: 0.7;
}

.sitebar .language-switcher {
  margin-left: auto;
  padding-right: 1rem;
}

html[lang='en'] .napishi {
  font-size: clamp(28px, 9.2vw, 176px);
}

@media (max-width: 760px) {
  .topbar .language-switcher {
    position: absolute;
    top: 2.75rem;
    right: 1rem;
    z-index: 3;
  }

  .sitebar .language-switcher {
    padding-right: 0.5rem;
  }
}

@media (max-width: 480px) {
  html:is([lang='en'], [lang='pt-BR']) .napishi {
    justify-content: space-between;
    gap: 0.18em;
    font-size: clamp(28px, 9vw, 42px);
  }

  html:is([lang='en'], [lang='pt-BR']) .menu,
  html:is([lang='en'], [lang='pt-BR']) .menu-item,
  html:is([lang='en'], [lang='pt-BR']) .menu-line,
  html:is([lang='en'], [lang='pt-BR']) .menu-name,
  html:is([lang='en'], [lang='pt-BR']) .menu-price {
    min-width: 0;
    max-width: 100%;
  }

  html:is([lang='en'], [lang='pt-BR']) .menu-line {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0.35rem;
  }

  html:is([lang='en'], [lang='pt-BR']) .menu-name,
  html:is([lang='en'], [lang='pt-BR']) .menu-price {
    white-space: normal;
    overflow-wrap: anywhere;
    text-align: left;
  }

  html:is([lang='en'], [lang='pt-BR']) .menu-dots {
    display: none;
  }
}

@media (max-width: 480px) and (max-height: 640px) {
  html:is([lang='en'], [lang='pt-BR']) .hero .photo {
    display: none;
  }
}
