section.products .wrapper{
    padding-top: 3.5rem;
    padding-bottom: 5rem;
}

section.products .list-ctn{
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
}

.list-ctn .catalog-list{
    width: calc(15% + 10.75rem);
    flex-basis: auto;
    flex-shrink: 0;
    flex-grow: 0;

    padding-right: 10.75rem;
}

.catalog-list li{
    position: relative;
}

.catalog-list li .product-list-toggle{
    position: absolute;
    line-height: calc(1.5rem + 1px);
    padding: .75rem;
    width: 3rem;
    text-align: center;
    right: 0;
    top: 0;
    cursor: pointer;
    font-size: 1.5rem;
}
.catalog-list li .product-list-toggle:hover{
    background-color: #f7f7f7;
}

.product-list-toggle::before{
    content: "+";
}

.show .product-list-toggle::before{
    content: "-";
}

.catalog-list li:hover{
    color: #e31019;
}

.list-ctn .catalog-list a{
    display: block;
    width: 100%;
    line-height: 1.5rem;
    padding: .75rem 1.25rem;
    color: #333;
    border-top: 1px solid #dedede;
    position: relative;
}
.list-ctn .catalog-list a.active{
    color: #e31019;
}

.catalog-list>li:last-child>a{
    border-bottom: 1px solid #dedede;
}

.catalog-list .catalog-product-list a{
    line-height: 1.5rem;
    padding: .5rem 1.25rem .25rem 2.5rem;
    border-top: 1px solid #efefef;
    color: #666;
    font-size: calc(1em - 1px);
}

.catalog-list .catalog-product-list{
    display: none;
}

.catalog-list li.show .catalog-product-list{
    display: block;
}

/*.list-ctn .catalog-list a.active::after{
    content: "";
    position: absolute;
    width: 0.8125rem;
    height: 0.5625rem;
    top: 0;
    bottom: 0;
    right: 1.25rem;
    margin: auto;
    background: url("../images/icons/arrow_right_small_red.png") center/contain no-repeat;
}*/

.list-ctn .product-list{
    flex-basis: calc(85% - 10.75rem);
    flex-shrink: 0;
    flex-grow: 0;
}

.no-content-hint{
    padding: .75em;
    line-height: 1.5em;
    font-size: 1.25rem;
    background-color: #f6f6f7;
    color: #666;

    flex: 100%;
    align-self: flex-start;
}

.product-list{
    margin-right: -3.5rem;
    display: flex;
    flex-wrap: wrap;
}

.product-list a{
    flex-basis: calc(100% / 3 - 3.5rem);
    flex-shrink: 0;
    flex-grow: 0;
    margin-right: 3.5rem;
    margin-bottom: 3.5rem;

    display: block;
    height: 15rem;
}
.product-list a .cover{
    width: 100%;
    height: calc(100% - 3.75rem)
}
.product-list a .cover img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.product-list a .info{
    width: 100%;
    height: 3.75rem;
    padding: 1.125rem 1rem 1.125rem 1.75rem;
    line-height: 1.75rem;
    background-color: #f6f6f7;
    color: #000;
}

.yiiPager{
    flex-basis: calc(85% - 10.75rem);

    margin-top: -1rem;

    justify-self: flex-end;
    margin-left: auto;
    margin-right: 0;
}

@media (max-width: 1440px) {
    .list-ctn .catalog-list{
        width: calc(15% + 5rem);
        padding-right: 4rem;
    }
    .list-ctn .product-list, .yiiPager{
        flex-basis: calc(85% - 5rem);
    }

    .product-list{
        margin-right: -2rem;
    }

    .product-list a{
        margin-right: 2rem;
        margin-bottom: 2rem;
        flex-basis: calc(100% / 3 - 2rem);
    }

    .yiiPager{
        margin-top: 2rem;
    }
}

@media (max-width: 960px) {
    .list-ctn .catalog-list{
        flex-basis: auto;
        width: 100%;
        padding-right: 0;
    }
    .list-ctn .product-list, .yiiPager{
        flex-basis: auto;
        margin-left: 0;
    }

    .yiiPager{
        margin-top: 0;
    }

    .list-ctn{
        flex-direction: column;
    }

    .catalog-list{
        margin-bottom: 2rem;
    }
    .list-ctn .catalog-list a{
        width: auto;
        border-top: none;
        border-bottom: none;
    }
    .list-ctn .catalog-list a.active::after{
        display: none;
    }
    .list-ctn .catalog-list a:last-child{
        border-bottom: none;
    }

    .catalog-list{
        font-size: 1.25rem;
    }

    .catalog-list>li{
        margin-bottom: 1rem;
    }

    .catalog-list li.show .catalog-product-list{
        display: flex;
    }

    .catalog-product-list{
        flex-wrap: wrap;
    }

    .catalog-product-list li{
        width: 25%;
        flex: 0 0 auto;
    }

    .list-ctn .catalog-list>li>a{
        font-size: 1.25em;
        margin-bottom: .25em;
        border-bottom: 1px solid #e7e7e7;
    }

    .list-ctn .catalog-list li a{
        padding-left: 0;
    }
}
@media (max-width: 640px) {

    .product-list{
        margin-right: -1.5rem;
    }

    .product-list a{
        margin-right: 1.5rem;
        margin-bottom: 1.5rem;
        flex-basis: calc(100% / 2 - 1.5rem);
    }

    .catalog-product-list li{
        width: 33%;
    }
}

@media (max-width: 480px) {

    .product-list a{
        flex-basis: calc(100% - 1.5rem);
    }

    .catalog-product-list li{
        width: 50%;
    }
}
