/*
	(c)2019 - visuallizard.com
	
	COLOURS:
		#76bfae		teal 		[links]
		#baddd4		teal light 	[quote background, frames and borders, etc.]
		#498564		green dark	[buttons, headings, etc.]
		#99c221		green light	[button rollovers, social, accents, etc.]
		#dddddd		grey		[footer]
		#a29c95		brown light [h2]

	[FONTS]
		Variation 		font-family 	font-weight	font-style
		Light 			"expressway" 	300 		normal
		Light Italic 	"expressway" 	300 		italic
		Regular 		"expressway" 	400 		normal
		Italic 			"expressway" 	400 		italic
		Bold 			"expressway" 	700 		normal
		Bold Italic 	"expressway" 	700 		italic
*/


h1, h2, h3, h4, h5, h6 {
	text-rendering: optimizeLegibility;
}
h1 {
	position: relative;
	font: 300 28px/1.1 "expressway", sans-serif;
	letter-spacing: 0.05em;
	text-transform: none;
	color: #498564;
	z-index: 5;
	margin: .75em 0;
}
h2 {
	font: 400 1.6em/1.5 "expressway", sans-serif;
	letter-spacing: normal;
	text-transform: none;
	margin: 0 0 0.25em 0;
	color: #a29c95;
}
	/* 	pull the H2 up to compensate H1s margin on Home page "Our Roots" heading and similar */
	h1 + h2 {
		margin-top: -1em;
		margin-bottom: 1em;
	}
	
h3, h4, h5, h6 {
	font: 700 12px/1.5 /* "expressway", */ sans-serif;
/* 	letter-spacing: 0.1em; */
	text-transform: uppercase;
	margin: 0;
/* 	color: #99c221; */
}
h4 {
	text-transform: none;
	color: inherit;
	margin-bottom: .5em;
}

a {
	color: #498564;
	color: #76bfae; /* teal */
	text-decoration: none;
}
	a:hover,
	a:active  {
		text-decoration: underline;
		color: #99c221;
	}
	a:focus {
		color: inherit;
}
img {
	display: block;
	border: 0;
}

.inline {
	display: inline-block;
}
	
.button {
	position: relative;
	display: inline-block;
	vertical-align: top;
	min-height: 20px;
	min-width: 100px;
	max-width: none;
	width: auto;
	margin: 0;
	padding: .75em 1em;
	border: 0;
	border-radius: 0;
	outline: 0;
	text-align: center;
	text-transform: uppercase;
	text-decoration: none;
	white-space: nowrap;
	vertical-align: middle;
	background: #498564;
	color: #fff;
	cursor: pointer;
	font: bold 12px/1 "expressway", sans-serif;
	letter-spacing: 0.1em;
	transition: all 0.2s;
	
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
}
	.button:hover {
		color: #fff;
		background: #99c221;
		text-decoration: none;
	}
.button.alt {
	display: inline-block;
	border: 2px solid #498564;
	padding: .484em 1em;
	margin: 0 auto;
	border-radius: 2px;
	color: #498564;
	background: transparent;
	font: 700 12px/1.2 "expressway",sans-serif;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	text-decoration: none;
	text-align: center;
	transition: all 0.2s;
}
	.button.alt:hover {
		background: transparent;
		color: #9ac221;
		border-color: #99c221;
	}
	
	.button + .button {
		margin-left: 1em;
		vertical-align: top;
	}

.button-2 {
	display: block;
	padding: .5em .5em;
	background: url(../../img/txr_2.jpg) 0 0 repeat #f2f2ea;
	color: #498564;
	transition: all .2s;
}
	.button-2 .icon {
		display: inline-block;
		vertical-align: middle;
		width: 60px;
		height: 60px;
	}
	.button-2 .icn {
		display: table-cell;
		vertical-align: middle;
	}
	.button-2 .txt {
		display: table-cell;
		vertical-align: middle;
		color: #666;
		font: 700 12px/1.2 "expressway",sans-serif;
		text-transform: uppercase;
		letter-spacing: 0.05em;
		transition: all .2s;
	}
	.button-2:hover,
	.button-2:hover .icn,
	.button-2:hover .txt {
		color: #99c221;
		text-decoration: none;
	}
	 
/*===========================================================================*
	Header elements
*===========================================================================*/

.site-logo {
	display: block;
	position: relative;
	float: left;
	clear: left;
	margin: -10px 0px 30px 30px;
	overflow: hidden;
}
	.site-logo a {
		display: block;
		position: relative;
		z-index: 1;
		text-decoration: none;
		color: #6d6d6d;
/* 		overflow: hidden; */
	}
	
	.site-logo span {
		display: block;
		height: 0;
		text-indent: -99999px;
		text-transform: uppercase;
	}
	.site-logo span.moto {
		position: relative;
		background: url(../../img/moto.png) 0 0 no-repeat transparent;
		width: 260px;
		height: 20px;
		float: right;
		margin-top: -5px;
		z-index: 10;
	}
	.site-logo img {
		display: block;
		background: #fff;
	}
	.site-logo a:hover img {
		opacity: 0.8;
	}
	
	
	.blog .site-logo span.moto {
		/* text-indent: 150px; */
		font: bold 14px/1 Arial, Verdana, Helvetica, sans-serif;
		color: #99c221;
		background: url(../../img/moto_blog.png) 0 0 no-repeat transparent;
		width: 100px;
		height: 30px;
		margin: -10px -5px 0 0;
	}

/*=============================================================================*
	Navigation styles
*=============================================================================*/

/* !SITES NAV */
.sites-nav {
	float: left;
	list-style: none;
	font-size: 10px;
	margin: 18px 0 0 30px;
	padding: 0;
}
	.sites-nav li {
		float: left;
		color: #c7bba4;
		font: normal 1.4em/1 Arial, Helvetica, sans-serif;
		border-left: 1px solid #c7bba4;
		padding: 0 7px;
	}
	.sites-nav li:first-child {
		border-left: none;
		padding-left: 0;
		
		color: #99c221;
		font-weight: bold;
	}
	.sites-nav a {
		color: inherit;
	}


/* !TOP NAV */
.top-nav {
	float: right;
	margin: 20px 20px 0 0;
	padding: 0;
	list-style: none;
	font-size: 10px;
}
	.top-nav li {
		float: left;
		color: #6d6d6d;
		font: normal 1.2em/1 Arial, Helvetica, sans-serif;
		border-right: 1px solid #fff;
		padding: 0 7px;
	}
	.top-nav li:last-child {
		border: 0;
		padding-right: 0;
	}
		.top-nav li a {
			display: block;
			color: #6d6d6d;
		}

	/* 	custom blog button */
	.top-nav .blog-link {
		position: absolute;
		right: 10px;
		bottom: -40px;
		z-index: 10;
		border: none;
		padding: 0;
	}
		.top-nav .blog-link a {
			display: block;
			width: 125px;
			height: 125px;
			max-width: none;
			padding: 0;
			margin: 0;
			background: url(../../img/btn_blog.png) 0 0 no-repeat transparent;
			text-indent: -99999px;
			border: 0;
			overflow: hidden;
			z-index: 1000;
			transition: transform .1s;
		}
		.top-nav .blog-link a:hover {
			-webkit-transform: scale(0.95);
			   -moz-transform: scale(0.95);
			        transform: scale(0.95);
		}




/* !MAIN NAV */
.main-nav .nav_1 {
	display: block;
	position: relative;
	clear: both;
	list-style: none;
	margin: 0; 
	padding: 0 120px 0 0px;
	height: 40px;
	float: right;
	font-size: 10px;
}

	.main-nav .nav_1 > li {
		display: table;
		float: left;
		margin: 0;
		padding: 0;
	}
	.main-nav .nav_1 > li > a {
		display: table-cell;
		vertical-align: middle;
		color: #6d6d6d;
		font: normal 13px/15px Georgia, Times, "Times New Roman", serif;
		padding: 5px 20px;
		border-left: 6px solid #fff;
		text-decoration: none;
		text-transform: lowercase;
		text-align: center;
		max-width: 134px;
		height: 40px;
		transition: .2s color, .2s background-color;
	}
	.main-nav .nav_1 > li.at > a {
		background-color: #dddbd2;
		box-shadow: inset 0 0 5px #999;
	}
	.main-nav .nav_1 > li > a:hover {
		background-color: #498564;
		color: #fff;
	}
	.main-nav .nav_1 > li:first-child > a {
		border-left-width: 0;
	}
	
	.main-nav .nav_2 {
		display: none;
	}
	
	

.specials-link {
	display: block;
	margin: 0;
	padding: 5px 10px;
	border: none;
	
	background: #99c221;
	color: #fff;
	
	font-size: 14px;
	text-align: center;
	text-decoration: none;
	letter-spacing: 0.05em;
	
	transition: background .2s;
}
	.specials-link:hover {
		color: #fff;
		background: #498564;
		text-decoration: none;
	}

.specials-link.no-specials {
	background: transparent;
	margin: 0 0 0 0;
	padding: 0 0 1px 0;
	height: 0;
	border: none;
}



/*=============================================================================*
	Sidebar styles
*=============================================================================*/

/* SIDE_NAV */
.side-nav ul {
	margin: 0;
	padding: 0;
	list-style: none;
	overflow: hidden;
}
	.side-nav li {
		margin: 0;
		padding: 0;
	}
	.side-nav a {
		display: block;
		padding: 2px 10px;
		margin: 0;
		color: inherit;
		background: transparent;
		color: #73746e;
		font: normal 12px/1.2 "expressway", sans-serif;
		letter-spacing: 0.05em;
		
		transition: color .2s, background .2s;
	}
	.side-nav li > a:hover {
		color: #fff;
		background: #99c221;
		text-decoration: none;
	}
	
	/* 	level 1 */
	.side-nav .category_1 {
		
	}
	.side-nav .category_1 > li {
		
	}
	.side-nav .category_1.has-at > li    { display: none; }
	.side-nav .category_1.has-at > li.at { display: block; }
	
	.side-nav .category_1 > li > a {
		position: relative;
		background: #498564;
		color: #fff;
		text-transform: uppercase;
		font-weight: 700;
		letter-spacing: .1em;
		padding: 8px 20px 6px;
		margin: 0;
	}
	.side-nav .category_1 > li > a:hover {
		background: #99c221;
	}

		
	/* 	level 2 */
	.side-nav .category_2 {
		margin: .5em 0;
	}
	.side-nav .category_2 > li {
		
	}
	.side-nav .category_2 > li > a {
		padding: 1px 0 2px 20px;
		margin: 0;
	}
	.side-nav .category_2 > li.at > a {
		color: #498564;
	}
	.side-nav .category_2 > li > a:hover {
		color: #fff;
	}
	
	
	/* 	level 3 */
	.side-nav .category_3 {
		margin: 0 0 .25em 0;
	}
	.side-nav .no-at .category_3 {
		display: none; /* hide level_3 when not in catalog. */
	}
	.side-nav .category_3 > li > a {
		color: #73746e;
		padding: 1px 0 1px 30px;
	}
	.side-nav .category_3 > li a {
		text-transform: uppercase;
		font-size: 93%;
	}
	.side-nav .category_3 > li > a:hover {
		color: #fff;
	}
	.side-nav .category_3 > li.at > a {
		color: #498564;
	}
	.side-nav .category_3 > li.at > a:hover {
		color: #fff;
		background: #99c221;
	}
	
	/* 	level 4 */
	.side-nav .category_4 {
		
	}
	.side-nav .category_4 > li > a {
		padding-left: 40px;
		font-weight: normal;
		text-transform: none;
	}
	.side-nav .category_4 > li > a:before {
		content: "> ";
	}
	.side-nav .category_4 > li.at > a {
		color: #498564;
	}
	.side-nav .category_4 > li.at > a:hover {
		color: #fff;
		background: #99c221;
	}
	
	.side-nav .category_1.has-at .sibling > a + ul { display: none; }





/*=============================================================================*
	Content styles
*=============================================================================*/

/* !BREADCRUMBS */

ul.breadcrumbs {
	margin: 0 0 10px 0;
	padding: 0;
	list-style: none;
	overflow: hidden;
	max-width: 510px;
	text-transform: lowercase;
}
	ul.breadcrumbs li {
		float: left;
	}
	ul.breadcrumbs li a {
		display: block;
		color: #999;
		padding: 3px 3px 3px 3px;
		font: normal 1em/1.2em Arial, Helvetica, sans-serif;
	}
	ul.breadcrumbs li a:hover {
		text-decoration: none;
		color: #99c221;
	}
	ul.breadcrumbs li a:before {
		content: "» ";
		padding-right: 3px;
	}
	ul.breadcrumbs li a:before:hover {
		color: olive !important;
	}
		ul.breadcrumbs li.home a {
			padding-left: 0;
		}
		ul.breadcrumbs li.home a:before {
			display: none;
		}


/* CART_BREADCRUMBS */
#cart_breadcrumbs {
	margin: 0 0 10px -10px;
	padding: 0;
	list-style: none;
	overflow: hidden;
	text-transform: uppercase;
}
	ul#cart_breadcrumbs li {
		float: left;
	}
	ul#cart_breadcrumbs li a {
		display: block;
		color: #dbdac9;
		padding: 3px 10px 3px 10px;
		font: normal 1.1em/1.2em Arial, Helvetica, sans-serif;
	}
	ul#cart_breadcrumbs li.at a,
	ul#cart_breadcrumbs li a:hover {
		text-decoration: none;
		color: #99c221;
	}


.main .banners {
	margin-bottom: 1em;
}
.slick-slide.slick-slide img {
	display: block;
	margin: 0;
	width: 100%;
	height: auto;
	max-width: 670px;
}
.signup .slick-slide.slick-slide img {
	max-width: 100%;
	width: 100%;
}

.slick-dots {
	position: absolute;
	bottom: 10px;
	right: 20px;
	margin: 0;
	padding: 0;
	list-style: none;

}
	.slick-dots li {
		display: inline-block;
		vertical-align: middle;
		margin: 0 .75em;
	}
	.slick-dots li button {
		border-radius: 100%;
		text-indent: -200%;
		overflow: hidden;
		width: 14px;
		height: 14px;
		background: #ddd;
		padding: 0;
		border: 2px solid #498564;
		cursor: pointer;
	}
	.slick-dots li.slick-active button,
	.slick-dots li:hover button {
		background-color: #99c221;
	}
	.slick-dots li button:focus {
		outline: none;
	}



/* !Content */

.main img {
	display: block;
	margin-bottom: 1em;
}


.main p.more,
.main p.back,
.main p.top {
	font: bold 1.1em/1.2em Arial, Helvetica, sans-serif;
	text-transform: uppercase;
}
	.main p.more a:after {
		content: "»";
	}
	.main p.back a:before {
		content: "«";
	}
	.main p.top a:before {
		content: "^ ";
	}
	
.main .error-message {
	color: #8A1F11;
	line-height: 1.4em;
}
.main .error-message a {
/* 	color: #99c221; */
	text-decoration: underline;
}
.home #flashMessage {
	margin-right: 10px;
}
	tr.error-message {
		
	}


/* Sidebar */
.sidebar h3 {
	font: 700 12px/1.2 "expressway",sans-serif;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}


/* !CONTACT Display  */
.contact .content-display dl {
	margin: 0 0 1em 0;
	overflow: hidden;
}
.contact .content-display dt {
	clear: both;
	float: left;
	width: 100px;
	margin: 0 10px 0 0;
}
.contact .content-display dd {
	float: left;
	margin: 0 0 0 0;
	width: 150px;
}
.staticmap {
	display: block;
	float: right;
	border: 5px solid #fff;
	margin: 0 0 10px 40px;
	max-width: 40%;
}
	.staticmap img {
		margin: 0;
		width: 100%;
	}


/* ! FORMS */
label {
	font: bold 1em/1.25 sans-serif;
	text-transform: none;
	margin: 0 10px 0 0;
	padding: .75em 0 .25em;
	max-width: 30%;
	width: 100%;
	display: inline-block;
	vertical-align: top;
}
	input[type=radio] + label,
	input[type=checkbox] + label {
		padding-top: .5em;
	}
input.text,
input[type=text],
input[type=password],
input[type=email],
input[type=number],
textarea,
select {
	background-color: #fff;
	border: 1px solid #bbb;
	
	font-size: 12px;
	line-height: 1.166;
	padding: .5833em; /* 7px */
	margin: 0;
	border-radius: 0;
	
	width: 100%;
	max-width: 480px;
}
legend {
	font: bold 1em/1.25 sans-serif;
}
fieldset {
	border: 0;
	padding: 1em 0;
	margin: 0 0 1em;
}
	fieldset > :last-child {
		margin-bottom: 0;
	}
	fieldset:empty {
		margin: 0;
		padding: 0;
	}

/* !CONTACT FORM  */
form div {
	margin-bottom: 1em;
}
	form div div {
		margin-bottom: 0;
	}
form .input,
form .textarea {
	margin-bottom: 1em;
}

.shipping .text input,
.shipping select {
	max-width: 68%;
}

#recaptcha_image {
	width: 470px;
	border: 1px solid #999;
}
#recaptcha_image img {
	margin: 0;
	width: 100% !important;
	height: auto !important;
}



/* Columns using Flexbox (checkout proccess) */
.flex-cols {
	display: flex;
	flex-direction: row;
}
	.flex-cols > div {
		padding: 0 20px;
		flex-grow: 1;
	}
	.flex-cols .payment-block {
		max-width: 30%;
		padding-right: 0;
	}
	.flex-cols > div + div {
		border-left: 1px solid #666;
	}
	.flex-cols > div:first-child { padding-left: 0; }
	.flex-cols > div:last-child { padding-right: 0; }


/* Login Form */
	.login-form input[type="checkbox"] {
		float: right;
		top: .6em;
		margin-right: 0;
	}
	.login-form .submit label {
		width: auto;
		float: right;
		clear: none;
		margin-right: .25em;
		margin-top: .75em;
		padding: 0;
	}
	.login-options {
		clear: both;
		padding-left: 0;
		list-style: none;
	}
	
	



/* !LOCATIONS  */
#address_form fieldset {
	border: 0;
	padding: 0;
}
#address_form .button {
	margin: 10px 0;
}
ul.locations {
	margin: 0;
	padding: 0;
	list-style: none;
	overflow: hidden;
	float: right;
	width: 50%;
}
	ul.locations .location {
		width: 48%;
		margin: 0 0 10px 2%;
		float: left;
	}
	ul.locations .location.alt {
		clear: left;
		margin-left: 0;
	}
	ul.locations li.forprint {
		display: none;
	}
.google_map_canvas {
	width: 47%;
	height: 300px;
	max-width: 300px;
	max-height: 300px;
	margin: 0 3% 10px 0;
	float: left;
	border: 5px solid #fff;
}


/* !SWATCHES */
.swatch {
	margin: 0;
	padding: 0;
/* 	overflow: hidden; */
	list-style: none;
/* 	clear: left; */
}
	.swatch > li {
		float: left;
		margin: 0 2px 3px 0;
	}
		.swatch > li a,
		.swatch > li label {
			display: block;
			transition: all .2s ease-out;
			border: 1px solid #f1f8f7;
			padding: 0;
			margin: 0;
			max-width: none;
/* 			border-color: #baddd4; */
		}
		.swatch > li a:hover,
		.swatch > li label:hover {
			border-color: #baddd4;
/* 			border-color: #99c221 */
		}
	.swatch > li img,
	.swatch > li span.swatch-colour {
		display: block;
		margin-bottom: 0;
		width: 15px;
		height: 15px;
		background: #baddd4;
		overflow: hidden;
	}
	.swatch > li .more {
		padding: 0 6px;
		color: #fff;
		background: #498564;
		font-weight: bold;
		font-size: 11px;
		line-height: 15px;
		vertical-align: middle;
	}
	.swatch > li .more:hover {
		background: #baddd4;
		border-color: #498564;
	}
	.swatch > li .more:after {
		content: '>';
		vertical-align: text-bottom;
		line-height: 1;
	}

	.catalog .swatch > li a {
		border-width: 1px;
	}
	
	.single-product .swatch > li a {
		border-width: 2px;
	}
	.single-product .swatch > li img {
		width: 30px;
		height: 30px;
	}


.mfp-decoration     .swatch {
	margin: 1em 0;
	overflow:hidden;
}

.gallery-thumbnails {
	display: block;
	width: 100%;
}
.gallery-thumbnails .swatch {
	padding: 0 7%;
}
.gallery-thumbnails .swatch .swatch-item {
	width: 33.33%
}
.gallery-thumbnails .swatch a {
	display: block;
	padding: 0 3px;
	transition: opacity .2s;
	outline: none;
}
.gallery-thumbnails .swatch a:hover img {
	opacity: .75;
}
.gallery-thumbnails .swatch img {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
}
	.gallery-thumbnails .slick-arrow {
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		width: 7%;
		height: 100%;
		margin: 0;
		padding: 0;
		background-color: transparent;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 80% auto;
		border: none;
		
		font-size: 20px;
		font-weight: bold;
		color: #498564;
		cursor: pointer;
	}
	.gallery-thumbnails .slick-arrow:hover,
	.gallery-thumbnails .slick-arrow:focus {
		color: #99c221;
		outline: none;
	}
	.gallery-thumbnails .slick-prev { left: -5px; }
	.gallery-thumbnails .slick-next { right: -5px; }
	

.mfp-decoration     .swatch > li a {
	border-width: 2px;
}
.mfp-decoration     .swatch > li img {
	width: 30px;
	height: 30px;
}
/*
.mfp-decoration     .swatch > li.at a {
	border-color: #99c221;
}
*/


/* general Magific Popup panel styles */
.mfp-wrap .panel {
	width: 100%;
	max-width: 600px;
	min-width: 300px;
	padding: 4em 2em 2em;
	background: rgba(255, 255, 255, 0.95);
	margin: auto;
	position: relative;
	overflow: hidden;
	font-size: 12px;
}
	.mfp-wrap .panel h2 {
		text-align: center;
	}
	.mfp-wrap .panel label,
	.mfp-wrap .panel input,
	.mfp-wrap .panel textarea,
	.mfp-wrap .panel select {
		max-width: none;
	}
	.mfp-wrap .panel-img[style] {
		float: right;
		width: 200px !important;
		height: auto !important;
		margin: 0 0 2em 2em;
		border: 10px solid #fff;
		box-shadow: 0 0 5px rgba(0,0,0,.3);
		transform: rotate(5deg);
	}

/* Ask the expert button and popup panel */


.button-block  {
	margin: 0 0 10px 0;
	padding: 0;
}
	.button-block .button-2 {
		padding-top: 0;
		padding-bottom: 0;
	}

	form[action="/ask-the-expert"] .input {
		max-width: 50%;
	}
	form[action="/ask-the-expert"] .input.description {
		font-size: 12px;
		float: right;
		width: 45%;
		margin-left: 5%;
	}
	form[action="/ask-the-expert"] .input.description:before {
		content: '';
		display: block;
		width: 90%;
		padding-top: calc(90% - 20px);
		background: url(../../img/expert.jpg) 0 0 no-repeat transparent;
		background-size: 100% auto;
		border: 10px solid #fff;
		box-shadow: 0 0 5px rgba(0,0,0,.3);
		transform: rotate(5deg);
	}
	form[action="/ask-the-expert"] .input.description b {
		white-space: nowrap;
	}
		
	form[action="/ask-the-expert"] .input.submit {
		clear: both;
	}


/* Digiatl Proof trigger link and popup panel */
.digital-proof-link.digital-proof-link {
	background: transparent url("../../img/icons/icon-digital-proof.svg") no-repeat scroll 5% 60%;
	background-size: 30px;
}


/* Custom Colour trigger link & popup panel */
.custom-palette-link,
.digital-proof-link {
	display: block;
	border: 2px solid #498564;
	border-radius: 2px;
	padding: 1.25em 2em 1.25em 4em;
	margin: 1em auto 1.5em;
	
	background: transparent url("../../img/icons/icon-color-wheel.svg") no-repeat scroll 5% 60%;
	background-size: 35px;
	font: 700 12px/1.2 "expressway",sans-serif;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	text-decoration: none;
	text-align: center;
	transition: all 0.2s ease 0s;
}
	.custom-palette-link:hover,
	.digital-proof-link:hover {
		color: #99c221;
		border-color: #99c221;
		text-decoration: none;
	}
	
.custom-palette.panel {
	width: 100%;
	min-width: 300px;
	background: rgba(255, 255, 255, 0.95);
	margin: auto;
	position: relative;
	font-size: 12px;
}

	.custom-palette > p,
	.digital-proof-panel > p {
		font-size: 1.2em;
	}
	.custom-palette input[type="text"] {
		width: 100%;
	}
	.custom-palette  fieldset {
		padding: 1em 1em .5em 1em;
		overflow: hidden;
		border: 3px solid #e2e0d3;
	}
	.custom-palette .palette-block,
	.custom-palette .options-block {
		float: left;
	}
		.custom-palette .palette-block {
			width: 34%;
		}
			.colour-desc span,
			.colour-desc strong {
				display: inline-block;
				vertical-align: middle;
			}
		.custom-palette .options-block {
			width: 66%;
			padding-left: 1em;
		}
		.custom-palette .palette-block .palette-list {
			padding: 7px;
			background: #fff;
		}
.custom-palette .palette-list {
	margin: 0 0 .5em 0;
	padding: 0;
}
	.custom-palette .palette-list > li {
		position: relative;
	}
	.custom-palette .palette-list > li:hover,
	.custom-palette .palette-list > li.unselected:hover {
		opacity: 1;
	}
	.custom-palette .palette-list > li.unselected {
		opacity: 0.25;
	}
	.custom-palette .palette-list > li.selected {
		
	}
	.custom-palette .palette-colour {
		float: none;
		display: inline-block;
	}
		.custom-palette .palette-colour label {
			display: block;
			margin: 0;
			padding: 0;
			width: 24px;
			height: 24px;
			transition: all .2s ease-out;
			border: 2px solid #f1f8f7;
			cursor: pointer;
		}
		.custom-palette .palette-colour  label:hover {
			border-color: #baddd4;
		}
		
	.custom-palette .custom-colour {
		display: block;
	}
		.custom-palette .custom-colour label {
			background: transparent;
/* 			width: 100px; */
		}
		.custom-palette .custom-colour > p {
			margin: .25em 0;
		}
		.custom-palette .use-input {
			margin: 0 0 1em 0;
		}
	
		.custom-palette .custom-colour .faux-label {
			display: inline-block;
			vertical-align: middle;
			margin-right: .25em;
		}
		.custom-palette .custom-colour input[type="text"] {
			display: inline-block;
			vertical-align: middle;
			width: 76%;
		}
		.custom-palette .custom-colour input[type="color"] {
			display: inline-block;
			vertical-align: middle;
			-webkit-appearance: none;
			   -moz-appearance: none;
			        appearance: none;
			background: none;
/* 			outline: 3px solid #baddd4; */
			border: 0;
			padding: 0;
			margin: 0;
			width: 10%;
			max-width: 30px;
			height: 26px;
		}
	
	.custom-palette input[type="radio"] {
		display: none;
		position: absolute;
		top: 2px;
		left: 2px;
		width: 2px;
		height: 2px;
	}
	.custom-palette .submit {
/* 		display: block; */
/* 		margin: 1em auto .5em; */
		float: right;
		padding: 1em 1.5em;
	}
	.custom-palette .remove {
		
	}
	.custom-palette .add {
		padding: 1em 1.5em;
		margin-bottom: 1.5em;
	}
		.custom-palette fieldset + fieldset + fieldset + .add {
			display: none;
		}
	
	

	
	#palette-spec {
		width: 85%;
	}
	
	/* 	table with results picked by user */
	.custom-color-results {
		font-size: 10px;
		margin: 0;
	}
	.custom-color-results .img {
		padding: 0 5px 5px 0;
	}
	.custom-color-results .img .colour-display {
		width: 30px;
		height: 30px;
		display: inline-block;
		background-color: #fff;
		background-image:                                            url("../../img/icons/icon-color-wheel.png"); /* SVG fallback */
		background-image: linear-gradient(transparent, transparent), url("../../img/icons/icon-color-wheel.svg"); 
	}
	.custom-color-results .clr,
	.custom-color-results .use {
		font-size: inherit;
		display: block;
		padding: 0;
		width: 100%;
	}
	.custom-color-results .use {
		padding-bottom: 5px;
	}
	
	




/* !PRODUCTS */
.catalog {
	list-style: none;
	margin: 0 0 30px 0;
	padding: 0;
	clear: both;
/* 	overflow: hidden; */
}
	.catalog > li {
		position: relative;
		margin: 10px 0 10px 2%;
		padding: 0;
		float: left;
		width: 32%;
	}
	
	.catalog > li > a > img {
		border: 4px solid #f1f8f7;
		transition: border-color 0.2s ease 0s;
	}
	.catalog > li > a:hover > img {
		border-color: #baddd4;
	}
	
	
	.catalog > li.first {
		margin-left: 0;
		clear: left;
	}
	
	.catalog > li h2 a,
	.catalog > li a.extra,
	.catalog > li .options {
		display: block;
	}
	
	/* 	Rearange items with Flexbox if supported: */
	.flexbox .catalog > li { display: flex; flex-direction: column; }
	.flexbox .catalog > li > h2          { order: 3;  }
	.flexbox .catalog > li > h2 a        { margin: 0; }
	.flexbox .catalog > li > .image-link { order: 1; position: relative; top: auto; margin-bottom: .75em; }
	.flexbox .catalog > li > .extra      { order: 4; }
	.flexbox .catalog > li > .options    { order: 2; }
	
	.catalog > li a:hover {
		text-decoration: none;
	}
		
		.catalog > li .image-link {
			display: block;
			position: absolute;
			top: 0;
			
			border: 4px solid #f1f8f7;
			
			-webkit-box-shadow: 1px 1px 5px #999;
			        box-shadow: 1px 1px 5px #999;
			-webkit-transition: border-color .2s ease-out .1s;
			        transition: border-color .2s ease-out .1s;
			
			max-height: 198px;
			max-width: 198px;
			
/* 			max-width: 100%; */
/* 			max-height: 100%; */
			overflow:hidden;
		}
		.no-touch .catalog > li .image-link:hover {
			border-color: #baddd4;
			-webkit-box-shadow: 1px 1px 8px #999;
			        box-shadow: 1px 1px 8px #999;
		}
		.catalog > li .image-link img {
			border: none;
			display: block;
			width: 100%;
			height: auto;
			margin: 0;
			-webkit-transition: opacity .3s ease-out .1s;
			        transition: opacity .3s ease-out .1s;
		}
		.no-touch .catalog > li .image-link:hover img {
			opacity: 0;
		}
		.catalog > li h2 {
			margin: .25em 0;
		}
		.catalog > li h2 a,
		.catalog > li a .title {
			display: block;
			color: #6d6d6d;
			font: bold 13px/1.16 Georgia, "Times new Roman", Times, serif;
			letter-spacing: normal;
		}
		.catalog > li a:hover .title {
/* 			color: #99c221; */
		}
		.catalog > li h2 a {
			margin-top: 105%; /* push down the size image (100%) and a bit extra (5%) ~ 205px */ 
		}
		
		/* 	listing swatches: */
		.catalog > li .options {
			width: auto;
			padding: 0;
			overflow: hidden;
		}
		.catalog > li .option-set {
			width: 200%;
		}
		


/* !Related (recommended) items */
.catalog.related {
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px dotted #498564;
	
	overflow: hidden;
}
	.catalog.related h2 {
		color: #6d6d6d;
		text-transform: uppercase;
	}
	.catalog.related  ul {
		display: flex;
		flex-flow: row wrap;
	}
	.catalog.related li {
		float: left;
		border-left: 1px dotted #498564;
		padding: 0 10px;
		margin: 10px 0;
		max-width: 120px;
	}
	.catalog.related li.first {
		clear: both;
		border: 0;
		margin-left: -10px;
	}
		.catalog.related li a {
			width: auto;
		}
		.catalog.related li a span.title {
			
		}
		.catalog.related li img {
			display: block;
			margin-bottom: 10px;
			border: 4px solid #f1f8f7;
			transition: border-color .2s;
		}
		.catalog.related li :hover img {
			border-color: #baddd4;
		}

	/* 	Cross-sells in the cart (larger images. Maximum 3) */
	.catalog.related.cross-sell {
		margin-top: 0;
		padding-top: 0;
		border: 0;
	}
	.catalog.related.cross-sell ul {
		display: block;
	}
	.catalog.related.cross-sell li {
		max-width: none;
		width: 100%;
		padding: 0;
		border: none
	}
	.catalog.related.cross-sell li.first {
		margin-left: 0;
	}
	.catalog.related.cross-sell li img {
		max-width: 100%;
		height: auto;
	}


/* !Recent products in sidebar) */
.recently-viewed {
	position: relative;
	width: 100%;
	overflow: hidden;
}
	.recently-viewed > h3 {
		margin-bottom: 0;
	}
	.recently-viewed > .note {
		margin: .25em 0;
	}
	.recently-viewed .items-list {
		position: static;
		width: 100%;
/* 		height: 80px;  removed for responsive */
	}
	.recently-viewed .items-list .item {
		margin: 5px 5px 5px 0;
		max-width: 100px;
	}
	
		.recently-viewed .items-list:not(.slick-slider) .item { width: 32%; }
		.recently-viewed .items-list:not(.slick-slider) .item:nth-child(3n+1) { margin-left: 0; }
		.recently-viewed .items-list:not(.slick-slider) .item:nth-child(3n+3) { margin-right: 0; }
	
	.recently-viewed .items-list .item img {
		display: block;
		width: 100%;
		height: auto;
		border: 2px solid #f1f8f7;
		transition: border-color 0.2s ease 0s;
	}
	.recently-viewed .items-list .item a:hover img {
		border-color: #baddd4;
	}
	
	.recently-viewed .slick-prev,
	.recently-viewed .slick-next {
		position: absolute;
		top: 0;
		color: inherit;
		background: transparent;
		border: none;
		appearance: none;
		cursor: pointer;
	}
	.recently-viewed .slick-prev:hover,
	.recently-viewed .slick-next:hover {
		color: #99c221;
	}
	.recently-viewed .slick-prev.slick-disabled,
	.recently-viewed .slick-next.slick-disabled {
		color: #ccc;
	}
	.recently-viewed .slick-prev { right: 15px; }
	.recently-viewed .slick-next { right: 0px; }


/* !Catalog Sub-Category */
.sub-category h2 {
	clear: both;
}	
	

/* !PRODUCT VIEW  */
.single-product {

}
	.single-product .options {
		position: relative;
		float: right;
		width: 40%;
		margin: 0 0 20px 5%;
		padding-top: 50px;	/* to accomodate abs. positioned "share-block" */
	}
	.single-product .description {
		float: left;
		padding: 0 0 20px 0;
		width: 55%;
	}

.single-product .product-img {
	display: block;
	position: relative;
	margin: 0 0 20px 0;
	
	max-height: 370px;
	max-width: 370px;
	
	overflow:hidden;
	
	border: 4px solid #f1f8f7;
	-webkit-box-shadow: 1px 1px 5px #999;
	        box-shadow: 1px 1px 5px #999;
	        
	-webkit-transition: border-color .2s ease-out;
	        transition: border-color .2s ease-out;
}
	.single-product .product-img:hover {
		border-color: #baddd4;
		-webkit-box-shadow: 1px 1px 8px #999;
		        box-shadow: 1px 1px 8px #999;
	}
	.single-product .product-img .zoom {
		display: block;
		position: absolute;
		width: 30px;
		height: 30px;
		right: 0px;
		bottom: 0px;
		padding: 2px;
		background: url(../../img/sprites.png) -28px -28px no-repeat #dbdac9;
	}
		.single-product .product-img:hover .zoom {
			background-color: #baddd4;
		}
	.single-product .product-img img {
		display: block;
		margin: 0;
		width: 100%;
		height: auto;
	}
	
	
	.single-product .gallery-thumbnails {
		margin-bottom: 2em;
	}
	
	.single-product  .swatch > li span.swatch-colour {
		width: 30px;
		height: 30px;
	}
	
	
	.single-product .share-block {
		position: absolute;
		top: 0;
		width: 100%;
	}
.add-form {
	margin-bottom: 2em;
}
.add-form > .message.success {
	margin: 1.5em 0;
}
.single-product .options fieldset {
	margin: 15px 0 0 0px;
	padding: 0;
	border: 0;
	clear: left;
	overflow: hidden;
/* 	background: #eee; */
}
	.single-product .options label,
	.single-product .options h3 {
		color: #6d6d6d;
		width: auto;
		text-transform: none;
		font-size: 12px;
		max-width: none;
		padding: 0;
	}
	.single-product .pricing-block,
	.single-product .options div.input {
		margin: 0 0 10px 0;
		clear: left;
	}
	.single-product .sku-block p {
		margin: 1em 0;
	}
	.single-product select {
		width: 100%;
/* 		margin-right: 10px; */
	}
	.single-product .options fieldset.favor label,
	.single-product .options fieldset.radio label.radio {
		font-size: 11px;
		line-height: 12px;
		margin-bottom: 2px;
		margin-right: 0;
		width: 90%;
		font-weight: normal;
	}
	
	.single-product .options fieldset.quantity label {
		display: inline-block;
		line-height: 30px;
	}
	.single-product .options fieldset.quantity input.text {
		max-width: 70px;
	}
	
	
	
	/* Product tabs */
	.tabs-nav {
		overflow: hidden;
		padding: 0;
		margin: 0;
		display: flex;
		flex-direction: row;
	}
		.tabs-nav li {
			float: left;
			width: 24.25%;
/* 			width: auto; */
			padding: 0;
			margin: 0 0 0 1%;
			list-style: none;
		}
		.tabs-nav li.first {
			margin-left: 0;
		}
		.tabs-nav li a {
			display: block;
			width: 100%;
			height: 100%;
			margin: 0;
			padding: 10px 5px 8px 5px;
			background: #e2e0d3;
			color: inherit;
			font-weight: bold;
			text-decoration: none;
			text-align: center;
		}
			.tabs-nav li:hover a,
			.tabs-nav li a.active {
				background: #498564;
				color: #fff;
			}
		


		.tabs-content {
			border: 3px solid #e2e0d3;
			padding: 1em;
			margin-bottom: 1em;
		}
			.tabs-content > .tab.active {
				display: block;
			}
			.tabs-content > .tab.off {
				display: none;
			}
			
			.mobile-heading {
/* 				display: none; */
				position: relative;
				-webkit-tap-highlight-color: transparent;
			}
			.mobile-heading.on {
				display: block;
			}
			
			/* add separation line between product description tabs: */
			.single-product .description .tab {
				margin-bottom: 1em;
				border-bottom: 1px solid #8a6959;
			}
			.single-product .description .tab:last-child {
				border-bottom: 0;
				margin-bottom: 0;
			}


/* Reviews */

/* Aggregate rating */
#aggregate-rating {
	float: left;
	width: 50%;
}
#aggregate-rating .rating .star {
	font-size: 22px;
}

.review-login {
	display: block;
	font-size: 12px;
	font-weight: bold;
}
#aggregate-rating + .review-login {
	float: right;
	margin: .25em 0 1em 0;
	padding: 2.25em 0 1em 0;
	width: 50%;
	text-align: right;
}
#aggregate-rating .filled-star {
	color: #99c221;
}

.reviews-container {
	clear: both;
	margin-top: 1em;
	padding-top: 1em;
	border-top: 1px solid #8a6959;
}
	.reviews-container p {
		margin-bottom: .5em;
	}

.reviews > .review {
	margin: .5em 0;
	padding-top: .5em;
	border-top: 1px solid #e2e0d3;
}
	.reviews > .review:first-child {
		border: 0;
		padding-top: 0;	
	}
	.reviews > .review p:last-of-type {
		margin-bottom: .75em;
	}
.reviews textarea {
	width: 100%;
	max-width: none;
}

.reviews .reply {
	border-left: 5px solid #99c221;
	padding-left: 1em;
}



/* Product Display */
.product-heading {
	padding: 0;
	margin: 0;
}

	/* Price matrix  */
.price-matrix {
	margin: 0;
	padding: 0;
	overflow: hidden;
	list-style: none;
}
	.price-matrix li {
		margin: 0 10px 0 0;
		padding: 2px 0;
		border-top: 1px dotted #ccc;
		overflow: hidden;
	}
	.price-matrix li span {
		margin-right: 2%;
		display: block;
		float: left;
	}
	.price-matrix li span.qty {
		width: 40%;
	}
	.price-matrix li span.price {
		width: 56%;
		text-align: right;
	}
	
	.price-matrix em {
		font-style: inherit;
	}
	.price-matrix strong {
		font-weight: inherit;
	}
	


.options fieldset.radio input.radio {
	float: left;
	margin: 0 5px 5px 1px; /* 1px left is for Safari that cuts radio button somehow */
}
.options fieldset.radio label.radio {
	float: left;
	clear: none;
	width: 200px;
	margin-top: 3px;
}
.options fieldset.radio label.icon {
	clear: left;
	width: 100%;
}


.options div.favor,
.options select {
	float: none;
	clear: left;
	overflow: hidden;
	margin: 0;
}
	.options .favor div.input {
		border: 0;
		float: none;
	}
	.options .favor div.input input {
		width: 100%;
	}


.quantityset {
	
}
	.quantityset-quantity {
		display: table-cell;
		width: 30%;
	}
	
	.quantityset-subtotal {
		display: table-cell;
		width: 70%;
		padding-left: 1em;
		position: relative;
	}
	.quantityset-subtotal:before {
		content: '';
		display: block;
		position: absolute;
		left: .5em;
		bottom: 0;
		height: 30px;
		border-left: 1px dotted #ccc;
	}
	
	
	.add-to-cart {
		width: 100%;
		margin-top: 1em;
	}
	.add-to-cart.processing {
		background: #ccc;
	}
	.add-to-cart.processing:before {
		content: '';
		display: inline-block;
		vertical-align: middle;
		margin-right: 2.5em;
		width: 0px;
		height: 0px;
		border-width: 6px;
		border-style: solid;
		border-image: none;
		border-radius: 100%;
		border-color: #fff transparent;
		-webkit-animation: 1s linear 0s normal none infinite running spin;
		        animation: 1s linear 0s normal none infinite running spin;
		z-index: 1;
		position: relative;
	}
	.add-to-cart.processing:after {
		content: 'Processing…';
		position: absolute;
		top: 0; right: 0; bottom: 0; left: 0;
		background: inherit;
		padding: inherit;
	}
	@-webkit-keyframes spin{
		0%   { -webkit-transform: rotate(0deg); }
		100% { -webkit-transform: rotate(360deg); }
	}
	@keyframes spin{
		0% { transform: rotate(0deg); }
		100% { transform: rotate(360deg); }
	}




/* !Social buttons (New) */
.social {
	display: block;
	list-style: none;
	margin: .75em 0;
	padding: 0;
	text-align: center;
}
	.social > li {
		display: inline-block;
	}
	.social > li > a {
		display: inline-block;
		width: 32px;
		height: 32px;
		padding: 0;
		margin: 0;
		border: 6px solid transparent;
		border-radius: 100%;
		vertical-align: middle;
		background: #99c221;
		color: #fff;
		transition: background .2s;
	}
	.social > li.tw > a { }
	.social > li.yt > a { }
	.social > li.ig > a { padding: 1px; }
	
	.social > li > a:hover {
		background: #498564;
	}
	.social svg {
		width: 100%;
		height: 100%;
	}

	/* spread items */
	.flexbox .social {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		justify-content: space-between;
	}


.sidebar .social {
	max-width: 300px;
}


/* Share this (product) */
.share-this {
	display: block;
	text-align: left;
	margin: 0 0 1em 0;
}
	.flexbox .share-this {
		display: block;
	}
	.share-this > li {
		margin-right: 5px;
	}
	.share-this > li > a {
		width: 24px;
		height: 24px;
		border-width: 4px;
		background: #c9bda5;
	}


/* !CART ********************/
table.cart {
	background: #fff;
}
	.panel {
		background: #fff;
		border: 1px solid #eee;
		border-radius: 2px;
		padding: 20px;
		overflow: hidden;
	}
		.panel-left {
			width: 75%;
			float: left;
			padding-right: 20px;
		}
		.panel-right {
			width: 25%;
			float: left;
			padding-left: 20px;
		}
	.panel > :last-child {
		margin-bottom: 0;
	}
	.panel fieldset.shipping {
		border: none;
		padding-left: 0;
		padding-right: 0;
	}
		.panel fieldset.shipping .disclaimer {
			margin-left: calc(30% + 10px);
		}
		.panel fieldset.shipping input[type=radio] {
			width: auto;
			vertical-align: top;
		}
		.panel fieldset.shipping label + em {
			display: inline-block;
			padding-top: .5em;
		}
		.panel fieldset.shipping label + em + p {
			margin-left: 20px;
		}
	
	.main table.cart tr.thead {
		
	}
	.main table.cart tr.primary td {
		border-top: 1px solid #999;
/* 		min-height: 100px; */
		padding-top: 10px;
		padding-bottom: 10px;
/* 		vertical-align: top; */
	}
	.main table.cart tr.options td {
		border-top: 1px solid #eee;
		padding-top: 5px;
		padding-bottom: 5px;
	}
	.main table.cart th {
		border-bottom: none;
		font: bold 12px/14px Arial, Helvetica, sans-serif;
	}
	.main table.cart td {
		font: normal 12px/13px Arial, Helvetica, sans-serif;
		padding-top: 2px;
		padding-bottom: 2px;
	}
	.cart.line-items tr.primary td.description {
		font-weight: bold;
		text-transform: uppercase;
	}
	.cart.line-items tr.secondary td.description,
	.cart.line-items tr.secondary td.price {
		border-bottom: 1px solid rgba(0,0,0,.05);
	}
	
	.cart.line-items tr.secondary td.description span.option-name {
		font-weight: bold;
		display: inline-block;
		vertical-align: middle;
		width: 35%;
		padding-top: 0;
	}
	.cart.line-items tr.secondary td.description div.option-value {
		display: inline-block;
		vertical-align: middle;
		width: 65%;
		margin: 5px 0;
	}
	
	/* 	
		Special case for whne there are description wiht per item price
		Percentage nubers are to match the option-value alignment.
	*/
	.cart.line-items tr.secondary td.description[colspan="3"]  { }
	.cart.line-items tr.secondary td.description[colspan="3"] span.option-name { width: 39.5%; }
	.cart.line-items tr.secondary td.description[colspan="3"] div.option-value { width: 60.5%; }
	
	.cart.line-items tr.secondary.purchase-tax           td.description div.option-value,
	.cart.line-items tr.secondary.purchase-shipping-zone td.description div.option-value {
		margin: .25em 0;
	}
	
	.cart.line-items tr.secondary td.description input,
	.cart.line-items tr.secondary td.description textarea {
		width: 100%;
		padding: 5px;
	}
	.main table.cart td.actions input.update {
		float: right;
	}
	.main table.cart td.actions input.update.persistent {
		
	}
	.main table.cart td.actions .remove {
		float: right;
		text-align: center;
		line-height: 14px;
		height: 14px;
		width: 14px;
		padding: 0;
	}
	
	.main table.cart .tfoot td,
	.main table.cart tr.options td.title {
		font-weight: bold;
	}
	.main table.cart td.image {
		width: 12%;
		vertical-align: top;
		position: relative;
	}
	.main table.cart td.image > div {
/*		position: absolute; */
		margin: 0 5px 10px 0;
		z-index: 1;
	}
	.main table.cart td.image img {
/* 		margin-top: 5px; */
		width: 100%;
		height: auto;
	}
	
	.main table.cart td p.error-message{
		margin:0px;
		text-transform: none;
	}
	
	.main table.cart .button.remove {
		display: block;
		width: auto;
		min-width: 0;
		margin: 0 auto;
	}
	.main table.cart .button.alt {
		font-size: 10px; /* keep font-size consistent with .button on cart */
		padding: .7em 1em;
	}
	.main table .group th,
	.main table .group td {
		background: #eee;
		margin: auto;
	}

	.main table .group.overall-total th,
	.main table .group.overall-total td {
		background: #99c221;
		color: #fff;
		margin: auto;
		text-transform: uppercase;
	}

/* ! FTP Upload Link */
	.ftp-upload-link a {
		text-transform: uppercase;
	}
	.icon-upload {
		display: inline-block;
		vertical-align: middle;
		width: 24px;
		height: 24px;
		margin: 0 .5em 0 0;
	}
	.icon-upload > svg {
		display: block;
		width: 100%;
		height: 100%;
	}
	
	
/* ! Shipping Quote */
	.shipping-quotes {
		display: table;
		margin: 10px 0 0;
		width: 100%;
	}
		.shipping-quote > :last-child {
			margin-bottom: 0;
		}
		.shipping-quote {
			display: table-cell;
			width: 48%;
			background: #eee;
			margin: 10px 0 0;
			padding: 10px;
			border-left: 10px solid white;
		}
		.shipping-quote.first {
			border: none;
		}
		.shipping-quote.wide {
			width: 100%;
			border-left: none;
		}
		.shipping-quote p {
			margin-bottom: .75em;
		}
		.shipping-quote table td,
		.shipping-quote table th {
			padding: 2px;
		}
		.shipping-quote table th.zone-name {
			/* font: normal 11px/12px Arial, Helvetica, sans-serif; */
			font-weight: normal;
		}
		.shipping-quote table td.amount {
			text-align: right;
			font-style: italic;
		}
		.shipping-quote table tr:nth-child(even) td,
		.shipping-quote table tr:nth-child(even) th {
			border-top: 1px solid #999;
		}
		.shipping-quote table td:empty {
			height: 0;
			padding: 0;
		}




/* ! Cart inputs: */
.main table.cart input.qty {
	width: 40px;
	text-align: right;
	margin: 0;
}
.main table.cart input.favor {
	width: 100%;
}

	/* ! Payment fieldset */
	.payment-set .text .cc_num {
		width: 150px;
	}
	.payment-set .text .cc_cvd {
		max-width: 50px;
		margin-right: .5em;
	}
	.payment-set .expiry-date select {
		width: auto;
		min-width: 75px;
	}


/* ! Apply Coupon form */
.apply-coupon {
	margin-bottom: 2em;
}
	.apply-coupon .button {
		display: block;
		max-width: 320px;
		margin: 1em 0;
	}
	.apply-coupon label {
		max-width: none;
		width: auto;
		padding-top: .5em
	}
	.apply-coupon p {
		margin-bottom: 0;
	}


/* ! Checkout Subtotals Block in right column */
.subtotals {
	margin: 1em 0;
	text-transform: uppercase;
}
	.subtotals th,
	.subtotals td {
		padding-top: .5em;
		padding-bottom: .5em;
	}
		
	.subtotals .subtotals-top th,
	.subtotals .subtotals-top td {
		padding-top: 1.25em;
		padding-bottom: 1.25em;
		border: 1px dotted #498564;
		border-left: 0;
		border-right: 0;
	}
	.subtotals .price {
		font-weight: bold;
		color: #498564;
	}

	.subtotals .group.overall-total {
		box-shadow: .5em 0 0 0 #99c221, -.5em 0 0 0 #99c221;
	}
	.subtotals .group.overall-total th,
	.subtotals .group.overall-total td {
		padding-top: 1em;
		padding-bottom: 1em;
		margin-left: -1em;
	}


/* ! Checkout Warning */
.checkout-warning {
	position: relative;
	background-color: #eee;
	padding: 1em 1em 1em 4em;
}
	.checkout-warning > .icon {
		position: absolute;
		left: 1em;
		top: 1em;
		width: 2em;
		height: 2em;
	}

/* ! Accepted cards (payment methods) */
.accepted-cards ul {
	display: block;
	display: flex;
	flex-direction: row;
	list-style: none;
	margin: 0;
	padding: 0;
}
	.accepted-card {
		display: inline-block;
		max-width: 100px;
	}
	.accepted-card + .accepted-card {
		margin-left: 10px;
	}
	.accepted-card .accepted-card-img {
		display: block;
		width: 100%;
		max-width: 70px !important;
		margin-bottom: 5px;
	}

/* ! Checkout help text and Geotrust logo */
.checkout-help img[name='gts_seal'] {
	max-width: 90px !important;
}
	
.checkout textarea {
	max-width: none;
}

.checkout-text {
	float: left;
	width: 50%;
}
.checkout-text + .controls-group .button {
	margin-bottom: 1em; /* prevent responsive vertical stacking */
}

.back-to-browsing {
	position: absolute;
	text-align: right;
	top: 65px;
	right: 25px;
	z-index: 10;
}

.panel .controls-group {
	clear: both;
	border: 0;
	padding: 0;
	margin: 0;
} 
.panel .controls.next {
	float: right;
}
	.button.icon-prev,
	.button.icon-next {
		background-repeat: no-repeat;
		background-size: 1em;
	}
	.button.icon-prev {
		background-position: 7% center;
		background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24'><path fill='%23ffffff' d='M0,12l18.9,12V0L0,12z'/></svg>");
	}
	.button.icon-next {
		background-position: 93% center;
		background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24'><path fill='%23ffffff' d='M0,0v24l18.9-12L0,0z'/></svg>");
		
	}

.panel .profile {

}
	.panel .profile th,
	.panel .profile td {
		padding: 0 0 .25em 0;
		vertical-align: top;
	}
	
	.panel .profile th {
		width: 30%; /* width of Shopping and Billing headings column info on profiles.  */
	}



/* ! FAQ */
.faq-category {
	margin: 0 0 1em 0;
	padding: 0;
	border: 2px solid #498564;
	position: relative;
	z-index: 0;
	overflow: hidden;
	transition: all .2s;
}
.faq-category.on {
	z-index: 99;
}
	.faq-category-title {
		position: relative;
		color: #498564;
		margin: 0;
		padding: .25em 1.5em .25em .5em;
		cursor: pointer;
		transition: color .2s;
	}
		.faq-category-title:after {
			content: "▼";
			position: absolute;
			right: .75em;
			top: .85em;
			line-height: 1;
			font-size: 14px;
			transform: rotate(-90deg);
			transition: transform .2s;
		}
		.faq-category.on .faq-category-title::after {
			transform: rotate(0deg);
		}
		
.faq-list {
	max-height: 0;
	opacity: 0;
	z-index: 0;
	
	transition: all .2s;
	padding-right: 2.5em;
}
.no-js .faq-list,
.faq-category.on .faq-list {
	max-height: 9999px;
	opacity: 1;
	padding-bottom: .5em;
}

/* FAQ questions: */
.faq-question {
	position: relative;
	padding-left: 1.5em;
	cursor: pointer;
}
.faq-question.off + .faq-answer {
	max-height: 0;
	opacity: 0;
	z-index: 0;
}
.faq-answer {
	max-height: 9999px;
	opacity: 1;
	transition: all .2s;
	margin-left: 2.5em;
	overflow: hidden;
}
	.faq-question-title {
		padding: .25em .25em .25em 1em;
		margin: 0;
	}
	.faq-question-title:before {
		content: "▼";
		position: absolute;
		left: .75em;
		top: .75em;
		line-height: 1;
		font-size: 14px;
		margin-top: -.4em;
		transform-origin: center;
		transition: transform .2s;
		transform: rotate(-90deg);
		color: #498564;
	}
	.faq-question.on .faq-question-title:before {
		transform: rotate(0deg);
	}

.faq-category-title:hover,
.faq-question-title:hover {
	color: #99c221;
}


.no-js .faq-question { padding-left: 0; }
.no-js .faq-answer { margin-left: 1em; }
.no-js .faq-category-title:after,
.no-js .faq-question-title:before { content: none; display: none; }


/* !TESTIMONIALS (QUOTES) */
#quotes blockquote {
	margin-right:25%;
}
#quotes blockquote p.testimonial {
	font-style: italic;
	font-size: 1.2em;
	margin-bottom: 0.25em;
}
	#quotes blockquote p.testimonial:before {
		content: "❝";
		font-size: 1.5em;
		color: #999;
	}
	#quotes blockquote p.testimonial:after {
		content: "❞";
		font-size: 1.5em;
		color: #999;
	}
	
	#quotes blockquote p.source {
		font-size: 1.2em;
		font-weight: bold;
	}


/* !Curly blockquote */
.main > blockquote {
	position: relative;
	text-align: center;
	padding: 30px 12%;
	margin: 0 1em 1em;
}
	.main > blockquote p {
		font: italic 300 20px/1.5 "expressway", sans-serif;
		letter-spacing: 0.05em;
		color: #498564;
		margin-bottom: .5em;
	}
	.main > blockquote .button {
		display: inline-block;
		font: 700 12px/1 "expressway", sans-serif;
		letter-spacing: 0.05em;
		background: #99c221;
		color: #fff;
		padding: 1em;
		height: auto;
		text-transform: uppercase;
		min-width: 240px;
	}
	.main > blockquote .button:hover {
		color: #498564;
		background: #99c221;
	}
	
	.main > blockquote:before,
	.main > blockquote:after {
		content: "";
		position: absolute;
		top: 0;
		bottom: 0;
		display: block;
		color: #498564;
		font: normal 160px/1 Arial, Helvetica, sans-serif;
	}
		.main > blockquote:before {
			content: "{";
			left: 0;
		}
		.main > blockquote:after {
			content: "}";
			right: 0;
		}
	


/* !Columns */
.shortcut-columns {
	overflow: hidden;
	margin-bottom: 10px;
	border-bottom: 1px solid #8a6959;
}
	.shortcut-columns .column {
		padding-left: 4px;
	}
	.shortcut-columns img,
	.shortcut-columns img[style] {
		display: block;
		width: 100% !important; 
		height: auto!important;
		border: 4px solid #fff;
		margin-bottom: 1em;
		margin-left: -4px;
		
		-webkit-transition: border-color .2s;
		   -moz-transition: border-color .2s;
		        transition: border-color .2s;
		
		-webkit-box-shadow: 1px 1px 5px #999;
		   -moz-box-shadow: 1px 1px 5px #999;
		        box-shadow: 1px 1px 5px #999;
	}
	.shortcut-columns a:hover img {
		border-color: #baddd4;
	}
	.shortcut-columns a:hover {
		text-decoration: none;
	}
	
	.shortcut-columns p {
		margin-bottom: 0;
		font-weight: bold;
	}
	
	.shortcut-columns ul {
		float: none;
		margin: 0;
		padding: 0;
		display: block;
		list-style: none;
		font-weight: bold;
		list-style: 
	}
		.shortcut-columns ul li {
			margin: 0;
			padding: 0px 0px 0px 1.3em;
			position: relative;
		}
		.shortcut-columns ul li a {
			
		}
		.shortcut-columns ul li a:before {
			content: ">>";
			color: inherit;
			padding: 0 4px 0 0;
			margin-left: -1.5em;
		}

/* Table that BPW used for easy layout of side-by-side department images and links on Home page */
.shortcut-table {
	margin-bottom: 0;
}
	.shortcut-table img[style] {
		width: 100% !important;
	}


/* !Steps */
#steps {
	margin: 0 0 20px 0;
	padding: 0;
	list-style: none;
	overflow: hidden;
}
	#steps li {
		float: left;
		margin: 0 14px 0 0;
		padding: 0;
	}
	#steps li#step_3 {
		margin-right: 0;
	}


/* Articles */
#articles {
	clear: both;
}
.articles {
	float: left;
	margin: 10px 0 10px 0;
	padding: 0;
	list-style: none;
	overflow: hidden;
	border-top: 1px dotted #666;
	width: 49.9%;
}
.articles.right {
	border-left: 1px dotted #666;
}
	.articles li {
		border-bottom: 1px dotted #666;
		padding: 10px 10px 0px 0;
		clear: left;
		overflow: hidden;
		min-height: 90px;
	}
		.articles.left  li p {
			margin-left: 100px;
		}
		.articles.right li p {
			margin-left: 120px;
		}
	.articles li strong {
		display: block;
	}
	.articles li a {
		display: block;
		float: left;
		margin: 0 10px 0 0;
	}
		.articles.right li a {
			margin-left: 20px;
		}
	.articles li a.more {
		display: inline;
		margin: 0;
		float: none;
		white-space: nowrap;
		text-transform: uppercase;
		color: #99c221;
	}
		.articles li a.more:before {
			content: "> ";
		}


/* !Blog */

.blog .sidebar h2 {
	font: bold 12px/14px Arial, Helvetica, sans-serif;
	color: #498564;
}
.blog .sidebar > h3,
.blog .sidebar .blog-blurb > h3,
.blog .sidebar .blog-banners > h3,
.blog .sidebar .blog-categories > h3  {
	float: none;
	padding: 0;
	margin: 0 0 5px 0;
	font: bold 15px/1.2 Arial, Helvetica, sans-serif;
	text-transform: uppercase;
	color: #498564;
	letter-spacing: normal;
}

.blog .main h1,
.blog .main .entry.full h2 {
	color: #498564;
	margin: 0 0 .5em 0;
	background: none;
	padding: 0;
	font: normal 31px/33px Arial, Helvetica, sans-serif;
	letter-spacing: normal;
}
.blog .main h2 {
	margin: 0 0 .5em 0;
	color: #498564;
	font: normal 21px/25px Arial, Helvetica, sans-serif;
}
	.blog .main h2 a {
		color: inherit;
	}
	
	.blog .main #blog-category {
		background: url(../../img/ribbon-teal.png) right top no-repeat transparent;
		color: #fff;
		padding: 10px 30px 20px 20px;
		margin: 0 0 15px -20px;
		line-height: 1.1;
		text-transform: uppercase;
		font-weight: bold;
		width: 260px;
		font-size: 15px;
		line-height: 1;
		white-space: nowrap;
		text-overflow: ellipsis;
		overflow: hidden;
	}
		.blog .main #blog-category a,
		.blog h3.category a {
			color: #fff;
		}

/* 	Pagination */
.pagination > span {
	display: inline-block;
	margin-bottom: .5em;
}
.pagination > span a {
	display: block;
}
.pagination > span a,
.pagination > span.current {
		padding: .25em .65em;
		border-width: 1px;
		border-style: solid;
		text-decoration: none; }
.pagination > span.current {
	border-color: inherit;
}
.pagination > span a:empty {
	display: none;
}


/* Blog Categories list  */
.blog-categories .categories-list {
	margin: 0 0 20px 0;
	padding: 0;
	list-style: none;
}
	.blog-categories .categories-list > li {
		text-align: left;
	}
	.blog-categories .categories-list > li hr {
		text-align: left;
		margin: .75em 0;
		max-width: 1.5em;
		background: #888;
	}
	.blog-categories .categories-list > li > a {
		color: #6d6d6d;
		line-height: 1.3em;
	}

.blog .large-image {
	display: block;
	width: 100%;
	height: auto;
}
.blog.index .entry.list {
	position: relative;
	clear: both;
	padding-left: 260px;
	min-height: 240px;
	margin-bottom: 25px;
}
.blog.index .thumbnail {
	position: absolute;
	left: 0; top: 0;
}
.blog.index .entry.full {
	position: relative;
}

.blog.index .figure {
	position: relative;
}
	.blog.index .main .figure .category {
		bottom: 20px;
		top: auto;
		width: auto;
		padding-left: 20px;
	}

/* visually hide Publish Date on blog index */
.blog.index .blog-date-published {
	border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px;
}

.main .entry .category {
	background: #498564;
	background: url(../../img/ribbon-teal.png) right top no-repeat transparent;
	color: #fff;
	padding: 10px 30px 20px 10px;
	margin: 0;
	width: 200px;
	position: relative;
	font-weight: bold;
	font-size: 15px;
	line-height: 1;
	white-space: nowrap;
	text-overflow: ellipsis;
	text-transform: uppercase;
	overflow: hidden;
	position: absolute;
		top: 190px;
		left: 0;
}

.blog .entry .more {
	text-transform: uppercase;
	color: #99c221;
	white-space: nowrap;
}
	.blog .entry .more:after {
		content: none;
		display: none;
	}
	.blog .entry .more:before { 
		content: "\003E\003E";
		padding-left: .25em;
	}
.blog .back {
	clear: both;
}

.blog-banners {
	margin: 0 0 0px 0;
	padding: 10px 0;
	border-top: 1px solid #c0beb2;
}
	.blog-banners a {
		display: block;
		margin-bottom: 10px;
	}
	.blog-banners a:hover {
		-moz-box-shadow: 0 0 5px #666; -webkit-box-shadow: 0 0 5px #666; -ms-box-shadow: 0 0 5px #666; -o-box-shadow: 0 0 5px #666; box-shadow: 0 0 5px #666;
	}
	.blog-banners img {
		width: 100%;
		height: auto;
	}

.blog-archive {
	margin: 15px 0;
	padding: 15px 0 0 0;
	border-top: 1px solid #c0beb2;
}
.blog-archive select {
	width: 100%;
}


	.entry-footer {
		margin: 40px 0 10px 0;
		padding: 5px 0 0 0;
		border-top: 1px dotted #666;
		border-bottom: 1px dotted #666;
	}
		.blog.index .entry-footer {
			margin-bottom: 40px;
		}
		.entry-footer p.category {
			margin: 0 0 0.5em 0;
		}
	.comment {
		margin: 0 80px 10px 0;
		padding: 10px;
		background: #f3f3f3;
	}
	.comment.alt {
/* 		background: transparent; */
	}
	.comment.author {
		background: #f6ecda;
	}
	.comment .body {
		font-size: 1.1em;
		line-height: 1.3em;
		border-bottom: 1px dotted #666;
		padding-bottom: 5px;
		margin-bottom: 5px;
	}
	.comment .attr {
		margin: 0;
	}
	
	.comment-form {
		margin: 0px 80px 10px 0;
		padding: 10px 0 0 0;
	}
	.comment-form input {
		display: block;
		clear: left;
	}
	.comment-form label {
		font-size: 10px;
		width: auto;
	}
	.comment-form textarea {
		display: block;
		height: 80px;
		width: 100%;
		font-family: Arial, Helvetica, sans-serif;
	}


/* !Site Map */
.sitemap .main ul.nav_1 {
	margin-left: 0;
	list-style: none;
	padding: 0;
}
	.sitemap .main ul.nav_1 a {
		font-weight: bold;
	}
	
	.sitemap .main ul.nav_1 ul {
		font-size: inherit;
		list-style: none;
		margin-left: 1em;
		padding: 0;
	}
	.sitemap .main ul.nav_1 ul a {
		font-weight: normal;
	}

