/*
- Name: megamenu.js - style.css
- Version: 1.0
- Latest update: 29.01.2016.
- Author: Mario Loncarek
- Author web site: http://marioloncarek.com
*/

/* ––––––––––––––––––––––––––––––––––––––––––––––––––
Screen style's
–––––––––––––––––––––––––––––––––––––––––––––––––– */

.menu-container {
    width: 100%;
    margin: 0 auto 32px auto;
    background: white;
}

.menu-mobile, .menu-search-mobile {
    display: none;
    padding: 20px;
}

.menu-mobile:after, .menu-search-mobile:after {
    content: "";
    padding: 0;
    float: left;
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-25%);
    -ms-transform: translateY(-25%);
    transform: translateY(-25%);
    background-repeat: no-repeat;
    background-image: url(../icons/bew/icon_menu.svg);
    width: 32px;
    height: 32px;

}
.menu-search-mobile:after {
    content: "";
    background-repeat: no-repeat;
    background-image: url(../icons/bew/icon_search.svg);
    float: right;
}
.menu-dropdown-icon:before {
    content: "";
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url(../icons/bew/icon_open_down.svg);
    -webkit-transform: translateY(40%);
    -ms-transform: translateY(40%);
    transform: translateY(40%);
    width: 32px;
    height: 32px;
    display: none;
    cursor: pointer;
    float: right;
    padding-left: 15px;
    padding-right: 15px;
    color: #333;
    position: absolute;
    right: 0px;
    z-index: 99;
}

.menu {
    border-bottom: 1px solid #ddd;
}

.menu > ul {
    /* border-bottom: 1px solid #ddd; */
    margin: 0 auto 0 auto;
    width: 100%;
    list-style: none;
    padding: 22px 0 0 0;
    position: relative;
    /* IF .menu position=relative -> ul = container width, ELSE ul = 100% width */
    box-sizing: border-box;
    display: flex;
    align-items: stretch;
    justify-content: space-around;
    max-width: 1160px;
}

/*
.menu > ul:before,
.menu > ul:after {
    content: "";
    display: table;
}
*/

.menu > ul:after {
    clear: both;
}

.menu > ul > li {
    padding: 0;
    margin: 0;
    display: block;
    white-space: nowrap;
    top: 1px;
    flex-grow: 1;
}

.menu > ul > li > .arrow-helper {
    position: relative;
    padding: 0 0 9px 0; /* 9px so that the small arrow will cover the grey line */
}

.menu > ul > li a.menu-item {
    color: black;
    text-decoration: none;
    display: block;
    font-size: 1.25rem;
    font-weight: 400;
}

.menu > ul > li a.menu-item.bigger {
    font-size: 1.5rem;
}

.menu > ul > li a:hover.menu-item {
    color: #726898;
}

.menu > ul > li > ul {
    width: 100%;
    display: none;
    padding: 10px 0;
    position: absolute;
    z-index: 99;
    left: 0;
    margin-left: auto;
    list-style: none;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
}
.menu > ul > li.is-selected a.menu-item,
.menu > ul > li > ul > li.is-selected a.submenu-item
{
    font-weight: 700;
}

.menu > ul > li.is-open > ul {
    display: flex;
}

.menu > ul > li > ul:after {
    clear: both;
}

.menu > ul > li > ul > li {
    margin: 0;
    padding: 0 5px 0 5px;
    list-style: none;
    background: none;
    flex-grow: 1;
}

.menu > ul > li > ul > li a {
    color: black;
    text-decoration: none;
    font-size: 1.25rem;
    font-weight: 400;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.75;
    letter-spacing: -.1px;
    padding: 0 1.25rem;
    display: block;
}

.menu > ul > li > ul > li a:hover {
    color: #726898;
}


/* ––––––––––––––––––––––––––––––––––––––––––––––––––
Mobile style's
–––––––––––––––––––––––––––––––––––––––––––––––––– */

@media only screen and (max-width: 959px) {
    .menu {
        border: none;
    }
    .menu-container {
        width: 100%;
    }
    .menu-mobile {
        line-height: 22px !important;
        color: black;
        display: block;
        position: absolute;
        left: 20px;
        top: 30px;
        padding: 0;
        z-index: 99;
    }
    .menu-mobile:after {
        font-size: 32px !important;
    }
    .menu-mobile:hover {
        color: #726898;
    }
    .menu-search-mobile {
        line-height: 22px !important;
        color: black;
        display: block;
        position: absolute;
        right: 20px;
        top: 30px;
        padding: 0;
        z-index: 99;
    }
    .menu-search-mobile:after {
        font-size: 32px !important;
    }
    .menu-search-mobile:hover {
        color: #726898;
    }
    .menu-dropdown-icon:before {
        display: block;
    }
    .menu > ul {
        display: none;
    }
    .menu > ul > li {
        width: 100%;
        float: none;
        display: block;
        line-height: 3rem;
        padding: 0;
    }
    .menu > ul > li a {
        display: block;
        width: 100%;
    }
    .menu > ul > li > ul {
        display: flex;
        position: relative;
        width: 100%;
        margin: 0;
        padding: 0;
    }
    .menu > ul > li > ul > li {
        float: none;
        width: 100%;
    }
    .menu > ul > li > ul > li > a{
        padding: 0;
        line-height: 3rem;
    }

    .menu > ul > li > ul > li:first-child {
        margin: 0;
    }

    .menu .show-on-mobile {
        padding-top: 3rem;
        display: block;
        border: none;
    }
    .menu > ul > li.is-open > ul {
        display: none;
    }

    .menu > ul > li.is-selected,
    .menu > ul > li:hover {
        background:none;
    }
}

@media only screen and (min-width: 768px) {
    .menu-mobile {
        left: 30px;
    }
    .menu-search-mobile {
        right: 30px;
    }
}

.menu-container .menu .menu__mobile__item {
    border-bottom: 1px solid #ddd;
    background-color: #EAE9F0;
}

.menu-container .menu .menu__mobile__item:first-of-type {
    border-top: 1px solid #ddd;
}

.menu-container .menu .menu__mobile__item li {
    border-top: 1px solid #ddd;
    background-color: #EAE9F0;
}

@media (min-width: 960px) {
    .menu-container .menu .menu__mobile__item {
        display: none;
    }
}
