/* ----------------------------------------------- */
/* BASIC SETUP */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html,
body {
    background-color: #fff;
    color: #605d5c;
    font-family: 'Ubuntu', 'Arial', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 160%;
    text-rendering: optimizeLegibility;
    overflow-x: hidden;
}

.clearfix {zoom: 1;}
.clearfix:after {
    content: '.';
    clear: both;
    display: block;
    height: 0;
    visibility: hidden;
}

/* ----------------------------------------------- */


/* ----------------------------------------------- */
/* REUSABLE COMPONENTS */


.row {
    max-width: 1280px;
    margin: 0 auto;  
}

.svg_icon{
    text-align: center;
}

h1 {
    margin-top: 0;
    margin-bottom: 40px;
    color: #fff;
    font-weight: 100;
    font-size: 260%;
    font-style: italic;

}

h2 {
    font-weight: 100;
    font-size: 260%;
    text-align: center;
    margin: 21px 0px 87px 0px;
    line-height: 120%;

    
}


h2:after {
    display: block;
    height: 2px;
    background-color: #a09f9f;
    content: " ";
    width: 109px;
    margin: 0 auto;
    margin-top: 22px;
}


h3 {    
    font-size: 112.5%;
    font-weight: 500;
    color: #1e3c54;
}


/* ----------------------------------------------- */





/* --------------------------------------------------------------------------------------------------------------------------------------------- */
/* HEADER */


header {
    background-image: -webkit-gradient(linear,left top, left bottom,from(rgba(30, 60, 84, 1)),to(rgba(0, 0, 0, 1)));
    background-image: linear-gradient(rgba(30, 60, 84, 1),rgba(0, 0, 0, 1));
    background-size: cover;
    background-position: center;
    height: 100vh;
}




.logo {
    position: absolute;
    height: 113px;
    width: auto;
    float: left;
    margin-top: 30px;
}

.logo-sticky { 
    display: none;
    height: 69px;
    width: auto;
    float: left;
    
}



/* ----------------------------------------------- */
/* MAIN NAVIGATION */

.main-nav {
    background-color: rgba(255, 255, 255, 0.85)
    position: absolute;
    float: right;
    list-style: none;
    margin-top: 125px;

}

nav {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 180px;
    background-color: rgba(255, 255, 255, 0.90);
    box-shadow: 0 1px 8px #212121;
    border-top: 5px solid #1b384e;
    z-index: 9998;
    padding: 0 0 0 0;
}

.main-nav li {
    font-weight: 500;
    display: inline-block;
    margin-left: 25px;
    
}

.main-nav li a:link,
.main-nav li a:visited {
    padding: 24px 0;
    color: #605d5c;
    text-decoration: none;
    border-bottom: 5px solid transparent;
    -webkit-transition: color 0.4s ease-out, border-bottom 0.4s ease-out ;
    transition: color 0.4s ease-out, border-bottom 0.4s ease-out;
}

.main-nav li a:hover,
.main-nav li a:active {
    border-bottom: 5px solid #1e3c54;
    color: #1e3c54;
}

/* ----------------------------------------------- */

/* ----------------------------------------------- */
/* STICKY NAVIGATION */



.sticky {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 74px;   
    z-index: 9999;
}

.sticky .main-nav {
    margin-top: 23px;
}

.sticky .main-nav li a:link,
.sticky .main-nav li a:visited {
    padding: 20px 0;    
}

.sticky .logo {
    display: none;
}
.sticky .logo-sticky {
    display: block;
}

.sticky .mobile-nav-icon {
    margin-top: 25px;
}


/* ----------------------------------------------- */

/* ----------------------------------------------- */
/* MOBILE NAVIGATION */

.mobile-nav-icon {
    float: right;
    margin-top: 25px;
    cursor: pointer;
    display: none;
}

.mobile-nav-icon i {
    font-size: 150%;
    color: #1b384e;
}


.mobile-full-height {
    height: 127px;
}

/* ----------------------------------------------- */

/* ----------------------------------------------- */
/* SLIDESHOW */


    .cb-slideshow,
    .cb-slideshow:after { 
    position:absolute; 
       
    width: 100%;
    height: 100vh;    
    top: 0px;
    left: 0px;
    z-index: 0; 
}
    .cb-slideshow:after { 
    content: '';
    background: transparent url(img/graphpaper.png) top left; 
}
  
    .cb-slideshow li span { 
    width: 100%;
    height: 100vh;
    position: absolute;
    top: 0px;
    left: 0px;
    color: transparent;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: none;
    opacity: 0;
    z-index: 0;
    -webkit-animation: imageAnimation 36s linear infinite 0s;
    animation: imageAnimation 36s linear infinite 0s; 
}
    

    .cb-slideshow li:nth-child(1) span { 
    background-image: url(img/slide01.jpg); 
}
    .cb-slideshow li:nth-child(2) span { 
    background-image: url(img/slide02.jpg);
    -webkit-animation-delay: 6s;
    animation-delay: 6s; 
}
    .cb-slideshow li:nth-child(3) span { 
    background-image: url(img/slide03.jpg);
    -webkit-animation-delay: 12s;
    animation-delay: 12s; 
}
    .cb-slideshow li:nth-child(4) span { 
    background-image: url(img/slide04.jpg);
    -webkit-animation-delay: 18s;
    animation-delay: 18s; 
}
    .cb-slideshow li:nth-child(5) span { 
    background-image: url(img/slide05.jpg);
    -webkit-animation-delay: 24s;
    animation-delay: 24s; 
}
    .cb-slideshow li:nth-child(6) span { 
    background-image: url(img/slide06.jpg);
    -webkit-animation-delay: 30s;
    animation-delay: 30s; 
}

    .cb-slideshow li:nth-child(2) div { 
    -webkit-animation-delay: 6s; 
    animation-delay: 6s; 
}
    .cb-slideshow li:nth-child(3) div { 
    -webkit-animation-delay: 12s; 
    animation-delay: 12s; 
}
    .cb-slideshow li:nth-child(4) div { 
    -webkit-animation-delay: 18s; 
    animation-delay: 18s; 
}
    .cb-slideshow li:nth-child(5) div { 
    -webkit-animation-delay: 24s; 
    animation-delay: 24s; 
}
    .cb-slideshow li:nth-child(6) div { 
    -webkit-animation-delay: 30s; 
    animation-delay: 30s; 
}


    
@-webkit-keyframes imageAnimation { 
    0% { opacity: 0; -webkit-animation-timing-function: ease-in; animation-timing-function: ease-in; }
    8% { opacity: 1; -webkit-animation-timing-function: ease-out; animation-timing-function: ease-out; }
    17% { opacity: 1 }
    25% { opacity: 0 }
    100% { opacity: 0 }
}


    
@keyframes imageAnimation { 
    0% { opacity: 0; -webkit-animation-timing-function: ease-in; animation-timing-function: ease-in; }
    8% { opacity: 1; -webkit-animation-timing-function: ease-out; animation-timing-function: ease-out; }
    17% { opacity: 1 }
    25% { opacity: 0 }
    100% { opacity: 0 }
}


.no-cssanimations .cb-slideshow li span{
	opacity: 1;
}

/* ----------------------------------------------- */

/* ----------------------------------------------- */
/* HERO TEXT */

.hero-text-box {
    display: block;
    padding: 40px 40px;
    background-color:rgba(30, 60, 84, 0.9);
    color: #fff;
    font-size: 112%;
    position:absolute;
    width: 50%;
    max-width: 795px;
    min-width: 500px;
    top: 89%;
    left: 88%;  
    -webkit-transform: translate(-89%, -88%);
    transform: translate(-89%, -88%);
}


.mobile-text-box {
    display: none;
    padding: 17px 20px 35px 20px;
    background-image: -webkit-gradient(linear,left top, left bottom,from(rgba(30, 60, 84, 0.9)),to(rgba(30, 60, 84, 1)));
    background-image: linear-gradient(rgba(30, 60, 84, 0.9),rgba(30, 60, 84, 1));
    color: #fff;
    font-size: 108%;
    width: 100%;  
    margin-top: -68px;
    z-index: 800; 
    position:relative;

    
}


/* ----------------------------------------------- */

/* --------------------------------------------------------------------------------------------------------------------------------------------- */



/* ----------------------------------------------- */
/* HIGHLIGHTS */

.section-highlights {
    margin: 150px 0 0 0;
    background:  -webkit-gradient(linear, left top, left bottom, color-stop(40%, #fff), color-stop(40%, #dadada));
    background:  linear-gradient(180deg, #fff 40%, #dadada 40%);
    padding-bottom: 63px;
}


.highlight-box { 
    max-width: 412px;   
    height: 260px;   
    color: #fff;
    line-height: 115%;
    position: relative;  
    margin:auto;
    box-shadow: 0 1px 16px #adadad;

}


.highlight-type{  
    position: absolute;
    z-index: 12;
    background-color:rgba(30, 60, 84, 0.9);
    padding:10px;
    font-weight: 500;
}

.highlight-info{  
    font-size: 81.25%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 11;
    background-color: rgba(0, 0, 0, 0.7);
    padding:4px 10px 6px 10px;
    min-height: 64px;
    width: 100%;

}


.highlight-photo {
    width: 100%;
    height: 260px;   
    margin: 0;
    overflow: hidden;
    background-color: #f2e7b8;
    z-index: 10;

}


.highlight-photo img {
       
    cursor: default;

    opacity: 1;
    width: auto; 
    height: 100%;
    -webkit-transform: scale(1.03);
    -ms-transform: scale(1.03);
    transform: scale(1.03);
    -webkit-transition: -webkit-transform 0.5s, opacity 0.5s;
    transition: transform 0.5s, opacity 0.5s;

}


.highlight-photo img:hover {
    opacity: 0.7;
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
}


/* ----------------------------------------------- */



/* ----------------------------------------------- */
/* HISTORY */

.section-history {
    color: #fff;
    background-image: url(../img/history.jpg);
    background-size: cover;
    background-position: center;
    height: 100%;
    padding: 100px 0px 140px 0px;
}



.no-touch .section-history {
     background-attachment: fixed;
}
.touch .section-history {
  background-attachment: scroll;
}

/* ----------------------------------------------- */



/* ----------------------------------------------- */
/* ACTIVITY */

.section-activity {
    
    background-image: url(../img/activity.png);
    background-position:left;
    background-repeat: no-repeat;
    height: 100%;
    padding: 100px 0px 140px 0px;
}

.section-activity h2 {
    color: #1e3c54;
      text-shadow:
   -3px -1px 0 #fff,  
    3px -1px 0 #fff,
   -3px  2px 0 #fff,
    2px  2px 0 #fff;
}

.section-activity .svg_icon {
}

.activity-copy{
    padding: 30px;
    background-color: rgba(246, 246, 246, 0.83)
}


.text-box {
    display: table-cell;
    vertical-align: bottom;
    
}

.row-bottom {    
    position: relative;
}

.blueprints-box img {
    width: 100%;
    
}

.blueprints-box {
    position: absolute;
    bottom: 0;
    right: 0;

}
 
/* ----------------------------------------------- */



/* ----------------------------------------------- */
/* INDUSTRIAL */

.section-industrial {
    
    background-image: -webkit-gradient(linear,left top, left bottom,from(rgba(30, 60, 84, 1)),to(rgba(25, 68, 95, 1)));
    background-image: linear-gradient(rgba(30, 60, 84, 1),rgba(25, 68, 95, 1));
    padding: 100px 0px 110px 0px;
       
}



.section-industrial h2 {
    color: #fff;
}

.project-box { 
    margin: 0 auto;
    max-width: 298px;
    min-width: 298px;
    height: 298px;   
    color: #fff;
    line-height: 115%;
    position: relative;
    box-shadow: 0 1px 8px #292929;

}


.project-type{  
    position: absolute;
    z-index: 15;
    background-color:rgba(30, 60, 84, 0.9);
    padding:10px;
    font-weight: 400;
}

.project-info{  
    font-size: 81.25%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 14;
    background-color: rgba(0, 0, 0, 0.7);
    padding:4px 10px 6px 10px;
    min-height: 64px;
    width: 100%;

}


.project-photo {
    width: 298px;
    height: 298px;   
    margin: 0;
    overflow: hidden;
    background-color: #f2e7b8;
    z-index: 13;
}


.project-photo img {
       
    cursor: default;

    opacity: 1;
    width: auto; 
    height: 100%;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    -webkit-transition: -webkit-transform 0.5s, opacity 0.5s;
    transition: transform 0.5s, opacity 0.5s;

}


.project-photo img:hover {
    opacity: 0.7;
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
}


/* ----------------------------------------------- */


/* ----------------------------------------------- */
/* CONTACT */

.section-contact {
    
    height: 100%;
    padding: 100px 0px 140px 0px;
}

.section-contact h2 {
    color: #1e3c54;
}



.map-box {
    padding: 0 0 0 2.8%;
    
}

.map-box iframe {
    margin: 20px 0px 20px 0px;
}


.map-box div {
    display: inline;
    float:left;
}

.map-box div:nth-child(2n+1){
    clear:left;
}

.map-box a:link,
.map-box a:visited
 {
    text-decoration: none;
    color: #605d5c;
    font-weight: 500;
    -webkit-transition: color 0.4s;
    transition: color 0.4s;
}

.map-box a:hover,
.map-box a:active {
    color: #287295;

}


.button-align {
    text-align: right;
}

.form-box {
    padding: 0 2.8% 0 0;
}

.form-box label {
    font-weight: 500;
    color: #1e3c54;
}

.form-box .row{
    padding-bottom: 13px;
}

form p {
    margin-bottom: 20px;
}

.disclaimer {
    font-size: 87.5%;
    text-align: right;
    margin-top: 10px;
    line-height: 120%;
}



input[type=text],
input[type=email],
input[type=tel],
textarea {
    width: 100%;
    padding: 7px;
    border-radius: 0px;
    border: 1px solid #c5c5c5;
}

textarea {
    height: 235px;
}



*:focus {outline: none;}


.btn-gray:link,
.btn-gray:visited {
    display: inline-block;
    padding: 6px 18px;
    text-decoration: none;
    border-radius: 200px;
    background-color: #a09f9f;
    border: 1px solid #a09f9f;
    color: #fff;
    -webkit-transition: background-color 0.4s, border 0.4s;
    transition: background-color 0.4s, border 0.4s;
}


.btn-gray:hover,
.btn-gray:active {
     background-color: #cccccc;
     border: 1px solid #cccccc;
}


.form-success img {
    width: 70px;
    margin-bottom: 5px;
}


.form-success {
    height:590px;
}

.form-success div {
    padding: 245px 0px;
    text-align: center;

}



input[type=reset] {
    font-weight: 500;
    display: inline-block;
    padding: 8px 15px;
    text-decoration: none;
    border-radius: 200px;
    background-color: #a09f9f;
    border: 1px solid #a09f9f;
    color: #fff;
    -webkit-transition: background-color 0.4s, border 0.4s;
    transition: background-color 0.4s, border 0.4s;
}


input[type=reset]:hover,
input[type=reset]:active {
     background-color: #cccccc;
     border: 1px solid #cccccc;
}



input[type=submit] {
    font-weight: 500;
    display: inline-block;
    padding: 8px 15px;
    text-decoration: none;
    border-radius: 200px;
    margin-left: 5px;
    background-color: #1e3c54;
    border: 1px solid #1e3c54;
    color: #fff;
    -webkit-transition: background-color 0.4s, border 0.4s, color 0.4s;
    transition: background-color 0.4s, border 0.4s, color 0.4s;
}



input[type=submit]:hover,
input[type=submit]:active {
    background-color: #287295;
     border: 1px solid #287295;
}







 
/* ----------------------------------------------- */




/* ----------------------------------------------- */
/* FOOTER */


footer {
    
    color: #fff;
    font-size: 87.5%;
    background-image: url(img/graphpaper.png), -webkit-linear-gradient(#0c1821, #1e3c54);
    background-image: url(img/graphpaper.png), linear-gradient(#0c1821, #1e3c54);
    background-position: center;
    height: 250px;

}





.footer-nav {
    clear:both;
    list-style: none;
    float: right;
    margin-bottom: 37px;
}



.footer-nav li
 {
    display: inline-block;
    margin-right: 15px;
}

.footer-nav li:nth-child(3){
        margin-right: 13px;
}
.footer-nav li:nth-child(4){
        margin-right: 11px;
}

.footer-nav li:last-child {
    margin-right: 0px;
}

.footer-nav li a:link,
.footer-nav li a:visited{
    text-decoration: none;
    border: 0;
}



.footnav a:link,
.footnav a:visited{
    text-decoration: none;
    color: #fff;
    -webkit-transition: color 0.2s;
    transition: color 0.2s;
} 


.footnav a:hover,
.footnav a:active{
    color: #a09f9f;
} 


.footnav p {

    letter-spacing: 0.4px;
    float:right;
    clear:both;
}

.footnav {
        padding-top:92px;
}

.footcred {
    padding-top: 92px;
}

.footcred p{
line-height: 160%;
}

.footcred img{
    margin-bottom: 10px;
}

/* ----------------------------------------------- */






/* ----------------------------------------------- */
/* Animations */
/* ----------------------------------------------- */


.js--wp-0
{
    opacity: 0;
    -webkit-animation-duration: 3.5s;
    animation-duration: 3.5s;
}


.js--wp-1
{
    opacity: 0;
    -webkit-animation-duration: 1.3s;
    animation-duration: 1.3s;
}


.js--wp-2
{
    opacity: 0;
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
}


.js--wp-3
{
    opacity: 0;
    -webkit-animation-duration: 1.3s;
    animation-duration: 1.3s;
}





.js--wp-4
{
    opacity: 0;
    -webkit-animation-duration: 0.8s;
    animation-duration: 0.8s;
}

.js--wp-5
{
    opacity: 0;
    -webkit-animation-duration: 0.8s;
    animation-duration: 0.8s;
}

.js--wp-6
{
    opacity: 0;
    -webkit-animation-duration: 0.8s;
    animation-duration: 0.8s;
}


.js--wp-7
{
    opacity: 0;
    -webkit-animation-duration: 0.8s;
    animation-duration: 0.8s;
}


.js--wp-8
{
    opacity: 0;
    -webkit-animation-duration: 0.8s;
    animation-duration: 0.8s;
}



.js--wp-4t
{
    opacity: 0;
    -webkit-animation-duration: 0.8s;
    animation-duration: 0.8s;
}

.js--wp-5t
{
    opacity: 0;
    -webkit-animation-duration: 0.8s;
    animation-duration: 0.8s;
}

.js--wp-6t
{
    opacity: 0;
    -webkit-animation-duration: 0.8s;
    animation-duration: 0.8s;
}


.js--wp-7t
{
    opacity: 0;
    -webkit-animation-duration: 0.8s;
    animation-duration: 0.8s;
}


.js--wp-8t
{
    opacity: 0;
    -webkit-animation-duration: 0.8s;
    animation-duration: 0.8s;
}


.js--wp-0.animated,
.js--wp-1.animated,
.js--wp-2.animated,
.js--wp-3.animated,
.js--wp-4.animated,
.js--wp-5.animated,
.js--wp-6.animated,
.js--wp-7.animated,
.js--wp-8.animated,
.js--wp-4t.animated,
.js--wp-5t.animated,
.js--wp-6t.animated,
.js--wp-7t.animated,
.js--wp-8t.animated{
    opacity: 1;
}





