@import url("https://use.typekit.net/xei4ymy.css");

html {
    font-size: 16px;
}

html,
body {
    overflow-x: hidden!important;
}
.container-fluid {
    width: 100%;
    max-width: 2200px;
    padding-left: 0;
    padding-right: 0;
}
.container {
    width: 1600px;
    max-width: 100%;
}

img {
    max-width: 100%;
}

a[href^="tel"],
a[href^="mailto"]{
    /*color: inherit;*/
    text-decoration: none;
    color: #F45B40!important;
}
.white {
    color: #fff
}
.white_bg {
    background-color: #fff;
}
.grey {
    color: #636363;
}
.superdark_bg {
    background-color: #15222A;
}
.shadow {
    box-shadow: 12px 12px 36px rgba(60, 94, 121, 0.12);
}
a.read-more-button {

}
body,
p {
    font-family: span, serif;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    line-height: 28px;
    color: #636363;
}

h1, h2, h3, h4, h5, h6 {
    font-family: span, serif;
    font-weight: 400;
    font-style: normal;
    color: #000000;
}

h1 {
    font-size: 75px;
    line-height: 85px;
}

h2 {
    font-size: 54px;
    line-height: 68px;
    margin-bottom: 30px;
}

h3 {
    font-size: 36px;
    line-height: 46px;
    margin-bottom: 30px;
}

h4 {
    font-size: 24px;
    line-height: 36px;
}
h5 {
    font-size: 16px;
    line-height: 38px;
    letter-spacing: 1.92px;
    color: #F45B40;
    text-transform: uppercase;
    display: inline-block;
    border-top: 1px solid #F45B40;
    border-bottom: 1px solid #F45B40;
    margin-bottom: 50px;
}
h6 {
    font-size: 16px;
    line-height: 32px;
    margin-bottom: 16px;
    letter-spacing: 0px;
    color: #8E8E8E;
}
p.quote {
    font-size: 32px;
    line-height: 54px;
    font-style: italic;
    letter-spacing: 0px;
    color: #FFFFFF;
    padding-bottom: 60px;
    margin-bottom: 10px;
    border-bottom: 1px solid #F45B40;
}
a {
    webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}
a.fill {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
a.button {
    display: inline-block;
    font-family: span, serif;
    font-weight: 400;
    font-style: normal;
    font-size: 12px;
    line-height: 25px;
    letter-spacing: 1.2px;
    color: #FFFFFF;
    text-transform: uppercase;
    opacity: 1;
    padding: 8px 24px;
    border: 1px solid #15222A;
    background-color: #15222A;
    text-decoration: none!important;
}
a.button:hover {
    color: #ffffff;
    background: #F45B40;
    border: 1px solid #F45B40;
}
a.button.red {
    background-color: #F45B40;
    border: 1px solid #F45B40;
}
a.button.red:hover {
    color: #F45B40;
    border: 1px solid #fff;
    background-color: #fff;
}
a.button-secondary {
    font-family: span, serif;
    font-weight: 400;
    font-style: normal;
    font-size: 12px;
    line-height: 25px;
    letter-spacing: 1.2px;
    color: #000000;
    text-transform: uppercase;
    border-bottom: 1px solid #000000;
    padding-bottom: 5px;
}
a.button-secondary:after {
    content: ">";
    margin-left: 5px;
}
a.button-secondary:hover {
    text-decoration: none;
    opacity: 0.75;
}
a.button-secondary.reverse:after {
    display: none;
}
a.button-secondary.reverse:before {
    content: "<";
    margin-right: 5px;
}
.subtext {

}
.add-negative-margin-40 {
    margin-left: -40px;
    margin-right: -40px;
}
.space-between {
    justify-content: space-between;
}

.dark_bg {
    background-color: #15222A;
}
.image-wide.video a.fill:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-image: url('../img/video_play_button.svg');
    background-size: 100px;
    background-position: center center;
    background-repeat: no-repeat;
}
.embed-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
}
.embed-container iframe,
.embed-container object,
.embed-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.lightbox {
    display: none;
}
.featherlight .featherlight-content {
    min-width: 80%;
}
#main-content ul {
    padding-left: 20px;
}
header {

}
header,
header.sticky {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 9;
    webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}
header.sticky,
body.error404 header {
    background-color: #15222A;
}

.close-btn {
    width: 20px;
    height: 20px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
    cursor: pointer;
}
.close-btn:hover {
    opacity: 0.75;
}

.close-btn.white {
    background-image: url('../img/white_close_icon.svg');
}
#menuOpen {
    display: inline-block;
    width: 26px;
    height: 20px;
    webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
    background-image: url('../img/hamburger_menu.svg');
    background-size: contain;
    background-repeat: no-repeat;
}
#menuOpen:hover {
    opacity: 0.75
}

#touchMenu {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 63%;
    right:0;
    padding: 130px 80px 80px;
    webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
    transform: translateX(100%);
}
#touchMenu.show {
    transform: translateX(0);
}
#touchMenu .close-btn {
    position: absolute;
    right: 120px;
    top: 30px;
}
#menu-main_menu li {
    display: block;
    width: 100%;
}
#menu-main_menu li a {
    display: block;
    font-family: span, serif;
    font-weight: 400;
    font-style: normal;
    font-size: 36px;
    line-height: 46px;
    letter-spacing: 0px;
    color: #FFFFFF;
    opacity: 1;
    padding: 20px 10px;
    border-bottom: 1px solid #fff;
    position: relative;
    text-decoration: none!important;
    background-position: right 35px center;
    background-repeat: no-repeat;
    background-size: 25px;
}
#menu-main_menu li a:before {
    content: "";
    border-bottom: 2px solid #F45B40;
    width: 0px;
    display: block;
    bottom: 20px;
    position: absolute;
    left: 10px;
    webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}
#menu-main_menu li:last-of-type a {
    border-bottom: none;
}
#menu-main_menu li a:hover,
#menu-main_menu li:last-of-type a:hover {
    color: #F45B40;
    font-style: italic;
    padding-left: 40px;
    background-image: url('../img/orange_arrow_menu.svg');

}
#menu-main_menu li a:hover:before {
    width: 30px;
}

img.logo {
    -webkit-transition: all .5s ease-out;
    -moz-transition: all .5s ease-out;
    -o-transition: all .5s ease-out;
    transition: all .5s ease-out;
}
.relative {
    position: relative;
}

footer {

}

nav.social-links {

}
.nav.social-links li a {
    width: 30px;
    height: 30px;
    display: block;
    margin-right: 10px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
}
.nav.social-links li.twitter a {
    background-image: url('../img/twitter_icon.svg');
}
.nav.social-links li.linkedin a {
    background-image: url('../img/linkedin_icon.svg');
}
h4.footer-menu-heading {
    font-size: 32px;
    line-height: 54px;
    font-style: italic;
    letter-spacing: 0px;
    color: #000000;
}
#menu-services_menu li,
#menu-about_menu li {
    width: 100%;
}
#menu-services_menu li a,
#menu-about_menu li a {
    display: inline-block;
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 0px;
    color: #636363;
    text-decoration: none!important;
}
p.contact-info {
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 0px;
    color: #636363;
    text-decoration: none!important;
    margin-bottom: 0;
}
p.contact-info a,
p.contact-info a[href^="tel"],
p.contact-info a[href^="mailto"] {
    border: none!important;
    color: inherit!important;
}
.footer-bottom {
    border-top: 1px solid #8E8E8E;
}
.footer-bottom p,
.footer-bottom a {
    font-size: 12px;
    line-height: 16px;
    letter-spacing: 0;
    margin-bottom: 0;
}
.footer-bottom a {
    color: #8E8E8E;
    text-decoration: none!important;
}
.footer-bottom a:hover {
    opacity: 0.75;
}
.footer-bottom .nav a {
    margin-left:25px;
    margin-right: 25px;
}
.footer-bottom p,
.footer-bottom a.nwLink {
    color: #000000;
}


/*** main-banner ***/
.main-banner,
.main-banner .container-fluid {
    min-height: 90vh;
    position: relative;
}
.main-banner .overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: left center;
    left: 29%;
}
.main-banner .overlay:before {
    display: none;
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #636363;
}
.main-banner .fullBGBlock {
    background-color: #15222A;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 29%;
}
.main-banner h1:before,
.secondary-banner h1:before{
    content: "";
    display: block;
    position: relative;
    width: 40px;
    height: 40px;
    background-image: url('../img/decor_orange_3_lines.svg');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
    margin-bottom: 30px;
}

/*** secondary banner ***/
.image-wide {
    width: 100%;
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    padding-top: 46%;
}
.image-portrait {
    width: 100%;
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    padding-top: 129.6%;
}
.image-4-3 {
    width: 100%;
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    padding-top: 75%;
}
.secondary-banner-container {
    padding-top: 160px;
    padding-bottom: 100px;
}
.secondary-banner.contains-image .secondary-banner-container {
    padding-bottom: 210px;
}
.media-container {
    margin-top: -110px;
}
.secondary-banner p {
    font-size: 24px;
    line-height: 36px;
}



/*** block-3-columns ***/
.block-3-columns .background {
    position: absolute;
    right:0;
    top: 0;
    bottom: 0;
    left: 25%;
    background-color: #F5F8FF;
}


/*** 2 columns text links ***/
a.fancy-link {
    display: block;
    font-family: span, serif;
    font-weight: 400;
    font-style: normal;
    font-size: 36px;
    line-height: 46px;
    letter-spacing: 0px;
    color: #000000;
    opacity: 1;
    padding: 20px 10px;
    border-bottom: 1px solid #000000;
    position: relative;
    text-decoration: none !important;
    background-position: right 35px center;
    background-repeat: no-repeat;
    background-size: 25px;
}
a.fancy-link:before {
    content: "";
    border-bottom: 2px solid #F45B40;
    width: 0px;
    display: block;
    bottom: 20px;
    position: absolute;
    left: 10px;
    webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}
a.fancy-link:hover {
    color: #F45B40;
    font-style: italic;
    padding-left: 40px;
    background-image: url('../img/orange_arrow_menu.svg');
}
a.fancy-link:hover:before {
    width: 30px;
}

/*** Testimoinials slider ***/
.testimonials-slider .slick-prev,
.testimonials-slider .slick-prev:hover,
.testimonials-slider .slick-prev:focus,
.testimonials-slider .slick-prev:hover:focus {
    background-image: url('../img/left_orange_testimonial_arrow.svg');
}
.testimonials-slider .slick-next,
.testimonials-slider .slick-next:hover,
.testimonials-slider .slick-next:focus,
.testimonials-slider .slick-next:hover:focus {
    right: 56.6%!important;
    background-image: url('../img/right_orange_testimonial_arrow.svg');
}
.testimonials-slider .slick-prev,
.testimonials-slider .slick-next {
    width: 64px;
    height: 64px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    z-index: 2;
}
.slick-prev:before,
.slick-next:before {
    display: none;
}


/*** TABS ***/
#main-content ul.nav-tabs {
    padding-left: 0;
}
.nav-tabs {
    border-bottom: none!important;
}
.nav-tabs li a {
    padding:  20px;
    display: block;
    font-size: 20px;
    line-height: 22px;
    letter-spacing: 0px;
    color: #646464;
    border: none!important;
    border-bottom: 2px solid #fff!important;
}
.nav-tabs li a.active {
    font-style: italic;
    border-bottom: 2px solid #000000!important;
}

/*** 3 columns dynamic ***/
.container-fluid.relative .background {
    position: absolute;top: 0;
    bottom: 0;
    right: 0;
    left: 29%;
    background-color: #F5F8FF;
}


/**** Insights ****/
.nav.categories-menu {
    justify-content: center;
}
a.category-nav-item  {
    display: inline-block;
    font-size: 12px;
    line-height: 14px;
    letter-spacing: 1.2px;
    color: #000000;
    text-transform: uppercase;
    text-align: center;
    background: #E4E4E4;
    text-decoration: none!important;
    padding: 8px 22px;
    margin: 0 10px 10px 10px;
}
a.category-nav-item.active,
a.category-nav-item:hover {
    color: #fff;
    background: #F45B40;
}
body.single-post .block {
    margin-top: -40px;
    margin-bottom: -40px;
}

body.single-post header {
    background-color: #15222A;
}
.post-info {
    border-bottom: 1px solid #8E8E8E;
    padding-bottom: 8px;
    padding-top: 30px;
    margin-bottom: 30px;
}
div.share  {
    font-size: 12px;
    line-height: 16px;
    letter-spacing: 0px;
    color: #000000;
}
.share a.share {
    display: inline-block;
    width: 24px;
    height: 24px;
    margin-right: 5px;
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
}
.share a.share.facebook {
    background-image: url('../img/share_facebook.svg');
}
.share a.share.twitter {
    margin-left: 10px;
    background-image: url('../img/share_twitter.svg');
}
.share a.share.linkedin {
    background-image: url('../img/share_linkedin.svg');
}


.content-404 {
    min-height: 65vh;
}