
/*--------------------------------
    Basics
----------------------------------*/

body {
	font-family: 'Open Sans', sans-serif;
}

h1,h2,h3,h4,h5,h6 { font-family: 'Open Sans', sans-serif; font-weight: bold; line-height: 1.2em; }

.wrapper { overflow: hidden; }

.button { padding:10px 20px 9px; }
.button:hover { }


.row { padding-left:3em; padding-right: 3em; }
.row.collapse,
.row .row { padding-left:0; padding-right: 0; }

@media only screen and (max-width: 64em) {
	.row { padding-left:2em; padding-right: 2em; }
	.row.collapse,
	.row .row { padding-left:0; padding-right: 0; }
}

@media only screen and (max-width: 40em) {
	.row { padding-left:0; padding-right: 0; }
	.row.collapse,
	.row .row { padding-left:0; padding-right: 0; }
}

img.alignright { float: right; margin: 0 0 1em 1em; }
img.alignleft { float: left; margin: 0 1em 1em 0; }
img.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.alignright { float: right; }
.alignleft { float: left; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }

/*--------------------------------
    Header
----------------------------------*/

.header { position: relative; }

.header .top-header {
	background-color: #7d7d7d;
	color: #fff;
}

.header .top-header nav { float: right; }
.header .top-header nav ul {}
.header .top-header nav ul li { font-size: 15px; }
.header .top-header nav ul li a { padding:0 8px; line-height: 30px; color: #fff; }
.header .top-header nav ul li a:hover { color: #c8d65f; }

.header .top-header form { float: right; background-color: #8c8c8c; width: 210px; margin:0 0 0 10px; }
.header .top-header form .input-group { margin-bottom: 0; }
.header .top-header form input[type="text"],
.header .top-header form .input-group-field { margin:0; float: left; color: #333; font-size: 15px; height: 30px; padding:5px 10px 5px 10px; border:none; box-shadow: none; background-color: #8c8c8c; }
.header .top-header form button { margin:0; float: left; height: 30px; padding:0 8px; background-color: #fff; }
.header .top-header form button:hover { background-color: #fff; }
.header .top-header form button i { color: #8c8c8c; }

.header .main-header {
	padding:20px 0;
	background-color: #fff;
	-webkit-transition: all 400ms ease-in-out;
	-moz-transition: all 400ms ease-in-out;
	-o-transition: all 400ms ease-in-out;
	-ms-transition: all 400ms ease-in-out;
	transition: all 400ms ease-in-out;
}

.header img.logo { float: left; max-width: 240px; }

.header .main-header nav { margin:20px 0 0 0; float: right; position: relative; }
.header .main-header nav ul { margin:0; list-style: none; font-size: 14px; }
.header .main-header nav > ul { float: right; }
.header .main-header nav > ul > li { margin:0 5px 0 0; float: left; text-transform: uppercase; font-weight: 600; }
.header .main-header nav > ul > li:last-child { margin-right: 0; }
.header .main-header nav ul li a { 
	color: #5c5c5c; 
	-webkit-transition: all 300ms ease-in-out;
	-moz-transition: all 300ms ease-in-out;
	-o-transition: all 300ms ease-in-out;
	-ms-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out;
}
.header .main-header nav > ul > li > a { padding:0 12px; display: block; line-height: 32px; }
.header .main-header nav ul li.current-menu-item > a { color: #292929; }
.header .main-header nav > ul > li:hover > a,
.header .main-header nav > ul > li > a:hover { color: #fff; background-color: #464646; background-color: rgba(70,70,70,0.9); }

/*
.header .main-header nav ul.sub-menu:after { display: table; content: ""; clear: both;  }
.header .main-header nav ul.sub-menu li { 
	float: left;
	width: 160px;
	border-right: 1px solid #fff;
	font-size: 15px;
	text-transform: none;
	margin:0 10px;
}

.header .main-header nav ul.sub-menu li:nth-child(2n+2) { clear: left; }
.header .main-header nav ul.sub-menu li:nth-child(2n+3) { width: 200px; border-right:none; margin-right: 0; }

.header .main-header nav ul.sub-menu li a:hover { text-decoration: underline; }
*/

.header .main-header nav ul.sub-menu:after { display: table; content: ""; clear: both;  }
.header .main-header nav ul.sub-menu li {
	position: relative;
	font-size: 15px;
	text-transform: none;
	min-width: 150px;
}

.header .main-header nav ul.sub-menu li a {
	display: inline-block;
	width: 100%;
	padding: 10px;
}

.header .main-header nav ul.sub-menu li a:hover { background: #c8d65f !important; }

/*
.header .main-header nav ul li.video-holder {
	float: right;
	max-width: 50%;
	width: 290px;
	border-right:none;
	margin:0; 
}
*/

.header .main-header nav ul.submenu li.video {
	display: block !important;
	float: right;
	width: 290px !important;
	height: 200px !important;
	margin:0;
	background: #fff;
}

/*
.header .main-fixed-header nav ul li.video-holder { width: 250px; }

.header .main-header nav ul li.video-holder a { display: block; position: relative; }

.header .main-header nav ul li.video-holder a .play {
	display: block;
	position: absolute;
	top:50%;
	left:50%;
	margin:-55px 0 0 -55px;
	font-size: 100px;
	line-height: 110px;
	width: 110px;
	height: 110px;
	color: #fff;
	text-align: center;
	opacity:0.65;
	-webkit-transition: all 300ms ease-in-out;
	-moz-transition: all 300ms ease-in-out;
	-o-transition: all 300ms ease-in-out;
	-ms-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out;
}

.header .main-header nav ul li.video-holder a:hover .play { opacity: 1; }

.header .main-header nav ul li.video-holder a .watch {
	display: block;
	position: absolute;
	top:0;
	left:0;
	color: #fff;
	font-weight: bold;
	font-size: 20px;
	padding:8px 25px;
	background-color: #d65f5f;
	text-transform: uppercase;
}

.header .main-header nav ul li.video-holder a .watch i { margin-right: 10px; font-size: 26px; }
*/

.header .main-header nav ul.sub-menu li a { color: #fff; }
.header .main-header nav ul.sub-menu li a:hover { color: #fafafa; background-color: transparent; }

.header .main-header nav > ul > li.menu-item-has-children > a { padding-right: 22px; position: relative; }

.header .main-header nav > ul > li.menu-item-has-children > a:before {
  content: "\f107";
  display: inline-block;
  font: normal normal normal 14px/1 'FontAwesome';
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: absolute;
  top:9px;
  right: 7px;
}

/*
.header .main-header nav ul li ul { 
	display: none;
	opacity: 0;
	padding:20px 20px 20px 10px;
	position: absolute;
	min-width: 740px;
	top:52px;
	left:auto;
	right:0;
	min-height: 200px;
	background-color: #464646;
	background-color: rgba(70,70,70,0.9);
	z-index: 50;
}
*/

.header .main-header nav ul li ul { 
	display: none;
	opacity: 0;
	position: absolute;
	top:52px;
	left:auto;
	background-color: #464646;
	background-color: rgba(70,70,70,0.9);
	z-index: 50;
}

.header .main-fixed-header {
	position: fixed;
	top:-200px;
	right:0;
	left:0;
	padding:10px 0;
	border-top: 3px solid #7d7d7d;
	z-index: 180;
}
.header .main-fixed-header .logo { max-width: 200px; }
.header .main-fixed-header nav { margin:15px 0 0 0; float: right; }
.header .main-fixed-header nav ul li { font-size: 14px; }
.header .main-fixed-header nav > ul > li.menu-item-has-children > a:before { top:8px; }
.scrolled .header .main-fixed-header { top:0; }

@media only screen and (max-width: 64em) {
	.header .main-header .logo { max-width: 200px; }
}

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

/*--------------------------------
    Right Canvas
----------------------------------*/

a#toggle-menu {
	display: none;
	position: relative;
	float: right;	
	margin:7px 0 0;
	font-size: 24px;
	text-align: center;
	height: 40px;
	width: 50px;
	opacity: 0.9;
	-webkit-transition: all 400ms ease-in-out;
	-moz-transition: all 400ms ease-in-out;
	-o-transition: all 400ms ease-in-out;
	-ms-transition: all 400ms ease-in-out;
	transition: all 400ms ease-in-out;
}

a#toggle-menu:hover { opacity: 1; }

#right-canvas {	
	overflow: auto;
	display: none;
	opacity: 0;
	z-index: 203;
	text-align: left;
	background: rgb(158,173,71);
	background-color: rgba(158, 173, 71, 0.95);
	color: #fff;
	position: fixed;
	top:0;
	right:0;
	bottom:0;

	width: 100%;
	padding:60px 0 20px;
	margin: 0;
}

a#close-menu {
	display: block;
	position: absolute;
	top:0;
	right:0;
	height: 50px;
	width: 50px;
	z-index: 5;
	font-size: 24px;
	text-align: center;
	color: #eee;
	margin:17px 17px 0 0;
}

a#close-canvas {
	position: fixed;
	z-index: 201;
	top:0;
	left:0;
	right: 0;
	bottom:0;
	background: #fff;
	background: rgba(255,255,255,0.3);
	display: none;
	text-align: left;
	text-indent: -9999px;
}

#right-canvas ul { margin:0; padding:0; list-style: none; text-align: center; }
#right-canvas ul li { margin:0; font-size: 22px; }
#right-canvas nav > ul > li { border-bottom: 1px solid transparent; padding:10px 0; }
#right-canvas nav > ul > li:last-child { border-bottom: none; }
#right-canvas ul li a { display: block; color: #fff; line-height: 40px; letter-spacing: 1px; }
#right-canvas ul ul li a { font-size: 15px; }
#right-canvas ul ul { margin:0; }

#right-canvas ul li.video-holder { display: none; }

@media only screen and (min-width: 64.063em) {
	#right-canvas { display: none !important; }
}

@media only screen and (max-width: 64em) {
	.header a#toggle-menu { display: block; }
	.header nav { display: none !important; }
}

/*--------------------------------
    Footer
----------------------------------*/

.footer {
	background-color: #464646;
	color: #bfbfbf;
	padding:70px 0 0;
	position: relative;
}

.footer h5 {
	color: #fff;
	text-transform: uppercase;
	font-weight: bold;
	margin:0 0 20px;
}

.footer h6 {
	color: #bfbfbf;
	font-size: 20px;
}

.footer p {
	color: #bfbfbf;
	line-height: 1.3em;
	margin:0 0 20px;
}

.footer a {
	color: #bfbfbf;
}

.footer a:hover {
	text-decoration: underline;
}

.footer a.button.outline-button {
	background-color: transparent;
	border:2px solid #fff;
	font-weight: bold;
	text-transform: uppercase;
}

.footer a.button.outline-button:hover {
	background-color: #fff;
	color: #464646;
	text-decoration: none;
}

.footer .box { margin:0 0 20px; }

.footer .widget_nav_menu ul.menu {
	margin:0;
}

.footer .widget_nav_menu ul.menu > li {
	display: block;
}

.footer .widget_nav_menu ul.menu > li a {
	display: inline;
	padding:0;
}

.footer .bottom-footer {
	padding:10px 0;
	margin:70px 0 0;
	background-color: #252525;
	font-size: 12px;
	color: #808285;
}

.footer .bottom-footer p {
	font-size: 12px;
	color: #808285;
	margin:0;
	line-height: 1.2em;
}

.footer .bottom-footer a {
	font-size: 12px;
	color: #808285;	
}

.footer .bottom-footer nav { float: right; }
.footer .bottom-footer nav ul { margin:0; list-style: none; }
.footer .bottom-footer nav ul li { margin:0 0; float: left; line-height: 1.2em; }
.footer .bottom-footer nav ul li:after { content: "|"; }
.footer .bottom-footer nav ul li:last-child:after { content: ""; }
.footer .bottom-footer nav ul li a { display: inline-block; margin:0 10px; }
.footer .bottom-footer nav ul li:first-child a { margin-left: 0; }

ul.social-profiles { margin:0 0 20px; padding:0; list-style: none; }
.footer ul.social-profiles { margin-bottom: 20px; }
ul.social-profiles:after { content: ""; display: table; clear: both; }
.footer ul.social-profiles li { margin:0 12px 0 0; float: left; }
ul.social-profiles li a {
	display: block;
	background-color: #c8d65f;
	color: #464646;
	height: 32px;
	width: 32px;
	text-align: center;
	border-radius: 4px;
	-webkit-transition: all 400ms ease-in-out;
	-moz-transition: all 400ms ease-in-out;
	-o-transition: all 400ms ease-in-out;
	-ms-transition: all 400ms ease-in-out;
	transition: all 400ms ease-in-out;
}

ul.social-profiles li a:hover {
	background-color: #fff;
}

ul.social-profiles li a i {
	font-size: 20px;
	line-height: 32px;
}

@media only screen and (max-width: 64em) {
	.footer .medium-6.columns:nth-child(2n+1) { clear: both; }
}

@media only screen and (max-width: 40em) {
	.footer .bottom-footer { font-size: 13px; }
	.footer .bottom-footer p { margin-bottom: 20px; }
	.footer .bottom-footer nav { float: none; }
}

/*--------------------------------
    Connect sticky panel
----------------------------------*/

.connect {
	position: fixed;
	top:210px;
	left:0;
	z-index: 80;
	background-color: #fff;
	background-color: rgba(255,255,255,0.9);
	padding:15px 12px;
}
.connect:after { content: ""; display: table; clear: both; }
.connect ul { float: left; margin:0; }
.connect ul li a { margin-bottom: 10px; color: #fff; }
.connect ul li a:hover { background-color: #8a9149; }
.connect ul li:last-child a { margin-bottom: 0; }
.connect ul li.li-email a { background-color: transparent; color:#c8d65f; padding:0 2px; }
.connect ul li.li-email a i { font-size: 28px; }

.connect .sticky-form { display: none; left: -20px; opacity: 0; position: relative; float: left; margin:0 0 0 15px; padding:0 40px 0 0; }
.connect #gform_wrapper_3.gform_wrapper { margin-top: 10px; }
.connect #gform_wrapper_3.gform_wrapper .gform_heading { margin-bottom: 0; }
.connect #gform_wrapper_3.gform_wrapper .gform_heading h3 { margin:0 0 10px; padding:0; font-weight: normal; text-transform: uppercase; }
.connect #gform_wrapper_3 form select { border: none; }
.connect #gform_wrapper_3.gform_wrapper .gform_footer { margin:0; padding: 0; }
.connect #gform_wrapper_3.gform_wrapper .gform_footer input.button { text-transform: uppercase; font-weight: bold; background-color: #ccd96d; }

.connect .gform_wrapper div.validation_error { font-size: 14px; font-weight: normal; padding:15px 5px; }

.connect .gforms_confirmation_message {
	position: relative;
  display: block;
  font-weight: bold;
  margin: 0 10px 0 15px;
}

.connect a#close-connect {
	display: block;
	position: absolute;
	top:0;
	right:0;
	background-color: #eee;
	height: 30px;
	width: 30px;
	text-align: center;
	border-radius: 50%;
	font-size: 18px;
	line-height: 30px;
	color: #333;
	text-decoration: none;
}

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

}

@media only screen and (max-width: 40em) { 
	.connect { display: none !important; } 
}

/*--------------------------------
    Page Defaults
----------------------------------*/

.canvas {
	margin:0 0 40px;
	background-repeat: no-repeat;
	background-attachment: scroll;
	background-position: center center; 
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.main-content {
	min-height: 500px;
}

.content-block { padding:40px 0 20px; }
.content-block .entry { text-align: center; max-width: 75%; width: 100%; margin:0 auto; }
.content-block .entry h1 { font-size: 34px; text-transform: uppercase; margin:0 0 15px; }
.content-block .entry p,
.content-block .entry li { font-size: 18px; line-height: 1.3em; }
.content-block .entry p { margin:0 0 20px; }
.content-block .entry a:hover { text-decoration: underline; }

.content-block-green { background-color: #c8d65f; color: #fff; }
.content-block-green h1,
.content-block-green h2,
.content-block-green h3,
.content-block-green h4,
.content-block-green h5,
.content-block-green h6,
.content-block-green p,
.content-block-green a { color: #fff; }

.subscribe-block {
  background-color: #c8d65f;
  background-color: rgba(200,214,95,0.8);
  position: relative;
}

.subscribe-block:after {
  content: "";
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-position: center center; 
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1; 
}

@media only screen and (max-width: 64em) {	
	.subscribe-block:after,
	.canvas { background-attachment: scroll; }
	.main-content {
		min-height: 200px;
	}
}

@media only screen and (max-width: 40em) {	
	.content-block .entry { max-width: 85%; }
}

/*--------------------------------
    Project Nav
----------------------------------*/

.project-nav { color: #e1e1e1; background-color: #636363; padding:35px 0 30px; }
.project-nav form { max-width: 740px; width: 100%; margin:0 auto; }
.project-nav form .input-group { margin-bottom: 0; }
.project-nav form select { margin:0; min-width: 230px; }
.project-nav form .input-group-label { width: auto; background-color: transparent; border-color: transparent; color: #e1e1e1; text-transform: uppercase; font-weight: 600; }
.project-nav form button { background-color: #cad76d; text-transform: uppercase; font-weight: 700; padding:0.85em 1em; color: #424242; margin:0 0 0 8px; }
.project-nav form button:hover { background-color: #b7c838; }

@media only screen and (max-width: 64em) {	
	.project-nav form .input-group-label { display: block; margin:5px 0; padding:0; font-size: 14px; }
	.project-nav form .input-group-field,
	.project-nav form .input-group-button { vertical-align: bottom; }

	.project-nav form { max-width: 450px; margin:0 auto; width: 100%; text-align: center; }
}

/*--------------------------------
    Sliders
----------------------------------*/

#home-slider,
#page-slider { height: 445px; }
#home-slider .rsABlock,
#page-slider .rsABlock { top: 15%; text-align: center; left:0; right:0; }
.csstransforms #home-slider .rsABlock,
.csstransforms #page-slider .rsABlock { top: 50%; }
.csstransforms #home-slider .rsABlock .row,
.csstransforms #page-slider .rsABlock .row {
  -webkit-transform: translateY(-50%);
  -moz-transform:    translateY(-50%);
  -ms-transform:     translateY(-50%);
  -o-transform:      translateY(-50%);
  transform: translateY(-50%);	
}
#home-slider .rsABlock h2,
#page-slider .rsABlock h2 { font-size: 65px; color: #fff; margin:0 auto; font-weight: bold; line-height: 1.0em; width: 100%; max-width: 75%; margin-bottom: 20px; text-shadow: 0 0 4px rgba(0,0,0,0.4); }
#page-slider .rsABlock h2 { font-size: 58px; }
#home-slider .rsABlock p,
#page-slider .rsABlock p { margin:0; font-size: 20px; text-shadow: 0 0 1px rgba(0,0,0,0.4); }
#home-slider .rsABlock p a,
#page-slider .rsABlock p a { color: #fff; }
#home-slider .rsABlock p a:hover,
#page-slider .rsABlock p a:hover { text-decoration: underline; }

#news-slider { background-color: #636363; padding:30px 0 0; text-align: center; color: #fff; }
#news-slider h2 { font-size: 30px; color: #fff; font-weight: bold; color: #fff; margin:0 0 30px; }
#news-slider h2 a { color: #fff; }
#news-slider h2 a:hover { color: #fafafa; }
#news-slider .rsDefault, #news-slider .rsDefault .rsOverflow, #news-slider .rsDefault .rsSlide { background-color: #636363; }
#news-slider .post-entry { max-width: 75%; width: 100%; margin:0 auto; padding:0 0 65px; }
#news-slider .post-entry h3 { font-size: 30px; font-weight: bold; margin:0 0 20px; line-height: 1.2em; }
#news-slider .post-entry h3 a { color: #c8d65f; }
#news-slider .post-entry p { font-size: 18px; margin:0 0 20px; line-height: 1.3em; color: #e1e1e1; }
#news-slider .post-entry p a { text-transform: uppercase; color: #898989; font-size: 14px; }
#news-slider .post-entry p a:hover { text-decoration: underline; }

@media only screen and (max-width: 64em) {	
	#home-slider, #page-slider { height: 345px; }
	#home-slider .rsABlock h2, #page-slider .rsABlock h2 { font-size: 44px; margin-bottom: 15px; }
	#home-slider .rsABlock p, #page-slider .rsABlock p { font-size: 18px; }
	#news-slider h2 { font-size: 26px; }
	#news-slider .post-entry h3 { font-size: 26px; }
}

@media only screen and (max-width: 40em) {	
	#home-slider, #page-slider { height: 200px; }
	#home-slider .rsABlock h2, #page-slider .rsABlock h2 { font-size: 20px; margin-bottom: 10px; }
	#home-slider .rsABlock p, #page-slider .rsABlock p { font-size: 16px; }

	#news-slider .post-entry p { font-size: 16px; }
}

/*--------------------------------
    Home - Project Wheel
----------------------------------*/

.project-wheel {
	text-align: center;
	position: relative;
}

.project-wheel a.blockproject {
	position: relative;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: auto;
}

.project-wheel img.project-background {
	display: block;
	width: 100%;
	height: auto;
}

.project-wheel .inner {
	position: absolute;
	z-index: 2;
	top:0;
	bottom:0;
	right:0;
	left:0;
	background-position: center center;
	background-repeat: no-repeat;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.project-wheel .row a {
	display: block;
	padding:30px 0;
	height: 130px;
}

.project-wheel .row a img {
	display: inline-block;
	height: 75px;
	width: auto;
	-webkit-transition: all 300ms ease-in-out;
	-moz-transition: all 300ms ease-in-out;
	-o-transition: all 300ms ease-in-out;
	-ms-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out;
}

.project-wheel .row a:hover img { 
	-webkit-transform: scale(1.3);
	-moz-transform: scale(1.3);
	-o-transform: scale(1.3);
	-ms-transform: scale(1.3);
	transform: scale(1.3);
}

.project-wheel img.logo {
	margin:20px 0;
}

.project-wheel h4 {
	text-align: center;
	font-size: 30px;
	margin:30px 0 0;
	text-transform: uppercase;
	line-height: 40px;
	position: absolute;
	bottom:0;
	left:0;
	right:0;
	z-index: 3;
}

.project-wheel h4 i {
	display: inline-block;
	*display: inline;
	zoom:1;
	height: 40px;
	width: 42px;
	background: url(../images/icon-careers.png) 0 0 no-repeat;
	margin:0 10px 0 0;
	vertical-align: middle;
}

.project-wheel h4 a {
	display: block;
	color: #fff;
	padding:15px;
	background-color: rgba(244,228,0,0.85);
	-webkit-transition: all 300ms ease-in-out;
	-moz-transition: all 300ms ease-in-out;
	-o-transition: all 300ms ease-in-out;
	-ms-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out;
}

.project-wheel h4 a:hover {
	background-color: rgba(244,228,0,0.5);
}

@media only screen and (min-width: 64em) {	
	.project-wheel img.logo { max-width: 50%; }
}

@media only screen and (max-width: 64em) {	
	.project-wheel img.logo { max-width: 70%; }
}

@media only screen and (max-width: 40em) {	
	.project-wheel h4 { font-size: 22px; position: relative;  }
	.project-wheel h4 i { background-size: auto 25px; background-position: center center; }

	.project-wheel .row a img { height: 55px; }
	.project-wheel .row a { height: auto; padding:30px 0 20px; }
	.project-wheel img.logo { margin:30px 0; }	

	.project-wheel .row a:hover img { 
		-webkit-transform: scale(1);
		-moz-transform: scale(1);
		-o-transform: scale(1);
		-ms-transform: scale(1);
		transform: scale(1);
	}
}

/*--------------------------------
    Home - Blocks
----------------------------------*/

.block-item { 
	background-color: #363636; 
	display: block;
	position: relative;
	overflow: hidden;
	text-align: center;
}

.block-item > img {
	display: block;
	width: 100%;
	height: auto;
}

.block-item .block-caption {
	position: absolute;
	bottom:0;
	min-height: 10px;
	left:0;
	right:0;
	padding:15px 20px;
	color: #fff;
	z-index: 2;
	-webkit-transition: all 300ms ease-in-out;
	-moz-transition: all 300ms ease-in-out;
	-o-transition: all 300ms ease-in-out;
	-ms-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out;
}

.block-item > p {
	position: absolute;
	bottom:0;
	top: 0;
	left:0;
	right:0;
	padding:20px 40px;
	font-size: 15px;
	margin:150px 0 0;
	color: #fff;
	background-color: #363636;
	z-index: 3;
	opacity: 0;
	-webkit-transition: all 300ms ease-in-out;
	-moz-transition: all 300ms ease-in-out;
	-o-transition: all 300ms ease-in-out;
	-ms-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out;
}
.block-item.block-col-3-item > p { padding:80px 40px; }
.block-item:hover > p { opacity: 1; margin-top: 0; }
.block-item > p span.button {
	display: block;
	background-color: transparent;
	border: 2px solid #ffffff;
	color: #fff;
	font-weight: bold;
	text-transform: uppercase;
	width: 140px;
	margin:0 auto;
	margin-top: 10px;
	padding:0.85em 1em;
}


.block-item .block-caption h4 {
	font-size: 24px;
	margin:0 0 5px;
	text-transform: uppercase;
	color: #fff;
}
.block-item .block-caption h4 img { height: 25px; width: auto; vertical-align: top; margin-right: 10px; }
.block-item .block-caption p {
	margin:0;
}

.block-item.block-item-video .play {
	display: block;
	position: absolute;
	top:50%;
	left:50%;
	margin:-55px 0 0 -55px;
	font-size: 100px;
	line-height: 110px;
	width: 110px;
	height: 110px;
	color: #fff;
	text-align: center;
	opacity:0.65;
	-webkit-transition: all 300ms ease-in-out;
	-moz-transition: all 300ms ease-in-out;
	-o-transition: all 300ms ease-in-out;
	-ms-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out;
}

.block-item.block-item-video:hover .play { opacity: 1; }

.block-item.block-item-video .watch {
	display: block;
	position: absolute;
	bottom:0;
	right:0;
	color: #fff;
	font-weight: bold;
	font-size: 20px;
	padding:10px 25px;
	background-color: #d65f5f;
	text-transform: uppercase;
}

.block-item.block-item-video .watch i { margin-right: 10px; font-size: 26px; }



@media only screen and (max-width: 64em) {	
	.block-item .block-caption p,
	.block-item > p,
	.block-item:hover > p { display: none !important; }
}

@media only screen and (max-width: 40em) {	
	.project-wheel img.project-background { display: none; }
	.project-wheel .inner { position: relative; }
	.project-wheel h4 { margin:0; }
	.home .block-item .block-caption h4 { font-size: 22px; margin-bottom: 0; }
	.home .block-item-infographic,
	.home .post-grid a > img { display: none !important; }
	.home .block-item .block-caption { position: relative; }
	
}

/*--------------------------------
    Home - Feature Blocks
----------------------------------*/

.home .feature-blocks { background-color: #fafafa; }

.feature-blocks { }
.feature-blocks > .row { max-width: none; overflow:hidden;} 
.feature-blocks-main a > img { display: block; width: 100%; height: auto; }
.feature-blocks-main .column { text-align: center; background-color: #636363; }
.feature-blocks-main .column img.infographic { width: 100%; height: auto; }

@media only screen and (max-width: 40em) {	
	.block-item.block-item-video { display: none; }

	.feature-blocks-main .column img.infographic,
	.feature-blocks-main .column a > img { display: none; }
	.feature-blocks-main .post-grid a .post-meta { position: relative; padding: 25px 10px; min-height: 20px; }
	.feature-blocks-main .block-item { min-height: 10px; }
	.feature-blocks-main .block-item img.icon { height: 25px; width: auto; margin-right: 10px; vertical-align: top; }
	.feature-blocks-main .post-grid a .post-meta .post-intro { display: none; }
}

/*--------------------------------
    Home - Subscribe
----------------------------------*/

ul#gform_fields_1 { margin:0 -6px !important; }
ul#gform_fields_1:after { display: table; content: ""; clear: both; }
ul#gform_fields_1 li { margin:0; padding:0 6px; float: left; width: 25%; clear: none; }

form input[type="text"],
form input[type="email"] { border: none; box-shadow: none; }

form#gform_1 input[type="text"],
form#gform_1 input[type="email"],
form#gform_1 select { width: 100% !important; margin:0 !important; }

form#gform_1 input[type="text"],
form#gform_1 input[type="email"],
form#gform_1 select,
form#gform_1 select option { text-align: center; }

#gform_wrapper_1.gform_wrapper .gform_heading { margin:20px 0; width: 100%; text-align: center; }
#gform_wrapper_1.gform_wrapper .gform_heading h3.gform_title {
	position: relative;
	text-transform: uppercase;
	font-weight: 600 !important;
	font-size: 34px;
	padding:0 0 80px;
	margin:0 0 30px;
}
#gform_wrapper_1.gform_wrapper .gform_heading h3.gform_title:after {
	content: "";
	display: block;
	width: 74px;
	height: 50px;
	background: url(../images/ico-mail.png) 0 0 no-repeat;
	margin:0 0 0 -37px;
	position: absolute;
	left:50%;
	bottom:0;
}
#gform_wrapper_1.gform_wrapper .gform_heading span.gform_description { font-weight: normal; display: block; font-size: 22px; margin:0 0 30px; }

#gform_wrapper_1.gform_wrapper .gform_footer { margin: 0; padding: 10px 0 30px; text-align: center; }
#gform_wrapper_1.gform_wrapper .gform_footer input.button { text-transform: uppercase; padding:10px 20px 12px; font-weight: bold; color: #c8d65f; background-color: #424242; text-align: center; display: block; width: 100%; max-width: 200px; margin:0 auto; }

@media only screen and (max-width: 64em) {	
	ul#gform_fields_1 li { width: 50%; }
}

@media only screen and (max-width: 40em) {	
	#gform_wrapper_1.gform_wrapper .gform_heading h3.gform_title { font-size: 30px; }
	ul#gform_fields_1 li { width: 100%; }
	#gform_wrapper_1.gform_wrapper .gform_footer input.button { max-width: 100%; }
}
/*--------------------------------
    Home - Logos
----------------------------------*/

.logos-block .logos-block-grid { width: 100%; margin:0 auto; text-align: center; }

/*--------------------------------
    News
----------------------------------*/

.page-header {
	position: relative;
	text-align: center;
	color: #fff;
	background-color: #9dad40;
	position: relative;
	padding:40px 0 30px;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-position: center center; 
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}

.page-template-tpl-sub-page .page-header { height:215px; }

.page-header:after {
  content: "";
  display: block;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
}

.page-header .row { z-index: 1; position: relative; }

.page-header .row.subpage {
	width: 100%;
	max-width: 100%;
	height: 42px;
	margin: 0;
	z-index: 1;
	position: absolute;
	bottom: 0;
}

.page-header .row.subpage h1 {
	font-size: 18px;
	text-transform: uppercase;
	margin:0;
	color: #fff;
	line-height: 42px;
}

.page-header h1 {
	font-size: 38px;
	text-transform: uppercase;
	margin:0 0 20px;
	color: #fff;
}

.page-header h1 i,
.page-header h1 img { margin-right: 10px; }

.page-header .entry { width: 100%; max-width: 80%; margin:0 auto;  }
.page-header .entry h2 { color: #fff; font-size: 28px; margin:0 0 20px; }
.page-header .entry p { font-size: 18px; line-height: 1.2em; }
.page-header .entry a { color: #fff; }
.page-header .entry a:hover { text-decoration: underline; }

.post-grid { padding-top: 30px; }
	.page-template-tpl-meet-the-team .post-grid,
	.home .post-grid { padding-top: 0; }

.post-grid.row { max-width: none; }

.post-grid .column > a, .post-grid .column > div { display: block; position: relative; color: #fff; }
.post-grid .column { margin-bottom: 30px; }
	.page-template-tpl-meet-the-team .post-grid .column,
	.home .post-grid .column { margin-bottom: 0px; }
.post-grid a .post-meta,
.post-grid div .post-meta { position: absolute; min-height: 85px; bottom:0; left:0; right:0; padding:20px 10px 0; background-color: #9ead47; background-color: rgba(158,173,71,0.85); text-align: center; color: #fff; 
	-webkit-transition: all 300ms ease-in-out;
	-moz-transition: all 300ms ease-in-out;
	-o-transition: all 300ms ease-in-out;
	-ms-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out;
}

.post-grid a:hover .post-meta {
	background-color: #9ead47; background-color: rgba(158,173,71,0.95);
}

.post-grid a > img,
.post-grid div > img { width: 100%; height: auto; }

.post-grid a .post-meta .post-title,
.post-grid div .post-meta .post-title { display: block; font-size: 20px; line-height: 1.2em; font-weight: bold; text-transform: uppercase; margin:0; }
.post-grid a .post-meta .post-date { font-size: 13px; }
.event-archive .post-grid a .post-meta .post-date { font-size: 15px; }
.post-grid a .post-meta .post-intro { display: block; margin:0 0 10px; }
.post-grid a .post-meta .post-title img { height: 25px; width: auto; }
.paginate {
	text-align: center;
	color: #636363;
	background-color: #eee;
	padding:20px 0;
}

.paginate a,
.paginate span {
	display: inline-block;
	padding:10px;
	margin:0 5px;
	color: #636363;
}
.paginate a:hover { text-decoration: underline; }
.paginate span.pages { display: none; }
.paginate span.current { font-weight: bold; }

@media only screen and (min-width: 90.063em) {
	.x-large-up-4 > .column:nth-of-type(n) { clear: none; }
	.x-large-up-4 > .column:nth-of-type(4n+1) { clear: both; }
	.x-large-up-4 > .column { width: 25%; }
}

@media only screen and (max-width: 64em) {	
	.page-header h1 { font-size: 30px; }
	.page-header { background-attachment: inherit; }
}

@media only screen and (max-width: 40em) {	
	.page-header h1 { font-size: 26px; }
	.page-template-tpl-sub-page .page-header { padding:40px 0 30px; }

	.project-wheel h4 a:after,
	.home .block-item .block-caption h4:after,
	.home .post-grid a .post-meta .post-title:after {
	  content: "\f107";
	  font-weight: bold;
	  margin-left: 5px;
	  display: inline-block;
	  font: normal normal normal 14px/1 'FontAwesome';
	  font-size: inherit;
	  text-rendering: auto;
	  -webkit-font-smoothing: antialiased;
	  -moz-osx-font-smoothing: grayscale;
	}
}

/*--------------------------------
    Parent Page
----------------------------------*/

/*--------------------------------
    Sub Page
----------------------------------*/

article.entry ul,
article.entry ol { margin-left: 40px; }

header .page-heading-top {
	padding:15px 20px;
	color: #fff;
	background-color: #9dad40;
	margin:20px 0 30px;
}

.page-template-tpl-sub-page header.page-heading h1 { font-size: 30px; text-transform: uppercase; }

header.page-heading p.breadcrumb { float: right; font-size: 14px; margin:20px 0 10px; color: #9dad40; }
header.page-heading p.breadcrumb a { color: #9dad40; }
header.page-heading p.breadcrumb a:hover { text-decoration: underline; }
header.page-heading:after { content: ""; display: table; clear: both; }

header .page-heading-top h1,
header .page-heading-top h2 { text-transform: uppercase; color: #fff; margin:0 0 10px; font-size: 34px; }
header .page-heading-top h2 img { margin-right: 10px; }

aside { margin:20px 0; }
aside .box h5 {
	padding: 10px 20px;
	color: #fff;
	background-color: #9dad40;
	font-weight: bold;
	font-size: 20px;
	margin:0 0 20px;
	text-transform: uppercase;
}

aside .box ul { margin:0 0 20px; padding:0 20px; list-style: none; }
aside .box ul li { float: none; display: block; margin:0; padding:5px; border-bottom: 1px solid #040404; }
aside .box ul li a { display: inline; }
aside .box ul li a:hover { }
aside .box ul li:last-child { border-bottom: none; }
aside .box ul#menu-faq-categories li { text-transform: uppercase; }

@media only screen and (max-width: 40em) {	
	.page-template-tpl-sub-page aside { display: none; }
}

/*--------------------------------
    FAQs
----------------------------------*/

.faq-archive .tab-group > div > h2 { margin-bottom: 40px;  }
.tab-group { margin-bottom: 40px; }
.tax-faq-category .page-header { margin-bottom: 20px; }

ul.filter-items { margin: 20px 0; }
ul.filter-items li a { background-color: #fff; font-weight: bold; text-align: center; }
ul.filter-items li.ui-state-active a { background-color: #f2e1cb; }

.accordion-group { margin:0 40px; }
.accordion-group > div { padding:0 20px; }
.accordion-group h3 { font-size: 18px; font-weight: normal; display: block; padding:10px 20px; background-color: #eee; border-radius: 4px; margin:0 0 10px; cursor: pointer; }
.accordion-group h3:active, .accordion-group h3:focus { outline: none; }
.accordion-group h3 i.fa-caret-down { float: right; 
	-webkit-transition: all 300ms ease-in-out;
	-moz-transition: all 300ms ease-in-out;
	-o-transition: all 300ms ease-in-out;
	-ms-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out;
}
.accordion-group h3.ui-accordion-header-active i.fa-caret-down {
	-webkit-transform: rotate(180deg);
	-moz-transform: rotate(180deg);
	-o-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	transform: rotate(180deg);
}

@media only screen and (max-width: 64em) {	
	ul.filter-items.menu > li { display: block; float: left; }
}

@media only screen and (max-width: 40em) {	
	.accordion-group { margin:0; }
	ul.filter-items.menu > li { display: block; float: none; }
}

/*--------------------------------
    Project
----------------------------------*/

.search-item { padding:20px; border-bottom: 2px dashed #eee; }
