/******************************************************************

Theme Name: Eight Wire
Theme URI: https://eightwire.uk
Description: Web Design & Development
Author: Eight Wire
Author URI: https://eightwire.uk
Version: 220810
Tags: one-column, two-columns, right-sidebar, custom-header, custom-menu, featured-images
Text Domain: eightwire 

******************************************************************/
/**********
BREAKPOINTS
**********/
/* xs | mobile default 1 col | 320px-479px */

/* s | landscape mobile & portrait tablet | 480px-959px 
@media screen and (min-width:480px)  { } */

/* m | landscape tablet & laptop | 960px-1439px
@media screen and (min-width:960px)  { } */

/* l | hd desktop | 1440px-1920px 
@media screen and (min-width:1440px) { } */

/* xl | fhd desktop | 1921px-2399px .
@media screen and (min-width:1921px) { } */

/* xxl | 2k desktop | 2400px-3359
@media screen and (min-width:2400px) { } */

/* xxxl | 4k desktop | 3360px+ 
@media screen and (min-width:3360px) { } */

@font-face {
    font-family: 'itc_erasmedium';
    src: url('assets/fonts/eras/erasitcbybt-medium-opentype_bigfontsite.com-webfont.woff2') format('woff2'),
         url('assets/fonts/eras/erasitcbybt-medium-opentype_bigfontsite.com-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}
@font-face {
    font-family: 'itc_erasdemi';
    src: url('assets/fonts/eras/erasitcbybt-demi-opentype_bigfontsite.com-webfont.woff2') format('woff2'),
         url('assets/fonts/eras/erasitcbybt-demi-opentype_bigfontsite.com-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}
@font-face {
    font-family: 'itc_erasbold';
    src: url('assets/fonts/eras/erasitcbybt-bold-opentype_bigfontsite.com-webfont.woff2') format('woff2'),
         url('assets/fonts/eras/erasitcbybt-bold-opentype_bigfontsite.com-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

/***
VARS
***/
:root { /* USE HSLA */
    --dark: #1A1A1A;	
	--cyan: #00A5C8;
	--lblue: #B1D5E6;
	--dblue: #24608B;
	--lgreen: #76BAB2;
	--lgreen2: #C4DDDA;
	--green: #007770;
	--green2: #00A59C;
	--dgreen: #005652;
	--lite: #E1E1E1;
	--grey: #666666;
	--dgrey: #575A62;

    /*--color-text: var(--grey);*/
    --color-text: #000;
    --color-primary: var(--green2);
    --color-secondary: var(--green);
	
    --font-sys: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Oxygen-Sans", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
	--roboto: "Roboto";
	--eras-medium: "itc_erasmedium";
	--eras-demi: "itc_erasdemi";
	--eras-bold: "itc_erasbold";
	
    --font-primary: var(--roboto), var(--font-sys);
    --font-roboto: var(--roboto), var(--font-sys);
    --font-secondary: var(--eras-demi), var(--font-sys);
    --font-erasmedium: var(--eras-medium), var(--font-sys);
    --font-erasdemi: var(--eras-demi), var(--font-sys);
    --font-erasbold: var(--eras-bold), var(--font-sys);
	
    --font-size-body: 15;
    --lineheight: 1.5;
	
    --headerheight: 148.8; /* set using JS if height varies responsively */
    --fullheight: 0;
    --bannerheight: 0;
    
    --vh:0;
    --uivh: calc(var(--vh,1vh) * 100); /* --vh calculated by script */
    --adminbarheight: 0;
	--wrap: 1170px;
	
	--pad: 24px;
	--gap: var(--pad);
    
    --transition-attr:all;
    --transition-time:0.2s;
    --transition-type:ease;
	
	--gridcols: 1;
	--aspectratio: 1/1;
}
/***
BASE
***/
html, body {
    margin: 0;
    padding:0;
    font-family: var(--font-primary);
	max-width: 100vw;
	scroll-behavior: smooth;
}
html {
    height: var(--uivh,100vh);
	background: var(--dgreen);
    font-size: 62.5%;
    -ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
html:focus-within {
	scroll-behavior: smooth;
}
*, *::after, *::before {
    -webkit-box-sizing: inherit;
            box-sizing: inherit;
}
body {
	font-weight: 400;
	font-size: calc(var(--font-size-body) * 0.1rem);
	line-height: var(--lineheight, 1.5);
	letter-spacing: 0.01em;
	color: var(--color-text);
	-webkit-font-smoothing: antialiased;
    background-color: #fff;
	overflow-y: scroll;
	overflow-x: hidden;
    min-height:100%;
	position: relative;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-tap-highlight-color: transparent;
}
body.admin-bar {
    --adminbarheight: 32;
}
@media screen and (max-width: 782px) {
    body.admin-bar {
        --adminbarheight: 46;
    }
}
@media screen and (max-width: 959px) {
    :root {
        --headerheight: 120; /* may need JS to set if height varies responsively */
    }
}
@media only screen and (max-device-width : 1024px) and (orientation : portrait) {
    .fullheight {
        height: 100vh; /* fallback */
    }
    .fullheight {
        --fullheight:calc(var(--uivh) - var(--adminbarheight) * 1px);
        height: var(--fullheight,100vh);
    }
}
@media screen and (min-width: 2000px) {
	body { zoom: 1.5; }
}
@media screen and (min-width: 3000px) {
	body { zoom: 2; }
}
/*@supports ( backdrop-filter: blur(3px) ) {
    #wpadminbar {
        -webkit-backdrop-filter: blur(3px) contrast(.8) hue-rotate(45deg);
        backdrop-filter: blur(3px) contrast(.8) hue-rotate(45deg);
        background: rgba(0,0,0,0.7);
    }
}*/

/******
STYLING
******/
.wrap {
  width: min(100% - calc(var(--pad, 2em) * 2), var(--wrap, 1920px));
  margin-inline: auto;
}
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: var(--font-erasdemi);
    text-rendering: optimizelegibility;
	font-weight: inherit;
	line-height: 1.15;
	margin: 0 0 0.5em 0;
    font-weight: 400;
    color: inherit;
    font-size: inherit;
	letter-spacing: 0.05em; 
}
h1, .h1 { 
	font-size: 4rem; 
	text-align: center; 
	color: var(--color-primary); 
    font-family: var(--font-erasdemi);
	/*text-transform: uppercase;*/
}
h2, .h2 { 
	font-size: 4rem; 
	text-align: center; 
	color: var(--color-primary); 
}
h3, .h3 { 
	font-size: 3rem; 
	color: var(--color-secondary); 
}
h4, .h4 { font-size: 2.4rem; }
h5, .h5 { font-size: 1.8rem; }
h6, .h6 { font-size: 1.4rem; }
@media screen and (max-width: 639px) {
	h1, .h1, h2, .h2 { font-size: 3.2rem; }
}
.primary {
    color: var(--color-primary);
}
.secondary {
    color: var(--color-secondary);
}
img, picture, video, figure {
    display: block;
}
p {
	font-weight: inherit;
	text-rendering: optimizeSpeed;
    font-size: inherit;
	line-height: inherit;
	letter-spacing: 0.01em;
	margin: 0 0 1em 0;
}
main article ul {
	list-style: none;
	margin: 0 0 0 1.5em;
	padding: 0;
}
main article ul ul {
	margin: 0.8em 0 -0.2em 1.5em;
}
main article ul li {
}
main article ul li:not(:last-child) {
	margin-bottom: 1em;
}
main article ul li::before {
	content: "\2B58";
	font-weight: 900;
	font-size: 0.8em;
	color: var(--color-primary);
    margin: 2px 0.8em 0 -1.85em;
	display: inline-block;
	vertical-align: top;
}
main article ul li:hover::before {
	color: var(--color-secondary);
}
a {
	display: inline-block;
	text-decoration: none;
	color: currentColor;
}
a:active, a:hover {
	outline: 0;
	color: var(--color-primary);
}
article p a {
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-color: var(--color-primary);
}
article p a:hover {
    color: var(--color-secondary);
    text-decoration-color: var(--color-secondary);
}

/* BUTTON */
.btn, button, [type="button"], [type="reset"], [type="submit"] {
	display: inline-block;
	color: var(--color-primary);
	/*color: #fff;*/
	background: none;
	border: none;
	/*border-top-left-radius: 0.5em;
	border-top-right-radius: 0.5em;
	border-bottom-right-radius: 1.8em;
	border-bottom-left-radius: 0.5em;
	padding: 7px 20px 7px 10px;*/
	line-height: 1;
	font-size: inherit;
	font-weight: 400;
	margin-block-start: 0.5em;
	letter-spacing: 0.05em;
	transition: all 0.2s;
	cursor: pointer;
	text-decoration: none;
	font-family: var(--font-eras);
}
.btn:hover, button:hover, [type="button"]:hover, [type="reset"]:hover, [type="submit"]:hover{
	color: var(--color-secondary);
	/*color: #fff;*/
}
.secondary {
	color: var(--color-secondary);
	/*color: #fff;*/
}
.secondary:hover {
	color: var(--color-primary);
	/*color: #fff;*/
}

/*****
HEADER 
*****/
header.header {
	position: relative;
	padding-bottom: 18px;
	background: var(--cyan);
	background: radial-gradient(circle at 42% 50%, var(--green,#007770) 0, var(--cyan,#00A5C8) 640px, var(--cyan,#00A5C8) 1920px);
}
header.header .wrap {
	position: relative;
	z-index: 1;
}
.sitelogo {
	padding: 18px 0;
	max-width: calc(100vw - 82px);
}
.sitelogo a {
	display:block;
	background-color: #fff;
	margin: 0 auto 0 0;
    z-index: 500;
	text-align:center;
    width:310px;
	max-width: 100%;
	height:69px;
	aspect-ratio: 310/69;
	transition: all 0.5s ease-in-out;
	pointer-events: all;
	position: relative;
}
.sitelogo img ,
.sitelogo svg {
    width:100%;
    height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
	display:block;
}
.sitelogo svg:hover path.svgbg {
	fill: var(--cyan);
}
.sitelogo a::before {
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	top: -18px;
	right:0;
	bottom: -18px;
	width: 100vw;
	background-color: #fff;
}
.sitelogo a::after {
	content: "";
	display: inline-block;
	position: absolute;
	z-index: -1;
	top:-153px;
	right: -155px;
	width: 311px;
	height: 311px;
	background: transparent url("data:image/svg+xml;charset=UTF-8,%3csvg viewBox='0 0 1472 1461' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' fill-rule='evenodd' clip-rule='evenodd' stroke-miterlimit='10'%3e%3cellipse cx='-126.303' rx='125' ry='126.303' fill='none' stroke='%23fff' stroke-width='10' transform='matrix(0 -4.16667 -4.16667 0 735.635 203.943)'/%3e%3cellipse cx='-141.459' rx='140' ry='141.459' fill='none' stroke='%23fff' stroke-width='5' transform='matrix(0 -4.16667 -4.16667 0 735.637 140.793)'/%3e%3cellipse cx='-156.616' rx='155' ry='156.615' fill='none' stroke='%23fff' stroke-width='3' transform='matrix(0 -4.16667 -4.16667 0 735.636 77.641)'/%3e%3ccircle cx='2719.42' cy='3622.76' r='494.687' fill='%23fff' transform='matrix(.93683 0 0 .93683 -1812.32 -2668.8)'/%3e%3c/svg%3e") 50% 50% no-repeat scroll;
	background-size: 100% 100%;
	aspect-ratio: 1;
}
@media screen and (max-width:639px) {
	header.header {
		overflow: hidden;
	}
}
@media screen and (min-width:960px) {
    .sitelogo {
		padding: 18px 0 0 0;
    }
	.sitelogo a::before {
		bottom: 0;
	}
}
/* NAV */
nav.primary-menu {
	position: relative;
	z-index: 5;
}
nav.primary-menu li {
	display: inline-block;
	vertical-align: middle;
}
nav.primary-menu a {
	color: var(--dgreen);
	display: block;
	font-family: var(--font-secondary);
	font-size: 1.6rem;
	letter-spacing: 0.025em;
}
nav.primary-menu a:hover {
	color: var(--color-secondary);
}
nav.primary-menu .menu .sub-menu li ,
nav.primary-menu .menu .sub-menu li a {
	display: block;
	text-align: center;
	text-transform: none;
}
@media screen and (min-width:960px) {
	nav.primary-menu {
		text-align: center;
		background: #fff;
		padding: 3px 0;
	}
	.menu {
		display: -webkit-box;
    	display: -ms-flexbox;
    	display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		gap: var(--pad);
	}
	nav.primary-menu .menu li.current-menu-item a ,
	nav.primary-menu .menu li.current-page-ancestor a {
		position: relative;
		font-family: var(--font-erasdemi);
		color: var(--grey);
	}
	nav.primary-menu .menu > li.menu-item-has-children:hover {
		background: linear-gradient(#ffffff, #f3f3f3);
	}
	nav.primary-menu .menu > li:hover > a {
		color: var(--cyan) !important;
	}
	nav.primary-menu .menu > li.current-menu-item > a::before ,
	nav.primary-menu .menu > li.current-page-ancestor > a::before {
		content:"";
		position: absolute;
		z-index: 3;
		top: -13px;
		left: 50%;
		margin-left: -24px;
		display: block;
		width: 48px;
		height: 10px;
		background: transparent url("data:image/svg+xml;charset=UTF-8,%3csvg viewBox='0 0 200 42' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' fill-rule='evenodd' clip-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2'%3e%3cpath d='M42.748 41.808H80.47a99.737 99.737 0 0 1 19.159-1.862c6.554 0 12.954.65 19.154 1.862h37.72c-16.687-9.77-36.124-15.4-56.874-15.4-20.755 0-40.192 5.63-56.88 15.4' fill='%23fff' fill-rule='nonzero'/%3e%3cpath d='M17.333 41.808h10.933C48.237 27.183 72.93 18.521 99.625 18.521c26.7 0 51.391 8.662 71.362 23.287h10.934C159.74 23.08 130.995 11.75 99.625 11.75c-31.367 0-60.113 11.33-82.292 30.058' fill='%23fff' fill-rule='nonzero'/%3e%3cpath d='M5.77 41.808C30.059 18.463 63.17 4.063 99.626 4.063c36.454 0 69.571 14.4 93.858 37.745h5.767C174 16.042 138.67 0 99.625 0 60.58 0 25.255 16.042 0 41.808h5.77Z' fill='%23fff' fill-rule='nonzero'/%3e%3c/svg%3e") 50% 50% no-repeat scroll;
		background-size: 48px 10px;
	}
	nav.primary-menu .menu > li > .sub-menu {
		position: absolute;
		left:0;
		right:0;
		top: 100%;
		z-index: 10;
		background: #fff;
		filter: drop-shadow(0px 10px 10px rgba(0,0,0,0.15));
		will-change: transform;
		transition: transform 0.25s ease-in-out;
		transform: rotateX(-90deg);
		transform-origin: top;
		text-align: left;
		display: -webkit-box !important;
		display: -moz-box !important;
		display: box !important;
		display: -ms-flexbox !important;
		display: flex !important;
		gap: var(--gap,0);
		padding: 1em 0;
		pointer-events: none;
		-webkit-transition-delay: 0.25s; 
		-moz-transition-delay: 0.25s; 
		-ms-transition-delay: 0.25s; 
		-o-transition-delay: 0.25s; 
		transition-delay: 0.25s; 
	}
	nav.primary-menu .menu > li.menu-item-has-children:hover > .sub-menu {
		transform: rotateX(0);
		pointer-events: auto;
		-webkit-transition-delay: 0s;
		-moz-transition-delay: 0s;
		-ms-transition-delay: 0s;
		-o-transition-delay: 0s;
		transition-delay: 0s;
	}
	nav.primary-menu .menu > li > .sub-menu::before ,
	nav.primary-menu .menu > li > .sub-menu::after {
		content:"";
		display: block;
		/*pointer-events: none;*/
		background:#fff;
		position: absolute;
		left:-50vw;
		right:100%;
		top:0;
		bottom:0;
	}
	nav.primary-menu .menu > li > .sub-menu::after {
		right:-50vw;
		left:100%;
	}
	nav.primary-menu .menu > li > .sub-menu > li{
		-webkit-box-flex: 1; 
		-ms-flex: 1 1 auto;
		flex: 1 1 auto;
	}
	nav.primary-menu .menu > li > .sub-menu li{
		display: block;
		text-align: left;
	}
	nav.primary-menu .menu > li > .sub-menu a {
		font-family: var(--font-roboto);
		font-size: 1.4rem;
		font-weight: 400;
		color: #000;
		line-height: 30px;
		text-align: left;
		display: inline-block;
	}
	nav.primary-menu .menu > li > .sub-menu > li > a {
		color: var(--dgreen);
		font-family: var(--font-erasdemi);
		border-bottom: 1px solid var(--dgreen);
		line-height: 1.15;
	}
	nav.primary-menu .menu > li > .sub-menu a:hover ,
	nav.primary-menu .menu > li > .sub-menu li.current-menu-item > a {
		color: var(--cyan) !important;
	}
}

.hamburger {
	position: relative;
	z-index: 2000;
	display: none;
	cursor: pointer;
	place-content: center;
	gap: 3px;
	padding: 3px;
	transform-origin: center 6px;
}
.hamburger span {
	display: block;
	width: 15px;
	height: 3px;
	border-radius: 3px;
	background: #fff;
	transition: all 0.5s ease-in-out;
}
.hamburger:hover span {
	background: var(--color-primary) !important;
}
.hamburger-switch:checked ~ .hamburger {
	position: fixed;
	top: calc(36px + (var(--adminbarheight) * 1px));
	right: 18px;
	z-index: 3000;
	background: none;
}
.hamburger-switch:checked ~ .hamburger span {
	background: var(--color-primary) !important;
}
.hamburger span {
	transform-origin: center;
}
.hamburger-switch:checked ~ .hamburger span.ham1 {
	transform: rotateZ(45deg) translate(7px, 4px) scaleX(1.6);
}
.hamburger-switch:checked ~ .hamburger span.ham2 {
	transform: scale(0);
	opacity: 0;
}
.hamburger-switch:checked ~ .hamburger span.ham3 {
	transform: rotateZ(-45deg) translate(3px, -2px) scaleX(1.6);
}
.hamburger-switch:checked ~ .hamburger:hover span {
	background: var(--color-secondary) !important;
}
.hamburger-switch {
	display: none;
}
@media screen and (max-width: 959px) {
	nav.primary-menu {
		position: absolute;
		top: 36px;
		right: 9px;
		z-index: 600;
	}
	.menuxx {
		display: none !important;
	}
	/*.admin-bar nav.primary-menu {
		margin-top: calc(var(--adminbarheight) * 1px);
	}*/
	#wpadminbar {
		position: fixed !important;
	}
	nav.primary-menu > .wrap {
		position: relative;
	}
	.hamburger {
		display: -ms-grid;
		display: grid;
		background: var(--cyan);
	}
	.menu {
		display: none !important;
		position: fixed;
		left:0;
		z-index: 999;
		top: 0;
		height: 100vh;
		padding: 20px;
		padding-top: calc(20px + (var(--adminbarheight) * 1px));
		width: 100%;
		overflow-y: auto;
		background-color: rgba(255,255,255,0.7);
		backdrop-filter: blur(10px);
	}
	.hamburger-switch:checked ~ .menu {
		display: grid !important;
		place-content: center;
	}

	/* MOBILE NAV ACCORDION */
	.nav.primary-menu .menu {
		text-align: left;
	}

	.nav.primary-menu .menu * {
		margin: 0;
		padding: 0;
	}

	.nav.primary-menu .menu li {
		list-style-type: none;
	}
	
	.nav.primary-menu .menu > li {
		background: #fff;
		padding: 0 50px;
		margin: 0 -50px;
	}
	
	.nav.primary-menu .menu > li:first-child {
		padding-top: 50px;
	}

	.nav.primary-menu .menu > li:last-child {
		padding-bottom: 50px;
	}

	.nav.primary-menu .menu ul {
		display: none;
	}

	.nav.primary-menu .menu li.active>ul {
		display: block;
	}

	.nav.primary-menu .menu > li > a {
		position: relative;
		display: block;
		font-size: 1.6rem;
		line-height: 34px;
		color: var(--dgreen);
		font-family: var(--font-erasdemi);
		text-decoration: none;
	}

	.nav.primary-menu .menu ul li a {
		color: var(--dgrey);
		text-align: left;
		text-decoration: none;
		font-size: 1.2rem;
		font-family: var(--font-roboto);
		display: block;
		padding: 0 0 0 30px;
		transition: color 0.15s;
		position: relative;
	}

	.nav.primary-menu .menu li a:hover {
		color: var(--green) !important;
	}

	.nav.primary-menu .menu ul ul {
		border-left: 1px dotted var(--dgrey);
	}

	.nav.primary-menu li.menu-item-has-children > a span {
		position: relative;
		left: -30px;
		margin-right: -17px;
		width: 17px;
		height: 17px;
		vertical-align: middle;
		background-color: var(--dgreen);
		display: -ms-inline-grid;
		display: inline-grid;
		place-content: center;
	}
	
	.nav.primary-menu ul ul li.menu-item-has-children > a span {
		margin-right: -17px;
		width: 13px;
		height: 13px;
	}
	
	.nav.primary-menu ul ul li.menu-item-has-children > a span {
		background-color: var(--dgrey);
	}	
	.nav.primary-menu li.menu-item-has-children > a span:hover {
		background-color: var(--green);
	}	
	
	.nav.primary-menu li.menu-item-has-children > a span::before {
		content: "";
		display: block;
		background: transparent url("data:image/svg+xml;charset=UTF-8,%3csvg viewBox='0 0 21 13' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' fill-rule='evenodd' clip-rule='evenodd' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10'%3e%3cpath d='m18.13 2-8.066 8.066L2 2' fill='none' stroke='%23fff' stroke-width='4'/%3e%3c/svg%3e") 50% 50% no-repeat scroll;
		width: 8px;
		height: 4px;		
		background-size: 8px 4px;
		aspect-ratio:2/1;
		will-change: transform;
		transition: transform 0.3s ease-out;
	}

	.nav.primary-menu li.menu-item-has-children.active > a span:before {
		transform: rotate(90deg);
	}
}
.navsearch a {
	width:90px;
	height: 23px;
	overflow: hidden;
}
.navsearch svg {
	position: relative;
	top:-6px;
	left: -4px;
}
@media screen and (max-width: 959px) {
	.navsearch a,
	.itemz a {
		margin: 8px 0 !important;
	}
}

/**********
BREADCRUMBS
**********/
.breadcrumbs{
    list-style:none;
    padding:4px 0;
	/*display: none;*/
	position: relative;
    z-index: 1;
}
.page-parent .breadcrumbs,
.page-child .breadcrumbs{
	display: block;
}
.breadcrumbs li{
    display:inline-block;
    vertical-align:middle;
    margin-right:1em;
}
.breadcrumbs .separator{
    font-size:1.2rem;
    color: var(--dgrey);
}
.breadcrumbs li,
.breadcrumbs strong,
.breadcrumbs a {
	color: var(--dgrey);
    font-size: 1.2rem;
	font-weight: 400;
}

/*****
BANNER 
*****/
.banner-container {
	position: relative;
	z-index: 1;
	--bannerheight: 506;
	--horizontaladjust: calc((((100vmax / 9 * 16) - 100vw) / 2) * -1);
	--verticaladjust: calc((100 - (( var(--bannerheight) / 1080) * 100) ) * -0.5% );
	height: calc((var(--bannerheight) * 1px));
	overflow: hidden;
	background-color: var(--lite);
}
.home .banner-container {
	--bannerheight: 790;
}
.page-id-117 .banner-container {
	border-bottom-color: var(--color-primary);
}
.banner-container:empty {
	display: none;
}
.video-background { 
  position: relative;
  overflow: hidden;
  height: calc(100vmax / 16 * 9);
  width: calc(100vmax / 9 * 16);
  transform: translate( var(--horizontaladjust, -22%), var(--verticaladjust, -14.08%) );
  min-height: calc(20px + (var(--bannerheight) * 1px));
  min-width: calc(((var(--bannerheight) / 9 * 16 ) * 1px));
}
@media screen and (max-width:1440px) {
	.video-background {
		min-height: calc(130px + (var(--bannerheight) * 1px));
	}
}
@media screen and (max-width:640px) {
	.video-background {
		min-height: calc(300px + (var(--bannerheight) * 1px));
	}
}
.video-background iframe {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width:100%;
  height:100%;
}
.banner {
	background: var(--lite) url() 50% 50% no-repeat scroll;
	background-size: cover;
	height: 100vh;
	max-height: calc(var(--bannerheight) * 1px);
	position: relative;
}
.banner-container > .wrap {
	z-index: 2;
}
.banner-caption {
	max-width: 773px;
	padding: 8px 16px;
	/*background: rgba(0, 86, 82, 0.75);*/
	background: rgba(255,255,255, 0.8);
	-webkit-backdrop-filter: blur(2px);
	backdrop-filter: blur(2px);
	position: absolute;
	bottom:0;
	z-index: 2;
	font-weight: 400;
	font-size: 1.6rem;
	letter-spacing: 0.01em;
	line-height: 1.5;
	color: #000;
	border-top-left-radius: 8px;
	border-top-right-radius: 8px;
}
.banner-caption p:last-of-type {
	margin:0;
}
.single .banner-caption {
	padding-bottom: 36px;
}
.banner-caption.alt {
    width: 50%;
	max-width: none;
    padding: 100px 36px;
    top: 0;
    right: 0;
}
@media screen and (max-width:639px) {
	.banner-caption {
		max-width: none;
		border-radius: 0;
	}
	.banner-caption.alt {
		padding: 24px 24px 50px 24px;
	}
}
.pretitle {
	color: #fff;
	margin-bottom: 0.5em;
	font-size: 1.6rem;
	text-transform: uppercase;
}
.banner-caption-heading {
	color: #000;
	font-family: var(--font-erasbold);
	text-transform: none;
	margin-bottom: 0.35em;
	text-align: left;
	text-transform: none;
	font-weight: 400;
	font-size: 1.8rem;
}
.banner-caption p {
	max-height: 200px;
	overflow: auto;
	font-size: 1.6rem;
	line-height: 1.5;
}
.banner-caption .btn {
    border: 2px solid var(--color-secondary);
}
@media screen and (max-width:639px) {
	.banner-container {
		height: auto;
		background: none;
	}
	.banner-caption.alt {
		width: 100%;
	}
	.banner-container > .wrap {
		width: 100%;
	}
	.banner-container .swiper-wrapper, .banner {
		height: 250px;
	}
	.testimonial {
		padding: 0 25px;
	}
	.banner-caption {
		background: var(--lgreen2);
		position: relative;
		width:100%;
		margin:0;
		padding: var(--pad, 12px);
	}
	.banner-caption p {
		max-height: none;
	}
}
.gallery {
	margin: 36px 0;
}
.gallery h2 {
	color: var(--grey);
}
.layout-gallery .swiper-wrapper ,
.layout-gallery .swiper-slide {
	width: 100%;
	height: auto;
/*	aspect-ratio: 1179/774;
*/}
.layout-gallery .swiper-slide figcaption {
	/*position: absolute;
	z-index: 5;
	bottom: 0;
	left:0;
	right:0;*/
	background: var(--lite);
	color: #333;
	text-align: center;
	padding: 0.5em 0;
}
.layout-gallery img {
	width: 100%;
	height: auto;
	aspect-ratio: 1179/774;
	-o-object-fit: cover;
	object-fit: cover;
}
.layout-gallery-thumbs .swiper-wrapper {
	height: auto;
	margin-top: 20px;
}
.layout-gallery-thumbs .swiper-slide {
	cursor: pointer;
	aspect-ratio: 1;
	height: auto;
}
.layout-gallery-thumbs .swiper-slide img {
	aspect-ratio: 1;
	height: auto;
	-o-object-fit: cover;
	object-fit: cover;
}
.swiper-container {
	z-index: initial;
}
.swiper-button-prev, .swiper-button-next {
	z-index: 20;
	display: none;
}
.swiper-container .swiper-button-prev, .swiper-container .swiper-button-next {
	display: flex;	
	background-color: var(--lgreen);
}
.banner-container .swiper-container .swiper-button-prev, .banner-container .swiper-container .swiper-button-next {
	width: 70px;
	height: 70px;	
	--swiper-navigation-size: 70px;
}
.swiper-button-prev::after, .swiper-container-rtl .swiper-button-next::after,
.swiper-button-next::after, .swiper-container-rtl .swiper-button-prev::after {
	font-family: inherit;
	color: #fff;
	padding: 0;
}
.swiper-button-prev:hover, .swiper-container-rtl .swiper-button-next:hover,
.swiper-button-next:hover, .swiper-container-rtl .swiper-button-prev:hover {
	background-color: var(--color-secondary);
}
.swiper-button-prev, .swiper-rtl .swiper-button-next {
    left: 0 !important;
}
.swiper-button-next, .swiper-rtl .swiper-button-left {
    right: 0 !important;
}
.swiper-button-next::after, .swiper-container-rtl .swiper-button-prev::after {
    content: '';
	background: transparent url("data:image/svg+xml;charset=UTF-8,%3csvg viewBox='0 0 82 150' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' fill-rule='evenodd' clip-rule='evenodd' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10'%3e%3cpath d='m6.25 6.25 68.583 68.579L6.25 143.412' fill='none' stroke='%23fff' stroke-width='12.50001'/%3e%3c/svg%3e") 50% 50% no-repeat scroll;
	background-size: 17px 33px;
	display:block;
	width: 17px;
	height:33px;
}
.swiper-button-prev::after, .swiper-container-rtl .swiper-button-next::after {
    content: '';
	background: transparent url("data:image/svg+xml;charset=UTF-8,%3csvg viewBox='0 0 82 150' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' fill-rule='evenodd' clip-rule='evenodd' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10'%3e%3cpath d='M74.833 143.413 6.25 74.829 74.833 6.25' fill='none' stroke='%23fff' stroke-width='12.50001'/%3e%3c/svg%3e") 50% 50% no-repeat scroll;
	background-size: 17px 33px;
	display:block;
	width: 17px;
	height:33px;
}
.swiper-pagination {
	text-align: center;
	bottom: -1.5em !important;
}
.banner-container .swiper-pagination {
	text-align: left;
	bottom: 60px !important;
	left: 73% !important;
	max-width: 1170px !important;
	padding-inline: 34px;
	width: calc(100% - (2 * var(--pad))) !important;
	z-index: 3;
}
.swiper-pagination-bullet {
	border-radius: 0 !important;
	width: 12px !important;
	height: 12px !important;
	background: #fff !important;
	border: 1px solid transparent;
	opacity: 1 !important;
	/*pointer-events: all;
	cursor: pointer;*/
}
.swiper-pagination-bullet-active {
	background: #006698 !important;
	border: 1px solid #fff;
}
@media screen and (max-width:1044px) {
	.banner-container .swiper-pagination, .banner-container .swiper-button-prev, .banner-container .swiper-button-next {
		display:none !important;
	}
}

/* TITLE BAR */
.titlebar {
	color: var(--color-secondary);
	text-align: center;
	text-transform: none;
	font-family: var(--font-erasdemi);
	font-size: 4.0rem;
	letter-spacing: 0.03em;
	margin: 1em 0 0.5em 0;
}
.titlebar .wrap {
	--pad: 0;
	max-width: 573px;
}
@media screen and (max-width:639px) {
	.titlebar {
		padding: 24px;
	}
}
@media screen and (min-width:640px) and (max-width: 1234px) {
	.titlebar {
		padding-inline: 365px 24px;
	}
}


/******
LAYOUTS
******/

/* ICON LINKS */
.iconlinks {
	background-color: var(--color-primary);
	color: #fff;
	border-bottom: 24px solid var(--color-primary);
}
.iconlinks:first-child {
	background-color: var(--color-secondary);
	border-color: #fff;
}
.iconlinks .gridgap {
	--gap: 80px 24px;
}
.iconlinks .card {
	--gap:0;
	max-width: 374px;
	margin-inline : auto;
}
.iconlinks .icon {
	position: relative;
	z-index: 2;
	margin-top: -42px;
}
.iconlinks .icon a {
	aspect-ratio: 1;
	width: 90px;
	overflow: hidden;
	background-color: var(--color-primary);
	border-radius: 50%;
	border: 3px solid #fff;
	text-align: center;
	margin: 0 auto;
}
.iconlinks a:hover {
	background-color: var(--color-secondary);
}
.iconlinks .active .icon a {
	background-color: var(--color-secondary);
	pointer-events: none;
}
.iconlinks .icon img {
	max-height: 55px;
	max-width: 65px;
	-o-object-fit: contain;
	object-fit: contain;
}
.iconlinks .gridauto {
	--gridauto: 175px;
}
.iconlinks .grid > *:only-child {
	grid-column: 1/-1;
}
.iconlinks .title {
	margin:0.5em 0 -0.015em 0;
	text-transform: uppercase;
}
.iconlinks .text {
	font-style: italic;
	font-size: 1.4rem;
}
body:not(.home) .iconlinks .text {
	display: none;
}
.iconlinks .btnlink {
	margin-top: auto;
	margin-bottom: -13px;
}
.iconlinks .btn {
	border: 2px solid var(--color-secondary);
}
.iconlinks .btn:hover {
	border: 2px solid #fff;
}
.iconlinks .active .btn {
	background-color: var(--color-secondary);
	border: 2px solid #fff;
	pointer-events: none;
}

/* WYSEDITOR */
.wyseditor {
	margin: calc(var(--pad) * 2) auto;
}
.wyseditor .h1 {
	max-width: 75vw;
	margin-inline: auto;
}
.wyseditor .wystitle.h2 {
	color: var(--green2);
}
.wyseditor .wyssubtitle {
	font-size: 1.6rem;
	font-family: var(--font-erasbold);
	color: var(--green);
	text-align: center;
	margin-bottom: var(--pad);
}
@media screen and (max-width:767px){
	.wyseditor .wystitle.h1 {
		max-width: none;
	}
}
.wyseditor .wystitle.h2 {
	text-transform: none;
	font-size: 3rem;
	color: var(--green2);
	font-family: var(--font-erasdemi);
	text-align: center;
}
.columns .hx {
	text-transform: none;
	font-size: 3rem;
	color: var(--green2);
	font-family: var(--font-erasdemi);
	text-align: left;
}
.home .wyseditor .wystitle.h2 {
	text-transform: none;
	font-size: 4rem;
	color: var(--green2);
	text-align: center;
}
/*.page-id-925 .wyseditor .wystitle.h2 ,
.page-id-963 .wyseditor .wystitle.h2 {
	border-bottom: 1px solid var(--green2);
	padding-bottom: 0.5em;
	margin-bottom: 0;
}*/
.wyseditor .wyssubtitle {
	text-transform: none;
	font-size: 2.8rem;
	text-align: center;
}
@media screen and (min-width:640px){
	.wyscontent.cols {
		column-count: 2;
		column-gap: 48px;
	}
}

/* CARDS */
.cards {
	padding: 36px 0;
}
.cards.alt {
	background: var(--lite);
}
.card.grid.gridgap {
	--gap: 12px 24px;
}
.cards h3 {
	margin: 0;
}
.cards a h3 {
	color: var(--color-secondary);
}
.cards a:hover h3 {
	color: var(--color-primary);
}
.cards .grid421 h3 {
	font-size: 2.4rem;
}
.cards img {
	-o-object-fit: cover;
	object-fit: cover;
	width: 100%;
	width: 100%;
	max-width: 100%;
	background-color: #f0f0f0;
}
/*
.cards img:hover {
	-o-object-fit: contain;
	object-fit: contain;
}*/
.cards .grid21 img {
	aspect-ratio: 573/400;
}
.cards .grid321 img {
	aspect-ratio: 374/354;
}
.cards .grid421 img {
	aspect-ratio: 277/267;
}
.cards .text p:last-child {
	margin-bottom: 0;
}
.card {
    --gap: 12px 24px;
}
.card.grid {
	-ms-grid-rows: -webkit-min-content;
    -ms-grid-rows: min-content;
    grid-template-rows: -webkit-min-content;
    grid-template-rows: min-content;
	place-content: start;
}
.card .button {
	/*margin-top: auto;*/
}

/* IMAGE */
figcaption {
	text-align: center;
	padding: 0.5em 0;
	background: #e5e5e5;
	color: var(--color-text);
}

/* MEDIA */
.media {
	background: var(--lblue);
}
.media.mediax {
	margin: 24px 0;
}
.media.mediax {
	color: var(--color-text);
}
.media.mediax .mediatitle {
	color: var(--dblue);
}
.media .image {
	background-color: var(--grey);
	color:#fff;
	min-height: 100px;
}
.media .image > figure {
	height: 100%;
	width: 100.01%;
}
.media .image > figure:has(figcaption) {
	height: calc(100% - 37.5px);
}
.media .image img {
	display: block;
	width:100%;
	height:100%;
	-o-object-fit: cover;
	object-fit: cover;
	/*mix-blend-mode: luminosity;*/
}
.media .text {
	width: min(585px, 100%);
	margin-inline-end: auto;
	padding: 48px 12px 48px 48px;
}
@media screen and (max-width:1023px) {
	.media .text {
		padding: 24px;
	}
}
@media screen and (max-width:639px) {
	.media .text {
		width: min(100% - calc(var(--pad, 2em) * 2), var(--wrap, 1920px));
		margin-inline: auto;
		padding: 24px 0 12px 0;
	}
}
.mediatitle {
	text-align: left;
}
.mediadate {
	font-style: italic;
	font-weight: 400;
	letter-spacing: 0.01em;
	font-family: var(--font-primary);
}
.media .btn {
	border: 1px solid #fff;
}
.mediax .btn {
	border: none;
	background-color: var(--dblue);
}
.mediax .btn:hover {
	background-color: var(--green2);
}

/* VIDEO */
.video {
	margin: 36px 0;
}
.video .vid {
	color:#fff;
}
.video .vid iframe {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 585/353;
	background-color: var(--lite);
}
.video .text {
	width: min(585px, 100%);
	margin-inline-end: auto;
	padding: 12px;
}
@media screen and (max-width:640px) {
	.video .text {
		padding: 24px 0 0 0;
	}
}
.videotitle {
	text-align: left;
}
.video .btn {
	border: 1px solid #fff;
}

/* DOWNLOAD */
.download {
	margin: 36px 0;
}
.download > .wrap > .grid {
}
.download .grid21 > .grid {
	background-color: var(--lgreen2);
	padding: var(--pad);
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
	grid-auto-rows: -webkit-min-content;
	grid-auto-rows: min-content;
}
.download > .wrap > .grid > *:only-child {
    grid-column: 1/-1;
	background-color: var(--lblue);
}
.download .image img{
    height: 100%;
	width: 100%;
	max-height: 383px;
	margin: 0 auto;
	-o-object-fit: cover;
	object-fit: cover;
	/*object-position: top right;*/
}
@media screen and (min-width: 1024px) {
	.download .grid21 > .grid {
		grid-template-columns: 184px 1fr;
	}
	.download .image img {
		max-height: unset;
	}
}
.download .downloadtitle {
	text-transform: none;
	font-size: 3.2rem;
	letter-spacing: 0.01em;
	color: var(--dgreen);
}
.download > .wrap > .grid > *:only-child .downloadtitle {
	color: var(--dblue);
}
.download .postexcerpt {
	color: var(--dgreen);
}
.download > .wrap > .grid > *:only-child .postexcerpt {
	color: #1A1A1A;
}
.download p:last-of-type {
	margin-bottom: 0;
}
.download .btn {
	margin-top: 1em;
	padding: 9px 20px 9px 10px;
	background-color: var(--green);
}
.download .btn:hover {
	background-color: var(--lgreen);
}
.download > .wrap > .grid > *:only-child .btn {
	background-color: var(--dblue);
}
.download > .wrap > .grid > *:only-child .btn:hover {
	background-color: var(--cyan);
}

/* NEWS */
.newsx {
	padding: 48px 0;
}
.newsx.alt {
	background: var(--lite);
}
.newsx .grid.gridgap {
	--gap: 48px 24px;
}
.newsx .flex.flexgap {
	--gap: 24px;
}
.newsx .post-content {
	--gap: 0.5em;
}
.newsx h1 {
	padding-bottom: 0.5em;
	margin-bottom: 1em;
	color: var(--green);
	font-size: 4.3rem;
	border-bottom: 1px solid var(--green);
}
.newsx h2 {
	padding-bottom: 0.5em;
	margin-bottom: 1em;
	color: var(--green);
	font-size: 3rem;
	border-bottom: 1px solid var(--green);
}
.newsx .post-thumb {
	display: block;
	aspect-ratio: 374/354;
	max-width: 374px;
	margin: auto;
}
.newsx .post-thumb img {
	display: block;
	aspect-ratio: 374/354;
	-o-object-fit: cover;
	object-fit: cover;
	background: var(--lgreen);
}
.newsx h3 {
	margin: 0;
	color: var(--green);
	text-transform: none;
}
.newsx .titledate {
	padding-bottom: 24px;
	border-bottom: 1px solid var(--green);
}
.newsx .post-article {
	padding-bottom: 24px;
	border-bottom: 1px solid var(--green);
}
.newsx .post-date {
	color: var(--grey);
	font-size: 1.2rem;
}
.newsx .btn {
	/*background-color: var(--green);*/
	margin:0;
}
.newsx .btn:hover {
	color: var(--dgreen);
}
.newsx .end {
    margin-top: auto;
}
.topfew .post-article:nth-of-type(1n+7){ 
	max-height: 0;
	overflow: hidden;
	transition: max-height 7s cubic-bezier(0, 1, 0, 1);
	transition: max-height 0.5s ease-in-out;
}
.topfew.all .post-article:nth-of-type(1n+4){
	max-height: 1000px;
}
.showmore {
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}
.home .newsx .showmore { display: none; }
.articleinfo {
	margin: 24px 0 0 0;
	font-size: 1.2rem;
}
@media screen and (min-width:480px) {
	.postauthor {
		margin-left: auto;
	}
}

/* Events */
.events .alt {
	background: var(--lgreen2);
	padding: 24px 0;
	--gap: 6px 0;
}
.events h2 {
	color: var(--green);
}
.events .post-row {
	border-top: 1px solid var(--green);
}
.events .post-row > *,
.events-headings > *,
.post-more {
	padding: 0.5em 2em;
}
.events-headings > * {
	color: var(--green);
	font-family: var(--font-erasdemi);
	font-size: 1.6rem;
}
.events .post-date {
	flex-basis: 15%;
}
.events .post-date strong {
	font-weight: 700;
	font-size: 2.4rem;
	color: var(--green);
	display: block;
}
.events .post-date em {
	font-weight: 700;
	font-size: 1.6rem;
	color: var(--green);
	font-style: normal;
	text-transform: uppercase;
}
.events .post-title {
	font-weight: 700;
	font-size: 2.4rem;
	color: var(--dgreen);
	margin:0;
}
.events .post-subtitle {
	font-weight: 400;
	font-size: 1.6rem;
	color: var(--text);
	font-style: italic;
}
.events .post-link {
	margin-left: auto;
}
.events .btn {
	/*background: var(--green);*/
	margin: 0;
}
.events .btn:hover {
	color: var(--dgreen);
}
@media screen and (max-width:700px) {
	.events-headings {
		display: none !important;
	}
	.events .post-row {
		border-top: none;
	}
	.events .post-link {
		margin: 0;
	}
	.events .post-date {
		flex-basis: 100%;
	}
	.events .post-date strong {
		display: inline;
	}
	.events .post-date strong::before {
		content: "DATE: ";
		font-size: 1.6rem;
	}
}

/* Case Studies */
.casestudies {
	margin: 48px 0;
}
.casestudies h2 {
	font-size: 3rem;
}
.casestudies .wrap > div + h2 {
	margin-top: 1em;
}
.casestudies .post-thumb {
	display: block;
	aspect-ratio: 1;
	max-width: 374px;
	margin: auto;
	width:100%;
}
.casestudies .post-thumb img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 374/354;
	-o-object-fit: cover;
	object-fit: cover;
	background: var(--lgreen);
}
.casestudies .showmorex {
	border-bottom: 1px solid var(--green);
	margin: -24px 0 48px 0;
}
.casestudies .showmorex .showmore {
	border-radius: 8px;
	padding: 8px;
	background-color: var(--green);
	top: 18px;
	position: relative;
}
.casestudies .showmorex .showmore:hover {
	background-color: var(--lgreen);
}
.casestudies .end {
	/*margin-top: auto;*/
}

/* Testimonials */
.testimonials {
	background: var(--lite);
	padding: 48px 0 60px 0;
	overflow: hidden;
}
.testimonials .wrap {
	position: relative;
}
.testimonials .wrap::before ,
.testimonials .wrap::after {
	content: "";
	display: block;
	pointer-events: none;
	z-index: 0;
	background: transparent url() 50% 50% no-repeat scroll;
	background-size: 235px 188px;
	width: 235px;
	height: 188px;
	position: absolute;
}
.testimonials .wrap::before {
	top: -24px;
    left: -100px;
	background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg viewBox='0 0 979 781' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' fill-rule='evenodd' clip-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2'%3e%3cpath d='M978.936 592.537c0 57.546-18.754 103.125-56.263 136.867-37.504 33.763-85.033 50.633-142.529 50.633-67.512 0-123.188-22.508-166.908-67.504-43.771-44.996-65.638-111.208-65.638-198.754 0-82.496 11.842-153.1 35.633-211.867 23.738-58.717 52.509-108.767 86.267-150 33.759-41.259 68.746-74.367 105.017-99.392 36.22-24.95 68.104-42.48 95.65-52.487l93.763 131.25c-55.03 27.537-99.392 64.404-133.15 110.62-33.759 46.288-50.634 104.417-50.634 174.388 9.963-2.466 23.738-3.758 41.258-3.758 49.988 0 88.73 17.53 116.276 52.487 27.483 35.063 41.258 77.542 41.258 127.517m-547.609 0c0 57.546-18.75 103.125-56.262 136.867-37.505 33.763-85.034 50.633-142.521 50.633-67.517 0-123.188-22.508-166.909-67.504C21.856 667.537-.002 601.325-.002 513.78c0-82.496 11.837-153.1 35.633-211.867 23.73-58.717 52.508-108.767 86.263-150 33.758-41.259 68.741-74.367 105.02-99.392C263.135 27.57 295.01 10.04 322.556.033l93.771 131.25c-55.03 27.537-99.396 64.404-133.15 110.62-33.758 46.288-50.633 104.417-50.633 174.388 9.958-2.466 23.729-3.758 41.254-3.758 49.992 0 88.733 17.53 116.27 52.487 27.492 35.063 41.26 77.542 41.26 127.517' fill='%23aeaeae' fill-rule='nonzero' opacity='.25'/%3e%3c/svg%3e");
}
.testimonials .wrap::after {
	bottom: -12px;
	right: -100px;
	background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg viewBox='0 0 979 781' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' fill-rule='evenodd' clip-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2'%3e%3cpath d='M547.608 183.842c0-57.496 18.109-102.492 54.388-135.009 36.22-32.446 83.1-48.758 140.65-48.758C812.626.075 869.526 22 913.3 65.7c43.721 43.775 65.646 109.4 65.646 196.875 0 82.52-11.904 153.763-35.633 213.771-23.8 59.988-52.517 110.62-86.267 151.854-33.758 41.263-69.392 74.417-106.9 99.392-37.504 25.025-70.03 42.53-97.512 52.492l-93.771-127.492c57.491-30.004 102.496-67.504 135.02-112.5 32.471-44.996 48.763-103.713 48.763-176.246-10.02 2.517-23.792 3.737-41.258 3.737-47.53 0-85.034-16.87-112.521-50.612-27.542-33.763-41.259-78.125-41.259-133.13m-547.6 0c0-57.495 18.108-102.491 54.38-135.008C90.607 16.387 137.495.075 195.045.075 265.016.075 321.916 22 365.7 65.7c43.717 43.775 65.638 109.4 65.638 196.875 0 82.52-11.896 153.763-35.634 213.771-23.792 59.988-52.508 110.62-86.267 151.854-33.754 41.263-69.383 74.417-106.891 99.392-37.513 25.025-70.038 42.53-97.521 52.492L11.254 652.592c57.496-30.004 102.504-67.504 135.03-112.5 32.466-44.996 48.762-103.713 48.762-176.246-10.025 2.517-23.8 3.737-41.263 3.737-47.525 0-85.033-16.87-112.52-50.612C13.715 283.208.007 238.846.007 183.84' fill='%23aeaeae' fill-rule='nonzero' opacity='.25'/%3e%3c/svg%3e");
}
.ttitle {
	font-size: 4.3rem;
	color: var(--dgreen);
}
.ttext {
	font-size: 1.8rem;
}
.tby {
	text-align: right;
	margin: 1em 0 0 0;
}
.tbtn .btn {
	border: 2px solid #fff;
}
.testimonials .swiper-wrapper {
	display: -ms-grid;
        display: grid;
    grid-auto-flow: column;
}
.testimonials .swiper-slide {
	opacity: 0;
	transition: opacity 1s ease-out;
	height: 100%;
	display: -ms-grid;
        display: grid;
		place-content: center;
}
.testimonials .swiper-slide-active {
	opacity: 1;
}
.testimonials .swiper-button-prev, .testimonials .swiper-button-next {
	background: none !important;
}
.testimonials .swiper-button-prev::after, .testimonials .swiper-button-next::after {
	display: none !important;
}
.testimonials .swiper-button-prev svg, .testimonials .swiper-button-next svg {
	width: 17px;
	height: 33px;
}
.testimonials .swiper-button-prev svg path, .testimonials .swiper-button-next svg path{
	stroke: var(--dgreen);
}
.testimonials .swiper-button-prev:hover svg path, .testimonials .swiper-button-next:hover svg path{
	stroke: var(--green);
}
.testimonials .swiper-pagination-bullet-active {
    background: var(--dgreen) !important;
}
.testimonial {
	padding: 0 54px;
}

/* Highlight */
.highlight .wrap {
	background: rgba(0, 165, 156, 0.5);
	padding: 48px var(--pad);
	text-align: center;
	color: var(--dark);
}
.highlight h2 {
	color: var(--color-secondary);
	text-align: center;
}

/* MAP */
.leaflet-popup-content {
    font-size: 1.6rem !important;
}
.leaflet-popup-content strong ,
.leaflet-popup-content a {
    display: block !important;
}
.leaflet-popup-content a:hover {
    color: var(--dgreen) !important;
}

/* SINGLE POST */
.single-post .layouts {
	padding: 12px 0 60px 0;
}

/* GET IN TOUCH */
.getintouch {
	padding: 48px 0;
}
.getintouch .grid.gridgap{
	--gap: 12px 24px;
}
.getintouch h2 {
	margin-bottom: 1em;
	color: var(--green);
	text-align: center;
	line-height: 1;
	font-size: 3rem;
}
.getintouch h2 span {
	display: inline-block;
	color: var(--dblue);
}
.getintouch p:last-child {
	margin-bottom: 0;
}
.getintouch .btn {
	background-color: var(--green);
	margin:0 !important;
}
.getintouch .btn:hover {
	background-color: var(--dblue);
}

/* CONTACT FORM 7 */

div.wpcf7 input:not([type="submit"]),
div.wpcf7 textarea {
	max-width: 100%;
	width: 100%;
	border:none;
	color: var(--dblue);
	padding:1em;
	border: 1px solid var(--green);
}
div.wpcf7 textarea {
	max-height:178px;
	overflow:auto;
}
div.wpcf7 input::-webkit-input-placeholder, div.wpcf7 textarea::-webkit-input-placeholder {
	color: #000;
}
div.wpcf7 input::-moz-placeholder, div.wpcf7 textarea::-moz-placeholder {
	color: #000;
}
div.wpcf7 input:-ms-input-placeholder, div.wpcf7 textarea:-ms-input-placeholder {
	color: #000;
}
div.wpcf7 input::-ms-input-placeholder, div.wpcf7 textarea::-ms-input-placeholder {
	color: #000;
}
div.wpcf7 input::placeholder,
div.wpcf7 textarea::placeholder {
	color: #000;
}

/* CONTACT */
.contactcaption {
	margin: 36px 0;
}
.contactcaption .dot::before {
	content:"";
	display:inline-block;
	background: var(--color-secondary);
	width: 60px;
	height:60px;
	border-radius: 50%;
	border: 4px solid transparent;
}
.contactcaption .dot.alt::before {
	background: var(--color-primary);
	border-color: var(--color-secondary);
}
.contactcaption h2 {
	color: #fff;
	text-align: left;
	margin: 0;
}
@media screen and (max-width:959px) {
	.contactcaption h2 {
		font-size: 3.2rem;
	}
}
@media screen and (max-width:639px) {
	.contactcaption .dot::before {
		border-color: #fff !important;
	}
}

/* Contact Layout */
.contactinfo {
	/*padding: 48px 0;*/
}
.contactinfo h3 {
	color: var(--green);
	text-transform: uppercase;
	font-size: 3rem;
	text-align: left;
}
.contactinfo .servicesupport > * {
	background: var(--lgreen2);
	color: var(--dgreen);
}
.contactinfo .servicesupport .grid.grid21 {
	grid-template-columns: 1fr;
	grid-template-rows: 2fr 3fr;
}
@media screen and (min-width:768px) {
	.contactinfo .servicesupport .grid.grid21 {
		grid-template-columns: 1fr 2fr;
		grid-template-rows: 1fr;
	}
}
.contactinfo .servicesupport .bgimg {
	position: relative;
	background: var(--lgreen) url() 50% 50% no-repeat scroll;
	background-size: cover;
	filter: saturate(0.5);
}
.contactinfo .servicesupport .bgimg::after {
	content:"";
	display: block;
	position: absolute;
	z-index: 2;
	top:0;right:0;bottom:0;left:0;
	background:rgba(0, 119, 111, 1);
	mix-blend-mode: color;
	pointer-events: none;
}
.contactinfo .servicesupport .textx {
	padding: var(--pad);
	--gap: 0;
}
.contactinfo .servicesupport .btn {
	background: var(--green);
	margin: auto 0 0 0;
}
.contactinfo .servicesupport .btn:hover {
	background: var(--lgreen);
}

.contactinfo .contacts > * {
	background: var(--lgreen2);
	color: #1a1a1a;
	padding: var(--pad);
}
.contactinfo .contacts h4 {
	color: var(--green);
	margin-bottom: 1em;
}
.contactinfo .contacts p:last-of-type {
	margin-bottom: 0;
}
.contactinfo .contacts a {
	color: var(--green);
	font-weight: 700;
}

.contactinfo .telephone a::before {
	background: transparent url("data:image/svg+xml;charset=UTF-8,%3csvg viewBox='0 0 123 123' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' fill-rule='evenodd' clip-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2'%3e%3cpath d='M37.2 35.03a11.447 11.447 0 0 0-3.355 8.088c0 3.033 1.211 5.939 3.355 8.089L70.973 84.99c4.472 4.467 11.71 4.467 16.177 0l4.934-4.927a6.41 6.41 0 0 1 8.855 0l11.45 11.45a6.27 6.27 0 0 1 0 8.86l-12.339 12.34c-1.866 1.866-9.394 2.788-22.483-2.328a118.474 118.474 0 0 1-39.278-26.49 118.436 118.436 0 0 1-26.483-39.271c-5.117-13.09-4.195-20.617-2.328-22.49L21.823 9.797a6.27 6.27 0 0 1 8.86 0l11.445 11.45a6.26 6.26 0 0 1 0 8.866L37.2 35.03Zm10.562.716a14.23 14.23 0 0 0 0-20.134L36.306 4.162c-5.561-5.55-14.561-5.55-20.128 0L3.834 16.502C-7.322 27.656 6.95 63.834 32.644 89.534c19.673 19.672 45.484 32.65 61.512 32.65 4.2.3 8.344-1.078 11.522-3.84l12.34-12.338c5.55-5.561 5.55-14.567 0-20.128l-11.45-11.45a14.238 14.238 0 0 0-20.129 0l-4.922 4.928a3.558 3.558 0 0 1-4.911 0L42.834 45.579a3.474 3.474 0 0 1 0-4.91l4.928-4.923Z' fill='%23007770' fill-rule='nonzero'/%3e%3c/svg%3e") 0 0 no-repeat scroll;
}
.contactinfo .email a::before {
	background: transparent url("data:image/svg+xml;charset=UTF-8,%3csvg viewBox='0 0 152 91' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' fill-rule='evenodd' clip-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2'%3e%3cpath d='m14.228 82.628 31.255-31.256 27.573 27.572a4.157 4.157 0 0 0 5.889 0l27.577-27.572 31.25 31.256H14.228Zm25.36-37.15L8.334 76.733v-62.51L39.59 45.477Zm104.079-31.256v62.511L112.41 45.478l31.256-31.256Zm-5.895-5.889L76 70.106 14.228 8.333h123.544ZM152 4.167c0-.056-.028-.1-.033-.156-.017-.483-.09-.972-.284-1.439l-.01-.01c-.012-.034-.04-.062-.056-.1a4.005 4.005 0 0 0-.75-1.106c-.095-.106-.206-.195-.317-.29a3.953 3.953 0 0 0-.867-.583c-.133-.066-.255-.139-.394-.189-.461-.172-.944-.294-1.456-.294H4.167c-.511 0-.995.122-1.456.294-.139.05-.255.123-.389.184a4.22 4.22 0 0 0-.872.589c-.111.094-.217.183-.317.289a4.062 4.062 0 0 0-.75 1.116c-.016.034-.044.056-.055.084 0 .005-.006.01-.006.016a4.081 4.081 0 0 0-.289 1.445c0 .05-.033.094-.033.15v82.628c0 .055.033.1.033.15.017.488.095.977.29 1.444 0 .006.005.011.005.017.01.027.039.055.055.083.19.422.445.794.75 1.122.1.106.206.19.317.284.267.233.556.427.872.588.134.067.25.128.39.184.46.178.944.294 1.455.294h143.666c.512 0 .995-.116 1.456-.294.139-.056.261-.122.394-.184.317-.16.6-.355.867-.588.111-.095.222-.184.317-.29.305-.322.56-.688.75-1.105.016-.033.044-.061.055-.1.006 0 .006-.005.011-.011.195-.467.267-.95.284-1.439.005-.055.033-.1.033-.155V4.167Z' fill='%23007770' fill-rule='nonzero'/%3e%3c/svg%3e") 0 0 no-repeat scroll;
}
.contactinfo address {
	font-style: normal;
	line-height: 2;
}

.contactmid {
	margin: 24px 0;
}
.contactmid h4 {
	color: var(--green);
	text-align: center;
	font-size: 3rem;
	padding-bottom: 0.5em;
	border-bottom: 1px solid var(--green);
}
.contactmid h5 {
	color: var(--green);
	font-size: 2.4rem;
	font-weight: 700;
	font-family: var(--font-roboto);
}
.contactmid h6 {
	color: var(--green);
	font-size: 1.6rem;
	text-transform: uppercase;
	font-family: var(--font-erasbold);
	display: inline-block;
	vertical-align: middle;
}
.contactmid .address {
	border-left: 1px solid var(--green);
	padding-left: var(--pad);
}
.contactmid .addressx {
	line-height: 1.5;
}


/* SITEMAP */
.sitemap {
	padding: 48px;
}

/* ACCORDION */
.faq {
	margin-bottom: 24px;
}
.faq + .faq {
	margin-top: 48px;
}
.faqtitle {
	text-transform: none;
	font-size: 3rem;
	color: var(--green);
	font-family: var(--font-erasdemi);
	text-align: center;
	border-bottom: 1px solid var(--green);
	padding-bottom: 0.5em;
	margin-bottom: 0.5em;
}
.accordions {
  overflow: hidden;
}
.accordions input {
  position: absolute;
  opacity: 0;
  z-index: -1;
}
.accordion {
  width: 100%;
  overflow: hidden;
}
.accordion + .accordion {
  margin-top: var(--pad);
}
.accordion-label {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  padding: 48px 24px 24px 24px;
  background: var(--lblue);
  color: #1A1A1A;
  font-size: 1.6rem;
  font-weight: 700;
  font-style: italic;
  cursor: pointer;
  position: relative;
  outline: none;
  -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
}
.accordion-label:hover {
  color: var(--dblue);
}
.accordion-label span.btn {
  background: var(--dblue);
  font-size: 1.6rem;
  text-align: left;
  color: #fff;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  -webkit-transition: all .35s;
  transition: all .35s;
  position: absolute;
  top: 0;
  left:0;
  z-index: 1;
  margin: 0;
}
.accordion-label:hover span.btn{
  background: var(--cyan);
}
.accordion-label span.btn::after {
  content: "";
  display: inline-block;
  width: 18px;
  height: 11px;
  background: transparent url("data:image/svg+xml;charset=UTF-8,%3csvg viewBox='0 0 18 12' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' fill-rule='evenodd' clip-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2'%3e%3cpath d='m17.332 3.485-6.922 6.922a2.042 2.042 0 0 1-2.887 0L.603 3.485C-.685 2.199.225 0 2.044 0H15.89c1.818 0 2.73 2.199 1.443 3.485' fill='%23fff' fill-rule='nonzero'/%3e%3c/svg%3e") 50% 50% no-repeat scroll;
  background-size: 18px 11px;
  margin-left: 36px;
  vertical-align: middle;
  -webkit-transition: all .35s;
  transition: all .35s;
}
.accordions input:checked + .accordion-label span.btn::after {
  transform: rotate(180deg) translateY(1px);
}
.accordions input:checked + .accordion-label:hover span.btn::after {
  transform: rotate(180deg) translateY(2px);
}
.accordion-content {
  max-height: 0;
  padding: 0 0.5em;
  -webkit-transition: all .35s;
  transition: all .35s;
  background: var(--lgreen2);
  color: #1A1A1A;
  font-size: 1.6rem;
  font-weight: 700;
  font-style: italic;
  overflow: hidden;
  position: relative;
}
.accordion-content span.btn {
  background: var(--green);
  font-size: 1.6rem;
  text-align: left;
  color: #fff;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  -webkit-transition: all .35s;
  transition: all .35s;
  position: absolute;
  top: 0;
  left:0;
  z-index: 1;
  margin: 0;
  pointer-events: none;
}
.accordion-content-inner {
  padding: 48px 24px 24px 24px;
}
.accordions input:checked ~ .accordion-content {
  max-height: 100vh;
  padding: 0;
}

/* GO TO TOP */
#gototop {
    display:none;
    font-size: 32px;
    background: #fff;
    border: 1px solid #000;
    opacity:0.5;
    color:#000;
    border-radius: 50%;
    text-align: center;
    line-height: 36px;
    width:40px;
    height:40px;
    position: fixed;
    left:24px;
    bottom:42px;
    z-index: 900;
	cursor: pointer;
	transition: all 0.3s ease-in-out;
}
#gototop:hover {
    opacity: 1;
}
@media screen and (max-width: 959px) {
	#gototop {
		bottom: 12px;
	}
}

/* FOOTER */
footer.footer {
	background-color: var(--dgreen);
	color: #fff;
	font-size: 1.8rem;
	letter-spacing: 0.05em;
	--wrap: 1170px;
}
footer.footer .grid.gridgap {
	--gap: 48px;
}
footer.footer > .wrap {
	background: transparent url("data:image/svg+xml;charset=UTF-8,%3csvg viewBox='0 0 354 351' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' fill-rule='evenodd' clip-rule='evenodd' stroke-miterlimit='10'%3e%3cellipse cx='-126.303' rx='125' ry='126.303' fill='none' stroke='%23007770' stroke-width='10' transform='matrix(0 -1 -1 0 176.552 48.946)'/%3e%3cellipse cx='-141.459' rx='140' ry='141.459' fill='none' stroke='%23007770' stroke-width='5' transform='matrix(0 -1 -1 0 176.553 33.79)'/%3e%3cellipse cx='-156.616' rx='155' ry='156.615' fill='none' stroke='%23007770' stroke-width='3' transform='matrix(0 -1 -1 0 176.553 18.634)'/%3e%3c/svg%3e") bottom -180px left -20px no-repeat scroll;
	background-size: 310px;
	padding-block: 48px 24px;
}
footer a:hover {
	color: var(--color-secondary);
}
footer .contact-detail > * {
	width: 100%;
	max-width: 355px;
}
footer .address {
	--gap: 0;
}
footer .address p {
	flex-basis: calc(100% - 50px);
	margin: 0;
}
@media screen and (min-width: 400px) {
	footer .contact-detail-inner {
		margin-left: 96px;
	}
}
footer h6 {
	color: #fff;
	font-family: inherit;
	font-size: inherit;
	font-weight: 400;
	letter-spacing: inherit;
	line-height: inherit;
	text-transform: uppercase;
	margin: 0 0 0.5em 0;
}
footer ul {
	list-style: initial;
}
footer li {
	list-style-position: inside;
}
footer .btn {
	border: 2px solid var(--color-secondary);
	padding: 4px 13px;
	font-size: 1.8rem;
	letter-spacing: 0.048em;
	margin-block: 0;
}

.telephone a::before {
	content:"";
	display: inline-block;
	vertical-align: middle;
	width:22px;
	height:22px;
	margin-right: 0.6em;
	background: transparent url("data:image/svg+xml;charset=UTF-8,%3csvg viewBox='0 0 123 123' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' fill-rule='evenodd' clip-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2'%3e%3cpath d='M37.2 35.03a11.447 11.447 0 0 0-3.355 8.088c0 3.033 1.211 5.939 3.355 8.089L70.973 84.99c4.472 4.467 11.71 4.467 16.177 0l4.934-4.927a6.41 6.41 0 0 1 8.855 0l11.45 11.45a6.27 6.27 0 0 1 0 8.86l-12.339 12.34c-1.866 1.866-9.394 2.788-22.483-2.328a118.474 118.474 0 0 1-39.278-26.49 118.436 118.436 0 0 1-26.483-39.271c-5.117-13.09-4.195-20.617-2.328-22.49L21.823 9.797a6.27 6.27 0 0 1 8.86 0l11.445 11.45a6.26 6.26 0 0 1 0 8.866L37.2 35.03Zm10.562.716a14.23 14.23 0 0 0 0-20.134L36.306 4.162c-5.561-5.55-14.561-5.55-20.128 0L3.834 16.502C-7.322 27.656 6.95 63.834 32.644 89.534c19.673 19.672 45.484 32.65 61.512 32.65 4.2.3 8.344-1.078 11.522-3.84l12.34-12.338c5.55-5.561 5.55-14.567 0-20.128l-11.45-11.45a14.238 14.238 0 0 0-20.129 0l-4.922 4.928a3.558 3.558 0 0 1-4.911 0L42.834 45.579a3.474 3.474 0 0 1 0-4.91l4.928-4.923Z' fill='%2376BAB2' fill-rule='nonzero'/%3e%3c/svg%3e") 0 0 no-repeat scroll;
	background-size: 22px;
}
.email a::before {
	content:"";
	display: inline-block;
	vertical-align: middle;
	width:28px;
	height:17px;
	margin-right: 0.5em;
	background: transparent url("data:image/svg+xml;charset=UTF-8,%3csvg viewBox='0 0 152 91' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' fill-rule='evenodd' clip-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2'%3e%3cpath d='m14.228 82.628 31.255-31.256 27.573 27.572a4.157 4.157 0 0 0 5.889 0l27.577-27.572 31.25 31.256H14.228Zm25.36-37.15L8.334 76.733v-62.51L39.59 45.477Zm104.079-31.256v62.511L112.41 45.478l31.256-31.256Zm-5.895-5.889L76 70.106 14.228 8.333h123.544ZM152 4.167c0-.056-.028-.1-.033-.156-.017-.483-.09-.972-.284-1.439l-.01-.01c-.012-.034-.04-.062-.056-.1a4.005 4.005 0 0 0-.75-1.106c-.095-.106-.206-.195-.317-.29a3.953 3.953 0 0 0-.867-.583c-.133-.066-.255-.139-.394-.189-.461-.172-.944-.294-1.456-.294H4.167c-.511 0-.995.122-1.456.294-.139.05-.255.123-.389.184a4.22 4.22 0 0 0-.872.589c-.111.094-.217.183-.317.289a4.062 4.062 0 0 0-.75 1.116c-.016.034-.044.056-.055.084 0 .005-.006.01-.006.016a4.081 4.081 0 0 0-.289 1.445c0 .05-.033.094-.033.15v82.628c0 .055.033.1.033.15.017.488.095.977.29 1.444 0 .006.005.011.005.017.01.027.039.055.055.083.19.422.445.794.75 1.122.1.106.206.19.317.284.267.233.556.427.872.588.134.067.25.128.39.184.46.178.944.294 1.455.294h143.666c.512 0 .995-.116 1.456-.294.139-.056.261-.122.394-.184.317-.16.6-.355.867-.588.111-.095.222-.184.317-.29.305-.322.56-.688.75-1.105.016-.033.044-.061.055-.1.006 0 .006-.005.011-.011.195-.467.267-.95.284-1.439.005-.055.033-.1.033-.155V4.167Z' fill='%2376BAB2' fill-rule='nonzero'/%3e%3c/svg%3e") 0 0 no-repeat scroll;
	background-size: 28px 17px;
}
.address::before {
	content:"";
	display: inline-block;
	width:13px;
	height:20px;
	margin: 0.3em 0.5em 0 0;
	background: transparent url("data:image/svg+xml;charset=UTF-8,%3csvg viewBox='0 0 13 20' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' fill-rule='evenodd' clip-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2'%3e%3cpath d='M6.394 3.291a3.104 3.104 0 1 1 0 6.208 3.104 3.104 0 0 1 0-6.208m6.395 3.103a6.395 6.395 0 1 0-10.503 4.898l4.108 8.646 4.108-8.646a6.38 6.38 0 0 0 2.287-4.898' fill='%23007770' fill-rule='nonzero'/%3e%3c/svg%3e") 0 0 no-repeat scroll;
	background-size: 13px 20px;
}
.social .icon {
	display: block;
	width: 35px;
	height: 35px;
	text-indent: -999em;
	font-size: 0;
	color: transparent;
	background: var(--color-primary) url() 50% 50% no-repeat scroll;
}
.endline .social .icon {
	background-color: transparent;
}
.endline .social .icon:hover {
	background-color: var(--color-primary);
}
.social .icon.tw {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg viewBox='0 0 130 106' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' fill-rule='evenodd' clip-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2'%3e%3cpath d='M129.622 12.467a53.202 53.202 0 0 1-15.272 4.188c5.489-3.294 9.71-8.5 11.689-14.716a53.114 53.114 0 0 1-16.878 6.46A26.552 26.552 0 0 0 89.744 0C75.055 0 63.15 11.906 63.15 26.59c0 2.089.233 4.116.683 6.06-22.1-1.105-41.694-11.688-54.811-27.788a26.505 26.505 0 0 0-3.6 13.378c0 9.222 4.694 17.366 11.828 22.133a26.487 26.487 0 0 1-12.045-3.328v.334c0 12.883 9.167 23.633 21.328 26.078a26.715 26.715 0 0 1-7.006.938 26.49 26.49 0 0 1-5-.483c3.384 10.567 13.2 18.25 24.84 18.472-9.095 7.134-20.562 11.384-33.034 11.384A54.23 54.23 0 0 1 0 93.394c11.766 7.54 25.744 11.945 40.772 11.945 48.911 0 75.661-40.517 75.661-75.661 0-1.15-.033-2.3-.072-3.45a54.138 54.138 0 0 0 13.261-13.761' fill='%23fff' fill-rule='nonzero'/%3e%3c/svg%3e");
	background-size: 23px 19px;
}
.social .icon.li {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg viewBox='0 0 133 132' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' fill-rule='evenodd' clip-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2'%3e%3cpath d='M15.9 0c8.772 0 15.883 7.122 15.883 15.877 0 8.767-7.11 15.89-15.883 15.89-8.8 0-15.9-7.123-15.9-15.89C0 7.122 7.1 0 15.9 0M2.172 43.811h27.434v88.133H2.172V43.811ZM46.806 43.812h26.272v12.044h.373c3.655-6.933 12.6-14.238 25.933-14.238 27.733 0 32.867 18.25 32.867 41.989v48.338h-27.384v-42.85c0-10.227-.205-23.377-14.25-23.377-14.26 0-16.439 11.133-16.439 22.622v43.605H46.806V43.812Z' fill='%23fff' fill-rule='nonzero'/%3e%3c/svg%3e");
	background-size: 24px;
}
.social .icon.fb {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg viewBox='0 0 87 167' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' fill-rule='evenodd' clip-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2'%3e%3cpath d='m81.672 90.617 3.817-29.623H56.16V42.09c0-8.578 2.389-14.422 14.689-14.422l15.672-.011V1.166C83.812.807 74.512 0 63.667 0c-22.617 0-38.09 13.806-38.09 39.156v21.838H0v29.623h25.578v76H56.16v-76h25.511Z' fill='%23fff' fill-rule='nonzero'/%3e%3c/svg%3e");
	background-size: 16px 30px;
	background-position: bottom 0 right 5px;
}
.social .icon.yt {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg viewBox='0 0 29 35' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' fill-rule='evenodd' clip-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2'%3e%3cpath d='M22.762 12.833V3.27H21.03v7.311c-.385.543-.75.81-1.095.81-.233 0-.369-.137-.406-.405-.022-.057-.022-.268-.022-.674V3.269h-1.728v7.563c0 .675.06 1.133.155 1.421.172.486.557.712 1.116.712.632 0 1.29-.384 1.98-1.176v1.044h1.733Zm-8.142-2.77c0 .885-.268 1.328-.827 1.328-.56 0-.828-.443-.828-1.328V6.04c0-.885.268-1.327.828-1.327.559 0 .827.442.827 1.327v4.023Zm1.733-.327v-3.35c0-1.02-.175-1.767-.539-2.253-.48-.652-1.153-.98-2.02-.98-.864 0-1.54.328-2.02.98-.368.486-.542 1.232-.542 2.254v3.349c0 1.017.174 1.77.542 2.25.48.653 1.156.98 2.02.98.867 0 1.54-.327 2.02-.98.364-.48.54-1.233.54-2.25M11.216 0H9.273l-1.31 5.04L6.597 0H4.576c.405 1.188.828 2.385 1.232 3.575.616 1.79 1.001 3.138 1.174 4.061v5.197h1.923V7.636L11.217 0Z' fill='%23fff' fill-rule='nonzero'/%3e%3cpath d='M28.376 24.441c0 2.212-.002 4.56-.498 6.708-.346 1.508-1.58 2.621-3.066 2.788-3.519.393-7.082.394-10.627.393-3.545.001-7.107 0-10.625-.393-1.487-.167-2.72-1.28-3.067-2.788C0 29.001 0 26.653 0 24.441c0-2.215.004-4.558.498-6.71.347-1.506 1.582-2.621 3.067-2.786 3.52-.394 7.081-.395 10.627-.394 3.544-.001 7.106 0 10.625.394 1.487.165 2.721 1.28 3.067 2.786.494 2.152.492 4.495.492 6.71Zm-2.114 3.111v-.25h-1.75c0 .688-.022 1.067-.038 1.16-.099.459-.345.688-.767.688-.588 0-.874-.436-.874-1.313v-1.676h3.43v-1.96c0-1.012-.174-1.752-.533-2.231-.48-.649-1.163-.97-2.023-.97-.874 0-1.56.321-2.053.97-.365.479-.53 1.219-.53 2.231v3.315c0 1.004.186 1.752.55 2.224.496.646 1.18.97 2.077.97.895 0 1.598-.338 2.074-1.025a2.5 2.5 0 0 0 .4-1.028c.016-.173.037-.553.037-1.105Zm-6.473.189V23.97c0-.894-.059-1.521-.174-1.902-.228-.71-.686-1.068-1.37-1.068-.63 0-1.218.345-1.772 1.026v-4.149H14.76V30.58h1.714v-.918c.573.71 1.162 1.048 1.772 1.048.684 0 1.142-.358 1.37-1.064.115-.4.174-1.03.174-1.905Zm-8.23 2.839v-1.032c-.682.781-1.329 1.162-1.96 1.162-.553 0-.934-.224-1.105-.704-.095-.288-.152-.738-.152-1.408v-7.482h1.715v6.968c0 .4 0 .61.016.666.041.266.172.4.401.4.344 0 .705-.265 1.084-.801v-7.233h1.717v9.464h-1.717ZM8.092 19.666v-1.789h-5.98v1.789h2.018V30.58h1.907V19.666h2.055Zm9.981 8.21c0 .854-.252 1.274-.745 1.274-.283 0-.57-.134-.856-.42v-5.769c.286-.283.573-.417.856-.417.493 0 .745.438.745 1.292v4.04Zm6.472-3.144h-1.713v-.875c0-.875.286-1.313.86-1.313.566 0 .853.438.853 1.313v.875Z' fill='%23fff'/%3e%3c/svg%3e");
	background-size: 22px 26px;
}
.social .icon:hover ,
.social a:hover .icon {
	background-color: var(--color-secondary);
}
.contactinfo .social {
	margin-top: -12px;
}
.social div.icon {
	display: inline-block;
	vertical-align: middle;
	margin: 12px 12px 12px 0;
}
@media screen and (min-width:768px) and (max-width:960px) {
	header .social {
		display: none;
	}
}
.itemz { display: none !important; }
.itemz a { font-weight: 400; font-size: 1.6rem !important; }
@media screen and (max-width:959px) {
	header .social {
		display: none !important;
	}
	.itemz { 
		display: inline-block !important; 
		padding: 1em;
	}
}

.endline {
	background: var(--grey,#666666);
	color: #fff;
	font-size: 1.4rem;
	letter-spacing: 0.04em;
	--gap: 10px;
	padding-block: 0.8em;
}
.endline .social {
	margin-inline-start: auto;
	--gap: 24px;
}

/***
FLEX
***/
.flex {
    display: -webkit-box;
	display: -moz-box;
	display: box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	gap: var(--gap,0);
}
.flexinline {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
}
.flex.flexo > * {
	-webkit-box-flex: 1;
	    -ms-flex: 1 0 0;
	        flex: 1 0 0;
}
.flex.flexi > * {
	-webkit-box-flex: 1;
	    -ms-flex: 1 1 auto;
	        flex: 1 1 auto;
}
.flexnowrap {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}
.flexgap {
	gap: var(--gap);
}
.flexgrow > *, .flexgrowi {
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1
}
.flexcol {
	-webkit-box-orient: vertical;
	box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}
.flexrow {
	-webkit-box-orient: horizontal;
	box-orient: horizontal;
	-ms-flex-direction: row;
	flex-direction: row;
}
.flexdirection {
	-webkit-box-direction: normal;
	box-direction: normal;
}
.flexdirectionreverse {
	-webkit-box-direction: reverse;
	box-direction: reverse;
}
.flexstretch {
	-webkit-box-pack: justify;
	box-pack: justify;
	-ms-flex-pack: stretch;
	justify-content: space-between;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-box-align: stretch;
	box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}
.flexstart {
	-ms-flex-line-pack: flex-start;
	align-content: flex-start;
	-webkit-box-align: flex-start;
	box-align: flex-start;
	-ms-flex-align: flex-start;
	align-items: flex-start;
}
.flexwrap {
	-webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}
.flexfirst {
	-webkit-box-ordinal-group: 0;
	box-ordinal-group:-1;
	-ms-flex-order: -1;
	order: -1;
}
.flexorder {
	-webkit-box-ordinal-group: 1;
	box-ordinal-group:0;
	-ms-flex-order: -1;
	order: -1;
}
.flexistretch {
	-webkit-align-self: stretch;
	-ms-flex-item-align: stretch;
	-ms-grid-row-align: stretch;
	    align-self: stretch;
}
.flexaround {
	-moz-justify-content: space-around;
	-ms-justify-content: space-around;
 	-ms-flex-pack: distribute;
     justify-content: space-around;
}
.flexspaceb {
	-webkit-box-pack: space-between;
	box-pack: space-between;
	-ms-flex-pack: space-between;
	-moz-flex-pack: space-between;
	justify-content: space-between;
}
.flexevenly {
	-webkit-box-pack: space-evenly;
	box-pack: space-evenly;
	-ms-flex-pack: space-evenly;
	-moz-flex-pack: space-evenly;
	justify-content: space-evenly;
}
.flexcenter {
	-moz-justify-content: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}
.flexend {
	-moz-justify-content: flex-end;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
}
.flexvcenter {
	-webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.flexvend {
	-webkit-box-align: end;
    -webkit-align-items: end;
    -moz-box-align: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
}

/***
GRID
***/

.grid {
	--gridcols: 1;
	--gap: 0;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
    gap: var(--gap);
}
.grid > * {
	width:100%;
	max-width: calc(100% / var(--gridcols));
}
@supports (display: grid) OR (display: -ms-grid) {
    .grid {
        display: -ms-grid;
        display: grid;
		grid-template-columns: repeat(var(--gridcols), minmax(0, 1fr));
		grid-gap: var(--gap);
		gap: var(--gap);
	}
	.grid>* {
		width:auto;
		max-width: none;
	}
}
.gridreverse {
    direction: rtl;
}
.gridreverse > * {
    direction: ltr;
}
.gridcenter {
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
    justify-items: center;
}
.gridstretch {
	-webkit-box-pack: stretch;
	-webkit-justify-content: stretch;
	-ms-flex-pack: stretch;
	justify-content: stretch;
}
.gridvcenter {
	-webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}
.gridgap {
	--gap: var(--pad);
}
.grid,
.grid21,
.grid31,
.grid321,
.grid4321,
.grid421,
.grid6321,
.grid632 {
    gap: var(--gap);
	-ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
}
.grid2,
.grid632 {
	-ms-grid-columns: 1fr var(--gap) 1fr;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.grid3 {
	-ms-grid-columns: 1fr var(--gap) 1fr var(--gap) 1fr;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media screen and (min-width:640px) {
    .gridauto {
        /*grid-template-columns: repeat( auto-fill, minmax(min(calc(180px + 12vmin), 100%), 1fr));*/
        grid-template-columns: repeat( auto-fit, minmax(var(--gridauto,236px), 1fr) );
    }
	.grid6321,.grid632,.grid4321,.grid421,.grid21 {
		-ms-grid-columns: 1fr var(--gap) 1fr;
    	grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
@media screen and (max-width:960px) {
	.grid21 .grid21 {
		-ms-grid-columns: 1fr;
		grid-template-columns: 1fr;
	}
}
@media screen and (min-width:768px) {
	.grid31 {
		-ms-grid-columns: 1fr var(--gap) 1fr var(--gap) 1fr;
    	grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media screen and (min-width:640px) {
	.grid321 {
		-ms-grid-columns: 1fr var(--gap) 1fr;
    	grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
@media screen and (min-width:960px) {
	.grid6321,.grid632,.grid4321,.grid321 {
		-ms-grid-columns: 1fr var(--gap) 1fr var(--gap) 1fr;
    	grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media screen and (min-width:1280px) {
	.grid421 {
		-ms-grid-columns: 1fr var(--gap) 1fr var(--gap) 1fr var(--gap) 1fr;
    	grid-template-columns: repeat(4, minmax(0, 1fr));
	}
	.grid6321,.grid632 {
		-ms-grid-columns: 1fr var(--gap) 1fr var(--gap) 1fr var(--gap) 1fr var(--gap) 1fr var(--gap) 1fr;
    	grid-template-columns: repeat(6, minmax(0, 1fr));
	}
}
@media screen and (min-width:1600px) {
	.grid4321 {
		-ms-grid-columns: 1fr var(--gap) 1fr var(--gap) 1fr var(--gap) 1fr;
    	grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}
.grid > *:only-child {
    /*grid-column: 1/-1;*/
}

/******
UTILITY
******/
/* ASPECT RATIO with fallback */
.aspect {
	--aspectratio: 1/1;
	aspect-ratio: var(--aspectratio);
}
.aspect.square {
	--aspectratio: 1/1;
}
.aspect.video {
	--aspectratio: 16/9;
}
.aspect.video-alt {
	--aspectratio: 9/16;
}
.aspect.rect {
	--aspectratio: 4/3;
}
@supports (aspect-ratio: var(--aspectratio)) {
	.aspect {
		display: grid;
		place-items: center;
	}
}
@supports not (aspect-ratio: var(--aspectratio)) {
	.aspect {
		position: relative;
	}
	.aspect::before {
		content: "";
		float: left;
		padding-top: calc(100% / calc(var(--aspectratio)));
	}
	.aspect::after {
		content: "";
		display: block;
		clear: both;
	}
	.aspect > * {
		position: absolute;
		top:0;right:0;bottom:0;left:0;
		z-index: 1;
		display: flex;
		align-items: center;
		justify-content: center;
	}
}
.transition-all, .ta  {
	-webkit-transition: var(--transition-attr,all) var(--transition-time,0.2s) var(--transition-type,ease);
	-moz-transition: var(--transition-attr,all) var(--transition-time,0.2s) var(--transition-type,ease);
	-o-transition: var(--transition-attr,all) var(--transition-time,0.2s) var(--transition-type,ease);
	-ms-transition: var(--transition-attr,all) var(--transition-time,0.2s) var(--transition-type,ease);
	transition: var(--transition-attr,all) var(--transition-time,0.2s) var(--transition-type,ease);
}
/* ALIGN */
.alignleft {
	float: left;
}
.aligncenter {
    display: inline-block;
    position: relative;
    left: 50%;
    -webkit-transform: translate(-50%, 0px);
        -ms-transform: translate(-50%, 0px);
            transform: translate(-50%, 0px);
}
.alignright {
	float: right;
}
.none {
	display: none
}
.alignwide {
	margin-left: auto;
	margin-right: auto;
	max-width: 75vw;
	width: 100%;
}
.alignfull {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	max-width: 100vw;
	width: 100vw;
}
.textcenter {
    text-align: center;
}
iframe {
	max-width: 100%;
}

* CLEARFIX */
.cf {
	zoom: 1;
}
.cf::before, .cf::after {
	content: ' ';
	display: table;
}
.cf::after {
	clear: both;
}

/* MAP */
.acf-map {
    width: 100%;
    height: 780px;
}
.acf-map button {
    border-radius: initial;
}
.banner .acf-map {
	position: absolute;
	z-index: 0;
	top: 0;
}
.acf-map img {
   max-width: inherit !important;
}
/* GREY */
.greyscale {
    -webkit-filter: saturate(0%);
    filter: saturate(0%);
}

/********
GUTENBERG
BLOCKS */




/* RATIO EMBED */

/*https://codepen.io/cvn/pen/WbXEoX/ */
.video-bg {
  background: white;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  overflow: hidden;
}
.video-bg .video-fg,
.video-bg iframe,
.video-bg video,
.video-bg .youtubevideo {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/*
  Full page video background
  Simulate object-fit: cover
  Based on http://fvsch.com/code/video-background/
*/
/*
@media (min-aspect-ratio: 16/9) {
  .video-bg.cover .video-fg {
    height: 300%;
    top: -100%;
  }
}
@media (max-aspect-ratio: 16/9) {
  .video-bg.cover .video-fg {
    width: 300%;
    left: -100%;
  }
}
*/
@media screen and (max-width: 1082px) {
  .video-bg.cover .video-fg {
    width: 300%;
    left: -100%;
  }
}
@media screen and (min-width:1083px) {
  .video-bg.cover .video-fg {
    height: 300%;
    top: -100%;
  }
}
@supports (-o-object-fit: cover) {
  .video-bg.cover .video-fg.supports-cover {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
  }
  .video-bg.cover iframe,
  .video-bg.cover video,
  .video-bg.cover .youtubevideo {
    -o-object-fit: cover;
  }
}
@supports ((-o-object-fit: cover) or (object-fit: cover)) {
  .video-bg.cover .video-fg.supports-cover {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
  }
  html:not(.safari) .video-bg.cover iframe,
  html:not(.safari) .video-bg.cover video,
  html:not(.safari) .video-bg.cover .youtubevideo {
       -o-object-fit: cover;
          object-fit: cover;
  }
}
/*
  Vertical centering for 16/9 youtube iframes and video elements
  Simulate object-fit: contain for entire element, not just contents of element
*/
.video-bg.contain {
  font-size: 0;
}
.video-bg.contain * {
  font-size: 16px;
}
.video-bg.contain::before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}
.video-bg.contain .video-fg {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  /* 16:9 */
  pointer-events: none;
}
.video-bg.contain iframe,
.video-bg.contain video {
  pointer-events: auto;
}
@media (min-aspect-ratio: 16/9) {
  .video-bg.contain .video-fg {
    height: 100%;
    padding-bottom: 0;
    max-width: 53.33333333vh;
    left: 50%;
    margin-left: -26.66666667vh;
  }
}
/* 16x9 Aspect Ratio */
.ratio {
  position: relative;
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-bottom: 56.25%;
}
/* 4x3 Aspect Ratio */
.ratio-4x3 {
  padding-bottom: 75%;
}
.ratio iframe {
  position: absolute;
  top:0;
  left: 0;
  width: 100%;
  height: 100%;
  border:none;
}

/*********
PAGINATION 
*********/
.custom-pagination {
	clear:both;
	margin: var(--pad) auto 0 auto;
	text-align:center;
    font-size: 1.4rem;
}
.custom-pagination span,
.custom-pagination a {
  display: inline-block;
  padding: 2px 10px;
  text-decoration:none !important;
}
.custom-pagination a {
	color: #CCCCCC;
	border: 1px solid #CCCCCC;
	border-radius:0;
	display:inline-block;
	padding:5px 20px;
	background:none;
	position:relative;
	text-transform:uppercase;
}
.custom-pagination a:hover {
  background-color: var(--color-secondary);
  color: #fff;
}
.custom-pagination span.page-num {
  margin-right: 10px;
  padding: 0;
}
.custom-pagination span.dots {
  padding: 0;
  color: #CCCCCC;
}
.custom-pagination span.current {
  background-color: var(--color-primary);
  color: #fff;
  padding:6px 21px;
}

/************
THEME CHECKER
************/
.sticky {}
.gallery-caption {}
.bypostauthor {}

/***********
PRINT STYLES
***********/

@media print {
	* {
		background: transparent !important;
		color: black !important;
		text-shadow: none !important;
		-webkit-filter: none !important;
		        filter: none !important;
		-ms-filter: none !important;
	}
	a, a:link, a:visited {
		color: #444 !important;
		text-decoration: underline;
	}
	a::after, a:visited::after {
		content: " (" attr(href) ")";
	}
	a abbr[title]::after, a:visited abbr[title]::after {
		content: " (" attr(title) ")";
	}
	.ir a::after,  a[href^="javascript:"]::after,  a[href^="#"]::after {
		content: "";
	}
	pre, blockquote {
		border: 1px solid #999;
		page-break-inside: avoid;
	}
	thead {
		display: table-header-group;
	}
	tr, img {
		page-break-inside: avoid;
	}
	img {
		max-width: 100% !important;
	}
	@page {
		margin: 0.5cm;
	}
	p, h2, h3 {
		orphans: 3;
		widows: 3;
	}
	h2,  h3 {
		page-break-after: avoid;
	}
	.searchform,  nav {
		display: none;
	}
}