/**
* Desktop
* ----------------------------------------------------------------------------
*/
.primary-menu {
	display: table-cell;
	width: 100%;
	vertical-align: middle;
	.no-menu {
		line-height: @navigation_height;
	}
}

.primary-menu-inner {
	display: table;
	width: 100%;
}

.main-menu {
	list-style: none;
	padding: 0;
	margin: 0;
	display: table-cell;
	vertical-align: middle;
	font-size: 0;
	.menu-caret:before {
		content: '\f0d7';
		display: inline-block;
		font: normal normal normal 18px/1 FontAwesome;
		font-size: inherit;
		text-rendering: auto;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
	.menu-item > a {
		display: block;
		padding: 10px 0;
		position: relative;
		.transition(all 0.3s);
		.gsf-link;
	}

	> .menu-item {
		position: relative;
		display: inline-block;
		line-height: 24px;
		.transition(padding .5s);
		padding-top: (@navigation_height - 44px)/2;
		padding-bottom: (@navigation_height - 44px)/2;
		+ .menu-item {
			margin-left: @navigation_spacing;
		}

		> a {
			font-family: @menu_font;
			font-size: @menu_font_size;
			font-weight: @menu_font_weight;
			> .menu-caret:before {
				display: inline-block;
				vertical-align: middle;
				margin-left: 5px;
			}
		}

		&:not(.menu-item-has-children) > a {
			> .x-menu-link-featured {
				right: 0;
			}
		}

	}

	li.current-menu-ancestor:not(.menu-item-type-taxonomy),
	li.current-menu-parent:not(.menu-item-type-taxonomy),
	li.current-menu-item,
	li .menu-current {
		> a {
			&:extend(.accent-color);
		}
	}

	ul.sub-menu {
		display: none;
		font-family: @sub_menu_font;
		font-size: @sub_menu_font_size;
		font-weight: @sub_menu_font_weight;
		text-align: left;
		position: absolute;
		list-style: none;
		padding: 0;
		margin: 0;
		z-index: 999;
		-webkit-box-shadow: 0 4px 10px 1px rgba(0, 0, 0, 0.15);
		-moz-box-shadow: 0 4px 10px 1px rgba(0, 0, 0, 0.15);
		box-shadow: 0 4px 10px 1px rgba(0, 0, 0, 0.15);
		border-top: solid 2px @accent_color !important;
		top: 100%;
		background-color: @background_color;
		.menu-item {
			position: relative;
			min-width: 210px;
			.menu-caret:before{
				content: '\f0da';
				position: absolute;
				right: 20px;
				line-height: 20px;
			}
		}

		.menu-item > a {
			line-height: 20px;
			padding: 10px 20px;
			white-space: nowrap;
		}

		.menu-item + .menu-item {
			border-top: 1px solid @border_color;
		}

		ul.sub-menu {
			left: 100%;
			top: 0;
			margin-left: 1px;
		}
		.x-submenu-position-left ul.sub-menu {
			right: 100%;
			left: auto;
			margin-left: 0;
			margin-right: 1px;
		}
		.x-submenu-position-right ul.sub-menu {
			left: 100%;
			right: auto;
			margin-right: 0;
			margin-left: 1px;
		}
	}
	> .x-submenu-position-left > ul.sub-menu {
		right: 0;
		left: auto;
	}
	> .x-submenu-position-right > ul.sub-menu {
		left: 0;
		right: auto;
	}

	.x-active,
	li:hover {
		> ul.sub-menu {
			display: block;
		}
	}


	&.sub-menu-left {
		ul.sub-menu .sub-menu {
			left: auto;
			right: 100%;
			margin-left: 0;
			margin-right: 1px;
		}
	}
}

/**
* Vertical Menu
* ----------------------------------------------------------------------------
*/
@menu_vertical_background_color_1: @background_color; // #212121
@menu_vertical_background_color_2: lighten(@menu_vertical_background_color_1, 5%); // #313131
@menu_vertical_background_color_3: lighten(@menu_vertical_background_color_2, 5%); // #414141
@menu_vertical_background_color_4: lighten(@menu_vertical_background_color_3, 5%); // #515151
@menu_vertical_background_color_5: lighten(@menu_vertical_background_color_4, 5%); // #616161
@menu_vertical_background_color_6: lighten(@menu_vertical_background_color_5, 5%); // #717171
@menu_vertical_background_color_7: lighten(@menu_vertical_background_color_6, 5%); // #818181
.gf-menu-vertical {
	list-style: none;
	padding: 0;
	margin: 0;
	li {
		position: relative;
		line-height: 24px;
		cursor: pointer;
	}
	li + li {
		border-top: 1px solid @menu_vertical_background_color_2;
	}
	.menu-caret {
		width: 45px;
		height: 45px;
		text-align: center;
		line-height: 45px;
		top: 0;
		right: 0;
		position: absolute;
		cursor: pointer;
		&:before {
			content: '\f107';
			display: inline-block;
			font: normal normal normal 14px/1 FontAwesome;
			font-size: inherit;
			text-rendering: auto;
			-webkit-font-smoothing: antialiased;
			-moz-osx-font-smoothing: grayscale;
		}
	}
	
	a {
		&:extend(.primary-font);
		font-size: 13px;
		font-weight: bold;
		letter-spacing: 0.05em;
		text-transform: uppercase;
		padding: 10px 20px;
		display: inline-block;
		.gsf-link;
		&:hover,
		&:focus,
		&:active {
			color: @accent_color;
		}
	}
	ul.sub-menu {
		list-style: none;
		padding: 0;
		margin: 0;
		display: none;
		background-color: @menu_vertical_background_color_2;
		position: relative;
		a {
			text-transform: none;
		}
		li + li {
			border-color: @menu_vertical_background_color_3;
		}
		&:before {
			content: '';
			position: absolute;
			left: 20px;
			border-left: solid 6px transparent;
			border-right: solid 6px transparent;
			border-top: solid 6px @menu_vertical_background_color_1;
		}
	}

	ul.sub-menu ul.sub-menu {
		background-color: @menu_vertical_background_color_3;
		li + li {
			border-color: @menu_vertical_background_color_4;
		}
		&:before {
			border-top-color: @menu_vertical_background_color_2;
		}
	}

	ul.sub-menu ul.sub-menu ul.sub-menu {
		background-color: @menu_vertical_background_color_4;
		li + li {
			border-color: @menu_vertical_background_color_5;
		}
		&:before {
			border-top-color: @menu_vertical_background_color_3;
		}
	}

	ul.sub-menu ul.sub-menu ul.sub-menu ul.sub-menu {
		background-color: @menu_vertical_background_color_5;
		li + li {
			border-color: @menu_vertical_background_color_6;
		}
		&:before {
			border-top-color: @menu_vertical_background_color_4;
		}
	}

	li.current-menu-ancestor,
	li.current-menu-parent,
	li.current-menu-item,
	li .menu-current {
		> a {
			&:extend(.accent-color);
		}
	}

	li.menu-open {
		> a {
			.menu-caret {
				&:before {
					content: '\f106';
				}
			}
		}
	}
}

/**
* Mobile
* ----------------------------------------------------------------------------
*/
.mobile-navigation-wrapper {
	width: 280px;
	background-color: #212121;
	color: #fff;
	border: none !important;
	.canvas-sidebar-inner {
		padding: 0;
	}
	.search-form {
		padding: 20px;
		background-color: #111;
		.search-field {
			background-color: #353535;
			border-color: #353535;
			color: #fff;
			.placeholder(#999999);
			padding: 0 40px !important;
		}
		.search-submit {
			top: 0;
			right: 25px;
			font-size: 0;
			line-height: 1;
			background-color: transparent;
			border-color: transparent;
			color: #999;
			i {
				display: inline-block;
				font-size: 14px;
				line-height: 20px;
			}
		}
	}

	.mobile-menu {
		li >a{
			.gsf-link;
		}
		border-top: 1px solid #313131 !important;
		li + li {
			border-color: #313131 !important;
		}
		ul.sub-menu {
			background-color: #313131 !important;
			li + li {
				border-color: #414141 !important;
			}
			&:before {
				border-top-color: #212121;
			}
		}

		ul.sub-menu ul.sub-menu {
			background-color: #414141 !important;
			li + li {
				border-color: #515151 !important;
			}
			&:before {
				border-top-color: #313131;
			}
		}

		ul.sub-menu ul.sub-menu ul.sub-menu {
			background-color: #515151 !important;
			li + li {
				border-color: #616161 !important;
			}
			&:before {
				border-top-color: #414141;
			}
		}

		ul.sub-menu ul.sub-menu ul.sub-menu ul.sub-menu {
			background-color: #616161 !important;
			li + li {
				border-color: #717171 !important;
			}
			&:before {
				border-top-color: #515151;
			}
		}
	}
}

.x-menu-link-featured {
	position: absolute;
	text-transform: none;
}
.x-menu-link-featured-new,
.x-menu-link-featured-hot {
	top: -10px;
	right: 15px;
	display: block;
	padding: 0 5px;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.5;
	color: #fff !important;
	.transition(all 0.1s);
	&:after {
		position: absolute;
		content: '';
		display: block;
		top: 100%;
		left: 50%;
		.transform(translateX(-50%));
		border-top: 5px solid;
		border-left: 5px solid transparent;
		border-right: 5px solid transparent;
		.transition(all 0.1s);
	}
}
.x-menu-link-featured-hot {
	background-color: @accent_color;
	&:after {
		border-top-color: @accent_color;
	}
}
// Mega Menu
.x-menu-list {
	list-style-type: none;
	padding: 0 ;
	
	li {
		min-width: 150px;
		a {
			line-height: 20px;
			padding: 15px 20px 15px 0;
			white-space: nowrap;
			display: block;
			font-size: 13px;
			position: relative;
			&:hover i {
				color: @accent_color !important;
			}
		}
		i {
			display: inline-block;
			margin-right: 14px;
		}
		+ li {
			border-top: 1px solid;
		}
	}
}

.x-menu-heading {
	font-size: 14px;
	text-transform: uppercase;
	position: relative;
	line-height: 1;
	display: block;
	padding: 0;
	margin-bottom: 15px;
	margin-top: 0;
	letter-spacing: 0.01em;
	font-weight: 500;
}
.x-mega-sub-menu{
	ul li a{
		.gsf-link();
	}
}

@media (min-width: 992px) {
	.x-mega-sub-menu {
		[data-filter-vertical="1"] {
			&.gf-cate-filter {
				padding: 35px;
				a.btn {
					padding: 6px 0 6px 25px;
				}
			}
			+ .gf-blog-inner {
				padding: 35px;
				.gf-post-title {
					color: #1a1a1a !important;
				}
			}
		}
	}
}