/********************************* OVERALL STYLING ************************************/
html{ font-family: 'Cabin', sans-serif; color:#6D6E70; font-size:17px; letter-spacing: 1px; }

#main-wrapper{ padding-top: 120px; }
.home #main-wrapper{ padding-top: 0px; }

@media screen and (max-width:768px){
	.home #main-wrapper { padding-top: 100px; }
}

/********************************* SITE COLOURS ************************************/
.font-green-standard{color:#ACEDDD;}
.desktop-device .font-green-standard-hover:hover{color:#ACEDDD;}
.bg-green-standard{background-color:#ACEDDD;}
.desktop-device .bg-green-standard-hover:hover{background-color:#ACEDDD;}

.font-green-darker{color:#22D2A7;}
.desktop-device .font-green-darker-hover:hover{color:#22D2A7;}
.bg-green-darker{background-color:#22D2A7;}
.desktop-device .bg-green-darker:hover{background-color:#22D2A7;}

.font-blue-dark{color:#11293D;}
.desktop-device .font-blue-dark-hover:hover{color:#11293D;}
.bg-blue-dark{background-color:#11293D;}
.desktop-device .bg-blue-dark-hover:hover{background-color:#11293D;}

.font-yellowy-green{color:#9eb225;}
.desktop-device .font-yellowy-green-hover:hover{color:#9eb225;}
.bg-yellowy-green{background-color:#9eb225;}
.desktop-device .bg-yellowy-green-hover:hover{background-color:#9eb225;}

.font-yellowy-green-bright{color:#d8df20;}
.desktop-device .font-yellowy-green-bright-hover:hover{color:#d8df20;}
.bg-yellowy-green-bright{background-color:#d8df20;}
.desktop-device .bg-yellowy-green-bright-hover:hover{background-color:#d8df20;}




/*********************** GENERAL STYLES FOR THIS WEBSITE ***********************/
/***** FONTS *****/
p{ font-size: 1rem; color: #002C5C; font-weight: 400; line-height: 160%; margin-bottom: 25px;  }
a{ color:#002C5C; }
.fa{ font-size: 1.25rem; margin: 0 7px; color: #002C5C; }
.fa-search:hover{ cursor: pointer; }


.header-icon{ float: left; width: 20px; margin: 0 7px; }
.header-icon:hover{ cursor: pointer; }

/***** FORMS *****/
.form-field{ padding-right:20px; }
input[type="text"], input[type="email"], input[type="tel"], input[type="url"], input[type="date"], input[type="password"], input[type="search"], textarea, select{
	border:1px solid #d1d1d1;
	font-size:0.9rem; }
input[type="text"]:focus, input[type="email"]:focus, input[type="tel"]:focus, input[type="url"]:focus, input[type="date"]:focus, input[type="password"]:focus, input[type="search"]:focus, textarea:focus {
	border-color:#9eb225; outline: none; }

input[type="submit"]{ background-color: #002c5c; color: #fff; text-transform: uppercase; letter-spacing: 1px; font-size: 0.9rem; margin: 0; padding: 11px 25px; }
input[type="submit"]:hover{ background-color: #9eb225; color: #002c5c; }

form .required-field, form .sensitive-data{ font-size:0.85rem; }

.form-legal{ width: calc(100% - 120px); float: left; font-size: 0.8rem; margin-bottom: 0; }
.form-submit{ width: 25%; float: right; margin: -23px 0 0 0; }
.form-submit input[type="submit"]{ float: right; }

/***Newsletter Signup***/

#newsletter-signup h3,
#newsletter-signup p{ text-align:center; margin-bottom: 15px; }
#newsletter-signup p{ margin-bottom: 35px; }

.newsletter-form span.wpcf7-form-control-wrap{ width: 85%; color: #002C5C; }
.newsletter-form input[type="submit"]{ margin: 0 0 0 1%; padding: 11px 3%; }


/*** Green Hover ***/
.section-cta a{ font-weight: 600; }
.green-hover-line{ position: absolute; left: 0; bottom: -5px; height: 2px; width: 15px; background-color: #9eb225; transition: width 0.3s; }
.green-hover-line-extended{ width: 100%; }

#main-menu li::after{ content: ""; position: absolute; right: 0; bottom: -3px; height: 2px; width: 0px; background-color: #9eb225; transition: width 0.3s; }
#main-menu li:hover::after{ left:0; width: 100%; }

/*.menu-green-hover{ position: absolute; right: 0; bottom: -5px; height: 2px; width: 0px; background-color: #9eb225; transition: width 0.3s; }
.menu-green-hover-extended{ left:0; width: 100%; }*/

@media screen and (max-width:768px){
	.newsletter-form span.wpcf7-form-control-wrap{ width: 100%; }
	.newsletter-form input[type="submit"]{ margin: 0 auto; display: table; float: none; }
}

/*********************** FORMATTING STYLES FOR THIS WEBSITE ***********************/
.hero-heading, .section-heading, .sub-heading{
	float:left;
	width:100%;
}

.hero-heading{
	margin-bottom:30px;
	font-size:4rem;
	color:#fff;
	line-height:110%;
}
.section-heading{
	font-size: 4rem;
	width: 90%;
	line-height: 115%;
	font-weight: 600;
	margin-bottom: 30px;
	color:#002C5C;
}
.sub-heading{
	font-size: 3.5rem;
	margin-bottom: /*30px;/*Lowered margin due to date*/ 5px;
	color: #fff;
	line-height: 110%;
}

.highlighted-text-large{

}
.highlighted-text-small{

}
.content-sub-heading{
	margin-bottom: 10px;
	line-height: 145%;
	color: #002C5C;
	font-size: 1.4rem;
	width: 100%;
}
.quote-text{
	position: relative;
	float: none;
	width: 90%;
	margin: 0 auto;
	padding: 40px 0;
	display: table;
	text-align:center;
	font-size: 1.4rem;
	line-height: 145%;
}
.quote-text::before,
.quote-text::after{
	content: '"';
	color: #9eb225;
	font-size: 5rem;
	position: absolute;
	top: 45px;
	text-align: center;
}
.quote-text::before{ left: -37px; }
.quote-text::after{ right: -37px; }
.body-text-large{
	font-size: 1.5rem;
}
.body-text-small{
	font-size:0.8rem;
}
.button-standard{
	float:left;
	padding:8px 50px;
	font-size: 0.9rem;
	background-color:#67a8c5;
	border:none;
	color:#fff;
	-webkit-transition:background-color .5s;
	-moz-transition:background-color .5s;
	-o-transition:background-color .5s;
	transition:background-color .5s;
}
.desktop-device .button-standard:hover {
	background-color:#0FB3F0;
}

.green-text{ color: #9eb225; }

.testimonial-section{ margin-top: 50px; margin-bottom: 50px; }
.testimonial-background-image{ position: absolute; width: 100%; height: 100%; top: 0; left: 0; background-repeat: no-repeat; background-position: center; background-size: cover; }
.testimonial-section p{ color: #fff; text-align: center; font-size: 1.25rem; }
.testimonial-section .testimonial-text p{ font-size: 2.5rem; margin-bottom: 30px; line-height: 110%; }


.team-member-section .sub-heading{ margin-bottom: 0px; }
.team-member-section h4{ font-size: 3.3rem; margin-bottom: 30px; color: #fff; line-height: 110%; font-weight: 300; }


.section-half ul { list-style: none; padding-left: 0; margin: 0; }
.section-half ul > li { margin-left: 15px; color: #002C5C; }
/* Prevent nested li's from getting messed up */
.section-half ul > li::before { content: "-"; margin-left: -15px; padding-right: 10px; color:#9eb225; }


@media screen and (max-height:767px){
	.hero-heading{ font-size:2.5rem; }
	.section-heading{ font-size:2.5rem; }
	.sub-heading{ font-size:1.2rem; }
	.highlighted-text-large{  }
	.highlighted-text-small{  }
	.body-text-large{ }
	.body-text-small{  }


}
@media screen and (max-width:1300px){
	.section-heading{ font-size: 3.5rem; width: 100%; }
	.appearing-text-link .sub-heading{ font-size: 2.25rem; }
	.sub-heading{ font-size: 3rem; }
}
@media screen and (max-width:1023px){
	.hero-heading{ font-size:2.5rem; }
	.section-heading{ font-size:2.5rem; }
	.sub-heading{  }
	.highlighted-text-large{  }
	.highlighted-text-small{  }
	.body-text-large{  }
	.body-text-small{  }
}
@media screen and (max-width:768px){
	.hero-heading{ margin-bottom: 20px; font-size:2rem; }
	.section-heading{ font-size:2rem; }
	.sub-heading{font-size:1.1rem;  }
	.highlighted-text-large{  }
	.highlighted-text-small{  }
	.body-text-large{ font-size: 1.2rem;  }
	.body-text-small{  }

	.testimonial-section .testimonial-text p{ font-size: 1rem; line-height: 150%; }
	.team-member-section .sub-heading{ font-size: 2rem; }
	.team-member-section h4{ font-size: 1.1rem; }
}
@media screen and (max-width:479px){
	.hero-heading{ margin-bottom: 0; font-size:1.5rem; }
	.section-heading{ font-size:1.4rem; }
	.sub-heading{ font-size:1rem; }
	.highlighted-text-large{  }
	.highlighted-text-small{  }
	.body-text-large{  }
	.body-text-small{  }
}





/*********** SOCIAL *************/

.header-social-icon{ color:#000; }





/****************************** HEADER SECTION ****************************/

/***** STRUCTURE FOR RESIZING HEADER ON SCROLL DOWN FROM TOP *****/

/* Top - large screen */
#site-header{ height:110px; position: absolute; background-color: transparent; }
#sticky-header{ height:110px; /*border-bottom:1px solid #ddd;*/ background-color: transparent; }
#site-logo { margin-left: 3%; }
#site-logo img{ /*height:90px;*/ height: 130px; margin-top: -23px; }
.main-navigation{ width: 760px; float: none; margin:0 auto; height:50px; }

.center-menu{ display: table; margin: 0 auto; float: none; z-index: 1000;}
.main-nav-icons{ position: absolute; margin-top: 47px; right: 3%; top: 0; -webkit-transition: all .5s; -moz-transition: all .5s; -o-transition: all .5s; transition: all .5s; }

/* Scrolled down - large screen */
.scrolled-down #site-header{ height:50px;}
.scrolled-down #sticky-header{height:50px;padding-top:10px; padding-bottom:10px; background-color: #fff;
border-bottom: 1px solid #ddd; overflow: hidden; }
.scrolled-down #site-logo img{height:56px; margin-top: -9px; }
.scrolled-down .main-navigation{ height:30px; }
.scrolled-down .main-nav-icons{ margin-top: 15px; }

@media screen and (max-width:1300px){
	/* Top - small screen */
	#site-header{ height:70px; }
	#sticky-header{ height:70px; padding-top:15px; padding-bottom:15px; }
	#site-logo img{ height:80px; margin-top: 0; }
	.main-navigation{ height:40px; width: auto; }
	.main-nav-icons{ /*margin-top: 30px;*/ display: none; }

	/* Scrolled down - small screen */
	.scrolled-down #site-header{ height:50px; }
	.scrolled-down #sticky-header{ height:50px; padding-top:10px; padding-bottom:10px; }
    .scrolled-down #site-logo img{ height:56px; }
	.scrolled-down .main-navigation{ height:30px; }

	.center-menu{ display: block; margin: 0 auto; position: absolute; right: 3%; top: 8px; }
	.scrolled-down .center-menu{ top: 2px; }
}


/****** SEARCH *******/

.slide-down-search{ position: fixed; overflow: hidden; top: 0; left: 0; width: 100%; background-color: #fff; height: 0px; float: left; transition: all 0.5s; z-index: 500; }
.slide-down-search form{ width: 80%; float: right; }
.slide-down-search.search-active{ height: 35px; border-bottom: 1px solid #9eb225; }
.slide-down-search input[type="search"]{ padding: 7px 4%; font-size: 0.85rem; border: none; color: #002E5A; letter-spacing: 1px; text-align: right; }

.telephone-holder{ position: fixed; width: 240px; top: 100px; right: -250px; background: #9eb225; padding: 7.5px 35px 7.5px 20px; -webkit-transition: all 1s; -moz-transition: all 1s; -o-transition: all 1s; transition: all 1s; z-index: 500; transition-delay: 0.5s;}
.scrolled-down .telephone-holder{ top: 50px; }
.scrolled-down .telephone-holder.search-active{ top: 85px; }
.telephone-holder a{ font-size: 1rem; color: #fff; }
.telephone-holder.active{ right: 0px; -webkit-transition: all 1s; -moz-transition: all 1s; -o-transition: all 1s; transition: all 1s; }
.telephone-holder.search-active{ top: 135px; }
#sticky-header.search-active{ margin-top: 35px; }


.search-everything-highlight-color{ background-color: transparent !important; }

.search-results article{ float: left; margin-bottom: 20px; }
.search-results .entry-title a:hover{ color: #9eb225; }

#footer-search input[type="search"]{ border: none; padding: 10px 0; width: 80%; margin-bottom: 5px; }
#footer-search .footer-social-media{ margin-bottom: 0; }

/***** LOGO *****/
#siteLogo{  }
#siteLogo p{ margin:0; }



/***** MAIN NAV *****/
.main-navigation {  }
#main-menu{  }
#main-menu > li{ margin: 3px 15px 0; }
#main-menu > li > a { padding:0 5px; color:#11293D; font-size:0.9rem; letter-spacing:1px; }

.desktop-device #main-menu > li > a:hover{  }

/* Toggle button */

.menu-toggle{
	width:40px;
	height:40px;
    z-index: 2030;
}

.menu-toggle-line{
	height:1px;
	width:80%;
	background-color: #002C5C;
}
#menu-toggle-line-1{
	top:30%;
	left:10%;
	width:80%;
}
#menu-toggle-line-2{
	top:50%;
	left:15%;
	width:70%;
}
#menu-toggle-line-3{
	top:70%;
	left:10%;
	width:80%;
}

.menu-toggle.active{  }
.menu-toggle.active, .menu-toggle.inactive{ animation-name:menuToggle; animation-duration:1s; animation-iteration-count:1; }
.menu-toggle.active #menu-toggle-line-1{ top:50%; transform:rotate(45deg); }
.menu-toggle.active #menu-toggle-line-2{ opacity:0; }
.menu-toggle.active #menu-toggle-line-3{ top:50%; transform:rotate(-45deg); }
/* Maybe make the lines zoom off to the right and come back in? */

@keyframes menuToggle{
	0%{ filter:blur(0); -webkit-filter:blur(0); }
	50%{ filter:blur(5px); -webkit-filter:blur(5px); }
	100%{ filter:blur(0); -webkit-filter:blur(0); }
}

.scrolled-down .menu-toggle{ width:30px; height:30px; }
.mobile-menu-active .menu-toggle{  }

@media screen and (max-width:1449px){
	#main-menu > li{ margin: 3px 10px 0; }
}

/* POINT WHERE MENU CHANGES TO BURGER */
@media screen and (max-width:1300px) { .menu-toggle { display: block; z-index: 500; }	#main-menu{ display:none; }	}
@media screen and (max-width:1139px){ #main-menu > li > a{ padding:0 13px; } }


/***** SOCIAL *****/
[class^="i"]::before, [class*=" i"]::before, .header-social-link .fa{ font-size:1.4rem; }

@media screen and (max-width:1139px){ .header-social{ margin-left:20px; } [class^="i"]::before, [class*=" i"]::before, .header-social-link .fa{ font-size:1.2rem; } }
@media screen and (max-width:1300px){ [class^="i"]::before, [class*=" i"]::before, .header-social-link .fa{ font-size:1rem; }

#mobile-menu{ width: 350px; height: 100vh; z-index: 400; top: 0px; background-color: #fff; box-shadow: 1px 1px 15px 0px rgba(0, 0, 0, 0.1);}
#mobile-menu.active{  }

.mobile-menu-header{ float: left; width: 100%; padding: 25px 0; }
.mobile-menu-header img{ max-width: 150px; margin: 0 auto; }

#mobile-menu ul li a{ display: table; margin: 6px auto; }
.mobile-nav-icons{ width: 100px; position: absolute; left: calc(50% - 50px); bottom: 25px; }

.scrolled-down #mobile-menu{  }
.scrolled-down #mobile-menu.active{  }

}
@media screen and (max-width:939px){ .header-social{ margin:0 100px 0 0; } }

@media screen and (max-width:480px){ #mobile-menu{ width: 280px; } }

@media screen and (max-height:479px){ .mobile-menu-header img{ max-width: 100px; } }



/****************************************** MOBILE MENU **************************************/
#mobile-menu-social{ width:150px; margin:0 auto; }





/****************************** HERO **********************************/
#hero-wrapper{ max-height:600px; overflow:hidden; }

@media screen and (max-height:767px){ #hero-wrapper{ max-height:400px; } }
@media screen and (max-width:1023px){ #hero-wrapper{ max-height:400px; } }
@media screen and (max-width:768px){ #hero-wrapper{ max-height:300px; } }
@media screen and (max-width:479px){ #hero-wrapper{ max-height:none; } }





/****************************************** FOOTER **************************************/

#footer-content-wrapper{ margin-top: 40px; border-top: 1px solid #D3D3D3; padding: 40px 0 20px; }

#footer-content-wrapper h4{ color: #002C5C; text-transform: uppercase; font-weight: 200; font-size: 1rem; padding-bottom: 0; opacity:0.5; }
#footer-content-wrapper p{ color: #D3D3D3; font-size: 0.9rem; }
#footer-content-wrapper a{ color: #D3D3D3; }

#footer-content-wrapper .footer-column{ width: 20%; }
#footer-content-wrapper #footer-legal{ width: 35%; padding-left: 25px; }
#footer-content-wrapper #footer-search{ width: 25%; }

#footer-content-wrapper .footer-column a:first-of-type .fa{ margin-left: 0; }

#footer-content-wrapper #footer-menu li a{ font-size: 0.9rem; color: #D3D3D3; }
#footer-content-wrapper #footer-menu li:first-of-type a{ color: #002C5C; text-transform: uppercase; font-weight: 200; font-size: 1rem; opacity: 0.5; }
#footer-content-wrapper #footer-menu li:first-of-type a:hover{ opacity: 1; }
#footer-content-wrapper #footer-menu li a:hover,
#footer-content-wrapper a:hover{ color: #002C5C; }

#footer-logo{ padding-right:5%; }
#footer-logo img{ max-width:120px; max-height:120px; margin-bottom:20px; }
.footer-menu-column ul{ margin-left:0; padding-right:20px; }
.footer-menu-column a{ margin-bottom:5px; font-size:0.9rem; }

footer .fa{ opacity: 0.5; }
footer .fa:hover{ opacity: 1; }


@media screen and (max-width:1800px){
	footer{ padding: 30px 4%; }
}

@media screen and (max-width:768px){
	#footer-content-wrapper .footer-column, #footer-content-wrapper #footer-search{ width: 33%; }
	#footer-content-wrapper #footer-legal{ width: 100%; padding-left: 0px; margin-top: 20px; }
	#footer-content-wrapper #footer-legal p{ margin-bottom: 5px; }
}

@media screen and (max-width:580px){
	#footer-content-wrapper .footer-column, #footer-content-wrapper #footer-search{ float: left; width: 100%; margin-top: 20px; }
	#footer-content-wrapper #footer-menu li:first-of-type a,
	#footer-content-wrapper #footer-menu li a,
	#footer-content-wrapper h4,
	#footer-content-wrapper p,
	#footer-content-wrapper p a{ margin: 0 auto; display: table; float: none; text-align:center; }
}



/***************************** TEASERS ***************************/
.teaser-wrapper:nth-of-time(3n + 1){ clear:left; }
.teaser-wrapper > .left-content{ max-width:350px; }
.teaser-wrapper > .left-content .sub-heading{ margin-bottom:0; }
.desktop-device .teaser-wrapper > .left-content:hover .background-blue-light-hover{background-color:#C8EBF2;}
@media screen and (max-width:768px){
	.teaser-wrapper > .left-content{
		float:none;
		display:block;
		margin:0 auto;
	}
}

/***************************** FRONT PAGE ******************************/

.section-half{ float: left; width: 50%; }

#home-page-hero-left{ width: 40%; }
#home-page-hero-right{ width: 60%; padding: 0 50px; }

#main-text-home.padding-vertical-100{ padding-top: 0; }

.image-link-section{ width: 50%; float: left; min-height: 550px; overflow: hidden; }
.zooming-background-image{ width: 100%; height: 100%; position: absolute; background-size: cover; background-position: center; background-repeat: no-repeat; transition: all 5s; }
.image-link-section:hover .zooming-background-image{ transform: scale(1.07); transition: all 7s; }
.dark-overlay{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.5); }
.image-link-section .center-align-div-contents{ width: 66%; margin: 0 auto; text-align: center; }
.image-link-section .center-align-div-contents .section-cta{ margin: 0 auto; display: table; float: none; clear: both; }
.image-link-section .center-align-div-contents .section-cta p{ font-weight: 400; font-size: 1.5rem; color: #fff; margin-bottom: 0; }

.alternating-section .info-image-right{ float: right; }
#contact-us-form-right{ float: left; }

.info-image img{ margin: 0 auto; }

.image-link-section:hover .dark-overlay{ background-color: rgba(158, 179, 38, 0.6); }
.image-link-section:hover .sub-heading{ color: #002C5C; }
.image-link-section:hover .center-align-div-contents .section-cta p{ color: #002C5C; }
.image-link-section:hover .green-text{ color: #002C5C; }
.image-link-section:hover h4{ color: #002C5C; }

.appearing-text-link:hover .dark-overlay{ background-color: rgba(0,0,0,0.5); }
.appearing-text-link:hover .sub-heading{ color: #FFF; }
.appearing-text-link:hover .center-align-div-contents .section-cta p{ color: #FFF; }
.appearing-text-link:hover .green-text{ color: #9eb225; }
.appearing-text-link:hover h4{ color: #FFF; }



/*** Reused Pages ***/

#main-text-hero.padding-vertical-100{ padding-top: 150px; padding-bottom: 50px; }


@media screen and (max-width:768px){
	#home-page-hero-left,
	#hero-image-left,
	#image-info-left-2,
	#image-info-left-3{ display: none; }

	.section-half{ width: 100%; }
	.info-image img{ display: none; }

	#home-page-hero-right{ width: 100%; padding: 30px 0px; }
	.section-half-right{ width: 100%; }

	.image-link-section{ height: 450px; min-height: 450px; }
	.image-link-section .center-align-div-contents{ width: 80%; }
	.image-link-section .center-align-div-contents .sub-heading{ font-size: 2rem; }



	#contact-us-form-right{ width: 100%; }
}

@media screen and (max-width:600px){
	.image-link-section{ width: 100%; height: 300px; min-height: 300px; }

	.padding-vertical-100{ padding-top: 50px; padding-bottom: 50px; }
}

@media screen and (max-width:479px){
	.section-half-right .section-heading{ font-size: 2rem; width: 100%; }
}


/***************************** PRODUCT PAGE ******************************/
/* NAV MENU */
#product-menu{ padding-right:20px; }
/* RIGHT SIDEBAR */
#product-sidebar-right{  }
#product-sidebar-right li{  }
#product-sidebar-right li img{ width:50px; margin-right:20px; }
#product-sidebar-right li p{ width:calc(100% - 70px); margin:10px 0 0; }





/***************************** CONTACT PAGE ******************************/
/* GOOGLE MAP */
#hero-wrapper iframe{ height:400px; width:100%; }
@media screen and (max-height:767px){ #hero-wrapper iframe{ height:300px; } }
@media screen and (max-width:768px){ #hero-wrapper iframe{ height:300px; } }
@media screen and (max-width:479px){ #hero-wrapper iframe{ height:200px; } }
/* FONT AWESOME ICONS VIA VISUAL COMPOSER */
.icon-library-icon.vc_icon_element.vc_icon_element-outer .vc_icon_element-inner{ width:16px; height:16px; margin-right:15px; }
.icon-library-icon.vc_icon_element.vc_icon_element-outer .vc_icon_element-inner .vc_icon_element-icon{ top:0; left:0; transform:translate(0, 0); }





/***************************** BLOG PAGES ******************************/
.archives{ margin:0; /*padding-right:20px;*/ list-style:none; }
.archives li{  }
.archives li a{ float:right; margin-bottom:5px; }

.page-numbers, .nav-links a{ background-color:#e2f4f8; color:#00abc5; }
.page-numbers.current{ background-color:#00abc5; color:#e2f4f8; }
.pagination a:hover{ background-color:#c8ebf2; }

.left-align-content-holder{ position: absolute; bottom: 10%; left: 5%; width: 70%; }
.left-align-content-holder .appearing-teaser{ position: relative; float: left;  height: 0; overflow: hidden; transition: height 0.5s; }
.left-align-content-holder .appearing-teaser p{ color: #fff; }
.left-align-content-holder .section-cta p{ font-weight: 400; font-size: 1.5rem; color: #fff; margin-bottom: 0; }


.image-link-section:hover .left-align-content-holder .appearing-teaser{ height: 100px;  }
.image-link-section:hover .left-align-content-holder .appearing-teaser p,
.image-link-section:hover .left-align-content-holder .section-cta p{ color: #fff; }

.blog-grid h2{ text-align: center; }
.blog-grid h2 .section-heading{ width: 100%; }
.small-blog-article{ width: 50%; float: left; padding: 3%; }
.small-blog-article:nth-of-type(odd){ clear: left; }
.small-blog-article-left{ width: 50%; float: left;  overflow: hidden; }
.small-blog-article-right{ width: 50%; float: left; padding-left: 30px; }
.small-blog-article-right h3{ font-size: 1.4rem; margin-bottom: 15px; line-height: 125%; }

.teaser-image-zoom{ width: 100%; position: relative;  background-size: cover; background-position: center;  min-height: 230px; transition: all 3s; }

.small-blog-article:hover .teaser-image-zoom{ transform: scale(1.2); transition: all 6s; }

button.alm-load-more-btn.load-more-scroll-btn{ background-color: transparent; color: #002c5c; border-bottom: 2px solid #9eb225; border-radius: 0px; padding: 0 0px; font-size: 1rem; transition: all 0.5s; }
button.alm-load-more-btn.load-more-scroll-btn:hover{ padding: 0 10px; background-color: #9eb225; }
button.alm-load-more-btn.load-more-scroll-btn.loading{ padding-left: 44px; transition: all 0; }
.alm-btn-wrap .alm-load-more-btn.done{ padding: 0 20px; background-color:#9eb225 !important; }

/**/
.center-align-cta{ width: 100%; padding-top: 15px; }
.center-align-cta a{ width: auto; float: none; margin: 0 auto; display: table; position: relative; }
.center-align-cta .green-hover-line{ left: calc(50% - 65px); }
.center-align-cta .green-hover-line-extended{ width: 130px; }

/** Case Study Hero **/

.single-hero-image{ min-height: 500px; background-position: center; background-size: cover; background-repeat: no-repeat; float: left; width: 100%; margin-bottom: 30px; }



/***** Archives *****/
.desktop-device #blog-archive-sidebar a{ transition:color .3s; }
.desktop-device #blog-archive-sidebar a:hover{ color:#9eb225; }



@media screen and (max-width:768px){
	.appearing-text-link .sub-heading{ font-size: 1.3rem; line-height: 130%; }
	.left-align-content-holder{ width: 85%; }
	.left-align-content-holder .appearing-teaser{ display: none; }
	.left-align-content-holder .section-cta p{ font-size: 1rem; }

	.single-hero-image{ min-height: 250px; }
	.quote-text{ width: 75%; font-size: 1rem; }
	.content-sub-heading{ font-size: 1rem; }

	.small-blog-article-left{ width: 100%; margin-bottom: 10px; }
	.scaling-image-container{ height: auto; }
	.small-blog-article-right{ width: 100%; padding-left: 0px; }
	.small-blog-article-right p{ font-size: 0.75rem; margin-bottom: 10px; }
	.small-blog-article-right .section-cta a{ font-size: 0.85rem; }
}

@media screen and (max-width:767px){
	#blog-archive-heading{ text-align:center; }
	.archives li{ width:33.3%; text-align:center; }
	.archives li a{ float: none; margin-bottom: 10px; display: block; }
}

@media screen and (max-width:480px){
	.small-blog-article{ width: 100%; padding: 0; margin-bottom: 50px; }
}

@media screen and (max-width:479px){
	.archives li{ width:50%; }
}





/******************************** Split Line ****************************/

.split-line .split-line-contents{
	position:relative;
	bottom:-120%;
}

.appear-from-below-done, .split-line.appear-from-below-done .split-line-contents{bottom:0;}

.split-line.animation-custom .split-line-contents{
	position:relative;
	bottom:-150%;
	-webkit-transition:bottom 1s;
	-moz-transition:bottom 1s;
	-o-transition:bottom 1s;
	transition:bottom 1s;
}
.split-line.animation-custom-done .split-line-contents{bottom:0;}

.split-line.cancel-split-lines{  }
.split-line.cancel-split-lines .split-line-wrapper{ float:left; height:auto !important; width:auto; position:unset; }
.split-line.cancel-split-lines .split-line-contents{ float:none; height:auto !important; width:auto; position:unset; bottom:auto; }

.cancel-split-lines{ height:auto !important; }


.overflow-hidden-override{overflow: hidden;}

/*.section-heading{
	float: left;
	width: 100%;
	line-height: 100%;
}*/


/*-----Animating Line------*/

.animating-line-holder{
	position: absolute;
	width: 40px;
	height: 50px;
	top: -6px;
	left: 0;
}

.animating-line{
	background-color: #9eb225;
	height: 1px;
	/*left: 0;
	position: absolute;*/
	transition: width 1s ease 0s;
	margin-top: 19px;
	width: 50%;
	float: left;
}

.animating-line-holder:hover .animating-line{
	animation-name: caterpillarLine;
	animation-duration: 0.65s;
	animation-iteration-count: 1;
	animation-timing-function: ease-in;
}

@keyframes caterpillarLine{
    0%	{float: left; width: 50%; }
	33.33%	{float: left; width: 100%; }
	33.34%	{float: right; width: 100%;  }
	66.66%	{float: right; width: 0%;  }
	66.67%	{float: left; width: 0%;  }
	100% {float: left; width: 50%; }
}

/*--end of animating line--*/




/*******************************************************************************
tweakz
*******************************************************************************/
#site-footer .social-icon{
    font-size: 30px;
}

.header-contact-area{
    top: 16px;
    position: absolute;
    transition: top 0.5s;
    width: 100%;
    display: flex;
    justify-content: center;
    padding-left: 30px;
}
.scrolled-down .header-contact-area{
    top: 8px;
}
.header-contact-area a{
    padding: 0 10px;
}

@media screen and (max-width: 440px){
    .header-contact-area .hidefirstWrapper,
	.header-contact-area .hidefirst{
        display: none;
    }
}
@media screen and (min-width:1301px){
    .header-contact-area a{
        display: none;
    }
}

.search-form #search-container{
    width: 100%;
}
.search-form #search-container i{
    margin: 0px;
    width: 30px;
    float: left;
    position: relative;
    top: 10px;
}
.search-form #search-container .search-field{
    width: calc(100% - 30px);
    float: left;
}


#sticky-header .main-nav-icons .tel{
    margin-left: 20px; font-size: 1.3rem; color: #9eb225; font-weight: 600;
}
@media screen and (max-width: 1400px){
    #sticky-header .main-nav-icons .tel{
        margin-left: 0px;
    }
}
#sticky-header .main-nav-icons .tel span{
    position: relative;
    top: -6px;
}
#site-logo a {
    z-index: 2020
}

.image-link-section small{
    color: #eee;
    margin-bottom: 30px;
}



/************************ Landing page - 27/11/19 **************************/

.image-link-section-landing{ width: 33.33%; float: left; min-height: 550px; overflow: hidden; }

.image-link-section-landing:hover .zooming-background-image{ transform: scale(1.07); transition: all 7s; }
.image-link-section-landing .center-align-div-contents{ width: 66%; margin: 0 auto; text-align: center; }
.image-link-section-landing .center-align-div-contents .section-cta{ margin: 0 auto; display: table; float: none; clear: both; }
.image-link-section-landing .center-align-div-contents .section-cta p{ font-weight: 400; font-size: 1.5rem; color: #fff; margin-bottom: 0; }

.alternating-section .info-image-right{ float: right; }
#contact-us-form-right{ float: left; }

.info-image img{ margin: 0 auto; }

.image-link-section-landing:hover .dark-overlay{ background-color: rgba(158, 179, 38, 0.6); }
.image-link-section-landing:hover .sub-heading{ color: #002C5C; }
.image-link-section-landing:hover .center-align-div-contents .section-cta p{ color: #002C5C; }
.image-link-section-landing:hover .green-text{ color: #002C5C; }
.image-link-section-landing:hover h4{ color: #002C5C; }

.image-link-section-landing small{
    color: #eee;
    margin-bottom: 30px;
}

@media screen and (max-width:768px){
	.image-link-section-landing{ height: 450px; min-height: 450px; }
	.image-link-section-landing .center-align-div-contents{ width: 80%; }
	.image-link-section-landing .center-align-div-contents .sub-heading{ font-size: 2rem; }

}

@media screen and (max-width:600px){
	.image-link-section-landing{ width: 100%; height: 300px; min-height: 300px; }

}

.blue-rock-bg-colour {
	background-color: #002C5C;
}

.white-font p {
	color: white;
}

.section-heading-white {
    font-size: 4rem;
    width: 90%;
    line-height: 115%;
    font-weight: 600;
    margin-bottom: 30px;
    color: white;
}

.testimonial-background-landing {
	background-color: #002C5C;
}

.testimonial-text {
	color: white;
	text-align: center;
	font-size: 1.25rem;
}

.testimonial-section-landing {
	/*margin-top: 50px;*/
}
	
.testimonial-section-landing .section-heading-white{
	
}

.testimonial-section-landing .slick-dots{
	margin: 30px 0px 0px calc(50% - 45px);
}

.testimonial-section-landing .testimonial-text p {
    font-size: 2.5rem;
    margin-bottom: 30px;
    line-height: 110%;
}
.testimonial-section-landing p {
    color: #fff;
    text-align: center;
    font-size: 1.25rem;
}



/***** KEY FEATURES SECTION *****/

#health-check-left p,
#health-check-right p {
    font-size: 22px;
	padding-right: 40px;
}

.key-features-landing {
	/*padding: 170px;*/
	padding: 100px 170px;
}

.key-features-landing p {
	text-align: center;
	margin: 0;
}


.key-features-landing img {
	max-width: 150px;
    max-height: 150px;
    margin-right: auto;
    margin-left: auto;
	margin-bottom: 20px;
}

.key-features-landing:nth-of-type(odd) {
	float: left;
	padding: 100px 170px;
	padding: 100px 170px 100px 0;
}

.key-features-landing:nth-of-type(even) {
	float: right;
	/*margin-top: 150px;*/
	padding: 100px 0 100px 170px;
}

.line{
    width: 1px;
    /*height: 100px;*/
    background-color: white;
    position: absolute;
	border-right: 3px #9eb225 dashed;
	height:300px;
}

.key-features-landing:nth-of-type(odd) .line{
    /*left: 500px;
    height: 400px;
	top: -60px;*/
	top: 120px;
	left: 475px;
	-webkit-transform: rotate(120deg);
	-ms-transform: rotate(120deg);
    transform: rotate(120deg);
}

.key-features-landing:nth-of-type(even) .line{
    /*top: 220px;
    right: 500px;
    height: 400px;*/
	top: 130px;
	right: 480px;
	-webkit-transform: rotate(240deg);
	-ms-transform: rotate(240deg);
    transform: rotate(240deg);
}


.key-features-landing:last-of-type .line{ 
	display: none;
	
}

@media screen and (max-width:1299px){
	
	.testimonial-section-landing .section-heading-white{
		font-size: 3.5rem;
	}
	
	.testimonial-section-landing .testimonial-text p{
		font-size: 2rem;
	}
	
	.key-features-landing {
		padding: 100px 150px;
	}
	
	.key-features-landing:nth-of-type(even) {
		/*margin-top: 100px;*/
	}
	
	.key-features-landing:nth-of-type(odd) .line {
		/*top: -40px;*/
	}
}

@media screen and (max-width:1099px){
	
	/*.key-features-landing {
		padding: 150px 10px;
	}*/
	
}

@media screen and (max-width:1023px){
	
	.testimonial-section-landing .section-heading-white{
		font-size: 2.5rem;
	}
	
	.testimonial-section-landing .testimonial-text p{
		font-size: 1.8rem;
	}
	
	.key-features-landing:nth-of-type(odd){
		padding: 100px 150px 100px 0;
	}
	.key-features-landing:nth-of-type(even){
		padding: 100px 0 100px 150px;
	}
	
	.line{
		height: 30vw;
	}
	.key-features-landing:nth-of-type(odd) .line{
		left: 46vw;
	}
	.key-features-landing:nth-of-type(even) .line{
		right: 46vw;
	}
	
}

@media screen and (max-width:900px){
	
	.key-features-landing {
		padding: 100px 40px;
	}
	
	.key-features-landing:nth-of-type(odd) .line {
		/*left: 300px;
		height: 200px;
		-webkit-transform: rotate(120deg);
		-ms-transform: rotate(120deg);
		transform: rotate(120deg);
		top: 60px;*/
	}
	
	.key-features-landing:nth-of-type(even) .line {
		/* top: 220px; */
		/*right: 350px;
		height: 200px;
		-webkit-transform: rotate(240deg);
		-ms-transform: rotate(240deg);
		transform: rotate(240deg);*/
	}
	
}

@media screen and (max-width:768px){
	
	.testimonial-section-landing .section-heading-white{
		font-size: 2rem;
	}
	
	.testimonial-section-landing .testimonial-text p{
		font-size: 1.4rem;
	}

	.key-features-landing {
		padding: 50px 50px;
	}
	
	.key-features-landing:nth-of-type(even) {
		/*margin-top: 0px;*/
	}
	
	.alternating-section .info-image-right {
		float: left;
	}
	
	.key-features-landing:nth-of-type(even) .line, 
	.key-features-landing:nth-of-type(odd) .line{
		display: none;
	}
	
	#landing-page-key-features-section{
		padding: 70px 0;
	}
	
	.key-features-landing:nth-of-type(odd),
	.key-features-landing:nth-of-type(even){
		padding: 50px 20%;
	}
	
}

@media screen and (max-width:480px){
	
	.testimonial-section-landing .section-heading-white{
		font-size: 1.6rem;
	}
	
	.testimonial-section-landing .testimonial-text p{
		font-size: 1.2rem;
	}
	
	.key-features-landing:nth-of-type(odd),
	.key-features-landing:nth-of-type(even){
		padding: 50px 10%;
	}
	
}



#main-menu > li > ul > li > a { padding:0 5px; color:#11293D; font-size:0.9rem; letter-spacing:1px; }

#main-menu > li > ul > li > a {
    float: left;
    width: 100%;
    text-decoration: none;
    text-align: center;
    transition: background .1s linear;
    -moz-transition: background .1s linear;
    -webkit-transition: background .1s linear;
}

.desktop-device .center-menu ul li:hover ul.sub-menu {
    opacity: 1;
    display: block;
    height: auto;
    width: auto;
}
.center-menu ul li ul.sub-menu {
    left: 0;
    margin: 0;
    top: 25px;
    position: absolute;
    display: none;
    overflow: hidden;
    opacity: 0;
    z-index: 1200;
    transition: top .3s;
}
.center-menu ul li ul {
    padding: 14px 0 22px;
    display: inline-block;
    position: relative;
    background-color: #fff;
}
.center-menu ul {
    left: auto;
    position: relative;
    list-style: none outside none;
    margin: 0;
    padding: 0;
    height: 100%;
}


/*
#main-menu > li > ul > li::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -3px;
    height: 2px;
    width: 0px;
    background-color: #9eb225;
    transition: width 0.3s;
}
*/

.image-icon {
	width: 65px;
	height: 65px;
	background-size: cover;
    background-position: center;
    background-repeat: no-repeat;	
	display: none;
}



.k-graph {
	width: 65px;
	height: 65px;
	border-bottom: 12px white solid;
	border-left: 12px white solid;
	display: none;
}

.zero-k-bar {
	width: 35px;
	height: 10px;
	position: absolute;
	background-color: white;
	bottom: 12px;
    left: 20px;
	display: none;
}

.five-k-bar {
	width: 35px;
	height: 25px;
	position: absolute;
	background-color: white;
	bottom: 12px;
    left: 20px;
	display: none;
}

.twenty-k-bar {
	width: 35px;
	height: 40px;
	position: absolute;
	background-color: white;
	bottom: 12px;
    left: 20px;
	display: none;
}

.image-link-section-landing:hover .k-graph, 
.image-link-section-landing:hover .zero-k-bar,
.image-link-section-landing:hover .five-k-bar,
.image-link-section-landing:hover .twenty-k-bar
{
	display: block;
}



.image-link-section-landing:hover .image-icon {
	display: block;
}

.image-link-section-landing .sub-heading {
	font-size: 4rem;
}





/***************************** slick carousel ******************************/

.slick-dots {
    bottom: -25px;
    display: block;
	width: auto;
    padding: 0;
    margin: 0px 0px 0px 46%;
    list-style: none;
    text-align: center;
}

.slick-dots li {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 15px 5px 0px;
    padding: 0;
    cursor: pointer;
}

.slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 20px;
    height: 20px;
    padding: 5px;
    cursor: pointer;
    border: 0;
    outline: none;
    background: transparent;
}

.slick-dots li button:before {
    font-family: 'slick';
    font-size: 70px;
    line-height: 20px;
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 25px;
    content: '•';
    text-align: center;
    opacity: 0.6;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
	color:#fff;
}

@media screen and (max-width:799px){
	.slick-dots {
		margin: 0px 0px 0px 30%;
	}
}




/*********************** ADDED 24-6-2020 FOR FREE HEALTH CHECK PAGE REDESIGN *************************/

.section-half ol{
	margin: 0;
    padding: 0 30px;
}
.section-half ol li{
	color: #9eb225;
    margin-bottom: 30px;
	padding-left: 3px;
	font-size: 1.1rem;
}
.section-half ol li:last-of-type{
	margin-bottom: 0;
}
.section-half ol li.placeholder-ol-item{
	opacity: 0;
	height: 0;
	margin: 0;
}

.section-half-both-text{
	padding: 0 50px;
}
.section-half-both-text-left{
	
}
.section-half-both-text-right{
	
}

.landing-page-section-heading-wrapper .section-heading{
	font-size: 3.2rem;
}

.landing-page-section-intro-wrapper p{
	font-size: 1.2rem;
}



/***** SECTION 7 - WITH THE EXAMPLE INSURANCES *****/

#landing-page-section-7-wrapper .section-heading{
	width:100%;
}

#landing-insurance-examples-wrapper{
	
}

#landing-insurance-examples{
	list-style: none;
    margin: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.landing-insurance-example-wrapper{
	display: flex;
	align-items: center;
	width: calc(33.3% - 20px);
    flex-basis: calc(33.3% - 20px);
    float: none;
    background: #9eb225;
    margin: 0 10px 20px;
    padding: 10px 0;
}
.landing-insurance-example{
	color: #fff;
    width: 100%;
    float: left;
    text-align: center;
}





@media screen and (max-width:1024px){
	
	.section-half-both-text{
		padding: 0 40px;
	}
	
	.landing-page-section-heading-wrapper .section-heading{
		font-size: 2.5rem;
	}
	
}

@media screen and (max-width:768px){
	
	.section-half-both-text{
		padding: 0 30px;
	}
	
	.landing-page-section-heading-wrapper .section-heading{
		font-size: 2.8rem;
	}
	
	.landing-insurance-example-wrapper{
		width: calc(50% - 20px);
		flex-basis: calc(50% - 20px);
	}
	
}

@media screen and (max-width:550px){
	
	.landing-insurance-example-wrapper{
		width: 100%;
		flex-basis: 100%;
	}
	
}

@media screen and (max-width:480px){
	
	.section-half-both-text{
		padding: 0;
	}
	
	.landing-page-section-heading-wrapper .section-heading{
		font-size: 2rem;
	}
	
}






/****************** NEWS PAGE LOAD MORE FIX **********************/
.alm-btn-wrap{
	clear: both;
}