.product-list-page .heading { padding: 120px 17% 40px 17%; }
.product-list-page .container-2-col { border-bottom: 1px solid #dddddd; }
.product-list-page .filter, .attribute-container { margin: 0 0 30px; position: relative; }
.product-list-page .filter.loading:before { content: ''; width: 16px; height: 16px; position: absolute; left: -22px; top: 8px; background-image: url('/modules/_site/images/icon-loading-black.svg'); background-position: center; background-repeat: no-repeat; background-size: cover;  opacity: 0.66; filter: alpha(opacity=66); }
.product-list-page .filter:last-child { margin: 0; }
.product-list-page .filter.filter-active .filter-title:after { transform: rotate(45deg); }
.product-list-page .filter .filter-title { user-select: none; padding: 10px 35px 10px 0; transition: all 0.25s; cursor: pointer; font-weight: 400; font-style: normal; font-size: 13px; line-height: 13px; letter-spacing: 0.5px; display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; position: relative; color: rgba(30, 30, 30, 0.66); text-transform: uppercase; border-bottom: 1px solid #dddddd; }
.product-list-page .filter .filter-title:after { position: absolute; top: 8px; right: 0; content: ''; width: 16px; height: 16px; background: url('/modules/_site/images/icon-categories-open-close.svg') no-repeat; background-position: center;  background-size: cover; transition: all 0.25s; opacity: 0.5; filter: alpha(opacity=50); }
.product-list-page .filter .filter-title:hover { color: #1e1e1e; }
.product-list-page .filter .filter-title:hover:after { opacity: 1; filter: alpha(opacity=100); }
.product-list-page .filter .filter-content { padding: 10px 0 0 0; }
.product-list-page .filter .filter-content ul { margin: 0; }
.product-list-page .filter .filter-content ul li { padding: 5px 0; margin: 0; }
.product-list-page .filter .filter-content ul li:before { display: none; }
.product-list-page .filter .filter-content ul li:last-child { margin: 0; }
.product-list-page .filter .filter-content ul li.secondary { display: none; }
.product-list-page .filter .filter-content .show { border-top: 1px solid #dddddd; display: block; padding: 10px 0 0 0; margin: 10px 0 0; font-weight: 400; font-style: normal; font-size: 12px; line-height: 12px; letter-spacing: 0.25px; color: rgba(30, 30, 30, 0.66); text-decoration: underline; }
.product-list-page .filter .filter-content .show.hide { display: none; }
.product-list-page .filter .filter-content .show:hover { color: #1e1e1e; text-decoration: none; }
.product-list-page .filter .filter-content .show .show-less { display: none; }
.product-list-page .filter .filter-content .show .show-more { display: inline; }
.product-list-page .filter .filter-content.show-all ul { max-height: 44vh; overflow-y: auto; }
.product-list-page .filter .filter-content.show-all ul li.secondary { display: block; }
.product-list-page .filter .filter-content.show-all .show .show-more { display: none; }
.product-list-page .filter .filter-content.show-all .show .show-less { display: inline; }
.product-list-page .filter .filter-content .filter-search-container { padding: 0; margin: 0 0 10px; position: relative; }
.product-list-page .filter .filter-content .filter-search-container input { width: 100%; height: 32px; border-radius: 4px; padding: 0 10px 0 27px; border: none; background-color: rgba(30, 30, 30, 0.1); transition: all 0.15s; font-weight: 400; font-style: normal; font-size: 13px; line-height: normal; letter-spacing: 0.25s; }
.product-list-page .filter .filter-content .filter-search-container input:hover, .product-list-page .filter .filter-content .filter-search-container input:focus { background-color: rgba(30, 30, 30, 0.2); }
.product-list-page .filter .filter-content .filter-search-container input:hover + label, .product-list-page .filter .filter-content .filter-search-container input:focus + label { opacity: 1; filter: alpha(opacity=100); }
.product-list-page .filter .filter-content .filter-search-container label { width: 20px; height: 20px; background: url('/modules/_site/images/icon-categories-search.svg') no-repeat; background-position: 0 0; background-size: 16px 16px; position: absolute; left: 5px; top: 7px; opacity: 0.5; filter: alpha(opacity=50); transition: all 0.15s; }
.product-list-page .filter .filter-content .irs { position: relative; display: block; user-select: none; }
.product-list-page .filter .filter-content .irs-line { position: relative; display: block; overflow: hidden; outline: none !important; }
.product-list-page .filter .filter-content .irs-bar { position: absolute; display: block; left: 0; width: 0; }
.product-list-page .filter .filter-content .irs-shadow { position: absolute; display: none; left: 0; width: 0; }
.product-list-page .filter .filter-content .irs-handle { position: absolute; display: block; box-sizing: border-box; cursor: default; z-index: 1; }
.product-list-page .filter .filter-content .irs-handle.type_last { z-index: 2; }
.product-list-page .filter .filter-content .irs-min, .product-list-page .filter .filter-content .irs-max { position: absolute; display: block; cursor: default; }
.product-list-page .filter .filter-content .irs-min { left: 0; }
.product-list-page .filter .filter-content .irs-max { right: 0; }
.product-list-page .filter .filter-content .irs-from, .product-list-page .filter .filter-content .irs-to, .product-list-page .filter .filter-content .irs-single { position: absolute; display: block; top: 0; left: 0; cursor: default; white-space: nowrap; }
.product-list-page .filter .filter-content .irs-grid { position: absolute; display: none; bottom: 0; left: 0; width: 100%; height: 20px; }
.product-list-page .filter .filter-content .irs-with-grid .irs-grid { display: block; }
.product-list-page .filter .filter-content .irs-grid-pol { position: absolute; top: 0; left: 0; width: 1px; height: 8px; background: #000; }
.product-list-page .filter .filter-content .irs-grid-pol.small { height: 4px; }
.product-list-page .filter .filter-content .irs-grid-text { position: absolute; bottom: 0; left: 0; white-space: nowrap; text-align: center; font-size: 9px; line-height: 9px; padding: 0 3px; color: #000; }
.product-list-page .filter .filter-content .irs-disable-mask { position: absolute; display: block; top: 0; left: -1%; width: 102%; height: 100%; cursor: default; background: rgba(0, 0, 0, 0); z-index: 2; }
.product-list-page .filter .filter-content .lt-ie9 .irs-disable-mask { background: #000; filter: alpha(opacity=0); cursor: not-allowed; }
.product-list-page .filter .filter-content .irs-disabled { opacity: 0.4; }
.product-list-page .filter .filter-content .irs-hidden-input { position: absolute !important; display: block !important; top: 0 !important; left: 0 !important; width: 0 !important; height: 0 !important; font-size: 0 !important; line-height: 0 !important; padding: 0 !important; margin: 0 !important; overflow: hidden; outline: none !important; z-index: -9999 !important; background: none !important; border-style: solid !important; border-color: transparent !important; }
.product-list-page .filter .filter-content .irs--round { height: 20px; }
.product-list-page .filter .filter-content .irs--round.irs-with-grid { height: 65px; }
.product-list-page .filter .filter-content .irs--round .irs-line { top: 6px; height: 6px; background-color: rgba(30, 30, 30, 0.1); border-radius: 3px; }
.product-list-page .filter .filter-content .irs--round .irs-bar { top: 6px; height: 6px; background-color: #1e1e1e; }
.product-list-page .filter .filter-content .irs--round .irs-shadow { height: 0; bottom: 0; }
.product-list-page .filter .filter-content .irs--round .irs-handle { top: 0; width: 18px; height: 18px; border: 2px solid #f8f7f7; background-color: #1e1e1e; border-radius: 50%; }
.product-list-page .filter .filter-content .range-slider { margin: 0 0 10px; }
.product-list-page .filter .filter-content .extra-controls { display: flex; flex-wrap: nowrap; align-items: center; }
.product-list-page .filter .filter-content .extra-controls .price-input-container { flex: 1; position: relative; }
.product-list-page .filter .filter-content .extra-controls .price-input-container input { display: block; width: 100%; height: 32px; background-color: #ffffff; border: 2px solid #dddddd; color: #1e1e1e; text-align: right; border-radius: 4px; padding: 0 25px 0 10px; font-weight: 400; font-style: normal; font-size: 13px; line-height: normal; letter-spacing: 0.25s; transition: all 0.15s; }
.product-list-page .filter .filter-content .extra-controls .price-input-container input:hover { border-color: rgba(30, 30, 30, 0.33); }
.product-list-page .filter .filter-content .extra-controls .price-input-container input:focus { border-color: #1e1e1e; }
.product-list-page .filter .filter-content .extra-controls .price-input-container label { position: absolute; top: 8px; right: 10px; font-weight: 400; font-style: normal; font-size: 13px; line-height: normal; letter-spacing: 0.25s; }
.product-list-page .filter .filter-content .extra-controls .hyphen { flex: 0 0 auto; padding: 0 5px; }
.product-list-page .wide-side { position: relative; padding-bottom: 40px; }
.product-list-page .selected-filters { display: flex; flex-wrap: wrap; padding: 15px 30px; }
.product-list-page .selected-filters .tag { text-decoration: none; width: auto; height: 30px; color: rgba(30, 30, 30, 0.66); text-transform: uppercase; font-weight: 400; font-style: normal; font-size: 11px; line-height: 30px; letter-spacing: 0.25px; background-color: rgba(30, 30, 30, 0.1); border-radius: 15px; padding: 0 25px 0 10px; margin: 0 10px 10px 0; transition: all 0.25s; position: relative; user-select: none; }
.product-list-page .selected-filters .tag:after { content: ''; width: 15px; height: 30px; background: url('/modules/_site/images/icon-popup-close.svg') no-repeat; background-position: center; background-size: 14px 14px; position: absolute; right: 8px; top: 0; opacity: 0.5; filter: alpha(opacity=50); transition: all 0.25s; }
.product-list-page .selected-filters .tag:hover { color: #1e1e1e; background-color: rgba(30, 30, 30, 0.33); }
.product-list-page .selected-filters .tag:hover:after { opacity: 1; filter: alpha(opacity=100); }
.product-list-page .products { padding: 0 30px; margin: 0; display: flex; align-items: flex-start; justify-content: flex-start; flex-wrap: wrap; }
.product-list-page .products li { border-top: 1px solid #dddddd; margin: 0 0 20px; padding: 20px 15px 0 15px; position: relative; flex: 0 1 25%; }
.product-list-page .products li:nth-child(-n+4) { padding-top: 0; border-top: none; }
.product-list-page .products li:before { display: none; }
.product-list-page .products li.sale .product .price { color: #ff6c0a; }
.product-list-page .products li.sale .product .price .old-price { display: inline; color: rgba(30, 30, 30, 0.66); text-decoration: line-through; padding: 0 15px 0 0; font-weight: 200; font-style: normal; font-size: 13px; line-height: 19px; letter-spacing: 0.25px; }
.product-list-page .products li .add-to-favs { position: absolute; width: 30px; height: 30px; background: url('/modules/_site/images/icon-favorites-heart.svg') no-repeat; background-position: center; background-size: 18px 18px; right: 15px; top: 15px; z-index: 2; opacity: 0.5; filter: alpha(opacity=50); cursor: pointer; transition: opacity 0.25s; }
.product-list-page .products li .add-to-favs:hover { opacity: 1; filter: alpha(opacity=100); }
.product-list-page .products li.favorite .add-to-favs { background: url('/modules/_site/images/icon-favorites-heart-full.svg') no-repeat; background-position: center; background-size: 18px 18px; opacity: 1; filter: alpha(opacity=100); }
.product-list-page .products li .product { display: block; height: 100%; color: #1e1e1e; text-decoration: none; text-align: center; }
.product-list-page .products li .product:hover .img-container img { opacity: 0.66; filter: alpha(opacity=66); }
.product-list-page .products li .product:hover .prod-name { text-decoration: underline; }
.product-list-page .products li .product .img-container { margin: 0 0 10px; }
.product-list-page .products li .product .img-container img { margin: 0 auto; width: 100%; height: auto; transition: all 0.25s; }
.product-list-page .products li .product .badge-container { overflow: hidden; height: 18px; margin: 0 0 10px; display: flex; justify-content: center; flex-wrap: nowrap; align-items: center; }
.product-list-page .products li .product .badge-container .badge { display: inline-block; font-weight: 600; font-style: normal; font-size: 10px; line-height: 19px; letter-spacing: 0.5px; width: auto; height: 18px; border-radius: 4px; color: #ffffff; white-space: nowrap; text-transform: uppercase; padding: 0 7px; margin: 0 2px; }
.product-list-page .products li .product .badge-container .badge.badge-sale { background-color: #ff6c0a; }
.product-list-page .products li .product .badge-container .badge.badge-new { background-color: #0cbfda; }
.product-list-page .products li .product .badge-container .badge.badge-bio { background-color: #59ba18; }
.product-list-page .products li .product .brand { font-weight: 400; font-style: normal; font-size: 11px; line-height: 14px; letter-spacing: 0.25px; text-transform: uppercase; margin: 0 0 5px; }
.product-list-page .products li .product .prod-name { font-weight: 600; font-style: normal; font-size: 13px; line-height: 17px; letter-spacing: 0.25px; margin: 0 0 5px; }
.product-list-page .products li .product .details { font-weight: 400; font-style: normal; font-size: 11px; line-height: 14px; letter-spacing: 0.25px; }
.product-list-page .products li .product .price { font-weight: 700; font-style: normal; font-size: 15px; line-height: 19px; letter-spacing: 0.5px; padding: 10px 0 0; }
.product-list-page .products li .product .price .old-price { display: none; }
.product-list-page .pagination { position: absolute; bottom: 0; left: 0; width: 100%; height: auto; border-top: 1px solid #dddddd; }
.product-list-page .pagination ul { display: flex; justify-content: center; align-items: flex-start; flex-wrap: nowrap; padding: 0; }
.product-list-page .pagination ul li { width: 50px; height: 50px; padding: 0; border-left: 1px solid #dddddd; display: flex; justify-content: center; align-items: center; font-weight: 400; font-style: normal; font-size: 13px; line-height: 13px; letter-spacing: 0.5px; color: rgba(30, 30, 30, 0.66); margin: 0; }
.product-list-page .pagination ul li:last-child { border-right: 1px solid #dddddd; }
.product-list-page .pagination ul li:before { display: none; }
.product-list-page .pagination ul li a { width: 50px; height: 50px; display: flex; justify-content: center; align-items: center; color: rgba(30, 30, 30, 0.66); text-decoration: none; transition: all 0.25s; font-weight: 400; font-style: normal; font-size: 13px; line-height: 13px; letter-spacing: 0.5px; }
.product-list-page .pagination ul li a:hover { background-color: #f8f7f7; color: #1e1e1e; }
.product-list-page .pagination ul li a.active { background-color: #1e1e1e; color: #ffffff; }
.product-list-page .pagination ul li a:before { position: absolute; top: 0; left: 0; content: ''; width: 50px; height: 49px; opacity: 0.5; filter: alpha(opacity=50); }
.product-list-page .pagination ul li a.prev:before { background: url('/modules/_site/images/icon-gallery-chevron-left.svg') no-repeat; background-position: center; background-size: 18px 18px; transition: all 0.25s; }
.product-list-page .pagination ul li a.prev:hover:before { opacity: 1; filter: alpha(opacity=100); }
.product-list-page .pagination ul li a.next:before { background: url('/modules/_site/images/icon-gallery-chevron-right.svg') no-repeat; background-position: center; background-size: 18px 18px; transition: all 0.25s; }
.product-list-page .pagination ul li a.next:hover:before { opacity: 1; filter: alpha(opacity=100); }
.product-list-page .description .container { padding: 0 15px; }
.product-list-page .description .description-inner { padding: 40px 0 80px 20%; text-align: justify; }


ul.maincategories > li a { font-size: 12px; font-weight: 500; }
ul.maincategories a { text-decoration: none; }
ul.maincategories a:hover { text-decoration: underline; }
ul.maincategories > li a.open { font-weight: 600; }
ul.maincategories .goparent { display: none; }

ul.maincategories a.open+a.goparent { display: block; }
ul.maincategories a.open+a.goparent:after { position: absolute; top: 8px; right: 0; content: ''; width: 16px; height: 16px; background: url('/modules/_site/images/icon-categories-open-close.svg') no-repeat; background-position: center;  background-size: cover; transition: all 0.25s; opacity: 0.5; filter: alpha(opacity=50); transform: rotate(45deg); }

ul.categories { display: none; padding: 5px 0 0 10px; }
ul.categories.open { display: block; }
ul.categories > li a { font-size: 12px; font-weight: 500; }
ul.categories .goparent { display: none; }
ul.categories > li a.open { font-weight: 600; }
ul.categories ul.sub-list { display: none; padding: 5px 0 0 10px; }
ul.categories ul.sub-list.open { display: block; }

ul.categories a.open+a.goparent { display: block; }
ul.categories a.open+a.goparent:after { position: absolute; top: 8px; right: 0; content: ''; width: 16px; height: 16px; background: url('/modules/_site/images/icon-categories-open-close.svg') no-repeat; background-position: center;  background-size: cover; transition: all 0.25s; opacity: 0.5; filter: alpha(opacity=50); transform: rotate(45deg); }

button#load-products { margin: 30px auto; display: table; }
button#load-products.hide { display: none; }


@media screen and (max-width: 1440px) {
.product-list-page .filter, .attribute-container { margin: 0 0 20px; }
.product-list-page .filter.loading:before { width: 14px; height: 14px; left: -17px; top: 9px; }
.product-list-page .selected-filters { padding: 15px 20px; }
.product-list-page .products { padding: 0 20px; }
.product-list-page .products li { padding: 20px 10px 0 10px; }
.product-list-page .products li .add-to-favs { right: 10px; top: 10px; }
.product-list-page .description .wrap { padding: 0 10px; }
}

@media screen and (max-width: 960px) {
.product-list-page .heading { padding: 80px 15px 30px 15px; }
.product-list-page .wide-side { padding-bottom: 20px; }
.product-list-page .filter, .attribute-container { margin: 0; position: relative; padding: 0; border-top: 1px solid #f8f7f7; }
.product-list-page .filter.loading:before { display: none; }
.product-list-page .filter:last-child { margin: 0; }
.product-list-page .filter.filter-active { background-color: rgba(30, 30, 30, 0.05); }
.product-list-page .filter.filter-active .filter-title:after { transform: rotate(45deg); }
.product-list-page .filter .filter-title { padding: 0 35px 0 15px; font-weight: 400; font-style: normal; font-size: 13px; line-height: 50px; letter-spacing: 0.5px; color: #1e1e1e; border-bottom: none; height: 50px; }
.product-list-page .filter .filter-title:after { top: 13px; right: 0; width: 24px; height: 24px; background: url('/modules/_site/images/icon-categories-open-close.svg') no-repeat; background-position: center; background-size: 16px 16px; transition: all 0.25s; opacity: 1; filter: alpha(opacity=100); }
.product-list-page .filter .filter-content { padding: 0 0 20px 15px; }
.product-list-page .filter .filter-content .show { color: #1e1e1e; }
.product-list-page .selected-filters { padding: 10px 15px; }
.product-list-page .products { padding: 0 15px; }
.product-list-page .products li { padding: 20px 10px 0 10px; flex: 0 1 25%; }
.product-list-page .products li:nth-child(-n+4) { padding-top: 0; border-top: none; }
.product-list-page .products li .add-to-favs { opacity: 1; filter: alpha(opacity=100); }
.product-list-page .products li .product:hover .img-container img { opacity: 1; filter: alpha(opacity=100); }
.product-list-page .products li .product .img-container { margin: 0 0 10px; }
.product-list-page .products li .product .img-container img { margin: 0 auto; width: 100%; height: auto; transition: all 0.25s; }
.product-list-page .products li .product .prod-name { text-decoration: underline; }
.product-list-page .pagination { position: static; border-bottom: none; margin: 20px 0 0; }
.product-list-page .pagination ul li { width: 45px; height: 50px; }
.product-list-page .pagination ul li a { width: 45px; height: 50px; }
.product-list-page .pagination ul li a:before { width: 45px; height: 49px; }
.product-list-page .description .wrap { padding: 0 15px; }
.product-list-page .description .description-inner { padding: 20px 0 60px 0; }
}

@media screen and (max-width: 768px) {
.product-list-page .products li { flex: 0 1 50%; }
.product-list-page .products li:nth-child(3), .product-list-page .products li:nth-child(4) { padding-top: 20px; border-top: 1px solid #dddddd; }
.product-list-page .products li .product .img-container img { max-width: 66.66666%; }
}

@media screen and (max-width: 480px) {
/*
.product-list-page .products li { flex: 0 1 100%; }
.product-list-page .products li:nth-child(2) { padding-top: 20px; border-top: 1px solid #dddddd; }
.product-list-page .products li .product .img-container img { max-width: 50%; }
*/
}
