/* ----------------- Header Image ----------------- */

#page-header, .page-cover-image {
	position: relative;
	z-index: 2;
	overflow: hidden;
	margin-bottom: 1.5em;
}
.container.full-width #page-header,
.container.full-width .page-cover-image .cover-image {
	margin-left: -20px;
	margin-right: -20px;
}
@media (max-width: 767px) {
	.container.full-width #page-header,
	.full-width .page-cover-image .cover-image {
		margin-left: -20%;
		margin-right: -20%;
	}
}
@media (min-width: 1288px) {
	.container.full-width #page-header,
	.container.full-width .page-cover-image {
		margin-left: -40px;
		margin-right: -40px;
	}
}
#page-header .cover-image,
.page-cover-image .cover-image {
	display: block;
	position: relative;
}
#page-header .cover-image img,
.page-cover-image .cover-image img {
	display: block;
	width: 100%;
}
#page-header .cover-image .cover-snippet,
.page-cover-image .cover-snippet {
	position: absolute;
	left: 0;
	right: 0;
	padding: 0 30px;
	text-align: center;
	color: #fff;
	font-family: calluna, serif;
	-webkit-text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.7);
	-moz-text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.7);
	text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.7);
}
.page-cover-image .cover-snippet p {
	margin: 20px 0;
}
#page-header .cover-image .cover-snippet {
	top: 50%;
	margin-top: -40px;
	font-size: 40px;
}
.page-cover-image .cover-snippet {
	bottom: 0;
	background: rgba(0, 0, 0, 0.7);
}
@media (max-width: 767px) {
	#page-header .cover-image .cover-snippet,
	.page-cover-image .cover-image .cover-snippet {
		font-size: 20px;
	}
}
#page-header .cover-text,
.page-cover-image .cover-text {
	padding: 10px 10px 15px 10px;
	text-align: center;
	background: #000 url(../images/subnav-zigzag.png) repeat-x bottom center;

	background: #000;
	-webkit-mask: conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) 50%/20px 100%;
	mask: conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) 50%/20px 100%;

	color: #fff;
	font-size: 18px;
}


#page-header .cover-text h2, #page-header .cover-text h3,
.page-cover-image .cover-text h2, .page-cover-image .cover-text h3 {
	color: #000;
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
	font-size: 36px;
	line-height: 110%;
	margin-bottom: 0.5em;
}
#page-header .cover-text h3,
.page-cover-image .cover-text h3 {
	font-size: 28px;
}
#page-header .cover-text h3 small,
.page-cover-image .cover-text h3 small {
	color: #000;
}
#page-header .cover-text p,
.page-cover-image .cover-text p {
	margin-top: 15px;
	margin-bottom: 15px;
}


.border-zigzag {
	border: none;
	padding: 10px 0 20px 0;
	-webkit-mask: conic-gradient(from -45deg at bottom, #0000, #fff 1deg 89deg, #fff0 90deg) 50% / 20px 101%;
	mask: conic-gradient(from -45deg at bottom, #0000, #fff 1deg 89deg, #fff0 90deg) 50% / 20px 101%;
}
.border-zigzag p {
	margin-top: 5px;
	margin-bottom: 5px;
}/*
.border-zigzag .page-container {
	display: block;
	margin-top: 5px;
	margin-bottom: 10px;
}*/

/*
#page-header .cover-image + .cover-overlay + .cover-text {
	
}
*/
#page-footer {
	position: relative;
	overflow: hidden;
	background: #000;
	color: #fff;
	padding: 20px 20px 10px 20px;
	font-size: 20px;
}
#page-footer h2, #page-footer h3, #page-footer a {
	color: #fff;
}
#page-footer h2, #page-footer h3 {
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1em;
}

/* ----------------- Promotion Banners ----------------- */

#promotion-banner, .promotion-banner {
	position: relative;
	text-align: left;
	font-size: 1.643em;
	font-weight: normal;
	line-height: 1.4;
	text-shadow: 1px 1px #ccc;
	overflow: hidden;
	margin-bottom: 1.5em;
	width: 700px;
}
#promotion-banner img, #promotion-banner video,
.promotion-banner img, .promotion-banner video {
	width: 100%;
	height: auto;
	
	/*max-height: 407px;*/
		
/*	image-rendering: optimizeSpeed;			 /*					 */
/*	image-rendering: -moz-crisp-edges;		  /* Firefox			 */
/*	image-rendering: -o-crisp-edges;			/* Opera			   */
/*	image-rendering: -webkit-optimize-contrast; /* Chrome (and Safari) */
/*	image-rendering: optimize-contrast;		 /* CSS3 Proposed	   */
/*	-ms-interpolation-mode: nearest-neighbor;   /* IE8+				*/
}
#main #promotion-banner,
#main .promotion-banner {
	width: auto;
	height: auto;
	min-height: 20px;
		overflow:hidden;
}

#promotion-banner .swiper-button-next, 
.promotion-banner .swiper-button-next, 
#promotion-banner .swiper-button-prev,
.promotion-banner .swiper-button-prev {
	opacity: 0.3;
}
#promotion-banner .swiper-button-next:hover, 
.promotion-banner .swiper-button-next:hover, 
#promotion-banner .swiper-button-prev:hover,
.promotion-banner .swiper-button-prev:hover {
	opacity: 0.7;
}
#promotion-banner .swiper-button-disabled,
.promotion-banner .swiper-button-disabled {
	opacity: 0.1 !important;
}

#promotion-banner h2,
.promotion-banner h2 {
  font-size: 1.174em;
  line-height: 1;
}
#promotion-banner .content,
.promotion-banner .content {
	margin: 0;
	padding: 0;	
	position: relative;
	z-index: 1;
}
#promotion-banner .border-top,
.promotion-banner .border-top {
	position: absolute;
	z-index: 2;
	overflow: hidden;
	top: 0;
	left: 0;
	width: 100%;
	height: 10px;
	background: url(../images/bg_zigzags.png) repeat-x -10px bottom;	
}
#promotion-banner .border-bottom,
.promotion-banner .border-bottom {
	position: absolute;
	z-index: 2;
	overflow: hidden;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 10px;
	background: url(../images/bg_zigzags.png) repeat-x 0px top;
}

/* Swiper*/
#promotion-banner .swiper-wrapper, #promotion-banner .swiper-slide,
.promotion-banner .swiper-wrapper, .promotion-banner .swiper-slide {
	height: auto;
}
#promotion-banner .swiper-container .swiper-slide, 
.promotion-banner .swiper-container .swiper-slide, 
#promotion-banner .swiper-button-next, 
.promotion-banner .swiper-button-next, 
#promotion-banner .swiper-button-prev,
.promotion-banner .swiper-button-prev {
	display: none;
}
#promotion-banner .swiper-container .swiper-slide:first-child, 
.promotion-banner .swiper-container .swiper-slide:first-child, 
#promotion-banner .swiper-container-horizontal .swiper-slide,
.promotion-banner .swiper-container-horizontal .swiper-slide,
#promotion-banner .swiper-container-horizontal .swiper-button-next, 
.promotion-banner .swiper-container-horizontal .swiper-button-next, 
#promotion-banner .swiper-container-horizontal .swiper-button-prev,
.promotion-banner .swiper-container-horizontal .swiper-button-prev {
	display: block;
}
#promotion-banner .swiper-button-next.swiper-button-disabled, #promotion-banner .swiper-button-prev.swiper-button-disabled,
.promotion-banner .swiper-button-next.swiper-button-disabled, .promotion-banner .swiper-button-prev.swiper-button-disabled {
	pointer-events: auto;
}
#promotion-banner .swiper-slide a,
.promotion-banner .swiper-slide a {
	display: block;
}
#promotion-banner .swiper-slide video,
.promotion-banner .swiper-slide video {
	background-color: transparent;
}
#promotion-banner .swiper-slide video, #promotion-banner .swiper-slide video.loading,
.promotion-banner .swiper-slide video, .promotion-banner .swiper-slide video.loading {
	transition: opacity 1s;
	opacity: 0.1;
}
#promotion-banner .swiper-slide video.playing,
.promotion-banner .swiper-slide video.playing {
	opacity: 1;
}

/* Ratio */
#promotion-banner .swiper-container .image-container, #promotion-banner .video-container,
.promotion-banner .swiper-container .image-container, .promotion-banner .video-container {
	height: 0;
	padding-bottom: 36.66666%;
	position: relative;
	background: #fff;
}
#promotion-banner .swiper-container .image-container img, #promotion-banner .swiper-container .video-container video, #promotion-banner .video-container video,
.promotion-banner .swiper-container .image-container img, .promotion-banner .swiper-container .video-container video, .promotion-banner .video-container video {
	/* Make video to at least 100% wide and tall */
	min-width: 100%; 

	/* Setting width & height to auto prevents the browser from stretching or squishing the video */
	width: auto;
	height: auto;

	/* Center the video */
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	
	object-fit: cover;
}
#promotion-banner .swiper-container .image-container img,
.promotion-banner .swiper-container .image-container img {
	max-height: 100%; 
}
#promotion-banner .swiper-container .video-container video,
.promotion-banner .swiper-container .video-container video {
	min-height: 100%;
	z-index: 20;
}
/* mobile */
@media (max-width: 767px) {
	#main #promotion-banner,
	#main .promotion-banner.scale {
		margin-top: -28px;
		margin-left: -15px;
		margin-right: -15px;
	}
	#main #promotion-banner .image-container.scale-mobile,
	#main .promotion-banner.scale .image-container.scale-mobile,
	#main #promotion-banner .video-container.scale-mobile,
	#main .promotion-banner.scale .video-container.scale-mobile {
		margin-left: -25%;
		margin-right: -25%;
	}
	#promotion-banner .swiper-container .image-container, #promotion-banner .video-container,
	.promotion-banner.scale .swiper-container .image-container, .promotion-banner.scale .video-container {
		padding-bottom: 50%;
	}
}



/* ----------------- Blocks ------------------ */

.contentblock {
	padding: 20px;
	background: #F5F5F5;
	
	border: 1px solid #fff;
		
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	
	-moz-box-shadow: 1px 1px 4px #ccc;
	-webkit-box-shadow: 1px 1px 4px #ccc;
	box-shadow: 2px 2px 4px #ccc;
	
	margin: 1em 0;
}
.form-container .intro, .contentblock .intro {
	margin-top: 0;
	margin-bottom: 1em;
	padding: 16px 20px;
	background: #F5F5F5;
}
.contentblock .intro {
	padding: 0;
}
.form-container h3 {
	border-bottom: 1px solid #ccc;
	padding-bottom: 6px;
}

/* ----------------- Content ------------------ */

#content blockquote {
	font-family: calluna, serif;
	font-size: 115%;
	font-style: italic;
	margin: 1em 0;
	padding-left: 3em;
	padding-right: 2em;
	line-height: 1.45;
	position: relative;
	color: #7a7a7a;
}

#content blockquote:before {
	display: block;
	content: "\201C";
	font-size: 80px;
	position: absolute;
	left: 0;
	top: -20px;
	color: #7a7a7a;
}
#content blockquote cite {
	color: #999999;
	font-size: 14px;
	display: block;
	margin-top: 5px;
}
#content blockquote cite:before {
	content: "\2014 \2009";
}
#content blockquote p {
	margin: 0 0 0.5em;
}


.header {
	font-size: 24px;
	font-family: calluna, serif;
	line-height: 28px;
}
/*
#content .header {
	margin-bottom: 2em;
}
*/
.header strong {
	font-weight: 600;
}
.header.largetext {
	font-size: 1.615em;
	line-height: 1.231em;
}
.header.introtext {
	font-size: 22px;
	line-height: 30px;
	color: #666;
	margin-bottom: 20px;
}
.header.introtext p {
		margin-bottom: 30px;
}
.header.introtext a {
	text-decoration: none;
	border-bottom: 1px solid #222;
	border-bottom-color: rgba(0, 0, 0, 0.25);
}
.header.introtext a:hover {
	text-decoration: none;
	color: #000;
	border-bottom-style: dotted;
}
@media (max-width: 767px) {
	.header {
		font-size: 20px;
		line-height: 26px;
	}
	.header, .header.introtext {
		font-size: 18px;
		line-height: 24px;
	}
}
.intro {
	font-size: 1.5em;
	line-height: 1.25em;
	font-family: calluna, serif;
}
.header p, .intro p {
	margin-bottom: 15px;
}
.heading {

	font-family: calluna, serif;
}
.content h1, .content h2, .content h3 {
	font-family: calluna, serif;
}

.list-item .item-image {
	position: relative;
}
.list-item .item-image img {
	width: 100%;
}


/* content */


.page-images  {
	clear: both;
	margin-top: 20px;
	margin-bottom: 20px;
}
.page-images img {
	max-width: 100%;
	height: auto;
}
.page-images .list-item {
	position: relative;
	padding-bottom: 10px;
}
.page-images .list-item:before, .page-images .list-item:after { content: ""; display: table; }
.page-images .list-item:after { clear: both; }
.page-images .list-item hr {
	margin: 0 15px;
}

.page-images .content {
	margin-top: 0;
}
.page-images .content h3 {
	margin: 0 0 6px 0;
	line-height: 1.143em;
	color: #70a;
	font-family: calluna, serif;
}
.page-images .content h3 a {
	color: #70a;
}
.page-images .list-item .image {
	float: left;
	margin-bottom: 10px;
}
.page-images .list-item .image a {
	vertical-align: bottom;
}

.page-images .list-item .image a:hover {
	opacity:0.7;
	filter:alpha(opacity=70);
}
.page-images .list-item .image img {
	display: block;
	border: 1px solid #b3b3b3;
}

/* Table of contents */
.toc {
	margin: 2em 0 0 0;
}
.toc > h2 {
	margin: 0 !important;
	font-size: 20px;
	font-family: Roboto, sans-serif;
	padding: 10px 20px;
	border: 1px solid #ccc;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	padding: 10px 20px;
}
.toc .toc-links {
	margin: 0 0 4em 0;
	border: 1px solid #ccc;
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	border-top: none;
	overflow: auto;
	max-height: 400px;
	transition: max-height 0.5s;
}
.toc .toc-links:has(.list-style-1) {
	/*border: none;*/
}
.toc .toc-links ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
.toc .toc-links li {
	margin: 0.3em 0 !important;
	padding: 0.25em 0 0.25em 20px;
	position: relative;
}
.toc .toc-links li a {
	color: inherit;
}
.toc .toc-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  background: none;
  border: 0;
  padding: 0;
  font: inherit;
  cursor: pointer;
}
.toc .toc-title { flex: 1; text-align: left; }

.list-style-1 {
	padding: 20px;
}
.list-style-1 ul {
	padding: 0;
	margin: 0;
}
.list-style-1 > ul {
	border-left: 1px solid #eee;
}
.list-style-1 li:before {
	content: "";
	position: absolute;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #eee;
	left: -4px;
	top: 1em;
	transform: translateY(-50%);
}
.list-style-1 li li:before {
	width: 10px;
	height: 2px;
	border-radius: none;
	left: -20px;
}
.list-style-1 li li li:before {
	left: -40px;
}

@media (min-width: 991px) {
	.list-style-1 {
		font-size: 1.15em;
	}
}


/* Heading + toggle button */

.toc .toc-toggle{
  display:flex; align-items:center; justify-content:space-between;
  width:100%; background:none; border:0; padding:0; font:inherit; cursor:pointer;
}
.toc .toc-title { flex: 1; text-align: left; }

/* Thin CSS chevron using one arm (no X) */
.toc .chevron{
  position: relative;
  display: inline-block;
  width: 0.9em;
  height: 0.9em;
  margin-left: .5rem;
}
.toc .chevron::before{
  content:'';
  position:absolute;
  top:50%; left:50%;
  width:0.6em; height:0.6em;
  border-style: solid;
  border-width: 0.15em 0.15em 0 0;   /* one arm */
  border-color: currentColor;         /* inherits text color */
  transform: translate(-50%, -50%) rotate(-45deg); /* down by default */
  transition: transform .2s ease;
}

/* Collapsed state: point right */
.toc .toc-toggle[aria-expanded="false"] .chevron::before{
  transform: translate(-50%, -50%) rotate(135deg);
}

/* (Optional) reduced motion */
@media (prefers-reduced-motion: reduce){
  .toc .chevron::before{ transition: none; }
}

.toc .toc-links[aria-hidden="true"] { max-height: 0; }



.notfound {
	display: flex;flex-direction: row;align-items: center;
}
.notfound .image img {
	margin-right: 1em;
	border-radius: 2px;
	border: 1px solid #ccc;
}

/* ----------------- Product Headers ----------------- */

.titlebar {
	font-size: 30px;
	line-height: 30px;
}
@media (min-width: 768px) {
	.titlebar {
		display: block;
		margin-bottom: 15px;
		padding: 7px 10px;
		color: #ffffff;
		font-weight: normal;
		background: #8347e3;
		background: -moz-linear-gradient(left,  #8347e3 0%, #5b00a9 100%);
		background: -webkit-gradient(linear, left top, right top, color-stop(0%,#8347e3), color-stop(100%,#5b00a9));
		background: -webkit-linear-gradient(left,  #8347e3 0%,#5b00a9 100%);
		background: -o-linear-gradient(left,  #8347e3 0%,#5b00a9 100%);
		background: -ms-linear-gradient(left,  #8347e3 0%,#5b00a9 100%);
		background: linear-gradient(to right,  #8347e3 0%,#5b00a9 100%);

		font-size: 28px;
	}
}
@media (max-width: 479px) {
	.titlebar {
		font-size: 28px;
	}
}
.titlebar.light {
	background: var(--ve-feature-bg-color);
	color: #333;
}
.titlebar input {
	color: #666;
	width: auto;
	padding: 3px;
}
.sortbar {
	position: relative;
	background-color: #f2f2f2;
	margin: 10px 0 12px 0;
	padding: 3px;
	font-size: 15px;
	line-height: 18px;
	text-align: left;
	z-index: 99;
}
.sortbar a {
	color: #666;
}
.sortbar form#sortform {
	display: inline-block;
	margin: 0;
	padding: 3px 0 3px 4px;
}
.sortbar form#sortform label {
	float: none;
	clear: none;
	margin: 0 6px 0 0;
	padding: 0;
	width: auto;
	font-weight: normal;
}
.sortbar form#sortform select {
	width: auto;
	height: auto;
	border: 1px solid #ccc;
}
@media (max-width: 479px) {
	.sortbar {
		margin-left: -10px;
		margin-right: -10px;
		border-radius: 0;
		padding-left: 5px;
		padding-right: 5px;
	}
}
.sortbar .layouts {
	float: right;
	padding: 3px;
	line-height: 30px;
}
.sortbar .layouts .btn {
	padding: 7px 12px 6px 12px;
	background: none;
	background: #4bc0b9;
	color: #fff;
	border: 1px solid #54a79b;
}
.sortbar .layouts .btn.btn-filter {
	padding-left: 18px;
	padding-right: 18px;
}
.sortbar .layouts .btn:hover {
	opacity: 0.9;
}
.sortbar .layouts .btn:focus {
	outline: none;
}
.sortbar .layouts .btn .text {
	padding-right: 12px;
	margin-left: -3px;
}
.sortbar .layouts a.icn_list, .sortbar .layouts a.icn_grid {
	position: relative;
	overflow: hidden;
	display: inline-block;
	width: 36px;
	height: 23px;
	text-indent: -999em;
	vertical-align: middle;
	opacity:1;
	filter:alpha(opacity=100);
}
.sortbar .layouts a:hover {
	opacity:0.7;
	filter:alpha(opacity=70);
}
.sortbar .layouts .icn_list {
	background: url(../images/icon_list.png) no-repeat left top;
}
.sortbar .layouts .icn_grid {
	background: url(../images/icon_list.png) no-repeat right top;
}
.sortbar .layouts a.icn_list.selected {
	background-position: left bottom !important;
}
.sortbar .layouts a.icn_grid.selected {
	background-position: right bottom !important;
}
.sortbar .layouts a.layout-all {
	text-indent: 0;
	width: auto;
	padding: 0 1px;
}

.sortbar .layouts a:focus {
	outline: none;
}
.sortbar .layout-buttons {
	display: inline-block;
	background: #fff;
	margin: 0 0 0 10px;
	position: relative;
	overflow: hidden;
	font-size: 0;
	vertical-align: middle;
}
.sortbar .layout-buttons a, .sortbar .layout-buttons a:hover, .sortbar .layout-buttons a:active , .sortbar .layout-buttons a:visited {
	text-decoration: none;
}

.sortbar .layout-buttons .icon {
	display: inline-block;
	min-width: 30px;
	margin: 0; 
	vertical-align: bottom;
	padding: 6px 10px 5px 10px;
	font-size: 20px;
	line-height: 22px;
	font-weight: normal;
	cursor: pointer;
	
	background: #f6f6f6;
	border: 1px solid #54a79b;
	color: #4bc0b9;
}

.sortbar .layout-buttons .icon.selected {
	background: #4bc0b9;
	border: 1px solid #54a79b;
	color: #fff;
}
.sortbar .layout-buttons .icon:hover {
	opacity:0.7;
}
.sortbar .layout-buttons .icon:before {
	opacity:0.9;
}
.sortbar .layout-buttons .icon:hover:before {
	opacity:1;
}
	
.sortbar select {
	padding: 7px 3px;
}
.sortbar input#btn-go {
	padding: 6px 10px;
	line-height: 18px;
	color: #fff;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	cursor: pointer;
	margin-left: 3px;
	
	background: #8246E2;
	background: -moz-linear-gradient(top,  #b973f4 0%, #8946e3 50%, #763ada 51%, #783cda 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#b973f4), color-stop(50%,#8946e3), color-stop(51%,#763ada), color-stop(100%,#783cda));
	background: -webkit-linear-gradient(top,  #b973f4 0%,#8946e3 50%,#763ada 51%,#783cda 100%);
	background: -o-linear-gradient(top,  #b973f4 0%,#8946e3 50%,#763ada 51%,#783cda 100%);
	background: -ms-linear-gradient(top,  #b973f4 0%,#8946e3 50%,#763ada 51%,#783cda 100%);
	background: linear-gradient(to bottom,  #b973f4 0%,#8946e3 50%,#763ada 51%,#783cda 100%);
	border: 1px solid #51309c;
}
.sortbar input#btn-go:hover {
	opacity:0.7;
	filter:alpha(opacity=70);
}

.sortbar .dropdown .btn {
	background: #4bc0b9;
	color: #fff;
	border: 1px solid #54a79b;
	padding: 7px 42px 6px 12px;
}
.sortbar .dropdown .btn .selector {
	background: #54a79b;
	position: absolute;
	top: 0;
	right: 0;
	width: 30px;
	height: 100%;
	border-top-right-radius: 4px;
	border-bottom-right-radius: 4px;
}
.sortbar .dropdown .btn .selector .caret {
	margin-top: 12px;
}
.sortbar .dropdown-menu > li > a {
	padding: 3px 15px;
}
.sortbar .dropdown-menu > .active > a, .sortbar .dropdown-menu > .active > a:hover, .sortbar .dropdown-menu > .active > a:focus {
	background: #efefef;
	color: #111;
}


#display-filters {
	margin-bottom: 10px;
	text-align: left;
}
#display-filters .filters {
	font-size: 14px;
	padding: 1px 3px;
	border: 1px solid #EEE;
}
#display-filters .filters .label {
	margin-right: 3px;
}
#display-filters .filters a {
	margin: 1px;
	padding: 7px 30px 7px 8px;
	text-decoration: none;
	display: inline-block;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	position: relative;
	background-color: rgba(255,255,255,.5);
	border: 1px solid #54a79b;
	color: #54a79b;
}
#display-filters .filters a:after {
	font: normal normal normal 14px/1 "Font Awesome 6 Pro", FontAwesome;
	content: "\f057";
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	position: absolute;
	right: 0;
	top: 0;
	margin: 8px 8px;
	font-size: 18px;
	opacity: 0.5;
}
#display-filters .filters a:hover {
	text-decoration: none;
	opacity: 0.7;
}
#display-filters .filters a:hover:after {
	opacity: 1;
}
#product #display-filters {
	margin-bottom: 6px;
	background-color: #93d7e2;
}
#product #display-filters .filters {
	color: #000;
}
#product #display-filters .filters a {
	color: #fff;	font-size: 14px;
}



/* ----------------- Category List ----------------- */

.category-list {
	margin: 0 -5px;
}
.category-list h3 {
	display: block;
	font-size: 24px;
	line-height: 26px;
	color: #666666;
		white-space: nowrap;
		overflow: hidden;
		margin-bottom: 4px;	
}
.category-list h3 a {
	color: #666666;
}
.category-list ul{
	list-style: none;
	margin: 0;
	padding: 0;
}
.category-list ul li {
	position: relative;
	float: left;
	list-style: none;
	padding: 5px;
	/* half width */
	width: 50%;
	margin: 0 0 10px 0;
}
.category-list ul li.wide {
	width: 100%;
}
.category-list ul li.wide a.link {
	padding-bottom: 40%;
}
.category-list ul li.wide img {
	margin-top: -10%;
}
.category-list ul li a.link {
	display: block;
	position: relative;
	text-decoration: none;

	/* square responsive image height */
	height: 0;
	padding-bottom: 60%;
	overflow: hidden;
}
.category-list ul li a.link span.text {
	background-color: #000;
	background-color: rgba(0, 0, 0, 0.60);
	display: block;
	position: absolute;
	bottom: 0px;
	left: 0;
	padding: 0;
	margin: 0;
	width: 100%;
	min-height: 62px;
	color: #fff;
}
.category-list ul li a.link:hover span.text {
	background-color: #000;
	background-color: rgba(0, 0, 0, 0.80);
}
.category-list ul li a.link span.text span {
	display: block;
	font-size: 13px;
	line-height: 1.3em;
	padding: 12px 4px 12px 10px;
	min-height: 54px;
	overflow: hidden;
}
@media (min-width: 991px) {
	.category-list ul li a.link span.text span {
		font-size: 16px;
	}
}
.category-list ul li img {
	width: 100%;
	height: auto;
	background: #f6f6f6;
}

.category-list ul li a .image {
	-webkit-transition: opacity 0.3s;	
	-moz-transition: opacity 0.3s;	
	transition: opacity 0.3s;	
}
.category-list ul li a:hover .image {
	opacity: 0.7;
}
.category-list ul li a:active .image {
	filter: brightness(70%);
}
@media (max-width: 991px) {
	.category-list h3 {
		font-size: 22px;
	}
}
@media (max-width: 479px) {
	.category-list ul li {
		width: 100%;
	}
	.category-list ul li a.link, .category-list ul li.wide a.link {
		padding-bottom: 60%;
	}
	/*
	.category-list ul li img, .category-list ul li.wide img {
		margin-top: -5%;
	}
	*/
}

/* sub category  list*/

#sub-cat-listing article {
	text-align: center;
}

#sub-cat-listing h1 {
		display: inline-block;
		text-align: center;
		padding: 7px;
		border-top: 1px solid #333;
		border-bottom: 1px solid #333;
		margin: 0.25em 0 0.5em 0;
}
#sub-cat-listing .category-list .list-item a {
	display: block;
}
#sub-cat-listing .category-list .list-item a:hover {
	text-decoration: none;
}
#sub-cat-listing .category-list .list-item .image {
	position: relative;
	padding-bottom: 100%;
	display: block;
	background: #fff url(/images/site/product-placeholder-thumb.jpg) no-repeat center center;
	background-size: cover;
	height: 0;
	
	float: none;
	width: auto;
	max-width: none;
	
}
#sub-cat-listing .category-list .list-item .image img {
	vertical-align: bottom;
	position: absolute;
	left: 0;
	top: 0;
	margin: 0;
	border: 1px solid #e6e6e6;
	z-index: 20;
}
#sub-cat-listing .category-list .list-item .label {
	display: block;
	height: 70px;
	margin: 0;
	padding: 0;
	border: 1px solid #e6e6e6;
	border-top: none;
	white-space: normal;
	font-size: 19px;
	line-height: 21px;
}
#sub-cat-listing .category-list .list-item .label span {
	height: 100%;
}

.category-list .flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
		flex-flow: row wrap;
}
.category-list .flex .list-item {
	display: inline-block;
	width: 33.3333%;
}
@media (max-width: 767px) {
	#sub-cat-listing .category-list .list-item .label {
		font-size: 18px;
	}
}
@media (max-width: 991px) {
	.category-list .flex .list-item {
		width: 50%;
	}
}

#cat_extra_content {
	margin: 10em 0 2em 0;
}

#related-articles.grid {
	text-align: center;
	margin: 1em 0;
}
#related-articles.grid h2 {
	display: inline-block;
	padding: 7px;
	border-top: 1px solid #333;
	border-bottom: 1px solid #333;
	margin: 1em 0;
}

#related-articles.grid .related-articles {
	margin: 0 -5px;
	position: relative;
	overflow: hidden;
	display: flex;
	align-content: center;
	justify-content: space-around;
	flex-flow: row wrap;
	text-align: center;
}
#related-articles.grid .related-article {
	padding: 5px;
	display: flex;
}
#related-articles.grid .related-article .related-item {
	width: 100%;
	height: 100%;
	background: #f2f2f2;
	padding: 10px;
}
#related-articles.grid .related-article .related-item h3 {
	padding: 10px;
	width: 100%;
	min-height: 100px;
	border: 1px solid #ccc;
	text-align: center;
display: flex;
	justify-content: center;
	align-items: center;
}
#related-articles.grid .related-article .related-item p {
	font-size: 12px;
}
#related-articles.grid .related-article .related-item h3 a {
	display: block;
	/*padding: 5px;*/
	/*margin: 0;*/
	font-size: 18px;
	color: #333;
	vertical-align: middle;
	/*height: 100%;*/
}
#related-articles.grid .related-article .content {
	display: none;
}



/* ----------------- Product List ----------------- */
#product-list {
	margin-bottom: 5em;
}

#product-listing {
	clear: both;
	margin-bottom: 3em;
}
#product-listing h2 {
	font-size: 24px;
	color: #111;
	margin-top: 1em;
	margin-bottom: 0.5em;
	padding: 8px 0;
	border-bottom: 1px solid  #ddd;
	border-top: 1px solid  #ddd;
}
@media (min-width: 768px) {
	#product-listing h2 {
		font-size: 26px;
	}
}
#product-listing hr {
	clear: both;
}
#product-listing hr.emblem {
	margin-top: 6em;
	margin-bottom: 6em;
}
#product-listing .header {
	margin-top: 20px;
	margin-bottom: 20px;
}
#product-listing .header .header-description {
	margin-bottom: 30px;
}
#product-listing .header .header-description b, #product-listing .header .header-description strong {
	font-weight: 600;
}
#product-listing #content {
	position: relative;
	/*padding-bottom: 0;*/
}
@media (max-width: 767px) {
	#main.pull-right {
		float: none  !important;
	}
}

.product-list:before, .product-list:after { content: ""; display: table; }
.product-list:after { clear: both; }  

.product-list {
	margin-left: -10px;
	margin-right: -10px;
		/*margin-bottom: 5em;*/
}
.product-list .list-item {
	position: relative;
	padding-bottom: 25px;
	padding-left: 10px;
	padding-right: 10px;
	margin-bottom: 25px;
	/*margin-right: 10px;*/
	background: url(../images/hr_dots.gif) repeat-x left bottom;
}
.product-list .list-item:before, .product-list .list-item:after { content: ""; display: table; }
.product-list .list-item:after { clear: both; }

.product-list .list-item:last-child {
	background: none;
}
.product-list .list-item h3 {
	margin: 0 0 8px 0;
	color: #70a;
	font-family: calluna, serif;
}
@media (max-width: 767px) {
	.product-list .list-item h3 {
		font-size: 19px;
	}
}
.product-list .list-item h3 a {
	color: #70a;
}
.product-list .list-item .label {
	text-decoration: underline;
}
.product-list .list-item .image {
	position: relative;
	float: left;
	width: 45%;
	margin-right: 10px; border: 1px solid #ccc;
}
.product-list .list-item a:hover,
.product-list .list-item a:focus {
	text-decoration: none;
}
.product-list .list-item a:hover .item-title {
	/*border-bottom: 1px solid rgba(0,0,0,0.3);*/
	background-size: 1px 1em;
	box-shadow:
		inset 0 -0.15em white,
		inset 0 -0.175em #8a5da0;
	display: inline;
}
.product-list .list-item .image .item-image {
	display: block;
	vertical-align: bottom;
	background: #fff url(/images/site/product-placeholder-thumb.jpg) no-repeat center center;
	background-size: cover;
	height: 0;
	padding-bottom: 100%;
	-webkit-transition: opacity 0.3s;
	-moz-transition: opacity 0.3s;
	transition: opacity 0.3s;
}
.product-list .list-item .image img {
	display: block;
	vertical-align: bottom;
	width: 100%;
	height: auto;
	min-height: 80px;
	position: relative;
	z-index: 20;	
}
.list .product-list .list-item .content {
	display: inline-block;
	padding: 0 0 10px 0;
	line-height: 20px;
		max-width: 50%;
}
.list .product-list .list-item .image {
	float: left;
	width: 33.333333%;
	min-width: 150px;
	max-width: 360px;
			display: inline-block;
}
.product-list .list-item a:hover .image .item-image {
	opacity: 0.7;
}
.product-list .list-item a:active .image .item-image {
	filter: brightness(70%);
}
@media (max-width: 359px) {
	.list .product-list .list-item .content {
		width: 100%;
		max-width: none;
	}
	.list .product-list .list-item .image {
		width: 100%;
		margin: 0 0 10px 0;		
		max-width: none;
	}
}
.product-list .list-item .content p {
	margin: 0;
}
.product-list .list-item .content .description {
	margin-bottom: 6px;
	color: #333;
	font-size: 14px;
}

.product-list .list-item .price {
	font-size: 20px;
	color: #70a;
	font-family: calluna, serif;
	font-weight: normal;
}
.product-list .list-item .tax {
	font-size: 12px;
	font-weight: normal;
	color: #999;
}
.product-list .list-item .content .equal-height {
	min-height: 120px;
}
.list .product-list .list-item .content .equal-height {
	min-height: 0 !important;
	height: auto !important;
}
.product-list .list-item .btn {
	margin-top: 10px;
	padding: 3px 20px;
}
.grid .product-list .list-item .btn {
	display: block;
}
.product-list .list-item.sample-tag .image {
	overflow: hidden;
}
.product-list .list-item.sample-tag .image:after {
	content: "+Sample";
	position: absolute;
	z-index: 20;
	background: #f69;
	width: 100%;
	text-align: center;
	color: #fff;
	padding: 4px 0;
	bottom: 6%;
	right: 12%;
	margin-right: -50%;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	pointer-events: none;
	
	font-size: 12px;
	font-family: Roboto, sans-serif;
}
.product-list .list-item.sample-tag:hover .image:after {
	opacity: 0.75;
}
@media (min-width: 768px) {
	.product-list .list-item .content .sale-price {
		margin-top: 10px;
	}
	.product-list.grid .list-item .content .sale-price {
		margin-top: 5px;
	}
	.product-list.list .list-item .content {
		padding-bottom: 40px;
	}
	.product-list.list .list-item .content .sale-price {
		position: absolute;
		bottom: 15px;
		right: 10px;
	}
}
.product-list .sale-price {
	line-height: 18px;
	font-size: 14px;
	font-weight: 500;
	color: #111;
}
.sale-price .original-price {
	color: #666;
	text-decoration: line-through;
	font-weight: 200;
}



/* Product Image Background */

.product-display .product-image img, .product-display .product-thumbs ul.thumbs li img, 
.product-list .list-item .image img.lazyload.loaded, .product-list .list-item .image img:not(.lazyload),
.swiper-carousel .item img.swiper-lazy.swiper-lazy-loaded, .swiper-carousel .item img:not(.swiper-lazy),
.cart-items-list img,
#checkout_table .products img
{
	background: #fff;
	background: -moz-radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 56%, rgba(204,204,204,1) 100%);
	background: -webkit-radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 56%, rgba(204,204,204,1) 100%);
	background: radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 56%, rgba(204,204,204,1) 100%);
}



/* Product Shortlist Toggle */

.shortlist-toggle {
	display: none; /*display: inline-block;*/

	padding: 0;
	background: none;
	text-align: left;
	border: none;
	
	overflow: hidden;
	z-index: 30;

	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-decoration: none;
	vertical-align: middle;

	cursor: pointer;

	-webkit-transition: all 0.2s ease;
	transition: all 0.2s ease;
	
}
.favs-loaded .shortlist-toggle {
	display: block;
}
.shortlist-toggle:hover {
	text-decoration: none;
	opacity: 1;
}
.shortlist-toggle:before {
	margin: 0;
	font: normal normal normal 24px/1 "Font Awesome 6 Pro", FontAwesome;
	content: "\f08a";
	line-height: 24px;
	
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	
	color: #000;
	text-shadow:
		 1px  1px 0 #fff,
		-1px -1px 0 #fff,  
		 1px -1px 0 #fff,
		-1px  1px 0 #fff,
		 1px  1px 0 #fff;

	width: 36px;
	display: inline-block;
	vertical-align: middle;
}
.shortlist-toggle.added {
	opacity: 1;
	color: #4bc0b9;
}
.shortlist-toggle.added:before {
	content: "\f004";
	color: #4bc0b9 !important;
	font-weight: 900;
	-webkit-text-stroke: 1px #fff;
	text-shadow:
		 1px  1px 0 #fff,
		-1px -1px 0 #fff,  
		 1px -1px 0 #fff,
		-1px  1px 0 #fff,
		 1px  1px 0 #fff;
}

.shortlist-toggle:hover {
	opacity: 1;
}
.shortlist-toggle.loading:before {
	color: #4bc0b9;
}

/* Shortlist - Save for later buttons */

.shortlist-container {
	display: inline-block;
	font-family: Roboto, sans-serif;
	font-size: 12px;
}
.shortlist-container .shortlist-remove.removed {
	display: none;
}
.shortlist-container .shortlist-add.added {
	display: none;
}


/* Shortlist - product list */
.product-list .shortlist-toggle {
	position: absolute;
	top: 5px;
	right: 5px;
	margin: 4px;
	width: 36px;
	height: 36px;
	line-height: 36px;
	opacity: 0.25;
}
.product-list .shortlist-toggle:before,
.product-purchase .shortlist-toggle:before {
	text-align: center;
	font-size: 31px;
	margin: 0;
}
.product-list .shortlist-toggle:hover, .product-list .shortlist-toggle.added {
	opacity: 1;
}
.product-list .shortlist-toggle.loading {
	-webkit-transform:scale(1.2);
	transform:scale(1.2);
}

/* Shortlist - product detail */
.pricetag .shortlist-container {
	float: left;
	height: 57px;
	text-align: center;
	height: 57px;
	border-top: 1px solid #d5d5d5;
	border-bottom: 1px solid #d5d5d5;
	border-left: 1px solid #d5d5d5;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
	z-index: 1;
	margin-left: -79px;
	background: #fff;
}

.pricetag .shortlist-container .shortlist {
	position: relative;
	display: block;
	width: 78px;
	height: 55px;
	margin: 0;
	padding: 0;
	border: none;
	text-align: center;
	cursor: pointer;
	padding-top: 32px;
	font-family: Roboto, sans-serif;
	font-size: 13px;
	font-weight: 500;
	color: #888;
	
}
.pricetag .shortlist-container .shortlist:before {
	font: normal normal normal 24px/1 "Font Awesome 6 Pro", FontAwesome;
	content: "\f08a"; /* fa-heart-o */	
	
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	
	text-decoration: none;
	position: absolute;
	left: 28px;
	top: 7px;
	
	-webkit-transition: all 0.2s ease;
	transition: all 0.2s ease;
	
}
.pricetag .shortlist-container.loading .shortlist:before {
	-webkit-transform:scale(1.3);
	transform:scale(1.3);
	color: #4bc0b9;
}
.pricetag .shortlist-container .shortlist.shortlist-remove:before {
	content: "\f004"; /* fa-heart */
	color: #4bc0b9;
	font-weight: 900;
}
.pricetag .shortlist-container .shortlist:hover {
	opacity:0.7;
	filter:alpha(opacity=70);
}
.pricetag .shortlist-container .shortlist-remove.removed {
	display: none;
}
.pricetag .shortlist-container .shortlist-add.added {
	display: none;
}
		



/* Popup Products & Samples */

.product-list .add-sample-button {
	/*display: none;*/
	position: absolute;
	/*top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	padding: 12px;*/
	background: #4bc0b9;
	color: #fff;
	text-align: center;
	border: none;
	border-radius: 0;
	z-index: 99;
	font-family: "Montserrat", "Trebuchet MS", Helvetica, sans-serif;
	font-size: 11px;
	font-weight: 600;
	text-transform: uppercase;
	white-space: nowrap;
	border: 2px solid transparent;
	bottom: 3%;
	left: 3%;
	padding: 5px 8px 5px 35px;
	transition: all 0.3s ease;
	opacity: 0;
	background: #4bc0b9 url(../images/icon_sample-white.png) no-repeat 5px center;
	background-size: 24px;
}
.product-list .add-sample-button:hover  {
	background-color: #5CC5BF;
	color: #fff;
	border: 2px solid #fff;
}
.product-list .list-item a:hover .add-sample-button,
.product-list .list-item a:focus .add-sample-button {
	display: block;
	opacity: 1;
}
.touch-enabled .product-list .add-sample-button,
.product-list.hide-sample .add-sample-button {
	display: none !important;
}


.popup-product {
	position: relative;
	padding: 20px 20px 5px 20px;
	width: 850px;
	max-width  : 98%;
	overflow: visible; /* allow for Styled Dropdowns */
	border: 5px solid #666;
}
.popup-product.sample-options {
	width  : 620px;
	max-width  : 98%;
}
.popup-product h2 {
	margin-bottom: 10px;
			font-size: 24px;
			line-height: 26px;
			padding-right: 20px;
}
.popup-product h2 a {
	color: #111;	
}
.popup-product h2 a:hover {
	text-decoration: none;
}
.popup-product h3 {
	font-family: Roboto, sans-serif;
	font-size: 16px;
	line-height: 19px;
	margin-bottom: 0;
	color: #70a;
	font-weight: 500;
}
.popup-product .sample-title {
	position: sticky;
	top: -10px;
	z-index: 999;
	margin: -20px -20px 10px -20px;
	padding: 12px 40px 12px 55px;
	color: #fff;
	background: #4bc0b9 url(../images/icon_sample-white.png) no-repeat 12px center;
	z-index: 999;

	text-transform: uppercase;
	letter-spacing: 0.15em;
	font-size: 13px;
}
.popup-product .sku {
	font-family: Roboto, sans-serif;
	margin-bottom: 10px;
	color: #999;
	font-size: 14px;
	font-weight: 500;
	line-height: 16px;
	margin-top: -5px;
}
.popup-product .description {
	margin-bottom: 16px;
}
.popup-product .description p {
	margin-bottom: 4px;
	font-size: 14px;
	line-height: 1.2em;
}

.popup-product form.add_to_cart_form {
	padding: 0;
	z-index: 999;
}
.popup-product form .add_to_cart_btn {
	background: #ff73c5;
	padding: 0 12px;
	border: none;
	text-shadow: none;
	margin-top: 12px;
	margin-bottom: 12px;
	text-align: center;

	width: 100%;
	height: 50px;
	line-height: 50px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	color: #fff;

	font-family: Arial,Helvetica,sans-serif;
	font-size: 22px;
	font-weight: normal;
	cursor: pointer;
	white-space: nowrap;
	
	text-transform: uppercase;
	letter-spacing: 0.15em;
	font-size: 15px;
}
.popup-product form .add_to_cart_btn:hover {
	background-color: #ea62bd;
}
.popup-product form .add_to_cart_btn.added {
	background-color: #4bc0b9;
}
.popup-product form .add_to_cart_btn[disabled],
.popup-product form .btn-sample.add_to_cart_btn[disabled] {
	background: #ea62bd;
	color: #fff;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	opacity:0.7;
}

.popup-product .cart_options {
	margin-bottom: 10px;
}
.popup-product .product-display {
	margin-bottom: 16px;
}
.popup-product .product-display .product-image {
	float: none;
	padding: 0;
	width: auto;
	max-width: none;
}
.popup-product .product-display .product-image .zoom-image {
	margin: 0;
}
.popup-product .product-display .product-image a {
	margin: 0;
	border: 1px solid #ddd;
	display:block;
}
.popup-product .product-display .product-image img {
	max-width: 100%;
	height: auto;
}
.popup-product .product-display .product-thumbs {
	position: relative;
	overflow: hidden;
	float: none;
	display: block;
	max-width: none;
	width: 100%;
	margin: 0;
}
.popup-product .product-display .product-thumbs ul.thumbs {
	margin: 0 -3px;
	padding: 0;
	list-style: none;

    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    vertical-align: bottom;
    min-height: 25px;
    max-height: 124px;
    overflow: hidden !important;
	
}
.popup-product .product-display .product-thumbs ul.thumbs li {
	display: block;
	float: left;
	position: relative;
	margin: 0;
	padding: 3px;
	text-align: center;
	max-width: 25%;
	flex: 0 0 auto;
}
.popup-product .product-display .product-thumbs ul.thumbs li a {
	border: 1px solid #ddd;
}
.popup-product .product-display .product-thumbs ul.thumbs li img {
	width: 100%;
	height: auto;
	padding: 0;
	border: none;
}
.popup-product .fancybox-close-small {
	margin: 0;
}
.popup-product .leadtime {
	display: block;
	background: url(../images/icon_delivery.gif) no-repeat left center;
	margin: 10px 0 10px 0;
	padding: 10px 0 0 42px;
	height: 38px;
	line-height: 1.25em;
}

.popup-product .alert {
	border-color: #dde9ef;
	color: #666;
	padding: 15px;
}
.popup-product .footer-alert {
	margin: 10px -20px -5px -20px;
	border-left: none;
	border-right: none;
	border-bottom: none;
	padding: 12px 20px;
	border-radius: 0;
	background-color: #fff;
	border: none;
	border-top: 1px solid #ccc;
	color: #666;
}
.popup-product .footer-alert .btn {
	border: none;
	background: none;
	padding: 5px 10px;
	margin: -5px 0;
	color: #70a;
	transition: background-color 1s;
}
.popup-product .footer-alert .btn.btn-pink {
	background: #FF73C5;
	border-color: #FF73C5;
	color: #fff;
}
.popup-product .footer-alert.alert-danger {
	color: #c00;
	background: #fff;
}
.popup-product #zoom-placeholder {
	position: absolute;
	top: 10px;
	left: 10px;
	right: 10px;
	z-index: 100;
	max-height: 100%;
	padding-bottom: 100%;
	pointer-events: none;
}

.popup-product #popupZoom {
	z-index: 410;
}
.popup-product #popupZoom .mz-active  {
	background: none;
	border: 1px solid rgba(0,0,0,0.3);
}
.popup-product #popupZoom .mz-active img.image {
	opacity: 0;
}
.popup-product #popupZoom .mz-active .mz-lens img {
	opacity: 1;
}
.popup-product #popupZoom .mz-hint {
	font-size: 10px;
}

.popup-product #popupZoom .mz-figure .zoom-sample-image {
	position: absolute;
	/*
	right: -4%;
	bottom: -4%;
	width: 50%;
	height: 50%;
	*/
	bottom: 3%;
	right: 3%;
	width: 35%;
	height: 35%;
	background-repeat: no-repeat;
	background-size: cover;
	border: 1px solid rgba(255,255,255,.5);
	-webkit-box-shadow: 1px 1px 30px 5px rgba(0,0,0,0.35); 
	box-shadow: 1px 1px 30px 5px rgba(0,0,0,0.35);
	z-index: 10;
	border-radius: 50%;
}

.product-image-thumb {
	position: relative;
}
.product-image-thumb .product-option-image {
	position: absolute;
	overflow: hidden;
	bottom: 3%;
	right: 3%;
	width: 45%;
	height: 45%;
	background-repeat: no-repeat;
	background-size: cover;
	border: 3px solid rgba(255,255,255,.9);
	-webkit-box-shadow: 1px 1px 10px 5px rgba(0,0,0,0.2);
	box-shadow: 1px 1px 10px 5px rgba(0,0,0,0.2);
	z-index: 10;
}
.product-image-thumb .product-option-image img {
	width: 100%;
	height: 100%;
}

@media (max-width: 767px) {
	.popup-product .product-display {
		width: 140px;
		float: left;
	}
	.popup-product .product-display .product-thumbs {
		display: none;
	}
	.popup-product h2 {
		padding-right: 10px;
	}
	.popup-product .description {
		clear: both;
	}
	.popup-product .mz-hint {
		padding: 3px;
		bottom: 0;
	}
	.popup-product .mz-hint .mz-hint-message {
		border-radius: 3px;
		display: block;
		padding: 3px;
	}
	.popup-product .mz-active .mz-hint {
		opacity: 0;
		z-index: -1;
	}
}
@media (max-width: 479px) {
	.popup-product h2 {
		font-size: 20px;
		line-height: 22px;
	}
}


/* Product Ribbon */

	.corner-ribbon {
		position: absolute;
		top: 0;
		right: 0;
		margin: 0;
		overflow: hidden;
		z-index: 9999;
		width: 150px;
		height: 150px;
		pointer-events: none;
		font-size: 15px;
	}
	.corner-ribbon span {
		width: 200px;
		background: #e43;
		position: absolute;
		top: 25px;
		right: -50px;
		text-align: center;
		padding: 10px 0;
		line-height: 110%;
		max-height: 54px;
		letter-spacing: 1px;
		color: #f0f0f0;
		-o-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.corner-ribbon span.small {
		font-size: 14px;
		line-height: 105%;
	}
	.product-image .corner-ribbon span {
		/*line-height: 50px;*/
		padding: 15px 0;
	}
	.corner-ribbon span.SoldOut {
		background: #e82;
	}
	.corner-ribbon span.ComingSoon {
		background: #39d;
	}
	
	.wm-historical, .product-badge {
		position: absolute;
		top: 0;
		left: 0;
		margin: 3.3%;
		overflow: hidden;
		z-index: 9999;
		width: 12%;
		height: 88px;
		pointer-events: none;
		background: url(/images/site/wm_historical.png) no-repeat top left;
		background-size: contain;
	}
	.product-badge.historical {
		background-image: url(../images/product-badge/historical.svg);
	}
	.product-badge.british-made {
		background-image: url(../images/product-badge/british-made.svg);
	}



/* ----------------- Pagination ----------------- */

.pagination {
	display: block;
	font-size: 15px;
	border-radius: 0;
	min-height: 50px;
}
.pagination-block .pagination {
	clear: both;
	float: left;
}
.pagination-block .pages {
	float: right;
	margin-top: 25px;
}
.pagination .view-all {
	float: right;
}
.pagination a.view-all-link {
	border: none !important;
	color: #333;
	line-height: 1.75;
	position: relative;
	background: none !important;
}
.pagination .view-all-link .fa {
	font-size: 30px;
	line-height: 1px;
	vertical-align: middle;
}
.pagination a.view-all-link:hover {
	text-decoration: none;
}
.pagination a.view-all-link .toggle-switch, .pagination a.view-all-link .fa {
	margin: -5px 0 -5px 5px;
}
.pagination a.view-all-link:hover .toggle-switch {
	background: #ccc;
}
.pagination a.view-all-link:hover .toggle-switch.toggle-on {
	background: #985ef5;
}

	.toggle-switch, .view-all-link .fa {
		display: inline-block;
		background: #ddd;
		border-radius: 16px;
		width: 58px;
		height: 32px;
		position: relative;
		vertical-align: middle;
		transition: background 0.25s;
		box-shadow: inset 0 0 0 1px rgba(0,0,0,0.05);
	}
	.toggle-switch:before, .view-all-link .fa:before {
		content: "";
		display: block;
		background: linear-gradient(to bottom, #fff 0%,#eee 100%);
		border-radius: 50%;
		box-shadow: 0 0 0 1px rgba(0,0,0,0.25);
		width: 24px;
		height: 24px;
		position: absolute;
		top: 4px;
		left: 4px;
		transition: left 0.25s;
	}
	.toggle-switch:hover:before, .view-all-link .fa:hover:before {
		background: linear-gradient(to bottom, #fff 0%,#fff 100%);
		box-shadow: 0 0 0 1px rgba(0,0,0,0.5);
	}
	.toggle-switch:after, .view-all-link .fa.fa-toggle-on:after {
		content: "";
	}
	.toggle-switch.toggle-on, .view-all-link .fa.fa-toggle-on {
		background: #8123DA88;
	}
	.toggle-switch.toggle-on:before, .view-all-link .fa.fa-toggle-on:before {
		left: 30px;
	}


.pagination.infinite-scroll li {
	display: block !important;
	text-align: center;
}
.pagination.infinite-scroll li a {
	display: block;
	float: none;
	margin: 0 auto;
	padding: 20px 15px;
	font-weight: 400;
	color: #666;
	font-size: 18px;
		background-color: #F2F2F2;
}
.pagination.infinite-scroll li a .fa {
	line-height: 16px;
	vertical-align: middle;
	margin: 0 2px;
}
.pagination.infinite-scroll.loading {
	background: none;
}
.pagination.infinite-scroll.loading li a {
	overflow: hidden;
	text-indent: -999em;
	background: #F2F2F2 url(../images/window-loader.gif) no-repeat center center;
}

.product-list .pagination.infinite-scroll {
	margin: 5em 0;
	width: auto;
	height: auto;
	background: none;
}
.product-list .pagination li {
	display: inline-block;
	padding: 1px;
}
.product-list .pagination span, .product-list .pagination a {
	display: inline-block;
	padding: 5px;
	margin: 0;
	/*background: none;*/
	border: none;
}
.product-list .pagination a {
	border-radius: 3px;
	/*border: 1px solid #ccc;*/
		border: 1px solid #ddd;
	min-width: 30px;
	text-align: center;
		color: #666;
}
.product-list .pagination :not(.active) a:hover {
	background-color: #e6e6e6;
}
.product-list .pagination span {
	color: inherit;
}
.product-list .pagination span:hover {
	background: none;
	color: inherit;
}
.product-list .pagination {
		clear: both;
		/*background-color: #F2F2F2;*/
			/*border-bottom: 1px solid #ddd;*/
			/*border-top: 1px solid #ddd;*/
		padding: 4px 0;
		margin: 4px 10px 18px;
	}
	.product-list .pagination:before,
	.product-list .pagination:after {
		content: "";
		display: table;
	}
	.product-list .pagination:after {
		clear: both;
}

.product-list .pagination:last-child {
	margin-top: 3em;
}

.product-list .pagination .active, .product-list .pagination .active a {
	/*font-weight: 500;*/
	/*color: #fff;*/
		background: #eee;
		color: #000;
		border-color: #aaa;
}


/* grid */

.grid  {
	padding: 0;
}
.grid .list-item {
	/*float: left;
	display: inline;*/
	display: inline-block;
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 20px;
	padding-bottom: 15px;
	width: 33.3%; /* limit digital places for safari */
	background: none;
}
.grid .list-item .image, .list .grid .list-item .image {
	display: block;
	float: none;
	width: auto;
	margin-right: 0;
	margin-bottom: 5px;
}
.grid .list-item .content, .list .grid .list-item .content {
	float: none;
	display: block;
	width: auto;
	overflow: hidden;
	line-height: 1.25em;
	color: #000;
}
.grid .list-item h3 {
	font-size: 18px;
	line-height: 22px;
	margin-bottom: 8px;
}
@media (max-width: 767px) {
	.grid .list-item h3 {
		font-size: 16px;
		line-height: 20px;
	}
	.grid .list-item .content .description {
		display: none;
	}	
}
@media (max-width: 991px) {
	.grid .list-item,
	.grid.columns2 .list-item,
	.grid.columns3 .list-item,
	.grid.columns4 .list-item {
		width: 50%;
	}
	.grid .list-item h3 {
		font-size: 16px;
	}
}
@media (max-width: 319px) {
	.grid .list-item {
		width: 100%;
		max-width: none;
		margin: 0 0 20px 0;
	}
}
.grid.columns4 .list-item h3 {
	font-size: 16px;
}
.grid.columns4 .list-item .price {
	font-size: 16px;
}
#best-selling h3 {
	font-size: 22px;
}
#best-selling .grid .list-item {
	margin-bottom: 0;
}
#best-selling .grid .list-item .content {
	display: none;
}

#best-selling .equal-height {
	min-height: 60px;
}
#best-selling .equal-height h3 {
	height: 38px;
	overflow: hidden;
}


.grid .product-list,
.grid.product-list { 
	display: flex;
	flex-flow: row wrap;
}
.grid .product-list .list-item,
.grid.product-list .list-item {
	max-width: 33.3%; /* limit digital places for safari */
	flex-basis: 33.3%; /* limit digital places for safari */
	flex: 0 0 33.3%;
}
.grid .product-list .pagination,
.grid.product-list .pagination {
	flex-basis: 100%;
}

.grid.columns2 .list-item {
	max-width: 50%;
	flex-basis: 50%;
}
.grid.columns3 .list-item {
	max-width: 33.3%;
	flex-basis: 33.3%;
}
.grid.columns4 .list-item {
	max-width: 25%;
	flex-basis: 25%;
}

@media (max-width: 991px) {
	.grid .product-list .list-item,
	.grid.product-list .list-item {
		max-width: 50%;
		flex-basis: 50%;
	}
}
@media (max-width: 319px) {
	.grid .product-list .list-item,
	.grid.product-list .list-item {
		max-width: none;
		flex-basis: 100%;
		margin: 0 0 20px 0;
	}
}


/* Related */
.related-products .product-list .list-item  {
	width: 33.3333%;
}
.related-products .content {
	position: relative;
	overflow: hidden;
	margin: 10px 0;
	font-size: 14px;
	line-height: 1.3em;
}
.related-products .image {
	float: left;
	margin-right: 10px;
}
.related-products .image a {
	display: block;
	border: 1px solid #ddd;
}
.related-products a {
	color: #666;
}
.related-products p {
	margin: 0;
}
.also-purchased ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.also-purchased h3 {
	font-size: 1.25em;
}
.also-purchased li {
	position: relative;
	overflow: hidden;
	line-height: 16px;
}
.also-purchased  a {
	color: #666;
}
.also-purchased .image {
	float: left;
	margin: 0 4px 0 0;
}
.also-purchased .image img {
	border: 1px solid #D6D6D6;
}


/* ------------------ Featured Products ----------------- */

.featured-products {
	margin-bottom: 20px;
}

.featured-products p {
	margin-bottom: 6px;
}

#main .featured-products {
	margin-top: 16px;
}
#main .featured-products hr {
	margin-bottom: 2px;
}
#main .featured-products h3 {
	/*background: url(../images/hr_dots.gif) repeat-x scroll left bottom transparent;*/
	padding-bottom: 2px;
	margin-bottom: 10px;
	
	background-image: linear-gradient(to right, rgba(0,0,0,0.5) 33%, rgba(255,255,255,0) 0%);
	background-position: bottom left;
	background-size: 3px 1px;
	background-repeat: repeat-x;
	
}
#main .featured-products .list-item {
	position: relative;
	overflow: hidden;
	margin: 6px 0;
	padding: 2px 0;
	background: url(../images/hr_dots.gif) repeat-x scroll left bottom transparent;
}
#main .featured-products .image {
	float: left;
	margin: 0 10px 0 0;
}
#main .featured-products .image img {
	border: 1px solid #ddd;
}
#main .featured-products .content {
	float: left;
	margin: 0;
	width: 80%;
}
#main .featured-products .content p {
	margin-bottom: 4px;
}



/* ------------------ Product Set ----------------- */

#product-set .image img {
	border: 1px solid #B3B3B3;
}


/* ------------------ History ----------------- */

.cat-description {
	font-size: 1.615em;
	margin-bottom: 12px;
}
#articles .list-item h3 {
	margin-bottom: 6px;
}
#articles .list-item p {
	margin-bottom: 0.8em;
}
#articles .list-item .more {
	margin-top: -6px;
}
#articles .list-item .date {
	margin: -0.5em 0 0.5em 0;
	font-size: 0.8em;
	color: #999;
}




/* Sidebar blocks */
#side-content {
	clear: left;
	display: flex;
	flex-direction: column;
}
#side-content h2 {
	font-size: 22px;
}
#side-content .cat-info {
	padding-right: 5px;
}
#side-content .related-article h3, #side-content .related-article h3 a {
	color: #333;
	font-family: "Montserrat", "Trebuchet MS", Helvetica, sans-serif;
	font-size: 17px;
	font-weight: 500;
	margin: 0 0 3px 0;
}
#side-content .related-article .content {
	padding: 0;
	position: relative;
	overflow: hidden;
}
#side-content .related-article, #side-content .related-article p {
	margin-bottom: 10px;
}
@media (max-width: 767px) {
	#side-content {
		clear: both;
	}
}

.sidebar .block {
	position: relative;
	clear: both;
	margin-bottom: 2em;
	padding: 10px 10px 0 10px;
	border-bottom: 1px solid transparent;
	background-color: #f2f2f2;
	z-index: 1;
}
.side-menu {
	position: relative;
}
.sidebar .block:after, .side-menu:after {
	content: "";
	position: absolute;
	display: block;
	height: 23px;
	background: radial-gradient(ellipse at center, rgba(0,0,0,0.15) 0% ,rgba(0,0,0,0) 55%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

	clip: rect(10px, auto, 23px, auto);
	clip-path: inset(10px 0px 0px 0px);

	bottom: -15px;
	width: 100%;
	z-index: -1;
}

.sidebar .block .heading {
	background: none;
	margin: 0 0 0.5em 0;
}
.sidebar .block h3 {
	margin: 0;
	border-bottom: 1px solid #d6d6d6;
	padding-bottom: 5px;
	text-shadow: 0 1px 0 #fff;
	font-size: 20px;
	line-height: 20px;
	font-family: calluna, serif;
	background: none;
}
.sidebar .block .content h3 {
	margin-bottom: 10px;
}
.sidebar .block p, .sidebar .block form {
	margin-bottom: 6px;
}
.sidebar .block .content {
	font-size: 0.914em;
	line-height: 1.6;
	padding-bottom: 5px;
	position: relative;
}
.sidebar .block .content .image {
	text-align: center;
	overflow: hidden;
	position: relative;
	left: -10px;
	margin: 0 -20px 2px 0;
}
.sidebar .block .content .image a {
	display: block;
}
.sidebar .block .content img {
	margin: 0 auto;
	vertical-align: bottom;
	max-width: 100%;
}
.sidebar .block .item {
	border-bottom: 1px solid #d6d6d6;
	padding-bottom: 6px;
}
.sidebar .block .items_in_cart {
	font-size: 80%;
}
.sidebar .block .items_in_cart .item {
	border-bottom: #D6D6D6 1px dotted;
	margin-bottom: 4px;
	padding-bottom: 0;
}
.sidebar .block .items_in_cart .item  h4 {
	font-family: Roboto, sans-serif;
	line-height: 1.25em;
	margin-bottom: 2px;
	color: #333;
}
.sidebar .block .items_in_cart .item  p {
	margin-bottom: 2px;
}

.sidebar .button, .sidebar .button a,
.sidebar .small.button, .sidebar .small.button a { 
	background-position: left top;
	display: inline-block;
	white-space: normal;
	line-height: 1.2em;
	height: auto;
}
.sidebar p.button {
	padding: 0;
}
.sidebar .button a {
	padding: 4px 10px;
}

/* Sidebar cat info */

.sidebar .cat-info {
	font-size: 16px;
	font-weight: 300;
	line-height: 1.5em;
	margin-top: 20px;
	margin-bottom: 50px;
}
.sidebar .cat-info h2 {
	font-size: 22px;
	line-height: 26px;
	margin-bottom: 5px;
}
.sidebar .cat-info .content p {
	margin-bottom: 0.75em;
}

@media (min-width: 768px) {
	.sidebar .cat-info {
		font-family: calluna, serif;
		margin-bottom: 50px;
	}

	.sidebar .cat-info .content {
		font-size: 18px;
		line-height: 24px;
		margin-top: 5px;
			/*letter-spacing: -0.0290em;*/
	}
}

@media (max-width: 767px) {
	.sidebar .sections.accordion {
		margin-top: 40px;
		margin-bottom: 60px;
	}
	.sidebar .cat-info h2 {
		font-size: 24px;
		color: #111;
		margin-top: 0;
		margin-bottom: 0.5em;
		padding: 8px 0;
		border-bottom: 1px solid #ddd;
		border-top: 1px solid #ddd;
	}
}

/* Sidebar section */
.sidebar .section {
		position: relative;
		clear: both;
		margin-bottom: 2em;
	}
	.sidebar .section:before,
	.sidebar .section:after {
		content: " ";
		display: table;
	}
	.sidebar .section:after {
		clear: both;
}
.sidebar .section h3 {
	width: 100%;
}
.sidebar .section h3 a {
	display: block;
}
@media (min-width: 768px) {
	.sidebar .section h3 {
		display: table;
		max-height: 64px;
		height: 100%;
		margin: 0 0 12px 0;
		padding: 0;
		font-family: Roboto, sans-serif;
		font-weight: 400;
		font-size: inherit;
		background: #F5F5F5;
		border: 3px solid #ffffff;
		-moz-border-radius: 4px;
		-webkit-border-radius: 4px;
		border-radius: 4px;
		-moz-box-shadow: 1px 1px 5px #ccc;
		-webkit-box-shadow: 1px 1px 5px #ccc;
		box-shadow: 1px 1px 5px #ccc;
	}
	.lt-ie9 .sidebar .section h3 {
		/*border: 3px solid #ddd;*/
		outline: 1px solid #eee;
	}
	#side-content.sidebar .section h3 {
		margin: 0 0 12px -5px;
	}
	.sidebar .section h3 a, .sidebar .section h3 span {
		display: table-cell;
		margin: 0;
		padding: 0px 36px 0px 8px;
		color: #666;
		width: 100%;
		height: 40px;
		line-height: 16px;
		vertical-align: middle;
	}
	.sidebar .section h3 a {
		background: url(../images/section_header_arrow.gif) no-repeat 95% center; /* default, Android, Sf < 6 */
		background-position: -webkit-calc(100% - 10px) center; /* Sf 6 */
		background-position: right 10px center; /* Cr 25+, FF 13+, IE 9+, Op 10.5+ */
	}
}

.sidebar .section .content p {
	margin-bottom: 6px;	
}
.sidebar .section ol, .sidebar .section ul {
	margin: 0;
	padding-left: 1.25em;
}
.sidebar .section .content .image {
	margin-bottom: 6px;
}
.sidebar .section .content .image a,
.sidebar .block .content .image a {
	display: block;
}
.sidebar .section .content .image a:hover {
	opacity: 0.8;
}
.sidebar .section.section-image {
	text-align: center;
}
.sidebar .section.section-image .image {
	display: inline-block;
	margin: 0 auto 10px auto;
	padding: 0;
	background: #fff;
	border: 5px solid #ffffff;
	text-align: center;
	
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	border-radius: 6px;
	
	-moz-box-shadow: 1px 1px 5px #ccc;
	-webkit-box-shadow: 1px 1px 5px #ccc;
	box-shadow: 1px 1px 5px #ccc;
}


.sidebar #share {
	position: relative;
	margin: 2em 0;
}
.sidebar #share.block .share {
	margin: -1px;
	padding: 0;
	position: absolute;
	top: 0;
	right: 0;
}
.sidebar a.readmore {
	white-space: nowrap;
}

.sidebar tbody {
  border: none;
}
.sidebar tr.even,
.sidebar tr.odd {
  background: none;
  border-bottom: 1px solid #d6d6d6;
}

.sidebar .side-image {
	position: relative;
	overflow: hidden;
	margin: 10px 0;
}
.sidebar .side-image a {
	display: block;
	position: relative;
	color: #fff;
}
.sidebar .side-image img {
	max-width: 100%;
}
.sidebar .side-image .caption {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 10px;
	padding: 10px;
	height: 50%;
	background: rgba(0,0,0,0.7);
	z-index: 2;
}
.sidebar .related-item .image {
	margin: 5px 0;
	display: block;
	opacity: 0.5;
	border: 1px solid #999;
		-webkit-transition: opacity 0.25s;
		-moz-transition: opacity 0.25s;
		transition: opacity 0.25s;
}
.sidebar .related-item .image:hover {
	opacity: 1;
}


/* articles */
#articles {
	position: relative;
}
#articles .section {
	position: relative;
	min-height: 1px;
	float: left;
	width: 25%;
	padding: 0 10px;
	margin-bottom: 6px;
	font-size: 0.914em;
	line-height: 1.4;
}
@media (max-width: 767px) {
	#articles .section {
		width: 100%;
	}
}

#articles .section h2 {
	margin-left: 8px;
	margin-right: 8px;
	margin-bottom: 6px;
	font-size: 1.500em;
	line-height: 1.25em;
	color: #70a;
	font-family: calluna, serif;
}
#articles .section h3 {
	display: block;
	margin: 0 0 12px 0;
	padding: 0;
	font-size: 1.000em;
	font-family: Roboto, sans-serif;
	background: #F5F5F5;
	border: 3px solid #ffffff;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	-moz-box-shadow: 1px 1px 5px #ccc;
	-webkit-box-shadow: 1px 1px 5px #ccc;
	box-shadow: 1px 1px 5px #ccc;
	display: table;
	width: 100%;
	
}
#articles .section h3 a, #articles .section h3 span {
	display: block;
	margin: 0;
	padding: 0px 36px 0px 8px;
	color: #666;
	width: 176px;
	height: 40px;
	line-height: 16px;
	vertical-align: middle;
	display: table-cell;
	width: 100%;
}

#articles .section h3 a {
	background: url(../images/section_header_arrow.gif) no-repeat 95% center;
}

#articles .section .content {
	margin: 0 4px;
}
#articles .section .content p {
	margin-bottom: 6px;	
}
#articles .section .content img {
	border: 5px solid #D6D6D6;
	margin-bottom: 6px;
}





/* --------------- Listings ---------------- */

.listing .list-item {
	clear: both;
	margin: 0 0 25px 0;
	padding: 0 0 25px 0;
	background: url(../images/hr_dots.gif) repeat-x left bottom;
	position: relative;
	overflow: hidden;
}
.listing .list-item h3 {
	color: #70a;
	margin-bottom: 4px;
}
@media (max-width: 767px) {
	.listing .list-item h3 {
		font-size: 19px;
	}
}
.listing .list-item .alert {
	padding: 10px;
	margin: 15px 0 0 0;
}
.listing .col1 {
	float: left;
	display: inline;
	width: 33.3333%;
}
.listing .col1 img {
	display: block;
	background: #f6f6f6;
	border: 1px solid #D6D6D6;
	width: 100%;
}
.listing .col1 img:hover {
	opacity:0.7;
	filter:alpha(opacity=70);
}
.listing .col2 {
	float: left;
	display: inline;
	padding-left: 10px;
	width: 66.6666%;
		max-width: 450px;
}
.listing .col3 {
	float: right;
	display: inline;
	width: 108px;
	margin-left: 6px;
}
@media (max-width: 767px) {
	.listing .col1 {
		width: 33.3333%;
	}
	.listing .col2 {
		width: 66.6666%;
	}
}
@media (max-width: 479px) {
	.listing .col1 {
		width: 50%;
	}
	.listing .col2 {
		width: 50%;
	}
	.listing .info {
		display: none;
	}
}
@media (max-width: 320px) {
	.listing .col1 {
		width: 100%;
		max-width: none;
		margin: 0 0 10px 0;
		padding: 0;
	}
	.listing .col2 {
		width: 100%;
		margin: 0 0 10px 0;		
		max-width: none;
		padding: 0;
	}
}
.listing .product_price {
	font-size: 12px;
	text-transform: uppercase;
	color: #aaa;
	margin-top: 10px;
	margin-bottom: 10px;
}
@media (min-width: 767px) {
	.listing .col2 {
		padding-bottom: 40px;
	}
	.listing .col2 .product_price {
		position: absolute;
		bottom: 5px;
		right: 10px;
		text-align: right;
	}
}

.listing .product_price .price {
	display: block;
	font-size: 20px;
	color: #70a;
	font-family: calluna, serif;
	font-weight: bold;
	line-height: 18px;
}
.listing .category {
	font-size: 12px;
	font-style: italic;
	margin: -2px 0 0 0;
}
.listing .info {
	margin: 0.5em 0;
}
.listing .sku {
	font-size: 12px;
	margin: 0;
}
.listing .hilite {  text-decoration: underline; }

#favourites a.toggle-cookie-fav {
	clear: both;
	background-color: #BFBFBF;
	color: #FFFFFF;
	display: inline-block;
	font-size: 12px;
	font-weight: bold;
	line-height: 12px;
	margin: 5px 0 0 0;
	padding: 4px 6px;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	vertical-align: baseline;
	white-space: nowrap;
	-webkit-border-radius: 3px;
	   -moz-border-radius: 3px;
			border-radius: 3px;
	width: auto;
}
#favourites a.toggle-cookie-fav.addfav {
	background-color: #DDD;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.1);
}
#favourites a.toggle-cookie-fav.addfav:active {
	text-decoration: none;
}
#favourites a.toggle-cookie-fav.addfav:hover {
	text-decoration: none;
}

/* Panels */
.panel-content h4 {
	font-weight: 400;
	color: #333;
	font-size: inherit;
}


/* --------------- Search Results ---------------- */

#search-results .listing .info i {
	font-weight: bold;
}
#search-results .listing .list-item-header {
	margin-bottom: 0.25em;
}
#sidebar-results .list-item {
	clear: both;
	margin: 10px 20% 20px 0;
}
#sidebar-results .list-item .image {
	margin: 0 0 5px 0;
}
#sidebar-results .list-item .category {
	margin-top: -2px;
}
#sidebar-results .list-item h3 {
	font-size: 18px;
}
#sidebar-results .list-item h3 a {
	color: #111;
}
#sidebar-results .list-item i {
	font-weight: bold;
}

.search-panel .site-search {
	position: relative;
	/*overflow: hidden;*/
}
.search-panel .site-search .search-input {
	height: 60px;
	line-height: 60px;
	font-size: 18px;
	border: 2px solid #ddd;
	border-radius: 0;
}
.search-panel .site-search .search-button {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	padding: 0 14px;
	margin: 2px;
	border: none;
	width: 55px;
	background: #333;
	z-index: 2;
}
.search-panel .site-search .search-button span {
	color: #ccc;
	font-size: 26px;
	line-height: 27px;
}
.search-panel .site-search .search-button:hover span {
	color: #fff;
}

#search-tabs {
	margin: 1.5em 0 0.5em 0;
	font-family: calluna, serif;
	font-size: 18px;
	line-height: 22px;
}
#search-tabs ul {
	background: #f6f6f6;
}
#search-tabs li a {
	color: #111;
}
#search-tabs li.active {
	margin-top: -5px;
}

@media (min-width: 480px) {
	#search-tabs {
		font-size: 22px;
	}
}
@media (min-width: 360px) {

	#search-tabs .nav-tabs.nav-justified > li {
		display: table-cell;
		width: 1%;
	}
	#search-tabs .nav-tabs.nav-justified > .active > a, #search-tabs .nav-tabs.nav-justified > .active > a:hover, #search-tabs .nav-tabs.nav-justified > .active > a:focus {
		border-bottom-color: #ffffff;
	}
	#search-tabs .nav-tabs.nav-justified > li > a {
		margin-bottom: 0;
	}

}

/* ---------- Promotion Pages ----------- */

.promotion-page {
	padding-top: 20px;
}
.promotion-page .page-images {
	margin: 2em 0;
}
.promotion-page .page-images .list-item .image, .promotion-page .page-images .list-item .content {
	float: none;
	margin-left: auto;
	margin-right: auto;
}
.promotion-page #content {
	padding-left: 30px;
	padding-right: 30px;
}
.promotion-page .content {
	font-size: 18px;
}
.promotion-page .page-images .list-item .image img {
	border: none;
	margin: 0 auto;
}
.promotion-page .page-images .content {
	font-size: 16px;
}
.promotion-page .page-images h3 {
	text-transform: uppercase;
	font-size: 18px;
	font-family: Roboto, sans-serif;
	color: #000;
}
.promotion-page .page-images h3, .promotion-page .page-images h3 a {
	color: #000;
}
.promotion-page .page-images a {
	color: #666666;
	display: block;
	border: 3px solid transparent;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	padding: 10px 10px 0 10px;
}
.promotion-page .page-images a:hover, .promotion-page .page-images a:active {
	text-decoration: none;
	border-color: #eee;
}
.promotion-page .page-images a:hover .image {
	opacity: 0.7;
		-webkit-transition: opacity 0.25s;
		-moz-transition: opacity 0.25s;
		transition: opacity 0.25s;
}
.promotion-page .page-images .content {
	clear: both;
}
.promotion-page .page-images .content strong {
	color: #70a;
	font-size: 22px;
	font-family: calluna, serif;
	font-weight: normal;
}
.promotion-page #page-footer h3 {
	color: #fff;
}
@media (max-width: 767px) {
	.promotion-page .page-images .list-item {
		clear: both;
		max-width: 500px;
		margin: 0 auto;
	}
	.promotion-page .page-images .list-item .image {
		text-align: center;
	}
}




/*********** Misc Forms *************/

#content-form {
	text-align: left;
	margin-top: 4em;
	margin-bottom: 4em;
}
#content-form h3 {
	margin-top: 1em;
	border-bottom: 1px solid #ccc;
}
form#header_login_form .input {
	padding: 2px;
}


form#userdata_form {
	margin-bottom: 1.5em;
}
form#userdata_form .alert {
	margin: 0;
}
form#userdata_form .alert fieldset {
	border-color: inherit;
}
form#userdata_form .alert .alert fieldset {
	 border: none; padding: 0; margin: 0;
}
form#userdata_form label {
	font-weight: normal;
}
form#userdata_form .text-email {
	font-size: 110%;
	color: #666;
	line-height: 26px;
}
form#userdata_form.popup-message { /* used in social password */
	margin: 0;
}
form#userdata_form.popup-message label {
	white-space: nowrap;
	width: 35%;
	font-weight: normal;
}
form#userdata_form.popup-message .input {
	width: 60%;
}


form#contact_form {
	margin: 1em auto;
	padding: 12px 15px;
}
#contact_form_message {
	font-family: calluna, serif;
	font-size: 18px;
	font-weight: 300;
	color: #666;
}

form#register_form {
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
}
form#register_form fieldset {
	margin: 0;
}
form#register_form .form-group {
	margin: 0;
	padding: 6px 0;
}
form#register_form label {
	margin-bottom: 0;
}
form#register_form .btn {
	margin-top: 10px;
}
form#register_form .note {
	padding: 0;
	color: rgb(119, 0, 170);
}
#main-content form#forgot_password_form,
#main-content form#reset_password_form {
	background: #f4f4f4;
	
		margin: 2em auto;
		max-width: 600px;
		padding: 20px;
		box-shadow: 5px 5px 38px 0px rgba(0, 0, 0, 0.21);
		background: #fff;
		border: 4px solid #aaa;
}
form#forgot_password_form fieldset,
form#reset_password_form fieldset {
	max-width: 640px;
	margin: 0 auto;
	padding: 10px;
}
form#forgot_password_form fieldset legend,
form#reset_password_form fieldset legend {
	margin: 0;
	padding: 20px 0 0 0;
}
.contact-form-files {
	list-style-type:none;margin:0;padding:0;
}
.contact-form-files li {
	margin: 10px 0;
}
.contact-form-files .fa {
	font-size: 26px;
	text-align: left;
	vertical-align: middle;
	color: #666;
}

.checkout_save_form textarea {
	width: 100%;
	height: 78px;
}


/* Save location form */
.shipping-select {
	display: block;
	line-height: 28px;
	padding: 10px;
	overflow: visible !important; /* allow for loding anim overlay */
}
.shipping-select strong {
	font-size: 130%;
	color: #fff;
}
.shipping-select .save_location_form {
	margin: 0;
}
.shipping-select .save_location_form .notice, .shipping-select .save_location_form .message {
	padding: 3px 6px;
	margin: 0 0 10px 0;
}
.shipping-select .save_location_form .notice {
	background-color: #F9F7E8;
}
.shipping-select .save_location_form .error {
	display:block; padding: 2px 4px; background-color: #cc0000; color: #ffffff; border-radius: 2px;
}

.shipping-select .save_location_form h3 {
	color: #fff;
	display: inline-block;
	position: relative;
	/*top: 2px;*/
	font-family: Roboto, sans-serif;
	font-weight: normal;
	font-size: 16px;
	vertical-align: middle;
	margin: 0;
}
.shipping-select .save_location_form h3 .fa {
	font-size: 38px;
	line-height: 1px;
	top: 7px;
	margin: 0 5px;
	position: relative;
}
.shipping-select .save_location_form .radio {
	margin: 0;
	display: inline-block;
		overflow: hidden;
		vertical-align: middle;
}
.shipping-select .save_location_form label {
	overflow: hidden;
	float: none;
	color: #fff;
	font-size: 14px;
	line-height: 28px;
	margin: 3px 1px;
	padding: 2px 20px 2px 20px;
	border: 1px solid rgba(255, 255, 255, 0.3);
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	vertical-align: middle;
	font-family: Roboto, sans-serif;
}
.shipping-select .save_location_form label:hover {
	background-color: rgba(255, 255, 255, 0.5);
	border-color: rgba(0, 0, 0, 0.3);
	color: #444;
}
.shipping-select .save_location_form label:active {
	background: rgba(255, 255, 255, 0.4);
	-webkit-box-shadow: inset 0px 5px 3px 0px rgba(0,0,0,0.05);
	-moz-box-shadow: inset 0px 5px 3px 0px rgba(0,0,0,0.05);
	box-shadow: inset 0px 5px 3px 0px rgba(0,0,0,0.05);
}
.shipping-select .save_location_form label.active {
	color: #444;
	background: #fff;
	border-color: rgba(0, 0, 0, 0.25);
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}
.shipping-select .save_location_form .radio input {
	margin: 4px 8px 4px -9px;
	position: relative;
	top: 2px;
	line-height: 14px;
	cursor: pointer;
}
.shipping-select .save_location_form .btn {
	float: right;
	font-size: 14px;
	line-height: 34px;
	margin: 3px 5px;
	padding: 0 20px !important;
	height: 34px;
	position: relative;
	vertical-align: middle;
}
.shipping-select .save_location_form .button span {
	color: #fff;
	padding: 0;
}
.shipping-select .save_location_form .btn[disabled] span {
	color: rgba(0,0,0,0.5);
}
.shipping-select .save_location_form .btn .button-text:visible + .fa {
	margin-left: 4px;
	margin-right: -8px;
	color: rgba(0,0,0,0.5);
}
.shipping-select .save_location_form .button .fa.fa-spin {
	color: #fff;
}
.shipping-select  .save_location_form {
	margin: 0;
	padding: 0;
}
.shipping-select  .save_location_form select {
	width: auto;
}
.shipping-select  .save_location_form p {
	margin-bottom: 2px;
}
.shipping-select .block .save_location_form select {
	width: 66%;
}

#sidebar-left .save_location_form .field-radio-btn.inline,
#side-content .save_location_form .field-radio-btn.inline {
	padding-right: 10px;
}
@media (max-width: 1080px) {
	.shipping-select .save_location_form .radio input[type=radio] {
		position: absolute;
		top: -100px;
		left: 0;
	}
	.shipping-select .save_location_form .button {
		float: none;
		width: 100%;
		display: block;
		text-align: center;
		margin: 5px 0 0 0;
	}
	.shipping-select .save_location_form h3 .fa {
		font-size: 22px;
		top: 2px;
	}
}
@media (max-width: 479px) {
	.shipping-select {
		background-image: none;
		padding: 8px;
	}
	.shipping-select .save_location_form label {
		padding: 2px 8px 2px 8px;
	}
	.save_location_form .field-radio-btn.inline {
		padding-left: 38px !important;
		padding-right: 8px !important;
		padding-top: 8px;
	}
}


form .window-loader, .fancybox-content .window-loader {
	position: absolute;
	top: 50%;
}
form {
	-webkit-transition: opacity 0.5s ease;
	transition: opacity 0.5s ease;
}
#main form.submitting {
	opacity: 0.7;
}
			
/* Freeform */
form .freeform-form-has-errors {
	border: 1px solid #dd0000;
	padding: 10px 10px 8px 10px;
}
form .freeform-form-has-errors ul, form .freeform-form-has-errors li {
	margin-bottom: 0;
}
form input[type=file] {
	display: block;
	border: 1px solid #ccc;
	background: #fff;
	padding: 12px 10px;
	border-radius: 5px;
}
form button[name=form_page_submit]:not(.btn) {
	margin: 10px 0;
	font-weight: normal;
	text-align: center;
	vertical-align: middle;
	touch-action: manipulation;
	cursor: pointer;
	background-image: none;
	border: 1px solid transparent;
	white-space: nowrap;
	padding: 6px 12px;
	font-size: 14px;
	line-height: 1.42857143;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	
	color: #fff;
	background-color: #70a;
	border-color: #650091;
	
	padding: 10px 16px;
	font-size: 18px;
	line-height: 1.3333333;
	border-radius: 3px;

	display: block;
	width: 100%;
}
form button[name=form_previous_page_button]:not(.btn) {
	border: none;
	background-color: #C2B59B;
	color: #fff;
	font-weight: normal;
	text-align: center;
	cursor: pointer;
	padding: 6px 20px;
	font-size: 14px;
	border-radius: 3px;
}
form button[name=form_previous_page_button]:not(.btn):before {
	content: "\f053";
	display: inline-block;
	font: normal normal normal 14px/1 "Font Awesome 6 Pro", FontAwesome;
	font-size: inherit;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	margin-left: -8px;
	margin-right: 8px;
}

/* Orders */

/* @TODO: Move this to basket.css ? */

table#orders_table {
	margin-bottom: 2em;
	border-spacing: 0;
	font-size: 14px;
	min-width: 500px;
}
.lt-ie8 table#orders_table {
	border-collapse: collapse; /* IE7 and lower */
}
table#orders_table thead th:first-child {
	-moz-border-radius: 6px 0 0 0;
	-webkit-border-radius: 6px 0 0 0;
	border-radius: 6px 0 0 0;
}

table#orders_table thead th:last-child {
	-moz-border-radius: 0 6px 0 0;
	-webkit-border-radius: 0 6px 0 0;
	border-radius: 0 6px 0 0;
}

table#orders_table thead th:only-child{
	-moz-border-radius: 6px 6px 0 0;
	-webkit-border-radius: 6px 6px 0 0;
	border-radius: 6px 6px 0 0;
}
table#orders_table thead th {
	/*background-color: #4bc0b9;
	color: #fff;*/
	font-size: 110%;
	padding-top: 5px;
	padding-bottom: 5px;
	height: 40px;
	font-weight: normal;
	vertical-align: middle;
}
table#orders_table.grey {
	opacity: 0.75;
}
table#orders_table.grey:hover {
	opacity: 1;
}
table#orders_table tbody th {
	vertical-align: middle;
	color: #000;
	font-weight: 200;
	border-top: 2px solid #f6f6f6;
	border-bottom: 2px solid #f6f6f6;
}
table#orders_table > tbody > tr > th {
	height: 75px;
}
table#orders_table tbody td {
	color: #666;
	font-weight: normal;
}
table#orders_table tbody td.products {
	padding-top: 0;
	padding-left: 0;
	padding-right: 0;
	padding-bottom: 20px;
	overflow: hidden;
}
table#orders_table tbody td.products table td {
	padding-top: 8px;
	padding-bottom: 8px;
}
table#orders_table .expand-link {
	color: #70a;
	font-size: 10px;
	font-weight: normal;
	margin-left: 24px;
}

table#orders_table .col-qty {
	width: 10%;
}
table#orders_table .col-date {
	width: 20%;
}
table#orders_table .col-order {
	width: 40%;
	background-image: url(../images/arrow_down.png);
	background-repeat: no-repeat;
	background-position: 98% center;
}
table#orders_table .col-reorder {
	text-align: center;
	width: 100px;
}
table#orders_table .col-reorder a {
	border: 1px solid #FF73C5;
	/*background: #FF73C5 url(../images/icon-basket-20px-white.png) no-repeat 8px center;*/ background: #FF73C5;
	display: block;
	text-align: left;
	/*padding: 8px 6px 8px 35px;*/ padding: 8px 10px;
	color: #fff;
	font-size: 13px;
	font-weight: normal;
	-moz-border-radius: 17px;
	-webkit-border-radius: 17px;
	border-radius: 17px;
	white-space: nowrap;
	display: inline-block;
}
table#orders_table .col-reorder a:hover {
	background-color: #E266AE;
	text-decoration: none;
	border-color: #da58a3;
}
table#orders_table .col-invoice {
	text-align: center;
}
table#orders_table .discount {
	margin: 0;
	color: #999;
	font-size: 90%;
}
table#orders_table .address {
	margin: 0 0 6px;
	padding: 6px;
	border: 1px solid #E5E5E5;
}
table#orders_table .address p {
	margin: 6px 0;
	padding: 0;
}
table#orders_table .col-status .open {
	color: #0088dd;
}
table#orders_table .col-status .processing {
	color: purple;
}
table#orders_table .col-status .complete {
	color: green;
}
table#orders_table .col-status .ready {
	color: green;
}
table#orders_table .col-status .unpaid {
	color: red;
}
table#orders_table .col-status .refunded {
	color: #999;
}

table#orders_table table .col-product {
	width: 64%;
}
table#orders_table tr.head th {
	padding-top: 14px;
	padding-bottom: 14px;
	line-height: 120%;
}


table#orders_table table {
	border-collapse: collapse;
	margin: 4px 0;
	
	-moz-box-shadow: 1px 1px 3px #ccc;
	-webkit-box-shadow: 1px 1px 3px #ccc;
	box-shadow: 1px 1px 3px #ccc;
}
table#orders_table table th, table#orders_table table td {
	border: 1px solid #E6E6E6;
	font-size: 12px;
}
table#orders_table table th {
	background-color: #F6F6F6;
}
table#orders_table table td {
	background-color: #fff;
}
table#orders_table table body {
	border-top: 1px solid #000;
}
table#orders_table table td.right {
	text-align: right;
}
table#orders_table .buttons {
	margin: 10px 0;
}
table#orders_table .order_notes {
	border: 1px solid #E6E6E6;
	margin: 10px 0;
	padding: 12px;
}
.order_notes {
	min-height: 120px; max-height: 160px; overflow: auto;
	color: #000;
	border: 1px solid #E6E6E6;
	margin: 10px 0;
	padding: 12px;
}



/* ---------- Subscribe Form ----------- */

div.subscribe {
	display: block;
	position: relative;
	margin: 30px 0;
	padding-right: 280px;
	font-size: 90%;
}
div.subscribe form#subscribe_form {
	margin: 0;
	padding: 0;
	position: absolute;
	right: 0;
	top: 0;
}
div.subscribe form#subscribe_form p {
	margin: 0;
	padding: 0;
}
div.subscribe form#subscribe_form select {
	font-size: 16px;
	line-height: 18px;
	padding: 9px;
	width: auto;
}
div.subscribe form#subscribe_form .btn {
	vertical-align: top;
	padding-top: 9px;
	padding-bottom: 9px;
}
@media (max-width: 767px) {
	div.subscribe {
		padding-right: 0;
	}
	div.subscribe form#subscribe_form {
		position: relative;
		clear: both;
	}
}


/* ---------- Comments ----------- */

#comments {
	padding-top: 20px;
	padding-bottom: 20px; 
}
#comments .comment {
	padding: 15px;
	display: block;
	position: relative;
	
	border-bottom: 1px solid #ccc;
}
#comments .comment p {
	margin-bottom: 12px;
}
#comments .comment img {
	max-width: 100%;
	height: auto;
}
#comments .btn-group {
	display: block;
}
#comments .comment blockquote {
	font-family: Georgia,Serif;
	font-size: 18px;
	font-style: italic;
}
#comments .comment_image {
	display: inline;
	float: left;
	width: 50%;
	margin-right: 10px;
	margin-bottom: 10px;
		max-width: 100%;
		position: relative;
}
@media (max-width: 767px) {
	#comments .comment_image {
		width: 100%;
		float: none;
		margin: 0 0 10px 0;
	}
}
#comments .comment_image img {
	max-width: 100%;
	height: auto;
}
#comments .comment_holder {
	display: block;
	margin: 0;
	color: #666;
}
#comments .comment_head {
	font-family: Roboto, sans-serif;
	font-weight: 500;
	font-size: 15px;
	margin: 0 0 15px;
}
#comments .comment_body {
	display: inline;
	color: #666;

}
#comments .comment_spacer {
	display: inline-block;
	display: table; clear: right;
	width: 45%;
	font-size: 0;
	height: 0.001%;
	line-height: 0;
	vertical-align: top;

		
}
#comments .editable .editCommentBox {
	clear: both;
	margin-bottom: -24px;
}
#comments .WysiHat-container {
	background: #fff;
}
#comments .editCommentBox textarea {
	height: 200px;
}
#comments .odd {
	background: #ffffff;
}
#comments .even {
	background: #f7f7f7;

}
#comments .comment .posted_by {
	font-size: 90%;
	color: #999;
	margin-bottom: 12px;
}
#comments .comment .comment_date {
	font-size: 90%;
	color: #999;
}
#comments .editor {
	width: 100%;
}
#comments .pagination {
	margin-bottom: 0.5em;
}
#comments .pending {
	/*background: #FFEFEF;*/
	/*background-color: #f2dede;*/
	border: 2px solid #ebccd1;
	/*color: #a94442;*/
	margin-top: 5px; 
	margin-bottom: 5px; 
	border-radius: 4px;
}
#comments .pending .posted_by {
	color: #a94442;
}

#comment_form {
	padding: 5px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
		/*display: none; /* need to keep open otherwise form does not initialise - ok with RTE */
}
#comment_form h4 {
	font-size: 94%;
}
#comment_form  .comment_buttons table {
	margin: 0px;
}
#comment_form .upload-field label {
	width: auto;
}
#comment_form .captcha-field {
	padding-bottom: 12px;
}
#comment_form .captcha-field label {
	width: auto;
}
#comment_form .captcha-field #captcha {
	height: 20px;
	padding: 3px;
	vertical-align: bottom;
}
#comment_form .captcha-field img {
	vertical-align: bottom;
}
#comment_form fieldset {
	clear: both;
	border: 1px solid #99A7AF;
	padding: 5px 10px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}
#comment_form #cform .WysiHat-editor, #comment_form #cform .trumbowyg-box {
	border: 1px solid #99A7AF;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	margin: 0.5em 0 1.5em 0;
}
#comment_form label {
	text-align: left;
	margin: 0;
	padding-bottom: 5px;
}
#comment_form .comment-field label {
	padding-left: 0;
}
#comment_form .help-block {
	margin-bottom: 0;
}
#comment_form #comment {
	width: 100%;
	background: #f7f7f7;
	border: 1px solid #99A7AF;
	height: 300px;
}
#comment_form .WysiHat-container {
	width: auto;
}
#comment_form .WysiHat-editor-toolbar {
	background: #f7f7f7;
}

#comments .trumbowyg-box, #comment_form .trumbowyg-box {
	background: #fff;
}
#comments #cform *, #comment_form #cform * {
	font-family: inherit;
	font-size: inherit;
}
#comments #cform em, #comment_form #cform em {
	display:inline;
	margin:0;
}
.WysiHat-editor-toolbar  .button {
	text-align: left;
	height: auto;
	font: 11px/13px Helvetica,sans-serif;
}
.comment-login {
	line-height: 25px;
	font-size: 14px;
	padding-left: 30px;
	background: url(../images/header-icon-account.png) no-repeat -10px -8px;
}
.comment-login a.btn {
	font-size: 12px;
	line-height: 20px;
	margin-left: 10px;
	margin-top: -2px;
}
.bar.purple a.btn-primary {
	color: #C295EF;
}
#comment-preview {
	clear: both;
}
#comment-preview .content {
	margin: 1em 0;
	border: 1px solid #ccc;
	background: #FFFFF5;
	padding: 10px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
#comment-preview h4 {
	margin-top: 0;
}


/* channel form fixes */
#cform .toolbar a {
	color: #111 !important;
}
#cform .WysiHat-editor:focus {
	border-color: #c09dee !important;
}
#cform b {
	font-weight: bold !important;
}
#cform i {
	font-style: italic !important;
}


/* ---------- Specific Content ----------- */

.notice-dealer {
	width: 40%;
	margin-top: 10px;
	color: #999;
	font-size: 120%;
}


/* ---------- Elements ----------- */

.selectmenu  {
	position: relative;
	margin: 0 0 0.5em 0;
		z-index: 9999999999!important;
	white-space: nowrap;
	font-family: Roboto, sans-serif;
}
.selectmenu h2 {
	display: block;
	color:  #555;
	line-height: 34px;
	height: 36px;
	font-size: 14px !important;
	font-weight: normal;
	margin: 0;
	padding: 0 40px 0 8px;
	cursor: pointer;
	overflow: hidden;
	font-family: Roboto, sans-serif;
	background: #fff url(../images/arrow_down.png) no-repeat 98% center;
	border: 1px solid #DDDDDD;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	
	/*-moz-box-shadow:inset 1px 1px 5px #ccc;
	-webkit-box-shadow:inset 1px 1px 5px #ccc;
	box-shadow:inset 1px 1px 5px #ccc;*/
	
}
.selectmenu h2:hover {
	border: 1px solid #aaa;
}
.selectmenu ul {
	display: none;
	position: absolute;
	list-style-type: none;
	width: 100%;
	min-width: 350px;
	margin: 0;
	padding: 0;
	background: #fff;
	max-height: 300px;
	overflow-y: auto !important;
	border: 1px solid #ccc;
	
	-moz-box-shadow: 1px 1px 3px #ccc;
	-webkit-box-shadow: 1px 1px 3px #ccc;
	box-shadow: 1px 1px 3px #ccc;
	-moz-box-shadow: 1px 1px 3px rgba(0,0,0,0.2);
	-webkit-box-shadow: 1px 1px 3px rgba(0,0,0,0.2);
	box-shadow: 1px 1px 3px rgba(0,0,0,0.2);
	
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	
	z-index: 99999;
}

.selectmenu ul > li {
	display: block;
	font-size: 12px;
	line-height: 24px;
	margin: 0;
	padding: 0;
	cursor: pointer;
	color: #555;
	overflow: hidden;
	border-bottom: 1px solid #f6f6f6;
}
.selectmenu ul  li a{
	color: #555;
	text-decoration: none;
	display: block;
	position: relative;
	padding: 0 10px;
}
.selectmenu ul > li:hover {
	background: #eee;
}
.selectmenu ul > li.order {
	color: #999;
}
.selectmenu ul > li.order a {
	color: #999;
}
.selectmenu ul > li .info {
	position: absolute;
	top: 0;
	right: 0;
	padding: 2px 10px;
	background-color: #fff;
	background-color: rgba(255,255,255,0.7);
}


/* Sections Content */

.sections > .head {
	position: relative;
	font-size: 20px;
	display: block;
	padding: 10px 8px 10px 8px;
	margin-bottom: 15px;
	background: #EBE5F0;
	background-color: #F2F2F2;
	/*text-shadow: 0 1px 0 rgba(255, 255, 255, 0.3);*/
}
.sections > .head:hover {
	background-color: #D8D1DF;
	background-color: #e6e6e6;
}
.sections > .head.selected:hover {
	background-color: #e6e6e6;
	background-color: #D8D1DF;
}
.sections > .head.selected {
	background-color: #F2F2F2;
	background-color: #EBE5F0;
}
.sections > .head:after {
	content: "";
	position: absolute;
	right: 10px;
	top: 50%;
	width: 30px;
	height: 30px;
	background: url(../images/icon-circle-twizzle-arrow.svg) no-repeat center center;
	background-size: 22px;
	transform: translateY(-50%);
	transition: transform 0.1s ease-in;
}
.sections > .head.selected:after {
	/*background-image: url(../images/arrow_left.png);*/
	transform: translateY(-50%) rotate(90deg);
}
.sections:not(.accordion) > a.head:after {
	/*background-image: url(../images/arrow_right.png);*/
	transform: translateY(-50%) rotate(-90deg);
}
.sections > .body > .table-overflow > table > thead > tr > th:first-child,
.sections > .body > .table-overflow > table > tbody > tr > td:first-child {
	padding-left: 0;
}


#main-content .sections > .head {
	display: block;
	position: relative;
	overflow: hidden;
	padding: 0 18px;
	margin: 30px 0 15px 0;
	height: 56px;
	line-height: 55px;
	font-size: 16px !important;
	/*border: solid 1px #bbb;
	border-left: solid 1px #ddd;
	border-top: solid 1px #ddd;*/
	color: #333;
	text-transform: uppercase;
	font-family: "Montserrat", Arial, Helvetica, sans-serif;
	font-weight: 500;
	/*background: #ebebeb;
	background: -moz-linear-gradient(top,  #ebebeb 0%, #dcdcdc 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ebebeb), color-stop(100%,#dcdcdc));
	background: -webkit-linear-gradient(top,  #ebebeb 0%,#dcdcdc 100%);
	background: -o-linear-gradient(top,  #ebebeb 0%,#dcdcdc 100%);
	background: -ms-linear-gradient(top,  #ebebeb 0%,#dcdcdc 100%);
	background: linear-gradient(to bottom,  #ebebeb 0%,#dcdcdc 100%);
	text-shadow: 1px 1px #EEE;
	*/

border: 1px solid var(--ve-menu-border-color);
background: var(--ve-menu-bg-color);

	
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	
	text-decoration: none;
}
#main-content .sections > .head.selected {
	background: var(--ve-primary-color);
	background: linear-gradient(to right, #8347e3 0%, #5b00a9 100%);
	/*
	background: -moz-linear-gradient(top,  #8e38de 0%, #6624ad 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#8e38de), color-stop(100%,#6624ad));
	background: -webkit-linear-gradient(top,  #8e38de 0%,#6624ad 100%);
	background: -o-linear-gradient(top,  #8e38de 0%,#6624ad 100%);
	background: -ms-linear-gradient(top,  #8e38de 0%,#6624ad 100%);
	background: linear-gradient(to bottom,  #8e38de 0%,#6624ad 100%);
	text-shadow: 1px 1px #6624ad;
	*/

	color: #fff;
	border: solid 1px #6624ad;
	border-left: solid 1px #D1B5DF;
	border-top: solid 1px #D1B5DF;
}
#main-content .sections > .head.actioned {
	opacity: 0.5;
}
#main-content .sections > .head a {
	color: #000;
}
#main-content .sections > .head.selected a {
	color: #fff;
}
#main-content .sections > .head .note {
	margin-left: 10px;
}
#main-content .sections > .head .fa {
	margin-right: 10px;
}
#main-content .sections.accordion {
	margin-bottom: 40px;
}
#main-content .sections.accordion > .head:hover, .sections > a.head:hover {
	-moz-box-shadow: 2px 2px 2px #CCC;
	-webkit-box-shadow: 2px 2px 2px #CCC;
	box-shadow: 2px 2px 2px #CCC;
	text-decoration: none;
}
#main-content .sections > .head em {
	font-weight: normal;
	text-transform: none;
	font-size: 90%;
	font-family: calluna, serif;
	color: #888;
	margin-left: 6px;
}
#main-content .sections > .head.selected em {
	color: #fff;
}
#main-content .sections > .head.completed {
	opacity: 0.5;
}
#main-content .sections > .head.arrow {
	padding-right: 20px;
}
#main-content .sections > .head .number {
	display: inline-block;
	width: 20px;
	height: 20px;
	line-height: 20px;
	text-align: center;
	border: 1px solid #ccc;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	margin-left: -4px;
	margin-right: 4px;
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	
	font-family: "Times New Roman", Times, serif;
}
#main-content .sections > .body {
	padding: 6px 0 12px 0;
}
#main-content .sections .text-muted {
	color: #aaa;
	line-height: 1.2em;
}
#main-content .accordion tr.head:hover th {
	background-color: rgb(209, 234, 231, 0.5) !important;
}
#main-content .accordion tr.head.selected th {
	background-color: #F6F6F6;
}
#main-content .accordion.close-all > .body {
	display: none;
}

@media (max-width: 767px) {
	#side-content .sections > .head {
			font-size: 20px;
	}
}

@media (min-width: 768px) {
	#side-content .sections > .head,
	#side-content .sections > .section-head {
		display:none;
	}
	#side-content .sections > .body,
	#side-content .sections > .section-body {
		display:block !important;
	}
}


/* Buttons */

.button, a.button {
	position: relative;
	overflow: hidden;
	display: inline-block;
	   vertical-align: middle;
	margin: 6px 0;
	padding: 8px 18px;
	font-size: 14px;
	font-weight: normal;
	color: #666;
	white-space:nowrap;
	border: solid 1px rgba(0,0,0,0.2);
	text-decoration: none;
	text-transform: uppercase;
	font-family: Roboto, sans-serif;
	cursor: pointer;
	
	background: #d6d6d6;
	background: -moz-linear-gradient(top, #e3e3e3, #d6d6d6);
	background: -webkit-linear-gradient(top, #e3e3e3, #d6d6d6);
	background: linear-gradient(to bottom, #e3e3e3, #d6d6d6);
	
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
}

.button:hover {
	text-decoration: none;
	opacity:0.7;
	filter:alpha(opacity=70);
}
.button em {
	font-weight: normal;
	text-transform: none;
	font-family: Georgia, "Times New Roman", Times, serif;
}

.button.pink {
	color: #fff;
	background: #ff73c5;
	background: -moz-linear-gradient(top, #ff9cd6, #ff73c5);
	background: -webkit-linear-gradient(top, #ff9cd6, #ff73c5);
	background: linear-gradient(to bottom, #ff9cd6, #ff73c5);
}
.button.purple {
	color: #fff;
	background: #48036d;
	background: -moz-linear-gradient(top, #9d57c9, #48036d);
	background: -webkit-linear-gradient(top, #9d57c9, #48036d);
	background: linear-gradient(to bottom, #9d57c9, #48036d);
}
.button.dark {
	color: #fff;
	background: #a7a9ac;
	background: -moz-linear-gradient(top, #d7d8da, #a7a9ac);
	background: -webkit-linear-gradient(top, #d7d8da, #a7a9ac);
	background: linear-gradient(to bottom, #d7d8da, #a7a9ac);
}

.button.l, .button.r {
	border: none;
}
.button.l {
	padding-left: 24px;
	-webkit-border-top-right-radius: 0px;
	-webkit-border-bottom-right-radius: 0px;
	-moz-border-radius-topright: 0px;
	-moz-border-radius-bottomright: 0px;
	border-top-right-radius: 0px;
	border-bottom-right-radius: 0px;
}
.button.r {
	padding-right: 24px;
	-webkit-border-top-left-radius: 0px;
	-webkit-border-bottom-left-radius: 0px;
	-moz-border-radius-topleft: 0px;
	-moz-border-radius-bottomleft: 0px;
	border-top-left-radius: 0px;
	border-bottom-left-radius: 0px;
}
.button.l:before, .button.r:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border: solid 1px #c290a7;
	border: solid 1px rgba(0,0,0,0.2);
	pointer-events: none;
}
.button.l:after, .button.r:after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	width: 11px;
	pointer-events: none;
}
.button.l:after {
	left: 0;
	background: url(../images/button-l.png) no-repeat left center;
}
.button.r:after {
	right: 0;
	background: url(../images/button-r.png) no-repeat right center;
}


.button.large, a.button.large {
	font-weight: normal;
	font-size: 20px;
	text-transform: none;
	font-family: calluna, serif;
}
.button.small, a.button.small {
	height: 30px;
	line-height: 30px;
	font-weight: normal;
	font-size: 90%;
	margin: 0;
}


.button.fullwidth, .button.fullwidth a {
	display:block;
	padding-left: 0;
	padding-right: 0;
}
input.button.fullwidth, button.button.fullwidth, .button.fullwidth input {
	width: 100%;
}
.button.disabled a, .button.disabled, a.button.disabled, input.button.disabled, button.button.disabled {
	cursor: auto;
	opacity:0.5;
	filter:alpha(opacity=50);
}
input.button:disabled, button.button:disabled, .button input:disabled {
	opacity:0.5;
	filter:alpha(opacity=50);
}

.btn-round a, a.btn-round {
	display: block;
	display: inline-block;
	width: 200px;
	height: 200px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding-top: 60px;
	margin: 20px auto;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	color: #000;
	font-size: 26px;
	font-family: 'Montserrat', 'montserratregular', sans-serif;
	font-weight: 700;
	text-align: center;
	text-transform: uppercase;
	background: #e6e6e6;
}
.btn-round a:hover, a.btn-round:hover {
	color: #000;
	text-decoration: none;
	-moz-box-shadow: 1px 1px 6px rgba(50, 50, 50, 0.5);
	-webkit-box-shadow: 1px 1px 6px rgba(50, 50, 50, 0.5);
	box-shadow: 1px 1px 6px rgba(50, 50, 50, 0.5);
}
.btn.view-all {
	padding: 10px 40px;
	margin-top: 30px;
	margin-bottom: 10px;
	font-size: 18px;
	font-family: calluna, serif;
	white-space: normal;
}



/* Bar */
.bar {
	display: block;
	clear: both;
	position: relative;
	overflow: hidden;
	margin: 1em -3px;
	padding: 12px;
	font-size: 17px;
	line-height: 20px;
	color: #666666;
	background: #E6E6E6;
	
	border: 3px solid #fff;
	
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
		
	-moz-box-shadow: 1px 1px 5px #ccc;
	-webkit-box-shadow: 1px 1px 5px #ccc;
	box-shadow: 2px 2px 5px #ccc;
}
.bar a, .bar h3 {
	color: #666666;
	font-size: 17px;
	font-weight: normal;
}
.bar h3 {
	display: inline-block;
	font-size: 17px;
	font-family: "calluna",Calluna-Regular,Georgia,"Times New Roman",Times,serif;
	margin: 0;
}
.bar .arrow {
	padding-right: 26px;
	display: inline-block;
	background: url(../images/arrow_right.png) no-repeat right center;
}
.bar .arrow.d {
	background: url(../images/arrow_down.png) no-repeat right center;
}
.bar .arrow.l {
	padding-left: 26px;
	padding-right: 0px;
	background: url(../images/arrow_left.png) no-repeat left center;
}

.bar.purple {
	color: #ffffff;
	background: #6A00AE;
}
.bar.purple  a, .bar.purple h3 {
	color: #ffffff;
}
.bar.purple h3 {
	line-height: 22px;
}
.bar.purple  .arrow {
	background-image: url(../images/arrow_right-purple.gif);
}
.bar.purple .arrow.d {
	background-image: url(../images/arrow_down-purple.gif);
}
.bar.purple .arrow.l {
	background-image: url(../images/arrow_left-purple.gif);
}



.arrow-down {
	padding-right: 40px;
	display: inline-block;
	background: url(../images/arrow_down.png) no-repeat right center;
}

.window-loader {
	display:block;
	position: fixed;
	top: 35%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 9999999999 !important;

	font-family: Roboto, sans-serif;
	text-align: center;
	color: #fff;

	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;

	background: #000;
	background: rgba(0,0,0,0.8);

	border: solid 1px #000;

	-webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.1);
	-moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.1);
	box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.1);
	

}
.window-loader .inner {
	display:block;
	padding: 12px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	min-height: 20px;
	line-height: 1.2em;
	
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.window-loader .inner:after {
	content: "";
	display: block;
	height: 50px;
	margin-top: 10px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
}
.window-loader .loading {
	width: 120px;
	min-height: 120px;
}
.window-loader .loading:after {
	/*background: url(../svg/loader-anim.svg) no-repeat center center;*/
	background-image: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nNjRweCcgaGVpZ2h0PSc2NHB4JyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDAgMTAwIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWlkWU1pZCIgY2xhc3M9InVpbC1kZWZhdWx0Ij48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgZmlsbD0ibm9uZSIgY2xhc3M9ImJrIj48L3JlY3Q+PHJlY3QgIHg9JzQ2LjUnIHk9JzQwJyB3aWR0aD0nNycgaGVpZ2h0PScyMCcgcng9JzUnIHJ5PSc1JyBmaWxsPScjZmZmZmZmJyB0cmFuc2Zvcm09J3JvdGF0ZSgwIDUwIDUwKSB0cmFuc2xhdGUoMCAtMzApJz4gIDxhbmltYXRlIGF0dHJpYnV0ZU5hbWU9J29wYWNpdHknIGZyb209JzEnIHRvPScwJyBkdXI9JzFzJyBiZWdpbj0nLTFzJyByZXBlYXRDb3VudD0naW5kZWZpbml0ZScvPjwvcmVjdD48cmVjdCAgeD0nNDYuNScgeT0nNDAnIHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyByeD0nNScgcnk9JzUnIGZpbGw9JyNmZmZmZmYnIHRyYW5zZm9ybT0ncm90YXRlKDMwIDUwIDUwKSB0cmFuc2xhdGUoMCAtMzApJz4gIDxhbmltYXRlIGF0dHJpYnV0ZU5hbWU9J29wYWNpdHknIGZyb209JzEnIHRvPScwJyBkdXI9JzFzJyBiZWdpbj0nLTAuOTE2NjY2NjY2NjY2NjY2NnMnIHJlcGVhdENvdW50PSdpbmRlZmluaXRlJy8+PC9yZWN0PjxyZWN0ICB4PSc0Ni41JyB5PSc0MCcgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHJ4PSc1JyByeT0nNScgZmlsbD0nI2ZmZmZmZicgdHJhbnNmb3JtPSdyb3RhdGUoNjAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPiAgPGFuaW1hdGUgYXR0cmlidXRlTmFtZT0nb3BhY2l0eScgZnJvbT0nMScgdG89JzAnIGR1cj0nMXMnIGJlZ2luPSctMC44MzMzMzMzMzMzMzMzMzM0cycgcmVwZWF0Q291bnQ9J2luZGVmaW5pdGUnLz48L3JlY3Q+PHJlY3QgIHg9JzQ2LjUnIHk9JzQwJyB3aWR0aD0nNycgaGVpZ2h0PScyMCcgcng9JzUnIHJ5PSc1JyBmaWxsPScjZmZmZmZmJyB0cmFuc2Zvcm09J3JvdGF0ZSg5MCA1MCA1MCkgdHJhbnNsYXRlKDAgLTMwKSc+ICA8YW5pbWF0ZSBhdHRyaWJ1dGVOYW1lPSdvcGFjaXR5JyBmcm9tPScxJyB0bz0nMCcgZHVyPScxcycgYmVnaW49Jy0wLjc1cycgcmVwZWF0Q291bnQ9J2luZGVmaW5pdGUnLz48L3JlY3Q+PHJlY3QgIHg9JzQ2LjUnIHk9JzQwJyB3aWR0aD0nNycgaGVpZ2h0PScyMCcgcng9JzUnIHJ5PSc1JyBmaWxsPScjZmZmZmZmJyB0cmFuc2Zvcm09J3JvdGF0ZSgxMjAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPiAgPGFuaW1hdGUgYXR0cmlidXRlTmFtZT0nb3BhY2l0eScgZnJvbT0nMScgdG89JzAnIGR1cj0nMXMnIGJlZ2luPSctMC42NjY2NjY2NjY2NjY2NjY2cycgcmVwZWF0Q291bnQ9J2luZGVmaW5pdGUnLz48L3JlY3Q+PHJlY3QgIHg9JzQ2LjUnIHk9JzQwJyB3aWR0aD0nNycgaGVpZ2h0PScyMCcgcng9JzUnIHJ5PSc1JyBmaWxsPScjZmZmZmZmJyB0cmFuc2Zvcm09J3JvdGF0ZSgxNTAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPiAgPGFuaW1hdGUgYXR0cmlidXRlTmFtZT0nb3BhY2l0eScgZnJvbT0nMScgdG89JzAnIGR1cj0nMXMnIGJlZ2luPSctMC41ODMzMzMzMzMzMzMzMzM0cycgcmVwZWF0Q291bnQ9J2luZGVmaW5pdGUnLz48L3JlY3Q+PHJlY3QgIHg9JzQ2LjUnIHk9JzQwJyB3aWR0aD0nNycgaGVpZ2h0PScyMCcgcng9JzUnIHJ5PSc1JyBmaWxsPScjZmZmZmZmJyB0cmFuc2Zvcm09J3JvdGF0ZSgxODAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPiAgPGFuaW1hdGUgYXR0cmlidXRlTmFtZT0nb3BhY2l0eScgZnJvbT0nMScgdG89JzAnIGR1cj0nMXMnIGJlZ2luPSctMC41cycgcmVwZWF0Q291bnQ9J2luZGVmaW5pdGUnLz48L3JlY3Q+PHJlY3QgIHg9JzQ2LjUnIHk9JzQwJyB3aWR0aD0nNycgaGVpZ2h0PScyMCcgcng9JzUnIHJ5PSc1JyBmaWxsPScjZmZmZmZmJyB0cmFuc2Zvcm09J3JvdGF0ZSgyMTAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPiAgPGFuaW1hdGUgYXR0cmlidXRlTmFtZT0nb3BhY2l0eScgZnJvbT0nMScgdG89JzAnIGR1cj0nMXMnIGJlZ2luPSctMC40MTY2NjY2NjY2NjY2NjY3cycgcmVwZWF0Q291bnQ9J2luZGVmaW5pdGUnLz48L3JlY3Q+PHJlY3QgIHg9JzQ2LjUnIHk9JzQwJyB3aWR0aD0nNycgaGVpZ2h0PScyMCcgcng9JzUnIHJ5PSc1JyBmaWxsPScjZmZmZmZmJyB0cmFuc2Zvcm09J3JvdGF0ZSgyNDAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPiAgPGFuaW1hdGUgYXR0cmlidXRlTmFtZT0nb3BhY2l0eScgZnJvbT0nMScgdG89JzAnIGR1cj0nMXMnIGJlZ2luPSctMC4zMzMzMzMzMzMzMzMzMzMzcycgcmVwZWF0Q291bnQ9J2luZGVmaW5pdGUnLz48L3JlY3Q+PHJlY3QgIHg9JzQ2LjUnIHk9JzQwJyB3aWR0aD0nNycgaGVpZ2h0PScyMCcgcng9JzUnIHJ5PSc1JyBmaWxsPScjZmZmZmZmJyB0cmFuc2Zvcm09J3JvdGF0ZSgyNzAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPiAgPGFuaW1hdGUgYXR0cmlidXRlTmFtZT0nb3BhY2l0eScgZnJvbT0nMScgdG89JzAnIGR1cj0nMXMnIGJlZ2luPSctMC4yNXMnIHJlcGVhdENvdW50PSdpbmRlZmluaXRlJy8+PC9yZWN0PjxyZWN0ICB4PSc0Ni41JyB5PSc0MCcgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHJ4PSc1JyByeT0nNScgZmlsbD0nI2ZmZmZmZicgdHJhbnNmb3JtPSdyb3RhdGUoMzAwIDUwIDUwKSB0cmFuc2xhdGUoMCAtMzApJz4gIDxhbmltYXRlIGF0dHJpYnV0ZU5hbWU9J29wYWNpdHknIGZyb209JzEnIHRvPScwJyBkdXI9JzFzJyBiZWdpbj0nLTAuMTY2NjY2NjY2NjY2NjY2NjZzJyByZXBlYXRDb3VudD0naW5kZWZpbml0ZScvPjwvcmVjdD48cmVjdCAgeD0nNDYuNScgeT0nNDAnIHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyByeD0nNScgcnk9JzUnIGZpbGw9JyNmZmZmZmYnIHRyYW5zZm9ybT0ncm90YXRlKDMzMCA1MCA1MCkgdHJhbnNsYXRlKDAgLTMwKSc+ICA8YW5pbWF0ZSBhdHRyaWJ1dGVOYW1lPSdvcGFjaXR5JyBmcm9tPScxJyB0bz0nMCcgZHVyPScxcycgYmVnaW49Jy0wLjA4MzMzMzMzMzMzMzMzMzMzcycgcmVwZWF0Q291bnQ9J2luZGVmaW5pdGUnLz48L3JlY3Q+PC9zdmc+');

}
.window-loader .loaded {
	width: 160px;
	min-height: 25px;
}
.window-loader .loaded:after {
	height: 26px;
	/* https://assets6.lottiefiles.com/packages/lf20_nu27sfcj.json */
	background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPCEtLSBVcGxvYWRlZCB0bzogU1ZHIFJlcG8sIHd3dy5zdmdyZXBvLmNvbSwgR2VuZXJhdG9yOiBTVkcgUmVwbyBNaXhlciBUb29scyAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIGZpbGw9IiMwMDk2ODgiIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZlcnNpb249IjEuMSIgaWQ9IkNhcGFfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgDQoJIHZpZXdCb3g9IjAgMCAxOTEuNjY3IDE5MS42NjciIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHBhdGggZD0iTTk1LjgzMywwQzQyLjk5MSwwLDAsNDIuOTksMCw5NS44MzNzNDIuOTkxLDk1LjgzNCw5NS44MzMsOTUuODM0czk1LjgzMy00Mi45OTEsOTUuODMzLTk1LjgzNFMxNDguNjc2LDAsOTUuODMzLDB6DQoJIE0xNTAuODYyLDc5LjY0NmwtNjAuMjA3LDYwLjIwN2MtMi41NiwyLjU2LTUuOTYzLDMuOTY5LTkuNTgzLDMuOTY5Yy0zLjYyLDAtNy4wMjMtMS40MDktOS41ODMtMy45NjlsLTMwLjY4NS0zMC42ODUNCgljLTIuNTYtMi41Ni0zLjk3LTUuOTYzLTMuOTctOS41ODNjMC0zLjYyMSwxLjQxLTcuMDI0LDMuOTctOS41ODRjMi41NTktMi41Niw1Ljk2Mi0zLjk3LDkuNTgzLTMuOTdjMy42MiwwLDcuMDI0LDEuNDEsOS41ODMsMy45NzENCglsMjEuMTAxLDIxLjFsNTAuNjIzLTUwLjYyM2MyLjU2LTIuNTYsNS45NjMtMy45NjksOS41ODMtMy45NjljMy42MiwwLDcuMDIzLDEuNDA5LDkuNTgzLDMuOTY5DQoJQzE1Ni4xNDYsNjUuNzY1LDE1Ni4xNDYsNzQuMzYyLDE1MC44NjIsNzkuNjQ2eiIvPg0KPC9zdmc+')
}

.rounded-box {
	background: #f6f6f6;
	background: -moz-linear-gradient(top, #f6f6f6 0%, #ffffff 100%);
	background: -webkit-linear-gradient(top, #f6f6f6 0%,#ffffff 100%);
	background: linear-gradient(to bottom, #f6f6f6 0%,#ffffff 100%);
	padding: 12px 12px 6px 12px;
	margin: 0;
	border: #E3E3E3 1px solid;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
.rounded-box .columns {
	margin-bottom: 8px;
}
.rounded-box .column-left {
	border-right: #E3E3E3 1px solid;
}




/* elements */

.smalltext {
	font-size: 80%;
	line-height: 1.3em;
}
.largetext {
	font-size: 125%;
	line-height: 1.2em;
}
.pinktext, a.pinktext {
	color: #FF6699;
}
ul.list {
	margin: 0 0 12px 0;
	padding: 0 0 0 16px;
}
ul.list li {
	margin: 0px;
	padding: 0px;
}
.alignleft {
	float: left;
	margin-right: 6px;
}
.alignright {
	float: right;
	margin-left: 6px;
}
.textcenter {
	text-align: center;
}
.textcenter ul, .textcenter ol {
	list-style-position: inside;
}
.textleft {
	text-align: left;
}
.textright {
	text-align: right;
}
.flex-row {
	display: flex;
	flex-direction: row;
	column-gap: 1em;
	align-items: center;
}
.flex-center {
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 1em;
}
.flex-vertical {
	display: flex;
	flex-direction: column;
	column-gap: 1em;
}
.hide, .display-none {
	display: none;
}
@media (max-width: 767px) {
	.display-none-xs {
		display: none;
	}
}
.collapse {
	margin: 0;
	padding: 0;
}
.collapse-margin {
	margin: 0;
}
.nopadding {
	padding: 0;
}
.nopadding-left {
	padding-left: 0;
}
.nopadding-right {
	padding-right: 0;
}
.hover:hover {
	opacity:0.7;
	filter:alpha(opacity=70);
}
.hover_shadow:hover {
	-webkit-box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.25);
	-moz-box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.25);
	box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.25);
}
.text-overflow.scroll {
	overflow-x: auto;
	display: inline-block;
	max-width: 100%;
	vertical-align: bottom;
}
.col-centered {
	float: none;
	margin-left: auto;
	margin-right: auto;
}
.row.padded {
	margin-left: -30px;
	margin-right: -30px;
	margin-top: 1em;
	margin-bottom: 2em;
}
.row.padded .col-pad {
	padding-left: 30px;
	padding-right: 30px;
}

.row .col-pad-left {
	padding-left: 30px;
}
.row .col-pad-right {
	padding-right: 30px;
}
.row .col-pad-left-sm {
	padding-left: 30px;
}
.row .col-pad-right-sm {
	padding-right: 30px;
}

.border-left {
	border-left: 1px solid #ccc;
}
.border-right {
	border-right: 1px solid #ccc;
}
.border-left-sm {
	border-left: 1px solid #ccc;
}
.border-right-sm {
	border-right: 1px solid #ccc;
}

.border-top {
	border-top: 1px solid #ccc;
}
.border-bottom {
	border-bottom: 1px solid #ccc;
}

@media (max-width: 991px) {
	.row .col-pad-left-sm {
		padding-left: 10px;
	}
	.row .col-pad-right-sm {
		padding-right: 10px;
	}
	.border-left-sm {
		border-left: none;
	}
	.border-right-sm {
		border-right: none;
	}
}
.cursor-pointer {
	cursor: pointer;
}

/* messages */

.notice, .message {
	position: relative;
	overflow: hidden;
	clear: both;
	padding: 10px 10px;
	margin-bottom: 2em;
	background: #FFDA2F;
	color: #333;
	border: 1px solid #ccc;

	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
}
.notice fieldset, .message fieldset {
	border-color: rgba(255,255,255,0.5);
}
.message {
	color: #fff !important;
	background: #93d7e2 !important;
}
.notice.pale {
	background: #F2F2F2;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}
.message.pale {
	color: #333 !important;
	background: #D7F3F7 !important;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.notice h2, .message h2 {
	color: #000;
	font-family: Roboto, sans-serif;
	font-size: 1.25em;
	line-height: 1em;
	margin: 6px 0;
}
.notice h3, .message h3 {
	color: #000;
}
.notice h4, .message h4 {
	color: #000;
	font-family: Roboto, sans-serif;
	line-height: 1em;
	margin: 6px 0;
}
.notice ul, .message ul {
	margin: 0;
}
.notice a, .message a {
	text-decoration: underline;
}
table .notice, table .message {
	margin: 0;
}
form .notice fieldset {
	border: none;
	
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	
	-moz-box-shadow: 1px 1px 20px #fff;
	-webkit-box-shadow: 1px 1px 20px #fff;
	box-shadow: 1px 1px 20px #fff;
}
#content .notice, #content .message {
	margin-right: 0px;
}
.notice-icon, .notice-icon {
	background: url(../images/notice-icon.png) no-repeat left center;
	padding-left: 54px;
	min-height: 45px;
	position: relative;
	overflow: hidden;
}
.notice-icon.basket {
	background: url(../images/notice-icon-basket.png) no-repeat left center;
}
.notice a {
	color: #333;
}
.message a {
	color:#fff;
	text-decoration: underline;
}

.message p, .notice p {
	margin: 4px 0;
}
.message ul,.notice ul {
	padding: 4px 4px 4px 12px;
	margin: 0 0 0 12px;
}
.message.gray {
	background: #F5F5F5;
	color: #666;
}
.shipping-notice {
	display: block;
	font-size: 85%;
	padding: 8px 8px 8px 40px;
	background: url(../images/icon_shipping-international-s-y.png) no-repeat 10px center;
}
.shipping-notice.unavailable {
	color: #FF0000;
	background-image: url(../images/icon_shipping-international-s-no-y.png);
}
.terms-text {
	font-size: 14px;
	line-height: 1.3em;
	margin: 10px 0;
	padding: 0 15px;
}


.error_content {
	clear: both;
	padding: 16px;
	margin-bottom: 12px;
	color: #4D4D4D;
	background: #E6E6E6;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
}
.error_content p {
	margin-bottom: 6px;
}
.error_content ul {
	padding: 4px 4px 4px 12px;
	margin: 0 0 0 12px;
}
.deleteHighlight {
	background: #eee !important;
	opacity: 0.7;
}
.deleteHighlight td {
	background: none !important;
}


/* Misc */
.fb-like-button {
	margin: 1em 0;
}
.fb-like {
	margin: 1em 0;
}
.vspacer {
	margin-top: 2em;
	margin-bottom: 2em;
}
.content-spacer {
	clear: right;
	display: table;
	font-size: 0;
	height: 0.001%;
	line-height: 0;
	vertical-align: top;
	width: 45%;
}
.full-width {
	margin-left: 0 !important;
	margin-right: 0 !important;
	width: 100% !important;
	max-width: none !important;
}
@media (max-width: 767px) {
	.xs-full-width {
		width: 100% !important;
	}
}
@media (max-width: 479px) {
	.xxs-full-width {
		width: 100% !important;
	}
}


.display-inline {
	display: inline;
}
.display-inline-block {
	display: inline-block;
}
.emblem {
	border: none;
}
.emblem, .hr-emblem, .section-hr {
	clear: both;
	margin-top: 4em;
	margin-bottom: 4em;
	overflow: visible;
}
.hr-emblem, .section-hr {
	border-top: 1px solid #ddd;
}
.section-hr { 
	margin: 3em 10px;
}
.section-hr:after, .emblem:after, .hr-emblem:after { 
	background: url(../images/hr-emblem.png) no-repeat top center;
	content: "";
	display: block;
	height: 24px; /* height of the ornament */
	position: relative;
	top: -18px; /* half the height of the ornament */
}
.emblem.spaced, .hr-emblem.spaced {
	margin-top: 5em;
	margin-bottom: 5em;
}


/* Colours */

.text-color.purple {
	color: #70a;
}
.text-color.pink {
	color: #e266ae;
}
.text-color.teal {
	color: #4bc0b9;
}
.text-color.black {
	color: #000;
}
.text-color.grey {
	color: #999;
}

/* Lists */
.list.scroll {
	border: 1px solid #E6E6E6;
	padding: 5px;
	max-height: 60px;
	overflow: auto;
	-moz-border-radius:3px; border-radius:3px;
}

/* Tables */
table td > ul {
	margin-left: 0.75em;
	margin-bottom: 0;
	padding-left: 0;
}


/* Lists */
ul.nav-list ul {
	padding-left: 2em;
	border-top: 1px solid #ccc;
}
ul.nav-list a {
	padding: 2px;
}


/* Previews */
body.preview {
	/*padding: 10px 0;*/
	margin: 0 auto;
	/*max-width: 1170px;*/
}
.preview > .container {
	width: auto;
}
.preview #sidebar-left {
	margin-top: 0;
}
.preview .admintxt {
	display: inline-block;
}
.preview .ml_trigger_inline.btn {
	display: inline-block;
}

/* ---------- MSDropDown ----------- */

.dd{-moz-box-shadow:2px 2px 5px -4px #888888;-webkit-box-shadow:2px 2px 5px -4px #888888;box-shadow: 2px 2px 5px -4px #888888;color:#333;}
.dd.ddcommon {
  -webkit-touch-callout: none; /* iOS Safari */
	-webkit-user-select: none; /* Safari */
	 -khtml-user-select: none; /* Konqueror HTML */
	   -moz-user-select: none; /* Old versions of Firefox */
		-ms-user-select: none; /* Internet Explorer/Edge */
			user-select: none; /* Non-prefixed version, currently
								  supported by Chrome, Opera and Firefox */

}
.dd:hover{-moz-box-shadow:2px 2px 5px -3px #666666;-webkit-box-shadow:2px 2px 5px -3px #666666;box-shadow: 2px 2px 5px -3px #666666;}
/*.dd:focus, .dd a:focus{outline:none;}*/
.dd:hover .ddTitleText{ opacity:0.7; filter:alpha(opacity=70);}
.dd.borderRadius .ddTitle {-moz-border-radius:5px; border-radius:5px;}
.dd.ddcommon .ddArrow{width:16px;height:16px; margin-top:-8px; background:url(../images/msdropdown/skin-ve/dd_arrow.gif) no-repeat;}
.dd.ddcommon .ddTitle{color:#333;background: #ffffff;background: -moz-linear-gradient(top, #ffffff 0%, #f2f2f2 100%);background: -webkit-linear-gradient(top, #ffffff 0%,#f2f2f2 100%);background: linear-gradient(to bottom, #ffffff 0%,#f2f2f2 100%);}
.dd.ddcommon .ddChild li .ddlabel {color:#333; line-height:34px;}
.dd.ddcommon .ddTitle .ddTitleText{padding:4px 20px 4px 6px;line-height:40px;}
.dd li {margin-bottom: 0;}
.dd.ddcommon .ddChild li {padding: 4px 6px; white-space: nowrap;}
.dd.ddcommon .ddChild li.optgroup .optgroupTitle {
	display: block;
	padding: 5px;
	color: #000;
}
.dd .ddTitle .ddTitleText img, .dd .ddChild li img, .dd .ddColor {
	width: 36px;
	height: 36px;
	padding: 0 !important;
	margin: 0 5px 0 0;
	display: inline-block;
	vertical-align: middle;
}
.dd .option-product_samples .ddColor, .dd .option-product_samples img {
	border-radius: 50%;
}



/* Nav Pills Styling */
.nav-pills.yellow > li.active > a, .nav-pills.yellow > li.active > a:focus {
	color: black;
	background-color: #fcd900;
}
.nav-pills.grey > li.active > a, .nav-pills.grey > li.active > a:focus {
	color: black;
	background-color: #eee;
}

form .nav.nav-tabs {
	margin-bottom: 1.5em;
}



/* ------------------ Shipping Location ----------------- */

#shipping_location, #shipping_location_quote {
	position: relative;
	width: auto;
	padding: 20px 10px;
	text-align: center;
	color: #111;
	z-index: 1001;
	margin: 2em 0;
}
#shipping_location {
	background: #d6ecea;
}
#shipping_location_quote {
	background: #f3f3f3;
	border: 1px solid #ddd;
	border-radius: 3px;
}
#shipping_location h2, #shipping_location_quote h2 {
	color: #000;
	margin-top: 0;
}
#shipping_location .location-selector {
	position: relative;
}
#shipping_location .shipping-image {
	width: 55%;
	opacity: 0.5;
	transition: opacity 0.4s, transform 0.4s;
}/*
#shipping_location .shipping-image:hover {
	opacity: 0.6;
	transform: translateX(2%);
}*/
#shipping_location .location-selector .shipping-image {
	display: none;
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 1;
	max-width: 45%;
}
#shipping_location .radio, #shipping_location .radio-buttons {
	margin: 25px 0 0 0;
	font-family: calluna, serif;
	font-size: 16px;
}

#shipping_location .radio label {
	position: relative;
	overflow: hidden;
}
#shipping_location .radio input {
	margin: 4px 8px 4px -9px;
	position: relative;
	top: 2px;
	line-height: 14px;
	cursor: pointer;
}

#shipping_location .save_location_form {
	position: relative;
	z-index: 10;
	margin: 0;
}
#shipping_location .save_location_form label {
	font-weight: normal;
	cursor: pointer;
}
#shipping_location .submit-btn {
	display: inline-block;
	position: relative;
	margin-top: 10px;
}
#shipping_location .submit-btn .btn-sm {
	-webkit-border-radius: 16px;
	-moz-border-radius: 16px;
	border-radius: 16px;
	padding: 6px 20px;
	font-size: 14px;
	font-family: Roboto, sans-serif;
}
#shipping_location .submit-btn .fa-refresh {
	display: none;
	font-size: 18px;
	/*position: absolute;*/
	top: 8px;
	margin-left: 5px;
}
.shipping-location-note {
	text-align: center;
	margin-top:-10px; margin-bottom:40px;
}
.submitting .submit-btn .fa-refresh {
	display: inline-block !important;
}

#shipping_location_quote .submit-btn {
	margin-top: 30px;
}


#sidebar-left #shipping_location h2,
#side-content #shipping_location h2 {
	font-size: 22px;
}
#sidebar-left #shipping_location .hidden-xxs,
#side-content #shipping_location .hidden-xxs {
	display: none;
}
#sidebar-left #shipping_location .radio-buttons,
#side-content #shipping_location .radio-buttons {
	margin: 20px 0 20px 0;
}
#sidebar-left #shipping_location .field-radio,
#side-content #shipping_location .field-radio {
	padding-right: 8px;
}
#sidebar-left #shipping_location .submit-btn,
#side-content #shipping_location .submit-btn {
	display: block;
}
#sidebar-left #shipping_location .submit-btn .fa-refresh,
#side-content #shipping_location .submit-btn .fa-refresh {
	right: 10px;
}


.fancybox-stage #shipping_location {
	max-width: 98%;
	margin: 0;
	padding: 50px 20px 20px 20px;
	border: 5px solid #999;
}
.fancybox-stage #shipping_location .fancybox-button svg {
	background: #999;
}
.fancybox-stage #shipping_location .fancybox-button svg path {
	fill: #fff;
}



.fancybox-stage #popup_shipping_location {
	padding: 30px 20px 0 20px;
	border: 5px solid #999;
	text-align: center;
	overflow: visible;
}
.fancybox-stage #popup_shipping_location .submit-btn {
	display: none;
}
.fancybox-stage #popup_shipping_location .shipping-image {
	display: block;
	margin: 25px auto 0 auto;
	opacity: 0.4;
	transition: opacity 0.3s;
	will-change: transform;
}
.fancybox-stage #popup_shipping_location h2 {
	margin-top: 10px;
	margin-bottom: 15px;
}
.fancybox-stage #popup_shipping_location .description {
	font-size: 12px;
	max-width: 300px;
	margin: 25px 0;
}

@media (min-width: 992px) {
	#basket_container #shipping_location {
		position: absolute;
		bottom: 0;
			width: 66.66666667%;
			padding: 0 50px 0 0;
			margin: 0;
			background: none;
			
			text-align: left;
	}
	#basket_container #shipping_location .shipping-image {
		display: block;
	}
}

.fancybox-stage #popup_shipping_location .shipping-image-hull {
	overflow: hidden;
	margin: -5px -25px;
}
.fancybox-stage #popup_shipping_location .shipping-image-container {
	animation: FloatInOut 5s ease-in-out infinite
}
.fancybox-stage #popup_shipping_location .shipping-image-inner {
	animation: MoveUpDown 5s ease-in-out infinite;

}
@keyframes MoveUpDown {
	0%, 100% {
		transform: translateY(-3px);
	}
	50% {
		transform: translateY(3px);
	}
}
@keyframes FloatInOut {
	0%, 100% {
		transform: rotate(-1deg);
	}
	30% {
		transform: rotate(1deg);
	}
}

@media (max-width: 479px) {
	.fancybox-stage #shipping_location .radio-buttons,
	.fancybox-stage #popup_shipping_location .radio-buttons {
		margin: 15px auto 30px auto;
		max-width: 160px;
	}
	.fancybox-stage #popup_shipping_location .radio-buttons label {
		border-bottom: 1px solid rgba(0,0,0,0.1);
	}
	.fancybox-stage #shipping_location .field-radio-btn.inline,
	.fancybox-stage #popup_shipping_location .field-radio-btn.inline {
		display: block !important;
		text-align: left;
	}
}

/* Fonts */

.fa.fa-sm {
	font-size: 80%;
}



/* Category Text List */

.cat-text-list {
	list-style: none;
	margin: 1em -5px;
	padding: 0;
	text-align: center;
	font-size: 20px !important;
	line-height: 25px !important;
}
.cat-text-list li {
	float: left;
	width: 50%;
	padding: 5px;

}
.cat-text-list li.odd.last {
	width: 100%;
}
.cat-text-list a {
	display: block;
	padding: 0;
		background: #ccc;
	color: #fff;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;

	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;

	display: table;
	width: 100%;
}
.cat-text-list a:hover {
	text-decoration: none;
	color: #000;
	-webkit-transform: scale(1.06);
	transform: scale(1.06);
}
.cat-text-list a .wrapper {
	display: block;
	width: 100%;
	height: 64px;
	padding: 5px 10px;
	background: rgba(50, 50, 50, 0.5);
	
	display: table-cell;
	vertical-align: middle;
	
	-webkit-transition: background-color 0.5s ease;
	transition: background-color 0.5s ease;
}
.cat-text-list a:hover .wrapper {
	background: rgba(180, 180, 180, 0.7);
}
.cat-text-list .overflow {
	display: block;
	overflow: hidden;	
}
.cat-text-list a .overflow {
	max-height: 60px;
}
@media (max-width: 479px) {
	.cat-text-list li {
		float: none;
		width: 100%;
		padding: 5px;
	}	
}

/* Site map */

#sitemap ul {
	display: block;
	padding: 0;
	list-style: none;
}
#sitemap ul ul {
	margin: 0 0 0 3em;
}
#sitemap ul li {
	display: block;
	margin: 4px 0;
}
#sitemap ul li a {
	display: block;
	padding: 8px 10px;
	border: 1px solid #ddd;
	border-radius: 3px;
	background: #fff;
	color: #111;
	text-decoration: none;
}
#sitemap ul li a:hover, #sitemap ul li a:focus {
	background: #f6f6f6;
	text-decoration: none;
}
#sitemap ul li a:before {
	content: "\f054";
	display: inline-block;
	font: normal normal normal 14px/1 "Font Awesome 6 Pro", FontAwesome;
	font-size: inherit;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color: #eee;
	margin-right: 4px;
}
#sitemap ul li a:hover:before {
	color: #111;
}

/* Utils */
.header a.readmore,
.readmore-toggle + a[data-readmore-toggle] {
	font-family: Roboto, sans-serif;
	font-size: 15px;
	font-weight: 300;
	color: #333;
}
.product-info a.readmore {
	font-family: 'Montserrat', 'montserratregular', sans-serif;
	font-size: 15px;
	font-weight: 500;
}
.readmore-container a.readmore:after,
.product-info a.readmore:after,
.readmore-toggle + a[data-readmore-toggle]:after {
	content: "\f107";
	/*content: "\f13a";*/
	display: inline-block;
	font: normal normal normal 16px/1 "Font Awesome 6 Pro", FontAwesome;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	margin-left: 5px;
	color: #000;
	font-size: 12px;
	opacity: 0.25;
}
.header a.readmore:hover:after,
.product-info a.readmore:hover:after,
.readmore-toggle + a[data-readmore-toggle]:hover:after {
	opacity: 1;
}
.header .readmore-container {
	margin-bottom: 1.5em;
}
.header .readmore-container a {
	color: #000;
}
.header .header-description + .readmore-container {
	margin-top: -0.75em;
}
.readmore-toggle[aria-expanded="true"] + a[data-readmore-toggle]:after {
	content: "\f106";
}
.readmore-toggle[aria-expanded] {
	position: relative;
	text-overflow: ellipsis;
	
}
.readmore-toggle[aria-expanded]:after {
	content: "\2026";
	position: absolute;
	bottom: 0;
	right: 0;
	padding-left: 50px;
	background: -moz-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50px, rgba(255,255,255,1) 99%, rgba(255,255,255,1) 100%);
	background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 50px,rgba(255,255,255,1) 99%,rgba(255,255,255,1) 100%);
	background: linear-gradient(to right, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 50px,rgba(255,255,255,1) 99%,rgba(255,255,255,1) 100%);
}
.readmore-toggle[aria-expanded="true"]:after {
	display: none;
}



.loading-ellipsis {
	display: inline-block;
	font-size: 20px !important;
	font-weight: bold;
	margin: 0 2px;
	line-height: 1px;
}
.loading-ellipsis:before,
.loading-ellipsis span:before,
.loading-ellipsis span:after {
	content: '.';
	opacity: 0;
	-webkit-animation: loadingdot 1.3s infinite;
	-webkit-animation-delay: 0.0s;
	animation: loadingdot 1.3s infinite;
	animation-delay: 0.0s;
}
.loading-ellipsis span:before {
	-webkit-animation-delay: 0.2s;
	animation-delay: 0.2s;
}
.loading-ellipsis span:after {
	-webkit-animation-delay: 0.3s;
	animation-delay: 0.3s;
}

@-webkit-keyframes loadingdot {
	  0% { opacity: 1; }
	 50% { opacity: 0; }
	100% { opacity: 0; }
}

@keyframes loadingdot {
	  0% { opacity: 1; }
	 50% { opacity: 0; }
	100% { opacity: 0; }
}

/* Set the size of the div element that contains the map */
#map {
	height: 300px;
	width: 100%;
	margin-bottom: 2em;
	background: #f6f6f6;
}


/* Ajax placeholders */

.ajax-placeholder.boxes {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-template-rows: repeat(2, 1fr);
	gap: 20px;
	/*animation: placeholder-fading 1.5s infinite;*/
}
.ajax-placeholder.columns-2 {
	grid-template-columns: repeat(2, 1fr);
}
.ajax-placeholder.columns-3 {
	grid-template-columns: repeat(3, 1fr);
}
.ajax-placeholder.columns-4 {
	grid-template-columns: repeat(4, 1fr);
}
.ajax-placeholder.rows-2 {
	grid-template-rows: repeat(2, 1fr);
}
.ajax-placeholder.rows-3 {
	grid-template-rows: repeat(3, 1fr);
}
.ajax-placeholder.rows-4 {
	grid-template-rows: repeat(4, 1fr);
}
@media (max-width: 991px) {
	.ajax-placeholder.boxes {
		grid-template-columns: repeat(2, 1fr);
		/*grid-template-rows: repeat(4, 1fr);*/
	}
}
.ajax-placeholder.lines {
	display: block;
}
.ajax-placeholder .box, .ajax-placeholder .line {
	display: block;
	background: #f9f9f9;	
	max-width: 100%;
}
.ajax-placeholder .box {
	float: left;
	height: 0;
	padding-bottom: 100%;
}
.ajax-placeholder .line {
	height: 1.75em;
	margin-bottom: 1em;
}
.ajax-placeholder .gap {
	display: block;
	height: 1em;
}

@keyframes placeHolderShimmer {
	0% {
		background-position: -1000px 0
	}
	100% {
		background-position: 1000px 0
	}
}

.ajax-placeholder .box, .ajax-placeholder .line {
  animation-duration: 1.8s;
  animation-fill-mode: forwards;
  animation-iteration-count: infinite;
  animation-name: placeHolderShimmer;
  animation-timing-function: linear;
  background: linear-gradient(120deg, #f9f9f9 0, #f9f9f9 45%, #fdfdfd 50%, #f9f9f9 55%, #f9f9f9 100%);
  background-size: 2000px 100%;
  position: relative;
  
}










/* Feature Promo */

.promo-feature {
	position: relative;
	padding: 80px 0 !important;
	z-index: 50;
}
.promo-feature .feature {
	font-size: 18px;
}
@media (max-width: 767px) {
	.promo-feature .col-center-block {
		width: 100%;
	}
}
.promo-feature .content {
	margin-top: 20px;
	margin-bottom: 20px;
}
.promo-feature .text p {
	margin: 5px 0;
}
.promo-feature .content a {
	display: block;
	text-decoration: none;
	color: inherit;
}

.promo-feature .image img {
	max-width: 100%;
	height: auto !important;
}
.promo-feature a img {
	position: relative;
	max-width: 100%;
	height: auto;
	
	-webkit-transition: opacity 0.25s ease;
	-moz-transition: opacity 0.25s ease;
	transition: opacity 0.25s ease;
	
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
.promo-feature a:hover .text, .promo-feature a:hover .image img {
	opacity: 0.7;
}

.promo-feature.slide-background {
	background-attachment: fixed;
	background-position: center center;
}
.promo-feature h1, .promo-feature h2 {
	color: #222;
	font-size: 40px;
	margin-bottom: 40px;
	text-transform: uppercase;
	margin-bottom: 1em;
}

@media (max-width: 479px) {
	.promo-feature .content {
		padding-bottom: 20px;
	}
	.promo-feature .content:last-child {
		padding-bottom: 0;
		margin-bottom: 0;
	}
	.promo-feature .image {
			margin-left: auto;
			margin-right: auto;
			padding-left: 20px;
			padding-right: 20px;
			max-width: 260px;
	}
}

@media (max-width: 767px) {
	.promo-feature .text {
		font-size: 16px;
		line-height: 120%;
	}
}



/* Floating images */

.floatingimage {
display: flex;
	position: absolute;
	top: 50%;
	pointer-events: none;
	max-width: 20%;
	align-content: center;
	align-items: center;
	height: 1px;
}
.floatingimage.left {
	justify-content: flex-start;
}
.floatingimage.right {
	justify-content: flex-end;
}
.floatingimage.left, .floatingimage.left img {
	left: 0;
}
.floatingimage.right, .floatingimage.right img {
	right: 0;
}
.floatingimage img {
	display: block;
	position: relative;
	height: auto;
	max-width: 100%;
}
@media (max-width: 1399px) {
	.floatingimage.left img {
		left: -10%;
	}
	.floatingimage.right img {
		right: -10%;
	}
}
@media (max-width: 991px) {
	.floatingimage.left img {
		left: -20%;
	}
	.floatingimage.right img {
		right: -20%;
	}
}
@media (max-width: 767px) {
	.floatingimage.left img {
		left: -50%;
	}
	.floatingimage.right img {
		right: -50%;
	}
}




/* Colours */

.content-section.green, .content-section.darkgreen {
	background: #54a79b;
}
.content-section.green h2, .content-section.darkgreen h2 {
	color: #fff;
}
.content-section.blue-green, .content-section.lightgreen {
	background: #4bc0b9;
}
.content-section.blue-green h2, .content-section.lightgreen h2 {
	color: #fff;
}
.content-section.purple {
	background-color: #8030D7;
}
.content-section.purple h2 {
	color: #fff;
}
.content-section.dark-grey {
	background-color: #222;
}
.content-section.dark-grey h2 {
	color: #fff;
}
.content-section.brown {
	background-color: #c2b59b;
}
.content-section.brown h2 {
	color: #fff;
}

/* Buttons */

.content-section .btn {
	display: inline-block;
	padding: 5px 25px;
	font-size: 14px;
	line-height: 20px;
	text-transform: uppercase;
	font-variant: small-caps;
	border-radius: 20px;
	border: none;
	background: #8030d7;
	color: #fff;
}
.content-section p.btn {
	margin-bottom: 1em;
}
.content-section a:hover .btn,
.content-section a.btn:hover {
	background: #222;
}
.content-section .feature .btn {
	margin: 10px 0;
	background: #615b4e;
	color: #fff;
}
.content-section .invert .btn {
	background: #fff;
	color: #222;
}
.content-section .invert a:hover .content .btn,
.content-section .invert a.btn:hover {
	background: #222;
	color: #fff;
}
.content-section .btn b {
	font-size: 18px;
	font-weight: normal;
}



/* Float Shadow */
/* http://ianlunn.github.io/Hover/ */
.hvr-float-shadow {
	display: inline-block;
	vertical-align: middle;
	-webkit-transform: translateY(0);
	transform: translateY(0);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-moz-osx-font-smoothing: grayscale;
	position: relative;
	-webkit-transition-duration: 0.3s;
	-moz-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: transform;
	-moz-transition-property: transform;
	transition-property: transform;
	/*top: 0;*/
	-webkit-transition: all 0.15s ease;
	-moz-transition: all 0.15s ease;
	transition: all 0.15s ease;
}
.hvr-float-shadow:before {
	pointer-events: none;
	position: absolute;
	z-index: -1;
	content: "";
	top: 100%;
	left: 15%;
	height: 12px;
	width: 70%;
	opacity: 0;
	background: -webkit-radial-gradient(center, ellipse, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 80%);
	background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 80%);
	/* W3C */
	-webkit-transition-duration: 0.3s;
	-moz-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: transform, opacity;
	-moz-transition-property: transform, opacity;
	transition-property: transform, opacity;
}
.hvr-float-shadow:hover, .hvr-float-shadow:focus, .hvr-float-shadow:active, 
a:hover .hvr-float-shadow, a:focus .hvr-float-shadow, a:active .hvr-float-shadow {
	/* move the element up by 5px */
	-webkit-transform: translateY(-5px) scale(1);
	-moz-transform: translateY(-5px) scale(1.025);
	transform: translateY(-5px) scale(1.025);
	/*top: -5px;*/
}
.hvr-float-shadow:hover:before, .hvr-float-shadow:focus:before, .hvr-float-shadow:active:before,
a:hover .hvr-float-shadow:before, a:focus .hvr-float-shadow:before, a:active .hvr-float-shadow:before {
	opacity: 1;
	/* move the element down by 5px (it will stay in place because it's attached to the element that also moves up 5px) */
	-webkit-transform: translateY(7px);
	-moz-transform: translateY(7px);
	transform: translateY(7px);
	/*top: 5px;*/
}




/************* Content animations ***************/

.not-visible {
	opacity: 0;
}
.reveal {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}
.come-in {
	-webkit-animation: come-in 1s ease forwards;
	-moz-animation: come-in 1s ease forwards;
	animation: come-in 1s ease forwards;
}
.already-visible {
	-webkit-transition: none;
	-moz-transition: none;
	transition: none;
}

.come-in.bounce-up {
	-webkit-animation: bounce-up 0.7s ease forwards;
	-moz-animation: bounce-up 0.7s ease forwards;
	animation: bounce-up 0.7s ease forwards;
}


/* Animation elements */

@media (min-width: 768px) {
	.floatingimage.left .come-in {
		-webkit-transform: translate3d(-300px, 0, 0);
		-moz-transform: translate3d(-300px, 0, 0);
		transform: translate3d(-300px, 0, 0);
	}
	.floatingimage.right .come-in {
		-webkit-transform: translate3d(300px, 0, 0);
		-moz-transform: translate3d(300px, 0, 0);
		transform: translate3d(300px, 0, 0);
	}
	.floatingimage .come-in {
		-webkit-animation: come-in-float 1s ease forwards;
		-moz-animation: come-in-float 1s ease forwards;
		animation: come-in-float 1s ease forwards;
	}
}

/* Animation delays */
@media (min-width: 480px) {
	.come-in:nth-child(2), .col:nth-of-type(2) .come-in, .product:nth-of-type(2) .come-in {
		-webkit-animation: come-in-2 1s ease forwards;
		-moz-animation: come-in-2 1s ease forwards;
		animation: come-in-2 1s ease forwards;
	}
	.come-in:nth-child(3), .col:nth-of-type(3) .come-in, .product:nth-of-type(3) .come-in {
		-webkit-animation: come-in-3 1s ease forwards;
		-moz-animation: come-in-3 1s ease forwards;
		animation: come-in-3 1s ease forwards;
	}
}


/* Animation keyframes */
@-webkit-keyframes come-in {
	from, 0% {
		-webkit-transform: translate3d(0, 50px, 0) scale(0.8); opacity: 0;
	}
	to {
		-webkit-transform: translate(0); opacity: 1;
	}
}
@-webkit-keyframes come-in-2 {
	from, 25% {
		-webkit-transform: translate3d(0, 50px, 0) scale(0.8); opacity: 0;
	}
	to {
		-webkit-transform: translate(0); opacity: 1; 
	}
}
@-webkit-keyframes come-in-3 {
	from, 50% {
		-webkit-transform: translate3d(0, 50px, 0) scale(0.8); opacity: 0;
	}
	to {
		-webkit-transform: translate(0); opacity: 1;
	}
}

@-moz-keyframes come-in {
	from, 0% {
		-moz-transform: translate3d(0, 50px, 0) scale(0.8); opacity: 0;
	}
	to {
		-moz-transform: translate(0); opacity: 1;
	}
}
@-moz-keyframes come-in-2 {
	from, 25% {
		-moz-transform: translate3d(0, 50px, 0) scale(0.8); opacity: 0;
	}
	to {
		-moz-transform: translate(0); opacity: 1;
	}
}
@-moz-keyframes come-in-3 {
	from, 50% {
		-moz-transform: translate3d(0, 50px, 0) scale(0.8); opacity: 0;
	}
	to {
		-moz-transform: translate(0); opacity: 1;
	}
}

@keyframes come-in {
	from, 0% {
		transform: translate3d(0, 50px, 0) scale(0.8); opacity: 0;
	}
	to {
		transform: translate(0); opacity: 1;
	}
}
@keyframes come-in-2 {
	from, 25% {
		transform: translate3d(0, 50px, 0) scale(0.8); opacity: 0;
	}
	to {
		transform: translate(0); opacity: 1;
	}
}
@keyframes come-in-3 {
	from, 50% {
		transform: translate3d(0, 50px, 0) scale(0.8); opacity: 0;
	}
	to {
		transform: translate(0); opacity: 1;
	}
}

/* Floats */
@-webkit-keyframes come-in-float {
	to {
		-webkit-transform: translate(0);
		opacity: 1; 
	}
}
@-moz-keyframes come-in-float {
	to {
		-moz-transform: translate(0);
		opacity: 1; 
	}
}
@keyframes come-in-float {
	to {
		transform: translate(0);
		opacity: 1; 
	}
}

/* Bounce */
@-webkit-keyframes bounce-up {
	0%, 50% {-webkit-transform: translate3d(0, 50px, 0);}
	70%, 100% {-webkit-transform: translate3d(0, 0, 0);}
	60% {-webkit-transform: translate3d(0, 30px, 0);}
	80% {-webkit-transform: translate3d(0, 15px, 0);}
} 
@-moz-keyframes bounce-up {
	0%, 50% {-moz-transform: translate3d(0, 50px, 0);}
	70%, 100% {-moz-transform: translate3d(0, 0, 0);}
	60% {-moz-transform: translate3d(0, 30px, 0);}
	80% {-moz-transform: translate3d(0, 15px, 0);}
}
@keyframes bounce-up {
	0%, 50% {transform: translate3d(0, 50px, 0);}
	70%, 100% {transform: translate3d(0, 0, 0);}
	60% {transform: translate3d(0, 30px, 0);}
	80% {transform: translate3d(0, 15px, 0);}
}


.no-cssanimations .reveal {
	opacity: 1;
	-webkit-transform: none !important; /* Safari and Chrome */
	   -moz-transform: none !important; /* Firefox */
		-ms-transform: none !important; /* IE 9 */
		 -o-transform: none !important; /* Opera */
			transform: none !important;
}


/* Shapes */

.shape.round {
	border-radius: 50%;
}
.shape.egg {
	-webkit-border-radius: 50%/60% 60% 40% 40%;
	-moz-border-radius: 50%/60% 60% 40% 40%;
	border-radius: 50%/60% 60% 40% 40%;

}