.h1-header { position: absolute; width: 90%; max-width: 1170px; letter-spacing: -1px; left: 50%; top: 50%; bottom: auto; right: auto; -webkit-transform: translateX(-50%) translateY(-50%); -moz-transform: translateX(-50%) translateY(-50%); -ms-transform: translateX(-50%) translateY(-50%); -o-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); color: #406A92; text-align: center; /* @include text-shadow(1px, 3px, 0.8); */ text-transform: uppercase; clear: both; font-size: 40px; font-size: 2.5rem; }
.h1-header .small { text-transform: none; letter-spacing: 0px; margin: 20px 0; clear: both; color: #406A92; font-size: 18px; font-size: 1.125rem; line-height: 30px; }
@media (max-width: 768px) { .h1-header .small { font-size: 17px; font-size: 1.0625rem; line-height: 23px; } }
@media (max-width: 320px) { .h1-header .small { font-size: 16px; font-size: 1rem; line-height: 20px; } }
@media (max-width: 1140px) { .h1-header { font-size: 40px; font-size: 2.5rem; } }
@media (max-width: 768px) { .h1-header { font-size: 30px; font-size: 1.875rem; } }
@media (max-width: 360px) { .h1-header { font-size: 20px; font-size: 1.25rem; } }
@media (max-width: 320px) { .h1-header { font-size: 16px; font-size: 1rem; letter-spacing: 0px; } }

.button-small { padding: 10px 25px; border: 2px solid #406A92; color: #406A92; border-radius: 1px; text-transform: uppercase; font-size: 14px; font-size: 0.875rem; letter-spacing: 2px; text-align: center; margin-right: 10px; }
.button-small:hover { color: #406A92; background-color: #fff; -webkit-transition: all 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53); -moz-transition: all 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53); transition: all 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53); }

html { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

*, *:before, *:after { -webkit-box-sizing: inherit; -moz-box-sizing: inherit; box-sizing: inherit; }

*, *:after, *:before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

body { font-size: 100%; font-family: "Segoe UI"; font--webkit-font-smoothing: antialiased; color: #406A92; background-color: #fff; }
body.overflow-hidden { /* when primary navigation is visible, the content in the background won't scroll */ overflow: hidden; }

a { color: #406A92; text-decoration: none; }

.cd-container { /* this class is used to give a max-width to the element it is applied to, and center it horizontally when it reaches that max-width */ width: 90%; max-width: 1170px; margin: 0 auto; color: #0a0a0a; }
.cd-container::after { clear: both; content: ""; display: table; }

html, body { height: 100%; -webkit-font-smoothing: antialiased !important; text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.004); }

.hidden { opacity: 0; }

.visible { opacity: 1; }

.cd-header { position: absolute; top: 0; left: 0; background: #2f3b46; height: 55px; width: 100%; z-index: 3; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
@media only screen and (min-width: 768px) { .cd-header { height: 110px; background: transparent; box-shadow: none; } }
@media only screen and (min-width: 1170px) { .cd-header { -webkit-transition: background-color 0.3s; -moz-transition: background-color 0.3s; transition: background-color 0.3s; /* Force Hardware Acceleration in WebKit */ -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); -webkit-backface-visibility: hidden; backface-visibility: hidden; }
  .cd-header.is-fixed { /* when the user scrolls down, we hide the header right above the viewport */ position: fixed; top: -110px; background-color: #2f3b46; -webkit-transition: -webkit-transform 0.8s; -moz-transition: -moz-transform 0.8s; transition: transform 0.8s; }
  .cd-header.is-visible { /* if the user changes the scrolling direction, we show the header */ -webkit-transform: translate3d(0, 100%, 0); -moz-transform: translate3d(0, 100%, 0); -ms-transform: translate3d(0, 100%, 0); -o-transform: translate3d(0, 100%, 0); transform: translate3d(0, 100%, 0); }
  .cd-header.menu-is-open { /* add a background color to the header when the navigation is open */ background-color: rgba(2, 23, 37, 0.96); } }

.cd-logo { display: block; position: absolute; top: 50%; bottom: auto; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -o-transform: translateY(-50%); transform: translateY(-50%); left: .875em; margin-top: -1px; background: url(../images/logo_s.png) no-repeat; width: 130px; height: 80px; }
@media (max-width: 768px) { .cd-logo { background: url(../images/logo_v.png) no-repeat; -o-background-size: 100% auto; -webkit-background-size: 100% auto; -moz-background-size: 100% auto; background-size: 100% auto; width: 90px; height: 45px; } }
.cd-logo images { display: block; }
@media only screen and (min-width: 768px) { .cd-logo { left: 2.6em; } }

.cd-secondary-nav { position: absolute; top: 50%; bottom: auto; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -o-transform: translateY(-50%); transform: translateY(-50%); right: 5em; /* hidden on small devices */ display: none; }
@media (max-width: 980px) { .cd-secondary-nav { right: 2em; } }
.cd-secondary-nav li { display: inline-block; margin-left: 1.0em; }
@media (max-width: 980px) { .cd-secondary-nav li { margin-left: 0.8em; } }
.cd-secondary-nav a { display: inline-block; color: #fff; text-transform: uppercase; font-size: 14px; font-size: 0.875rem; }
.cd-secondary-nav a:hover { border-bottom: 2px solid #fff; padding-bottom: 7px; }
.cd-secondary-nav .active { border-bottom: 2px solid #fff; padding-bottom: 7px; }
@media only screen and (min-width: 768px) { .cd-secondary-nav { display: block; } }

.cd-primary-nav-trigger { display: none; position: absolute; right: 0; top: 0; height: 100%; width: 0px; background-color: #06ad8c; font-size: 14px; font-size: 0.875rem; text-shadow: 1px 1px 3px black; }
@media (max-width: 767px) { .cd-primary-nav-trigger { display: block; width: 50px; } }
.cd-primary-nav-trigger .cd-menu-text { color: #fff; text-transform: uppercase; /* hide the text on small devices */ display: none; }
.cd-primary-nav-trigger .cd-menu-icon { /* this span is the central line of the menu icon */ display: inline-block; position: absolute; left: 50%; top: 50%; bottom: auto; right: auto; -webkit-transform: translateX(-50%) translateY(-50%); -moz-transform: translateX(-50%) translateY(-50%); -ms-transform: translateX(-50%) translateY(-50%); -o-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); width: 18px; height: 2px; background-color: #fff; -webkit-transition: background-color 0.3s; -moz-transition: background-color 0.3s; transition: background-color 0.3s; /* these are the upper and lower lines in the menu icon */ }
.cd-primary-nav-trigger .cd-menu-icon::before, .cd-primary-nav-trigger .cd-menu-icon:after { content: ''; width: 100%; height: 100%; position: absolute; background-color: #fff; right: 0; -webkit-transition: -webkit-transform .3s, top .3s, background-color 0s; -moz-transition: -moz-transform .3s, top .3s, background-color 0s; transition: transform .3s, top .3s, background-color 0s; }
.cd-primary-nav-trigger .cd-menu-icon::before { top: -5px; }
.cd-primary-nav-trigger .cd-menu-icon::after { top: 5px; }
.cd-primary-nav-trigger .cd-menu-icon.is-clicked { background-color: rgba(255, 255, 255, 0); }
.cd-primary-nav-trigger .cd-menu-icon.is-clicked::before, .cd-primary-nav-trigger .cd-menu-icon.is-clicked::after { background-color: white; }
.cd-primary-nav-trigger .cd-menu-icon.is-clicked::before { top: 0; -webkit-transform: rotate(135deg); -moz-transform: rotate(135deg); -ms-transform: rotate(135deg); -o-transform: rotate(135deg); transform: rotate(135deg); }
.cd-primary-nav-trigger .cd-menu-icon.is-clicked::after { top: 0; -webkit-transform: rotate(225deg); -moz-transform: rotate(225deg); -ms-transform: rotate(225deg); -o-transform: rotate(225deg); transform: rotate(225deg); }
@media only screen and (min-width: 768px) { .cd-primary-nav-trigger { width: 100px; padding-left: 1em; background-color: transparent; height: 30px; line-height: 30px; right: 2.2em; top: 50%; bottom: auto; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -o-transform: translateY(-50%); transform: translateY(-50%); }
  .cd-primary-nav-trigger .cd-menu-text { display: inline-block; }
  .cd-primary-nav-trigger .cd-menu-icon { left: auto; right: 1em; -webkit-transform: translateX(0) translateY(-50%); -moz-transform: translateX(0) translateY(-50%); -ms-transform: translateX(0) translateY(-50%); -o-transform: translateX(0) translateY(-50%); transform: translateX(0) translateY(-50%); } }

.cd-primary-nav { /* by default it's hidden - on top of the viewport */ position: fixed; left: 0; top: 0; height: 100%; width: 100%; background: rgba(47, 59, 70, 0.96); z-index: 2; text-align: center; padding: 55px 0; -webkit-backface-visibility: hidden; backface-visibility: hidden; overflow: auto; /* this fixes the buggy scrolling on webkit browsers - mobile devices only - when overflow property is applied */ -webkit-overflow-scrolling: touch; -webkit-transform: translateY(-100%); -moz-transform: translateY(-100%); -ms-transform: translateY(-100%); -o-transform: translateY(-100%); transform: translateY(-100%); -webkit-transition-property: -webkit-transform; -moz-transition-property: -moz-transform; transition-property: transform; -webkit-transition-duration: 0.4s; -moz-transition-duration: 0.4s; transition-duration: 0.4s; }
.cd-primary-nav li { font-size: 22px; font-size: 1.375rem; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; margin: .2em 0; text-transform: capitalize; }
@media (max-width: 360px) { .cd-primary-nav li { font-size: 15px; font-size: 0.9375rem; } }
.cd-primary-nav li:first-child { margin-top: 30px; }
.cd-primary-nav a { display: inline-block; padding: .4em 1em; border-radius: 0.25em; -webkit-transition: background 0.2s; -moz-transition: background 0.2s; transition: background 0.2s; }
.no-touch .cd-primary-nav a:hover { background-color: #e36767; }
.cd-primary-nav .cd-label { color: #06ad8c; text-transform: uppercase; font-size: 14px; font-size: 0.875rem; margin: 2.4em 0 .8em; }
.cd-primary-nav .cd-social { display: inline-block; margin: 0 .4em; }
.cd-primary-nav .cd-social a { width: 44px; height: 44px; padding: 0; background-image: url("../images/cd-socials.svg"); background-repeat: no-repeat; /* image replacement */ overflow: hidden; text-indent: 100%; white-space: nowrap; }
.cd-primary-nav .cd-facebook a { background-position: 0 0; }
.cd-primary-nav .cd-instagram a { background-position: -44px 0; }
.cd-primary-nav .cd-dribbble a { background-position: -88px 0; }
.cd-primary-nav .cd-twitter a { background-position: -132px 0; }
.cd-primary-nav.is-visible { -webkit-transform: translateY(0); -moz-transform: translateY(0); -ms-transform: translateY(0); -o-transform: translateY(0); transform: translateY(0); }
@media only screen and (min-width: 768px) { .cd-primary-nav.is-visible { display: none; } }
@media only screen and (min-width: 768px) { .cd-primary-nav { padding: 110px 0; } }
@media only screen and (min-width: 1170px) { .cd-primary-nav li { font-size: 30px; font-size: 1.875rem; }
  .cd-primary-nav .cd-label { font-size: 16px; font-size: 1rem; } }

.cd-intro { position: relative; height: 100%; background-color: #406A92; background: url("../images/bg.jpg") no-repeat center center; background-size: cover; z-index: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.cd-intro:before { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-image: linear-gradient(to bottom right, #ffffff, #f0f0f0); opacity: .55; }
@media (max-width: 768px) { .cd-intro:before { height: 100%; } }
.cd-intro .green { color: #06ad8c; }
.cd-intro img.logo { clear: both; position: absolute; left: 50%; top: 50%; bottom: auto; right: auto; -webkit-transform: translateX(-50%) translateY(-50%); -moz-transform: translateX(-50%) translateY(-50%); -ms-transform: translateX(-50%) translateY(-50%); -o-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); padding-bottom: 350px; max-width: 640px; }
@media (max-width: 736px) { .cd-intro img.logo { max-width: 260px; padding-bottom: 32%; } }
@media (max-width: 667px) { .cd-intro img.logo { max-width: 240px; padding-bottom: 32%; } }
@media (max-width: 568px) { .cd-intro img.logo { max-width: 200px; padding-bottom: 37%; } }
@media screen and (max-width: 480px) { .cd-intro img.logo { max-width: 200px; padding-bottom: 42%; } }
@media (max-width: 414px) { .cd-intro img.logo { max-width: 260px; padding-bottom: 60%; } }
@media (max-width: 375px) { .cd-intro img.logo { max-width: 280px; padding-bottom: 70%; } }
@media (max-width: 320px) { .cd-intro img.logo { max-width: 230px; padding-bottom: 73%; } }
.cd-intro h1 { position: absolute; width: 90%; max-width: 1170px; letter-spacing: -2px; left: 50%; top: 60%; bottom: auto; right: auto; -webkit-transform: translateX(-50%) translateY(-50%); -moz-transform: translateX(-50%) translateY(-50%); -ms-transform: translateX(-50%) translateY(-50%); -o-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); color: #406A92; text-align: center; /* @include text-shadow(1px, 3px, 0.8); */ text-transform: uppercase; clear: both; font-size: 50px; font-size: 3.125rem; }
@media (max-width: 1140px) { .cd-intro h1 { font-size: 40px; font-size: 2.5rem; } }
@media (max-width: 768px) { .cd-intro h1 { font-size: 35px; font-size: 2.1875rem; } }
@media (max-width: 736px) { .cd-intro h1 { font-size: 25px; font-size: 1.5625rem; } }
@media (max-width: 667px) { .cd-intro h1 { font-size: 22px; font-size: 1.375rem; } }
@media (max-width: 568px) { .cd-intro h1 { font-size: 22px; font-size: 1.375rem; } }
@media (max-width: 480px) { .cd-intro h1 { font-size: 20px; font-size: 1.25rem; } }
@media (max-width: 414px) { .cd-intro h1 { font-size: 22px; font-size: 1.375rem; } }
@media (max-width: 375px) { .cd-intro h1 { font-size: 18px; font-size: 1.125rem; } }
@media (max-width: 360px) { .cd-intro h1 { font-size: 18px; font-size: 1.125rem; } }
@media (max-width: 320px) { .cd-intro h1 { font-size: 18px; font-size: 1.125rem; } }
.cd-intro h1 .small { text-transform: none; letter-spacing: 0px; margin: 20px 0; clear: both; font-size: 20px; font-size: 1.25rem; letter-spacing: -1px; line-height: 30px; }
@media (max-width: 768px) { .cd-intro h1 .small { font-size: 17px; font-size: 1.0625rem; line-height: 23px; } }
@media (max-width: 736px) { .cd-intro h1 .small { margin: 5px 0; font-size: 16px; font-size: 1rem; } }
@media (max-width: 667px) { .cd-intro h1 .small { margin: 5px 0; font-size: 16px; font-size: 1rem; } }
@media screen and (max-width: 480px) { .cd-intro h1 .small { font-size: 15px; font-size: 0.9375rem; margin: 0px 0; } }
@media (max-width: 320px) { .cd-intro h1 .small { font-size: 17px; font-size: 1.0625rem; line-height: 20px; margin: 15px 0; } }
@media (max-width: 568px) { .cd-intro h1 .small { margin: 0px 0; font-size: 16px; font-size: 1rem; } }
@media (max-width: 375px) { .cd-intro h1 .small { margin: 5px 0; } }
@media (max-width: 320px) { .cd-intro h1 .small { margin: 10px 0; font-size: 15px; font-size: 0.9375rem; } }
.cd-intro .move a { border: 2px solid #406A92; padding: 15px 40px; border-radius: 1px; font-size: 15px; font-size: 0.9375rem; background: transparent; text-shadow: 0px 0px 0px rgba(0, 0, 0, 0.5); letter-spacing: 2px; }
.cd-intro .move a:hover { background: #fff; color: #283436; -webkit-transition: all 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53); -moz-transition: all 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53); transition: all 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53); }
@media (max-width: 768px) { .cd-intro .move a { font-size: 12px; font-size: 0.75rem; padding: 10px 10px; } }
@media (max-width: 768px) { .cd-intro .move { margin-top: 35px; } }
@media (max-width: 736px) { .cd-intro .move { margin-top: 23px; } }
@media (max-width: 667px) { .cd-intro .move { margin-top: 20px; } }
@media (max-width: 568px) { .cd-intro .move { margin-top: 20px; } }
@media (max-width: 375px) { .cd-intro .move { margin-top: 30px; } }
@media (max-width: 320px) { .cd-intro .move { margin-top: 25px; } }
