/*--------------------------------------------------------------
   Navigation
--------------------------------------------------------------*/
.johannes-header ul{
    display: flex;
    align-items: center;
    flex: 0 0 auto;
}
.johannes-menu-action{
    flex: 0 0 auto;
}
.johannes-header li{
    position: relative;
}
.johannes-menu-action li{
    margin:0;
}
.header-bottom nav > ul > li > a{
    height: 40px;
    display: flex;
    align-items: center;
} 
.johannes-header a{
    transition: all .15s ease-in-out; 
}
//Sub menu
.johannes-header .sub-menu a{
    display: block;
    padding: 0 30px 15px 30px;
}
.johannes-header .sub-menu {
    display: none;
    opacity: 0;
    position: absolute;
    width: 220px;
    padding: 25px 0 10px 0;
    z-index: 2000;
    transform: translateY(10px);
    left: -30px;
    box-shadow: 0 15px 40px 0 rgba(0,0,0,0.2);
}
.johannes-header .sub-menu .sub-menu{
    left: 100%;
    top: -25px;
}

.johannes-header li:hover > .sub-menu {
    display: block;
    -webkit-animation: fadeInFromNone .15s ease-out;
    animation: fadeInFromNone .15s ease-out;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
}
.johannes-header .johannes-menu>li>a,
.johannes-menu-action a{
    height: 50px;
    display: flex;
    align-items: center;
}

//Header icons

.johannes-header nav > ul > li.menu-item-has-children > a:after {
    content: "\e906";
    font-family: 'johannes-font';
    margin: 0 0 0 4px;
    opacity: .5;
    width: 11px;
}
.johannes-header nav .sub-menu > li.menu-item-has-children >a:after {
    content: "\e909";
    font-family: 'johannes-font';
    margin: 0;
    float: right;
    opacity: .5;
}
.johannes-header ul li.menu-item-has-children:hover > a:after{
    opacity: 1;
}

.johannes-menu-action .jf{
    font-size: 2.4rem;
    width: 20px;
    text-align: right;
}
.johannes-menu-action a{
    display: flex;
    align-items: center;
}
.johannes-menu-action .jf{
    margin-left: 5px;
}

// Header animation
@-webkit-keyframes fadeInFromNone {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
        transform: translateY(0px);
    }
}

@-moz-keyframes fadeInFromNone {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
        transform: translateY(0px);
    }
}

@-o-keyframes fadeInFromNone {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
        transform: translateY(0px);
    }
}

@keyframes fadeInFromNone {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
        transform: translateY(0px);
    }
}



//To none
@-webkit-keyframes fadeInToNone {
    0% {
        display: block;
        opacity: 1;
        transform: translateY(-10px);
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: none;
        opacity: 0;
    }
}

@-moz-keyframes fadeInToNone {
    0% {
        display: block;
        opacity: 1;
        transform: translateY(-10px);
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: none;
        opacity: 0;
    }
}

@-o-keyframes fadeInToNone {
    0% {
        display: block;
        opacity: 1;
        transform: translateY(-10px);
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: none;
        opacity: 0;
    }
}

@keyframes fadeInToNone {
    0% {
        display: block;
        opacity: 1;
        transform: translateY(-10px);
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: none;
        opacity: 0;
    }
}

//Search action 
.johannes-menu-action .search-form{
    position: relative;
    button[type="submit"]{
        position: absolute;
        top: 0;
        right: 0;
        height: 100%;
        font-size: 1.2rem;
        padding: 0 17px;
        box-shadow: none;
        min-height: auto;
    }
    input[type=text]{
        width: 250px;
        position: relative;
        font-size: 1.2rem;
        box-shadow: 0 5px 15px 0 rgba(0,0,0,0.1);
        border: none;
    }
}
.johannes-header li .sub-menu.johannes-rev {
    left: auto!important;
    right: 0;
}
.johannes-header li .sub-menu .sub-menu.johannes-rev{
    left: auto!important;
    right: 100%;
}

.johannes-hamburger-hidden .johannes-hamburger{
    display: flex;
    @include mq('lg') {
        display: none;
    }
}

.johannes-menu-mobile nav + ul,
.johannes-menu-mobile ul + ul,
.johannes-menu-mobile ul + nav,
.johannes-menu-mobile nav + nav{
    margin-top: 12px;
}

.johannes-menu-mobile .johannes-menu-social li{
    margin-bottom: 0;
}
.johannes-menu-mobile li.header-el-label{
    margin: 0 10px 0 0;
    color: inherit;
}
.johannes-menu-mobile .johannes-menu li a{
    display: block;
}

@media (min-width: 1024px) { 
    .slot-l { flex: auto; } 
    .slot-r { flex: auto; } 
    .header-bottom-slots .slot-l,
    .header-sticky-main .slot-r{
        flex: auto;
    }
}
