/* Global styles */

html {
    font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	color: #667687;
}


/* Colours */

.dark-grey-colour {
	color: #1a1a1a;
}

.medium-grey-colour {
	color: rgba(26,26,26,.85);
}

.green-grey-colour {
	color: rgba(84,86,76,.85);
}

.green-one-colour {
	color: #90c340;
}

.green-two-colour {
	color: #98cb40;
}

.green-three-colour {
	color: #c1e08c;
}

.green-four-colour {
	color: #e0efc6;
}

.white-colour {
	color: #fff;
}


/* Backgrounds */

.dark-grey-bg {
	background: #1a1a1a;
}

.medium-grey-bg {
	background: rgba(26,26,26,.85);
}

.green-grey-bg {
	background: rgba(84,86,76,.85);
}

.green-one-bg {
	background: #90c340;
}

.green-two-bg {
	background: #98cb40;
}

.green-three-bg {
	background: #c1e08c;
}

.green-four-bg {
	background: #e0efc6;
}

.white-bg {
	background: #fff;
}


/* Dropshadows */

.ds-box-one {
	box-shadow: .4375rem -.4375rem 1.375rem 0 rgba(26,26,26,.67);
}

.ds-box-two {
	box-shadow: 1.5625rem .1875rem 2rem 0 rgba(26,26,26,.28);
}

.ds-box-three {
	box-shadow: .4375rem -.4375rem 1.375rem 0 rgba(26,26,26,.17)
}

.ds-box-four {
	box-shadow: .1875rem .1875rem 1.3125rem 0 rgba(26,26,26,.5)
}

.ds-box-five {
	box-shadow: .8125rem .5625rem 1.4375rem 0 rgba(26,26,26,.17)
}

.ds-text-one {
	text-shadow: .4375rem -.4375rem 1.375rem 0 rgba(26,26,26,.67);
}

.ds-text-two {
	text-shadow: 1.5625rem .1875rem 2rem 0 rgba(26,26,26,.28);
}

.ds-text-three {
	text-shadow: .4375rem -.4375rem 1.375rem 0 rgba(26,26,26,.17)
}

.ds-text-four {
	text-shadow: .1875rem .1875rem 1.3125rem 0 rgba(26,26,26,.5)
}

.ds-text-five {
	text-shadow: .8125rem .5625rem 1.4375rem 0 rgba(26,26,26,.17)
}


/* Images */

figure .over {
	background: rgba(255,255,255,.25);
}


/* Fonts */

h1,
h2,
h3,
h4,
h5,
h6 {
	line-height: 110%;
	color: inherit;
	font-weight: 700;
}

h1 {
	font-size: 3.125rem;
	font-weight: 600;
}

h2 {
	font-size: 1.875rem;
}

h3,
h4,
h5,
h6 {
	font-size: 1.125rem;
}

p {
	font-size: 1rem;
	line-height: 130%;
	padding-bottom: 1rem;
	color: inherit;
}

p:last-child {
	padding-bottom: 0;
}

.caps {
	text-transform: uppercase;
}

address {
	font-size: 1rem;
	line-height: 140%;
	color: inherit;
}

.main ul {
	padding-left: 2.5rem;
	list-style: disc;
	padding-bottom: 1rem;
}

.main ol {
	padding-left: 2.5rem;
	list-style: decimal;
	padding-bottom: 1rem;
}

.main ul li,
.main ol li {
	line-height: 140%;
	font-size: 1rem;
	color: inherit;
}

.main a,
.main a:hover:not(.btn):not(.exclude) {
	color: #90c340;
}


/* Buttons */

.btn {
	text-transform: uppercase;
	color: rgba(84,86,76,.85);
	padding: 1.125rem 2.5rem;
	border-radius: 3.125rem;
	font-size: 1.375rem;
    font-weight: 700;
	display: inline-block;
	text-transform: uppercase;
	text-align: center;
	cursor: pointer;
	height: auto;
	-webkit-transition: all .5s ease-in-out;
	-moz-transition: all .5s ease-in-out;
	-o-transition: all .5s ease-in-out;
	transition: all .5s ease-in-out;
}

.btn.green {
	color: rgba(84,86,76,.85);
    background: #90c340;
}

.btn:hover {
	color: #fff;
}



/* Mobile Menu */

#menu_btn {
	position: absolute;
	right: 1.5rem;
	top: 4.3125rem;
	width: 2rem;
	height: 1.125rem;
	text-align: center;
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	-o-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	cursor: pointer;
	display: none;
	z-index: 120;
}

#menu_btn span {
	display: block;
	position: absolute;
	height: .125rem;
	width: 100%;
	background: #fff;
	border-radius: .375rem;
	opacity: 1;
	left: 0;
	-webkit-transition: .25s ease-in-out;
	-moz-transition: .25s ease-in-out;
	-o-transition: .25s ease-in-out;
	transition: .25s ease-in-out;
}

#menu_btn span:nth-child(1) {
  top: 0;
}

#menu_btn span:nth-child(2),
#menu_btn span:nth-child(3) {
  top: .5rem;
}

#menu_btn span:nth-child(4) {
  top: 1rem;
}

body.open #menu_btn span:nth-child(1) {
  top: .5rem;
  width: 0%;
  left: 50%;
}

body.open #menu_btn span:nth-child(2) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

body.open #menu_btn span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

body.open #menu_btn span:nth-child(4) {
  top: .5rem;
  width: 0%;
  left: 50%;
}


/* Header */

header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 120;
}

header .container {
	padding: .75rem 1.5rem;
}

header a.logo,
header a.logo img {
	display: block;
	height: 6.25rem;
	width: 18.75rem;
	float: left;
}

header .info {
	font-size: 1.3125rem;
	font-weight: 700;
	color: #90c340;
	text-align: right;
	float: right;
	padding-top: .875rem
}

header .info a {
	margin-right: 3rem;
	color: #90c340;
}

header .info a i {
	margin-right: .375rem
}

header .info a.social {
	margin: 0 0 0 1.5rem;
}

header .info a.social:first-child {
	margin: 0;
}

header .info a.social i {
	margin-right: 0
}

header nav {
	float: right;
	padding: 1.5rem 0;	
}

header nav ul li {
	display: inline-block;
	margin-right: -.25rem;
}

header nav ul li a {
	display: block;
	text-transform: uppercase;
	color: #fff;
	font-weight: 700;
	font-size: 1.25rem;
	padding: 0 1.25rem;
}

header nav ul li:last-child a {
	padding: 0 0 0 1.25rem;
}

header nav ul li a:hover,
header nav ul li.current-menu-item a,
header nav ul li.current-page-ancestor a {
	color: #90c340;
}

header nav ul li.menu-item-has-children {
	position: relative;
}

header nav ul li.menu-item-has-children ul.sub-menu {
	position: absolute;
	top: 100%;
	left: 50%;
	width: 14rem;
	margin-left: -50%;
	text-align: center;
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	-o-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	z-index: -1;
	padding-top: 2.25rem;
	opacity: 0;
	visibility: hidden;
}

header nav ul li.menu-item-has-children:hover ul.sub-menu {
	opacity: 1;
	visibility: visible;
}

header nav ul li.menu-item-has-children ul.sub-menu li {
	padding: 0;
	background: rgba(26,26,26,.85);
	width: 100%;
}

header nav ul li.menu-item-has-children ul.sub-menu li a {
	padding: .5rem 1.25rem;
	display: block;
	font-size: 1.125rem;
	color: #d5d5d5;
	text-align: left;
}

header nav ul li.menu-item-has-children ul.sub-menu li a:hover {
	color: #90c340;
}

header nav ul li.menu-item-has-children ul.sub-menu li:first-child a {
	padding-top: 1.25rem;
}

header nav ul li.menu-item-has-children ul.sub-menu li:last-child a {
	padding-bottom: 1.25rem;
}

/* Banners */

.block-banner {
	padding-top: 7.9375rem;
	min-height: 26.25rem;
}

.block-banner.banner-home {
	min-height: 41.875rem;
}

.block-banner-plain {
	padding-top: 10.9375rem;
	padding-bottom: 3.5rem;
}

.block-banner-plain h1 {
	font-weight: 700;
	font-size: 3.75rem;
	color: rgba(84,86,76,.85);
}

.block-banner h1 {
	display: inline-block;
	padding: 1.25rem 2.5rem 1.25rem 0;
	background: #90c340;
	color: #fff;
	font-weight: 700;
	font-size: 3.75rem;
	border-radius: 0 3.75rem 3.75rem 0;
	position: relative;
}

.block-banner h1:first-child {
	margin-top: 1.5rem
}

.block-banner h1:before {
	content: '';
	height: 100%;
	background: #90c340;
	position: absolute;
	left: -50vw;
	top: 0;
	width: 50vw;
}

.block-banner.banner-home h1 {
	padding: 1.25rem 2.5rem;
	border-radius: 3.75rem;
}

.block-banner.banner-home h1:before {
	display: none;
}

.banner-slider-container {
	width: 35rem;
	position: absolute;
	bottom: 0;
	left: 50%;
	margin-left: -38.5rem;
	padding: 1.5rem 1.5rem 1.5rem 5rem;
}

.banner-slider h2 {
	color: #90c340;
	font-size: 1.875rem;
	font-weight: 700;
	padding-bottom: .75rem
}

.banner-slider .slide-text {
	padding-right: 3rem;
}

.banner-slider p {
	color: rgba(84,86,76,.85);
	font-size: 1.125rem;
}

.banner-slider i {
	position: absolute;
	font-size: 1.875rem;
	color: #90c340;
	right: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.block-banner.banner-gallery {
	padding-top: 0;
}

.block-banner .banner-gallery-slider .responsive-background {
	min-height: 26.25rem;
}

.block-banner.banner-gallery h1 {
	top: 10.9375rem;
	left: 50%;
	margin-left: -38.5rem; 
	position: absolute;
}


/* Slider */

.slick-dots {
	padding: 0 !important;
	position: absolute;
	left: -2.875rem;
	top: 50%;
	list-style: none;
	width: .75rem;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.slick-dots li {
	display: block;	
	width: .75rem;
	height: .75rem;
	margin-bottom: .75rem;
}

.slick-dots li:last-child {
	margin-bottom: 0
}

.slick-dots li button {
	display: block;
	width: .75rem;
	height: .75rem;
	border-radius: .75rem;
	text-indent: -500vw;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	padding: 0;
	cursor: pointer;
	background: #e0efc6;
}

.slick-dots li.slick-active button {
	background: #90c340;
}



/* Content Block */

.block-content h1 {
	color: rgba(84,86,76,.85);
	padding-bottom: .75rem
}

.block-content .circle-large {
	right: -4.5rem;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: -1
}


/* Circles */

.circle-extra-large {
	width: 33.75rem;
	height: 33.75rem;
	border-radius: 33.75rem;
}

.circle-large {
	width: 20rem;
	height: 20rem;
	border-radius: 20rem;
}


/* Arrows */

.arrow {
	width: 3.25rem;
	height: 3.25rem;
	border-radius: 3.25rem;
	text-align: center;
	line-height: 3.25rem;
	font-size: 1.5rem;
	color: #fff;
	-webkit-transition: all .5s ease-in-out;
	-moz-transition: all .5s ease-in-out;
	-o-transition: all .5s ease-in-out;
	transition: all .5s ease-in-out;
}



/* Links */

body.page-template-page-home .block-links {
	margin-bottom: 1.5rem
}

body.page-template-page-landing .block-links {
	margin: 3rem 0;
}

.block-links.total-links-1 {
	background: #98cb40;
}

.block-links.total-links-2 {
	background: #98cb40;
	background: -moz-linear-gradient(left, #98cb40 0%, #98cb40 50%, #c1e08c 50%, #c1e08c 100%);
	background: -webkit-linear-gradient(left, #98cb40 0%,#98cb40 50%,#c1e08c 50%,#c1e08c 100%);
	background: linear-gradient(to right, #98cb40 0%,#98cb40 50%,#c1e08c 50%,#c1e08c 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#98cb40', endColorstr='#c1e08c',GradientType=1 );
}

.block-links.total-links-3 {
	background: #98cb40;
	background: -moz-linear-gradient(left, #98cb40 0%, #98cb40 50%, #e0efc6 50%, #e0efc6 100%);
	background: -webkit-linear-gradient(left, #98cb40 0%,#98cb40 50%,#e0efc6 50%,#e0efc6 100%);
	background: linear-gradient(to right, #98cb40 0%,#98cb40 50%,#e0efc6 50%,#e0efc6 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#98cb40', endColorstr='#e0efc6',GradientType=1 );
}

.block-links a {
	display: block;
	float: left;
	font-size: 1.875rem;
	font-weight: 700;
	color: rgba(84,86,76,.85);
	padding: 3rem 4.75rem 3rem 1.5rem;
	background: #98cb40;
}

.block-links a span {
	display: block;
	position: relative;
	left: 0;
	top: 50%;
	padding-right: .75rem;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

body.ios .block-links a span {
	display: initial;
	position: absolute;
	left: 1.5rem;
	padding-right: 4.75rem;
}

.block-links .arrow {
	position: absolute;
	right: 1.5rem;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	line-height: 3.25rem;
	text-align: center;
}

.block-links a:hover .arrow {
	box-shadow: .1875rem .1875rem 1.3125rem 0 rgba(26,26,26,.5);
	color: #90c340;
}

.block-links.total-links-1 a {
	width: 100%;
}

.block-links.total-links-2 a {
	width: 50%;
}

.block-links.total-links-2 a:nth-child(2) {
	background: #c1e08c;
}

.block-links.total-links-3 a {
	width: 33.333%;
}

.block-links.total-links-3 a:nth-child(2) {
	background: #c1e08c;
}

.block-links.total-links-3 a:nth-child(3) {
	background: #e0efc6;
}


/* Introduction */

.block-introduction h2 {
	padding-bottom: 1.25rem
}

.block-introduction .btn.green {
	margin-top: 2rem
}


/* Logo Slider */

.block-logo-slider {
	width: 100vw;
	overflow: hidden;
	padding: 3rem 0;
	height: 26.9375rem;
}

.block-logo-slider h2 {
	display: inline-block;
    padding: 1.25rem 2.5rem;
    background: #fff;
    color: #90c340;
    font-weight: 700;
    font-size: 3.125rem;
    border-radius: 3.125rem;
    margin-bottom: 1.5rem
}

.block-logo-slider .circle-extra-large {
	border: .063rem solid rgba(255,255,255,.2);
	padding: 2rem;
	position: absolute;
	right: -16.875rem;
	top: 0;
	-webkit-transition: all .5s ease-in-out;
	-moz-transition: all .5s ease-in-out;
	-o-transition: all .5s ease-in-out;
	transition: all .5s ease-in-out;
}

.block-logo-slider.active .circle-extra-large {
	right: calc(100% - 16.875rem);
}

.block-logo-slider .circle-extra-large .inside {
	background: rgba(255,255,255,.2);
	width: 29.75rem;
	height: 29.75rem;
	border-radius: 29.75rem;
}

.block-logo-slider .logos {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-webkit-transition: all .5s ease-in-out;
	-moz-transition: all .5s ease-in-out;
	-o-transition: all .5s ease-in-out;
	transition: all .5s ease-in-out;
}

.block-logo-slider .logo-slider .slick-dots {
	width: auto;
    top: auto;
    bottom: .75rem;
    -webkit-transform: translateY(-50%,0);
    transform: translate(-50%,0);
    left: 50%;
}

.block-logo-slider .logo-slider .slick-dots li {
	display: inline-block;
	padding: 0 .25rem;
	width: 1.25rem;
	margin-bottom: 0
}

.block-logo-slider.active .logos {
	left: -100%;
}

.block-logo-slider .logos figure {
	padding: 3rem 1.5rem 4.5rem 1.5rem;
	height: auto;
	position: relative;
	cursor: pointer;
	height: 10rem;
}

.block-logo-slider .logos figure img {
	max-height: 4rem;
	margin: auto;
	position: absolute;
	top: 2rem;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	-webkit-transition: all .5s ease-in-out;
	-moz-transition: all .5s ease-in-out;
	-o-transition: all .5s ease-in-out;
	transition: all .5s ease-in-out;
	z-index: 10;
}

.block-logo-slider .logos figure img.shadow,
.block-logo-slider .logos figure:hover img.default {
	opacity: 0;
	visibility: hidden;
}

.block-logo-slider .logos figure:hover img.shadow {
	opacity: 1;
	visibility: visible;
}

.block-logo-slider .logos figcaption {
	opacity: 0;
	visibility: hidden;
	color: #fff;
	text-align: center;
	position: absolute;
	bottom: 1rem;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	-webkit-transition: all .5s ease-in-out;
	-moz-transition: all .5s ease-in-out;
	-o-transition: all .5s ease-in-out;
	transition: all .5s ease-in-out;
}

.block-logo-slider .logos figcaption:after {
	content: '•••';
	position: absolute;
	bottom: -1.875rem;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	font-size: 3rem;
	letter-spacing: .2rem;
}


.block-logo-slider .logos figure:hover figcaption {
	opacity: 1;
	visibility: visible;
}

.block-logo-slider .main-logo-slider-container {
	top: 0;
	left: 100%;
	width: 100%;
	height: 100%;
	background: transparent;
	-webkit-transition: all .5s ease-in-out;
	-moz-transition: all .5s ease-in-out;
	-o-transition: all .5s ease-in-out;
	transition: all .5s ease-in-out;
}

.block-logo-slider.active .main-logo-slider-container {
	left: 0;
}

.block-logo-slider .main-logo-slider-container .close {
	width: 1.75rem;
	height: 1.75rem;
	cursor: pointer;
	position: absolute;
	right: 1.5rem;
	top: 1.5rem;
	z-index: 40;
}

.block-logo-slider .main-logo-slider-container .close svg {
	width: 1.75rem;
	height: 1.75rem;
}

.block-logo-slider .main-logo-slider-container .main-logo-slider .slide {
	position: relative;
	height: 26.9375rem;
}

.block-logo-slider .main-logo-slider-container .main-logo-slider .slide .slide-content {
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.block-logo-slider .main-logo-slider-container .slick-dots {
	left: auto;
	right: .5rem;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.block-logo-slider .slick-dots li.slick-active button {
    background: #fff;
}

.block-logo-slider .slick-dots li button {
    border: .063rem solid #fff;
    background: transparent;
}

.block-logo-slider .main-logo-slider-container figure {
	width: 30%;
	height: auto;
	display: inline-block;
	vertical-align: middle;
	margin-right: -.25rem
}

.block-logo-slider .main-logo-slider-container figure img {
	width: 100%;
	height: auto;
}

.block-logo-slider .main-logo-slider-container .text {
	width: 70%;
	height: auto;
	display: inline-block;
	vertical-align: middle;
	padding: 0 6rem 0 3rem;
	color: #fff;
	margin-right: -.25rem
}


/* Contact Form */

.block-contact-form h3 {
	text-align: center;
	font-size: 2.5rem;
	font-weight: 700;
	color: #90c340;
	padding: 2.25rem 0 .75rem 0
}

.block-contact h1 {
	font-size: 3.75rem;
	color: rgba(84,86,76,.85);
	padding-bottom: 3rem;
}

.contact-block {
	padding: 1.5rem 1.5rem 1.5rem 4rem;
}

.contact-block:after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 4rem;
	width: 3.75rem;
	height: .063rem;
	background: #90c340;
}

.contact-block:last-child:after {
	display: none;
}

.contact-block .fas {
	position: absolute;
	left: 1.5rem;
	top: 1.625rem;
	font-size: 1rem;
	color: #90c340;	
}

.contact-block h2 {
	text-transform: uppercase;
	font-size: 1.1875rem;
	color: rgba(84,86,76,.85);
	padding-bottom: .75rem;
}


/* Newsletter */

.block-newsletter {
	padding: 1.5rem 0;
	overflow: hidden;
}

.block-newsletter .text {
	width: calc(100% - 33.75rem);
	display: inline-block;
	vertical-align: middle;
	margin-right: -.25rem;
	position: relative;
}

.block-newsletter .form {
	width: 33.5rem;
	display: inline-block;
	vertical-align: middle;
}

.block-newsletter .form .gform_body {
	width: calc(100% - 11.75rem);
    float: left;
}

.block-newsletter .form .gform_body input {
	border-radius: 1.5rem 0 0 1.5rem
}

.block-newsletter .form .gform_footer {
	width: 11.75rem;
    float: left;
    position: relative;
}

.block-newsletter .form .gform_footer input[type=submit] {
    margin: 0;
    border-radius: 0 1.5rem 1.5rem 0;
    background: #000;
    color: #fff;
    padding: .875rem 1.5rem;
}

.block-newsletter .form .gform_footer input[type=submit]:hover {
    background: #e0efc6;
    color: #000;
}

.block-newsletter h3 {
	font-size: 1.875rem;
	color: rgba(84,86,76,.85);
	padding-bottom: .75rem;
}

.block-newsletter p {
	font-size: .875rem;
	color: rgba(84,86,76,.85);
	font-weight: 700;
}

.block-newsletter .circle-extra-large {
    background: rgba(255,255,255,.2);
    top: 50%;
    right: -16.875rem;
    margin-top: -16.875rem;
}



/* Circles & Text */

.block-circles-and-text:before {
	content: '';
	position: absolute;
	top: 0;
	left: -13.75rem;
	height: 100%;
	width: 50vw;
	background: #e0efc6;
	z-index: -1
}

body.page-template-page-parent .block-circles-and-text:before,
body.page-template-page-blog .block-circles-and-text:before {
	top: 10rem;
	height: calc(100% - 10rem);
	border-radius: 0 16.875rem 0 0;
}

.block-circles-and-text .container,
.circles-and-text {
	padding: 2.5rem .75rem;
}


body.page-template-page-parent .block-circles-and-text .container,
body.page-template-page-blog .block-circles-and-text .container {
	padding-top: 0
}

body.page-template-page-parent .circles-and-text:first-child,
body.page-template-page-blog .circles-and-text:first-child {
	padding-top: 0
}

.circles-and-text figure {
	display: inline-block;
	vertical-align: middle;
	margin-right: -.25rem;
	position: relative;
}

.circles-and-text figure:before {
	content: '';
	width: 6.25rem;
	height: 6.25rem;
	border-radius: 6.25rem;
	background: #c1e08c;
	position: absolute;
	top: 1.75rem;
	right: -1.125rem;
	box-shadow: 1.5625rem .1875rem 2rem 0 rgba(26,26,26,.28);
}

.circles-and-text figure:after {
	content: '';
	width: 2.75rem;
	height: 2.75rem;
	border-radius: 2.75rem;
	background: #c1e08c;
	position: absolute;
	top: -.75rem;
	right: 4.75rem;
	box-shadow: 1.5625rem .1875rem 2rem 0 rgba(26,26,26,.28);
}


.circles-and-text:nth-child(1n+2) figure:before {
	width: 6.25rem;
	height: 6.25rem;
	border-radius: 6.25rem;
	top: 0;
	left: 0;
	right: auto;
}

.circles-and-text:nth-child(1n+2) figure:after {
	width: 2.75rem;
	height: 2.75rem;
	border-radius: 2.75rem;
	top: 6.25rem;
	left: -1.375rem;
	right: auto;
}

.circles-and-text:nth-child(1n+3) figure:before {
	width: 7.5rem;
	height: 7.5rem;
	border-radius: 7.5rem;
	top: auto;
	bottom: 0;
	left: auto;
	right: 0;
}

.circles-and-text:nth-child(1n+3) figure:after {
	top: auto;
	bottom: -1.375rem;
	left: 50%;
	margin-left: -.6875rem;
}

.circles-and-text .text {
	width: calc(100% - 20rem);
	display: inline-block;
	vertical-align: middle;
	margin-right: -.25rem;
	padding-left: 4rem;
}

.circles-and-text .text h1 {
	color: rgba(84,86,76,.85);
	padding-bottom: .75rem;
}

.circles-and-text .text p {
	color: rgba(84,86,76,.85);
}

.circles-and-text .text a.more {
	font-size: 1.125rem;
	font-weight: 700;
	margin-top: .75rem;
	display: block;
}

.circles-and-text .text a.more:hover {
	color: rgba(84,86,76,.85);
}

.block-circles-and-text h4 {
	font-weight: 500;
	font-size: 1.5rem;
	padding: 2.5rem 0 1.5rem 0;
}

.block-circles-and-text .btn.green {
	margin-bottom: 1.5rem
}


/* Text & Image */

.block-text-and-image:before {
	content: '';
	position: absolute;
	top: 0;
	left: -13.75rem;
	height: calc(100% - 1.5rem);
	width: 50vw;
	background: #e0efc6;
	border-radius: 0 0 16.875rem 0;
}

.block-text-and-image h2 {
    padding-bottom: 1.25rem;
}

.block-text-and-image figure {
	padding-right: 2.25rem;
}

.block-text-and-image img {
	width: 100%;
	height: auto;
}

.block-text-and-image .info-tab h2 {
	font-size: 3.125rem;
}


/* Blog Page */

.featured-posts {
	display: block;
	padding-top: 0;
}

.featured-posts a {
	display: block;
	font-size: 2.5rem;
	font-weight: 500;
	padding: .75rem 0;
	position: relative;
	color: rgba(84,86,76,.85);
}

.featured-posts a.active {
	color: #90c340;
}

.featured-posts a.active:before {
	content: '';
    position: absolute;
    top: 50%;
    right: -4rem;
    width: 4.6875rem;
    height: 4.6875rem;
    border-radius: 4.6875rem;
    background: #c1e08c;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 20;
}

.featured-posts a:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 3.75rem;
    height: .063rem;
    background: #90c340;
}

.featured-posts a:last-child:after {
    display: none;
}

.block-blog-feed h2 {
	margin-left: .75rem;
	border-bottom: .063rem solid #c1e08c;
	display: inline-block;
	padding-bottom: .375rem;
	color: rgba(84, 86, 76, 0.85);
}

.block-blog-feed .circle-large {
	top: -5.25rem;
	right: -2.25rem;
}

.block-blog-feed figure {
	height: 100%;
}

.block-blog-search {
	padding: 5.875rem .75rem 3.75rem .75rem;
}

.block-blog-search.min {
	padding: 0 .75rem 3.75rem .75rem;
}

.block-blog-search h2 {
	color: rgba(84, 86, 76, 0.85);
	line-height: 3rem;
}

.block-blog-search input[type=text] {
	border: .063rem solid rgba(84,86,76,.85);
	position: relative;
	padding-right: 3.5rem;
}

.block-blog-search .btn {
	z-index: 20;
	position: absolute;
	top: 0;
	right: 0;
	height: 3rem;
	width: 2rem;
	cursor: pointer;
}

.block-blog-search .btn svg {
	position: absolute;
	right: 1rem;
	top: .5rem;
	max-width: 1.875rem;
	max-height: 1.875rem;
}

.block-circles-and-text .pagination {
	float: right;
}

.block-circles-and-text .pagination a {
	color: rgba(84, 86, 76, 0.85);
}

.block-circles-and-text .pagination .current {
	color: rgba(84, 86, 76, 0.85);
	font-weight: 700;
}


/* Blog Single */

.block-blog-content .main-content {
	width: calc(100% - 26.5rem);
	float: left;
	color: rgba(84, 86, 76, 0.85);
	padding-top: 0
}

.block-blog-content .main-content h2,
.block-blog-content .main-content h3,
.block-blog-content .main-content h4,
.block-blog-content .main-content h5,
.block-blog-content .main-content h6 {
	padding: .75rem 0;
}

.block-blog-content aside {
	width: 26.5rem;
	float: left;
}

.block-blog-content aside .sidebar-item {
	margin-bottom: 3rem;
}

.block-blog-content aside .sidebar-item:last-child {
	margin-bottom: 0;
}

.sidebar-send-message p {
	font-size: 1.5rem;
	color: rgba(84, 86, 76, 0.85);
}

.sidebar-send-message .inner {
	padding: 2.5rem;
	border-radius: 0 0 1.5rem 1.5rem
}

.sidebar-send-message .btn {
	padding: 1.125rem 1.5rem;
}

.sidebar-posts h2 {
    border-bottom: .063rem solid #c1e08c;
    display: inline-block;
    padding-bottom: .375rem;
    color: rgba(84, 86, 76, 0.85);
}

.sidebar-posts a {
	display: block;
}

.sidebar-posts a {
	display: block;
	font-size: 2.5rem;
	font-weight: 500;
	padding: .75rem 0;
	position: relative;
	color: rgba(84,86,76,.85);
}

.sidebar-posts a:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 3.75rem;
    height: .063rem;
    background: #90c340;
}

.sidebar-posts a:last-child:after {
    display: none;
}

body.single .pagination {
	padding-bottom: 1.5rem
}

body.single .pagination a {
	font-size: 1.5rem;
	font-weight: 700;
	color: rgba(84, 86, 76, 0.85);
}

body.single .pagination a:hover {
	color: #90c340;
}

body.single .pagination a[rel=next] {
	float: right;
}

body.single .pagination a[rel=prev] {
	float: left;
}


/* Contact Page */

.block-contact {
	padding-top: 7.9375rem;
	background: #ffffff;
	background: -moz-linear-gradient(left, #ffffff 0%, #ffffff 50%, #e0efc6 50%, #e0efc6 100%);
	background: -webkit-linear-gradient(left, #ffffff 0%,#ffffff 50%,#e0efc6 50%,#e0efc6 100%);
	background: linear-gradient(to right, #ffffff 0%,#ffffff 50%,#e0efc6 50%,#e0efc6 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#e0efc6',GradientType=1 );
}

.block-contact .contact-details {
	padding: 3rem 1.5rem 1.5rem 1.5rem;
}

.block-contact .contact-form {
	padding: 6.25rem 4rem;
}

.block-contact .contact-form .ginput_container_consent {
	width: calc(100% - 10rem);
}

.block-contact .contact-form .ginput_container_consent input[type=checkbox] {
	border: .063rem solid rgba(84,86,76,.85);
	margin: 0;
	display: inline-block;
	vertical-align: middle;
	float: none;
}

.block-contact .contact-form .ginput_container_consent label {
	color: rgba(84,86,76,.85);
	display: inline-block;
	width: calc(100% - 2rem);
	padding-left: .75rem;
	vertical-align: middle;
	line-height: 120%;
}

.block-contact .contact-form .ginput_container_consent .gfield_required {
	display: none;
}

.block-contact .contact-form .gform_footer {
	position: absolute;
	bottom: 6.875rem;
	right: 4rem;
}

.block-map,
.block-map #map {
	height: 30rem;
}


/* Footer */

footer {
	padding-top: 1.5rem;
	border-top: .063rem solid #90c340;
	font-weight: 600;
}

footer h4 {
	font-size: 1.1875rem;
	text-transform: uppercase;
	color: #fff;
	font-weight: 700;
}

footer .col-md-4 h4 {
	padding: 1rem 0 .125rem 0;
}

footer .col-md-4 h4:first-child {
	padding-top: 0;
}

footer address {
	font-size: 1rem;
	color: #90c340;
	line-height: 120%;
}

footer .col-md-4 a {
	font-size: 1rem;
	color: #90c340;
	font-weight: 700;
	line-height: 120%;
}

footer hr {
	margin: 0 0 1.5rem 0;
	border: none;
	background: #90c340;
	height: .063rem;
}

footer ul#menu-footer-menu {
	text-align: center;
}

footer ul#menu-footer-menu li {
	display: inline-block;
	margin-right: -.25rem;
	position: relative;
	padding: 0 .75rem;
}

footer ul#menu-footer-menu li:after {
	content: '|';
	position: absolute;
	right: -.25rem;
	top: 0;
	color: #90c340;
}

footer ul#menu-footer-menu li:last-child:after {
	display: none;
}

footer ul#menu-footer-menu li a {
	display: block;
	color: #90c340;
}

footer .copy {
	text-align: center;
	color: #fff;
}

footer .copy .sep {
	margin: 0 .375rem;
}

footer .copy a {
	color: #90c340;
}


/* Responsive */

@media only screen and (min-width: 80em) {

}

@media only screen and (max-width: 80em) {

	header a.logo,
	header a.logo img {
	    height: 5rem;
	    width: 15rem;
	}

	header .info {
	    font-size: 1rem;
	    padding-top: .75rem
	}

	header .info a {
	    margin-right: 1.5rem;
	}

	header .info a.social {
	    margin: 0 0 0 .75rem;
	}

	header nav {
	    padding: 1.25rem 0 1rem 0;
	}

	header nav ul li a {
		font-size: 1rem;
		padding: 0 .75rem;
	}

	.banner-slider-container,
	.block-banner.banner-gallery h1 {
		left: 1.5rem;
		margin-left: 0;
	}

}

@media only screen and (max-width: 77.5em) {

	.block-content {
		padding-right: 4.5rem;
	}

	.block-content .circle-large {
		right: 1.5rem;
	}

}

@media only screen and (max-width: 62em) {

	header .container {
	    padding: 0;
	}

	header a.logo,
	header a.logo img {
	    float: none;
	}

	header a.logo {
		margin: .75rem;
	}

	header .info {
	    text-align: center;
	    float: none;
	    padding-top: 0;
	}

	header .info a,
	header .info a.social {
		margin: 0;
		width: 25%;
		display: block;
		float: left;
		background: #90c340;
		color: #fff;
		padding: .375rem;
		border-right: .063rem solid #1a1a1a;
		font-size: .875rem;
	}

	header .info a:last-child {
		border-right: 0;
	}

	header .info a i {
		margin: 0;
	}

	header .info a span {
		display: none;
	}

	header nav {
	    display: none;
	    float: none;
	    padding: 1.5rem 0;
	    text-align: left;
	}

	header nav ul li {
	    display: block;
	    margin-right: 0;
	}

	header nav ul li a,
	header nav ul li:last-child a {
	    font-size: 1.25rem;
	    padding: .375rem 1.5rem;
	}

	header nav ul li.menu-item-has-children {
		position: static;
	}

	header nav ul li.menu-item-has-children ul.sub-menu {
		position: static;
		width: 100%;
		margin-left: 0;
		padding-top: 0;
		opacity: 1;
		visibility: visible;
	}

	header nav ul li.menu-item-has-children ul.sub-menu li {
		background: none;
	}

	header nav ul li.menu-item-has-children ul.sub-menu li a {
		padding: .5rem 1.5rem .5rem 2.25rem;
	}

	header nav ul li.menu-item-has-children ul.sub-menu li:first-child a {
		padding-top: .5rem;
	}

	header nav ul li.menu-item-has-children ul.sub-menu li:last-child a {
		padding-bottom: .5rem;
	}

	#menu_btn {
		display: block;
	}

	.block-banner h1 {
	    font-size: 2.5rem;
	}

	.block-links.total-links-3 a {
		width: 100%;
	}

	.block-newsletter .text,
	.block-newsletter .form {
		width: 100%;
		display: block;
		margin-right: 0
	}

	.block-logo-slider {
		padding: 3rem 0 0 0;
	}

	.block-logo-slider .logos figure {
	    padding: 3rem 1.5rem;
	}

	.block-logo-slider .logos figcaption {
		display: none !important
	}

	.block-contact {
		background: #fff;
	}

	.block-contact .contact-form {
		background: #e0efc6
	}

	.featured-posts a.active:before,
	.blog-images,
	.block-blog-feed .circle-large {
		display: none;
	}

	.block-blog-search {
	    padding: 1.5rem .75rem 3.75rem .75rem;
	}

	.block-blog-content .main-content,
	.block-blog-content aside {
		width: 100%;
		float: none;
	}

	footer .col-md-4 {
		text-align: center;
	}

}

@media only screen and (max-width: 48em) {

	.block-banner.banner-home,
	.block-banner.banner-home .container {
	    height: auto;
	}

	.block-banner h1 {
		display: block;
	    font-size: 1.5rem;
	    text-align: center;
	    margin-bottom: .25rem;
	}

	.banner-slider-container {
		width: 100%;
		position: static;
		padding: 1.5rem 3rem;
	}

	.slick-dots {
		left: -1.75rem;
	}

	.block-logo-slider .slick-dots {
		left: auto;
	}

	.banner-slider-container i {
		right: .875rem;
	}

	.block-links.total-links-2 a {
		width: 100%;
	}

	.block-logo-slider .main-logo-slider-container .main-logo-slider .slide {
		height: 22.4375rem;
	}

	.block-logo-slider .main-logo-slider-container figure,
	.block-logo-slider .main-logo-slider-container .text {
	    width: 100%;
	    display: block;
	    margin-right: 0;
		padding: 0 3rem 0 0;
	}

	.block-logo-slider .main-logo-slider-container figure img {
		max-height: 3rem;
		width: auto;
		margin-bottom: .75rem
	}

	.circles-and-text .text h1 {
		font-size: 2rem;
	}

	.circles-and-text figure {
		width: 10rem;
		height: 10rem;
		border-radius: 10rem;
		box-shadow: none;
	}

	.circles-and-text figure:before {
	    width: 3.125rem;
	    height: 3.125rem;
	    border-radius: 3125rem;
	    box-shadow: none;
	}

	.circles-and-text figure:after {
	    width: 1.375rem;
	    height: 1.375rem;
	    border-radius: 1.375rem;
	    top: 3.125rem;
	    left: -.6875rem;
	    box-shadow: none;
	}

	.circles-and-text:nth-child(even) figure:before,
	.circles-and-text:nth-child(1n+3) figure:before {
	    width: 3.75rem;
	    height: 3.75rem;
	    border-radius: 3.75rem;
	}

	.circles-and-text:nth-child(1n+3) figure:before {
		bottom: 1rem;
		right: -.5rem;
	}

	.circles-and-text:nth-child(even) figure:after {
	    bottom: -.6875rem;
	    margin-left: 1rem;
	    width: 1.375rem;
	    height: 1.375rem;
	    border-radius: 1.375rem;
	}

	.circles-and-text:nth-child(1n+3) figure:after {
		width: 1.375rem;
	    height: 1.375rem;
	    border-radius: 1.375rem;
	    bottom: -.75rem;
	}

	.circles-and-text .text {
	    width: calc(100% - 10rem);
	    padding-left: 1.5rem
	}

	.block-text-and-image:before {
		display: none;
	}

	.block-text-and-image figure {
		padding-right: .75rem;
	}

	.block-content {
		padding-right: 1.5rem;
	}

	.block-content .circle-large {
		display: none;
	}

	.block-circles-and-text .pagination {
		float: none;
		text-align: center;
	}

	.block-newsletter .form .gform_body,
	.block-newsletter .form .gform_footer  {
		width: 100%;
	    float: none;
	}

	.block-newsletter .form .gform_body input,
	.block-newsletter .form .gform_footer input[type=submit] {
	    border-radius: 1.5rem;
	    width: 100%;
	}

	.block-contact .contact-form {
		padding: 3rem 1.5rem;
	}

	.block-contact .contact-form .ginput_container_consent {
	    width: 100%;
	}

	.block-contact .contact-form .gform_footer {
		position: static;
	}

	.block-contact .contact-form .gform_footer input[type=submit] {
		margin: 0;
	}

	footer ul#menu-footer-menu li {
		display: block;
		margin-right: 0;
		padding: 0;
		line-height: 120%
	}

	footer ul#menu-footer-menu li:after {
		display: none;
	}

	footer .copy span.sep {
		display: none;	
	}

	footer .copy span:not(.sep) {
		display: block;
		line-height: 120%;
	}

}


@media only screen and (max-width: 30em) {

	.block-circles-and-text,
	.block-circles-and-text .container {
		background: #fff;
	}

	.circles-and-text figure {
		display: block;
		margin: auto;
	}

	.circles-and-text .text {
	    width: 100%;
	    display: block;
	    padding: 1.5rem 0 0 0;
	    text-align: center;
	}

}

