.pagination {
    display: flex;
    justify-content: center;
}

.pagination>li+li {
    margin-left: 10px;
}

.pagination>li>a,
.pagination>li>span {
    --size: 32px;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    width: var(--size);
    height: var(--size);
    border-radius: 50%;
    background-color: transparent;
    color: var(--color-text-gray3);
    font-size: 16px;
    transition: color .5s;
}

.pagination>li>a:hover,
.pagination>li>span:hover,
.pagination>li>a:focus,
.pagination>li>span:focus {
    color: var(--color-text-gray3);
    background-color: var(--color-text-light);
    border: none;
}

.pagination>li.active>a,
.pagination>li.active>span {
    color: var(--color-text-gray3) !important;
    background-color: var(--color-border-gray) !important;
}

.pagination>li.first>a,
.pagination>li.first>span,
.pagination>li.last>a,
.pagination>li.last>span,
.pagination>li.prev>a,
.pagination>li.prev>span,
.pagination>li.next>a,
.pagination>li.next>span {
    border-top-left-radius: 50%;
    border-bottom-left-radius: 50%;
    border-top-right-radius: 50%;
    border-bottom-right-radius: 50%;
    font-size: 0;
}

.pagination>li.first>a,
.pagination>li.first>span,
.pagination>li.last>a,
.pagination>li.last>span {
    background-image: url('../img/pagination/arrow.svg');
    background-repeat: no-repeat;
    background-size: 16px 16px;
    background-position: center center;
}

.pagination>li.prev>a,
.pagination>li.prev>span,
.pagination>li.next>a,
.pagination>li.next>span {
    background-image: url('../img/pagination/arrow-addon.svg');
    background-repeat: no-repeat;
    background-size: 16px 16px;
    background-position: center center;
}

.pagination>li.last>a,
.pagination>li.last>span,
.pagination>li.next>a,
.pagination>li.next>span {
    transform: rotateZ(180deg);
}

.pagination>li.disabled {
    opacity: .6;
}

@media (max-width: 480px) {
    .pagination {
        flex-wrap: wrap;
        max-width: 100%;
        justify-content: center;
    }

    .pagination::after {
        content: '';
        display: block;
        width: 100%;
        height: 10px;
        order: -1;
    }

    .pagination>li+li {
        margin-left: 6px;
    }

    .pagination>li.prev+li {
        margin-left: 0;
    }

    .pagination>li.prev {
        margin-right: 72px;
    }

    .pagination>li.prev,
    .pagination>li.first {
        order: -4;
    }

    .pagination>li.next,
    .pagination>li.last {
        order: -2;
    }
}