.primary-menu-bg {
    background-color: #005B94;
    margin-bottom: 0px;
}

#mainmenu-container ul#main_nav {
    flex-direction: row;
    margin-left: 5%;
}

.mm-nav-bottom-border, .mm-nav-bottom-border-mobile {
    border-bottom: 2px solid #006aaa; /**#e0ebf2;**/
    margin-top: -1px;
}


/* remove the submenu weird behaviour on main nav click*/
#mainmenu-container #main_nav dropdown:hover > .dropdown-menu {
    display: block;
}

/** MOBILE MEGA-MENU HAMBURGER */
#mm-mob {
    background-color: #005B94;
    width: 45px;
    height: 45px;
    padding-top: 5px;
    padding-left: 8px;
}

/** Hide the Hamburger **/
#mm-mob, #mm-mob img, #mm-mob div.mm-mob-icon-bgc, #page-mask {
    display: none;
}


/* *******************
 * MOBILE DISPLAY
 * *******************/
@media only screen and (max-width: 975px) {

    body .overlay {
        z-index: 14;
    }

    #mm-mob {
        float: left;
        margin-left: 0;
    }

    #mm-mob, #mm-mob img, #mm-mob div.mm-mob-icon-bgc {
        display: block;
    }

    /* Break down menu items into vertical */
    #mm-mob ul li,
    .utility-mobile, .features-mobile {
        display: block;
    }

    #mm-mob ul li {
        border-top: 1px solid #333;
    }

    /** UTILITY MENU IN MOBILE **/
    .utility-mobile, .features-mobile {
        background-color: #e0ebf2;
    }

    .utility-mobile, .features-mobile ul {
        list-style-type: none;
        padding-left: 1em;
    }

    .utility-mobile, .features-mobile li {
        line-height: 2.0em;
    }

    .utility-mobile, .features-mobile li a {
        color: #212121;
        text-decoration: none;
    }

    .utility-mobile, .features-mobile .email-updates-item {
        font-size: 20px;
        line-height: 1.4em;
        padding-top: 10px;
    }


    /* Initially hide on mobile: jQuery Toggle to  show/hide menu */
    #mainmenu-container {
        /*display: none;*/
        visibility: hidden;
        overflow: hidden;
        z-index: 3;
        position: fixed;
        background-color: #005B94;
        margin-top: -25px; /*needed to move up the containers so it is flush with top of mobile screen*/
    }

    #mainmenu-container ul#main_nav {
        flex-direction: column; /* change from row to column */
        margin-top: 30px; /* adds space between close button and top of menu */
        margin-left: 10px; /* bring menu closer to left of screen and gives more room for children styling underneath */
        margin-right: 10px;
    }

    #mainmenu-container.collapse {
        visibility: hidden;
    }

    #mainmenu-container.collapse.show {
        visibility: visible;
        display: block;
        width: 70%;
        position: absolute;
        margin-top: -25px; /*needed to move up the containers so it is flush with top of mobile screen*/
        transition: all 300ms ease-in; /* changed from linear*/
        z-index: 9999; /*needed for mm mobile to appear above gray boxes associated with slideshow on landing pages*/
    }

    #mainmenu-container.collapsing {
        position: absolute;
        top: 0;
        left: 0;
        height: 400px;
        overflow: hidden;
    }

    #mainmenu-container.collapsing.width {
        transition: all 300ms ease-out; /* was linear */
        width: 0;
        height: auto;
    }

    /** DEFINITION FOR IE **/
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
        #mainmenu-container.collapse.show {
            right: 140px; /** if not defined, the megamenu panel will not show up **/
        }
    }

    #page-mask {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        top: 0;
        background-color: rgba(0, 0, 0, 0.6);
    }

    .primary-menu-bg {
        background-color: #FFFFFF;
    }

    /* Style items in the #main_nav */
    /* override the borders defined in _caret.scss:31*/
    #mainmenu-container #main_nav .menu-item--expanded a.nav-link::after {
        border: none;
        vertical-align: 0;
        display: inline-block;
        margin-left: .7rem;
        content: "";
        background-image: url(/img/chevron-down-solid_5B616C.png);
        background-repeat: no-repeat;
        background-size: contain;
        width: 10px;
        height: 10px;
    }

    #mainmenu-container #main_nav li.nav-item {
        border-bottom: 1px solid #005B94;
    }

    /* Parent Nav Item - Style unselected */
    #mainmenu-container #main_nav li.nav-item > a {
        text-decoration: none;
        font-family: 'Public Sans', sans-serif;
        color: #212121;
        font-size: 20px;
        line-height: 1.4em;
        display: inline-block;
        font-weight: 400;
        padding: 0.4em;
    }

    #mainmenu-container #main_nav li.nav-item {
        padding: 2px;
    }

    /* Parent Nav Item - style for active item only */
    #mainmenu-container #main_nav li.nav-item.active-nav-item > a {
        color: #005B94;
        font-weight: 600;
        line-height: 1.4em;
        border-left: 5px solid #005B94;
    }

    /* styling for the pulldown menus */
    #main_nav .active-nav-item .dropdown-menu {
        background-color: #FFFFFF;
        border: none;
        border-radius: unset;
        padding: .5rem 1rem;
    }

    #main_nav .active-nav-item .dropdown-menu li.dropdown-item {
        white-space: unset;
    }

    #main_nav .active-nav-item .dropdown-menu li.dropdown-item, li.dropdown-item > a {
        font-size: 17px;
        font-weight: 400;
        line-height: 1.5em; /*accommodate for line wrap*/
        color: #212121;
        text-decoration: none;
        padding: 5px 0;
    }

    /* override _dropdown.scss */
    #main_nav .active-nav-item .dropdown-menu .dropdown-item.active, .dropdown-item:active {
        background-color: #e0ebf2;
    }

    /* Close Button for Mobile Menu */
    .button-row {
        padding-top: 10px;
        background: white;
        padding-bottom: 10px;
    }

    button.btn-close {
        float: left;
        margin-left: 10px;
        cursor: pointer;
        color: #005B94;
        background: #FFFFFF;
        font-size: 20px;
        font-weight: bold;
        display: inline-block;
        line-height: 0px;
        padding: 8px 2px;
        z-index: 9999;
    }

    .btn-close:after {
        content: " \2716";
    }
}

/*end @media only screen and (max-width: 975px) {

/* **************************
* DESKTOP DISPLAY
* **************************/
@media only screen and (min-width: 975px) {
    /*(min-width: 975px)*/
    .mm-nav-bottom-border-mobile {
        border-bottom: 0;
    }

    button.btn-close {
        display: none;
    }

    /** for Nav items that only display on mobile **/
    .utility-mobile, .features-mobile {
        display: none;
    }

    .collapse:not(.show) { /*override transitions for #megamenu container to display in tablet*/
        display: block;
    }

    #mainmenu-container #main_nav .navbar-nav {
        padding: 0 40px;
    }

    #mainmenu-container #main_nav a.nav-link {
        text-decoration: none;
        font-family: 'Public Sans', sans-serif;
        color: #FFFFFF;
        font-size: 1.0em;
        display: inline-block;
        font-weight: 400;
        padding: 0.2em;
    }

    #mainmenu-container #main_nav [data-visually-hidden="true"] {
        display: none;
    }

    /*Used to display submenus on hover NOT on click*/
    #mainmenu-container #main_nav li.dropdown:hover > ul.dropdown-menu,
    #mainmenu-container #main_nav li.dropdown:focus > ul.dropdown-menu,
    #mainmenu-container #main_nav li.dropdown:active > ul.dropdown-menu,
    #mainmenu-container #main_nav [data-visually-hidden="false"] {
        display: block;
    }


    #mainmenu-container #main_nav li.nav-item {
        padding-left: 8px;
        padding-right: 8px;
        padding-top: .8rem;
        padding-bottom: .8rem;
    }

    #mainmenu-container #main_nav li.nav-item:hover, li.nav-item a.nav-link:hover,
    #mainmenu-container #main_nav li.nav-item:active, li.nav-item a.nav-link:active,
    #mainmenu-container #main_nav li.nav-item:focus-within, li.nav-item.mm-open {
        background-color: #691f74;
    }

    /*override the borders defined in _caret.scss:31*/
    #mainmenu-container #main_nav .menu-item--expanded a.nav-link::after {
        border: none;
        vertical-align: 0;
        display: inline-block;
        margin-left: .7rem;
        content: "";
        background-image: url(/img/chevron-down-solid_white.png);
        background-repeat: no-repeat;
        background-size: contain;
        width: 10px;
        height: 10px;
    }

    /*
     * MAIN NAV SUBMENU SETUP
     */
    #mainmenu-container #main_nav li ul.dropdown-menu {
        z-index: 99999;
        background: white;
        color: black;
        position: absolute;
        border: 1px solid #691f74;
        padding: .1rem 0;

        /*min-height: 300px;*/
        -webkit-column-count: 3;
        -moz-column-count: 3;
        column-count: 3; /*3 is just placeholder -- can be anything*/
        width: 80vw;
        height: 400px;
    }

    #mainmenu-container #main_nav li ul.dropdown-menu h4 {
        column-span: all;
        border-bottom: 1px solid #323a45;
        padding-bottom: 5px;
        padding-top: 10px;
        margin-left: 1vw;
        margin-right: 2vw;
    }

    #mainmenu-container #main_nav li ul.dropdown-menu li {
        display: inline-block; /* table */
        width: 90%;
        /* padding-bottom: 5px;*/
        margin-right: 10px;
        margin-left: 1vw;
    }

    #mainmenu-container #main_nav li ul.dropdown-menu li + li {
        /* border-bottom: 1px solid #691f74;*/
    }

    #mainmenu-container #main_nav li ul.dropdown-menu li {
        /* border-bottom: 1px solid #691f74;*/
        /*line-height: 1.294em;*/
        /*padding: 5px 5px 5px 5px;*/
    }

    #mainmenu-container #main_nav li ul.dropdown-menu li a {
        font-size: 15px; /*17px;*/
        font-weight: 400;
        line-height: 1.2em;
        color: #212121;
        display: block;

        overflow-wrap: break-word;
        word-wrap: break-word;
        -ms-word-break: break-all;
        word-break: break-all;
        word-break: break-word;
        /*-ms-hyphens: auto;
        -moz-hyphens: auto;
        -webkit-hyphens: auto;*/
        white-space: normal !important;
    }

    #mainmenu-container #main_nav li ul.dropdown-menu li a,
    #mainmenu-container #main_nav li ul.dropdown-menu li a:active,
    #mainmenu-container #main_nav li ul.dropdown-menu li a:visited, a:hover {
        text-decoration: none;
    }


    #mainmenu-container #main_nav li ul.dropdown-menu li:last-child {
        border-bottom: none;
    }

    #mainmenu-container #main_nav li ul.dropdown-menu .dropdown-item:hover,
    #mainmenu-container #main_nav li ul.dropdown-menu .dropdown-item:focus {
        background: #e0ebf2;
        color: #212121;
    }

    #mainmenu-container #main_nav li ul.dropdown-menu .dropdown-item.active {
        background-color: #e0ebf2;
    }


    /** for IE **/
    #mainmenu-container #main_nav li.nav-item:hover {
        background-color: #691f74;
    }
}


@media only screen and (min-width: 985px) {
    #mainmenu-container #main_nav li.nav-item {
        padding-left: 20px;
        padding-right: 20px;
        margin-left: -13.4px;
        padding-top: 0;
        padding-bottom: 0;
    }

    #mainmenu-container #main_nav li.nav-item a {
        padding-top: .8rem;
        padding-bottom: .8rem;
    }
}


@media only screen and (min-width: 1100px) and (max-width: 1299px) {
    #mainmenu-container #main_nav li.nav-item {
        padding-top: 0;
        padding-bottom: 0;
    }

    #mainmenu-container #main_nav li.nav-item a {
        padding-top: .8rem;
        padding-bottom: .8rem;
    }
}


/*Large devices (desktops, 1300px and up)*/
@media only screen and (min-width: 1300px) {

    #mm-mob img, #mm-mob div.mm-mob-icon-bgc {
        display: none;
    }

    /** for Nav items that only display on mobile/tablet **/
    .hide-on-desktop, .utility-mobile, .features-mobile {
        display: none;
    }


    #mainmenu-container {
        display: block;
    }

    #mainmenu-container #main_nav .navbar-nav {
        padding: 0 40px;
    }

    #mainmenu-container #main_nav li.nav-item {
        padding: 0 20px;
    }

    #mainmenu-container #main_nav li.nav-item:nth-child(1) {
        margin-left: -29px;
    }

    #mainmenu-container #main_nav a.nav-link {
        font-size: 1.1em;
        padding-left: .4em;
        padding-right: .4em;
        padding-top: .8em;
        padding-bottom: .8em;
    }
}

a.nav-link {
    color: #323a45;
}

h2.block-title, h2.block-title a {
    position: relative !important;
    height: auto;
    width: auto;
    overflow: inherit;
    word-wrap: normal;
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 17px;
    font-weight: bold;
    color: #323a45;
    padding: 3px 3px 3px 0;
    margin: 0 0 10px;
}

h2.block-title:hover, h2.block-title a:hover {
    background: #005B94;
    color: #FFFFFF;
}

/* Image Block */

#block-megamenuimage {
    width: 100%;
}

#block-megamenuimage img {
    width: 100%;
}
