.preload {
    position: fixed; 
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: rgba(3, 6, 17, 0.589);
    transition: opacity 0.75s, visibility 0.75s;
    z-index: 2000; /* stays above header/footer */
}

.preload-hidden {
    opacity: 0;
    visibility: hidden;
}

.preload img {
    width: 160px;   /* adjust size */
    height: auto;
    animation: pulse 1.5s infinite; /* ✅ pulsing animation */
}

@keyframes pulse {
    0%   { transform: scale(1); opacity: 1; }
    50%  { transform: scale(1.1); opacity: 0.8; }
    100% { transform: scale(1); opacity: 1; }
}