/* Splash Wrapper */
.splash-image-wrapper {
    position: fixed;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    overflow: hidden;
}

/* Deep base background */
.bg-layer {
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at center, #0b1220 0%, #020617 70%);
}

/* Moving glow light */
.bg-glow {
    position: absolute;
    width: 140%;
    height: 140%;
    background: radial-gradient(circle, rgba(244,63,94,0.25), transparent 60%);
    animation: glowMove 6s ease-in-out infinite alternate;
    filter: blur(60px);
    opacity: 0.8;
}

/* Logo */
.splash-image {
    position: relative;
    width: clamp(100px, 10vw, 120px);
    opacity: 0;
    transform: scale(0.85);
    animation:
        fadeZoomIn 1.2s cubic-bezier(.22,.61,.36,1) forwards,
        hold 1s linear 1.2s forwards,
        fadeZoomOut 1s cubic-bezier(.22,.61,.36,1) forwards 2.2s;
}

/* Logo Animations */
@keyframes fadeZoomIn {
    to { opacity: 1; transform: scale(1); }
}

@keyframes hold {
    from { opacity: 1; }
    to { opacity: 1; }
}

@keyframes fadeZoomOut {
    to { opacity: 0; transform: scale(0.92); }
}

/* Glow motion */
@keyframes glowMove {
    0%   { transform: translate(-10%, -10%); }
    50%  { transform: translate(10%, 5%); }
    100% { transform: translate(-5%, 15%); }
}

/* Fade entire splash */
.splash-image-wrapper.fade-out {
    animation: bgFadeOut 0.8s ease forwards;
}

@keyframes bgFadeOut {
    to { opacity: 0; visibility: hidden; }
}
