@import url('https://pro.fontawesome.com/releases/v5.7.1/css/all.css');
@import url("reset.css");
@import url("support.css");
@import url("forms.css");
@import url('https://fonts.googleapis.com/css?family=Open+Sans:300,400,700&subset=latin-ext');
@font-face {
    font-family: 'roboto_condensedregular';
    src: url('roboto/RobotoCondensed-Regular-webfont.eot');
    src: url('roboto/RobotoCondensed-Regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('roboto/RobotoCondensed-Regular-webfont.woff') format('woff'),
         url('roboto/RobotoCondensed-Regular-webfont.ttf') format('truetype'),
         url('roboto/RobotoCondensed-Regular-webfont.svg#roboto_condensedregular') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
	font-family: "osprey-simple";
	src: url("osprey-simple-v6/osprey-simple-v6.eot");
	src: url("osprey-simple-v6/osprey-simple-v6.eot?#iefix") format("embedded-opentype"),
		 url("osprey-simple-v6/osprey-simple-v6.woff") format("woff"),
		 url("osprey-simple-v6/osprey-simple-v6.ttf") format("truetype"),
		 url("osprey-simple-v6/osprey-simple-v6.svg#osprey-simple-v6") format("svg");
	font-weight: normal;
	font-style: normal;
}
	.icon:before {
		font-family: "osprey-simple" !important;
		content: attr(data-icon);
		display: inline-block;
		margin: 0 10px 0 0;
		font-style: normal !important;
		font-weight: normal !important;
		font-variant: normal !important;
		text-transform: none !important;
		speak: none;
		line-height: 1;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
		vertical-align: -3px;
	}
@font-face {
	font-family: 'pixons';
	src:url('pixons/pixons.eot');
	src:url('pixons/pixons.eot?#iefix') format('embedded-opentype'),
		url('pixons/pixons.woff') format('woff'),
		url('pixons/pixons.ttf') format('truetype'),
		url('pixons/pixons.svg#pixons') format('svg');
	font-weight: normal;
	font-style: normal;
}

/*
blue	3f47cc
yellow	fef200
grey	333333
text	44506b	
*/

html{ height: 100%; }
body{ position: relative; min-height: 100%; margin: 0; padding: 0; color: #333333; background-image: url(../images/common/body-bg.jpg); font-family: 'Open Sans', sans-serif; font-size: 14px; }
p{ margin: 0 0 15px; font-size: 14px; line-height: 24px; }
p#notfoundmessage{ padding: 100px; background-image: url(../images/common/404.jpg); background-repeat: no-repeat; text-align: center; }
ol li{ margin: 0 0 5px; }
*+br{ display: none; visibility: hidden; }
a,input{ transition: all 0.3s; }
h1{ margin: 0 0 30px; font-size: 24px; line-height: 32px; font-weight: normal; text-transform: uppercase; }
h2{ margin: 20px 0 10px; padding: 0 0 5px; border-bottom: solid 1px; font-size: 20px; font-weight: normal; text-transform: uppercase; }
h3{ margin: 20px 0 10px; font-size: 16px; font-weight: normal; text-transform: uppercase; }

.hideforload{ display: none !important; visibility: hidden !important; }
.mobile{ display: none; }

.flexcontainer{ 
	display: flex; -webkit-display: flex; -moz-display: flex; 
	flex-flow: row nowrap; -webkit-flex-flow: row nowrap; -moz-flex-flow: row nowrap;
	justify-content: space-around;j -webkit-ustify-content: space-around; -moz-justify-content: space-around;
	align-content: center; -webkit-align-content: center; -moz-align-content: center;
	align-items: center; -webkit-align-items: center; -moz-align-items: center;
}
	.flex-item{
		order: 1; -webkit-order: 1; -moz-order: 1;
		flex: 0 1 auto; -webkit-flex: 0 1 auto; -moz-flex: 0 1 auto;
		align-self: center; -webkit-align-self: center; -moz-align-self: center;
	}

ul.bulletslist{ margin-left: 40px; list-style: disc; }
	ul.bulletslist li{ margin: 0 0 5px; }
	
.padder{ padding: 30px 50px; }
	
a.show:after{ 
	font-family: "osprey-simple" !important;
	display: inline-block;
	margin: 0 0 0 10px;
	font-style: normal !important;
	font-weight: normal !important;
	font-variant: normal !important;
	text-transform: none !important;
	speak: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	content: "\e014";
	vertical-align: 1px;
}
	a.show.closed:after{ content: "\e014"; }
	a.show.open:after{ content: "\e019"; }
	
a.linkbutton{ display: inline-block; padding: 5px 15px; background-color: #333333; color: #ffffff; border-radius: 2px; text-decoration: none; }
	/*a.linkbutton:hover{ background-color: #fef200; color: #3f47cc; }*/
	a.linkbutton:hover{ background-color: #3f47cc; }

#statusmessage{ position: absolute; z-index: 10000; display: block; width: 100%; }
	#statusmessage p{ display: block; width: 30%; margin: 0 auto; padding: 10px 20px; background-color: #ed1c24; background-image: url(../images/common/closebox.png); background-position: right top; background-repeat: no-repeat; color: #ffffff; cursor: pointer; text-align: center; }
		#statusmessage p span{ display: none; visibility: hidden; }
		
#parent{ position: relative; display: block; width: 100%; max-width: 1600px; min-height: 100%; margin: 0 auto; padding: 0 0 90px; }
	#parent > div{ display: block; margin: 0 auto; }
	
#header{ position: relative; z-index: 1001; height: 100px; padding: 20px 50px; background-color: #ffffff; box-shadow: 0 0 10px rgba(0,0,0,0.6); }
	#header #logo{ position: absolute; left: 50px; top: 20px; }
		#header #logo img{ /*display: block; width: 100%;*/ }
		#header #logo:hover{ opacity: 0.5; }
	#header div.top{ display: block; text-align: right; }
	#header div.bottom{ display: block; text-align: right; }

#socialnav{ display: inline-block; margin: 0 30px 0 0; }
	#socialnav>li{ display: inline-block; margin: 0 1px 0 0; }
		#socialnav>li a{ display: block; padding: 5px; color: #000000; font-family: 'pixons'; font-size: 16px; text-decoration: none; }
			#socialnav>li a:hover{ background-color: #000000; color: #ffffff; text-decoration: none; }
			#socialnav>li.flag{ display: none; }
				#socialnav>li.flag a:hover{ background-color: transparent; opacity: 0.5; }

#langnav{  }
	#langnav>li{ display: inline-block; margin: 0 1px 0 0; }
		#langnav>li a{ display: block; padding: 5px; }
			#langnav>li a:hover{ opacity: 0.5; }

#topnav{ display: inline-block; text-align: center; }
	#topnav>li{ position: relative; display: inline-block; margin: 0 1px 0 0; }
		#topnav>li>a{ display: block; padding: 5px 10px; color: #44506b; font-size: 12px; text-decoration: none; }
			#topnav>li>a:hover{ color: #3f47cc; }
			#topnav>li.selected>a,#topnav>li>a.selected{ color: #3f47cc; }

#mainnav{ display: inline-block; margin-top: 15px; text-align: center; }
	#mainnav>li{ position: relative; display: inline-block; margin: 0 1px 0 0; }
		#mainnav>li>a{ display: block; padding: 5px 10px; color: #44506b; font-size: 16px; text-decoration: none; }
			#mainnav>li>a:hover{ color: #3f47cc; }
			#mainnav>li.selected>a,#mainnav>li>a.selected{ color: #3f47cc; }
			#mainnav>li.flag{ float: right; }
				#mainnav>li.flag>a{ float: right; background-color: transparent; border: solid 1px transparent; }
					#mainnav>li.flag>a:hover{  background-color: transparent; border: solid 1px transparent; opacity: 0.5; }
			
			#mainnav>li>ul{ position: absolute; left: 0; top: 26px; display: block; width: 250px; max-height: 0px; overflow: hidden; transition: all 0.75s; }
				#mainnav>li:hover>ul{ max-height: 1000px; }
				#mainnav>li>ul>li{ display: block; }
					#mainnav>li>ul>li>a{ display: block; padding: 5px 10px; background-color: #ffffff; color: #000000; border: solid 1px #000000; text-decoration: none; }
						#mainnav>li>ul>li>a:hover{ background-color: #000000; color: #ffffff; }
						#mainnav>li>ul>li>a.selected{ background-color: #000000; color: #ffffff; }
				
#maincontent{ padding: 10px 50px 30px; }
	#maincontent.inner{ padding: 30px 50px 30px; }
	body.homepage #maincontent{ max-width: 1000px; margin: 0 auto; text-align: center; }
	#maincontent>ul{ margin-left: 40px; list-style: disc; }
		#maincontent>ul li{  margin: 0 0 5px; line-height: 18px; }
		
#servicesbar{ padding: 40px 50px 30px; background-color: rgba(255,255,255,0.4); overflow: hidden; }
	#servicesbar>div{ float: left; width: 30%; text-align: center; }
		#servicesbar>div.middle{ margin: 0 5%; }
		#servicesbar>div p.icon{  }
			#servicesbar>div p.icon a{ display: inline-block; width: 100px; height: 100px; }
				#servicesbar>div p.icon a span{ display: block; height: 100px; background-color: #3f47cc; background-position: center; background-repeat: no-repeat; background-size: 60% auto; border: solid 2px #fef200; border-radius: 100px; box-shadow: 0 0 10px rgba(0,0,0,0.5); transition: all 0.3s; }
					#servicesbar>div p.icon.construction a span{ background-image: url(../images/common/icon-service-construction.png); }
					#servicesbar>div p.icon.design a span{ background-image: url(../images/common/icon-service-design.png); }
					#servicesbar>div p.icon.management a span{ background-image: url(../images/common/icon-service-management.png); }
					#servicesbar>div p.icon a:hover span{ background-size: 65% auto; border: solid 2px #3f47cc; }
		#servicesbar>div h2{ border: none; font-size: 24px; line-height: 32px; }
		#servicesbar>div p.description{ min-height: 50px; padding: 0 20px; font-size: 12px; line-height: 16px; }
		
.doublebar{ padding: 40px 50px; overflow: hidden; }
	.doublebar .panel{ width: 45%; height: 600px; padding: 20px 30px; background-color: #ffffff; border-radius: 2px; box-shadow: 0 0 5px rgba(0,0,0,0.5); overflow: hidden; }
		.doublebar .panel.left{ float: left; }
		.doublebar .panel.right{ float: right; }
		.doublebar .panel h2{ position: relative; margin: 0 0 20px; border: none; font-size: 24px; line-height: 32px; }
			.doublebar .panel h2 a{ position: absolute; right: 0; padding: 0px 15px; font-size: 12px; text-transform: none; }

#footercntr{ position: absolute; left: 0; bottom: 0; display: block; width: 100% !important; margin: 30px auto 0 !important; background-color: #ffffff; box-shadow: 0 0 10px rgba(0,0,0,0.6); }
	#footer{ display: block; width: 100%; margin: 0 auto; padding: 20px 50px; overflow: hidden; }
		#footer p{ margin: 0; padding: 0px; font-size: 12px; color: #333333; }
			#footer p.copyright{ float: left; }
			#footer p.credit{ float: right; }
			#footer p a{ color: #333333; }
				#footer p a:hover{  }
				#footer p a img{ vertical-align: -6px; }

/* TESTIMONIALS */
	#testimonialsslider{ display: block; width: 100%; height: 500px; border: solid 1px #333333; overflow: hidden; }
		#testimonialsslider li{ position: relative; display: block; width: 100%; height: 500px; background-position: center; background-repeat: no-repeat; background-size: cover; overflow: hidden; }
		#testimonialsslider div.content{ position: absolute; left: 0; bottom: 0; top: 0; right: 0; z-index: 1000; display: block; width: 100%; padding: 20px 20px 40px; background-color: #333333; color: #ffffff; text-align: center; }
			#testimonialsslider div.content p.testimonial{ margin: 30px 0 30px; color: #ffffff; font-size: 16px; line-height: 24px; }
				#testimonialsslider div.content p.testimonial span{ font-size: 24px; line-height: 24px; }
			#testimonialsslider div.content p.name{ margin: 0 0 0px; color: #ffffff; font-size: 14px; line-height: 18px; }
			#testimonialsslider div.content p.jobtitle{ margin: 0 0 10px; color: #ffffff; font-size: 12px; line-height: 16px; }
		#testimonialsslider .cycle-pager{ position: absolute; right: 0; bottom: 0; z-index: 1000; display: block; width: 100%; margin: 0; padding: 20px; text-align: center; }
			#testimonialsslider .cycle-pager span{ display: inline-block; width: 13px; height: 13px; margin: 0 3px; background-color: #333333; color: #333333; border: solid 2px #ffffff; border-radius: 20px; cursor: pointer; font-family: arial; overflow: hidden; transition: all 0.3s; }
				#testimonialsslider .cycle-pager span:hover{ background-color: #fef200; color: #fef200; }
				#testimonialsslider .cycle-pager span.cycle-pager-active{ background-color: #fef200; color: #fef200; }

/* PROJECTS */
	#projectsslider{ display: block; width: 100%; height: 500px; border: solid 1px #333333; overflow: hidden; }
		#projectsslider li{ position: relative; display: block; width: 100%; height: 500px; background-position: center; background-repeat: no-repeat; background-size: cover; overflow: hidden; }
		#projectsslider div.content{ position: absolute; left: 0; bottom: 0; z-index: 1000; display: block; width: 100%; padding: 20px 20px 40px; background-color: #333333; color: #ffffff; }
			#projectsslider div.content h4{ margin: 0 0 15px; color: #ffffff; font-size: 14px; line-height: 20px; text-align: center; }
			#projectsslider div.content p.summary{ margin: 0 0 20px; color: #ffffff; font-size: 12px; line-height: 16px; text-align: center; }
		#projectsslider .cycle-pager{ position: absolute; right: 0; bottom: 0; z-index: 1000; display: block; width: 100%; margin: 0; padding: 20px; text-align: center; }
			#projectsslider .cycle-pager span{ display: inline-block; width: 13px; height: 13px; margin: 0 3px; background-color: #333333; color: #333333; border: solid 2px #ffffff; border-radius: 20px; cursor: pointer; font-family: arial; overflow: hidden; transition: all 0.3s; }
				#projectsslider .cycle-pager span:hover{ background-color: #fef200; color: #fef200; }
				#projectsslider .cycle-pager span.cycle-pager-active{ background-color: #fef200; color: #fef200; }
	#projectpane{ position: fixed; left: 5%; top: 5%; right: 5%; bottom: 5%; z-index: 10000000; padding: 20px 0 0; background-color: #ffffff; border-radius: 2px; box-shadow: 0 0 30px rgba(0,0,0,0.5); }
		#projectpane a.close{ position: absolute; top: 10px; right: 0px; z-index: 1000; color: #333333; font-size: 36px; text-decoration: none; }
			#projectpane a.close:hover{ color: #3f47cc; }
		#projectpane a.nav{ position: absolute; top: 40%; z-index: 1000; display: block; padding: 10px 10px; background-color: #cccccc; color: #333333; font-size: 40px; font-weight: 700; text-align: center; text-decoration: none; }
			#projectpane a.nav:hover{ background-color: #3f47cc; color: #ffffff; }
			#projectpane a.nav.prev{ left: 0px; border-radius: 0 90px 90px 0; }
			#projectpane a.nav.next{ right: 0px; border-radius: 90px 0 0 90px; }
		#projectpane div.content{ position: relative; display: block; padding: 30px 50px; overflow: hidden; }
			#projectpane div.content div.left{ float: left; width: 55%; height: 90%; background-position: center top; background-repeat: no-repeat; background-size: contain; }
			#projectpane div.content div.right{ float: right; width: 40%; height: 90%; overflow: auto; }
				#projectpane div.content div.right h2{ margin: 0 0 30px; border: none; font-size: 20px; line-height: 28px; }
				#projectpane div.content div.right div.description{ font-size: 14px; line-height: 20px; }
					#projectpane div.content div.right div.description p{ margin: 0 0 15px; font-size: 14px; line-height: 24px; }
	#projectslist{ padding: 30px 50px 30px; text-align: center; }
		#projectslist h1{ text-align: left; }
		#projectslist a{ position: relative; display: inline-block; width: 20%; height: 250px; margin: 2.49%; background-position: center; background-repeat: no-repeat; background-size: cover; border: solid 1px #3f47cc; border-radius: 2px; box-shadow: 0 0 1px rgba(0,0,0,0.25); overflow: hidden; }
			#projectslist a span.title{ position: absolute; left: 0; bottom: 0; display: block; width: 100%; padding: 10px; background-color: #333333; color: #ffffff; font-size: 12px; transition: all 0.3s; }
			#projectslist a:hover{ border: solid 1px #ffffff; box-shadow: 0 0 10px rgba(0,0,0,0.5); }
				#projectslist a:hover span.title{ bottom: 10px; background-color: #3f47cc; color: #ffffff; }
				
/* SERVICES LIST */
	#servicepane{ position: fixed; left: 5%; top: 5%; right: 5%; bottom: 5%; z-index: 2000; display: block; padding: 30px; background-color: #ffffff; border-radius: 2px; box-shadow: 0 0 30px rgba(0,0,0,0.8); overflow: auto; }	
		#servicepane h2{ clear: both; margin: 30px 0 30px; color: #3f47cc; border: none; }
		#servicepane div.contact{ float: left; width: 55%; }
		#servicepane div.description{ float: right; width: 40%; padding-right: 20px; }
			#servicepane div.description p{ font-size: 13px; line-height: 20px; }
		#servicepane a.close{ position: absolute; right: 15px; top: 15px; color: #999999; font-size: 24px; font-family: "osprey-simple"; text-decoration: none; }
			#servicepane a.close:after{ content: '' !important; }
			#servicepane a.close:hover{ color: #3f47cc; }
	#serviceslist{ clear: both; display: block; margin-left: 0px !important; list-style: none !important; overflow: hidden; }
		#serviceslist li{ float: left; display: table; width: 30%; margin: 0 2.5% 30px 0 !important; }
			#serviceslist li a{ display: table-cell; height: 60px; padding: 10px 10px 10px 70px; background-color: #ffffff; color: #333333; background-position: 10px 10px; background-repeat: no-repeat; background-size: auto 40px; border: solid 1px #cccccc; border-radius: 3px; font-size: 16px; text-decoration: none; vertical-align: middle; }
				#serviceslist li a:hover{ background-color: #3f47cc; color: #ffffff; border: solid 1px #ffffff; }
				
/* TEAM LIST */
	#teamlist{ margin: 0 0 30px !important; list-style: none !important; }
		#teamlist li{ margin: 0 0 50px !important; overflow: hidden; }
			#teamlist li div.left{ float: left; width: 15%; height: 230px; margin: 0 40px 0 0; background-position: center top; background-repeat: no-repeat; background-size: cover; }
			#teamlist li div.right{ float: left; width: 60%; }
				#teamlist li div.right h3{ margin: 5px 0 20px; }
	
/* MOBILENAV */
	a#mobilenavlink{ position: absolute; right: 15px; top: 15px; display: none; width: 38px; padding: 5px; }
		a#mobilenavlink:after{ content: ""; }
		a#mobilenavlink>span{ display: block; height: 6px; margin: 0 0 3px; background-color: #3f47cc; border-radius: 2px; }
	#mobilenav{ position: absolute; top: 100px; right: 0; display: block; width: 250px; padding: 10px 0; background-color: #ffffff; text-align: center; }
		#mobilenav li{ display: block; margin: 0 0 1px; }
			#mobilenav li a{ display: block; margin: 0 10px; padding: 10px 10px; background-color: #ffffff; color: #3f47cc; text-decoration: none; }
				#mobilenav li a:hover{ background-color: #3f47cc; color: #ffffff; }
				#mobilenav li.selected>a,#mobilenav li a.selected{ background-color: #3f47cc; color: #ffffff; }
			#mobilenav>li>ul{ display: block; margin: 1px 0 1px 30px; }
		#mobilenav li.flag>a{ border: none; text-align: center; }
			#mobilenav li.flag>a>img{ display: inline-block; }
			
/* TINYMCE ASSIGNED CLASSES */
	.alignleft{ float: left; margin: 0 20px 10px 0; text-align: left; }
	.alignright{ float: right; margin: 0 0 10px 20px; text-align: right; }
	.aligncenter{ display: block; margin: 0 auto 10px; text-align: center; }
	.alignfull{ display: block; margin: 0 auto 10px; text-align: justify; }
	
/* IMGPOOL CLASSES */
	img.imgpoolinline{ display: inline-block; margin: 10px; vertical-align: middle; }
	img.imgpoolleft{ float: left; margin: 0 20px 10px 0; }
	img.imgpoolright{ float: right; margin: 0 0 10px 20px; }
	img.imgpoolblock{ display: block; margin: 0 auto 10px; }
	img.bordered{ border: solid 1px; }			
	
/* DOCPOOL CLASSES */
	a.docbutton{ display: inline-block; padding: 5px 10px; background-color: #000000; color: #ffffff; border: solid 1px #000000; border-radius: 2px; text-decoration: none; }
		a.docbutton:hover{ background-color: #ffffff; color: #000000; }
	a.docbigbutton{ display: inline-block; padding: 5px 10px; background-color: #000000; color: #ffffff; border: solid 1px #000000; border-radius: 2px; text-decoration: none; }
		a.docbigbutton span{ display: block; }
			a.docbigbutton span.title{ text-transform: uppercase; }
			a.docbigbutton span.description{ font-size: 11px; }
		a.docbigbutton:hover{ background-color: #ffffff; color: #000000; }

/* SLIDER STYLES */
	#slider{ display: block; width: 100%; height: 500px; overflow: hidden; }
		#slider li{ position: relative; display: block; width: 100%; height: 500px; background-position: center; background-repeat: no-repeat; background-size: cover; overflow: hidden; }
		#slider a.navarrow{ position: absolute; top: 45%; z-index: 1000; display: block; padding: 15px; background-color: #000000; color: #ffffff; font-family: arial; font-size: 24px; font-weight: bold; text-decoration: none; }
			#slider a.cycle-prev{ left: 0px; padding-left: 20px; border-radius: 0 3px 3px 0; }
			#slider a.cycle-next{ right: 0px; padding-right: 20px; border-radius: 3px 0 0 3px; }
		#slider div.content{ position: absolute; right: 0; bottom: 10%; z-index: 1000; display: block; width: 40%; padding: 20px 20px 40px; background-color: rgba(255,255,255,1); border-radius: 2px 0 0 2px; box-shadow: 0 0 10px rgba(0,0,0,0.5); font-size: 16px; line-height: 22px; }
			#slider div.content h4{ margin: 0 0 15px; color: #3f47cc; font-size: 18px; line-height: 24px; }
			#slider div.content p.description{ margin: 0 0 20px; color: #44506b; font-size: 12px; line-height: 16px; }
			#slider div.content p.link{ font-size: 14px; }
		#slider .cycle-pager{ position: absolute; right: 0; bottom: 10%; z-index: 1000; display: block; width: 40%; margin: 0; padding: 20px; text-align: left; }
			#slider .cycle-pager span{ display: inline-block; width: 13px; height: 13px; margin: 0 3px; background-color: #ffffff; color: #ffffff; border: solid 2px #3f47cc; border-radius: 20px; cursor: pointer; font-family: arial; overflow: hidden; transition: all 0.3s; }
				#slider .cycle-pager span:hover{ background-color: #fef200; color: #fef200; }
				#slider .cycle-pager span.cycle-pager-active{ background-color: #fef200; color: #fef200; }
				
