body.searchpage {
	background-color: #f8f6f6;
}

.searchcontainer {
	min-height: 500px;
	padding-top: 30px;
	padding-bottom: 50px;
	background-color: #f8f6f6;
}

.searchcontainer .maincolwrap {
	display: table;
	width: 100%;
}

.searchcontainer .maincolwrap .maincol {
	display: table-cell;
	vertical-align: top;
	text-align: left;
}

.searchcontainer .maincolwrap .maincol.col1 {
	width: 260px;
}

.searchcontainer .maincolwrap .maincol.col1 .title {
	font-size: 16px;
	font-weight: 600;
	text-transform: uppercase;
	padding-bottom: 15px;
	padding-top: 10px;
}

.searchcontainer .filterbox {
	background-color: #fff;
	margin-bottom: 15px;
}

.searchcontainer .filterbox .filtertitle {
	font-size: 14px;
	line-height: 16px;
	font-weight: 600;
	text-transform: uppercase;
	padding-top: 12px;
	padding-bottom: 12px;
	padding-left: 20px;
	padding-right: 45px;
	border-bottom: solid 1px #f8f6f6;
}

.searchcontainer .filterbox .list {
	padding-top: 15px;
	padding-bottom: 0px;
	padding-left: 20px;
	padding-right: 20px;
}

.searchcontainer .filterbox.appliedfilters .list {
	font-size: 14px;
	line-height: 16px;
	color: #9b9f00;
}

.searchcontainer .filterbox.appliedfilters .list .item {
	padding-bottom: 15px;
	display: block;
	cursor: pointer;
	white-space: nowrap;
}

.searchcontainer .filterbox.appliedfilters .list .item:hover {
	color: #b5b934;
}

.searchcontainer .filterbox.appliedfilters .list .item .x {
	display: inline-block;
	vertical-align: top;
	width: 20px;
	height: 16px;
	background-image: url('/_images/icon-x-green.png');
	background-repeat: no-repeat;
	background-position: center left;
	background-size: 12px 12px;
}

.searchcontainer .filterbox.appliedfilters .list .item .text {
	display: inline-block;
	vertical-align: top;
	white-space: normal;
	white-space: break-spaces;
	padding-right: 20px;
}

.searchcontainer .filterbox .list .item .checktype1 .check {
    display: block;
    position: absolute;
    height: 18px;
    width: 18px;
    border-radius: 0px;
    top: 0px;
    left: 0px;
    z-index: 5;
    transition: border .25s linear;
    -webkit-transition: border .25s linear;
    background-color: #fff;
    border: 1px solid #a5a5a5;
}

.searchcontainer .filterbox .list .item .checktype1 label {
    display: block;
    position: relative;
    font-size: 14px;
    line-height: 16px;
    z-index: 9;
    cursor: pointer;
    -webkit-transition: all 0.25s linear;
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 2px;
    padding-right: 0px;
    padding-bottom: 15px;
    padding-left: 30px;
	width: 100%;
	box-sizing: border-box; 
}

.searchcontainer .filterbox .list .item .checktype1 .check::before {
    display: block;
    position: absolute;
    content: '';
    height: 12px;
    width: 12px;
    top: 3px;
    left: 3px;
    margin: auto;
    transition: background 0.25s linear;
    -webkit-transition: background 0.25s linear;
}

.searchcontainer .filterbox .list .item .radiotype1 .check {
    border: 1px solid #a5a5a5;
    height: 18px;
    width: 18px;
    top: 0px;
    left: 0px;
}

.searchcontainer .filterbox .list .item .radiotype1 .check::before {
    height: 12px;
    width: 12px;
    top: 3px;
    left: 3px;
}

.searchcontainer .filterbox .list .item .radiotype1 label {
    font-size: 14px;
    line-height: 16px;
    padding-top: 2px;
    padding-right: 35px;
    padding-bottom: 15px;
    padding-left: 30px;
}

.searchcontainer .filterbox.expandable .filtertitle {
	cursor: pointer;
	position: relative;	
}

.searchcontainer .filterbox.expandable .filtertitle .arrow {
	position: absolute;	
	z-index: 1;
	width: 20px;
	height: 20px;
	right: 20px;
	top: 10px;
	background-image: url('/_images/icon-arrow-down.png');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	-webkit-transition: all linear 0.25s;
	-moz-transition: all linear 0.25s;
	transition: all linear 0.25s;
}

.searchcontainer .filterbox.expandable.open .filtertitle .arrow {
	transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
	-moz-transform: rotate(180deg);
}

.searchcontainer .filterbox.expandable .list {
	display: none;
	max-height: 400px;
	overflow: auto;
}

.searchcontainer .searchresults {
	background-color: #fff;
	padding: 30px;
	margin-left: 30px;
}

.searchcontainer .searchtitlewrap {
	display: table;
	width: 100%;
	position: relative;
	z-index: 1;
}

.searchcontainer .searchtitle {
	display: table-cell;
	text-align: left;
	vertical-align: top;
}

.searchcontainer .sortbywrap {
	display: table-cell;
	text-align: right;
	vertical-align: top;
	padding-left: 50px;
}

.searchcontainer .searchtitle .title {
	font-size: 18px;
	font-weight: 600;
	line-height: 22px;
}

.searchcontainer  .searchtitle .title .smaller {
	font-size: 14px;
	line-height: 16px;
	white-space: nowrap;
}

.searchcontainer  .searchtitle .subtitle {
	font-size: 14px;
	line-height: 18px;
	font-weight: 500;
	color: #b4adad;
}

.searchcontainer .sortbywrap label {
	font-size: 14px;
	font-weight: 500;
	line-height: 18px;
}

.searchcontainer .sortbywrap select.sortby {
	font-size: 14px;
	font-weight: 500;
	margin-left: 10px;
	background-color: #fff;
	border: solid 1px #6a6b4c;
	border-radius: 3px;
	height: 38px;
	cursor: pointer;
}

.searchcontainer .filtertitlemb .extra {
	display: inline-block;
}

@media only screen and (max-width: 500px) {
	.searchcontainer  .sortbywrap .sortbycontainer {	
		background-color: #fff;
		line-height: 36px;
		padding: 0px;
			padding-right: 0px;
		padding-right: 20px;
		box-sizing: border-box;
		text-transform: uppercase;
	}
		
	.searchcontainer .sortbywrap label {
		display: none;
	}
	
	.searchcontainer .sortbywrap select.sortby {
		border: none;
		width: 100%;
		box-sizing: border-box;
		text-transform: uppercase;
		font-size: 16px;
		font-weight: 600;
		background-color: #fff;
		
		/* reset */
		border-radius: 0;
		margin: 0;      
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		-webkit-appearance:none;
		-moz-appearance:none;
		margin-left: 10px;
		
		background-image: url('/_images/icon-arrow-down.png');
		background-repeat: no-repeat;
		background-position: right center;
		background-size: 20px 20px;
		cursor: pointer;
	}

}

@media only screen and (max-width: 420px) {
	.searchcontainer .filtertitlemb .extra {
		display: none;
	}
}

.filterbox.appliedfilters.mb {
	display: none;
}

.appliedfiltersmbwrap {
	display: none;
}

.searchtitlewrapmobile {
	display: none;
}

@media only screen and (max-width: 720px) {
	.searchcontainer .searchtitle {
		display: block;
		text-align: left;
		vertical-align: top;
	}
	.searchcontainer .sortbywrap {
		display: block;
		text-align: left;
		vertical-align: top;
		padding-left: 0px;
		padding-top: 10px;
	}
}

@media only screen and (max-width: 1100px) {
	
	.searchtitlewrapmobile {
		/*display: block;*/
		display: none;
		background-color: #fff;
		padding: 20px;
		margin-bottom: 20px;
	}
	
	.searchcontainer .maxwidth1660 {
		overflow: visible;
	}
	
	.searchcontainer .maincolwrap {
		display: block;
	}
	
	.searchcontainer .maincolwrap .maincol {
		display: block;
	}
	
	.searchcontainer .maincolwrap .maincol.col1 {
		width: 100%;
		margin-bottom: 0px;
		padding: 0px;
		box-sizing: border-box;
	}
	
	.searchcontainer .searchresults {
		margin-left: 0px;
	}
	
	.searchcontainer .maincolwrap .maincol.col1 .title {
		padding-top: 0px;
	}
	
	.searchcontainer .filterbox {
		margin-bottom: 10px;
	}
	
	.searchcontainer .tabcolwrap {
		display: table;
		width: 100%;
	}
	
	.searchcontainer .tabcolwrap .tabcol {
		display: table-cell;
		vertical-align: top;
	}
	
	.searchcontainer .tabcolwrap .tabcol .margins {
		margin-left: -10px;
		margin-right: -10px;
	}
	
	.searchcontainer .tabcolwrap .tabcol:last-child {
		padding-left: 20px;
	}
	
	.searchcontainer #clerk-search-filters .tabcolwrap .tabcol:last-child {
		padding-left: 0px;
	}
	
	.searchcontainer .tabcolwrap .tabcol:last-child .filterbox {
		margin-bottom: 15px;
	}
	
	.searchcontainer .tabcolwrap .tabcol:last-child .filterbox.expandable {
		display: inline-block;
		width: calc(33.3333% - 20px);
		margin-left: 10px;
		margin-right: 10px;
		box-sizing: border-box;
		position: relative;
	}
	
	.searchcontainer .tabcolwrap .tabcol:last-child .filterbox.expandable .list {
		position: absolute;
		z-index: 50;
		left: 0px;
		right: 0px;
		top: 41px;
		background-color: #fff;
		max-height: 200px;
		-webkit-box-shadow: 0px 5px 8px -3px rgba(0,0,0,0.19);
		-moz-box-shadow: 0px 5px 8px -3px rgba(0,0,0,0.19);
		box-shadow: 0px 5px 8px -3px rgba(0,0,0,0.19);
	}
	
	.searchcontainer .filterbox .list .item .checktype1 label {
		display: block;
		position: relative;
		font-size: 12px;
		line-height: 16px;
		padding-bottom: 10px;
		padding-left: 25px;
		padding-top: 0px;
	}
	
	.searchcontainer .filterbox .list .item .radiotype1 label {
		display: block;
		position: relative;
		font-size: 12px;
		line-height: 16px;
		padding-bottom: 10px;
		padding-left: 25px;
		padding-top: 0px;
	}
	
	.searchcontainer .filterbox .list .item .checktype1 .check {
		height: 14px;
		width: 14px;
	}
	
	.searchcontainer .filterbox .list .item .radiotype1 .check {
		height: 14px;
		width: 14px;
	}
	
	.searchcontainer .filterbox .list .item .checktype1 .check::before {
		height: 10px;
		width: 10px;
		top: 2px;
		left: 2px;
	}
		
	.searchcontainer .filterbox .list .item .radiotype1 .check::before {
		height: 10px;
		width: 10px;
		top: 2px;
		left: 2px;
	}
	.searchcontainer .filterbox .list {
		padding-top: 10px;
	}
	
	.searchcontainer .filterbox.appliedfilters.dt {
		display: none;
	}
	
	.searchcontainer .tabcolwrap .tabcol .filterbox.appliedfilters.mb {
		display: table;
		width: 100%;
		box-sizing: border-box;
		background-color: transparent;
		margin-bottom: 0px;
	}
	
	.searchcontainer .tabcolwrap .tabcol .filterbox.appliedfilters.mb .filtertitle {
		display: table-cell;
		vertical-align: top;
		padding-right: 20px;
		padding-top: 0px;
		padding-bottom: 10px;
		padding-left: 10px;
		border: none;
		width: 150px;
		box-sizing: border-box;
	}
	
	.searchcontainer .tabcolwrap .tabcol .filterbox.appliedfilters.mb .list {
		display: table-cell;
		vertical-align: top;
		padding-left: 0px;
		padding-right: 0px;
		padding-top: 0px;
		padding-bottom: 10px;
	}
	
	.searchcontainer .tabcolwrap .tabcol .filterbox.appliedfilters.mb .list .item {
		display: inline-block;
		vertical-align: top;
		padding-right: 20px;
	}
	
	.searchcontainer .tabcolwrap .tabcol .filterbox.appliedfilters.mb .list .item.clearall {
		font-weight: 700;
		text-transform: uppercase;
	}
	
	.searchcontainer .filterbox.appliedfilters .list .item .x {
		width: 15px;
		height: 16px;
		background-size: 10px 10px;
	}

}

@media only screen and (max-width: 940px) {
	.searchcontainer .tabcolwrap .tabcol:last-child .filterbox.expandable {
		width: calc(50% - 20px);
	}
	
	.searchcontainer .tabcolwrap .tabcol .filterbox.appliedfilters.mb {
		width: calc(100% + 200px);
		margin-bottom: 0px;
		margin-left: -200px;
		
	}
}

.searchcontainer .tabcolwrap .filterbox.stockfeature.expandable.mb {
	display: none;
}

@media only screen and (max-width: 680px) {
	.searchcontainer .tabcolwrap .filterbox.stockfeature.expandable.mb {
		display: inline-block;
	}
	.searchcontainer .tabcolwrap .tabcol:first-child {
		display: none;
	}
	
	.searchcontainer #clerk-search-filters .tabcolwrap .tabcol:first-child {
	  display: table-cell;
	}
		
	.searchcontainer .tabcolwrap .tabcol .filterbox.appliedfilters.mb {
		width: 100%;
		margin-bottom: 0px;
		margin-left: 0px;
	}
	.searchcontainer .tabcolwrap .tabcol:last-child {
		padding-left: 0px;
	}
}

@media only screen and (max-width: 500px) {
	.searchcontainer .tabcolwrap .tabcol:last-child .filterbox.expandable {
		width: 100%;
		margin-left: 0px;
		margin-right: 0px;
	}
	.searchcontainer .tabcolwrap .tabcol .margins {
		margin-left: 0px;
		margin-right: 0px;
	}
	
	.searchcontainer .title {
		position: relative;
		cursor: pointer;
	}
	
	.searchcontainer .title .arrow {
		position: absolute;	
		z-index: 1;
		width: 20px;
		height: 20px;
		right: 0px;
		top: 5px;
		background-image: url('/_images/icon-arrow-down.png');
		background-repeat: no-repeat;
		background-position: center center;
		background-size: contain;
		-webkit-transition: all linear 0.25s;
		-moz-transition: all linear 0.25s;
		transition: all linear 0.25s;
	}
	
	.searchcontainer .title.open .arrow {
		transform: rotate(180deg);
		-webkit-transform: rotate(180deg);
		-moz-transform: rotate(180deg);
	}
	
	.searchcontainer .filterbox.expandable .filtertitle .arrow {
		width: 15px;
		height: 15px;
		right: 15px;
		top: 12px;
	}
}

.searchcontainer .filtertitlemb {
	display: none;
}

@media only screen and (max-width: 500px) {
	
	.searchcontainer .filtertitlemb {
		display: block;
	}
	
	.searchcontainer .filtertitledt {
		display: none;
	}
	
	.searchcontainer .mobilefilterwrap {
		display: none;
	}
	.searchcontainer .tabcolwrap .tabcol .filterbox.appliedfilters.mb .filtertitle {
		display: inline-block;
		vertical-align: top;
		padding-right: 20px;
		padding-bottom: 10px;
		padding-left: 0px;
		width: auto;
	}
	.searchcontainer .tabcolwrap .tabcol .filterbox.appliedfilters.mb .list {
		display: inline-block;
		padding-bottom: 10px;
	}
	.searchcontainer {
		padding-top: 10px;
	}
	.searchcontainer .maxwidth1660 {
		padding-left: 10px;
		padding-right: 10px;
	}
	.searchcontainer .searchtitle .title {
		padding-bottom: 0px;
	}
	.searchcontainer .maincolwrap .maincol.col1 .title {
		padding-left: 10px;
	}
	.searchcontainer .title .arrow {
		right: 10px;
	}
	.searchtitlewrapmobile {
		margin-bottom: 10px;
	}
	.searchtitlewrapmobile .sortbywrap {
		display: none;
	}
	.searchcontainer .maincolwrap .maincol.col1 .title {
		padding-bottom: 10px;
	}
	.searchcontainer .searchtitle .subtitle {
		display: none;
	}
	.searchcontainer .searchtitlewrap.searchtitlewrapdesktop {
		display: block;
	}
	.searchcontainer .searchtitlewrap.searchtitlewrapdesktop .searchtitle {
		display: none;
	}
	.searchcontainer .searchtitlewrap.searchtitlewrapdesktop .sortbywrap {
		padding-top: 0px;
	}
	
	.searchcontainer .searchtitlewrap.searchtitlewrapdesktop .sortbywrap .sortbycontainer {
		display: table;
		width: 100%;
	}

	.searchcontainer .searchresults {
		padding: 20px;		
	}
}

.searchqwrap {
	margin-top: 0px;
	margin-bottom: 10px;
	display: block;
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #393939;
	border-radius: 3px;
	padding-left: 10px;
	padding-right: 10px;
	padding-top: 0px;
	padding-bottom: 0px;
	max-width: 650px;
}

.searchtitlewrapmobile .searchqwrap {
	margin-bottom: 0px;
}

.searchqwrap .searchq {
	width: calc(100% - 50px);
	box-sizing: border-box;
	line-height: 20px;
	font-size: 18px;
	border: none;
	margin: 0px;
	background-color: #fff;
	display: inline-block;
	vertical-align: middle;
	padding-top: 5px;
	padding-bottom: 5px;
}

.searchqwrap .searchqbutton {
	display: inline-block;
	background-image:url('/_images/icon-search-black.png');
	background-size: 20px 20px;
	background-position: right center;
	background-repeat: no-repeat;
	width: 50px;
	height: 30px;
	vertical-align: middle;
	cursor: pointer;
}

.productlist.searchpage .product {
	width: 16.6666%;
}

@media only screen and (max-width: 1550px) {
	.productlist.searchpage .product {
		width: 25%;
		/*width: 20%;*/
	}
}

@media only screen and (max-width: 1350px) {
	.productlist.searchpage .product {
		width: 25%;
	}
}

@media only screen and (max-width: 1105px) {
	.productlist.searchpage .product {
		width: 33.3333%;
	}
}

@media only screen and (max-width: 1100px) {
	.productlist.searchpage .product {
		width: 25%;
		/*width: 20%;*/
	}
}

@media only screen and (max-width: 1030px) {
	.productlist.searchpage .product {
		width: 25%;
	}
}

@media only screen and (max-width: 840px) {
	.productlist.searchpage .product {
		width: 33.3333%;
	}
}

@media only screen and (max-width: 768px) {
	.searchcontainer .maincolwrap .maincol.col2 {
		margin-left: -20px;
		margin-right: -20px;
	}
}

@media only screen and (max-width: 655px) {
	.productlist.searchpage .product {
		width: 50%;
	}
}

@media only screen and (max-width: 400px) {
	.productlist.searchpage .product {
		width: 100%;
	}
	.searchcontainer .searchresults {
		margin-left: 0px;
		margin-right: 0px;
	}
}

@media only screen and (max-width: 450px) {
	.productlist .product {
		padding-bottom: 30px;
		padding-left: 10px;
		padding-right: 10px;
	}
}

@media only screen and (max-width: 500px) {
	.searchcontainer .maincolwrap .maincol.col2 {
		margin-left: -10px;
		margin-right: -10px;
	}
}

.searchcontainer .products .searchtitle {
	padding-top: 15px;
	padding-bottom: 15px;
}

@media only screen and (min-width: 721px) {
	.searchcontainer .products .searchtitle {
		display: block;
		margin-top: -45px;
		max-width: calc(100% - 300px);
		padding-bottom: 30px;
	}
}

.mobilefiltersort {
	display: none;
	padding-bottom: 10px;
}

.mobilefiltersort .mfcol {
	display: table-cell;
	vertical-align: top;
	text-align: left;
	padding-right: 10px;
	box-sizing: border-box;
}

.mobilefiltersort .mfcol:last-child {
	text-align: right;
	padding-left: 10px;
	padding-right: 0px;
}

#clerk-search-filters .mobilefiltersort .mfcol:last-child {
	text-align: left;
	padding-left: 0px;
	padding-right: 0px;
}

.mobilefiltersort .title.filtertitlemb {
	line-height: 16px;
	font-size: 14px;
	display: block;
	padding: 10px!important;
	padding-right: 35px!important;
	background-color: #fff;
}

.searchcontainer .mobilefiltersort .title .arrow {
    top: 50%;
	margin-top: -10px;
}

.searchcontainer .mobilefiltersort .sortbywrap {
	padding-top: 0px;
	text-align: right;
}

@media only screen and (max-width: 500px) {
	.mobilefiltersort {
		display: table;
		width: 100%;
	}
	.searchcontainer .searchtitlewrap.searchtitlewrapdesktop {
		display: none;
	}
}

.searchcontainer .filterbox .filtertitle.withhomelink {
	position: relative;
}

.searchcontainer .filterbox .filtertitle.withhomelink .homelink {
    position: absolute;
    z-index: 1;
    width: 20px;
    height: 20px;
    right: 20px;
    top: 10px;
    background-image: url('/_images/icon-home-dark.png');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    -webkit-transition: all linear 0.25s;
    -moz-transition: all linear 0.25s;
    transition: all linear 0.25s;
}

.products {
	position: relative;
	min-height: 500px;
}

.loaderwrap {
	position: relative;
	z-index: 0;
}

.loaderwrap .productsloader {
	display: none;
	position: absolute;
	z-index: 999999;
	top: 0;
	left: 0;
	bottom: 0px;
	right: 0px;
	height: 100%;
	width: 100%;
	background-color: rgba(255,255,255,0.8);
	background-image: url(/_images/loader.png);
	background-repeat: no-repeat;
	background-position: 50% 100px;
	background-size: 125px;
}

.loaderwrap.loading .productsloader {
	display: block;
}

.clerk-facet-name::before {
  content: '';
  width: 15px !important;
  height: 15px !important;
  margin: 0 .5em 0 0;
  border: 1px solid var(--clerk-input-border-color);
  border-radius: 4px;
  transition: all .2s ease-in-out;
  display: inline-block;
}

.clerk-facet-name {
  overflow: hidden;
  height: auto;
  min-height: 20px;
  white-space: normal;
  display: block;
  vertical-align: top;
}

.clerk-facet-name .facname {
	display: inline-block;
	vertical-align: top;
	line-height: 18px;
	box-sizing: border-box;
	max-width: 150px;
	padding-top: 2px;
}

.clerk-facet-count {
	display: inline-block;
	vertical-align: top;
	width: 20px;
	line-height: 18px;
	margin-top: -5px;
	text-align: right;
}

.sbanners {
	display: block;
	padding-bottom: 10px;
	padding-top: 0px;
	text-align: center;
}

.sbanners .mobilebannerwrap {
	display: none;
}

.sbanners .desktopbannerwrap {
	display: block;
}

@media only screen and (max-width: 710px) {
	.sbanners .mobilebannerwrap {
		display: block;
	}
	
	.sbanners .desktopbannerwrap {
		display: none;
	}
}

.sbanners .banner {
	display: inline-block;
	vertical-align: top;
	padding-left: 10px;
	padding-right: 10px;
	padding-bottom: 20px;
	box-sizing: border-box;
	width: 100%;
	max-width: 1024px;
}

.sbanners .banner img {
	display: block;
	width: 100%;
	height: auto;
}

.sbanners .banner:first-child {
	padding-left: 0px;
}

.sbanners .banner:last-child {
	padding-right: 0px;
}