/* Development - LLC "MephiPro" https://mephi.pro/*/
*:not(td) {
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}

::before, ::after {
	box-sizing: border-box;
}

html, body {
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
}

body {
	font-family: 'Roboto', sans-serif;
	color: #072140;
	font-size: 20px;
	line-height: 25px;
	font-weight: 400;
	background: #f6f6f6;
	overflow-x: hidden;
}

body.fixed {
	overflow: hidden;
}

.screen {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 20;
}

a {
	color: inherit;
	text-decoration: none;
	word-break: break-word;
}

p a {
	color: #1956a0;
}

ul:not(.breadcrumbs) li a {
	color: #1956a0;
}

img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	image-rendering: optimizeQuality;
    image-rendering: -webkit-optimize-contrast;
}

p {
	margin-bottom: 20px;
}

p:last-child {
	margin-bottom: 0;
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'Roboto', sans-serif;
}

h1 {
	font-size: 80px;
	line-height: 85px;
}

h2 {
	font-size: 45px;
	line-height: 50px;
	margin-bottom: 30px;
}

h3 {
	font-size: 40px;
	line-height: 45px;
	margin-bottom: 30px;
}

h4 {
	font-size: 30px;
	line-height: 35px;
	margin-bottom: 20px;
}

h5 {
	font-size: 22px;
	line-height: 28px;
	margin-bottom: 15px;
}

input[type="text"], textarea {
	border: 1px solid #3070B3;
	outline: none;
	width: 100%;
	font-family: 'Roboto', sans-serif;
	font-size: 16px;
	line-height: 20px;
	color: #072140;
	background: #ffffff;
	padding: 15px 20px;
	border-radius: 4px;
}

textarea {
	resize: none;
	height: 200px;
}

input[type="text"]:focus, textarea:focus {
	border: 1px solid #749ff0;
}

input[type="text"].error, textarea.error {
	border-color: rgb(219, 10, 10);
}

input[type="text"]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
	color: #7a838e;
	font-family: 'Roboto', sans-serif;
	font-size: 16px;
	line-height: 20px;
}

ul, ol {
	padding-left: 40px;
	margin-bottom: 20px;
	& li {
		margin-bottom: 10px;
	}
}

@keyframes menu_btn {
    0% {
        width: 100%;
    }
    50% {
        width: 80%;
    }
	100% {
		width: 100%;
	}
}

@keyframes menu_btn_span {
    0% {
        width: 100%;
    }
    50% {
        width: 40%;
    }
	100% {
		width: 100%;
	}
}

@keyframes opacity {
    0% {
        opacity: 0;
		visibility: hidden;
    }
    50% {
        opacity: 0.5;
		visibility: visible;
    }
	100% {
		opacity: 1;
		visibility: visible;
	}
}

.flex_banner {
	display: flex;
	align-items: start;
	& h1 {
		font-size: 60px;
		line-height: 65px;
		& span:last-child {
			display: none;
		}
	}
}

.flex_banner .text_title {
	margin-right: 50px;
	width: calc(100% - 400px);
}

.flex_banner .wrap_form {
	width: 350px;
	background: rgba(255, 255, 255, 0.8);
    padding: 30px;
    border-radius: 5px;
	color: #072140;
	min-height: 405px;
	& a {
		display: block;
	}
}

.flex_banner .wrap_form .inf_wrap {
	font-size: 18px;
	line-height: 20px;
	font-weight: 500;
	& .inf_section {
		margin-bottom: 30px;
	}
}

.flex_banner .wrap_form .phone {
	margin-bottom: 15px;
	font-size: 25px;
	line-height: 30px;
	font-weight: 600;
	text-align: center;
}

.flex_banner .wrap_form .button {
	width: 100%;
	margin-bottom: 20px;
}

.flex_banner .wrap_form .item_inf {
	margin-bottom: 15px;
	position: relative;
	padding-left: 30px;
	&::before {
		position: absolute;
		content: "";
		width: 20px;
		height: 20px;
		left: 0;
		top: 0;
	}
	&:last-child {
		margin-bottom: 0;
	}
}

.flex_banner .wrap_form .time::before {
	background: url(../icons/clock.svg) center / contain no-repeat;
}

.flex_banner .wrap_form .mail::before {
	background: url(../icons/mail.svg) center / contain no-repeat;
}

.flex_banner .wrap_form .adddress {
	& span {
		display: block;
		margin-bottom: 10px;
		&:last-child {
			margin-bottom: 0;
		}
	}
	&::before {
		background: url(../icons/pin.svg) center / contain no-repeat;
	}
}

.flex_banner .wrap_form .form {
	display: none;
	& button {
		width: 100%;
		margin-top: 20px;
		margin-bottom: 20px;
	}
}

.flex_banner .wrap_form .title_form {
	margin-bottom: 30px;
	font-size: 25px;
	line-height: 30px;
	font-weight: 600;
	text-align: center;
}

.flex_banner .wrap_form .wrap_input {
	margin-bottom: 20px;
	position: relative;
    z-index: 1;
	& input {
		background: none;
		border-radius: 0;
		border: 0;
		border-bottom: 1px solid #3070B3;
		padding: 10px;
	}
}

.flex_banner .wrap_form .wrap_input::before {
	position: absolute;
    content: attr(data-placeholder);
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: #999797c0;
    transition: all 0.3s ease;
    z-index: -1;
    font-size: 14px;
    line-height: 20px;
}

.flex_banner .wrap_form .wrap_input.active::before {
	color: #072140;
    top: -12px;
    transform: none;
}

.flex_banner .footnote_form {
	font-size: 14px;
    line-height: 18px;
    text-align: center;
	& a {
		text-decoration: underline;
		color: #3070B3;
	}
}

.button, button {
	display: inline-block;
	transition: all 0.3s ease;
	text-align: center;
	outline: none;
	cursor: pointer;
	padding: 13px 20px;
	border-radius: 4px;
	font-weight: 600;
	color: #3070B3;
	border: 1px solid #3070B3;
	background: none;
	font-size: 16px;
	line-height: 20px;
}

.button.blue, button.blue {
	color: #ffffff;
	background: #3070B3;
}

.button.white_b, button.white_b {
	color: #ffffff;
	border-color: #ffffff;
}

.wrap {
	padding: 0 70px;
	margin: 0 auto;
}

header {
	background: #072140;
	color: #ffffff;
	text-transform: uppercase;
	transition: top 0.5s ease;
	top: -100px;
}

header.top_fixed {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	z-index: 5;
}

header .wrap {
	position: relative;
}

header .logo {
	display: block;
	width: 60px;
	height: 60px;
	background: url(../icons/logo.jpg) center / contain no-repeat;
	margin-right: 30px;
	border-radius: 50%;
	overflow: hidden;
}

header .menu {
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: relative;
}

header .menu nav {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	max-width: calc(100% - 90px);
	font-size: 14px;
}

header .menu nav a {
	display: block;
	margin-right: 20px;
	transition: opacity 0.3s ease;
	padding: 30px 0;
	font-weight: 600;
}

header.active_hover .menu nav a.blur {
	opacity: 0.6;
}

header .menu nav a:nth-last-child(4) {
	margin-right: 30px;
}

header .menu nav a.search_btn {
	width: 25px;
	height: 25px;
	padding: 0;
	margin-right: 30px;
}

header .menu nav .search_btn svg {
	width: 100%;
	height: 100%;
}

header .menu nav a.bvi-open {
	width: 30px;
	height: 30px;
	padding: 0;
	margin-right: 40px;
}

.menu_btn {
	width: 40px;
	height: 22px;
	cursor: pointer;
	position: relative;
}

.menu_btn span {
	display: block;
	position: absolute;
	width: 100%;
	height: 4px;
	border-radius: 4px;
	border-top: 4px solid #ffffff;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

.menu_btn::before, .menu_btn::after {
	position: absolute;
	content: "";
	width: 100%;
	height: 4px;
	border-radius: 4px;
	border-top: 4px solid #ffffff;
	left: 0;
}

.menu_btn::before {
	top: 0;
}

.menu_btn::after {
	bottom: 0;
}

.banner {
	min-height: calc(100vh - 134px);
	width: 100%;
	position: relative;
	overflow: hidden;
	margin-bottom: 90px;
	& img {
		object-fit: cover;
		position: absolute;
		left: 0;
		top: 0;
		display: none;
	}
	& .inf_button {
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		bottom: 50px;
		width: 50px;
		height: 50px;
		border-radius: 50%;
		background: rgba(255, 255, 255, 0.2) url(../icons/info.svg) center / contain no-repeat;
		background-size: 20px 20px;
		box-shadow: 0 0 20px 0 #ffffff;
		z-index: 3;
		transition: all 0.3s ease;
		opacity: 1;
		visibility: visible;
		cursor: pointer;
		&.active {
			opacity: 0;
			visibility: hidden;
		}
	}
	&::after {
		position: absolute;
		content: "";
		width: 20px;
		height: 20px;
		background: #ffffff;
		left: 50%;
		top: 50%;
		transform: translate(-50%,-50%);
		transition: all 0.4s ease, background 0.4s ease;
		transition-delay: 0s, 0.4s;
		z-index: 1;
		border-radius: 20px;
		opacity: 0;
		visibility: hidden;
	}
	&.active_menu::after {
		width: 100%;
		height: 100%;
		border-radius: 0;
		background: #000000;
		opacity: 1;
		visibility: visible;
	}
}

.banner .image_wrap {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	z-index: 1;
}

.banner .image_wrap video {
	object-fit: cover;
	object-position: center;
    height: 100%;
    width: 100%;
    display: block;
}

.banner .text_wrap {
	position: relative;
	left: 0;
	top: 0;
	z-index: 2;
	color: #ffffff;
	background: linear-gradient(153.43deg, rgb(0, 0, 0, 0.5) 50%,rgb(72, 71, 71, 0.2) 100%);
	width: 100%;
	min-height: calc(100vh - 134px);
	padding: 100px 0;
	transition: background 0.5s ease;
}

.banner.video .text_wrap h1 {
	opacity: 0;
	visibility: visible;
	animation: opacity 0.6s forwards;
	animation-delay: 2s;
}

.content {
	margin-bottom: 90px;
}

.news_list:not(.main_page) {
	display: flex;
    flex-wrap: wrap;
    margin-right: -30px;
}

.news_list.main_page {
	display: grid;
	grid-gap: 20px;
	grid-template-areas:
		"big small1"
		"big small2";
	grid-template-columns: 1.2fr 0.8fr;
	grid-template-rows: 1fr 1fr;
	height: calc(100vh - 150px);
	margin-bottom: 40px;
}

.news_list:not(.main_page) .item_new {
	width: calc(50% - 30px);
	margin: 0 30px 40px 0;
	display: flex;
	padding: 20px;
	border-radius: 5px;
	background: #ffffff;
	position: relative;
	transition: box-shadow 0.3s ease;
	box-shadow: 0 0 10px 0 rgb(0, 0, 0, 0);
	& .wrap_text {
		padding-left: 20px;
		width: 50%;
		padding-bottom: 40px;
		background: url(../icons/arrow_link_b.svg) right 0 bottom 0 / contain no-repeat;
		background-size: 20px 20px;
	}
	&:first-child {
		width: 100%;
		& .wrap_image {
			min-height: 300px;
		}
		& .text {
			& span {
				line-clamp: 8;
				-webkit-line-clamp: 8;
			}
		}
	}
	& .title {
		margin-bottom: 20px;
	}
}

.news_list.main_page .item_new {
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	&:nth-child(1) {
		grid-area: big;
		& .text {
			& span {
				line-clamp: 4;
				-webkit-line-clamp: 4;
			}
		}
	}
	&:nth-child(2) {
		grid-area: small1;
	}
	&:nth-child(3) {
		grid-area: small2;
	}
	&:nth-child(4) {
		grid-area: small3;
	}
	& .wrap_image {
		flex-grow: 1;
		position: relative;
		width: 100%;
		overflow: hidden;
	}
	& .title {
		position: relative;
		z-index: 1;
		padding: 20px;
		background: #ffffff;
	}
	& .text {
		position: absolute;
		left: 0;
		width: 100%;
		background: rgba(255, 255, 255, 0.9) url(../icons/arrow_link_b.svg) right 20px bottom 30px / contain no-repeat;
		background-size: 20px 20px;
		bottom: -200px;
		padding: 20px 40px 20px 20px;
		height: fit-content;
		transition: all 0.5s ease;
		font-size: 16px;
		& span {
			overflow: hidden;
			text-overflow: ellipsis;
			display: -moz-box;
			display: -webkit-box;
			line-clamp: 2;
			box-orient: vertical;
			-moz-box-orient: vertical;
			-webkit-line-clamp: 2;
			-webkit-box-orient: vertical;
			user-select: none;
		}
	}
}

.news_list:not(.main_page) .item_new .wrap_image {
	width: 50%;
	min-height: 200px;
	position: relative;
	overflow: hidden;
	border-radius: 5px;
}

.news_list .item_new .progressive {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}

.news_list .item_new .progressive img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: filter 0.3s ease;
}

.news_list:not(.main_page) .item_new .text {
	height: fit-content;
	font-size: 16px;
	& span {
		overflow: hidden;
        text-overflow: ellipsis;
        display: -moz-box;
        display: -webkit-box;
        line-clamp: 4;
        box-orient: vertical;
        -moz-box-orient: vertical;
        -webkit-line-clamp: 4;
        -webkit-box-orient: vertical;
        user-select: none;
	}
}

.news_list .item_new .title {
	font-size: 18px;
	line-height: 20px;
	font-weight: 600;
	transition: all 0.3s ease;
}

.news_list .item_new .date {
	font-style: italic;
	position: absolute;
	z-index: 1;
	left: 0;
	top: 0;
	color: #ffffff;
	font-size: 14px;
	line-height: 20px;
	font-weight: 500;
	padding: 5px 15px;
}

.events_list {
	display: flex;
	flex-wrap: wrap;
	margin-right: -30px;
}

.events_list .item_events {
	width: calc(25% - 30px);
	margin: 0 30px 40px 0;
	display: block;
}

.events_list .item_events .wrap_date {
	width: 100%;
	height: 260px;
	margin-bottom: 15px;
	position: relative;
	overflow: hidden;
	padding: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.events_list .item_events .date {
	text-align: center;
	font-size: 35px;
	line-height: 40px;
	font-weight: 600;
}

.events_list .item_events .text {
	position: absolute;
	left: 0;
	width: 100%;
	background: rgba(7, 33, 64, 0.9);
	bottom: -250px;
	padding: 10px;
	height: fit-content;
	color: #ffffff;
	transition: all 0.5s ease;
	border-radius: 5px 5px 0 0;
	font-size: 16px;
	& span {
		overflow: hidden;
		text-overflow: ellipsis;
		display: -moz-box;
		display: -webkit-box;
		line-clamp: 4;
		box-orient: vertical;
		-moz-box-orient: vertical;
		-webkit-line-clamp: 4;
		-webkit-box-orient: vertical;
		user-select: none;
	}
}

.events_list .item_events .title {
	font-size: 18px;
	line-height: 20px;
	font-weight: 600;
	transition: all 0.3s ease;
}

.flex_nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-bottom: 30px;
	margin-right: -15px;
}

.flex_nav .item_nav {
	cursor: pointer;
	padding: 10px 15px;
	margin: 0 15px 10px 0;
	background: #DDE2E6;
	transition: all 0.3s ease;
	&.active {
		background: #3070B3;
        color: #ffffff;
	}
}

.tab_wrap {
	padding: 0 50px;
}

.tab {
	display: none;
	align-items: center;
	&:first-child {
		display: flex;
	}
}

.tab .image {
	position: relative;
	width:calc(60% - 40px);
	align-self: stretch;
	margin-right: 40px;
	&::after {
		display: block;
		content: "";
		padding-top: calc(100% - 50vh);
	}
}

.tab .image .progressive {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	& img {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
}

.tab .text_wrap {
	padding: 100px 0 100px 40px;
	width: 40%;
	position: relative;
}

.tab .text_wrap::before {
	position: absolute;
	content: "";
	width: calc(100% + 90px);
	height: calc(100% - 140px);
	left: -40px;
	top: 50%;
	transform: translateY(-50%);
	background: #7EBAFF;
	z-index: -1;
	opacity: 0.2;
}

.tab:nth-child(2) .text_wrap::before {
	background: #4E85E9;
}

.tab:nth-child(3) .text_wrap::before {
	background: #B55CA5;
}

.tab:nth-child(4) .text_wrap::before {
	background: #F7B11E;
}

.tab .text_wrap .text {
	margin-bottom: 30px;
	min-height: 120px;
}

.contact_section {
	display: flex;
	padding: 20px;
	border-radius: 5px;
	background: #ffffff;
}

.contact_section .map {
	width: 50%;
	align-self: stretch;
	padding-left: 20px;
	overflow: hidden;
}

.about_section {
	display: flex;
	align-items: center;
	padding: 40px 0;
}

.about_section .image {
	position: relative;
	width: 60%;
	align-self: stretch;
	margin: -40px 0;
	&::after {
		display: block;
		content: "";
		padding-top: calc(100% - 50vh);
	}
}

.about_section .image .progressive {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	& img {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
}

.about_section .text_about {
	padding: 100px 40px;
	width: calc(40% + 40px);
	margin-left: -40px;
	position: relative;
	background: #ffffff;
	box-shadow: 2px 2px 20px 0 rgba(0,0,0,0.2);
}

.about_section .text_about .text {
	font-size: 25px;
	line-height: 30px;
	margin-bottom: 20px;
}

.about_section.revers .image {
	& .progressive {
		& img {
			object-fit: contain;
		}
	}
}

.footnote_text {
	margin-bottom: 20px;
	font-weight: 600;
	position: relative;
	padding-top: 10px;
	font-size: 16px;
	&::before {
		position: absolute;
		content: "";
		width: 200px;
		height: 2px;
		border-top: 2px solid #072140;
		left: 0;
		top: 0;
	}
}

.team_slider {
	padding-bottom: 80px;
	overflow: hidden;
	& .slick-list {
		margin-right: -30px;
	}
	.slick-arrow {
		position: absolute;
		bottom: 0;
		font-size: 0;
		line-height: 0;
		outline: none;
		border: 0;
		cursor: pointer;
		width: 50px;
		height: 50px;
		&.slick-next {
			background: url(../icons/arrow.svg) center / contain no-repeat;
			left: calc(50% + 60px);
			transform: translateX(-50%);
		}
		&.slick-prev {
			background: url(../icons/arrow.svg) center / contain no-repeat;
			left: calc(50% - 60px);
			transform: translateX(-50%) rotate(180deg);
		}
	}
	& .item_team {
		width: auto;
		margin-bottom: 0;
		border-bottom: 2px solid transparent;
		transition: border-color 0.3s ease;
	}
}

.prof_slider .item_prof {
	position: relative;
	margin-right: 30px;
	cursor: pointer;
	&::before {
		display: block;
		content: "";
		padding-top: calc(100% - 150px);
	}
	& .progressive {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		z-index: 1;
		& img {
			width: 100%;
			height: 100%;
			display: block;
			object-fit: cover;
		}
	}
	& .title {
		position: absolute;
		left: 0;
		bottom: 0;
		width: 100%;
		z-index: 2;
		font-weight: 600;
		padding: 20px;
		font-size: 20px;
		line-height: 25px;
		background: rgba(7, 33, 64, 0.9);
		color: #ffffff;
	}
}

footer {
	background: #0A2D57;
	color: #ffffff;
	padding: 30px 0;
}

.footer_menu {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	margin-bottom: 40px;
}

.footer_menu .col {
	margin-right: 40px;
	width: 370px;
	font-size: 18px;
	& .link {
		display: block;
		margin-bottom: 15px;
	}
}

.footer_menu .logo {
	display: block;
    width: 150px;
    height: 150px;
    background: url(../icons/logo.jpg) center / contain no-repeat;
	margin-bottom: 20px;
	border-radius: 50%;
	overflow: hidden;
}

.footer_menu .soc_nav {
	display: flex;
	align-items: center;
	margin-bottom: 40px;
	& a {
		display: block;
		width: 30px;
		height: 20px;
		margin-right: 20px;
		transition: all 0.3s ease;
		&:last-child {
			margin-right: 0;
		}
	}
}

.footnote_footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 15px;
	line-height: 20px;
}

.copyright {
	margin-right: 40px;
}

.footer_menu nav {
	font-size: 16px;
	text-transform: uppercase;
	margin-right: 40px;
	padding-top: 100px;
	& a {
		display: block;
		margin: 0 20px 20px 0;
	}
	&:last-child {
		margin-right: 0;
	}
}

.footer_menu .svg-icon {
	width: 100%;
	height: 100%;
	& path {
		fill: #ffffff;
	}
	& circle {
		fill: #ffffff;
	}
}

.scroll_wrap {
	max-height: 100%;
	overflow: hidden;
	overflow-y: auto;
	height: 100%;
	padding-right: 30px;
}

.slide_menu {
	display: none;
	position: absolute;
	top: 0;
	right: 0;
	width: 400px;
	height: calc(100vh - 50px);
	background: #0b3365;
	z-index: 4;
	padding: 50px 0 30px 30px;
	font-size: 20px;
	line-height: 25px;
	font-weight: 500;
	text-transform: none;
	& a {
		display: block;
		padding: 5px 0;
		margin-bottom: 5px;
		transition: all 0.3s ease;
		&.blur {
			opacity: 0.6;
		}
		&.active {
			text-decoration: underline;
		}
	}
	& .close {
		position: absolute;
		width: 30px;
		height: 30px;
		cursor: pointer;
		top: 20px;
		right: 20px;
		&::before, &::after {
			position: absolute;
			content: "";
			width: 100%;
			height: 2px;
			background: #ffffff;
			left: 50%;
			top: 50%;
			transition: all 0.3s ease;
		}
		&::before {
			transform: translate(-50%, -50%) rotate(45deg);
		}
		&::after {
			transform: translate(-50%, -50%) rotate(-45deg);
		}
	}
}

.top_fixed .slide_menu {
	position: fixed;
	height: 100vh;
}

footer a {
	transition: all 0.3s ease;
}

.contacts_section {
	width: 50%;
	font-size: 20px;
	line-height: 25px;
	padding-right: 20px;
	& a:not(.button) {
		color: #4E85E9;
	}
	& .address {
		padding-left: 30px;
		background: url(../icons/pin.svg) left 0 center / contain no-repeat;
		background-size: 20px 20px;
	}
	& .phone {
		padding-left: 60px;
		background: url(../icons/phone.svg) left 30px center / contain no-repeat;
		background-size: 20px 20px;
	}
	& .mail {
		padding-left: 60px;
		background: url(../icons/mail.svg) left 30px center / contain no-repeat;
		background-size: 20px 20px;
	}
}

.item_content_page .contacts_section {
	width: auto;
}

.contacts_section .item_contact {
	margin-bottom: 30px;
}

.contacts_section .title {
	font-weight: 500;
	margin-bottom: 15px;
}

.link_slider {
	margin-bottom: 60px;
	overflow: hidden;
	& .slick-list {
		margin-right: -20px;
	}
	& .slick-arrow {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		font-size: 0;
		line-height: 0;
		border: 0;
		outline: none;
		width: 40px;
		height: 40px;
		z-index: 1;
		padding: 0;
		background: #ffffff url(../icons/arrow.svg) center / contain no-repeat;
		&.slick-prev {
			left: 70px;
			transform: translateY(-50%) rotate(-180deg);
		}
		&.slick-next {
			right: 70px;
		}
	}
}

.link_slider .item_link {
	margin-right: 20px;
	height: 150px;
	background: rgba(126, 186, 255, 0.2);
	position: relative;
	padding: 5px;
	border-radius: 2px;
	overflow: hidden;
}

.link_slider .progressive {
	width: 100%;
	height: 100%;
	& img {
		height: 100%;
		width: 100%;
	}
}

.library .wrap:first-child {
	padding-right: 0;
}

.library .image {
	margin-bottom: 20px;
	display: flex;
	align-items: center;
	padding: 10px 0 10px 70px;
	background: #7EBAFF;
	border-radius: 5px 0 0 50px;
	& .wrap {
		margin: 0;
		width: 100%;
	}
	& .progressive {
		width: 500px;
		height: 110px;
		overflow: hidden;
		border-radius: 10px;
		display: block;
		& img {
			height: 100%;
			display: block;
		}
	}
}

.library .text {
	margin-bottom: 40px;
	padding: 0 70px;
}

.page_banner {
	width: 100%;
	margin-bottom: 60px;
	position: relative;
	overflow: hidden;
	& img {
		object-fit: cover;
	}
}

.page_banner .image_wrap {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	z-index: 1;
}

.page_banner .text_wrap {
	position: relative;
	z-index: 2;
	color: #ffffff;
	background: linear-gradient(153.43deg, rgb(0, 0, 0, 0.5) 50%,rgb(72, 71, 71, 0.2) 100%);
	padding: 100px 0 20px 0;
	display: flex;
	& .wrap {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		margin: 0;
		width: 100%;
	}
	& h1 {
		margin-bottom: 60px;
	}
}

.page_banner.item_banner .text_wrap {
	min-height: 400px;
}

.breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	font-size: 18px;
	padding-left: 0;
	margin-bottom: 0;
	& li {
		list-style: none;
		margin: 0 10px 10px 0;
		& a {
			display: block;
			padding-right: 25px;
			background: url(../icons/arrow_w.svg) right 0 center / contain no-repeat;
			background-size: 20px 20px;
			transition: color 0.3s ease;
		}
	}
}

.pagination {
	display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.pagination .arrow {
	width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    transition: all 0.3s ease;
}

.pagination .prev {
	margin-right: 10px;
}

.pagination .to_page {
	height: 45px;
    min-width: 45px;
    margin-right: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    transition: all 0.3s ease;
}

.pagination .to_page.active {
	background: #7EBAFF;
    color: #ffffff;
}

.pagination .disabled {
	cursor: default;
}

.page .news_list {
	margin-bottom: 40px;
}

.news_page {
	padding: 30px;
	background: #ffffff;
	border-radius: 5px;
}

.news_page .text {
	margin-bottom: 40px;
	& a {
		color: #4E85E9;
	}
}

.news_page .image_new {
	margin-bottom: 20px;
	width: 100%;
	height: 400px;
	& .progressive {
		width: 100%;
		height: 100%;
		& img {
			height: 100%;
			object-fit: cover;
		}
	}
}

.news_page .date {
	margin-bottom: 60px;
	font-style: italic;
	color: #5b7a9f;
}

.page .events_list {
	margin-bottom: 40px;
}

.inner_page {
	display: flex;
	align-items: flex-start;
}

.inner_page .wrap_menu {
	width: 350px;
	margin-right: 60px;
}

.inner_page .menu {
	width: 100%;
	border-radius: 5px;
	background: #ffffff;
	padding: 20px 20px 20px 0;
	font-size: 18px;
	font-weight: 500;
	& a {
		display: block;
		padding: 5px 0 5px 20px;
		margin-bottom: 4px;
		transition: all 0.3s ease;
		&:last-child {
			margin-bottom: 0;
		}
		&.active {
			color: #ffffff;
			background: #356ba4;
			border-radius: 0 4px 4px 0;
		}
	}
}

.inner_page .content_page {
	width: calc(100% - 410px);
	& .wrap_items {
		margin-bottom: 80px;
	}
	& a:not(.title, .button, .name, .to_page, .prof_item) {
		color: #1956a0;
	}
	& .item_employees {
		padding: 20px;
		border-radius: 5px;
		background: #ffffff;
	}
}

.content_page .item_content_page {
	margin-bottom: 60px;
	padding: 20px;
	border-radius: 5px;
	background: #ffffff;
	& .title {
		display: block;
		margin-bottom: 20px;
		font-size: 25px;
		line-height: 30px;
		font-weight: 500;
		transition: all 0.3s ease;
	}
	& .wrap_preview {
		margin-bottom: 35px;
		& .text {
			margin-bottom: 20px;
			font-size: 20px;
			line-height: 25px;
		}
		& a {
			color: #7EBAFF;
		}
	}
	& .preview {
		margin-bottom: 20px;
	}
	& .date {
		display: inline-block;
		border-top: 2px solid #072140;
		padding-top: 10px;
		font-style: italic;
	}
	& .progressive {
		display: block;
		height: 420px;
		margin-bottom: 20px;
		border-radius: 4px;
		& img {
			height: 100%;
			object-fit: cover;
		}
	}
	& .item_doc {
		padding: 0;
		border-radius: 0;
		background: none;
		&:last-child {
			margin-bottom: 0;
		}
	}
}

.simplesearch-highlight {
	font-weight: 500;
}

.hidden_inputs {
	display: none;
}

.item_doc {
	margin-bottom: 40px;
	padding: 20px;
	border-radius: 5px;
	background: #ffffff;
	& .name {
		display: block;
		margin-bottom: 10px;
		font-size: 22px;
		line-height: 28px;
		font-weight: 500;
		transition: all 0.3s ease;
		color: #072140;
	}
	& .footnote_name {
		margin-bottom: 10px;
	}
	& .date {
		display: inline-block;
		border-top: 2px solid #072140;
		padding-top: 10px;
		font-style: italic;
	}
	& nav {
		display: flex;
		flex-wrap: wrap;
		&:not(:last-child) {
			margin-bottom: 20px;
		}
		& .button span {
			padding-left: 30px;
			position: relative;
			&::before {
				position: absolute;
				content: "";
				left: 0;
				top: 50%;
				transform: translateY(-50%);
				width: 20px;
				height: 20px;
			}
		}
	}
	& .file {
		margin-right: 15px;
		& span::before {
			background: url(../icons/download.svg) center / contain no-repeat;
		}
	}
	& .sign {
		& span::before {
			background: url(../icons/signature.svg) center / contain no-repeat;
		}
	}
}

.video_player {
	position: relative;
    overflow: hidden;
    min-height: 420px;
	margin-bottom: 20px;
    border-radius: 4px;
	& iframe {
		width: 100%;
		height: 100%;
		position: absolute;
		left: 0;
		top: 0;
	}
}

.video_player .preview {
	position: absolute;
    width: 100%;
    height: 100%;
    z-index: 2;
	& .progressive {
		width: 100%;
		height: 100%;
		& img {
			height: 100%;
			object-fit: cover;
			object-position: center;
		}
	}
}

.content_page .item_content_page .video_player {
	& .progressive {
		width: 100%;
		height: 100%;
		border-radius: 0;
		margin-bottom: 0;
	}
}

.video_player .play {
	z-index: 3;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    cursor: pointer;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: #7EBAFF url(../icons/play.svg) center / contain no-repeat;
    background-size: 30px 30px;
}

.content_page.item_inner .item_content_page {
    & .title {
		font-size: 40px;
		line-height: 45px;
		margin-bottom: 40px;
		font-weight: 600;
	}
	& .gallery_wrap {
		& .title {
			margin-bottom: 20px;
	        font-size: 25px;
	        line-height: 30px;
	        font-weight: 500;
		}
	}
}

.gallery_wrap {
	margin-bottom: 40px;
	& .title {
		font-size: 20px;
		line-height: 25px;
		font-weight: 500;
		margin-bottom: 30px;
	}
}

.gallery_wrap .gallery_list {
	display: flex;
	flex-wrap: wrap;
	margin-right: -20px;
}

.gallery_wrap .progressive.item_gallery  {
	margin: 0 20px 20px 0;
	width: calc((100% / 6) - 20px);
	height: auto;
	cursor: pointer;
	& img {
		height: 100%;
		position: absolute;
		left: 0;
		top: 0;
		object-fit: cover;
	}
	&::after {
		display: block;
		content: "";
		padding-top: calc(100% - 50px);
	}
}

.wrap_preview .gallery_wrap .progressive.item_gallery {
	width: calc((100% / 5) - 20px);
}

.slider_popup {
	position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(78, 133, 233, 0.4);
    backdrop-filter: blur(5px);
    padding: 15px 40px;
    z-index: 7;
    display: none;
}

.slider_popup .close {
	position: absolute;
	width: 40px;
	height: 40px;
	cursor: pointer;
	top: 30px;
	right: 30px;
	z-index: 1;
	&::before, &::after {
		position: absolute;
		content: "";
		width: 100%;
		height: 2px;
		background: #ffffff;
		left: 50%;
		top: 50%;
		transition: all 0.3s ease;
	}
	&::before {
		transform: translate(-50%, -50%) rotate(45deg);
	}
	&::after {
		transform: translate(-50%, -50%) rotate(-45deg);
	}
}

.slider_popup .wrap_slider {
	position: relative;
    width: 800px;
    margin: 0 auto;
    height: 100%;
}

.slider_popup .slider_gallery {
	height: 100%;
	display: flex;
	align-items: center;
}

.slider_popup .slick-arrow {
	position: fixed;
	top: 50%;
	transform: translateY(-50%);
	font-size: 0;
	line-height: 0;
	border: 0;
	outline: none;
	width: 40px;
	height: 40px;
	z-index: 1;
	padding: 0;
	background: #ffffff url(../icons/arrow.svg) center / contain no-repeat;
	&.slick-next {
		right: 70px;
	}
	&.slick-prev {
		left: 70px;
		transform: translateY(-50%) rotate(180deg);
	}
}

.slider_popup .slider_gallery .slick-list {
	display: flex;
	align-items: center;
    position: absolute;
    left: 0;
    top: 50%;
	transform: translateY(-50%);
    width: 100%;
	height: 100%;
}

.slider_popup .slider_gallery .slick-track {
	display: flex;
	align-items: center;
	height: 100%;
}

.slider_popup .slick-arrow.slick-disabled {
	opacity: 0;
	visibility: hidden;
}

.search_page {
	display: flex;
	align-items: flex-start;
	padding: 20px;
	border-radius: 5px;
	background: #ffffff;
}

.search_page .search_secton {
	width: calc(100% - 300px);
    margin-right: 50px;
}

.search_page .nav_search {
	width: 250px;
	& button {
		display: block;
		width: 100%;
	}
}

.feedback_list {
	padding: 20px;
	background: #ffffff;
	border-radius: 5px;
}

.search_page .clear_search {
	width: 100%;
}

.result_section h4 {
	padding-left: 20px;
}

.result_section .item_content_page {
	display: block;
	padding: 20px;
	border-radius: 5px;
	background: #ffffff;
}

.result_section .item_content_page:not(:last-child) {
	margin-bottom: 40px;
}

.result_section .title {
	margin-bottom: 20px;
	font-size: 25px;
	line-height: 30px;
	font-weight: 500;
	transition: all 0.3s ease;
}

.result_section .preview {
	margin-bottom: 20px;
}

.result_section .date {
	display: inline-block;
	border-top: 2px solid #072140;
	padding-top: 10px;
	font-style: italic;
}

.search_wrap {
	position: absolute;
	left: 0;
	top: calc(100% + 10px);
	width: 100%;
	z-index: 3;
	background: rgba(255,255,255, 0.8);
	box-shadow: 0 0 20px 0 #0A2D57;
	padding: 20px;
	border-radius: 5px;
	display: none;
}

.search_wrap .flex {
	display: flex;
}

.search_wrap input {
	width: calc(100% - 230px);
	margin-right: 30px;
}

.search_wrap .search_btn {
	width: 200px;
}

.feedback .wrap_fields {
	margin-bottom: 40px;
}

.feedback .wrap_input {
	margin-bottom: 20px;
}

.feedback .wrap_input .label {
	margin-bottom: 10px;
	color: #3e3f41;
}

.feedback .wrap_input.error .label {
	color: rgb(219, 10, 10);
}

.scroll_top {
	position: fixed;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    cursor: pointer;
    background: #4E85E9 url(../icons/arrow_w.svg) center / contain no-repeat;
	transform: rotate(-90deg);
    background-size: 30px 30px;
    bottom: 50px;
    display: inline;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    z-index: 4;
    margin-left: -50px;
}

.scroll_top.active {
	opacity: 1;
	visibility: visible;
}

.agree {
	margin-bottom: 20px;
	& a {
		color: #4E85E9;
	}
	& input[type="checkbox"] {
		display: none;
	}
	& label {
		cursor: pointer;
		padding-left: 30px;
		position: relative;
		display: block;
		&::before {
			position: absolute;
			left: 0;
			top: 4px;
			content: "";
			width: 19px;
			height: 19px;
			background: #ffffff;
			border: 4px solid #ffffff;
			box-shadow: 0 0 0 1px #4E85E9;
		}
	}
	& input[type="checkbox"]:checked + label::before {
		background: #4E85E9;
	}
}

.nav_filter {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 40px;
	margin-right: -15px;
	padding-top: 40px;
}

.nav_filter .item_nav {
	cursor: pointer;
    padding: 10px 15px;
    margin: 0 15px 10px 0;
    background: #DDE2E6;
    transition: all 0.3s ease;
	&.active {
		background: #7EBAFF;
        color: #ffffff;
	}
}

.prof_list {
	display: flex;
	flex-wrap: wrap;
	margin-right: -30px;
}

.prof_list .item_prof {
	display: block;
	position: relative;
    margin: 0 30px 40px 0;
	width: calc((100% / 3) - 30px);
	&::before {
		display: block;
        content: "";
        padding-top: calc(100% - 100px);
	}
}

.prof_list .item_prof .progressive {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	& img {
		height: 100%;
		object-fit: cover;
	}
}

.prof_list .item_prof .title {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	z-index: 2;
	font-weight: 600;
	padding: 20px;
	font-size: 20px;
	line-height: 25px;
	background: rgba(7, 33, 64, 0.9);
	color: #ffffff;
}

.list_prof_page .item_list {
	padding: 20px 30px;
	&:nth-child(even) {
		background: #e1efff;
	}
	&:nth-child(odd) {
		background: #b1d1f6;
	}
}

.list_prof_page .item_list.head {
	background: #4E85E9;
	font-weight: 500;
	font-size: 20px;
	line-height: 25px;
	border-radius: 5px 5px 0 0;
	color: #ffffff;
}

.list_prof_page .item_list .title {
	font-weight: 500;
	font-size: 16px;
	line-height: 18px;
	margin-bottom: 5px;
	color: rgb(73, 83, 95);
}

.list_prof_page .item_list .inf {
	font-weight: 500;
}

.list_prof_page .item_list .row:not(:last-child) {
	margin-bottom: 5px;
}

.list_prof_page .item_list .price {
	display: inline-block;
	text-decoration: underline;
	font-size: 18px;
}

.about_prof {
	font-size: 25px;
	line-height: 35px;
	margin-bottom: 35px;
}

.table {
	font-size: 20px;
	line-height: 25px;
	border: 2px solid #000000;
	margin-bottom: 20px;
}

.table .table_head {
	font-weight: 500;
	padding: 10px;
	background: #b1d1f6;
	border-bottom: 2px solid #000000;
}

.table .tr {
	display: flex;
	border-bottom: 1px solid #000000;
	&:last-child {
		border-bottom: 0;
	}
}

.table .td {
	&:first-child {
		width: 280px;
		padding: 10px 30px 10px 10px;
		border-right: 1px solid #000000;
		font-weight: 500;
	}
	&:last-child {
		width: calc(100% - 280px);
		padding: 10px 10px 10px 30px;
	}
}

.table_footnote {
	font-weight: 600;
}

.page_bvi {
	display: block;
	margin-bottom: 30px;
}

.founder_item {
	margin-bottom: 20px;
}

.item_content_page .contacts_section {
	& .phone {
		padding-left: 30px;
		background: url(../icons/phone.svg) left 0 center / contain no-repeat;
        background-size: 20px 20px;
	}
	& .mail {
		padding-left: 30px;
        background: url(../icons/mail.svg) left 0 center / contain no-repeat;
        background-size: 20px 20px;
	}
}

.content_page .wrap_flex_filter {
	margin-bottom: 60px;
}

.mobile_button {
	display: none;
}

.content_page .flex_filter {
	display: flex;
	flex-wrap: wrap;
	padding: 10px 20px;
	border-radius: 5px;
	background: #ffffff;
	& a {
		display: block;
		padding: 5px 10px;
		border-radius: 5px;
		margin: 0 5px 5px 0;
		transition: all 0.3s ease;
		text-decoration: underline;
		border: 1px solid transparent;
		&.active {
			border-color: #679ad1;
		}
	}
}

.title_popup {
	display: none;
}

.item_content_page .wrap_inf {
	margin-bottom: 15px;
	font-weight: 600;
	&:last-child {
		margin-bottom: 0;
	}
	& .label {
		font-weight: 400;
    	margin-bottom: 5px;
	}
	& a {
		display: block;
		&:not(:last-child) {
			margin-bottom: 5px;
		}
	}
}

.ajax_form .error {
    color: rgb(219, 10, 10);
}

.af-message-success {
	background-color: green!important;
}

.af-message-error {
	background-color: brown!important;
}

.af-message-info {
	background-color: black!important;
}

.ajax_form.af_example {
    width: 100%;
}
.form_message {
	display: none;
}

.content_page  .gallery_item {
	display: block;
}

.content_page  .gallery_item.item_content_page .title {
	color: #072140;
}

.gallery_item .footnote {
	color: #072140;
	font-size: 16px;
	line-height: 20px;
	margin-bottom: 5px;
}

.content_page .item_content_page.gallery_item .progressive {
	width: 300px;
	height: 150px;
}

.gallery_item .date {
	color: #072140;
}

.page_404 {
	padding-top: 90px;
	& a {
		color: #7EBAFF;
	}
}

.content_page .prof_item {
    display: block;
	margin-bottom: 25px;
	font-size: 22px;
    line-height: 28px;
    font-weight: 500;
	color: #072140;
	transition: all 0.3s ease;
	padding: 20px;
	border-radius: 10px;
	background: rgba(78, 133, 233, 0.2);
	& span {
		text-decoration: underline;
	}
}

#jGrowl {
	display: none;
}

.team_list {
	display: flex;
	flex-wrap: wrap;
	margin-right: -30px;
}

.item_team {
	width: calc(25% - 30px);
    margin: 0 30px 30px 0;
    position: relative;
    overflow: hidden;
	display: block;
	border-radius: 5px;
	background: #ffffff;
	transition: box-shadow 0.3s ease;
	&::after {
		display: block;
		content: "";
		padding-top: calc(100% + 120px);
	}
	& .progressive {
		width: calc(100% - 20px);
    	height: calc(100% - 20px);
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		top: 10px;
		& img {
			height: 100%;
    		object-fit: cover;
		}
	}
	& .content_item {
		position: absolute;
		left: 0;
		bottom: 0;
		width: 100%;
		padding: 10px;
		background: #ffffff;
	}
	& .job_title {
		font-size: 18px;
		line-height: 20px;
		color: #027387;
		font-style: italic;
		margin-bottom: 5px;
		font-weight: 500;
	}
	& .name {
		font-size: 20px;
		line-height: 25px;
		font-weight: 500;
	}
}

img.emoji {
	width: auto;
	height: auto;
}

.team_page {
	display: flex;
	align-items: flex-start;
	padding-top: 30px;
	margin-bottom: 40px;
}

.team_page .text {
	margin-right: 50px;
    width: calc(100% - 450px);
	padding: 20px;
	border-radius: 5px;
	background: #ffffff;
}

.team_page .head_title {
	font-weight: 500;
	font-size: 25px;
	line-height: 30px;
	font-style: italic;
	margin-bottom: 30px;
	margin-right: -20px;
	padding: 10px;
	background: rgb(179, 218, 255);
}

.team_page .wrap_image {
	width: 400px;
    height: 520px;
    padding: 20px;
	background: #ffffff;
	border-radius: 5px;
}

.team_page .wrap_image .progressive {
	width: 100%;
	height: 100%;
	& img {
		height: 100%;
		object-fit: cover;
	}
}

.promo_section {
	padding: 150px 0;
	background: #6ba6dc;
	color: #ffffff;
	font-size: 30px;
	line-height: 35px;
	font-weight: 500;
	text-align: center;
	text-transform: uppercase;
}

.slide_list .wrap_name {
	display: flex;
	align-items: center;
	font-weight: 500;
	& .name {
		width: calc(100% - 230px);
		margin-right: 30px;
	}
	& .button {
		width: 200px;
	}
}

.slide_list .list {
	padding-top: 20px;
	display: none;
}

.top_nav {
	display: flex;
}

.top_nav .wrap_drop {
	margin-right: 30px;
	width: calc(50% - 15px);
}

.top_nav .wrap_drop:last-child {
	margin-right: 0;
}

.wrap_drop .label {
	font-size: 16px;
	line-height: 20px;
	margin-bottom: 5px;
	color: #3070B3;
}

.wrap_drop.error .label {
	color: rgb(219, 10, 10);
}

.drop_list {
	position: relative;
}

.drop_list .name {
	cursor: pointer;
	padding: 13px 50px 13px 20px;
    border-radius: 4px;
    font-weight: 500;
    color: #3070B3;
    border: 1px solid #3070B3;
	position: relative;
	&::before {
		position: absolute;
		content: "";
		width: 20px;
		height: 20px;
		top: 50%;
		right: 20px;
		transform: translateY(-50%) rotate(90deg);
		background: url(../icons/arrow.svg) center / contain no-repeat;
	}
	&.active {
		background: rgba(126, 186, 255, 0.2);
	}
}

.error .drop_list .name {
	border-color: rgb(219, 10, 10);
}

.drop_list .list {
	position: absolute;
	left: 0;
	top: calc(100% + 5px);
	background: #ffffff;
	border-radius: 4px;
	padding: 10px 0;
	box-shadow: 0 0 10px 1px rgba(126, 186, 255, 0.4);
	width: 100%;
	font-size: 18px;
	line-height: 20px;
	display: none;
	z-index: 1;
}

.drop_list .list .item_list {
	padding: 10px 20px;
	cursor: pointer;
	transition: all 0.3s ease;
}

.drop_list .list .item_list.active {
	background: #3070B3;
	color: #ffffff;
}

.flex_tab_nav {
	display: flex;
	margin-bottom: 30px;
}

.flex_tab_nav .name_nav {
	margin-right: 30px;
}

.flex_tab_nav .item_nav {
	position: relative;
	cursor: pointer;
	padding-left: 30px;
	margin-right: 30px;
	&::before {
		position: absolute;
		content: "";
		width: 20px;
		height: 20px;
		border-radius: 50%;
		box-shadow: 0 0 0 1px #3070B3;
		border: 4px solid #ffffff;
		background: #ffffff;
		left: 0;
		top: 2px;
	}
	&.active::before {
		background: #3070B3;
	}
}

.wrap_tab .tab_form:not(:first-child) {
	display: none;
}

.footnote_message {
	margin-bottom: 30px;
	font-size: 16px;
	line-height: 20px;
	color: #072140;
	& p {
		margin-bottom: 10px;
	}
}

.wrap_file {
	padding: 20px;
	border: 1px solid #3070B3;
	border-radius: 4px;
	& input {
		display: none;
	}
	& label {
		cursor: pointer;
		display: inline-block;
		padding: 10px;
		border-radius: 4px;
		color: #ffffff;
		background: #3070B3;
		transition: all 0.3s ease;
	}
}

.item_employees:not(:last-child) {
	margin-bottom: 60px;
}

.item_employees.image {
	display: flex;
}

.item_employees .wrap_image {
	width: 200px;
	height: 300px;
	padding: 5px;
	border-radius: 5px;
	background: #f8f8f8;
	margin-right: 20px;
	position: relative;
}

.content_page .item_content_page .item_employees .progressive {
	position: absolute;
	left: 5px;
	top: 5px;
	width: calc(100% - 10px);
	height: calc(100% - 10px);
	margin-bottom: 0;
	border-radius: 0;
	& img {
		height: 100%;
	}
}

.files_wrap {
	margin-bottom: 40px;
}

.item_employees .progressive {
	position: absolute;
	left: 5px;
	top: 5px;
	width: calc(100% - 10px);
	height: calc(100% - 10px);
	& img {
		height: 100%;
		object-fit: cover;
	}
}

.item_employees.image .content_team {
	width: calc(100% - 220px);
}

.item_employees .name {
	font-size: 22px;
    line-height: 28px;
    margin-bottom: 15px;
	font-weight: 500;
}

.item_employees .wrap_inf:not(:last-child) {
	margin-bottom: 15px;
}

.item_employees .wrap_inf a {
	display: block;
	&:not(:last-child) {
		margin-bottom: 5px;
	}
}

.wrap_text:not(:last-child) {
	margin-bottom: 15px;
}

.item_employees .wrap_inf .label {
	font-size: 18px;
	font-style: italic;
}

.wrap_bg {
	padding: 60px 0;
	&.blue {
		background: rgba(126, 186, 255, 0.2);
	}
}

.feedback_wrap_list {
	display: none;
}

.feedback_list .item_feedback {
	display: flex;
	font-weight: 500;
}

.feedback_list .wrap_inf:not(:last-child) {
	margin-right: 30px;
}

.feedback_list .label {
	font-size: 18px;
	font-weight: 400;
}

.fixed_buttons {
	text-align: right;
}

.print_page {
	color: #000000;
	padding-bottom: 60px;
}

.print_page .wrap {
	width: 800px;
}

.print_page header {
	display: flex;
	justify-content: space-between;
	background: none;
	padding: 40px 0;
	color: #000000;
}

.print_page header .logo {
	filter: grayscale(1);
}

.print_page .text_header {
	width: calc(100% - 90px);
}

.table_page {
	border: 1px solid #000000;
	&:not(:last-child) {
		margin-bottom: 40px;
	}
}

.table_page .head {
	display: flex;
	align-items: flex-start;
	font-weight: 600;
	border-bottom: 1px solid #000000;
}

.table_page .th, .table_page .td {
	padding: 10px;
	width: 70%;
	&:first-child {
		border-right: 1px solid #000000;
		width: 30%;
	}
}

.table_page .tr {
	display: flex;
	align-items: flex-start;
	&:not(:last-child) {
		border-bottom: 1px solid #000000;
	}
}

.table_page .head.center {
	padding: 10px;
}

.schedule_section {
	padding: 20px;
	border-radius: 5px;
	background: #ffffff;
	&:not(:last-child) {
		margin-bottom: 40px;
	}
}

.schedule_list {
	background: rgba(126, 186, 255, 0.2);
    border-radius: 5px;
	&:not(:last-child) {
		margin-bottom: 20px;
	}
	& .name {
		font-weight: 500;
		padding: 20px 55px 20px 20px;
		cursor: pointer;
		position: relative;
		&::before {
			position: absolute;
			content: "";
			width: 25px;
			height: 25px;
			right: 20px;
			top: 20px;
			background: url(../icons/arrow.svg) center / contain no-repeat;
			transform: rotate(90deg);
		}
		&.active::before {
			transform: rotate(-90deg);
		}
	}
	& .wrap_list {
		padding: 0 20px 20px 20px;
		display: none;
	}
	& .list {
		padding-top: 15px;
		display: flex;
		flex-wrap: wrap;
		margin: 0 -10px -10px 0;
	}
	& .item {
		cursor: pointer;
		padding: 10px 20px;
		border-radius: 5px;
		background: #ffffff;
		margin: 0 10px 10px 0;
		transition: all 0.3s ease;
	}
}

.time_table {
	margin-bottom: 20px;
	hyphens: auto;
	& .tr {
		display: flex;
		&.head {
			font-weight: 500;
			background: #0A2D57;
			color: #ffffff;
			padding: 5px 0;			
		}
		&:not(.head):nth-child(odd) {
			background: rgba(126, 186, 255, 0.2);
		}
	}
	& .td {
		flex: 1;
		padding: 5px 10px;
	}
}

.schedule_section .footnote_table {
	font-style: italic;
	& span {
		font-weight: 500;
	}
}

.popup {
	position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: none;
    align-items: center;
    z-index: 7;
    background: rgba(78, 133, 233, 0.4);
    backdrop-filter: blur(5px);
    z-index: 7;
}

.popup .wrap_popup {
	width: 100%;
    height: 100%;
    max-height: 100%;
    overflow: hidden;
    padding: 40px 20px;
}

.popup .content_popup {
	max-width: 1470px;
    margin: 0 auto;
    background: #FFFFFF;
    overflow: hidden;
    position: relative;
    border-radius: 5px;
    height: 100%;
    padding: 30px 5px 30px 0;
}

.popup .item_table {
	display: flex;
	align-items: center;
	hyphens: auto;
	&.head {
		background: rgba(78, 133, 233, 0.4);
		box-shadow: 0px 3px 5px 0px rgba(126, 186, 255, 0.5);
		& .tr {
			width: 85%;
		}
	}
	& .day {
		padding: 5px 10px;
		width: 15%;
		align-self: stretch;
		display: flex;
		align-items: center;
	}
	& .td {
		padding: 5px 15px;
		&:nth-child(1) {
			width: 10%;
		}
		&:nth-child(2) {
			width: 15%;
		}
		&:nth-child(3) {
			width: 30%;
		}
		&:nth-child(4) {
			width: 30%;
		}
		&:nth-child(5) {
			width: 15%;
		}
	}
	& .tr {
		display: flex;
		padding: 5px 0;
	}
	& .wrap_tr {
		width: 85%;
	}
	&:not(.head) .day {
		border-right: 1px solid #618ee299;
	}
	&:not(.head) .tr:nth-child(even) {
		background: rgba(126, 186, 255, 0.2);
	}
	&:not(:last-child) {
		&:not(.head) .day {
			border-bottom: 1px solid #618ee299;
		}
		& .wrap_tr {
			border-bottom: 1px solid #618ee299;
		}
	}
}

.popup .popup_table {
	max-height: calc(100% - 100px);
    overflow: hidden;
    overflow-y: auto;
    padding: 0 30px 30px 30px;
    height: 100%;
}

.head_table {
	padding: 0 30px;
}

.popup .title {
	font-size: 25px;
	line-height: 30px;
	font-weight: 500;
	margin-bottom: 15px;
	padding-right: 20px;
}

.popup .close {
	position: absolute;
    width: 30px;
    height: 30px;
    cursor: pointer;
    top: 20px;
    right: 20px;
    overflow: hidden;
    z-index: 6;
	&::before, &::after {
		position: absolute;
        content: "";
        width: 100%;
        height: 2px;
        background: #0A2D57;
        left: 50%;
        top: 50%;
        transition: all 0.3s ease;
	}
	&::before {
		transform: translate(-50%, -50%) rotate(45deg);
	}
	&::after {
		transform: translate(-50%, -50%) rotate(-45deg);
	}
}

.files_list {
	counter-reset: number_list;
	& a.name_file {
		display: block;
        margin-bottom: 20px;
        font-size: 22px;
        line-height: 28px;
        font-weight: 500;
        text-decoration: underline;
		&::before {
			display: inline-block;
            content: counter(number_list, decimal-leading-zero) ".";
            counter-increment: number_list;
            margin-right: 10px;
            color: #696969;
		}
	}
}

.wrap_banner_menu {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: rgba(255, 255, 255, 0.3);
	z-index: 2;
	padding: 30px;
	flex-direction: column;
	justify-content: space-between;
	display: none;
	max-height: 100%;
	overflow: hidden;
	overflow-y: auto;
	& .banner_menu {
		display: grid;
		grid-row-gap: 10px;
		grid-template-areas:
			"new menu1"
			"new menu2"
			"new menu3";
		grid-template-columns: calc(calc((100% / 3)) * 2) calc(100% / 3);
		grid-template-rows: 1fr 1fr 1fr;
		position: relative;
		margin-bottom: 30px;
		opacity: 0;
		transition: all 0.3s ease;
		color: #000000;
		& .item_menu {
			position: relative;
			padding: 30px 70px 30px 30px;
			border-radius: 10px;
			background: rgba(255, 255, 255, 0.7);
			transition: all 0.3s ease;
			cursor: pointer;
			& .icon {
				position: absolute;
				top: 20px;
				right: 20px;
				width: 50px;
				height: 50px;
				& svg {
					width: 100%;
					height: 100%;
					transition: all 0.3s ease;
					fill: #ffffff;
				}
				& img {
					position: static;
					object-fit: contain;
					display: block;
				}
			}
			&:nth-child(2) {
				grid-area: new;
				margin-right: 30px;
				padding-right: 195px;
				& .list a {
					display: block;
					margin-bottom: 10px;
				}
				& .title {
					font-size: 25px;
					line-height: 30px;
				}
				& .icon {
					width: 150px;
					height: 150px;
				}
			}
			&:nth-child(1) {
				grid-area: menu1;
				& .list a {
					display: block;
					overflow: hidden;
					white-space: nowrap;
					text-overflow: ellipsis;
				}
			}
			&:nth-child(3) {
				grid-area: menu2;
			}
			&:nth-child(4) {
				grid-area: menu3;
			}
		}
		& .list {
			padding-left: 10px;
			font-size: 18px;
			line-height: 20px;
			margin-bottom: -10px;
			& a {
				margin-right: 10px;
				transition: all 0.3s ease;
				display: inline-block;
			}
		}
		& .title {
			margin-bottom: 15px;
			font-weight: 600;
			display: block;
		}
	}
	& .footer_banner {
		padding: 20px;
		border-radius: 10px;
		font-weight: 500;
		color: #ffffff;
		box-shadow: 0 0 10px 0 rgba(255, 255, 255, 0.6);
		opacity: 0;
		transition: all 0.3s ease;
		& .item_inf {
			display: block;
			padding-left: 30px;
			transition: all 0.3s ease;
			&:not(:last-child) {
				margin-bottom: 10px;
			}
			&.phone {
				background: url(../icons/phone_w.svg) left 0 top 2px / contain no-repeat;
				background-size: 20px 20px;
			}
			&.mail {
				background: url(../icons/mail_w.svg) left 0 top 2px / contain no-repeat;
				background-size: 20px 20px;
			}
			&.adddress {
				background: url(../icons/pin_w.svg) left 0 top 2px / contain no-repeat;
				background-size: 20px 20px;
			}
		}
	}
	&.active {
		& .footer_banner {
			opacity: 1;
		}
		& .banner_menu {
			opacity: 1;
		}
	}
}

.wrap_content {
	padding: 20px;
	border-radius: 5px;
	background: #ffffff;
	margin-bottom: 50px;
}

.bvi-active {
	& .promo_section {
		border: 2px solid;
	}
	& .about_section .text_about {
		border: 1px solid;
	}
	& .events_list .item_events {
		border: 1px solid;
	}
	& .flex_nav .item_nav {
		border: 1px solid;
	}
	& .tab .text_wrap {
		border: 1px solid;
	}
	& .item_team {
		border: 1px solid;
	}
	& .link_slider .item_link {
		border: 1px solid;
	}
	& footer {
		border-top: 1px solid;
	}
	& .contact_section {
		border-top: 1px solid;
	}
	& .slide_menu {
		border: 1px solid;
		& .close {
			&::before, &::after {
				background: #000000;
			}
		}
	}
	& .slider_popup .close {
		&::before, &::after {
			background: #000000;
		}
	}
	& .schedule_list {
		& .name {
			border: 1px solid;
		}
		& .item {
			border: 1px solid;
		}
	}
	& .popup .item_table {
		&.head {
			border-bottom: 1px solid;
		}
		& .tr:not(:last-child) {
			border-bottom: 1px solid;
		}
	}
	& .inner_page .menu {
		border: 1px solid;
		& a {
			&.active {
				border: 1px solid;
			}
		}
	}
	& .news_page .contact_section {
		border: 1px solid;
	}
	& .content_page .flex_filter {
        & a {
            &.active {
                border: 4px solid;
            }
        }
    }
	& .wrap_banner_menu {
		display: block;
		& .banner_menu {
			opacity: 1;
		}
		& .footer_banner {
			opacity: 1;
			border: 1px solid;
		}
		& .item_menu {
			border: 1px solid;
		}
	}
	& .slider_popup .slick-arrow {
		background: none;
		width: auto;
		&.slick-prev {
			left: 70px;
			transform: translateY(-50%);
		}
	}
	& .banner {
		min-height: calc(100vh - 54px);
	}
	& .item_new {
		border: 1px solid;
	}
}

table {
	display: flex;
	max-width: 100%;
	overflow: hidden;
	overflow-x: auto;
	& tbody {
		flex-grow: 1;
	}
	& tr {
		display: flex;
	}
	& td {
		flex-grow: 1;
	}
}

@media (min-width: 992px) {
    .news_list.main_page .item_new:hover {
		& .text {
			bottom: 0;
		}
		& .wrap_image img {
			filter: brightness(0.5);
		}
    }
	.news_list:not(.main_page) .item_new:hover {
		box-shadow: 0 0 10px 0 rgb(0, 0, 0, 0.2);
		& .wrap_image img {
			filter: brightness(0.5);
		}
    }
    .news_list .item_new:hover .title {
        color: #0e3667;
    }
    .button.blue:hover, button.blue:hover {
        background: #26588d;
        border-color: #26588d;
    }
    .button:not(.blue):hover, button:not(.blue):hover {
        border-color: #26588d;
        color: #26588d;
    }
    .events_list .item_events:hover .text {
        bottom: 0;
    }
    .events_list .item_events:hover .title {
        color: #0e3667;
    }
    .flex_nav .item_nav:hover {
        background: #0e3667;
        color: #ffffff;
    }
    .menu_btn:hover {
        &::before, &::after {
            animation: menu_btn 0.6s;
        }
        & span {
            animation: menu_btn_span 0.6s;
        }
    }
    .slide_menu .close:hover {
        &::before, &::after {
            width: 80%;
        }
    }
    .slider_popup .close:hover {
        &::before, &::after {
            width: 80%;
        }
    }
    .dev_info a:hover {
        color: #acacac;
    }
    footer .button.white_b:hover {
        border-color: #ffffff;
        background: #ffffff;
    }
    .footer_menu .col a:hover {
        text-shadow: 0px 0px 2px #ffffff;
    }
    .footer_menu nav a:hover {
        text-shadow: 0px 0px 2px #ffffff;
    }
    .footer_menu .soc_nav a:hover {
        transform: scale(1.2);
    }
    .scroll_wrap::-webkit-scrollbar-thumb {
        background: #4E85E9;
        border-radius: 6px;
        width: 6px;
    }
    .scroll_wrap::-webkit-scrollbar {
        width: 6px;
    }
	.popup .popup_table::-webkit-scrollbar-thumb {
        background: #4E85E9;
        border-radius: 6px;
        width: 6px;
    }
    .popup .popup_table::-webkit-scrollbar {
        width: 6px;
        background: #ffffff;
    }

	.wrap_banner_menu::-webkit-scrollbar-thumb {
        background: rgba(255, 255, 255, 0.6);
        border-radius: 6px;
        width: 6px;
    }
    .wrap_banner_menu::-webkit-scrollbar {
        width: 6px;
        background: transparent;
    }
    @-moz-document url-prefix() {
        .scroll_wrap {
            scrollbar-color: #4E85E9 rgb(157, 154, 154);
        }
		.popup .popup_table {
			scrollbar-color: #4E85E9 rgb(157, 154, 154);
		}
    }
    .content_page .item_content_page {
        & a.title:hover {
            color: #1956a0;
        }
    }
    .inner_page .menu {
        & a:not(.active):hover {
            color: #1956a0;
        }
    }
    .item_doc .name:hover {
        color: #1956a0;
    }
    .result_section .item_content_page:hover .title {
        color: #1956a0;
    }
    .nav_filter .item_nav:hover {
        background: #7EBAFF;
        color: #ffffff;
    }
	.content_page .flex_filter a:not(.active):hover {
		color: #103563;
	}
	.content_page  .gallery_item.item_content_page:hover .title {
		color: #1956a0;
	}
	.content_page .prof_item:hover {
		background: #135db0;
		color: #ffffff;
	}
	.drop_list .list .item_list:not(.active):hover {
		background: rgba(126, 186, 255, 0.2);
	}
	.schedule_list .list .item:hover {
		background: #3070B3;
		color: #ffffff;
	}
	.popup .close:hover {
		&::before, &::after {
			width: 80%;
		}
	}
	.scroll_top:hover {
		background-color: #85aaef;
	}
	.wrap_banner_menu .banner_menu .item_menu:hover {
		background: #ffffff;
		box-shadow: 0 0 10px 0 rgba(255, 255, 255, 0.6);
		& .icon {
			& svg {
				fill: #072140;
			}
		}
	}
	.banner .inf_button:hover {
		box-shadow: 0 0 35px 5px #ffffff;
	}
	.wrap_banner_menu .list a:hover {
		opacity: 0.6;
	}
	.wrap_banner_menu .item_inf:hover {
		opacity: 0.6;
	}
	.wrap_file label:hover {
		background: #26588d;
	}
	.team_list .item_team:hover {
		box-shadow: 0 0 10px 0 rgb(0, 0, 0, 0.2);
	}
	.team_slider .item_team:hover {
		border-color: #072140;
	}
}

@media (max-width: 1470px) {
    .wrap {
        padding: 0 40px;
    }
    .link_slider {
        margin-bottom: 50px;
        & .slick-arrow {
            &.slick-prev {
                left: 40px;
            }
            &.slick-next {
                right: 40px;
            }
            &.slick-prev {
                left: 40px;
            }
        }
    }
    .slider_popup .slick-arrow {
        &.slick-next {
            right: 40px;
        }
    }
    .library .image {
        padding-left: 40px;
    }
    .library .text {
        padding: 0 40px;
    }
	.wrap_preview .gallery_wrap .progressive.item_gallery {
		width: calc((100% / 4) - 20px);
	}
	.item_team {
		width: calc((100% / 3) - 30px);
	}
}

@media (max-width: 1270px) {
	.events_list .item_events {
        width: calc((100% / 3) - 30px);
		&:last-child {
			display: none;
		}
    }
    .events_list .item_events {
        width: calc((100% / 3) - 30px);
    }
    .gallery_wrap .progressive.item_gallery {
        width: calc((100% / 5) - 20px);
    }
	.wrap_preview .gallery_wrap .progressive.item_gallery {
		width: calc((100% / 3) - 20px);
	}
	.top_nav {
		display: block;
	}
	.top_nav .wrap_drop {
		width: auto;
		margin-right: 0;
		margin-bottom: 30px;
	}
	.top_nav .wrap_drop:last-child {
		margin-bottom: 0;
	}
	.flex_tab_nav {
		display: block;
	}
	.flex_tab_nav .name_nav {
		margin: 0 0 10px 0;
	}
	.flex_tab_nav .item_nav {
		margin: 0 0 15px 0;
		&:last-child {
			margin-bottom: 0;
		}
	}
}

@media (max-width: 1200px) {
    header {
        padding: 10px 0;
    }
    header .menu nav a:not(.search_btn, .bvi-open) {
        display: none;
    }
	.item_team {
		width: calc(50% - 30px);
	}
}

@media (max-width: 992px) {
    .wrap {
        padding: 0 20px;
    }
    header .logo {
        width: 60px;
        height: 60px;
		margin-bottom: -20px;
		filter: drop-shadow(0px 5px 6px rgba(81,144,203,0.8));
        margin-top: -5px;
		position: relative;
		z-index: 3;
    }
    .menu_btn {
        width: 30px;
        height: 17px;
    }
    .menu_btn span {
        height: 3px;
        border-width: 3px;
        border-radius: 3px;
    }
    .menu_btn::before, .menu_btn::after {
        height: 3px;
        border-width: 3px;
        border-radius: 3px;
    }
    header .menu nav a.bvi-open {
        margin-right: 20px;
    }
    header .menu nav a.search_btn {
        margin-right: 20px;
    }
    h1 {
        font-size: 40px;
        line-height: 45px;
    }
    .banner {
        margin-bottom: 50px;
        min-height: unset;
        height: calc(100% - 104px);
		& .inf_button {
			cursor: default;
			bottom: 20px;
		}
    }
    .banner .text_wrap {
        padding: 50px 0;
		min-height: 100%;
    }
	.banner .image_wrap::before {
		position: absolute;
		content: "";
		width: 100%;
		height: 100%;
		background: linear-gradient(153.43deg, rgb(0, 0, 0, 0.5) 50%, rgb(72, 71, 71, 0.2) 100%);
	}
    .about_section {
        flex-direction: column-reverse;
		padding: 0;
    }
    .about_section .image {
        width: calc(100% + 40px);
        margin: -20px -20px 0 -20px;
        &::after {
            padding-top: calc(100% - 100px);
        }
    }
    .about_section .text_about {
        width: auto;
        padding: 20px;
		margin: 0 -20px 0 0;
    }
    h4 {
        font-size: 25px;
        line-height: 30px;
        margin-bottom: 15px;
    }
    .about_section .text_about .text {
        font-size: 18px;
        line-height: 20px;
    }
    .button, button {
        padding: 9px 20px;
        
    }
    .content {
        margin-bottom: 50px;
    }
    h3 {
        font-size: 25px;
        line-height: 30px;
        margin-bottom: 15px;
    }
    .news_list:not(.main_page) {
        margin-right: 0;
        display: block;
    }
    .news_list.main_page {
        display: flex;
        flex-wrap: nowrap;
        overflow: hidden;
        overflow-x: auto;
        margin-right: -20px;
		margin-left: -20px;
		padding-left: 20px;
		grid-gap: 0;
		height: auto;
		margin-bottom: 30px;
    }
    .news_list:not(.main_page) .item_new {
        width: 100%;
        margin: 0 0 30px 0;
        hyphens: auto;
        hyphens: auto;
		display: block;
		padding: 0;
		border-radius: 0;
		&:first-child {
			& .wrap_image {
				min-height: unset;
			}
		}
		& .wrap_text {
			padding: 10px 15px;
			width: auto;
			background: none;
		}
		& .title {
			margin-bottom: 0;
		}
    }
	.news_list:not(.main_page) .item_new .wrap_image {
		width: auto;
		min-height: unset;
		border-radius: 0;
	}
    .news_list.main_page .item_new {
        margin: 0 20px 0 0;
        width: calc(100vw - 60px);
        min-width: calc(100vw - 60px);
		& .title {
			padding: 10px 15px;
		}
    }
    .news_list.main_page::-webkit-scrollbar-thumb {
        background: transparent;
    }
    .news_list.main_page::-webkit-scrollbar {
        height: 0;
        background: transparent;
    }
	.nav_filter::-webkit-scrollbar-thumb {
        background: transparent;
    }
    .nav_filter::-webkit-scrollbar {
        height: 0;
        background: transparent;
    }
    @-moz-document url-prefix() {
        .news_list.main_page {
            scrollbar-color: transparent transparent;
        }
        .events_list.main_page {
            scrollbar-color: transparent transparent;
        }
        .flex_nav {
            scrollbar-color: transparent transparent;
        }
        .team_slider {
            scrollbar-color: transparent transparent;
        }
        .link_slider {
            scrollbar-color: transparent transparent;
        }
		.breadcrumbs {
			scrollbar-color: transparent transparent;
		}
		.nav_filter {
			scrollbar-color: transparent transparent;
		}
		.content_page .flex_filter {
			scrollbar-color: transparent transparent;
		}
    }
    .news_list .item_new .wrap_image {
        height: 170px;
    }
    .news_list .item_new .text {
        display: none;
    }
    .events_list {
        display: block;
        margin-right: 0;
    }
    .events_list.main_page {
        display: flex;
        flex-wrap: nowrap;
        overflow: hidden;
        overflow-x: auto;
        margin-right: -20px;
		margin-left: -20px;
		padding-left: 20px;
    }
    .events_list.main_page::-webkit-scrollbar-thumb {
        background: transparent;
    }
    .events_list.main_page::-webkit-scrollbar {
        height: 0;
        background: transparent;
    }
    .events_list .item_events {
        width: 100%;
        margin: 0 0 30px 0;
        hyphens: auto;
        hyphens: auto;
    }
    .events_list.main_page .item_events {
        margin: 0 20px 30px 0;
        width: calc(100vw - 60px);
        min-width: calc(100vw - 60px);
		&:last-child {
			display: block;
		}
    }
    .events_list .item_events .wrap_date {
        height: 200px;
        margin-bottom: 10px;
        padding: 15px;
    }
    .events_list .item_events .text {
        display: none;
    }
    .events_list .item_events .date {
        font-size: 30px;
        line-height: 30px;
    }
    .flex_nav {
        flex-wrap: nowrap;
        overflow: hidden;
        overflow-x: auto;
        margin-right: -20px;
        margin-bottom: 25px;
        white-space: nowrap;
        justify-content: flex-start;
		margin-left: -20px;
		padding-left: 20px;
    }
    .flex_nav::-webkit-scrollbar-thumb {
        background: transparent;
    }
    .flex_nav::-webkit-scrollbar {
        height: 0;
        background: transparent;
    }
    .tab_wrap {
        padding: 0;
    }
    .tab {
        flex-direction: column-reverse;
    }
    .tab .text_wrap {
        width: auto;
        padding: 0 0 20px 0;
		width: 100%;
    }
    .tab .text_wrap::before {
        height: calc(100% + 40px);
        left: -20px;
        width: calc(100% + 40px);
    }
    .tab .text_wrap .text {
        margin-bottom: 15px;
        min-height: 110px;
    }
    .tab .image {
        width: 100%;
        margin-right: 0;
        height: 200px;
    }
    .team_slider {
        display: flex;
        flex-wrap: nowrap;
        overflow: hidden;
        overflow-x: auto;
        padding-bottom: 30px;
		padding-left: 20px;
		& .item_team {
			margin-right: 20px;
			width: calc(50vw - 20px);
			min-width: calc(100vw - 60px);
		}
    }
    .team_slider::-webkit-scrollbar-thumb {
        background: transparent;
    }
    .team_slider::-webkit-scrollbar {
        height: 0;
        background: transparent;
    }
    .team_slider .item_prof {
        margin: 0 20px 0 0;
        width: calc(100vw - 60px);
        min-width: calc(100vw - 60px);
        & .title {
            font-size: 18px;
            padding: 5px 20px;
        }
        &::before {
            padding-top: calc(100% - 90px);
        }
    }
    .contacts_section .item_contact {
        margin-bottom: 20px;
    }
    .contacts_section .title {
        margin-bottom: 10px;
    }
    .contacts_section {
        font-size: 16px;
        line-height: 20px;
        width: auto;
        padding-right: 0;
        margin-bottom: 20px;
        & p {
            margin-bottom: 10px;
        }
    }
    .contact_section {
        display: block;
        height: auto;
		margin-left: -20px;
		margin-right: -20px;
		border-radius: 0;
    }
    .contact_section .map {
        width: auto;
        height: 200px;
        padding-left: 0;
        margin: 0 -20px;
    }
    .footer_menu {
        display: block;
    }
    .footer_menu .col {
        margin-right: 0;
        width: auto;
    }
    .footer_menu .soc_nav {
        margin-bottom: 30px;
    }
    .footer_menu nav {
        padding-top: 30px;
        margin-right: 0;
    }
    .footer_menu nav {
        & a {
            margin-right: 0;
        }
    }
    .footnote_footer {
        display: block;
        font-size: 13px;
    }
    .copyright {
        margin: 0 0 15px 0;
    }
    .slide_menu {
        position: fixed;
        width: calc(100% - 40px);
		height: calc(100% - 50px);
        padding: 30px 0 30px 30px;
        top: 50px;
        & .close {
            display: none;
        }
        &::before {
            position: absolute;
            content: "";
            width: 40px;
            height: 100%;
            z-index: -1;
            left: -40px;
            top: 0;
            background: rgba(255, 255, 255, 0.6);
        }
        &::after {
            position: absolute;
            content: "";
            width: 100%;
            height: 100%;
            top: 0;
            position: absolute;
            content: "";
            width: 4px;
            height: 50px;
            border-radius: 4px;
            background: #0b3365;
            top: 50%;
            transform: translateY(-50%);
            left: -22px;
        }
    }
    .scroll_wrap {
        padding-right: 20px;
        position: relative;
        z-index: 5;
    }
    .link_slider {
        display: flex;
        flex-wrap: nowrap;
        overflow: hidden;
        overflow-x: auto;
		padding-left: 20px;
    }
    .link_slider .item_link {
        margin-right: 10px;
        width: calc(100vw - 120px);
        min-width: calc(100vw - 120px);
        height: 120px;
    }
    .link_slider::-webkit-scrollbar-thumb {
        background: transparent;
    }
    .link_slider::-webkit-scrollbar {
        height: 0;
        background: transparent;
    }
    .library .image {
        justify-content: flex-end;
        border-radius: 5px 0 0 20px;
        & .progressive {
            width: 250px;
            height: 55px;
            margin-right: 20px;
        }
    }
    .library .text {
        padding: 0;
    }
    .page_banner .text_wrap {
        padding: 60px 0 10px 0;
		& h1 {
			margin-bottom: 30px;
		}
		& .wrap {
			position: relative;
			padding-bottom: 25px;
		}
    }
    .pagination {
        justify-content: center;
    }
    .pagination .arrow {
        width: 40px;
        height: 40px;
    }
    .pagination .to_page {
        margin-right: 0;
        min-width: 40px;
        height: 40px;
    }
    .pagination .to_page:nth-last-child(2) {
        margin-right: 10px;
    }
    .page_banner.item_banner .text_wrap {
        min-height: 300px;
    }
    .item_new .text {
        padding-top: 30px;
        margin-bottom: 20px;
    }
    .item_new .date {
        margin-bottom: 40px;
    }
    .news_page .text {
        margin-bottom: 30px;
    }
    .news_page .date {
        margin-bottom: 30px;
    }
    .inner_page {
        display: block;
    }
    .inner_page .wrap_menu {
        width: auto;
        margin: 0 0 40px 0;
    }
    .inner_page .menu {
		& .title_popup {
			background: #488ad5;
		}
    }
	.page_bvi {
		display: none;
	}
    .content_page .item_content_page {
		padding: 15px;
		margin-left: -20px;
		margin-right: -20px;
		border-radius: 0;
        & .progressive {
            height: 200px;
        }
        & .wrap_preview {
            margin-bottom: 20px;
        }
    }
    .item_doc {
        & nav {
            display: block;
            & .button {
                width: 100%;
            }
            & .file {
                margin: 0 0 15px 0;
            }
        }
    }
    .inner_page .content_page {
        width: auto;
        & .wrap_items {
            margin-bottom: 40px;
        }
    }
    .video_player {
        min-height: 200px;
    }
    .video_player .play {
        width: 50px;
        height: 50px;
        background: #7EBAFF url(../icons/play.svg) center / contain no-repeat;
        background-size: 20px 20px;
    }
    .gallery_wrap .progressive.item_gallery {
        width: calc(50% - 20px);
    }
    .slider_popup {
        padding: 10px 0 10px 20px;
    }
    .slider_popup .wrap_slider {
        width: auto;
    }
    .slider_popup .slider_gallery .slick-list {
        padding-right: 20px;
    }
    .slider_gallery .item_slider {
        margin-right: 15px;
    }
    .slider_popup .close {
        width: 30px;
        height: 30px;
    }
    .result_section .title {
        margin-bottom: 10px;
        font-size: 20px;
        line-height: 25px;
    }
    .search_page {
        display: block;
		margin-left: -20px;
		margin-right: -20px;
		border-radius: 0;
    }
    .search_page .search_secton {
        width: 100%;
        margin: 0 0 20px 0;
    }
    .search_page .nav_search {
        width: 100%;
    }
    .search_wrap .flex {
        display: block;
    }
    .search_wrap input {
        width: 100%;
        margin: 0 0 20px 0;
    }
    .search_wrap {
        left: -20px;
        width: calc(100% + 40px);
        top: calc(100% + 20px);
        border-radius: 0 0 5px 5px;
    }
    .search_wrap .search_btn {
        width: 100%;
    }
    .feedback {
        width: 100%;
    }
    textarea {
        height: 120px;
    }
    .scroll_top {
        width: 45px;
        height: 45px;
        right: 20px;
        bottom: 20px;
    }
    .agree {
        margin-bottom: 15px;
    }
    .feedback button {
        width: 100%;
    }
    .about_prof {
        font-size: 18px;
        line-height: 25px;
        margin-bottom: 30px;
    }
    .list_prof_page {
        width: auto;
        margin: 0 -20px;
    }
    .list_prof_page .item_list {
        padding: 10px 20px;
    }
    .list_prof_page .item_list.head {
        border-radius: 0;
        font-size: 18px;
        line-height: 22px;
    }
    .list_prof_page .item_list .title {
        font-size: 18px;
        line-height: 22px;
    }
    ul, ol {
        padding-left: 30px;
    }
	.table .tr {
		display: block;
		& .td {
			&:first-child {
				width: auto;
				padding-right: 10px;
				border-right: 0;
				padding-bottom: 5px;
			}
			&:last-child {
				padding-left: 10px;
				padding-top: 5px;
				width: auto;
			}
		}
	}
	.breadcrumbs {
		flex-wrap: nowrap;
		white-space: nowrap;
		margin-right: -20px;
		overflow: hidden;
		overflow-x: auto;
		padding-right: 20px;
		padding-left: 20px;
		width: 100%;
		position: absolute;
		left: 0;
		bottom: 0;
		& li {
			margin-bottom: 0;
			&:last-child {
				margin-right: 0;
			}
		}
	}
	.breadcrumbs::-webkit-scrollbar-thumb {
        background: transparent;
    }
    .breadcrumbs::-webkit-scrollbar {
        height: 0;
        background: transparent;
    }
	.content_page .wrap_flex_filter {
		margin-bottom: 40px;
	}
	.content_page .flex_filter {
		padding: 0 20px 0 20px;
		background: none;
		border-radius: 0;
		flex-wrap: nowrap;
		overflow: hidden;
		overflow-x: auto;
		white-space: nowrap;
		margin: 0 -20px;
		& a {
			text-decoration: none;
			margin: 0 10px 0 0;
			padding: 5px 10px;
			background: #ffffff;
			border: 0;
			&:last-child {
				margin-right: 0;
			}
			&.active {
				border-color: unset;
				background: #679ad1;
				color: #ffffff;
			}
		}
	}
	.content_page .flex_filter::-webkit-scrollbar-thumb {
		background: transparent;
		height: 0;
	}
	.content_page .flex_filter::-webkit-scrollbar {
		height: 0;
		background: transparent;
	}
	.wrap_preview .gallery_wrap .progressive.item_gallery {
		width: calc(50% - 20px);
	}
	.content_page .item_content_page.gallery_item .progressive {
		width: 100%;
	}
	.page_404 {
		padding-top: 50px;
	}
	.prof_list {
		display: block;
		margin-right: 0;
	}
	.prof_list .item_prof {
		width: 100%;
		margin: 0 0 20px 0;
	}
	.nav_filter {
		flex-wrap: nowrap;
        white-space: nowrap;
        margin-right: -20px;
        overflow: hidden;
        overflow-x: auto;
        padding-right: 20px;
	}
	.nav_filter .item_nav {
		padding: 5px 10px;
		margin: 0 5px 0 0;
	}
	.footer_menu .logo {
		width: 110px;
		height: 110px;
	}
	.team_list {
		margin-right: 0;
	}
	.item_team {
		margin: 0 0 30px 0;
        width: 100%;
	}
	.team_page {
		flex-direction: column-reverse;
		padding-top: 0;
	}
	.team_page .wrap_image {
		width: calc(100% + 40px);
		margin: 0 -20px 30px -20px;
		height: 400px;
	}
	.team_page .text {
		width: auto;
		margin-right: -20px;
		border-radius: 5px 0 0 5px;
	}
	.team_page .head_title {
		margin-right: -20px;
	}
	.promo_section {
		padding: 90px 0;
		font-size: 24px;
		line-height: 30px;
	}
	.slide_list .wrap_name {
		flex-direction: column;
		align-items: flex-start;
	}
	.slide_list .wrap_name {
		& .button {
			width: 100%;
		}
		& .name {
			width: auto;
			margin: 0 0 20px 0;
		}
	}
	.top_nav .wrap_drop {
		margin-bottom: 20px;
	}
	.footnote_message {
		font-size: 14px;
	}
	.flex_banner {
		display: block;
	}
	.flex_banner .text_title {
		width: auto;
		margin: 0;
	}
	.flex_banner {
		& h1 {
			font-size: 40px;
        	line-height: 45px;
			& span:first-child {
				display: none;
			}
			& span:last-child {
				display: block;
			}
		}
	}
	.flex_banner .wrap_form {
		width: calc(100% - 40px);
		padding: 25px;
		position: absolute;
		z-index: 3;
		top: 50px;
		left: 20px;
		display: none;
		background: rgba(255, 255, 255, 0.9);
	}
	.item_employees.image {
		display: block;
	}
	.item_employees .wrap_image {
		width: 100%;
		height: auto;
		margin: 0 0 20px 0;
		position: relative;
		&::after {
			display: block;
			content: "";
			padding-top: calc(100% + 40px);
		}
	}
	.item_employees.image .content_team {
		width: auto;
	}
	.feedback_list .item_feedback {
		display: block;
	}
	.feedback_list .wrap_inf:not(:last-child) {
		margin: 0 0 30px 0;
	}
	.banner.video .text_wrap .text_title.hide h1 {
		animation-delay: 0s;
	}
	.mobile_button {
		display: block;
		padding: 10px 20px 10px 60px;
		background: #9ccff8;
		margin-right: -20px;
		cursor: pointer;
		font-weight: 500;
		position: relative;
		& span {
			display: block;
			padding-top: 5px;
			font-weight: 400;
			text-decoration: underline;
		}
		&::before {
			position: absolute;
			content: "";
			left: 10px;
			top: 50%;
			transform: translateY(-50%);
			width: 30px;
			height: 30px;
			background: url(../icons/next.svg) center / contain no-repeat;
		}
	}
	.wrap_menu .mobile_button {
		background: #488ad5;
		color: #072140;
		& span {
			color: #f8efec;
		}
		&::before {
			background: url(../icons/menu.svg) center / contain no-repeat;
			background-size: 20px 20px;
			border-radius: 50%;
			border: 2px solid #ffffff;
		}
	}
	.popup .wrap_popup {
		padding: 0;
	}
	.popup .content_popup {
		max-width: unset;
		border-radius: 0;
		padding: 20px 5px 20px 0;
	}
	.popup .close {
		width: 25px;
		height: 25px;
	}
	.popup .title {
		font-size: 20px;
		line-height: 25px;
		margin-bottom: 20px;
	}
	.head_table {
		padding: 0 15px;
	}
	.popup .item_table {
		display: block;
		&.head {
			display: none;
		}
		&:not(.head) .day {
			border-right: 0;
			width: 100%;
			background: #b8cef6;
		}
		& .tr {
			display: block;
		}
		& .wrap_tr {
			width: 100%;
		}
		& .td {
			&:nth-child(1) {
				width: 100%;
			}
			&:nth-child(2) {
				width: 100%;
			}
			&:nth-child(3) {
				width: 100%;
			}
			&:nth-child(4) {
				width: 100%;
			}
			&:nth-child(5) {
				width: 100%;
			}
			&::before {
				display: block;
				content: attr(data-label);
				font-size: 13px;
				line-height: 15px;
				font-weight: 600;
				font-style: italic;
			}
		}
		&:not(:last-child) {
			& .wrap_tr {
				border-bottom: 0;
			}
			&:not(.head) .day {
				border-bottom: 0;
			}
		}
		&.fixed {
			&:not(.head) .day {
				position: fixed;
				left: 15px;
				width: calc(100% - 35px);
				z-index: 1;
			}
			&.end_fixed {
				&:not(.head) .day {
					opacity: 0;
					visibility: hidden;
				}
			}
		}
		&:first-child {
			&:not(.head) .day {
				position: fixed;
				left: 15px;
				width: calc(100% - 35px);
				z-index: 1;
			}
		}
	}
	.popup .popup_table {
		padding: 0 15px;
		max-height: calc(100% - 45px);
	}
	.schedule_list {
		font-size: 18px;
		line-height: 20px;
		& .name {
			padding: 15px 45px 15px 15px;
			&::before {
				width: 20px;
				height: 20px;
				right: 15px;
				top: 15px;
			}
		}
		& .list {
			margin: 0 -5px -5px 0;
		}
		& .item {
			margin: 0 5px 5px 0;
			padding: 6px 15px 4px 15px;
		}
	}
	input[type="text"], textarea {
		padding: 9px 15px 11px 15px;
	}
	.time_table {
		font-size: 18px;
		line-height: 20px;
		& .tr {
			&.head {
				font-size: 14px;
			}
		}
	}
	.schedule_section .footnote_table {
		font-size: 16px;
		line-height: 20px;
	}
	.wrap_banner_menu {
		padding: 20px;
		border-radius: 0 0 5px 5px;
		& .banner_menu {
			display: flex;
			flex-direction: column;
			grid-row-gap: unset;
			& .item_menu {
				border-radius: 5px;
				padding: 20px;
				order: 2;
				&:nth-child(2) {
					order: 1;
					margin-right: 0;
					padding-right: 20px;
					& .icon {
						width: 60px;
						height: 60px;
					}
					& .title {
						margin-bottom: 40px;
					}
				}
				&:not(:last-child) {
					margin-bottom: 10px;
				}
				& .icon {
					width: 40px;
					height: 40px;
				}
				& .title {
					margin-bottom: 20px;
				}
			}
		}
	}
	.news_page {
		padding: 20px;
		margin-left: -20px;
		margin-right: -20px;
		border-radius: 0;
	}
	.gallery_wrap {
		margin-bottom: 20px;
	}
	.result_section .item_content_page {
		margin-left: -20px;
		margin-right: -20px;
		border-radius: 0;
	}
	.result_section h4 {
		padding-left: 0;
	}
	.wrap_content {
		margin-left: -20px;
		margin-right: -20px;
		border-radius: 0;
	}
	.inner_page .content_page {
		& .item_employees {
			margin-left: -20px;
			margin-right: -20px;
			border-radius: 0;
		}
	}
	.top_fixed .slide_menu {
		top: 0;
	}
}