.nav {
    z-index: 50;
    position: relative;
    zoom: 1;
}
.nav:before,
.nav:after {
    content: " ";
    display: table;
}
.nav:after {
    clear: both;
}
.nav .container {
    z-index: 2;
    /*max-width: 1400px;*/
    margin: 0 auto;
    position: relative;
    height: 98px;
}

.nav .-vis-hidden {
    display: none;
}

#main-navigation,
#main-navigation ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: block;
}


#responsive-site-nav .ContactUs_Wrapper{
    display: none !important;
}
/*
 * section-nav (Secondary section navigation)
 * -------------------------------------------------------------------------------------------------------------------*/
#responsive-site-nav .Logout_Wrapper {
    display: none !important;
}
.js-nav #responsive-site-nav .Logout_Wrapper {
    display: block !important;
}

.responsive-nav-header{
    display: none;
}

/** NOT MOBILE MENU
===================================*/

@media screen and (min-width: 1350px) {

    .adviserLayout #responsive-site-nav,
    .memberLayout #responsive-site-nav,
    .memberDashboardLayout #responsive-site-nav {
        display: block;
    }

    #responsive-site-nav {
        height: 98px;
    }

    #main-navigation{
        display: flex;
        justify-content: flex-end;
        width: 100%;
        margin: auto;
        position: absolute;
        height: 98px;
        border-bottom: 0.5px solid #3A445C;
    }

    .menu-buttons {
        display: none;
    }

    /* ---- Children ---- */
    /*#main-navigation .sub-menu .menu-item {*/
    /*    padding: 8px 16px;*/
    /*    position: relative;*/
    /*}*/

    #main-navigation > .menu-item {
        margin: 0 15px;
    }

    #main-navigation > .menu-item > .sub-menu {
        background-color: #fff;
    }

    /* --- No javascript --- */
    .no-js #main-navigation .menu-item a:hover + .sub-menu,
    .no-js #main-navigation .menu-item a:focus + .sub-menu,
    .no-js #main-navigation .menu-item .sub-menu:hover {
        display: block;
    }
    .no-js #main-navigation > .menu-item > .sub-menu {
        margin-top: 0;
    }
    .no-js #main-navigation > .menu-item > .sub-menu > .menu-item > .sub-menu {
        margin-left: 0;
        margin-right: 0;
    }
    menu-item:hover {
        background-color: #fff;
    }
    #main-navigation > .menu-item:not(.Logout_Wrapper):not(.MemberDashboard_Wrapper):hover {
        border-bottom: 3px solid #3A445C;
    }
    #main-navigation > .menu-item > a {
        margin: 38px 16px;
        display: block;
        line-height: 22px;
    }
    .sub-menu .menu-item:first-child {
        padding-top: 30px !important;
    }
    .sub-menu .menu-item:last-child {
        padding-bottom: 30px !important;
    }
}

/** small screen
===================================*/
@media all and (max-width: 1349px) {

   #site-header {
        border-bottom: 1px solid #3A445C;
    }
    .adviserLayout #responsive-site-nav,
    .memberLayout #responsive-site-nav,
    .memberDashboardLayout #responsive-site-nav {
        display: block;
        background-color: #F1F1F1;
    }

    .js-nav #responsive-site-nav .Logout_Wrapper {
        display: none !important;
    }

    #responsive-site-nav .ContactUs_Wrapper{
        display: block !important;
        background-color: #3A445C;
    }

    #main-navigation{
        display: block;
        width: 100%;
        margin: auto;
        border-top: none;
        padding: 0;
    }

    .site-title {
        position: absolute;
        z-index: 56;
        top: 0;
    }

    /* Menu buttons */
    .menu-buttons {
        z-index: 999;
        top: 4px;
        left: 0;
        /*padding: 6px 20px;*/
        position: absolute;
        padding-top: 30px;
        padding-left: 30px;
    }

    .menu-buttons a {
        overflow: hidden;
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
        display: block;
        padding: 6px 0 0;
        border: 0;
        outline: none;
        height: 40px;
        width: 32px;
        color: #FFF;
        background-color: transparent;
    }

    .menu-buttons a i {
        font-size: 32px;
        line-height: 32px;
        pointer-events: none;
    }

    #main-navigation > .menu-item > a {
        display: block;
        padding: 26px 20px;
        font-size: 22px !important;
        line-height: 28px !important;
        font-family: ProzaDisplayW03-ExtraBold;
        text-decoration: none;
        /*color: #BFCED6 !important;*/
    }

    .sub-menu > .menu-item {
        padding: 10px 15px;
    }

    #main-navigation > .menu-item.expanded {
        background-color: #3A445C;
    }
    #main-navigation > .menu-item.expanded > a {
        color: white !important;
    }

    .no-touch .menu-buttons a:hover,
    .no-touch .menu-buttons a:focus {
        filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
        opacity: 0.8;
    }
    .menu-button:focus {
        outline: 1px dotted #FFF;
    }
    #button-open-menu {
        background-image: url("gwt/laf/icons/menu/menu-teal.svg");
        background-repeat: no-repeat;
        left: calc(100% - 20px);
    }
    #button-close-menu {
        background-image: url("gwt/laf/icons/menu/menu-teal.svg");
        background-repeat: no-repeat;
        left: calc(100% - 20px);
    }
    .js-ready.js-nav #button-open-menu {
        display: none;
    }

    .js-ready #button-close-menu {
        display: none;
    }

    .js-nav .menu-push {
        position: absolute;
        top: 0;
    }

    .no-js #button-close-menu {
        margin-right: 15px;
    }

    /* --- Base styles --- */
    .header {
        background-color: transparent;
        padding: 0;
    }
    .header-container {
        background-color: #eee;
        position: relative;
        z-index: 1;
        padding-top: 65px;
        padding-bottom: 20px;
    }
    .nav {
        top: 0;
        /*transform: translate3d(0,0,0);*/
        position: absolute;
        overflow-y: auto;
        overflow-x: hidden;
        height: 100%;
        background: #333;
    }
    .nav:not(:target) {
        z-index: -1;
    }
    .nav .container {
        position: relative;
        padding: 0;
        max-width: none;
    }
    #main-navigation .menu-item {
        position: relative;
        float: none;
        width: 100%;
    }
    #main-navigation > .menu-item:last-child {
        border-bottom: 1px solid #102A50;
    }
    #main-navigation .Logout_Wrapper a:after {
        content: '';
        position: absolute;
        background-color: #005844;
        height: 81px;
        width: 81px;
        right: 0;
        top: 0;
        background-image: url(laf/sitewide/icons/phone.svg);
        background-repeat: no-repeat;
        background-position-x: 30px;
        background-position-y: 30px;
    }

    #main-navigation .current-menu-item {
        background-color: #BFCED6;
    }

    #main-navigation a {
        width: 100%;
        /*padding: 9px 85px 9px 25px;*/
        min-height: 39px;
        color: #3A445C !important;
        text-decoration: none;
    }

    #responsive-site-nav .ContactUs_Wrapper .callToAction {
        position: absolute;
        background-color: #005844;
        height: 80px;
        width: 80px;
        right: 0;
        top: 0;
        background-image: url(laf/sitewide/icons/phone.svg);
        background-repeat: no-repeat;
        background-position-x: 30px;
        background-position-y: 30px;
    }

    #responsive-site-nav .ContactUs_Wrapper a{
        color: #FFFFFF !important;
    }

    #main-navigation > li > a {
        font-size: 15px;
        font-size: 1.5rem;
    }
    #main-navigation, #main-navigation ul {
        width: 100%;
    }

    /* Depth deifferences */

    #main-navigation > .menu-item > .sub-menu > .menu-item {
        line-height: 22px;
        padding: 20px 40px;
        font-size: 16px;
        background: url(gwt/laf/sitewide/icons/sideMenuArrow.svg) no-repeat;
        background-position-x: 5%;
        background-position-y: 50%;
        margin-bottom: 0px;
    }

    /* --- Javascript enabled --- */
    .js-ready .nav {
        background: white;
        z-index: 0;
        opacity: 0;
        pointer-events: none;
        /*min-width: 250px;*/
        width: 30%;
    }
    .js-ready.js-nav .nav {
        opacity: 1;
        pointer-events: all;
    }
    .js-ready:not(.js-nav) .nav {
        -webkit-transition: opacity 0ms ease 500ms;
        -moz-transition: opacity 0ms ease 500ms;
        -o-transition: opacity 0ms ease 500ms;
        transition: opacity 0ms ease 500ms;
    }
    .js-ready #main-navigation ul {
        display: none;
    }

    /* Expand buttons */
    .menu-button-expand {
        -webkit-appearance: none;
        -moz-appearance: none;
        outline: none;
        border: none;
        background: none;
        font-size: 28px;
        width: 73px;
        line-height: 23px;
        height: 39px;
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        cursor: pointer;
        margin: 20px;
        border-radius: 50%;
        padding-bottom: 10px;
        padding-top: -50px;
    }
    .menu-button-expand.menu-button-expand-closed {
        background-image: url(gwt/laf/icons/menu_bg_small.svg);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
        color: transparent;
    }
    .menu-button-expand.menu-button-expand-open {
        background-image: url(gwt/laf/icons/menu_bg_close_small.svg);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
        color: transparent;
        background-color: #D9E2E6;
    }
    #main-navigation > .menu-item {
        /*border: 1px solid #3A445C;*/
    }
    .Logout_Wrapper {
        margin: 0;
    }
    .Logout_Wrapper a {
        line-height: 28px;
        padding: 26px 120.5px;
    }
    html.no-touch #main-navigation .sub-menu li:hover,
    html.no-touch #main-navigation .sub-menu li:focus {
        /*background-color: rgba(0,0,0,0.3) !important;*/
        text-decoration: underline;
    }

    /* --- Javascript, css transforms, and css transitions --- */
    .csstransforms3d.csstransitions.js-ready .nav {
        -webkit-transform: translate3d(0, 0, 0);
        -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
        -o-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        -webkit-backface-visibility: hidden;
        -moz-backface-visibility: hidden;
        -ms-backface-visibility: hidden;
        -o-backface-visibility: hidden;
        backface-visibility: hidden;
    }
    .csstransforms3d.csstransitions.js-ready .menu-push {
        left: 0;
        -webkit-transform: translate3d(0, 0, 0);
        -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
        -o-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        -webkit-transition: -webkit-transform 500ms ease;
        -moz-transition: -moz-transform 500ms ease;
        -o-transition: -o-transform 500ms ease;
        transition: transform 500ms ease;
        -webkit-backface-visibility: hidden;
        -moz-backface-visibility: hidden;
        -ms-backface-visibility: hidden;
        -o-backface-visibility: hidden;
        backface-visibility: hidden;
    }
    .csstransforms3d.csstransitions.js-ready .nav .container {
        filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
        opacity: 0.7;
        -webkit-transition: opacity 300ms 100ms, -webkit-transform 500ms ease;
        -webkit-transition-delay: ease, 0s;
        -moz-transition: opacity 300ms 100ms ease, -moz-transform 500ms ease;
        -o-transition: opacity 300ms 100ms ease, -o-transform 500ms ease;
        transition: opacity 300ms 100ms ease, transform 500ms ease;
        -webkit-transform-origin: 50% 0%;
        -moz-transform-origin: 50% 0%;
        -ms-transform-origin: 50% 0%;
        -o-transform-origin: 50% 0%;
        transform-origin: 50% 0%;
    }
    .csstransforms3d.csstransitions.js-nav .nav .container {
        filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
        -o-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    .csstransforms3d.csstransitions.js-nav .nav .container {
        filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }

    .csstransforms3d.csstransitions.js-ready.js-nav .nav .container  {
        -webkit-transform: translate3d(0, 0, 0);
        -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
        -o-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    .csstransforms3d.csstransitions.js-ready .nav {
        position: fixed;
        transform: translate3d(0, 0, 0);
    }

    .csstransforms3d.csstransitions.js-ready .nav {
        left: 0;
    }

    .responsive-nav-header{
        display: block;
        height: 98px;
        padding: 12px;
        display: flex;
    }

    .responsive-nav-header #logo{
        background: url(gwt/laf/icons/menu/siteLogo.svg) no-repeat;
        width: 120px;
        display: block;
    }

    .responsive-nav-header #site-nav-logout{
        width: 100%;
        margin: auto;
    }

    .responsive-nav-header #site-nav-logout a{
        background-color: #3A445C;
        color: #FFFFFF;
        max-height: 52px;
        padding: 19px 40.5px;
        font-weight: 600;
        font-size: 16px;
        line-height: 18px;
        text-decoration: none;
        text-align: center;
        margin: 19px 40.5px;

    }

    .responsive-nav-header #side-button-close-menu{
        margin: auto;
        background: url(gwt/laf/icons/teal-icons/close.svg) no-repeat;
        width: 30px;
        height: 30px;
        margin-right: 30px;
    }

    #main-navigation a {
        min-height: 35px;
    }
    #main-navigation > li > a {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 17px;
        line-height: 1.7rem;
    }
    #main-navigation > .menu-item:first-child {
        border-top: 1px solid #3A445C;
    }
    #main-navigation > .menu-item > .sub-menu > .menu-item a {
        font-size: 16px;
        line-height: 22px;
        font-weight: 400;
    }
    .menu-button-expand {
        width: 80px;
        height:80px;
        margin: 0 !important;
        padding: 0 !important;
    }

    .sub-menu {
        background-color: white;
    }

    .memberLayout #responsive-logout{
        display: block !important;
        z-index: 999;
        top: 30px;
        right: 28px;
        /* padding: 6px 20px; */
        position: absolute;
        background-color: #3A445C;
        color: #FFFFFF;
        max-height: 52px;
        padding-top: 19px;
        padding-bottom: 19px;
    }

    .memberLayout #responsive-logout a {
        position: relative;
        color: #FFFFFF !important;
        font-weight: 600;
        font-size: 16px;
        line-height: 18px;
        text-decoration: none;
        text-align: center;
        margin: 19px 40.5px;
    }

    .js-nav #site-header{
        display: none !important;
    }
}

/*having two break points for left side menu collapse */
@media screen and (max-width: 1349px) and (min-width: 1200px) {
    #responsive-site-nav {
        width: 40% !important;
    }
    .js-ready.js-nav #button-close-menu {
        display: block;
        margin-left: 40%;
    }
    .csstransforms3d.csstransitions.js-nav .menu-push  {
        -webkit-transform: translate3d(40%, 0, 0) scale3d(1, 1, 1);
        -moz-transform: translate3d(40%, 0, 0) scale3d(1, 1, 1);
        -ms-transform: translate3d(40%, 0, 0) scale3d(1, 1, 1);
        -o-transform: translate3d(40%, 0, 0) scale3d(1, 1, 1);
        transform: translate3d(40%, 0, 0) scale3d(1, 1, 1);
    }
    .csstransforms3d.csstransitions.js-ready .nav .container {
        -webkit-transform: translate3d(-60%, 0, 0) scale3d(0.9, 0.9, 0.9);
        -moz-transform: translate3d(-60%, 0, 0) scale3d(0.9, 0.9, 0.9);
        -ms-transform: translate3d(-60%, 0, 0) scale3d(0.9, 0.9, 0.9);
        -o-transform: translate3d(-60%, 0, 0) scale3d(0.9, 0.9, 0.9);
        transform: translate3d(-60%, 0, 0) scale3d(0.9, 0.9, 0.9);

        margin: 0;
    }
}
@media screen and (max-width: 1200px) and (min-width: 481px){
    .js-ready.js-nav #button-close-menu {
        display: block;
        /*margin-left: 225px;*/
    }
    #responsive-site-nav {
        width: 480px !important;
    }
    .csstransforms3d.csstransitions.js-nav .menu-push {
        -webkit-transform: translate3d(480px, 0, 0) scale3d(1, 1, 1);
        -moz-transform: translate3d(480px, 0, 0) scale3d(1, 1, 1);
        -ms-transform: translate3d(480px, 0, 0) scale3d(1, 1, 1);
        -o-transform: translate3d(480px, 0, 0) scale3d(1, 1, 1);
        transform: translate3d(480px, 0, 0) scale3d(1, 1, 1);
    }
    .csstransforms3d.csstransitions.js-ready .nav .container {
        -webkit-transform: translate3d(-80%, 0, 0) scale3d(0.9, 0.9, 0.9);
        -moz-transform: translate3d(-80%, 0, 0) scale3d(0.9, 0.9, 0.9);
        -ms-transform: translate3d(-80%, 0, 0) scale3d(0.9, 0.9, 0.9);
        -o-transform: translate3d(-80%, 0, 0) scale3d(0.9, 0.9, 0.9);
        transform: translate3d(-80%, 0, 0) scale3d(0.9, 0.9, 0.9);

        margin: 0;
    }
}
@media screen and (max-width: 480px) {

    #responsive-site-nav {
        width: 100%;
    }
    #site-header {
        float: left;
        display: block;
        top: 0;
        position: fixed;
        transform: translate3d(0,0,0);
        z-index: 1000;
    }
    #logo a {
        left: 30px !important;
    }
    .js-ready.js-nav #button-open-menu {
         display: block;
    }
    #button-open-menu, #button-close-menu {
        position: absolute;
        right: 20px;
        left: calc(100vw - 60px);
    }
    #responsive-site-nav {
        background-color: white !important;
    }
    .js-ready #main-navigation .sub-menu {
        background-color: #F1F1F1 !important;
    }
    #welcomeItem {
        display: none !important;
    }

    .memberLayout #responsive-logout{
        display: none !important;
    }

    #responsive-site-nav .ContactUs_Wrapper{

    }

   .js-nav #responsive-site-nav .Logout_Wrapper{
        display: none !important;
    }

    #main-navigation .Logout_Wrapper a:after{
        display: none;
    }
}



/* sticky */

@media screen and (min-width: 1350px) {
    .nav {
        /*height: 87px;*/
    }
}

#logo.sticky {
    opacity: 0;
}

.nav.sticky  {
    position: absolute;
    top: 0;
    margin-top: 0;
    background: #FFFFFF;
    animation: fadeOutIn 500ms;
    -webkit-animation: fadeOutIn 500ms;
    height: 49px;
    width: 100%;
    left: 0px;
}


@-webkit-keyframes fadeOutIn{
    0% {
        opacity: 0;
    }

    30% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes fadeOutIn{
    0% {
        opacity: 0;
    }

    30% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}


.nav.sticky:after {
    content: '\00a0';
    position: absolute;
    top: 100%;
    left: 0px;
    right: 0;
    display: block;
    height: 8px;
    background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwMDAwMCIgc3RvcC1vcGFjaXR5PSIwLjY1Ii8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDAwMDAiIHN0b3Atb3BhY2l0eT0iMCIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
    background: -moz-linear-gradient(top,  rgba(0,0,0,0.10) 0%, rgba(0,0,0,0) 100%);
    background: -webkit-linear-gradient(top,  rgba(0,0,0,0.10) 0%,rgba(0,0,0,0) 100%);
    background: linear-gradient(to bottom,  rgba(0,0,0,0.10) 0%,rgba(0,0,0,0) 100%);
}

.sticky-home {
    display: none;
}

.sticky .sticky-home {
    display: block;
    position: absolute;
    top: 10px;
    left: 10px;
    width: 45px;
    height: 30px;
    text-align: center;
    z-index: 99;
}

/* ------------------------------------------------------
**** Print Styles
------------------------------------------------------ */

@media print {
    #main-navigation,
    .menu-buttons,
    #column-side,
    #footer {
        display: none;
    }
}
