// ------------------------- DO NOT EDIT THIS FILE ----------------------------
// ****** This file will be overwritten each time the plugin is updated *******
//
// This file is a major component of Max Mega Menu. The styling below works in
// perfect harmony with the current version of the plugin. The menu HTML
// will change as features are added to the plugin. Likewise, this CSS will be
// updated as new features are added to Max Mega Menu.
//
// If you need to apply custom styling to your menu go to Mega Menu > Menu Themes
// and enter your custom CSS into the Custom Styling area. Use the same (or more
// specific) selectors to ensure your custom CSS overrides the default CSS.

#{$wrap},
#{$wrap} #{$menu},
#{$wrap} #{$menu} ul.mega-sub-menu,
#{$wrap} #{$menu} li.mega-menu-item,
#{$wrap} #{$menu} li.mega-menu-row,
#{$wrap} #{$menu} li.mega-menu-column,
#{$wrap} #{$menu} a.mega-menu-link,
#{$wrap} #{$menu} span.mega-menu-badge {
    transition: none;
    @include border-radius(0, 0, 0, 0);
    @include box-shadow(none);
    background: none;
    border: 0;
    bottom: auto;
    box-sizing: border-box;
    clip: auto;
    color: $panel_font_color;
    display: block;
    float: none;
    font-family: unquote($panel_font_family);
    font-size: $panel_font_size;
    height: auto;
    left: auto;
    line-height: $line_height;
    list-style-type: none;
    margin: 0;
    min-height: auto;
    max-height: none;
    min-width: auto;
    max-width: none;
    opacity: 1;
    outline: none;
    overflow: visible;
    padding: 0;
    position: relative;
    pointer-events: auto;
    right: auto;
    text-align: left;
    text-decoration: none;
    text-indent: 0;
    text-transform: none;
    transform: none;
    top: auto;
    vertical-align: baseline;
    visibility: inherit;
    width: auto;
    word-wrap: break-word;
    white-space: normal;

    &:before,
    &:after {
        display: none;
    }
}

#{$wrap} {
    @include desktop {
        @include background($container_background_from, $container_background_to);
    }

    @include border-radius($container_border_radius_top_left, $container_border_radius_top_right, $container_border_radius_bottom_right, $container_border_radius_bottom_left);

    &.mega-keyboard-navigation {
        .mega-menu-toggle:focus,
        .mega-toggle-block:focus,
        .mega-toggle-block a:focus,
        .mega-toggle-block .mega-search input[type=text]:focus,
        .mega-toggle-block button.mega-toggle-animated:focus,
        #{$menu} a:focus,
        #{$menu} input:focus,
        #{$menu} li.mega-menu-item a.mega-menu-link:focus {
            outline: 3px solid #109cde;
            outline-offset: -3px;
        }

        .mega-toggle-block button.mega-toggle-animated:focus {
            outline-offset: 2px;
        }

        > li.mega-menu-item > a.mega-menu-link:focus {
            @include background($menu_item_background_hover_from, $menu_item_background_hover_to);
            color: $menu_item_link_color_hover;
            font-weight: $menu_item_link_weight_hover;
            text-decoration: $menu_item_link_text_decoration_hover;
            border-color: $menu_item_border_color_hover;

            @include mobile {
                color: $mobile_menu_item_link_color_hover;
                @include background($mobile_menu_item_background_hover_from, $mobile_menu_item_background_hover_to);
            }
        }
    }

    #{$menu} {
        visibility: visible;
        text-align: $menu_item_align;
        padding: $container_padding_top $container_padding_right $container_padding_bottom $container_padding_left;

        a.mega-menu-link {
            cursor: pointer;
            display: inline;

            @if $transitions == 'on' {
                transition: background 200ms linear, color 200ms linear, border 200ms linear;
            }

            .mega-description-group {
                vertical-align: middle;
                display: inline-block;
                transition: none;

                .mega-menu-title,
                .mega-menu-description {
                    transition: none;
                    line-height: 1.5;
                    display: block;
                }

                .mega-menu-description {
                    font-style: italic;
                    font-size: 0.8em;
                    text-transform: none;
                    font-weight: normal;
                }
            }
        }

        li.mega-menu-megamenu li.mega-menu-item.mega-icon-left.mega-has-description.mega-has-icon > a.mega-menu-link {
            display: flex;
            align-items: center;

            &:before {
                flex: 0 0 auto;
                align-self: flex-start;
            }
        }

        li.mega-menu-tabbed.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item.mega-icon-left.mega-has-description.mega-has-icon > a.mega-menu-link {
            display: block;
        }

        li.mega-menu-item.mega-icon-top > a.mega-menu-link {
            display: table-cell;
            vertical-align: middle;
            line-height: initial;
            
            &:before {
                display: block;
                margin: 0 0 6px 0;
                text-align: center;
            }

            > span.mega-title-below {
                display: inline-block;
                transition: none;
            }
        }

        @include mobile {
            > li.mega-menu-item.mega-icon-top > a.mega-menu-link {
                display: block;
                line-height: $mobile_menu_item_height;
                
                &:before {
                    display: inline-block;
                    margin: 0 6px 0 0;
                    text-align: left;
                }
            }
        }

        li.mega-menu-item.mega-icon-right > a.mega-menu-link {
            &:before {
                float: right;
                margin: 0 0 0 6px;
            }
        }

        > li.mega-animating > ul.mega-sub-menu {
             pointer-events: none;
        }

        li.mega-disable-link > a.mega-menu-link,
        li.mega-menu-megamenu li.mega-disable-link > a.mega-menu-link {
            cursor: inherit;
        }

        li.mega-menu-item-has-children.mega-disable-link > a.mega-menu-link,
        li.mega-menu-megamenu > li.mega-menu-item-has-children.mega-disable-link > a.mega-menu-link  {
            cursor: pointer;
        }

        p {
            margin-bottom: 10px;
        }

        input,
        img {
            max-width: 100%;
        }

        li.mega-menu-item > ul.mega-sub-menu {
            display: block;
            visibility: hidden;
            opacity: 1;
            pointer-events: auto;
        }

        @include mobile {
            li.mega-menu-item > ul.mega-sub-menu {
                display: none;
                visibility: visible;
                opacity: 1;
            }

            li.mega-menu-item.mega-toggle-on > ul.mega-sub-menu,
            li.mega-menu-megamenu.mega-menu-item.mega-toggle-on ul.mega-sub-menu {
                display: block;
            }
            li.mega-menu-megamenu.mega-menu-item.mega-toggle-on li.mega-hide-sub-menu-on-mobile > ul.mega-sub-menu,
            li.mega-hide-sub-menu-on-mobile > ul.mega-sub-menu {
                display: none;
            }
        }

        @include desktop {
            &[data-effect="fade"] {
                li.mega-menu-item > ul.mega-sub-menu {
                    opacity: 0;
                    transition: opacity $effect_speed ease-in, visibility $effect_speed ease-in;
                }

                &.mega-no-js li.mega-menu-item:hover > ul.mega-sub-menu,
                &.mega-no-js li.mega-menu-item:focus > ul.mega-sub-menu,
                li.mega-menu-item.mega-toggle-on > ul.mega-sub-menu,
                li.mega-menu-item.mega-menu-megamenu.mega-toggle-on ul.mega-sub-menu {
                    opacity: 1;
                }
            }

            &[data-effect="fade_up"] {
                li.mega-menu-item.mega-menu-megamenu > ul.mega-sub-menu,
                li.mega-menu-item.mega-menu-flyout ul.mega-sub-menu {
                    opacity: 0;
                    transform: translate(0, 10px);
                    transition: opacity $effect_speed ease-in, transform $effect_speed ease-in, visibility $effect_speed ease-in;
                }

                &.mega-no-js li.mega-menu-item:hover > ul.mega-sub-menu,
                &.mega-no-js li.mega-menu-item:focus > ul.mega-sub-menu,
                li.mega-menu-item.mega-toggle-on > ul.mega-sub-menu,
                li.mega-menu-item.mega-menu-megamenu.mega-toggle-on ul.mega-sub-menu {
                    opacity: 1;
                    transform: translate(0, 0);
                }
            }

            &[data-effect="slide_up"] {
                li.mega-menu-item.mega-menu-megamenu > ul.mega-sub-menu,
                li.mega-menu-item.mega-menu-flyout ul.mega-sub-menu {
                    transform: translate(0, 10px);
                    transition: transform $effect_speed ease-in, visibility $effect_speed ease-in;
                }

                &.mega-no-js li.mega-menu-item:hover > ul.mega-sub-menu,
                &.mega-no-js li.mega-menu-item:focus > ul.mega-sub-menu,
                li.mega-menu-item.mega-toggle-on > ul.mega-sub-menu,
                li.mega-menu-item.mega-menu-megamenu.mega-toggle-on ul.mega-sub-menu {
                    transform: translate(0, 0);
                }
            }
        }

        li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-collapse-children > ul.mega-sub-menu {
            display: none;
        }

        li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-collapse-children.mega-toggle-on > ul.mega-sub-menu {
            display: block;
        }

        &.mega-no-js li.mega-menu-item:hover > ul.mega-sub-menu,
        &.mega-no-js li.mega-menu-item:focus > ul.mega-sub-menu,
        li.mega-menu-item.mega-toggle-on > ul.mega-sub-menu {
            visibility: visible;
        }

        li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu ul.mega-sub-menu {
            visibility: inherit;
            opacity: 1;
            display: block;
        }

        @for $cols from 1 through 6 {
            li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-#{$cols}-columns > ul.mega-sub-menu > li.mega-menu-item {
                float: left;
                width: (100% / $cols);
            }
        }

        li.mega-menu-item a[class^='dashicons']:before {
            font-family: dashicons;
        }

        li.mega-menu-item a.mega-menu-link:before {
            display: inline-block;
            font: inherit;
            font-family: dashicons;
            position: static;
            margin: 0 6px 0 0px;
            vertical-align: top;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            color: inherit;
            background: transparent;
            height: auto;
            width: auto;
            top: auto;
        }

        li.mega-menu-item.mega-hide-text a.mega-menu-link:before {
            margin: 0;
        }

        li.mega-menu-item.mega-hide-text li.mega-menu-item a.mega-menu-link:before {
            margin: 0 6px 0 0;
        }

        li.mega-align-bottom-left {
            > ul.mega-sub-menu {

            }

            &.mega-toggle-on > a.mega-menu-link {
                @include border-radius($menu_item_link_border_radius_top_left, $menu_item_link_border_radius_top_right, 0px, 0px);
            }
        }

        li.mega-align-bottom-right {
            > ul.mega-sub-menu {
                right: 0;
            }

            &.mega-toggle-on > a.mega-menu-link {
                @include border-radius($menu_item_link_border_radius_top_left, $menu_item_link_border_radius_top_right, 0px, 0px);
            }
        }

        @if unit($panel_width) == '%' {
            > li.mega-menu-megamenu.mega-menu-item {
                position: static;
            }
        }

        // top level items
        > li.mega-menu-item {
            margin: 0 $menu_item_spacing 0 0;
            display: inline-block;
            height: auto;
            vertical-align: middle;

            @if $menu_item_divider == 'on' {
                @include desktop {
                    border-left: 1px solid $menu_item_divider_color;
                    @include box-shadow(inset 1px 0 0 0 rgba(255,255,255,$menu_item_divider_glow_opacity));

                    /* Hide divider on first menu item */
                    &:first-of-type {
                        border-left: 0;
                        @include box-shadow(none);
                    }
                }
            }

            &.mega-item-align-right {
                float: right;

                @include desktop {
                    margin: 0 0 0 $menu_item_spacing;
                }
            }

            &.mega-item-align-float-left {
                @include desktop {
                    float: left;
                }
            }

            @include desktop {
                > a.mega-menu-link:hover {
                    @include background($menu_item_background_hover_from, $menu_item_background_hover_to);
                    color: $menu_item_link_color_hover;
                    font-weight: $menu_item_link_weight_hover;
                    text-decoration: $menu_item_link_text_decoration_hover;
                    border-color: $menu_item_border_color_hover;
                }
            }

            &.mega-toggle-on > a.mega-menu-link {
                @include background($menu_item_background_hover_from, $menu_item_background_hover_to);
                color: $menu_item_link_color_hover;
                font-weight: $menu_item_link_weight_hover;
                text-decoration: $menu_item_link_text_decoration_hover;
                border-color: $menu_item_border_color_hover;

                @include mobile {
                    color: $mobile_menu_item_link_color_hover;
                    @include background($mobile_menu_item_background_hover_from, $mobile_menu_item_background_hover_to);
                }
            }

            @if $menu_item_highlight_current == 'on' {

                &.mega-current-menu-item,
                &.mega-current-menu-ancestor,
                &.mega-current-page-ancestor {
                    > a.mega-menu-link {
                        @include background($menu_item_background_hover_from, $menu_item_background_hover_to);
                        color: $menu_item_link_color_hover;
                        font-weight: $menu_item_link_weight_hover;
                        text-decoration: $menu_item_link_text_decoration_hover;
                        border-color: $menu_item_border_color_hover;

                        @include mobile {
                            color: $mobile_menu_item_link_color_hover;
                            @include background($mobile_menu_item_background_hover_from, $mobile_menu_item_background_hover_to);
                        }
                    }
                }

            }

            > a.mega-menu-link {
                line-height: $menu_item_link_height;
                height: $menu_item_link_height;
                padding: $menu_item_link_padding_top $menu_item_link_padding_right $menu_item_link_padding_bottom $menu_item_link_padding_left;
                vertical-align: baseline;
                width: auto;
                display: block;
                color: $menu_item_link_color;
                text-transform: $menu_item_link_text_transform;
                text-decoration: $menu_item_link_text_decoration;
                text-align: $menu_item_link_text_align;
                text-decoration: none;
                @include background($menu_item_background_from, $menu_item_background_to);
                @include border($menu_item_border_top, $menu_item_border_left, $menu_item_border_right, $menu_item_border_bottom, $menu_item_border_color);
                @include border-radius($menu_item_link_border_radius_top_left, $menu_item_link_border_radius_top_right, $menu_item_link_border_radius_bottom_right, $menu_item_link_border_radius_bottom_left);
                font-family: unquote($menu_item_link_font);
                font-size: $menu_item_link_font_size;
                font-weight: $menu_item_link_weight;
                outline: none;
            }

            // support for multi line links
            &.mega-multi-line > a.mega-menu-link {
                @include desktop {
                    line-height: inherit;
                    display: table-cell;
                    vertical-align: middle;
                }
                @include mobile {
                   br {
                       display: none;
                   }
                }
            }

            @include mobile {
                display: list-item;
                margin: 0;
                clear: both;
                border: 0;

                &.mega-item-align-right {
                    float: none;
                }

                > a.mega-menu-link {
                    @include border-radius(0, 0, 0, 0);
                    border: 0;
                    margin: 0;
                    line-height: $mobile_menu_item_height;
                    height: $mobile_menu_item_height;
                    padding: 0 10px;
                    background: transparent;
                    text-align: $mobile_menu_item_link_text_align;
                    color: $mobile_menu_item_link_color;
                    font-size: $mobile_menu_item_link_font_size;
                }
            }
        }

        // sub menu items (grid)
        li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row {


            @if unit($panel_inner_width) == 'px' {
                max-width: $panel_inner_width; /** Panel Width (Inner) **/
                margin: 0 auto;
                display: flex;
            } @else {
                width: 100%;
                float: left;
            }

            .mega-menu-column {
                float: left;
                min-height: 1px;
            }

            @include desktop {
                @for $of from 1 through 12 {
                    @for $cols from 1 through $of {
                        > ul.mega-sub-menu > li.mega-menu-columns-#{$cols}-of-#{$of} {
                            width: (100% / $of) * $cols;
                        }
                    }
                }
            }

            @include mobile {
                @if $mobile_columns == 2 {
                    > ul.mega-sub-menu > li.mega-menu-column {
                        width: 50%;
                    }

                    > ul.mega-sub-menu > li.mega-menu-column.mega-menu-clear {
                        clear: left;
                    }
                } @else {
                    > ul.mega-sub-menu > li.mega-menu-column {
                        width: 100%;
                        clear: both;
                    }
                }
            }


            .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item {
                padding: $panel_widget_padding_top $panel_widget_padding_right $panel_widget_padding_bottom $panel_widget_padding_left;
                width: 100%;
            }
        }

        // sub menu items (megamenu)
        > li.mega-menu-megamenu > ul.mega-sub-menu {
            z-index: $z_index;
            @include border-radius($panel_border_radius_top_left, $panel_border_radius_top_right, $panel_border_radius_bottom_right, $panel_border_radius_bottom_left);
            @include background($panel_background_from, $panel_background_to);
            @include border($panel_border_top, $panel_border_left, $panel_border_right, $panel_border_bottom, $panel_border_color);
            padding: $panel_padding_top $panel_padding_right $panel_padding_bottom $panel_padding_left;
            position: absolute;
            width: $panel_width;
            max-width: none;

            @if unit($panel_width) == '%' {
                left: 0;
            }

            @if unit($panel_inner_width) == '%' and $panel_inner_width < 100% {
                padding-left: (100 - $panel_inner_width) / 2;
                padding-right: (100 - $panel_inner_width) / 2;
            }

            @if $shadow == 'on' {
                @include box-shadow($shadow_horizontal $shadow_vertical $shadow_blur $shadow_spread $shadow_color);
            }

            @include mobile {
                float: left;
                position: static;
                width: 100%;
            }

            @include desktop {
                @for $of from 1 through 12 {
                    @for $cols from 1 through $of {
                        li.mega-menu-columns-#{$cols}-of-#{$of} {
                            width: (100% / $of) * $cols;
                        }
                    }
                }
            }

            .mega-description-group .mega-menu-description {
                margin: 5px 0;
            }

            > li.mega-menu-item ul.mega-sub-menu {
                clear: both;

                li.mega-menu-item ul.mega-sub-menu {
                    margin-left: 10px;
                }
            }

            li.mega-menu-column > ul.mega-sub-menu ul.mega-sub-menu ul.mega-sub-menu {
                margin-left: 10px;
            }

            > li.mega-menu-item,
            li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item {
                color: $panel_font_color;
                font-family: unquote($panel_font_family);
                font-size: $panel_font_size;
                display: block;
                float: left;
                clear: none;
                padding: $panel_widget_padding_top $panel_widget_padding_right $panel_widget_padding_bottom $panel_widget_padding_left;
                vertical-align: top;

                &.mega-menu-clear {
                    clear: left;
                }

                // Widget titles
                h4.mega-block-title {
                    color: $panel_header_color;
                    font-family: unquote($panel_header_font);
                    font-size: $panel_header_font_size;
                    text-transform: $panel_header_text_transform;
                    text-decoration: $panel_header_text_decoration;
                    font-weight: $panel_header_font_weight;
                    text-align: $panel_header_text_align;
                    margin: $panel_header_margin_top $panel_header_margin_right $panel_header_margin_bottom $panel_header_margin_left;
                    padding: $panel_header_padding_top $panel_header_padding_right $panel_header_padding_bottom $panel_header_padding_left;
                    vertical-align: top;
                    display: block;
                    visibility: inherit;
                    @include border($panel_header_border_top, $panel_header_border_left, $panel_header_border_right, $panel_header_border_bottom, $panel_header_border_color);

                    &:hover {
                        border-color: $panel_header_border_color_hover;
                    }
                }

                // Second level menu items
                > a.mega-menu-link {
                    color: $panel_second_level_font_color; /* Mega Menu > Menu Themes > Mega Menus > Second Level Menu Items */
                    font-family: unquote($panel_second_level_font);
                    font-size: $panel_second_level_font_size;
                    text-transform: $panel_second_level_text_transform;
                    text-decoration: $panel_second_level_text_decoration;
                    font-weight: $panel_second_level_font_weight;
                    text-align: $panel_second_level_text_align;
                    margin: $panel_second_level_margin_top $panel_second_level_margin_right $panel_second_level_margin_bottom $panel_second_level_margin_left;
                    padding: $panel_second_level_padding_top $panel_second_level_padding_right $panel_second_level_padding_bottom $panel_second_level_padding_left;
                    vertical-align: top;
                    display: block;
                    @include border($panel_second_level_border_top, $panel_second_level_border_left, $panel_second_level_border_right, $panel_second_level_border_bottom, $panel_second_level_border_color);
                
                    &:hover {
                        border-color: $panel_second_level_border_color_hover;
                    }
                }

                > a.mega-menu-link:hover,
                > a.mega-menu-link:focus {
                    color: $panel_second_level_font_color_hover; /* Mega Menu > Menu Themes > Mega Menus > Second Level Menu Items (Hover) */
                    font-weight: $panel_second_level_font_weight_hover;
                    text-decoration: $panel_second_level_text_decoration_hover;
                    @include background($panel_second_level_background_hover_from, $panel_second_level_background_hover_to);

                    > span.mega-title-below {
                        text-decoration: $panel_second_level_text_decoration_hover;
                    }
                }

                li.mega-menu-item {
                    > a.mega-menu-link {
                        color: $panel_third_level_font_color; /* Mega Menu > Menu Themes > Mega Menus > Third Level Menu Items */
                        font-family: unquote($panel_third_level_font);
                        font-size: $panel_third_level_font_size;
                        text-transform: $panel_third_level_text_transform;
                        text-decoration: $panel_third_level_text_decoration;
                        font-weight: $panel_third_level_font_weight;
                        text-align: $panel_third_level_text_align;
                        margin: $panel_third_level_margin_top $panel_third_level_margin_right $panel_third_level_margin_bottom $panel_third_level_margin_left;
                        padding: $panel_third_level_padding_top $panel_third_level_padding_right $panel_third_level_padding_bottom $panel_third_level_padding_left;
                        vertical-align: top;
                        display: block;
                        @include border($panel_third_level_border_top, $panel_third_level_border_left, $panel_third_level_border_right, $panel_third_level_border_bottom, $panel_third_level_border_color);
                    
                        &:hover {
                            border-color: $panel_third_level_border_color_hover;
                        }
                    }

                    &.mega-icon-left.mega-has-description.mega-has-icon > a.mega-menu-link {
                        display: flex;
                    }
                }

                // Third level menu items hover
                li.mega-menu-item > a.mega-menu-link:hover,
                li.mega-menu-item > a.mega-menu-link:focus {
                    color: $panel_third_level_font_color_hover; /* Mega Menu > Menu Themes > Mega Menus > Third Level Menu Items (Hover) */
                    font-weight: $panel_third_level_font_weight_hover;
                    text-decoration: $panel_third_level_text_decoration_hover;
                    @include background($panel_third_level_background_hover_from, $panel_third_level_background_hover_to);
                }

            }

            @include mobile {
                border: 0;
                padding: 10px;
                @include border-radius(0, 0, 0, 0);

                @if $mobile_columns == 2 {
                    > li.mega-menu-item {
                        width: 50%;
                    }

                    > li:nth-child(odd) {
                        clear: left;
                    }
                } @else {
                    > li.mega-menu-item {
                        width: 100%;
                        clear: both;
                    }
                }
            }
        }

        > li.mega-menu-megamenu.mega-no-headers > ul.mega-sub-menu {
            > li.mega-menu-item > a.mega-menu-link,
            li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {
                color: $panel_third_level_font_color;
                font-family: unquote($panel_third_level_font);
                font-size: $panel_third_level_font_size;
                text-transform: $panel_third_level_text_transform;
                text-decoration: $panel_third_level_text_decoration;
                font-weight: $panel_third_level_font_weight;
                margin: 0;
                border: 0;
                padding: $panel_third_level_padding_top $panel_third_level_padding_right $panel_third_level_padding_bottom $panel_third_level_padding_left;
                vertical-align: top;
                display: block;
            }

            > li.mega-menu-item > a.mega-menu-link:hover,
            > li.mega-menu-item > a.mega-menu-link:focus,
            li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:hover,
            li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:focus {
                color: $panel_third_level_font_color_hover;
                font-weight: $panel_third_level_font_weight_hover;
                text-decoration: $panel_third_level_text_decoration_hover;
                @include background($panel_third_level_background_hover_from, $panel_third_level_background_hover_to);
            }
        }

        // Sub menu items (flyout)
        > li.mega-menu-flyout ul.mega-sub-menu {
            z-index: $z_index;
            position: absolute;
            width: $flyout_width;
            max-width: none;
            padding: $flyout_padding_top $flyout_padding_right $flyout_padding_bottom $flyout_padding_left;
            @include border($flyout_border_top, $flyout_border_left, $flyout_border_right, $flyout_border_bottom, $flyout_border_color);
            @include background($flyout_menu_background_from, $flyout_menu_background_to);
            @include border-radius($flyout_border_radius_top_left, $flyout_border_radius_top_right, $flyout_border_radius_bottom_right, $flyout_border_radius_bottom_left);

            @if $shadow == 'on' {
                @include box-shadow($shadow_horizontal $shadow_vertical $shadow_blur $shadow_spread $shadow_color);
            }

            @include mobile {
                float: left;
                position: static;
                width: 100%;
                padding: 0;
                border: 0;
                border-radius: 0
            }

            li.mega-menu-item {

                @if $flyout_width == 'auto' {
                    @include desktop {
                        > a.mega-menu-link {
                            white-space: nowrap;
                            min-width: 150px;
                        }

                        &.mega-has-description {
                            > a.mega-menu-link {
                                white-space: normal;

                                > .mega-description-group > .mega-menu-title {
                                    white-space: nowrap;
                                }
                            }
                        }
                    }
                }

                @if $flyout_menu_item_divider == 'on' {
                    border-bottom: 1px solid $flyout_menu_item_divider_color;

                    /* Hide divider on last menu item */
                    &:last-child {
                        border-bottom: 0;
                        @include box-shadow(none);
                    }
                }

                @include mobile {
                    clear: both;
                }

                a.mega-menu-link {
                    display: block;
                    @include background($flyout_background_from, $flyout_background_to);
                    color: $flyout_link_color;
                    font-family: unquote($flyout_link_family);
                    font-size: $flyout_link_size;
                    font-weight: $flyout_link_weight;
                    padding: $flyout_link_padding_top $flyout_link_padding_right $flyout_link_padding_bottom $flyout_link_padding_left;
                    line-height: $flyout_link_height;
                    text-decoration: $flyout_link_text_decoration;
                    text-transform: $flyout_link_text_transform;
                    vertical-align: baseline;
                }

                &:first-child > a.mega-menu-link {
                    border-top-left-radius: $flyout_border_radius_top_left;
                    border-top-right-radius: $flyout_border_radius_top_right;

                    @include mobile {
                        border-top-left-radius: 0;
                        border-top-right-radius: 0;
                    }
                }

                &:last-child > a.mega-menu-link {
                    border-bottom-right-radius: $flyout_border_radius_bottom_right;
                    border-bottom-left-radius: $flyout_border_radius_bottom_left;

                    @include mobile {
                        border-bottom-right-radius: 0;
                        border-bottom-left-radius: 0;
                    }
                }

                a.mega-menu-link:hover,
                a.mega-menu-link:focus {
                    @include background($flyout_background_hover_from, $flyout_background_hover_to);
                    font-weight: $flyout_link_weight_hover;
                    text-decoration: $flyout_link_text_decoration_hover;
                    color: $flyout_link_color_hover;
                }

                ul.mega-sub-menu {
                    position: absolute;
                    left: 100%;
                    top: 0;
                }

                @include mobile {
                    ul.mega-sub-menu {
                        position: static;
                        left: 0;
                        width: 100%;

                        a.mega-menu-link {
                            padding-left: 20px;
                        }

                        ul.mega-sub-menu a.mega-menu-link {
                            padding-left: 30px;
                        }
                    }
                }
            }
        }

        // Arrows
        li.mega-menu-item-has-children {

            > a.mega-menu-link > span.mega-indicator:after {
                content: $arrow_down;
                font-family: $arrow_font;
                font-weight: $arrow_font_weight;
                display: inline-block;
                margin: 0 0 0 6px;
                vertical-align: top;
                -webkit-font-smoothing: antialiased;
                -moz-osx-font-smoothing: grayscale;
                transform: rotate(0);
                color: inherit;
                position: relative;
                background: transparent;
                height: auto;
                width: auto;
                right: auto;
                line-height: inherit;
            }

            > a.mega-menu-link > span.mega-indicator {
                display: inline;
                height: auto;
                width: auto;
                background: transparent;
                position: relative;
                pointer-events: auto;
                left: auto;
                min-width: auto;
                line-height: inherit;
                color: inherit;
                font-size: inherit;
                padding: 0;
            }

            li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator {
                float: right;
            }

            &.mega-collapse-children.mega-toggle-on > a.mega-menu-link > span.mega-indicator:after {
                content: $arrow_up;
            }

            @include mobile {
                > a.mega-menu-link > span.mega-indicator {
                    float: right;
                }

                &.mega-toggle-on > a.mega-menu-link > span.mega-indicator:after {
                    content: $arrow_up;
                }

                &.mega-hide-sub-menu-on-mobile > a.mega-menu-link > span.mega-indicator  {
                    display: none;
                }
            }
        }

        // Hide arrows
        li.mega-menu-megamenu:not(.mega-menu-tabbed) li.mega-menu-item-has-children:not(.mega-collapse-children) > a.mega-menu-link > span.mega-indicator,
        li.mega-menu-item-has-children.mega-hide-arrow > a.mega-menu-link > span.mega-indicator {
            display: none;
        }

        // Flyout menus
        @include desktop {
            li.mega-menu-flyout {
                li.mega-menu-item a.mega-menu-link > span.mega-indicator {
                    &:after {
                        content: $arrow_right;
                    }
                }

                &.mega-align-bottom-right {
                    li.mega-menu-item a.mega-menu-link {
                        text-align: right;

                        > span.mega-indicator {
                            float: left;

                            &:after {
                                content: $arrow_left;
                                margin: 0 6px 0 0;
                            }
                        }

                        // Icons
                        &:before {
                            float: right;
                            margin: 0 0 0 6px;
                        }
                    }
                    
                    ul.mega-sub-menu li.mega-menu-item ul.mega-sub-menu {
                        left: -100%;
                        top: 0;
                    }
                }
            }
        }

        // arrows
        @include desktop {
            &.mega-menu-accordion > li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator {
                float: right;
            }
        }

        // PolyLang Language Switcher
        li[class^='mega-lang-item'] > a.mega-menu-link > img {
            display: inline;
        }

        // WPML Flags
        a.mega-menu-link > img.wpml-ls-flag,
        a.mega-menu-link > img.iclflag {
            display: inline;
            margin-right: 8px;
        }

        @include mobile {
            li.mega-hide-on-mobile,
            > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-hide-on-mobile,
            > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-hide-on-mobile {
                display: none;
            }
        }

        @include desktop {
            li.mega-hide-on-desktop,
            > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-hide-on-desktop,
            > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-hide-on-desktop {
                display: none;
            }
        }
    }

    @include mobile {
        &:after {
            content: "";
            display: table;
            clear: both;
        }

    }

    .mega-menu-toggle {
        display: none;
        z-index: 1;
        cursor: pointer;
        @include background($toggle_background_from, $toggle_background_to);
        @include border-radius($toggle_bar_border_radius_top_left, $toggle_bar_border_radius_top_right, $toggle_bar_border_radius_bottom_right, $toggle_bar_border_radius_bottom_left);
        line-height: $toggle_bar_height;
        height: $toggle_bar_height;
        text-align: left;
        user-select: none;
        -webkit-tap-highlight-color: transparent;
        outline: none;
        white-space: nowrap;

        img {
            max-width: 100%;
            padding: 0;
        }

        @include mobile {
            @if $disable_mobile_toggle == on {
                display: none;
            } @else {
                display: -webkit-box;
                display: -ms-flexbox;
                display: -webkit-flex;
                display: flex;
            }
        }

        .mega-toggle-blocks-left,
        .mega-toggle-blocks-center,
        .mega-toggle-blocks-right {
            display: -webkit-box;
            display: -ms-flexbox;
            display: -webkit-flex;
            display: flex;

            -ms-flex-preferred-size: 33.33%;
            -webkit-flex-basis: 33.33%;
            flex-basis: 33.33%;
        }

        .mega-toggle-blocks-left {
            -webkit-box-flex: 1;
            -ms-flex: 1;
            -webkit-flex: 1;
            flex: 1;

            -webkit-box-pack: start;
            -ms-flex-pack: start;
            -webkit-justify-content: flex-start;
            justify-content: flex-start;

            .mega-toggle-block {
                margin-left: 6px;

                &:only-child {
                    margin-right: 6px;
                }
            }
        }

        .mega-toggle-blocks-center {
            -webkit-box-pack: center;
            -ms-flex-pack: center;
            -webkit-justify-content: center;
            justify-content: center;

            .mega-toggle-block {
                margin-left: 3px;
                margin-right: 3px;
            }
        }

        .mega-toggle-blocks-right {
            -webkit-box-flex: 1;
            -ms-flex: 1;
            -webkit-flex: 1;
            flex: 1;
            -webkit-box-pack: end;
            -ms-flex-pack: end;
            -webkit-justify-content: flex-end;
            justify-content: flex-end;

            .mega-toggle-block {
                margin-right: 6px;

                &:only-child {
                    margin-left: 6px;
                }
            }
        }

        .mega-toggle-block {
            display: -webkit-box;
            display: -ms-flexbox;
            display: -webkit-flex;
            display: flex;
            height: 100%;
            outline: 0;

            -webkit-align-self: center;
            -ms-flex-item-align: center;
            align-self: center;
            
            -ms-flex-negative: 0;
            -webkit-flex-shrink: 0;
            flex-shrink: 0;
        }

        @include mobile {

            + #{$menu} {
                @include background($mobile_background_from, $mobile_background_to);
                padding: $mobile_menu_padding_top $mobile_menu_padding_right $mobile_menu_padding_bottom $mobile_menu_padding_left;
                
                @if $disable_mobile_toggle == on {
                    display: block; 
                } @else {
                    display: none;

                    @if $mobile_menu_overlay == on or $mobile_menu_force_width == on {
                        position: absolute;
                        width: 100%;
                        z-index: 9999999;
                    }
                }
            }

            &.mega-menu-open + #{$menu} {
                display: block;
            }

            @if ( ( $effect_mobile == slide_right or $effect_mobile == slide_left ) and $disable_mobile_toggle == off ) {

                @if unit( $mobile_menu_off_canvas_width ) == '%' {
                    $mobile_menu_off_canvas_width: 300px;
                }

                + #{$menu} {
                    position: fixed;
                    display: block;
                    width: $mobile_menu_off_canvas_width;
                    max-width: 90%;
                    height: 100vh;
                    max-height: 100vh;
                    top: 0;
                    box-sizing: border-box;
                    transition: left $effect_speed_mobile ease-in-out, right $effect_speed_mobile ease-in-out;
                    overflow: auto;
                    z-index: 9999999999;
                    overscroll-behavior: contain;
                }

                @if ($effect_mobile == slide_right ) {
                    + #{$menu} {
                        left: -$mobile_menu_off_canvas_width;
                    }

                    &.mega-menu-open + #{$menu} {
                        left: 0;
                    }
                }

                @if ($effect_mobile == slide_left ) {
                    + #{$menu} {
                        right: -$mobile_menu_off_canvas_width;
                    }
                    
                    &.mega-menu-open + #{$menu} {
                        right: 0;
                    }
                }

                &.mega-menu-open:after {
                    position: fixed;
                    width: 100%;
                    height: 99999px;
                    content: "";
                    top: 0;
                    left: 0;
                    opacity: 0.5;
                    background: black;
                    cursor: pointer;
                    z-index: 9999999998;
                }
            }
        }
    }
}

@if ( ( $effect_mobile == slide_right or $effect_mobile == slide_left ) and $disable_mobile_toggle == off ) {
    html.mega-menu-#{$location}-off-canvas-open {
        overflow: hidden;
        height: auto;
        
        body {
            overflow: hidden;
            height: auto;
        }

        #wpadminbar {
           z-index: 0;
        }
    }
}