@charset "utf-8";
@import url("reset.css");
@import 'https://fonts.googleapis.com/css?family=Lora|Open+Sans:400,700';

/* Template */

#wrapper {
   width: 100%;
   background: #fff;
   position: relative;
   z-index: 200;
}
#web_container {
   max-width: 100%;
   min-width: 100%;
   overflow-x: hidden;
}
.main_container {
   width: 100%;
   margin: auto;
   position: relative;
   background: #fff;
}
.main {
   width: 100%;
   display: block;
   margin: auto;
   position: relative;
}
body, html {
   font-family: Arial, Helvetica, sans-serif;
   line-height: 1.4;
   font-size: 1em;
}
h1 {
   color: #93a421;
   font-size: 24px;
   font-weight: normal;
   padding-top: 13px;
}
h2 {
   color: #505d64;
   font-size: 18px;
   font-family: 'Open Sans', sans-serif;
   padding: 16px 0 10px 0;
   font-weight: 700;
}
h3 {
   color: #505d64;
   font-size: 14px;
   font-weight: normal;
   padding-top: 5px;
}
.clearfix:after {
   content: "";
   display: block;
   clear: both;
}
.mobile_tagline img {
   width: 85%;
   height: auto;
   max-width: 415px;
   padding: 20px
}
#section_container * {
   box-sizing: border-box;
}
#section_container {
   margin: 0 20px 20px 20px;
}
#HomePage .services_offered {
   border: 1px solid #aaa;
   border-radius: 8px;
   background-color: #dfe2e4;
   padding: 0 20px 40px 20px;
   margin-top: 20px;
}
#HomePage #ServiceList,
#Services #ServiceList {
   list-style-image: url(../Images/gear_bullet.png);
   margin: 5px 0 0 22px;
   line-height: 1.7;
}
#HomePage #ServiceList li a {
   text-decoration: none;
   color: #505d64;
   font-weight: bold;
   padding-left: 7px;
}
#HomePage #ServiceList li a:hover {
   text-decoration: underline;
}
#home_services {
   border-top: 8px solid #9bac26;
   border-bottom: 8px solid #9bac26;
}
#home_services img {
   margin: 0 auto;
   display: block;
   width: 100%;
   height: auto;
}
#footer {
   padding: 30px 0 30px 0;
   margin: 0 auto;
   position: relative;
   background: #5d6c76;
   color: #fff;
   font-size: 12px;
}
#footer p {
   padding: 0 20px;
   text-align: center;
   line-height: 1.6;
}
#footer p.copy {
   padding-top: 10px;
}
#footer p span {
   display: inline-block;
   padding: 0 5px;
}
#footer a {
   color: #fff;
   text-decoration: none;
}
#footer a:hover {
   color: #fff;
   text-decoration: underline;
}
.conquest {
   padding: 30px 0 20px 0;
   color: #777;
   text-align: center;
   font-size: 13px;
}
.conquest a {
   color: #777;
   text-decoration: none;
}

/* about us */

#About img.biography {
    margin: 20px;
    border: 1px solid #3d474e;
}
#About #biography {
   color: #505d64;
   font-size: 14px;
   position: relative;
   padding-bottom: 25px;
   -moz-border-radius: 8px;
   list-style: disc;
}
#About #biography li h2 {
   position: relative;
   padding-top: 4px;
   padding-bottom: 4px;
   padding-left: 30px;
   color: #fff;
   background: #3d474e;
   margin-left: -36px;
   margin-right: -7px;
   font-size: 15px;
   clear: left;
   border-bottom-left-radius: 2px;
   border-top-left-radius: 2px;
   border-top-right-radius: 2px;
}
#About #biography li h2 img {
   position: absolute;
   right: 0;
   bottom: -5px;
}
#About #biography li.heading {
   padding-top: 17px;
   padding-bottom: 7px;
   clear: both;
   list-style: none;
}
#About #biography li {
   margin-left: 35px;
   font-weight: normal;
}
#About .bullet {
   list-style: disc;
   margin-left: 55px !important;
   margin: 5px 0 10px 0;
}
#About p,
#Services p {
   margin-bottom: 15px;
}
#About .page_right h2 {
   margin-bottom: 10px;
}
.linkedin {
   width: 120px;
   height: 32px;
   background: url(../images/linkedin.jpg) no-repeat 0 0;
   outline: none;
   border: none;
   margin: 13px 0 0 -6px;
   display: block;
   float: none;
}
.linkedin:hover {
   background-position: 0 -32px;
}
.content_width_container {
   max-width: 1400px;
   margin: 0 auto;
}
#About #slide {
   text-align: center;
}
#About #slide, #Contact #slide, #Portfolio #slide, #Projects #slide, #Services #slide {
   visibility: visible;
}
/* Services */

#Services h1 {
   margin-bottom: 20px;
}
#Services #ServiceList li a {
    text-decoration: none;
    color: #505d64;
    font-weight: bold;
    padding-left: 7px;
}
#Services #ServiceList li a:hover {
   text-decoration: underline;
}
#Services .back_to_services,
#Projects .back_to_portfolio {
   margin-top: -44px;
   float: right;
   text-decoration: none;
   color: #505d64;
}
#Portfolio .back_to_top,
#Projects .back_to_top {
   text-decoration: none;
   color: #505d64;
   float: right;
}
#Services p.services_title {
   color: #93a421;
   font-size: 24px;
   font-weight: normal;
   padding-top: 13px;
}

/*------Contact Form-------*/

#Contact .form {
   font-family: Calibri, Arial, Helvetica, sans-serif;
   font-size: 14px;
   color: #666;
   position: relative;
}
#Contact .form p {
   padding-top: 5px;
   position: relative;
   clear: left;
}
#Contact .form input {
   width: 100%;
   height: 45px;
   display: inline-block;
   background: #fefefe;
   border: 2px solid #e0e8ed;
   padding: 6px 10px;
   font-family: Calibri, Arial, Helvetica, sans-serif;
   font-size: 14px;
   color: #444;
}
#Contact .form textarea {
   width: 100%;
   height: 80px;
   overflow: auto;
   display: inline-block;
   background: #fefefe;
   border: 2px solid #e0e8ed;
   padding: 4px 10px;
   font-family: Calibri, Arial, Helvetica, sans-serif;
   font-size: 14px;
   color: #444;
}
#Contact input.submit_form {
   width: 140px;
   height: 40px;
   display: block;
   clear: left;
   border: 2px solid #f5fce7;
   outline: none;
   background: url(../Images/btn_submit.png) no-repeat 0 0;
   border: 1px solid #aaa;
   cursor: pointer;
   margin-top: 8px;
}
#Contact input.submit_form:hover {
   background-position: 0 -40px;
}
#Contact .form input.error, .form textarea.error {
   background: url(../images/form_error.png) no-repeat 90px 6px #faefef !important;
}
#Contact .form label.error {
   position: absolute;
   display: block;
   width: 167px;
   height: 31px;
   padding-left: 22px;
   padding-top: 9px;
   background: url(../images/label_error.png) no-repeat 0 0;
   top: 7px;
   left: 108px;
   z-index: 800;
   color: #800;
   font-weight: bold;
   font-size: 10px;
}
#Contact .form img.loading {
   position: absolute;
   bottom: 5px;
   left: 194px;
   display: none;
}
#Contact .form h2 img {
   float: left;
   padding: 0 10px 40px 0;
}
#Contact .form h2 {
   color: #505d64;
   font-size: 14px!important;
   line-height: 1.3;
   font-weight: normal!important;
   padding-bottom: 10px;
   padding-top: 0!important;
   padding-left: 3px;
   font-family: Calibri, Arial, Helvetica, sans-serif;
}
#Contact #form_container {
   color: #505d64;
   margin-bottom: 40px;
   margin-top: 22px;
   background-color: #dfe2e4;
   border: 1px solid #aaa;
   position: relative;
   padding: 22px 20px;
   -moz-border-radius: 8px;
   border-radius: 8px;
}
#Contact #security_code {
   width: 120px;
   margin-top: 11px;
}
#Contact #security_code.error {
   background: url(../images/form_error.png) no-repeat 117px 6px #faefef;
}
#Contact div.security_code {
   width: 150px;
   line-height: 1.2;
   color: #505d64;
   position: relative;
}
#Contact div.security_code label.error {
   left: 119px;
   top: 127px;
}
#Contact p.security_code {
   margin-top: 10px;
}
#Contact p.security_code img {
   display: block;
   float: left;
}
#Contact .contactList li:nth-child(8) {
   margin-top: 0 !important;
}
#Contact .contactList {
   margin-bottom: 40px;
   float: left;
   position: relative;
}
#Contact .contactList li {
   line-height: 1.5;
   display: block;
}
#Contact .contactList li.break {
   margin-top: 8px;
}
#Contact .contactList li span {
   font-weight: bold;
   color: #505d64;
   display: inline-block;
   width: 60px;
}
#Contact .contactList li a {
   color: #93a421;
   text-decoration: none;
}
#Contact .contactList li a:hover {
   color: #93a421;
   text-decoration: underline;
}
#Contact .contactMap {
   display: block;
   margin-top: 45px;
   margin-left: -5px;
}
#Contact #directions {
   position: relative;
   margin-top: 60px;
}
#Contact .directions {
   position: absolute;
   top: -25px;
   left: 5px;
}
#Contact .directions a {
   color: #93a421;
   text-decoration: none;
}
#Contact .directions a:hover {
   color: #93a421;
   text-decoration: underline;
}
#Contact .contactList .linkedin {
   width: 120px;
   height: 32px;
   background: url(../images/linkedin.jpg) no-repeat 0 0;
   outline: none;
   border: none;
}
#Contact .contactList .linkedin:hover {
   background-position: 0 -32px;
}
#Contact #directions img {
   width: 100%;
   height: auto;
}

/*------Portfolio-------*/

#Portfolio #portfolio_gallery {
   margin-bottom: 40px;
}
#Portfolio #portfolio_gallery div {
   background-color: #dfe2e4;
   position: relative;
   overflow: hidden;
   width: 100%;
   padding: 15px;
   margin-top: 30px;
   margin-bottom: 30px;
   border: 1px solid #aaa;
   position: relative;
   -moz-border-radius: 8px;
   border-radius: 8px;
}
#Portfolio #portfolio_gallery div a {
   display: none;
}
#Portfolio #portfolio_gallery div a:first-child {
   display: block;
}
#Portfolio #portfolio_gallery div img {
   width: 100%;
   height: auto;
}
#Portfolio #portfolio_gallery div span {
   display: block;
   width: auto;
   line-height: 1.3;
   float: left;
   margin: 10px 0;
}
#Portfolio #portfolio_gallery div span h3 {
   color: #505d64;
   font-size: 20px;
   padding-bottom: 0px;
   font-weight: normal;
   margin-bottom: 5px;
}
#Portfolio #portfolio_gallery div span a {
   color: #93a421;
   text-decoration: none;
   display: block!important;
   padding: 5px 0 0 0;
   margin-top: 10px;
}
#Portfolio #portfolio_gallery div span a:hover {
   color: #93a421;
   text-decoration: underline;
}
#Portfolio .imgContainer {
   overflow: hidden;
   float: left;
}
#Portfolio h1 {
   margin-bottom: 15px;
}
#Projects h1 {
   margin-bottom: 15px;
}
#Projects #gallery p {
   margin-bottom: 30px;
}
#Projects .teaser {
   max-width: 800px;
}
#Projects #gallery img {
   width: 100%;
   height: auto;
   max-width: 800px;
   display: block;
   border: 1px solid #aaa;
   padding: 5px;
}
#Projects #gallery {
   /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#dfe2e4+0,f7fafc+100 */
   background: rgb(223, 226, 228);
   /* Old browsers */
   background: -moz-linear-gradient(left, rgba(223, 226, 228, 1) 0%, rgba(247, 250, 252, 1) 100%);
   /* FF3.6-15 */
   background: -webkit-linear-gradient(left, rgba(223, 226, 228, 1) 0%, rgba(247, 250, 252, 1) 100%);
   /* Chrome10-25,Safari5.1-6 */
   background: linear-gradient(to right, rgba(223, 226, 228, 1) 0%, rgba(247, 250, 252, 1) 100%);
   /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
   filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#dfe2e4', endColorstr='#f7fafc', GradientType=1);
   /* IE6-9 */
   display: block;
   margin: 10px 0 20px 0;
   padding: 15px 15px 30px 15px;
   border: 1px solid #aaa;
   border-radius: 8px;
}
#Projects #gallery h3 {
   margin: 15px 0;
   background-color: #3d474e;
   ;
   padding: 15px;
   display: inline-block;
   font-style: italic;
   font-size: 15px;
   max-width: 800px;
   color: #fff;
   display: block;
}

/* slide */

#slide {
   width: 100%;
   max-height: 600px;
   overflow: hidden;
   position: relative;
   z-index: 10;
}
#slide {
   visibility: hidden;
}
#slide .slides {
   margin-bottom: -2px;
}
#slide .slides img {
   width: 100%;
   height: auto;
}
#slide img.holding {
   display: none;
}
#slide .slide_frame {
   position: absolute;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
   margin: auto;
   z-index: 100;
}
#slide .slide_frame .slide_tagline {
   background-color: #fff;
   padding: 10px;
   float: right;
   display: none;
   margin: 2% 2% 0 0;
}
#slide .slide_nav {
   position: absolute;
   bottom: 1.5%;
   left: 2%;
   z-index: 150;
   background: url("/images/overlay.png") repeat 0 0;
   padding: 10px;
   border-radius: 22px;
   opacity: 0.9;
}
#slide .slide_nav:hover {
   opacity: 1.0;
}
#slide .slide_nav a {
   width: 12px;
   height: 12px;
   display: block;
   text-align: center;
   overflow: hidden;
   border: 1px solid #555;
   border-radius: 12px;
   text-decoration: none;
   background: #fff;
   color: #fff;
   float: left;
   margin-right: 12px;
}
#slide .slide_nav a:first-child, #slide .slide_nav a:last-child {
   background: #333;
   text-decoration: none;
   display: none!important;
}
#slide .slide_nav a:hover {
   background: #0095d4;
   color: #0095d4;
   text-decoration: none;
}
#slide .slide_nav a.active {
   background: #005593;
   color: #005593;
   text-decoration: none;
   cursor: default;
}
#slide {
   display: none;
}
#About .box {
   background-color: #dfe2e4;
   padding: 10px 0 10px 0;
   margin-top: 15px;
   border: 1px solid #aaa;
   border-radius: 8px !important;
}
@media (max-width: 432px) {
   #Contact .form label.error {
      width: 143px;
      left: 110px !important;
   }
   .email_span {
      width: 52px !important;
   }
   #Contact div.security_code p {
      padding: 10px 0 0 0;
   }
}
@media (min-width: 550px) {
   #About .linkedin {
      width: 120px;
      height: 32px;
      background: url(../images/linkedin.jpg) no-repeat 0 0;
      outline: none;
      border: none;
      display: block;
      margin-top: 13px;
   }
   #About .linkedin:hover {
      background-position: 0 -32px;
   }
   #Contact .contactList .linkedin {
      float: right;
      margin: -8px 100px 0 0;
   }
   #slide {
      overflow: hidden;
      position: relative;
      display: block;
   }
   #slide img.holding {
      width: 100%;
      height: auto;
      display: block;
   }
   #slide .slide_frame .slide_tagline {
      display: block;
   }
   .slide_tagline img {
      width: 100%;
      height: auto;
      max-width: 300px;
   }
   .mobile_tagline img {
      display: none;
   }
}
@media (min-width: 550px) and (max-width: 649px) {
   .slide_tagline img {
       max-width: 180px;
   }
}
@media (min-width: 650px) and (max-width: 749px) {
   .slide_tagline img {
       max-width: 220px;
   }
}
@media (min-width: 750px) and (max-width: 799px) {
   .slide_tagline img {
       max-width: 260px;
   }
}
@media (min-width: 800px) and (max-width: 849px) {
   .slide_tagline img {
       max-width: 280px;
   }
}

/* Tablet (iPad/iPad Mini) Landscape Mode */

@media (min-width: 850px) {
   #Contact .form label.error {
      left: 115px;
      font-size: 12px;
      padding-top: 7px;
   }
   #Contact div.security_code {
      margin-left: 25px;
      float: left;
   }
   #Contact div.security_code label.error {
      top: 47px;
   }
   #section_container {
      margin: 40px;
   }
   .page_left {
      float: left;
      width: 48%;
   }
   .page_right {
      float: right;
      width: 48%;
      margin-top: 0;
      padding: 0 20px 40px 20px;
   }
   #Portfolio #portfolio_gallery div span {
      float: none;
      margin: 10px 0 10px 330px;
   }
   #Portfolio .imgContainer {
      width: 298px;
      height: 150px;
   }
   #Portfolio #portfolio_gallery div a {
      margin-right: 30px;
   }
   #Projects #gallery {
      padding: 40px;
   }
   #slide {
      border-bottom: 10px solid #9bac26;
   }
   #slide .slide_frame {
      left: 50%;
      top: 0;
      transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
      -webkit-transform: translate(-50%, 0);
      height: 100%;
      margin: auto;
      z-index: 100;
   }
}

/* Standard Laptop and Desktop */

@media (min-width: 1280px) {
   #footer p {
      padding: 0 300px;
   }
}

/* Larger Laptop and Desktop */

@media (min-width: 1720px) {
   #slide .slide_frame .slide_tagline {
      font-size: 36px;
      margin-bottom: 40px;
      right: 0;
   }
}

/* Largest Desktop */

@media (min-width: 1920px) {
   #slide .slide_frame {
      width: 1300px;
   }
}

/* Largest Desktop */

@media (min-width: 1920px) {
   #slide .slide_frame {
      width: 1300px;
   }
}

/* Largest Desktop */

@media (min-width: 1920px) {
   #slide .slide_frame {
      width: 1300px;
   }
}
