@media
    screen and (min-device-width: 320px) and (max-device-width: 736px) and (min-resolution: 1dppx),
    screen and (min-device-width: 768px) and (max-device-width: 1024px) and (min-resolution: 1dppx),
    screen and (min-device-width: 800px) and (max-device-width: 1280px) and (min-resolution: 2dppx),
    screen and (max-width: 768px) {

    /* Layout */

    html.menu,
    body.menu {
        overflow: hidden;
    }

    /* Header */

    header {
        border-bottom: none;
        overflow: hidden;
    }

    body.menu header {
        bottom: 0px;
        height: 100%;
        -webkit-overflow-scrolling: touch;
        overflow-y: scroll;
    }

    /* Header: Logo */

    header div#logo {
        max-width: inherit;
        padding-left: 20px;
        padding-right: 20px;
        text-align: center;
    }

    body.menu header div#logo {
        left: 0px;
        position: fixed;
        position: sticky;
        position: -webkit-sticky;
        right: 0px;
        top: 0px;
        z-index: 102;
    }

    header div#logo img {
        width: 125px;
    }

    header i#icon_menu_main {
        background-image: url('../images/icons/menu_c4c4c5.svg');
        background-position: 50% 50%;
        background-repeat: no-repeat;
        background-size: 16px auto;
        cursor: pointer;
        display: block;
        height: 16px;
        position: absolute;
        right: 20px;
        top: 15px;
        width: 16px;
        z-index: 102;
    }

    header i#icon_menu_main:hover {
        background-image: url('../images/icons/menu_ebeaeb.svg');
    }

    header i#icon_menu_main.close {
        background-image: url('../images/icons/close_c4c4c5.svg');
    }

    header i#icon_menu_main.close:hover {
        background-image: url('../images/icons/close_ebeaeb.svg');
    }

    /* Header: Menu Main */

    header nav#main {
        opacity: 0;
        position: absolute;
        transition:
            opacity 0.25s linear 0s,
            visibility 0.25s linear 0s;
        visibility: hidden;
    }

    body.menu header nav#main {
        opacity: 1;
        position: static;
        transition:
            opacity 0.25s linear 0s,
            visibility 0.25s linear 0s;
        visibility: visible;
    }

    header nav#main i.icon_submenu {
        background-image: url('../images/icons/plus_c4c4c5.svg');
        background-position: 50% 50%;
        background-repeat: no-repeat;
        background-size: 14px auto;
        content: '';
        cursor: pointer;
        display: block;
        height: 40px;
        left: 0px;
        position: absolute;
        top: 0px;
        transition:
            transform 0.25s ease-in-out 0s;
        width: 14px;
    }

    header nav#main li.active > a > i.icon_submenu,
    header nav#main li.trail > a > i.icon_submenu,
    header nav#main li > a:hover > i.icon_submenu {
        background-image: url('../images/icons/plus_ebeaeb.svg');
    }

    header nav#main li.open > a > i.icon_submenu {
        background-image: url('../images/icons/minus_c4c4c5.svg');
    }

    header nav#main li.open.active > a > i.icon_submenu,
    header nav#main li.open.trail > a > i.icon_submenu,
    header nav#main li.open > a:hover > i.icon_submenu {
        background-image: url('../images/icons/minus_ebeaeb.svg');
    }

    header nav#main ul.level_1 {
        max-width: inherit;
        padding-left: 20px;
        padding-right: 20px;
    }

    header nav#main ul.level_1 > li {
        display: block;
        float: none;
        font-size: 17px;
        line-height: 20px;
        position: relative;
    }

    header nav#main ul.level_1 > li > a {
        border-bottom: none;
        border-top-color: #c4c4c5;
        border-top-style: solid;
        border-top-width: 1px;
        display: block;
        margin-right: 0px;
        padding-bottom: 10px;
        padding-left: 30px;
        padding-top: 10px;
    }

    header nav#main ul.level_1 > li.first > a {
        border-top: none;
    }

    header nav#main ul.level_1 > li.open > a {
        border-bottom-color: #c4c4c5;
        border-bottom-style: solid;
        border-bottom-width: 1px;
    }

    header div.menuoverlay,
    header nav#main ul.level_1 > li.menuoverlay div.menuoverlay {
        background-color: transparent;
        border-bottom: none;
        border-top: none;
        left: auto;
        min-height: inherit;
        opacity: 0;
        padding-bottom: 0px;
        padding-top: 0px;
        position: static;
        right: auto;
        top: auto;
        transition: opacity 0s linear 0s,visibility 0s linear 0s;
        visibility: hidden;
        z-index: unset;
    }

    body.menu div.menuoverlay,
    body.menu header nav#main ul.level_1 > li.menuoverlay div.menuoverlay {
        opacity: 1;
        transition: opacity 0s linear 0s;
        visibility: visible;
    }

    header nav#main ul.level_2 {
        display: none;
        margin-left: 0px;
        margin-right: 0px;
        padding-left: 0px;
        padding-right: 0px;
    }

    header nav#main ul.level_1 > li.open ul.level_2 {
        display: block;
    }

    header nav#main ul.level_2 > li {
        font-size: 17px;
        line-height: 20px;
        max-width: none;
        min-height: inherit;
        padding-right: 0px;
        position: relative;
    }

    header nav#main ul.level_2 > li > a {
        border-top-color: #c4c4c5;
        border-top-style: solid;
        border-top-width: 1px;
        display: block;
        margin-bottom: 0px;
        padding-bottom: 10px;
        padding-left: 50px;
        padding-top: 10px;
    }

    header nav#main ul.level_2 > li.first > a {
        border-top: none;
    }

    header nav#main ul.level_2 > li.open > a {
        border-bottom-color: #c4c4c5;
        border-bottom-style: solid;
        border-bottom-width: 1px;
    }

    header nav#main ul.level_3 {
        display: none;
        margin-left: 0px;
    }

    header nav#main ul.level_2 > li.open ul.level_3 {
        display: block;
    }

    header nav#main ul.level_3 > li {
        display: block;
        float: none;
        font-size: 17px;
        line-height: 20px;
        padding-right: 0px;
        position: relative;
    }

    header nav#main ul.level_3 > li > a {
        border-top-color: #c4c4c5;
        border-top-style: solid;
        border-top-width: 1px;
        display: block;
        margin-bottom: 0px;
        padding-bottom: 10px;
        padding-left: 70px;
        padding-right: 0px;
        padding-top: 10px;
    }

    header nav#main ul.level_3 > li.first > a {
        border-top: none;
    }

    /* Header: Menu Meta */

    header nav#meta {
        margin-top: 50px;
        max-width: inherit;
        opacity: 0;
        padding-left: 0px;
        padding-right: 0px;
        position: absolute;
        transition:
            opacity 0.25s linear 0s,
            visibility 0.25s linear 0s;
        visibility: hidden;
    }

    body.menu header nav#meta {
        opacity: 1;
        position: static;
        visibility: visible;
    }

    header nav#meta ul.level_1 {
        background-color: transparent;
        padding-bottom: 0px;
        padding-left: 20px;
        padding-right: 20px;
        padding-top: 0px;
        position: static;
        right: auto;
    }

    header nav#meta ul.level_1 > li {
        display: block;
        float: none;
        font-size: 17px;
        line-height: 20px;
    }

    header nav#meta ul.level_1 > li > a {
        border-top-color: #c4c4c5;
        border-top-style: solid;
        border-top-width: 1px;
        display: block;
        margin-left: 0px;
        margin-right: 0px;
        padding-bottom: 10px;
        padding-top: 10px;
    }

    header nav#meta ul.level_1 > li.first > a {
        border-top: none;
    }

    header nav#meta ul.level_1 > li > a#iconSearch {
        display: none;
    }

    header nav#meta div#search {
        background-color: transparent;
        border-top-color: #c4c4c5;
        border-top-style: solid;
        border-top-width: 1px;
        margin-left: 20px;
        margin-right: 20px;
        opacity: 1;
        padding-bottom: 10px;
        padding-left: 0px;
        padding-right: 0px;
        padding-top: 10px;
        position: static;
    }

    /* Header: Navigation Language */

    header nav#language {
        max-width: inherit;
        padding-left: 20px;
        padding-right: 20px;
    }

    header nav#language ul.level_1 {
        top: 17px;
    }

    /* Footer: Menu Footer */

    footer nav#footer ul.level_1 {
        max-width: inherit;
        padding-left: 20px;
        padding-right: 20px;
        text-align: left;
    }

    footer nav#footer ul.level_1 > li {
        display: block;
        font-size: 17px;
        line-height: 20px;
    }

    footer nav#footer ul.level_1 > li > a {
        border-top-color: #50585d;
        border-top-style: solid;
        border-top-width: 1px;
        color: #50585d;
        display: block;
        margin-left: 0px;
        margin-right: 0px;
        padding-bottom: 10px;
        padding-top: 10px;
        text-decoration: none;
    }

    footer nav#footer ul.level_1 > li.first > a {
        border-top: none;
    }

    /* Footer: Sitemap */

    footer nav#sitemap > div.wrapper {
        padding-left: 20px;
        padding-right: 20px;
    }

    footer nav#sitemap div.column {
        display: none;
    }

    footer nav#sitemap div.column:last-child {
        display: block;
    }

    /* Cookiebar */

    div.cookiebar div.wrapper {
        padding-left: 20px;
        padding-right: 20px;
    }

    div.cookiebar a.close {
        right: 20px;
    }

}
