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

@media all and (min-width: 1280px) { 
  @viewport { width: 1400px; zoom: 1; }
  body { width: 100%; min-width: 1400px; } 
}

@media only screen and (min-width: 1025px) and (max-width: 1279px)  {
  @viewport { width: 1400px; zoom: 1; }
  body { width: 100%; min-width: 1400px; }
}

@media only screen and (min-width: 1025px) and (max-width: 1279px) 
and (-webkit-min-device-pixel-ratio: 2) {
  @viewport { zoom: 0.5; }
  body { width: 100%; min-width: 1400px; }
  .about-bg-top { background: url(../img/about-top-01.png) no-repeat top center; background-attachment: scroll ; 	overflow:hidden; background-size: auto 50%; }
}

@media only screen and (min-width: 985px) and (max-width: 1024px)  {
  @viewport { width: 1400px; zoom: 1; }
  body, .wrapnav { width: 100%; min-width: 1400px; }
  .home-bg {	background: url(../img/hex-grey-01-1440.png) no-repeat top center;	background-size: auto 100%;	padding: 0 0 4em 0; }
  .about-bg-top { background: url(../img/about-top-01-1440.png) no-repeat top center; background-attachment: scroll ; 	overflow:hidden; background-size: auto 50%; }
}

@media only screen and (min-width: 984px) and (max-width: 1024px) 
and (-webkit-min-device-pixel-ratio: 2) {
  @viewport { zoom: 0.5; }
  body, .wrapnav { width: 100%; min-width: 1400px; }
  .home-bg {	background: url(../img/hex-grey-01-1440.png) no-repeat top center;	background-size: auto 100%;	padding: 0 0 4em 0; }
  .about-bg-top { background: url(../img/about-top-01.png) no-repeat top center; background-attachment: scroll ; 	overflow:hidden; background-size: auto 50%; }
}

@media only screen and (min-width: 768px) and (max-width: 984px) 
and (-webkit-min-device-pixel-ratio: 2) {
  @viewport { zoom: 0.5; }
  body, .wrapnav { width: 100%; min-width: 1400px; }
  #mobilefooter { display: none; }
  #menu-nav { display: none; opacity: 0; height: 0; }
  #menu-mobile { display: none; opacity: 0; height: 0; } 
  .home-bg {	background: url(../img/hex-grey-01-1440.png) no-repeat top center;	background-size: auto 100%;	padding: 0 0 4em 0; }
  .about-bg-top { background: url(../img/about-top-01-1440.png) no-repeat top center; background-attachment: scroll ; 	overflow:hidden; background-size: auto 50%; }
}

@media only screen and (min-width: 768px) and (max-width: 984px) {
  @viewport { width: 1400px; zoom: 1; }
  body, .wrapnav { width: 100%; min-width: 1400px; }
  #mobilefooter { display: none; }
  #menu-nav { display: none; opacity: 0; height: 0; }
  #menu-mobile { display: none; opacity: 0; height: 0; }
  .home-bg {	background: url(../img/hex-grey-01-1440.png) no-repeat top center;	background-size: auto 100%;	padding: 0 0 4em 0; }
  .about-bg-top { background: url(../img/about-top-01-1440.png) no-repeat top center; background-attachment: scroll ; 	overflow:hidden; background-size: auto 50%; }
}

@media only screen and (min-width: 600px) and (max-width: 767px) 
and (-webkit-min-device-pixel-ratio: 2) {
  @viewport { zoom: 0.5; }
  body, .wrapnav { width: 100%; min-width: 1400px; }
  .home-bg {	background: url(../img/hex-grey-01-1440.png) no-repeat top center;	background-size: auto 100%;	padding: 0 0 4em 0; }
  .about-bg-top { background: url(../img/about-top-01-1440.png) no-repeat top center; background-attachment: scroll ; 	overflow:hidden; background-size: auto 50%; }
}

@media only screen and (min-width: 600px) and (max-width: 767px) {
  @viewport { width: 1400px; zoom: 1; }
  body, .wrapnav { width: 100%; min-width: 1400px; }
  .home-bg {	background: url(../img/hex-grey-01-1440.png) no-repeat top center;	background-size: auto 100%;	padding: 0 0 4em 0; }
  .about-bg-top { background: url(../img/about-top-01-1440.png) no-repeat top center; background-attachment: scroll ; 	overflow:hidden; background-size: auto 50%; }
}

@media only screen and (min-width: 480px) and (max-width: 599px) 
and (-webkit-min-device-pixel-ratio: 2){
  @viewport { zoom: 0.5; }
  body, .wrapnav { width: 100%; min-width: 1400px; }
  .home-bg {	background: url(../img/hex-grey-01-1440.png) no-repeat top center;	background-size: auto 100%;	padding: 0 0 4em 0; }
  .about-bg-top { background: url(../img/about-top-01-1440.png) no-repeat top center; background-attachment: scroll ; 	overflow:hidden; background-size: auto 50%; }
}


@media only screen and (min-width: 480px) and (max-width: 599px) {
  @viewport { zoom: 1; }
  body, .wrapnav { width: 100%; min-width: 1400px; }
  .home-bg {	background: url(../img/hex-grey-01-1440.png) no-repeat top center;	background-size: auto 100%;	padding: 0 0 4em 0; }
  .about-bg-top { background: url(../img/about-top-01-1440.png) no-repeat top center; background-attachment: scroll ; 	overflow:hidden; background-size: auto 50%; }
}

@media only screen and (max-width: 500px) 
and (-webkit-min-device-pixel-ratio: 3) {  
  @viewport { zoom: 0.5; width: 1400px; }
  body { width: 100%; }
  .home-bg {	background: url(../img/hex-grey-01-1440.png) no-repeat top center;	background-size: auto 100%;	padding: 0 0 4em 0; }
  .about-bg-top { background: url(../img/about-top-01-1440.png) no-repeat top center; background-attachment: scroll ; 	overflow:hidden; background-size: auto 50%; }
}

@media only screen and (max-width: 500px) {
  @viewport { zoom: 1; width: 1400px; }
  body { width: 100%; }
  .home-bg {	background: url(../img/hex-grey-01-1440.png) no-repeat top center;	background-size: auto 100%;	padding: 0 0 4em 0; }
  .about-bg-top { background: url(../img/about-top-01-1440.png) no-repeat top center; background-attachment: scroll ; 	overflow:hidden; background-size: auto 50%; }
}

@media only screen and (max-width: 479px) {  
  @viewport { zoom: 1; width: 480px; }
  body { width: 100%; min-width: 480px; }
   
  .wrap { width: 440px; }
.wrap640 { width: 440px; }
#container { margin: 0 0 0; padding: 6em 0 5em; }
.half { width: 80%; }
.half-mid { width: 80% }
.half-pad { width: 75%; }
.one-third { width: 80% }
.two-thirds { width: 66.66%; }
.quarter { width: 25%; }

#wide-btn .two-thirds { width: 80%; }
#wide-btn .quarter { width: 15%; }
.wrap-pad { width: 440px; margin: 0 auto; position: relative; height: auto; overflow: auto; padding: 5em 0; }
.wrap-pad-sm { width: 440px; margin: 0 auto; position: relative; height: auto; overflow: auto; padding: 5em 0; }
.center { margin: 0 auto; text-align: center; }
.center-pad { margin: 4em auto; text-align: center; }
.size-full { width: 100%; float: left; }

/* UNIVERSAL */
p { text-align: left; margin: 0 0 1em 0; line-height: 1.7em; font-size: 0.9em; }
h1 { font-size: 1.8em; font-weight: 300; text-align: center; line-height: 1.2em;  margin: 0 0 0.8em 0; }
h1.pad { line-height:2.5em; }
h1.lg { font-size: 2.5em; }
.body-h1 { text-align: left; margin: 0 0 0.6em 0; }
h2 { font-size: 1.4em; font-weight: 300; text-align: left; line-height: 1.4em;  margin: 0 0 0.5em 0; }
h3 { font-size: 1em; font-weight: 400; line-height: 1.6em; }
h1.sm { font-size: 1.4em; }

/* BUTTONS */
#narrow-btn a {	width: 25%;	height: auto;	padding: 1em 1.5em 0.5em;	overflow: auto;	font-size: 1.1em;	letter-spacing: 2px;	line-height: 1.5em;margin: -3.5em 0 -4.5em 0; }
#narrow-btn img, #narrow-btn-float img { width: 25px;	height: auto; }
#narrow-btn-float a {	width: 25%;	height: auto;	padding: 1em 1.5em 0.5em; overflow: auto;	font-size: 1.1em; }

#reg-btn a {	width: 90%;	height: auto;	padding: 1em 1.5em;	font-size: 0.9em;	line-height: 1.2em;	margin: 0 auto; }
#reg-btn img {	width: 30px;	height: 100%; }
#short-btn-left a {	width: 35%;	height: auto;	padding: 1em 1.5em 0.5em;	font-size: 1.1em;	float: left;	margin: -25em 0 -2em 0; }
#short-btn-left img {	width: auto;	height: 30px; }
#short-btn a {	width: 35%;	height: auto;	padding: 1em 1.5em 1em;	font-size: 1.1em;	float: right;	margin: -2em 0 -2em 0; }
#short-btn img {	width: 30px;	height: auto; }
#wide-btn a {	width: 75%;	height: auto;	padding: 1em 0.5em 0.5em 1.5em ;	font-size: 1.1em;	margin: -2em 0 -2em 0; }
#wide-btn img {	width: auto;	height: 30px; }

/*---- Menu Overlay ----*/
.overlay-content { margin: 0 auto; }
.overlay a { font-size: 2.4em; }
.closebtn img {	width: 40px;	height: 40px; }

/* HEADER */
header {	width:100%;	height: 80px;	position: fixed;	z-index: 2000; }
#header-logo img {	width: 80%;	height: auto; }
#menu-btn {	width: 25%;	height: auto; margin: 0.8em 0 0 0; font-size: 1.2em; }


/* HOME */
#home-hex img { position: absolute;	height: auto;	width: 75%;	min-height: 600px;	z-index: 100;	top: -4em;	left: -2em; }

.home-bg {
	background: url(../img/hex-grey-01-1440.png) no-repeat top center;
	background-size: auto 100%;
	padding: 0 0 4em 0;
}

#home-intro {	width: 100%;	height: auto;	margin: 13em 0 0 0; }
.left-intro {	width: 60%;	float: left; }
.right-intro {	width: 50%;	float: right;	margin: -1.5em 0 0 0; }
#home-intro h3 {	font-size: 1em;	font-weight: 300;	text-align: left; }
.right-intro-tag { width: 80%;	height: auto;	padding: 0.5em 1em 0.6em; margin: 1em auto 0 auto;	font-size: 1.2em; }
#home-intro-top {	padding: 6em 0 2em; }
#home-intro-top p {	padding: 0 3em; }
.wrap .home-list { width: 100%; float: right; }
.list-1 {	padding: 2em 0 0 0;	font-size: 1.05em; line-height: 1.5em; }
.home-services-bg {	background:url(../img/home-howbg.svg) bottom right no-repeat;	background-size: 225% auto;	position: absolute;	bottom: 0;	right: 0;	width: 100%;	height: 100%;	z-index: 200; opacity: 0.8; }
#home-services-img {	display: none; }

#home-services-header {	padding: 2em 2em 1em; }
.home-services-padding { padding: 4em 0 0; }
.home-clients-title { text-align: left; }
.home-clients-padding { padding: 1em 0 0 0; }
.home-industries-padding { padding: 2em 0 0; }
.wrap .industries-list { width: 80%; float: right; }
.list-2 {	padding: 0;	font-size: 1.5em; line-height: 1.5em; }

.home-bg-bottom {
	background-image: url(../img/home-bottom-mobile-01.png);
	background-position: bottom center;
	background-repeat: no-repeat;
	background-blend-mode: multiply;
	background-color: #109d49;
	position: relative;
	background-size: 150% auto;
	width: 100%;
	z-index: 200;
	height: auto;
	overflow:auto;
}

/* HOW */

#how-header {	margin: 8em 0 0 0; }
#how-header h1 {	font-size: 2em;	margin: 0 0 0.5em 0; }
#how-header h2 {	font-size: 1.2em; }
.how-bg-top {	background: url(../img/how-we-work-top-01-1440.jpg) no-repeat bottom center;	background-size: 100% auto; min-height: 340px;	border-bottom: 4px solid #3bb1e5; }
.how-bg-bottom {/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#eed537+0,3bb1e5+50&0+0,0.7+15,1+100 */
background: -moz-linear-gradient(top,  rgba(238,213,55,0) 0%, rgba(184,202,107,0.7) 15%, rgba(59,177,229,0.82) 50%, rgba(59,177,229,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  rgba(238,213,55,0) 0%,rgba(184,202,107,0.7) 15%,rgba(59,177,229,0.82) 50%,rgba(59,177,229,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  rgba(238,213,55,0) 0%,rgba(184,202,107,0.7) 15%,rgba(59,177,229,0.82) 50%,rgba(59,177,229,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00eed537', endColorstr='#3bb1e5',GradientType=0 ); /* IE6-9 */ }
.how-bg-img {	background-image: url(../img/how-we-work-bottom-01-1440.png);	background-position: top center;	background-repeat: no-repeat;	background-blend-mode: multiply;	background-color: #eed537;	background-size: 100% auto; }
#how-services-header {	padding: 2em 2.5em 3em; margin: 0 0 8em 0; }
#how-retainer-header {	padding: 2em 2.5em 3em; }
#how-services-header p.yellow, #how-retainer-header p.yellow {	font-size: 1.2em;	line-height: 0.5em; }
#how-we-work h1 {	font-size: 2em;	margin: 0 0 0.5em 0; }
#how-we-work h2 {	font-size: 1.2em; }
.wrap-how { width: 440px; padding: 8em 0 2em 0; }
#how-we-work-sections {	padding: 0 0; }
#how-we-work-sections.content {	padding: 0 0 2em 0; }
#how-we-work-sections2 {	padding: 8em 0 0; }
#how-we-work-sections2.content {	padding: 0 0 2em 0; }
#how-all-header  {	padding: 3em 0 2.5em; }
.how-end { margin: 1em auto; text-align: center; }
.how-bg-middle {	background-image: url(../img/how-we-work-middle-mobile-01.png);	background-position: bottom right;	background-repeat: no-repeat;	background-blend-mode: multiply;	background-color: #3bb1e5;	position: relative;	background-size: 240% auto;	width: 100%;	z-index: 200;	height: auto;	overflow:auto;	padding: 10em 0 0 0; }

/* SERVICES */
.services-bg-top {	background: url(../img/services-top-mobile-01.jpg) no-repeat bottom center;	background-size: 100% auto; min-height: 340px; }
#services-header {	padding: 3em 0 2.5em; }
#services-header h1 {	text-align: left; }
#services-header .left-info {	width: 70%;	float: left;	padding: 0 0 0 1em; }
#services-header .right-info {	width: 70%;	padding: 0.5em 1em 0 0;	float: right; }
#services-hex {	width: 100px; margin: -4em 0 -8em; }
.services-pad-1 {	padding: 0 0 2em 0; }
.services-pad-2 {	padding: 0 0 10em 0; }
.services-pad-3 {	padding: 0 0 10em 0; }
.list-services {	padding: 0 1em 0 0;	width: 80%;	float: right;	font-size: 1.15em; line-height: 1.35em; }
.services-bg-middle {	background-image: url(../img/services-middle-01.png);	background-position: top left;	background-repeat: no-repeat;	background-blend-mode: multiply;	background-color: #3bb1e5;	position: relative;	background-size: 200% auto;	width: 100%;	z-index: 200;	height: auto;	overflow:auto;	padding: 10em 0 0 0; }

/* ABOUT */
.about-bg-top { background: url(../img/about-top-01-1440.png) no-repeat top center; }
#about-header {	margin: 8em auto 0 auto; }
.about-clients {	width: 90%;	height: auto;	padding: 1em 1.5em 0.5em;	margin: 3em auto 1em;	float: left; }
.about-clients ul.logos li {	width: 33.33%; padding: 0 0 0.8em 0; }

.about-clients ul.logos li.tall {	padding: 0 0 1em 0; }

.about-clients ul.logos img {	width: 90%;	height: auto; }

.about-clients ul.logos img.gh {	width: auto;	height: 50px; }

.about-footer-bg p {	margin: 0 0 3em 0; }
#narrow-btn-float.about-footer {	margin: 1em 0 0 0; }
.about-bg-lower {
	background-image: url(../img/about-lower-01-1440.png);
	background-position: top right;
	background-repeat: no-repeat;
	background-blend-mode: multiply;
	background-color: #109D49;
	position: relative;
	background-size: 125% auto;
	width: 100%;
	z-index: 200;
	height: auto;
	overflow:auto;
}

/* CONTACT */
.contact-bg-top {	background: url(../img/contact-top-mobile-01.png) no-repeat bottom center;	background-attachment: scroll;	background-size: 100% auto;	min-height: 340px;	width: 100%; }
.contact-bg-lower {	background-image: url(../img/contact-lower-01-1440.png);	background-position: top center;	background-repeat: no-repeat;	background-blend-mode: multiply;	background-color: #eed537;	} 
.contact-form {	width: 90%;	height: auto;	padding: 1em;	margin: 1em auto; float: left; }  
.contact-full { width: 100%; float: left; }
#contact-form {	padding:10px; }
.contact-thanks {	width: 98%;	height: 98%;	position: absolute;	top: 1%;	left: 1%;	background: rgba(87,97,108,0.8); }

#contact-form label span.check {
	cursor:pointer;
	color:#56616c;
	display:block;
	margin:2px 0 2em 10px;
	float: left;
	font-weight:400;
	text-transform: uppercase;
	letter-spacing: 2px;
	font-size: 12px;
}

#contact-form input[type="checkbox"] {
	width: 15px;
	height: 15px;
	float: left;
	border-radius: 0;
	margin: 0 0 1.5em 0;
}

#contact-form input[type="text"],
#contact-form input[type="email"],
#contact-form input[type="tel"],
#contact-form input[type="url"],
#contact-form textarea {	width:93%;	margin:5px 0 2em; }

#contact-form button[type="submit"] {	width: 50%;	height: auto;	font-size: 0.9em;	border-left: 20px solid #3bb1e5; }

  
  /* FOOTER */

.footer-logo {	float: left;	width: 45%;	height: auto; }
.footer-tag {	float: right;	padding: 1.5em 0 0 0;	font-size: 1em;	text-align: right; }
#footer-contact {	padding: 2em 0 0 0; }

}