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

    .catalog .catalog-aside {
        width: 240px;
    }

    .catalog .catalog-aside .aside-latest .latest-post .post-content {
        width: calc(100% - 60px);
        /* height: 60px; */
        padding: 0 0 0 10px;
    }

    .catalog .catalog-products .products-list {
        width: 1020px;
        grid-template-columns: 326px 326px 326px;
        column-gap: 21px;
    }

    .catalog .catalog-products .products-list .list-item {
        width: 326px;
    }
    
    .catalog .catalog-products .products-list .list-item .item-image {
        width: 326px;
        height: 326px;
    }

    .catalog .catalog-products .products-list .list-item .item-image button.buy-btn {
        left: 53px;
    }

}



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

    .catalog .catalog-aside {
        width: 220px;
    }

    .catalog .catalog-products .products-list {
        width: 940px;
        grid-template-columns: 300px 300px 300px;
        column-gap: 20px;
    }

    .catalog .catalog-products .products-list .list-item {
        width: 300px;
    }
    
    .catalog .catalog-products .products-list .list-item .item-image {
        width: 300px;
        height: 300px;
    }

    .catalog .catalog-products .products-list .list-item .item-image a img {
        width: 260px;
        height: 260px;
    }

    .catalog .catalog-products .products-list .list-item .item-image button.buy-btn {
        left: 40px;
    }

}



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

    .catalog .catalog-aside {
        width: 200px;
    }

    .catalog .catalog-products .products-list {
        width: 860px;
        grid-template-columns: 272px 272px 272px;
        column-gap: 22px;
    }

    .catalog .catalog-products .products-list .list-item {
        width: 272px;
    }
    
    .catalog .catalog-products .products-list .list-item .item-image {
        width: 272px;
        height: 272px;
    }

    .catalog .catalog-products .products-list .list-item .item-image a img {
        width: 232px;
        height: 232px;
    }

    .catalog .catalog-products .products-list .list-item .item-image button.buy-btn {
        left: 26px;
    }

}



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

    .catalog .catalog-aside {
        width: 230px;
    }

    .catalog .catalog-products .products-list {
        width: 730px;
        grid-template-columns: 230px 230px 230px;
        column-gap: 20px;
    }

    .catalog .catalog-products .products-list .list-item {
        width: 230px;
    }
    
    .catalog .catalog-products .products-list .list-item .item-image {
        width: 230px;
        height: 230px;
    }

    .catalog .catalog-products .products-list .list-item .item-image a img {
        width: 190px;
        height: 190px;
    }

    .catalog .catalog-products .products-list .list-item .item-image button.buy-btn {
        width: 190px;
        left: 20px;
    }

}



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

    .catalog .catalog-category h1 {
        padding: 5px 0;
        font-size: 18px;
        line-height: 20px;
    }

    .catalog .catalog-aside {
        width: calc(25% - 10px);
        margin: 0 10px 30px 0;
    }

    .catalog .catalog-products {
        overflow: hidden;
    } 

    .catalog .catalog-products .products-list {
        width: 100%;
        margin: 0 0 30px;
        grid-template-columns: 1fr 1fr 1fr;
        column-gap: 10px;
        row-gap: 10px;
    }

    .catalog .catalog-products .products-list .list-item {
        width: auto;
        padding-bottom: 0;
    }
    
    .catalog .catalog-products .products-list .list-item .item-image {
        width: auto;
        height: auto;
        padding: 20px;
        margin: 0 0 50px;
        overflow: initial;
    }

    .catalog .catalog-products .products-list .list-item .item-image a img {
        width: 100%;
        height: auto;
        position: static;
        top: initial;
        left: initial;
        -webkit-transform: none;
        transform: none;
    }

    .pc .catalog .catalog-products .products-list .list-item:hover .item-image a img {
        -webkit-transform: none;
        transform: none;
    }

    .catalog .catalog-products .products-list .list-item .item-image button.buy-btn {
        width: 90px;
        height: 30px;
        opacity: 1;
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
        position: absolute;
        bottom: -40px;
        left: initial;
        right: 0;
        line-height: 30px;
        -webkit-transform: none;
        transform: none;
        transition: none;
    }

    .pc .catalog .catalog-products .products-list .list-item:hover .item-image button.buy-btn,
    .catalog .catalog-products .products-list .list-item .item-image button.buy-btn.hovered {
        bottom: -40px;
    }

    .pc .catalog .catalog-products .products-list .list-item .item-image button.buy-btn:hover {
        background-color: #663130;
        color: #f0dcbe;
    }

    .catalog .catalog-products .products-list .list-item .item-image button.buy-btn.hovered,
    .pc .catalog .catalog-products .products-list .list-item .item-image button.buy-btn.hovered:hover {
        background-color: #333;
        color: #f0dcbe;
    }

    .catalog .catalog-products .products-list .list-item .item-image button.buy-btn.hovered:disabled {
        background-image: url('../img/buy-btn-loading.gif');
        background-size: 30px;
    }

    .catalog .catalog-products .products-list .list-item .item-image button.favorite-btn {
        width: 30px;
        height: 30px;
        background: #663130 url(../img/favorite-normal.png) center center/30px no-repeat;
        opacity: 1;
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
        position: absolute;
        top: initial;
        left: initial;
        right: 90px;
        bottom: -40px;
        transition: none;
    }

    .catalog .catalog-products .products-list .list-item .item-image button.favorite-btn.favorite-unavailable {
        border-radius: 50%;
        right: 0;
    }

    .catalog .catalog-products .products-list .list-item .item-image button.favorite-btn::after {
        content: '';
        display: block;
        width: 2px;
        height: 40px;
        background: #fff;
        position: absolute;
        top: -5px; right: -1px;
        -webkit-transform: rotate(15deg);
        transform: rotate(15deg);
        user-select: none;
    }

    .catalog .catalog-products .products-list .list-item .item-image button.favorite-btn.favorite-unavailable::after {
        display: none;
    }

    .pc .catalog .catalog-products .products-list .list-item:hover .item-image button.favorite-btn,
    .catalog .catalog-products .products-list .list-item .item-image button.favorite-btn.hovered {
        top: initial;
        left: initial;
        right: 90px;
        bottom: -40px;
    }

    .pc .catalog .catalog-products .products-list .list-item:hover .item-image button.favorite-btn.favorite-unavailable,
    .catalog .catalog-products .products-list .list-item .item-image button.favorite-btn.favorite-unavailable.hovered {
        right: 0;
    }

    .pc .catalog .catalog-products .products-list .list-item .item-image button.favorite-btn:hover {
        background: #663130 url(../img/favorite-normal.png) center center/30px no-repeat;
    }

    .catalog .catalog-products .products-list .list-item .item-image button.favorite-btn.active {
        background: #663130 url(../img/favorite-normal.png) center center/30px no-repeat;
    }

    .pc .catalog .catalog-products .products-list .list-item .item-image button.favorite-btn.active:hover {
        background: #663130 url(../img/favorite-normal.png) center center/30px no-repeat;
    }

    .catalog .catalog-products .products-list .list-item .item-image button.favorite-btn:disabled,
    .catalog .catalog-products .products-list .list-item .item-image button.favorite-btn.active:disabled {
        background-image: url('../img/buy-btn-loading.gif') !important;
    }

    .catalog .catalog-products .products-list .list-item .item-price p:nth-of-type(1) {
        height: 22px;
        font-size: 20px;
        line-height: 22px;
    }

    .catalog .catalog-products .products-list .list-item .item-price p:nth-of-type(2) {
        height: 22px;
        font-size: 16px;
        line-height: 22px;
    }

    .catalog .catalog-products .products-list .list-item .item-price p:nth-of-type(2):after {
        top: 12px;
    }

    .catalog .catalog-products .products-list .list-item .item-title a {
        max-height: 36px;
        font-size: 16px;
        line-height: 18px;
    }

    .catalog .catalog-products .products-list .list-item .item-description {
        position: relative;
    }

    .pc .catalog .catalog-products .products-list .list-item:hover .item-description ul {
        max-height: 64px;
    }

    .catalog .catalog-products .products-list .list-item .item-description .description-link {
        height: initial;
    }

}



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

    .catalog .catalog-aside {
        width: calc(33% - 10px);
    }

    .catalog .catalog-products .products-list {
        grid-template-columns: calc(50% - 5px) calc(50% - 5px);
    }

    .catalog .catalog-products .products-list .list-item .item-image {
        padding: 30px;
    }

}



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

    .catalog .catalog-products .products-list .list-item .item-image {
        padding: 20px;
    }

}



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

    .catalog .catalog-category {
        margin: 0 0 10px;
    }

    .catalog .catalog-category h1 {
        padding: 0;
        margin: 0 0 20px;
        float: none;
    }

    .catalog .catalog-category .category-sort {
        width: calc(50% - 5px);
    }

    .catalog .catalog-category .category-sort .sort-current {
        width: 100%;
    }

    .catalog .catalog-category .category-sort .sort-current::after {
        width: 20px;
    }

    .catalog .catalog-category .category-sort .sort-current p {
        font-size: 14px;
    }

    .catalog .catalog-category .category-sort .sort-current p span {
        display: none;
    }

    .catalog .catalog-category .category-sort .sort-list p {
        font-size: 14px;
    }

    .catalog .catalog-category .category-sort .sort-list p span {
        display: none;
    }



    .catalog .catalog-aside {
        width: 100%;
        margin: 0 0 20px;
        float: none;
        position: relative;
    }

    .catalog .catalog-aside .aside-title {
        display: block;
        background: #f4f2ee;
        width: calc(50% - 5px);
        height: 30px;
        padding: 5px 20px 5px 10px;
        border: 1px solid transparent;
        border-radius: 6px;
        cursor: pointer;
        position: absolute;
        top: -40px; left: 0;
    }
    
    .catalog .catalog-aside .aside-title::after {
        content: '';
        display: block;
        width: 30px;
        height: 30px;
        background: url('../img/category-sort.png') center center no-repeat;
        position: absolute;
        top: 0; right: 0;
    }

    .catalog .catalog-aside .aside-title p {
        font-family: 'PTSans-Bold';
        font-size: 14px;
        line-height: 18px;
        color: #663130;
    }

    .catalog .catalog-aside .aside-categories {
        display: none;
        background: #f4f2ee;
        margin: 0 0 10px;
        padding: 10px 10px 5px;
        border-radius: 10px;
    }

    .catalog .catalog-aside .aside-categories p {
        font-size: 16px;
        line-height: 20px;
    }

    .catalog .catalog-aside .aside-categories ul li a span {
        background: #f4f2ee;
    }

    .catalog .catalog-aside .aside-filters {
        display: none;
        background: #f4f2ee;
        margin: 0 0 10px;
        padding: 10px;
        border-radius: 10px;
    }

    .catalog .catalog-aside .aside-filters p {
        font-size: 16px;
        line-height: 20px;
    }

    .catalog .catalog-aside .aside-filters ul {
        margin: 0;
    }

    .catalog .catalog-aside .aside-latest {
        display: none;
    }



    .catalog .catalog-products .products-subcategories {
        margin: 0 0 20px;
    }

    .catalog .catalog-products .products-subcategories ul {
        gap: 10px;
    }

}



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

    .catalog .catalog-products .products-list .list-item .item-image {
        padding: 10px;
    }

}
