:root {
	--siteNavHeight: 7.5rem;
}

.site-nav {
	position: absolute;
	top: 0;
	z-index: var(--z-index-site-nav);
	transition: background 0.5s;
}

.site-nav .menu a {
	text-transform: uppercase;
}

.site-nav .menu li {
	list-style: none;
}

.site-nav .col-logo .img-box {
	display: grid;
	place-content: center;
}

.site-nav .col-logo .img-box > img {
	grid-area: 1/1;
	transition: 0.5s;
}

.site-nav .green {
	opacity: 0;
}

.site-nav .white {
	opacity: 0;
}

.site-nav .red {
	opacity: 0;
}

.preloaded .site-nav .red {
	opacity: 0;
}

.preloaded .site-nav .white {
	opacity: 0;
}

.intro .site-nav {
	position: fixed;
}

@media only screen and (min-width: 961px) {
	.site-nav {
		padding: 0 8rem;
		position: fixed;
		top: 0;
		transition: all .6s;
	}
	.site-nav .row {
		height: var(--siteNavHeight);
	}

	.site-nav .white {
		opacity: 0;
	}

	.site-nav .red {
		opacity: 0;
	}

	.site-nav .col-logo .img-box {
		width: 23rem;
	}

	.site-nav > .row {
		max-width: 172.8rem;
	}

	.site-nav .menu {
		display: flex;
		justify-content: flex-end;
		column-gap: 3rem;
	}

	.site-nav .menu li {
		line-height: 0%;
	}

	.site-nav .menu a {
		font-size: 1.6rem;
		font-style: normal;
		font-weight: var(--font-bold);
		line-height: 130%;
		letter-spacing: 0.25em;
		color: var(--white);
	}

	.preloaded .site-nav .white {
		opacity: 1;
	}

	.preloaded .site-nav .red {
		opacity: 0;
	}

	.site-nav.loadedImage {
		background-color: var(--sunrise-bliss);
		backdrop-filter: blur(20px);
	}

	.site-nav.loadedImage .white {
		opacity: 0;
	}

	.site-nav.loadedImage .red {
		opacity: 1;
	}

	.site-nav.loadedImage .menu a {
		color: var(--midnight-musing) !important;
	}

	.preloaded .site-nav .col-menu {
		pointer-events: all;
	}
}
@media only screen and (min-width: 0) and (max-width: 960px) {
	.site-nav {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		padding: 2.8rem 3rem;
		height: 8.5rem;
	}

	.site-nav .red {
		opacity: 0;
	}

	.preloaded .site-nav .white {
		opacity: 1;
	}

	body:is([data-state="opened-menu"]) .site-nav :is(.white, .red) {
		opacity: 0;
	}

	body:is([data-state="opened-menu"]) .site-nav :is(.green) {
		opacity: 1;
	}

	body:not([data-state="opened-menu"]) .site-nav.loadedImage {
		background-color: var(--sunrise-bliss);
		backdrop-filter: blur(20px);
	}

	body:not([data-state="opened-menu"]) .site-nav.loadedImage .white {
		opacity: 0;
	}

	body:not([data-state="opened-menu"]) .site-nav.loadedImage .red {
		opacity: 1;
	}

	body[data-state="closed-menu"] .site-nav.loadedImage .icon-hamburguer:before {
		color: var(--midnight-musing);
	}

	.site-nav .col-logo {
		z-index: 1;
		display: flex;
		justify-content: space-between;
	}

	.site-nav .col-logo .icon-hamburguer:before {
		color: var(--linen);
	}

	.site-nav .col-menu {
		padding: 24.5vh 3rem 9vh;
		position: absolute;
		inset: 0;
		transform: translate3d(100%, 0, 0);
		height: 100vh;
		height: 100svh;
		overflow: scroll;
		background: no-repeat url("../../img/nav/bg-nav-mobile.png") left top;
		background-size: cover;
		transition: transform var(--anim-delay);
	}

	.site-nav .col-menu .menu {
		display: flex;
		flex-direction: column;
	}

	.site-nav .col-menu .menu li:not(:last-child) {
		margin-bottom: 3.5vh;
	}

	.site-nav .col-menu ul li a {
		display: inline-block;
		text-align: left;
		font-size: 2.2rem;
		font-style: normal;
		font-weight: var(--font-bold);
		line-height: 130%;
		letter-spacing: 0.18em;
		color: var(--fresh-lawn);
	}

	.site-nav .col-menu .social {
		margin-top: auto;
	}

	.site-nav .col-menu .social .menu-social {
		display: flex;
		align-items: flex-start;
		margin-bottom: 3.5vh;
		margin-top: 11vh;
	}

	.site-nav .col-menu .social .menu-social p {
		font-size: 1.8rem;
		font-style: normal;
		font-weight: var(--font-regular);
		line-height: 150%;
		letter-spacing: 0.05em;
		color: var(--fresh-lawn);
	}

	.site-nav .col-menu .social .menu-social a {
		margin-left: 1rem;
	}

	.site-nav .col-menu .social .menu-legals .menu {
		display: flex;
		flex-direction: row;
		column-gap: 3.5rem;
	}

	.site-nav .col-menu .social .menu-legals .menu a {
		font-size: 1.6rem;
		font-style: normal;
		font-weight: var(--font-semi-bold);
		line-height: 130%;
		letter-spacing: 0.25em;
		text-transform: uppercase;
	}

	body[data-state="opened-menu"] .site-nav .col-logo .icon-hamburguer:before {
		content: "\e902";
		font-size: 3rem;
		color: var(--sprout);
	}

	body[data-state="opened-menu"] .site-nav .col-menu {
		transform: translate3d(0, 0, 0);
	}

	body[data-state="opened-menu"] .site-nav .white {
		opacity: 0;
	}

	body[data-state="opened-menu"] .site-nav .red {
		opacity: 0;
	}

	body[data-state="opened-menu"] .site-nav .green {
		opacity: 1;
	}

	.site-nav .col-logo .img-box {
		width: 18rem;
		height: 2.91rem;
	}

	body:has([data-state="preload"]) .site-nav .col-logo img {
		opacity: 0;
	}
}

/* ANIMATIONS */
@media only screen and (min-width: 961px) {
	body:not(.preloaded) .site-nav .menu {
		opacity: 0;
	}

	body:not(.intro):not(.preloaded) .site-nav {
		opacity: 0;
	}
}
