/*
******************************************************************

CSS for mobile/responsive navigation

(c) sinntun.codes
******************************************************************
*/


.mobile-div {
    position: fixed;
    height: 0;
    width: 100vw;
    overflow: hidden;
    z-index: 99999999;
    top: 4.563rem;
    left: 0;
    -webkit-transition: ease-in-out .6s;
    -o-transition: ease-in-out .6s;
    transition: ease-in-out .6s;
}

.mobile-menu {
    height: auto;
    width: auto;
    text-align: center;
    display: block;
}

.menu-line {
    line-height: 2.5rem;
    width: 100%;
    height: 0.25rem;
    border-radius: 0.188rem;
    margin-bottom: 0.375rem;
    -webkit-transition: ease .3s;
    -o-transition: ease .3s;
    transition: ease .3s;
}


@media only screen and (max-width: 64rem) {
    #page-canvas {
        transition: ease-in-out .4s;
        left: 0;
        position: absolute;
    }

    button.menu-trigger {
        display: block !important;
    }
}

.close-page-canvas {
    left: 60% !important;
}




/*** menu-trigger
******************************************************************************* */

/* Button Reset und Original Styles */
button.menu-trigger {
    /* Reset Button Defaults */
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background: none;
    border: none;
    padding: 0;
    margin: 0;
    font-family: inherit;
    color: inherit;
    outline: none;
    -webkit-tap-highlight-color: transparent;

    /* Original Styles */
    display: none;
    height: 1.438rem;
    width: 1.875rem;
    cursor: pointer;
    transition: ease-in .3s;
    position: absolute;
    top: 1.563rem;
    right: 1.563rem;
}

button.menu-trigger.menu-line-box {
    padding: 1.625rem 0.938rem;
    width: 1.875rem;
    height: 0.5rem;
    transition: ease .3s;
}

button.menu-trigger .menu-line {
    display: block; /* Wichtig für span Elemente */
    transition: ease-in .2s;
    width: 100%;
    height: 0.25rem;
    border-radius: 0.938rem;
    margin: 0 auto 0.313rem;
    background: #00528c;
}

button.menu-trigger:hover .menu-line:nth-child(2) {
    width: 80%;
}

button.menu-trigger .main-content {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: ease-in-out .4s;
}

button.menu-trigger.open .menu-line:nth-child(1) {
    transform: rotate(45deg);
    position: relative;
    top: 0.625rem;
}

button.menu-trigger.open .menu-line:nth-child(2) {
    display: none;
}

button.menu-trigger.open .menu-line:nth-child(3) {
    transform: rotate(-45deg);
    position: relative;
    top: 0.063rem;
}

/* Accessibility Focus Style */
button.menu-trigger:focus-visible {
    outline: 0.125rem solid #00528c;
    outline-offset: 0.25rem;
}

.subnav-nav-trigger::before {
    font-family: "Font Awesome 5 Free", sans-serif;
    font-weight: 900;
    content: "\f107";
}

.subnav-nav-trigger {
    height: 1.375rem;
    /*width: 2.188rem;*/
    /*display: inline-block;*/
    cursor: pointer;
    float: left;
    /*margin-top: 0.313rem;*/
    font-size: 1.5rem;
    text-align: center;
    overflow: hidden;
    padding: 0.313rem;
    transition: ease-in-out 0.3s;
}

.subnav-nav-trigger.opened {
    transform: rotate(180deg);
}

.nav1-mobile-div {
    overflow: hidden;
    background: #fff;
    height: 0;
}

.nav1-mobile {
    width: auto;
    text-align: left;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 1.563rem;
    height: auto;
    overflow: hidden;

}
.nav1-mobile li {
    width: 100vw;
}
.nav1-mobile-link {
    margin-right: 0.313rem;
    display: block;
}
.nav1-mobile-link:hover span {
    color: #808080;
}

.nav1-mobile-div.menu-2 {
    position: fixed;
    height: 100%;
    transition: ease-in-out .4s;
    z-index: 999;
}

.nav1-mobile-div.menu-2 .nav1-mobile {
    height: auto;
    /*position: relative;*/
    /*   top: 50%;
       left: 6.25rem;*/
    /*transform: translate(-50%, 0%);*/
    border: none;
    display: flex;
    flex-direction: column;
}

.nav1-mobile-div.menu-2 .nav1-mobile-item {
    border: none;
    padding: 0.313rem 0 0.313rem 0.625rem;
    width: 12.5rem;
}

.nav1-mobile-div.menu-2 .nav1-link-mobile {

}

.nav1-mobile-div.menu-2 .nav1-link:hover {

}


.nav1-mobile-div.menu-1 {
    position: fixed;
    width: 100vw;
    height: calc(100vh - 5rem);
    top: 5rem;
    right: -100vw;
    transition: ease-in-out .4s;
}

.nav1-mobile-div.menu-2 {
    position: fixed;
    width: 100vw;
    height: calc(100vh - 5rem);
    left: 0;
    transition: ease-in-out .4s;
}

.nav1-mobile-div.menu-3 {
    position: fixed;
    width: 60vw;
    height: 100vh;
    top: 0;
    right: -60vw;
    transition: ease-in-out .4s;
}


/*****************************************************************
*********** Lang-Selector
******************************************************************/

.lang-selector-mobile {
    display: none;
}