html { overflow-y: scroll; }

/** global styles **/

body { font: 100%/1.4 Arial, Verdana, Helvetica, sans-serif;}

p,a,div,li,th,td,input,textarea,select,address { font-family: Arial, Verdana, Helvetica, sans-serif; color: #666; font-weight: 400; letter-spacing: -0.3px; }
html.oldie p, html.oldie a, html.oldie div, html.oldie li, html.oldie th, html.oldie td, html.oldie input, html.oldie textarea, html.oldie select, html.oldie address { letter-spacing: -1px; }

h1,h2,h3,h4 { font-family: Arial, Verdana, Helvetica, sans-serif; font-weight: 500; letter-spacing: -1px; }

h1 { font-size: 36px; color: #000; margin: 0 0 0.4em 0; clear: both; line-height: 1.1em; }
h2 { font-size: 28px; color: #000; margin: 0 0 5px 0; line-height: 1.1em; }
h3 { font-size: 22px; color: #000; margin: 0 0 0 0; line-height: 1.5em; }
	h3 a { text-decoration: none; }
	h3 a:hover, h3:active { text-decoration: underline; }

b, strong { font-weight: 700; }

br.breaker { clear: both; }

a { color: #666; }
a:hover, a:active { color: #000; }

p { margin: 0 0 15px 0; font-size: 1em; line-height: 1.4em; }

li, th, td { font-size: 18px; }
input, textarea, select { font-size: 16px; border-radius: 0; background: #fff; }

div.divider {
	width: 100%;
	border-top: 1px solid #ccc;
	margin-top: 20px;
	margin-bottom: 20px;
	height: 0;
}

/** end global styles **/

html { background: #fff; }

body { position: relative; margin: 0; padding: 0; overflow-x: hidden}

.cf:before,
.cf:after {
    content: " "; /* 1 */
    display: table; /* 2 */
	clear: both;

}

.cf {
    *zoom: 1;
}

.highlight_word {
	background-color: #99FF33;
}


/*** HEADER ***/

#header {
	max-width: 1060px;
	height: 100px;
	margin: 30px auto 0 auto;
	padding: 0 20px;
}

	#mobile-call, #mobile-find, #mobile-cart, #mobile-menu, #mobile-search { display: none; }

	#HeaderLogo {
		float: left;
	}

/*
	#HeaderMorph {
		float: right;
		margin-top: 20px;
		margin-left: 20px;
	}

		#header_search_butt { max-height: 45px; }
		#header_search_text { display: none; }
*/

/*** HEADER CONTACT ***/

	#HeaderContact {
		width: 215px;
		float: left;
		line-height: 1.5em;
		margin-left: 14%;
		text-align: center;
	}

		#HeaderContact .line1, #HeaderContact .line3 {
			color: #000;
			font-size: 0.8em;
		}

		#HeaderContact .line2 {
			color: #0077c1;
			font-size: 2.0em;
			font-weight: 700;
		}

/*** HEADER SEARCH ***/

	#HeaderSearch {
		width: 280px;
		float: right;
		clear: right;
		position: relative;
		height: 32px;
		background-color: #FFFFFF;
		border: 1px solid #DDDDDD;
		margin: 10px 0 10px 0;
		box-sizing: border-box;
	}

		#header_search_butt {
		 	height: 30px;
		 	float: right;
		}
		#header_search_text {
			height: 20px;
			line-height: 20px;
			width: 160px;
			margin: 5px;
			border: 0;
		}


/*** HEADER MINI CART ***/

	#HeaderMiniCart {
		width: 280px;
		height: 32px;
		background-color: #ffcf03;
		float: right;
		margin-top: 0px;
	}

		#mc_bask { float: left; }

		#mc_inner {
			height: 32px;
			color: #000;
			float: left;
			font-size: 0.9em;
			line-height: 32px;
			padding: 0 5px;
		}

		#mc_cart {
			float: right;
			margin: 4px 4px 0 0;
		}
#header li {
	list-style: none;
	float: left;
	margin-top: 9px;
	margin-left: 60px;
}
#flagToggle img {
	width: 26px;
	height: 26px;
	cursor: pointer;
	border-radius: 20px;
}

#flagChooser {
	display: none;
	position: absolute;
	top: 280px;
	z-index: 9999;
	border: 1px solid #666;
	background-color: #fff;
	padding: 5px;
}

#flagChooser ul {
	width: 1048px;
	margin: 0;
	padding: 0;
	list-style: none;
}

#flagChooser ul li {
	list-style-type: none;
	margin: 0;
	padding: 3px 0;
	display: inline-block;
	float: left;
	width: 25%;
	height: 26px;
	line-height: 26px;
	cursor: pointer;
	overflow-y: none;
}

#flagChooser ul li {
	text-align: left;
}

#flagChooser ul li img {
	width: 26px;
	height: 26px;
	float: left;
	margin-right: 5px;
	border-radius: 20px;
}

#flagChooser ul li a {
	color: #000;
	text-decoration: none;
}

#flagChooser ul li a:hover {
	text-decoration: underline;
}

@media only screen and (max-width: 1366px) {
	#flagChooser {
		top: 55px;
		width: 100%;
		box-sizing: border-box;
		margin: 0;
		max-height: 80vh;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
	}

	#flagChooser ul {
		width: 100%;
		margin: 0;
		left: 0;
	}

	#flagChooser ul li {
		width: 20%;
	}
}

@media only screen and (max-width: 768px) {
	#flagChooser ul li {
		width: 25%;
	}
}

@media only screen and (max-width: 650px) {
	#flagChooser ul li {
		width: 33%;
	}
	#header li {
		list-style: none;
		float: right;
		margin-top: 9px;
		margin-right: 9px;
	}
}

@media only screen and (max-width: 568px) {
	#flagChooser ul li {
		width: 50%;
	}
}

/*** TOPNAV ***/

#header_nav {
	clear: both;
	width: 100%;
	height: 40px;
	background-color: #0077c1;
	margin-bottom: 15px;
}

	#topnav {
		position: relative;
		width: 100%;
		max-width: 1060px !important;
		list-style: none;
		margin: 0 auto;
		padding: 0;
		z-index: 999;
	}

		#topnav > li {
			height: 40px;
			border-right: 1px solid #fff;
			box-sizing: border-box;
			font-size: 0.95em;
			font-weight: bold;
			line-height: 40px;
			text-align: center;
			display: inline-block;
			text-transform: uppercase;
			padding: 0 1%;
			float: left;
		}


			#topnav > li:last-child { border-right: 0; }
			#topnav > li > span.unclickable{ color: #fff; }
			#topnav > li > a, #topnav > li > span.unclickable{ font-weight: bold; }
			#topnav > li > a:link, #topnav > li > a:visited { color: #fff; text-decoration: none; }
			#topnav > li > a:hover, #topnav > li > a:active, #topnav > li > span.unclickable:hover { color: #0077c1; background: #FFF; text-decoration: underline; }
			#topnav > li:hover {
				color: #0077c1;
				background: #FFF;
			}
			#topnav > li:hover > a,
			#topnav > li:hover > span.unclickable {
				color: #0077c1;
				background: #FFF;
			}
				#topnav .subs {
					display: none;
					position: absolute;
					top: 40px;
					left: 0;
					right: 0;
					background: #FFF;
					color: #0077c1;
					padding: 0.5em;
					border-bottom: 1px solid #e7e7e7;
					border-left: 1px solid #e7e7e7;
					border-right: 1px solid #e7e7e7;
				}
					#topnav > li:hover .subs, #topnav li.hover .subs { display: block; }

					#topnav .subs ul {
						padding: 0;
						list-style: none;
						float: left;
						width: 28.3%; margin: 0 1%;
					}

						#topnav .subs li {
							color: #FFF;
							text-align: left;
							font-size: 0.9em;
							font-weight: normal;
							height: auto;
							line-height: 1.8em;
							text-transform: none;
						}

						#topnav .subs li a { color: #0077c1; text-decoration: none; }
						#topnav .subs li a img { max-height: 32px; max-width: 100%; vertical-align: middle; }

						#topnav .subs-brands ul { width: 28.3%; margin: 0 2.5%; }
						#topnav .subs-brands li { text-align: center; margin: 5% 0; }

						#topnav .subs ul li.CatBrandHeader { margin-bottom: 5px; }

#highlight-bar {
	max-width: 1060px;
	height: 26px;
	margin: 0 auto 15px auto;
}

	#highlight-one, #highlight-two, #highlight-three {
		width: 33%;
		height: 26px;
		line-height: 26px;
		border-right: 1px solid #e0e0e0;
		box-sizing: border-box;
		color: #000;
		float: left;
		text-align: center;
	}

		#highlight-one p, #highlight-two p, #highlight-three  p {
			color: #000;
			line-height: 26px;
			margin: 0;
		}

		#highlight-one p {
			display: inline;
			background: transparent url(/images/icon_truck_30x26.gif) no-repeat left center;
			padding: 0 0 0 40px;
		}

		#highlight-two p {
			display: inline;
			background: transparent url(/images/icon_stars_108x26.gif) no-repeat right center;
			padding: 0 118px 0 0;
		}

		#highlight-three > p > span.text30 {
			display: inline-block;
			text-indent: -9999px;
			background: transparent url(/images/icon_30_29x29.gif) no-repeat center center;
			width: 29px;
			height: 29px;
		}

		#highlight-three { border-right: 0; }

#footer {
	max-width: 1060px;
	background-color: #000;
	color: #fff;
	margin: 0 auto;
	padding: 0 0 20px 0;
}

	#newsletter_footer {
		width: 100%;
		height: 50px;

		box-sizing: border-box;
		padding: 7px 7px;

		background: #000000; /* Old browsers */
		/*
		background: -moz-linear-gradient(top,  #373737 0%, #000000 100%);
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#373737), color-stop(100%,#000000));
		background: -webkit-linear-gradient(top,  #373737 0%,#000000 100%);
		background: -o-linear-gradient(top,  #373737 0%,#000000 100%);
		background: -ms-linear-gradient(top,  #373737 0%,#000000 100%);
		background: linear-gradient(to bottom,  #373737 0%,#000000 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#373737', endColorstr='#000000',GradientType=0 );
		*/
		position: relative;
	}

		#newsletter_footer p {
			height: 36px;
			color: #fff;
			float: left;
			line-height: 36px;
		}

		#nlf_confirm {
			float: right;
			width: 350px;
			position: relative;
			
		}

#newsletter_footer span { background: #e2e725; color: #000; width: 0; height: 36px; line-height: 36px; text-align: center; overflow: hidden; display: block; position: absolute; right: 0; top: 0; font-size: 16px; font-family: 'ralewayextrabold', Arial, Helvetica, sans-serif; text-transform: uppercase; }


p.nlf_mobiles { display: none; }

		#nlf_email {
			width: 230px;
			height: 36px;
			box-sizing: border-box;
			border: 1px solid #fff;
			float: right;
			margin: 0 0 0 8px;
			padding: 2px;
		}

		#nlf_submit {
			width: 90px;
			height: 36px;
			background-color: #29619a;
			border: 1px solid #29619a;
			color: #fff;
			float: right;
			font-weight: bold;
			text-transform: uppercase;
			margin: 0 0 0 7px;
		}

	#footer_shop {
		clear: left;
		width: 30%;
		float: left;
		margin-right: 5%;
	}

	#footer_help {
		width: 30%;
		float: left;
		margin-right: 5%;
	}

	#footer_webs {
		width: 30%;
		float: left;
	}

		#footer_shop p, #footer_help p, #footer_webs p {
			color: #fff;
			font-size: 1.2em;
			padding-left: 17px;
		}

			#footer_shop p strong, #footer_help p strong, #footer_webs p strong { font-weight: 700; }

		#footer_shop ul, #footer_help ul, #footer_webs ul {
			list-style: none;
			margin: 0;
			padding: 0 0 0 17px;
		}

			#footer_shop ul li, #footer_help ul li, #footer_webs ul li {
				background: transparent url(/images/icon_yellarrowonblack_12x12.gif) no-repeat left center;
				color: #fff;
				font-size: 0.9em;
				padding: 2px 0 2px 18px;
			}

				#footer_help ul li {
					width: 50%;
					box-sizing: border-box;
					float: left;
				}

				#footer_shop ul li a:link, #footer_shop ul li a:visited, #footer_help ul li a:link, #footer_help ul li a:visited, #footer_webs ul li a:link, #footer_webs ul li a:visited { color: #fff; text-decoration: none; }
				#footer_shop ul li a:hover, #footer_shop ul li a:active, #footer_help ul li a:hover, #footer_help ul li a:active, #footer_webs ul li a:hover, #footer_webs ul li a:active { color: #fff; text-decoration: underline; }

#sub_footer {
	max-width: 1060px;
	color: #000;
	margin: 0 auto;
	padding: 20px 0;
}

	#sub_footer_left {
		width: 365px;
		color: #000;
		float: left;
		font-size: 0.8em;
	}

	#sub_footer_right {
		width: 690px;
		float: right;
	}

		#sub_footer_right img { float: right; }

#integrity {
	text-align: right;
	font-size: 0.8em;
	line-height: 25px;
	margin: 5px 0;
	display: block;
	clear: right;
}

	#integrity img { margin-left: 5px; }

	br.mobilebreak { display: none; }


#site_torso {
	max-width: 1060px;
	margin: 0 auto;
	padding: 0 1%;
}

	/* home page */

	#home_search {
		width: 49%;
		background-color: #f47a11;
		box-sizing: border-box;
		float: left;
		margin: 0 1% 20px 0;
		padding: 20px;
	}

	.search-yellow {
		background: url(/images/button_home_search.gif) no-repeat center center;
		text-indent: -1000px;
		overflow: hidden;
		width: 54px;
		height: 54px;
		border: 0;
	}

	#home_brands_slider {
		width: 49%;
		background-color: #ffcf03;
		box-sizing: border-box;
		float: right;
		margin: 0 0 20px 1%;
		padding: 3px;
	}

		#home_search p, #home_brands_slider p {
			color: #000;
			font-size: 1.75em;
			line-height: 1.1em;
		}

			#home_search p strong, #home_brands_slider p strong { font-weight: 800; }

			#home_search p.search {
				width: 100%;
				height: 54px;
				position: relative;
			}

			#search_1_text, #search_2_text {
				width: calc(100% - 74px);
				height: 54px;
				border: 0;
				box-sizing: border-box;
				color: #000;
				float: left;
				font-family: arial;
				font-weight: bold;
				line-height: 24px;
				margin: 0 74px 0 0;
				padding: 15px;
			}

				#search_1_text::-webkit-input-placeholder  { color: #000; font-family: arial; font-weight: bold; }
				#search_1_text:-moz-placeholder { color: #000; font-family: arial; font-weight: bold; }
				#search_1_text::-moz-placeholder { color: #000; font-family: arial; font-weight: bold; }
				#search_1_text:-ms-input-placeholder { color: #000; font-family: arial; font-weight: bold; }

				#search_2_text::-webkit-input-placeholder  { color: #000; font-family: arial; font-weight: bold; }
				#search_2_text:-moz-placeholder { color: #000; font-family: arial; font-weight: bold; }
				#search_2_text::-moz-placeholder { color: #000; font-family: arial; font-weight: bold; }
				#search_2_text:-ms-input-placeholder { color: #000; font-family: arial; font-weight: bold; }

			#search_1_butt, #search_2_butt {
				position: absolute;
					right: 0;
					top: 0;

			}

		#home_brands_slider p {
			margin: 0;
			padding: 7px 10px 10px 10px;
		}

		#home_brands_slider_inner {
			width: 100%;
			height: 202px;
			background: #fff;
			box-sizing: border-box;
			overflow-y: hidden;
			padding: 11px 10px;
		}

			.home_brands_logo {
				width: 30%;
				text-align: center;
				display: block;
				float: left;
				margin: 1.5%;
			}

			#home_brands_slider_inner img {
				max-width: 100%;
				max-height: 38px;
			}

			#home_brands_slider_inner .home_brands_logo:nth-child(3n+1) {
				clear: both;
			}

	#home_ads {
		width: 100%;
		max-height: 180px;
		clear: both;
	}

		#home_ad_1, #home_ad_2, #home_ad_3 {
			max-width: 32%;
			max-height: 180px;
			float: left;
			margin-bottom: 20px;
		}

		#home_ad_2 { padding: 0 2% }

			#home_ad_1 img, #home_ad_2 img, #home_ad_3  img {
				max-width: 100%;
				max-height: 100%;
			}

	.home_bestsellers{
		width: 100%;
		clear: both;
	}

	.notable_products_title{
		display: inline-block;
		width: 100%;
		text-align: center;
	}

		.notable_products_title > p{
			width: 100%;
			background: transparent url(/images/bg_p_home_bestsellers.gif) repeat-x left center;
			display: block;
			text-align: center;
			margin: 15px 0;
		}

		.notable_products_title > p > strong {
			color: #0077c1;
			font-size: 1.4em;
			font-weight: 800;
			background: #fff;
			padding-left: 5px;
			padding-right: 5px;
		}


		.prod_cell {
			width: 15%;
			color: #000;
			float: left;
			font-weight: 700;
			line-height: 1.8em;
			margin: 0 2% 30px 0;
			/*min-height: 285px;*/
		}

		.prod_cell_frame{
			height: 159px !important;
			white-space: nowrap;
			text-align: center;
			margin: 1em 0;
		}

		.prod_img_helper{
			display: inline-block;
			height: 100%;
			vertical-align: middle;
		}

		.prod_img{
			vertical-align: middle;
			max-height: 159px;
			max-width: 159px;
		}

			.prod_cell form { display: inline-block;}

			.prod_cell a { color: #0077c1; display: inline-block; line-height: 1.3em; font-size: 0.9em; }
			.prod_cell a:link, .prod_cell a:visited { text-decoration: none; }
			.prod_cell a:hover, .prod_cell a:active { text-decoration: underline; }

			.prod_cell .prod_cell_image { display: block; width: 100%; }
			.prod_cell .prod_cell_image img { width: 100%; }
			.prod_cell .prod_cell_name { display: block; /*min-height: 75px;*/ }

			.prod_cell .prod_cell_butt {
				height: 23px;
				background: #ffcf03 url(/images/bg_prod_cell_butt.gif) no-repeat right top;
				color: #000;
				display: inline-block;
				font-size: 0.9em;
				font-weight: 700;
				line-height: 23px;
				padding: 0 21px 0 10px;
				border: 0;
			}

			.prod_cell:nth-of-type(6n) { margin-right: 0; }

			@media only screen and (max-width: 1060px){
				.home_bestsellers{
					width: 100%;
					margin: 20px 0;
					text-align: center;
					display: grid;
					grid-template-columns: auto auto auto auto auto;
				}

				.prod_cell{
					height: auto;
					width: 95%;
					text-align: center;
					overflow-x: hidden;
				}
			}

	#home_content {
		width: 100%;
		clear: both;
	}

		#home_content > h1 {
			color: #0077c1;
			font-size: 1.4em;
			font-weight: 800;
			background: #fff;
			padding-left: 5px;
			padding-right: 5px;

			position: relative;
			line-height: 50px;
			z-index: 1;
			overflow: hidden;
			text-align: center;
		}
			#home_content > h1:before, #home_content > h1:after {
				position: absolute;
				top: 51%;
				overflow: hidden;
				width: 50%;
				height: 2px;
				content: '\a0';
				background-color: #f0f0f0;
			}
			#home_content > h1:before {
				margin-left: -52%;
			}
			#home_content > h1:after {
				 margin-left: 2%;
			}

		#home_content_cols {
			width: 100%;
			-webkit-column-count: 2;
			-moz-column-count: 2;
			column-count: 2;
		}

			#home_content_cols p {
				color: #000;
				font-size: 0.9em;
			}

	#st_breadcrumb {
		width: 100%;
		border-top: 1px solid #e0e0e0;
		color: #0077c1;
		font-size: 0.8em;
		line-height: 1.8em;
		padding: 1em 0;
	}

		#st_breadcrumb a:link, #st_breadcrumb a:visited { color: #000; text-decoration: none; }
		#st_breadcrumb a:hover, #st_breadcrumb a:active { color: #000; text-decoration: underline; }

	#category_search {
		width: 49%;
		min-height: 216px;
		background-color: #000000;
		color: #ffffff;
		box-sizing: border-box;
		float: left;
		margin: 0 1% 20px 0;
		padding: 20px;
	}

		.category_search_logo {
			float: right;
			margin: 0 0 20px 20px;
			max-width:50%;
			max-height: 72px;
		}

		#category_search p {
			color: #fff;
		}

		#category_search p.search {
			width: 100%;
			height: 54px;
			clear: both;
			padding-top: 15px;
			position: relative;
		}

			#category_search #search_1_text {
				width: calc(100% - 74px);
				height: 54px;
				border: 0;
				box-sizing: border-box;
				color: #000;
				float: left;
				font-family: arial;
				font-weight: bold;
				line-height: 24px;
				margin: 0 74px 0 0;
				padding: 15px;
			}

				#category_search #search_1_text::-webkit-input-placeholder  { color: #000; font-family: arial; font-weight: bold; }
				#category_search #search_1_text:-moz-placeholder { color: #000; font-family: arial; font-weight: bold; }
				#category_search #search_1_text::-moz-placeholder { color: #000; font-family: arial; font-weight: bold; }
				#category_search #search_1_text:-ms-input-placeholder { color: #000; font-family: arial; font-weight: bold; }

			#category_search  #search_1_butt {
				position: absolute;
					right: 0;
					top: 15px;
			}

	#category_intro {
		width: 49%;
		min-height: 216px;
		background-color: #000000;
		color: #ffffff !important;
		box-sizing: border-box;
		float: right;
		margin: 0 0 20px 0;
		padding: 20px;
	}

		#category_intro h1 {
			color: #ffcf03;
			font-size: 1.6em;
		}

		#category_intro p{
			color: #fff !important;
			font-size: 0.8em;
			line-height: 1.4em;
		}
			#category_intro  p  span{
				color: #fff !important;
			}
			#category_intro p:last-child { margin-bottom: 0; }

	.category_subcategories {
		clear: both;
		margin-left: -2%;
	}

	.category_subcategories.brand {
		clear: left;
	}

		.category_subcategories > h2,
		.parts_results h2 {
			width: 98%;
			color: #0077c1;
			font-size: 1.7em;
			margin: 15px 0 ;
			margin-left: 1.960784313%;
		}

		.parts_results h2 { margin-left: 0; }

		.category_subcategories > h3 {
			margin: 5px 0 30px 0;
			margin-left: 1.960784313%;
			font-size: 1.2em;
			color: #0077c1;
		}

		.category_subcategories .brand_logo {
			clear: both;
			float: none;
		}

		.category_subcategories .brand_logo img {
			max-width: 150px;
		}

		.subcat_cell {
			width: 14.705882353%;
			color: #000;
			float: left;
			min-height: 260px;
			font-weight: 700;
			line-height: 1.8em;
			margin: 0 0 15px 1.960784313%;
			font-size: 0.8em;
			position: relative;
		}

			.subcat_cell img { width: 100%; height: 159px; }

			.subcat_cell a {
				color: #000000;
				display: inline-block;
				line-height: 1.2em;
				text-align: center;
				width: 100%;
			}

			.subcat_cell a:link { text-decoration: none; }
			.subcat_cell a:hover { text-decoration: underline; }

			.subcat_cell img.subcat_cell_logo {
				position: absolute;
				right: 10px;
				top: 10px;
				max-width: 60px;
				max-height: 30px;
				height: auto;
				width: auto;
				min-height: 0;
			}

	.brand_listing {
		clear: left;
		width: 100%;
	}


	#product_page {
		width: 100%;
	}

		#prod_lft {
			width: 60%;
			float: left;
		}

			#prod_lft #prod_cycle img, .prod_lft_image {
				width: 100%;
				max-width: 630px;
			}

			#prod_cycle_pager a {
				display: inline-block;
				width: 94px;
				height: 94px;
				text-align: center;
				border: 1px solid #000;
				margin: 5px 5px 0 0;
			}

			#prod_cycle_pager a img { height: 100%; width: auto; }

			#prod_cycle_pager a.cycle-pager-active {
				outline: 1px solid #000;
			}

			#prod_lft.l_part img {
				max-width: 100%;
			}

		#prod_rgt {
			width: 38%;
			float: right;
		}

			#prod_rgt h1 {
				clear: none;
				color: #0077c1;
				display: inline;
			}

			#prod_rgt h3 {
				margin-top: 0.5em;
			}

			#prod_rgt img.prod_rgt_logo {
				float: right;
				margin: 5px 0 10px 10px;
				max-width: 30%;
				max-height: 50px;
			}

			.prod_rgt_brok h2 {
				margin-top: 2em;
				padding: 0.5em 0;
				width: 100%;
				background: transparent url(/images/bg_p_home_bestsellers.gif) repeat-x left center;
				display: block;
				text-align: center;
				font-size: 1.4em;
			}

			.prod_rgt_brok h2 span {
				color: #0077c1;
				background: #fff;
				padding-left: 5px;
				padding-right: 5px;
			}

			.prod_rgt_brok .prod_cell {
				width: 30%;
				margin: 0 1.5%;
				text-align: center;
				font-size: 0.85em;
			}

			.prod_rgt_brok .prod_cell:nth-child(3n-1) {
				clear: both;
			}

			.prod_rgt_brok .prod_cell p {
				font-size: 1em;
			}

			p.price-exvat, p.price-incvat {
				clear: both;
				color: #000;
				margin: 10px 0 0 0;
				font-size: 1.2em;
			}

				p.price-exvat { margin-top: 20px; }


			#prod_buy {
				margin: 20px 0;
			}

				#ProdBuyQty {
					width: 32px;
					height: 22px;
					border: 1px solid #000;
					color: #000;
					line-height: 22px;
					text-align: center;
				}

				#prod_buy label {
					color: #000;
					margin-left: 2px;
				}

				#ProdBuyNow {
					width: 200px;
					height: 44px;
					background-color: #66be29;
					border: 0;
					color: #fff;
					font-weight: 700;
					line-height: 44px;
					text-align: center;
					text-transform: uppercase;
				}

			#prod_related {
				margin: 40px 0 20px 0;
			}

				#prod_related p {
					color: #0077c1;
				}

				#prod_related select {
					max-width: 90%;
					border: 1px solid #000;
					color: #000;
					padding: 2px;
				}

				.prod-related {
					clear: both;
				}

	#prod_recentlyviewed {
		width: 100%;
		clear: both;
	}

		#prod_recentlyviewed > p {
			width: 100%;
			background: transparent url(/images/bg_p_home_bestsellers.gif) repeat-x left center;
			display: block;
			text-align: center;
		}

		#prod_recentlyviewed > p > strong {
			color: #0077c1;
			font-size: 1.4em;
			font-weight: 800;
			background: #fff;
			padding-left: 5px;
			padding-right: 5px;
		}

#partslist {
	clear: both;
	padding: 1em 0;
}

#partslist table {
	width: 100%;
}

#partslist table td,
#partslist table th  {
	font-size: 0.9em;
	text-align: left;
	padding: 0.5em;
}

#partslist table th {
	background: #ffcf03;
	font-weight: 700;
	color: #000;
	text-align: right;
}

#partslist table td {
	font-size: 0.9em;
}

#partslist table tr:nth-child(odd) td {
	background: #f2f2f2;
}

#partslist table td.image {
	width: 50px;
	height: 50px;
	padding: 0.5em 0.5em 0.25em 0.5em;
}

	#partslist table td.image img { width: 100%; }

#partslist table td.partname {
	width: 50%;
}

#partslist table td.form,
#partslist table td.price {
	text-align: right;
}

#partslist table td.form form.formstyle {
	margin: 0;
	text-align: right;
}

#partslist table td.form form.formstyle p {
	display: inline-block;
	clear: none;
	width: auto;
	margin: 0 0 0 0.5em;
}

#partslist table a { font-weight: 700; }

#partslist table td.form form.formstyle p input,
#partslist table td.form form.formstyle p select {
	height: 36px;
}


/* pages */

	div.halfies_1 { float: left; width: 49%; margin-right: 2%; }
	div.halfies_2 { float: right; width: 49%; }

		div.halfies_1 p, div.halfies_2 p {
			color: #000;
			margin: 0 0 12px 0;
		}


/**** BASKET ****/

.basket-left {
	width: 75%;
	float: left;
	margin-bottom: 1.2em;
}

.basket-right {
	width: 20%;
	padding: 1% 1.5%;
	float: right;
	background: #eee;
	margin-bottom: 1.2em;
}

	.basket-right h3 {
		text-align: right;
		margin-right: 5px;
		color: #000;
	}

	.basket-right .buttonstyle { display: block; text-align: center; font-size: 1.4em; padding: 3.5% 0; }

.basket {
	width: 100%;
}

	.basket th {
		text-align: left;
		vertical-align: top;
		padding: 5px;
		background: #EEE;
		font-weight: bold;
		font-size: 0.95em;
		color: #000;
	}

	.basket th small { font-weight: normal; }

	.basket td {
		padding: 8px 5px;
		font-size: 0.9em;
		vertical-align: top;
		border-bottom: 1px dashed #EEE;
	}

	.basket tr:last-child td { border-bottom: 0; }

	.basket .b-image img { max-height: 60px; }
	.basket .b-details   { width: 350px; }
	.basket .b-details a { color: #0077c1; font-size: 1.1em; font-weight: bold; text-decoration: none; }
	.basket .b-price { text-align: right; }
	.basket .b-sub { text-align: right; }
	.basket .b-qty { text-align: right; }
	.basket td.b-qty p { text-align: right; margin: 0; padding: 0;position: relative;top: -4px; }
	.basket td.b-qty a { font-size: 0.8em; clear: right; float: right; }

	.basket .b-qty-select { margin: 0; padding: 0; float: right; }

	.basket td.b-sub { font-weight: bold; font-size: 1.1em; }

.basket-totals {
	width: 100%;
	margin-top: 20px;
}

	.basket-totals td 		{ text-align: right; vertical-align: middle; border: 0; color: #000; }
	.basket-totals .b-total { font-weight: bold; font-size: 1.1em; }


/** checkout page **/

.checkout-logos {
	float: right;
}

.checkout-row {
	background: #EEE;
	clear: both;
	margin-bottom: 1.2em;
}

.checkout-half {
	padding: 20px;
	box-sizing: border-box;
	width: 50%;
	float: left;
}
.checkout-full {
	padding: 20px;
	box-sizing: border-box;
	width: 100%;
	float: none;
}

	.checkout-full h2, .checkout-half h2 {
		margin-bottom: 1em;
	}

.checkout-login {
	background: #0077c1;
	color: #FFF;
	padding: 20px;
	line-height: 28px;
	clear: both;
}

	.checkout-login form { float: right; line-height: 28px; }
	.checkout-login label { margin-left: 10px; }
	.checkout-login input { border: 0; padding: 5px; }

#Card_Number { background-repeat: no-repeat; background-position: right center;}


.error {
	padding: 20px;
	color: #d66;
	font-weight: bold;
	border: 3px solid #d66;
}

.error_list {
	padding:20px;
	color:#d66;
	width:100%;
	font-size:16px;
	width:100%;
	border: 3px solid #d66;
	margin:30px 0;
}

	.error_list p {
		color:#d66;
		font-weight:bold;
	}

	.error_list ul li {
		font-size:16px;
		margin:0;
		color:#d66;
	}

.success {
	padding: 20px;
	color: #7c7;
	font-weight: bold;
	border: 3px solid #7c7;
}

/** form styles **/
p.thanks {
	background: #fff;
	color: #0077c1;
	font-size: 1.75em;
	padding: 10px 0;
	text-align: center;
}

form.formstyle {margin-top: 20px;}
form.formstyle p { clear: both; width: 100%; }
form.formstyle p span { color: #c00; }
form.formstyle p label { display: block; font-size: 16px; }
form.formstyle p input { border: 1px solid #ccc; padding: 4px 6px; font-size: 16px; }
form.formstyle p textarea { border: 1px solid #ccc; padding: 4px 6px; font-size: 16px;  }
form.formstyle p select { border: 1px solid #ccc; padding: 4px 2px; font-size: 16px; }

form.formstyle p input.error, form.formstyle p textarea.error { border: 1px solid #d50019; }

.buttonstyle {
	display: inline-block;
	border: 0 !important;
	height: auto;
	padding: 2.5% 7.5%;
	background: #ffcf03;
	color: #0077c1;
	font-size: 16px;
	font-weight: 700;
	line-height: 28px;
	text-transform: uppercase;
	text-decoration: none;
	font-weight: bold;
}

	.buttonstyle.buttoninline {
		display: inline;
		padding: 0 6px;
		margin-left: 10px;
	}

	.buttonstyle.buttonblue ,
	.buttonstyle.buttonblueno {
		background: #0077c1;
		color: #FFFFFF !important;
	}
	.buttonstyle.buttonblue:before {
		content: '\25c0';
		padding-right: 10px;
		font-size: 0.9em;
	}
	.basket-left .buttonstyle.buttonblue {
		display: inline-block;
	    text-align: center;
	    font-size: 1.4em;
	    padding: 1.5% 0;
		width:285px;
		height: 29px;
	}
	.buttonstyle.buttongreen {
		background: #66be29;
		color: #FFFFFF !important;
	}
	.buttonstyle.buttongreen:after {
		content: '\25b6';
		padding-left: 10px;
		font-size: 0.9em;
	}
	.slidingLogin .buttonstyle.buttongreen{
		padding:5px 10px;
	}
	.buttonstyle.buttonwhite {
		background: #FFFFFF;
		color: #0077c1 !important;
	}

#MainSearch {
	text-align: center;
	margin-bottom: 10px;
}

	#MainSearchCont {
		max-width: 35%;
		margin: 0 auto;
		border: 1px solid #666;
		text-align: left;
		height: 45px;
		position: relative;
	}

	#MainSearch input {
		display: block;
	}

	#MainSearchText {
		height: 45px;
		width: 100%;
		padding: 0px 10px;
		font-size: 1.4em;
		border: 0;
		padding-right: 45px;
		float: left;
		box-sizing: border-box;
	}

	#MainSearchButton {
		height: 45px;
		position: absolute;
		right: 0;
		top: 0;
	}

.list-container {
	margin-bottom: 40px;
}

.list-image {
	float: right;
}

ul.list{
	-webkit-column-count: 2;
	-moz-column-count: 2;
	column-count: 2;
	-webkit-column-gap: 50px;
	-moz-column-gap: 50px;
	column-gap: 50px;
	padding-left:5px;
	float: left;
}

ul.list > li{
	font-size: 12px;
	padding: 2px 0 2px 14px;
	line-height: 18px;
}

ul.list > li > a {
	text-decoration: none;
	color: #000;
}
.slidingLogin input{
	border: 1px solid #ccc;
	padding: 4px 6px;
	font-size: 16px;
}
.slidingLogin .hiddenlogin{
	padding:10px 0;
	display: none;
}
#addedprod{
	min-width: 400px;
	padding:20px;
	text-align: center;
}

.clearfix:before, .clearfix:after {
	content: "";
	display: table;
}

.clearfix:after {
	clear: both;
}

.clearfix {
	*zoom: 1;
}

.team_members {
	display:block;
	width:100%;
	clear:both;
}

	.team_member {
		width:100%;
		margin:0 0 26px 0;
		padding:0 0 20px 0;
		clear:both;
		float:left;
		border-bottom:1px solid #eee;
	}

	.team_member:last-of-type {
  		border-bottom: none;
  		padding:0 0 0 0;
  	}

		.team_image {
			width:50%;
		}

		.team_image img {
			width:100%;
		}

			.image_left {
				float:left;
			}

			.image_right {
				float:right;
			}

		.team_description {
			display:inline-block;
			width:-webkit-calc(50% - 40px);
			padding:20px;
		}

			.team_role {
				font-weight:bold;
				color:rgb(0, 119, 193);
			}


.product_images {
        width: 100%;
        overflow: hidden;
    }


    .slider_left {
    	float:left;
    	width:100%;
    }

    .slider_right {
    	margin-left:10px;
    	float:right;
    	width:100%;
    	display:block;
    }

        .product_image_slider {
            width: 100%;
            float: right;
        }

            .product_image_slider img {
                display:block;
                max-width:100%;
            }

            .product_image_slider .slick-prev {
                width: 50px;
                height: 50px;
                left: 0;
                z-index: 100;
            }

            .product_image_slider .slick-next {
                width: 50px;
                height: 50px;
                right: 0;
                z-index: 100;
            }

            .product_image_slider span a.fancybox {
                display: block;
                position: absolute;
                    top:10%;
                    left:10%;
                    z-index: 2;
                    width:80%;
                cursor:-webkit-zoom-in;
            }

        .product_image_slider_nav {
            width: 100%;
            float: left;
            margin-top: 0px;
        }

            .product_image_slider_nav span {
                width: 100%;
                margin: 0 auto;
            }

            .product_image_slider_nav span img {
            	max-width:110px;
                margin-bottom: 0px;
                cursor: pointer;
                border:1px solid #9a9a9a;
            }

            .slick-track { margin-left: 0 !important; }


@media only screen and (max-width: 920px) {
	.slider_right {
		width:100%;
		clear:left;
	}

	.slider_left {
		width:100%;
		clear:left;
	}

}

@media only screen and (max-width: 650px) {

	.slider_right {
		width:100%;
		clear:left;
	}

	.slider_left {
		width:100%;
		clear:left;
	}

	#prod_lft .slider_right img {
		width:100%;
	}

	#prod_lft img {
 	   max-width: 100%;
	}

	.team_member {
		width:100%;
		margin:0 0 26px 0;
		padding:0 0 10px 0;
		clear:both;
		float:left;
		border-bottom:1px solid #eee;
	}

		.team_member:last-of-type {
	  		border-bottom: none;
	  		padding:0 0 0 0;
	  		margin:0;
	  	}

	.team_image {
		width:100%;
	}

	.team_description {
		display: block;
		float:left;
		width:100%;
		padding:10px 0 0 0;
		margin:0 0 0 0;
	}

    .product_image_slider {
        width: 550px;
        float: right;
    }

    .product_image_slider_nav {
        width: 100%;
        height: auto;
        float: left;
        margin-top: 0;
    }

        .product_image_slider_nav span {
            width: 100% !important;
            float: none !important; /* STOPS Slick SLider from being horizontal */
        }

}

.product_diagrams {
	background:#c0c;
	width:100%;
	height:600px;
	float:left;
}

	.product_diagrams img {
		display:block;
		height:100%;
		overflow: hidden;
		margin:auto;
	}


.announcement {
	border: 2px solid #FF3F00;
    margin: 0 0 20px 0;
    padding: 16px 0 0px 0;
    font-size:12px;
    text-align:center;
}

.AlertTickerStrip {
	background-color: #1c2732;
	border-bottom: 1px solid #fff;
	text-align: center;
}

.AlertTickerStripInner legend {
	color: white;
	text-transform: uppercase;
	font-family: 'Alegreya Sans',sans-serif;
	font-size: 16px;
	padding: 6px 6px 6px 6px;
	font-weight: 700;
	text-align: center;
	letter-spacing: 0.2em;
	border: none;
	display: block;
	margin: 0;
	cursor: pointer;
}

.AlertTickerStripInner fieldset {
	width: 100%;
	color: #fff !important;
	display: block;
	margin: 0 auto;
	max-width: 1330px;
	padding: 5px 10px 12px 10px;
	border: 0px;
}

.AlertTickerStripInner .fields_container {
	display: block;
	width: 94%;
	margin: 0 2%;
}

.AlertTickerStripInner .fields_container p {
	color: #fff !important;
	font-size: 14px !important;
	padding: 0;
	margin: 0;
}

@media only screen and (max-width: 500px){
	.AlertTickerStripInner .fields_container{
		margin: 0 0;
	}
	.AlertTickerStripInner .fields_container{
		width: 96%;
		margin: 0 -1%;
	}
}

html.js .AlertTickerStripInner form.open legend::after {
	transform: rotate(180deg);
}

html.js .AlertTickerStripInner legend::after {
	content: '';
	width: 1em;
	height: 1em;
	display: inline-block;
	position: relative;
	top: 0.1em;
	background-image: url(/images/down.svg);
	background-size: 100% auto;
	background-repeat: no-repeat;
	margin-left: 1em;
	transition: 0.3s all;
}

.fields_container span a{
	color: #fff;
}

.fields_container p a span{
	text-decoration-line: underline;
	text-decoration-color: #fff;
}

#special{
	width: 100%;
	margin: 20px 0;
	text-align: center;
	display: grid;
	grid-template-columns: auto auto auto auto auto auto;
}

#special > .prod_cell{
	width: 100%;
	margin: 20px 10px;
}

@media only screen and (max-width: 1050px){
	#special{
		grid-template-columns: auto auto auto auto auto;
	}
}

#site_torso.payment {
	text-align: center;
	padding: 5em 0;
}

#stripe_error.has-error {
	max-width: 500px;
	border: 1px solid red;
	padding: 10px;
	margin-bottom: 10px;
	color: red;
	background-color: rgba(255,0,0,0.2);
	border-radius: 3px;
}

.loader,
.loader:after {
	border-radius: 50%;
	width: 2em;
	height: 2em;
	display: inline-block;
}
.loader {
	font-size: 5px;
	position: relative;
	text-indent: -9999em;
	border-top: 0.5em solid rgba(255, 255, 255, 0.2);
	border-right: 0.5em solid rgba(255, 255, 255, 0.2);
	border-bottom: 0.5em solid rgba(255, 255, 255, 0.2);
	border-left: 0.5em solid #ffffff;
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-animation: load8 1.1s infinite linear;
	animation: load8 1.1s infinite linear;
}
body.loading *:not(.loader) {
	opacity: 0.75;
	pointer-events: none;
}
body.loading > main {
	opacity: 1!important;
}
main > .loader {
	position: absolute;
	border-width: 0.3em;
	font-size: 1em;
	left: 50%; top: 50%;
	border-left-color: #1c2149;
}

@-webkit-keyframes load8 {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}
@keyframes load8 {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}