.site-header {
	#header {
		z-index: 999;
		box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
		position: relative;
		transition: transform 0.2s ease;
		background: #fff;
	}

	.header-square {
		height: 72px;
		aspect-ratio: 1 / 1;
		background-color: var(--mainColor);
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.logo-header img {
		max-width: 200px;
		max-height: 72px;
		height: auto;
		object-fit: contain;
		padding-block: 5px;

		&.icon-header {
			max-width: 200px;
			max-height: 40px;
			height: auto;
			object-fit: contain;
			cursor: pointer;
		}
	}

	.header-nav {
		height: 72px;

		.nav {
			.nav-item {
				font-size: 20px;
				color: black;
				font-weight: bold;

				&.marketplace {
					background-color: var(--mainColor);
					color: var(--mainColor);
					padding: 8px 16px;
				}
			}
		}
	}

	.hamburger-btn {
		display: none;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		width: 40px;
		height: 40px;
		cursor: pointer;
		background: transparent;
		border: none;
		padding: 0;
		z-index: 1001;
		position: relative;
	}

	.hamburger-btn span {
		display: block;
		width: 20px;
		height: 3px;
		background-color: #000;
		margin: 2px 0;
		transition: all 0.3s ease;
	}

	.hamburger-btn.active span:nth-child(1) {
		transform: rotate(45deg) translate(5px, 5px);
	}

	.hamburger-btn.active span:nth-child(2) {
		opacity: 0;
	}

	.hamburger-btn.active span:nth-child(3) {
		transform: rotate(-45deg) translate(6px, -5px);
	}

	@media (max-width: 991px) {
		.hamburger-btn {
			display: flex;
		}

		.header-nav {
			display: none !important;
		}

		.header-square {
			cursor: pointer;
		}
	}
}

.side-menu {
	position: fixed;
	top: 72px;
	left: -300px;
	background: var(--mainColor);
	box-shadow: 2px 0 10px rgba(0, 0, 0, 0.1);
	transition: left 0.3s ease;
	z-index: 1000;
	border-radius: 0 0 8px 8px;
	padding: 0.5rem 2rem;

	&.active {
		left: 0;
	}

	ul {
		list-style: none;
		padding: 0;
		margin: 0;

		li {
			display: flex;
			align-items: center;
			gap: 10px;
			margin-block: 15px;

			span {
				font-size: 25px;
			}

			a {
				display: block;
				color: #000;
				text-decoration: none;
				font-size: 25px;
				font-weight: 700;
				transition: background 0.3s ease;

				&:hover {
					background: #f5f5f5;
				}
			}

			&.marketplace a {
				display: flex;
				align-items: center;
				gap: 10px;
				font-weight: bold;
			}
		}
	}
}

.menu-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background: rgba(0, 0, 0, 0.5);
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease;
	z-index: 998;

	&.active {
		opacity: 1;
		visibility: visible;
	}
}
