/* =========================================
   MAIN NAVIGATION
   Mobile + Desktop (iPhone Safe)
========================================= */
/* ===============================
   Base Navigation Wrapper
=============================== */
#site-navigation {
	position: absolute;
	top: 0;
	right: 0;
	margin: 15px 0;
	padding: 0;
	z-index: 9999;
}
/* ===============================
   Toggle Button
=============================== */
.menu-toggle {
	display: flex;
	border: none;
	background: none;
	cursor: pointer;
	padding: var(--space-sm)
}
/* Wrapper */
.bars {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 6px;
	z-index: 9999
}
/* Bars */
.bar1, .bar2, .bar3 {
	width: 35px;
	height: 5px;
	background-color: #ffffff;
	transform-origin: center;
	transition:
		transform 0.3s ease, opacity 0.3s ease, background-color 0.3s ease;
}

/* ===============================
   Hamburger → X Animation
=============================== */
.change .bar1 {
	transform: translateY(11px) rotate(-45deg);
}
.change .bar2 {
	opacity: 0;
}
.change .bar3 {
	transform: translateY(-11px) rotate(45deg);
}
/* ===============================
   MOBILE MENU (Default)
=============================== */
.main-navigation ul.nav-menu {
	display: none;
	list-style: none;
	padding: 0;
	margin: 0;
}
/* Center menu items on mobile */
.main-navigation.toggled-on ul.nav-menu {}
.main-navigation.toggled-on ul.nav-menu a {
	justify-content: center;
	padding: 14px 0;
}
/* When toggled ON, show menu */
.main-navigation.toggled-on ul.nav-menu {
	display: flex;
	flex-direction: column;
	position: absolute;
	top: 0;
	right: 0;
	width: 100vw;
	height: 100vh;
	background: var(--color-black);
	padding-top: 2rem;
}
/* ===============================
   MOBILE MENU CENTERING
=============================== */
.main-navigation.toggled-on ul.nav-menu {}
.main-navigation.toggled-on ul.nav-menu li {}
.main-navigation.toggled-on ul.nav-menu a {
	display: block;
	text-align: center;
	padding: 14px 0;
}
/* Mobile Links */
.main-navigation a {
	display: flex;
	padding: 14px 20px;
	text-decoration: none;
	text-transform: uppercase;
	font-family: "neue-haas-grotesk-display", sans-serif;
	font-weight: 700;
	color: white;
}
.main-navigation a:hover {
	color: var(--color-gold);
}
/* ===============================
   DESKTOP NAVIGATION
=============================== */
@media (min-width: 1024px) {
	#site-navigation {
		position: absolute;
		margin: var(--space-lg) 0;
		right: var(--space-lg);
	}
	/* Hide hamburger */
	.menu-toggle {
		display: none;
	}
	/* Show menu normally */
	.main-navigation ul.nav-menu {
		display: flex;
		gap: 1.2rem;
		height: auto;
		width: auto;
		position: static;
		background: none;
	}
	.main-navigation a {
		padding: 0;
		width: auto;
	}
}