.carousel-slide {
    transition: all 1s cubic-bezier(0.4, 0, 0.2, 1);
}

.slide-center {
    transform: translateX(0) scale(1);
    opacity: 1;
    filter: blur(0px) brightness(1);
    z-index: 30;
}

.slide-left {
    transform: translateX(-80%) scale(0.75);
    opacity: 0.5;
    filter: blur(3px) brightness(0.7);
    z-index: 10;
}

.slide-right {
    transform: translateX(80%) scale(0.75);
    opacity: 0.5;
    filter: blur(3px) brightness(0.7);
    z-index: 10;
}

.slide-hidden {
    transform: translateX(0) scale(0.5);
    opacity: 0;
    filter: blur(5px);
    z-index: 0;
    pointer-events: none;
}

@media (max-width: 768px) {
    .slide-left,
    .slide-right {
        transform: translateX(0) scale(0.5);
        opacity: 0;
        filter: blur(5px);
        z-index: 0;
        pointer-events: none;
    }
    
    .slide-center {
        transform: translateX(0) scale(1);
    }
}

.nav-button {
    transition: all 0.5s ease-in-out;
}

.nav-button:hover {
    transform: scale(1.05);
}

.nav-button:active {
    transform: scale(0.95);
}

.masked2 {
    mask-image: radial-gradient(circle, black 70%, transparent 100%);
    -webkit-mask-image: radial-gradient(circle, black 70%, transparent 100%);
}

@media (max-width: 768px) {
    .masked2 {
        mask-image: none;
        -webkit-mask-image: none;
    }
}

.loading-spinner {
    border: 3px solid #f3f3f3;
    border-top: 3px solid #b94a39;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}