.invisibility-cloak {
	visibility: hidden;
}
.sd-button {
	background-color: #f2018a;
	color: #fff;
	display: inline-block;
	cursor: pointer;
	font-family: "PNovaBold";
	letter-spacing: 2px;
	padding: 15px 20px 15px 25px;
	text-align: center;
	font-size: 15px;
	text-transform: uppercase;
}
.whiteout-screen {
	background: rgba(255,255,255,0.9);
	left: 0;
	height: 100%;
	opacity: 0;
	position: fixed;
	top: 0;
	transition: .3s ease all;
	width: 100%;
	z-index: -1;
}
.whiteout-screen.dimmed {
	opacity: 1;
	z-index: 115;
}
	.whiteout-screen > div {
		margin: 0 auto;
		position: relative;
		text-align: center;
		top: 40%;
		width: 200px;
	}
	.whiteout-screen > div i {
		font-size: 36px;
	}

@keyframes fadein {
    0%   { opacity: 0; }
    100% { opacity: 1; }
}
@-webkit-keyframes fadein {
    0%   { opacity: 0; }
    100% { opacity: 1; }
}
@-webkit-keyframes slide-from-top-20 {
    0%   { top: -20px; opacity: 0; }
    100% { top: 0; opacity: 1; }
}

@keyframes slide-from-top-20 {
	0%   { top: -20px; opacity: 0; }
    100% { top: 0; opacity: 1; }
}
@-webkit-keyframes slide-from-bottom-20 {
    0%   { top: 10px; opacity: 0; }
    100% { top: 0; opacity: 1; }
}

@keyframes slide-from-bottom-20 {
	0%   { top: 10px; opacity: 0; }
    100% { top: 0; opacity: 1; }
}

/** Auto Suggest Window *********************************/
/********************************************************/

#search-window {
	background: #fff;
	box-sizing: border-box;
	left: 0;
	max-height: 90%;
	opacity: 0;
	overflow-y: auto;
	position: fixed;
	top: 105px;
	transition: ease .3s all;
	width: 100%;
	z-index: -1;
	
}
.header-is-sticky #search-window {
	top: 45px;
	padding-top: 50px;
}

#search-window.visible {
	display: block;
	opacity: 1;
	z-index: 200;
}
.search-window-container {
	margin: 0 auto;
	max-width: 1120px;
	padding-right: 30px;
	padding-bottom: 25px;
	position: relative;
	width: 100%;
}
	
	#search-window h2 {
		color: #363636;
		font-family: "Georgia";
		font-size: 16px;
		font-style: italic;
		margin: 25px 0;
	}
	#search-window .no-wrap {
		white-space: nowrap;
	}
	#search-window #intro-heading {
		opacity: 0;
	}
	#search-window.visible #intro-heading {
		-webkit-animation: .2s slide-from-bottom-20;
		animation: .2s slide-from-bottom-20;
		animation-delay: .2s;
		-webkit-animation-fill-mode:forwards; /* this keeps it on the last keyframe which has opacity: 1 */
		-moz-animation-fill-mode:forwards;
		animation-fill-mode:forwards;
		position: relative;
	}
	.thin-close-icon{
		cursor: pointer;
		float: right;
		font-size: 30px;
		height: 1em;
		position: relative;
		width: 1em;
	}
	#search-window .thin-close-icon {
		opacity: 0;
		position: absolute;
		top: 4px; 
		right: 30px;
	}
	#search-window.visible .thin-close-icon {
		-webkit-animation: .2s fadein;
		animation: .2s fadein;
		-webkit-animation-fill-mode:forwards; /* this keeps it on the last keyframe which has opacity: 1 */
		-moz-animation-fill-mode:forwards;
		animation-fill-mode:forwards;
		animation-delay: .2s;
	}
		.thin-close-icon .close-line {
			width: 1em;
			border-bottom: 2px solid #b7b7b7;
			position: absolute;
			-webkit-transform: rotate(45deg);
			transform: rotate(45deg);
			top: .5em;
		}
		.thin-close-icon .close-line:first-child {
			-webkit-transform: rotate(-45deg);
			transform: rotate(-45deg);
		}
	
	/** Left Side / Input ******************************/
	/***************************************************/
	#search-input-shell {
		float: left;
		width: 250px;
	}
		.search-input-group {
			position: relative;
		}
		#search-window .search-input-group {
			opacity: 0;
			transition: .3s ease all;
		}
		#search-window.visible .search-input-group {
			-webkit-animation: .2s slide-from-top-20;
			animation: .2s slide-from-top-20;
			-webkit-animation-fill-mode:forwards; /* this keeps it on the last keyframe which has opacity: 1 */
			-moz-animation-fill-mode:forwards;
			animation-fill-mode:forwards;
			animation-delay: .2s;
		}
		
			.search-input-group input[type="text"] {
				background: none;
				border: none;
				border-bottom: 2px solid #7d7d7d;
				color: #363636;
				font-size: 24px;
				padding: 0;
				width: 100%;
			}
			.search-input-group input[type="text"]:focus {
				outline: none;
			}
			.search-input-group input[type="text"]::-webkit-input-placeholder { 
			  color: #d7d7d7;
			}			
			.search-input-group input[type="text"]:-moz-placeholder {
			  color: #d7d7d7;
			}			
			.search-input-group input[type="text"]::-moz-placeholder {
			  color: #d7d7d7;
			}			
			.search-input-group input[type="text"]:-ms-input-placeholder {
			  color: #d7d7d7;
			}			
			.search-input-group input[type="text"]::-ms-input-placeholder { 
			  color: #d7d7d7;
			}
			
			.search-input-group input[type="text"]:placeholder-shown {
			  color: #d7d7d7;
			}
			.search-input-group i {
				color: #7d7d7d;
				cursor: pointer;
				font-size: 18px;
				position: absolute;
				right: 0;
				top: 6px;
			}
		#auto-suggest-categories {
			
		}
			#auto-suggest-categories li {
				
			}
				#auto-suggest-categories li a {
					color: #000;
					display: block;
					font-size: 15px;
					padding: 7px 0;
					transition: .3s ease all;
				}
				#auto-suggest-categories li.faux-hover a {
					background: #f7f7f7;
					padding: 7px 10px;
				}
				.underline {
					border-bottom: 1px solid #7d7d7d;
					display: inline-block;
				}
	
	/** Right Side / Product Results  ******************/
	/***************************************************/
	#auto-suggest-products-shell {
		float: left;
		margin-left: 40px;
		padding-top: 31px;
		width: 830px;
	}
		#auto-suggest-products-header {
			margin-bottom: 15px;
		}
			#auto-suggest-products-header h2 {
				float: left;
			}
			#auto-suggest-products-header a {
				color: #f2018a;
				display: block;
				float: right;
				margin: 28px 0 0;
			}
		#auto-suggest-products {
			margin: 0 -15px;
			display: -webkit-flex;
			display: -ms-flexbox;
			display: flex;
			-webkit-flex-wrap: wrap;
			-ms-flex-wrap: wrap;
			flex-wrap: wrap;
			-webkit-align-content: flex-start;
			align-content: flex-start;
			-webkit-justify-content: space-between;
			justify-content: space-between;
		}
			#auto-suggest-products .product {
				-webkit-animation: .7s fadein;
				animation: .7s fadein;
				-webkit-animation-fill-mode:forwards; /* this keeps it on the last keyframe which has opacity: 1 */
				-moz-animation-fill-mode:forwards;
				animation-fill-mode:forwards;
				-moz-box-sizing: border-box;
				-webkit-box-sizing: border-box;
				box-sizing: border-box;
				display: inline-block;
				-ms-flex-preferred-size: 24.9%;
				-webkit-flex-basis: 24.9%;
				flex-basis: 24.9%;
				margin: 0; /* override inherited stuff */
				min-height: 0; /* override inherited stuff */
				opacity: 0;
				text-align: center;
				transition: .3s ease all;
				padding: 0 15px 20px;
			}
			#auto-suggest-products .product:last-child:nth-child(3n+2),
			#auto-suggest-products .product:last-child:nth-child(3n+3),
			#auto-suggest-products .product:first-child:last-child{
				margin-right: auto;
			}
			#auto-suggest-products .product:nth-child(1) {
				-moz-animation-delay: .05s;
				-webkit-animation-delay: .05s;
				animation-delay: .05s;
			}
			#auto-suggest-products .product:nth-child(3n+2) {
				-moz-animation-delay: .1s;
				-webkit-animation-delay: .1s;
				animation-delay: .1s;
			}
			#auto-suggest-products .product:nth-child(3n+3){
				-moz-animation-delay: .15s;
				-webkit-animation-delay: .15s;
				animation-delay: .15s;
			}
			#auto-suggest-products .product:nth-child(3n+4) {
				-moz-animation-delay: .2s;
				-webkit-animation-delay: .2s;
				animation-delay: .2s;
			}
			#auto-suggest-products .product:nth-child(3n+8) {
				-moz-animation-delay: .25s;
				-webkit-animation-delay: .25s;
				animation-delay: .25s;
			}
			@media screen and ( max-height: 700px ){
				#auto-suggest-products .product:nth-child(4) ~ .product {
					display: none;
				}
			}
			#auto-suggest-products .product.dim {
				opacity: .8;
			}
			
				#auto-suggest-products .product img {
					height: auto;
					margin-bottom: 5px;
					max-height: 180px;
					max-width: 100%;
				}
				#auto-suggest-products .product .price {
					color: #363636;
					font-size: 14px;
					text-align: center; /* override inherited stuff */
					width: auto; /* override inherited stuff */
				}
					#auto-suggest-products .product .price .price-label{
						display: inline;
						float: none;
						font-size: 11px;
						top: 0;
					}
				#auto-suggest-products .product .name {
					color: #363636;
					font-family: "PNovaSemiB";
					font-size: 11px;
					letter-spacing: 1.5px;
					line-height: normal;
					text-align: center;
					text-transform: uppercase;
				}

/** Search Results Page *********************************/
/********************************************************/

.serp-results-shell {
	display: none;
	margin: 0 auto;
	padding-right: 30px; /* why the whole site is offset by 30px idk why.. */
	width: 1120px;
}
.serp-results-shell.visible {
	display: block;
}

	.serp-results-shell h2 {
		color: #b7b7b7;
		font-family: "PNovaSemiB";
		font-size: 17px;
		letter-spacing: 3px;
		margin-bottom: 20px;
		text-transform: uppercase;
	}
	.serp-results-shell h3 {
		color: #7d7d7d;
		font-family: "PNovaSemiB";
		font-size: 13px;
		letter-spacing: 3px;
		margin-bottom: 12px;
		text-transform: uppercase;
	}
	.serp-results-shell h4 {
		color: #999;
		font-family: "PNovaReg";
		font-size: 13px;
		margin-bottom: 5px;
	}

/** Results Shell **/
#serp-results-shell {
	
}
	#serp-filters {
		border-top: 1px solid #eee;
		float: left;
		margin-top: 65px;
		padding-top: 20px;
		width: 250px;
	}
		#serp-filter-heading {
			
		}
			#serp-filter-heading h2 {
				float: left;
			}
			#serp-filter-heading .results-count {
				float: right;
				margin-top: 4px;
			}
			
		
		.option-set {
			display: none;
			margin-bottom: 30px;
		}
		#option-set-size {
			margin-bottom: 19px;
		}
		.option-set-options .option-set {
			margin-bottom: 0;
			margin-top: 5px;
		}
			.option-set .subheading {
				
			}
				.option-set .subheading h3 {
					display: inline-block;
					margin-right: 10px;
				}
				.option-set .subheading a {
					color: #b7b7b7;
					display: none;
					transition: .2s ease all;
				}
				.option-set .subheading a.show {
					display: inline-block;
				}
				.option-set .subheading a:hover {
					color: #f2018a;
				}
				.option-set .subheading .subheading-clear {
					float:right;
					line-height: 18px;
				}
			.option-set .subheading#subheading-size {
				position: relative;
				top:6px;
			}
			.option-set .option-set-options#facet_price input {
				background: none;
			}

			.option-set-options {
				
			}
			.option-set-options.size-options {
				margin-bottom: -11px;
			}

            #serp-filters .faux-checkbox {
				border: 1px solid #7d7d7d;
				display: inline-block;
				height: 18px;
				margin-right: 3px;
				position: relative;
				top: 4px;
				width: 18px;
			}
			.selected .faux-checkbox::before,
			.selected .faux-checkbox::after {
				border-bottom: 1px solid #7d7d7d;
				content: "";
				left: 4px;
				position: absolute;
				-webkit-transform: rotate(45deg);
				transform: rotate(45deg);
				top: 9px;
				width: 10px;
			}
			.selected .faux-checkbox:after {
				-webkit-transform: rotate(-45deg);
				transform: rotate(-45deg);
			}
			
			.input-checkbox {
				display: none;
			}
			.option-set label {
				color: #7d7d7d;
				cursor: pointer;
				display: block;
				font-size: 13px;
				margin: 0 5px 3px 0;
				text-transform: capitalize;
			}
			.option-set label.label-option {
				border: 1px solid #d7d7d7;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box;
				display: block;
				float: left;
				height: 30px;
				letter-spacing:.5px;
				margin: 0 11px 11px 0;
				padding-top: 4px;
				text-align: center;
				width: 32.5px;
			}
			.option-set label.label-option.inactive {
				border-color: #d7d7d7;
				color: #d7d7d7;
				cursor: default;
				position: relative;
				overflow: hidden;
			}
			.option-set label.label-option.inactive::before {
				content: "";
				border-bottom: 1px solid #d7d7d7;
				left: -20px;
				position: absolute;
				-webkit-transform: rotate(-42deg);
				transform: rotate(-42deg);
				width: 80px;
			}
			.option-set label.label-option:nth-child(6n+6){
				margin-right: 0;
			}
			.option-set label.label-option.selected {
				border-color: #363636;
			}
			
	#serp-products-shell {
		float: left;
		margin-left: 40px;
		padding-top: 65px;
		width: 830px;
	}	
		#serp-products-heading {
			margin-bottom: 20px;
			text-align: center;
		}
		#serp-products-heading.no-results {
			padding-top: 40px;
			margin-top: 135px;
		}
			.serp-heading-lead {
				display: block;
				font-family: "Georgia", "Times New Roman", serif;
				font-size: 16px;
				font-style: italic;
				margin-bottom: 5px;
			}
			.no-results .serp-heading-lead {
				font-family: "PNovaReg";
				font-size: 24px;
				font-style: normal;
			}
			.serp-heading-query {
				color: #363636;
				display: block;
				font-family: "PNovaBold";
				font-size: 45px;
				letter-spacing: 5px;
				text-transform: uppercase;
			}
			.no-results .serp-heading-query {
				font-size: 24px;
			}
		#too-many-filters-msg {
			text-align: center;
		}
			#too-many-filters-msg h2 {
				color: #363636;
				font-family: "PNovaReg";
				font-size: 24px;
				margin: 45px 0 30px;
				letter-spacing: 0;
				text-transform: none;
			}
			#too-many-filters-msg p {
				
			}
			#too-many-filters-msg a {
				color: #e44782;
			}
		
		#serp-products-sort {
			margin-bottom: 35px;
		}
			#serp-products-sort select {
				-moz-appearance: none;
				-webkit-appearance: none;
				background: #fff url('//us-cdn.sd-assets.com/media/images/shared/dp_select2.png') no-repeat right -1px;
				border: 1px solid #7d7d7d;
				border-radius: 0;
				color: #7d7d7d;
				float: right;
				font-family: "PNovaSemiB";
				height: 40px;
				letter-spacing: 1px;
				padding: 10px;
				width: 200px;
			}
			
		#serp-products {
			display: -webkit-flex;
			display: -ms-flexbox;
			display: flex;
			-webkit-flex-wrap: wrap;
			-ms-flex-wrap: wrap;
			flex-wrap: wrap;
			-webkit-align-content: flex-start;
			align-content: flex-start;
			margin: 0 -20px;
			-webkit-justify-content: space-between;
			justify-content: space-between;
		}
			#serp-products .item {
				-webkit-animation: .2s fadein;
				animation: .2s fadein;
				-webkit-animation-fill-mode:forwards; /* this keeps it on the last keyframe which has opacity: 1 */
				-moz-animation-fill-mode:forwards;
				animation-fill-mode:forwards;
				-moz-box-sizing: border-box;
				-webkit-box-sizing: border-box;
				box-sizing: border-box;
				-ms-flex-preferred-size: 33%;
				-webkit-flex-basis: 33%;
				flex-basis: 33%;
				opacity: 0;
				padding: 0 20px 20px;
				text-align: center;
				
			}
			#serp-products .item:last-child:nth-child(3n+2),
			#serp-products .item:first-child:last-child{
				margin-right: auto;
			}
				#serp-products .item a { 
					display: block;
				}
				#serp-products .item img {
					height: auto;
					max-width: 100%;
				}
				#serp-products .item .price {
					color: #363636;
					font-family: "PNovaSemiB";
					font-size: 14px;
					margin: 15px 0 0;
					text-align: center; /* override inherited stuff */
					width: auto; /* override inherited stuff */
				}
					#serp-products .item .price .price-label {
						display: inline;
						float: none;
						font-size: 11px;
						top: 0;
					}
				#serp-products .item .name {
					color: #363636;
					display: block;
					font-family: "PNovaSemiB";
					font-size: 11px;
					letter-spacing: 1.5px;
					line-height: normal;
					margin: 5px 0 7px;
					text-align: center;
					text-transform: uppercase;
				}
				#serp-products .item .favorite-flag {
					cursor: pointer;
				}
				#serp-products .item .favorite-flag.favorite {
					background-position: 50% -16px;
				}
			

/** Price Scale Block **********************/
	#option-set-price #amount{
		border:0;
		font-family: "PNovaReg";
		font-size:15px;
		color:#7d7d7d;
		display:block;
		margin-bottom:20px;
	}
		#slider-range { 
			-moz-box-sizing: border-box;
			-webkit-box-sizing: border-box;
			box-sizing: border-box;
			margin: 0 10px 0 10px;
		}
		
		.ui-slider{
			position:relative;
			text-align:left;
		}
		
		.ui-slider .ui-slider-handle{
			position:absolute;
			z-index:2;
			width:18px;
			height:18px;
			cursor:default;
			border-radius:50%;
		}
		
		.ui-slider .ui-slider-range{
			position:absolute;
			background: #e5e5e5;
			z-index:1;
			font-size:.7em;
			display:block;
			border:0;
			background-position:0 0;
		}
		.ui-slider .ui-slider-range:last-child {
			background: #f2018a;
		}
		.ui-slider-horizontal{
			height:3px;
		}
		
		.ui-slider-horizontal .ui-slider-handle{
			top:-.6em;
		}
		.ui-slider-horizontal a.ui-slider-handle {
			margin-left: -10px;
		}
		
		.ui-slider-horizontal .ui-slider-range{
			top:0;
			height:100%;
			background: #f2018a;
		}
		
		.ui-slider-horizontal .ui-slider-range-min{
			left:0;
		}
		
		.ui-slider-horizontal .ui-slider-range-max{
			right:0;
		}
		
		.ui-widget{
			font-family:Verdana, Arial, sans-serif;
			font-size:1.1em;
		}
		
		.ui-widget .ui-widget{
			font-size:1em;
		}
		
		.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button{
			font-family:Verdana, Arial, sans-serif;
			font-size:1em;
		}
		
		.ui-widget-content{
			background-color:#e6e6e6;
		}
		
		.ui-widget-header{
			background-color:#f2018a;
			font-weight:bold;
		}
		
		.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default{
			border:1px solid #d7d7d7;
			background-color:#fff;
			font-weight:normal;
			color:#555555;
		}
		
		.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited{
			color:#555555;
			text-decoration:none;
		}
		
		.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus{
			border:1px solid #999;
			background-color:#dadada;
			font-weight:normal;
			color:#212121;
		}
		
		.ui-state-hover a, .ui-state-hover a:hover{
			color:#212121;
			text-decoration:none;
		}
		
		.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active{
			border:1px solid #aaa;
			background-color:#fff;
			font-weight:normal;
			color:#212121;
		}
		
		.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited{
			color:#212121;
			text-decoration:none;
		}
		
		.ui-widget :active{
			outline:none;
		}
		
		.ui-icon{
			width:16px;
			height:16px;
		}
		
/** No Results Shell ****/
#serp-no-results-shell {
	
}
	.search-again-shell {
		padding: 30px 0;
		text-align: center;
	}
	
	#serp-search-tips {
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		border: 5px solid #f2f2f2;
		margin: 20px auto 35px;
		padding: 25px 35px;
		position: relative;
		width: 525px;
	}
		#serp-search-tips h2 {
			color: #363636;
			left: 0;
			position: absolute;
			text-align: center;
			top: -10px;
			width: 100%;
		}
			#serp-search-tips h2 span {
				background: #fff;
				display: inline-block;
				padding: 0 10px;
			}
		#serp-search-tips ul {
			padding-left: 20px;
		}
			#serp-search-tips ul li {
				font-size: 15px;
				line-height: 1.4em;
				list-style: disc;
			}
		#serp-search-tips a {
			color: #f2018a;
		}

	h2.hr {
		position: relative;
		text-align: center;
	}
		h2.hr:before {
			border: 1px solid #d7d7d7;
			content: " ";
			left: 0;
			position: absolute;
			top: 35%;
			width: 100%;			
		}
		h2.hr span {
			background: #fff;
			color: #363636;
			display: inline-block;
			font-family: Georgia;
			font-size: 12px;
			padding: 0 30px;
			position: relative;
			z-index: 2;
		}
	#serp-ymal {

	}
		#ymal-products .product-grid {
			display: -webkit-flex;
			display: -ms-flexbox;
			display: flex;
			-webkit-flex-wrap: wrap;
			-ms-flex-wrap: wrap;
			flex-wrap: wrap;
			-webkit-align-content: flex-start;
			align-content: flex-start;
			-webkit-justify-content: space-between;
			justify-content: space-between;
			margin: 0 -20px;
		}
			#ymal-products .product {
				-moz-box-sizing: border-box;
				-webkit-box-sizing: border-box;
				box-sizing: border-box;
				-ms-flex-preferred-size: 24.9%;
				-webkit-flex-basis: 24.9%;
				flex-basis: 24.9%;
				float: none;
				width: 24.9%;
				margin: 0;
				min-height: 400px;
				padding: 0 20px 20px;
			}
			#ymal-products .product:last-child:nth-child(3n+2),
			#ymal-products .product:last-child:first-child
			{
				margin-right: auto;
			}
				#ymal-products .product a.product-name {
					width: auto;
				}
				#ymal-products .product .label {
					width: 85%;
					margin-left: 7%;
				}