/* Mobile first layout SmartMenus Core CSS (it's not recommended editing these rules)
   You need this once per page no matter how many menu trees or different themes you use.
-------------------------------------------------------------------------------------------*/

.main-menu{box-sizing:border-box;z-index:9999;-webkit-tap-highlight-color:rgba(0,0,0,0);}
.main-menu,.main-menu ul,.main-menu li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;}
.main-menu ul{display:none;}
.main-menu li,.main-menu a{position:relative;}
.main-menu a{display:block;}
.main-menu::after{content:"";display:block;height:0;clear:both;overflow:hidden;}



@media (max-width: 767px) {
    .main-menu {
        clear: both;
    }
}
.main-menu a.current {
    background: #006892;
    color: #fff;
}

.main-menu a .sub-arrow {
    position: absolute;
    top: 50%;
    margin-top: -17px;
    left: auto;
    right: 4px;
    width: 34px;
    height: 34px;
    overflow: hidden;
    font: bold 16px/34px monospace !important;
    text-align: center;
    text-shadow: none;
    background: rgba(0, 0, 0, 0.1);
}
.main-menu a .sub-arrow::before {
    content: '+';
}
.main-menu a.highlighted .sub-arrow::before {
    content: '-';
}


@media (min-width: 768px) {
    /* Switch to desktop layout
    -----------------------------------------------
       These transform the menu tree from
       collapsible to desktop (navbar + dropdowns)
    -----------------------------------------------*/
    /* start... (it's not recommended editing these rules) */
    .main-menu ul {
        position: absolute;
        width: 12em;
    }

    .main-menu li {
        float: left;
    }

    .main-menu.sm-rtl li {
        float: right;
    }

    .main-menu ul li, .main-menu.sm-rtl ul li, .main-menu.sm-vertical li {
        float: none;
    }

    .main-menu a {
        white-space: nowrap;
    }

    .main-menu ul a, .main-menu.sm-vertical a {
        white-space: normal;
    }

    .main-menu .sm-nowrap > li > a, .main-menu .sm-nowrap > li > :not(ul) a {
        white-space: nowrap;
    }

    /* ...end */
    .main-menu a .sub-arrow {
        top: auto;
        margin-top: 0;
        bottom: 2px;
        left: 50%;
        margin-left: -5px;
        right: auto;
        width: 0;
        height: 0;
        border-width: 5px;
        border-style: solid dashed dashed dashed;
        border-color: #a1d1e8 transparent transparent transparent;
        background: transparent;
    }

    .main-menu a .sub-arrow::before {
        display: none;
    }

    .main-menu > li:first-child {
        border-left: 0;
    }

    .main-menu > li a {
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .main-menu ul a .sub-arrow {
        top: 50%;
        margin-top: -5px;
        bottom: auto;
        left: auto;
        margin-left: 0;
        right: 10px;
        border-style: dashed dashed dashed solid;
        border-color: transparent transparent transparent #a1d1e8;
    }

}

/*# sourceMappingURL=main-menu.css.map */



.main-nav {
    position: relative;
    background: #fff;
    min-height: 50px;
}

.main-nav:after {
    clear: both;
    content: "\00a0";
    display: block;
    height: 0;
    font: 0px/0 serif;
    overflow: hidden;
}

.nav-brand {
    float: left;
    margin: 0;
}


.nav-brand a {
    display: block;
    padding: 10px 10px 10px 20px;
}

.nav-brand img {
    width: 250px;
    height: 45px;
}





/* Mega menus */


/* make mega menus take the full width of .main-nav */

.main-menu,
.main-menu > .has-mega-menu {
    position: static !important;
}

.main-menu .mega-menu {
    background: #F7F7F7;
    margin-left: 0 !important;
    right: 0 !important;
    width: auto !important;
    max-width: none !important;
    padding: 3em 0;
    margin-bottom: 30px;
    box-shadow: 0px 1px 3px 0 rgba(0,0,0,0.05);
}

.main-menu > .has-mega-menu .scroll-up,
.main-menu > .has-mega-menu .scroll-down {
    margin-left: 0 !important;
}


/* clear any floats inside the mega menus */

.main-menu .mega-menu > li {
    overflow: auto;
}


/* reset mega menu list/link styles (which are inherited from the SmartMenus core/theme styles) */

@media (max-width: 767px) {
    .main-nav .container-fluid {
        padding: 0;
    }

    .navbar-header__sub-nav,
    .site-slogan {
        display: none !important;
    }

    .navbar-header::after {
        clear: none; /* Reset clear voor de toggle */
    }
}


.main-menu .mega-menu {
    color: #353451;
}

.main-menu .mega-menu > li {
    margin-right: auto;
    margin-left: auto;
    max-width: 1170px;
    padding-left: 15px;
    padding-right: 15px;
}




.main-menu .mega-menu ul {
    position: static;
    display: block;
    margin: 0.83em 0;
    width: auto;
}



.main-menu .mega-menu a {
    position: relative;
    display: inline-block;
    border: 0;
    padding-top: 10px;
    padding-bottom: 10px;
    /*padding-left: 1.3em;*/
    background: transparent;
    color: inherit;
    text-decoration: none;
}

.main-menu .mega-menu a.box-item {
    padding: 0;
    white-space: normal;

}

.main-menu .mega-menu div li a.box-item:before {
    display: none;
}

.main-menu .mega-menu a:hover {
    color: #005efe;
    border-bottom: none;
}

/* simple columns inside the mega menus */
.main-menu .mega-menu .column-1-2 ul,
.main-menu .mega-menu .column-1-3 ul,
.main-menu .mega-menu .column-1-4 ul {
    /* padding: 0 20px; */
    margin-top: 0;
}

@media (min-width: 768px) {
    .main-menu .mega-menu .column-1-3, .main-menu .mega-menu .column-1-2 {
        float: left;
        width: 50%;
    }

    .main-menu .mega-menu .column-1-4 {
        float: left;
        width: 50%;
    }
}

@media (min-width: 992px) {
    .main-menu .mega-menu .column-1-3 {
        float: left;
        width: 33.33%;
    }

    .main-menu .mega-menu .column-1-4 {
        float: left;
        width: 33.33%;
    }
}

@media (min-width: 1200px) {
    .main-menu .mega-menu .column-1-4 {
        width: 25%;
    }
}


/* Sample image placeholder */

.mega-menu-sample-image {
    margin: 0.83em 0;
    border: 1px solid;
    height: 80px;
    line-height: 80px;
    text-align: center;
}


/* Mobile menu top separator */

.main-menu:before {
    content: '';
    display: block;
    height: 1px;
    font: 1px/1px sans-serif;
    overflow: hidden;
    background: #4b4a73;
}

@media (min-width: 768px) {
    .main-menu:before {
        display: none;
    }
}


/* Mobile menu toggle button */

.main-menu-btn {
    float: right;
    margin: 10px;
    position: relative;
    display: inline-block;
    width: 29px;
    height: 29px;
    text-indent: 29px;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}


/* hamburger icon */

.main-menu-btn-icon,
.main-menu-btn-icon:before,
.main-menu-btn-icon:after {
    position: absolute;
    top: 50%;
    left: 2px;
    height: 2px;
    width: 24px;
    background: #000;
    -webkit-transition: all 0.25s;
    transition: all 0.25s;
}

.main-menu-btn-icon:before {
    content: '';
    top: -7px;
    left: 0;
}

.main-menu-btn-icon:after {
    content: '';
    top: 7px;
    left: 0;
}


/* x icon */

#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon {
    height: 0;
    background: transparent;
}

#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:before {
    top: 0;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:after {
    top: 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}


/* hide menu state checkbox (keep it visible to screen readers) */

#main-menu-state {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    border: 0;
    padding: 0;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
}


/* hide the menu in mobile view */

#main-menu-state:not(:checked) ~ .main-menu {
    display: none;
}

#main-menu-state:checked ~ .main-menu {
    display: block;
}

@media (min-width: 768px) {
    /* hide the button in desktop view */
    .main-menu-btn {
        position: absolute;
        top: -99999px;
    }
    /* always show the menu in desktop view */
    #main-menu-state:not(:checked) ~ .main-menu {
        display: block;
    }
}


