/*======= Header =======*/
header {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	z-index: 99;
	background-color: transparent;

	.header-nav {
		position: relative;
	}

	.nav-container {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 0px 50px;
		background-color: $white;
		width: calc(100% - 330px);

		@include respond-below(c1350) {
			width: calc(100% - 270px);
			padding: 0px 40px;
		}

		@include respond-below(lg) {
			width: calc(100% - 240px);
			padding: 0px 30px;
		}

		@include respond-below(md) {
			width: 100%;
			padding: 15px 20px;
		}

		.navbar-toggler {
			border: 1px solid $text-color;
			background-color: transparent;
			cursor: pointer;
			display: none;
			padding: 15px;
			margin-left: 30px;

			span {
				position: relative;
				background-color: $text-color;
				border-radius: 0;
				display: block;
				height: 3px;
				margin-top: 5px;
				padding: 0;
				transition-duration: 300ms;
				width: 30px;
				cursor: pointer;
				display: block;

				&:first-child {
					margin-top: 0;
				}
			}

			&.active {
				span:nth-of-type(1) {
					transform: rotate3d(0, 0, 1, 45deg);
					top: 8px;
				}

				span:nth-of-type(2) {
					opacity: 0;
				}

				span:nth-of-type(3) {
					transform: rotate3d(0, 0, 1, -45deg);
					top: -8px;
				}
			}

			@include respond-below(md) {
				display: block;
			}
		}

		.menu-items {
			position: relative;

			@include respond-below(md) {
				display: none;
			}

			li {
				display: inline-block;
				position: relative;

				a {
					color: $text-color;
					padding: 0 15px;
					margin: 0 10px;
					line-height: 100px;
					position: relative;
					font-weight: 700;
					font-family: $raj;
					font-size: 16px;
					text-transform: uppercase;
					position: relative;

					@include respond-below(c1350) {
						margin: 0px 5px;
						padding: 0px 10px;
					}

					@include respond-below(lg) {
						margin: 0px 5px;
						padding: 0px 5px;
						font-size: 15px;
					}
				}

				&:first-child a {
					padding-left: 0;
					margin-left: 0;
				}

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

				.dd-trigger {
					font-weight: 400;
					position: absolute;
					right: 5px;
					display: block;
					color: $primary-color;
					top: 48%;
					font-size: 16px;
					z-index: 5;
					transform: translateY(-50%);

					@include respond-below(c1350) {
						right: 0;
					}

					@include respond-below(lg) {
						font-size: 14px;
						right: -2px;
					}
				}

				.submenu {
					position: absolute;
					left: 0;
					top: 110%;
					width: 200px;
					background-color: $white;
					opacity: 0;
					visibility: hidden;
					@include transition(0.3s);
					z-index: 99;
					height: auto;
					box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);

					li {
						display: block;

						&:not(:last-child) {
							border-bottom: 1px solid rgba(0, 0, 0, 0.10);
						}

						.dd-trigger {
							right: 10px;

							i {
								transform: rotate(-90deg);
							}
						}

						a {
							display: block;
							padding: 8px 30px;
							position: relative;
							@include transition(0.3s);
							border-radius: 0;
							margin: 0 0;
							line-height: 30px !important;
							color: $text-color;

							&:hover {
								background-color: $primary-color;
								color: $white !important;

								& ~ .dd-trigger {
									color: $white;
								}
							}
						}

						.submenu {
							left: 100%;
							top: 50%;
						}

						&:hover {
							.submenu {
								top: 0;
							}
						}
					}
				}

				&:hover {
					&>.submenu {
						opacity: 1;
						visibility: visible;
						top: 100%;
					}
				}

				&.current a, a:hover {
					color: $primary-color;
				}
			}
		}

		.serach-wrap {
			@include respond-below(xs) {
				display: none;
			}

			.search-icon {
				color: $text-color;
				font-size: 20px;

				&.search-on {
					i::before {
						content: "\f00d";
					}
				}
			}

			.search-form {
				position: absolute;
				top: 110%;
				right: 0;
				width: 360px;
				height: auto;
				z-index: 9;
				background-color: $white;
				transition-duration: 500ms;
				visibility: hidden;
				opacity: 0;

				form {
					position: relative;

					input {
						background-color: #f0f4f7;
						font-size: 12px;
						height: 60px;
						padding: 0 65px 0 25px;
					}

					button {
						position: absolute;
						right: 0;
						top: 0;
						width: 60px;
						height: 100%;
						background-color: $primary-color;
						font-size: 14px;
						border: none;
					}
				}

				&.search-on {
					visibility: visible;
					opacity: 1;
					top: 100%;
				}
			}
		}
	}

	.contact-btn {
		position: absolute;
		right: 0;
		bottom: 0;
		height: 100px;
		width: 300px;
		background-color: $primary-color;
		display: flex;
		align-items: center;
		justify-content: center;

		@include respond-below(c1350) {
			width: 250px;
		}

		@include respond-below(lg) {
			width: 220px;
		}

		@include respond-below(md) {
			display: none;
		}

		.contact-info {
			font-size: 16px;
			font-family: $raj;
			font-weight: 700;
			letter-spacing: -1px;
			text-transform: uppercase;
			line-height: 1;
			position: relative;
			padding-left: 38px;

			i {
				position: absolute;
				left: 0;
				top: 2px;
				font-size: 20px;
			}

			.info {
				display: block;
				font-size: 30px;
				margin-top: 5px;

				@include respond-below(c1350) {
					font-size: 24px;
				}
			}
		}
	}

	.mobile-menu {
		background-color: $text-color;
		position: fixed;
		top: 0;
		left: -300px;
		z-index: 99;
		width: 300px;
		height: 100%;
		transition-duration: 500ms;
		padding: 0;
		box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
		display: block;
		opacity: 0;
		visibility: hidden;
		overflow-x: hidden;
		overflow-y: scroll;

		&.menu-on {
			left: 0;
			opacity: 1;
			visibility: visible;
		}

		.site-logo {
			padding: 40px 25px 30px;
		}

		.menu-items {
			border-bottom: 1px solid rgba($color: $white, $alpha: 0.10);

			ul li {
				display: block;
				position: relative;
				border-top: 1px solid rgba($color: $white, $alpha: 0.10);

				a {
					display: block;
					line-height: 24px;
					padding: 10px 25px;
					font-size: 14px;
					font-weight: 500;
					color: $white;
					text-transform: uppercase;
				}

				.submenu {
					display: none;

					li a {
						font-size: 14px;
						margin-left: 20px;
						text-transform: capitalize;
					}
				}

				.dd-trigger {
					display: block;
					position: absolute;
					right: 0;
					height: 45px;
					width: 45px;
					top: 0;
					border-left: 1px solid rgba($color: $white, $alpha: 0.10);
					z-index: 2;
					background: transparent;
					text-align: center;
					line-height: 45px;
					cursor: pointer;
					color: $white;
					font-size: 20px;

					i {
						transform: rotate(-90deg);
						transition: all 500ms ease;
					}

					&.open {
						i {
							transform: rotate(0);
						}
					}
				}

				&.current {
					border-left: 2px solid $primary-color;
				}
			}
		}

		.navbar-close {
			position: absolute;
			top: 15px;
			right: 15px;
			z-index: 12;

			.cross-wrap {
				width: 26px;
				height: 26px;
				cursor: pointer;
				position: relative;

				span {
					position: absolute;
					display: block;
					width: 100%;
					height: 2px;
					border-radius: 6px;
					background: $white;

					&:first-child {
						top: 12px;
						left: 0;
						-webkit-transform: rotate(45deg);
						transform: rotate(45deg);
					}

					&:last-child {
						bottom: 12px;
						left: 0;
						-webkit-transform: rotate(-45deg);
						transform: rotate(-45deg);
					}
				}
			}
		}

		.contact-btn {
			display: flex;
			position: relative;
			width: 80%;
			margin: 50px auto 0;
			height: 75px;
		}
	}

	&.header-two {
		position: relative;

		.header-nav {
			.nav-container {
				padding-left: 0;
				background-color: transparent;

				.menu-items li {
					.submenu a:hover {
						background-color: $text-color;
						color: $white;
					}

					.dd-trigger {
						color: $text-color;
					}

					&.current a, a:hover{
						color: $text-color;
					}
				}
			}

			.contact-btn {
				background-color: #f8f8f8;
			}
		}
	}

	&.header-three {
		position: relative;
		border-bottom: 2px solid #f0f0f0;

		.header-nav {
			.nav-container {
				background-color: transparent;
				width: 100%;
				padding: 0;

				.menu-items {
					ul li a {
						line-height: 90px;
					}
				}


				.off-canvas-btn,
				.search-icon {
					height: 90px;
					width: 80px;
					text-align: center;
					line-height: 90px;
					color: $text-color;
					font-size: 18px;
					border-left: 2px solid #f0f0f0;

					@include respond-below(md) {
						height: 80px;
						line-height: 80px;
					}
				}

				.navbar-toggler {
					height: 80px;
					width: 80px;
					text-align: center;
					border: none;
					border-left: 2px solid #f0f0f0;
					border-right: 2px solid #f0f0f0;
					padding: 0;
					border-radius: 0;
					line-height: 80px;
					margin: 0;
				}

				.off-canvas-btn {
					border-right: 2px solid #f0f0f0;
				}

				.nav-left {
					.site-logo {
						@include respond-above(lg) {
							margin-right: 150px;
						}

						@include respond-between(md, lg) {
							margin-right: 100px;
						}
					}
				}
			}
		}
	}

	&.header-four {
		box-shadow: 0px 10px 40px rgba(0, 0, 0, 0.05);
	}

	&.sticky-header {
		&.sticky-on {
			position: fixed;
			left: 0;
			top: 0;
			right: 0;
			z-index: 9999;
			animation: sticky 1.2s;

			.nav-container,
			.contact-btn {
				box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
			}

			.contact-btn {
				height: 80px;
			}

			.nav-container .menu-items li a {
				line-height: 80px;
			}

			&.header-three {
				background-color: $white;

				.nav-container {
					box-shadow: none;

					.menu-items li a {
						line-height: 80px;
					}

					.off-canvas-btn,
					.search-icon,
					.navbar-toggler {
						height: 80px;
						line-height: 80px;
					}
				}
			}
		}
	}
}

/*======= Off Canvas menu =======*/
.off-canvas-items {
	position: fixed;
	right: 0;
	height: 100vh;
	width: 400px;
	background-color: $text-color;
	top: 0;
	padding: 60px 50px 50px;
	z-index: 999;
	font-size: 15px;
	color: $white;
	margin-right: -400px;
	transition-duration: 0.5s;

	.contact-block-title {
		font-size: 18px;
		margin-bottom: 12px;
		text-transform: uppercase;
		color: $white;
	}

	.social-icons {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		padding-top: 20px;

		a {
			height: 45px;
			width: 45px;
			text-align: center;
			line-height: 45px;
			border: 1px solid $white;
			border-radius: 50%;
			margin: 0px 4px;

			&:hover {
				background-color: $white;
				color: $text-color;
			}
		}
	}

	.canvas-close {
		position: absolute;
		top: 10px;
		right: 15px;
		font-size: 28px;
		color: $white;
		transition-duration: 0.6s;
		transform: rotate(360deg);
		padding: 15px;
	}

	&.off-canvas-show {
		margin-right: 0;

		.canvas-close {
			transform: rotate(0);
		}
	}
}

.canvas-overly {
	position: fixed;
	right: 0;
	top: 0;
	width: 100%;
	height: 100vh;
	background-color: $text-color;
	z-index: 998;
	cursor: pointer;
	opacity: 0;
	visibility: hidden;

	&.off-canvas-show {
		visibility: visible;
		opacity: 0.3;
	}
}