.mfp-video-popup .mfp-content {
    max-width: 800px;
    background: #000;
    padding: 20px;
    border-radius: 4px;
    max-height: 83.33vh; /* 5/6 of viewport height */
}

.video-popup-container {
    position: relative;
    height: calc(83.33vh - 40px); /* 5/6 viewport height minus padding */
    width: 100%;
}

.video-popup-container video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    object-fit: contain;
}

.mfp-with-zoom .mfp-container {
    opacity: 0;
    transition: all 0.3s ease-out;
}

.mfp-with-zoom.mfp-ready .mfp-container {
    opacity: 1;
}

.mfp-with-zoom.mfp-removing .mfp-container {
    opacity: 0;
}