.category-hero{
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url(../../images/category/category-hero.jpg);
}
.ch-inner{
    height: 350px;
}
.category-title{
    padding: 40px 85px 45px;
    background-color: #fff;
    max-width: calc(100% - 30px);
}
.category-title h1{
    font-size: 3.125em;
    margin: 0 0 10px;
}
.category-title .button{
    color: #fff;
    padding: 10px 35px 9px;
    font-size: 0.875em;
}
.category #categories{
    padding-top: 83px;
}
.category-description{
    padding: 80px 0 50px;
    border-top: 2px solid var(--light-gray);
}
.category-description h3{
    color: #233260;
    font-size: 2em;
    margin: 0 0 .5em;
}
.category-description p{
    color: #232323;
    font-size: 1.0625em;
    line-height: 1.41176471;
}
.category-description p:not(:last-child),
.category-description p:not(:last-of-type){
    margin-bottom: 1em;
}
.category-description .button{
    color: #fff;
    padding: 10px 25px 9px;
    font-size: 0.875em;
    margin-top: 15px;
}

.category-product{
    height: 410px;
    /*flex-grow: 1;*/
}
.category-product .products-image img {
    max-height: 100%;
    max-width: 100%;
    width: auto;
    height: auto;
}
/* Sub-categories */

.category-banner{
    color: #fff;
    padding: 30px 0;
}
.category-banner:before{
    content: '';
    display: block;
    height: 120%;
    width: 2000px;
    position: absolute;
    z-index: 0;
    right: -600px;
    top: 0;
    background-color: #233260;
    transform: rotate(-11deg);
}
.category-banner .cb-text{
    margin-right: 60px;
}
.category-banner h3{
    margin: 0;
    font-size: 2em;
}
.category-banner p{
    font-size: 1.5em;
    line-height: 1.333;
}
.category-banner p .stroke{
    transform-origin: right;
    transform: rotate(-5deg);
    font-size: 1.333em;
}
.category-banner .button{
    color: #fff;
    background-color: #00aeef;
    height: 44px;
    line-height: 46px;
    width: 162px;
}
.sub-category-main{
    padding-top: 60px;
}
.category-widgets{
    padding-right: 1.5em;
    flex-basis: calc(285px + 1.5em);
    flex-shrink: 0;
}
.category-widget{
    padding: 29px 0 31px;
}
.category-widget:not(:last-child){
    border-width: 2px;
}
.cw-title{
    color: #000;
    font-size: 1.25em;
}
.cw-toggle{
    width: 11px;
    height: 7px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    background-image: url(../../images/icons/icon-cw-toggle.png);
    transition: transform .3s;
}
.cw-active .cw-toggle{
    transform: scaleY(-1);
}
.sub-categories-list{
    padding-bottom: 45px;
    padding-top: 0;
}
.sub-categories-list h1.current,
.sub-categories-list a.current{
    font-size: 2em;
    line-height: 1.0625;
}
.sub-categories-list h1.current + ul,
.sub-categories-list a.current + ul{
    margin-top: 15px;
}
.sub-categories-list h1.current + ul a,
.sub-categories-list a.current + ul a{
    font-size: 1.25em;
    line-height: 2;
}
.brands-filter ul{
    margin-top: 23px;
}
.brands-filter li{
    padding-left: 37px;
}
.brands-filter li:after{
	content: '';
	display: block;
	position: absolute;
	left: 0;
	width: 17px;
	height: 17px;
	border: 2px solid var(--middle-gray);
}
.brands-filter li.selected:after{
    border-color: var(--red);
    background-color: var(--red);
}
.brands-filter li.selected a:after{
	content: '';
	display: block;
    transform: rotate(45deg);
    height: 12px;
    width: 6px;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    position: absolute;
    top: 1px;
    left: 6px;
    z-index: 1;
}
.brands-filter li + li{
    margin-top: 15px;
}
.brands-filter a{
    color: #000;
    pointer-events: none;
}

#price-slider.noUi-target{
    height: 1px;
    box-shadow: none;
    border: none;
    background-color: var(--light-gray);
    border-radius: 0;
    margin: 75px 0 14px;
}
#price-slider .noUi-connects{
    border-radius: 0;
}
#price-slider .noUi-connect {
    background: var(--red);
}
#price-slider.noUi-horizontal .noUi-handle{
    width: 30px;
    height: 30px;
    right: -15px;
    top: 50%;
    margin-top: -15px;
    border-radius: 50%;
    border-color: var(--red);
    background-color: #fff;
    box-shadow: none;
    cursor: pointer;
    outline: none;
}
#price-slider.noUi-horizontal .noUi-handle:active{
    background-color: var(--red);
}
#price-slider .noUi-tooltip{
    border: none;
    border-radius: 5px;
    color: var(--red);
    padding: 4px 4px 0;
    font-family: 'SofiaPro';
    font-weight: 700;
    font-size: 1em;
    line-height: 1;
    bottom: calc(100% + 4px);
}
#price-slider .noUi-handle:after,
#price-slider .noUi-handle:before{
    display: none;
}
.sub-category-list{
    flex-grow: 1;
}
.products-list .category-product{
    flex-basis: calc(33.333% - 1.5em);
    margin-right: 2.25em;
    margin-bottom: 2.5em;
}
.products-list .category-product:nth-child(3n){
    margin-right: 0;
}
.view-filters{
    font-size: 0.875em;
    margin-bottom: 25px;
}
.view-filters .sort-by{
    margin-right: 55px;
}
.view-filters select,
.sort-filter select{
    border: none;
    outline: none;
    padding-right: 20px;
    background-repeat: no-repeat;
    background-position: center right;
    background-size: 12px 7px;
    background-image: url(../../images/icons/icon-filter-select-arrow.png);
}
.sort-filter select {
    margin-top: 10px
}
.category-pagination{
    flex-basis: 100%;
    padding-bottom: 70px;
    font-size: 1.375em;
    line-height: 1;
}
.category-pagination > *{
    margin: 0 15px;
    color: #000;
}
.category-pagination > .current-page:after{
    content: '';
    position: absolute;
    left: 50%;
    margin-left: -9px;
    bottom: -10px;
    display: block;
    width: 18px;
    height: 5px;
    background-color: var(--red);
}
.category-pagination > .previous-page,
.category-pagination > .next-page{
    width: 41px;
    height: 41px;
    text-indent: -9999px;
    box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.1);
    background-color: #fff;
}
.category-pagination > span.previous-page,
.category-pagination > span.next-page{
    background-color: var(--light-gray);
}
.category-pagination > .previous-page:after,
.category-pagination > .next-page:after{
    content: '';
    display: block;
    width: 17px;
    height: 10px;
    position: absolute;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    background-image: url(../../images/icons/icon-arrow-right-long.png);
}
.category-pagination > .previous-page:after{
    transform: scaleX(-1);
}
.category-pagination > span.previous-page:after{
    opacity: .5;
}
.category-pagination ul li {
    display: inline-block;
    list-style-type: none;
}
.category-pagination ul li a {
    display: inline-block;
    padding: 0 5px;
    color: #000;
    font-size: 18px;
    font-weight: 400;
    text-decoration: none;
}
.category-pagination ul li.active span {
    display: inline-block;
    padding: 0 5px;
    color: var(--red);
    font-size: 18px;
}
@media screen and (max-width: 1199px){
    .price-filter .cw-toggle-container{
        padding: 0 15px;
    }
}
@media screen and (max-width: 991px){
    .category-banner .cb-text{
        margin-right: 30px;
    }
    .sub-category-main{
        flex-direction: column;
    }
    .category-widgets{
        padding-right: 0;
    }
    .sub-categories-list h1.current + ul,
    .sub-categories-list a.current + ul,
    .brands-filter ul{
        column-count: 2;
    }
}
@media screen and (min-width: 768px) and (max-width: 991px){
}
@media screen and (max-width: 767px){
    .products-list .category-product,
    .products-list .category-product:nth-child(3n){
        flex-basis: calc(50% - 2.25em);
        margin-right: 2.25em;
    }
    .products-list .category-product:nth-child(2n){
        margin-right: 0;
    }
    .category-pagination > *{
        margin: 0 10px;
    }
}
@media screen and (max-width: 567px){
    .category-banner:before{
        height: 100%;
        top: 109%;
        transform: rotate(-24deg);
    }
    .ch-inner{
        height: 252px;
    }
    .category-title{
        padding: 25px 65px 28px;
    }
    .category-title h1{
        font-size: 2.4em;
    }
    .category #categories{
        padding-bottom: 28px;
        padding-top: 20px;
    }
    .category-description{
        padding: 27px 0 39px;
    }
    .category-description h3{
        font-size: 1.4em;
        line-height: 1.04761905;
    }
    .category-description p{
        font-size: 0.8em;
        line-height: 1.5;
    }
    .products-list .category-product,
    .products-list .category-product:nth-child(3n){
        flex-basis: calc(50% - 0.8em);
        margin-right: 1.6em;
        margin-bottom: 1.6em;
    }
    .products-list .category-product:nth-child(2n){
        margin-right: 0;
    }
    .category-product{
        height: 264px;
    }
    .category-banner{
        padding: 20px 0 27px;
    }
    .category-banner .container{
        flex-direction: column;
    }
    .category-banner .cb-text{
        margin-right: 0;
        margin-bottom: 12px;
    }
    .category-banner h3{
        font-size: 1.6em;
        line-height: 1.1666;
        padding: 0 40px;
    }
    .category-banner p{
        font-size: 1.2em;
    }
    .category-banner p .stroke{
        font-size: 1em;
    }
    .category-banner .button{
        height: 35px;
        line-height: 35px;
        width: 131px;
        font-size: 0.875em;
    }
    .sub-category-main{
        padding-top: 5px;
    }
    .category-widget {
        padding: 14px 0 15px;
    }
    .category-widget:last-child{
        border-width: 2px;
        border-bottom-style: solid;
        border-color: var(--middle-gray);
        margin-bottom: 35px;
    }
    .cw-title{
        font-size: 1.2333em;
    }
    .sub-categories-list h1.current,
    .sub-categories-list a.current{
        font-size: 1.733em;
    }
    .sub-categories-list h1.current + ul,
    .sub-categories-list a.current + ul{
        margin-top: 10px;
    }
    .sub-categories-list h1.current + ul a,
    .sub-categories-list a.current + ul a{
        font-size: 1em;
        line-height: 1.733;
    }
    .category-pagination{
        font-size: 1em;
    }
    .category-pagination > * {
        margin: 0 7px;
    }
    .category-pagination > .previous-page,
    .category-pagination > .next-page{
        width: 30px;
        height: 30px;
    }
    .category-pagination > .previous-page:after,
    .category-pagination > .next-page:after{
        width: 12px;
    }
    .category-pagination > .current-page:after{
        margin-left: -6px;
        bottom: -5px;
        width: 12px;
        height: 3px;
    }
}