:root {
	--button-font-size-mobile: 20px;
	--button-font-size-desktop: 19px;
	--nav-height-mobile: 90px;
	--nav-height-desktop: 180px;
	--nav-line-height-mobile: 25px;
	--nav-line-height-desktop: 60px;
	--sub-nav-line-height: 20px;
	--header-colour: transparent;
	--header-nav-down-colour: #1a3232;
	--primary-colour: #126734;
	--dark-colour: #1a3232;
	--header-nav-down-mobile: 0px;
	--header-nav-down-desktop: -110px;
	--header-nav-down-submenu: 115px;
}
header {
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	z-index: 99;
	height: 110px;
	background-color: transparent;
}
header.nav-down {
	top: -15px;
	height: 95px;
}
nav {
	position: relative;
	top: auto;
	width: auto;
	overflow: visible;
	max-width: none;
	left: 0px;
	background-color: transparent;
	z-index: 1;
}
header.nav-down .main-nav .sub-menu {
	top: 70px;
}
.main-nav li:hover a {
	color: var(--light);
}
header.nav-down .main-nav li:hover a {
	color: var(--light);
}
ul.main-nav,
.main-nav ul {
	list-style: none;
	padding: 0;
	margin: 0;
	font-size: 0px;
}
.main-nav a {
	display: block;
	text-decoration: none;
}
.main-nav > li {
	position: static;
	display: inline-block;
	margin: 0;
	padding: 0;
	vertical-align: top;
	border-bottom-style: none;
	border-top-style: none;
}
.main-nav > li:hover .sub-menu {
	opacity: 1;
	visibility: visible;
	-webkit-transition-delay: 0s, 0s;
	-moz-transition-delay: 0s, 0s;
	-o-transition-delay: 0s, 0s;
	transition-delay: 0s, 0s;
}
.main-nav .sub-menu {
	opacity: 0;
	visibility: hidden;
	z-index: 1;
	display: block;
	position: absolute;
	top: auto;
	left: auto;
	right: auto;
	white-space: nowrap;
	width: auto;
	height: auto;
	-webkit-transition: all 0.2s ease-in-out!important;
	-moz-transition: all 0.2s ease-in-out!important;
	-o-transition: all 0.2s ease-in-out!important;
	transition: all 0.2s ease-in-out!important;
	padding: 20px 30px;
	max-width: none;
	background-color: var(--dark);
	margin-left: 10px;
	box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.08);
	border-radius: 8px;
	text-align: left;
}
.has-drop .sub-open {
	display: none;
}
.closeNav {
	display: none;
}
.main-nav li a {
	line-height: 70px;
	font-size: 17px;
	padding: 0px 10px;
	display: block;
	color: #fff;
	/* [disabled]background-color: #EA2B2E; */
}
#alt .main-nav li a {
	color: var(--dark);
}
#alt .main-nav li a:hover,
#alt .main-nav li:hover a,
#alt .main-nav li a.selected {
	color: var(--primary);
}
#alt header.nav-down .main-nav li a {
	color: #fff;
}
#alt header.nav-down .main-nav li a:hover,
#alt header.nav-down .main-nav li:hover a,
#alt header.nav-down .main-nav li a.selected {
	color: var(--light);
}
.sub-menu li a {
	background-color: transparent!important;
	font-size: 16px!important;
	line-height: var(--sub-nav-line-height);
	padding: 6px 0px;
	color: var(--light)!important;
}
.sub-menu li a span {
	border-style: none!important;
}
.sub-menu li a:hover {
	opacity: 1;
	color: var(--primary)!important;
}
.sub-menu li {
	border-top-style: none;
	color: undefined;
}
.main-nav .sub-menu ul {
	font-size: 24px;
	float: none;
}
.sub-menu-content ul li a {
	color: #212529!important;
	border-bottom: 1px solid #E0E0E0;
	margin-left: 30px;
	text-transform: none;
	letter-spacing: normal;
}
.sub-menu-content {
	font-size: 0px;
	width: 100%;
	padding: 0px;
	text-align: right;
	max-width: 900px;
}
.sub-menu-content ul li {
	-webkit-column-break-inside: avoid;
	page-break-inside: avoid;
	break-inside: avoid;
	white-space: normal;
}
.sub-menu-content span {
	display: inline-block;
	width: 40%;
	vertical-align: top;
	font-size: 14px;
	white-space: normal;
	text-align: left;
	padding-top: 0px;
}
ul.main-nav li .has-drop {
	text-align: center;
}	
.main-nav-wrap {
	font-size: 0px;
}
.main-nav-wrap ul.top-level {
	margin: 0px;
	padding: 0px;
	vertical-align: middle;
	font-size: 0px;
}

.main-nav li a.selected span {
	padding-bottom: 8px;
}
.main-nav li a.selected,
header.nav-down .main-nav li a.selected {
	color: var(--light);
}
.menu-button {
	border-style: none;
	margin-top: 0px;
	margin-right: 0px;
	margin-left: 10px;
	margin-bottom: 0px;
	background-color: var(--primary);
	padding-top: 0px;
	padding-right: 0px;
	padding-left: 0px;
	padding-bottom: 0px;
	line-height: var(--nav-line-height-desktop);
	float: right;
	cursor: pointer;
	border-radius: 50%;
	width: 60px;
	height: 60px;
}
header.nav-down .menu-button {
	border: 1px solid #fff;
}
#dark-nav .menu-button {
	background-color: #212529;
}
.menu-button svg {
	width: 30px;
	margin-top: -5px;
}
#dark-nav .menu-button svg path {
	fill: #fff;
}
.menu-button svg path {
	fill: #fff;
}
.logo-wrap {
	float: left;
	position: absolute;
	z-index: 2;
	bottom: 0px;
	left: 0px;
}
.logo-wrap a {
	width: 100%;
	height: 100%;
	display: block;
	position: relative;
}
.logo-wrap svg {
	width: 150px;
	-webkit-transition-duration: 0s;
	-moz-transition-duration: 0s;
	-o-transition-duration: 0s;
	transition-duration: 0s;
}
svg.full {
	margin-left: 16px;
}
svg.icon {
	height: 41px;
	width: auto;
	margin-top: 14px;
	margin-left: 20px;
}
svg.icon.over {
	margin-top: 0px;
	margin-left: 0px;
}
.logo-wrap svg path.logo-colour {
	/*fill: var(--primary);*/
	fill: var(--light);
}
.logo-wrap svg path {
	fill: #fff;
}
#alt .logo-wrap svg path.logo-colour {
	fill: var(--primary);
}
#alt .logo-wrap svg path {
	fill: #212529;
}
.logo-text {
	fill: #fff;
}
#dark-nav .logo-text {
	fill: #212529;
}
.down-shape {
	position: absolute;
	width: 100%;
	top: 45px;
	left: 0px;
	display: none;
}
.shape {
	border-radius: 500px;
	background-color: rgba(22,34,41,0.70);
	margin: 0px -4px;
	height: 70px;
	position: relative;
	backdrop-filter: blur(10px);
}
.shape a {
	display: block;
	position: absolute;
	z-index: 90;
}
.main-nav.top-level {
	display: none;
}
.over-nav {
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background-color: var(--light);
	padding: 50px 0px;
	overflow-y: scroll;
	display: none;
	z-index: 999;
}
.nav-item-wrap {
	max-width: 500px;
}
.nav-item {
	border-bottom: 1px solid #000;
}
.nav-item:last-child {
	border-style: none;
}
.nav-item-button {
	margin: 0px;
	padding-top: 0px;
	padding-right: 0px;
	padding-left: 20px;
	padding-bottom: 0px;
	border-style: none;
	background-color: transparent;
}
.nav-item-button svg {
	width: 25px;
}
.nav-item-button:not(.collapsed) svg {
  transform: rotate(90deg);
}
.nav-item .collapsing {
	transition: height .20s ease;
}
.nav-item a {
	display: block;
	text-decoration: none;
	font-size: 32px;
	padding: 10px 0px;
	line-height: 38px;
	font-weight: 500;
}
.nav-item a:hover {
	color: var(--primary);
}
.nav-item-content {
}
.nav-item-sub {
	padding-bottom: 30px;
}
.nav-item-sub ul {
	padding: 0px;
	margin: 0px;
	list-style-type: none;
}
.nav-item-sub ul li {
}
.nav-item-sub ul li a {
	font-weight: normal;
	font-size: 28px;
	padding: 5px 0px;
	line-height: 34px;
}
.no-scroll {
	overflow: hidden;
}
.menu-icon {
	margin-bottom: 30px;
}
.menu-icon svg.icon   {
	height: 75px;
}
.close-menu {
	padding: 0px;
	margin: 0px;
	background-color: transparent;
	border-style: none;
}
.close-menu svg {
	height: 50px;
}
.main-nav li a span {
	border-bottom: 1px solid rgba(255,255,255,0.00);
	padding-bottom: 7px;
}
.main-nav li a:hover span {
	/* [disabled]border-bottom: 1px solid var(--light); */
}
#dark-nav .main-nav li a:hover span {
	border-bottom: 1px solid rgba(0,0,0,0.30);
}
#dark-nav header.nav-down .main-nav li a {
	color: #fff;	
}
#dark-nav header.nav-down .main-nav li a:hover span {
	border-bottom: 1px solid rgba(255,255,255,0.50);
}
.nav-contact {
	padding: 0px;
	margin-top: 50px;
	margin-right: 0px;
	margin-left: 0px;
	margin-bottom: 0px;
	list-style-type: none;
	font-size: 0px;
}
.nav-contact li {
	font-size: 20px;
}
.nav-contact li a {
	display: block;
	text-decoration: none;
	font-size: 24px;
	line-height: 38px;
}
.nav-contact li a:hover {
	text-decoration: none;
}
.nav-social {
	padding: 0px;
	margin-top: 25px;
	margin-right: -8px;
	margin-left: -8px;
	margin-bottom: 0px;
	list-style-type: none;
	font-size: 0px;
}
.nav-social li {
	display: inline-block;
}
.nav-social li a {
	padding: 0px 8px;
}
.nav-social li a img {
	height: 20px;
}
.nav-social li a:hover {
	opacity: 0.6;
}
.nav-top-wrap {
	height: 90px;
	position: relative;
}
.nav-contact-top {
	position: absolute;
	right: 0px;
	bottom: 5px;
	font-size: 0px;
}
.nav-contact-top ul
  {
	margin: 0px;
	padding: 0px;
	font-size: 0px;
	list-style-type: none;
}
.nav-contact-top ul li {
	display: inline-block;
	font-size: 18px;
	vertical-align: middle;
}
.nav-contact-top ul li a {
	text-decoration: none;
	padding: 3px 15px;
	display: block;
	color: #fff;
}
.nav-contact-top ul li a:hover {
	color: var(--light);
}
#alt .nav-contact-top ul li a {
	text-decoration: none;
	padding: 3px 15px;
	display: block;
	color: var(--dark);
}
#alt .nav-contact-top ul li a:hover {
	color: var(--primary);
}
.nav-contact-top ul li:first-child {
	vertical-align: middle;
	border-right: 1px solid rgba(255,255,255,0.30);
}
#alt .nav-contact-top ul li:first-child {
	vertical-align: middle;
	border-right: 1px solid rgba(26,50,50,0.30);
}
.nav-contact-top ul li:first-child,
.nav-contact-top ul li:nth-child(2) {
	display: none;
}
.menu-button.feature-nav svg {
    margin-top: 2px;
}


@media (min-width:420px){
svg.icon {
	height: 47px;
	margin-top: 12px;
}
}

@media (min-width:600px){
.nav-contact-top ul li:first-child,
.nav-contact-top ul li:nth-child(2) {
	display: inline-block;
}
header.nav-down {
	background-color: var(--dark-colour);
}
header.nav-down .menu-button {
	border-style: none;
}
}

@media (min-width:625px){
.feature-nav li:first-child {
	display: inline-block;	
}
.menu-button {
	margin-top: 0px;
}
}

@media (min-width:800px){
header {
	height: 130px;
}
header.nav-down {
	top: -25px;
	height: 105px;
}
.logo-wrap svg {
  	width: 180px;
}
.nav-top-wrap {
  	height: 110px;
}
.nav-contact-top {
  	bottom: 15px;
}
.nav-contact-top ul li {
	font-size: 20px;		
}
}

@media (min-width:850px){
body.with-hero-img .logo-text {
	fill: #fff!important;
}
#dark-nav.with-hero-img .main-nav li a {
	color: #fff;
}
}

@media (min-width:1200px){
header {
	height: 180px;
}
header.nav-down {
	top: -100px;
	height: 190px;
}
.main-nav-wrap ul.top-level {
	display: inline-block;
}
.main-nav-wrap {
	text-align: right;
}
.main-nav li a {
	font-weight: 600;		
}
.menu-button.feature-nav {
    margin-top: 7px;
}
.menu-button.top {
	display: none;
}
.nav-contact-top {
    bottom: 30px;
}
.nav-contact-top ul li:nth-child(2) a {
	padding-right: 0px;
}
}
