.categories {
    padding: 0;
}

.categories .title {
    padding: 1em 0;
    text-transform: uppercase;
}

.categories .category-content .category-name a {
    font-size: 1rem;
    font-weight: 400;
    color: var(--alfa-black, black);
}

/* grid */
.category-grid-container {
    display: grid;
    gap: 1rem;
}

.category-grid-item {
    min-width: 0;
    min-height: 0;
}

/* carousel */
.categories .carousel-element-wrapper {
    position: relative;
    width: 100%;
    margin: 0 auto;
}

.categories .swiper {
    width: 100%;
    height: auto;
    overflow: hidden;
    overflow: clip;
}

.categories .swiper-wrapper {
    display: flex;
    align-items: stretch;
    list-style: none;
    padding: 0;
    margin: 0;
}

/* ===== SLIDE ITEMS ===== */
.categories .carousel-slide-item {
    flex-shrink: 0;
    padding: 0px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
}

.categories .carousel-slide-item>* {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* .categories .carousel-slide-item {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
}

.categories .swiper-slide-active,
.categories .swiper-slide-active+div,
.categories .swiper-slide-active+div+div,
.categories .swiper-slide-active+div+div+div {
    opacity: 1;
    visibility: visible;
} */

/* ===== NAVIGATION ARROWS ===== */
.categories [data-nav="false"] .swiper-button-prev,
.categories [data-nav="false"] .swiper-button-next,
.categories [data-nav="false"]~.swiper-button-prev,
.categories [data-nav="false"]~.swiper-button-next {
    display: none;
}

.categories .swiper-button-prev,
.categories .swiper-button-next {
    position: absolute;
    z-index: 10;
    width: 19px;
    height: 19px;
    background: url('/modules/abcweb_theme/views/img/arrow.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 80% 100%;
    color: #b3924a;
    /* iOS */
    color: var(--alfa-gold, goldenrod);
    opacity: 0.7;
    transition: opacity 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    cursor: pointer;
    font-size: 24px;
}

.categories .swiper-button-prev::after,
.categories .swiper-button-next::after {
    content: '';

}

.categories .swiper-button-prev {
    left: 10px;
    transform: scaleX(-1);
}

.categories .swiper-button-next {
    right: 10px;
}

.categories .swiper-button-prev:hover,
.categories .swiper-button-next:hover {
    opacity: 1;
}

/* ===== ARROW POSITIONS ===== */
.categories .arr-top .swiper-button-prev,
.categories .arr-top .swiper-button-next {
    top: 0;
    margin-top: 0;
}

.categories .arr-top~.swiper-button-prev,
.categories .arr-top~.swiper-button-next {
    top: 0;
    margin-top: 0;
}

.categories .arr-mid .swiper-button-prev,
.categories .arr-mid .swiper-button-next {
    top: 50%;
    margin-top: -20px;
}

.categories .arr-mid~.swiper-button-prev,
.categories .arr-mid~.swiper-button-next {
    top: 50%;
    margin-top: -20px;
}

.categories .arr-bot .swiper-button-prev,
.categories .arr-bot .swiper-button-next {
    top: auto;
    bottom: 0;
    margin-top: 0;
}

.categories .arr-bot~.swiper-button-prev,
.categories .arr-bot~.swiper-button-next {
    top: auto;
    bottom: 0;
    margin-top: 0;
}

.categories .swiper-button-prev.swiper-button-disabled,
.categories .swiper-button-next.swiper-button-disabled {
    opacity: .35;
    cursor: auto;
    pointer-events: none;
}

/* ===== PAGINATION DOTS ===== */
.categories .swiper-pagination {
    list-style: none;
    padding: 0;
    margin: 0;
    text-align: center;
}

.categories .swiper-pagination-bullet {
    background: var(--alfa-glass, whitesmoke);
    opacity: 0.7;
    width: 11px;
    height: 11px;
    margin: 0 5px;
    display: inline-block;
    cursor: pointer;
    transition: background 0.3s;
    border-radius: 50%;
}

.categories .swiper-pagination-bullet-active {
    background: var(--alfa-gold, goldenrod);
    opacity: 1;
}

/* ===== PAGINATION POSITIONS ===== */
.categories .pag-top .swiper-pagination {
    order: -1;
    margin-bottom: 20px;
}

.categories .pag-bottom .swiper-pagination {
    margin-top: 20px;
}

.categories .pag-inside-left .swiper-pagination {
    position: absolute;
    bottom: 10px;
    left: 10px;
    text-align: left;
    background: rgba(0, 0, 0, 0.2);
    padding: 10px;
    border-radius: 4px;
}

.categories .pag-inside-right .swiper-pagination {
    position: absolute;
    bottom: 10px;
    right: 10px;
    text-align: right;
    background: rgba(0, 0, 0, 0.2);
    padding: 10px;
    border-radius: 4px;
}

/* ===== EMPTY STATE ===== */
.categories .carousel-element-empty {
    padding: 20px;
    margin: 20px 0;
}

/**/
.categories .category-image img {
    width: 100%;
    height: 100%;
}

/* ===== RESPONSIVE ===== */
@media screen and (max-width: 768px) {

    .categories .swiper-button-prev,
    .categories .swiper-button-next {
        /* width: 30px; */
        /* height: 30px; */
        font-size: 16px;
    }
}

@media screen and (max-width: 480px) {

    .categories .swiper-button-prev,
    .categories .swiper-button-next {
        width: 25px;
        height: 25px;
        font-size: 14px;
    }

    .categories .swiper-pagination-bullet {
        width: 8px;
        height: 8px;
        margin: 0 3px;
    }
}


@media (max-width: 1024px) {
    .categories .title {
        padding: 30px 0;
        margin-bottom: 0;
    }

    .categories .carousel-element-wrapper {
        /* 19px arrow + 2 px gap in figma = 21px */
        padding-left: 21px;
        padding-right: 21px;
    }

    .categories .swiper-button-prev,
    .categories .swiper-button-next {
        width: 19px;
        height: 19px;
    }

    .categories .carousel-element-wrapper .arr-bot .swiper-button-prev,
    .categories .carousel-element-wrapper .arr-bot .swiper-button-next {
        bottom: 8px;
    }

    .categories .carousel-element-wrapper .swiper-button-prev {
        left: -21px;
    }

    .categories .carousel-element-wrapper .swiper-button-next {
        right: -21px;
    }
}

@media (min-width: 1024px) {
    .categories [data-slides-per-view="1"] .carousel-slide-item,
    .categories [data-slides-per-view="2"] .carousel-slide-item,
    .categories [data-slides-per-view="3"] .carousel-slide-item,
    .categories [data-slides-per-view="4"] .carousel-slide-item,
    .categories [data-slides-per-view="5"] .carousel-slide-item,
    .categories [data-slides-per-view="6"] .carousel-slide-item {
        opacity: 0;
        transition: opacity 0.5s;
    }

    .categories [data-slides-per-view="1"] .swiper-slide-active,
    .categories [data-slides-per-view="2"] .swiper-slide-active,
    .categories [data-slides-per-view="3"] .swiper-slide-active,
    .categories [data-slides-per-view="4"] .swiper-slide-active,
    .categories [data-slides-per-view="5"] .swiper-slide-active,
    .categories [data-slides-per-view="6"] .swiper-slide-active {
        opacity: 1;
    }

    .categories [data-slides-per-view="2"] .swiper-slide-active+.swiper-slide-next,
    .categories [data-slides-per-view="3"] .swiper-slide-active+.swiper-slide-next,
    .categories [data-slides-per-view="4"] .swiper-slide-active+.swiper-slide-next,
    .categories [data-slides-per-view="5"] .swiper-slide-active+.swiper-slide-next,
    .categories [data-slides-per-view="6"] .swiper-slide-active+.swiper-slide-next {
        opacity: 1;
    }

    .categories [data-slides-per-view="3"] .swiper-slide-next+.swiper-slide,
    .categories [data-slides-per-view="4"] .swiper-slide-next+.swiper-slide,
    .categories [data-slides-per-view="5"] .swiper-slide-next+.swiper-slide,
    .categories [data-slides-per-view="6"] .swiper-slide-next+.swiper-slide {
        opacity: 1;
    }

    .categories [data-slides-per-view="4"] .swiper-slide-next+.swiper-slide+.swiper-slide,
    .categories [data-slides-per-view="5"] .swiper-slide-next+.swiper-slide+.swiper-slide,
    .categories [data-slides-per-view="6"] .swiper-slide-next+.swiper-slide+.swiper-slide {
        opacity: 1;
    }

    .categories [data-slides-per-view="5"] .swiper-slide-next+.swiper-slide+.swiper-slide+.swiper-slide,
    .categories [data-slides-per-view="6"] .swiper-slide-next+.swiper-slide+.swiper-slide+.swiper-slide {
        opacity: 1;
    }

    .categories [data-slides-per-view="6"] .swiper-slide-next+.swiper-slide+.swiper-slide+.swiper-slide+.swiper-slide {
        opacity: 1;
    }
}

@media (max-width: 1023.98px) {
    .categories [data-slides-per-view-tablet="1"] .carousel-slide-item,
    .categories [data-slides-per-view-tablet="2"] .carousel-slide-item,
    .categories [data-slides-per-view-tablet="3"] .carousel-slide-item,
    .categories [data-slides-per-view-tablet="4"] .carousel-slide-item {
        opacity: 0;
        transition: opacity 0.5s;
    }

    .categories [data-slides-per-view-tablet="1"] .swiper-slide-active,
    .categories [data-slides-per-view-tablet="2"] .swiper-slide-active,
    .categories [data-slides-per-view-tablet="3"] .swiper-slide-active,
    .categories [data-slides-per-view-tablet="4"] .swiper-slide-active,
    .categories [data-slides-per-view-tablet="2"] .swiper-slide-active+.swiper-slide-next,
    .categories [data-slides-per-view-tablet="3"] .swiper-slide-active+.swiper-slide-next,
    .categories [data-slides-per-view-tablet="4"] .swiper-slide-active+.swiper-slide-next {
        opacity: 1;
    }

    .categories [data-slides-per-view-tablet="3"] .swiper-slide-next+.swiper-slide,
    .categories [data-slides-per-view-tablet="4"] .swiper-slide-next+.swiper-slide {
        opacity: 1;
    }

    .categories [data-slides-per-view-tablet="4"] .swiper-slide-next+.swiper-slide+.swiper-slide {
        opacity: 1;
    }
}



/* RESPONSIVE */

/* XXL larger desktops >= 1400 */
@media screen and (min-width: 1400px) { /* 1401 - inf */
}
/* XL large desktops >= 1200 */
@media screen and (max-width: 1399.98px) { /* 1201 - 1400 */
}
/* LG desktops >= 992 */
@media screen and (max-width: 1199.98px) { /* 993 - 1200 */
}
/* MD tablets >= 768 */
@media screen and (max-width: 991.98px) { /* 769 - 992 */
}
/* SM phones >= 576 */
@media screen and (max-width: 767.98px) { /* 577 - 768 */
    .categories [data-slides-per-view-mobile="1"] .carousel-slide-item,
    .categories [data-slides-per-view-mobile="2"] .carousel-slide-item {
        opacity: 0;
        transition: opacity 0.5s;
    }
    .categories [data-slides-per-view-mobile="1"] .swiper-slide-active,
    .categories [data-slides-per-view-mobile="2"] .swiper-slide-active,
    .categories [data-slides-per-view-mobile="2"] .swiper-slide-active+.swiper-slide-next {
        opacity: 1;
    }
}
/* XS small phones < 576 */
@media screen and (max-width: 575.98px) { /* 0 - 576 */
}

