.filter-button {
	position: relative;
	z-index: 1;
	width: 49px;
	height: 40px;
	background: #f2f2f2;
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	-webkit-transition: all 0.36s ease-in-out;
	-moz-transition: all 0.36s ease-in-out;
	-o-transition: all 0.36s ease-in-out;
	transition: all 0.36s ease-in-out;
}
.filter-opened .filter-button {
	-webkit-transform: translate3d(-100%, 0, 0);
	-moz-transform: translate3d(-100%, 0, 0);
	-ms-transform: translate3d(-100%, 0, 0);
	-o-transform: translate3d(-100%, 0, 0);
	transform: translate3d(-100%, 0, 0);
}
.filter-button .icon,
.filter-button .icon:before,
.filter-button .icon:after {
	-webkit-transition: all 0.36s ease-in-out;
	-moz-transition: all 0.36s ease-in-out;
	-o-transition: all 0.36s ease-in-out;
	transition: all 0.36s ease-in-out;
}
.filter-button .icon {
	position: relative;
	display: inline-block;
	top: -4px;
	width: 13px;
	height: 5px;
	border-bottom: 1px solid #000;
}
.filter-button .icon:before,
.filter-button .icon:after {
	content: "";
	position: relative;
	display: block;
	left: 0;
	width: 100%;
	height: 1px;
	background: #000;
}
.filter-button .icon:before {
	top: 0;
}
.filter-button .icon:after {
	top: 7px;
}
.filter-opened .filter-button .icon {
	border-bottom: 2px solid transparent;
}
.filter-opened .filter-button .icon:before {
	top: 4px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
.filter-opened .filter-button .icon:after {
	top: 3px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.product-filter {
	position: fixed;
	z-index: 10;
	top: 0;
	left: 0;
	width: 240px;
	height: 100vh;
	background: #f2f2f2;
	-webkit-transform: translate3d(-240px, 0, 0);
	-moz-transform: translate3d(-240px, 0, 0);
	-ms-transform: translate3d(-240px, 0, 0);
	-o-transform: translate3d(-240px, 0, 0);
	transform: translate3d(-240px, 0, 0);
	-webkit-transition: all 0.36s ease-in-out;
	-moz-transition: all 0.36s ease-in-out;
	-o-transition: all 0.36s ease-in-out;
	transition: all 0.36s ease-in-out;
}
.content-scrolled .product-filter {
	height: calc(100vh + 40px);
}
.mobile-back-button,
.mobile-filter-buttons {
	display: none;
}
.filter-title {
	position: relative;
	top: 57px;
	height: 40px;
	padding-left: 30px;
	color: #000;
	font-size: 12px;
	font-weight: 400;
	text-transform: uppercase;
	line-height: 40px;
}
.filter-title-text-wrapper {
	position: relative;
	display: inline-block;
	overflow: hidden;
	height: 40px;
}
.filter-title-text {
	display: block;
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	-webkit-transition: all 0.36s ease-in-out;
	-moz-transition: all 0.36s ease-in-out;
	-o-transition: all 0.36s ease-in-out;
	transition: all 0.36s ease-in-out;
}
.filter-title-text .before-filter,
.filter-title-text .after-filter {
	display: block;
	-webkit-transition: all 0.36s ease-in-out;
	-moz-transition: all 0.36s ease-in-out;
	-o-transition: all 0.36s ease-in-out;
	transition: all 0.36s ease-in-out;
}
.filter-title-text .before-filter {
	opacity: 1;
}
.filter-title-text .after-filter {
	opacity: 0;
	text-decoration: underline;
	cursor: pointer;
}
.product-filter.filtered .filter-title-text {
	-webkit-transform: translate3d(0, -50%, 0);
	-moz-transform: translate3d(0, -50%, 0);
	-ms-transform: translate3d(0, -50%, 0);
	-o-transform: translate3d(0, -50%, 0);
	transform: translate3d(0, -50%, 0);
}
.product-filter.filtered .filter-title-text .before-filter {
	opacity: 0;
}
.product-filter.filtered .filter-title-text .after-filter {
	opacity: 1;
}
.filter-content {
	position: relative;
	overflow-y: scroll;
	top: 57px;
	height: calc(100% - 97px);
	background: #f2f2f2;
	border-top: 1px solid #fff;
	-webkit-transition: border 0.36s ease-in-out;
	-moz-transition: border 0.36s ease-in-out;
	-o-transition: border 0.36s ease-in-out;
	transition: border 0.36s ease-in-out;
}
.content-scrolled .filter-content {
	border-top-color: #f2f2f2;
}
.filter-content::-webkit-scrollbar {
	width: 13px;
	height: 13px;
}
.filter-content::-webkit-scrollbar-thumb {
	border: 3px solid #f2f2f2;
	background-clip: padding-box;
}
.filter-content::-webkit-scrollbar-track {
	background: #f2f2f2;
}
.filter-opened .product-filter {
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}
.content-scrolled .filter-opened .product-filter {
	transform: translate3d(0, -40px, 0);
}
.product-filter-element {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
.product-filter-element:not(:first-child) {
	border-top: 1px solid #fff;
}
.product-filter-element .options {
	position: relative;
	overflow: hidden;
	height: 56px;
}
.product-filter-element .options.opened {
	height: auto;
}
.product-filter-element .option.empty-option {
	position: relative;
	padding: 20px 0 20px 30px;
	color: #6d6e71;
	font-size: 13px;
	text-transform: uppercase;
	cursor: pointer;
}
.product-filter-element .opened .option.empty-option {
	color: #000;
	font-weight: 700;
}
.product-filter-element .option.empty-option:before,
.product-filter-element .option.empty-option:after {
	content: "";
	position: absolute;
	display: block;
	top: 50%;
	right: 5px;
	width: 13px;
	height: 13px;
	margin-top: -6px;
	background: url("../images/sprite.svg") no-repeat;
}
.product-filter-element .option.empty-option:before {
	background-position: 0 -224px;
	opacity: 1;
}
.product-filter-element .option.empty-option:after {
	background-position: -49px -224px;
	opacity: 0;
}
.product-filter-element .opened .option.empty-option:before {
	opacity: 0;
}
.product-filter-element .opened .option.empty-option:after {
	opacity: 1;
}
.product-filter-element .option.empty-option .counter:not(:empty):before {
	content: "(";
}
.product-filter-element .option.empty-option .counter:not(:empty):after {
	content: ")";
}
.product-filter-element .clear-button {
	position: absolute;
	display: inline-block;
	top: 50%;
	right: 27px;
	height: auto;
	margin-top: -7px;
	background: transparent;
	color: #6d6e71;
	font-size: 11px;
	text-decoration: underline;
}
.product-filter-element .opened .clear-button {
	position: absolute;
	display: inline-block;
	top: 50%;
	right: 27px;
	margin-top: -7px;
	background: transparent;
	color: #000;
	font-size: 11px;
	text-decoration: underline;
}
.product-filter-element .option:last-child {
	margin-bottom: 30px;
}
.product-filter-element .option:not(.empty-option) {
	position: relative;
	padding-left: 30px;
	color: #808184;
	font-size: 12px;
	text-transform: uppercase;
	cursor: pointer;
}
.product-filter-element .option.inactive:not(.empty-option) {
	opacity: 0.3;
	cursor: default;
}
.product-filter-element .option.inactive:not(.empty-option):after {
	content: "";
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	cursor: default;
}
.product-filter-element .option:not(.empty-option):not(:nth-child(2)) {
	margin-top: 10px;
}
.product-filter-element .option:not(.empty-option):before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 11px;
	height: 14px;
	background: url("../images/sprite.svg") no-repeat 0 -125px;
}
.product-filter-element .option.selected:not(.empty-option):before {
	background-position: 0 -144px;
}
.product-filter-element .option.selected:not(.empty-option):not(.inactive):hover:before {
	background-position: 0 -163px;
}
.product-filter-element .option:not(.empty-option) .name {
	display: inline-block;
	vertical-align: middle;
	margin-left: 4px;
}
.product-filter-element .option.selected:not(.empty-option) .name {
	color: #000;
	font-weight: 700;
}
.product-filter-element .option:not(.empty-option):not(.inactive):hover .name,
.product-filter-element .option.selected:not(.empty-option):not(.inactive):hover .name {
	color: #000;
}