#categories {
    padding-bottom: 50px;
}

a.categories-item {
    /* flex-basis: calc((100% / 6) - (5 * 26px / 6));
    flex-basis: 200px; */
}

a.categories-item+a.categories-item {
    /* margin-left: 26px; */
}

a.categories-item .circle {
    width: 200px;
    max-width: 100%;
    aspect-ratio: 1;
    border-width: 4px;
    border-color: var(--middle-gray);
    transition: background-color .3s;
}

.categories-image img {
    margin: 4px;
}

a.categories-item .circle.with-half {
    padding-bottom: 100%;
    ;
    border-width: 0;
}

a.categories-item .half-circle {
    border-bottom-left-radius: 300px;
    border-bottom-right-radius: 300px;
    width: 100%;
    height: 50%;
    border-color: var(--dark-red);
    transform: rotate(-45deg);
    transform-origin: top center;
    top: 50%;
    transition: transform 0.3s;
}

a.categories-item:hover .half-circle {
    transform: rotate(135deg);
}

a.categories-item .categories-image+strong {
    color: #000;
    font-size: 17px;
    margin-top: 16px;
    margin-bottom: 4px;
    position: relative;
}

a.categories-item span {
    text-decoration: underline;
}

a.categories-item .categories-image+strong:after {
    content: '';
    display: block;
    height: 2px;
    width: 0;
    position: absolute;
    left: 0;
    bottom: -5px;
    background-color: #c23939;
    transition: width .3s;
}

a.categories-item .half-circle+strong {
    color: #fff;
    font-size: 1.375em;
}

#categories h2 {
    font-size: 45px
}

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

#categories .swiper-padding {
    padding: 0 32px;
}

#categories .swiper-button-prev {
    left: -40px;
}

#categories .swiper-button-next,
#categories .swiper-button-prev {
    top: 14px;
    color: #a6a5a5;
    background-color: #fff;
    --swiper-navigation-size: 27px;
    opacity: 1;
    height: 100%;
    width: 40px;
}

#categories .swiper-button-next::after,
#categories .swiper-button-prev::after {
    position: relative;
    top: -33px;
    width: 100%;
    left: 5px;
    text-align: center;
}

#categories .swiper-button-next::after {
    right: 5px;
    left: unset;
}

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

    /* a.categories-item {
        flex-basis: calc((100% / 3) - (5 * 26px / 3));
        flex-basis: 200px;
    } */
    a.categories-item,
    a.categories-item+a.categories-item {
        /* margin: 13px; */
    }
}

@media screen and (max-width: 767px) {
    .categories-image {
        position: relative;
    }

    .categories-image img {
        max-width: 100%;
    }
}

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

    /* a.categories-item {
        flex-basis: calc(50% - 20px);
        flex-basis: 200px;
    } */
    a.categories-item,
    a.categories-item+a.categories-item {
        /* margin: 22px 10px; */
    }

    #categories .swiper-padding {
        padding: 0 45px;
    }

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

    #categories .swiper-button-prev {
        left: -46px;
    }

    #categories .swiper-button-next::after {
        text-align: left;
        padding-left: 10px;
    }

    #categories .swiper-button-prev::after {
        text-align: right;
        padding-right: 10px;
    }

    #categories .swiper-button-next::after,
    #categories .swiper-button-prev::after {
        top: -13px;
    }

    a.categories-item .categories-image+strong {
        font-size: 1.25em;
        margin-top: 19px;
    }

    #categories h2 {
        font-size: 30px;
        line-height: 1;
        margin-top: 22px;
    }

    #categories h2 br {
        display: none
    }

    #categories .swiper-button-prev,
    #categories .swiper-button-next {
        display: flex
    }

    a.categories-item .categories-image+strong {
        font-size: 18px;
        margin-top: 10px;
        margin-bottom: -3px;
    }

    a.categories-item span {
        font-size: 14px;
    }

    a.categories-item .circle {
        width: 100%;
    }

    .categories-image img {
        max-width: 110%;
    }

    #categories .flex>a {
        margin: 0 5px 20px 5px;
        width: calc(50% - 10px);
    }
}