/* ==========================================================================
   Header
   ========================================================================== */

   body {
	margin: 0;
	font-family: 'Outfit', sans-serif;
}

header {
	/* Стили при необходимости */
}

/* Элементы десктопа видимы по умолчанию */
.desktop-only,
.mobile-only {
	display: flex;
	align-items: center;
	width: 100%;
	justify-content: space-between;
	background: #FFFFFF1A;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
	padding: 14px 42px;
	box-sizing: border-box;
	border-radius: 120px;
	margin: 20px auto;
	position: relative;
	z-index: 9;
	backdrop-filter: blur(18px);
}

.mobile-only,
.mobile-menu,
.mobile-menu-overlay {
	display: none;
}

.logo-header {
	font-weight: bold;
	line-height: 1.2;
	text-decoration: none;
	color: white;
	display: block;
}


.nav-menu {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	gap: 50px;
	font-weight: 400;
	font-size: 18px;
}

.nav-menu li a {
	text-decoration: none;
	color: white;
	transition: color 0.3s;
}

.nav-menu li a:hover {
	color: #9098a17d;
}

/* Стили для меню в шапке на всех страницах, кроме главной */
body:not(.home):not(.front-page) .site-header .nav-menu li a {
	text-decoration: none;
	color: white;
	transition: color 0.3s;
}

body:not(.home):not(.front-page) .desktop-only,
body:not(.home):not(.front-page) .mobile-only {
	background: #032279;
}

.social__items {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	gap: 15px;
	align-items: center;
}

.social__items li a {
	display: flex;
	text-decoration: none;
	padding: 10px;
}

.social__items li {
	list-style: none;
	background: white;
	border-radius: 18px;
}

@media (max-width: 991px) {
	.desktop-only {
		display: none !important;
	}

	.mobile-only {
        display: flex !important;
        justify-content: space-between;
        width: 100vw;
        border-radius: 0;
        padding: 15px 20px;
        position: relative;
        margin: 0 -16px;
	}

	.mobile-menu,
	.mobile-menu-overlay {
		display: block;
	}

	header {
		margin: 0;
		border-radius: 0;
		width: 100%;
	}

	.mobile-left {
		display: flex;
		align-items: center;
		gap: 12px;
	}

	.burger-btn,
	.search-btn {
		background: none;
		border: none;
		cursor: pointer;
		padding: 0;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.burger-btn svg,
	.search-btn svg {
		width: 24px;
		height: 24px;
		stroke: white;
		fill: none;
		stroke-width: 2;
	}

	.mobile-logo img {
		height: 46px;
		width: auto;
	}

	/* Полноэкранное мобильное меню */
	.mobile-menu {
		position: fixed;
		top: 0;
		left: 0;
		transform: translateX(-100%);
		width: 270px;
		max-width: 100%;
		height: 100vh;
		background: #1a1a2e;
		padding: 80px 24px 24px;
		transition: transform 0.3s ease;
		z-index: 100;
		box-shadow: 2px 0 10px rgba(0, 0, 0, 0.3);
	}

	.mobile-menu.active {
		transform: translateX(0);
	}

	.mobile-menu ul {
		list-style: none;
		padding: 0;
		margin: 0;
	}

	.mobile-menu li {
		margin-bottom: 20px;
	}

	.mobile-menu a {
		color: white;
		text-decoration: none;
		font-size: 18px;
		font-weight: 500;
		display: block;
		padding: 8px 0;
		border-bottom: 1px solid #ffffff20;
	}

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

	.mobile-menu-overlay.active {
		opacity: 1;
		visibility: visible;
	}

	.close-menu {
		position: fixed;
		top: 15px;
		right: 15px;
		background: none;
		border: none;
		color: white;
		font-size: 32px;
		cursor: pointer;
		z-index: 101;
		width: 44px;
		height: 44px;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 50%;
		transition: background 0.2s;
	}
}
