.header-03 {
	.header-wrap {
		display: flex;
		align-items: center;
		height: 100%;
		padding: 20px 0;
	}

	.branding {
		display: flex;
		align-items: center;
		flex-shrink: 0;
		width: 25%;
	}

	.header-right {
		flex-shrink: 0;
		width: 75%;
		justify-content: stretch;
		margin: 0;
	}

	.header-right-outer {
		display: flex;
		flex-wrap: wrap;
		margin-left: -15px;
		margin-right: -15px;
		width: calc(100% + 30px);
	}

	.header-right-wrap {
		width: 33.333333%;
	}

	.header-right-inner {
		height: 100%;
	}

	.page-header-bottom-inner {
		position: relative;
	}

	.header-search-form {
		width: 66.666666%;
	}

	.page-header-inner {
		> .container {
			> .row {
				> .col-xs-12 {
					position: static;
				}
			}
		}
	}

	.mobile-menu & {
		.branding {
			flex-grow: 1;
		}

		.header-right {
			width: auto;
		}
	}
}

.header-categories-nav {
	height: 100%;
	position: relative;

	&.opened-menu {
		.nav-toggle-btn {
			.nav-toggle-icon {
				&:before {
					content: '\f077';
				}
			}
		}

		nav.category-menu {
			opacity: 1;
			visibility: visible;
			pointer-events: auto;
		}
	}

	.nav-toggle-btn {
		font-size: 16px;
		font-weight: 700;
		color: #fff;
		height: 100%;
		display: inline-flex;
		align-items: center;
		min-height: 60px;

		.nav-toggle-bars {
			margin-right: 10px;
		}

		.nav-toggle-icon {
			@extend %FontAwesomeLight;
			font-size: 14px;
			margin-left: 15px;

			&:before {
				content: '\f078';
			}
		}
	}

	nav.category-menu {
		@extend %NormalTransition;
		position: absolute;
		top: 100%;
		left: 0;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
	}

	.menu-item-icon {
		margin-right: 16px;
	}

	.menu__container.product-category-dropdown {
		list-style-type: none;
		position: absolute;
		top: 100%;
		left: 0;
		z-index: 5;
		margin: 0;
		padding: 15px 0 23px;
		background: #fff;
		border: 1px solid #f5f5f5;
		border-radius: 5px;
		box-shadow: 0 -3px 23px rgba(0, 0, 0, .06);
		font-size: 15px;
		font-weight: 400;
		min-width: 270px;

		> li {
			display: block;
			margin: 0;
			padding: 0;

			> a {
				display: block;
				padding: 9px 34px;
				line-height: 1.5;

				.menu-item-icon {
					font-size: 20px;
				}
			}
		}
	}
}

@media (min-width: 1320px) {
	.desktop-menu .header-03 {
		.menu--primary .menu__container > li > a {
			padding-left: 18px !important;
			padding-right: 18px !important;
		}
	}
}

@media (max-width: 767px) {
	.header-03 {
		.header-search-form {
			display: none;
		}

		.page-header-bottom {
			display: none;
		}
	}
}
