@import url("https://use.typekit.net/hzs0pdc.css");
@import url('https://fonts.googleapis.com/css2?family=Fira+Mono:wght@400;700&family=Noto+Sans:ital,wght@0,400;0,700;1,400;1,700&display=swap');

* {
    box-sizing: border-box;
}

:root {
    --denim: #1E325C;
    --marigold: #FFBC1F;
    --black-04: #5A6072;
    --black-05: #363A45;
}

section[id] {
    scroll-margin-top: 100px;
}

@media (min-width: 767.98px) {
    section[id] {
        scroll-margin-top: 150px;
    }
}


.pointer-events-none {
    pointer-events: none;
}


/* GRID */

.row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -24px;
    margin-left: -24px;
}

@media (max-width: 767.98px) {
    .row {
        margin-left: -24px;
        margin-right: -24px;
    }
}

.col,
.col-3,
.col-9,
.col-12,
.col-lg-2,
.col-lg-10,
.col-md-3,
.col-md-9 {
    position: relative;
    width: 100%;
    padding-right: 24px;
    padding-left: 24px;
}

.col {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
}

.col-3 {
    flex: 0 0 25%;
    max-width: 25%;
}

.col-9 {
    flex: 0 0 75%;
    max-width: 75%;
}

.col-12 {
    flex: 0 0 100%;
    max-width: 100%;
}

@media (min-width: 768px) {
    .col-md-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-md-9 {
        flex: 0 0 75%;
        max-width: 75%;
    }
}

@media (min-width: 992px) {
    .col-lg-2 {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
    }

    .col-lg-10 {
        flex: 0 0 83.333333%;
        max-width: 83.333333%;
    }
}

/* NAV */

@media (min-width: 991.98px) {
    .notification-bar__content>div img {
        display: inline-block;
        margin-right: 10px;
        width: auto;
        height: 25px;
    }

    .site-header--not-home .nav-container {
        /* padding-left: 50px;
        padding-right: 50px; */
    }
}

.header__logo img {
    height: 40px !important;
    width: auto !important;
}

/* Notification Banner */

.notification-bar {
    color: #1B1D22;
    text-align: center;
    display: none;
    width: 100%;
    align-items: center;
    justify-content: center;
    height: 45px;
    background-color: #FFBC1F;
    position: fixed;
    z-index: 9999;
}

.notification-bar a {
    text-decoration: none;
}

@media (max-width: 770px) {
    .notification-bar {
        text-align: left;
        /* TEMP FOR LONG COPY */
        height: 70px;
    }
}


.notification-bar.closed {
    display: none;
}

.notification-bar__content {
    padding: 0.5rem 3rem 0.5rem 1rem;
    font-family: "trade-gothic-next", "Lato", "Helvetica Neue", "Arial", sans-serif;
    font-weight: 700;
    font-size: 15px;
    line-height: 1.2;
    width: 100%;
}

.notification-bar__content>div {
    overflow: hidden;
    text-overflow: ellipsis;
    display: flex;
    align-items: center;
    justify-content: center;
}

.notification-bar__wrapper {
    display: flex;
    align-items: center;
}

.notification-bar__wrapper a {
    display: flex;
    align-items: center;
}

.notification-bar__content>div img {
    display: none;
}

@media (min-width:992px) {
    .notification-bar__content>div img {
        display: block;
        max-height: 25px;
        width: auto;
    }
}

.notification-bar a {
    color: #1B1D22 !important;
}

.notification-bar__close {
    font-size: 36px;
    font-weight: 300;
    position: absolute;
    cursor: pointer;
    right: -5px;
    opacity: .3;
    top: 0;
    width: 64px;
    line-height: 35px;
}

@media (max-width: 770px) {
    .notification-bar__close {
        /* TEMP FOR LONG COPY */
        right: -25px;
        top: 10px;
    }
}

.notification-bar-hide:hover {
    opacity: .5;
}

.with-notification .notification-bar {
    display: flex;
}


.with-notification .wy-grid-for-nav {
    padding-top: 114px;
}

kbd {
    display: inline-block;
    border: 1px solid #ccc;
    border-radius: 4px;
    padding: 0.1em 0.5em;
    margin: 0 0.2em;
    box-shadow: 0 1px 0px rgba(0, 0, 0, 0.2), 0 0 0 2px #fff inset;
    background-color: #f7f7f7;
}

@media (max-width: 991.98px) {
    .nav-open header {
        position: fixed;
        height: 100vh;
        overflow-x: hidden;
    }

    .nav-open .site-header {
        bottom: 0;
        overflow-x: hidden;
    }

    .nav-open .site-header__col--menu {
        height: calc(100vh - 75px);
        overflow-y: scroll;
        overflow-x: hidden;
        padding-bottom: 100px;
    }
}

/* START NEW NAV */
.header__links {
    font-family: 'trade-gothic-next', sans-serif;
}

.nav-open .site-header {
    bottom: 0;
    overflow-x: hidden;
}

.nav-open .site-header__col--menu {
    height: calc(100vh - 75px);
    overflow-y: scroll;
    overflow-x: hidden;
    padding-bottom: 100px;
}

.site-header__col--menu .site-nav {
    display: none;
    list-style-type: none;
    margin: 0;
    padding-left: 0;
}

@media (max-width:991.98px) {
    .site-header__col--menu .site-nav:before {
        content: "";
        position: absolute;
        left: -10px;
        overflow: hidden;
        top: 0;
        height: 2px;
        background-color: #ffbc1f;
        width: calc(100% + 20px);
    }
}

@media (min-width:992px) {
    .site-header__col--menu .site-nav {
        display: flex;
    }
}

@media (min-width:992px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu {
        opacity: 0;
        position: absolute;
    }
}

@media (max-width:991.98px) {
    .site-header__col--menu .site-nav__toplink.is-active .toplink-wrapper {
        border-bottom: none;
    }
}

.site-header__col--menu .site-nav__toplink>a {
    color: #1b1d22;
    display: block;
    font-size: 24px;
    line-height: 1;
    /* padding: 0 24px; */
    text-decoration: none;
    transition: color .3s ease-in-out;
}

@media (max-width:991.98px) {

    .sub-menu__partners .sub-menu__link-col-header,
    .sub-menu__customers .sub-menu__link-col-header {
        display: none;
    }
}


body:not([data-custom-theme="light"]) .site-header__col--menu .site-nav__toplink>a {
    color: #FFFFFF;
}


@media (max-width:991.98px) {
    .site-header__col--menu .site-nav__toplink>a {
        font-weight: 700;
        color: #1e325c;
    }

    .site-header__col--menu .site-nav__toplink>a .toplink-wrapper {
        padding: 40px 0;
        border-bottom: 1px solid #babec9;
    }
}

@media (min-width:992px) {
    .site-header__col--menu .site-nav__toplink>a {
        line-height: 150%;
        padding: 26px 10px;
        font-size: 14px;
    }
}

@media (min-width:1600px) {
    .site-header__col--menu .site-nav__toplink>a {
        font-size: 15px;
    }
}

@media (max-width:991.98px) {
    .site-header__col--menu .site-nav__toplink>a span {
        float: right;
    }

    .site-header__col--menu .site-nav__toplink>a span svg {
        height: 18px;
        transform: rotate(-90deg);
        width: 26px;
    }

    .site-header__col--menu .site-nav__toplink>a span svg path {
        stroke: #1c58d9;
    }
}

.site-header__col--menu .site-nav__toplink>a span svg path {
    transition: stroke .3s ease-in-out;
}

.site-header__col--menu .site-nav__toplink>a:hover {
    color: #1c58d9;
}

.site-header__col--menu .site-nav__toplink>a:hover span svg path {
    stroke: #1c58d9;
}

body:not([data-custom-theme="light"]) .site-header__col--menu .site-nav__toplink>a:hover span svg path {
    stroke: var(--marigold);
}

.site-header__col--menu .site-nav__button {
    border-bottom: none;
    margin: 0 auto;
    max-width: 200px;
    padding-top: 12px;
}

.site-header__col--menu .site-nav__button a {
    font-size: 18px;
    padding: 20px 25px;
    border-width: 1px;
    transition: background-color .3s ease, color 0s ease;
    font-weight: 400;
}

@media (min-width:992px) {
    .site-header__col--menu .site-nav__button a {
        font-size: 13px;
        padding: 5px 10px;
        margin-top: 9px;
    }
}

@media (min-width:1200px) {
    .site-header__col--menu .site-nav__button a {
        font-size: 14px;
    }
}

@media (min-width:1600px) {
    .site-header__col--menu .site-nav__button a {
        font-size: 14px;
        padding: 5px 20px;
    }
}

.site-header__col--menu .site-nav__button a:focus,
.site-header__col--menu .site-nav__button a:hover {
    color: #fff;
}

@media (max-width:991.98px) {
    .site-header::-webkit-scrollbar {
        display: none;
        -ms-overflow-style: none;
        /* IE and Edge */
        scrollbar-width: none;
        /* Firefox */
    }

    .site-header__col--menu .site-nav__button {
        padding-bottom: 20px;
    }
}

@media (min-width:992px) {
    .site-header__col--menu .site-nav__button {
        padding-left: 15px;
    }
}

@media (max-width:991.98px) {
    .site-header__col--menu .site-nav__button--secondary {
        padding: 0 0 40px;
        max-width: 250px;
    }

    .site-header__col--menu .site-nav__button--secondary a {
        padding: 20px 30px;
    }
}

@media (max-width:991.98px) {
    .site-header__col--menu .site-nav__login {
        border-bottom: none;
        text-align: center;
    }

    .site-header__col--menu .site-nav__login a {
        padding-bottom: 20px;
        padding-top: 55px;
    }
}

@media (min-width:992px) {
    .site-header__col--menu {
        display: flex;
        justify-content: flex-end;
    }
}

.site-header__mobile-menu {
    cursor: pointer;
    text-align: right;
    position: absolute;
    right: 0;
    top: 0;
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media (min-width:992px) {
    .site-header__mobile-menu {
        display: none;
    }
}

.site-header__mobile-menu .hamburger-close,
.site-header__mobile-menu.is-active .hamburger-open {
    display: none;
}

.site-header__mobile-menu.is-active .hamburger-close {
    display: inline;
}

@media (min-width:992px) {
    .masthead-trial-form {
        margin-top: 30px;
    }
}

/* NEW NAV DEFER */
.site-header__col--menu .site-nav.nav-is-active {
    display: block;
}

@media (max-width:991.98px) {
    .site-header__col--menu .site-nav__hassubnav:not(.is-active) .sub-menu {
        display: none !important;
    }

    .site-header__col--menu .site-nav__hassubnav.is-active>a svg {
        transform: rotate(0);
    }

    .site-header__col--menu .site-nav__hassubnav.is-active .sub-menu__developers .sub-menu__developers__main,
    .site-header__col--menu .site-nav__hassubnav.is-active .sub-menu__login .sub-menu__links,
    .site-header__col--menu .site-nav__hassubnav.is-active .sub-menu__solutions .sub-menu__solutions__main-wrapper {
        border-bottom: 1px solid #babec9;
        padding-bottom: 20px;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu {
    background-color: #fff;
    display: flex;
    flex-direction: column;
    pointer-events: none;
    z-index: 2;
}

body:not([data-custom-theme="light"]) .site-header__col--menu .site-nav__hassubnav .sub-menu {
    background-color: #000000;
}

@media (min-width:992px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu {
        border-top: 2px solid #ffbc1f;
        box-shadow: 0 4px 15px rgba(0, 0, 0, .1);
        flex-direction: row;
        right: 0;
        top: 73px;
        transition: opacity .15s ease-in-out;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__block {
    margin-bottom: 10px;
}

@media (max-width:991.98px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__block {
        margin-right: 24px;
        margin-left: 24px;
    }
}

@media (min-width:992px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__block {
        margin-bottom: 0;
        padding: 11px;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__block a {
    align-items: center;
    background-color: #ebebef;
    display: flex;
    flex-direction: row;
    padding: 21px 28px;
    text-decoration: none;
}

@media (min-width:992px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__block a {
        flex-direction: column;
        justify-content: center;
        padding: 10px;
        transition: box-shadow .2s ease, background-color .2s ease;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__block a:focus,
    .site-header__col--menu .site-nav__hassubnav .sub-menu__block a:hover {
        background-color: #e8edf8;
    }
}

@media (min-width:768px) and (max-width:1199.98px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__block a {
        width: 14px;
        height: 14px;
    }
}

@media (min-width:1200px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__block a {
        min-width: 161px;
        padding: 21px;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__block--wrapper {
    display: flex;
    flex-direction: row;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__block--icon {
    align-items: center;
    display: flex;
    height: 64px;
}

@media (min-width:768px) and (max-width:1199.98px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__block--icon {
        height: 45px;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__block--icon img {
        height: 40px !important;
        width: auto !important;
    }
}

@media (min-width:1200px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__block--icon {
        height: 64px;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__block--text {
    display: flex;
    flex-direction: column;
}

@media (max-width:991.98px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__block--text {
        margin-left: 30px;
    }
}

@media (min-width:992px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__block--text {
        text-align: center;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__block--text_title {
    color: #1b1d22;
    font-weight: 700;
    font-size: 18px;
    line-height: 150%;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__block--text_learnmore {
    color: #1c58d9;
    font-size: 12px;
}

@media (max-width:991.98px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__links {
        margin-right: 24px;
        margin-left: 24px;
    }
}

@media (min-width:992px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__links {
        align-items: flex-start;
        display: flex;
        padding-left: 40px;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__links:first-child {
        padding-left: 0;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__links ul {
    padding: 0;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__links--single {
    list-style-type: none;
    margin-bottom: 15px;
}

@media (max-width:991.98px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__links--single {
        margin-bottom: 15px;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__links--single a {
    align-items: center;
    color: #1b1d22;
    display: flex;
    font-size: 18px;
    line-height: 150%;
    text-decoration: none;
    transition: color .3s ease-in-out;
}

body:not([data-custom-theme="light"]) .site-header__col--menu .site-nav__hassubnav .sub-menu__links--single a {
    color: rgba(255, 255, 255, 0.72);
}

@media (min-width:992px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__links--single a {
        font-size: 15px;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__links--single a:focus,
.site-header__col--menu .site-nav__hassubnav .sub-menu__links--single a:hover {
    color: #1c58d9;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__links--icon {
    display: inline-block;
    margin-right: 10px;
    text-align: center;
    width: 30px;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__promo {
    padding: 30px 24px;
    background: #e2e8f5;
    margin-bottom: 0;
}

@media (min-width:1200px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__promo {
        padding: 40px 35px 30px;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__promo .promo-heading,
.site-header__col--menu .site-nav__hassubnav .sub-menu__promo .promo-subhead {
    font-size: 15px;
    line-height: 1.5;
    margin: 0;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__promo .promo-heading {
    text-transform: uppercase;
    color: #2c4987;
    font-weight: 700;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__promo .promo-subhead {
    color: #5a6072;
    margin-bottom: 20px;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__promo .promo-block {
    text-decoration: none;
    display: flex;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__promo .promo-block:last-child {
    margin-top: 15px;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__promo .promo-block:hover {
    box-shadow: 0 0 15px #b7c6e5;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__promo .promo-block:hover .promo-block__copy {
    color: #1e325c;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__promo .promo-block--large {
    margin-top: 20px;
    position: relative;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__promo .promo-block--large .promo-block__copy {
    padding: 0 10px 0 15px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

@media (min-width:992px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__promo .promo-block--large .promo-block__copy {
        min-width: 190px;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__promo .promo-block--large .promo-corner-icon {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 14px;
    height: auto;
}

@media (max-width:767.98px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__promo .promo-block--large .promo-block__image img {
        height: 100px;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__promo .promo-block__image img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 95px;
    max-width: none;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__promo .promo-block__copy {
    font-size: 13px;
    color: #1c58d9;
    line-height: 150%;
    font-weight: 700;
    background: #fff;
    display: flex;
    align-items: center;
    padding: 0 10px 0 20px;
}

@media (max-width:991.98px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__promo .promo-block__copy {
        width: 100%;
    }
}

@media (min-width:992px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__promo .promo-block__copy {
        justify-content: center;
        min-width: 160px;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__promo .promo-block__eyebrow {
    font-size: 12px;
    color: #5a6072;
    margin-bottom: 5px;
    font-weight: 400;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu .sub-menu--sm-hidden {
    display: none;
}

@media (min-width:992px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu .sub-menu--sm-visible {
        display: none;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu .sub-menu--sm-hidden {
        display: block;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu .sub-menu__header {
        display: flex;
        align-items: center;
        border-bottom: 1px solid #c5d2ec;
        padding-bottom: 10px;
        margin-bottom: 30px;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu .sub-menu__header>span {
        font-size: 24px;
        color: #2c4987;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu .sub-menu__header a {
        text-decoration: none;
        color: #1b1d22;
        font-size: 14px;
        display: flex;
        align-items: center;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu .sub-menu__header a:hover {
        color: #1c58d9;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu .sub-menu__header img {
        width: 20px;
        margin-left: 20px;
        margin-right: 10px;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu .sub-menu__link-col-header {
    font-size: 21px;
    color: #818698;
    font-weight: 700;
    text-transform: uppercase;
}

@media (min-width:768px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu .sub-menu__link-col-header {
        margin-bottom: 20px;
        margin-top: 0;
        font-size: 15px;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__products ul {
    padding: 0;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__products .sub-menu__links--single {
    margin-bottom: 0;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__products .sub-menu__links--single:not(:last-child) {
    margin-bottom: 15px;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__products .mobile-spacer {
    display: none;
}

@media (max-width:991.98px) {

    .site-header__col--menu .site-nav__hassubnav .sub-menu__products .sub-menu__products__main>:first-child p {
        margin-top: 0;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__products .sub-menu__products__main>* {
        margin-bottom: 50px;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__products .mobile-spacer {
        display: block;
        margin: 0 24px;
        padding: 15px 0;
        border-bottom: 1px solid #babec9;
    }
}

@media (min-width:992px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__products {
        right: unset;
        margin-left: 10px;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__products .sub-menu__products__main {
        padding: 40px 40px 20px;
        display: grid;
        grid-template-columns: 100px 170px;
        -moz-column-gap: 40px;
        column-gap: 40px;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__products .sub-menu__products-link-col-header {
        font-size: 15px;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__solutions ul {
    padding: 0;
}

@media (min-width:992px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__solutions {
        right: unset;
        margin-left: 10px;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__solutions .sub-menu__links--single {
        margin-bottom: 0;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__solutions .sub-menu__links--single:not(:last-child) {
        margin-bottom: 20px;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__solutions .sub-menu__solutions__main {
        padding: 0 !important;
        display: block !important;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__solutions .sub-menu__solutions__main .sub-menu__solution__main-links {
        display: flex;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__solutions .sub-menu__solutions__main-wrapper {
        padding: 40px 60px;
        display: grid;
        grid-template-columns: 240px 140px;
        -moz-column-gap: 40px;
        column-gap: 40px;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__developers ul {
    padding: 0;
}

@media (min-width:992px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__developers {
        right: unset;
        margin-left: -500px;
        padding: 40px 40px 20px;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__developers .sub-menu__developers-grid-wrapper {
        display: grid;
        grid-template-columns: 170px 170px 170px;
        column-gap: 40px;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__login ul {
    padding: 0;
}

@media (max-width:991.98px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__login .sub-menu__link-col-header {
        display: none;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__login .sub-menu__links-wrapper {
        margin: 0 24px;
    }

    .sub-menu__link-col-header-space {
        margin-top: 50px;
    }
}

@media (min-width:992px) {

    .site-header__col--menu .site-nav__hassubnav .sub-menu__login,
    .site-header__col--menu .site-nav__hassubnav .sub-menu__enterprise {
        right: unset;
        margin-left: -40px;
        padding: 50px 60px 20px;
    }

    .sub-menu__enterprise ul {
        padding: 0;
    }

    .sub-menu__header-flex-deploy {
        margin-top: 30px !important;
    }
}

@media (max-width:768px) {
    .site-nav-login {
        margin-top: 3rem;
    }

    .site-nav-login .toplink-wrapper {
        border-bottom: none !important;
        text-align: center;
    }

    .site-nav-login .sub-menu__links--single a {
        justify-content: center;
    }

    .site-nav-login .sub-menu__links--single {
        margin-bottom: 2rem !important;
    }

    .site-nav-login .sub-menu__links--single:last-child {
        margin-bottom: 5rem !important;
    }

    .site-nav-login .toplink-wrapper span {
        display: none !important;
    }
}

@media (min-width:992px) {
    .site-nav-login {
        margin-left: 2rem !important;
    }
}

@media (min-width:1200px) {
    .site-nav-login {
        margin-left: 6rem !important;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__col {
    display: flex;
    flex-wrap: wrap;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__col .sub-menu__links:first-of-type {
    padding-left: 0;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__col--title {
    color: #818698;
    display: block;
    font-size: 15px;
    font-weight: 700;
    line-height: 150%;
    margin-top: 0;
    flex: 0 0 100%;
}

@media (max-width:991.98px) {
    .site-header__col--menu {
        padding: 0;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__col--title {
        margin-bottom: 0;
        padding-left: 20px;
    }
}

@media (min-width:992px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__col--title {
        margin-bottom: 20px;
    }
}

@media (max-width:991.98px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__col {
        padding-bottom: 70px;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__col:last-child {
        padding-bottom: 20px;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__bar {
    display: none;
}

@media (min-width:992px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu__bar {
        bottom: 0;
        display: block;
        left: 0;
        position: absolute;
        width: 100%;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__bar a {
        background-color: #1c58d9;
        color: #fff;
        display: block;
        font-size: 15px;
        font-weight: 700;
        line-height: 150%;
        padding: 7px 41px;
        text-align: left;
        text-decoration: none;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__bar a:hover {
        background-color: #043cb5;
    }
}

@media (min-width:992px) {
    .site-header__col--menu .site-nav__hassubnav .sub-menu .sub-menu__promo {
        padding-top: 73px;
    }
}

.site-header__col--menu .site-nav__hassubnav:hover .sub-menu {
    opacity: 1;
    pointer-events: auto;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu:focus-within {
    opacity: 1;
    pointer-events: auto;
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__platform-mobile,
.site-header__col--menu .site-nav__hassubnav .sub-menu__solutions-mobile {
    display: flex;
}

@media (min-width:992px) {

    .site-header__col--menu .site-nav__hassubnav .sub-menu__platform-mobile,
    .site-header__col--menu .site-nav__hassubnav .sub-menu__solutions-mobile {
        display: none !important;
    }
}

.site-header__col--menu .site-nav__hassubnav .sub-menu__platform-desktop,
.site-header__col--menu .site-nav__hassubnav .sub-menu__solutions-desktop {
    display: none;
}

@media (min-width:992px) {

    .site-header__col--menu .site-nav__hassubnav .sub-menu__platform-desktop,
    .site-header__col--menu .site-nav__hassubnav .sub-menu__solutions-desktop {
        padding: 60px 0;
        border-right: 1px solid #c5d2ec;
        display: block;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__platform-desktop .sub-menu__platform-desktop-wrapper,
    .site-header__col--menu .site-nav__hassubnav .sub-menu__solutions-desktop .sub-menu__platform-desktop-wrapper {
        min-width: 170px;
        margin-right: 20px;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__platform-desktop .sub-menu__solutions-desktop-wrapper,
    .site-header__col--menu .site-nav__hassubnav .sub-menu__solutions-desktop .sub-menu__solutions-desktop-wrapper {
        min-width: 230px;
        margin-right: 20px;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__platform-desktop .sub-menu__header-title,
    .site-header__col--menu .site-nav__hassubnav .sub-menu__solutions-desktop .sub-menu__header-title {
        font-size: 24px;
        color: #1b1d22;
        font-weight: 700;
        margin: 0;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__platform-desktop .sub-menu__body-copy,
    .site-header__col--menu .site-nav__hassubnav .sub-menu__solutions-desktop .sub-menu__body-copy {
        font-size: 15px;
        line-height: 150%;
        color: #1b1d22;
        margin-bottom: 10px;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__platform-desktop a,
    .site-header__col--menu .site-nav__hassubnav .sub-menu__solutions-desktop a {
        color: #1c58d9 !important;
        font-size: 12px !important;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__platform-desktop a:hover,
    .site-header__col--menu .site-nav__hassubnav .sub-menu__solutions-desktop a:hover {
        color: #1e325c;
    }
}

@media (min-width:1200px) {

    .site-header__col--menu .site-nav__hassubnav .sub-menu__platform-desktop .sub-menu__platform-desktop-wrapper,
    .site-header__col--menu .site-nav__hassubnav .sub-menu__solutions-desktop .sub-menu__platform-desktop-wrapper {
        margin-right: 110px;
    }

    .site-header__col--menu .site-nav__hassubnav .sub-menu__platform-desktop .sub-menu__solutions-desktop-wrapper,
    .site-header__col--menu .site-nav__hassubnav .sub-menu__solutions-desktop .sub-menu__solutions-desktop-wrapper {
        margin-right: 60px;
    }
}

@media (max-width:991.98px) {
    .site-header .sub-menu__links+.sub-menu__links {
        padding-top: 0;
    }

    .site-header .site-nav__toplink:first-child .sub-menu__links .sub-menu__links--single:last-child {
        margin-bottom: 0;
    }

    .site-header .site-nav__button:not(.site-nav__button--secondary) {
        padding-top: 40px;
    }
}

.nav-container {
    width: 100%;
    max-width: 1312px;
    margin-right: auto;
    margin-left: auto;
}

.site-header--not-home .nav-container {
    max-width: 1312px;
}

@media (min-width: 1550px) {

    .nav-container,
    .site-header--not-home .nav-container {
        max-width: 1390px;
    }
}

@media (max-width: 1199.98px) {
    .nav-container {
        padding: 0 40px;
    }
}

@media (max-width: 991.98px) {
    .nav-container {
        padding: 0 32px;
    }
}

@media (max-width: 767.98px) {
    .nav-container {
        padding: 0 24px;
    }
}

.site-header {
    font-family: 'trade-gothic-next', sans-serif;
    background: #fff;
    box-shadow: 0 4px 15px rgba(0, 0, 0, .1);
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 999;
}

.site-header__row {
    display: flex;
    justify-content: space-between;
}

@media (max-width: 991px) {
    .site-header__row {
        display: block;
    }
}

.site-header__col--logo {
    display: flex;
    align-items: center;
    /* padding-left: 10px; */
}

@media (max-width:991.98px) {
    .site-header__col--logo {
        padding-top: 15px;
        padding-bottom: 15px;
    }
}

.site-header__col--logo img {
    width: 190px;
    max-width: none;
}

@media (min-width:992px) {
    .site-header__col--logo img {
        width: 150px;
    }
}

@media (min-width:1200px) {
    .site-header__col--logo img {
        width: 170px;
    }
}

@media (min-width:1600px) {
    .site-header__col--logo img {
        width: 190px;
    }
}

.site-header .lower-nav {
    border-top: 1px solid #c5d2ec;
}

@media (max-width:991.98px) {
    .site-header .lower-nav .container {
        padding-right: 5px;
    }
}

.site-header .lower-nav ul {
    margin: 0;
    padding: 0;
}

@media (max-width:991.98px) {
    .site-header .lower-nav ul {
        width: 100%;
        overflow-x: scroll;
        display: flex;
    }
}

.site-header .lower-nav ul li {
    display: inline-block;
    margin-right: 20px;
}

@media (max-width:991.98px) {
    .site-header .lower-nav ul li {
        flex: 0 0 auto;
    }
}

@media (min-width:992px) {
    .site-header .lower-nav ul li {
        margin-right: 40px;
    }
}

.site-header .lower-nav ul a {
    display: inline-block;
    padding: 3px 0;
    text-decoration: none;
    font-size: 15px;
    border-bottom: 3px solid transparent;
    color: #5a6072;
}

.site-header .lower-nav ul a:hover {
    color: #1c58d9;
}

.site-header .lower-nav ul .current-menu-item a {
    border-bottom: 3px solid #ffbc1f;
}

/* Nav - Customers */

.sub-menu__customers ul {
    margin: 0;
    padding: 0;
}

.sub-menu__customers-grid-wrapper img {
    width: 40px;
    height: auto;
    margin-right: 15px;
}

.sub-menu__customers .sub-menu__bottom-link a {
    color: #1C58D9;
    font-size: 15px;
    text-decoration: none;
}

body:not([data-custom-theme="light"]) .sub-menu__customers .sub-menu__bottom-link a {
    color: var(--marigold);
}

@media (min-width:992px) {
    .sub-menu__customers {
        right: unset !important;
        margin-left: 10px;
    }

    .sub-menu__customers .sub-menu__links-wrapper {
        padding: 40px;
    }

    .sub-menu__customers-grid-wrapper {
        display: grid;
        grid-template-columns: 130px 180px;
        column-gap: 40px;
    }
}

/* Nav - Partners */

.sub-menu__partners ul {
    margin: 0;
    padding: 0;
}

@media (min-width:992px) {
    .sub-menu__partners {
        right: unset !important;
        margin-left: 10px;
    }

    .sub-menu__partners .sub-menu__links-wrapper {
        padding: 40px;
    }
}

/* END NEW NAV */

/* FOOTER */

footer:not(.site-footer) {
    position: relative;
    margin-top: 24px;
    padding: 24px;
    line-height: 150%;
    font-size: 14px;
}

footer:not(.site-footer) p {
    line-height: 150%;
    font-size: 14px;
}

footer hr {
    display: none;
}

@media (max-width: 1024px) {
    footer {
        padding: 160px 0 20px;
    }
}

footer.site-footer {
    background: linear-gradient(180deg, rgba(19, 30, 57, .9), #1e325c 20%);
    padding: 50px 0;
}

@media (min-width:992px) {
    footer.site-footer {
        padding: 100px 0;
    }
}

.site-footer .site-footer__links {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.site-footer .site-footer__links .footer-link-list {
    margin-bottom: 40px;
}

@media (min-width:768px) {
    .site-footer .site-footer__links .footer-link-list {
        flex: 0 0 calc(33.33333% - 60px);
        max-width: calc(33.33333% - 60px);
        margin-bottom: 0;
    }
}

.site-footer .site-footer__links .footer-link-list:last-child {
    margin-bottom: 0;
}

.site-footer .site-footer__links .footer-link-list .footer-link-list__header {
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 20px;
    text-transform: uppercase;
}

.site-footer .site-footer__links .footer-link-list .footer-link-list__item {
    margin-bottom: 10px;
}

.site-footer .site-footer__links .footer-link-list .footer-link-list__item:last-child {
    margin-bottom: 0;
}

.site-footer .site-footer__links .footer-link-list .footer-link-list__item a {
    color: #e2e8f5;
    font-size: 14px;
    text-decoration: none;
}

.site-footer .site-footer__links .footer-link-list .footer-link-list__item a:hover {
    color: #fff;
}

.site-footer .site-footer__social {
    display: flex;
    align-items: center;
}

.site-footer .site-footer__social .social-link {
    margin-right: 10px;
}

.site-footer .site-footer__social .social-link:last-child {
    margin-right: 0;
}

.site-footer .site-footer__social .social-link a {
    color: #e2e8f5;
    font-size: 18px;
    text-decoration: none;
}

.site-footer .site-footer__social .social-link a:hover {
    color: #fff;
}

.site-footer .site-footer__legal {
    color: #e2e8f5;
    font-size: 14px;
    margin-top: 40px;
}

.site-footer .site-footer__legal a {
    color: #e2e8f5;
    text-decoration: underline;
}

.site-footer .site-footer__legal a:hover {
    color: #fff;
}

.mm-button {
    display: inline-block;
    text-align: center;
    font-family: Fira Mono, monospace;
    font-weight: 700;
    border-radius: 30px;
    border: 3px solid transparent;
    cursor: pointer;
    background: transparent;
    font-size: 14px;
    line-height: 21px;
    padding: 11px 30px;
    transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out, border-color 0.3s ease-in-out;
}

@media (min-width: 768px) {
    .mm-button {
        font-size: 17px;
        line-height: 25.5px;
        padding: 12px 35px;
    }
}

.mm-button.mm-button-solid.mm-button-blue {
    background-color: #1c58d9;
    border-color: #1c58d9;
    color: #fff;
}

body:not([data-custom-theme="light"]) .mm-button.mm-button-solid.mm-button-blue {
    background-color: var(--marigold);
    border-color: var(--marigold);
    color: #000000;
}


@media (min-width: 768px) {

    .mm-button.mm-button-solid.mm-button-blue:focus,
    .mm-button.mm-button-solid.mm-button-blue:hover {
        background-color: #043cb5;
        border-color: #043cb5;
    }
}

.site-nav__button .mm-button {
    border-width: 1px !important;
    transition: none !important;
}

.mm-button-outline--thin.mm-button-outline--thin-blue {
    color: #043cb5 !important;
    border: 1px solid #043cb5;
}

body:not([data-custom-theme="light"]) .mm-button-outline--thin.mm-button-outline--thin-blue {
    color: var(--marigold) !important;
    border: 1px solid var(--marigold);
}

body:not([data-custom-theme="light"]) .mm-button-outline--thin.mm-button-outline--thin-blue:hover {
    color: #000000 !important;
    background-color: var(--marigold);
}

@media (max-width: 767px) {

    .mm-button-outline--thin.mm-button-outline--thin-blue:hover,
    .mm-button-outline--thin.mm-button-outline--thin-blue:focus {
        color: #043cb5 !important;
    }
}

@media (min-width: 768px) {

    .mm-button-outline--thin.mm-button-outline--thin-blue:hover,
    .mm-button-outline--thin.mm-button-outline--thin-blue:focus {
        color: white !important;
        background-color: #043CB5;
        border: 1px solid #043CB5;
    }
}

/* 2022 Badges */
.mm-badge {
    display: inline-block;
    border: 1px solid #BABEC9;
    border-radius: 6px;
    padding: 14px;
    margin-bottom: 30px;
}

.mm-badge p,
.mm-badge ul {
    font-size: 12px;
    margin: 0;
}

@media (max-width: 760px) {
    .mm-badge ul {
        padding: 0;
    }
}

.mm-badge ul {
    margin-bottom: 0 !important;
}

.mm-badge ul li {
    line-height: 1.3;
    margin: 0;
}

.mm-badge h3 {
    font-size: 12px;
    font-weight: 700;
}

@media (min-width: 960px) {
    .mm-badge h3 {
        margin-bottom: 0;
    }
}

/* Version */

.mm-badge p:first-child {
    font-style: italic;
    margin-bottom: 5px;
}

.mm-badge p:last-child {
    margin-top: 2px;
}

.mm-badge a {
    font-weight: bold;
}

.mm-badge img {
    width: 16px;
    height: auto;
    margin-right: 5px;
}

.mm-badge.mm-badge--note {
    border: 1px solid rgba(255, 188, 31, 1);
    background-color: rgba(255, 212, 112, 0.25);
}

.mm-badge.mm-badge--note p:first-child {
    font-style: normal;
    font-weight: bold;
}

img.mm-badge-flag {
    width: 13px;
    margin-right: 3px;
}

.mm-badge.mm-badge--combo {
    padding: 15px;
}

@media (min-width: 960px) {
    .mm-badge.mm-badge--combo {
        display: flex;
    }
}

.mm-badge__plan-deploy {
    border-bottom: 1px solid #BABEC9;
    padding: 0px 0px 20px 0px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

@media (max-width: 959px) {
    .mm-badge__plan-deploy p {
        width: 45%;
        margin-bottom: 0 !important;
    }
}

@media (min-width: 960px) {
    .mm-badge__plan-deploy {
        display: block;
        border-right: 1px solid #BABEC9;
        border-bottom: none;
        padding: 5px 15px 0px 0px;
    }

    .mm-badge__plan-deploy p:first-child {
        margin-right: 0px;
        margin-bottom: 5px;
    }
}

.mm-badge__reqs {
    padding: 20px 0px 0px 0px;
}

@media (min-width: 960px) {
    .mm-badge__reqs {
        display: flex;
        padding: 5px 0px 0px 15px;
    }
}

/* Config Settings */

.config-setting-result-item {
    display: flex;
    flex-direction: column;
    border-bottom: 1px solid #e1e4e5;
    padding-bottom: 12px;
    padding-top: 12px;
}

.config-setting-result-item:first-child {
    border-top: 1px solid #e1e4e5;
}

.config-setting-result-item:last-child {
    border-top: 1px solid #e1e4e5;
    margin-bottom: 12px;
}

.config-setting-result-item_link {
    font-size: 120%;
    padding-bottom: 12px;
}

/* Config setting description highlighting for search results */
mark {
    background: #F1C40F;
    color: grey;
    font-size: 90%;
    font-weight: 700;
    box-shadow: 0 0 0 2px #F1C40F;
    font-style: unset;
}


/* SIDEBAR */

.sidebar-brand {
    display: none;
}

/* Tabs */
.tab-content>.mm-code-copy:first-child {
    margin-top: 30px;
}

.mermaid > svg > g:nth-child(5) > rect {
    opacity: 0 !important;
}

.mermaid > svg > g:nth-child(4) > g > line {stroke: #0745a1 !important;}

.mermaid {
    background: white;
    border: 2px solid #0745a1;
}

.mermaid > svg > g:nth-child(6) > rect.task.crit0 {
    fill: #c27ba0 !important;
}

.mermaid > svg > g:nth-child(6) > rect.task.crit1 {
    fill: #c27ba0 !important;
}

.mermaid > svg > g:nth-child(6) > rect.task.crit2 {
    fill: #c27ba0 !important;
}

.mermaid > svg > g:nth-child(6) > rect.task.crit3 {
    fill: #c27ba0 !important;
}

.mermaid > svg > g:nth-child(6) > rect.task {
    stroke-width: 0 !important;
    fill: #8e7dc3 !important;
}

.mermaid > svg > g:nth-child(6) > text.taskText.taskText0.doneText0 {
    fill: white !important;
}

/*The below lines of CSS from task1 to 20 are a bit hackey buut its the only way it works in the long run*/
.mermaid text#task1-text {
    fill: white !important;
}

.mermaid text#task2-text {
    fill: white !important;
}

.mermaid text#task3-text {
    fill: white !important;
}

.mermaid text#task4-text {
    fill: white !important;
}

.mermaid text#task5-text {
    fill: white !important;
}

.mermaid text#task6-text {
    fill: white !important;
}

.mermaid text#task7-text {
    fill: white !important;
}

.mermaid text#task8-text {
    fill: white !important;
}

.mermaid text#task9-text {
    fill: white !important;
}

.mermaid text#task10-text {
    fill: white !important;
}

.mermaid text#task11-text {
    fill: white !important;
}

.mermaid text#task12-text {
    fill: white !important;
}

.mermaid text#task13-text {
    fill: white !important;
}

.mermaid text#task14-text {
    fill: white !important;
}

.mermaid text#task15-text {
    fill: white !important;
}

.mermaid text#task16-text {
    fill: white !important;
}

.mermaid text#task17-text {
    fill: white !important;
}

.mermaid text#task18-text {
    fill: white !important;
}

.mermaid text#task19-text {
    fill: white !important;
}

.mermaid text#task20-text {
    fill: white !important;
}

/* NESTED TABS */
#check-your-mattermost-client-settings .tab-set .tab-set {
    background-color: var(--color-background-secondary);
    padding: 0rem 1rem 1rem 1rem;
}