/**
 * Productfilter
 * 
 * MSI Product filter
 * @author Jeroen Butenaerts
 * @version 1.0
 * @package product-index-page
 */
/**
 * Productfilter Bootstrap customizations
 */
#productfilter [class*="col-"] {
	padding-left: 20px;
	padding-right: 20px;
}
#productfilter .row {
	margin-right: -20px;
	margin-left: -20px;
}
@media (min-width: 768px) {
	#productfilter [class*="col-"] {
		padding-left: 10px;
		padding-right: 10px;
	}
		#productfilter .row {
		margin-right: -10px;
		margin-left: -10px;
	}
}
/**
 * Productfilter various customizations
 */
#productfilter .specicons {
	display: block;
	margin-right: 10px;
	float: left;
}
/**
 * Productfilter
 */
#productfilter {
	background-color: #1a1a1a;
	margin-bottom: 0;
	margin-left: -10px;
	margin-right: -10px;
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 10px;
	position: relative;
}
@media (min-width: 768px) {
	#productfilter {
		margin-right: 0;
	}
}
#productfilter > .btn-collapse {
	position: absolute;
	right: 20px;
	top: 18px;
}
#productfilter > .productfilter-sections.collapse.in + .btn-collapse {
	transform: rotate( -90deg );
}
#productfilter .productfilter-heading {
	cursor: pointer;
	display: block;
	font-family: 'Open Sans', sans-serif;
	font-size: 16px;
	margin: 0 -20px;
	padding: 20px;
	text-align: center;
	text-transform: uppercase;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	user-select: none;
}
#productfilter .productfilter-heading:before {
	content: '\e909';
	display: inline-block;
	font-family: buttonicons;
	speak: none;
	font-size: 16px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-style: normal;
	font-variant: normal;
	font-weight: normal;
	margin-right: 10px;
	text-transform: none;
	vertical-align: bottom;
}
#productfilter .productfilter-heading.focus,
#productfilter .productfilter-heading:focus,
#productfilter .productfilter-heading.hover,
#productfilter .productfilter-heading:hover {
	background-color: #fff;
	color: #414141;
	font-weight: 600;
}
@media (hover: none) {
	#productfilter .productfilter-heading:hover,
	#productfilter .productfilter-heading.hover {
		background-color: transparent;
		color: #fff;
		font-weight: 500;
	}
}
@media (min-width: 768px) {
	#productfilter .productfilter-heading {
		display: none;
	}
	#productfilter > .btn-collapse {
		display: none;
	}
}
#productfilter ul {
	list-style: none;
	padding-left: 0;
}
#productfilter .btn-reset {
	margin-bottom: 20px;
}
/**
 * Buttons
 */
#productfilter .btn-collapse {
	background-color: #000;
	border-radius: 50%;
	height: 20px;
	min-height: 0;
	min-width: 0;
	text-indent: 9999px;
	transition: transform 500ms ease-out;
	width: 20px;
	z-index: 1;
}
#productfilter .btn-collapse:before {
	border-bottom: 2px solid #fff;
	border-left: 2px solid #fff;
	content: '';
	height: 10px;
	left: 7px;
	position: absolute;
	top: 5px;
	transform: rotate( 45deg );
	width: 10px;
}
#productfilter .btn-collapse.focus,
#productfilter .btn-collapse:focus,
#productfilter .btn-collapse.hover,
#productfilter .btn-collapse:hover {
	background-color: #fff;
}
#productfilter .btn-collapse.focus:before,
#productfilter .btn-collapse:focus:before,
#productfilter .btn-collapse.hover:before,
#productfilter .btn-collapse:hover:before {
	border-color: #000;
}
@media (hover: none) {
	#productfilter .btn-collapse:hover,
	#productfilter .btn-collapse.hover {
		background-color: #000;
	}
	#productfilter .btn-collapse:hover:before,
	#productfilter .btn-collapse.hover:before {
		border-color: #fff;
	}
}
#productfilter .productfilter-section > .productfilter-options.collapse + .btn-collapse,
#productfilter .productfilter-section > .productfilter-options.collapsing + .btn-collapse {
}
#productfilter .productfilter-section > .productfilter-options.collapse.in + .btn-collapse {
	transform: rotate( -90deg );
}
#productfilter .btn-showmore {
	background-color: transparent;
	border: none;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	min-height: 0;
	padding: 0 0 0 30px;
	text-transform: none;
}
#productfilter .btn-showmore:after {
	content: '…';
}
#productfilter .btn-showmore.focus,
#productfilter .btn-showmore:focus,
#productfilter .btn-showmore.hover,
#productfilter .btn-showmore:hover {
	color: #f00;
}
@media (hover: none) {
	#productfilter .btn-showmore:hover,
	#productfilter .btn-showmore.hover {
		color: #fff;
	}
}
#productfilter .btn-showmore .btn-icon {
	border-style: solid;
	border-width: thin thin 0 0;
	height: 7.07px;
	margin-left: -20px;
	margin-top: 6px;
	position: absolute;
	transform: rotate( 135deg );
	transition: transform 200ms ease-out;
	width: 7.08px;
}
#productfilter .btn-showmore .btn-icon:before {
	box-shadow: inset 0 0 0 32px;
	content: '';
	height: 1px;
	margin-right: 0;
	position: absolute;
	right: 0;
	top: -1px;
	transform: rotate( -45deg );
	transform-origin: right top;
	width: 9px;
}
#productfilter .productfilter-options-more.collapse + .btn-showmore .btn-label-collapse-in {
	display: none;
}
#productfilter .productfilter-options-more.collapsing + .btn-showmore .btn-label-collapse,
#productfilter .productfilter-options-more.collapse.in + .btn-showmore .btn-label-collapse {
	display: none;
}
#productfilter .productfilter-options-more.collapsing + .btn-showmore .btn-label-collapse-in,
#productfilter .productfilter-options-more.collapse.in + .btn-showmore .btn-label-collapse-in {
	display: inherit;
}
#productfilter .productfilter-options-more.collapsing + .btn-showmore .btn-icon {
	transform: rotate( 45deg );
}
#productfilter .productfilter-options-more.collapse.in + .btn-showmore .btn-icon {
	transform: rotate( -45deg );
}
/**
 * Options
 */
#productfilter [data-toggle='collapse'] {
	cursor: pointer;
}
#productfilter .productfilter-option {
	font-family: 'Open Sans','sans-serif';
}
#productfilter .productfilter-option:after {
	clear: both;
	content: '';
	display: block;
}
#productfilter .productfilter-option .badge {
	background-color: inherit;
	border-radius: inherit;
	cursor: default;
	float: right;
	font-size: 11px;
	font-weight: inherit;
	line-height: 20px;
	min-width: 20px;
	opacity: 0.5;
	padding: inherit;
}
#productfilter .productfilter-option .checkbox {
	float: left;
	margin-bottom: 0;
	margin-top: 0;
}
#productfilter .productfilter-option .checkbox input[type='checkbox'] + .checkbox-icon {
	border: thin solid #fff;
	border-radius: 2px;
	color: #000;
	height: 10px;
	margin-left: -21px;
	margin-top: 5px;
	position: absolute;
  -webkit-transition: border-color 200ms;
  transition: border-color 200ms;
	width: 10px;
}
#productfilter .productfilter-option .checkbox.checked input[type='checkbox'] +.checkbox-icon,
#productfilter .productfilter-option .checkbox input[type='checkbox'].checked + .checkbox-icon,
#productfilter .productfilter-option .checkbox input[type='checkbox']:checked + .checkbox-icon {
	background-color: #f00;
	border-color: #f00;
}
#productfilter .productfilter-option .checkbox.checked input[type='checkbox'] +.checkbox-icon:before,
#productfilter .productfilter-option .checkbox input[type='checkbox'].checked + .checkbox-icon:before,
#productfilter .productfilter-option .checkbox input[type='checkbox']:checked + .checkbox-icon:before {
	border-bottom: 2px solid #000;
	border-left: 2px solid #000;
	content: '';
	height: 6px;
	left: 0;
	position: absolute;
	top: 0;
	transform: rotate( -45deg );
	width: 9px;
}
#productfilter .productfilter-option .checkbox label {
	background-color: transparent;
	border: none;
	border-radius: 0;
	color: #fff;
	font-weight: 400;
	min-height: 2.5em;
	padding: 0 0 0 30px;
	text-transform: none;
  -webkit-transition: color 200ms;
  transition: color 200ms;
	word-break: break-word;
}
#productfilter .productfilter-option .checkbox label.focus,
#productfilter .productfilter-option .checkbox label.hover,
#productfilter .productfilter-option .checkbox label:focus,
#productfilter .productfilter-option .checkbox label:hover {
	color: #f00;
}
#productfilter .productfilter-option .checkbox label.focus .checkbox-icon,
#productfilter .productfilter-option .checkbox label:focus .checkbox-icon,
#productfilter .productfilter-option .checkbox label.hover .checkbox-icon,
#productfilter .productfilter-option .checkbox label:hover .checkbox-icon {
	border-color: #f00;
}
@media (hover: none) {
	#productfilter .productfilter-option .checkbox label:hover,
	#productfilter .productfilter-option .checkbox label.hover {
		color: #fff;
	}
	#productfilter .productfilter-option .checkbox label:hover .checkbox-icon,
	#productfilter .productfilter-option .checkbox label.hover .checkbox-icon {
		border-color: #fff;
	}
}
#productfilter .productfilter-option .checkbox.checked label {
	color: #f00;
}
#productfilter .productfilter-option .checkbox.checked label {
	color: #f00;
}
#productfilter .productfilter-option .checkbox.disabled label {
	opacity: 0.25;
}
#productfilter .productfilter-option .checkbox.disabled label.focus,
#productfilter .productfilter-option .checkbox.disabled label:focus,
#productfilter .productfilter-option .checkbox.disabled label.hover,
#productfilter .productfilter-option .checkbox.disabled label:hover {
	color: #fff;
}
#productfilter .productfilter-option .checkbox.disabled label.focus .checkbox-icon,
#productfilter .productfilter-option .checkbox.disabled label:focus .checkbox-icon,
#productfilter .productfilter-option .checkbox.disabled label.hover .checkbox-icon,
#productfilter .productfilter-option .checkbox.disabled label:hover .checkbox-icon {
	border-color: #fff;
	cursor: not-allowed;
}
@media (hover: none) {
	#productfilter .productfilter-option .checkbox.checked label:hover,
	#productfilter .productfilter-option .checkbox.checked label.hover {
		color: #f00;
	}
	#productfilter .productfilter-option .checkbox.checked label:hover .checkbox-icon,
	#productfilter .productfilter-option .checkbox.checked label.hover .checkbox-icon {
		border-color: #f00;
	}
}
#productfilter-section-segment .productfilter-option {
	background-size: contain;
	float: left;
	padding-left: 10px;
	padding-right: 10px;
	width: 25%;
}
@media (min-width: 768px) {
	#productfilter-section-segment .productfilter-option {
		width: 50%;
	}
}
@media (min-width: 1200px) {
	#productfilter-section-segment .productfilter-option {
		width: 25%;
	}
}
#productfilter-section-segment .productfilter-option input[type='checkbox'],
#productfilter-section-segment .productfilter-option .checkbox-icon {
	display: none;
}
#productfilter-section-segment .productfilter-option .checkbox label {
	background-repeat: no-repeat;
	background-position: 50% 50%;
	display: block;
	padding: 0 0 100% 0;
	text-indent: -9999px;
}
#productfilter-section-segment .productfilter-option .checkbox {
	float: none;
}
#productfilter-section-segment .productfilter-option-arsenal-gaming label {
	background-image: url( '../../../images/msi-arsenal_gaming-logo.svg' );
}
#productfilter-section-segment .productfilter-option-enthusiast-gaming label {
	background-image: url( '../../../images/msi-enthusiast_gaming-logo.svg' );
}
#productfilter-section-segment .productfilter-option-performance-gaming label {
	background-image: url( '../../../images/msi-performance_gaming-logo.svg' );
}
#productfilter-section-segment .productfilter-option-pro-series label {
	background-image: url( '../../../images/msi-pro_series-logo.svg' );
}
#productfilter-section-segment .productfilter-options {
	margin-left: -10px;
	margin-right: -10px;
}
#productfilter .productfilter-options {
	list-style: none;
	padding-left: 0;
}
#productfilter .productfilter-options:after {
	content: '';
	display: block;
	height: 10px;
}
/**
 * Sections
 */
#productfilter .productfilter-section {
	margin-bottom: 10px;
	position: relative;
}
#productfilter .productfilter-section > .btn-collapse {
	position: absolute;
	right: 0;
	top: 0;
}
#productfilter .productfilter-section-heading {
	border: none;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	font-family: 'Open Sans','sans-serif';
	font-size: 16px;
	margin-bottom: 10px;
	text-transform: uppercase;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	user-select: none;
	width: auto;
	z-index: 2;
}
#productfilter .productfilter-sections:after {
	content: '';
	display: block;
	height: 20px;
}
@media (min-width: 768px) {
	#productfilter .productfilter-sections.collapse {
		display: block;
		height: auto !important;
		padding-top: 5%;
	}
}
/**
 * Productfilter tags
 */
#productfilter-tags {
	margin-top: 10px;
}