#cipe-preloader {
    position: fixed;
    top: 0; left: 0;
    width: 100%; height: 100%;
    z-index: 9999;
    display: flex; justify-content: center; align-items: center;
    background: transparent;
    overflow: hidden;
    pointer-events: none;
}
.cipe-bg {
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
    background: #352c26;
}
.cipe-logo {
    opacity: 0;
    width: var(--cipe-logo-width);
    height: auto;
    max-width: 90%;
}

/* Responsive */
@media (max-width: 1024px) {
    .cipe-logo {
        width: var(--cipe-logo-width-tablet);
    }
}
@media (max-width: 768px) {
    .cipe-logo {
        width: var(--cipe-logo-width-mobile);
    }
}

/* Animations */
@keyframes slideIn { from { top: 100%; } to { top: 0; } }
@keyframes slideOut { from { top: 0; } to { top: -100%; } }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes fadeOut { from { opacity: 1; } to { opacity: 0; } }
@keyframes zoomIn { from { transform: scale(0); opacity: 0; } to { transform: scale(1); opacity: 1; } }
@keyframes zoomOut { from { transform: scale(1); opacity: 1; } to { transform: scale(0); opacity: 0; } }
@keyframes fadeInLogo { from { opacity: 0; } to { opacity: 1; } }
@keyframes fadeOutLogo { from { opacity: 1; } to { opacity: 0; } }
@keyframes bounceInLogo {
    0% { opacity: 0; transform: scale(0.3); }
    50% { opacity: 1; transform: scale(1.05); }
    70% { transform: scale(0.9); }
    100% { transform: scale(1); }
}
@keyframes zoomOutLogo { from { transform: scale(1); opacity: 1; } to { transform: scale(0); opacity: 0; } }

.slideIn { animation: slideIn 1s forwards; }
.slideOut { animation: slideOut 1s forwards; }
.fadeIn { animation: fadeIn 1s forwards; }
.fadeOut { animation: fadeOut 1s forwards; }
.zoomIn { animation: zoomIn 1s forwards; }
.zoomOut { animation: zoomOut 1s forwards; }

.fadeInLogo { animation: fadeInLogo 1s 1s forwards; }
.fadeOutLogo { animation: fadeOutLogo 1s forwards; }
.bounceInLogo { animation: bounceInLogo 1s 1s forwards; }
.zoomOutLogo { animation: zoomOutLogo 1s forwards; }
