@charset "utf-8";

/** Applies to x-small devices (portrait phones, less than 576px) **/

@media (max-width: 575.98px) {
    h1 {
        font-size: 2rem !important;
        font-weight: 500 !important;
    }

    h2 {
        font-size: 1.75rem !important;
        font-weight: 500 !important;
    }

    h3 {
        font-size: 1.5rem !important;
        font-weight: 500 !important;
    }

    h4 {
        font-size: 1.25rem !important;
        font-weight: 500 !important;
    }

    h5 {
        font-size: 1rem !important;
        font-weight: 500 !important;
    }

    h6 {
        font-size: 0.75rem !important;
        font-weight: 500 !important;
    }

    .display-1 {
        font-size: 3.5rem !important;
        font-weight: 300 !important;
    }

    .display-2 {
        font-size: 3.25rem !important;
        font-weight: 300 !important;
    }

    .display-3 {
        font-size: 3rem !important;
        font-weight: 300 !important;
    }

    .display-4 {
        font-size: 2.75rem !important;
        font-weight: 300 !important;
    }

    .display-5 {
        font-size: 2.5rem !important;
        font-weight: 300 !important;
    }

    .display-6 {
        font-size: 2.25rem !important;
        font-weight: 300 !important;
    }

    p {
        font-family: 'Poppins', sans-serif;
        font-size: 16px !important;
        margin-top: 0;
        margin-bottom: .5rem;
        font-weight: 300 !important;
        line-height: 1.5;
        color: var(--dark);
    }

    ul.navbar-nav {
        float: none;
        clear: both;
        margin: 0;
    }

    .navbar-expand-lg .navbar-nav>li>a {
        margin: 0;
    }

    .navbar-expand-lg .navbar-collapse,
    .navbar-expand-lg .navbar-form {
        position: relative;
        width: 100%;
        background: var(--black);
        transition: ease 0.5s;
        top: 20px;
        padding: 20px;
        border-radius: 0 0 10px 10px;
        border-bottom: solid 3px var(--muted);
        right: 0;
        float: none;
    }

    .multi-column-dropdown li a {
        color: #ffffff;
        white-space: normal;
    }

    .navbar-nav .open .dropdown-menu {
        position: sticky;
    }

    .multi-column-dropdown li a:hover,
    .multi-column-dropdown li a.active {
        text-decoration: none;
        color: var(--maroon);
        background: none;
    }

    .dropdown-menu {
        list-style: none;
    }

    .navbar-expand-lg .navbar-nav .open .dropdown-menu>li>a {
        color: #fff;
    }

    .navbar-expand-lg .navbar-nav .open .dropdown-menu>li>a:hover,
    .navbar-expand-lg .navbar-nav .open .dropdown-menu>li>a:focus {
        color: #fff;
    }

    .navbar-expand-lg .navbar-nav>li>a.cta-btn {
        display: inline-block;
    }

    .navbar ul.external {
        position: static;
    }

    /************************** SPACING: MARGIN AND PADDING *************************************/
    /* margin 0 */
    .m0 {
        margin: 0;
    }

    .ml0,
    .ml0-xs {
        margin-left: 0 !important;
    }

    .mr0 {
        margin-right: 0;
    }

    .mt0,
    .mt0-xs {
        margin-top: 0 !important;
    }

    .mb0,
    .mb0-xs {
        margin-bottom: 0 !important;
    }

    .mx0 {
        margin-left: 0;
        margin-right: 0;
    }

    .my0,
    .my0-xs {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    /* margin 0.2rem */
    .m1 {
        margin: 0.2rem;
    }

    .ml1 {
        margin-left: 0.2rem;
    }

    .mr1 {
        margin-right: 0.2rem;
    }

    .mt1 {
        margin-top: 0.2rem;
    }

    .mb1 {
        margin-bottom: 0.2rem;
    }

    .mx1 {
        margin-left: 0.2rem;
        margin-right: 0.2rem;
    }

    .my1 {
        margin-top: 0.2rem;
        margin-bottom: 0.2rem;
    }

    /* margin 0.4rem */
    .m2 {
        margin: 0.4rem;
    }

    .ml2 {
        margin-left: 0.4rem;
    }

    .mr2 {
        margin-right: 0.4rem;
    }

    .mt2 {
        margin-top: 0.4rem;
    }

    .mb2 {
        margin-bottom: 0.4rem;
    }

    .mx2 {
        margin-left: 0.4rem;
        margin-right: 0.4rem;
    }

    .my2 {
        margin-top: 0.4rem;
        margin-bottom: 0.4rem;
    }

    /* margin 0.6rem */
    .m3 {
        margin: 0.6rem;
    }

    .ml3 {
        margin-left: 0.6rem;
    }

    .mr3 {
        margin-right: 0.6rem;
    }

    .mt3 {
        margin-top: 0.6rem;
    }

    .mb3 {
        margin-bottom: 0.6rem;
    }

    .mx3 {
        margin-left: 0.6rem;
        margin-right: 0.6rem;
    }

    .my3 {
        margin-top: 0.6rem;
        margin-bottom: 0.6rem;
    }

    /* margin 0.8rem */
    .m4 {
        margin: 0.8rem;
    }

    .ml4 {
        margin-left: 0.8rem;
    }

    .mr4 {
        margin-right: 0.8rem;
    }

    .mt4 {
        margin-top: 0.8rem;
    }

    .mb4 {
        margin-bottom: 0.8rem;
    }

    .mx4 {
        margin-left: 0.8rem;
        margin-right: 0.8rem;
    }

    .my4 {
        margin-top: 0.8rem;
        margin-bottom: 0.8rem;
    }

    /* margin 1rem */
    .m5 {
        margin: 1rem;
    }

    .ml5 {
        margin-left: 1rem;
    }

    .mr5 {
        margin-right: 1rem;
    }

    .mt5 {
        margin-top: 1rem;
    }

    .mb5 {
        margin-bottom: 1rem;
    }

    .mx5 {
        margin-left: 1rem;
        margin-right: 1rem;
    }

    .my5 {
        margin-top: 1rem;
        margin-bottom: 1rem;
    }

    /* margin 1.2rem */
    .m6 {
        margin: 1.2rem;
    }

    .ml6 {
        margin-left: 1.2rem;
    }

    .mr6 {
        margin-right: 1.2rem;
    }

    .mt6 {
        margin-top: 1.2rem;
    }

    .mb6 {
        margin-bottom: 1.2rem;
    }

    .mx6 {
        margin-left: 1.2rem;
        margin-right: 1.2rem;
    }

    .my6 {
        margin-top: 1.2rem;
        margin-bottom: 1.2rem;
    }

    /* margin 1.4rem */
    .m7 {
        margin: 1.4rem;
    }

    .ml7 {
        margin-left: 1.4rem;
    }

    .mr7 {
        margin-right: 1.4rem;
    }

    .mt7 {
        margin-top: 1.4rem;
    }

    .mb7 {
        margin-bottom: 1.4rem;
    }

    .mx7 {
        margin-left: 1.4rem;
        margin-right: 1.4rem;
    }

    .my7 {
        margin-top: 1.4rem;
        margin-bottom: 1.4rem;
    }

    /* margin 1.6rem */
    .m8 {
        margin: 1.6rem;
    }

    .ml8 {
        margin-left: 1.6rem;
    }

    .mr8 {
        margin-right: 1.6rem;
    }

    .mt8 {
        margin-top: 1.6rem;
    }

    .mb8 {
        margin-bottom: 1.6rem;
    }

    .mx8 {
        margin-left: 1.6rem;
        margin-right: 1.6rem;
    }

    .my8 {
        margin-top: 1.6rem;
        margin-bottom: 1.6rem;
    }

    /* margin 1.8rem */
    .m9 {
        margin: 1.8rem;
    }

    .ml9 {
        margin-left: 1.8rem;
    }

    .mr9 {
        margin-right: 1.8rem;
    }

    .mt9 {
        margin-top: 1.8rem;
    }

    .mb9 {
        margin-bottom: 1.8rem;
    }

    .mx9 {
        margin-left: 1.8rem;
        margin-right: 1.8rem;
    }

    .my9 {
        margin-top: 1.8rem;
        margin-bottom: 1.8rem;
    }

    /* margin 2rem */
    .m10 {
        margin: 2rem;
    }

    .ml10 {
        margin-left: 2rem;
    }

    .mr10 {
        margin-right: 2rem;
    }

    .mt10 {
        margin-top: 2rem;
    }

    .mb10 {
        margin-bottom: 2rem;
    }

    .mx10 {
        margin-left: 2rem;
        margin-right: 2rem;
    }

    .my10 {
        margin-top: 2rem;
        margin-bottom: 2rem;
    }

    /* margin 2.2rem */
    .m11 {
        margin: 2.2rem;
    }

    .ml11 {
        margin-left: 2.2rem;
    }

    .mr11 {
        margin-right: 2.2rem;
    }

    .mt11 {
        margin-top: 2.2rem;
    }

    .mb11 {
        margin-bottom: 2.2rem;
    }

    .mx11 {
        margin-left: 2.2rem;
        margin-right: 2.2rem;
    }

    .my11 {
        margin-top: 2.2rem;
        margin-bottom: 2.2rem;
    }

    /* margin 2.4rem */
    .m12,
    .m12-xs {
        margin: 2.4rem !important;
    }

    .ml12 {
        margin-left: 2.4rem;
    }

    .mr12 {
        margin-right: 2.4rem;
    }

    .mt12,
    .mt12-xs {
        margin-top: 2.4rem !important;
    }

    .mb12,
    .mb12-xs {
        margin-bottom: 2.4rem !important;
    }

    .mx12 {
        margin-left: 2.4rem;
        margin-right: 2.4rem;
    }

    .my12,
    .my12-xs {
        margin-top: 2.4rem !important;
        margin-bottom: 2.4rem !important;
    }

    /* padding 0 */
    .p0 {
        padding: 0;
    }

    .pl0 {
        padding-left: 0;
    }

    .pr0 {
        padding-right: 0;
    }

    .pt0,
    .pt0-xs {
        padding-top: 0 !important;
    }

    .pb0,
    .pb0-xs {
        padding-bottom: 0 !important;
    }

    .px0,
    .px0-xs {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .py0,
    .py0-xs {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    /* padding 0.2rem */
    .p1 {
        padding: 0.2rem;
    }

    .pl1 {
        padding-left: 0.2rem;
    }

    .pr1 {
        padding-right: 0.2rem;
    }

    .pt1 {
        padding-top: 0.2rem;
    }

    .pb1 {
        padding-bottom: 0.2rem;
    }

    .px1 {
        padding-left: 0.2rem;
        padding-right: 0.2rem;
    }

    .py1 {
        padding-top: 0.2rem;
        padding-bottom: 0.2rem;
    }

    /* padding 0.4rem */
    .p2 {
        padding: 0.4rem;
    }

    .pl2 {
        padding-left: 0.4rem;
    }

    .pr2 {
        padding-right: 0.4rem;
    }

    .pt2 {
        padding-top: 0.4rem;
    }

    .pb2 {
        padding-bottom: 0.4rem;
    }

    .px2 {
        padding-left: 0.4rem;
        padding-right: 0.4rem;
    }

    .py2 {
        padding-top: 0.4rem;
        padding-bottom: 0.4rem;
    }

    /* padding 0.6rem */
    .p3 {
        padding: 0.6rem;
    }

    .pl3 {
        padding-left: 0.6rem;
    }

    .pr3 {
        padding-right: 0.6rem;
    }

    .pt3 {
        padding-top: 0.6rem;
    }

    .pb3 {
        padding-bottom: 0.6rem;
    }

    .px3 {
        padding-left: 0.6rem;
        padding-right: 0.6rem;
    }

    .py3 {
        padding-top: 0.6rem;
        padding-bottom: 0.6rem;
    }

    /* padding 0.8rem */
    .p4 {
        padding: 0.8rem;
    }

    .pl4 {
        padding-left: 0.8rem;
    }

    .pr4 {
        padding-right: 0.8rem;
    }

    .pt4 {
        padding-top: 0.8rem;
    }

    .pb4 {
        padding-bottom: 0.8rem;
    }

    .px4 {
        padding-left: 0.8rem;
        padding-right: 0.8rem;
    }

    .py4 {
        padding-top: 0.8rem;
        padding-bottom: 0.8rem;
    }

    /* padding 1rem */
    .p5 {
        padding: 1rem;
    }

    .pl5 {
        padding-left: 1rem;
    }

    .pr5 {
        padding-right: 1rem;
    }

    .pt5 {
        padding-top: 1rem;
    }

    .pb5 {
        padding-bottom: 1rem;
    }

    .px5 {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .py5 {
        padding-top: 1rem;
        padding-bottom: 1rem;
    }

    /* padding 1.2rem */
    .p6 {
        padding: 1.2rem;
    }

    .pl6 {
        padding-left: 1.2rem;
    }

    .pr6 {
        padding-right: 1.2rem;
    }

    .pt6 {
        padding-top: 1.2rem;
    }

    .pb6 {
        padding-bottom: 1.2rem;
    }

    .px6 {
        padding-left: 1.2rem;
        padding-right: 1.2rem;
    }

    .py6 {
        padding-top: 1.2rem;
        padding-bottom: 1.2rem;
    }

    /* padding 1.4rem */
    .p7 {
        padding: 1.4rem;
    }

    .pl7 {
        padding-left: 1.4rem;
    }

    .pr7 {
        padding-right: 1.4rem;
    }

    .pt7 {
        padding-top: 1.4rem;
    }

    .pb7 {
        padding-bottom: 1.4rem;
    }

    .px7 {
        padding-left: 1.4rem;
        padding-right: 1.4rem;
    }

    .py7 {
        padding-top: 1.4rem;
        padding-bottom: 1.4rem;
    }

    /* padding 1.6rem */
    .p8 {
        padding: 1.6rem;
    }

    .pl8 {
        padding-left: 1.6rem;
    }

    .pr8 {
        padding-right: 1.6rem;
    }

    .pt8 {
        padding-top: 1.6rem;
    }

    .pb8 {
        padding-bottom: 1.6rem;
    }

    .px8 {
        padding-left: 1.6rem;
        padding-right: 1.6rem;
    }

    .py8 {
        padding-top: 1.6rem;
        padding-bottom: 1.6rem;
    }

    /* padding 1.8rem */
    .p9 {
        padding: 1.8rem;
    }

    .pl9 {
        padding-left: 1.8rem;
    }

    .pr9 {
        padding-right: 1.8rem;
    }

    .pt9 {
        padding-top: 1.8rem;
    }

    .pb9 {
        padding-bottom: 1.8rem;
    }

    .px9 {
        padding-left: 1.8rem;
        padding-right: 1.8rem;
    }

    .py9 {
        padding-top: 1.8rem;
        padding-bottom: 1.8rem;
    }

    /* padding 2rem */
    .p10 {
        padding: 2rem;
    }

    .pl10 {
        padding-left: 2rem;
    }

    .pr10 {
        padding-right: 2rem;
    }

    .pt10 {
        padding-top: 2rem;
    }

    .pb10 {
        padding-bottom: 2rem;
    }

    .px10 {
        padding-left: 2rem;
        padding-right: 2rem;
    }

    .py10 {
        padding-top: 2rem;
        padding-bottom: 2rem;
    }

    /* padding 2.2rem */
    .p11 {
        padding: 2.2rem;
    }

    .pl11 {
        padding-left: 2.2rem;
    }

    .pr11 {
        padding-right: 2.2rem;
    }

    .pt11 {
        padding-top: 2.2rem;
    }

    .pb11 {
        padding-bottom: 2.2rem;
    }

    .px11 {
        padding-left: 2.2rem;
        padding-right: 2.2rem;
    }

    .py11 {
        padding-top: 2.2rem;
        padding-bottom: 2.2rem;
    }

    /* padding 2.4rem */
    .p12 {
        padding: 2.4rem;
    }

    .pl12 {
        padding-left: 2.4rem;
    }

    .pr12 {
        padding-right: 2.4rem;
    }

    .pt12 {
        padding-top: 2.4rem;
    }

    .pb12 {
        padding-bottom: 2.4rem;
    }

    .px12 {
        padding-left: 2.4rem;
        padding-right: 2.4rem;
    }

    .py12 {
        padding-top: 2.4rem;
        padding-bottom: 2.4rem;
    }

    /********* EXTRA SPACES *******************/
    .my-5 {
        margin-top: 2rem;
        margin-bottom: 2rem;
    }

    .my-6 {
        margin-top: 2.5rem;
        margin-bottom: 2.5rem;
    }

    .my-7 {
        margin-top: 3rem;
        margin-bottom: 3rem;
    }

    .my-8 {
        margin-top: 3.5rem;
        margin-bottom: 3.5rem;
    }

    .my-9 {
        margin-top: 4rem;
        margin-bottom: 4rem;
    }

    .my-10 {
        margin-top: 4.5rem;
        margin-bottom: 4.5rem;
    }

    .py-5 {
        padding-top: 2rem;
        padding-bottom: 2rem;
    }

    .py-6 {
        padding-top: 2.5rem;
        padding-bottom: 2.5rem;
    }

    .py-7 {
        padding-top: 3rem;
        padding-bottom: 3rem;
    }

    .py-8 {
        padding-top: 3.5rem;
        padding-bottom: 3.5rem;
    }

    .py-9 {
        padding-top: 4rem;
        padding-bottom: 4rem;
    }

    .py-10 {
        padding-top: 4.5rem;
        padding-bottom: 4.5rem;
    }

    /***************** alignment ******************/
    .text-left-xs {
        text-align: left !important;
    }

    .text-right-xs {
        text-align: right !important;
    }

    .text-center-xs {
        text-align: center !important;
    }

    .pull-left-xs {
        float: left !important;
    }

    .pull-right-xs {
        float: right !important;
    }

    /***************** border **********************/
    .bdr0-xs {
        border-width: 0px !important;
    }

    /***************** visibility ******************/
    .d-block-xs {
        display: block !important;
    }

    /***************** scale ******************/
    .scale75-xs {
        transform: scale(0.75);
    }

    /***************** SPECIFIC ********************/
    .navbar-toggler {
        margin-bottom: 0;
        margin-top: 20px;
    }

    header.header {
        position: absolute;
    }

    .navbar-nav .open .dropdown-menu {
        position: relative;
        background-color: var(--white);
    }

    ul.navbar-nav {
        float: none;
        clear: both;
        margin: 0;
    }

    .navbar-expand-lg .navbar-nav>li>a {
        margin: 0;
    }

    .dropdown-menu.columns-2 {
        min-width: 300px !important;
    }


    .navbar-expand-lg .navbar-collapse,
    .navbar-expand-lg .navbar-form {
        position: relative;
        width: 100%;
        background: var(--black);
        transition: ease 0.5s;
        top: 20px;
        padding: 20px;
        border-radius: 0 0 10px 10px;
        border-bottom: solid 3px var(--muted);
        right: 0;
        float: none;
    }

    #spfeature .section {
        height: 100%;
        margin-bottom: 1rem !important;
        padding-bottom: 1rem !important;
        display: block;
    }

    .g-recaptcha {
        transform: scale(0.77);
        transform-origin: 0 0;
    }

    .open>.dropdown-menu {
        display: block;
    }

    .navbar-expand-lg .navbar-nav>li>a:focus:not(.sp-btn),
    .navbar-expand-lg .navbar-nav>li>a:focus:not(.sp-btn),
    .navbar-expand-lg .navbar-nav>li>a:hover:not(.sp-btn),
    .navbar-expand-lg .navbar-nav>li>a.active:not(.sp-btn) {
        color: var(--maroon);
    }

    .testimonial-quote-wrapper {
        width: 80vw;
    }

    .post {
        max-height: 100%;
    }

    .d-flex-xs {
        display: inline-block !important;
    }
}

/** applies to small devices (landscape phones, less than 768px) **/
@media screen and (min-width: 576px) and (max-width: 767.98px) {

    ul.navbar-nav {
        float: none;
        clear: both;
        margin: 0;
    }

    .open>.dropdown-menu {
        display: block;
    }

    .navbar-expand-lg .navbar-nav>li>a:focus:not(.sp-btn),
    .navbar-expand-lg .navbar-nav>li>a:focus:not(.sp-btn),
    .navbar-expand-lg .navbar-nav>li>a:hover:not(.sp-btn),
    .navbar-expand-lg .navbar-nav>li>a.active:not(.sp-btn) {
        color: var(--maroon);
    }

    .navbar-expand-lg .navbar-nav>li>a {
        margin: 0;
    }

    header.header {
        position: absolute;
    }
}

/** applies to medium devices (tablets, less than 992px) **/
@media (min-width: 768px) and (max-width: 991.98px) {
    .dropdown-menu.columns-3 {
        min-width: 575px;
        margin-left: -200px;
    }

    .open>.dropdown-menu {
        display: block;
    }

    .navbar-expand-lg .navbar-nav>li>a:focus:not(.sp-btn),
    .navbar-expand-lg .navbar-nav>li>a:focus:not(.sp-btn),
    .navbar-expand-lg .navbar-nav>li>a:hover:not(.sp-btn),
    .navbar-expand-lg .navbar-nav>li>a.active:not(.sp-btn) {
        color: var(--maroon);
    }
}

/** applies to large devices (desktops, 992px and up) **/
@media (min-width: 992px) and (max-width: 1199.98px) {
    .dropdown-menu.columns-3 {
        min-width: 575px;
        margin-left: -50px;
    }
}