.language-switcher{
  position:fixed;
  left:22px;
  top:140px;
  bottom:auto;
  z-index:1000;
  display:inline-flex;
  align-items:center;
  gap:2px;
  padding:3px;
  border:2px solid #151b1b;
  border-radius:999px;
  background:rgba(255,255,255,.58);
  -webkit-backdrop-filter:blur(5px);
  backdrop-filter:blur(5px);
  box-shadow:0 2px 5px rgba(0,0,0,.12);
}
.language-switcher button{
  appearance:none;
  border:0;
  min-width:40px;
  height:34px;
  padding:0 10px;
  border-radius:999px;
  background:transparent;
  color:#6f7474;
  font:700 15px Grenadine,Arial,sans-serif;
  line-height:1;
  cursor:pointer;
  transition:background .18s ease,color .18s ease,transform .18s ease;
}
.language-switcher button:hover{color:#151b1b}
.language-switcher button.is-active{background:#151b1b;color:#fff}
.language-switcher button:active{transform:scale(.96)}
@media(max-width:900px){.language-switcher{left:16px;top:auto;bottom:16px;transform:scale(.92);transform-origin:left bottom}}

/* Home: alineado con el borde izquierdo de las redes y a 50px del borde superior. */
@media (min-width:901px){
  body:has(.hero) .language-switcher{
    left:4.4vw;
    top:50px;
    bottom:auto;
  }
}

/* El selector queda fuera del header mobile para no competir con la navegación. */
@media(max-width:900px){
  .language-switcher{
    left:auto;
    right:14px;
    top:auto;
    bottom:14px;
    transform:scale(.88);
    transform-origin:right bottom;
  }
  .language-switcher button{min-width:44px;height:40px}
}