html,
body {
    height: 100%;
}

#wrap {
    min-height: 100%;
    height: auto;
    margin: 0 auto -100px;
    padding: 0 0 100px;
}

#footer {
    height: 100px;
}

.navbar-brand {
    width: 260px;
}

.navbar-brand img {
    width: 100%;
}

.logo {
    margin: 0;
}

.navbar {
    margin-bottom: 0;
}

.navbar-default {
    background-color: #fff;
    border: none;
}

.navbar-toggle {
    margin-top: 15px;
}

body {
    color: #03476e;
    font-family: "Montserrat", sans-serif;
    font-size: 15px;
    font-weight: 200;
}

h1,
h2,
h3,
h4,
.navbar-default .navbar-nav>li>a {
    text-transform: uppercase;
}

.projects h3 {
    text-transform: none;
}

.home h1 {
    font-size: 28px;
    font-weight: 200;
    letter-spacing: 2px;
    color: #fff;
    text-shadow: 1px 1px 1px #555;
}

.co-attributes h2 {
    margin-top: 15px;
    font-size: 24px;
    font-weight: 700;
}

.types h3 {
    margin-top: 15px;
    margin-bottom: 15px;
    font-size: 36px;
    font-weight: 300;
    letter-spacing: 2px;
}

.internal-links h3 {
    margin: 10px;
    font-size: 20px;
    font-weight: 600;
    text-transform: uppercase;
}

h4 {
    margin-top: 20px;
    font-weight: 600;
}

.chevron {
    display: block;
    float: right;
}

.bullet {
    font-size: 32px;
}

a {
    color: #03476e;
}

.co-attributes a {
    font-weight: 700;
}

.contact a {
    display: inline-block;
    margin-bottom: 10px;
    color: #fff;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.navbar-default .navbar-nav>li>a {
    color: #0d406c;
}

.dk-blue-bckg {
    color: #fff;
}

.dk-blue-bckg h2 {
    color: #0091d1;
}

.dk-blue-bckg h3 {
    color: #fff;
}

.projects .dk-blue-bckg h2,
.projects .dk-blue-bckg h3 {
    color: #fff;
}

.lt-blue-bckg p {
    color: #fff;
}

.grey-bckg h2,
.grey-bckg h3,
.grey-bckg .line,
h2.lt-blue,
.lt-blue h2,
.lt-blue h3,
ul.lt-blue li,
span.lt-blue {
    color: #0091d1;
}

span.lt-blue {
    font-weight: 600;
}

.team {
    background: #e7e7e7;
}

.team .white-bckg h2,
.team .grey-bckg h2 {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 24px;
    font-weight: 600;
    color: #0091d1;
}

.team .white-bckg h3,
.team .grey-bckg h3 {
    margin-top: 0;
    font-size: 16px;
    color: #808080;
}

.team .white-bckg p,
.team .grey-bckg p {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 14px;
    color: #808080;
}

.services H4,
.services p,
.services ul {
    padding-left: 15px;
    padding-right: 15px;
}

.services p {
    padding-top: 10px;
}

.services ul {
    margin-left: 15px;
}

p.lead {
    font-size: 22px;
    padding: 30px 30px 15px;
}

.projects h2,
.projects h3 {
    margin-top: 0;
}

.projects h2 {
    font-size: 18px;
    font-weight: 300;
    margin-bottom: 6px;
}

.projects h3 {
    font-size: 14px;
    font-weight: 600;
    line-height: 1.25;
    margin-bottom: 0;
}

.fa-circle {
    font-size: 5px;
    margin: 2px 5px 5px;
    vertical-align: middle;
}

#footer {
    color: #fff;
}

a.warranty,
.contact a.warranty,
a.terms,
.contact a.terms,
.contact a.products {
    vertical-align: middle;
    margin-top: -6px;
    padding: 4px 6px;
    text-transform: uppercase;
    color: #BCBEC0;
    font-weight: 600;
    letter-spacing: 2px;
    font-size: 13px;
    border: 2px solid #BCBEC0;
}

a.warranty {
    margin-left: 10px;
}

.contact a.products {
    margin: 10px 0 8px 13px;
    font-size: 15px;
}

.contact a.warranty {
    margin: 10px 0 8px 13px;
    font-size: 15px;
    padding: 4px 9px;
}

.contact a.terms {
    margin: 10px 0 8px 13px;
    font-size: 15px;
}

a.warranty:hover,
.contact a.warranty:hover,
a.terms:hover,
.contact a.terms:hover,
a.products:hover {
    text-decoration: none;
    color: #03476e;
    border-color: #03476e;
}

.top-connect-icons {
    margin-top: 15px;
}

.top-connect-icons .fa {
    font-size: 21px;
    margin-top: 15px;
    margin-right: 10px;
    margin-left: 0px;
    padding: 5px 6px 6px;
    background: #ddd;
    color: #fff;
    border-radius: 3px;
}

.top-connect-icons .fa-facebook {
    padding: 5px 8px 0;
    font-size: 26px;
    vertical-align: bottom;
}

.social .fa {
    font-size: 24px;
    background: #ddd;
    color: #004c72;
    padding: 4px 5px;
    margin-right: 5px;
    vertical-align: bottom;
    border-radius: 2px;
}

.social .fa-facebook {
    padding: 6px 4px 0 10px;
    font-size: 26px;
}

.top-connect-icons .fa:hover,
.social .fa:hover {
    background: #808080;
}

body {
    background: #f4f4f4;
}

.section-header.home-banner {
    background: url(../images/Home-Banner-sm.jpg) no-repeat;
    background-size: cover;
}

.section-header.about-banner {
    background: url(../images/About-Us-Banner-sm.jpg) no-repeat;
    background-size: cover;
}

.section-header.team-banner {
    background: url(../images/Our-Team-Banner-sm-2.jpg) no-repeat;
    background-size: cover;
}

.section-header.services-banner {
    background: url(../images/Services-Banner-sm.jpg) no-repeat;
    background-size: cover;
}

.section-header.projects-banner {
    background: url(../images/Project-Banner-sm.jpg) no-repeat;
    background-size: cover;
}

.section-header.contact-banner {
    background: url(../images/Contact-Banner-sm.jpg) no-repeat;
    background-size: cover;
}

.section-header .content {
    margin: 150px auto 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.content-body .container {
    background: #fff;
}

.co-attributes,
.types {
    text-align: center;
    margin-bottom: 30px;
}

.services h3 {
    text-align: center;
}

.co-attributes img {
    margin: 36px auto 0px;
    width: 84px;
    height: auto;
}

.expertise {
    margin-bottom: 30px;
}

.services,
.contact {
    text-align: left;
}

.contact p,
.contact img {
    padding-left: 15px;
    padding-right: 15px;
}

.full {
    padding: 0;
}

.dk-blue-bckg,
.lt-blue-bckg,
.grey-bckg,
.white-bckg {
    padding: 10px;
}

.white-bckg {
    background: #fff;
}

.dk-blue-bckg {
    background: #004c72;
}

.lt-blue-bckg {
    background: #0091d1;
}

.grey-bckg {
    background: #e7e7e7;
}

.line {
    display: block;
    border-width: 1px;
    border-style: solid;
}

.short-line {
    width: 40px;
    margin-bottom: 10px;
    display: block;
    border-width: 1px;
    border-style: solid;
}

.dk-blue-bckg .line {
    color: #fff;
}

.grey-bckg .short-line {
    color: #0091d1;
}

.overlay-holder {
    position: relative;
    width: 100%;
}

.overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    width: 100%;
    opacity: 0;
    filter: alpha(opacity=0);
    transition: .5s ease;
    background-color: #004c72;
}

.overlay-holder:hover .overlay,
.overlay-holder:active .overlay {
    opacity: 0.8;
    filter: alpha(opacity=80);
    cursor: pointer;
}

.project-title {
    color: #03476e;
    position: absolute;
    width: 80%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: left;
    -ms-transform: translate(-50%, -50%);
}

.project-title p {
    font-size: 14px;
    line-height: 1.25;
    color: #fff;
    margin-bottom: 0;
}

.text {
    color: white;
    font-size: 14px;
    position: absolute;
    overflow: hidden;
    top: 50%;
    left: 40%;
    transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

#footer-suppliers {
    background: #e6e7e8;
}

#footer-bottom {
    padding: 15px 0;
    background: #004c72;
    background: rgba(0, 76, 114, 1);
    background: -moz-linear-gradient(left, rgba(0, 76, 114, 1) 0%, rgba(0, 146, 208, 1) 100%);
    background: -webkit-gradient(left top, right top, color-stop(0%, rgba(0, 76, 114, 1)), color-stop(100%, rgba(0, 146, 208, 1)));
    background: -webkit-linear-gradient(left, rgba(0, 76, 114, 1) 0%, rgba(0, 146, 208, 1) 100%);
    background: -o-linear-gradient(left, rgba(0, 76, 114, 1) 0%, rgba(0, 146, 208, 1) 100%);
    background: -ms-linear-gradient(left, rgba(0, 76, 114, 1) 0%, rgba(0, 146, 208, 1) 100%);
    background: linear-gradient(to right, rgba(0, 76, 114, 1) 0%, rgba(0, 146, 208, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#004c72', endColorstr='#0092d0', GradientType=1);
}

#footer-bottom img {
    height: 32px;
    display: inline-block;
}

.link1,
.link2,
.link3,
.link4,
.link5,
.link6 {
    font-weight: 700;
}

.link1:hover,
.link2:hover,
.link3:hover,
.link4:hover,
.link5:hover,
.link6:hover {
    cursor: pointer;
}

label {
    margin-top: 15px;
}

.warranty .h4 {
    color: #0091D0;
}

.help-block {
    margin-bottom: 0;
}

.request {
    background: #03476e;
    color: #fff;
}

.error,
.errors {
    color: red;
}

.success {
    color: green;
}

.hs-form .dk-blue-bckg .hs-form-field label {
    color: #fff !important;
}

.field.hs-form-field label {
    color: #fff !important;
    font-family: "Montserrat", sans-serif !important;
}

.hubspot-link__container.sproket {
    display: none !important;
}

iframe#hs-form-iframe-0 {
    margin-left: 0;
}

@media (min-width:480px) {
    .internal-links h3 {
        font-size: 32px;
    }

    .section-header .content {
        margin: 100px auto 0;
    }

    .neg-margin br {
        display: none;
    }

    .top-connect-icons .fa {
        font-size: 21px;
        margin-top: 0;
        margin-right: 0;
        margin-left: 12px;
    }
}

@media (min-width:480px) and (max-width:991px) {
    .col-sm-6 {
        width: 50%;
        float: left;
    }

    .projects .grey-bckg,
    .projects .dk-blue-bckg,
    .projects .lt-blue-bckg {
        min-height: 110px;
    }
}


@media (min-width:768px) {
    .top-connect-icons {
        text-align: right;
    }

    .neg-margin {
        padding-right: 0;
        margin-right: -10px;
    }

    .top-connect-icons {
        text-align: right;
    }

    .navbar-brand {
        width: 320px;
    }

    .section-header.home-banner {
        background: url(../images/Home-Banner-med.jpg) no-repeat;
        background-size: cover;
    }

    .section-header.about-banner {
        background: url(../images/About-Us-Banner-med.jpg) no-repeat;
        background-size: cover;
    }

    .section-header.team-banner {
        background: url(../images/Our-Team-Banner-med-2.jpg) no-repeat;
        background-size: cover;
    }

    .section-header.services-banner {
        background: url(../images/Services-Banner-med.jpg) no-repeat;
        background-size: cover;
    }

    .section-header.projects-banner {
        background: url(../images/Project-Banner-med.jpg) no-repeat;
        background-size: cover;
    }

    .section-header.contact-banner {
        background: url(../images/Contact-Banner-med.jpg) no-repeat;
        background-size: cover;
    }

    .navbar-right {
        margin: 10px -34px 10px 0;
    }

    .horizontal-divider {
        padding-left: 15px;
        color: #0d406c;
    }

    .navbar-nav>li {
        margin-left: 6px;
    }

    .nav>li>a {
        font-size: 14px;
        padding: 2px 8px;
    }

    .navbar-nav>li.current>a {
        font-weight: 700;
    }

    .navbar-nav>li>a:hover,
    .navbar-nav>li>a:focus,
    .navbar-nav>li.current>a {
        border-bottom: 2px solid #0091d1;
    }

    #footer {
        height: 42px;
    }

    #footer-bottom {
        padding: 10px 0;
    }

    #footer-bottom img {
        margin-top: 5px;
    }

    .contact-social {
        margin: 0;
        text-align: right;
    }

    .contact {
        padding-right: 0;
    }

    .contact a {
        padding: 15px 0 5px;
    }

    .social {
        margin-left: 20px;
    }

    .social .fa {
        vertical-align: middle;
    }

    .bar {
        margin: 0 10px;
    }

    .social .fa {
        color: #0091d0;
    }

    .dk-blue-bckg,
    .lt-blue-bckg,
    .grey-bckg,
    .white-bckg {
        padding: 20px;
    }

    .about .dk-blue-bckg,
    .about .lt-blue-bckg,
    .about .grey-bckg,
    .about .white-bckg {
        padding: 20px 40px 29px;
    }

    #footer-suppliers img {
        margin: 0 auto;
    }
}

@media (min-width:992px) {
    .navbar-brand {
        width: 450px;
        margin-top: -40px;
    }

    .section .parallax {
        height: 400px;
        min-height: 400px;
        overflow: hidden;
    }

    .projects .grey-bckg,
    .projects .dk-blue-bckg,
    .projects .lt-blue-bckg {
        min-height: 148px;
    }

    .row.about {
        background: #f4f4f4 url(../images/about-image-2.jpg) no-repeat 99.9% 100%;
    }
}

@media (min-width:1200px) {
    .container {
        width: 970px;
    }

    .section-header .content {
        margin: 100px auto 0;
    }

    .banner-logo {
        margin-top: -50px;
    }

    .home h1 {
        margin-left: -30px;
        font-size: 36px;
    }

    .section-header.home-banner {
        background: url(../images/Home-Banner.jpg) no-repeat;
        background-size: cover;
    }

    .section-header.about-banner {
        background: url(../images/About-Us-Banner.jpg) no-repeat;
        background-size: cover;
    }

    .section-header.team-banner {
        background: url(../images/Our-Team-Banner-2.jpg) no-repeat;
        background-size: cover;
    }

    .section-header.services-banner {
        background: url(../images/Services-Banner.jpg) no-repeat;
        background-size: cover;
    }

    .section-header.projects-banner {
        background: url(../images/Project-Banner.jpg) no-repeat;
        background-size: cover;
    }

    .section-header.contact-banner {
        background: url(../images/Contact-Banner.jpg) no-repeat;
        background-size: cover;
    }
}