.catalog_product_main .product_list,
.catalog_section_sub .product_list {
    display: grid;
    grid-auto-flow: dense;
    grid-row-gap: 24px;
    row-gap: 24px;
}

.catalog_section_sub .product_list._line {
    grid-template-columns: minmax(0,1fr);
    grid-gap: 10px;
}

.catalog_sorting_filter {
    display: none;
}

.catalog_sorting_view_btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    padding: 15px 0;
    cursor: pointer;
}

.catalog_sorting_view_btn._active svg,
.catalog_sorting_view_btn:not(._active):hover svg {
    fill: #ec691f;
}

.catalog_sorting_view_icon svg {
    vertical-align: middle;
    fill: #c3c3c3;
    transition: .25s fill;
}

@media (min-width: 480px) {
    .catalog_product_main .product_list,
    .catalog_section_sub .product_list {
        grid-template-columns: repeat(2, 1fr);
        grid-column-gap: 24px;
        column-gap: 24px;
    }
}

@media (min-width: 768px) {
    .catalog_product_main .product_list,
    .catalog_section_sub .product_list {
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 28px;
        gap: 28px;
    }

    .catalog_sorting_view_btn {
        padding: 17px;
        min-width: 62px;
    }

    .catalog_sorting_filter .catalog_sorting_view_btn {
        border: 1px solid #e5e5e5;
    }
}

@media (min-width: 1280px) {
    .catalog_product_main .product_list {
        grid-template-columns: repeat(4, 1fr);
    }

    .catalog_product_main .product_list,
    .catalog_section_sub .product_list {
        grid-gap: 36px;
        gap: 36px;
    }

    .product_nav {
        margin-top: 35px;
    }
}

@media (min-width: 1620px) {
    .catalog_product_main .product_list {
        grid-template-columns: repeat(5, 1fr);
    }

    .catalog_section_sub .product_list {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media(max-width: 1200px) {
    .catalog_sorting_filter {
        display: flex;
        justify-content: end;
    }
}

.more_goods {
    margin: 35px auto 0;
    text-decoration: none;
    font-size: 14px;
    line-height: 26px;
    color: #ffffff;
    text-transform: uppercase;
    width: fit-content;
    position: relative;
    display: block;
    align-items: center;
    outline: none;
    border: 0;
    border-radius: 3px;
    cursor: pointer;
    padding: 6px 15px;
    background-color: #ec691f;
    transition: 0.25s;
}

.more_goods:hover {
    background-color: #d84e00;
}

@media(max-width: 1280px) {
    .more_goods {
        margin-bottom: 35px;
    }
}
