/* PRELOADER STYLES */
#preloader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #ffffff;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.5s ease-out, visibility 0.5s ease-out;
}

#preloader.fade-out {
    opacity: 0;
    visibility: hidden;
}

#preloader .logo-container {
    text-align: center;
    animation: fadeInOut 3s ease-in-out;
}

#preloader .logo-container img {
    max-width: 300px;
    height: auto;
    animation: pulse 2s ease-in-out infinite;
}

@keyframes fadeInOut {
    0% {
        opacity: 0;
        transform: scale(0.8);
    }
    50% {
        opacity: 1;
        transform: scale(1);
    }
    100% {
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes pulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.05);
    }
}

/* Hide body content until preloader finishes */
body.loading {
    overflow: hidden;
}

body.loading #preloader {
    opacity: 1;
    visibility: visible;
}
