/* Ensure html/body don't get horizontal scrollbars */
html, body {
    overflow-x: hidden;
}

/* Critical video player styles - should be inlined in head if possible */
.video-background {
    position: relative;
    width: 100vw;
    overflow: hidden;
    z-index: 0;
    left: 50%;
    transform: translateX(-50%);
    max-width: none;
}

.video-background video {
    display: block;
    width: 100%;
    height: auto;
    z-index: 10;
    opacity: 1;
    position: relative;
}

.fallback-image {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: opacity 0.3s ease !important;
}

/* Extremely specific selectors for priority */
html body .video-background .mobile-fallback {
    z-index: 5 !important;
    opacity: 0 !important;
    display: none !important;
}

html body .video-background .desktop-fallback {
    z-index: 5 !important;
    opacity: 0 !important;
    display: none !important;
}

@media (max-width: 598px) {
    html body .video-background .mobile-fallback {
        opacity: 1 !important;
        display: block !important;
    }
}

@media (min-width: 599px) {
    html body .video-background .desktop-fallback {
        opacity: 1 !important;
        display: block !important;
    }
}