html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; }
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
body, input, button { line-height: 1; }
body { background:#FFF; text-rendering: geometricPrecision; font-family: 'Quicksand', sans-serif; overflow-x: hidden; }
ol, ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
table { border-collapse: collapse; border-spacing: 0; }
a:link, a:visited, a:hover, a:active { text-decoration:none; }
a {-webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -ms-transition: all 0.2s ease; -o-transition: all 0.2s ease; transition: all 0.2s ease;}
::-moz-selection { color: #FFF; background:#424243; }
::selection { color:#FFF; background:#424243; }
.container { max-width:1300px; width:100%; margin:0 auto; }
.hiddenFields { display:none; }

/*-- Responsive Grid --*/
* { -webkit-box-sizing: border-box;-moz-box-sizing: border-box; box-sizing:border-box; }
.container { height:100%; margin: 0 auto; clear:both; padding:0 20px; }
.container:after,.row:after, .col:after, .clr:after, .group:after { content: ""; display: table; clear: both; }								  
.col { display: block;float: left;width: 100%;}
@media (min-width : 768px) {.gutters .col { margin-left: 2%;} .gutters .col:first-child { margin-left: 0; }}
@media (min-width : 768px) {.span_1{width:8.33333333333%}.span_2{width:16.6666666667%}.span_3{width:25%}.span_4{width:33.3333333333%}.span_5{width:41.6666666667%}.span_6{width:50%}.span_7{width:58.3333333333%}.span_8{width:66.6666666667%}.span_9{width:75%}.span_10{width:83.3333333333%}.span_11{width:91.6666666667%}.span_12{width:100%}.gutters .span_1{width:6.5%}.gutters .span_2{width:15%}.gutters .span_3{width:23.5%}.gutters .span_4{width:32%}.gutters .span_5{width:40.5%}.gutters .span_6{width:49%}.gutters .span_7{width:57.5%}.gutters .span_8{width:66%}.gutters .span_9{width:74.5%}.gutters .span_10{width:83%}.gutters .span_11{width:91.5%}.gutters .span_12{width:100%}}

/*-- Message Success --*/
.callout.success { width:100%; padding: 35px 0; text-align: center; background:#80c5c7; float: left; z-index: 999999; position: relative; }
.callout.success h1 { color:#FFF; font-size: 1.2em; margin: 0; padding: 0; }

/*-- Header --*/
.header-wrap { background-color: transparent; position: fixed; width: 100%; z-index: 999; height: auto; -webkit-transition: all 0.5s ease; -o-transition: all 0.5s ease; transition: all 0.5s ease; }
.header-wrap .logo { opacity:0; float:left; margin: 20px 0; background: url("../images/logo-wide.png") no-repeat; background-size: 100%; text-indent: -999999px; }
.header-wrap nav { position: relative; float: right; margin: 20px 0; width: 100%; }
.header-wrap nav ul li { display: flex; align-items: center; justify-content: left; font-size: 18px; text-transform: uppercase; font-weight: 600; margin: 0; }
.header-wrap nav ul li:last-child { margin-right:0; } 
.header-wrap nav ul li a:link { color:#FFF; text-decoration: none; }
.header-wrap nav ul li a:visited { color:#FFF; }
.header-wrap nav ul li a:hover { color:#80c5c7; }
.header-wrap nav ul li a:active { color:#80c5c7; }
.header-wrap .navbar-dark ul li .btn { background-color:#80c5c7; border-radius: 100px; padding: 15px 35px !important; color:#FFF; font-size: 16px; text-transform: uppercase; font-weight: 600; display: inline-block; line-height: 20px; margin: 0; outline: none; }
.header-wrap nav ul li .btn:hover { background-color:#44797b; color:#FFF; }
.header-wrap nav ul li .btn.focus, .header-wrap nav ul li .btn:focus { box-shadow: none; }
.header-wrap .navbar-dark .navbar-toggler { display:none; }
.header-wrap .navbar-toggler { float:right; outline: none; }
.header-wrap .navbar-expand-lg .navbar-nav .nav-link { padding-right:60px; }

.header-wrap.smaller { background-color: rgba(0,0,0,0.95); transition: top 0.2s ease-in-out; }
.header-wrap.smaller nav { margin:0; }
.header-wrap.smaller .logo { width: 260px; height: 50px; position: relative; float:left; display:block; margin: 20px 0; background: url("../images/logo-wide.png") no-repeat; background-size: 100%; text-indent: -999999px; opacity:1; }


/*-- Main --*/
.main { width:100%; height: 100vh; min-height: 800px; float:left; background: #000; position: relative; overflow: hidden; }
.main.sub { min-height: 320px; max-height: 320px;  }
.main .container { max-width:1300px; }
.main:before { content: ''; background: rgba(0, 0, 0, .3); position: absolute; left: 0; right: 0; bottom: 0; top: 0; z-index: 2;}
.main img.banner { object-fit:cover; width:100vw; height: 100%; object-position: center; position: absolute; z-index: 1; }
.main img.banner { animation: kenburns 40s; animation-fill-mode: forwards; animation-direction:reverse;}
@keyframes fadeInAnimation { 
    0% { opacity: 0; } 
    100% { opacity: 1; } 
} 
/*-- Ken Burns Animation --*/
@keyframes kenburns {
    0% { transform: scale3d(1.2, 1.2, 1.2) translate3d(0, 0, 0px); animation-timing-function: ease-in; opacity: 1; }
    100% { transform: scale3d(1, 1, 1) translate3d(0, 0, 0px); opacity: 1; }
}
.main .text { max-width: 500px; position: relative; top: 50%; -ms-transform: translateY(-50%);  transform: translateY(-50%); z-index: 3;; }
.main .text img.logo { display: block; max-width:205px; width:100%; margin: 0 0 50px 0; }
.main .text h1 { font-size: 40px; line-height: 44px; font-weight: 300; letter-spacing: -1px; margin-bottom: 20px; color:#FFF; }
.main .text p { font-size: 20px; line-height: 30px; font-weight: 300; color:#FFF; margin-bottom: 35px; }
.main .text img.brand { display: inline-block; max-height: 41px; margin: 0 20px 0 0; -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -ms-transition: all 0.2s ease; -o-transition: all 0.2s ease; transition: all 0.2s ease; }
.main .text img.brand:hover { opacity: .8; -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -ms-transition: all 0.2s ease; -o-transition: all 0.2s ease; transition: all 0.2s ease; }
a:link { color:#80c5c7; text-decoration: underline; font-weight: 600; }
a:visited { color:#80c5c7; }
a:hover { color:#44797b; }
a:active { color:#80c5c7; }

/* -- Introduction --*/
.introduction { width:100%; float:left; background:#44797b; padding: 115px 0 200px 0; text-align: center; color:#FFF; }
.introduction .container { max-width:1000px; }
.introduction h1 { font-size:40px; line-height: 44px; font-weight: 300; margin: 0 0 35px 0; } 
.introduction p { font-size:20px; line-height: 30px; font-weight: 300; } 

/*-- Sections --*/
.section { width:100%; float:left; padding: 150px 0; overflow: hidden; }
.section .container { max-width:1200px; }
.section.works { display: block; padding: 70px 0 0 0; overflow: visible; }
.section.works:before { content:''; width:100%; height: 70px; max-width: 1200px; margin: 0 auto; background:#FFF; bottom:140px; border-top-left-radius: 30px; border-top-right-radius: 30px; position: relative; display: block; }
.section.works .container { max-width:1200px; padding: 0; position: relative; background:#FFF; }
.section .title { font-size:40px; line-height: 44px; text-transform: uppercase; font-weight: 300; text-align:center; margin-bottom: 115px; color:#4e4e4e; }
.section .title:after { content:''; display: block; max-width: 80px; margin: 0 auto; border-bottom: 3px solid #80c5c7; margin-top: 20px; }
.section .intro { text-align: center; max-width:920px; margin: 0 auto 150px auto; }
.section.works .intro { max-width:640px; }
.section .intro h1 { font-size:40px; line-height: 44px; font-weight: 300; color:#44797b; margin-bottom: 20px; }
.section .intro p { font-size:24px; line-height: 34px; font-weight: 300; color: #4e4e4e; }
.section .grid { display: inline-flex; gap: 30px; }
.section .block { text-align: center; border-radius: 30px; box-shadow: 0 0 30px #f6f8f8; padding: 100px 60px; }
.section .block h1 { font-size:30px; line-height: 34px; font-weight: 300; color:#44797b; margin-bottom: 20px; }
.section .block p { font-size:20px; line-height: 30px; font-weight: 300; color: #4e4e4e; }
.section .block a:link { color:#80c5c7; text-decoration: underline; font-weight: 600; }
.section .block a:visited { color:#80c5c7; }
.section .block a:hover { color:#44797b; }
.section .block a:active { color:#80c5c7; }
.section .grid .block:nth-child(2) { box-shadow: none; background:#f6f8f8; }
.section .grid.icons { width:100%; flex-wrap: wrap; gap:0;  }
.section .grid.icons .block { max-width:50%; flex: 0 1 50%; flex-grow: 0; flex-shrink: 0; flex-basis: 50%; border-radius: 0; box-shadow: none; padding: 40px; margin: 20px 0; }
.section .grid.icons .block img { height: 130px; display: block; margin: 0 auto 50px auto; }
.section .grid.icons .block:nth-child(2) { background:none; }

/*-- Section Info --*/
.section.info { padding: 0; position: relative;}
.section.info .block { text-align: left; border-radius:0; box-shadow: none; margin: 40px 0; padding: 0; width: 100%; float: left; position: relative; }
.section.info .block .text { max-width:50%; width:100%; top: 50%; transform: translateY(-50%); position: absolute; z-index: 2; padding: 100px; }
.section.info .block .text .center { padding: 70px; }
.section.info .block .text h1 { font-weight:300; font-size:30px; line-height: 34px; color:#44797b; }
.section.info .block .text p { font-weight:300; font-size:20px; line-height: 30px; color: #4e4e4e; padding: 10px 0; }
.section.info .block .image { max-width:50%; width:100%; float:right; position: relative; max-height: 350px; min-height: 350px; height: auto; overflow: hidden; border-radius: 30px; right:-30px;}
.section.info .block .image img { width:100%; max-height: 480px; height: 100vh; object-fit: cover; vertical-align: baseline; display: block; object-position: bottom; }
.section.info .block.even .image { float:left; left:-30px; }
.section.info .block.even .text { right:0; }

/*-- Section Download --*/
.download { width:100%; float:left; background:#44797b; padding: 150px 0; text-align: center; color:#FFF; }
.download .container { max-width:935px; }
.download h1 { font-size:40px; line-height: 44px; font-weight: 300; margin: 0 0 35px 0; } 
.download p { font-size:20px; line-height: 30px; font-weight: 300; margin-bottom: 40px; } 
.download img.brand { display: inline-block; max-height: 41px; margin: 0 20px 0 0; -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -ms-transition: all 0.2s ease; -o-transition: all 0.2s ease; transition: all 0.2s ease; }
.download img.brand:hover { opacity: .8; -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -ms-transition: all 0.2s ease; -o-transition: all 0.2s ease; transition: all 0.2s ease; }
.download a:link { color:#80c5c7; text-decoration: underline; font-weight: 600; }
.download a:visited { color:#80c5c7; }
.download a:hover { color:#FFF; opacity: .8; }
.download a:active { color:#80c5c7; }

/*-- Steps --*/
.steps .item { width:100%; float:left; border-bottom: 1px solid #e1e1e1; margin: 0; padding: 25px 0; }
.steps .item .number { display: inline-block; font-size: 20px; border-radius: 100px; background: #e1e1e1; width: 50px; height: 50px; text-align: center; line-height: 47px; margin-right: 20px; vertical-align: middle; }
.steps .item .text { display: inline-block; vertical-align: middle; }
.steps .item .text p { margin: 0; }
.steps .item .text img { max-width: 142px; }
.steps .end { float: left; margin: 40px 0 0 0; }

/*-- Secton Contact --*/
.section.contact { background:#f6f8f8; padding: 150px 0; position: relative;}
.section.contact .container { max-width:1200px; }
form.contact { margin:20px auto 0 auto; width: 100%; }
form.contact .row .col { max-width: 48%; width: 100%; float: left; box-sizing: border-box; margin: 0 0 15px 0; }
form.contact .row .col:last-child { margin-left: 4%; }
form.contact .row .col.full { max-width: none; }
form.contact .row .col.full:last-child { margin-left: 0; }
form.contact label, .freeform-label { float:left; width:100%; padding: 10px 0; font-weight: 300 !important; }
form.contact label { padding: 10px 0; margin: 10px 0 0 0; }
form.contact .col h1 { font-size:16px; line-height: 23px; }
form.contact .col p { font-size:16px; line-height: 23px; }
form.contact .col img { width:auto; display:block; }
form.contact input, form.contact textarea, .freeform-input { width: 100%; display: block; box-sizing: border-box; padding: 17px; outline: none; font-size: 16px; -webkit-border-radius:3px; -moz-border-radius:3px; border-radius:3px; background:#FFF; box-shadow: 0 0 10px #f1f1f1; border:none; -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -ms-transition: all 0.2s ease; -o-transition: all 0.2s ease; transition: all 0.2s ease; }
form.contact input:focus, form.contact textarea:focus { background:#FFF; }
form.contact textarea { min-height:175px; }
form.contact .btn, button[type=submit] { font-family: 'Quicksand', sans-serif; background:#80c5c7; width:auto; border:none; outline: none; border-radius:100px; padding: 15px 35px; color:#FFF; font-size: 16px; font-weight: 600; cursor: pointer; text-transform: uppercase; }
form.contact .btn:hover { background:#44797b; }
form.contact .btn.focus, form.contact .btn:focus { box-shadow: none; }

/*-- Footer --*/
footer { width:100%; float:left; background:#FFF; padding: 40px 0; }
footer p { font-size: 18px; text-align: center; color:#4e4e4e; margin: 0; }

/* Media Queries */
@media only screen and (max-width: 1255px) {
	.introduction { padding:115px 0; }
	.section.works { padding-top:150px; }
	.section.works:before { display:none; }
}

@media only screen and (max-width: 991px) {
	.header-wrap.smaller .navbar-dark .navbar-toggler { display:block; }
}

@media only screen and (max-width: 768px) {
.section.works .intro { padding:0 20px; }
.section.info .block .text { max-width: none; width: 100%; top: 0; transform: none; position: relative; z-index: 2; padding: 20px; }
.section.info .block .image { max-width:none; }
.section .grid { display:block; padding: 0 20px; }
	.section .grid.icons .block { max-width:none; }

}
@media only screen and (max-width: 640px) { 
	.header-wrap.smaller .logo { width: 235px; height: 45px; }
	.main img.banner { object-position: 0 0; }
	.main.sub img.banner { object-position: -300px 0; }
	.main .text img.logo { max-width:185px; }
	.introduction { padding:115px 0; }
	.introduction h1 { font-size:34px; line-height: 40px; }
	.introduction p { font-size:18px; line-height: 28px; }
	.section.works { padding-top:150px; }
	.section.works:before { display:none; }
	.main .text h1 { font-size:34px; line-height: 40px; }
	.main .text p { font-size:18px; line-height: 28px; }
	.section .title { font-size:34px; line-height: 40px; }
	.section .intro h1 { font-size:34px; line-height: 40px; }
	.section .intro p { font-size:18px; line-height: 28px; }
	.section .block { padding: 50px 30px; margin: 20px 0; }
	.section .block p { font-size:18px; line-height: 28px; }
	.section.info .block .text p { font-size:18px; line-height: 28px; }
	.section .grid.icons .block { padding:0; margin: 50px 0; }
	.section .grid.icons .block:first-child { margin-top:0; }
	.section .grid.icons .block:last-child { margin-bottom:0; }
	.section .grid.icons .block img { height: 100px; }
	.download h1 { font-size:34px; line-height:40px; }
	.download p { font-size:18px; line-height: 28px; }
	form.contact .row .col { max-width:none; flex-basis: auto; }
	form.contact .row .col:last-child { margin-left:0; }
	.steps .item .number { margin: 0 auto; display: block; }
	.steps .item .text { text-align: center; display: block; float: left; width: 100%; }
	.steps .item .text p { padding: 5px 0; }
	.steps .end { text-align: center; }
}

@media only screen and (max-width: 520px) { 

}

@media only screen and (max-width: 500px) { 
	
}

@media only screen and (max-width: 320px) {
}
