.qodef-main-menu {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    height: 100%;



    ul {
        list-style: none outside none;
        margin: 0px;
        padding: 0px;
        text-align: left;

        li {

            position: relative;
            display: inline-block;
            float: left;
            padding: 0px;
            margin: 0px;
            background-repeat: no-repeat;
            background-position: right;

            a {
                font-size: 14px;
                line-height: 23px;
                font-weight: 900;
                color: #000000;


                body:not(.qodef-menu-with-large-icons) & span.item_inner i:before{
                    margin: 0 7px 0 0;
                }
            }

            &:hover a, &.qodef-active-item a {
                color: #000000;
            }
        }
    }

    > ul {

        display: inline-block;
        vertical-align: middle;
        position: relative;
        height: 100%;

        > li {

            height: 100%;

            &:last-child > a span.plus{
                display: none;

            }

            body:not(.qodef-menu-item-first-level-bg-color) &:hover > a,
            &.qodef-active-item > a {
                color: #f5e103;
            }

            &.has_sub {
                > a i.qodef-menu-arrow {
                    display: inline-block;
                    margin-left: 6px;
                }

                > a .item_inner > i.qodef-menu-arrow{
                    position: relative;
                    left:4px;
                }
            }

            > a {

                height: 100%;
                text-transform: uppercase;
                position: relative;
                padding: 0;
                display: inline-block;
                vertical-align: middle;
                border-style: solid;
                border-width: 0;
                border-color: transparent;
                background-color: transparent;
                @include qodefTransition(color 0.15s ease-out, color 0.15s ease-out, border-color 0.15s ease-out, background-color 0.15s ease-out);

                &:before {
                    height: 2px;
                    bottom: 0px;
                }

                &:after {
                    height: 1px;
                    bottom: 4px;
                }

                body.qodef-menu-with-large-icons &{
                    text-align: center;
                    vertical-align:middle;
                }

                > span.item_outer{
                    display: block;
                    position: relative;
                    top: 50%;
                    @include qodefTransform(translateY(-50%));

					&:before{
						display: none;
						width: 1px;
						height: 15px;
						position: absolute;
						right: 0;
						bottom: 1px;
						background-color: #a0a0a0;
						content: '';
					}
                }

                span.item_inner {
                    display: inline-block;
                    padding: 0 18px;
                    border-width: 0px;
                    position: relative;
                    border-color: transparent;
                    background-color: transparent;
                    @include qodefTransition(text-decoration 0.2s ease-out, border-color 0.2s ease-out, background-color 0.2s ease-out);

                    body.qodef-menu-with-large-icons &{
                        text-align: center;
                        vertical-align:middle;
                    }


                }

                span.item_inner:before,
                span.item_inner:after,
                &:before,
                &:after {
                    content: "";
                    display: none;
                    position: absolute;
                    left: 0px;
                    background-color: transparent;
                    @include qodefTransition(background-color 0.15s ease-out);
                    width: 100%;

                }

                span.item_inner:before {
                    bottom: 0px;
                    height: 2px;
                }

                span.item_inner:after {
                    height: 1px;
                    bottom: 4px;
                }

                body.qodef-menu-with-large-icons & span.item_inner i{
                    display: inline-block;
                    width:100%;
                    vertical-align:middle;
                }

                span.plus{
                    width: 4px;
                    height:4px;
                    display: none;
                    position:absolute;
                    top:50%;
                    right:-2px;
                    margin-top: -2px;
                    z-index:1;
                    @include qodefTransform(rotate(45deg));
                }

                > i.blank{
                    display: none;
                }
            }

            &:last-child {
                > a {
                    > span.item_outer{
                        &:before{
                            display: none;
                        }
                    }
                }
            }
        }
    }

    body:not(.qodef-menu-with-large-icons) & .qodef-drop-down .wide.icons .second i:before {
        margin: 0;
    }
}

.qodef-light-header .qodef-page-header > div:not(.qodef-sticky-header),
.qodef-light-header.qodef-header-style-on-scroll .qodef-page-header{
	.qodef-main-menu > ul > li{
		> a {
			color: $header-light-color;

			span.item_outer::before{
				background-color: #bdbdbd;
			}
		}
        &:hover > a, &.qodef-active-item > a {
            color: $header-light-hover-color;
        }
	}
}

.qodef-dark-header .qodef-page-header > div:not(.qodef-sticky-header),
.qodef-dark-header.qodef-header-style-on-scroll .qodef-page-header{
	.qodef-main-menu > ul > li{
		> a {
			color: $header-dark-color;

			span.item_outer::before{
				background-color: #a0a0a0;
			}
		}
        &:hover > a, &.qodef-active-item > a {
            color: $header-dark-hover-color;
        }
	}
}

.qodef-menu-area .qodef-featured-icon,
.qodef-sticky-nav .qodef-featured-icon{
    position:relative;
    font-size: 11px;
    top: -8px;
    margin-left: 4px;
    color: $first-main-color;
}


/* Narrow drop down styles
   ========================================================================== */
.qodef-drop-down{
	ul{
		list-style: none;

		li{
			position: relative;
		}
	}

	%second-ul{
		display:inline-block;
		position: relative;
		background-color: #fff;
	}

	.second{
		left: 0;
		top: 100%;
		position: absolute;
		display: block;
		visibility: hidden;
		overflow: hidden;
		opacity: 0;
		z-index: 10;
        border-top: 4px solid $first-main-color;
		@include qodefTransition(top 0.15s ease-out);

		&.qodef-drop-down-start{
			visibility: visible;
			overflow: visible;
			opacity: 1;
			@include qodefTransition(opacity 0.2s ease-out);
		}

		header.transparent.fixed.scrolled &,
		header.transparent.fixed_hiding.scrolled &,
		header.transparent.with_border:not(.sticky) &,
		header.transparent.qodef-menu-item-first-level-bg-color:not(.sticky) &{
			top: 100%;
		}

		header.transparent:not(.sticky) &{
			top: 75%;
		}

		&.right {
			right: 0px;
			left: auto;
		}
	}

	.second .inner{
		position: relative;
		padding: 0px;
		display: block;
		z-index: 997;

		> ul{
			@extend %second-ul;

			> li:last-child > a,
			> li > ul > li:last-child > a,
			> li > ul > li > ul > li:last-child > a{
				border-bottom: 0;
			}
		}

		ul li{
			display: block;
			position: relative;
			float: none;
			height: auto;
			background: 0;
			@include qodefTransition(background-color .15s ease-out);
		}

		ul li a,
		ul li h4{
			display: block;
			color: #797979;
			height: auto;
			font-size: 14px;
			line-height: 24px;
			font-weight: 400;
			margin: 0 30px;
			padding: 5px 0;
			border-bottom: 1px solid transparent;
			float:none;
			@include qodefTransition(color .3s ease-out);
		}

        > ul > li > a,
        ul li.sub ul li > a {
            &.has_icon {
                .menu_icon_wrapper {
                    width: 20px;
                    backface-visibility: hidden;
                }
            }

            .item_outer {
                padding: 0 30px 0 0;
                display: block;
                overflow: hidden;
                position: relative;
                @include qodefTransition(padding .25s ease-out);
                &:before {
                    position: absolute;
                    top: -3px;
                    left: -30px;
                    content: "~";
                    width: 15px;
                    font-size: 29px;
                    display: block;
                    font-family: 'Catamaran', serif;
                    line-height: inherit;
                    color: $default-heading-color;
                    @include qodefTransition(left .25s ease-out);
                }
            }
        }

        > ul.right > li > a,
        ul li.sub ul.right li > a {
            .item_outer {
                padding: 0 0 0 30px;
                display: block;
                overflow: hidden;
                position: relative;
                @include qodefTransition(padding .25s ease-out);
                &:before {
                    display: none;
                }
                &:after {
                    position: absolute;
                    top: -3px;
                    right: -30px;
                    content: "~";
                    width: 15px;
                    font-size: 29px;
                    display: block;
                    font-family: 'Catamaran', serif;
                    line-height: inherit;
                    color: $default-heading-color;
                    @include qodefTransition(right .25s ease-out);
                }
            }
        }

		> ul > li:hover > a,
		ul li.sub ul li:hover > a{
			color: $default-heading-color;
            .item_outer {
                padding: 0 10px 0 20px;
                &:before {
                    left: 0;
                }
            }
            &.has_icon {
                padding-left: 0;

                .item_outer {
                    padding: 0 20px 0 10px;

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

        > ul.right > li:hover > a,
        ul li.sub ul.right li:hover > a{
            .item_outer {
                padding: 0 20px 0 10px;
                &:after {
                    right: 0;
                }
            }
        }

		ul.right li ul{
			margin-left: -2px;
		}

		ul.right li{
			a,
			h4{
				text-align: right;
			}

			ul{
				left: -100%;
			}

			&.sub a i.qodef-menu-arrow{
				right: auto;
				left: 0;
                &:before {
                    content: "\f108";
                }
			}
		}

		ul li {
            &.sub a i.qodef-menu-arrow {
                position: absolute;
                top: 50%;
                right: 0;
                display: inline-block;
                vertical-align: middle;
                color: #000;
                margin: -13px 0 0;
                font-size: 15px;
                @include qodefTransform(scale(1));
                @include qodefTransition(all .3s ease-out);
                opacity: 1;
            }
		}
	}

	li.left_position .second{
		left: 0;
	}

	li.right_position .second{
		left: auto;
		right: 0;
	}

    li.left_position .second .inner,
    li.right_position .second .inner{
        > ul{
            width: auto;
            white-space: nowrap;

            > li{
                float: none;
                display: inline-block;
                width: 180px;
                vertical-align: top;
            }
        }
    }

    > ul > li{
		&:hover > .second{
			z-index: 20;
		}
	}

	.narrow .second .inner ul{
		@extend %second-ul;
		padding: 33px 0;

		li:last-child{
			border-bottom: none;
		}

		li{
			padding: 0;
			width: 252px;
			@include qodefTransition(background-color .15s ease-out);
		}

		li ul{
			position: absolute;
			left: 100%;
			height: auto;
			opacity:0;
			overflow: hidden;
            margin-left: 0;
            top: -34px;/* same as padding in father ul */
			z-index: 10;
			-webkit-transform: translateZ(0);
			@include qodefTransition(opacity .4s ease-out);
		}


		li:hover ul{
			z-index: 20;
			opacity:1;
		}

		&.right li ul{
			left: -100%;
		}
	}
}

/*
header.transparent .qodef-drop-down li:not(.right_position):not(.left_position) .second:not(.right) {
    left: 16px;
}
*/
header.transparent.qodef-menu-item-first-level-bg-color .qodef-drop-down .second:not(.right) {
    left: 0;
}

/* Wide drop down styles
   ========================================================================== */
.qodef-drop-down .wide{
	.second ul{
		padding: 36px 0 33px;
        box-shadow: none;
	}

	.second ul li{
		padding: 0;
        border-left: 1px solid #f4f4f4;
		border-bottom: 0;
		width: 100%;
		@include qodefBoxSizing(border-box);

		a,
		h4,
		&.sub a{
			background: 0;
            overflow: hidden;
		}

		&:last-child{
			margin-right: 0;
		}

		&:nth-child(4n+1){
			clear: both;
		}

		&:hover{
			background-color: transparent;
		}

		ul{
			display: block;
			left: 0;
			padding: 15px 0 0;
			position: relative;
			top: 0;
			visibility: visible;
			background-color: transparent !important;
		}

		ul .widget{
			padding: 0px 18px;
		}

		ul li{
			border: 0;
		}

		ul li.menu-item-has-children > a,
		ul li.menu-item-has-children > a:hover{
			border-bottom: 0 none;
			color: #393939;
		}
	}

	.second > .inner > ul{
		width: 1100px;

		> li{
			width: 25%;
            float: left;
		}

		.qodef-grid-1300 &{
			width: $grid-width-1300;
		}

		.qodef-grid-1200 &{
			width: $grid-width-1200;
		}

		.qodef-grid-1000 &{
			width: $grid-width-1000;
		}

		.qodef-grid-800 &{
			width: $grid-width-800;
		}
	}

	.second i,
	.second .inner ul li.sub a i.qodef-menu-arrow{
		display: none;
	}

    .second .inner > ul > li {
        > a {
            line-height: 18px;
            color: $default-heading-color;
            font-size: 17px;
            font-weight: 800;
            &:before {
                content: "";
            }
        }
        &:hover {
            .item_outer {
                padding: 0;
            }
        }
        .item_outer {
            padding: 0;
            overflow: inherit;

            &:before {
                display: none;
            }
        }
    }

	.second .inner ul li{
		&.sub h4 a,
		h4 a{
			padding: 0px !important;
		}
	}

	&:not(.right_position) .second ul li{
		&:first-child,
		&:nth-child(4n+1){
			border-left-color: transparent;
		}
	}

	&.right_position .second ul li{
		float: right;

		&:last-child,
		&:nth-child(4n){
			border-left-color: transparent;
		}
	}
}

/* Wide drop down with full width background styles
   ========================================================================== */
.qodef-drop-down .wide.wide_background{
	.second{
		background-color: #fff;

		.inner{
			text-align: center;
		}

		.inner ul{
			text-align: left;
		}
	}
}

/* Wide with icons drop down styles
   ========================================================================== */
.qodef-drop-down .wide.icons .second{
	ul li a span{
		position: relative;
	}

	i{
		width: 23px;
		height: auto;
		display: inline-block;
		color: #666;
		line-height: 15px;
        font-size: 14px;
        margin-left: 1px;

		&.blank{
			background: none;
			border: 0;
			display:none;
		}
	}
}