/*
Theme Name: Braehead
Author: inter.direct
Author URI: https://inter.direct/
Description: The Braehead child theme to start a new Wordpress website with
Version: 1.0.3
Template: interdirect
Tags: foundation 
*/

/* ========= Fonts ========= */
@import url("https://use.typekit.net/vfa0jnw.css");

/* suggested font smoothing code, not seen it work yet but turn on if having issues - might work */

* {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-shadow: none;
	text-rendering: optimizeLegibility;
}


/* === Fonts === */



/* =========  general classes =========  */


.hidden {
	display: none;
}

.clearBoth {
	clear: both;
}

/*form, input, img { margin: 0px; padding: 0px; } DONT THINK NEEDED */
/*textarea { font-family:Arial, Helvetica, sans-serif; } DONT THINK NEEDED */

html {
	min-height: 101%;
}

/* makes browser always have sidebar scroller area - so doesnt jump */
body {
	margin: 0px;
	padding: 0px;
	font-family: sofia-pro, Arial, Helvetica, sans-serif;
	font-weight:400;
	font-size: 62.5%;
	height: 100%;
	width: 100%;
	z-index: 0;
	background-color: #ffffff;
}

body.cke_show_borders {
	/* adds side spacing so easier to edit */
	margin: 0px 5px 0px 5px;
	padding: 0px 2px 0px 2px;
	width: auto;
}

html.CSS1Compat {
	_overflow-y: scroll;
	/* important for ckeditor display - not sure what, need to check */
}


/* overall links */
a {
	display: inline-block;
}

a:link {
	color: #243943;
	outline: none;
	font-weight: 600;
	text-decoration: underline;
}

a:visited {
	color: #243943;
	outline: none;
}

a:hover {
	text-decoration: none;
	outline: none;
}

a:active {
	color: #6a737b;
	outline: none;
}

table { 
	width: 100%; 
	border-collapse: collapse; 
  }
  /* Zebra striping */
  tr:nth-of-type(odd) { 
	background: #eee; 
  }
  th { 
	background: #333; 
	color: white; 
	font-weight: bold; 
  }
  td, th { 
	padding: 6px; 
	border: 1px solid #ccc; 
	text-align: left; 
	font-size:14px;
  }

  .inner-wrap td p, 
  .inner-wrap th p {font-size:14px;}

/* ========= usercontent styles  ========= */
/* (frontend and in admin ckeditor)*/

div.userContent a,
body.cke_show_borders a {
	font-weight: bold;
}

div.userContent a {
	color: #4a4742;
}

/* scales images correctly */
div.userContent img {
	max-width: 100%;
}

/* possible image rendering improvement in IE for scalable images - need to test*/
img {
	-ms-interpolation-mode: bicubic !important;
}


h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: ivypresto-headline, Arial, Helvetica, sans-serif;
	color: #243943;
	font-weight: 600;
	margin-bottom: 0.5rem;
	margin-top: 0.2rem;
	padding: 0px;
}

.hidden {
	display: none;
}

/*GLOBAL*/

.captchaContainer {
	display: inline-block;
	width: 100%;
	max-width: 100%;
}

.g-recaptcha {
	margin: 0 0 0.9375rem 0;
}

#content_hold h1,
#content_hold h2,
#content_hold h3,
#content_hold h4,
#content_hold h5,
#content_hold h6 {
	width: 100%;
}

#content_hold ul,
#content_hold ol {
	width: 100%;
}

.inner-wrap p,
.inner-wrap ul li,
.inner-wrap ol li {
	font-size: 16px;
	color: #243943;
	font-weight: normal;
}

.sectionInner {
	display: inline-flex;
	flex-wrap: wrap;
	width: 100%;
	max-width: 1280px;
	position: relative;
}

#content_hold {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	justify-content: center;
	padding: 0.9375rem 1.875rem;
}

#content_hold .button-block {
	display: flex;
	width: 100%;
	justify-content: space-between;
}

#content_hold.blog-landing .button-block {justify-content: center;}

#content_hold .button-block .button-general {
	padding: 0.9375rem 1.875rem;
	background: #243943;
	color: #fff;
	border-radius: 50px;
	font-size: 16px;
	font-weight: 600;
	text-decoration: none;
}

#content_hold .button-block .button-outline {
	color: #243943;
	padding: 0.9375rem 1.875rem;
	border: 1px solid #ccc;
	border-radius: 50px;
	font-size: 16px;
	font-weight: 600;
	text-decoration: none;
	transition: all ease-out 0.3s;
	position: relative;
	overflow: hidden;
	z-index: 10;
}

#content_hold .button-block .button-outline:hover {
	color: #fff;
}

#content_hold .button-block .button-outline::after {
	content: "";
	position: absolute;
	background: #243943;
	transition: all ease-out 0.3s;
	width: 100%;
	height: 100%;
	top: 0;
	left: -100%;
	z-index: -1;
}

#content_hold .button-block .button-outline:hover::after {
	left: 0;
}

#content_hold .button-block i {
	font-family: fontawesome;
	font-style: normal;
	font-size: 16px;
	font-weight: normal;
	transition: all ease-out 0.3s;
}

#content_hold .button-block a:hover i {
	margin: 0 5px;
}

.inner-wrap .slick-prev:before {
	content: '\f104';
	font-family: fontawesome;
	color: #243943;
	font-size: 26px;
}

.inner-wrap .slick-next:before {
	content: '\f105';
	font-family: fontawesome;
	color: #243943;
	font-size: 26px;
}

#mainPageTitle {
	display: inline-block;
	width: 100%;
	margin: 0.9375rem 0 1.875rem 0;
}

#mainPageTitle h1 {
	font-weight: 600;
	font-size: 32px;
	margin: 0;
}

#mainPageTitle h1 p {margin:0;}

/* Breadcrumbs */

#breadBin {
	display: flex;
	width: 100%;
	position: relative;
	z-index: 50;
}

#breadBin ul {
	margin: 0;
	display: inline-flex;
	align-items: center;
}

.breadcrumbs li {
	display: inline-flex;
	align-items: center;
}

.breadcrumbs li.home a {
	line-height: 1em;
	text-decoration: none;
}

.breadcrumbs li.home i {
	font-size: 16px;
	color: #243943;
}

#breadBin ul li a,
#breadBin ul li span {
	text-transform: lowercase;
	text-transform: initial;
	font-size: 14px;
	font-weight: bold;
}


.heroBlock #breadBin {
	margin-top: 1.875rem;
}

.heroBlock #breadBin ul li a,
.heroBlock #breadBin ul li span,
.heroBlock .breadcrumbs li.home i {
	color: #fff;
}

/* site banner */

#site-banner {
	display: inline-flex;
    width: 100%;
    justify-content: center;
	float: left;
	overflow:hidden;
	height:auto;
}

#site-banner .banner-inner {
	display: inline-flex;
	align-items: center;
	width:100%;
    max-width: 1280px;
	padding: 1.875rem 250px 1.875rem 0;
	position: relative;
}

#banner-close {
	width: 25px;
    height: 25px;
    background: #f2f2f2;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border-radius: 5px;
    font-size: 14px;
    position: absolute;
    right: 1.875rem;
    top: 0.9375rem;
    transition: all ease-out 0.3s;
}

#banner-close:hover {
	cursor: pointer;
	box-shadow:0px 2px 8px rgba(0,0,0,0.2);
}

#site-banner .banner-block {
	display: inline-flex;
	flex-wrap: wrap;
	width:100%;
    align-items: center;
}

#site-banner .site-banner-title {
    width: 100%;
	margin:0;
	line-height: 1.2em;
	font-size: 36px;
    font-weight: bold;
    font-family: ivypresto-headline, Arial, Helvetica, sans-serif;
}

#site-banner .site-banner-content {
	width: 100%;
	font-size:22px;
	line-height: 1.2em;
}

#site-banner .site-banner-content p ,
#site-banner .site-banner-content h1,
#site-banner .site-banner-content h2,
#site-banner .site-banner-content h3,
#site-banner .site-banner-content h4,
#site-banner .site-banner-content h5,
#site-banner .site-banner-content h6,
#site-banner .site-banner-content li,
#site-banner .site-banner-content a {
	color:inherit;
	font-size: inherit;
}

#site-banner a {
	padding: 0.9375rem 3.75rem 0.9375rem 1.875rem;
    border-radius: 30px;
    background: #243943;
    color: #fff;
    text-decoration: none;
    font-size: 18px;
    font-weight: 600;
    position: relative;
    align-items: center;
    display: inline-flex;
    flex-wrap: wrap;
    line-height: 1em;
    min-width: 200px;
	text-align: center;
	justify-content: center;
	position: absolute;
    right: 1.875rem;
    bottom: 0.9375rem;
}

#site-banner a::after {
    content: "\f061";
    position: absolute;
    font-family: fontawesome;
    right: 1.875rem;
	color:inherit;
    font-weight: normal;
    font-size: 20px;
    transition: all ease-out 0.3s;
}

#site-banner a:hover::after {right: 1.3rem;}

#site-banner .site-banner-content a {
	padding: 0;
	width:auto;
	min-width: 0;
    background: none;
    text-decoration: underline;
	position: relative;
	bottom: auto;
    right: auto;
}

#site-banner .site-banner-content a::after {display:none;}

/* Header */

#headerContainer {
	display: flex;
    width: 100%;
    justify-content: center;
    padding: 0 1.875rem;
    z-index: 200;
    position: relative;
	background:#243943;
}

.headerInner {
	display: inline-flex;
    width: 100%;
    max-width: 1280px;
    align-items: center;
}

#mainLogo {
	position: relative;
	height: 100%;
	width: 100%;
	max-width:300px;
	align-items: center;
    display: inline-flex;
}

#mainLogo svg {
	width: 100%;
	max-width: 240px;
}

#mainLogo svg {
	fill: #ffffff;
}

#headerContainer nav,
#headerContainer nav div {
	display:inline-flex;
	align-items: center;
	justify-content: flex-end;
}

#headerContainer .menu {position: unset;}

#headerContainer .menu li {
	padding:0 2rem;
	position: unset;
}

#headerContainer .menu a::before  {
	content: "";
    position: absolute;
    width: 100%;
    bottom: 0.9375rem;
    left: 0;
	z-index:-5;
    height: 0px;
    background: #fff;
    transition: all ease-out 0.2s;
}

#headerContainer .menu a:hover::before {height:2px;} 

#headerContainer .menu li.current-menu-item a {color:#EACA48;}
#headerContainer .menu li.current-menu-item a::before {height:2px;}
#headerContainer .menu li.current-menu-item a::before {background:#EACA48;}


#headerContainer .menu a {
	color: #fff;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    position: relative;
    font-size: 18px;
	font-weight:600;
    padding: 1.875rem 0;
}

#headerContainer .menu a::after {
	content: "";
    position: absolute;
    right: 0;
    height:0;
    width: 0;
    display: none;
    border: none;
    margin: 0;
    left: unset;
    top: auto;
}

#headerContainer .menu .is-dropdown-submenu {
	margin:5px 0 0 0.9375rem;
	min-width:250px;
}

#headerContainer .menu .sub-menu {
	position: absolute;
    width: 100%;
	display:none;
    left: 0;
    background: #d7e8eb;
    list-style: none;
    margin: 0;
    display: none;
    top: 100%;
    justify-content: center;
	border: 0;
    padding: 0.9375rem;
}

#headerContainer .menu .sub-menu.js-dropdown-active {
	display:inline-flex;
}

#headerContainer .menu .sub-menu li {width:auto;}

#headerContainer .menu .sub-menu li a {
	color:#243943;
	transition: all ease-out 0.3s;
	padding:0.9375rem;
}

#headerContainer .menu .sub-menu li a::before {
		content: "";
		position: absolute;
		width: calc(100% + 1.875rem);
		bottom: 0;
		left: -0.9375rem;
		height: 100%;
		background: #243943;
		transition: all ease-out 0.3s;
		border-radius: 40px;
		z-index: -1;
		opacity:0;
}

#headerContainer .menu .sub-menu li a:hover::before {opacity:1;} 

#headerContainer .menu .sub-menu.js-dropdown-active li a:hover {color:#fff;}

#headerContainer .menu .is-dropdown-submenu li {list-style: none;}
#headerContainer .menu .is-dropdown-submenu li a::after {display:none;}



/* footer */

footer {
	display: flex;
	width: 100%;
	justify-content: center;
	padding: 0;
	flex-wrap: wrap;
	background: #243943;
}

footer .sectionInner {
	max-width: 1280px;
	width: 100%;
	justify-content: space-between;
}

footer .footer-strap {
	display: inline-flex;
	justify-content: center;
	width:100%;
	padding:1.875rem 0;
	border-bottom:1px solid #fff;
}

footer .footer-strap .sectionInner {
	flex-wrap: nowrap;
	align-items: center;
}

footer .footer-strap h4 {
	display: inline-flex;
    width: 100%;
    color: #fff;
    font-size: 34px;
    max-width: 450px;
}

footer .footer-strap ul {
	display: inline-flex;
    width: 100%;
    justify-content: flex-end;
    align-self: center;
}

footer .footer-strap ul li {padding:0 1.875rem;}
footer .footer-strap ul li:last-child {padding-right:0;}
footer .footer-strap ul li a {
	background: #fff;
    border-radius: 100%;
    width: 45px;
    height: 45px;
    padding: 5px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

footer .footer-strap ul li a i {
	font-size: 28px;
	color:#243943;
}

.footerAddress {
	font-size: 16px;
    margin: 0 0 10px 0;
    color: #fff;
    display: inline-flex;
    padding: 1.875rem 0;
    align-items: center;
}

.footerAddress .footerAddress-details {
	display:inline-flex;
	flex-wrap: wrap;
	width:100%;
	padding: 0.9375rem 0;
	max-width: 250px;
}

.footerAddress .footerAddress-details div {
	display:inline-flex;
	width:100%;
}

.footerAddress .footerAddress-links {
	display: inline-flex;
    height: 100%;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

.footerAddress .footerAddress-links a {
	margin:0.9375rem 0;
	position: relative;
	width:auto;
}

.footerAddress .footerAddress-links a::after {
	content: "";
    position: absolute;
    width: calc(100% - 40px);
    height: 0px;
    left: 40px;
    bottom: 0;
    background: #fff;
    transition: all ease-out 0.3s;
}

.footerAddress .footerAddress-links a:hover::after {
	height:2px;
}

.footerAddress .footerAddress-links a i {
	background: #fff;
    color: #243943;
    padding: 5px;
    border-radius: 100%;
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.footerAddress a {
	width: 100%;
    color: #fff;
    text-decoration: none;
    font-weight: normal;
}

.footerAddress a i {
	font-size: 16px;
	color: #fff;
	margin: 0 10px 0 0;
}

.footerAddress a i.fa-mobile {
	font-size: 22px;
}

.footerTop {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	padding-top: 0.9375rem;
	justify-content: center;
	margin-top: 0.9375rem;
}

.footerTop .footerCta {
	float: right;
	align-items: flex-end;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
}

.footerCta .footerCtaInner {
	display: flex;
	flex-wrap: wrap;
}

.footerTop .footerCta ul {
	padding: 0.9375rem 0;
}

footer a.newsletterButton {
	background: #9f7895;
	color: #fff;
	border: none;
	font-size: 24px;
	text-transform: uppercase;
}

.footerTop .footerCta .footerSm {
	float: right;
	padding: 0 5px;
}

.footerTop .footerCta .footerSm a {
	font-size: 20px;
	color: #9f7895;
}

.footerBottom {
	display: flex;
	justify-content: center;
	margin: 0.9375rem auto 0;
	float: none;
	text-align: center;
	padding: 0.9375rem 1.875rem;
	width: 100%;
	background:#fff;
}

.footerTop ul,
.footerBottom ul {
	display: inline-flex;
	list-style: none;
	margin: 0;
}

.footerBottom .footer-nav {
	display:inline-flex;
	width:100%;
}

.footerBottom ul {
	align-items: center;
    width: 100%;
    justify-content: center;
}

.footerTop ul {
	align-self: flex-end;
}

.footerTop ul li,
.footerBottom ul li {
	display: inline-block;
}

.footerBottom ul li a {
	font-size: 16px;
	font-weight: 300;
	padding: 0.9375rem 1.875rem;
	position: relative;
	color: #243943;
	text-decoration: none;
}

.footerBottom ul li:first-child a {
	padding-left: 0;
}

.footerBottom .idTag {
	margin: 0;
    padding: 0.9375rem 0;
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
}

.footerBottom .idTag a,
.footerBottom .idTag p {
	padding: 0;
	font-size: 16px;
	margin: 0;
	text-align:center;
	color: #243943;
	width: 100%;
}

.footerDetail p,
.footerDetail a {
	margin: 0;
	color: #fff;
	font-size: 14px;
	font-weight: 300;
	position: relative;
	overflow: hidden;
	z-index: 5;
	background: none;
	transition: all ease-in 0.3s;
}

.footerSm a {
	font-size: 16px;
	color: #383838;
	padding: 0 5px;
	display: inline-flex;
	width: 30px;
	height: 30px;
	border: 2px solid #383838;
	border-radius: 100%;
	justify-content: center;
	align-items: center;
	margin: 0 0 0 5px;
	text-decoration: none;
}

/*mobile burger widget */

#nav-toggle,
#close-toggle { 
	display:none;
	cursor: pointer;
    padding: 0;
    order: 3;
    cursor: pointer;
    height: 26px;
    padding: 12px 4px 0 4px;
    width: 40px;
    right: 0.9375rem;
    transition: all ease-out 0.4s;
}

#close-toggle { top: 3rem;}

#nav-toggle span, 
#nav-toggle span:before, 
#nav-toggle span:after,
#close-toggle span, 
#close-toggle span:before, 
#close-toggle span:after {
  cursor: pointer;
  height: 2px;
  width: 30px;
  background: #fff;
  position: absolute;
  display: block;
  content: '';
}

.homepage #close-toggle span, 
.homepage #close-toggle span:before, 
.homepage #close-toggle span:after {
	background: #fff;
}

#close-toggle span, 
#close-toggle span:before, 
#close-toggle span:after {background:#fff;}

#nav-toggle span, 
#nav-toggle span::before, 
#nav-toggle span::after,
#close-toggle span, 
#close-toggle span::before, 
#close-toggle span::after {
  transition: all 0.4s ease-in-out;
  -webkit-transition: all 0.4s ease-in-out;
  -moz-transition: all 0.4s ease-in-out;
}

#nav-toggle span:before,
#close-toggle span:before {top: -8px; }
#nav-toggle span:after,
#close-toggle span:after {bottom: -8px;}

#nav-toggle:hover span::before,
#close-toggle:hover span::before {top:-12px;}
#nav-toggle:hover span::after,
#close-toggle:hover span::after {bottom:-12px;}

/* active */

#nav-toggle.active,
#close-toggle.active  {
	transform:rotate(90deg); 
}

#nav-toggle.active span,
#close-toggle.active span {
  background-color: transparent;
}

#nav-toggle.active span:before,
#close-toggle.active span:before {
	top:0;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  background:#f2f2f2; 
}
#nav-toggle.active span:after,
#close-toggle.active span:after {
	bottom:0;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  background:#f2f2f2; 
}

.left-small:hover #nav-toggle.active span:before,
.left-small:hover #close-toggle.active span:before {top:0;}
.left-small:hover #nav-toggle.active span:after,
.left-small:hover #close-toggle.active span:after {top:0;}
/* mobile menu */

.mobileNavContainer {
	height: 100%;
    z-index: 999;
    width: 100%;
    display: none;
    align-items: center;
}

.off-canvas {
	overflow: hidden;
}

.off-canvas.is-open {
	min-height: 75vh;
    height: auto;
    align-items: center;
    z-index: 999;
    transition: all ease-out 0.3s;
    overflow: auto;
    background: rgba(0,0,0,0.9);
    z-index: 999;
    display: inline-flex;
}

.mobileNavContainer #topNav {
	position: absolute;
}

#mobLogo {
	width: 200px;
	height:83px;
	display: inline-flex;
	margin-bottom:0.9375rem;
	position: relative;
}

nav.mobileNav  {
	display: flex;
    flex-direction: column;
	justify-content: center;
	align-items: center;
    height: 100%;
}

nav.mobileNav  .custom-menu-class {
	justify-content: center;
    height: auto;
	position: relative;
	padding-top: 1.875rem;
}

.mobileNav .accordion-menu  {
	margin: 0;
    width: 230px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.mobileNav .accordion-menu li {
	list-style: none;
    display: inline-flex;
    width: 100%;
    flex-wrap: wrap;
    justify-content: center;
}

.mobileNav .accordion-menu li a {
	display:inline-flex;
	font-weight:bold;
	font-size:18px;
	text-transform: uppercase;
	width:100%;
}

.mobileNav .accordion-menu li ul {
	margin:0;
	width: 100%;
}

.mobileNav .accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a::after {
	border: none;
	border: 0;
    content: "\f107";
    font-family: fontawesome;
    margin: -2px 0 -2px 5px;
    float: right;
    height: 20px;
	width: 16px;
	margin: 0 5px;
    position: unset;
}

.mobileNav .accordion-menu li ul li a {
	font-weight:normal;
	font-size:16px;
	width:auto;
}

.mobileNavContainer .mobileNav ul li a {
	color: #fff;
    background: none;
    text-align: center;
    justify-content: center;
	margin-right: 5px;
	text-decoration: none;
}

.mobileNav .submenu-toggle {
	margin: 0;
    padding: 0;
    width: 28px;
    height: 28px;
    top: 5px;
    right: 10px;
    background: #333;
}

.mobileNav .submenu-toggle::after {
	border: none;
    border: 0;
    content: "\f107";
    font-family: fontawesome;
    width: 12px;
	height: 18px;
	color:#fff;
}

/* search */

.search_wrapper {
	position: absolute;
    width: 100%;
	top: calc(100% - 10px);
    right: 0;
    opacity: 0;
    z-index: -1;
	transition: all ease-out 0.3s;
	display: inline-flex;
    justify-content: flex-end;
}

.search_wrapper.open {
	top: 100%;
    opacity: 1;
    z-index: 993;
}

.search_wrapper .SiteSearchForm {
	display: inline-flex;
    width: 100%;
    align-items: center;
	justify-content: center;
	position: relative;
	box-shadow: 0px 3px 5px rgba(0,0,0,0.2);
}

.search_wrapper .SiteSearchForm .searchClose {
	position: absolute;
    bottom: 0;
    left: -30px;
    opacity: 0;
    padding: 5px 10px;
    background: #243943;
    height: 100%;
    display: inline-flex;
    align-items: center;
    border-bottom-left-radius: 10px;
    transition: all ease-out 0.3s;
}

.searchButton {
	display: inline-flex;
    justify-content: center;
    align-items: center;
    z-index: 9;
    flex-wrap: wrap;
    padding: 0 5px;
	margin-left: 2rem;
	width: 50px;
    height: 50px;
    transition: all ease-out 0.3s;
    border-radius: 5px;
}

.searchButton:hover {background: rgba(255,255,255,0.2);}

.searchButton svg {
	width:45px;
	height:45px;
}

.searchButton:hover {
	cursor:pointer;
}

.search_wrapper .SiteSearch {
    height: 40px;
    box-shadow: none;
    font-size: 13px;
    font-weight: bold;
	border: 0;
	margin:0;
	width:200px;
}

.search_wrapper .SiteSearchSubmit {
	padding: 12px;
    position: absolute;
    border: 0;
    left: 0;
    top: 0;
    color: #fff;
    overflow: hidden;
    font-size: 16px;
    font-weight: 600;
    background: none;
    height: 40px;
    text-indent: -9999px;
    width: 40px;
}

.search_wrapper .SiteSearchSubmit:focus {outline:none;}

.searchTitle {
	text-align:center;
	font-size:28px;
	margin:1.875rem 0 0.9375rem 0;
}

.searchClose:hover {
	cursor: pointer;
}

.searchClose i {
	color:#fff;
	font-size:14px;
}

.search_wrapper.open .searchClose {
	opacity:1;
}

.searchButton .magGlass {fill:#fff;}

.respFormContainer {max-width:400px;}

.search-button {
	position: relative;
    background: #243943;
    width: 100%;
    max-width: 40px;
    height: 40px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.search-button i {
	color: #fff;
    font-size: 16px;
}

/* blog */

.blog-landing {
	background: #e5e5e5;
}

#blog-cat {
	width: 100%;
    display: inline-flex;
    justify-content: center;
	background: #d7e8eb;
	margin: 0 0 1.875rem 0;
}

#blog-cat ul {
	display: inline-flex;
    width: 100%;
    left: 0;
    list-style: none;
    margin: 0;
    top: 100%;
    justify-content: center;
    border: 0;
}

#blog-cat ul li {
	padding: 0 2rem;
	position: unset;
}

#blog-cat ul li a {
	color: #243943;
    transition: all ease-out 0.3s;
    padding: 0.9375rem;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    position: relative;
	z-index:10;
    font-size: 18px;
    font-weight: 600;
    padding: 8px 0;
    margin: 0.9375rem;
}

#blog-cat ul li a:hover {color:#fff;}

#blog-cat ul li a:hover::before {
    opacity: 1;
}

#blog-cat ul li a::before {
    content: "";
    position: absolute;
    width: calc(100% + 1.875rem);
    bottom: 0;
    left: -0.9375rem;
    height: 100%;
    background: #243943;
    transition: all ease-out 0.3s;
    border-radius: 40px;
    z-index: -1;
    opacity: 0;
}

.grid-wrapper {
	display: inline-block;
    width: 100%;
}

.blog-container {
	width: calc(100% + 1.875rem);
	margin: 0 -0.9375rem;
}

.blog-post {
	width: calc(33.333% - 1.875rem);
	padding: 0;
	overflow: hidden;
	background: #fff;
	margin: 0.9375rem;
	padding: 1.875rem;
}

/* clearfix */
.grid:after {
	content: '';
	display: block;
	clear: both;
 }

.blog-post a {
	width: 100%;
	text-decoration: none;
}

.blog-post a h4 {
	display: inline-flex;
    flex-wrap: wrap;
    width: 100%;
    line-height: 1.2em;
    margin: 0 0 1.875rem 0;
    font-weight: 600;
    position: relative;
    transition: all ease-out 0.3s;
    font-size: 32px;
    font-weight: 700;
    font-family: ivypresto-headline, Arial, Helvetica, sans-serif;
}

.blog-post a span {
	width: 100%;
    font-size: 20px;
    font-weight: 300;
    font-family: IvyPresto Headline, Arial, Helvetica, sans-serif;
}

.blog-post a .more {
	justify-content: flex-end;
    display: inline-flex;
    width: 100%;
	font-size: 16px;
    font-weight: 600;
    position: relative;
    padding: 0 1.4rem 0 0;
    align-items: center;
    transition: all ease-out 0.3s;
}

.blog-post a .more::after {
	content: "\f061";
    position: absolute;
    font-family: fontawesome;
    right: 1.8758rem;
    font-weight: normal;
    font-size: 18px;
    right: 0;
    opacity: 1;
    transition: all ease-out 0.3s;
}

.blog-post a:hover .more {padding: 0 1.875rem 0 0;}

.blog-menu {
	display: inline-flex;
    width: 100%;
    flex-direction: column;
    position: relative;
    align-items: center;
    margin: 3.75rem 0;
}

.blog-menu ul.accordion {
    display: inline-flex;
    flex-wrap: wrap;
	max-width: 300px;
    margin: 0;
    z-index: 50;
    background: none;
}


.blog-menu ul.accordion li {
	list-style: none;
	width: 100%;
}

.blog-menu ul.accordion li:first-child {
	border-top-left-radius: 15px;
    border-top-right-radius: 15px;
    overflow: hidden;
}

.blog-menu ul.accordion li:last-child a {
	border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    overflow: hidden;
}

.blog-menu ul.accordion li.is-active {box-shadow:0px 2px 13px rgba(0,0,0,0.2);}

.blog-menu ul.accordion li a {
	font-size: 16px;
	color: #222;
	padding: 8px 0;
}

.blog-menu ul.accordion li a.accordion-title {
	padding: 0.9375rem;
	display: inline-flex;
	justify-content: center;
	background: #243943;
	width: 100%;
	font-size: 18px;
	font-weight: 600;
	color: #fff;
	border: none;
	text-decoration: none;
}

.blog-menu li a.blog-allcat {
	padding: 0.9375rem;
	display: inline-flex;
	justify-content: center;
	width: 100%;
	font-size: 18px;
	font-weight: 600;
	color: #243943;
	border: none;
	border: 1px solid #ccc;
	margin: 0;
	text-decoration: none;
}

.pagi-display {
	margin:3.75rem 0;
	display: inline-flex;
	justify-content: center;
	width:100%;
}

.pagi-display div {
	padding:5px 0.9375rem;
	color:#fff;
	font-size:16px;
	border-radius: 50px;
	background:#243943;
}

/* article */

.article-date-author {
	font-size: 14px;
	font-weight: 600;
	color: #243943;
	padding: 5px 0;
	margin: 0 0 0.9375rem 0;
	border-bottom: 1px solid #ccc;
	border-top: 1px solid #ccc;
}

.article-content {
	display: flex;
	width: 100%;
	justify-content: space-between;
}

.article-content a {
	color: #231f20;
	text-decoration: underline;
	font-weight: bold;
}

.article-image {
	width: 100%;
	max-width: 320px;
	height:auto;
	display: inline-flex;
	margin: 0 1.875rem 0.9375rem 0;
}

.article-image img {
	height: auto;
    display: inline-flex;
    align-self: flex-start;
}

.article-inner {
	display: inline-block;
	width: 100%;
}

.article-text {
	display: inline-flex;
	width: 100%;
	flex-wrap: wrap;
}

.article-text img.alignleft {
	float: left;
	margin-right: 0.9375rem;
	margin-bottom: 0.9375rem;
}

.article-text img.alignright {
	float: right;
	margin-left: 0.9375rem;
	margin-bottom: 0.9375rem;
}

.article-text img.aligncenter {
	margin: auto auto 0.9375rem;
	float: none;
	display: block;
}

.article-cat {
	width: 100%;
	margin: 0.9375rem 0;
	font-size: 16px;
	font-weight: 600;
	border-top: 1px solid #ccc;
	padding-top: 0.9375rem;
}

/* ============================ Homepage ==================================== */

#homeSlide {
	display: inline-flex;
	width: 100%;
	float: left;
	position: relative;
	z-index: 50;
	overflow: hidden;
}

#homeSlide .slideBlock {
	height: 670px;
	display: inline-flex;
	float: left;
	width: 100%;
}

#homeSlide div {
	width: 100%;
	display: inline-block;
	float:left;
}

#homeSlide div a {float:left;}

/* hero block */

#hero-block,
#footer-hero {
	background: #cb684d;
    display: inline-flex;
    flex-wrap: wrap;
    width: 100%;
	height: 670px;
    align-items: center;
    justify-content: center;
	overflow: hidden;
	float: left;
	position: relative;
}

#hero-block .hero-text,
#footer-hero .hero-text {
	position: absolute;
    max-width: 1280px;
    width: 100%;
	display: inline-flex;
    flex-wrap: wrap;
}

#hero-block .hero-text p,
#footer-hero .hero-text p {
	font-size: 125px;
    display: inline-flex;
	flex-wrap: wrap;
    width: 100%;
    max-width: 55%;
	color:inherit;
    line-height: 1em;
	font-family: ivypresto-headline, Arial, Helvetica, sans-serif;
}

#hero-block .hero-text p strong,
#footer-hero .hero-text p strong {
	font-size: 125px;
    font-weight: bold;
    display: inline-flex;
	width:100%;
	line-height: 1em;
	font-family: ivypresto-headline, Arial, Helvetica, sans-serif;
}

#hero-block .hero-image,
#footer-hero .hero-image {
	display: inline-flex;
	width:100%;
	justify-content: flex-end;
}

#hero-block .float-image,
#footer-hero .float-image {
	max-height:100%;
	max-width: 60%;
}

#hero-element,
#footer-element {
	width:100%;
	height:100%;
	position: absolute;
}

#hero-block .float-element,
#footer-hero .float-element {
	position: absolute;
	max-width:400px;
	left:-50px!important;
}

#hero-block .float-element.top,
#footer-hero .float-element.top {top:-150px!important;}

#hero-block .float-element.bottom,
#footer-hero .float-element.bottom {
	top:auto!important;
	top:intiial!important;
	bottom:-65%!important;
}

/* info block */

#infoBlock {
	display: flex;
	width: 100%;
	justify-content: center;
	position: relative;
	padding: 0;
	z-index: 100;
}

#infoBlock .opening {
	background: #cadfc6;
    width: 100%;
	display: inline-flex;
	justify-content: center;
}

#infoBlock .opening .sectionInner {
	flex-wrap: nowrap;
	align-items: center;
}

#infoBlock .opening .sectionInner a {
	display: inline-flex;
	width:100%;
	text-decoration: none;
	align-items: center;
	padding: 1.875rem 0;
}

#infoBlock .opening .sectionInner i{
	position: absolute;
	font-size: 33px;
	right: 1.875rem;
	line-height: 1em;
	transition: all ease-out 0.3s;
}

#infoBlock .opening ul {
	margin: 0;
    display: inline-flex;
    justify-content: flex-start;
    width: 100%;
}

#infoBlock .opening ul li {
	color: #243943;
    list-style: none;
    font-size: 16px;
	font-weight: 600;
    display: inline-flex;
    width: 100%;
	justify-content: flex-end;
    margin: 0 0 5px 0;
}

#infoBlock .opening ul li .opening-day {margin:0 5px 0 0;}

#infoBlock .opening p {
	padding:0;
	color: #243943;
	font-size: 22px;
	justify-content: flex-start;
	display: inline-flex;
	width: 100%;
	margin: 0;
}

#infoBlock .opening p.note {
	font-size: 18px;
	font-style: italic;
}

#infoBlock .opening-title {
	font-size: 42px;
    line-height: 1em;
    color: #243943;
    font-weight: 600;
    display: inline-flex;
	align-items: center;
    width: 100%;
	max-width: 330px;
	font-family:ivypresto-headline, Arial, Helvetica, sans-serif ;
}

#infoBlock .opening-title span {
	color: #243943;
	font-weight: normal;
	width: 100%;
}

#infoBlock .info-button {
	width: 100%;
}

#infoBlock .info-button ul {
	width: 100%;
    display: inline-flex;
    margin: 0;
    justify-content: space-between;
}

#infoBlock .info-button ul li {
	list-style:none;
	width: 48%;
}

#infoBlock .info-button a::before {
	content: "\f061";
	position: absolute;
	font-family: fontawesome;
	right: 1.8758rem;
	font-weight: normal;
	font-size: 24px;
	transition: all ease-out 0.3s;
}

#infoBlock .info-button a {
	border: 1px solid #ccc;
	padding: 0.9375rem 1.875rem;
	width: 100%;
	font-size: 32px;
	color: #243943;
	font-weight: 600;
	transition: all ease-out 0.3s;
	display: inline-flex;
	align-items: center;
	position: relative;
	z-index: 20;
	overflow: hidden;
}

#infoBlock .info-button a::after {
	content: "";
	position: absolute;
	right: 100%;
	width: 100%;
	height: 100%;
	background: #243943;
	z-index: -1;
	transition: all ease-out 0.3s;
}


#infoBlock .info-button a:hover {
	color: #fff;
	padding-left: calc(1.875rem + 40px)
}

#infoBlock .info-button a:hover::after {
	right: 0;
}

#infoBlock .info-button a i {
	width: 40px;
	position: absolute;
	left: -40px;
	opacity: 0;
	margin: 0 0.9375rem 0 0;
	transition: all ease-out 0.3s;
}

#infoBlock .info-button a:hover i {
	left: 0.9375rem;
	opacity: 1;
}

#homeStories {
	display: flex;
	justify-content: center;
	width: 100%;
	padding:1.875rem;
	background:#d1e4e8;
}

#homeStories h3 {
	font-size: 50px;
	width:100%;
}

#homeStories a.main-link {
    width: auto;
    font-size: 20px;
    text-decoration: none;
    position: relative;
}

#homeStories a.main-link::after  {
	content: "\f061";
	position: absolute;
	font-family: fontawesome;
	right: -1.875rem;
	font-weight: normal;
	font-size: 20px;
	transition: all ease-out 0.3s;
}

#homeStories a.main-link:hover::after {
	right:-2.4rem;
}

#homeStories .grid {
	width: calc(100% + 1.875rem);
	margin: 3.75rem -0.9375rem 0;
}

#homeStories .grid-item {
	width: calc(33.333% - 1.875rem);
	padding: 0;
	overflow: hidden;
	background: #fff;
	margin: 0.9375rem;
	padding:1.875rem;
}

#homeStories .grid-item a {
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: wrap;
	width: 100%;
	text-decoration: none;
	overflow: hidden;
}

#homeStories ul li a .story-title {
	display: inline-flex;
	flex-wrap: wrap;
	width: 100%;
	line-height: 1.2em;
	margin: 0 0 1.875rem 0;
	font-weight: 600;
	position: relative;
	transition: all ease-out 0.3s;
	font-size: 32px;
	font-weight:700;
	font-family: ivypresto-headline, Arial, Helvetica, sans-serif;
}

#homeStories ul li a .story-detail {width:100%;}

#homeStories ul li a .story-title span {
	width: 100%;
    font-size:20px;
    font-weight: 300;
    font-family: IvyPresto Headline, Arial, Helvetica, sans-serif;
}

#homeStories ul li a .more {
	justify-content: flex-end;
	display: inline-flex;
	width: 100%;
	font-weight: 600;
	position: relative;
	padding: 0 1.4rem 0 0;
	align-items: center;
	transition: all ease-out 0.3s;
}

#homeStories ul li a:hover .more {
	padding: 0 1.875rem 0 0;
}

#homeStories ul li a .more::after {
	content: "\f061";
	position: absolute;
	font-family: fontawesome;
	right: 1.8758rem;
	font-weight: normal;
	font-size: 18px;
	right: 0;
	opacity: 1;
	transition: all ease-out 0.3s;
}

/* related page widget */

#relatedPage {
	display: flex;
	justify-content: center;
	width: 100%;
	margin: 1.875rem 0;
	padding: 0 1.875rem;
}

#relatedPage .relatedList {
	display: inline-flex;
	width: calc(100% + 1.875rem);
	justify-content: space-between;
	margin: 0 -0.9375rem;
}

#relatedPage .relatedList .slick-slide {
	display: inline-flex;
	width: 100%;
}

.related-block {
	display: inline-flex;
	width: 100%;
	align-items: flex-start;
	flex-wrap: wrap;
	flex-direction: column;
	justify-content: flex-start;
	margin: 0 0.9375rem;
}

.related-block a {
	display: inline-flex;
	width: 100%;
	height: 100%;
	align-items: flex-start;
	flex-wrap: wrap;
	flex-direction: column;
	text-decoration: none;
	border: 1px solid #ccc;
	padding-bottom: 0.9375rem;
}

.related-block a .related-image {
	display: inline-flex;
	width: 100%;
	height: 300px;
}

.related-block a .related-title {
	font-size: 24px;
	display: inline-flex;
	flex-wrap: wrap;
	margin: 0.9375rem 0 5px 0;
	padding: 0 0.9375rem;
	color: #243943;
	width: 100%;
	line-height: 1.2em;
	font-weight: 600;
	position: relative;
	transition: all ease-out 0.3s;
}

.related-block a .related-text {
	font-size: 16px;
	color: #243943;
	font-weight: normal;
	margin: 0 0 0.9375rem 0;
	padding: 0 0.9375rem;
}

.related-block a .more {
	justify-content: flex-end;
	display: inline-flex;
	width: 100%;
	font-weight: bold;
	position: relative;
	padding: 0 1.875rem 0 0;
	color: #243943;
	font-size: 16px;
	align-items: center;
	transition: all ease-out 0.3s;
}

.related-block a:hover .more {
	padding: 0 3.75rem 0 0;
}


.related-block a .more::after {
	content: "\f061";
	position: absolute;
	font-family: fontawesome;
	right: 1.8758rem;
	font-weight: normal;
	font-size: 20px;
	right: 1.875rem;
	opacity: 0;
	transition: all ease-out 0.3s;
}

.related-block a:hover .more::after {
	opacity: 1;
}

.direction-block {
	display: inline-flex;
	width: 100%;
	flex-wrap: wrap;
}


/* retailer landing */

#store-finder {
	display: flex;
	justify-content: center;
	width: 100%;
	flex-wrap: wrap;
}

#store-filter {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 100%;
	background: #d7e8eb;
}

#store-filter .tabs {
    width: 100%;
    background: #f3f3f3;
    list-style: none;
    margin: 0;
	display: inline-flex;
    justify-content: center;
    border: 0;
    padding: 0;
}

#store-filter .tabs a {
	color: #243943;
	text-decoration: none;
	font-weight: normal;
	font-size: 18px;
	font-weight: 600;
	transition: all ease-out 0.3s;
}

#store-filter .tabs-title>a:focus,
#store-filter .tabs-title>a[aria-selected='true'] {
	background: #d7e8eb;
}

#store-filter .tabs-content {
	border: 0;
	background: none;
	padding:0 1.875rem;
}

#store-filter .tabs-content ul {
	margin: 0;
	width: 100%;
	max-width: 1280px;
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: center;
}

#store-filter .tabs-content ul li {
	list-style: none;
	margin: 5px;
	font-weight: 600;
	transition: all ease-out 0.3s;
}

#store-filter .tabs-content ul li button {
	background: rgba(0, 0, 0, 0);
	transition: all ease-out 0.3s;
	padding:0.9375rem 1.875rem;
	border-radius:40px;
	font-weight: 600;
	font-size:18px;
}

#store-filter .tabs-content ul li button:hover {
	background: rgba(0, 0, 0, 0.2);
	cursor: pointer;
}

#store-filter .tabs-content ul li button.mixitup-control-active {
	color: #fff;
	background: #243943;
}

#store-filter .tabs-content ul li button.all {
	background: #fff;
}

#store-filter .accordion {
	width: 100%;
}

#store-filter .accordion a {
	color: #243943;
    text-decoration: none;
    font-weight: normal;
    font-size: 14px;
    padding: 8px 0.9375rem;
}

#store-filter .accordion-content {padding: 5px 0.9375rem;}

#store-filter .accordion-content ul {
	margin: 0;
    display: inline-flex;
    flex-wrap: wrap;
}

#store-filter .accordion-content ul li {
    list-style: none;
	width: auto;
	margin:0 2px 5px;
}

#store-filter .accordion-content ul li button {
	padding: 5px;
	transition: all ease-out 0.3s;
	font-size: 14px;
	color:#243943;
    background: #f2f2f2;
    border-radius: 2px;
}

#store-filter .accordion-content ul li button:focus {
	outline:none;
	background:#243943;
	color:#fff;
}

#store-filter .accordion-content ul li button.active {
	color: #fff;
	background: #243943;
}


#store-list {
	display: flex;
	width: 100%;
	margin:0.9375rem 0 3.75rem 0;
	justify-content: center;
}

#store-list ul {
	display: inline-flex;
	justify-content: center;
	margin: 0;
	padding: 0.9375rem;
	width: 100%;
	flex-wrap: wrap;
	background: #f0f0f0;
}

#store-list ul li {
	list-style: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: calc(25% - 1.875rem);
	margin: 0.9375rem;
}

#store-list ul li a {
	width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
    display: inline-flex;
    overflow: hidden;
    padding: 0.9375rem;
    background: #fff;
    position: relative;
    border: 2px solid #fff;
    transition: all ease-out 0.3s;
}

#store-list ul li a:hover {
	border: 2px solid #243943;
}

#store-list ul li a img {
	width: 100%;
    max-width: 200px;
    display: inline-flex;
    transition: all ease-out 0.3s;
}

#store-finder.offers-finder #store-list ul li a {
	flex-wrap: wrap;
	text-decoration: none;
}

/* letter filter */

#letter-filter {
	display: inline-flex;
	padding:0 1.875rem;
	justify-content: center;
	width:100%;
}

#letter-filter div {
	display: inline-flex;
	max-width: 1280px;
	width:100%;
}

#letter-filter ul {
	display: inline-flex;
	flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    margin: 1.875rem 0 0.9375rem 0;
}

#letter-filter ul li {
	display: inline-flex;
	margin: 0 5px 10px;
}

#letter-filter ul li button {
	padding:5px;
	min-width: 40px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius:3px;
	border:1px solid #243943;
	transition: all ease-out 0.3s;
}

#letter-filter ul li button:hover {
	cursor: pointer;
	background:#d7e8eb
}

#letter-filter ul li button.mixitup-control-active {
	color:#fff;
	background:#243943;
}

/* retailer page - detail */

#retailer {
	display: flex;
	justify-content: center;
	width: 100%;
	flex-wrap: wrap;
	padding: 0 1.875rem;
}

.retailer-block {
	max-width: 65%;
	width: 100%;
	min-height:40vh;
	padding: 1.875rem 0.9375rem 1.875rem 0;
}

.retailer-details {
	max-width: 35%;
	width: 100%;
	position: relative;
}

.retailer-details .details-block {
	position: absolute;
    top: -65px;
    background: rgba(255,255,255,0.9);
    z-index: 100;
    padding: 0.9375rem 1.875rem 1.875rem;
    border: 1px solid #f2f2f2;
}

.retailer-details .details-block .details-title {
	font-size: 26px;
	font-weight: 600;
	color: #243943;
	margin: 0 0 1.875rem 0;
	padding: 0 0 0.9375rem 0;
	border-bottom: 1px solid #243943;
}

.retailer-details .details-block .details-image {
	width: 100%;
	padding: 1.875rem;
	margin:0 0 1.875rem 0;
	background: #fff;
	display:inline-flex;
	justify-content: center;
	align-items: center;
}

.retailer-details .details-block .details-image img {    max-width: 150px;}

.retailer-details .details-block ul {
	margin: 0;
	display: inline-flex;
	flex-wrap: wrap;
}

.retailer-details .details-block ul li {
	display: inline-flex;
	flex-wrap: wrap;
	list-style: none;
	width: 100%;
}

.retailer-details .details-block ul li a,
.retailer-details .details-block ul li div {
	text-decoration: none;
	width: 100%;
	display: inline-flex;
	justify-content: space-between;
}

.retailer-details .details-block ul li a span,
.retailer-details .details-block ul li div span {
	color: #243943;
	font-weight: normal;
}

.retailer-details .details-block ul li a i,
.retailer-details .details-block ul li div i {
	margin: 0 0.9375rem 0 0;
	font-size: 16px;
	text-align: center;
	width: 20px;
	color: #243943;
}

.retailer-opening {
	display: inline-flex;
	width: 100%;
	flex-wrap: wrap;
}

.retailer-opening .ret-title {
	font-size: 22px;
	font-weight: bold;
	width: 100%;
	margin: 0 0 0.9375rem 0;
}

.retailer-opening ul {
	margin: 0;
	display: inline-flex;
	flex-wrap: wrap;
	width: 100%;
	max-width: 300px;
}

.retailer-opening ul li {
	list-style: none;
	display: inline-flex;
	width: 100%;
	justify-content: space-between;
}

.retailer-opening p {
	width: 100%;
	margin: 0.9375rem 0;
}

/* retailer widget */

.retailerWidget {
	display: flex;
	justify-content: center;
	width: 100%;
	padding: 3.75rem 1.875rem;
	margin: 0;
}

.retailerWidget h3 {
	font-size: 50px;
    width: 100%;
}

.retailerWidget a.main-link {
	width: auto;
    font-size: 20px;
    text-decoration: none;
    position: relative;
}

.retailerWidget a.main-link::after {
	content: "\f061";
    position: absolute;
    font-family: fontawesome;
    right: -1.875rem;
    font-weight: normal;
    font-size: 18px;
    transition: all ease-out 0.3s;
}

.retailerWidget a.main-link:hover::after{right: -2.4rem;}

.ret-widget-container {
	display: inline-block;
	width: 100%;
	margin:1.875rem 0;
}

.ret-widget-title {
	font-size: 22px;
	font-weight: bold;
	width: 100%;
	margin: 0 0 0.9375rem 0;
}

.ret-widget-block img {
	transition: all ease-out 0.3s;
}


.ret-widget-item a {
	display:inline-flex;
	justify-content: center;
	align-items: center;
	padding:10px;
	position: relative;
	width: 100%;
}

.ret-widget-item a svg {
	width: 300px;
	fill:#fff;
}

.ret-widget-item a img {
	position: absolute;
    max-width: 65%;
    max-height: 110px;
}

.ret-widget-container .slick-slide:nth-child(2n) .ret-widget-item a svg {
    transform: scale(-1, 1);
    position: relative;
    z-index: -1;
}

.ret-widget-container .slick-track {
	display:inline-flex;
	align-items: center;
}

.ret-widget-container  .slick-prev, 
.ret-widget-container .slick-next {
    width: 30px;
    height: 30px;
    background: #fff;
    border-radius: 100px;
	transition: all ease-out 0.3s;
}



/* hero block*/

.heroBlock {
	min-height: 300px;
	height: auto;
	display: flex;
	flex-wrap: Wrap;
	width: 100%;
	justify-content: center;
	padding: 0 1.875rem;
	align-items: center;
	position: relative;
	z-index: 10;
}

.heroBlock::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.6);
	z-index: 5;
}

.hero-title {
	color: #fff;
	display: inline-flex;
	flex-wrap: wrap;
	font-weight: bold;
	font-size: 45px;
	line-height: 1em;
	width: 100%;
	z-index: 10;
	position: relative;
}

.hero-title span {
	font-weight: normal;
	width: 100%;
	font-size: 35px;
}

.hero-text {
	margin-top: 0.9375rem;
	color: #fff;
	font-size: 16px;
	max-width: 50%;
	line-height: 1.2em;
	z-index: 10;
	position: relative;
}


/* signpost area */

#signpost {
	display: inline-flex;
	padding: 3.75rem 1.875rem;
	width:100%;
	justify-content: center;
}

#signpost .sign-block {
	display: inline-flex;
	align-items: center;
	width:100%;
}

#signpost .sign-block .sign-detail {width:60%;}

#signpost .sign-block .sign-detail a {
	padding:0.9375rem 3.75rem 0.9375rem 1.875rem;
	border-radius:30px;
	background:#243943;
	color:#fff;
	text-decoration: none;
	font-size:18px;
	font-weight: 600;
	margin-top:3.75rem;
	position: relative;
}

#signpost .sign-block .sign-detail a::after {
	content: "\f061";
    position: absolute;
    font-family: fontawesome;
    right: 1.875rem;
    font-weight: normal;
    font-size: 20px;
    transition: all ease-out 0.3s;
}

#signpost .sign-block .sign-detail a:hover::after {right:1.3rem;}

#signpost .sign-block .sign-title {
	font-size:60px;
	color:#243943;
	font-weight:600;
	font-family: ivypresto-headline, Arial, Helvetica, sans-serif;
}

#signpost .sign-block .sign-text {
	font-size:26px;
	color:#243943;
}

#signpost .sign-block .sign-main {
	display:inline-block;
	position: relative;
	z-index:10;
}

#signpost .sign-block.right-block .sign-detail {order:2;}
#signpost .sign-block.right-block .sign-main {
	left: -3.75rem;
}

.sign-image-block {
	position:relative;
}

.sign-image-block .signImage {
	position: absolute;
    width: 100%;
}

.sign-behind,
.sign-front {
	position: absolute;
	max-width:230px;
	width:100%;
}

.sign-behind {z-index:-1;}

.sign-front {
	bottom: 0!important;
    right: 0;
    top: initial!important;
    left: initial!important;
    z-index: 20;
}

#signpost .sign-block.right-block .sign-detail {order:2;}
#signpost .sign-block #sign-image-2 {
	width: calc(100% + 3.75rem);
	position: relative;
	right:auto;
	right:initial;
	left:-3.75rem;
}

/* visit us */

#visit {
	display:flex;
	flex-wrap:wrap;
	width:100%;
	justify-content:center;
}

#visit .mapBox {
	position:relative;
	max-width: 55%;
    min-height: 300px;
    display: inline-flex;
    width: 100%;
}

#visit .visit-map {
    display: inline-flex;
    width: 100%;
    padding: 1.875rem 0.9375rem 1.875rem 0;
    position: relative;
}

#visit .visit-detail {
	max-width: 45%;
    width: 100%;
    display: inline-flex;
    position: relative;
    background: rgba(255,255,255,0.9);
}

#visit .visit-detail .visit-detail-block {
	width: 100%;
	padding: 1.875rem 3.75rem;
}

#visit .visit-detail-block .details-title {
	font-size: 26px;
    font-weight: 600;
    color: #243943;
    margin: 0 0 1.875rem 0;
    padding: 0 0 0.9375rem 0;
    border-bottom: 1px solid #243943;
}

#visit .centre-opening ul {
	max-width:100%;
}

#visit .centre-opening ul li {color: #243943;}

#visit .centre-opening p {
	color: #243943;
    width: 100%;
    text-align: center;
    font-size: 14px;
    font-style: italic;
}

#visit .visit-map-add {
    position: absolute;
    background: rgba(255,255,255,0.9);
    padding: 0.9375rem;
    bottom: 1.875rem;
    left: 1.875rem;
    z-index: 100;
}

#visit .visit-map-add p {
	margin:0;
	color: #243943;
	font-size:14px;
}

#visit .visit-detail-block .center-details {
	display: inline-flex;
	flex-wrap: wrap;
    width: 100%;
    margin: 0 0 0.9375rem 0;
    border-bottom: 1px solid #243943;
    padding: 0 0 0.9375rem 0;
}

#visit .visit-detail-block .center-details ul {
    margin: 0;
    display: inline-flex;
	flex-wrap: wrap;
	width: 100%;
}

#visit .visit-detail-block .center-details ul li {
    display: inline-flex;
    flex-wrap: wrap;
    list-style: none;
    width: 100%;
}

#visit .visit-detail-block .center-details ul li a,
#visit .visit-detail-block .center-details ul li div {
	text-decoration: none;
    width: 100%;
    display: inline-flex;
    justify-content: space-between;
}

#visit .visit-detail-block .center-details ul li a span,
#visit .visit-detail-block .center-details ul li div span {
	color: #243943;
    font-weight: normal;
}

#visit .visit-detail-block .center-details ul li i {
	margin: 0 0.9375rem 0 0;
    font-size: 16px;
    text-align: center;
    width: 20px;
    color: #243943;
}

/* centre details */

.centre-opening {
	display: inline-flex;
    width: 100%;
    flex-wrap: wrap;
    border-bottom: 1px solid #243943;
    margin: 0 0 0.9375rem 0;
}

.centre-opening .ret-title {
	font-size: 22px;
	font-weight: bold;
	width: 100%;
	margin: 0 0 0.9375rem 0;
}

.centre-opening ul {
	margin: 0;
	display: inline-flex;
	flex-wrap: wrap;
	width: 100%;
	max-width: 300px;
}

.centre-opening ul li {
	list-style: none;
	display: inline-flex;
	width: 100%;
	justify-content: space-between;
}

.centre-opening p {
	width: 100%;
	margin: 0.9375rem 0;
}

.center-social p {
	color:#243943;
	font-size:14px;
	text-align: center;
}

.center-social ul {
	display: inline-flex;
    width: 100%;
    padding: 0 0.9375rem;
    justify-content: center;
    align-items: center;
    margin: 0 0 0.9375rem 0;
}

.center-social ul li {
	list-style:none;
	margin:0 5px;
}

.center-social ul li a i {
	color:#243943;
	font-size:24px;
}


/* visit tabs */

#visit .sectionInner {
	margin:1.875rem 0;
	padding:0 1.875rem;
}

#visit .sectionInner ul.tabs {
	width: 100%;
	border: none;
}

#visit .sectionInner ul.tabs li {
	list-style: none;
    border: 1px solid #e6e6e6;
	border-bottom: 0;
	border-right: 0;
}

#visit .visit-travel .tabs-content .tabs-panel ul { margin-left: 1.25rem;}

#visit .visit-travel .tabs-content .tabs-panel ul li {list-style: initial;}

#visit .sectionInner ul.tabs li:last-child {border-right: 1px solid #e6e6e6;}

#visit .sectionInner ul.tabs li a {
	font-size: 16px;
	color: #243943;
	text-decoration: none;
}

#visit .sectionInner ul.tabs li a i {margin:0 0.9375rem;}

#visit .tabs-content {
	width:100%;
	border:0;
	flex-wrap:wrap;
	display:inline-flex;
}

#visit .tabs-content a {
	color: #243943;
}

#visit .tabs-content .tabs-panel {
	width: 100%;
	flex-wrap: wrap;
	padding: 1.875rem;
}

#visit .tabs-content .tabs-panel.is-active  {
	display: inline-flex;
	border: 1px solid #e6e6e6;
}

#visit .tabs-content .tabs-panel div {
	margin: 0 0 0.9375rem 0;
}

#visit .tabs-content .tabs-inner {
	display: inline-flex;
    width: 100%;
}

#visit .tabs-content .tabs-inner .carpark-details,
#visit .tabs-content .tabs-inner .carpark-content {width:100%;}

#visit .tabs-content .tabs-inner .carpark-content {
	width: 100%;
    display: inline-flex;
    padding: 0 1.875rem;
    justify-content: space-between;
}

#visit .userBlock {width:100%;}

#visit .userBlock .userBlock-title {
	font-size: 18px;
    font-weight: bold;
}

#visit .tabs-content .tabs-panel ul {
	margin:0;
}

#visit .tabs-content .tabs-panel ul li {
	list-style:none;
}

#visit .tabs-content .tabs-panel div.carpark-title {
	font-size:23px;
	font-weight:bold;
	width:100%;
}

#visit .tabs-content .tabs-panel div.park-day,
#visit .tabs-content .tabs-panel div.park-time {margin:0;}

#visit .tabs-content .tabs-panel div.carpark-details ul li {margin:0 0 5px 0;}

#visit .tabs-content .tabs-panel div.carpark-details ul li i {
	font-size: 16px;
    width: 20px;
    text-align: center;
}

#visit .tabs-content .tabs-panel div.carpark-details ul li i.fa-wheelchair {font-weight:bold;}

.carpark-details ul li a,
.carpark-content a {color:#243943;}


#visit .travel-title {
	font-size: 23px;
    font-weight: bold;
    width: 100%;
}

#visit .visit-travel {
	width: 100%;
    align-items: flex-start;
    display: inline-flex;
    flex-wrap: wrap;
}

#visit .visit-travel a {color:#243943;}

#visit .userBlock-link {
	font-size:16px;
	font-weight: normal;
}

/* contact us */

#formBlock {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: center;
    padding: 0.9375rem 1.8775rem;
}

#formBlock .form-content {
	width: 100%;
    background: #f2f2f2;
    padding: 1.875rem;
    display: inline-flex;
    justify-content: center;
}

.form-content .form-inner {
	max-width:1024px;
	width: 100%;
}

#formBlock .button {
	font-size: 16px;
    font-weight: bold;
    background: #231f20;
    float: right;
}

/* accordion widget */

.accordions {
	display: flex;
    flex-wrap: wrap;
    width: 100%;
	justify-content: center;
	margin: 3.75rem 0;
	padding:0 1.875rem;
}

.accordions .widgetTitle,
.accordions .widgetText {max-width:1024px;}

.accordions .sectionInner {justify-content: center;}

 .accordions ul.accordion {
	width: 100%;
	max-width: 1024px;
	background:none;
	padding:0;
	margin: 1.875rem 0;
 }

 .accordions ul.accordion li {
	 border:0;
	 flex-wrap:wrap;
	 font-size:16px;
	 position:relative;
	 list-style:none;
}

.accordions ul.accordion li::before {display:none;}

.accordions ul.accordion li .accordion-content ul li::before {display: inline-flex;}

 .accordions ul.accordion li a {
	font-size: 18px;
	font-weight:bold;
	width:100%;
	color:#666;
	text-decoration:none;
	border-color: #243943!important;
	color: #231f20;
	padding: 1.875rem 3.75rem;
	background: #fff;
	transition:all ease-out 0.3s;
 }

 .accordions ul.accordion li.is-active a {
	 background:#243943;
	 color:#EACA48;
 }

 .accordions .accordion-content {
	background: #fff;
	border-top: 0;
	border-bottom: 1px solid;
    width: 100%;
	padding: 1.875rem 3.75rem;
	border-color: #231f20!important;
 }
 
 .accordions .accordion-content p {
	 font-size:16px;
	 margin: 0;
	 color:#666;
 }

 .accordions .accordion-content ul {margin-top:0.9375rem;}

 .accordions .accordion-content ul li,
 .accordions .accordion-content ol li  {list-style:initial;}

 .accordions.widget .accordion-content ul li::before {
	color: #3FCB49;
	content: "\2023";
	display: inline-flex;
	font-size: 34px;
	height: auto;
	left: -1.2rem;
	position: absolute;
	top: 0;
	line-height: 1em;
	height: 26px;
	align-items: center;
 }

 .accordions .accordion-title::before,
 .accordions .is-active > .accordion-title::before  {
	font-size: 20px;
    font-family: fontawesome;
    margin: 0;
	top: 45%;
	color:#231f20;
    transform: translateY(-50%);
    right: 1.875rem;
    display: inline-flex;
    align-items: center;
    align-self: center;
 }

 .accordions .is-active > .accordion-title::before {color:#EACA48;}

.accordBlock {
	width: 100%;
    max-width: 1024px;
    background: none;
    padding: 0;
    margin: 1.875rem 0 0 0;
}

.accordBlock .accordBlock-title {
	font-weight: 600;
    font-size: 32px;
    margin: 0;
}

.accordBlock .accordBlock-text {
	font-size: 16px;
    color: #243943;
    font-weight: normal;
}

/* button widget */

.button-widget {
	display: flex;
    width: 100%;
    justify-content: center;
 }

 .button-widget .buttonInner {
	display: inline-flex;
    width: 100%;
    padding: 1.875rem;
    background: #f2f2f2;
    max-width: 1024px;
    justify-content: center;
 }

 .button-widget .buttonInner a {
	background: #fff;
    padding: 0.9375rem 1.875rem;
    font-size: 16px;
	text-decoration: none;
	position:relative;
	overflow: hidden;
	z-index:20;
	transition: all ease-out 0.3s;
	border:1px solid #231f20;
 }

 .button-widget .buttonInner a:hover { color:#fff;}

 .button-widget .buttonInner a::after {
	 content:"";
	 position:absolute;
	 left:-100%;
	 top:0;
	 background:#231f20;
	 width:100%;
	 height:100%;
	 z-index:-1;
	 transition: all ease-out 0.3s;
 }

 .button-widget .buttonInner a:hover::after {
	 left:0;
 }
 /* listing page */

 #listingTemplate {
	 display:flex;
	 justify-content: center;
	 width:100%;
 }

 #listingTemplate ul {
	display: inline-flex;
    width: 100%;
    flex-wrap: wrap;
    margin: 1.875rem 0;
}

#listingTemplate ul li {
	display:inline-flex;
	width:25%;
	padding:0 0.9375rem;
}

#listingTemplate ul li a {
	width: 100%;
	text-decoration: none;
}

#listingTemplate ul li .listing_thumb {
	height:250px;
	border:1px solid #f2f2f2;
}

.listing_content .title {
	font-size: 24px;
    display: inline-flex;
    flex-wrap: wrap;
    margin: 0.9375rem 0 5px 0;
    padding: 0;
    color: #243943;
    width: 100%;
    line-height: 1.2em;
    font-weight: 600;
    position: relative;
    transition: all ease-out 0.3s;
}

.listing_content {margin:0 0 0.9375rem 0;}

.listing_content .text {
	font-size: 16px;
    color: #243943;
    font-weight: normal;
}

#listingTemplate ul li .more {
	justify-content: flex-end;
    display: inline-flex;
    width: 100%;
    font-weight: bold;
    position: relative;
    padding: 0;
    align-items: center;
    transition: all ease-out 0.3s;
}

#listingTemplate ul li .more::after  {
	content: "\f061";
    position: absolute;
    font-family: fontawesome;
    right: 1.8758rem;
    font-weight: normal;
    font-size: 20px;
    right: 0;
    opacity: 0;
    transition: all ease-out 0.3s;
}

#listingTemplate ul li a:hover .more  {padding: 0 1.875rem 0 0;}
#listingTemplate ul li a:hover .more::after {opacity: 1;}

/* cta widget */

.main-cta {
	display:flex;
	justify-content: center;
    margin: 0 0 1.875rem 0;
}

.main-cta ul {
	margin:0;
	display:inline-flex;
	width:100%;
	justify-content: space-between;
}

.main-cta ul li {
	list-style:none;
	min-width:33.333%;
	width:100%;
}

.main-cta ul li a {
	height: 300px;
    width: 100%;
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    flex-direction: column;
	align-items: center;
	text-decoration:none;
	position:relative;
	padding: 0.9375rem;
}

.main-cta ul li a::after {
	content:"";
	position:absolute;
	z-index:20;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.3);
}

.main-cta ul li a .cta-title {
	font-size: 24px;
    display: inline-flex;
	flex-wrap: wrap;
	justify-content: center;
    margin: 0.9375rem 0 5px 0;
    padding: 0 0.9375rem;
    color: #fff;
    line-height: 1.2em;
    font-weight: 600;
    position: relative;
	transition: all ease-out 0.3s;
	z-index:40;
	width:100%;
	max-width: 450px;
	margin-bottom: -3.75rem;
}

.main-cta ul li a .cta-text {
	font-size: 16px;
	color: #fff;
	max-width: 450px;
	min-height:45px;
    font-weight: normal;
    margin: 0 0 0.9375rem 0;
	padding: 0 0.9375rem;
	position: relative;
	z-index:40;
	text-align: center;
	transition: all ease-out 0.3s;
	opacity:0;
}

.cta-arrow {
	display:inline-flex;
	width:100%;
	justify-content: center;
}

.cta-arrow::after {
	content: "\f061";
    font-family: fontawesome;
    position: relative;
    left: 0;
    font-weight: normal;
    font-size: 20px;
    right: 1.875rem;
    color: #fff;
    width: 100%;
    z-index: 40;
    text-align: center;
     transition: all ease-out 0.3s;
}

.main-cta ul li a:hover .cta-title {margin:0;}
.main-cta ul li a:hover .cta-text {opacity:1;}

/* search results */

#searchResults ul {
	margin: 0;
    display: inline-flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#searchResults ul li {
	list-style: none;
    width: 49%;
    padding: 0.9375rem;
    border: 1px solid #ccc;
    margin: 0 0 1.875rem 0;
    flex-direction: column;
    justify-content: space-between;
    display: inline-flex;
}

#searchResults ul li h3 {
	font-size: 22px;
}



/* page shapes */

.shape-holder {
    display: inline-flex;
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: -1;
    align-items: flex-start;
}

.shape-holder svg,
.shape-holder img {
	width:100%;
	max-width:400px;
	position: absolute;
	opacity:0.3;
}

.shape-holder img.shape-1 {
	top:-20px!important;
	left:-20px!important;
}

.shape-holder img.shape-2 {
	top:auto!important;
	top:initial!important;
	left:auto!important;
	left:initial!important;
	bottom:-30px;
	right:-40px;
}

.store-sort {
	display: inline-flex;
    justify-content: center;
    flex-wrap: wrap;
    width: 100%;
}

.store-sort .sort-inner {
	max-width: 1440px;
    width: 100%;
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0.9375rem 0;
} 

.store-sort p {
	width:100%;
	text-align: center;
}

.store-sort button {
	padding: 0.9375rem;
    background: #243943;
    border-radius: 25px;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    margin: 0 8px;
    min-width: 45px;
}

.store-sort button:hover {cursor: pointer;}

.offer-retailers {
	display: inline-flex;
    width: 100%;
    flex-wrap: wrap;
    margin: 1.875rem 0;
}

.offer-retailers-inner {
	display: inline-flex;
    width: calc(100% + 1.875rem);
    flex-wrap: wrap;
    margin: 0 -0.9375rem;
}

.offer-retailers-inner a {
	max-width: calc(25% - 1.875rem);
    width: 100%;
    display: inline-flex;
	text-decoration: none;
	flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    border: 1px solid #f2f2f2;
    margin: 0.9375rem;
    padding: 0.9375rem;
}

.offer-retailers-inner a div {
	font-size:16px;
	font-weight: bold;
}

/* ========= column template ======== */

#content_hold .template-layout {
	width:100%;
}

#content_hold .template-layout h1,
#content_hold .template-layout h2,
#content_hold .template-layout h3,
#content_hold .template-layout h4,
#content_hold .template-layout h5 {
	padding:0.9375rem;
	background:#243943;
	color:#fff;
	font-weight: 400;
	margin: 1.875rem 0 0.9375rem;
}

#column-layout {
	display: inline-flex;
	flex-wrap: wrap;
	width:100%;
	flex-wrap: wrap;
	justify-content: center;
}

#column-layout .whitepaper {
	display: inline-flex;
	flex-wrap: wrap;
	width:100%;
}

#column-layout .whitepaper-block {
	display: inline-flex;
	flex-wrap: wrap;
	width:100%;
	justify-content: space-between;
    align-items: stretch;
	margin: 0 0 1.875rem;
}

#column-layout .whitepaper-block-text {
	padding: 1.875rem;
    justify-content: center;
    display: inline-flex;
	flex-wrap: wrap;
	flex-direction: column;
}

#column-layout .whitepaper-block-text iframe,
#column-layout .whitepaper-block-text p {
	width:100%;
}

#column-layout .whitepaper-block-image.full {
	width: 100%;
    padding: 1.875rem 0;
}

#column-layout .whitepaper-block-image.full .whitepaper-image-text {
	position: relative;
	padding:1.875rem 0;
	background: none;
}

#column-layout .whitepaper-block-image.full .whitepaper-image-text h1,
#column-layout .whitepaper-block-image.full .whitepaper-image-text h2,
#column-layout .whitepaper-block-image.full .whitepaper-image-text h3,
#column-layout .whitepaper-block-image.full .whitepaper-image-text h4,
#column-layout .whitepaper-block-image.full .whitepaper-image-text h5 {
	padding:0.9375rem;
	background:#243943;
	color:#fff;
	font-weight: 400;
	margin: 0 0 0.9375rem;
}

#column-layout .whitepaper-block-image.full .whitepaper-image-text p {
	font-size:16px;
	font-family: sofia-pro, Arial, Helvetica, sans-serif;
}

#column-layout .whitepaper-block-text.half {
	width:100%;
	max-width:calc(50% - 0.9375rem);
}

#column-layout .whitepaper-block-text h1,
#column-layout .whitepaper-block-text h2,
#column-layout .whitepaper-block-text h3,
#column-layout .whitepaper-block-text h4,
#column-layout .whitepaper-block-text h5,
#column-layout .whitepaper-block-text h6,
#column-layout .whitepaper-block-text p {
	color:inherit;
}

#column-layout .whitepaper-block-image.full  {
	width:100%;
}

#column-layout .whitepaper-block-image.half {
	width:100%;
	max-width:calc(50% - 0.9375rem);
}


#column-layout .whitepaper-image-container {
    position: relative;
}

#column-layout .whitepaper-image-container img {width:100%;}

#column-layout .whitepaper-image-text {
	position: absolute;
    bottom: 0;
    left: 0;
    background: rgba(0,0,0,0.5);
    padding: 1.875rem;
	width:100%;
}

#column-layout .whitepaper-image-text p {
	color: inherit;
    margin: 0;
    font-size: 22px;
    font-family: ivypresto-headline, Arial, Helvetica, sans-serif;
}

/* ======= tabs key area ====== */

#keyAreas {
	display: inline-flex;
    justify-content: center;
    width: 100%;
    padding: 1.875rem;
}

#keyAreas .keyAreasInner {
	width: 100%;
	max-width:1280px;
}

#keyAreas .tabs-content,
#keyAreas .accordion-content {
	background: #243943;
}

#keyAreas .accordion-content {padding:0;}

#keyAreas .tabs-content .tabs-panel,
#keyAreas .accordion-content .tabs-panel {
	padding:1.875rem;
	position: relative;
	z-index:10;
}

#keyAreas .tabs-content .tabs-panel .tabPanelInner,
#keyAreas .accordion-content .tabPanelInner {
	position: relative;
	z-index:10;
}

#keyAreas .accordion-content .tabPanelInner {
	padding:1.875rem;
}

#keyAreas .tabs-content .tabs-panel::after,
#keyAreas .accordion-content .tabPanelInner::after {
	content:"";
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	z-index:0;
	background:rgba(36,57,67,0.8);
}

#keyAreas .tabs-content h1,
#keyAreas .tabs-content h2,
#keyAreas .tabs-content h3,
#keyAreas .tabs-content h4,
#keyAreas .tabs-content h5,
#keyAreas .tabs-content h6,
#keyAreas .tabs-content p {
	color:#fff;
}

#keyAreas .accordion-content h1,
#keyAreas .accordion-content h2,
#keyAreas .accordion-content h3,
#keyAreas .accordion-content h4,
#keyAreas .accordion-content h5,
#keyAreas .accordion-content h6,
#keyAreas .accordion-content p {
	color:#fff;
	position: relative;
	z-index:10;
}

.tabs-content p,
.accordion-content p {
	font-size:18px;
	margin:0 0 0.9375rem 0;
}

#keyAreas .tabs-content a,
#keyAreas .accordion-content a {
	padding: 0.9375rem 1.875rem;
    font-weight: bold;
    color: #243943;
    background: #eaca48;
    font-size: 18px;
    text-decoration: none;
    border-radius: 30px;
    position: relative;
    padding-right: 3.75rem;
	z-index:10;
}

#keyAreas .tabs-content a::after,
#keyAreas .accordion-content a::after {
	content: "\f061";
    position: absolute;
    font-family: fontawesome;
    right: 1.875rem;
    font-weight: normal;
    font-size: 18px;
    opacity: 1;
    transition: all ease-out 0.3s;
}

#keyAreas .tabs-content a:hover::after,
#keyAreas .accordion-content a:hover::after {
	right:1.6rem;
}

#keyAreas ul.tabs {
	border-bottom:0;
	display: inline-flex;
    width: 100%;
}

#keyAreas ul li {
	width:100%;
}

#keyAreas ul li a {
	background: #d7e8eb;
    text-decoration: none;
    font-size: 18px;
    transition: all ease-out 0.3s;
    height: 100%;
    display: inline-flex;
    width: 100%;
    align-items: center;
    text-decoration: none;
    font-size: 18px;
	transition: all ease-out 0.3s;
}

#keyAreas ul li a:hover {
	color:#eaca48;
}

#keyAreas ul li.is-active a {
	background:#243943;
	color: #fff;
}



/* === curator feed ===*/

.curator-wrap {
	display: inline-flex;
    justify-content: center;
	width: 100%;
	margin:1.875rem 0;
}

.curator-feed {
	display: inline-flex;
	width:100%;
	max-width:1430px;
	font-size:16px;
}

/* ===== flippy boxes ====== */

.flipBox {
	display: flex;
    justify-content: center;
    width: 100%;
    padding: 1.875rem;
}

.flipBox p {
	font-size:16px;
}

.flipBox h2 {
	margin: 0 0 0.9375rem 0;
	width:100%;
}

.flipText {
	justify-content: center;
    display: flex;
    flex-wrap: wrap;
    padding: 0 8rem;
    text-align: center;
}

.flipText p {
	font-size: 16px;
    text-align: center;
}

.flipBoxes  {
	margin: 0 -0.9375rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: calc(100% + 1.875rem);
    max-width: calc(1280px + 1.875rem);
}

.flipBoxes li  {
	list-style: none;
	width: 33.333%;
    min-height: 440px;
    height: auto;
    position: relative;
    z-index: 200;
	perspective: 1000px;
	padding: 0 0.9375rem;
	margin: 0 0 1.875rem 0;
}

.flipBoxes li .flipper  {
	position: relative;
    width: 100%;
    height: 100%;
    text-align: center;
	transition: all ease-out 0.5s;
    transform-style: preserve-3d;
}

.boxFront,
.boxBack {
	position: absolute;
    width: 100%;
    height: 100%;
    display: inline-flex;
    min-height: 350px;
    transition: all ease-out 0.3s;
    background: none;
    backface-visibility: hidden;
    padding: 1.875rem;
    justify-content: center;
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
}

.boxFront {
	z-index: 9;
	background:#243943;
}

.boxFront h5{
	font-weight: 400;
    font-size: 26px;
    color: #fff;
    padding: 0;
    margin: 4% 4% 5px;
    line-height: 1.2em;
}

.boxFront p {
	color:#fff;
}

.boxFront .turnIcon {
	width: 30px;
    height: 30px;
    position: absolute;
    bottom: 0.9375rem;
    right: 0.9375rem;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.boxFront img {
	max-width: 150px;
	width: 100%;
	margin:0 0 10px 0;
    image-rendering: -o-crisp-edges;
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
    -ms-interpolation-mode: nearest-neighbor
}

.boxBack {	
	transform: rotateY(180deg);
	z-index: 10;
	background:#eaca48;
	align-items: flex-start;
	padding: 0.9375rem 7%;
	overflow:hidden;
}

.boxBack p {
	font-size: 16px;
    text-align: left;
}

.boxBack a {
	font-size: 16px;
	color:#1e2a39;
	text-align: left;
	font-weight:bold;
	position:relative;
    display: flex;
	align-items: center;
	transition: all ease-out 0.3s;
}

.flipBoxes li:hover .flipper {
	transform: rotateY(180deg);
	
}

.flipBoxes li:hover .boxFront,
.flipBoxes li:hover .boxBack {
	box-shadow: 0px 5px 20px rgba(0,0,0,0.1);
}

.flipBoxes li:hover .boxFront {opacity: 0;}

.flipBoxes li:hover .boxBack {z-index:11;}


/* ========================================= Media Queries ================================================= */

/* 1440 */
@media only screen and (max-width: 90.063em) {
	#site-banner .banner-inner {padding:1.875rem 3.75rem 1.875rem 1.875rem;}
}
/* 1280 */
@media only screen and (max-width: 80.063em) {

	#column-layout .whitepaper-block-image.textandimage,
	#column-layout .whitepaper-block-text.textandimage {max-width:100%;}
	#mainLogo {max-width:200px;}
	
	#homeImage .image-title-inner {padding: 1.875rem;}

	.related-block a .related-image {height: 200px;}

	#visit .visit-detail {max-width:45%;}
	#visit .mapBox {max-width:55%;}

	#visit .tabs-content .tabs-panel .carpark-details {width:100%;}

	#visit .tabs-content .tabs-panel div {
		margin:0 0 0.9375rem 0;
		width:100%;
	}

	#homeSlide .slideBlock {height:600px;}
	#hero-block .hero-image, #footer-hero .hero-image {max-width: 700px;}

	#infoBlock .opening-title {font-size: 36px;}
	#infoBlock .opening p {font-size:18px;}

	#infoBlock .opening .sectionInner a {padding:1.875rem;}

	#hero-block,
	#footer-hero {
		align-items: flex-end;
		justify-content: flex-end;
		height:410px;
	}
	#hero-block .hero-text,
	#footer-hero .hero-text {
		padding:0 1.875rem;
		align-self: center;
	}

	#hero-block .hero-image,
	#footer-hero .hero-image {
		justify-content: flex-end;
		max-width: 800px;
	}
	#hero-block .hero-text p,
	#hero-block .hero-text p strong,
	#footer-hero .hero-text p,
	#footer-hero .hero-text p strong {
		max-width:100%;
	    font-size: 70px;
	}

	.sign-behind, .sign-front {max-width:200px;}

	footer .sectionInner {padding:1.875rem;}

	#mainPageTitle {padding:0 1.875rem;}
	#breadBin {padding:0 1.875rem;}
	
	#blog-cat ul {flex-wrap: wrap;}

	#blog-cat ul li a {
		font-size:16px;
		margin: 5px;
	}

	#headerContainer .menu a {font-size:16px;}
	.ret-widget-item a img {max-height:90px;}
}



@media only screen and (max-width: 64.063em) {

	.flipBoxes li {min-height:340px;}
	.boxFront, .boxBack {padding:0.9375rem;}
	.boxFront h5 {font-size:24px;}
	
	.mobileNavContainer,
	#nav-toggle,
	#close-toggle  {display:inline-flex;}

	#mainLogo {
		justify-content: center;    
		display: inline-flex;
	}

	#homeStories ul {
		flex-wrap: wrap;
	}

	#homeStories ul li {
		max-width: 100%;
		margin: 0 0 0.9375rem;
	}

	.headerInner {justify-content: center;}

	#headerContainer {padding:10px 0.9375rem;}
	#mainLogo svg {max-width:130px;}
	#homeSlide .slideBlock {height:500px;}


	#infoBlock .opening-title {
		font-size: 28px;
	}

	#infoBlock .opening p {
		font-size: 16px;
	}

	.blog-post {width: calc(50% - 1.875rem);}

	.article-content {flex-wrap: wrap;}

	.article-image {
		margin:0 0 1.875rem 0;
		max-width: 100%;
		background-position: top!important;
	}

	.article-image img {width:100%;}

	.article-text {width: 100%;}

	.footerBottom .sectionInner,
	.footerBottom .idTag {
		justify-content: center;
	}

	.footerBottom .idTag a,
	.footerBottom .idTag p {
		text-align: center;
	}

	#relatedPage .relatedList {flex-wrap: wrap;}

	.related-block {
		max-width: 100%;
		margin: 0 0 0.9375rem 0;
	}

	#store-list ul li {max-width: calc(33.333% - 1.875rem);}

	.retailer-block {
		max-width: 55%;
		min-height:auto;
	}

	.retailer-details {max-width: 45%;}

	.hide-medium {display:none!important;}

	#visit .tabs-content .tabs-inner {flex-wrap:wrap;}
	#visit .visit-detail .visit-detail-block {padding:1.875rem 0;}
	#visit .visit-detail {max-width:100%;}
	#visit .mapBox {max-width:100%;}

	#listingTemplate ul li {width:33.333%;}
	#listingTemplate ul li .listing_thumb {height:200px;}

	.main-cta ul {flex-wrap: wrap;}
	.main-cta ul li {width:50%;}
	.main-cta ul li:nth-child(3) {width:100%;}

	#homeStories .grid-item {width: calc(50% - 1.875rem);}

	.footerTop {padding:0 1.875rem;}

	#signpost .sectionInner {justify-content: center;}
	#signpost .sign-block {
		flex-wrap: wrap;
		max-width:600px;
	}
	#signpost .sign-block .sign-detail {
		order:2;
		width:100%;
	}

	#signpost .sign-block div {width:100%;}
	#signpost .sign-block.right-block .sign-main {left:0;}
	#signpost .sign-block .sign-detail a {margin:1.875rem 0;}
	
	#signpost .sign-block .sign-main {
		display: block;
		margin: auto;
		float: none;
		max-width: 600px;
	}

	footer .footer-strap .sectionInner {
		flex-wrap: wrap;
		justify-content: center;
		padding:0 1.875rem;
	}

	footer .footer-strap h4 {text-align: center;}

	footer .footer-strap ul {
		justify-content: center;
		margin:1.875rem 0 0 0;
	}

	.footerAddress {
		width: 100%;
		justify-content: center;
		padding: 0;
		flex-direction: column;
		align-items: center;
		flex-wrap: nowrap;
	}

	.footerAddress .footerAddress-links {
		justify-content: center;
		width: 100%;
		align-items: center;
	}

	.footerAddress .footerAddress-details div {
		text-align: center;
		justify-content: center;
	}

	.shape-holder svg, 
	.shape-holder img {max-width:300px;}

	.searchButton {
		right: 0.9375rem;
		position: absolute;
		width: 30px;
		height: 30px;
	}
	.searchButton svg {
		width: 30px;
		height: 30px;
	}
	.retailer-details .details-block {
		position: relative;
		top:0;
		margin:0.9375rem 0;
	}
	#site-banner .banner-inner {flex-wrap: wrap;}
	#site-banner a {
		position: relative;
		margin-top:0.9375rem;
		right: auto;
	}

}



@media only screen and (max-width: 56.263em) {

	.flipBoxes li {width:50%;}

	#homeSlide .slideBlock {height: 310px;}

	.homepage #headerContainer {position: relative;}

	#infoBlock .info-button ul {flex-wrap:wrap;}
	
	#infoBlock .info-button ul li {
		width:100%;
		margin:0 0 0.9375rem 0;
	}
	.ret-widget-item a img {max-height:80px;}

}

@media only screen and (max-width: 48.063em) {

	#mainPageTitle {padding:0;    margin: 0;}
	#breadBin {padding:0;}

	#column-layout .whitepaper-block-text p a {display: inline;}
	#column-layout .whitepaper-image-text p {font-size:18px;}
	#column-layout .whitepaper-block-text {flex-direction: row;}
	#column-layout .whitepaper-block-image.half,
	#column-layout .whitepaper-block-text.half{max-width: 100%;}

	#keyAreas ul li a {padding-right:1.875rem;}

	.flipBoxes li {width:100%;}

	.retailer-block {
		max-width: 100%;
		order: 2;
		padding-top: 0;
	}

	.retailer-details {
		max-width: 100%;
		order: 1;
	}

	.retailer-details .details-block {
		position: relative;
		top: -25px;
		margin:0;
	}

	.retailer-opening ul {
		max-width: 100%;
	}
	
	#listingTemplate ul li {width:50%;}

	#hero-block,
	#footer-hero {height:100%;}

	#hero-block .hero-text p, 
	#hero-block .hero-text p strong,
	#footer-hero .hero-text p, 
	#footer-hero .hero-text p strong {
		font-size: 50px;
		margin:0;
	}

	#hero-block .hero-image,
	#footer-hero .hero-image {
		max-width: 600px;
		padding-top:7.5rem;
	}

	#hero-block .hero-text,
	#footer-hero .hero-text {
		padding: 0 1.875rem;
		align-self: flex-start;
		margin-top: 3.75rem;
	}

	.sign-behind, 
	.sign-front{max-width: 150px;}

	#signpost .sign-block .sign-title {font-size:40px;}
	#signpost .sign-block .sign-text {font-size:20px;}
	#signpost .sign-block .sign-detail a {margin-top:1.875rem;}

	.opening-text {display:none;}

}

@media only screen and (max-width: 40.063em) {

	.offer-retailers-inner a {max-width:calc(50% - 1.875rem)}

	.offer-retailers {order:3;}

	#homeSlide .slideBlock {height: 220px;}

	.homepage #headerContainer {position: relative;}

	.blog-menu ul.accordion {
		position: relative;
	}

	.blog-post {width: calc(100% - 1.875rem);}

	#mainLogo {
		display: inline-flex;
		justify-content: center;
		max-width:100%;
	}

	#mainLogo svg {max-width: 160px;}

	#nav-toggle {
		position:absolute;
		right:3.75rem;
	}

	#content_hold .button-block .button-outline {
		padding: 10px;
		font-size: 14px;
	}

	#content_hold .button-block .button-general {
		padding: 10px;
		font-size: 14px;
		min-width: 110px;
		justify-content: space-evenly;
		display: inline-flex;
		align-items: center;
	}

	.footerSm:first-child a {
		margin-left: 0;
	}

	.footerBottom ul li a {
		padding: 5px 10px;
	}

	.footerTop,
	.footerBottom {
		padding: 1.875rem;
	}

	.hero-title span {
		font-size: 26px;
	}

	.hero-title {
		font-size: 32px;
	}

	.hero-text {
		max-width: 100%;
		font-size: 14px;
	}

	#store-filter .accordion {margin:0;}
	#store-list {margin-top:0;}
	#store-filter {background: none;}
	#store-list ul li {max-width: calc(50% - 1.875rem);}

	.hide-small {display:none!important;}

	#visit .accordion {width:100%;}

	.main-cta ul li {width:100%;}

	#searchResults ul li {width:100%;}

	#signpost .sign-block .sign-detail {width: 100%;}

	#homeStories .grid-item {width: calc(100% - 1.875rem);}

	#homeStories h3,
	.retailerWidget h3 {
		font-size: 40px;
		line-height: 1.2em;
	}

	#signpost .sign-block {margin-bottom:1.875rem;}

	footer .footer-strap h4 {font-size:26px;}
	footer .footer-strap ul li a {
		width:30px;
		height:30px;
	}

	footer .footer-strap ul li a i {font-size:16px;}
	footer .sectionInner {padding:0;}

	.footerAddress .footerAddress-links a {margin: 0 0 5px 0;}
	.footerAddress .footerAddress-links a i {display:none;}

	#hero-block .hero-text,
	#footer-hero .hero-text {
		margin-top: 0.9375rem;
	}

	#hero-element, 
	#footer-element {display:none;}

	.shape-holder svg, 
	.shape-holder img {max-width:200px;}

	.shape-holder img.shape-1 {
		top: -40px!important;
		left: -75px!important;
	}

	.shape-holder img.shape-2 {
		bottom: 35px;
		right: -20px;
	}

	#hero-block .float-image, 
	#footer-hero .float-image {max-width:100%;}

	#signpost .sign-block .sign-main {max-width:100%;}

	#site-banner .banner-inner {flex-wrap: wrap;} 

	#site-banner .site-banner-title {font-size: 28px;}

}

@media only screen and (max-width: 23.063em) {

	#mainLogo svg {
		max-width: 130px;
	}

}

/* to make captcha slightly smaller to fit on small screens */
@media screen and (max-width: 1024px) {

	#rc-imageselect,
	g-recaptcha {
		transform: scale(0.77);
		-webkit-transform: scale(0.77);
		transform-origin: 0 0;
		-webkit-transform-origin: 0 0;
	}
}

.button-prev,
.button-next {margin:0 0.9375rem;}

a.button {
	padding: 0.9375rem 3.75rem 0.9375rem 1.875rem;
    border-radius: 30px;
    background: #243943;
    color: #fff;
    text-decoration: none;
    font-size: 18px;
    font-weight: 600;
    margin-top: 0.9375rem;
    position: relative;
	display: inline-flex;
	align-items: center;
}

a.button:hover, 
a.button:focus {
    text-decoration: none;
}

a.button::after {
    content: "\f061";
    position: absolute;
    font-family: fontawesome;
    right: 1.875rem;
    font-weight: normal;
    font-size: 16px;
    transition: all ease-out 0.3s;
}

a.button:hover {background: #243943;}
a.button:hover::after {right: 1.3rem;}

a.button.large {font-size:1.3rem;}
a.button.small {font-size:1rem;}

/* prev button */
.button-prev a.button {
	padding: 0.9375rem 1.875rem 0.9375rem 3.75rem;
}

.button-prev a.button::after {
	right:auto;
	right:initial;
	transform: rotate(180deg);
	left:1.875rem;
}

.button-prev a.button:hover::after {left: 1.3rem;}

.hide-element {
    border: 0;
    clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px; 
} 


