/* idioma.css - estilos scoping para evitar conflictos entre idioma, clima y multicam */

.idioma-layer {
    position: relative;
    overflow: hidden;
}

.idioma-layer .idioma-video-container {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.idioma-layer .idioma-video-container video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 90ms linear;
    will-change: opacity;
}

.idioma-layer .idioma-video-container video.is-active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.idioma-layer .center-control {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 4;
    width: 76px;
    height: 76px;
    border: 0;
    padding: 0;
    background: transparent;
    cursor: pointer;
}

.idioma-layer .center-control img {
    display: block;
    width: 100%;
    height: auto;
}

.idioma-layer .buttons {
    position: absolute;
    left: 50%;
    bottom: 34px;
    transform: translateX(-50%);
    z-index: 4;
    display: flex;
    gap: 14px;
    align-items: center;
    justify-content: center;
}

.idioma-layer .flag-button {
    width: 48px;
    height: 48px;
    border: 2px solid rgba(255, 255, 255, 0.45);
    border-radius: 50%;
    padding: 0;
    overflow: hidden;
    background: rgba(0, 0, 0, 0.25);
    cursor: pointer;
    opacity: 0.72;
    transition: opacity 160ms ease, transform 160ms ease, border-color 160ms ease;
}

.idioma-layer .flag-button img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.idioma-layer .flag-button.is-active,
.idioma-layer .flag-button:hover {
    opacity: 1;
    transform: scale(1.05);
    border-color: rgba(255, 255, 255, 0.95);
}

/* Asegura que los controles de clima/multicam queden por encima del video. */
.services-bg-wrapper .btn-multicam,
.services-bg-wrapper .logo-multicam {
    position: absolute;
    z-index: 5;
}
