   
                        
  
                                                               
                                                
  
           
                                                                        
                                                                        
                                                           
   

                                                                      
                                         
                                                                         

                                                                   
.vimeo-facade {
    position: relative;
    overflow: hidden;
    aspect-ratio: 16 / 9;
    border-radius: var(--gos-radius);
    background-color: #000;
    cursor: pointer;
}

                    
.vimeo-facade img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease, opacity 0.3s ease;
}

                                                
.vimeo-facade:hover img {
    transform: scale(1.03);
    opacity: 0.85;
}

                                                               
.vimeo-facade .play-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 72px;
    height: 72px;
    background-color: rgba(233, 69, 96, 0.9);                                     
    border-radius: 50%;
    border: none;
    cursor: pointer;
    transition: background-color 0.2s ease, transform 0.2s ease;
    pointer-events: none;                                  
}

                             
.vimeo-facade .play-button::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 54%;                                                   
    transform: translate(-50%, -50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 14px 0 14px 24px;
    border-color: transparent transparent transparent #fff;
}

                                     
.vimeo-facade:hover .play-button {
    background-color: rgba(233, 69, 96, 1);
    transform: translate(-50%, -50%) scale(1.08);
}

                                                                      
                         
                                                                         

                                                 
.video-lightbox-overlay {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(0, 0, 0, 0.72);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

dialog.video-lightbox-overlay {
    margin: 0;
    padding: 0;
    border: 0;
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
}

dialog.video-lightbox-overlay::backdrop {
    background: transparent;
}

[data-tcb-events][role="button"]:focus-visible,
.video-thumb:focus-visible,
.vimeo-facade:focus-visible,
.gos-vimeo-local-facade:focus-visible,
.vfacade:focus-visible {
    outline: 3px solid var(--gos-accent, #e94560);
    outline-offset: 3px;
}

                        
.video-lightbox-overlay.active {
    opacity: 1;
    visibility: visible;
}

                                                 
.video-lightbox-overlay .lightbox-content {
    position: relative;
    width: min(86vw, 720px, calc((100vh - 96px) * 16 / 9));
    width: min(86vw, 720px, calc((100dvh - 96px) * 16 / 9));
    max-width: 720px;
    aspect-ratio: 16 / 9;
    background: #111;
    box-shadow: 0 18px 50px rgba(0, 0, 0, 0.45);
}

.video-lightbox-overlay .lightbox-content iframe {
    width: 100%;
    height: 100%;
    border: none;
    border-radius: var(--gos-radius);
}

                                           
.video-lightbox-overlay .lightbox-close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 44px;
    height: 44px;
    border: none;
    background: transparent;
    cursor: pointer;
    z-index: 10000;
    padding: 0;
}

                        
.video-lightbox-overlay .lightbox-close::before,
.video-lightbox-overlay .lightbox-close::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 28px;
    height: 3px;
    background-color: #fff;
    border-radius: 2px;
    transition: background-color 0.2s ease;
}

.video-lightbox-overlay .lightbox-close::before {
    transform: translate(-50%, -50%) rotate(45deg);
}

.video-lightbox-overlay .lightbox-close::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.video-lightbox-overlay .lightbox-close:hover::before,
.video-lightbox-overlay .lightbox-close:hover::after {
    background-color: var(--gos-accent);
}

.video-lightbox-overlay.gos-source-video-overlay {
    z-index: 999992;
    background-color: rgba(0, 0, 0, 0.3);
}

.video-lightbox-overlay.gos-source-video-overlay .lightbox-content {
    width: min(70vw, calc((100vh - 96px) * 16 / 9));
    width: min(70vw, calc((100dvh - 96px) * 16 / 9));
    max-width: 100%;
    background: #000;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
}

.gos-source-video-overlay .lightbox-content iframe { border-radius: 0; }
.gos-source-video-overlay .lightbox-close { opacity: 1; background: rgba(0, 0, 0, 0.7); border-radius: 50%; }
.gos-source-video-overlay .lightbox-close:focus-visible { opacity: 1; }

@media (max-width: 680px) {
    .video-lightbox-overlay.gos-source-video-overlay .lightbox-content {
        width: min(calc(100vw - 32px), calc((100vh - 96px) * 16 / 9));
        width: min(calc(100vw - 32px), calc((100dvh - 96px) * 16 / 9));
    }
}

                                                                      
                                                  
                                                                         

                                                 
.video-thumb {
    display: block;
    border-radius: var(--gos-radius);
    overflow: hidden;
    cursor: pointer;
    transition: transform 0.2s ease;
}

.video-thumb:hover {
    transform: scale(1.03);
}

.tve_ea_thrive_video,
.tve_evt_manager_listen[data-tcb-events*="thrive_video"] {
    cursor: pointer;
}

.gos-vimeo-local-facade {
    position: absolute;
    inset: 0;
    display: block;
    overflow: hidden;
    background: #111;
    cursor: pointer;
}

.gos-vimeo-local-facade img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gos-vimeo-local-facade .play-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.92);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.28);
    pointer-events: none;
}

.gos-vimeo-local-facade .play-button::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 55%;
    transform: translate(-50%, -50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 14px 0 14px 23px;
    border-color: transparent transparent transparent #111;
}

.video-thumb img {
    width: 100%;
    height: auto;
    display: block;
}

                                                                      
             
                                                                         

                             
@media (max-width: 767px) {
                                          
    .vimeo-facade .play-button {
        width: 56px;
        height: 56px;
    }

    .vimeo-facade .play-button::after {
        border-width: 10px 0 10px 18px;
    }

                                     
    .video-lightbox-overlay .lightbox-content {
        width: min(94vw, 720px, calc((100vh - 96px) * 16 / 9));
        width: min(94vw, 720px, calc((100dvh - 96px) * 16 / 9));
    }

                                            
    .video-lightbox-overlay .lightbox-close {
        top: 0.5rem;
        right: 0.5rem;
        width: 48px;
        height: 48px;
    }
}
