/* Kismetál Sátor R29. Language selection follows the original navy/gold palette.
   No JavaScript, tracking, external fonts or images are required. */
.header__options > .header__language {
    position: relative;
    margin-left: 1.15rem;
    flex: 0 0 auto;
    z-index: 55;
}
.sator-lang-picker { position: relative; }
.sator-lang-picker > summary {
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .48rem;
    min-height: 39px;
    min-width: 84px;
    padding: .5rem .65rem;
    border: 1px solid #d7d9df;
    border-radius: .42rem;
    background: #fff;
    color: #232341;
    font-size: .83rem;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    transition: border-color .2s, background-color .2s, box-shadow .2s;
    user-select: none;
}
.sator-lang-picker > summary::-webkit-details-marker { display: none; }
.sator-lang-picker > summary::marker { content: ''; }
.sator-lang-picker > summary:hover,
.sator-lang-picker[open] > summary {
    background: #fffdf2;
    border-color: #cab641;
    box-shadow: 0 2px 10px rgba(35,35,65,.075);
}
.sator-lang-picker > summary:focus-visible,
.sator-lang-item:focus-visible,
.sator-mobile-languages__choice:focus-visible {
    outline: 3px solid #d8c53a !important;
    outline-offset: 2px;
}
.sator-lang-globe { width: 16px; height: 16px; flex: 0 0 16px; }
.sator-lang-chevron { width: 13px; height: 13px; flex: 0 0 13px; transition: transform .2s; }
.sator-lang-picker[open] .sator-lang-chevron { transform: rotate(180deg); }
.sator-lang-list {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: calc(100% + 9px);
    right: 0;
    z-index: 90;
    width: 205px;
    padding: .35rem;
    border: 1px solid #e4e5ea;
    background: #fff;
    border-radius: .55rem;
    box-shadow: 0 14px 32px rgba(27,29,60,.17);
}
.sator-lang-item {
    display: flex !important;
    align-items: center;
    gap: .7rem;
    min-height: 43px;
    padding: .55rem .7rem;
    border-radius: .35rem;
    color: #232341 !important;
    font-weight: 500;
    font-size: .88rem;
    text-decoration: none !important;
    transition: background-color .15s;
}
.header__options .sator-lang-item:hover {
    opacity: 1 !important;
    background: #f5f3e7;
}
.sator-lang-item.is-current { background: #f5f3e7; font-weight: 700; }
.sator-lang-item__code {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    min-height: 27px;
    background: #f2f2f5;
    color: #232341;
    border: 1px solid #e9e9ee;
    border-radius: .25rem;
    font-size: .73rem;
    letter-spacing: .03em;
}
.sator-lang-item.is-current .sator-lang-item__code { background: #232341; color: #fff; border-color: #232341; }
.sator-lang-item__label { flex: 1 1 auto; }
.sator-lang-item svg { width: 17px; height: 17px; color: #95851f; }
/* Existing site CSS hides .header__dropdown on mobile. New switcher is visible. */
@media screen and (max-width: 1199px) {
    .header__options > .header__language { margin-left: .7rem; }
    .sator-lang-picker > summary { min-width: 67px; padding: .5rem .5rem; }
    .sator-lang-globe { width: 15px; height: 15px; flex-basis: 15px; }
    .header__options > li { margin-left: .9rem; }
}
@media screen and (max-width: 575px) {
    .header__options > li { margin-left: .65rem; }
    .header__options > .header__language { margin-left: .6rem; }
    .sator-lang-picker > summary { gap: .35rem; min-width: 63px; min-height: 36px; }
    .sator-lang-globe { display: none; }
    .sator-lang-list { width: 192px; }
}
.sator-mobile-languages {
    border-top: 1px solid #e4e4ea;
    padding: 1.4rem 0 1rem;
    margin-top: 1.3rem;
}
.sator-mobile-languages__heading {
    font-size: .82rem;
    text-transform: uppercase;
    letter-spacing: .055em;
    color: #66677a;
    font-weight: 700;
    margin: 0 0 .8rem;
}
.sator-mobile-languages__choices { display: flex; flex-wrap: wrap; gap: .55rem; }
.sator-mobile-languages__choice {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    padding: .6rem .75rem;
    border: 1px solid #d8d9df;
    border-radius: .4rem;
    color: #232341;
    text-decoration: none !important;
    font-size: .84rem;
    transition: border-color .15s, background-color .15s;
}
.sator-mobile-languages__choice:hover,
.sator-mobile-languages__choice.is-current {
    color: #232341;
    background: #fffdf2;
    border-color: #c9b43b;
}
.sator-mobile-languages__choice strong { font-size: .75rem; }
@media (prefers-reduced-motion: reduce) {
    .sator-lang-picker > summary, .sator-lang-item,
    .sator-lang-chevron, .sator-mobile-languages__choice { transition: none; }
}
