/* Basic slider styling */
.slider-wrapper {
    overflow: hidden;
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    position: relative;
    padding: 40px 0;
    -webkit-mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
    mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
}

.slider-track {
    display: flex;
    animation: scroll 30s linear infinite;
    gap: 20px;
}

.slide {
    flex: 0 0 auto;
    width: 280px;
    height: 380px;
    background-color: #fff;
    border-radius: 16px;
    padding: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.6);
}

.slide img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    border-radius: 8px;
}

@keyframes scroll {
    0% {
        transform: translateX(0%);
    }

    100% {
        transform: translateX(calc(-280px * 12 - 20px * 12));
        /* Adjust this based on slide count, currently 12 unique, so - (width + gap) * count */
    }
}

/* Mobile responsiveness */
@media (max-width: 600px) {
    .slider-wrapper {
        padding: 20px 0;
        max-width: 90vw;
        /* Take up most of the screen width on phone */
        -webkit-mask-image: linear-gradient(to right, transparent, black 5%, black 95%, transparent);
        mask-image: linear-gradient(to right, transparent, black 5%, black 95%, transparent);
    }

    .slide {
        width: 180px;
        /* Smaller cards on mobile */
        height: 240px;
        padding: 10px;
        border-radius: 12px;
    }

    .slider-track {
        gap: 10px;
        animation: scroll-mobile 20s linear infinite;
    }
}

@keyframes scroll-mobile {
    0% {
        transform: translateX(0%);
    }

    100% {
        transform: translateX(calc(-180px * 12 - 10px * 12));
    }
}