#menu-glavnoe {
	.menu-item-has-children {
		position: relative;
	}
	.menu-item-has-children .sub-menu {
		position: absolute;
		top: 100%;
		left: 0;
		background-color: #ffffff;
		min-width: 220px;
		box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
		border-radius: 16px;
		z-index: 9999;
		padding: 10px 20px 15px;
		margin: 0;
		list-style: none;
		opacity: 0;
		visibility: hidden;
		transform: translateY(10px);
		transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
	}
	.menu-item-has-children:hover > .sub-menu {
		opacity: 1;
		visibility: visible;
		transform: translateY(0);
	}
	.menu-item-has-children .sub-menu li {
		display: block;
		width: 100%;
		text-align: left;
	}
	.menu-item-has-children .sub-menu li a {
		display: block;
		padding: 10px 20px;
		color: #333333;
		text-decoration: none;
		white-space: nowrap;
	}
	.menu-item-has-children .sub-menu li a:before {
		bottom: 0;
	}
}
#menu-glavnoe-1 {
	.sub-menu {
		padding-left: 20px;
		margin-top: 10px;
		& a {
			font-size: 16px;
		}
	}
}

#menu-glavnoe-2 {
	.sub-menu {
		display: none;
	}
}


.spec-title {
	margin-bottom: 10px;
}
.spec-subtitle {
	max-width: 780px;
	font-size: 16px;
	margin-bottom: 25px;
	color: #3a3a3a;
}
.spec-wrapper {
	gap: 20px;
}
.spec-item {
	width: calc((100% - 40px) / 3);
}
@media(max-width: 992px) {
	.spec-item {
		width: calc((100% - 20px) / 2);
	}
}
@media(max-width: 576px) {
	.spec-item {
		width: 100%;
	}
}

.publications .title_block {
	padding-left: 0;
}
.publications_wrapper {
	max-width: 100%;
	gap: 20px;
	& .item {
		width: calc((100% - 40px) / 3);
		margin-bottom: 0 !important;
	}
}
@media(max-width: 1400px) {
	.publications_wrapper {
		& .item {
			width: calc((100% - 20px) / 2);
		}
	}
}
@media(max-width: 768px) {
	.publications_wrapper {
		& .item {
			width: 100%;
		}
	}
}
.article-btns {
	display: flex;
	gap: 20px;
	margin-top: 30px;
}
.article-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 15px;
	border: 2px solid #e33b79;
	border-radius: 50px;
	padding: 15px 30px;
	transition: all 0.2s;
}
.article-btn--hollow {
	background: transparent;
	color: #e33b79;
	&:hover {
		background: #e33b79;
		color: #fff;
		& svg {
			stroke: #fff;
		}
	}
}
.article-btn--bg {
	background: #e33b79;
	color: #fff;
	&:hover {
		background: transparent;
		color: #e33b79;
		& svg {
			stroke: #e33b79;
		}
	}
}
@media(max-width: 768px) {
	.article-btns {
		flex-direction: column;
		max-width: 3;
	}
}