.header {
	width: 100%;

	height: var(--header-height);

	background-color: rgba(255, 255, 255, 0.8);

	transition: all 0.5s;

	position: fixed;

	z-index: 999;

	transition: background-color 0.3s ease, box-shadow 0.3s ease,
		backdrop-filter 0.3s ease;
}

.header.is-fixed {
	position: fixed;

	top: 0;

	left: 0;

	width: 100%;

	z-index: 1000;

	background-color: var(--color-white);

	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
}

.header-info {
	background-color: transparent;

	position: relative;

	z-index: 1;
}

/* Header Social Icons */

.header__social {
	display: flex;

	align-items: center;

	gap: 12px;
}

.header__social-link {
	width: 20px;

	height: 20px;

	display: inline-flex;

	color: var(--color-white);

	transition: color 0.3s ease;
}

.header__social-link svg {
	width: 100%;

	height: 100%;
}

.header__social-link:hover {
	color: var(--color-primary-hover);
}

header.bg-on {
	background-color: var(--color-background);
}

/****** MENU *******/

.navbar-brand img {
	position: relative;

	z-index: 9;
}

.navbar-nav .nav-link,
.top-bar .nav-link {
	color: var(--color-text);

	white-space: nowrap;

	font-size: 0.875rem;
}

.top-bar .icons {
	display: inline-block;
}

.bg-on .navbar-nav .nav-link {
	color: var(--color-primary) !important;
}

.header .nav-link {
	font-weight: 500 !important;

	text-transform: uppercase;

	padding: 0.3rem 0.875rem !important;
}

a.primary-color:hover {
	color: var(--color-primary-hover) !important;
}

.dropdown-item {
	white-space: wrap !important;
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-item.active .nav-link,
.nav-link:hover,
.nav-link.active {
	color: var(--color-primary-hover);

	text-decoration: underline;
}

.navbar-nav .nav-link.active,
.navbar-nav .nav-link.show {
	color: var(--color-primary-light);
}

#banner .caption h1 span {
	display: inline-block;

	line-height: 25px;
}

/* ****** OFFCANVAS ****** */

.offcanvas-active .bt-trigger {
	opacity: 0;
}

header .btn-close {
	position: relative;

	top: 0;

	right: 15px;
}

body.offcanvas-active {
	overflow: hidden !important;
}

.offcanvas-header {
	display: none !important;
}

/* ============ RESPONSIVE ============ */

@media (min-width: 1024px) {
	.img-logo {
		position: relative;

		top: 10px;
	}

	.dropdown-menu.show {
		width: 300px !important;
	}

	.nav-item:last-of-type .dropdown-menu {
		left: auto;
		right: 0 !important;
	}
}

@media (max-width: 991px) {
	.bt-trigger {
		fill: var(--color-secondary);
	}

	#navbarNav,
	.nav-top {
		padding-left: 2rem !important;
	}

	.navbar-nav .nav-link,
	.nav-top .nav-link {
		color: var(--color-secondary) !important;
	}

	.navbar-nav .nav-link:hover,
	.navbar-nav .nav-item.active .nav-link,
	.nav-link:hover,
	.nav-link.active {
		color: var(--color-secondary) !important;

		text-decoration: underline !important;
	}

	header {
		padding-bottom: 15px;
	}

	.nav-link {
		font-size: 1rem !important;
	}

	/* MENU MOBILE */

	.offcanvas-header {
		display: block !important;
	}

	.mobile-offcanvas {
		background-color: #b3bec9 !important;
		visibility: hidden !important;
		transform: translateX(-100%) !important;
		border-radius: 0 !important;
		display: block !important;
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		height: 100% !important;
		width: 80% !important;
		z-index: 1200 !important;
		overflow-y: scroll !important;
		transition: visibility 0.3s ease-in-out, transform 0.3s ease-in-out !important;
	}

	.mobile-offcanvas.show {
		visibility: visible !important;

		transform: translateX(0) !important;
	}

	.mobile-offcanvas .container,
	.mobile-offcanvas .container-fluid {
		display: block !important;
	}

	.bt-trigger {
		border: none;
		background: none;
		position: absolute;
		top: 25px;
		right: 15px;
	}
}

@media (max-width: 767px) {
	.header {
		height: var(--header-height-sm);
		background-color: var(--color-white);
	}

	header.bg-on {
		position: fixed;
		width: 100%;
		z-index: 9999;
	}

	.header-logo {
		top: 0;
	}

	.offcanvas-header img {
		width: 215px;
	}

	#banner .caption h1 strong,
	#banner .caption h2 {
		color: var(--color-primary) !important;
	}

	#banner .bt-white {
		color: var(--color-primary) !important;

		border-color: var(--color-primary) !important;
	}

	#banner .caption h1 span {
		color: var(--color-secondary) !important;
	}

	#banner .caption h1 span br {
		display: none;
	}

	.nav-link {
		font-size: 1rem !important;
	}
}
