﻿@font-face {
    font-family: Museosans;
    src: url(fonts/MuseoSans_300.otf);
}

@font-face {
    font-family: Museosans;
    src: url('fonts/MuseoSans_100.otf');
    font-weight: 100;
}

@font-face {
    font-family: Museosans;
    src: url('fonts/MuseoSans_500.otf');
    font-weight: 500;
}

@font-face {
    font-family: Museosans;
    src: url('fonts/MuseoSans_700.otf');
    font-weight: 700;
}

@font-face {
    font-family: Museosans;
    src: url('fonts/MuseoSans_900.otf');
    font-weight: 900;
}


html {
    position: relative;
    min-height: 100%;
}

body {
    font-family: Museosans, Helvetica, Arial, sans-serif;
    font-size: 14px;
    color: #141414;
}

a {
    color: #002f87
}


    a:hover {
        color: #002f87;
        text-decoration: underline;
    }

    a:focus {
        outline: none;
    }

h1 {
    display: inline-block;
    margin: 0;
}

h2 {
    display: inline-block;
    margin: 0;
}

.eq-height {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.bodyoverlay {
    display: none;
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 10;
}

.sidelinks {
    position: fixed;
    top: 130px;
    right: 0;
    z-index: 10;
}

    .sidelinks a {
        display: block;
        margin-bottom: 1em;
    }

button:focus {
    outline: none !important;
    box-shadow: none !important;
}

header {
    position: relative;
    z-index: 11;
}

#wrapper {
    position: relative;
    height: 100%;
    min-height: 940px;
    /*min-width: 450px;*/
    max-width: 1920px;
    margin: 0 auto;
}

/************  MENU START  *************/
.navbar {
    padding: 0;
}

.collapsing {
    -webkit-transition: none;
    transition: none;
    display: none;
}

@media (max-width:1280px) {
    #mobilemenu {
        position: absolute;
        background-color: #fff;
        width: 70%;
        top: 69px;
        z-index: 10;
    }

    .menutitle {
        font-size: 18px;
        font-weight: 700;
        color: #4d4f53;
        padding: 1em 2em;
    }

    #navbar,
    #navbaro,
    #navbaromen {
        width: 100%;
    }

    #navbaromen {
        font-size: 18px;
        color: #fff;
        background-color: #4d4f52;
        padding: 1em 2em;
    }

        #navbaromen .title {
            display: block;
            font-size: 18px;
            color: #efefef;
            font-weight: 700;
            padding: 1em 0;
        }

        #navbaromen .slick-slide {
            /*display: inline-block;
            max-width:100px;*/
            text-align: center;
            line-height: 1;
            margin-top: 1em;
        }

        #navbaromen a {
            font-size: 14px;
            color: #fff;
            font-weight: 700;
        }

            #navbaromen a img {
                display: inline-block;
                margin-bottom: 15px;
            }

        #navbaromen .slick-prev {
            width: 30px;
            height: 50px;
            background: url(../layout/mobmenuslider_left_arrow.png) no-repeat center center;
            left: -30px;
            z-index: 10;
        }

        #navbaromen .slick-next {
            width: 30px;
            height: 50px;
            background: url(../layout/mobmenuslider_right_arrow.png) no-repeat center center;
            right: -30px;
            z-index: 10;
        }

    .nav-item {
        font-size: 18px;
        background-color: #fff;
        margin-bottom: 5px;
    }

        .nav-item .nav-link {
            font-size: 18px;
            font-weight: 700;
            color: #4d4e52;
            background-color: #f2f2f2;
            padding: 1em 2em;
            transition: all 0.5s ease;
        }

        .nav-item.show .nav-link {
            color: #fff;
            background-color: #95979c;
        }

    #mobilemenu .dropdown-toggle::after {
        display: inline-block;
        float: right;
        width: 20px;
        height: 1.5em;
        background: url(../layout/menu_arrow_mobile.png) no-repeat center;
        margin-right: 2em;
        vertical-align: middle;
        content: "";
        border: none;
    }

    #mobilemenu .nav-item.show .dropdown-toggle::after {
        background: url(../layout/menu_arrow_white_mobile.png) no-repeat center;
    }

    #mobilemenu .navbar-nav .dropdown-menu {
        width: 90%;
        padding: 0 2em;
        border: none;
        border-radius: 0;
    }

        #mobilemenu .navbar-nav .dropdown-menu .dropdown-item {
            font-weight: 700;
            font-size: 16px;
            padding: 1em 4em;
            border-bottom: 1px solid #a6a8ac;
            letter-spacing: 1px;
            white-space: normal;
        }

            #mobilemenu .navbar-nav .dropdown-menu .dropdown-item:hover {
                background-color: transparent;
            }

            #mobilemenu .navbar-nav .dropdown-menu .dropdown-item:last-child {
                border-bottom: 0;
            }
}


.navbar-toggler {
    border: none;
    border-radius: 0;
    padding: 20px 15px 20px 20px;
    background-color: #092f87;
}

    .navbar-toggler.collapsed {
        background-color: #fff;
    }

    .navbar-toggler .navbar-toggler-icon {
        width: 43px;
        height: 29px;
        background-image: url(../layout/hamburger_over.png);
    }

    .navbar-toggler.collapsed .navbar-toggler-icon {
        background-image: url(../layout/hamburger.png);
    }

#search-mob {
    margin-right: 10px;
    cursor: pointer;
}

#searchbar-mob {
    display: none;
    position: absolute;
    top: 20px;
    left: 6em;
    width: 66%;
    background-color: #fff;
}

    #searchbar-mob input[type=text] {
        font-family: Museosans, Helvetica, Arial, sans-serif;
        font-size: 14px;
        letter-spacing: 2px;
        color: #95979c;
        width: 90%;
        border: none;
        box-shadow: none;
    }

#closeSearch-mob {
    margin-left: 10px;
    cursor: pointer;
}

.btn-naked {
    border: none;
    background: none;
    box-shadow: none;
    padding: 0;
}

.market {
    display: inline-block;
    background-color: #072f86;
    height: 52px;
    line-height: 52px;
    padding: 0 54px;
    white-space: nowrap;
}

.marketmobile {
    display: none;
    text-align: center;
    background-color: #072f86;
    height: 52px;
    line-height: 52px;
    white-space: nowrap;
}

    .market a,
    .marketmobile a {
        font-size: 11px;
        font-weight: 900;
        color: #fff;
    }

@media (max-width:768px) {
    #mobilemenu {
        width: 100%;
        left: 0;
    }
}

@media (max-width:576px) {
    .market {
        display: none;
    }

    .marketmobile {
        display: block;
        height: 48px;
        line-height: 48px;
    }

        .marketmobile a {
            font-size: 13px;
        }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    #searchbar-mob {
        width: 54%;
    }

        #searchbar-mob input[type=text] {
            width: 85%;
        }
}

@media (min-width:1281px) {
    .main-menu-top {
        height: 52px;
        background-color: #ebebeb;
        box-shadow: inset 0 -10px 5px -11px rgba(0, 0, 0, 0.6);
    }

        .main-menu-top .navbar-expand-custom .navbar-nav a.nav-link {
            font-size: 10px;
            font-weight: 700;
            color: #757779;
            /*color:#888a8c;*/
            letter-spacing: 1px;
            padding-right: 18px;
        }

    .navbar-brand {
        padding: 0;
        margin-right: 50px;
    }

    .logo {
        margin-bottom: 0;
        height: 52px;
    }

    #search {
        padding-right: 20px;
        cursor: pointer;
    }

    #searchbar {
        display: none;
        /*position: absolute;*/
        width: 100%;
        background-color: #fff;
    }

        #searchbar input[type=text] {
            font-family: Museosans, Helvetica, Arial, sans-serif;
            font-size: 14px;
            letter-spacing: 2px;
            color: #95979c;
            width: 92%;
            border: none;
            box-shadow: none;
        }

    #closeSearch {
        margin-left: 10px;
        cursor: pointer;
    }

    /*.market {
        background-color: #072f86;
        height: 52px;
        line-height: 52px;
        padding: 0 54px;
        white-space: nowrap;
    }

        .market a {
            font-size: 11px;
            font-weight: 900;
            color: #fff;
        }*/

    .main-menu-bottom {
        height: 62px;
        background-color: #fff;
        /*-webkit-box-shadow: 0px 1px 3px 0px rgba(0,0,0,0.4) inset, 0px 1px 2px 0px rgba(0,0,0,0.4);
        -moz-box-shadow: 0px 1px 3px 0px rgba(0,0,0,0.4) inset, 0px 1px 2px 0px rgba(0,0,0,0.4);
        box-shadow: 0px 1px 3px 0px rgba(0,0,0,0.4) inset, 0px 1px 2px 0px rgba(0,0,0,0.4);*/
    }

        .main-menu-bottom:after {
            content: "";
            display: block;
            width: 100%;
            height: 0;
            box-shadow: 0 1px 2px 1px rgba(0, 0, 0, 0.3);
        }

        .main-menu-bottom nav {
            height: 62px;
        }

        .main-menu-bottom .navbar-collapse,
        .main-menu-bottom .navbar-collapse .navbar-nav {
            height: 100%;
        }

        .main-menu-bottom .navbar-nav a.nav-link {
            font-size: 14px;
            font-weight: 700;
            color: #3c3d41;
            height: 100%;
            line-height: 63px;
            padding: 0;
            padding-right: 20px;
        }

        .main-menu-bottom .navbar-nav .gray {
            display: flex;
            background-color: #83858a;
            width: 300px;
            justify-content: space-evenly;
        }

    @supports (-ms-ime-align:auto) {
        .main-menu-bottom .navbar-nav .gray {
            justify-content: space-around;
        }
    }

    .main-menu-bottom .navbar-nav .gray a.nav-link {
        background-color: #83858a;
        font-size: 13px;
        color: #fff;
        padding: 0;
        text-align: center;
    }

    .dropdown-toggle::after {
        display: inline-block;
        background: url(../layout/menu_arrow.png) no-repeat center center;
        width: 11px;
        height: 8px;
        margin-left: .5em;
        vertical-align: 0;
        content: "";
        border-top: 0;
        border-right: 0;
        border-bottom: 0;
        border-left: 0;
    }
    section.blue .dropdown-toggle::after,
    section.red .dropdown-toggle::after,
    section.black .dropdown-toggle::after,
    section.mediumgray .dropdown-toggle::after {
        background: url(../layout/menu_arrow_white.png) no-repeat center center;
    }
    .companies .dropdown-toggle::after {
        background: url(../layout/menu_arrow_white.png) no-repeat center center;
    }


    .navbar .dropdown:hover > .dropdown-menu {
        display: block;
    }

    .navbar .dropdown > .dropdown-toggle:active {
        /*Without this, clicking will make it sticky*/
        pointer-events: none;
    }

    .navbar-nav .nav-item.dropdown:not(.companies):hover:before {
        display: block;
        position: absolute;
        content: "";
        border-top: 4px solid #091e73;
        bottom: 1px;
        left: -25px;
        width: 100%;
    }

    .navbar-nav .dropdown-menu {
        position: absolute;
        top: 61px;
        left: -25px;
        z-index: 1000;
        display: none;
        float: left;
        min-width: 10rem;
        padding: 0 70px 0 30px;
        margin: 0;
        font-size: 1rem;
        color: #212529;
        text-align: left;
        list-style: none;
        background-color: #fff;
        background-clip: padding-box;
        border: 0;
        border-radius: 0;
    }

    .dropdown-item {
        display: block;
        width: 100%;
        min-width: 220px;
        padding: 25px 0;
        clear: both;
        font-size: 13px;
        font-weight: 700;
        color: #3c3d41;
        text-align: left;
        white-space: nowrap;
        background-color: transparent;
        border: 0;
        border-top: 1px solid #a6a8ac;
    }

        .dropdown-item:focus,
        .dropdown-item:hover {
            color: #3c3d41;
            background-color: transparent;
        }

        .dropdown-item:first-child {
            border-top: 0;
        }

    .companies .dropdown-menu {
        position: absolute;
        top: 61px;
        left: 0;
        transform: translateX(0);
        z-index: 1000;
        display: none;
        float: left;
        min-width: 360px;
        padding: 0;
        margin: 0;
        font-size: 1rem;
        color: #212529;
        text-align: left;
        list-style: none;
        background-color: #fff;
        background-clip: padding-box;
        border: 0;
        border-radius: 0;
    }

    .companies .dropdown-item {
        display: block;
        width: 100%;
        background-repeat: no-repeat;
        background-position: right center;
        padding: 24px 72px 24px 30px;
        clear: both;
        font-size: 14px;
        font-weight: 700;
        color: #3c3d41;
        text-align: left;
        white-space: nowrap;
        background-color: transparent;
        border: 0;
        border-top: 1px solid #a6a8ac;
    }

    /*.companies .dropdown-item:nth-child(2) {
            background: url(../layout/companies_dropdown_icon02.png) no-repeat right center;
        }

        .companies .dropdown-item:nth-child(3) {
            background: url(../layout/companies_dropdown_icon03.png) no-repeat right center;
        }

        .companies .dropdown-item:nth-child(4) {
            background: url(../layout/companies_dropdown_icon04.png) no-repeat right center;
        }*/
}

@media (min-width:1440px) {
    .navbar-brand {
        padding: 0;
        margin-right: 80px;
    }

    .main-menu-bottom .navbar-nav a.nav-link {
        padding-right: 40px;
    }

    .main-menu-top .navbar-expand-custom .navbar-nav a.nav-link {
        padding-right: 22px;
    }
}

/************  MENU END  *************/


/************  FOOTER START  *************/

.footer .upper {
    background-color: #efefef;
    padding: 50px 0 90px !important;
}

    .footer .upper .title {
        font-size: 12px;
        color: #3c3d41;
        font-weight: 900;
        padding-bottom: 35px;
    }

    /*.footer .footerlogo .content {
    width: 80%;
}*/

    .footer .upper .content {
        font-size: 12px;
        color: #95979c;
    }

        .footer .upper .content ul li {
            padding-bottom: 5px;
        }

        .footer .upper .content a {
            font-size: 14px;
            color: #3c3d41;
        }



    .footer .upper .footer1,
    .footer .upper .footer2 {
        padding-left: 8%;
    }

    .footer .upper .footer2 {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

        .footer .upper .footer2 .content ul li {
            font-size: 12px;
            color: #3c3d41;
            font-weight: 900;
            padding-bottom: 25px;
        }

        .footer .upper .footer2 .content ul.base {
            margin-top: 60px;
        }

/*.footersocial {
    text-align: right;
}*/

.footersocial .title {
    padding-right: 1.4em;
}

.footer .bottom {
    background-color: #4d4f52;
}

    .footer .bottom a {
        color: #fff;
        font-size: 10px;
        line-height: 4em;
        letter-spacing: 1px;
        padding-right: 60px;
    }

        .footer .bottom a:last-child {
            padding-right: 0;
            margin-left: auto;
        }



/************  FOOTER END  *************/

/******** BUTTON *********/
.btn-primary {
    padding: 0.6em 2.8em;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2em;
    letter-spacing: 1px;
    white-space: normal;
    background-color: #002f87;
    border: 0;
    border-radius: 0;
}
section.blue .btn-primary,
section.red .btn-primary,
section.black .btn-primary,
section.mediumgray .btn-primary {
    color: #ffffff;
    border: 1px solid #ffffff;
}
    .btn-primary.white {
        padding: 0.6em 2.8em;
        font-size: 16px;
        font-weight: 700;
        line-height: 1.2em;
        letter-spacing: 1px;
        color: #002f87;
        background-color: #fff;
        border: 0;
        border-radius: 0;
    }

    .btn-primary.deepgray {
        padding: 0.6em 2.8em;
        font-size: 16px;
        font-weight: 700;
        line-height: 1.2em;
        letter-spacing: 1px;
        color: #fff;
        background-color: #4d4f52;
        border: 0;
        border-radius: 0;
    }

.btn-outline-primary.white {
    padding: 0.6em 2.8em;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    line-height: 1.2em;
    letter-spacing: 1px;
    white-space: normal;
    background-color: transparent;
    border: 1px solid #fff;
    border-radius: 0;
}

.btn-outline-primary.blue {
    padding: 0.6em 1.5em;
    font-size: 16px;
    font-weight: 700;
    white-space: normal;
    color: #002f87;
    line-height: 1.2em;
    letter-spacing: 1px;
    background-color: transparent;
    border: 1px solid #002f87;
    border-radius: 0;
}
section.blue .btn-outline-primary.blue, section.black .btn-outline-primary.blue, section.red .btn-outline-primary.blue {
    color: #ffffff;
    border: 1px solid #ffffff;
}

    .btn-outline-primary.blue:not(:disabled):not(.disabled):active,
    .btn-outline-primary.blue:not(:disabled):not(.disabled).active,
    .show > .btn-outline-primary.blue.dropdown-toggle {
        background-color: #002f87;
        border-color: #002f87;
    }

@media (min-width:1280px) {
    .btn-outline-primary.blue:not(:disabled):not(.disabled):active::after,
    .btn-outline-primary.blue:not(:disabled):not(.disabled).active::after,
    .show > .btn-outline-primary.blue.dropdown-toggle::after {
        background: url(../layout/menu_arrow_white.png) no-repeat center center;
    }
}

.btn-outline-primary.gray {
    padding: 0.6em 2.8em;
    font-size: 16px;
    font-weight: 700;
    white-space: normal;
    color: #95979c;
    line-height: 1.2em;
    letter-spacing: 1px;
    background-color: transparent;
    border: 1px solid #95979c;
    border-radius: 0;
}

.btn-outline-primary.pink {
    padding: 0.6em 2.8em;
    font-size: 16px;
    font-weight: 700;
    color: #e0174b;
    line-height: 1.2em;
    letter-spacing: 1px;
    white-space: normal;
    background-color: transparent;
    border: 1px solid #e0174b;
    border-radius: 0;
}

/******** SECTION *********/
section {
    position: relative;
    /*min-width: 450px;*/
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    padding: 30px 0;
    z-index: 2;
}

    section.gray {
        background-color: #f1f1f1;
    }

    section.mediumgray {
        background-color: #a6a8ac;
    }

    section.deepgray {
        background-color: #4d4f52;
    }

    section.whitetext {
        color: #fff;
    }

    section.blue:not(.herosection) {
        background-color: #002f87;
    }

    section.red:not(.herosection) {
        background-color: #e0174b;
    }

    section.black:not(.herosection) {
        background-color: #000000;
    }

.sectiontitle {
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 2.5em;
    color: #002f87;
    background: url(../layout/Newcytech/nct_title_icon.png) no-repeat left center;
    padding-left: 40px;
    margin-bottom: 1.6em;
}

section.blue .sectiontitle,
section.red .sectiontitle,
section.black .sectiontitle,
section.mediumgray .sectiontitle {
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 2.5em;
    color: #002f87;
    background: url(../layout/Newcytech/nct_title_icon_alternative.png) no-repeat left center;
    padding-left: 40px;
    margin-bottom: 1.6em;
}

/*.sectiontitle.solutions {
        background: url(../layout/solutions_title_icon_gray.png) no-repeat left center;
    }*/

.sectionsubtitle h2 {
    font-size: 36px;
    font-weight: 900;
    line-height: 1.3;
    color: #e0174b;
    padding-bottom: 1em;
}

/*section.deepgray .sectiontitle.solutions {
    background: url(../layout/solutions_title_icon_white.png) no-repeat left center;
}*/

section.mediumgray .sectiontitle,
section.mediumgray .sectionsubtitle,
section.mediumgray .sectionsubtitle h2,
section.deepgray .sectiontitle,
section.deepgray .sectionsubtitle,
section.deepgray .sectionsubtitle h2,
section.blue .sectiontitle,
section.blue .sectionsubtitle,
section.blue .sectionsubtitle h2,
section.red .sectiontitle,
section.red .sectionsubtitle,
section.red .sectionsubtitle h2,
section.black .sectiontitle,
section.black .sectionsubtitle,
section.black .sectionsubtitle h2,
section.blue.homeawards .sectionsubtitle h2,
section.mediumgray.homeawards .sectionsubtitle h2,
section.deepgray.homeawards .sectionsubtitle h2,
section.red.homeawards .sectionsubtitle h2,
section.black.homeawards .sectionsubtitle h2 {
    color: #fff;
}

section.vendors .sectionsubtitle,
section.vendors .sectionsubtitle h2 {
    color: #e0174b;
}

/*section.mediumgray .sectiontitle.solutions {
    background: url(../layout/solutions_title_icon_white.png) no-repeat left center;
}

section.vendors .sectiontitle.solutions {
    color: #a6a8ac;
    background: url(../layout/solutions_title_icon_gray.png) no-repeat left center;
}*/


section .title {
    font-size: 36px;
    font-weight: 900;
    padding-bottom: 1em;
    line-height: 1.5;
}

section .text {
    font-size: 18px;
    padding-bottom: 2em;
}

section.deepgray .text,
section.blue .title,
section.red .title,
section.black .title {
    color: #fff;
}

section.breadcrumb {
    color: #fff;
    font-weight: 900;
    background-color: #a6a8ac;
    padding: 10px 0;
    margin-bottom: 0;
    border-radius: 0;
}

    section.breadcrumb a {
        color: #fff;
        font-weight: 100;
        padding-right: 25px;
        background: url(../layout/breadcrumb_arrow.png) no-repeat right center;
        margin-right: 10px;
    }

.intromaintext span {
    display: block;
    width: 80%;
    font-size: 24px;
    font-weight: 900;
    color: #4d4f52;
    /*margin-bottom: 1em;*/
}

section.deepgray .intromaintext span,
section.red .intromaintext span,
section.black .intromaintext span,
section.blue .intromaintext span,
section.mediumgray .intromaintext span {
    color: #ffffff;
}

.introtext {
    font-size: 18px;
}

.more a {
    display: block;
    font-size: 14px;
    font-weight: 900;
    color: #e0174b;
    margin-top: 1em;
}

.intro.blue .intromaintext span, .intro.red .intromaintext span, .intro.black .intromaintext span,
.intro.blue .introtext, .intro.red .introtext, .intro.black .introtext,
.intro.blue .more a, .intro.red .more a, .intro.black .more a {
    color: #ffffff
}
/******** HERO *********/
.herosection {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

    .herosection.largemode .titlebg span {
        background-color: rgba(7,47,134,.6);
        padding: 15px 20px;
        font-size: 42px;
        display: inline-block;
    }

    .herosection.largemode .hero-image-shader,
    .herosection .hero-image-shader {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background: none repeat scroll 0 0 rgba(0, 0, 0, 0.2);
    }

    .herosection.largemode .hero-image-shader-x2,
    .herosection .hero-image-shader-x2 {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background: none repeat scroll 0 0 rgba(0, 0, 0, 0.3);
    }

    .herosection.largemode .hero-image-shader-x3,
    .herosection .hero-image-shader-x3 {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background: none repeat scroll 0 0 rgba(0, 0, 0, 0.5);
    }

    .herosection.largemode .hero-image-glare,
    .herosection .hero-image-glare {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background: none repeat scroll 0 0 rgba(255, 255, 255, 0.1);
    }

    .herosection.largemode .hero-image-glare-x2,
    .herosection .hero-image-glare-x2 {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background: none repeat scroll 0 0 rgba(255, 255, 255, 0.2);
    }

    .herosection.largemode::before {
        background: none;
    }

    .herosection.d-overlay::before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background: url(../layout/Newcytech/herosection_pattern_nct.png) no-repeat center center;
        background-size: cover;
    }

    .herosection::before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background: url(../layout/Newcytech/herosection_pattern_nct.png) no-repeat center center;
        background-size: cover;
    }

    .herosection .col-12 {
        padding-top: 5em;
        padding-bottom: 5em;
    }

    .herosection.largemode .col-12 {
        padding-top: 10em;
        padding-bottom: 10em;
    }

    .herosection .title {
        font-size: 48px;
        font-weight: 900;
        color: #fff;
        /*        letter-spacing: 10px;*/
        text-transform: uppercase;
        background-repeat: no-repeat;
        background-position: center left;
        padding-left: 70px;
        padding-bottom: 0;
        overflow: hidden;
    }

        .herosection .title h1 {
            font-size: 48px;
            font-weight: 900;
            line-height: 1;
            color: #fff;
            /*            letter-spacing: 10px;*/
            text-transform: uppercase;
        }

        .herosection .title.title--letterspacing,
        .herosection .title.title--letterspacing h1 {
            letter-spacing: 10px;
        }

    .herosection span.text {
        display: block;
        font-size: 18px;
        font-weight: 700;
        line-height: 1.5;
        color: #fff;
        text-transform: none;
        width: 70%;
        padding-top: 20px;
        padding-bottom: 0;
        letter-spacing: 2px;
    }

.herosectiontext {
    font-size: 18px;
    font-weight: 700;
}

.herosection.blue .col-12 {
    padding-top: 4.2em;
    padding-bottom: 4.2em;
}

.herosection.blue::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: url(../layout/Newcytech/herosection_pattern_noimage_nct.png) no-repeat center center;
    background-size: cover;
}

.herosection.blue .title,
.herosection.blue .title h1 {
    color: #4d4f52;
}

.herosection.blue span.text {
    color: #4d4f52;
    letter-spacing: 2px;
}

/******** COMPANIES *********/
.companies .row {
    justify-content: space-between;
}

.companies .item {
    display: flex;
    padding-bottom: 4.3em;
}

.companies .img {
    padding-right: 2em;
}

    .companies .img img {
        max-width: 120px;
    }

.companies .data {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

    .companies .data .title {
        font-size: 24px;
        font-weight: 900;
        color: #4d4f53;
        padding-bottom: 25px;
    }

    .companies .data .text {
        display: block;
        padding-bottom: 3.5em;
    }

    .companies .data a {
        margin-top: auto;
    }
.companies.blue .data .title, .companies.blue .data .text,
.companies.red .data .title, .companies.red .data .text,
.companies.black .data .title, .companies.black .data .text{
    color:#ffffff;
}
/******** BUSINESS SOLUTIONS *********/
.businesolutions {
    display: flex;
    flex-wrap: wrap;
}

    .businesolutions .item {
        display: flex;
        flex-direction: row;
        align-items: center;
        margin-bottom: 6em;
    }

        .businesolutions .item .title {
            display: block;
            font-size: 16px;
            font-weight: 900;
            padding-left: 30px;
            padding-bottom: 0;
            width: 80%;
            color: #4d4f52;
        }

            .businesolutions .item .title a {
                color: #4d4f52;
            }

section.deepgray .businesolutions .item .title a,
section.mediumgray .businesolutions .item .title a,
section.red .businesolutions .item .title a,
section.blue .businesolutions .item .title a,
section.black .businesolutions .item .title a,
section.deepgray .businesolutions .item .title a,
section.mediumgray .businesolutions .item  a,
section.red .businesolutions .item  a,
section.blue .businesolutions .item  a,
section.black .businesolutions .item  a {
    color: #ffffff;
}

@media (max-width: 991.98px) {
    .businesolutions .item {
        margin-bottom: 5em;
    }

    .businesolutions.home .item {
        flex-direction: column;
    }

        .businesolutions.home .item .title {
            padding-left: 0;
            padding-top: 2em;
            width: 100%;
            text-align: center;
        }
}

/******** BANNER *********/
.banner {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

    .banner.clear-before::before {
        content: none;
    }

    .banner::before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background: url(../layout/Newcytech/banner_layer.png) no-repeat center center;
        background-size: cover;
    }

    .banner .row {
        height: 220px;
    }

    .banner .title {
        padding-bottom: 0;
    }

        .banner .title span {
            font-size: 36px;
            font-weight: 900;
            color: #fff;
        }



.tabs.solution {
    padding-bottom: 0;
}

    .tabs.solution .nav-tabs {
        border: none;
    }

    .tabs.solution .nav {
        justify-content: space-evenly;
    }

    .tabs.solution .tab {
        width: 240px;
        text-align: center;
    }

    .tabs.solution a.tab:hover {
        text-decoration: none;
    }

    .tabs.solution .tab .title {
        display: block;
        font-size: 16px;
        color: #a6a8ac;
        padding: 2em 0;
    }

    .tabs.solution .tab.active .title {
        color: #e0174b;
    }

    .tabs.solution .tab.active {
        border-bottom: 3px solid #e0174b;
    }

.banner.solution {
    color: #fff;
    padding: 90px 0;
}

    .banner.solution .row {
        height: auto;
    }

        .banner.solution .row [class^=col-] {
            display: flex;
            align-items: center;
        }

    .banner.solution .title {
        font-size: 36px;
        font-weight: 900;
    }

    .banner.solution .text {
        font-size: 18px;
        font-weight: 700;
        padding: 0;
    }

    .banner.solution .tab-content > .active {
        display: flex;
    }

@media (max-width:991.98px) {
    .banner.solution .title {
        padding-bottom: 60px;
    }
}

@media (max-width:767.98px) {
    .tabs.solution .tab {
        max-width: 120px;
    }
}

@media (max-width: 575.98px) {
    .tabs.solution .tab {
        max-width: 90px;
    }
}

/******** HOME NEWS SLIDER & NEWS SECTION *********/
.slider::before {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 10;
    content: "";
    width: 10px;
    height: 100%;
    background: url(../layout/slider_shadowline.png) no-repeat center center;
}

section.slider-news {
    background-color: #f1f1f1;
    box-shadow: 0 4px 2px -2px rgba(0,0,0,0.4);
}

    section.slider-news .sectionsubtitle h2 {
        font-size: 28px;
    }

    section.slider-news .btn-outline-primary.blue {
        color: #e0174b;
        border-color: #e0174b;
    }

section.newsection.featured {
    background-color: #f1f1f1;
    box-shadow: 0 4px 2px -2px rgba(0,0,0,0.4);
}

.newsection .news {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: wrap;
}

.news .item {
    width: 360px;
    margin-bottom: 2em;
}

section.slider-news .news .item {
    /*margin: 1em;
    padding: 0 0.5em 0.5em 0.5em;*/
    min-height: 395px;
    padding: 1em;
    padding-left: 5px;
}

.news .item .box {
    min-height: 340px;
    -webkit-box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
    box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
}

.news .item .tag {
    display: block;
    font-size: 14px;
    font-weight: 900;
    padding: 0.5em 1.5em;
}

.news .item .img {
    position: relative;
}

.news .item .img_over {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.news .item .date {
    display: block;
    font-size: 12px;
    font-weight: normal;
    padding-bottom: 1.5em;
}

.news .item .title {
    height: 94px;
    font-size: 21px;
    font-weight: 900;
    color: #4d4f53;
}

.news .item .data {
    padding: 1.5em;
}

.slick-next {
    width: 64px;
    height: 92px;
    background: url(../layout/slider-arrow-next.png) no-repeat center center;
    right: 0;
    z-index: 10;
}

    .slick-next:hover {
        background: url(../layout/slider-arrow-next.png) no-repeat center center;
    }

.slick-prev {
    width: 64px;
    height: 92px;
    background: url(../layout/slider-arrow-prev.png) no-repeat center center;
    left: 1px;
    z-index: 10;
}

    .slick-prev:hover {
        background: url(../layout/slider-arrow-prev.png) no-repeat center center;
    }

    .slick-next::before,
    .slick-prev::before {
        content: "";
    }

button.slick-disabled {
    display: none !important;
}

.slick-dots li {
    width: 60px;
    height: 9px;
    margin: 0;
}

    .slick-dots li button {
        width: 60px;
        height: 9px;
        padding: 0;
        background: url(../layout/slider_dot.png);
        background-repeat: no-repeat;
        background-position: center center;
    }

    .slick-dots li.slick-active button {
        background: url(../layout/slider_dot_active.png);
    }

    .slick-dots li:first-child button {
        background: url(../layout/slider_first_dot.png);
    }

    .slick-dots li:last-child button {
        background: url(../layout/slider_last_dot.png);
    }

section.blue .slick-dots li:last-child button,
section.red .slick-dots li:last-child button,
section.black .slick-dots li:last-child button,
section.mediumgray .slick-dots li:last-child button {
    background: url(../layout/slider_last_dot.png);
}

    .slick-dots li.slick-active:first-child button {
        background: url(../layout/slider_first_dot_active.png);
    }

    .slick-dots li.slick-active:last-child button {
        background: url(../layout/slider_last_dot_active.png);
    }

    .slick-dots li button:before,
    .slick-dots li.slick-active button:before {
        display: none;
    }

.slick-dotted.slick-slider {
    margin-bottom: 50px;
}

@media (max-width: 575.98px) {
    .slick-dots li {
        width: 20px;
    }

        .slick-dots li button {
            width: 20px;
            background: url(../layout/slider_dot_mobile.png);
        }

        .slick-dots li.slick-active button {
            background: url(../layout/slider_dot_active_mobile.png);
        }

        .slick-dots li:first-child button {
            background: url(../layout/slider_first_dot_mobile.png);
        }

        .slick-dots li:last-child button {
            background: url(../layout/slider_last_dot_mobile.png);
        }

        .slick-dots li.slick-active:first-child button {
            background: url(../layout/slider_first_dot_active_mobile.png);
        }

        .slick-dots li.slick-active:last-child button {
            background: url(../layout/slider_last_dot_active_mobile.png);
        }
}

/******** TIMELINE SLIDER *********/

.timelineslider .slick-next {
    background: url(../layout/slider-right-arrow-inner.png) no-repeat center center;
}

.timelineslider .slick-prev {
    background: url(../layout/slider-left-arrow-inner.png) no-repeat center center;
}

.timelineslider .item {
    max-width: 240px;
    background: url(../layout/timeline_line.png) no-repeat;
    background-position-x: left;
    background-position-y: center;
    height: 530px;
    display: flex;
}

    .timelineslider .item.top {
    }

    .timelineslider .item.bottom {
        align-items: flex-end;
    }

    .timelineslider .item .img {
        position: relative;
    }

    .timelineslider .item .date {
        display: block;
        font-size: 16px;
        font-weight: 900;
        color: #002f87;
        padding-bottom: 1em;
    }

    .timelineslider .item .txt {
        display: block;
        height: 130px;
        padding-bottom: 1em;
    }

    .timelineslider .item .data {
        padding: 1.5em 0;
    }

    .timelineslider .item.bottom .data {
        padding-bottom: 0;
    }

.timelineslider {
    margin-left: 70px;
    margin-right: 70px;
}

    .timelineslider .slick-next {
        right: -70px;
    }

    .timelineslider .slick-prev {
        left: -70px;
    }
section.blue .timelineslider .item,
section.red .timelineslider .item,
section.black .timelineslider .item,
section.mediumgray .timelineslider .item {
    background: url(../layout/timeline_line_alternative.png) no-repeat;
    max-width: 240px;
    background-position-x: left;
    background-position-y: center;
    height: 540px;
    display: flex;
}
    section.blue .timelineslider .item .date, section.red .timelineslider .item .date, section.black .timelineslider .item .date,
    section.blue .timelineslider .item .txt, section.red .timelineslider .item .txt, section.black .timelineslider .item .txt {
        color: #ffffff;
    }
@media (max-width: 991.98px) {
    .newsection .news {
        flex-direction: column;
        align-items: center;
    }
}

@media (min-width: 992px) and (max-width: 1439.98px) {
    .newsection .news {
        justify-content: flex-start;
    }

    .news .item {
        max-width: 360px;
        margin-right: 5em;
    }

    .timelineslider .item {
        height: 490px;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    section.slider-news .container {
        width: 100%;
        max-width: 100%;
        padding-left: 30px;
        padding-right: 30px;
    }

    section.slider-news .head {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
    }

        section.slider-news .head .sectionsubtitle,
        section.slider-news .head .sectionsubtitle h2 {
            padding-bottom: 0.4em;
        }

    section.slider-news .news .item {
        width: 345px !important;
    }

    .timelineslider .item {
        height: 490px;
    }
}

@media (max-width: 767.98px) {
    section.slider-news .head .sectionsubtitle,
    section.slider-news .head .sectionsubtitle h2 {
        padding-bottom: 0.4em;
    }

    section.slider-news .news .item {
        width: 360px !important;
    }

    .slick-next {
        right: 0;
    }

    .slick-prev {
        left: 0;
    }

    .timelineslider {
        margin-left: 0;
        margin-right: 0;
    }

        .timelineslider .slick-next {
            right: 0;
        }

        .timelineslider .slick-prev {
            left: 0;
        }
}

@media (min-width: 480px) and (max-width: 576px) {
    .slick-next {
        right: 0;
        margin-right: -50px;
    }

    .slick-prev {
        left: 0;
        margin-left: -50px;
    }

    .filterslider .slick-next,
    .resultsfilters .slick-next,
    .galleryslider .slick-next,
    .galleryslidermobile .slick-next {
        margin-right: 0;
    }

    .filterslider .slick-prev,
    .resultsfilters .slick-prev,
    .galleryslider .slick-prev,
    .galleryslidermobile .slick-prev {
        margin-left: 0;
    }


    #navbaromen .slick-prev {
        margin-left: 0;
    }

    #navbaromen .slick-next {
        margin-right: 0;
    }
}

/******** GALLERY SLIDER *********/

.gallery .sectionsubtitle {
    font-size: 18px;
    font-weight: 100;
    padding: 1em 0 2em 0;
}

.galleryslider .item,
.galleryslidermobile .item {
    text-align: center;
    margin: 0 30px;
}

    .galleryslider .item img,
    .galleryslidermobile .item img {
        width: 100%;
        height: auto;
        margin: 0 auto;
        -webkit-box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
        -moz-box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
        box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
    }

        .galleryslider .item img.no-shadow,
        .galleryslidermobile .item img.no-shadow {
            max-width: 120px;
            -webkit-box-shadow: none;
            -moz-box-shadow: none;
            box-shadow: none;
        }

    .galleryslider .item span,
    .galleryslidermobile .item span {
        display: block;
        font-size: 14px;
        text-align: left;
        padding-top: 1em;
    }

.galleryslider a.item,
.galleryslider .item,
.galleryslidermobile .item {
    display: inline-block;
    position: relative;
    color: #4d4f52;
    max-width: 720px;
}

    .galleryslider a.item:hover,
    .galleryslider .item:hover,
    .galleryslidermobile .item:hover {
        text-decoration: none;
        color: #4d4f52;
    }

    .galleryslider a.video span::after,
    .galleryslider .item.video span::after,
    .galleryslidermobile .item.video span::after {
        position: absolute;
        content: "";
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: url(../layout/ytube_gallery_icon.png) no-repeat center center;
        z-index: 10;
    }
section.deepgray.gallery .galleryslider .item span,
section.deepgray.gallery .galleryslidermobile .item span,
section.mediumgray.gallery .galleryslider .item span,
section.mediumgray.gallery .galleryslidermobile .item span,
section.blue.gallery .galleryslider .item span,
section.blue.gallery .galleryslidermobile .item span,
section.red.gallery .galleryslider .item span,
section.red.gallery .galleryslidermobile .item span,
section.black.gallery .galleryslider .item span,
section.black.gallery .galleryslidermobile .item span {
    color: #ffffff
}
/******** SOLUTIONS SLIDER *********/

.solutionslider .slick-list {
    max-width: 1200px;
    margin: 0 auto;
}

.solutionslider.slick-initialized .slick-track {
    display: flex;
}

.solutionslider.slick-initialized .slick-slide {
    display: flex;
    height: auto;
}

.solutionslider2 .slick-list .item .text {
    height: 150px;
}

.solutionslider .slick-list .item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 360px;
    /*height: 300px;*/
    padding: 0;
    margin-right: 50px;
    margin-left: 4px;
    margin-top: 3px;
}

    .solutionslider .slick-list .item .image {
        position: relative;
    }

        .solutionslider .slick-list .item .image img {
            max-width: 100%;
        }

        .solutionslider .slick-list .item .image:after {
            position: absolute;
            content: "";
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(0, 47, 135, 0.4);
        }

        .solutionslider .slick-list .item .image.clear-before:after {
            content: none;
        }

    .solutionslider .slick-list .item .data {
        padding: 30px;
        /*height: 100%;*/
        height: auto;
        display: flex;
        flex-direction: column;
    }

    .solutionslider .slick-list .item .title {
        color: #4d4f52;
        min-height: 70px;
        overflow: hidden;
    }

    .solutionslider .slick-list .item .text {
        height: 150px;
    }

.solutionslider .slick-next {
    margin-right: 0;
}

.solutionslider .slick-prev {
    margin-left: 0;
}



.solutionslider.plans .slick-list .item {
    width: 420px;
    margin-right: 23px;
}

    .solutionslider.plans .slick-list .item .data {
        width: 100%;
    }

    .solutionslider.plans .slick-list .item .title {
        font-size: 12px;
        font-weight: 900;
        text-align: center;
        text-transform: uppercase;
        color: #e0174b;
        height: 40px;
        overflow: hidden;
    }

    .solutionslider.plans .slick-list .item .price {
        font-size: 24px;
        font-weight: 900;
        text-align: center;
        color: #4d4f52;
        height: 80px;
        overflow: hidden;
    }

    .solutionslider.plans .slick-list .item .list-unstyled {
        margin: 0;
    }

        .solutionslider.plans .slick-list .item .list-unstyled li {
            padding-left: 40px;
            background: url(../layout/Newcytech/NCT_check_icon.png) no-repeat left top;
            padding-bottom: 1.5em;
        }

.solutionslider2.slick-initialized .slick-track {
    display: flex;
}

.solutionslider2.slick-initialized .slick-slide {
    display: flex;
    height: auto;
}

.solutionslider2 .slick-list .item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 360px;
    /* height: 300px; */
    padding: 0;
    margin-right: 50px;
    margin-left: 4px;
    margin-top: 3px;
}

.item .whitebox, .item.whitebox {
    background-color: #fff;
    padding: 3em;
    -webkit-box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
    box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
    margin-bottom: 2em;
}

.solutionslider2 .slick-list .item .image::after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(51,52,53,0.7);
}

.solutionslider2 .slick-list .item .image {
    position: relative;
}

.solutionslider2 .slick-list .item .data {
    padding: 30px;
    /* height: 100%; */
    height: auto;
    display: flex;
    flex-direction: column;
}

.solutionslider2 .slick-list {
    max-width: 1200px;
    margin: 0 auto;
}

@media (max-width: 575.98px) {
    .solutionslider2 .slick-list .item {
        /*width: auto;*/
        margin-right: 15px;
    }
}

@media (max-width: 767.98px) {


    .solutionslider2 .slick-list {
        max-width: 370px;
    }

    .solutionslider2.plans .slick-list {
        max-width: 440px;
    }
}


@media (min-width: 768px) and (max-width:1199.98px) {
    .solutionslider2 .slick-list {
        max-width: 790px;
    }

    .solutionslider2.plans .slick-list {
        max-width: 900px;
    }

        .solutionslider2.plans .slick-list .item {
            width: 420px;
            margin-right: 45px;
        }
}

@media (min-width: 1200px) {
    .solutionslider2 .slick-list {
        max-width: 1200px;
    }

    .solutionslider2.plans .slick-list {
        max-width: 1325px;
    }
}

@media (min-width: 1200px) {
    .solutionslider2 .slick-list {
        max-width: 1200px;
    }

    .solutionslider2.plans .slick-list {
        max-width: 1325px;
    }
}

@media (max-width: 575.98px) {
    .solutionslider .slick-list .item {
        /*width: auto;*/
        margin-right: 15px;
    }
}

@media (max-width: 767.98px) {
    .galleryslider a.item,
    .galleryslider .item,
    .galleryslidermobile .item {
        margin: 0 10px;
    }

    .solutionslider .slick-list {
        max-width: 370px;
    }

    .solutionslider.plans .slick-list {
        max-width: 440px;
    }
}

@media (min-width:768px) and (max-width: 991.98px) {
    .galleryslider a.item,
    .galleryslider .item,
    .galleryslidermobile .item {
        max-width: 480px;
        margin: 0 10px;
    }
}

@media (min-width: 768px) and (max-width:1199.98px) {
    .solutionslider .slick-list {
        max-width: 790px;
    }

    .solutionslider.plans .slick-list {
        max-width: 900px;
    }

        .solutionslider.plans .slick-list .item {
            width: 420px;
            margin-right: 45px;
        }
}

@media (min-width: 1200px) {
    .solutionslider .slick-list {
        max-width: 1200px;
    }

    .solutionslider.plans .slick-list {
        max-width: 1325px;
    }
}

/******** HOME NEWS & AWARDS *********/

section.homeawards .sectionsubtitle,
section.homeawards .sectionsubtitle h2 {
    font-size: 30px;
    color: #4d4f52;
}

section.homeawards .btn-outline-primary.blue {
    color: #e0174b;
    border-color: #e0174b;
}

section.red.homeawards .btn-outline-primary.blue,
section.blue.homeawards .btn-outline-primary.blue,
section.black.homeawards .btn-outline-primary.blue {
    color: #ffffff;
    border: 1px solid #ffffff;
}

.homeawards .item {
    overflow: hidden;
    padding-left: 5em;
    padding-bottom: 5em;
}

    .homeawards .item img {
        padding-bottom: 1em;
    }

    .homeawards .item .title {
        font-size: 16px;
        font-weight: 900;
    }


    .homeawards .item .date {
        font-size: 16px;
    }

.homeawards.red .item .date, .homeawards.black .item .date, .homeawards.blue .item .date,
.homeawards.red .item .title, .homeawards.black .item .title, .homeawards.blue .item .title {
    color: #ffffff;
}

@media (min-width:992px) {
    .homeawards .item:nth-last-child(-n+2) {
        padding-bottom: 0;
    }
}


/******** HOME CASE & THINKING *********/
.casestudy .container-fluid {
    position: relative;
    /*min-width: 480px;*/
    padding-left: 30px;
    padding-right: 30px;
}

.casestudy .item {
    padding-bottom: 30px;
}

    .casestudy .item .img {
        position: relative;
        width: 100%;
        background-repeat: no-repeat;
        background-position: center center;
        background-size: cover;
    }

.casestudy .col-4.item .img {
    padding-bottom: 67.90%;
}

.casestudy .col-8.item .img {
    padding-bottom: 33.33%;
}

.casestudy .item .data {
    position: absolute;
    width: 50%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(6,47,135,0.7);
    padding: 1em;
    color: #fff;
}

    .casestudy .item .data.blue {
        background-color: rgba(19,21,67,0.7);
    }

    .casestudy .item .data.gray {
        background-color: rgba(51,52,53,0.7);
    }

.casestudy .item .cat {
    font-size: 12px;
    padding-bottom: 3em;
}

.casestudy .item .title {
    font-size: 24px;
    font-weight: 900;
    padding-bottom: 1em;
}

@media (min-width:768px) {
    .casestudy .item .title {
        height: 120px;
        max-width: 250px;
    }
}

.casestudy .item .more a {
    font-size: 12px;
    font-weight: 900;
    color: #fff;
}

.casestudy .item .datamobile {
    padding: 2em;
    color: #002f87;
}

    .casestudy .item .datamobile .more a {
        font-size: 16px;
        color: #002f87;
        background: url(../layout/more-arrow.png) no-repeat right center;
        padding-right: 30px;
    }

section.sharepaper {
    background-color: #f1f1f1;
    padding: 5px 0;
}

    section.sharepaper .box {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    section.sharepaper .date {
        font-size: 12px;
        letter-spacing: 1px;
    }

    section.sharepaper .action {
        display: flex;
    }

        section.sharepaper .action > div {
            display: flex;
            justify-content: center;
            align-items: center;
            height: 45px;
            font-size: 16px;
            font-weight: 700;
            color: #002f87;
            line-height: 1.2em;
            letter-spacing: 1px;
            background-color: transparent;
            border: 1px solid #002f87;
            padding: 0 30px;
            margin-right: 30px;
        }

            section.sharepaper .action > div a:hover {
                text-decoration: none;
            }

.a2a_mini {
    margin-top: 12px !important;
    margin-left: -33px !important;
}

@media (max-width:767.98px) {
    section.sharepaper .container {
        max-width: 100%;
    }

    section.sharepaper .box {
        flex-direction: column;
    }

    section.sharepaper .date {
        font-size: 14px;
        margin-top: 10px;
        margin-bottom: 20px;
    }
}

@media (max-width:479.98px) {
    section.sharepaper .action {
        flex-wrap: wrap;
        justify-content: center;
    }

        section.sharepaper .action > div {
            margin-right: 0;
            margin-bottom: 5px;
        }
}

@media (max-width:440px) {
    .a2a_mini {
        margin-left: -1px !important;
    }
}

.filter {
    position: relative;
    text-align: center;
    background-color: #efefef;
    padding: 1em 0;
    margin-bottom: 2em;
}

    .filter .label {
        display: inline-block;
        font-size: 16px;
        font-weight: 700;
        color: #002f87;
        background: url(../layout/filter_arrow_down.png) no-repeat right 40%;
        padding-right: 2.5em;
        cursor: pointer;
    }

        .filter .label:not(.collapsed) {
            background: url(../layout/filter_arrow_up.png) no-repeat right 40%;
        }

#filterbox {
    position: absolute;
    width: 100%;
    top: 52px;
    text-align: left;
    background-color: #fff;
    z-index: 1;
}

    #filterbox .type {
        font-size: 24px;
        font-weight: 900;
        padding-bottom: 1em;
    }

    #filterbox form {
        padding: 2em 0 0 0;
    }

        #filterbox form .list {
            display: flex;
            flex-direction: column;
            align-items: center;
        }

        #filterbox form .control {
            display: flex;
            flex-direction: row;
            justify-content: space-around;
            align-items: center;
            background-color: #efefef;
            padding: 2em 0;
            margin-top: 1em;
        }

            #filterbox form .control .cancel {
                font-size: 18px;
                font-weight: 700;
                color: #95979c;
                background: url(../layout/close_icon.png) no-repeat center right;
                padding-right: 25px;
            }

            #filterbox form .control .reset {
                display: flex;
                color: #95979c;
            }

            #filterbox form .control .resetbutton {
                margin-right: 1em;
            }

.custom-control {
    line-height: 2;
    min-height: 2em;
    padding-left: 3.5em;
    margin-bottom: 1.5em;
}

.custom-control-label {
    font-size: 18px;
    font-weight: 700;
    color: #95979c;
}

    .custom-control-label::before {
        top: 0;
        left: -3em;
        display: block;
        width: 2em;
        height: 2em;
        background-color: #efefef;
        border-radius: 0 !important;
        cursor: pointer;
        box-shadow: none;
    }

    .custom-control-label::after {
        top: 0;
        left: -3em;
        width: 2em;
        height: 2em;
        box-shadow: none;
        cursor: pointer;
    }

.custom-checkbox .custom-control-input:checked ~ .custom-control-label {
    color: #002f87;
}

.custom-control-input:checked ~ .custom-control-label {
    color: #002f87;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
    background-color: #002f87;
    box-shadow: none;
}

.custom-control-input:checked ~ .custom-control-label::before {
    color: #fff;
    background-color: #002f87;
    box-shadow: none;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
    background-image: none;
    box-shadow: none;
}

.custom-control-input:checked ~ .custom-control-label::after {
    box-shadow: none;
}

.custom-control-input:focus ~ .custom-control-label::before {
    box-shadow: none !important;
}


/*********************** CONTENT PAGE ************************/

section.titletext {
    /*padding: 0;*/
}

    section.titletext .title h2 {
        font-size: 24px;
        color: #002f87;
        font-weight: 900;
        padding-top: 30px;
    }
section.blue.titletext .title h2,
section.red.titletext .title h2,
section.black.titletext .title h2 {
    color: #ffffff;
}
    section.titletext .data {
        font-size: 18px;
    }
        /*section.titletext .data .text {
    padding-bottom:2em;
}*/
        section.titletext .data .image {
            display: flex;
            align-items: flex-end;
        }

            section.titletext .data .image.top {
                align-items: flex-start;
            }

            section.titletext .data .image.middle {
                align-items: flex-start;
                padding-top: 30px;
            }

            section.titletext .data .image.center {
                align-items: center !important;
                padding-top: 0 !important;
            }

            section.titletext .data .image.borderight img {
                border-right: 7px solid #e0174b;
            }

    section.titletext.bottomborder .data::after {
        display: block;
        content: '';
        width: 60%;
        height: 1px;
        position: absolute;
        bottom: 0;
        left: 15px;
        background-color: #002f87;
    }

    section.titletext.bottomborder.bottomborder-full .data::after {
        width: 97.5%;
    }

    section.titletext.bottomborder.toright .data::after {
        left: unset;
        right: 15px;
    }

section.titlesubtitle .sectionsubtitle,
section.titlesubtitle .sectionsubtitle h2 {
    padding-bottom: 0;
}

@media (min-width: 1440px) {
    section.titletext .data .text {
        -ms-flex: 0 0 58.333333%;
        flex: 0 0 58.333333%;
        max-width: 58.333333%;
    }

    section.titletext .data .image {
        -ms-flex: 0 0 33.333333%;
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }
}

@media (min-width: 998px) and (max-width: 1439px) {
    section.titletext.bottomborder .data::after {
        width: 45%;
    }
}

/* AWARDS */

.awards .item {
    /*padding-left: 5em;*/
    padding-bottom: 5em;
    overflow: hidden;
}

    .awards .item img {
        padding-bottom: 1em;
    }

    .awards .item .title {
        font-size: 18px;
        font-weight: 900;
    }

    .awards .item .date {
        font-size: 16px;
    }
section.black.awards .item .date,
section.black.awards .item .title,
section.red.awards .item .date,
section.red.awards .item .title,
section.blue.awards .item .date,
section.blue.awards .item .title {
    color: #ffffff;
}
/* SIMPLE PAGE */

.download .item {
    display: flex;
    flex-direction: column;
    align-items: center;
}

    .download .item a {
        display: inline-block;
        max-width: 220px;
        font-size: 21px;
        font-weight: 900;
        color: #002f87;
        text-align: center;
        padding-bottom: 1em;
    }

.video .description {
    font-size: 18px;
    padding-bottom: 3em;
}
.video.blue .description, .video.red .description, .video.black .description {
    color: #ffffff;
}
.videobox {
    max-width: 720px;
}
/******** Contact Form Section  *********/

.contactformsection.deepgray, .contactformsection.blue, .contactformsection.red, .contactformsection.black {
    color: #ffffff
}
/* PARTNERS / SERVICES / CATEGORY SOLUTIONS */
.item .whitebox,
.item.whitebox {
    background-color: #fff;
    padding: 3em;
    -webkit-box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
    box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
    margin-bottom: 2em;
}

.item.whiteboxborder {
    background-color: #fff;
    padding: 3em;
    border-bottom: 5px solid #002f87;
    -webkit-box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
    box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
    margin-bottom: 2em;
}

    .item.whitebox .row,
    .item.whiteboxborder .row {
        width: 100%;
        height: 100%;
        align-content: flex-start;
    }

    .item .whitebox .title,
    .item.whitebox .title,
    .item.whiteboxborder .title {
        font-size: 24px;
        font-weight: 900;
        color: #002f87;
        padding-bottom: 1em;
    }

    .item .whitebox .text,
    .item.whitebox .text,
    .item.whiteboxborder .text {
        color: #4d4f52;
        padding-bottom: 0;
    }


.services .item .whitebox .title,
.services .item.whitebox .title {
    color: #002f87;
    padding-bottom: 2em;
}

.services .itemsbox a.absolute {
    position: absolute;
    top: -80px;
    right: 60px;
}

.category .item,
.partners .item {
    flex-direction: column;
    width: 570px;
}

    .category .item .whitebox,
    .category .item.whitebox,
    .category .item.whiteboxborder {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        min-height: 300px;
        padding: 2em 3em;
    }

        .category .item.whitebox .data {
            display: flex;
            flex-direction: column;
            align-items: flex-start;
        }

        .category .item .whitebox .title,
        .category .item.whitebox .title {
            color: #4d4f52;
            padding-bottom: 0;
        }

.categoryfilters {
    padding: 0;
}

    .categoryfilters .title {
        font-size: 16px;
        font-weight: 700;
        color: #002f87;
        padding-bottom: 0;
    }

.filters {
    display: flex;
    justify-content: space-between;
}

    .filters .item {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        font-size: 16px;
        font-weight: 700;
        color: #a6a8ac;
        line-height: 1.2;
        width: 160px;
        height: 140px;
        padding-top: 2em;
        cursor: pointer;
    }

        .filters .item.active {
            color: #002f87;
            border-bottom: 3px solid #002f87;
        }

        .filters .item .img {
            display: flex;
            justify-content: center;
            align-items: center;
            text-align: center;
            width: 60px;
            height: 60px;
            padding-bottom: 0.5em;
        }

            .filters .item .img img.active {
                display: none;
            }

        .filters .item.active .img img.active {
            display: block;
        }

        .filters .item.active .img img {
            display: none;
        }

@media (min-width:1680px) {
    .certifications .container.list,
    .partners .container.list {
        width: 1170px;
    }
}

@media (min-width:1440px) {
    .certifications .whitebox {
        width: 540px;
    }
}

@media (min-width:992px) and (max-width:1439.98px) {
    .category .item,
    .partners .item,
    .certifications .whitebox {
        width: 450px;
    }
}

@media (min-width:992px) {

    .services .itemsbox {
        max-width: 100%;
        padding-left: 60px;
        padding-right: 60px;
    }

    .category .item .whitebox {
        padding: 2em 3em;
    }
}

@media (min-width:768px) and (max-width:991.98px) {

    .services .itemsbox a.absolute {
        right: 15px;
    }

    .services .itemsbox,
    .certifications .container,
    .category .container.list,
    .partners .container.list {
        max-width: 780px;
    }

    .category .item,
    .partners .item {
        width: 360px;
    }

        .category .item .whitebox,
        .category .item.whitebox {
            min-height: 350px;
        }

    .filters .item .text-center {
        font-size: 14px;
    }
}

@media (max-width:991.98px) {
    .categoryfilters .container {
        max-width: 100%;
    }

    .categoryfilters .title {
        justify-content: center;
        padding: 2em 0;
    }

    .categoryfilters .filters {
        background-color: #fff;
    }

    .item .whitebox .row,
    .item.whitebox,
    .partners .item {
        flex-direction: column;
        flex-wrap: nowrap;
        width: 354px;
    }

    .category .whitebox > .row {
        height: 100%;
        align-content: flex-start;
        flex-direction: column;
    }

    .category .whitebox .image {
        flex: 0 0 110px;
        overflow: hidden;
    }

    .category .whitebox .data {
        display: flex;
        flex-direction: column;
        flex: 1 1 auto;
    }
}

@media (max-width:767.98px) {
    .item .whitebox .row,
    .item.whitebox,
    .partners .item {
        margin-left: auto;
        margin-right: auto;
    }

    .category .solutionData {
        flex-direction: column;
        margin-right: 0;
        margin-left: 0;
    }

    .category .item,
    .partners .item,
    .item .whitebox .row,
    .item.whitebox {
        width: 100%;
    }

    .category .eq-height,
    .certifications .eq-height,
    .partners .eq-height {
        flex-basis: 100%;
    }

    .category .item .whitebox,
    .category .item.whitebox {
        min-height: 380px;
    }
}
/* TESTIMONIAL */

section.testimonial {
    padding: 5em 0;
}

    section.testimonial .imagea {
        position: absolute;
        max-width: 600px;
        top: 50%;
        transform: translateY(-50%);
        right: 0;
    }

    section.testimonial .name {
        padding-bottom: 2em;
    }

        section.testimonial .name span {
            font-size: 24px;
            font-weight: 700;
        }

/* RESULTS */

section.results .numbersbox {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

section.results .numbers {
    display: flex;
    width: 50%;
    align-items: center;
    margin-bottom: 1em;
}

    section.results .numbers span.num {
        display: inline-block;
        min-width: 120px;
        font-size: 36px;
        font-weight: 900;
        color: #002f87;
        margin-right: 0.4em;
    }

    section.results .numbers span.txt {
        display: inline-block;
        width: 50%;
        color: #002f87;
        font-weight: 600;
        line-height: 1.2em;
    }

section.results .checkedbox {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}

section.results .checked {
    display: flex;
    width: 340px;
    align-items: center;
    padding-bottom: 2em;
}

    section.results .checked span.icon {
        display: inline-block;
        padding-right: 3.5em;
        background: url(../layout/result_icon.png) no-repeat;
        background-size: 68px 68px;
        width: 68px;
        height: 68px;
        margin-right: 49px;
    }

    section.results .checked span.txt {
        display: inline-block;
        line-height: 1.2em;
        width: 50%;
    }
section.blue.results .numbers span.num, section.red.results .numbers span.num, section.black.results .numbers span.num,
section.blue.results .numbers span.txt, section.red.results .numbers span.txt, section.black.results .numbers span.txt {
    color: #ffffff
}

section.blue.results .checked span.icon, section.mediumgray.results .checked span.icon, section.black.results .checked span.icon, section.red.results .checked span.icon {
    background: url(../layout/result_icon_alternative.png) no-repeat;
}

section.blue.results .checked span.txt, section.red.results .checked span.txt, section.black.results .checked span.txt, section.mediumgray.results .checked span.txt {
    color: #ffffff;
}

/* NUMBERS */

section.numbers .item {
    padding-bottom: 5em; 
}

    section.numbers .item .num {
        font-size: 36px;
        font-weight: 900;
        color: #002f87;
    }

    section.numbers .item .title {
        font-size: 18px;
        font-weight: 900;
        padding-right: 1em;
    }
section.blue.numbers .item .num, section.red.numbers .item .num, section.black.numbers .item .num, section.blue.numbers .item .title, section.red.numbers .item .title, section.black.numbers .item .title, section.blue.numbers .item .txt, section.red.numbers .item .txt, section.black.numbers .item .txt {
    color: #ffffff;
}
/* INDUSTRIES */

section.industries .leftbox {
    max-width: 37%;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

section.industries .imagebox {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

section.industries .graylayer {
    height: 100%;
    background-color: rgba(51,52,53,0.7);
}

section.industries .title {
    font-size: 24px;
    font-weight: 900;
    line-height: 1.5;
    color: #fff;
    padding: 4em 3em 4em 5em;
}

section.industries .imagebox .title {
    font-size: 24px;
    font-weight: 900;
    line-height: 1.5;
    text-align: center;
    color: #fff;
    padding: 6em 0;
}

section.industries .rightbox {
    flex-direction: column;
    display: flex;
    justify-content: center;
    font-size: 24px;
    background-color: #f1f1f1;
    padding: 0;
}

    section.industries .rightbox .list {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
    }

    section.industries .rightbox .item {
        font-size: 12px;
        min-height: 90px;
        flex-basis: 33%;
        display: flex;
        align-items: flex-start;
        padding: 0 8% 30px 0;
    }

    section.industries .rightbox img {
        max-width: 50px;
        width: 100%;
        vertical-align: top;
        margin-right: 25px;
    }

    section.industries .rightbox .item a {
        font-size: 12px;
        font-weight: 900;
        color: #4d4f53;
        margin-bottom: 30px;
    }

@media (min-width:992px) {
    section.industries .rightbox {
        padding: 2em 2.5em;
    }

    /*section.industries .rightbox .col-4:nth-child(3n+2) {
            text-align: center;
        }

        section.industries .rightbox .col-4:nth-child(3n+3) {
            text-align: right;
        }*/
}

@media (max-width:991.98px) {
    section.industries .rightbox {
        flex-direction: unset;
        display: block;
        justify-content: unset;
        font-size: 24px;
        background-color: #f1f1f1;
        padding: 3em 2em 0;
    }

        section.industries .rightbox .item {
            font-size: 12px;
            height: 120px;
            flex-basis: unset;
            display: block;
            align-items: unset;
            padding: 0;
        }

        section.industries .rightbox img {
            margin-bottom: 20px;
        }
}

@media (max-width:767.98px) {
    section.industries .rightbox .item a {
        display: block;
    }
}


/* PARTNER */
@media (max-width:991.98px) {
    .imagetext .row .image {
        order: 1;
    }
}

.partnerportfolio {
    z-index: 3;
}

    .partnerportfolio .itembox {
        display: flex;
        justify-content: center;
    }

    .partnerportfolio .item {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 240px;
        height: 200px;
        border-bottom: 4px solid #a6a8ac;
        margin-bottom: 60px;
    }

        .partnerportfolio .item .title {
            font-size: 12px;
            font-weight: 900;
            color: #a6a8ac;
            padding: 0;
            padding-top: 2.5em;
        }

        .partnerportfolio .item .image {
            margin: auto 0;
        }

    .partnerportfolio a:hover {
        text-decoration: none;
    }

    .partnerportfolio .active .item {
        height: 100%;
        background-color: #f1f1f1;
        border: 0;
        padding-bottom: 60px;
        border-bottom: 4px solid #f1f1f1;
        margin-bottom: 0;
    }

        .partnerportfolio .active .item .title {
            color: #e0174b;
        }

    .partnerportfolio .detail {
        background-color: #f1f1f1;
    }

        .partnerportfolio .detail .box {
            position: relative;
            max-width: 1200px;
            background-color: #fff;
            padding: 4em 8em;
            margin: 30px auto;
            -webkit-box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
            -moz-box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
            box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
        }

            .partnerportfolio .detail .box .name {
                font-size: 24px;
                font-weight: 900;
                color: #002f87;
                padding-bottom: 1em;
            }

            .partnerportfolio .detail .box .data {
                display: flex;
                width: 95%;
                justify-content: space-between;
            }

        .partnerportfolio .detail .data .text {
            width: 70%;
            font-size: 16px;
            padding-bottom: 0;
        }

        .partnerportfolio .detail .box .link .btn-primary {
            background-color: #e0174b;
        }

        .partnerportfolio .detail .box .close {
            position: absolute;
            top: .5em;
            right: 1em;
        }

        .partnerportfolio .detail .box .certicons {
            display: flex;
            flex-wrap: wrap;
            padding-top: 50px;
        }

        .partnerportfolio .detail .box .certicon {
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            font-size: 12px;
            margin-right: 3em;
        }

            .partnerportfolio .detail .box .certicon .url {
                font-size: 16px;
                margin-top: 30px;
            }



@media (min-width: 768px) and (max-width: 991.98px) {
    .partnerportfolio .detail .box {
        padding: 4em 6em;
    }

        .partnerportfolio .detail .box .data {
            width: 100%;
        }

        .partnerportfolio .detail .box .link {
            margin-top: auto;
        }

    .vendorsicons .list {
        max-width: 100%;
    }
}

@media (max-width: 767.98px) {
    .partnerportfolio .detail .box {
        padding: 4em 2em;
    }

        .partnerportfolio .detail .box .data {
            flex-direction: column;
            width: 100%;
        }

    .partnerportfolio .active {
        background-color: #f1f1f1;
        padding: 0;
    }

        .partnerportfolio .active .item {
            height: 250px;
        }

    .partnerportfolio .detail .data .text {
        width: 100%;
    }

    .partnerportfolio .detail .box .link {
        margin-top: 30px;
    }
}

/* SERVICES */

@media (min-width:1440px) {
    .services .right {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }
}

@media (min-width:1200px) and (max-width:1439.98px) {
    .services .left {
        flex: 0 0 50%;
        max-width: 50%;
    }
}

.services .left a {
    display: block;
    font-weight: 700;
    color: #4d4f52;
    margin-bottom: 2em;
}

.services .action {
    position: relative;
    display: flex;
    align-items: center;
    margin-top: 2em;
}

    .services .action .title {
        font-size: 18px;
        font-weight: 700;
        color: #e0174b;
        width: 66%;
        padding: 0 1em 0 0;
    }

    .services .action a {
        margin-right: 1em;
    }

        .services .action a:last-child {
            margin-right: 0;
        }
section.blue.vendors.services .action .title,
section.blue.vendors.services .left a,
section.blue.vendors.services .action a,
section.red.vendors.services .action .title,
section.red.vendors.services .left a,
section.red.vendors.services .action a,
section.black.vendors.services .action .title,
section.black.vendors.services .left a,
section.black.vendors.services .action a {
    color: #ffffff;
}
/******** LINE SEPARATOR SECTION *********/
.separator .line {
    margin-left: 0;
    margin-right: auto;
    margin-top: 20px;
    margin-bottom: 20px;
    width: 100%;
}

    .separator .line.half-width {
        width: 50%;
    }

.line.color-blue {
    border-bottom: 1px solid #002f87;
}

.line.color-red {
    border-bottom: 1px solid #e0174b;
}

.line.color-gray {
    border-bottom: 1px solid #a6a8ac;
}

.line.color-black {
    border-bottom: 1px solid #000000;
}
/* MAP */

.map .mapcontainer {
    position: relative;
}

.maptitle {
    position: absolute;
    top: 14%;
    left: 10%;
    font-size: 36px;
    font-weight: 900;
    color: #fff;
    z-index: 500;
}

.mappopup {
    display: none;
    position: absolute;
    top: 30%;
    left: 10%;
    max-width: 260px;
    width: 260px;
    font-size: 12px;
    background-color: #fff;
    padding: 2.5em 1.5em;
    box-shadow: 3px 4px 6px 0px rgba(0, 0, 0, 0.3);
    z-index: 500;
}

    .mappopup::after {
        left: 92%;
        top: 25%;
        border: solid #fff;
        content: " ";
        height: 0;
        width: 0;
        position: absolute;
        pointer-events: none;
        border-left-color: #fff;
        border-width: 20px;
        margin-top: -20px;
        box-shadow: 3px 4px 6px 0px rgba(0, 0, 0, 0.3);
        transform: rotate(-45deg);
    }


    .mappopup .title {
        font-size: 24px;
        font-weight: 900;
        line-height: 1.2;
        color: #d4003a;
        max-width: 100px;
        margin-bottom: 1em;
    }

    .mappopup .data {
        display: flex;
        flex-direction: column;
    }

    .mappopup .address {
        min-height: 3em;
        background: url(../layout/map-marker-info.png) no-repeat left top;
        padding-left: 3em;
        margin-bottom: 2em;
    }

    .mappopup .tel {
        min-height: 3em;
        background: url(../layout/map-tel-info.png) no-repeat left top;
        line-height: 2;
        padding-left: 3em;
        margin-bottom: 2em;
    }

    .mappopup .email {
        min-height: 3em;
        background: url(../layout/map-email-info.png) no-repeat left top;
        padding-left: 3em;
        margin-bottom: 2em;
    }

.leaflet-touch .leaflet-control-layers, .leaflet-touch .leaflet-bar {
    border: 0 !important;
}

    .leaflet-touch .leaflet-bar a {
        font-family: Museosans, Helvetica, Arial, sans-serif;
        font-size: 27px;
        font-weight: 700;
        color: #092f87;
        width: 50px;
        height: 40px;
        line-height: 40px;
        background-color: #dfdfdf;
        border: 0 !important;
        border-radius: 0 !important;
        margin-bottom: 5px;
    }

.leaflet-right .leaflet-control {
    margin-right: 20px;
}

.leaflet-top .leaflet-control {
    margin-top: 20px;
}

@media (min-width:992px) {
    .mappopup .container {
        min-width: auto;
    }
}

@media (max-width:991.98px) {
    .maptitle {
        top: 10%;
        padding: 0.4em 1em;
        background: rgba(51,52,53,0.7);
    }

    .mappopup {
        position: relative;
        left: 0;
        top: 0;
        font-size: 16px;
        width: 100%;
        max-width: 100%;
        background-color: #efefef;
        box-shadow: none;
    }

        .mappopup::after {
            left: 48%;
            top: 0;
            border: solid #efefef;
            border-width: 20px;
            border-left-color: #efefef;
            box-shadow: none;
        }

        .mappopup .title {
            max-width: 100%;
            margin-bottom: 0;
        }

        .mappopup .data {
            flex-direction: row;
            justify-content: space-between;
        }
}

@media (max-width:767.98px) {
    .maptitle {
        text-align: left;
        top: 0;
        left: 0;
        right: 0;
    }
}

@media (max-width: 575.98px) {
    .mappopup .data {
        flex-direction: column;
    }
}


/* SECTION DATA TABLE */

.datatable .title {
    background-color: #f1f1f1;
    /*padding:0 30px;*/
}

    .datatable .title h2 {
        font-size: 24px;
        font-weight: 900;
        color: #002f87;
        padding-left: 30px;
        padding-right: 30px;
    }

.datatable .data {
    display: flex;
    justify-content: space-between;
    font-size: 18px;
    background-color: #f1f1f1;
    overflow: auto;
}

    .datatable .data .column {
        flex-basis: 100%;
    }

        /*.datatable .data .column.firstcolumn {
            font-size: 16px;
            font-weight: 900;
        }*/

        .datatable .data .column span {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            height: 60px;
            padding: 15px;
        }

            .datatable .data .column span:nth-child(even) {
                background-color: #fff;
            }

        .datatable .data .column:first-child span {
            padding-left: 30px;
        }

        .datatable .data .column:last-child span {
            padding-right: 30px;
        }

        .datatable .data .column:nth-child(2) span,
        .datatable .data .column:nth-child(3) span {
            justify-content: center;
            text-align: center;
        }

        .datatable .data .column.firstcolumn span {
            justify-content: flex-start;
        }

        .datatable .data .column .columnheader {
            font-weight: 700;
        }

        .datatable .data .column.firstcolumn .columnheader {
            font-weight: 900;
        }

/* CAMPAIGN FORM SECTION */

.campaign-form-section .successContent,
.campaign-form-section .errorContent {
    margin-bottom: 20px;
    display: none;
}

.campaign-form-section .field-validation-valid {
    display: none;
}

.campaign-form-section .field-validation-error {
    display: block;
}

.campaign-form-section .form-field-wrapper {
    margin-bottom: 2rem;
}

    .campaign-form-section .form-field-wrapper input {
        font-size: 16px;
        color: #4d4f52;
        background-color: #f1f1f1;
        padding: 12px 16px;
        border: none;
        border-radius: 0;
    }
.campaign-form-section.gray .form-field-wrapper input {
    color: #4d4f52;
    background-color: #ffffff;
}
.campaign-form-section form {
    width: 100%;
}

.campaign-form-section .form-inner-wrapper {
    padding: 0 15px;
}

.campaign-form-section .form-notice {
    font-size: 16px;
    margin-bottom: .5rem;
}

.campaign-form-section #ajaxload {
    display: none;
    margin-bottom: 2rem;
}

.campaign-form-section .form-check {
    margin-bottom: 2rem;
}

    .campaign-form-section .form-check label {
        font-size: 16px;
    }
.blue.campaign-form-section .form-notice,
.red.campaign-form-section .form-notice,
.black.campaign-form-section .form-notice {
    color: #ffffff
}

.blue.campaign-form-section .form-check label,
.red.campaign-form-section .form-check label,
.black.campaign-form-section .form-check label,
.blue.campaign-form-section .form-check label a,
.red.campaign-form-section .form-check label a,
.black.campaign-form-section .form-check label a {
    color: #ffffff
}
/* FORMS */

.fancyform .fancybox-toolbar {
    position: relative;
    max-width: 1170px;
    padding: 0 44px;
    margin: 0 auto;
}

.fancyform .fancybox-content {
    max-width: 1170px;
    padding: 60px 80px;
    background-color: transparent;
}

.fancyform .fancybox-button {
    top: 65px;
    float: right;
    background-color: transparent;
    margin-right: 30px;
}

@media (max-width: 1199.98px) {
    .fancyform .fancybox-button {
        position: absolute;
        right: 0;
        margin-right: 70px;
    }
}


.formsection {
    background-color: #fff;
    border-bottom: 5px solid #002f87;
    padding: 50px 80px;
}

    .formsection .umbraco-forms-submitmessage .title {
        font-size: 36px;
        font-weight: 900;
        color: #002f87;
        padding-bottom: 20px;
    }

.umbraco-forms-MasterForm {
    max-width: 945px;
    font-size: 16px;
    margin: 0 auto;
}

    .umbraco-forms-MasterForm legend {
        font-size: 16px;
    }

h4.umbraco-forms-caption {
    font-size: 36px;
    font-weight: 900;
    color: #002f87;
}

.umbraco-forms-jobtitle {
    font-size: 24px;
    font-weight: 900;
    margin-bottom: 1em;
}

.umbraco-forms-MasterForm .form-group {
    margin-bottom: 2rem;
}

.umbraco-forms-MasterForm label {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.umbraco-forms-MasterForm .help-block {
    font-size: 18px;
}

.umbraco-forms-MasterForm .form-control {
    font-size: 16px;
    color: #4d4f52;
    background-color: #f1f1f1;
    padding: 12px 16px;
    border: none;
    border-radius: 0;
}

    .umbraco-forms-MasterForm .form-control.input-validation-error {
        border: 2px solid #e0174b;
    }

.umbraco-forms-MasterForm .field-validation-error {
    display: block;
    color: #e0174b;
    background: url(../layout/Error_Alert.png) no-repeat left center;
    padding-left: 30px;
    margin-left: 20px;
    margin-top: 10px;
}

.umbraco-forms-MasterForm .form-control:focus {
    border: none;
    box-shadow: none;
}

.umbraco-forms-MasterForm select.form-control:not([size]):not([multiple]) {
    height: auto;
    background: #f1f1f1 url(../layout/menu_arrow_mobile.png) no-repeat 98% 60%;
    -webkit-appearance: none;
}

.umbraco-forms-MasterForm .custom-control {
    padding-left: 2.5em;
    margin: 0;
}

.umbraco-forms-MasterForm .custom-control-input {
    width: 25px;
    height: 25px;
    left: 0;
    z-index: 1;
    cursor: pointer;
}

.umbraco-forms-MasterForm .custom-control-label {
    font-size: 16px;
    font-weight: normal;
    color: #4d4f52;
}

    .umbraco-forms-MasterForm .custom-control-label a {
        font-weight: 700;
    }

    .umbraco-forms-MasterForm .custom-control-label.validation,
    .umbraco-forms-MasterForm .custom-control-label.validation a {
        color: #e0174b;
    }

        .umbraco-forms-MasterForm .custom-control-label.validation::before,
        .umbraco-forms-MasterForm .custom-control-label.validation::after {
            color: #e0174b;
            border: 1px solid #e0174b;
        }

    .umbraco-forms-MasterForm .custom-control-label::before {
        top: -3px;
        left: -2.5em;
        display: block;
        width: 25px;
        height: 25px;
        background-color: #efefef;
        border-radius: 0 !important;
        cursor: pointer;
        box-shadow: none;
    }

    .umbraco-forms-MasterForm .custom-control-label::after {
        top: -3px;
        left: -2.5em;
        width: 25px;
        height: 25px;
        box-shadow: none;
        cursor: pointer;
    }

.umbraco-forms-MasterForm .btn {
    width: 100%;
    padding: 0.6em 1.6em;
    font-size: 16px;
    font-weight: 700;
    white-space: normal;
    color: #002f87;
    line-height: 1.2em;
    letter-spacing: 1px;
    background-color: transparent;
    border: 1px solid #002f87;
    border-radius: 0;
    margin-bottom: 1rem;
}

    .umbraco-forms-MasterForm .btn.focus,
    .umbraco-forms-MasterForm .btn:focus {
        box-shadow: none;
    }

.umbraco-forms-MasterForm .validation-summary-errors ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

    .umbraco-forms-MasterForm .validation-summary-errors ul li {
        color: #e0174b;
        background: #f9e1e7 url(../layout/Error_Alert.png) no-repeat 20px center;
        padding-left: 50px;
        margin-bottom: 1rem;
        height: 2.5rem;
        display: flex;
        align-items: center;
    }

@media (max-width: 991.98px) {
    .umbraco-forms-MasterForm .row.no-gutters {
        margin-right: -15px;
        margin-left: -15px;
    }

    .umbraco-forms-MasterForm .submit {
        display: flex;
        justify-content: space-between;
        padding-left: 15px;
        padding-right: 15px;
    }

    .umbraco-forms-MasterForm .btn {
        width: 40%;
    }
}

@media (max-width: 575.98px) {
    .fancybox-slide {
        padding: 0;
    }

    .fancyform .fancybox-content {
        padding: 20px;
    }

    .formsection {
        padding: 20px;
    }

    .umbraco-forms-MasterForm .form-group {
        margin-bottom: 1.5rem;
    }

    .fancyform .fancybox-button {
        top: 20px;
        margin-right: 20px;
    }

    .formsection .umbraco-forms-submitmessage .btn {
        min-width: 280px;
    }
}


/* TILES */
.tilesbox {
    font-size: 18px;
}

.tile {
    padding: 0;
}

    .tile h4 {
        font-weight: bold;
    }

    .tile a {
        display: block;
        color: #FFF;
        position: relative;
    }

    .tile .data {
        position: absolute;
        background: linear-gradient(to bottom,#002f8773,rgba(0,0,0,0));
        width: 100%;
        height: 100%;
        padding: 30px;
        transition: all 0.5s ease-in-out 0s;
        -moz-transition: all 0.5s ease-in-out 0s;
        -webkit-transition: all 0.5s ease-in-out 0s;
        -o-transition: all 0.5s ease-in-out 0s;
    }

    .tile .over {
        background: none repeat scroll 0 0 rgba(0, 0, 0, 0.8);
        height: 100%;
        position: absolute;
        transition: all 0.5s ease-in-out 0s;
        -moz-transition: all 0.5s ease-in-out 0s;
        -webkit-transition: all 0.5s ease-in-out 0s;
        -o-transition: all 0.5s ease-in-out 0s;
        width: 100%;
        top: 0;
        left: 0;
        opacity: 0;
        visibility: hidden;
        overflow: hidden;
    }

    .tile .txt {
        position: absolute;
        height: 100%;
        bottom: -60px;
        left: 0px;
        padding: 30px;
        text-align: left;
        transition: all 0.5s ease-in-out 0s;
        -moz-transition: all 0.5s ease-in-out 0s;
        -webkit-transition: all 0.5s ease-in-out 0s;
        -o-transition: all 0.5s ease-in-out 0s;
        opacity: 0;
    }

    .tile:hover .data {
        opacity: 0;
        visibility: hidden;
    }

    .tile:hover .over {
        opacity: 1;
        visibility: visible;
    }

    .tile:hover .txt {
        bottom: 0;
        opacity: 1;
    }

    .tile .tile-featured-img-tablet {
        display: none;
    }

    .tile .tile-featured-img-mobile {
        display: none;
    }

    .tile .txt-description-shorter {
        display: none;
    }

@media (max-width: 1439px) {
    .tile .tile-featured-img {
        display: none;
    }

    .tile .tile-featured-img-tablet {
        display: block;
    }

    .tile .txt-description {
        display: none;
    }

    .tile .txt-description-shorter {
        font-size: 16px;
        display: block;
    }

    .tile .data br,
    .tile .txt br {
        display: none;
    }

    .tile h4 {
        font-size: 1.2rem;
    }

    .tile button {
        padding: 0.6em 2em !important;
    }
}

@media (max-width: 575px) {
    .tile .tile-featured-img-tablet {
        display: none;
    }

    .tile .tile-featured-img-mobile {
        display: block;
    }
}


/* FINANCIAL DATA */

.financialdata .btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 240px;
}

    .financialdata .btn::after {
        margin-left: auto;
    }

.financialdata .dropdown-menu {
    width: 100%;
    min-width: unset;
    padding: 0 30px 0 30px;
    border-radius: 0;
}

    .financialdata .dropdown-menu[aria-labelledby="dropdownYear"] {
        height: 320px;
        overflow-y: scroll;
    }


    .financialdata .dropdown-menu .dropdown-item {
        display: block;
        width: 100%;
        min-width: unset;
        padding: 25px 0;
        clear: both;
        font-size: 15px;
        font-weight: 700;
        color: #3c3d41;
        text-align: left;
        white-space: normal;
        background-color: transparent;
        border: 0;
        border-top: 1px solid #a6a8ac;
    }

        .financialdata .dropdown-menu .dropdown-item.active {
            color: #002f87;
        }

        .financialdata .dropdown-menu .dropdown-item:hover {
            color: #002f87;
        }

        .financialdata .dropdown-menu .dropdown-item:first-child {
            border-top: 0;
        }

.findatalist {
    margin-top: 5em;
}

.findatatable {
    display: flex;
    width: 100%;
    max-width: 1024px;
    flex-wrap: wrap;
    margin: 0 0 3em 0;
    padding: 0;
}

    .findatatable > .findatatable-cell {
        width: 33.33%;
    }

.findatatable-cell {
    font-size: 16px;
    font-weight: bold;
    box-sizing: border-box;
    flex-grow: 1;
    width: 100%;
    overflow: hidden;
    padding: 1em;
    border-bottom: solid 1px #ccc;
}

    .findatatable-cell.th {
        font-size: 18px;
        font-weight: bold;
    }
section.blue .findatatable-cell,
section.red .findatatable-cell,
section.black .findatatable-cell,
section.mediumgray .findatatable-cell,
section.blue .findatatable-cell a,
section.red .findatatable-cell a,
section.black .findatatable-cell a,
section.mediumgray .findatatable-cell a {
    color: #ffffff;
}
.findatapager {
    margin-left: 50%;
    transform: translateX(-50%);
    margin-top: 2em;
}

    .findatapager a {
        color: #4d4f53;
        font-weight: bold;
        display: inline-block;
        padding: 0.5em 1em;
        border: 1px solid #ccc;
    }

        .findatapager a:hover {
            background-color: #002f87;
            color: #fff;
            border: 1px solid #002f87;
            text-decoration: none;
        }

        .findatapager a.active {
            background-color: #002f87;
            color: #fff;
            border: 1px solid #002f87;
        }

.quarterlyreports h3 {
    font-size: 24px;
    font-weight: bold;
}

.quarterlyreports .report-column h5 {
    font-weight: bold;
    margin-bottom: 1em;
}

.quarterlyreports .report-column li {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 0.3em;
}

@media (max-width: 575.98px) {
    .financialdata .dropdowns {
        flex-direction: column;
    }

        .financialdata .dropdowns .btn:first-child {
            margin: 15px 0;
        }

    .findatalist {
        margin-top: 2em;
    }
}

/* FINANCIAL DATA */


/******************************************************************************************/
/*********************************                   **************************************/
/********************************* MEDIA QUERIES FTW **************************************/
/*********************************                   **************************************/
/******************************************************************************************/


@media (min-width:1281px) {
    .herosection .col-12 {
        padding-top: 8em;
        padding-bottom: 8em;
    }

    .herosection.largemode .col-12 {
        padding-top: 16em;
        padding-bottom: 16em;
    }

    .sidelinks {
        top: 180px;
    }

    .casestudy .item:nth-child(odd) {
        padding-right: 15px;
    }

    .casestudy .item:nth-child(even) {
        padding-left: 15px;
    }

    .casestudy .item:nth-child(2n+2) .data {
        width: 50.666667%;
    }

    .casestudy .item:nth-child(4n+3) .data {
        width: 49.333333%;
    }
}

@media (max-width:1439.98px) {
}

@media (max-width:1280.98px) {
    .bodyoverlay {
        margin-top: 69px;
    }

    #wrapper {
        padding-left: 0;
    }

        #wrapper::before {
            display: none;
        }

    #side-menu {
        display: none;
    }

    #side-menu-mobile {
        display: block !important;
    }

    .casestudy .item {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }

    .casestudy .col-4.item .img {
        padding-bottom: 33.33%;
    }
}

@media (min-width: 992px) and (max-width: 1439px) {
    section.titletext.bottomborder.bottomborder-full .data::after {
        width: 97%;
    }
}

@media (max-width: 991.98px) {
    .banner .title span,
    .banner .link {
        text-align: center;
    }

    .herosection span.text {
        width: 100%;
    }

    section.titletext.bottomborder .data::after {
        width: 100%;
        position: relative;
        left: auto;
        margin-top: 3em;
    }

    section.titletext.bottomborder.bottomborder-full .data::after {
        width: 100%;
    }

    section.titletext.bottomborder.toright .data::after {
        right: 0;
    }

    section.testimonial .imagea {
        max-width: 360px;
        top: 50%;
        transform: translateY(-50%);
    }

    section.results .numbersbox {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-bottom: 2em;
    }

    section.results .numbers {
        width: 340px;
    }

        section.results .numbers span.num {
            width: 30%;
        }

    .homeawards .item {
        max-width: 240px;
        padding-left: 0;
    }

    .footer .upper {
        padding-bottom: 50px;
    }

    .footer .footerlogo,
    .footer .footersocial {
        display: flex;
        flex-basis: 100%;
        align-items: flex-start;
        padding-bottom: 2em;
    }

    .footer .upper .footer1,
    .footer .upper .footer2 {
        padding-left: 15px;
        padding-right: 8%;
    }

    .footer .footersocial {
        flex-direction: row;
        padding-top: 60px;
        padding-bottom: 0;
    }

    .footersocial .title {
        padding-right: 2.5em;
    }

    .footer .footerlogo .title {
        padding-right: 10%;
    }

    .footer .bottom a {
        padding-right: 30px;
    }
}

@media (max-width:767.98px) {
    body {
        font-size: 18px;
    }

    #searchbar-mob {
        position: relative;
        width: auto;
        top: auto;
        left: auto;
        flex-grow: 1;
    }

        #searchbar-mob input[type=text] {
            width: 80%;
        }

    .herosection .col-12 {
        padding-top: 2em;
        padding-bottom: 2em;
    }

    .herosection.largemode .col-12 {
        padding-top: 4em;
        padding-bottom: 4em;
    }

    .herosection .title,
    .herosection .title h1 {
        font-size: 36px;
    }

    .sectiontitle {
        font-size: 18px;
        line-height: 1.5;
        margin-bottom: 0.6em;
        letter-spacing: 1px;
        background-position-y: top;
    }

    section .text {
        font-size: 16px;
        padding-bottom: 0;
    }

    .banner .title span {
        font-size: 30px;
    }

    .homeawards .sectionsubtitle,
    .homeawards .sectionsubtitle h2 {
        font-size: 24px;
    }

    .companies .img {
        padding-right: 1em;
    }

    .intromaintext span {
        margin-bottom: 1em;
    }

    .more {
        display: flex;
        /*justify-content: center;*/
    }

        .more a {
            font-size: 16px;
            /*text-align: center;*/
            width: 60%;
        }

    .casestudy .item .datamobile .more {
        justify-content: flex-start;
    }

        .casestudy .item .datamobile .more a {
            justify-content: flex-start;
            width: auto;
        }

    section.testimonial {
        text-align: center;
    }

        section.testimonial .name {
            padding-top: 2em;
        }

    section.results .numbersbox {
        flex-direction: column;
    }

    section.results .numbers {
        width: auto;
        margin-right: 0;
    }

        section.results .numbers span.num {
            width: 25%;
        }

    .casestudy .item {
        padding-bottom: 0;
        margin-bottom: 2em;
        -webkit-box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
        -moz-box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
        box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.4);
    }

    .casestudy .col-4.item .img,
    .casestudy .col-8.item .img {
        padding-bottom: 67.90%;
    }

    .casestudy .item .data {
        position: absolute;
        width: 100%;
        height: auto;
        padding: 0.5em 1em;
    }

    .casestudy .item .cat {
        font-size: 16px;
        padding-bottom: 0;
    }

    #filterbox form .control {
        flex-direction: column;
    }

        #filterbox form .control .reset {
            flex-direction: column;
            align-items: center;
        }

        #filterbox form .control .resetbutton {
            margin: 1em 0;
        }

    .download .item {
        flex-direction: row;
        justify-content: space-between;
    }

        .download .item a {
            text-align: left;
            padding-bottom: 2em;
        }

    .timelineslider .item {
        max-width: none;
        background: none;
        height: auto;
    }

        .timelineslider .item .box {
            display: flex;
            flex-direction: column;
            width: 100%;
        }

        .timelineslider .item .data,
        .timelineslider .item .img {
            text-align: center;
        }

        .timelineslider .item .date {
            font-size: 22px;
        }

        .timelineslider .item .img img {
            display: inline-block;
        }

        .timelineslider .item:nth-child(even) .data {
            order: 1;
        }

    .footer,
    .footer a {
        font-size: 15px !important;
    }

        .footer .footerlogo,
        .footer .footersocial {
            flex-direction: column;
            align-items: center;
            text-align: center;
            padding-bottom: 2em;
        }

        .footer .footersocial {
            padding-top: 2em;
            padding-bottom: 0;
        }

            .footer .footerlogo .title,
            .footer .footersocial .title {
                font-size: 15px !important;
                padding-right: 0;
                padding-bottom: 1em;
            }

        .footer .menuitem .title {
            font-size: 15px;
            /*text-align: center;*/
            padding-bottom: 25px;
            cursor: pointer;
        }

            .footer .menuitem .title::before {
                display: inline-block;
                content: "";
                width: 32px;
                height: 13px;
                background: url(../layout/menu_arrow_mobile.png) no-repeat center center;
            }

        .footer .upper {
            padding-bottom: 0;
        }

            .footer .upper .footer2 {
                align-items: flex-start;
                padding-right: 15px;
                padding-left: 48px;
            }

        .footer .menuitem ul.list-unstyled {
            margin-left: 30px;
        }

        .footer .upper .content {
            font-size: 16px;
            color: #95979c;
        }

        .footer .bottom {
            padding: 2em 0;
        }

            .footer .bottom .d-flex {
                flex-direction: column;
                text-align: center;
            }

            .footer .bottom a {
                display: block;
                font-size: 15px;
                line-height: 3em;
                padding-right: 0;
            }

                .footer .bottom a:last-child {
                    margin-left: unset;
                }

        .footer .mobileonly.gray {
            background-color: #a6a8ac;
        }

        .footer .mobileonly .upper {
            padding: 0;
            padding-top: 25px;
            background-color: transparent;
        }

        .footer .mobileonly.gray .upper .content a {
            color: #fff;
        }

        .footer .mobileonly .upper .footer2 .content ul.base {
            margin: 0;
        }
}

@media (max-width: 575.98px) {
    .herosection .title,
    .herosection .title h1 {
        font-size: 28px;
        /*        letter-spacing: 5px;*/
    }

        .herosection .title.title--letterspacing,
        .herosection .title.title--letterspacing h1 {
            letter-spacing: 5px;
        }

    .companies .img img {
        max-width: 100px;
    }
}

/****** Custom Container widths ******/
.container {
    position: relative;
    /*min-width: 450px;*/
}

@media (max-width: 575.98px) {
    .container {
        max-width: 430px;
    }
}

@media (max-width: 767.98px) {
    .main-menu-top .container {
        max-width: 100%;
        padding: 0;
    }

    .main-menu-bottom .container {
        max-width: 100%;
        padding: 0;
    }
}

@media (min-width:768px) and (max-width: 991.98px) {
    .container {
        max-width: 800px;
    }
}

@media (min-width: 1200px) {
    .container {
        max-width: 960px;
    }
}

@media (min-width: 1280px) {
    .main-header .container {
        max-width: 1070px;
    }

    .container {
        max-width: 960px;
    }
}

@media (min-width: 1440px) {
    .main-header .container {
        max-width: 1200px;
    }

    .container {
        max-width: 1200px;
    }
}

@media (min-width: 1680px) {
    .main-header .container {
        max-width: 1510px;
        /*max-width: 1440px;
        max-width: 1200px;*/
    }

    .container {
        max-width: 1440px;
    }
}
/****** Custom Container widths ******/


/****** Custom menu Collapse Breakpoint ******/
@media (min-width: 1281px) {
    .navbar-expand-custom {
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: flex-start;
    }

        .navbar-expand-custom .navbar-nav {
            flex-direction: row;
        }

            .navbar-expand-custom .navbar-nav .nav-link {
                padding-right: .5rem;
                padding-left: .5rem;
            }

        .navbar-expand-custom .navbar-collapse {
            display: flex !important;
            justify-content: space-between;
        }

        .navbar-expand-custom .navbar-toggler {
            display: none;
        }
}
/****** Custom menu Collapse Breakpoint ******/


/****** Custom Display Control ******/
@media (max-width: 1280px) {
    .mobile_visible {
        display: block !important;
        visibility: visible !important;
    }

    .mobile_hidden {
        display: none !important;
        visibility: hidden !important;
    }
}

@media (min-width: 1281px) {
    .desktop_visible {
        display: block !important;
        visibility: visible !important;
    }

    .desktop_hidden {
        display: none !important;
        visibility: hidden !important;
    }
}
/****** Custom Display Control ******/
#cover {
    position: fixed;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    background-image: url(/layout/spinner.gif);
    background-position: center center;
    background-repeat: no-repeat;
    background-color: #fff;
    z-index: 9999;
}

#page404 {
    min-height: 800px;
}

/* 
Generic Styling, for Desktops/Laptops 
*/
.multitable table {
    width: 100%;
    border-collapse: collapse;
}

/* Zebra striping */
.multitable tr:nth-of-type(odd) {
    background: #eee;
}

.multitable th {
    background: #4d4f52;
    color: white;
    font-weight: bold;
}

.multitable td, .multitable th {
    padding: 6px 12px;
    border: 1px solid #ccc;
    text-align: left;
    min-height: 3.9em;
    line-height: 1.4em;
}

/* 
Max width before this PARTICULAR table gets nasty
This query will take effect for any screen smaller than 760px
and also iPads specifically.
*/
@media only screen and (max-width: 760px), (min-device-width: 768px) and (max-device-width: 1024px) {

    .responsive-table-input-matrix {
        display: block;
        position: relative;
        width: 100%;
    }

        .responsive-table-input-matrix:after {
            clear: both;
            content: '';
            display: block;
            font-size: 0;
            height: 0;
            visibility: hidden;
        }

        .responsive-table-input-matrix tbody {
            display: block;
            overflow-x: auto;
            position: relative;
            white-space: nowrap;
            width: auto;
        }

            .responsive-table-input-matrix tbody tr {
                display: inline-block;
                vertical-align: top;
            }

                .responsive-table-input-matrix tbody tr td {
                    display: block;
                    text-align: left;
                }

                    .responsive-table-input-matrix tbody tr td:first-child {
                        text-align: left;
                    }

        .responsive-table-input-matrix thead {
            display: block;
            float: left;
            margin-right: 10px;
        }

            .responsive-table-input-matrix thead:after {
                clear: both;
                content: "";
                display: block;
                font-size: 0;
                height: 0;
                visibility: hidden;
            }

            .responsive-table-input-matrix thead th:first-of-type {
                height: 3.9em;
            }

            .responsive-table-input-matrix thead th {
                display: block;
                text-align: right;
            }

                .responsive-table-input-matrix thead th:first-child {
                    text-align: right;
                }
}

.quarterlyreports .box {
    padding-bottom: 2em;
    margin-bottom: 3em;
}

    .quarterlyreports .box:after {
        content: "";
        position: absolute;
        width: 60%;
        left: 50%;
        transform: translateX(-50%);
        border-bottom: 1px solid #a6a8ac;
        margin-top: 1em;
    }

.nav.financial-years {
    justify-content: center;
    border-bottom: none;
    margin: 2em 0;
}

    .nav.financial-years a.tab {
        color: #95979c;
        border-bottom: 1px solid #efefef;
        padding-bottom: 10px;
        margin-right: 2em;
    }

        .nav.financial-years a.tab:last-child {
            margin-right: 0;
        }

        .nav.financial-years a.tab.active {
            color: #002f87;
            border-bottom: 1px solid #002f87;
        }

        .nav.financial-years a.tab:hover {
            text-decoration: none;
            border-bottom: 1px solid #002f87;
        }

        .nav.financial-years a.tab .title {
            font-size: 18px;
            font-weight: 600;
        }

.report-column {
    margin-top: 20px;
    margin-bottom: 20px;
}

    .report-column ul {
        list-style: none;
        padding-left: 0;
    }

.tab-content-flex > div.active {
    display: flex !important;
}

@media (max-width: 575px) {

    .report-column {
        margin-bottom: 0px;
    }
}

/* STRIPE FORM SECTION */

.stripe-form-section .successContent,
.stripe-form-section .errorContent {
    margin-bottom: 20px;
    display: none;
}

.stripe-form-section .field-validation-valid {
    display: none;
}

.stripe-form-section .field-validation-error {
    color: red;
    display: block;
}

.stripe-form-section .form-field-wrapper {
    margin-bottom: 2rem;
}

    .stripe-form-section .form-field-wrapper input,
    .stripe-form-section .form-field-wrapper select,
    .stripe-form-section .form-field-wrapper .StripeElement {
        font-size: 16px;
        color: #4d4f52;
        background-color: #f1f1f1;
        padding: 12px 16px;
        border: none;
        border-radius: 0;
    }

.stripe-form-section .form-inner-wrapper h3 {
    font-size: 18px;
    font-weight: 600;
}

.stripe-form-section .form-inner-wrapper .field-set {
    padding-left: 15px;
}

    .stripe-form-section .form-inner-wrapper .field-set .error {
        font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
        color: red;
    }

.stripe-form-section .form-field-wrapper select.form-control:not([size]):not([multiple]) {
    height: calc(2.25rem + 12px);
}

.stripe-form-section form {
    width: 100%;
}

.stripe-form-section .form-inner-wrapper {
    padding: 0 15px;
}

.stripe-form-section .form-notice {
    font-size: 16px;
    margin-bottom: .5rem;
}

.stripe-form-section #ajaxload {
    display: none;
    margin-bottom: 2rem;
}

.stripe-form-section .form-check {
    margin-bottom: 2rem;
}

    .stripe-form-section .form-check label {
        font-size: 16px;
    }

.stripe-form-section ::-webkit-input-placeholder { /* Chrome/Opera/Safari */
    font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
    text-transform: uppercase;
    color: #868686;
}

.stripe-form-section ::-moz-placeholder { /* Firefox 19+ */
    font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
    text-transform: uppercase;
    color: #868686;
}

.stripe-form-section :-ms-input-placeholder { /* IE 10+ */
    font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
    text-transform: uppercase;
    color: #868686;
}

.stripe-form-section :-moz-placeholder { /* Firefox 18- */
    font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
    text-transform: uppercase;
    color: #868686;
}

.stripeform form .form-check {
    font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
}

.stripeform form .table th, .table td {
    border-top: none;
}

.stripeform form .table {
    margin-bottom: 2rem;
}

.stripeform hr {
    margin-bottom: 2rem;
}

.stripeform .success {
    text-align: center;
}

    .stripeform .success h1 {
        margin-bottom: 1rem;
        color: #062f87;
    }

.stripeform #errorText {
    display: none;
}
.blue.stripe-form-section #introBillingText,
section.blue .stripeform .form-inner-wrapper h3,
section.blue .stripeform .form-check-label,
section.blue .stripeform .form-check-label a,
.red.stripe-form-section #introBillingText,
section.red .stripeform .form-inner-wrapper h3,
section.red .stripeform .form-check-label,
section.red .stripeform .form-check-label a,
.black.stripe-form-section #introBillingText,
section.black .stripeform .form-inner-wrapper h3,
section.black .stripeform .form-check-label,
section.black .stripeform .form-check-label a {
    color: #ffffff;
}
.tb-tooltip {
    display: none;
    position: relative;
    margin-right: 5px;
}

    .tb-tooltip::before {
        font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
        content: "\2003" attr(data-content);
        text-indent: -1em;
        display: inline-block;
        position: absolute;
        bottom: 50%;
        background: #002f87;
        color: #FFF;
        padding: 15px;
        border-radius: 5px;
        opacity: 0;
        transition: 0.3s;
        overflow: hidden;
        width: 230px;
        pointer-events: none;
    }

    .tb-tooltip:hover::before {
        opacity: 1;
        bottom: 100%;
    }

.tooltip-container {
    display: inline-flex;
}

.tb-tooltip svg {
    width: 17px;
}

@media (max-width: 767px) {
    .stripeform form .table .hidden-phone {
        display: none;
    }

    .stripe-form-section .form-inner-wrapper .field-set {
        padding-left: 0;
    }

    .tb-tooltip {
        display: inline;
    }
}
