/*==================== DESKTOP NAV ====================*/
@media (min-width: 991px) {
    /*==========
    TOP LEVEL
    ==========*/
    #desktop-nav {
        float: right;
        list-style: none;
    }

    #desktop-nav li.top-level {
        float: left;
        margin-right: 20px;
    }

    #desktop-nav li.top-level.last {
        margin-right: 0;
    }

    #desktop-nav li.top-level.phone-number {
        color: #55BC77;
        margin-left: 20px;
    }

    #desktop-nav li.top-level.phone-number img {
        float: left;
        margin: -3px 5px 0 0;
    }

    #desktop-nav li.dropdown:hover {
        background: url('/static/images/nav/nav_arrow.png') center bottom no-repeat;
    }

    #desktop-nav li a {
        font-size: 14px;
        text-transform: uppercase;
        letter-spacing: .05em;
        color: #23427D;
        -webkit-transition: color 250ms linear;
        -moz-transition: color 250ms linear;
        -o-transition: color 250ms linear;
        -ms-transition: color 250ms linear;
        transition: color 250ms linear;
    }

    #desktop-nav li.top-level a.top-level {
        position: relative;
        padding: 0;
    }

    #desktop-nav li.top-level a.top-level:hover {
        text-decoration: none;
        color: #55BC77 !important;
        background: transparent;
    }
    /*==========
    END TOP LEVEL
    ==========*/

    /*==========
    SUB LEVEL
    ==========*/
    .navbar-nav li.top-level ul.dropdown-menu {
        display: none;
        position: absolute;
        top: 45px;
        left: -40%;
        width: 180%;
        min-width: 100%;
        text-align: center;
        padding: 20px 0;
        border: none;
        border-radius: 0;
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none;
        overflow: hidden;
    }

    .navbar-nav li.top-level:hover ul.dropdown-menu {
        display: block;
    }

    .navbar-nav li.sub-level {
        float: none;
    }

    .navbar-nav li.sub-level a.sub-level {
        white-space: inherit;
        padding: 15px 10px;
    }

    .navbar-nav li.sub-level a.sub-level:hover {
        color: #8DB7C9;
        background-color: #FFFFFF;
    }
    /*==========
    END SUB LEVEL
    ==========*/
}
/*==================== END DESKTOP NAV ====================*/


/*==================== MOBILE NAV ====================*/
.hamburger {
    display: none;
    float: right;
    width: 23px;
    height: 20px;
    cursor: pointer;
}

.hamburger span {
    display: block;
    width: 100%;
    height: 2px;
    margin-bottom: 6px;
}

.hamburger span.last {
    margin-bottom: 0;
}

.hamburger .first,
.hamburger .second,
.hamburger .third {
  transition: all 0.35s linear;
  transform: rotate(0deg);
  transform-origin: 0% 50%;
}

.hamburger.open .first {
  transform: rotate(45deg);
}

.hamburger.open .third {
  transform: rotate(-45deg);
}

.hamburger.open .second {
  width: 0;
  opacity: 0;
}

#mobile-nav-wrapper {
    position: fixed;
    z-index: 5000;
    top: 72px;
    left: -320px;
    width: 235px;
    height: 100%;
    height: calc(100% - 72px);
    padding: 0 15px;
    background-color: #1D386B;
    overflow-y: auto;
}

#mobile-nav-wrapper #mobile-nav {
    width: 100%;
}

#mobile-nav-wrapper li {
    float: left;
    width: 100%;
}

#mobile-nav-wrapper li.link-border {
    height: 1px;
    background-color: #FFFFFF;
    opacity: 0.2;
}

#mobile-nav-wrapper a {
    width: 100%;
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
    color: #FFFFFF;
    padding: 20px 0;
    box-sizing: border-box;
}

#mobile-nav-wrapper a:hover {
    text-decoration: none;
    color: #FFFFFF;
    opacity: 0.4;
}

#mobile-nav-wrapper a.top-level.last {
    border-bottom: none;
}

#mobile-nav-wrapper a.top-level.phone-number img {
    float: left;
    margin: -3px 10px 0 0;
}

#mobile-nav-wrapper li span.drop-arrow {
    float: right;
    width: 65px;
    height: 65px;
    background: url('/static/images/nav/down_arrow.png') center no-repeat;
    cursor: pointer;
}

#mobile-nav-wrapper li span.drop-arrow:hover {
    background-color: #8DB7C9;
}

#mobile-nav-wrapper ul {
    width: 100%;
    list-style: none;
}

#mobile-nav-wrapper .sub-level-wrapper {
    float: left;
    width: 100%;
    height: 0;
    overflow: hidden;
}

#mobile-nav-wrapper a.sub-level {
    width: calc(100% - 35px);
    margin-left: 35px;
    padding-left: 10px;
}

#mobile-nav-wrapper a.sub-level.last {
    width: 100%;
    margin-left: 0;
    padding-left: 45px;
}
/*==================== END MOBILE NAV ====================*/


/*==================== RESPONSIVENESS ====================*/
@media (max-width: 991px) {
    #desktop-nav-wrapper {
        display: none;
        visibility: hidden;
    }

    .hamburger {
        display: block;
        margin-top: 10px;
    }
}
/*==================== END RESPONSIVENESS ====================*/
