.splash-screen {
    position: fixed;
    inset: 0;
    background: linear-gradient(135deg, #003366, #005baa, #00a6e8);
    z-index: 99999;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    overflow: hidden;
    animation: fadeOutSplash 1.2s ease forwards;
    animation-delay: 3.5s;
}

.splash-logo {
    font-size: 4rem;
    font-weight: bold;
    color: #fff;
    letter-spacing: 8px;
    text-transform: uppercase;
    animation: zoomIn 1.2s ease;
}

.splash-text {
    color: white;
    font-size: 1.2rem;
    margin-top: 15px;
    opacity: 0;
    animation: fadeInUp 1s ease forwards;
    animation-delay: .8s;
}

.splash-glow {
    position: absolute;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    background: rgba(255,255,255,.15);
    filter: blur(60px);
    animation: pulse 2s infinite;
}

@keyframes zoomIn {
    from {
        transform: scale(0);
        opacity: 0;
    }

    to {
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes fadeInUp {
    from {
        transform: translateY(40px);
        opacity: 0;
    }

    to {
        transform: translateY(0);
        opacity: 1;
    }
}

@keyframes pulse {
    0%, 100% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.3);
    }
}

@keyframes fadeOutSplash {
    to {
        opacity: 0;
        visibility: hidden;
    }
}

.container {
    opacity: 0;
    transform: translateY(40px);
    animation: showContent 1s ease forwards;
    animation-delay: 3.8s;
}

@keyframes showContent {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.page-headerborderless {
    animation: slideTitle 1.2s ease;
}

@keyframes slideTitle {
    from {
        opacity: 0;
        transform: translateX(-80px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.video-banner {
    position: relative;
    width: 100%;
    height: 60vh;
    min-height: 350px;
    max-height: 600px;
    overflow: hidden;
    background: #000;
}

    .video-banner video {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 100%;
        height: 100%;
        object-fit: cover;
        transform: translate(-50%, -50%);
    }

@media (max-width: 768px) {
    .video-banner {
        height: 40vh;
        min-height: 220px;
    }
}