@charset "utf-8";

.ctaTopNo {
	display: none;
}
.ctaTopYes {
	display: block;
}

header.primary {
	background:transparent;
	border-bottom: 0px solid #e8e8e8;
}

.homepageBanner {
    margin-top: -190px;
	height:100vh;
}

@media screen and (min-width: 921px) {
	
	header.primary {
		-ms-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
		position: fixed;
		left: 0;
		top: 0px;
		background:transparent;
	}
	
	.ctaTop {
		width: 100%;
		min-height: 44px;
		text-align: center;
		background-color: red;
		text-align: center;
		font-size: 13px;
		text-transform: uppercase;
		padding-top: 10px;
	}
	
}


.logo {

    float: none;
    height: 140px;
    margin: 0em 0;
    position: relative;
    width: auto;
	margin-top: -35px;
}


@import url('https://fonts.googleapis.com/css?family=Pacifico|Open+Sans:300');
.flex-center {
  display: flex;
  align-items: center;
  justify-content: center;
}
* {
  box-sizing: border-box;
  font-family: "Montserrat", sans-serif;
  font-weight: 300;
}
a,
a:visited,
a:hover,
a:active {
  color: inherit;
  text-decoration: none;
}
h1 span {
    color: #fff;
    font-family: "Arapey", serif;
    font-weight: normal;
}
.outer-menu {
  position: fixed;
  top: 7vh;
  left: 0;
  z-index: 1;
}
.outer-menu .checkbox-toggle {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  cursor: pointer;
  width: 60px;
  height: 60px;
  opacity: 0;
}
.outer-menu .checkbox-toggle:checked + .hamburger > div {
  transform: rotate(135deg);
}
.outer-menu .checkbox-toggle:checked + .hamburger > div:before,
.outer-menu .checkbox-toggle:checked + .hamburger > div:after {
  top: 0;
  transform: rotate(90deg);
}
.outer-menu .checkbox-toggle:checked + .hamburger > div:after {
  opacity: 0;
}
.outer-menu .checkbox-toggle:checked ~ .menu2 {
  pointer-events: auto;
  visibility: visible;
}
.outer-menu .checkbox-toggle:checked ~ .menu2 > div {
  transform: scale(1);
  transition-duration: .75s;
}
.outer-menu .checkbox-toggle:checked ~ .menu2 > div > div {
  opacity: 1;
  transition: opacity 0.4s ease 0.4s;
}
.outer-menu .checkbox-toggle:hover + .hamburger {
  box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.1);
}
.outer-menu .checkbox-toggle:checked:hover + .hamburger > div {
  transform: rotate(225deg);
}
.outer-menu .hamburger {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 60px;
  height: 60px;
  padding: .5em 1em;
  background: rgba(33, 150, 243, 0.75);
  background: #000;
  border-radius: 0 0.12em 0.12em 0;
  cursor: pointer;
  transition: box-shadow 0.4s ease;
  backface-visibility: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.outer-menu .hamburger > div {
  position: relative;
  flex: none;
  width: 100%;
  height: 2px;
  background: #fefefe;
  transition: all 0.4s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}
.outer-menu .hamburger > div:before,
.outer-menu .hamburger > div:after {
  content: '';
  position: absolute;
  z-index: 1;
  top: -10px;
  left: 0;
  width: 100%;
  height: 2px;
  background: inherit;
  transition: all 0.4s ease;
}
.outer-menu .hamburger > div:after {
  top: 10px;
}
.outer-menu .menu2 {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  visibility: hidden;
  overflow: hidden;
  backface-visibility: hidden;
  outline: 1px solid transparent;
  display: flex;
  align-items: center;
  justify-content: center;
}
.outer-menu .menu2 > div {
  width: 200vw;
  height: 200vw;
  color: #fefefe;
  background: rgba(41, 98, 255, 0.97);
  border-radius: 50%;
  transition: all 0.4s ease;
  flex: none;
  transform: scale(0);
  backface-visibility: hidden;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.outer-menu .menu2 > div > div {
  text-align: center;
  max-width: 90vw;
  max-height: 100vh;
  opacity: 0;
  transition: opacity 0.4s ease;
  overflow-y: auto;
  flex: none;
  display: flex;
  align-items: center;
  justify-content: center;
}
.outer-menu .menu2 > div > div > ul {
  list-style: none;
  padding: 0 1em;
  margin: 0;
  display: block;
  max-height: 100vh;
}
.outer-menu .menu2 > div > div > ul > li {
  padding: 0;
  margin: 1em;
  font-size: 24px;
  display: block;
}
.outer-menu .menu2 > div > div > ul > li > a {
  position: relative;
  display: inline;
  cursor: pointer;
  transition: color 0.4s ease;
}
.outer-menu .menu2 > div > div > ul > li > a:hover {
  color: #e5e5e5;
}
.outer-menu .menu2 > div > div > ul > li > a:hover:after {
  width: 100%;
}
.outer-menu .menu2 > div > div > ul > li > a:after {
  content: '';
  position: absolute;
  z-index: 1;
  bottom: -0.15em;
  left: 0;
  width: 0;
  height: 2px;
  background: #e5e5e5;
  transition: width 0.4s ease;
}


@media screen and (min-width: 921px) {
    body {
        margin-top: 165px
    }
    .headroom--pinned {
        display: block
    }
    .headroom--unpinned {
        display: none
    }
    .slideDown {
        -webkit-transform: translateY(0%);
        transform: translateY(0%)
    }
    .headroom--not-top .logo {
        width: auto;
        height: 89px
    }
    .headroom--not-top .mainMenu {
        margin-top: 10px
    }
	.headroom--not-top {
		background-color: #ffffff !important;height: 160px;
	}
}




 /* The Overlay (background) */
.overlay {
  /* Height & width depends on how you want to reveal the overlay (see JS below) */   
  height: 100%;
  width: 0%;
  position: fixed; /* Stay in place */
  z-index: 410; /* Sit on top */
  left: 0;
  top: 0;
  background-color: rgb(0,0,0); /* Black fallback color */
  background-color: rgba(0,0,0, 0.9); /* Black w/opacity */
  overflow-x: hidden; /* Disable horizontal scroll */
  transition: 0.5s; /* 0.5 second transition effect to slide in or slide down the overlay (height or width, depending on reveal) */
}

/* Position the content inside the overlay */
.overlay-content {
  position: relative;
  top: 25%; /* 25% from the top */
  width: 100%; /* 100% width */
  text-align: center; /* Centered text/links */
  margin-top: 30px; /* 30px top margin to avoid conflict with the close button on smaller screens */
}

/* The navigation links inside the overlay */
.overlay a {
  padding: 8px;
  text-decoration: none;
  font-size: 36px;
  color: #818181;
  display: block; /* Display block instead of inline */
  transition: 0.3s; /* Transition effects on hover (color) */
  font-family: "Arapey", serif;
}

/* When you mouse over the navigation links, change their color */
.overlay a:hover, .overlay a:focus {
  color: #f1f1f1;
}

/* Position the close button (top right corner) */
.overlay .closebtn {
  position: absolute;
  top: 20px;
  right: 45px;
  font-size: 60px;
}

/* When the height of the screen is less than 450 pixels, change the font-size of the links and position the close button again, so they don't overlap */
@media screen and (max-height: 450px) {
  .overlay a {font-size: 20px}
  .overlay .closebtn {
    font-size: 40px;
    top: 15px;
    right: 35px;
  }
} 


.userWrapper {
	height:40px;
}
.logoWrapper {
	height:150px;
}
.hamburgerWrapper {
	width:10%; height:150px;float: left;
}
.hamburgerWrapperRight {
	width:10%; height:150px;float: left;
}
.logoCenter {
	width:80%; height:150px; float: left;text-align: center;
}


@media (max-width:920px) and (min-width:581px) {

	.ctaTopYes {
		text-align: center;
	}
	#user-tools {
		border-bottom: 1px solid #e8e8e8;
		height: 3em;
		line-height: 3em;
		font-size: 13px;
		width: auto;
		float: none;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		position: relative;
		z-index: 200;
		margin-top: 0px;
	}
	#user-tools .v65-login, #user-tools .v65-logout, #user-tools .v65-yourAccount, #user-tools .v65-editProfile {
		height: 3em;
		line-height: 3em;
	}
	.v65-yourAccount, .v65-editProfile {
		float: left;
		margin: 0;
		padding: 0;
		position: relative;
		text-align: center;
		width: 33%;
		z-index: 400;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
	.v65-yourAccount, .v65-editProfile {
		border-right: 0px solid #666;
	}
	#v65-modalCart {
		position: absolute !important;
		top: 0;
		right: 0;
		text-align: right;
		z-index: 300;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		width: 30%;
		background:#fff;
	}
	.wideWrapper {
		max-width: 1400px;
		margin: 0 auto;
		padding: 0;
		width: 100%;
		position: relative;
		background: white;
	}
	header.primary {
		z-index: 10;
		position: relative;
	}
	.outer-menu {
		position: absolute;
		top: 1vh;
		left: 0;
		z-index: 1;
	}
	#user-tools .v65-login, #user-tools .v65-logout {
		margin: 0px 0px 0 0;
		width: 40%;
		display: inline-block;
		background: white;
		text-align: center;
		position: relative;
	}
	#user-tools .v65-yourAccount, #user-tools .v65-editProfile {
		width: 30%;
		background: white;
		margin-top:-1px;
	}
	.logoWrapper {
		height: 110px;
		background-color: transparent !important;
	}
	.ctaTopNo {
		display: block;
		margin-top: -30px;
		visibility: hidden;
	}
	#user-tools {
		border-bottom: 0px solid #e8e8e8;
	}
}

@media screen and (max-width: 580px) {
	.ctaTopYes {
		text-align:center;
	}
	.logoCenter {
		width: 80%;
		height: 150px;
		float: left;
		text-align: center;
		position: relative;
		z-index: 4;
	}
	.homepageBanner {
		margin-top: -150px;
	}
	.userWrapper {
		height: 40px;
		margin-top: 0px;
	}
	.ctaTopNo {
		display: block;
		margin-top: -30px;
		visibility: hidden;
	}
	#user-tools {
		border-bottom: 0px solid #e8e8e8;
	}
	.outer-menu {
		position: absolute;
		top: 12vh;
		left: 0;
		z-index: 1;
	}
}
.mainMenu {
    float: none;
	margin: -61px 0 0 0;
}

.mainMenu li {
    display: block;
	margin: 0 0 0 0px;
	text-align: center;
}

.mainMenu ul {
    text-align: none;
}

@media screen and (max-width: 920px) {
	.overlay .closebtn {
    /*z-index: 500000;*/
}
.overlay  .mainMenu {
	/*visibility: visible;*/
	
}
}

@media screen and (max-width: 580px) {
.overlay-content {
    top: 12%;
}
.overlay a {
    font-size: 28px;
}
.homepageBanner {
	height:auto;
}
}

.homepageBanner .bannerContent a {
	text-decoration: none !important;
}


.lowerStripNo {
	display:none;
}
.lowerStrip {
	width:100%; min-height:80px; border-bottom:1px solid #ccc;
	position: relative;
	z-index: 6;
	text-align: center;
}
.lowerStripWrapper {
	display:inline-block; margin:auto;
}
.lowerStripLogo {
	float:left;
}
.lowerStripText {
	float:left; margin-left:30px;padding-top: 25px;
}
.lowerStripText p {
	color:#000;
}
.lowerStripLogo img {
	margin-top: -22px;
}

.homeLinksSubtitle {
	text-transform:uppercase;
	color:white;
	font-size:14px;
	font-family: "Montserrat", sans-serif;
	font-family: "Montserrat", sans-serif;
}



/**** FOOTER*****/
footer {
	text-align: center;
}

#footerNew .wrapper {
	margin: 0 auto;
	max-width: 1376px;
	padding: 0 5%;
	width: 90%;
}

.headerwrapper2 {
    margin-top: 140px;
}

#footerV3Year {
    font-size: 36px;
    font-family: "Arapey", serif;color:#000;
}

#footerV3Address {
    font-size: 20px;
    font-family: "Montserrat", sans-serif; color:#000; font-size:14px; text-transform:uppercase;
}

#footerV3LinkArea {
    width: 100%;
    margin-top: 70px;
}

#footerV3Form {
    width: 50%;
    height: 310px;
    background-color: #fafafa;
    float: left;
    padding-top: 36px;
}

#footerV3FormHeader {
    font-size: 36px;
    font-family: "Arapey", serif;
	color:#000;
}

#footerV3Links {
    width: 50%;
    height: 310px;
    background-color: #eeeeee;
    padding-top: 36px;
    float: left;
    text-align: center;
    font-family: "Arapey", serif;
    color: #747474;
    line-height: 35px;
    font-size: 14px;
}

#footerDisclaimer {
    color: #9e9c9c;
    font-size: 14px;
    font-family: "Arapey", serif;
    line-height: 1.3;
    padding-bottom: 40px;
}

.headerwrapper2 {
    margin-top: 20px;
}

#socialLinks {
    text-align: center;
    margin-bottom: 40px;-webkit-filter: invert(100%);
    filter: invert(100%);
}

footer {
    background: #ffffff;
}

#privacyLinks {
    text-align: center;
    margin-bottom: 40px;
    font-family: "Arapey", serif;
    color: #666;
    font-size: 14px;
}

#privacyLinks a {
    color: #979797;
    text-decoration: underline;
}

#FormE7B108C6-ADE4-C44F-A47F-ABE3DA762785 {
    margin-top: -40px;
	width: 100% !important;
    margin-bottom: 0px !important;
}

#FormE7B108C6-ADE4-C44F-A47F-ABE3DA762785 fieldset {
    border: 0px;
}

#FormE7B108C6-ADE4-C44F-A47F-ABE3DA762785 legend {
    display: none;
}

#FormE7B108C6-ADE4-C44F-A47F-ABE3DA762785 label {
    display: none;
}

#FormE7B108C6-ADE4-C44F-A47F-ABE3DA762785 input, #FormE7B108C6-ADE4-C44F-A47F-ABE3DA762785 input[placeholder] {
    text-align: center;
}

#FormE7B108C6-ADE4-C44F-A47F-ABE3DA762785.v65-form {
	max-width:300px;
	margin: auto;
}

#FormE7B108C6-ADE4-C44F-A47F-ABE3DA762785.v65-form input[type="text"] {
    margin: 0;
    border-left: 1px solid transparent;
    border-right: 1px solid transparent;
    border-top: 1px solid transparent;
	background: transparent;
	height: 40px;
	color:black;
	font-size: 12px;
}

#footerV3Links a:hover {
	color: rgb(139,15,18);
}

@media screen and (max-width: 800px) {
	#footerV3Form {
		width: 100%;height: 340px;
	}

	#footerV3Links {
		width: 100%;
	}

}

#homeCB {
	height:500px;
}

#homeCB .v65-productGroup-products {
    margin-top: 50px;
}

.homepageProductGroup .productDescription .v65-title a{
    font-size: 44px;
    line-height: 26px;
    font-family: "Arapey", serif !important;
}

.subscribeSection {
    border-bottom: 1px solid #f4f4f4;
    padding: 1.5em 4% 1em;
}

.upcomingEvents, .subscribeSection {
    min-height: 550px;
}




.exit-intent-popup {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 1000;
    background: rgba(33, 33, 33, 0.8);
	transform: translateY(60%) scale(0);
	transition: transform 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);
}

.exit-intent-popup.visible {
	transform: translateY(0) scale(1);
}

.newsletter {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	max-width:450px;
	padding:30px;
	color: black;
	background-color: white;
	padding-top:10px;
}

.close {
	float:right;
	cursor: pointer;
}


.blogSummaryWrapper {
	width:33%; padding:8px; margin-top:40px; box-sizing:border-box; float:left;
}
.blogSummaryInnerWrapper {
	width:100%; border:1px solid #ccc;
}
.blogSummaryDate {
	width:100%; margin-top:14px;
}
.blogSummaryHeader {
	width:100%;
}
.blogSummaryContent {
	width:100%;
}
.blogSummaryCTA {
	width:100%; margin-top:14px;
}


@media screen and (max-width: 920px) {
.userWrapper {
    height: 50px;
}
.lowerStripText {
	float:left; margin-left:30px;padding-top: 15px; max-width:50%
}
}

.homepageContent {
	margin-top:-25px;
}

.slick-prev {
    left: 0px;
}
.slick-next {
    right: 20px;
}

.footer-licence p {
	color: #9e9c9c;
	font-size: 14px;
	font-family: "Arapey", serif;
	line-height: 1.3;
	padding-bottom: 40px;
}
.footer-licence p strong {
	color: #9e9c9c;
	font-size: 14px;
	font-family: "Arapey", serif;
}