.guri-carousel-section {
    padding: 60px 0;
}
.guri-carousel-heading {
    margin: 0 0 12px;
    text-transform: uppercase;
    padding: 20px 0;
}

.guri-carousel-wrapper {
    position: relative;
    margin: 0 auto;
    outline: none;
    width: 100%;
    max-width: 1200px;
    overflow-x: clip;
}

.guri-carousel-prev {
    left: 0;
}

.guri-carousel-next {
    right: 0;
}


.guri-carousel {
    display: flex;
    gap: clamp(8px, 1vw, 12px);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;
    cursor: grab;
    padding: 10px 0;
    scroll-padding: 0 20px;
}

.guri-grab {
    cursor: grabbing;
}

.guri-carousel::-webkit-scrollbar {
    display: none;
}

.guri-carousel-prev,
.guri-carousel-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 34px;
    height: 34px;
    border: none;
    background: #000;
    color: #fff;
    font-size: 20px;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    z-index: 2;
}



.guri-carousel-prev:disabled,
.guri-carousel-next:disabled {
    opacity: .3;
    cursor: default;
}

.guri-carousel__slide {
    flex: 0 0 clamp(200px, 22vw, 260px);
    scroll-snap-align: start;
}

.guri-carousel__slide .guri-card {
    height: 100%;
}

@media (max-width: 768px) {
    .guri-carousel-prev,
    .guri-carousel-next {
        display: none;
    }

    .guri-carousel {
        padding: 12px 16px;
        gap: clamp(16px, 4vw, 22px);
    }

    .guri-carousel__slide {
        flex: 0 0 calc(100% / 1.5);
        min-width: calc(100% / 1.5);
    }

    .guri-carousel__slide .product-card-carousel-item {
        width: 100%;
        min-width: 0;
        max-width: none;
    }

    .guri-carousel__slide .product-card {
        padding: 16px;
    }

    .guri-carousel__slide .product-card__image img {
        width: 100%;
        height: auto;
    }
}
