:root{
    --navy:#1C214D;
    --teal:#07A0C3;
    --slate: #67868E;
    --grey: #E7E7E7;    
    --red: #A3162F;
}
.bg-navy{background-color:var(--navy);}
.text-navy{color:var(--navy);}
.bg-teal{background-color:var(--teal);}
.text-teal{color:var(--teal);}
.bg-slate{background-color:var(--slate);}
.text-slate{color:var(--slate);}
.bg-grey{background-color:var(--grey);}
.text-grey{color:var(--grey);}
.bg-red{background-color:var(--red);}
.text-red{color:var(--red);}

a, a:hover{
    text-decoration: none;
    color:inherit;
    border-bottom:1px solid;
}

@font-face {
    font-family:"din-2014";
    src:url("https://use.typekit.net/af/570287/00000000000000007735afea/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3") format("woff2"),url("https://use.typekit.net/af/570287/00000000000000007735afea/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3") format("woff"),url("https://use.typekit.net/af/570287/00000000000000007735afea/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3") format("opentype");
    font-display:auto;font-style:italic;font-weight:400;font-stretch:normal;
}
    
@font-face {
    font-family:"din-2014";
    src:url("https://use.typekit.net/af/c2b6e5/00000000000000007735afee/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff2"),url("https://use.typekit.net/af/c2b6e5/00000000000000007735afee/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff"),url("https://use.typekit.net/af/c2b6e5/00000000000000007735afee/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("opentype");
    font-display:auto;font-style:normal;font-weight:400;font-stretch:normal;
}

@font-face {
    font-family:"din-2014";
    src:url("https://use.typekit.net/af/efa8e9/00000000000000007735aff4/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3") format("woff2"),url("https://use.typekit.net/af/efa8e9/00000000000000007735aff4/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3") format("woff"),url("https://use.typekit.net/af/efa8e9/00000000000000007735aff4/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3") format("opentype");
    font-display:auto;font-style:italic;font-weight:700;font-stretch:normal;
}
    
@font-face {
    font-family:"din-2014";
    src:url("https://use.typekit.net/af/1fe1ce/00000000000000007735aff6/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("woff2"),url("https://use.typekit.net/af/1fe1ce/00000000000000007735aff6/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("woff"),url("https://use.typekit.net/af/1fe1ce/00000000000000007735aff6/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("opentype");
    font-display:auto;font-style:normal;font-weight:700;font-stretch:normal;
}
    
@font-face {
    font-family:"din-2014-narrow";
    src:url("https://use.typekit.net/af/2bdaca/00000000000000007735afe5/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff2"),url("https://use.typekit.net/af/2bdaca/00000000000000007735afe5/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff"),url("https://use.typekit.net/af/2bdaca/00000000000000007735afe5/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("opentype");
    font-display:auto;font-style:normal;font-weight:400;font-stretch:normal;
}
    
@font-face {
    font-family:"din-2014-narrow";
    src:url("https://use.typekit.net/af/6be18e/00000000000000007735afeb/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("woff2"),url("https://use.typekit.net/af/6be18e/00000000000000007735afeb/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("woff"),url("https://use.typekit.net/af/6be18e/00000000000000007735afeb/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("opentype");
    font-display:auto;font-style:normal;font-weight:700;font-stretch:normal;
}
.tk-din-2014 { font-family: "din-2014",sans-serif; }
.tk-din-2014-narrow { font-family: "din-2014-narrow",sans-serif; }    
.font-400{font-weight: 400!important;}
.font-600{font-weight: 600!important;}
.font-700{font-weight: 700!important;}
body{
    font-family: "din-2014",sans-serif; 
    color:var(--navy);
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6{
    font-family: "din-2014",sans-serif; 
    font-style: normal;
    
}
.h1, h1{
    font-weight: 700;
    line-height: 116.5%; 
    text-transform: uppercase;
}
.h2, h2{
    font-weight: 700;
    line-height: 128.634%;
    text-transform: uppercase;
}
.h3, h3{
    font-family: "din-2014-narrow",sans-serif;
    font-style: normal;
    font-weight: 600;
}
p{
    font-style: normal;
    font-weight: 400;
}
.nav-link{
    font-family: "din-2014-narrow",sans-serif;
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    color:var(--slate);
    border-bottom:5px solid transparent;
    padding-top:calc(5px + .5em);
}
.nav-link:hover{
    color:var(--slate);
    border-bottom:5px solid var(--slate);
}
.navbar-top .row > div{
    padding:1rem 15px;
}
.navbar-top p{
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin-bottom: 0;
    color:var(--grey);
}
.navbar-top a{
    color:#ffffff;
    font-family: "din-2014-narrow",sans-serif;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    border:1px solid var(--red);;
    padding: 4px 10px;
}
.navbar-top a:hover{
    background-color:var(--red);
    color:#ffffff;
}
.header-padding{
    height:203px;
}
.navbar-brand img{
    max-width:150px;
}
.navbar-brand:hover,
.navbar-brand {
    border:none;
}
@media screen and (min-width: 768px) {
    .nav-item{
        margin:0 1rem;
    }
    .navbar-brand {
        margin-right:2rem;
    }
    .navbar-brand img{
        max-width:178px;
    }
    .navbar-top a{
        font-size: 20px;
    }
    .header-padding{
        height:155px;
    }
}
.form-control{
    font-family: "din-2014-narrow",sans-serif;
    font-style: normal;
    font-weight: 400;
    color:var(--slate)!important;
    border-radius: 0;
    border: 1px solid var(--slate);
    background:transparent;
}
.form-control::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
    color:var(--slate);
}

.form-control:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color:var(--slate);
}

.form-control::-ms-input-placeholder { /* Microsoft Edge */
    color:var(--slate);
}
.btn{
    color: var(--slate);
    text-align: center;
    font-family: "din-2014-narrow",sans-serif;
    font-weight:700;
    border-radius: 0;
    border:1px solid var(--slate);
}
.btn-white{
    color:#ffffff;
    border-color:#ffffff;
}
.btn:hover,
.btn:active,
.btn:focus{
    background-color:var(--slate);
    color:#ffffff;
}
.btn-white:hover,
.btn-white:active,
.btn-white:focus{
    background-color:#ffffff;
    color:var(--navy);
}
.page-hero{
    height:40vh;
    background-size: cover;
    background-image: center;
}
.page-hero .overlay{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background-color:rgba(0,0,0,.5);
}
.background-image{
    background-size:cover;
    background-position:center;
}
.overlay-color{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    mix-blend-mode: multiply;
}
.img-fit{
    padding-bottom:100%;
    position:relative;
}
.img-fit img{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}
.hero{
    position:relative;
}

.hero-background{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
.hero-background .slide{
    background-size:cover;
    background-position:center;
}
.owl-item .slide,
.hero-content{
    height:70vh;
}
@media screen and (max-width: 768px) {
    .owl-item .slide{
        height:30vh;
    }
    .img-fit {
        margin-bottom:2rem;
    }
}
.hero-content{
    z-index:1;
    background:rgba(0,0,0,.5);
}
.hero .card{
    background-color:rgba(255,255,255,.87);
}
.service-card{
    display:block;
    position:relative;
    padding-bottom:70%;
    background-size:cover;
    background-position:center;
    
}
.service-card  .service-content{
    transition: all .15s ease-in-out;
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background: rgba(0,0,0,.5);
    display: flex;
    align-items: end;
    
}
.service-card:hover  .service-content{
    background: rgba(0,0,0,.75);
}
.service-card  .service-content >div{
    transition: all .15s ease-in-out;
    transform:translateY(0)
}
.service-card hr{
    width: 110px;
    border-top: 9px solid #07A0C3;
    opacity: 1;
}
.service-card span{
    position: absolute;
    bottom:3rem;
    right:3rem;
    color:#ffffff;
    background:var(--red);
    display:inline-block;
    padding: 6px 10px;
    line-height: 1;
    transition: all .15s ease-in-out;
}
@media screen and (max-width: 768px) {
    .service-card span{
        bottom:1rem;
        right:1rem;
    }
}
@media screen and (min-width: 768px) {
    .service-card span{
        font-size: 1.5vw;
        opacity:0;
    }
    .service-card:hover  .service-content >div{
        transform:translateY(-75px)
    }
    .service-card:hover span{
        opacity:1;
    }
}

@media screen and (min-width: 768px) {
    p{
        font-size: 1.5vw;
    }
    .h1, h1{
        font-size: 4vw;
    }
    .h2, h2{
        font-size: 2.25vw;
    }
    .h3, h3{
        font-size: 1.975vw;
    }
    .form-control{
        font-size: 1.75vw;
    }
    .btn{
        font-size: 1.975vw;
        height:50px;
        line-height:50px;
        padding-top:0;
        padding-bottom:0;  
    }
    .form-control{
        height:50px;
        line-height:50px;
        padding-top:0;
        padding-bottom:0;  
    }
}
.nf-form-fields-required{
    display:none;
}