/* ==========================================================================
   LANGUAGE SWITCHER — TranslatePress integration
   Desktop (top header) + Mobile (mobile menu footer)
   ========================================================================== */


/* ── Desktop: Wrapper around pill + dropdown ── */

.lang-selector-wrap {
    position: relative;
    display: inline-flex;
    align-items: center;
}

/* Uppercase on the pill label */
.lang-selector-wrap .th-btn.lang-selector {
    text-transform: uppercase;
}

/* Rotate chevron when open */
.lang-selector-wrap.is-open .th-btn.lang-selector::after,
.lang-selector-wrap:hover .th-btn.lang-selector::after {
    transform: rotate(180deg);
    transition: transform 0.2s ease;
}

/* Dropdown — sibling of the pill, positioned on the wrapper */
.lang-selector-wrap .lang-selector__dropdown {
    display: none;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    min-width: 100%;
    margin: 0;
    padding: 0.375rem 0;
    list-style: none;
    background: #f5f5f5;
    border: 1px solid #E0E0E0;
    border-radius: 0.5rem;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    z-index: 99999;
    /* Invisible bridge so mouse can travel from pill to dropdown */
    padding-top: 0.375rem;
}

.lang-selector-wrap.is-open .lang-selector__dropdown,
.lang-selector-wrap.has-dropdown:hover .lang-selector__dropdown {
    display: block;
}

.lang-selector-wrap .lang-selector__dropdown li {
    margin: 0;
    padding: 0;
}

.lang-selector-wrap .lang-selector__dropdown a {
    display: block;
    padding: 0.375rem 0.75rem;
    font-family: "Inter", sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    color: #131313;
    text-decoration: none;
    white-space: nowrap;
    text-transform: uppercase;
    transition: background-color 0.15s ease;
}

.lang-selector-wrap .lang-selector__dropdown a:hover {
    opacity: 0.7;
}


/*
 * ── THE REAL FIX ──
 *
 * The dropdown falls below .header-top, but .site-header (the main nav bar)
 * sits directly after .header-top in the DOM. Both have z-index: 1000, so
 * .site-header (later in source) paints on top and covers the dropdown.
 *
 * Solution: when the dropdown is open, bump .header-top's z-index above
 * .site-header so the entire top-header layer (including the dropdown)
 * stacks in front of the main nav bar.
 *
 * We also force overflow:visible on the entire ancestor chain so no
 * intermediate flex/grid container clips the absolutely-positioned dropdown.
 */

/* Bump header-top above site-header (z-index:1000) when dropdown is open */
.header-top:has(.lang-selector-wrap.is-open),
.header-top:has(.lang-selector-wrap.has-dropdown:hover),
.header-top.lang-dropdown-open {
    z-index: 1100 !important;
}

/* Force overflow visible on every ancestor between dropdown and header-top */
.header-top,
.header-top > .inner,
.header-top .th-grid,
.header-top .th-zone,
.header-top .th-zone--left,
.header-top .th-zone--center,
.header-top .th-zone--right,
.header-top .th-btns {
    overflow: visible !important;
}


/* ── Mobile: Menu Footer ── */

.mobile-menu__lang-switcher {
    position: relative;
    width: 100%;
}

.mobile-menu__lang-toggle {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.875rem 1rem;
    border: 1px solid rgba(196, 196, 196, 0.5);
    border-radius: 0;
    background: transparent;
    text-decoration: none;
    cursor: pointer;
    transition: border-color 0.2s ease, background-color 0.2s ease;
    font-family: var(--font-main, "Inter", sans-serif);
    font-size: 1rem;
    line-height: 150%;
    font-weight: 400;
    color: #000;
    text-transform: uppercase;
}

/* Globe icon */
.mobile-menu__lang-toggle::before {
    content: "";
    flex-shrink: 0;
    width: 1rem;
    height: 1rem;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M14.0739 11.7172C14.7602 10.599 15.1227 9.31217 15.1208 8.00013V7.99987C15.1227 6.68782 14.7602 5.40102 14.0738 4.2828L14.0699 4.2767C13.4332 3.23884 12.5409 2.38162 11.4783 1.78694C10.4158 1.19227 9.21852.880006 8.00088.880001 6.78325.879996 5.58596 1.19225 4.52341 1.78691 3.46087 2.38158 2.56858 3.2388 1.9318 4.27665L1.92784 4.28283C1.24318 5.40181.880864 6.68815.880859 7.99998.880854 9.3118 1.24316 10.5981 1.92781 11.7171L1.93184 11.7234C2.56862 12.7612 3.46091 13.6184 4.52345 14.2131 5.58598 14.8078 6.78326 15.12 8.00089 15.12 9.21851 15.12 10.4158 14.8077 11.4783 14.2131 12.5408 13.6184 13.4331 12.7612 14.0699 11.7233L14.0739 11.7172ZM8.91096 13.8997C8.77528 14.0306 8.61912 14.1385 8.44865 14.219 8.30873 14.2855 8.15577 14.32 8.00085 14.32 7.84594 14.32 7.69298 14.2855 7.55306 14.219 7.22866 14.0533 6.95096 13.8089 6.74536 13.5082 6.32547 12.9015 6.01429 12.2263 5.82574 11.5129 6.55005 11.4684 7.27509 11.4457 8.00086 11.4448 8.72633 11.4448 9.45141 11.4675 10.1761 11.5129 10.0717 11.8797 9.94137 12.2386 9.78601 12.5869 9.58143 13.0767 9.28432 13.5224 8.91096 13.8997ZM1.69478 8.4H4.56662C4.58532 9.20135 4.67218 9.99965 4.82626 10.7863 4.04121 10.8554 3.25817 10.9502 2.47713 11.0709 2.01977 10.2504 1.75241 9.33763 1.69478 8.4ZM2.47712 4.92908C3.25785 5.05007 4.04117 5.14497 4.82708 5.21379 4.67269 6.00035 4.58564 6.79865 4.56688 7.6H1.69478C1.75241 6.66237 2.01976 5.74963 2.47712 4.92908ZM7.09075 2.10026C7.22642 1.96935 7.38258 1.8615 7.55306 1.78097 7.69298 1.71448 7.84594 1.67999 8.00085 1.67999 8.15577 1.67999 8.30873 1.71448 8.44865 1.78097 8.77305 1.94667 9.05075 2.19104 9.25635 2.49174 9.67624 3.0985 9.98741 3.77366 10.176 4.48704 9.45165 4.53161 8.72662 4.55432 8.00086 4.55516 7.27539 4.55515 6.55031 4.53244 5.82561 4.48703 5.92998 4.12024 6.06034 3.76135 6.2157 3.41309 6.42028 2.9233 6.71738 2.47755 7.09075 2.10026ZM14.3069 7.6H11.4351C11.4164 6.79865 11.3295 6.00034 11.1755 5.21372 11.9605 5.14464 12.7436 5.04976 13.5246 4.92908 13.982 5.74963 14.2493 6.66237 14.3069 7.6ZM5.63087 10.7241C5.47442 9.9587 5.38606 9.18097 5.36683 8.4H10.635C10.6159 9.18096 10.5277 9.9587 10.3714 10.7241 9.58209 10.6723 8.79191 10.6459 8.00086 10.6448 7.21038 10.6448 6.42038 10.6712 5.63087 10.7241ZM10.3708 5.27591C10.5273 6.0413 10.6156 6.81903 10.6349 7.6H5.36674C5.3858 6.81903 5.47399 6.04128 5.6303 5.27588 6.41962 5.32767 7.2098 5.35409 8.00086 5.35515 8.79134 5.35515 9.58133 5.32873 10.3708 5.27591ZM11.4348 8.4H14.3069C14.2493 9.33763 13.9819 10.2504 13.5246 11.0709 12.7439 10.9499 11.9605 10.855 11.1746 10.7862 11.329 9.99964 11.4161 9.20135 11.4348 8.4ZM13.0449 4.19276C12.3623 4.29125 11.6777 4.36922 10.9909 4.42668 10.8675 3.96718 10.7084 3.51803 10.5149 3.08335 10.3382 2.68335 10.116 2.30509 9.85251 1.95611 11.1258 2.34659 12.2431 3.12941 13.0449 4.19276ZM3.53192 3.53106C4.26231 2.79999 5.16088 2.25923 6.14887 1.9562 6.13388 1.97562 6.11846 1.99417 6.10368 2.01398 5.59586 2.74502 5.22596 3.56274 5.01222 4.42681 4.32548 4.36864 3.64034 4.29063 2.95679 4.19276 3.13308 3.95925 3.32525 3.73817 3.53192 3.53106ZM2.95679 11.8072C3.63939 11.7087 4.32405 11.6308 5.01075 11.5733 5.13417 12.0328 5.29335 12.482 5.48683 12.9166 5.66347 13.3166 5.88574 13.6949 6.1492 14.0439 4.87594 13.6534 3.75862 12.8706 2.95679 11.8072ZM12.4698 12.4689C11.7394 13.2 10.8408 13.7408 9.85284 14.0438 9.86783 14.0244 9.88324 14.0058 9.89803 13.986 10.4059 13.255 10.7758 12.4373 10.9895 11.5732 11.6762 11.6313 12.3614 11.7094 13.0449 11.8072 12.8686 12.0407 12.6765 12.2618 12.4698 12.4689Z' fill='%23000000'/%3E%3C/svg%3E") no-repeat center / contain;
}

.mobile-menu__lang-toggle .mobile-menu__lang-text {
    flex: 1;
    text-align: left;
}

.mobile-menu__lang-arrow {
    flex-shrink: 0;
    transition: transform 0.2s ease;
}

.mobile-menu__lang-switcher.is-open .mobile-menu__lang-arrow {
    transform: rotate(180deg);
}

.mobile-menu__lang-toggle:active {
    background: #f6f6f6;
}

/* Mobile dropdown */
.mobile-menu__lang-dropdown {
    display: none;
    margin: 0;
    padding: 0;
    list-style: none;
    border: 1px solid rgba(196, 196, 196, 0.5);
    border-top: none;
}

.mobile-menu__lang-switcher.is-open .mobile-menu__lang-dropdown {
    display: block;
}

.mobile-menu__lang-dropdown li {
    margin: 0;
    padding: 0;
}

.mobile-menu__lang-dropdown a {
    display: block;
    padding: 0.75rem 1rem 0.75rem 2.5rem;
    font-family: var(--font-main, "Inter", sans-serif);
    font-size: 1rem;
    line-height: 150%;
    font-weight: 400;
    color: #000;
    text-decoration: none;
    text-transform: uppercase;
    transition: background-color 0.15s ease;
}

.mobile-menu__lang-dropdown a:hover,
.mobile-menu__lang-dropdown a:focus {
    background: #f6f6f6;
}
