/* =========================================================================
   Header language switcher — globe + current code, dropdown on click.
   ========================================================================= */

/* The theme's grid is [ logo | menu | CTA ]; the switcher takes a fourth
   track on desktop. In hamburger mode the menu and CTA are hidden, so it sits
   in the stretchy middle track, pushed against the burger. */
@media (min-width: 1200px) {
    .main-header--lang .main-header__container {
        grid-template-columns: auto 1fr auto auto;
    }
}

@media (max-width: 1199px) {
    .main-header--lang .main-header__container {
        grid-template-columns: auto 1fr auto;
    }
    .main-header--lang .hlang {
        justify-self: end;
    }
}

.hlang {
    --hlang-ink: #ffffff;
    --hlang-hover: var(--thm-primary, #e8b64a);
    --hlang-menu-bg: #ffffff;
    --hlang-menu-ink: #1c3244;
    position: relative;
    justify-self: end;
}

.hlang__toggle {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 4px;
    background: none;
    border: 0;
    color: var(--hlang-ink);
    font-family: var(--thm-body-font, inherit);
    font-size: 16px;
    font-weight: 500;
    line-height: 1;
    cursor: pointer;
    transition: color .2s ease;
}

.hlang__toggle:hover,
.hlang__toggle:focus-visible,
.hlang.is-open .hlang__toggle {
    color: var(--hlang-hover);
    background: none;
}

.hlang__globe {
    width: 20px;
    height: 20px;
    flex: none;
}

.hlang__menu {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    z-index: 1000;
    min-width: 150px;
    margin: 0;
    padding: 6px 0;
    list-style: none;
    background: var(--hlang-menu-bg);
    border-radius: 8px;
    box-shadow: 0 12px 30px rgba(10, 20, 30, .18);
    opacity: 0;
    visibility: hidden;
    transform: translateY(6px);
    transition: opacity .2s ease, transform .2s ease, visibility .2s;
}

.hlang.is-open .hlang__menu {
    opacity: 1;
    visibility: visible;
    transform: none;
}

.hlang__option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    padding: 9px 16px;
    background: none;
    border: 0;
    color: var(--hlang-menu-ink);
    font-family: var(--thm-body-font, inherit);
    font-size: 15px;
    text-align: left;
    cursor: pointer;
}

.hlang__option:hover,
.hlang__option:focus-visible {
    background: rgba(28, 50, 68, .06);
    color: var(--hlang-menu-ink);
}

.hlang__option small {
    font-size: 12px;
    font-weight: 600;
    opacity: .55;
}

.hlang__option.is-active {
    font-weight: 600;
}

.hlang__option.is-active small {
    opacity: 1;
    color: var(--hlang-hover);
}

@media (max-width: 767px) {
    .hlang__toggle { font-size: 15px; }
    .hlang__globe { width: 18px; height: 18px; }
}

/* -------------------------------------------------------------------------
   Google's translator does the work but stays out of sight: no top banner,
   no hover tooltips, and no shove of the page down by the banner's height.
   ------------------------------------------------------------------------- */
.hlang__google,
.goog-te-banner-frame,
iframe.skiptranslate,
#goog-gt-tt,
.goog-te-balloon-frame,
.VIpgJd-ZVi9od-ORHb-OEVmcd,
.VIpgJd-ZVi9od-aZ2wEe-wOHMyf,
.VIpgJd-yAWNEb-L7lbkb {
    display: none !important;
}

html,
body {
    top: 0 !important;
}

.goog-text-highlight {
    background: none !important;
    box-shadow: none !important;
}
