/* RESPONSIVE NAVIGATION */


@media screen and (max-width : 1100px)  {


#navigation {
    width: 0%;
    padding: 0;
    left: auto;
    right: 0;
    transform: translate(114%, 0px);
    -webkit-box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.4);
    box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.4);
    height: 100vh;
}

#navigation ul.nav.menu.mod-list {
    padding: 0 12px;
    height: 100vh; /* Wichtig für Protection */
    padding-top: 5em;
}

.moduletable_menu {
    margin-top: 0;
}

ul.menu li, ul.menu li ul.nav-child.unstyled.small li {
    width: 100%;
}

ul.menu li ul.nav-child.unstyled.small li a, ul.menu li ul.nav-child.unstyled.small li span.separator {
    min-width: auto;
    width: 100%;
    font-size: 0.8rem;
    color: #ffffff;
    font-weight: normal;
    margin: 0px 0px 0px 0px;
    padding: 10px 0;
}

ul.menu a, span.separator {
    width: calc(100% - 20px);
    display: block;
    padding: 10px;
    box-shadow: 0px 0px 0px #444d56 inset;
    border-bottom: solid 1px #444d56;
    font-weight: normal;
    font-size: 0.8rem;
}

#navigation ul.menu li ul.nav-child.unstyled.small, #navigation ul.menu li ul.nav-child.unstyled.small li ul, #navigation ul.menu li ul.nav-child.unstyled.small li ul li ul {
    position: fixed;
    top: 0;
    right: 0;
    left: auto;
    height: calc(100% - 16em);
    padding: 8em 20px;
    margin: 0;
    background: #323e47;
    -webkit-box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.4);
    box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.4);
    display: block;
    right: -120%;
    overflow-y: auto;
    transition: all ease .5s;
}

#navigation ul.menu li ul.nav-child.unstyled.small.slidein, #navigation ul.menu li ul.nav-child.unstyled.small li ul.slidein, #navigation ul.menu li ul.nav-child.unstyled.small li ul li ul.slidein {
    right: 0;
    left: auto;
    display: block;
}


#navigation ul.nav.menu.mod-list.protect, #navigation ul.nav-child.unstyled.small.slidein.protect {
    transition: all ease 0.3s;
}


.protectarea {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #40505a;
    opacity: 0.8;
    z-index: 1;
    transition: all ease 0.5s;
    display: none;
}

ul.nav-child.unstyled.small.slidein.aktiv.protect > .protectarea,
ul.nav.menu.mod-list.protect > .protectarea {
    display: block;
}


#navigation ul.menu li ul.nav-child.unstyled.small li ul { /* Wichtig, damit die drei untenstehenden Breiten möglich sind. Ansonsten ist die Breite zu kurz */
    max-width: 100%;
}

#navigation ul.menu li ul.nav-child.unstyled.small {
    width: calc(100% - 70px);
    background: #404f5a;
    z-index: 1;
}

#navigation ul.menu li ul.nav-child.unstyled.small li ul.nav-child.unstyled.small {
    width: calc(100% - 100px);
    background: #4c5c69;
    z-index: 2;
}

#navigation ul.menu li ul.nav-child.unstyled.small li ul.nav-child.unstyled.small li ul.nav-child.unstyled.small {
    width: calc(100% - 130px);
    background: #576977;
    z-index: 3;
}


span.navigoback {
    display: block;

}

ul.menu li span.separator:before {
    top: 50%;
    right: 10px;
    margin-left: 0px !important;
    content: "";
    height: 12px;
    width: 16px;
    position: absolute;
    background-image: url(../images/menu-arrow.svg);
    background-repeat: no-repeat;
    transform: rotate(-0deg) translate(0, -50%);
    pointer-events: none;
}

ul.menu li ul.nav-child.unstyled.small li a:hover, ul.menu li span.separator:hover, li.active.divider.deeper.parent span.separator:hover, ul.menu li ul.nav-child.unstyled.small li.active.divider.deeper.parent.open > span:hover, ul.menu li ul.nav-child.unstyled.small li.current.active.open a:hover {
    color: #fff;
    background: transparent;
    box-shadow: none;
}

ul.menu > li.divider.deeper.parent.open > span.separator {
    box-shadow: none;
    border-bottom: solid 1px #454d56;
    color: #aea355;
}

#navigation ul.menu li ul.nav-child.unstyled.small li a, #navigation ul.menu li ul.nav-child.unstyled.small li span.separator {
    border-bottom: solid 1px #4f616d;  
}

#navigation ul.menu li ul.nav-child.unstyled.small li ul li a, #navigation ul.menu li ul.nav-child.unstyled.small li ul li span.separator {
    border-bottom: solid 1px #5c6f7b;
}

#navigation ul.menu li ul.nav-child.unstyled.small li ul li ul li a, #navigation ul.menu li ul.nav-child.unstyled.small li ul li ul li span.separator {
    border-bottom: solid 1px #667a8a;
}

#navigation span.nav-header {
    padding: 10px 0;
}

ul.menu > li > span.separator:hover {
    /* box-shadow: 0px -3px 0px #97bed4 inset; */
    border-bottom: solid 1px #444d56;
}

ul.menu li ul.nav-child.unstyled.small li a, ul.menu li ul.nav-child.unstyled.small li span.separator {
    white-space: pre-wrap;
}


}





@media screen and (max-width : 360px)  { /* iPhoneX */


    #navigation ul.menu li ul.nav-child.unstyled.small li ul.nav-child.unstyled.small li ul.nav-child.unstyled.small {
        width: calc(100% - 100px);
    }
    
    #navigation ul.menu li ul.nav-child.unstyled.small li ul.nav-child.unstyled.small {
        width: calc(100% - 80px);
    }
    
    #navigation ul.menu li ul.nav-child.unstyled.small {
        width: calc(100% - 60px);
    }

    #navigation span.nav-header {
        font-size: 0.8rem;
    }
}



@media screen and (max-width : 350px)  { /* iPhone5 */


#navigation ul.menu li ul.nav-child.unstyled.small li ul.nav-child.unstyled.small li ul.nav-child.unstyled.small {
    width: calc(100% - 85px);
}

#navigation ul.menu li ul.nav-child.unstyled.small li ul, #navigation ul.menu li ul.nav-child.unstyled.small li ul.nav-child.unstyled.small {
    width: calc(100% - 70px);
}

#navigation ul.menu li ul.nav-child.unstyled.small {
    width: calc(100% - 55px);
}


#navigation span.nav-header {
    font-size: 0.8rem;
}

#navigation ul.menu li ul.nav-child.unstyled.small, #navigation ul.menu li ul.nav-child.unstyled.small li ul, #navigation ul.menu li ul.nav-child.unstyled.small li ul li ul {
    height: calc(100% - 10em);
    padding: 5em 20px;
}

span.navigoback {
    padding: 2px 15px 2px 45px;
    margin-bottom: 15px;
}

ul.menu li ul.nav-child.unstyled.small li a, ul.menu li ul.nav-child.unstyled.small li span.separator {
    padding: 7px 0;
    font-size: 0.7rem;
}



}