/* ODC Carousel - ¿Qué hacemos? */

.odc-carousel-wrapper {
    width: 100%;
    overflow: hidden;
    padding: 40px 0;
    background-color: #fff;
    cursor: default;
    position: relative;
}

.odc-carousel__track-container {
    width: 100%;
    overflow: hidden;
}

.odc-carousel__track {
    display: flex;
    gap: 16px;
    width: max-content;
    will-change: transform;
    animation: odc-scroll 30s linear infinite;
}

/* Pausa la animación al pasar el mouse sobre el wrapper */
.odc-carousel-wrapper:hover .odc-carousel__track {
    animation-play-state: paused;
}

@keyframes odc-scroll {
    0% {
        transform: translateX(0);
    }
    100% {
        /* Mueve exactamente la mitad (el set original) para el loop infinito */
        transform: translateX(-50%);
    }
}

.odc-carousel__item {
    flex: 0 0 auto;
    width: calc((100vw - 48px) / 3);
    max-width: 400px;
    min-width: 220px;
    overflow: hidden;
    border-radius: 4px;
}

.odc-carousel__item img {
    width: 100%;
    height: 260px;
    object-fit: cover;
    display: block;
    border-radius: 4px;
    transition: transform 0.4s ease;
}

.odc-carousel__item:hover img {
    transform: scale(1.04);
}

/* Responsive */
@media (max-width: 768px) {
    .odc-carousel__item {
        width: calc((100vw - 32px) / 2);
    }

    .odc-carousel__item img {
        height: 180px;
    }
}

@media (max-width: 480px) {
    .odc-carousel__item {
        width: calc(100vw - 48px);
    }
}
