/* COLORS ------------------------------- 
BLUE LAGOON #005776 (light navy)
EASTERN BLUE #00859B (turquoise)
NERO #282828 (near black)
CITRUS #84BD00 (lime)
BLIZZARD BLUE #9CF6FF (cyan)
----------------------------------------- */
* {border: 0; -webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box; }
html, body, form {margin: 0; padding: 0; background-color: #fff; color: #282828; font-family: 'Lato', "Lucida Grande", Arial, Sans-Serif; scroll-behavior: smooth; }
.clearfix::after {content: ''; display: table; clear: both;}
.center-text {text-align: center;}

/* responsive videos */
.embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; margin-bottom: 30px;} 
.embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/* accessible labels*/
.visuallyhidden {border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px;}

p {color: #282828; font-size: 17px; line-height: 27px; margin: 0 0 27px 0; font-weight: 300;}
p.disclaimer {font-size: 12px; line-height: 22px; font-weight: 400; font-style: italic; color: #BDBDBD;}
a {color: #00859B; text-decoration: none; transition: 0.3s ease; -webkit-transition: 0.3s ease; -moz-transition: 0.3s ease; overflow-wrap: break-word;}
p a {text-decoration: underline;}
	a:hover, p a:hover, 
	a:focus, p a:focus {color: #84BD00; text-decoration: none;}
	a.fix, p a.fix {
		transition: none; -webkit-transition: none; -moz-transition: none;
		/* below is so that superscripted reg marks don't have weird broken underline */
		text-decoration: none;
		background: -moz-linear-gradient(left, #00859B, #00859B 100%);	background: -ms-linear-gradient(left, #00859B, #00859B 100%);
		background: -o-linear-gradient(left, #00859B, #00859B 100%); background: -webkit-gradient(linear, 0 0, 100% 0, from(#00859B), to(#00859B));
		background: -webkit-linear-gradient(left, #00859B, #00859B 100%); background: linear-gradient(left, #00859B, #00859B 100%);
		background-position: 0 100%; background-size: 10px 1px;	background-repeat: repeat-x;
	}
		a.fix:hover, a.fix:focus {text-decoration: none; background: none;  transition: none; -webkit-transition: none; -moz-transition: none;}
		
strong, b {font-weight: bold;}
em, i {font-style: italic;}
sup {font-size: 0.5em;}
hr {border: 0; height: 1px; background: #D7D7D7; margin: 40px 0;}
.back-top {float: right; font-size: 14px; line-height: 32px; font-weight: bold; display: inline-block; color: #00C1D5; background: none;}

div.intro {border-bottom: 1px solid #D7D7D7; margin: 0 0 40px 0; clear: both;}
div.intro-noborder {border-bottom: 0px solid #D7D7D7; margin: 0 0 40px 0; clear: both;}
	div.intro p, div.intro-noborder p {font-size: 22px; line-height: 42px; font-weight: 400; margin: 0 0 40px 0; color: #005776;}
	div.intro a, div.intro-noborder a, div.intro p a, div.intro-noborder p a {
		font-weight: normal; transition: none; -webkit-transition: none; -moz-transition: none;
		/* below is so that superscripted reg marks don't have weird broken underline */
		text-decoration: none;
		background: -moz-linear-gradient(left, #00859B, #00859B 100%);	background: -ms-linear-gradient(left, #00859B, #00859B 100%);
		background: -o-linear-gradient(left, #00859B, #00859B 100%); background: -webkit-gradient(linear, 0 0, 100% 0, from(#00859B), to(#00859B));
		background: -webkit-linear-gradient(left, #00859B, #00859B 100%); background: linear-gradient(left, #00859B, #00859B 100%);
		background-position: 0 100%; background-size: 10px 1px;	background-repeat: repeat-x;
	}
	div.intro a:hover, div.intro a:focus,
	div.intro-noborder a:hover, div.intro-noborder a:focus {color: #84BD00; text-decoration: none; background: none;  transition: none; -webkit-transition: none; -moz-transition: none;}

/* images */
img {max-width: 100%; height: auto;}

/* headings */		
h1, 
.banner-image-text .slide-heading {color: #005776; font-size: 72px; line-height: 1.1em; margin: 0 0 18px 0; font-style: normal; font-weight: 700;} 
.banner-image-text .slide-heading {color: #FFFFFF; text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.5);}

h2 {color: #00859B; font-size: 50px; line-height: 1.2em; margin: 0 0 30px 0; font-style: normal; font-weight: 400; text-shadow: none;}
h3 {color: #005776; font-size: 25px; line-height: 32px; margin: 0 0 30px 0; font-style: normal; font-weight: 700;}
h4 {color: #00859B; font-size: 18px; line-height: 28px; margin: 40px 0 10px 0; font-style: normal; font-weight: 700;}
h5 {color: #005776; font-size: 18px; line-height: 28px; margin: 0 0 30px 0; font-style: normal; font-weight: 400;}
h6 {color: #FFFFFF; font-size: 16px; line-height: 19px; margin: 0 0 20px 0; font-style: normal; font-weight: 700;}

.starphire h1, 
.starphire h2, 
.starphire h3, 
.starphire h4,
.starphire a {color: #005776;}
.starphire h2 {font-size: 35px; font-weight: 300; margin: 0 0 20px 0;}

/* buttons */
a.turquoise-button {
	color: #FFF; font-weight: bold; font-size: 14px; line-height: 14px; text-transform: uppercase; text-align: center; text-decoration: none;
	display: inline-block; padding: 15px 20px; -webkit-border-radius: 7px; -moz-border-radius: 7px; border-radius: 7px; margin: 0;
}
	a.turquoise-button:hover,
	a.turquoise-button:focus {color: #FFF; background-color: #84BD00; text-decoration: none;}
	
a.white-button {
	color: #005776; background-color: #FFF; font-weight: bold; font-size: 16px; line-height: 16px; text-transform: uppercase; text-align: center; text-decoration: none;
	display: inline-block; padding: 15px 20px; -webkit-border-radius: 7px; -moz-border-radius: 7px; border-radius: 7px; margin: 0;
}
	a.white-button:hover,
	a.white-button:focus {color: #FFF; background-color: #84BD00; text-decoration: none;}
	
a.button-full {display: block;}

.no-padding {padding: 0;}
.no-border  {border: 0;}

/* mobile */
@media ( max-width: 1680px ) {
	h1 {font-size: 64px;}
}
@media ( max-width: 1550px ) {
	h1 {font-size: 62px;}
}
@media ( max-width: 1420px ) {
	h1 {font-size: 60px;}
}
@media ( max-width: 1320px ) {
	div.intro p, div.intro-noborder p {font-size: 21px; line-height: 41px;}
	h1 {font-size: 58px;}
	h2 {font-size: 45px; margin: 0 0 28px 0;}
}
@media ( max-width: 1280px ) {
	h1 {font-size: 56px; margin: 0 0 16px 0;}
	h2 {font-size: 43px; margin: 0 0 26px 0;}
}
@media ( max-width: 1180px ) {
	div.intro p, div.intro-noborder p {font-size: 20px; line-height: 30px;}
	h1 {font-size: 52px; margin: 0 0 16px 0;}
	h2 {font-size: 42px; margin: 0 0 24px 0;}
}
@media ( max-width: 1080px ) {
	h1 {font-size: 48px; margin: 0 0 16px 0;}
	h2 {font-size: 41px; margin: 0 0 24px 0;}
}
@media ( max-width: 960px ) {
	div.intro p, div.intro-noborder p {font-size: 19px; line-height: 29px; margin: 0 0 35px 0;}
	h1 {font-size: 42px; margin: 0 0 15px 0;}
	h2 {font-size: 38px; margin: 0 0 22px 0;}
	a.white-button {font-size: 14px; line-height: 14px;}
}
@media ( max-width: 900px ) {
	h1 {font-size: 40px; margin: 0 0 14px 0;}
	h2 {font-size: 35px; margin: 0 0 21px 0;}
	a.white-button {font-size: 14px; line-height: 14px;}
}
@media ( max-width: 800px ) {
	h1 {font-size: 36px; margin: 0 0 13px 0;}
	h2 {font-size: 32px; margin: 0 0 20px 0;}
}
@media ( max-width: 760px ) {
	div.intro p, div.intro-noborder p {font-size: 18px; line-height: 28px; margin: 0 0 30px 0;}
	h1 {font-size: 30px;}
	h2 {font-size: 28px; margin: 0 0 20px 0;}
	h3 {font-size: 18px; line-height: 28px; margin: 0 0 23px 0;}
	h4 {font-size: 16px; line-height: 26px; margin: 30px 0 10px 0;}
}

/* HEADER -------------------------------------------------------------------------------- */
.header-bar {
	display: block; width: 100%; height: 130px; padding: 0; margin: 0; position: absolute; top: 0; left: 0; 
	z-index: 9900; clear: both; /*border-bottom: 1px solid #ccc;*/
}
	.header-opacity {opacity: 0.95;}
	
	/* utility nav */
	.header-utility {
		display: block; height: 40px; background-color: #005776; background: linear-gradient(90deg, #005776 -3.75%, #00C1D5 45.73%, #84BD00 96.25%); 
		text-align: right; z-index: 9999; position: absolute; top: 0; left: 0; padding: 0 3%; width: 94%;
	}
		.header-utility ul {margin: 0; padding: 0; list-style: none; display: inline-block; text-align: left; position: relative;}
		.header-utility ul li {margin: 0; padding: 10px 0; list-style: none; display: inline-block; margin-left: 30px; position: relative; color: #fff; font-size: 13px; line-height: 20px;}
		.header-utility ul li:first-child {margin-left: 0;}
		.header-utility ul li a {margin: 0; display: block; color: #fff; font-size: 13px; line-height: 20px;}
		.header-utility ul li a:hover, 
		.header-utility ul li a:focus {color: #fff; text-decoration: underline;}
			.header-utility ul li ul,
			.header-utility ul li:hover ul {
				display:block; position:absolute; top:100%; left:0; background-color: #fff; padding: 10px 20px; margin: 0;
				-webkit-box-shadow: 0px 2px 4px 2px rgba(0,0,0,0.1);
				-moz-box-shadow: 0px 2px 4px 2px rgba(0,0,0,0.1);
				box-shadow: 0px 2px 4px 2px rgba(0,0,0,0.1);
				display: none;
			}
			.header-utility ul ul li {min-width: 170px; color: #282828; display: block; margin: 0; padding: 5px 0; float: none;}
			.header-utility ul ul li a {color: #282828; white-space: nowrap;}
			
			.header-utility ul li:focus > ul,
			.header-utility ul li:hover > ul { display:block; }
			
			.header-utility ul li ul li a:hover, .header-utility ul li ul li a:focus,
			.header-utility ul li ul li:hover, .header-utility ul li ul li:focus {color: #84BD00; text-decoration: none;}
			
			.header-utility ul li .droopmenu-indicator em {font-style: normal;}
			.header-utility ul li .droopmenu-indicator em:after {
				content: "\f35f"; font-family: "Ionicons"; display: inline-block; position: relative; font-size: 16px; margin-left: 4px;
			}
			/* language toggle */
			.header-utility ul li.header-utility-language ul,
			.header-utility ul li.header-utility-language:hover ul {left: auto; right: 0; min-width: 45px;}
			.header-utility ul li.header-utility-language ul li {min-width: 45px;}
			.header-utility ul li .droopmenu-language em:after {
				content: "\f38c"; font-family: "Ionicons"; display: inline-block; position: relative; font-size: 16px; margin-right: 4px; font-style: normal;
			}
		
	/* search/cta */
	.header-search-cta {position: absolute; right: 3%; top: 23px; display: flex; flex-wrap: nowrap; justify-content: space-between; align-items: center; width: 200px;}
	
	/* search */
	#header-search {display: inline-block; margin-right: 30px; padding-top: 9px; padding-bottom: 9px;}
		.search-icon {display: inline-block; background-color: #fff; cursor: pointer;}
			.search-toggle.closed .search-icon.icon-search {display: block;}
			.search-toggle.closed .search-icon.icon-close {display: none;}
			
			.search-toggle.opened .search-icon.icon-search {display: none;}
			.search-toggle.opened .search-icon.icon-close {display: block;}
			
			.search-toggle .icon-search.show {display: block;}
			.search-toggle .icon-search.hide {display: none;}
			
			.search-toggle .icon-close.hide {display: none;}
			.search-toggle .icon-close.show {display: block;}
			
		.search-container {
			/*position: absolute; right: 0px; top: 67px; background-color: #fff; padding: 15px 10px 15px 20px; box-shadow: 0px 0px 14px rgba(0,0,0,0.35);*/
			position: fixed; left: 0; top: 130px; background-color: #005776; height: 100px; width: 100%; text-align: center; padding: 30px 3%;
			display: none; z-index: 3000; transition: top 0.3s;
		}
			.search-container.opened {display: block;}
			.search-container-inner {
				background-color: #fff; display: flex; flex-wrap: nowrap; justify-content: space-between;
				width: 780px; max-width: 100%; margin: 0 auto; text-align: left; height: 40px;
			}
				#header-search-text {
					border: 0; font-size: 18px; line-height: 40px; height: 40px; width: 90%; padding: 0 20px; display: inline-block; color: #005776; outline: 0;
				}
				#header-search-button {
					display: inline-block; font-size: 18px; line-height: 40px; height: 40px; width: auto; padding: 5px 15px 0 15px; outline: 0; cursor: pointer;
				}
					#header-search-text::-webkit-input-placeholder,
					#header-search-text ::-webkit-input-placeholder { /* WebKit, Blink, Edge */ color: #005776;}
					#header-search-text:-moz-placeholder,
					#header-search-text :-moz-placeholder { /* Mozilla Firefox 4 to 18 */ color: #005776; opacity: 1;}
					#header-search-text::-moz-placeholder,
					#header-search-text ::-moz-placeholder			{ /* Mozilla Firefox 19+ */ color: #005776; opacity: 1;}
					#header-search-text:-ms-input-placeholder,
					#header-search-text :-ms-input-placeholder { /* Internet Explorer 10-11 */ color: #005776;}
					#header-search-text::-ms-input-placeholder,
					#header-search-text ::-ms-input-placeholder { /* Microsoft Edge */ color: #005776;}
					#header-search-text::placeholder,
					#header-search-text ::placeholder { /* Most modern browsers support this now. */ color: #005776;}
					
	/* CTA */
	.header-cta {display: inline-block;}
	.header-cta a {
		font-size: 14px; line-height: 14px; font-weight: bold; text-transform: uppercase; color: #fff; border:0; white-space: nowrap;
		background-color: #00859B; -webkit-border-radius: 7px; -moz-border-radius: 7px; border-radius: 7px; display: inline-block; padding: 15px 20px; text-decoration: none;
	}
		.header-cta a:hover,
		.header-cta a:focus {color: #FFF; background-color: #84BD00; text-decoration: none;}
	
	/* STARPHIRE */	
	.starphire .header-utility ul {margin-right: 33px;}
	@media only screen and (min-width: 1005px){
		.starphire .droopmenu-nav {float:right; margin-right: 135px;}
	}		

@media (min-width: 961px) {
	.header-bar {position: fixed;}
}		
@media ( max-width: 1200px ) {
	.header-search-cta {width: 190px;}
	#header-search {margin-right: 20px;}
}
@media ( max-width: 1110px ) {
	.header-search-cta {width: 170px;}
	#header-search {margin-right: 10px;}
	.header-cta a {padding: 15px 16px;}
}
@media ( max-width: 960px ) {
	.header-utility {padding: 0 4%; /*width: 92%;*/ width: 100%; box-sizing: border-box;}
	.header-search-cta {right: 4%;}
	
	.header-utility ul li {margin-left: 18px;}
	.header-utility ul li:first-child {margin-left: 0;}
	.header-utility ul li a .abbreviate {display: none;}
	
	.starphire .header-utility {padding: 0 3%;}
}
@media ( max-width: 760px ) {
	.header-bar {height: 60px;}
	.header-utility {display: none;}
	.header-search-cta {width: 40px; top: 10px; right: 0;}
	.header-cta {display: none;}
	#header-search {margin-right: 0;}
	.search-container {right: 20px; top: 58px;}
}

/* MAIN BODY ------------------------------------------------------------------------------ */
.main-body {padding: 200px 0 0 0; display: block; clear: both; position: relative;}
.main-body-gallery-home {padding: 800px 0 0 0;}
.project-gallery-detail {padding: 130px 0 150px 0;}

/* slider ---------------------------------------------- */
.flexslider {margin: 0 !important; padding: 0 !important; border: 0 !important; position: relative; clear: both; overflow: hidden; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; background-color: transparent !important;}
.flexslider .slide {position: relative; display: flex; flex-wrap: wrap; justify-content: center; align-items: center;}
		
/* parallax effect on slider for project gallery */
.home-slides-background {position: fixed; width: 100%;}
.home-slides-background .flexslider {max-width: 1920px; margin: 0 auto !important;}
.flexslider .slide img {width: 100%; height: auto; display: inline-block;} 

/* parallax effect on video for starphire project gallery */
.starphire .home-slides-background {/*margin-top: 130px;*/}
#home-video-bg {position: fixed; width: 100%; height: auto; /*position: fixed; left: 0; right: 0; top: 0; bottom: 0; min-width: 100%; min-height: 100%;*/}

/* banner image --------------------------------------- */
.banner-image {display: block; position: relative; clear: both; margin: 0; padding: 0; text-align: center;}
	.banner-image img {display: block; width: 100%; max-width: 100%; height: auto;}
	.banner-overlay {background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 100%); width: 100%; height: 78%; position: absolute; bottom: 0; left: 0;}
	.banner-image-text {bottom: 410px; display: block; position: absolute; left: 0; width: 100%; color: #fff; text-align: left;}
		.banner-image-text h1, 
		.banner-image-text .slide-heading {max-width: 72%;}
		.banner-image-text p {max-width: 72%; color: #fff; font-size: 25px; line-height: 1.4em; margin: 0 0 25px 0; text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.5);}
		.banner-image-text p:last-of-type {margin: 0;}
		.banner-image-text p a {text-shadow: none;}
		
/* breadcrumbs --------------------------------------- */
.breadcrumbs-bar {display: block; position: relative; clear: both; margin: 0; padding: 20px 0 120px 0; border-top: 1px solid #D7D7D7;}
	.breadcrumbs-bar ul {list-style: none; margin: 0; padding: 0; width: 100%; display: inline-block;}
		.breadcrumbs-bar ul li {list-style: none; margin: 0; padding: 0; display: inline-block; color: #9E9E9E; font-size: 12px; line-height: 14px;}
			.breadcrumbs-bar ul li a {font-size: 12px; line-height: 14px; color: #9E9E9E; text-decoration: none;}
				.breadcrumbs-bar ul li a:hover,
				.breadcrumbs-bar ul li a:focus {color: #84BD00; text-decoration: none;}
			.breadcrumbs-bar ul li:last-child a {color: #005776;}
			.breadcrumbs-bar ul li:not(:last-child):after {content: ' / '; position: relative;}
				
/* max widths ---------------------------------------- */
.max-width         {max-width: 1600px; margin: 0 auto; position: relative; display: block; clear: both;}
.max-columns-width {max-width: 1440px; margin: 0 auto; position: relative; display: block; clear: both;}
.max-content-width {max-width: 1256px; margin: 0 auto; position: relative; display: block; clear: both;}
.max-gallery-home-width {max-width: 1680px; margin: 0 auto; position: relative; display: block; clear: both; background-color: #fff; padding-top: 60px; padding-bottom: 130px;}

.max-detail-images-width  {max-width: 1340px; margin: 0 auto; position: relative; display: block; clear: both;}
.max-detail-content-width {max-width: 1040px; margin: 0 auto; position: relative; display: block; clear: both;}

/* mobile */
@media ( max-width: 1880px ) {
	.max-gallery-home-width {margin: 0 3%;}
	.main-body-gallery-home {padding-top: 800px;}
	.banner-image-text {bottom: 380px;}
}
@media ( max-width: 1780px ) {
	.max-gallery-home-width {margin: 0 3%;}
	.main-body-gallery-home {padding-top: 780px;}
	.banner-image-text {bottom: 350px;}
	.banner-image-text .slide-heading {font-size: 70px;}
}
@media ( max-width: 1680px ) {
	.max-columns-width {margin: 0 6%;}
	.max-gallery-home-width .max-columns-width {margin: 0 3%;}
	.main-body-gallery-home {padding-top: 760px;}
	.banner-image-text {bottom: 310px;}
	.banner-image-text .slide-heading {font-size: 68px;}
	.banner-image-text p {font-size: 24px;}
}
@media ( max-width: 1600px ) {
	.main-body-gallery-home {padding-top: 740px;}
	.banner-image-text {bottom: 290px;}
	.banner-image-text .slide-heading {font-size: 66px; max-width: 76%;}
	.banner-image-text p {max-width: 76%;}
}
@media ( max-width: 1550px ) {
	.main-body-gallery-home {padding-top: 720px;}
	.banner-image-text {bottom: 270px;}
	.banner-image-text .slide-heading {font-size: 64px;}
	.banner-image-text p {font-size: 23px;}
}
@media ( max-width: 1500px ) {
	.main-body-gallery-home {padding-top: 700px;}
	.banner-image-text {bottom: 250px;}
	.banner-image-text .slide-heading {font-size: 62px;}
}
@media ( max-width: 1450px ) {
	.max-detail-images-width  {margin: 0 3%;}
	.main-body-gallery-home {padding-top: 680px;}
	.banner-image-text {bottom: 230px;}
	.banner-image-text .slide-heading {font-size: 60px; max-width: 80%;}
	.banner-image-text p {font-size: 22px; max-width: 80%;}
}
@media ( max-width: 1400px ) {
	.main-body-gallery-home {padding-top: 660px;}
	.banner-image-text {bottom: 220px;}
	.banner-image-text .slide-heading {font-size: 58px;}
}
@media ( max-width: 1350px ) {
	.main-body-gallery-home {padding-top: 640px;}
	.banner-image-text {bottom: 210px;}
	.max-gallery-home-width {padding-top: 45px;}
	.banner-image-text .slide-heading {font-size: 56px;}
	.banner-image-text p {font-size: 21px;}
}
@media ( max-width: 1300px ) {
	.main-body-gallery-home {padding-top: 620px;}
	.banner-image-text {bottom: 200px;}
	.max-gallery-home-width {padding-top: 44px;}
	.banner-image-text .slide-heading {font-size: 54px; max-width: 84%;}
	.banner-image-text p {max-width: 84%;}
}
@media ( max-width: 1250px ) {
	.main-body-gallery-home {padding-top: 610px;}
	.banner-image-text {bottom: 190px;}
	.max-gallery-home-width {padding-top: 43px;}
	.banner-image-text .slide-heading {font-size: 52px;}
	.banner-image-text p {font-size: 20px;}
}
@media ( max-width: 1200px ) {
	.max-columns-width {margin: 0 7%;}
	.max-gallery-home-width .max-columns-width {margin: 0 4%;}
	
	.main-body-gallery-home {padding-top: 590px;}
	.banner-image-text {bottom: 170px;}
	.max-gallery-home-width {padding-top: 42px;}
	.banner-image-text .slide-heading {font-size: 50px; max-width: 88%;}
	.banner-image-text p {max-width: 88%;}
}
@media ( max-width: 1150px ) {
	.main-body-gallery-home {padding-top: 570px;}
	.banner-image-text {bottom: 150px;}
	.max-gallery-home-width {padding-top: 41px;}
	.banner-image-text .slide-heading {font-size: 48px;}
	.max-detail-content-width {margin: 0 3%;}
}
@media ( max-width: 1100px ) {
	.main-body-gallery-home {padding-top: 550px;}
	.banner-image-text {bottom: 140px;}
	.max-gallery-home-width {padding-top: 40px;}
	.banner-image-text .slide-heading {font-size: 46px; max-width: 92%;}
}
@media ( max-width: 1050px ) {
	.main-body-gallery-home {padding-top: 520px;}
	.banner-image-text {bottom: 130px;}
	.max-gallery-home-width {padding-top: 39px;}
	.banner-image-text .slide-heading {font-size: 44px;}
}
@media ( max-width: 1000px ) {
	.main-body-gallery-home {padding-top: 500px;}
	.banner-image-text {bottom: 120px;}
	.max-gallery-home-width {padding-top: 38px;}
	.banner-image-text .slide-heading {font-size: 42px; max-width: 96%;}
	.banner-image-text p {font-size: 19px; max-width: 96%;}
}
@media ( max-width: 950px ) {
	.max-detail-images-width  {margin: 0 4%;}
	.max-detail-content-width {margin: 0 4%;}
	.main-body-gallery-home {padding-top: 480px;}
	.banner-image-text {bottom: 110px;}
	.max-gallery-home-width {padding-top: 37px;}
	.banner-image-text .slide-heading {font-size: 40px;}
}
@media ( max-width: 900px ) {
	.main-body-gallery-home {padding-top: 460px;}
	.banner-image-text {bottom: 100px;}
	.max-gallery-home-width {padding-top: 36px;}
	.banner-image-text .slide-heading {font-size: 38px; max-width: 100%;}
	.banner-image-text p {max-width: 100%;}
}
@media ( max-width: 850px ) {
	.main-body-gallery-home {padding-top: 440px;}
	.banner-image-text {bottom: 90px;}
	.max-gallery-home-width {padding-top: 35px;}
	.banner-image-text .slide-heading {font-size: 36px;}
}
@media ( max-width: 800px ) {
	.breadcrumbs-bar {padding: 20px 0 80px 0;}
	.main-body-gallery-home {padding-top: 420px;}
	.banner-image-text {bottom: 65px;}
	.banner-image-text .slide-heading {font-size: 34px; margin: 0 0 15px 0;}
	
	.max-gallery-home-width {margin: 0 4%; padding-top: 30px;}
	.max-columns-width {margin: 0 4%;}
	.max-gallery-home-width .max-columns-width {margin: 0 4%;}
}
@media ( max-width: 760px ) {
	.breadcrumbs-bar {display: none;}
	/* parallax effect for project gallery */
	.home-slides-background {position: relative; margin-top: 60px;}
	
	.project-gallery-detail {padding-top: 100px;}
	.main-body-gallery-home {padding-top: 5px; background-color: #fff;}
	.max-gallery-home-width {margin: 0 4%;}
	.max-columns-width {margin: 0 4%;}
	.max-gallery-home-width .max-columns-width {margin: 0 0%;}

	/*.flexslider .slide {padding-bottom: 180px;}*/
	.banner-image-text {bottom: 0; padding: 30px 0; background-color: #005776; text-align: center;}
	.banner-image-text h1,
	.banner-image-text .slide-heading,
	.banner-image-text p {text-align: center;}
	.banner-image-text .slide-heading {font-size: 28px; margin: 0 0 14px 0;}
	.banner-image-text p {font-size: 16px; margin: 0 0 18px 0;}
	
	/* starphire */
	.starphire .home-slides-background {position: relative;}
	.starphire .flexslider .slide {padding-bottom: 110px;} 
	.starphire .flexslider .slide img {display: none;} 
	#home-video-bg {position: relative; left: auto; right: auto; top: auto; bottom: auto; width: 100%; height: auto; min-height: 10px;}
	.starphire .banner-image-text .slide-heading {font-size: 24px; margin: 0;}
}
@media ( max-width: 660px ) {
	.project-gallery-detail {padding: 85px 0;}
}
			
/* FOOTER ----------------------------------------------------------------------------------------------- */
/* main footer */
.footer-bar {background-color: #005776; background: linear-gradient(180deg, #005776 0%, #0089a3 30%, #00C1D5 100%); padding: 100px 0 0 0; clear: both; display: block; position: relative; margin: 0 auto; color: #fff;}
	
	/* footer CTA */
	.footer-cta {display: block; position: absolute; top: -80px; left: 0; width: 100%; text-align: center;}
		.footer-cta-inner {
			max-width: 1600px; margin: 0 auto; height: 100px; display: block; text-align: center;
			color: #fff; font-size: 30px; line-height: 100px; font-weight: 300; background: linear-gradient(90deg, #005776 -3.75%, #00C1D5 45.73%, #84BD00 96.25%);
		}
			.footer-cta-inner-button {display: inline-block; margin-left: 50px;}
			.footer-cta-inner a {
				color: #fff; font-size: 16px; line-height: 16px; font-weight: bold; text-transform: uppercase; -webkit-border-radius: 7px; -moz-border-radius: 7px; border-radius: 7px;
				border: 2px solid #fff; padding: 10px 40px 10px 40px; text-decoration: none; display: inline-block;
			}
				.footer-cta-inner a:hover,
				.footer-cta-inner a:focus {background-color: #fff; color: #0A3255;}
					
	/* social/contact/newsletter */
	.footer-bar-inner {display: flex; flex-wrap: wrap; justify-content: space-between; max-width: 1256px; margin: 0 auto; margin-bottom: 60px;}
		.footer-bar-inner div.footer-social 	{width: 19%; display: inline-block;}
		.footer-bar-inner div.footer-contact 	{width: 43%; display: inline-block;}
		.footer-bar-inner div.footer-newsletter {width: 25%; display: inline-block;}
		
	.footer-bar-inner h6 {color: #fff; display: block; border-bottom: 1px solid #fff; font-size: 16px; padding-bottom: 10px;}
		.footer-bar-inner div.footer-newsletter h6 {border-bottom: 0px solid #fff; padding-bottom: 0;}
	.footer-bar-inner a {color: #fff; text-decoration: none;}
		.footer-bar-inner a:hover,
		.footer-bar-inner a:focus {color: #84BD00; text-decoration: none;}
	
	/* social */	
	.footer-bar-inner div.footer-social a {
		margin-right: 16px; margin-bottom: 10px; font-size: 21px; line-height: 21px; display: inline-block;
	}
	/* contact */
	.footer-bar-inner div.footer-contact ul {display: flex; flex-wrap: nowrap; justify-content: space-between; list-style: none; margin: 0; padding: 0;}
		.footer-bar-inner div.footer-contact ul li {display: inline-block; width: 32%; list-style: none; margin: 0; padding: 0;}
			.footer-bar-inner div.footer-contact ul li strong {color: #9CF6FF; font-weight: bold;}
	
	/* newsletter form - HUBSPOT */		
	.footer-bar-inner div.footer-newsletter .footer-newsletter-form {color: #fff;}
	.footer-bar-inner div.footer-newsletter .footer-newsletter-form .hbspt-form form {
		font-family: 'Lato', "Lucida Grande", Tahoma, Sans-Serif; color: #fff; min-height: 38px; display: block; clear: both; background-color: transparent;
	}
	.footer-bar-inner div.footer-newsletter .footer-newsletter-form .hbspt-form .hs_email {
		width: 75% !important; float: left !important; display: inline-block !important;
	}
	.footer-bar-inner div.footer-newsletter .footer-newsletter-form .hbspt-form .hs_submit {
		width: 25% !important; float: right !important; display: inline-block !important;
	}
	.footer-bar-inner div.footer-newsletter input[type="text"],.footer-bar-inner div.footer-newsletter input[type="email"]{
		-webkit-appearance:none; -moz-appearance:none; appearance:none; margin:0; display:block; color:#9CF6FF; background-color:transparent; font-size:14px; line-height:14px;
		width:93%; padding:10px 4%; border:1px solid #fff; height:14px; -webkit-border-radius:7px 0px 0px 7px; -moz-border-radius:7px 0px 0px 7px; border-radius:7px 0px 0px 7px;
	}
	.footer-bar-inner div.footer-newsletter input[type="submit"],.footer-bar-inner div.footer-newsletter input[type="button"],.footer-bar-inner div.footer-newsletter button{
		-webkit-appearance:none; -moz-appearance:none; appearance:none; margin:0; display:block; color:#75C6DC; cursor:pointer; font-size:14px; line-height:14px; background-color:#fff; padding:10px 0; 
		border:1px solid #fff; text-align:center; width:100%; height:14px; -webkit-border-radius:0px 7px 7px 0px; -moz-border-radius:0px 7px 7px 0px; border-radius:0px 7px 7px 0px;
	}
	.footer-bar-inner div.footer-newsletter input[type="submit"]:hover, 
	.footer-bar-inner div.footer-newsletter input[type="submit"]:focus {color: #fff; background-color: #84BD00; text-decoration: none;}
	.hbspt-form #label-email-b3b5459d-5505-4b68-9691-9d5a66419489 {display: none !important;}
	.hbspt-form .hs-error-msg {color: red;}
	
		.footer-newsletter::-webkit-input-placeholder,
		.footer-newsletter ::-webkit-input-placeholder { /* WebKit, Blink, Edge */ color: #9CF6FF;}
		.footer-newsletter:-moz-placeholder,
		.footer-newsletter :-moz-placeholder { /* Mozilla Firefox 4 to 18 */ color: #9CF6FF; opacity: 1;}
		.footer-newsletter::-moz-placeholder,
		.footer-newsletter ::-moz-placeholder { /* Mozilla Firefox 19+ */ color: #9CF6FF; opacity: 1;}
		.footer-newsletter:-ms-input-placeholder,
		.footer-newsletter:-ms-input-placeholder { /* Internet Explorer 10-11 */ color: #9CF6FF;}
		.footer-newsletter::-ms-input-placeholder,
		.footer-newsletter ::-ms-input-placeholder { /* Microsoft Edge */ color: #9CF6FF;}
		.footer-newsletter::placeholder,
		.footer-newsletter ::placeholder { /* Most modern browsers support this now. */ color: #9CF6FF;}
	
	/* language & back-to-top */
	.footer-second-bar {
		display: flex; flex-wrap: nowrap; justify-content: space-between; max-width: 1256px; margin: 0 auto; padding-bottom: 15px;
		color: #fff; font-size: 14px; line-height: 20px; 
	}
		.footer-second-bar a {color: #fff; text-decoration: none;}
			.footer-second-bar a:hover,
			.footer-second-bar a:focus {color: #fff; text-decoration: underline;}
		.footer-second-bar .footer-language {display: inline-block; width: 49%; text-align: left;}
		.footer-second-bar .footer-back-top {display: inline-block; width: 49%; text-align: right; font-weight: bold;}
		
	/* copyright & bottom links */
	.footer-bottom-bar {border-top: 1px solid #59D3E0; padding-top: 15px; padding-bottom: 15px; display: block; margin: 0; clear: both;}
		.footer-bottom-bar-inner {
			display: flex; flex-wrap: nowrap; justify-content: space-between; max-width: 1256px; margin: 0 auto;
			font-size: 12px; line-height: 20px; color: #9CF6FF;
		}
			.footer-bottom-bar-inner span {color: #9CF6FF; margin-left: 7px; margin-right: 7px;}
			.footer-bottom-bar-inner a {color: #9CF6FF; text-decoration: none;}
				.footer-bottom-bar-inner a:hover,
				.footer-bottom-bar-inner a:focus {color: #fff; text-decoration: underline;}
			.footer-bottom-bar-inner .footer-bottom-links {display: inline-block; width: 49%; text-align: left; font-weight: bold;}
			.footer-bottom-bar-inner .footer-copyright 	  {display: inline-block; width: 49%; text-align: right;}
	/* bottom back-to-top */
	.bottom-back-top {display: none; color: #fff; font-size: 14px; line-height: 20px; font-weight: bold; text-align: center; padding: 30px 5%;}
		.bottom-back-top a {color: #fff; text-decoration: none;}
			.bottom-back-top a:hover,
			.bottom-back-top a:focus {color: #fff; text-decoration: underline;}
	
/* mobile */
@media ( max-width: 1680px ) {
	.footer-cta-inner {max-width: 94%;}
}
@media ( max-width: 1320px ) {
	.footer-bar {padding: 100px 3% 0 3%;}
	.footer-bar-inner div.footer-social 	{width: 24%; display: inline-block;}
	.footer-bar-inner div.footer-contact 	{width: 37%; display: inline-block;}
	.footer-bar-inner div.footer-newsletter {width: 26%; display: inline-block;}
	/* contact */
	.footer-bar-inner div.footer-contact ul {flex-wrap: wrap;}
	.footer-bar-inner div.footer-contact ul li {width: 50%; margin-bottom: 15px;}
	.footer-bar-inner div.footer-contact ul li:last-child {display: block; width: 100%; margin-bottom: 0;}
}
@media ( max-width: 960px ) {
	.footer-bar {padding: 0;}
	.footer-bar-inner  {padding: 90px 4% 0 4%;}
	.footer-second-bar {padding: 0px 4% 15px 4%;}
	.footer-bottom-bar {padding: 15px 4% 15px 4%;}
	/* footer CTA */
	.footer-cta {position: relative; top: auto; left: auto;}
	.footer-cta-inner {max-width: 92%; height: auto; font-size: 30px; line-height: 36px; padding: 35px 4%;}
	.footer-cta-inner-button {display: block; margin: 0 auto; clear: both; margin-top: 25px;}
	.footer-cta-inner a {font-size: 16px; line-height: 16px;}
	/* social/contact/newsletter */			
	.footer-bar-inner div.footer-social 	{width: 30%; display: inline-block;}
	.footer-bar-inner div.footer-contact 	{width: 26%; display: inline-block;}
	.footer-bar-inner div.footer-newsletter {width: 31%; display: inline-block;}
	/* contact */
	.footer-bar-inner div.footer-contact ul {flex-wrap: wrap;}
	.footer-bar-inner div.footer-contact ul li {display: block; width: 100%; margin-bottom: 15px;}
	.footer-bar-inner div.footer-contact ul li:last-child {margin-bottom: 0;}
}
@media ( max-width: 760px ) {
	.footer-bar-inner  {padding: 70px 5% 0 5%;}
	.footer-second-bar {padding: 0px 5% 15px 5%;}
	.footer-bottom-bar {padding: 15px 5% 15px 5%;}
	/* footer CTA */
	.footer-cta-inner {font-size: 22px; line-height: 26px;}
	.footer-cta-inner strong {clear: both; display: block; margin-bottom: 15px; font-size: 30px; line-height: 36px;}
	.footer-cta-inner a {font-size: 16px; line-height: 16px;}
	/* social/contact/newsletter */
	.footer-bar-inner {display: block;}
	.footer-bar-inner div.footer-social, 
	.footer-bar-inner div.footer-contact, 
	.footer-bar-inner div.footer-newsletter {width: 100%; display: block; margin-bottom: 50px;}
	/* language & back-to-top */
	.footer-second-bar {display: block; flex-wrap: wrap;}
	.footer-second-bar .footer-back-top {display: none;}
	.bottom-back-top {display: block;}
	.footer-second-bar .footer-language {display: block; width: 100%;}
	/* copyright & bottom links */
	.footer-bottom-bar {border-top: 1px solid #59D3E0; padding-top: 35px; padding-bottom: 15px; display: block; margin: 0; clear: both;}
	.footer-bottom-bar-inner {display: block; flex-wrap: wrap;}
	.footer-bottom-bar-inner .footer-bottom-links {display: block; width: 100%; margin-bottom: 20px;}
	.footer-bottom-bar-inner .footer-copyright 	  {display: block; width: 100%; text-align: left;}
}

/* STARPHIRE FOOTER ----------------------------------------------------------------------------------------------- */
/* main footer */
.starphire .footer-bar {
	background-color: #005677; background: linear-gradient(180deg, #005677 0%, #0089a3 30%, #00C1D5 100%); padding: 100px 0 0 0; clear: both; display: block; position: relative; margin: 0 auto; color: #fff;
	padding-top: 40px; background-image: none; background-color: #005677;
}				
	/* social/nav/logo */
	.starphire .footer-bar-inner {display: flex; flex-wrap: wrap; justify-content: space-between; max-width: 1256px; margin: 0 auto; margin-bottom: 60px; margin-bottom:10px;}
		.starphire .footer-bar-inner div.footer-social 			{width: 19%; display: inline-block;}
		.starphire .footer-bar-inner div.footer-nav-links-starphire{width: 43%; display: inline-block; flex:3;}
		.starphire .footer-bar-inner div.footer-logo-starphire		{width: 25%; display: inline-block; margin-right: 20px;}
		.starphire .footer-bar-inner div.footer-logo-starphire a {display: inline-block; width: 100%; text-align: center;}
		
	.starphire .footer-bar-inner h6 {color: #fff; display: block; border-bottom: 1px solid #fff; font-size: 16px; padding-bottom: 10px;}
		.starphire .footer-bar-inner div.footer-newsletter h6 {border-bottom: 0px solid #fff; padding-bottom: 0;}
	.starphire .footer-bar-inner a {color: #fff; text-decoration: none;}
		.starphire .footer-bar-inner a:hover,
		.starphire .footer-bar-inner a:focus {color: #84BD00; text-decoration: none;}
	
	/* social */	
	.starphire .footer-bar-inner div.footer-social a {
		margin-right: 18px; margin-bottom: 10px; font-size: 21px; line-height: 21px; display: inline-block; float:right;
	}
	/* starphire footer nav */
	.starphire .footer-bar-inner div.footer-nav-links-starphire ul {display: flex; flex-wrap: nowrap; justify-content: space-between; list-style: none; margin: 0; padding: 0; padding-top: 41px;}
		.starphire .footer-bar-inner div.footer-nav-links-starphire ul li {
			display: inline-block; width: 32%; list-style: none; margin: 0; padding: 0; flex: 2; padding-left: 5%; text-align: center;
		}
		.starphire .footer-bar-inner div.footer-nav-links-starphire ul li#footerGallery,
		.starphire .footer-bar-inner div.footer-nav-links-starphire ul li#footerPartners {flex: 3;}
		.starphire .footer-bar-inner div.footer-nav-links-starphire ul li a {color: #fff; font-size: 16px; text-decoration: none; text-align: center;}
		.starphire .footer-bar-inner div.footer-nav-links-starphire ul li a:hover,
		.starphire .footer-bar-inner div.footer-nav-links-starphire ul li a:focus {color: #fff; font-size: 16px; text-decoration: underline;}
			.starphire .footer-bar-inner div.footer-nav-links-starphire ul li strong {color: #9CF6FF; font-weight: bold;}

	/* language & back-to-top */
	.starphire .footer-second-bar {
		display: flex; flex-wrap: nowrap; justify-content: space-between; max-width: 1256px; margin: 0 auto; padding-bottom: 15px;
		color: #fff; font-size: 14px; line-height: 20px; 
	}
		.starphire .footer-second-bar a {color: #fff; text-decoration: none;}
			.starphire .footer-second-bar a:hover,
			.starphire .footer-second-bar a:focus {color: #fff; text-decoration: underline;}
		.starphire .footer-second-bar .footer-language {display: inline-block; width: 49%; text-align: left;}
		.starphire .footer-second-bar .footer-back-top {display: inline-block; width: 49%; text-align: right; font-weight: bold;}
		
	/* copyright & bottom links */
	.starphire .footer-bottom-bar {border-top: 1px solid #59D3E0; padding-top: 15px; padding-bottom: 15px; display: block; margin: 0; clear: both;}
		.starphire .footer-bottom-bar-inner {
			display: flex; flex-wrap: nowrap; justify-content: space-between; max-width: 1256px; margin: 0 auto;
			font-size: 12px; line-height: 20px; color: #9CF6FF;
		}
			.starphire .footer-bottom-bar-inner span {color: #9CF6FF; margin-left: 7px; margin-right: 7px;}
			.starphire .footer-bottom-bar-inner a {color: #9CF6FF; text-decoration: none;}
				.starphire .footer-bottom-bar-inner a:hover,
				.starphire .footer-bottom-bar-inner a:focus {color: #fff; text-decoration: underline;}
			.starphire .footer-bottom-bar-inner .footer-bottom-links {display: inline-block; width: 49%; text-align: left; font-weight: bold;}
			.starphire .footer-bottom-bar-inner .footer-copyright 	  {display: inline-block; width: 49%; text-align: right;}
	/* bottom back-to-top */
	.starphire .bottom-back-top {display: none; color: #fff; font-size: 14px; line-height: 20px; font-weight: bold; text-align: center; padding: 30px 5%;}
		.starphire .bottom-back-top a {color: #fff; text-decoration: none;}
			.starphire .bottom-back-top a:hover,
			.starphire .bottom-back-top a:focus {color: #fff; text-decoration: underline;}

/* starphire gradient */
.starphire-bottom-gradient-bar {position:relative; display: block; height: 40px; background-color: #005677; background: linear-gradient(90deg, #005677 -3.75%, #00C1D5 45.73%, #84BD00 96.25%); width: 100%;}

/* mobile */
@media ( max-width: 1680px ) {
	.starphire .footer-cta-inner {max-width: 94%;}
}
@media ( max-width: 1320px ) {
	.starphire .footer-bar {padding: 40px 3% 0 3%;}
	.starphire .footer-bar-inner div.footer-social 	    {width: 24%; display: inline-block;}
	.starphire .footer-bar-inner div.footer-contact 	    {width: 37%; display: inline-block;}
	.starphire .footer-bar-inner div.footer-logo-starphire {width: 26%; display: inline-block;}
	/* starphire footer nav */
	.starphire .footer-bar-inner div.footer-nav-links-starphire {text-align: center;}
	.starphire .footer-bar-inner div.footer-nav-links-starphire ul {flex-wrap: wrap; display: block;}
	.starphire .footer-bar-inner div.footer-nav-links-starphire ul li {
		display: block; width: 100%; list-style: none; margin: 0; padding: 0; flex: 1; padding-left: 0%; text-align: center;
	}
	.starphire .footer-bar-inner div.footer-nav-links-starphire ul li#footerGallery,
	.starphire .footer-bar-inner div.footer-nav-links-starphire ul li#footerPartners {flex: 1;}
	.starphire .footer-bar-inner div.footer-nav-links-starphire ul li:last-child {display: inherit; width: inherit; margin-bottom: 0;}
}
@media ( max-width: 960px ) {
	.starphire .footer-bar {padding: 0;}
	.starphire .footer-bar-inner  {padding: 40px 4% 0 4%;}
	.starphire .footer-second-bar {padding: 0px 4% 15px 4%;}
	.starphire .footer-bottom-bar {padding: 15px 4% 15px 4%;}
	/* social/contact/newsletter */			
	.starphire .footer-bar-inner div.footer-social 			 {width: 30%; display: inline-block;}
	.starphire .footer-bar-inner div.footer-nav-links-starphire {width: 26%; display: inline-block;}
	.starphire .footer-bar-inner div.footer-logo-starphire      {width: 31%; display: inline-block;}
	/* starphire footer nav */
	.starphire .footer-bar-inner div.footer-nav-links-starphire ul {flex-wrap: wrap;}
	.starphire .footer-bar-inner div.footer-nav-links-starphire ul li {display: block; width: 100%; margin-bottom: 15px; padding-left:0%; padding-bottom: 35px;}
	.starphire .footer-bar-inner div.footer-nav-links-starphire ul li:last-child {margin-bottom: 0;}
}
@media ( max-width: 760px ) {
	.starphire .footer-bar-inner  {padding: 70px 5% 0 5%;}
	.starphire .footer-second-bar {padding: 0px 5% 15px 5%;}
	.starphire .footer-bottom-bar {padding: 15px 5% 15px 5%;}
	/* social/contact/logo */
	.starphire .footer-bar-inner {display: block; padding: 40px 5% 0 5%;}
	.starphire .footer-bar-inner div.footer-social {width: 100%; display: block; margin-bottom: 50px; text-align: center;}
	.starphire .footer-bar-inner div.footer-social a {float: none; min-width: 11%;}
	.starphire .footer-bar-inner div.footer-nav-links-starphire {width: 100%; display: block; margin-bottom: 0px;}
	.starphire .footer-bar-inner div.footer-logo-starphire {width: 100%; display: block; margin-bottom: 0px; text-align: center;}
	.starphire .footer-bar-inner div.footer-logo-starphire img {}
	/* language & back-to-top */
	.starphire .footer-second-bar {display: block; flex-wrap: wrap;}
	.starphire .footer-second-bar .footer-back-top {display: none;}
	.starphire .bottom-back-top {display: block;}
	.starphire .footer-second-bar .footer-language {display: block; width: 100%;}
	/* copyright & bottom links */
	.starphire .footer-bottom-bar {border-top: 1px solid #59D3E0; padding-top: 35px; padding-bottom: 15px; display: block; margin: 0; clear: both;}
	.starphire .footer-bottom-bar-inner {display: block; flex-wrap: wrap;}
	.starphire .footer-bottom-bar-inner .footer-bottom-links {display: block; width: 100%; margin-bottom: 20px; text-align: center;}
	.starphire .footer-bottom-bar-inner .footer-copyright 	  {display: block; width: 100%; text-align: center;}
}