.catalogue-carousel-nav {
    position: absolute;
    top: 25%;
    width: 100%;
    display: flex;
    justify-content: space-between;
    pointer-events: none;
}

.catalogue-carousel-nav button {
    background-color: rgba(0, 0, 0, 0.4);
    color: white;
    border: none;
    padding: 10px 15px;
    font-size: 20px;
    cursor: pointer;
    pointer-events: all;
    transition: background 0.3s;
    border-radius: 50%;
}

.catalogue-carousel-nav button:hover {
    background-color: #79b6c8;
}

.catalogue-carousel-nav button:hover {
    background-color: #79b6c8;
}

.catalogue-carousel {
    overflow: hidden;
    position: relative;
    width: 100%;
    box-sizing: border-box;
}

.catalogue-carousel-track {
    display: flex;
    transition: transform 0.5s ease;
    gap: 20px;
    will-change: transform;
}

.catalogue-slide {
    flex: 0 0 auto;
    width: 100%;
    box-sizing: border-box;
    scroll-snap-align: start;
}


.catalogue-slide {
    width: 100%;
}

.catalogue-carousel-track.no-transition {
    transition: none !important;
}

@media (max-width: 767px) {
    .catalogue-slide {
        width: calc(100%);
        padding: 20px;
    }
}

@media (min-width: 768px) {
    .catalogue-slide {
        width: calc((100% - 20px) / 2);
    }
}


@media (min-width: 992px) {
    .catalogue-slide {
        width: calc((100% - 40px) / 3);
    }
}


@media (min-width: 1200px) {
    .catalogue-slide {
        width: calc((100% - 60px) / 4);
    }
}