.site-header {
	z-index: var(--z-header);
}

.navbar {
	background: linear-gradient(135deg, var(--mia-black) 0%, var(--mia-pure-black) 100%);
	border-bottom: 1px solid var(--mia-gold);
}

.navbar-toggler {
	position: relative;
}

.navbar-nav .nav-item {
	margin: 0 0.1rem;
}

.navbar-nav .nav-link {
	font-size: clamp(0.6rem,1.2vw,0.85rem);
	font-weight: 600;
	text-decoration: none;
}

.navbar .btn {
	text-transform: capitalize;
}

.navbar .mia-btn-primary, .navbar .mia-btn-secondary, .navbar .mia-btn-outline {
	font-size: 0.9rem;
	padding: 0.5rem 1.25rem;
}

.header-btn {
	color: var(--mia-white);
	background-color: transparent;
	border: 2px solid var(--mia-gold);
	padding: 0.5rem 1.25rem;
	font-weight: 600;
	font-size: 0.9rem;
	text-transform: capitalize;
	text-decoration: none;
	font-family: var(--font-heading);
	transition: all 0.2s ease;
	border-radius: 3px;
}

.header-btn:is(:hover, :focus) {
	background-color: var(--mia-gold);
	color: var(--mia-black);
	text-decoration: none;
}

.header-btn .fa-arrow-right {
	margin-left: 0.5rem;
	font-size: 0.8em;
	transition: transform 0.2s ease;
}

.header-btn:is(:hover, :focus) .fa-arrow-right {
	transform: translateX(3px);
}

.navbar-nav .nav-link, .navbar-nav .dropdown-item, .mega-menu-title {
	text-decoration: none;
}

/* Prevent visited state color changes - keep same as unvisited */
.site-header .navbar-nav .nav-link:visited {
	color: var(--mia-white);
}

.site-header .dropdown-item:visited {
	color: var(--mia-black);
}

.site-header .mega-menu-title:visited {
	color: var(--mia-black);
}

.site-header .header-btn:visited {
	color: var(--mia-white);
}

.site-header .mega-menu .dropdown-header a:visited {
	color: var(--mia-gray-dark);
}

/* Ensure visited links match their original hover behaviors */
.site-header .navbar-nav .nav-link:visited:hover {
	color: var(--mia-gold);
}

.site-header .dropdown-item:visited:hover {
	color: var(--mia-gold);
	text-decoration: underline;
}

.site-header .mega-menu-title:visited:hover {
	color: var(--mia-gold);
}

.site-header .header-btn:visited:hover {
	background-color: var(--mia-gold);
	color: var(--mia-black);
}

.site-header .mega-menu .dropdown-header a:visited:hover {
	color: var(--mia-gold);
	text-decoration: underline;
}

.site-header .navbar-nav .nav-link:hover {
	color: var(--mia-gold);
	text-decoration: none;
}

.dropdown-item:is(:hover, :focus) {
	background-color: transparent;
	color: var(--mia-gold);
	text-decoration: underline;
}

.dropdown-item:is(:active, .active) {
	background-color: transparent;
	color: var(--mia-gold);
	text-decoration: underline;
}

.mega-menu-title:is(:hover, :focus), .mega-menu .col-12 a:hover {
	color: var(--mia-gold);
	text-decoration: none;
}

.navbar .offcanvas {
	background-color: var(--mia-black);
	color: var(--mia-white);
}

.offcanvas .nav-link {
	color: var(--mia-white);
}

.offcanvas .nav-link:hover {
	color: var(--mia-gold);
}

@media (min-width: 1200px) {
	.navbar {
		padding-top: 0.5rem;
		padding-bottom: 0.5rem;
	}

	.navbar .offcanvas.offcanvas-end {
		transform: none;
		visibility: visible;
		background-color: transparent;
		border: 0;
	}

	.navbar-nav .nav-item.position-static {
		position: static;
	}

	.navbar-brand img {
		height: 40px;
		width: auto;
	}

	.offcanvas-body .d-flex {
		justify-content: flex-start;
		align-items: center;
		flex-wrap: nowrap;
		gap: 1rem;
	}

	.navbar-nav {
		display: flex;
		flex-wrap: nowrap;
		margin-left: auto;
		margin-right: 0.5rem;
		flex-shrink: 0;
		min-width: 0;
	}

	.dropdown-menu.mega-menu {
		border-top: 3px solid var(--mia-gold);
		box-shadow: 0 6px 12px rgba(0,0,0,0.2);
		left: 0;
		right: 0;
	}

	.mega-menu-title {
		color: var(--mia-black);
		font-weight: 600;
		font-size: 1.1rem;
		display: inline-block;
		margin-bottom: 0.5rem;
		text-decoration: none;
	}

	.mega-menu-title:hover {
		color: var(--mia-gray-dark);
		text-decoration: none;
	}

	.mega-menu-title .fa-arrow-right {
		font-size: 0.85rem;
		margin-left: 0.5rem;
		color: var(--mia-gold);
	}

	.mega-menu .dropdown-header {
		padding: 0.5rem 0;
		margin-bottom: 0.5rem;
		border-bottom: 1px solid rgba(0,0,0,0.1);
		font-size: 1.1rem;
		font-family: var(--font-body);
		font-weight: 600;
	}

	.mega-menu .dropdown-header a {
		text-decoration: none;
		font-weight: 600;
		color: var(--mia-gray-dark);
		font-size: 1.1rem;
	}

	.mega-menu .dropdown-header a:hover {
		color: var(--mia-gold);
		text-decoration: underline;
	}

	.mega-menu .dropdown-item {
		display: inline-block;
		width: fit-content;
		padding: 0.25rem 0;
		font-size: 16px;
		font-family: var(--font-body);
	}

	.mega-menu a {
		font-size: 1.1rem;
		font-family: var(--font-body);
	}

	.navbar-nav .mega-menu .bg-light {
		background-color: var(--mia-gold-10);
		border: 1px solid var(--mia-gold-20);
	}

	.mega-menu .btn-outline-dark {
		color: var(--mia-gold);
		border-color: var(--mia-gold);
	}

	.mega-menu .btn-outline-dark:hover {
		background-color: var(--mia-gold);
		border-color: var(--mia-gold);
		color: var(--mia-black);
	}

	.navbar-nav .nav-item {
		margin: 0 0.1rem;
		flex-shrink: 0;
	}

	.navbar-nav .nav-link {
		padding-left: 0.4rem;
		padding-right: 0.4rem;
		white-space: nowrap;
	}

	.desktop-cta {
		padding: clamp(0.3rem,0.4vw,0.5rem) clamp(0.6rem,1vw,1.2rem);
		font-size: clamp(0.6rem,1.2vw,0.85rem);
		font-weight: clamp(600,650,700);
		white-space: nowrap;
		margin-left: 0;
		flex-shrink: 0;
	}

	.desktop-cta .fa-arrow-right {
		margin-left: 0.4rem;
		font-size: 0.75em;
	}
}

@media (max-width: 1700px) {
	.navbar-nav .nav-link {
		font-size: 0.75rem !important;
	}

	.desktop-cta {
		padding: 0.4rem 0.9rem !important;
		font-size: 0.75rem !important;
		font-weight: 600 !important;
	}
}

@media (max-width: 1300px) {
	.navbar-brand img {
		height: 33px;
	}

	.navbar-nav .nav-link {
		font-size: 11px !important;
	}

	.desktop-cta {
		padding: 0.3rem 0.7rem !important;
		font-size: 11px !important;
	}
}

@media (min-width: 1500px) {
	.navbar-nav .nav-link {
		font-size: 0.9rem;
	}

	.desktop-cta {
		padding: 0.5rem 1.2rem;
		font-size: 0.9rem;
		font-weight: 600;
	}

	.desktop-cta .fa-arrow-right {
		margin-left: 0.5rem;
		font-size: 0.8em;
	}
}

@media (min-width: 1550px) {
	.navbar-nav .nav-item {
		margin: 0 0.15rem;
	}

	.navbar-nav .nav-link {
		padding-left: 0.6rem;
		padding-right: 0.6rem;
		font-size: 0.9rem;
	}

	.desktop-cta {
		padding: 0.5rem 1.2rem;
		font-size: 0.9rem;
		font-weight: 600;
	}

	.desktop-cta .fa-arrow-right {
		margin-left: 0.5rem;
		font-size: 0.8em;
	}
}

@media (min-width: 1600px) {
	.navbar-nav .nav-item {
		margin: 0 0.2rem;
	}

	.navbar-nav .nav-link {
		padding-left: 0.8rem;
		padding-right: 0.8rem;
		font-size: 1rem;
	}

	.desktop-cta {
		padding: 0.6rem 1.5rem;
		font-size: 1rem;
	}
}

@media (max-width: 1199.98px) {
	.offcanvas-body .d-flex {
		justify-content: flex-start;
	}

	.navbar-nav {
		margin-left: 0;
		margin-right: 0;
	}

	.offcanvas .navbar-nav .nav-link {
		font-size: 1.35rem !important;
		font-weight: 600;
		padding: 0.75rem 1rem;
		margin-bottom: 0.25rem;
	}

	.offcanvas .dropdown-menu {
		background-color: transparent;
		margin-left: 1rem;
		border: none;
		border-left: 2px solid var(--mia-gold);
		box-shadow: none;
		padding-top: 0.5rem;
		padding-bottom: 0.5rem;
		border-radius: 0;
	}

	.offcanvas .dropdown-item {
		color: var(--mia-white);
		padding: 0.75rem 1rem;
		font-size: 1.1rem;
	}

	.offcanvas .dropdown-toggle::after {
		margin-left: 0.5rem;
		vertical-align: middle;
		border-top: 0.3em solid;
		border-right: 0.3em solid transparent;
		border-bottom: 0;
		border-left: 0.3em solid transparent;
	}

	.offcanvas .dropdown-divider {
		border-top: 1px solid rgba(255,255,255,0.1);
		margin: 0.5rem 0;
	}

	.offcanvas .dropdown-item.fw-bold {
		color: var(--mia-gold);
	}

	.d-sm-block.d-xl-none .header-btn {
		padding: 0.35rem 0.7rem;
		font-size: 0.8rem;
		white-space: nowrap;
	}

	.d-sm-block.d-xl-none .header-btn .fa-arrow-right {
		margin-left: 0.3rem;
		font-size: 0.7em;
	}
}