/* ALVAREN RC08 — modulo multilingua isolato dalla baseline RC07 */
.visually-hidden{
  position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
}
.header-nav-group{min-width:0;margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:18px;}
.language-switcher{position:relative;flex:0 0 auto;color:var(--navy);}
.language-switcher>summary{
  min-width:46px;min-height:38px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;
  border:1px solid rgba(11,31,58,.14);border-radius:999px;background:#fff;color:var(--navy);font-size:12px;
  font-weight:780;line-height:1;letter-spacing:.08em;list-style:none;cursor:pointer;
  transition:border-color .22s ease,box-shadow .22s ease,background .22s ease;
}
.language-switcher>summary::-webkit-details-marker{display:none;}
.language-switcher>summary::after{
  content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
  transform:translateY(-2px) rotate(45deg);transition:transform .22s ease;
}
.language-switcher[open]>summary{border-color:rgba(31,102,209,.34);box-shadow:0 10px 24px rgba(11,31,58,.10);}
.language-switcher[open]>summary::after{transform:translateY(2px) rotate(225deg);}
.language-switcher>ul{
  position:absolute;top:calc(100% + 10px);right:0;z-index:1100;min-width:190px;margin:0;padding:7px;display:grid;
  gap:2px;list-style:none;border:1px solid rgba(11,31,58,.12);border-radius:14px;background:rgba(255,255,255,.99);
  box-shadow:0 18px 40px rgba(11,31,58,.13);
}
.language-switcher>ul a,.language-switcher>ul span[aria-current="page"]{
  min-height:42px;padding:0 11px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-radius:9px;
  color:var(--navy);font-size:13.5px;font-weight:650;letter-spacing:0;
}
.language-switcher>ul a{transition:background .2s ease,color .2s ease;}
.language-switcher>ul a:hover,.language-switcher>ul a:focus-visible{background:var(--soft-blue);color:var(--blue);}
.language-switcher>ul span[aria-current="page"]{background:rgba(11,31,58,.045);}
.language-switcher>ul small{color:rgba(11,31,58,.64);font-size:10px;font-weight:760;letter-spacing:.08em;}
.mobile-language-nav{margin-top:16px;padding-top:16px;border-top:1px solid rgba(11,31,58,.10);}
.mobile-language-label{
  display:block;margin-bottom:8px;color:rgba(11,31,58,.68);font-size:10.5px;font-weight:850;letter-spacing:.15em;
  line-height:1.4;text-transform:uppercase;
}
.mobile-language-options{display:flex;flex-wrap:wrap;gap:8px;}
.mobile-panel .mobile-language-options a,.mobile-panel .mobile-language-options span{
  min-height:40px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid rgba(11,31,58,.14);border-radius:999px;color:var(--navy);background:#fff;
  font-size:13px;font-weight:720;line-height:1;
}
.mobile-panel .mobile-language-options a{transition:border-color .2s ease,background .2s ease,color .2s ease;}
.mobile-panel .mobile-language-options a:hover,.mobile-panel .mobile-language-options a:focus-visible{
  border-color:rgba(31,102,209,.32);background:var(--soft-blue);color:var(--blue);
}
.mobile-panel .mobile-language-options span[aria-current="page"]{border-color:var(--navy);background:var(--navy);color:#fff;}
@media(max-width:980px){.header-nav-group{gap:12px}}
@media(min-width:0px){.mobile-language-nav{display:none}}
@media(hover:hover) and (pointer:fine){
  .language-switcher>summary:hover{border-color:rgba(11,31,58,.30);box-shadow:0 8px 18px rgba(11,31,58,.08)}
}
@media(prefers-reduced-motion:reduce){
  .language-switcher>summary,.language-switcher>summary::after,.language-switcher>ul a,.mobile-panel .mobile-language-options a{transition:none}
}
