/* 
- Name: megamenu.js - style.css
- Version: 1.0
- Latest update: 29.01.2016.
- Author: Mario Loncarek
- Author web site: http://marioloncarek.com
*/


/* ––––––––––––––––––––––––––––––––––––––––––––––––––
Body - not related to megamenu
–––––––––––––––––––––––––––––––––––––––––––––––––– */


/* ––––––––––––––––––––––––––––––––––––––––––––––––––
megamenu.js STYLE STARTS HERE
–––––––––––––––––––––––––––––––––––––––––––––––––– */


/* ––––––––––––––––––––––––––––––––––––––––––––––––––
Screen style's
–––––––––––––––––––––––––––––––––––––––––––––––––– */

.menu-container {
    display: flex;
    width: 100%;
    position: absolute;
    height: 100%;
    left: 0;
    margin: 0 auto;
    background: transparent;
    justify-content: center;
    align-content: center;
}

.menu-mobile {
    display: none;
}

.menu-dropdown-icon:before {
    content: "\f489";
    font-family: "Ionicons";
    display: none;
    cursor: pointer;
    float: right;
    padding: 1.5em 2em;
    background: #fff;
    color: #333;
}

.menu-container .menu {
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: 'Oswald', sans-serif;
    text-align: left;
}

.menu>ul {
    display: flex;
    justify-content: center;
    align-content: center;
    margin: 0 auto;
    width: 100%;
    height: 100%;
    list-style: none;
    padding: 0;
    /* IF .menu position=relative -> ul = container width, ELSE ul = 100% width */
    box-sizing: border-box;
}

.menu>ul:before,
.menu>ul:after {
    content: "";
    display: table;
}

.menu>ul:after {
    clear: both;
}

.menu>ul>li {
    display: flex;
    justify-content: center;
    align-content: center;
    background: #fff;
    padding: 0;
    margin: 0;
}

.menu>ul>li>a {
    align-items: center;
    color: rgba(33, 33, 33);
    display: flex;
    font-weight: 400;
    letter-spacing: .015em;
    line-height: 1.5;
    padding: 0.75rem 1.25rem;
    position: relative;
    transition-duration: .15s;
}

.menu>ul>li:hover a {
    color: #266041;
}

.menu>ul>li>ul {
    display: none;
    width: 100%;
    background: #fff;
    padding: 20px;
    position: absolute;
    z-index: -1;
    left: 0;
    top: 100%;
    margin: 0;
    list-style: none;
    box-sizing: border-box;
}

.menu>ul>li>ul:before,
.menu>ul>li>ul:after {
    content: "";
    display: table;
}

.menu>ul>li>ul:after {
    clear: both;
}

.menu>ul>li>ul>li {
    margin: 0;
    padding-bottom: 0;
    list-style: none;
    width: 25%;
    background: none;
    float: left;
}

.menu>ul>li>ul>li a {
    color: #777;
    padding: .2em 0;
    width: 95%;
    display: block;
    border-bottom: 1px solid #eee;
}

.menu>ul>li>ul>li>ul {
    display: block;
    padding: 0;
    margin: 10px 0 0;
    list-style: none;
    box-sizing: border-box;
}

.menu>ul>li>ul>li>ul:before,
.menu>ul>li>ul>li>ul:after {
    content: "";
    display: table;
}

.menu>ul>li>ul>li>ul:after {
    clear: both;
}

.menu>ul>li>ul>li>ul>li {
    float: left;
    width: 100%;
    padding: 10px 0;
    margin: 0;
    font-size: .8em;
}

.menu>ul>li>ul>li>ul>li a {
    border: 0;
}

.menu>ul>li>ul.normal-sub {
    width: 300px;
    left: auto;
    padding: 10px 20px;
}

.menu>ul>li>ul.normal-sub>li {
    width: 100%;
}

.menu>ul>li>ul.normal-sub>li a {
    border: 0;
    padding: 1em 0;
}


/* EDIT */

.menu-container.menu-dropdown-open,
.menu-container.menu-dropdown-open .menu-dropdown-container {
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
}

.mega-menu-dropdown-content {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    margin-left: auto;
    margin-right: auto;
    max-width: 72rem;
    padding-bottom: 3rem;
    padding-top: 3rem;
}

.menu .menu-dropdown-container {
    display: none;
    width: 100%;
    background: #fff;
    padding: 0px;
    position: absolute;
    z-index: -1;
    left: 0;
    top: 100%;
    margin: 0;
    list-style: none;
    box-sizing: border-box;
}

.menu>ul>li>.menu-dropdown-container ul {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    margin-left: auto;
    margin-right: auto;
    max-width: 77.5rem;
    padding-bottom: 3rem;
    padding-top: 3rem;
    padding-left: 0;
    padding-right: 0;
}

.menu>ul>li>.menu-dropdown-container ul li {
    list-style: none;
}


/*
.menu>ul>li>.menu-dropdown-container ul:before,
.menu>ul>li>.menu-dropdown-container ul:after {
    content: "";
    display: table;
}

.menu>ul>li>.menu-dropdown-container ul:after {
    clear: both;
}
*/

.menu>ul>li>.menu-dropdown-container ul>li.menu-list {
    grid-column: span 3/span 3;
    margin-top: -.25rem;
}

.menu>ul>li>.menu-dropdown-container ul>li.menu-spotlight-content {
    grid-column: span 9/span 9;
    margin-left: -15px;
    margin-right: -15px;
}

.menu>ul>li>.menu-dropdown-container ul>li>ul {
    display: block;
    padding: 0;
    margin: 10px 0 0;
    list-style: none;
    box-sizing: border-box;
}

.menu>ul>li>.menu-dropdown-container ul>li>ul:before,
.menu>ul>li>.menu-dropdown-container ul>li>ul:after {
    content: "";
    display: table;
}

.menu>ul>li>.menu-dropdown-container ul>li>ul:after {
    clear: both;
}

.menu>ul>li>.menu-dropdown-container ul>li>ul>li {
    float: left;
    width: 100%;
    padding: 0;
    margin: 0;
    font-size: .8em;
}

.menu>ul>li>.menu-dropdown-container ul>li>ul>li a {
    border: 0;
    color: #000;
    display: inline-block;
    font-size: 1.3rem;
    font-weight: 400;
    letter-spacing: .015em;
    padding-bottom: 0.25rem;
    padding-top: 0.25rem;
    transition-duration: .15s;
}

.menu>ul>li>.menu-dropdown-container ul>li.menu-list a:hover {
    color: #266041;
}

.menu>ul>li>.menu-dropdown-container ul.normal-sub {
    width: 300px;
    left: auto;
    padding: 10px 20px;
}

.menu>ul>li>.menu-dropdown-container ul.normal-sub>li {
    width: 100%;
}

.menu>ul>li>.menu-dropdown-container ul.normal-sub>li a {
    border: 0;
    padding: 1em 0;
}

.mega-menu-spotlight-link {
    display: block;
    transition-duration: .15s;
}

.mega-menu-spotlight-link:hover {
    opacity: .75;
}

.mega-menu-spotlight-img-box {
    position: relative;
    margin-bottom: 0.5rem;
}

.mega-menu-spotlight-image {
    display: block;
    height: 100%;
    width: 100%;
}

.mega-menu-spotlight-title {
    margin-bottom: 0.5rem;
    letter-spacing: .015em;
    color: #266041;
    font-size: 1.1rem;
    font-weight: 700;
}

.mega-menu-spotlight-description {
    margin: 0;
    font-size: 1.6rem;
    font-weight: 300;
    letter-spacing: .015em;
    line-height: 2.2rem;
    color: rgb(33 33 33);
    font-family: 'Poppins', sans-serif;
}

.menu-dropdown-container .wrapper {
    overflow: hidden;
}

.menu-dropdown-container .wrapper ul {
    transform: translateY(-100%);
    transition: all 0.5s ease;
}

.menu-container.menu-dropdown-open .menu-dropdown-container .wrapper ul {
    transform: translateY(0);
}


/* Mobile menu toggle button 
============================= */

.menu-mobile {
    position: absolute;
    left: 1.25rem;
    display: none;
    cursor: pointer;
    padding: 8px 25px 11px 0px;
}


/* hamburger */

.menu-mobile span,
.menu-mobile span:before,
.menu-mobile span:after {
    position: absolute;
    display: block;
    content: '';
    height: 3px;
    width: 22px;
    background-color: #222;
    cursor: pointer;
    border-radius: 0;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.menu-mobile span:before {
    top: -7px;
}

.menu-mobile span:after {
    bottom: -7px;
}

.menu-mobile-dropdown-open .menu-mobile span {
    background-color: transparent !important;
}

.menu-mobile-dropdown-open .menu-mobile span:before {
    top: 0;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.menu-mobile-dropdown-open .menu-mobile span:after {
    top: 0;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}


/* ––––––––––––––––––––––––––––––––––––––––––––––––––
Mobile style's
–––––––––––––––––––––––––––––––––––––––––––––––––– */

@media only screen and (max-width: 959px) {
    .hello-promo-bar {
        font-size: 0.7rem;
    }
    #logo {
        position: absolute;
        z-index: 9;
        display: flex;
        align-items: center;
        height: 100%;
    }
    .menu-container {
        width: 100%;
        position: absolute;
        height: 100%;
        left: 0;
        margin: 0;
    }
    .menu-mobile {
        display: block;
    }
    .menu-container .menu {
        position: relative;
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .menu>ul>li {
        position: relative;
        width: 100%;
        float: none;
        display: block;
    }
    .menu>ul>li>a {
        padding: 1.5rem;
        width: 100%;
        display: block;
        font-size: 1.4rem;
        font-weight: 500;
        border-bottom: 1px solid #d8d8d8;
    }
    .menu>ul>li a {
        padding: 1.25rem;
        width: 100%;
        display: block;
        color: #212121!important;
    }
    .menu>ul>li>ul {
        position: relative;
    }
    .menu>ul>li>ul.normal-sub {
        width: 100%;
    }
    .menu>ul>li>ul>li {
        float: none;
        width: 100%;
        margin-top: 20px;
    }
    .menu>ul>li>ul>li:first-child {
        margin: 0;
    }
    .menu>ul>li>ul>li>ul {
        position: relative;
    }
    .menu>ul>li>ul>li>ul>li {
        float: none;
    }
    .menu>ul.nav-top-children {
        display: flex!important;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        top: 0;
        margin: 0;
        top: 100%;
        position: absolute;
        width: 100vw;
        height: 0;
        overflow: hidden;
        background: #fff;
        transition: all 0.3s ease;
        border-top: 1px solid #d8d8d8;
    }
    .menu-mobile-dropdown-open .menu>ul.nav-top-children {
        height: calc(100vh - 120px);
        overflow-y: scroll;
    }
    .tt-menu-tools {
        margin-right: 0;
    }
    .tt-menu-tools .language-item {
        display: block;
    }
    .language-item .tt-dropdown {
        display: block;
        position: absolute;
        opacity: 1;
        top: 100%;
        right: -1.25rem!important;
    }
}