/* =======================================================
   Focus Styles
========================================================== */
a:focus,
button:focus,
input:focus,
textarea:focus {
	outline: none !important;
	box-shadow: none !important;
}


/* =======================================================
   Navbar Styles (White background with glass morphic effect)
========================================================== */

/* --------- Navbar Container --------- */
.navbar_container {
	position: fixed;
	z-index: 1000;
	transition: all 0.3s ease;
	font-weight: bold;
	width: 100%;
	top: 0em;
}

/* --------- Logo Styles --------- */
/* Desktop Logo */
.navbar_logo {
	position: absolute;
	top: 1em;
	left: 1em;
	cursor: pointer;
	transition: transform 0.3s ease;
	border-radius: 50%;
	background: rgba(var(--primary-light), 0.5);
	padding: 0.5em;
}

.navbar_logo__image {
	width: 100%;
	background: rgba(255, 255, 255, 1);
	display: block;
	width: 180px;
	height: auto;
	border-radius: 50%;
	transition: 0.3s ease-in-out;
}

.navbar_logo__image:hover {
	transform: scale(1.05);
}

/* Mobile Logo (hidden on desktop) */
.navbar_logo--mobile {
	display: none;
}


/* =======================================================
   Navigation Links
========================================================== */

.navbar_nav {
	list-style: none;
	display: flex;
	gap: 15px;
	float: right;
	padding: 1em;
	background: rgba(var(--primary), 0.8);
	border-bottom-left-radius: 1em;
}

.navbar_nav__link {
	display: block;
	padding: 10px 20px;
	color: rgb(var(--secondary-dark));
	text-decoration: none;
	transition: all 0.4s ease;
	cursor: pointer;
	border-radius: 10px;
	background: rgba(255, 255, 255, 1);
	border: 1px solid green;
}

.navbar_nav__link:hover {
	background: rgba(var(--secondary-light), 1);
	color: yellow;
}

/* --------- Dropdown Menu (White with glass morphic effect) --------- */
.navbar_dropdown {
	position: absolute;
	background: rgba(var(--primary), 0.5);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	border-radius: 10px;
	list-style: none;
	padding: 5px 0;
	display: none;
	z-index: 1000;
}

.navbar_dropdown__item {
	padding: 2px 5px;
}

.navbar_dropdown__link {
	display: block;
	text-decoration: none;
	background: rgba(var(--primary-light), 1);
	color: rgb(var(--secondary));
	transition: all 0.3s ease;
	padding: 8px 15px;
	border: 1px solid green;
	border-radius: 10px;
}

.navbar_dropdown__link:hover {
	color: rgb(var(--primary-light));
	background: rgba(var(--secondary-light), 0.8);
}

.navbar_nav__item--dropdown.js-dropdown-active .navbar_dropdown {
    display: block;
    animation: fadeIn 0.3s ease-in-out;
}


/* =======================================================
   Modal Styles (Glassmorphic Popup remains unchanged)
========================================================== */

/* Modal Overlay */
.navbar_modal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow-y: auto;
	opacity: 0;
	visibility: hidden;
	margin-top: 0;
	transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
	z-index: 1000;
	padding: 20px;
}

/* Modal Content */
.navbar_modal__content {
	background: rgba(var(--primary-light), 0.6);
	backdrop-filter: blur(10px);
	box-shadow: 0px 0px 50px grey;
	border-radius: 12px;
	width: 90%;
	max-width: 500px;
	max-height: 80vh;
	text-align: center;
	position: relative;
	overflow-y: auto;
	transition: transform 0.3s ease-in-out;
}

/* Modal Logo */
.navbar_modal__image {
	max-width: 100%;
	height: auto;
	border-radius: 50%;
	width: 20em;
	margin: 2em auto 1em auto;
	background: rgba(255, 255, 255, 1);
	overflow: hidden;
}

.navbar_modal__content p {
	margin: 1em 2em 2em 2em;
}

/* Close Button */
.navbar_modal__close {
	height: 1em;
	width: 1em;
	border-radius: 50%;
	position: absolute;
	top: 0.5em;
	right: 0.5em;
	font-size: 2em;
	background: none;
	border: none;
	cursor: pointer;
	transition: 0.5s;
}
.navbar_modal__close:hover {
	transform: scale(1.2);
}

/* Active Modal State */
.navbar_modal--active {
	opacity: 1;
	visibility: visible;
}

.navbar_modal--active .navbar_modal__content {
	transform: scale(1);
}


/* =======================================================
   Animations
========================================================== */
@keyframes fadeIn {
	from {
		opacity: 0;
		transform: translateY(10px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}


/* =======================================================
   Mobile Styles
========================================================== */
@media (max-width: 1150px) {
	/* Hamburger Menu */
	.navbar_hamburger {
		position: absolute;
		display: flex;
		flex-direction: column;
		top: 0em;
		right: 0em;
		cursor: pointer;
		padding: 1em;
		background-color: white;
		border-bottom-left-radius: 10px;
		width: fit-content;
		height: 4em;
		width: 4em;
	}

	.navbar_hamburger__bar {
		height: 5px;
		width: 100%;
		margin: 3px 0px;
		background-color: rgb(var(--secondary-dark));
		transition: 0.3s;
		border-radius: 5px;
	}

	.navbar_hamburger--active .navbar_hamburger__bar:nth-child(1) {
		transform: rotate(45deg) translate(5px, 9px);
	}

	.navbar_hamburger--active .navbar_hamburger__bar:nth-child(2) {
		opacity: 0;
	}

	.navbar_hamburger--active .navbar_hamburger__bar:nth-child(3) {
		transform: rotate(-45deg) translate(5px, -9px);
	}


	/* Mobile Navigation Sidebar */
	.navbar_nav {
		position: fixed;
		top: 0;
		left: -100%;
		height: 90vh;
		width: 18em;
		flex-direction: column;
		background: rgba(255, 255, 255, 0.95);
		backdrop-filter: blur(12px);
		-webkit-backdrop-filter: blur(12px);
		overflow-y: auto;
		transition: left 0.3s ease;
		z-index: 999;
		border-radius: 20px;
		padding: 20px 0;
		gap: 0px;
	}
	.navbar_nav--active {
		left: 0;
	}
	.navbar_nav__item {
		margin: 5px 30px;
		text-align: center;
	}
	.navbar_nav__item .navbar_dropdown__item {
		margin: auto;
	}

	.navbar_logo {
		top: 0.3em;
		left: 0.3em;
	}

	/* Mobile Logo */
	.navbar_logo--mobile {
		display: flex;
		justify-content: center;
		margin: 20px auto;
		border-radius: 50%;
	}
	.navbar_logo--mobile img {
		transition: width 0.3s ease-in-out, height 0.3s ease-in-out;
		width: 120px;
		height: auto;
	}

	.navbar_logo--mobile:hover img {
		transform: scale(1.1);
	}

	.navbar_modal__content {
		width: 90%;
		max-height: 70vh;
		padding: 15px;
	}
}