/* Контейнер главной: overflow: clip вместо hidden — иначе закреплённое меню не работает (hidden делает контейнер
   областью прокрутки). Обрезка по краям сохраняется. */
.container {
	overflow: clip;
}

/* Меню закреплено сверху и полупрозрачно: при прокрутке контент просвечивает сквозь размытие */
.ConMenu {
	position: sticky;
	top: 0;
	z-index: 100;
	height: 74px;
	background-color: rgba(17, 17, 17, 0.78);
	-webkit-backdrop-filter: blur(14px) saturate(140%);
	backdrop-filter: blur(14px) saturate(140%);
	border-left: 1px solid #3c3c3c;
	border-right: 1px solid #3c3c3c;
	transition: box-shadow 0.3s ease, background-color 0.3s ease;
}

/* Когда страница прокручена — тонкая линия снизу и мягкая тень, чтобы меню отделялось от контента */
.ConMenu.is-stuck {
	background-color: rgba(17, 17, 17, 0.7);
	box-shadow:
		0 1px 0 #3c3c3c,
		0 10px 30px rgba(0, 0, 0, 0.35);
}

/* Якоря разделов: заголовок не прячется под закреплённым меню */
#about,
#special,
#faq,
#uslug,
#team {
	scroll-margin-top: 74px;
}

@media (max-width: 440px) {
	.ConMenu {
		display: none;
	}
}

.menu {
	display: flex;
}

.navigate {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	margin: 0;
	margin-top: 25px;
	margin-left: 23px;
	gap: 15px;
}

.btn1 {
	cursor: pointer;
	color: #6c6c6c;
	border: none;
	background-color: transparent;
	font-family: "SF Pro Display";
	font-weight: 400;
	font-size: 16px;
	position: relative;
	transition: color 0.8s ease;
	padding-bottom: 6px; /* Добавим немного "места" под линию */
}

.btn1:hover {
	color: white;
}

.btn1::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0; /* это привязка линии к низу кнопки */
	transform: translateX(-50%);
	width: 50%; /* линия короче кнопки */
	height: 2px;
	background-color: white;
	opacity: 0;
	transition:
		opacity 0.3s ease,
		transform 0.3s ease;
}

.btn1:hover::after {
	opacity: 1;
	transform: translateX(-50%) scaleX(1);
}

.btnOpen {
	display: flex;
	gap: 13px;
	margin-top: 18px;
	margin-left: auto;
	margin-right: 23px;
}

.btnTg {
	position: relative;
	cursor: pointer;
	color: #888888;
	border: 1px solid #2f2f2f;
	border-radius: 10px;
	background-color: #202020;
	width: 176px;
	height: 36px;
	font-family: "SF Pro Display";
	font-size: 16px;
	font-weight: 500;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-left: 40px;
	transition:
		color 0.8s ease,
		border 0.8s ease,
		opacity 20s ease-in-out;
}

.btnTg:hover {
	color: white;
	border: 1px solid white;
}

.btnTg img {
	position: absolute;
	left: 10%;
	transition: opacity 0.35s ease;
}

.btnTg img.first {
	opacity: 1;
}

.btnTg img.second {
	opacity: 0;
}

.btnTg:hover img.first {
	opacity: 0;
}

.btnTg:hover img.second {
	opacity: 1;
}

.btnCall {
	cursor: pointer;
	color: black;
	border: none;
	border-radius: 10px;
	background-color: white;
	width: 113px;
	height: 36px;
	font-family: "SF Pro Display";
	font-size: 16px;
	font-weight: 500;
	transition:
		color 0.8s ease,
		border 0.8s ease,
		background-color 0.8s ease;
}

.btnCall:hover {
	color: white;
	border: 0.5px solid white;
	background-color: #202020;
}

/* Кнопки входа справа от Telegram: как .btnTg, но по ширине текста и без иконки */
.btnOpen a[hidden] {
	display: none;
}

.btnAuth {
	cursor: pointer;
	height: 36px;
	padding: 0 18px;
	color: #888888;
	border: 1px solid #2f2f2f;
	border-radius: 10px;
	background-color: #202020;
	font-family: "SF Pro Display";
	font-size: 16px;
	font-weight: 500;
	white-space: nowrap;
	transition:
		color 0.8s ease,
		border 0.8s ease;
}

.btnAuth:hover {
	color: white;
	border: 1px solid white;
}
