* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family: Arial, sans-serif;
}

.container {
    overflow: hidden;
    width: 100vw;
    padding: 20px 0;
}

.slider {
    display: flex;
    width: max-content;
    /* Fallback GPU hack if the will-change property isn't supported;
    */
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    /* smooth, hardware-accelerated transform */
    will-change: transform;
    animation: slide 30s linear infinite;
}

/* Pause animation while hovering the container */
.container:hover .slider {
    animation-play-state: paused;
}

/* Explicit default (running) state */
.container .slider {
    animation-play-state: running;
}

.card {
    width: 200px;
    margin: 0 10px;
    padding: 20px;
    border: 1px solid #ccc;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    text-align: center;
    flex-shrink: 0;
}

@keyframes slide {
    0% {
        transform: translate3d(0, 0, 0);
    }

    100% {
        /* move exactly half of the slider width */
        transform: translate3d(-50%, 0, 0);
    }
}

/* Fallback si pas d’animations CSS */
.no-css-animation .slider {
    animation: none !important;
    position: relative;
    left: 0;
}