/* Navigation */
#main-menu {
    background: none !important;
    clear: both;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}
#main-menu > li {
    border-left: 1px solid rgba(255, 255, 255, .1);
}
#main-menu li>a {
    background: none !important;
}
#main-menu li.login-button>a {
    background-color: rgba(0, 140, 0, 0.8) !important;
    border-radius:0 !important;
}
#main-menu li.login-button>a:hover {
    background-color: rgba(0, 185, 0, 0.8) !important;
}
#main-menu li.regular-button>a {
    background-color: rgba(255, 255, 255, 0) !important;
    border-radius:0 !important;
    border:none;
    padding: 13px;
}
#main-menu li.regular-button>a:hover {
    background-color: rgba(255, 255, 255, 0.1) !important;
}

.navbar {
    /*background-image: url(/img/bg/nav-bg.png);*/
    background-color: #084c71;
    border: none;
    background-size: auto 100%;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
}

.social-link {
    display: inline-block;
    width: 50px;
    height: 50px;
    background-image: url("/img/icons/social-icons.jpg");
}

.social-link div {
    width: 100%;
    height: 100%;
}

.social-link div:hover {
    background-color: rgba(255, 255, 255, .4);
}

.social-link-twitter {
    background-position: -246px -177px;
}
.social-link-linkedin {
    background-position: -182px -177px;
}
.social-link-facebook {
    background-position: -309px -114px;
}
.social-link-youtube {
    background-position: -55px -50px;
}
.social-link-google {
    background-position: -246px -50px;
}

/* Nav brand */
#mobile-logo img {
    display: block;
    margin-top: -9px;
    height: 40px;
}
#full-logo {
    display: none;
    position: relative;
}
#full-logo a {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    height: 100%;
}
#full-logo img {
    height: 100%;
}

table.upcoming-conferences {
    max-width: 100%;
    width: 100%;
}
table.upcoming-conferences tr td:first-child {
    width: 130px;
}
table.upcoming-events td:first-child img {
    width: 100%;
}
table.upcoming-events td {
    padding-top: 3px;
    padding-bottom: 3px;
    vertical-align: middle;
}
table.upcoming-events tr {
    margin-bottom: 3px;
    border-bottom: 1px solid #eee;
}
table.upcoming-events tr td:first-child {
    padding-right: 3px;
    width: 30px;
}
table.upcoming-events tr td:last-child {
    padding-left: 3px;
}
table.upcoming-events .eventDate{
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    background-color:#ececec;
    padding:1px 6px;
    align-content:center;
    text-align:center;
    margin-right:6px;
    float:left;
}
table.upcoming-events .eventName a {
    font-size: 100%;
    white-space: normal !important;
}
table.upcoming-events .eventDate .eventDateTop{
    margin:0;
    padding:0;
    font-weight:bold;
    font-size:16px;
}
table.upcoming-events .eventDate .eventDateBottom{
    margin:-4px 0 0 0;
    padding:0;
    text-transform:uppercase;
    font-size:10px;
}

table.upcoming-conferences tr {
    border-bottom: 1px solid #EEE;
}
table.upcoming-conferences td {
    padding-top: 3px;
    padding-bottom: 3px;
    vertical-align: middle;
}
table.upcoming-conferences td:first-child {
    padding-right: 8px;
}
table.upcoming-conferences .icon {
    text-align: center;
}
table.upcoming-conferences .icon img {
    height: 40px;
    border-radius: 3px;
}
table.upcoming-conferences .title {
    font-weight: bold;
}
table.upcoming-conferences .date {
    font-size: 80%;
    color: #666;
    font-style: italic;
}
table.upcoming-conferences .executive-retreat-23-menu-item .date, 
table.upcoming-conferences .executive-retreat-23-menu-item .title {
    height: 20px;
}

.menu-banner {
    transition: all .3s;
    display: block;
}
.menu-banner:hover {
    opacity: 0.8;
}
.menu-banner img {
    width: 100%;
}
table.academy-offerings td {
    padding-top: 3px;
    padding-bottom: 3px;
    vertical-align: middle;
}
table.academy-offerings tr td:last-child {
    padding-left: 10px;
}
table.academy-offerings .icon img {
    width: 75px;
    border-radius: 50%;
    border: 1px solid #DDD;
}
table.academy-offerings .link a {
    color: #334f7b !important;
}
table.academy-offerings .title {
    font-size: 200%;
}
table.academy-offerings .title sup {
    font-size: 50%;
    top: -13px;
}
table.academy-offerings .subtitle {
    font-size: 90%;
    color: #444 !important;
    font-style: italic;
    white-space: normal !important;
}
table.academy-offerings .solo {
    font-size: 100%;
    color: #334f7b !important;
    font-weight: bold;
}

/* Mega menus */
/* make mega menus take the full width of .main-nav */

#main-menu,
#main-menu > .has-mega-menu {
    position: static !important;
}

#main-menu .mega-menu {
    margin-left: 0 !important;
    right: 0 !important;
    width: auto !important;
    max-width: none !important;
}

#main-menu > .has-mega-menu .scroll-up,
#main-menu > .has-mega-menu .scroll-down {
    margin-left: 0 !important;
}


/* clear any floats inside the mega menus */

#main-menu .mega-menu > li {
    overflow: auto;
}


/* reset mega menu list/link styles (which are inherited from the SmartMenus core/theme styles) */

#main-menu .mega-menu {
    color: #353451;
}

#main-menu .mega-menu ul {
    position: static;
    display: block;
    margin: 0.83em 0;
    border: 0;
    padding: 0 0 0 20px;
    width: auto;
    background: transparent;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}
#main-menu h2 {
    color: #FFF;
    background-color: #084c71;
    font-weight: bold;
    padding-top: 8px;
    padding-bottom: 7px;
    border-bottom: none;
    font-size: 20px;
    padding-left: 8px;
    margin-top: 5px;
    margin-bottom: 8px;
}
#main-menu .mega-menu ul li {
    display: list-item;
    border-bottom: 1px solid #eee;
    padding-top: 3px;
    padding-bottom: 3px;
}

#main-menu .mega-menu ul li i {
    padding-top: 5px;
}

#main-menu .mega-menu a {
    display: inline-block;
    width: 100%;
    border: 0;
    padding: 0;
    background: transparent;
    color: inherit;
    font-weight: normal;
    font-family: 'Open Sans', sans-serif;
}
#main-menu .mega-menu a:hover {
    text-decoration: underline;
}

#main-menu .mega-menu .emphasize {
    font-weight: bold;
    font-size: 130%;
}
#main-menu .mega-menu .emphasize i {
    padding-top: 0;
    padding-left: 10px;
}

/* Mobile menu top separator */

#main-menu:before {
    content: '';
    display: block;
    height: 1px;
    font: 1px/1px sans-serif;
    overflow: hidden;
    background: #4b4a73;
}

/* Mobile menu toggle button */

.main-menu-btn {
    float: right;
    margin: 10px;
    position: relative;
    display: inline-block;
    width: 29px;
    height: 29px;
    text-indent: 29px;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}


/* hamburger icon */

.main-menu-btn-icon,
.main-menu-btn-icon:before,
.main-menu-btn-icon:after {
    position: absolute;
    top: 50%;
    left: 2px;
    height: 2px;
    width: 24px;
    background: #fff;
    -webkit-transition: all 0.25s;
    transition: all 0.25s;
}

.main-menu-btn-icon:before {
    content: '';
    top: -7px;
    left: 0;
}

.main-menu-btn-icon:after {
    content: '';
    top: 7px;
    left: 0;
}


/* x icon */

#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon {
    height: 0;
    background: transparent;
}

#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:before {
    top: 0;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:after {
    top: 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}


/* hide menu state checkbox (keep it visible to screen readers) */

#main-menu-state {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    border: 0;
    padding: 0;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
}


/* hide the menu in mobile view */

#main-menu-state:not(:checked) ~ #main-menu {
    display: none;
}

#main-menu-state:checked ~ #main-menu {
    display: block;
}

@media (min-width: 768px) {
    /* hide the button in desktop view */
    .main-menu-btn {
        position: absolute;
        top: -99999px;
    }
    /* always show the menu in desktop view */
    #main-menu-state:not(:checked) ~ #main-menu {
        display: block;
    }
    #main-menu {
        float: right;
        clear: none;
    }
    #main-menu:before {
        display: none;
    }

    /* prevent text rendering degrade during animation in Mac browsers */
    #main-menu {
        -webkit-font-smoothing: subpixel-antialiased;
    }
    /* show animation */
    #main-menu ul.show-animation {
        -webkit-animation: show-animation 0.2s;
        animation: show-animation 0.2s;
    }
    @-webkit-keyframes show-animation {
        0% {
            -webkit-transform: scale3d(0, 0, 1);
            opacity: 0;
        }
        100% {
            -webkit-transform: scale3d(1, 1, 1);
            opacity: 1;
        }
    }
    @keyframes show-animation {
        0% {
            transform: scale3d(0, 0, 1);
            opacity: 0;
        }
        100% {
            transform: scale3d(1, 1, 1);
            opacity: 1;
        }
    }
    /* hide animation */
    #main-menu ul.hide-animation {
        -webkit-animation: hide-animation 0.2s;
        animation: hide-animation 0.2s;
    }
    @-webkit-keyframes hide-animation {
        0% {
            -webkit-transform: scale3d(1, 1, 1);
            opacity: 1;
        }
        100% {
            -webkit-transform: scale3d(0, 0, 1);
            opacity: 0;
        }
    }
    @keyframes hide-animation {
        0% {
            transform: scale3d(1, 1, 1);
            opacity: 1;
        }
        100% {
            transform: scale3d(0, 0, 1);
            opacity: 0;
        }
    }

    /* Reduce the width of the links to fit the menu */
    .sm-blue a, .sm-blue a:hover, .sm-blue a:focus, .sm-blue a:active, .sm-blue a.highlighted {
        padding: 13px 18px;
    }
}

/* Required for mobile menu scrolling */
@media screen and (max-width: 750px) {
    .navbar-fixed-top {
        max-height: 100%;
        overflow: auto;
    }
}

/* Large screen navigation tweaks */
@media(min-width: 992px) {
    body {
        padding-top: 100px;
    }
    .navbar {
        min-height: 100px;
    }
    #mobile-logo {
        display: none;
    }
    #full-logo {
        display: block;
        height: 100px;
        width: 175px;
    }
    #full-logo a {
        display: block;
        height: 100%;
        padding: 5px !important;
        -webkit-transition: top 0.4s ease;
        transition: top 0.4s ease;
    }
    #short-logo {
        top: -100px !important;
    }

    .extra-nav {
        position: absolute;
        right: 15px;
        top: 15px;
        color: #777;
        -webkit-transition: top 0.4s ease;
        transition: top 0.4s ease;
    }
    .extra-nav a {
        color: #EEE;
    }
    .extra-nav .social-extra {
        font-size: 115%;
        padding-left: 5px;
    }

    body.shrink {
        padding-top: 50px;
    }
    .navbar.shrink {
        min-height: 50px !important;
    }
    .navbar.shrink #main-menu {
        margin-top: 0 !important;
    }
    .navbar.shrink #full-logo {
        height: 50px !important;
    }
    .navbar.shrink #stacked-logo {
        top: -100px !important;
    }
    .navbar.shrink #short-logo {
        top: 0 !important;
    }
    .navbar.shrink .extra-nav {
        top: -100px !important;
    }
}

@media(min-width: 1134px) {
    #main-menu {
        margin-top: 50px;
        -webkit-transition: margin-top 0.4s ease;
        transition: margin-top 0.4s ease;
    }
}

/*!* Top nav tweaks for longer titles *!*/
/*@media(min-width: 768px) {*/
/*    #main-menu a.two-liner {*/
/*        max-width: 150px;*/
/*        word-wrap: break-word;*/
/*        white-space: normal;*/
/*        text-align: center;*/
/*        line-height: 18px;*/
/*        margin-top: -12px;*/
/*    }*/
/*}*/

.certifications-menu-item > .mega-menu {
    left: 66% !important;
}

@media (max-width: 1134px) {
    .certifications-menu-item > .mega-menu {
        left: 50% !important;
    }
}

.certifications-menu-item > .mega-menu td {
    padding: 1rem 3rem !important;
}
