@charset "UTF-8";
/* CSS Document */

body { margin: 0 auto; background: #fff; position: relative; font-size: 18px; }

#navbar { width: 100%; position: fixed; top: 0; left: 0; background: #f2f2f2; height: 70px; z-index: 999999; border-bottom: 1px solid #ccc; }

.navlogo { float: left; width: 260px; padding: 25px 0 0; }
.navlogo img { width: 100%; height: auto; }

nav { float: right; width: auto; padding: 30px 0 0 0; }

nav a { font-family: 'Spinnaker', sans-serif; font-size: 15px; color: #333; text-transform: uppercase; letter-spacing: 1.5px; display: inline-block; padding: 0 25px; text-decoration: none; 
	-webkit-transition: all 0.2s ease-in-out;
  	-moz-transition: all 0.2s ease-in-out;
  	-o-transition: all 0.2s ease-in-out;
  	transition: all 0.2s ease-in-out; }
  
nav a:hover { color: #9bb23c;
	-webkit-transition: all 0.2s ease-in-out;
  	-moz-transition: all 0.2s ease-in-out;
  	-o-transition: all 0.2s ease-in-out;
  	transition: all 0.2s ease-in-out; }
	
nav a.active { color: #9bb23c; }

.navtag { float: right; width: 60px; height: 140px; margin: 0 0; text-align:center; -webkit-transition: all 200ms linear;
    -moz-transition: all 200ms linear;
    -o-transition: all 200ms linear;
    -ms-transition: all 200ms linear; }
.navtag img { width: 60px; height: auto; }

.navtag.scrolled {
	margin: -140px 0 0; 
	-webkit-transition: all 200ms linear;
    -moz-transition: all 200ms linear;
    -o-transition: all 200ms linear;
    -ms-transition: all 200ms linear;
}

a, a:hover, a:focus, a:active { -webkit-transition: all 0.2s ease-in-out;
  	-moz-transition: all 0.2s ease-in-out;
  	-o-transition: all 0.2s ease-in-out;
  	transition: all 0.2s ease-in-out; }

#hero { width: 100%; height: 680px; position: relative; margin: 0 auto; }

.border-green { border-bottom: 10px solid #9bb23c; }
.border-blue { border-bottom: 10px solid #29abe2; }
.border-gray { border-bottom: 10px solid #f2f2f2; }

.wrap { width: 100%; height: auto; overflow: auto; margin: 0 auto; display: block; position: relative; }
.container-1180 { width: 1180px; height: auto; overflow: auto; margin: 0 auto; display: block; position: relative; }
.container-920 { width: 920px; height: auto; overflow: auto; margin: 0 auto; display: block; position: relative; }
.container-500 { width: 500px; height: auto; overflow: auto; margin: 0 auto; display: block; position: relative; }
.half { width: 50%; height: auto; overflow: auto; display: block; }
.float-r { float: right; }
.float-l { float: left; }
.content120 { padding: 120px 0; }
.three-quarter { width: 75%; height: auto; overflow: auto; display: block; margin: 0 auto; }
.two-thirds { width: 66.6%; height: auto; overflow: auto; display: block; }
.forty { width: 40%; height: auto; overflow: auto; display: block; }
.forty-five { width: 45%; height: auto; overflow: auto; display: block; }
.third { width: 33.3%; height: auto; overflow: auto; display: block; } 
.eighty { width: 82.5%; height: auto; overflow: auto; display: block; margin: 0 auto; }

.valign { position:absolute;
	top: 50%;
  	left: 50%;
  	transform: translate(-50%, -50%);
    width: 100%;
    text-align: center;
    margin: 0 auto; }

h1 { font-family: 'Spinnaker', sans-serif; font-size: 2em; letter-spacing: 8px; text-align: center; text-transform: uppercase; }
h2 { font-family: 'Spinnaker', sans-serif; font-size: 1.33em; letter-spacing: 4px; text-align: center; text-transform: uppercase; }
h2 span { color: #fff; padding: 20px 30px; background: rgba(0,0,0,0.8); }
h2.catheader { color: #fff; padding: 20px 30px; background: rgba(155,178,60,0.8); }
p { font-family: 'Lato', sans-serif; font-size: 1em; line-height: 1.85em; text-align: left; color: #333; font-weight: 300; }
a.content { color: #808080; text-decoration: none; font-family: 'Spinnaker', sans-serif; font-size: 0.9em; letter-spacing: 4px; text-transform: uppercase; display: block; margin: 40px 0 0 0; }
a.content:hover { color: #9bb23c; }

a.btn-white { background: #fff; color: #9bb23c; font-family: 'Spinnaker', sans-serif; font-size: 1em; letter-spacing: 6px; text-transform: uppercase; text-align: center; margin: 20px auto; padding: 20px 30px; display: block; width: 300px; text-decoration: none;}
a.btn-white:hover { background: #333; }

.white { color: #fff; }
.blue { color: #29abe2; }
.green { color: #9bb23c; }
.ltgray { color: #b3b3b3; }

.hero-caption { width: 100%; height: 100%; position: absolute; top:40%; margin: 0 auto; }
.hero-content { width: 100%; height: 100%; position: absolute; top:35%; margin: 0 auto; }
.hero-content p { text-align: center; margin: 30px auto; }
.sub-hero { width: 100%; height: auto; margin: 0 auto; padding: 120px 0; background: #e6e6e6; }
.sub-hero h1, #services h1, #contact h1 { text-align: left; line-height: 1.5em; font-size: 2.5em; letter-spacing: 2px; }
.sub-hero p { font-size: 1.2em; float: left; line-height: 1.85em; }
hr.greenline { border-top: 2px solid #9bb23c; border-bottom: 2px solid #9bb23c; border-right: 0; border-left: 0; width: 75px; float: left; }


/* -- HOME -- */

#600h { width: 100%; height: 600px; margin: 0 auto; position: relative; }
.bg-home { background: url(../img/bg-home.jpg) no-repeat center top; background-size: cover; background-attachment: fixed; }
.bg-hometop { background: url(../img/bg-hometop.jpg) no-repeat center center; background-size: cover; background-attachment: fixed; }
.bg-hometop p { margin: 60px 0 0 0; }
.bg-homeindustries { background: url(../img/bg-homeindustries.jpg) no-repeat center center; background-size: cover; }
.bg-homeservices { background: url(../img/bg-homeservices.jpg) no-repeat center center; background-size: cover; }

#home-content { width: 90%; height: 90%; margin: 5% auto; background: rgba(255,255,255,0.9); padding: 120px 0; }
#home-content a { text-align: right; }
#home-content a img { width: 18px; height: auto; vertical-align: text-top; }

/* -- INDUSTRIES -- */
.bg-industries { background: url(../img/bg-industries.jpg) no-repeat center top; background-size: cover; background-attachment: fixed; }
#industries { width: 100%; height: auto; overflow: auto; display: block; margin: 0 auto; padding: 80px 0; background: #fff; }
#industries h2, #services h2 { color: #fff; text-align: left; font-size: 1.2em; margin-bottom: 60px; }
#industries h2 span, #services h2 span { padding: 20px 30px; background: #29abe2; }
.industry { width: 570px; height:280px; position: relative; margin-bottom: 50px; }
.industry-mask { width: 100%; height: 100%; overflow: hidden; position: absolute; top: 0; left: 0; z-index: 200; 
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+60,000000+100&0+60,0.8+100 */
background: -moz-linear-gradient(top,  rgba(0,0,0,0) 60%, rgba(0,0,0,0.8) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 60%,rgba(0,0,0,0.8) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  rgba(0,0,0,0) 60%,rgba(0,0,0,0.8) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#cc000000',GradientType=0 ); /* IE6-9 */
}

.industry h3 { text-align: center; color: #fff; position:absolute; bottom: 15%; margin: 0 auto; font-family: 'Spinnaker', sans-serif; font-size: 1em; text-transform: uppercase; left: 50%; transform:translate(-50%,0); letter-spacing: 2px; width: 100%; }

.bg-industry1 { background: url(../img/industries-th1.jpg) no-repeat center center; background-size: 100% auto; }
.bg-industry2 { background: url(../img/industries-th2.jpg) no-repeat center center; background-size: 100% auto; }
.bg-industry3 { background: url(../img/industries-th3.jpg) no-repeat center center; background-size: 100% auto; }
.bg-industry4 { background: url(../img/industries-th4.jpg) no-repeat center center; background-size: 100% auto; }
.bg-industry5 { background: url(../img/industries-th5.jpg) no-repeat center center; background-size: 100% auto; }
.bg-industry6 { background: url(../img/industries-th6.jpg) no-repeat center center; background-size: 100% auto; }

.industry-content { position: absolute; width: 570px; height:280px; background: rgba(51,51,51,0.8); top: 280px; 
-webkit-transition: all 0.2s ease-in-out;
  	-moz-transition: all 0.2s ease-in-out;
  	-o-transition: all 0.2s ease-in-out;
  	transition: all 0.2s ease-in-out; 
	z-index: 400; }
	
.industry-mask:hover .industry-content, .industry-mask:focus .industry-content, .industry-mask:active .industry-content { position: absolute; width: 570px; height:280px; background: rgba(51,51,51,0.9); top: 0; 
-webkit-transition: all 0.2s ease-in-out;
  	-moz-transition: all 0.2s ease-in-out;
  	-o-transition: all 0.2s ease-in-out;
  	transition: all 0.2s ease-in-out; 
	z-index: 400; }
	
.industry-content p { color: #fff; width: 70%; height: auto; margin: 20% auto 0; text-align:center; position: relative; }

/* -- SERVICES -- */
.bg-services { background: url(../img/bg-services.jpg) no-repeat center top; background-size: cover; background-attachment: fixed; }
#services { width: 100%; height: auto; overflow: auto; display: block; margin: 0 auto; padding: 80px 0 40px; background: #fff; }
#services-section { width: 100%; height: auto; padding: 80px 0 100px; margin: 0 auto; overflow: auto; display:block; }
#services-section h1 { text-align: left; line-height: 1em; font-size: 2.5em; letter-spacing: 2px; }
#services-section h3 { color: #29abe2; font-size: 1em; line-height: 1.25em; text-align: center; font-family: 'Spinnaker', sans-serif; text-transform: uppercase; width: 90%; margin: 20px auto 0; }
#services-section img { width: auto; height: 70px; margin: 0 auto; }
#services-section .half.float-r { text-align: center; margin: 60px 0 0 0; }

/* -- ABOUT -- */
.bg-about { background: url(../img/bg-about.jpg) no-repeat center top; background-size: cover; background-attachment: fixed; }
#about { width: 100%; height: auto; display:block; overflow:auto; padding: 80px 0; margin: 0 auto; background: url(../img/bg-abouttop.jpg) no-repeat center top; background-size: cover; background-attachment: fixed; }
#about-content { width: auto; height: 90%; margin: 5% auto; background: rgba(255,255,255,0.9); padding: 60px 40px 40px; display: block; overflow: auto; }
#about-content p, #contact p { display: block; float: left; }

/* -- CONTACT -- */
#contact { width: 100%; height: auto; display:block; overflow:auto; padding: 80px 0; margin: 0 auto; background: #fff; }
.contact-thanks {
	width: 98%;
	height: 98%;
	background: rgba(87,97,108,0.8);
	z-index: 5000;
	position:absolute;
	left: 1%;
	top: 1%;
}

.thanks {
	width: 100%;
	height: auto;
	color: #fff;
	text-align: center;
	font-size: 2em;
	top: 35%;
	position: absolute;
	line-height: 2em;
}


/*---- FORM ----*/

#contact-form input[type="text"],
#contact-form input[type="email"],
#contact-form input[type="url"],
#contact-form textarea {
	font:300 12px/1.625 "Open Sans", sans-serif;
}
#contact-form {
	padding:25px 0;
	margin: 2em auto 0;
	font-family: 'Spinnaker', sans-serif;
}

#contact-form label span {
	cursor:pointer;
	color:#4d4d4d;
	display:block;
	margin:5px 0;
	font-weight:400;
	text-transform: uppercase;
	letter-spacing: 2px;
	font-size: 12px;
}

#contact-form label span.required {
	color:#b3b3b3;
	text-align: right;
}

#contact-form input[type="text"],
#contact-form input[type="email"],
#contact-form input[type="url"],
#contact-form textarea {
	width:95%;
	background:#f1f1f2;
	margin:5px 0 4em;
	padding:10px;
	border: 1px solid #f1f1f2;
}
#contact-form input[type="text"]:hover,
#contact-form input[type="email"]:hover,
#contact-form input[type="url"]:hover,
#contact-form textarea:hover {
	-webkit-transition:border-color 0.2s ease-in-out;
	-moz-transition:border-color 0.2s ease-in-out;
	transition:border-color 0.2s ease-in-out;
	border:1px solid #8d97a2;
}
#contact-form textarea {
	height:140px;
	max-width:100%;
}
#contact-form button[type="submit"] {
	text-align: center;
	display: block;
	color: #fff;
	border: none;
	background-color: #29abe2;
	padding: 15px 0;
	font-weight: 400;
	text-decoration: none;
	font-size: 16px;
	font-family: 'Spinnaker', sans-serif;
	letter-spacing: 4px;
	width: 100%;
	height: auto;
	margin: 0 auto 20px;
	text-transform: uppercase;
	cursor:pointer;
	right: 0;
	box-shadow: none;
}

#contact-form button[type="submit"]:hover {
	background: #9bb23c;
	color: #fff;
	-webkit-transition:background 0.3s ease-in-out;
	-moz-transition:background 0.3s ease-in-out;
	transition:background-color 0.3s ease-in-out;
}
#contact-form button[type="submit"]:active {
	box-shadow: none;
}
#contact-form input:focus,
#contact-form textarea:focus {
	outline:0;
	border:1px solid #8d97a2;
}
::-webkit-input-placeholder {
    color:#8d97a2;
}
:-moz-placeholder {
    color:#8d97a2;
}
::-moz-placeholder {
    color:#8d97a2;
}
:-ms-input-placeholder {
    color:#8d97a2;
}


/* -- FOOTERS -- */
#greenfooter { background: #9bb23c; width: 100%; padding: 20px 0; margin: 0 auto; }
#greenfooter p { color: #fff; font-family: 'Lato', sans-serif; font-size: 1em; line-height: 1.5em; text-align: center; font-weight: 300; }

footer { width: 100%; background: #333; padding: 60px 0 20px; margin: 0 auto; text-align: center; position: relative; }
footer img { width: auto; height: 15px; }
.copyright { font-weight: 300; color: #4d4d4d; font-size: 0.75em; text-align: center; margin: 30px auto 0; }
