@font-face {
    font-family: 'VKSansMono';
    src: url('./fonts/VK_Sans_Text_Mono_Re.woff') format('woff');
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: 'VKSansMono';
    src: url('./fonts/VK_Sans_Text_Mono_Me.woff') format('woff');
    font-weight: 500;
    font-style: normal
}

@font-face {
    font-family: 'VKSansMono';
    src: url('./fonts/VK_Sans_Text_Mono_De.woff') format('woff');
    font-weight: 600;
    font-style: normal
}

@font-face {
    font-family: 'VKSansMono';
    src: url('./fonts/VK_Sans_Text_Mono_Bo.woff') format('woff');
    font-weight: 700;
    font-style: normal
}

.mobile-menu__overlay .page-wrapper .page.changellenge .page-container .mobile-menu__container {
	height: 100vh;
	background-color: rgba(50, 50, 50, 0.7);
}

.mobile-menu__container .social-btns__title {
	color: #AAB4B6;
}


.mobile-menu {
	position: fixed;
	z-index: 500;
	right: 0;
	bottom: 0;
	left: 0;
	display: block;
	z-index: 1000;
}

.mobile-menu__overlay {
	overflow: hidden;
}

.mobile-menu-detail {
	overflow: auto;
	height: 80vh;
	max-height: 0;
	margin-bottom: -15px;
	transition: all 0.3s;
	border-radius: 15px 15px 0 0;
	background-color: #F8F8F8;
}

.mobile-menu-detail--active {
	max-height: 80vh;
}

.mobile-menu-nav {
	display: flex;
	justify-content: space-between;
	padding: 0 12px 8px 12px;
	border-radius: 15px 15px 0 0;
	background-color: #ffffff;
	box-shadow: 5px 5px 10px 5px #0000000D;
	font-size: 12px;
	gap: 12px;
	position: relative;
	z-index: 300;
}

.mobile-nav-link {
	position: relative;
	display: flex;
	align-items: center;
	flex: 1;
	flex-direction: column;
	justify-content: center;
	padding: 12px 0 0 0;
	transition: all 0.3s;
	text-decoration: none;
	gap: 6px;
}

.mobile-nav-link__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	transition: all 0.3s;
}

.mobile-nav-link__icon > svg {
	flex-shrink: 0;
	transition: all 0.3s;
}

.mobile-nav-link__icon > img {
	flex-shrink: 0;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	object-fit: cover;
	object-position: center;

}

.mobile-nav-link__icon-fill {
	transition: all 0.3s;
	fill: transparent;
}

.mobile-nav-link:hover {
	color: #BD0C1E;
}

.mobile-nav-link:hover .mobile-nav-link__icon-fill {
	fill: #BD0C1E;
}

.mobile-nav-link--active {
	color: #BD0C1E;
}

.mobile-nav-link--active::before {
	position: absolute;
	top: -1px;
	right: auto;
	left: auto;
	display: block;
	width: 56px;
	height: 2px;
	content: "";
	background-color: #BD0C1E;
}

.mobile-nav-link--active .mobile-nav-link__icon-fill {
	fill: #BD0C1E;
}

.mobile-menu-detail__container {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 40px;
	height: 100%;
	padding: 32px 32px 63px 32px;
}

.mobile-menu-detail__header {
	display: flex;
	justify-content: space-between;
	margin-bottom: 31px;
}

.mobile-menu-detail__header .mobile-menu-detail__logo svg path {
	fill: #121217;
}

.mobile-menu-detail__close {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	transition: all 0.3s;
	color: #121217;
	border: none;
	border-radius: 8px;
	outline: 0;
	background: #FFFFFF;
}

.mobile-menu-detail__close > svg {
	transition: all 0.3s;
}

.mobile-menu-detail__close:hover {
	color: #BD0C1E;
}

.menu-personal-link {
	font-size: 16px;
	line-height: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 24px;
	padding: 12px 16px 13px 16px;
	text-decoration: none;
	color: #121217;
	border-radius: 15px;
	background-color: #FFFFFF;
}

.menu-personal-link__subtitle {
	font-size: 12px;
	line-height: 110%;
	margin-top: 4px;
	color: rgba(18, 18, 23, 0.5);
}

.menu-personal-link__photo {
	display: flex;
	overflow: hidden;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: #F8F8F8;
}

.menu-personal-link__photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.desktop-menu__items {
	display: flex;
	align-items: center;
	gap: 16px;
}

.desktop-menu__items .menu-desktop-item .menu-desktop-item__link {
	white-space: nowrap;
}

.desktop-menu-container {
	border-bottom: 1px solid rgba(18, 18, 23, 0.15);
}

.desktop-menu-container {
	position: sticky;
	top: 0;
	display: none;
	align-items: center;
	justify-content: center;
	background-color: #EBF4F9;
	transform: translateY(0);
	transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
	z-index: 1000;
}

.desktop-menu-container.fixed {
	transform: translateY(0);
}

.desktop-menu {
	display: none;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	color: #fff;
	font-family: "Factor A", sans-serif;
	padding: 22px 83px;
	margin-right: auto;
	margin-left: auto;
}

.desktop-menu.fixed {
	position: fixed;
	z-index: 500;
	right: 0;
	top: 0;
	left: 0;
	border-bottom: 1px solid rgba(18, 18, 23, 0.15);
}

.desktop-menu__burger {
	display: none;
	cursor: pointer;
	background-color: #F2F2F2;
	padding: 12px 24px;
	border-radius: 16px;
	transition: all 0.3s;
	&:focus,
	&:hover {
		background-color: #9D9D9D;
	}
}

.desktop-menu-container .desktop-menu .desktop-menu__logo svg path {
	fill: #121217;
}

.desktop-menu-container.fixed .desktop-menu .desktop-menu__logo svg path {
	fill: #121217;
}

.desktop-menu-container.fixed .desktop-menu .desktop-menu__logo,
.desktop-menu-container.fixed .desktop-menu .desktop-menu__items .menu-desktop-item__link {
	color: #121217;
	padding: 0;
	border-radius: 0;
	background-color: transparent;
}

.page-wrapper .page.changellenge .page-container .desktop-menu-container .desktop-menu button[data-auth=""].menu-desktop-item__link {
	width: 100%;
	height: 100%;
	max-height: 37px;
	max-width: 107px;
	padding: 10px 16px;
	border-radius: 15px;
	background-color: #BD0C1E;
}

.desktop-menu-container .desktop-menu button[data-trigger=""].menu-desktop-item__link {
	min-height: 42px;
	color: #121217;
}

.desktop-menu__logo {
	max-width: 287px;
	width: 100%;
	height: auto;
	font-size: 14px;
	font-weight: 300;
	line-height: 100%;
	display: flex;
	flex-direction: column;
	text-decoration: none;
	gap: 4px;
	color: #121217;
}

.desktop-menu__logo > icon-logo {
	display: block;
	height: 12px;
}

.desktop-menu__logo:hover {
	color: #aab4b6;
}

.desktop-menu__controls {
	display: flex;
	gap: 16px;
	align-items: center;
}

.ch-dropdown {
	position: relative;
	display: inline-block;
}

.ch-dropdown-toggle {
	padding: 8px 16px;
	cursor: pointer;
	border: 1px solid #ccc;
	border-radius: 4px;
	background: #f0f0f0;
}

.ch-dropdown-menu {
	position: absolute;
	z-index: 50;
	top: 100%;
	left: 0;
	display: none;
	width: max-content;
	margin: 15px 0 0;
	padding: 8px;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.ch-dropdown-menu--right {
	right: 0;
	left: auto;
}

.ch-dropdown--show {
	display: block;
}

.ch-dropdown-item {
	font-size: 14px;
	font-weight: 400;
	line-height: 21px;
	display: block;
	padding: 8px 10px;
	cursor: pointer;
	transition: all 0.3s;
	text-decoration: none;
	color: #121217;
	border-radius: 8px;
}

.ch-dropdown-item:hover {
	background: #F2F2F2;
}

.menu-desktop-item__link {
	font-size: 14px;
	font-weight: 400;
	line-height: 21px;
	display: flex;
	align-items: center;
	padding: 0;
	transition: all 0.3s;
	color: #121217;
	border: none;
	outline: 0;
	background: transparent;
	gap: 8px;
}

.desktop-menu-container .desktop-menu button[data-auth=""].menu-desktop-item__link {
	width: 100%;
	height: 100%;
	color: #FFFFFF;
	font-size: 16px;
	font-weight: 700;
	line-height: 100%;
	text-transform: uppercase;
	background-color: #FF3985;
	border-radius: 0;
	padding: 13px 16px;
	box-sizing: border-box;
}

.menu-desktop-item__link:hover {
	opacity: 0.7;
}

.menu-desktop-item__arrow {
	display: block;
	width: 17px;
	height: 17px;
	transform: rotate(90deg);
}

.desktop-menu-promasters {
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	display: flex;
	align-items: center;
	flex-direction: row;
	justify-content: center;
	gap: 4px;
	margin-top: 2px;
	padding: 8px;
	transition: opacity 0.3s;
	text-decoration: none;
	letter-spacing: 0;
	color: #121212;
	border-radius: 100px;
	background: #FFFFFF;
	border: none;
	text-transform: uppercase;
}

.desktop-menu-promasters__first {
	color: #BD0C1F;
}

.desktop-menu-promasters__separator, .desktop-menu-promasters__second {
	color: #121212;
}

.desktop-menu-promasters:hover {
	opacity: 0.7;
}

.menu-desktop-item__subtitle {
	font-size: 14px;
	font-weight: 400;
	line-height: 100%;
	padding: 16px 12px 8px 12px;
	color: #CDCDCF;
}

.menu-desktop-item__avatar {
	width: 30px;
	height: 30px;
	object-fit: cover;
	object-position: center;
	border-radius: 50%;
}

@media (max-width: 1315px) {
	.desktop-menu__burger {
		display: flex;
	}

	.desktop-menu__items {
		display: none;
		grid-template-columns: repeat(3, 1fr);
		grid-template-rows: repeat(2, auto);
		grid-auto-flow: column;
		column-gap: 24px;
		row-gap: 32px;
		align-items: start;
		position: absolute;
		top: calc(100% + 16px);
		left: 50%;
		transform: translateX(-50%);
		border-radius: 16px;
		border: 1px solid #F2F2F2;
		background: #FFF;
		padding: 52px;
		max-width: 1120px;
		width: 100%;
		&.show {
			display: grid;
		}

		.ch-dropdown {
			display: block;
			min-width: 0;
		}

		.ch-dropdown-menu,
		.ch-dropdown-menu.ch-dropdown--show {
			display: block;
			position: relative;
			margin-top: 24px;
			padding: 0;
			box-shadow: none;
		}

		.menu-desktop-item__link {
			color: #121217;
			font-size: 20px;
			font-weight: 500;
			&:hover {
				color: #121217;
			}
		}

		.menu-desktop-item__arrow {
			display: none;
		}

		.menu-desktop-item__subtitle {
			margin-top: 24px;
			padding: 0px 0 16px;
		}

		.ch-dropdown-item {
			padding: 0;
			margin-bottom: 16px;
			&:hover {
				background-color: transparent;
			}
		}
	}
}

@media (max-width: 1250px) {
	.desktop-menu-container.fixed .desktop-menu .desktop-menu__items {
		gap: 16px;
	}

	.desktop-menu-container.fixed .desktop-menu {
		gap: 18px;
	}

	.desktop-menu-container.fixed .desktop-menu .desktop-menu__items .menu-desktop-item .menu-desktop-item__link {
		font-size: 14px;
	}
}

@media (min-width: 992px) {
	.mobile-menu {
		display: none;
	}

	.desktop-menu {
		display: flex;
		gap: 24px;
	}

	.desktop-menu-container {
		display: flex;
	}
}

@media (max-width: 450px) {
	.mobile-nav-link__text {
		font-size: 10px;
	}

	.mobile-menu-nav {
		padding: 0 12px 12px 12px;
	}

	.menu-personal-link {
		margin-bottom: 24px;
	}
}

.desktop-menu__controls {
	font-family: 'VKSansMono', Aria;
}
