section.catalog {
    display: flex;
    flex-direction: column;
    .filter {
        display: flex;
        margin-top: 40px;
        padding: 10px 0;
        border-bottom: 1px solid var(--c-light);
        > p {
            display: flex;
            align-items: center;
            span {
                margin-left: 4px;
            }
        }
        .sort {
            margin-left: auto;
            margin-right: 0;
            position: relative;
            padding: 10px;
            display: flex;
            p {
                display: flex;
                align-items: center;
            }
            .options {
                position: relative;
                margin-left: 6px;
                > p {
                    color: var(--c-white);
                    font-size: 16px;
                    font-weight: var(--fw-medium);
                    display: flex;
                    align-items: center;
                    &::after {
                        color: inherit;
                        font-size: inherit;
                        content: '\e908';
                        font-family: icon;
                        font-size: 12px;
                        transform: rotate(90deg);
                        margin-left: 6px;
                        transition: .2s linear;
                    }
                }
                .items {
                    position: absolute;
                    margin-top: 8px;
                    background: var(--c-dark);
                    z-index: 11;
                    padding: 10px;
                    width: 200px;
                    right: 0;
                    border-radius: 10px;
                    visibility: hidden;
                    opacity: 0;
                    top: -40px;
                    pointer-events: none;
                    transition: .3s linear;
                    p {
                        padding: 10px;
                        border-radius: 10px;
                        text-transform: capitalize;
                        pointer-events: none;
                        cursor: pointer;
                    }
                }
            }
            &.active {
                .options {
                    > p {
                        &::after {
                            transform: rotate(180deg);
                        }
                    }
                    .items {
                        visibility: visible;
                        opacity: 1;
                        top: 100%;
                        pointer-events: all;
                        p {
                            pointer-events: all;
                        }
                    }
                }
            }
        }
    }
    .pagination {
        display: flex;
        margin: 40px auto 0;
        display: flex;
        gap: 0px;
        .btn, span {
            width: 60px;
            height: 60px;
            border-radius: 30px;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--c-white);
            font-size: 20px;
            font-family: var(--font-main);
            &.prev {
                &::before {
                    content: '\e907';
                }
            }
            &.next {
                &::before {
                    content: '\e908';
                }
            }
            &.active {
                background: var(--c-dark);
            }
            &::before {
                font-size: 12px;
                font-family: icon;
            }
        }
    }
}
@media screen and (max-width: 1759px) {
    section.catalog {
        .pagination {
            .btn, span {
                width: 52px;
                height: 52px;
                font-size: 16px;
            }
        }
    }
}
@media screen and (max-width: 767px) {
    section.catalog {
        .filter {
            > p {
                font-size: 12px;
                display: flex;
                flex-direction: column;
                align-items: start;
                span {
                    margin: 0;
                }
            }
            .sort {
                p {
                    font-size: 14px;
                }
                .options {
                    > p {
                        font-size: 14px;
                    }
                }
            }
        }
        .pagination {
            margin-top: 20px;
            .btn, span {
                width: 44px;
                height: 44px;
                font-size: 14px;
            }
        }
    }
}
@media screen and (hover: hover) {
    section.catalog {
        .filter {
            .sort:hover {
                .options {
                    > p {
                        &::after {
                            transform: rotate(270deg);
                        }
                    }
                    .items {
                        visibility: visible;
                        opacity: 1;
                        top: 100%;
                        pointer-events: all;
                        p {
                            pointer-events: all;
                            &:hover {
                                background: var(--c-dark-bg);
                            }
                        }
                    }
                }
            }
        }
        .pagination {
            .btn:hover {
                background: var(--c-dark);
            }
        }
    }
}