@font-face {
    font-family: 'icomoon';
    src: url('../fonts/icomoon.eot');
    src: url('../fonts/icomoon.eot?#iefix') format('embedded-opentype'),
    url('../fonts/icomoon.woff') format('woff'),
    url('../fonts/icomoon.ttf') format('truetype'),
    url('../fonts/icomoon.svg#icomoon') format('svg');
    font-weight: normal;
    font-style: normal;
}
/* Common styles of menus */
.dl-menuwrapper {
    float: left;
    position: relative;
    height: 100%;
    width: 100vw;
    overflow-x: hidden;
}
.dl-menuwrapper button {
    background: #ccc;
    border: none;
    width: 48px;
    height: 45px;
    text-indent: -900em;
    overflow: hidden;
    position: relative;
    cursor: pointer;
    outline: none;
}
.dl-menuwrapper button:hover,
.dl-menuwrapper button.dl-active,
.dl-menuwrapper ul {
    background: #aaa;
}
.dl-menuwrapper button:after {
    content: '';
    position: absolute;
    width: 68%;
    height: 5px;
    background: #fff;
    top: 10px;
    left: 16%;
    box-shadow: 0 10px 0 #fff,
    0 20px 0 #fff;
}
.dl-menuwrapper ul {
    padding: 0;
    list-style: none;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
}
.dl-menuwrapper li {
    position: relative;
}
.dl-menuwrapper li a {
    display: block;
    position: relative;
    padding: 15px 20px;

    font-weight: 300;
    color: #fff;
    outline: none;
}
.no-touch .dl-menuwrapper li a:hover {
    background: rgba(255, 248, 213, 0.1);
}
.dl-menuwrapper li.dl-back > a {
    padding-left: 30px;
    background: rgba(0, 0, 0, 0.1);
}
.dl-menuwrapper li.dl-back:after,
.dl-menuwrapper li > a:not(:only-child):after {
    position: absolute;
    top: 0;
    line-height: 50px;
    font-family: 'icomoon';
    speak: none;
    -webkit-font-smoothing: antialiased;
    content: "\e000";
}
.dl-menuwrapper li.dl-back:after {
    left: 10px;
    color: rgba(212, 204, 198, 0.3);
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}
.dl-menuwrapper li > a:after {
    right: 10px;
    color: rgba(0, 0, 0, 0.15);
}
.dl-menuwrapper .dl-menu {
    margin: 0 0 0 0;
    position: absolute;
    width: 100vw;
    opacity: 1;
    pointer-events: none;
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.dl-menuwrapper .dl-menu.dl-menu-toggle {
    transition: all 0.4s ease;
}
.dl-menuwrapper .dl-menu.dl-menuopen {
    opacity: 1;
    pointer-events: auto;
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
}
/* Hide the inner submenus */
.dl-menuwrapper li .dl-submenu {
    display: none;
}
/*
When a submenu is openend, we will hide all li siblings.
For that we give a class to the parent menu called "dl-subview".
We also hide the submenu link.
The opened submenu will get the class "dl-subviewopen".
All this is done for any sub-level being entered.
*/
.dl-menu.dl-subview li,
.dl-menu.dl-subview li.dl-subviewopen > a,
.dl-menu.dl-subview li.dl-subview > a {
    display: none;
}
.dl-menu.dl-subview li.dl-subview,
.dl-menu.dl-subview li.dl-subview .dl-submenu,
.dl-menu.dl-subview li.dl-subviewopen,
.dl-menu.dl-subview li.dl-subviewopen > .dl-submenu,
.dl-menu.dl-subview li.dl-subviewopen > .dl-submenu > li {
    display: block;
}
/* Dynamically added submenu outside of the menu context */
.dl-menuwrapper > .dl-submenu {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    margin: 0;
}
.dl-menu.dl-animate-out-1 {
    -webkit-animation: MenuAnimOut1 0.4s;
    animation: MenuAnimOut1 0.4s;
}
.dl-menu.dl-animate-out-2 {
    -webkit-animation: MenuAnimOut2 0.4s ease-in-out;
    animation: MenuAnimOut2 0.4s ease-in-out;
}
@-webkit-keyframes MenuAnimOut1 {
    0% {
    }
    100% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
        opacity: 1;
    }
}
@-webkit-keyframes MenuAnimOut2 {
    0% {
    }
    100% {
        -webkit-transform: translateX(-100%);
        opacity: 1;
    }
}
@keyframes MenuAnimOut1 {
    0% {
    }
    100% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
        opacity: 1;
    }
}
@keyframes MenuAnimOut2 {
    0% {
    }
    100% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
        opacity: 1;
    }
}
.dl-menu.dl-animate-in-1 {
    -webkit-animation: MenuAnimIn1 0.4s;
    animation: MenuAnimIn1 0.4s;
}
.dl-menu.dl-animate-in-2 {
    -webkit-animation: MenuAnimIn2 0.4s ease-in-out;
    animation: MenuAnimIn2 0.4s ease-in-out;
}
@-webkit-keyframes MenuAnimIn1 {
    0% {
        -webkit-transform: translateX(-100%);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(0px);
        opacity: 1;
    }
}
@-webkit-keyframes MenuAnimIn2 {
    0% {
        -webkit-transform: translateX(-100%);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(0px);
        opacity: 1;
    }
}
@keyframes MenuAnimIn1 {
    0% {
        -webkit-transform: translateX(-100%);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(0px);
        opacity: 1;
    }
}
@keyframes MenuAnimIn2 {
    0% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px);
        opacity: 1;
    }
}
.dl-menuwrapper > .dl-submenu.dl-animate-in-1 {
    -webkit-animation: SubMenuAnimIn1 0.4s ease;
    animation: SubMenuAnimIn1 0.4s ease;
}
.dl-menuwrapper > .dl-submenu.dl-animate-in-2 {
    -webkit-animation: SubMenuAnimIn2 0.4s ease-in-out;
    animation: SubMenuAnimIn2 0.4s ease-in-out;
}
@-webkit-keyframes SubMenuAnimIn1 {
    0% {
        -webkit-transform: translateX(100%);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(0px);
        opacity: 1;
    }
}
@-webkit-keyframes SubMenuAnimIn2 {
    0% {
        -webkit-transform: translateX(100%);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(0px);
        opacity: 1;
    }
}
@keyframes SubMenuAnimIn1 {
    0% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px);
        opacity: 1;
    }
}
@keyframes SubMenuAnimIn2 {
    0% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px);
        opacity: 1;
    }
}
.dl-menuwrapper > .dl-submenu.dl-animate-out-1 {
    -webkit-animation: SubMenuAnimOut1 0.4s ease;
    animation: SubMenuAnimOut1 0.4s ease;
}
.dl-menuwrapper > .dl-submenu.dl-animate-out-2 {
    -webkit-animation: SubMenuAnimOut2 0.4s ease-in-out;
    animation: SubMenuAnimOut2 0.4s ease-in-out;
}
@-webkit-keyframes SubMenuAnimOut1 {
    0% {
        -webkit-transform: translateX(0%);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(100%);
        opacity: 1;
    }
}
@-webkit-keyframes SubMenuAnimOut2 {
    0% {
        -webkit-transform: translateX(0%);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(100%);
        opacity: 1;
    }
}
@keyframes SubMenuAnimOut1 {
    0% {
        -webkit-transform: translateX(0%);
        transform: translateX(0%);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
        opacity: 1;
    }
}
@keyframes SubMenuAnimOut2 {
    0% {
        -webkit-transform: translateX(0%);
        transform: translateX(0%);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
        opacity: 1;
    }
}
/* No JS Fallback */
.no-js .dl-menuwrapper .dl-menu {
    position: relative;
    opacity: 1;
    -webkit-transform: none;
    transform: none;
}
.no-js .dl-menuwrapper li .dl-submenu {
    display: block;
}
.no-js .dl-menuwrapper li.dl-back {
    display: none;
}
.no-js .dl-menuwrapper li > a:not(:only-child) {
    background: rgba(0, 0, 0, 0.1);
}
.no-js .dl-menuwrapper li > a:not(:only-child):after {
    content: '';
}
#dl-menu li:before {
    content: '' !important;
}
#dl-menu a {
    font-size: 25px !important;
    line-height: 25px !important;
}
.mobileMenuItemChild {
    font-weight: 300 !important;
}
.mobileMenuItemChild::after {
    content: '';
}
.dl-menuwrapper li:after, .dl-menuwrapper li > a:after {
    color: unset !important;
}
.dl-menuwrapper li.dl-back:after, .dl-menuwrapper li > a:not(:only-child):after {
    top: 50% !important;
    line-height: 0 !important;
    font-size: 15px;
    pointer-events: none;
}
.dl-menuwrapper button:hover, .dl-menuwrapper button.dl-active, .dl-menuwrapper ul {
    background: unset;
}