/**
 * Theme additions (2026): header language switcher (ACF hreflangs).
 * Main style.css is left as your restored bundle.
 */

/* .container:not(.container--menu) has overflow:hidden in base — clips absolute dropdown */
.header .container.header__top {
    overflow: visible;
}

.header-lang {
    flex-shrink: 0;
    margin-left: 12px;
    margin-right: 4px;
    position: relative;
    z-index: 1100;
}

.header-lang__details {
    position: relative;
}

@media (max-width: 991px) {
    .header-lang {
        margin-left: 8px;
    }
}

.header-lang__single,
.header-lang__summary {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 600;
    color: #fff;
    user-select: none;
}

.header-lang__summary {
    cursor: pointer;
    list-style: none;
    padding: 6px 8px;
    border-radius: 6px;
    border: 1px solid hsla(0, 0%, 100%, 0.15);
    background: rgba(0, 0, 0, 0.2);
    transition: border-color 0.2s, background 0.2s;
}

.header-lang__summary::-webkit-details-marker {
    display: none;
}

.header-lang__summary:hover {
    border-color: rgba(255, 255, 255, 0.35);
    background: rgba(0, 0, 0, 0.35);
}

.header-lang__details[open] .header-lang__summary {
    border-color: rgba(255, 255, 255, 0.35);
}

.header-lang__details[open] .header-lang__caret svg {
    transform: rotate(180deg);
}

.header-lang__caret {
    display: flex;
    align-items: center;
    color: rgba(255, 255, 255, 0.75);
    margin-left: 2px;
}

.header-lang__caret svg {
    display: block;
    transition: transform 0.2s ease;
}

.header-lang__code {
    letter-spacing: 0.04em;
}

.header-lang__flag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.header-lang__flag--emoji {
    font-size: 1.35em;
    line-height: 1;
}

.header-lang__flag--glyph img {
    display: block;
    width: 18px;
    height: 18px;
    filter: brightness(0) invert(1);
    opacity: 0.9;
}

.header-lang__list {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    z-index: 1101;
    min-width: 168px;
    margin: 0;
    padding: 6px 0;
    list-style: none;
    background: linear-gradient(173deg, rgba(37, 46, 76, 0.98) 2%, rgba(25, 32, 51, 0.98));
    border: 1px solid hsla(0, 0%, 100%, 0.15);
    border-radius: 10px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
}

.header-lang__item {
    margin: 0;
}

.header-lang__link {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 14px;
    font-size: 13px;
    font-weight: 600;
    color: #fff;
    text-decoration: none;
    transition: background 0.15s, color 0.15s;
}

.header-lang__link:hover,
.header-lang__link:focus-visible {
    background: rgba(255, 255, 255, 0.06);
    color: #f9b242;
    outline: none;
}

.header-lang__link.is-current {
    color: #f9b242;
    background: rgba(255, 255, 255, 0.04);
}

@media (max-width: 991px) {
    .btnTop {
        display: none !important;
    }
}