/* Переключатель языка в шапке: вид из одобренного макета (01.11.2026), общий для всех страниц. */
.nav{--signin-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c0-4.4 3.6-7 8-7s8 2.600 8 7'/%3E%3C/svg%3E")}
.lang-switch{position:relative;flex:none;margin-left:12px}
.topbar>nav,.nav .navlinks{margin-left:auto}
.lang-chip{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 10px;border:0;border-radius:999px;background:#fff;color:#14101a;box-shadow:inset 0 0 0 1px #e7e2d9;font-family:inherit;font-size:12px;font-weight:600;line-height:1;white-space:nowrap;cursor:pointer}
.lang-chip[aria-expanded=true]{box-shadow:inset 0 0 0 1.5px #14101a}
.lang-chip:focus-visible,.lang-menu a:focus-visible{outline:2px solid #1e139d;outline-offset:2px}
.lang-chip svg{width:16px;height:16px;flex:none}
.lang-chip .lang-chev{display:none;width:12px;height:12px;opacity:.6}
.lang-menu{position:absolute;top:calc(100% + 12px);right:0;z-index:50;min-width:210px;padding:6px;background:#fff;border:1px solid #e7e2d9;border-radius:20px;box-shadow:0 18px 44px rgba(20,16,26,.12)}
.lang-menu[hidden]{display:none}
.lang-menu-title{padding:8px 14px 10px;margin-bottom:4px;border-bottom:1px solid #e7e2d9;color:#645e6e;font-size:12px;font-weight:400;line-height:1.5}
.lang-menu a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:11px 14px;border-radius:16px;color:#14101a;font-size:15px;font-weight:600;line-height:1.2;text-decoration:none;white-space:nowrap}
.lang-menu a:hover{background:#f3f1ec;color:#14101a;text-decoration:none}
.lang-menu svg{width:16px;height:16px;flex:none;color:#1e139d;visibility:hidden}
.lang-menu a[aria-current] svg{visibility:visible}
@media(min-width:900px){.lang-chip .lang-chev{display:block}}
/* Телефон: шапка в одну строку. Разделы остаются в подвале и на главной, вход и язык — в шапке. */
body[class] .topbar>nav a{white-space:nowrap}
@media(max-width:1000px){
 body[class] .topbar{align-items:center}
 body[class] .topbar>nav{display:flex;flex-wrap:nowrap;max-width:none}
}
@media(max-width:620px){
 body[class] .topbar>nav a:not(.nav-signin){display:none}
}
/* Главная на телефоне: плотнее, слово входа становится значком, как «Help» в макете. Текст ссылки остаётся для экранного чтения. */
@media(max-width:480px){
 .nav .navlinks{gap:8px}
 .lang-switch{margin-left:8px}
 .nav .navlinks .nav-signin{width:38px;padding:0;justify-content:center;font-size:0}
 .nav .navlinks .nav-signin::before{content:"";width:16px;height:16px;background:currentColor;-webkit-mask:var(--signin-icon) center/contain no-repeat;mask:var(--signin-icon) center/contain no-repeat}
 .nav .navlinks .btn.sm{padding:0 10px;font-size:13px}
}
@media(max-width:400px){
 body[class] .topbar .logo{font-size:24px}
 body[class] .topbar .brand-mark{width:32px;height:32px}
}
/* Самая длинная кнопка — португальская: ей слово логотипа мешает раньше. */
@media(max-width:389px){
 html[lang=pt] .nav .logo{font-size:0}
}
/* Самые узкие экраны: как в макете, лишнее слово уходит и остаётся значок. Название логотипа остаётся в aria-label. */
@media(max-width:374px){
 body[class] .topbar .logo,.nav .logo{font-size:0}
}
