:root {
	--main-font: 'TT Norms', sans-serif;
	--main-font-color: #000000;
	--button-bg-1: rgba(0, 0, 0, 0.05);
	--button-bg-1_hover: rgba(0, 0, 0, 0.1);
	--second-font-color: rgba(0, 0, 0, 0.5);
	--button-bg-2: #000000;
	--button-color-1: #000000;
	--button-color-2: #FFFFFF;
	--border-color: #E6E6E6;
	--ya-color: #FC3F1D;
	--go-color: #4285F4;
	--download: url(../icons/download.svg) center / contain no-repeat;
	--phone_icon: url(../icons/phone.svg) center / contain no-repeat;
	--telegram_icon: url(../icons/telegram.svg) center / contain no-repeat;
	--whatsapp_icon: url(../icons/whatsapp.svg) center / contain no-repeat;
	--mail_icon: url(../icons/mail.svg) center / contain no-repeat;
	--menu_btn: var(--button-bg-1) url(../icons/menu_b.svg) center / contain no-repeat;
	--question: url(../icons/question.svg) center / contain no-repeat;
	--star_border: url(../icons/star_border.svg) center / contain no-repeat;
	--arrow_slider: url(../icons/arrow_slider.svg) center / contain no-repeat;
	--check: url(../icons/check.svg) center / contain no-repeat;
	--like-stile: background url(../icons/like.svg) left 0 top 0 / contain no-repeat;
	--arrow_item_list: url(../icons/link.svg) right 0 center / contain no-repeat;
	--list-stile: background url(../icons/bullet.svg) left 0 top 0 / contain no-repeat;
}

:root[data-font_color='blue'] {
	--main-font-color: #284582;
	--button-color-1: #284582;
	--question: url(../icons/question_blue.svg) center / contain no-repeat;
	--arrow_item_list: url(../icons/link_blue.svg) right 0 center / contain no-repeat;
	--star_border: url(../icons/star_border_blue.svg) center / contain no-repeat;
	--arrow_slider: url(../icons/arrow_slider_blue.svg) center / contain no-repeat;
	--download: url(../icons/download_blue.svg) center / contain no-repeat;
	--menu_btn: var(--button-bg-1) url(../icons/menu_blue.svg) center / contain no-repeat;
	--check: url(../icons/check_blue.svg) center / contain no-repeat;
	--like-stile: background url(../icons/like_blue.svg) left 0 top 0 / contain no-repeat;
}

:root[data-font_color='color_01'] {
	--main-font-color: #423D53;
	--button-bg-2: #423D53;
	--button-color-1: #423D53;
	--list-stile: background url(../icons/bullet_d_gr_blue.svg) left 0 top 0 / contain no-repeat;
	--question: url(../icons/question_d_gr_blue.svg) center / contain no-repeat;
	--phone_icon: url(../icons/phone__d_gr_blue.svg) center / contain no-repeat;
	--telegram_icon: url(../icons/telegram_d_gr_blue.svg) center / contain no-repeat;
	--whatsapp_icon: url(../icons/whatsapp_d_gr_blue.svg) center / contain no-repeat;
	--mail_icon: url(../icons/mail_d_gr_blue.svg) center / contain no-repeat;
	--arrow_item_list: url(../icons/link_d_gr_blue.svg) right 0 center / contain no-repeat;
	--star_border: url(../icons/star_border_d_gr_blue.svg) center / contain no-repeat;
	--arrow_slider: url(../icons/arrow_slider_d_gr_blue.svg) center / contain no-repeat;
	--download: url(../icons/download_d_gr_blue.svg) center / contain no-repeat;
	--menu_btn: var(--button-bg-1) url(../icons/menu_d_gr_blue.svg) center / contain no-repeat;
	--check: url(../icons/check_d_gr_blue.svg) center / contain no-repeat;
	--like-stile: background url(../icons/like_d_gr_blue.svg) left 0 top 0 / contain no-repeat;
}

:root[data-font_color='color_02'] {
	--main-font-color: #273B57;
	--button-bg-2: #273B57;
	--button-color-1: #273B57;
	--list-stile: background url(../icons/bullet_night_blue.svg) left 0 top 0 / contain no-repeat;
	--question: url(../icons/question_night_blue.svg) center / contain no-repeat;
	--phone_icon: url(../icons/phone__night_blue.svg) center / contain no-repeat;
	--telegram_icon: url(../icons/telegram_night_blue.svg) center / contain no-repeat;
	--whatsapp_icon: url(../icons/whatsapp_night_blue.svg) center / contain no-repeat;
	--mail_icon: url(../icons/mail_night_blue.svg) center / contain no-repeat;
	--arrow_item_list: url(../icons/link_night_blue.svg) right 0 center / contain no-repeat;
	--star_border: url(../icons/star_border_night_blue.svg) center / contain no-repeat;
	--arrow_slider: url(../icons/arrow_slider_night_blue.svg) center / contain no-repeat;
	--download: url(../icons/download_night_blue.svg) center / contain no-repeat;
	--menu_btn: var(--button-bg-1) url(../icons/menu_night_blue.svg) center / contain no-repeat;
	--check: url(../icons/check_night_blue.svg) center / contain no-repeat;
	--like-stile: background url(../icons/like_night_blue.svg) left 0 top 0 / contain no-repeat;
}

:root[data-font_color='color_03'] {
	--main-font-color: #2E494A;
	--button-bg-2: #2E494A;
	--button-color-1: #2E494A;
	--list-stile: background url(../icons/bullet_d-gr.svg) left 0 top 0 / contain no-repeat;
	--question: url(../icons/question_d_green.svg) center / contain no-repeat;
	--phone_icon: url(../icons/phone__d_green.svg) center / contain no-repeat;
	--telegram_icon: url(../icons/telegram_d_green.svg) center / contain no-repeat;
	--whatsapp_icon: url(../icons/whatsapp_d_green.svg) center / contain no-repeat;
	--mail_icon: url(../icons/mail_d_green.svg) center / contain no-repeat;
	--arrow_item_list: url(../icons/link_d_green.svg) right 0 center / contain no-repeat;
	--star_border: url(../icons/star_border_d_green.svg) center / contain no-repeat;
	--arrow_slider: url(../icons/arrow_slider_d_green.svg) center / contain no-repeat;
	--download: url(../icons/download_d_green.svg) center / contain no-repeat;
	--menu_btn: var(--button-bg-1) url(../icons/menu_d_green.svg) center / contain no-repeat;
	--check: url(../icons/check_d_green.svg) center / contain no-repeat;
	--like-stile: background url(../icons/like_d_green.svg) left 0 top 0 / contain no-repeat;
}

:root[data-font_color='color_04'] {
	--main-font-color: #2F422E;
	--button-bg-2: #2F422E;
	--button-color-1: #2F422E;
	--list-stile: background url(../icons/bullet_gr.svg) left 0 top 0 / contain no-repeat;
	--list-stile2: background url(../icons/check.svg) left 0 top 0 / contain no-repeat;
	--like-stile: background url(../icons/like_green.svg) left 0 top 0 / contain no-repeat;
	--download: url(../icons/download_green.svg) center / contain no-repeat;
	--phone_icon: url(../icons/phone_green.svg) center / contain no-repeat;
	--telegram_icon: url(../icons/telegram_green.svg) center / contain no-repeat;
	--whatsapp_icon: url(../icons/whatsapp_green.svg) center / contain no-repeat;
	--mail_icon: url(../icons/mail_green.svg) center / contain no-repeat;
	--arrow_item_list: url(../icons/link_green.svg) right 0 center / contain no-repeat;
	--menu_btn: var(--button-bg-1) url(../icons/menu_g.svg) center / contain no-repeat;
	--question: url(../icons/question_green.svg) center / contain no-repeat;
	--star_border: url(../icons/star_border_green.svg) center / contain no-repeat;
	--arrow_slider: url(../icons/arrow_slider_green.svg) center / contain no-repeat;
	--check: url(../icons/check_green.svg) center / contain no-repeat;
}

:root[data-font_color='color_05'] {
	--main-font-color: #513642;
	--button-bg-2: #513642;
	--button-color-1: #513642;
	--list-stile: background url(../icons/bullet_с05.svg) left 0 top 0 / contain no-repeat;
	--list-stile2: background url(../icons/check_с05.svg) left 0 top 0 / contain no-repeat;
	--like-stile: background url(../icons/like_с05.svg) left 0 top 0 / contain no-repeat;
	--download: url(../icons/download_с05.svg) center / contain no-repeat;
	--phone_icon: url(../icons/phone_с05.svg) center / contain no-repeat;
	--telegram_icon: url(../icons/telegram_с05.svg) center / contain no-repeat;
	--whatsapp_icon: url(../icons/whatsapp_с05.svg) center / contain no-repeat;
	--mail_icon: url(../icons/mail_с05.svg) center / contain no-repeat;
	--arrow_item_list: url(../icons/link_с05.svg) right 0 center / contain no-repeat;
	--menu_btn: var(--button-bg-1) url(../icons/menu_с05.svg) center / contain no-repeat;
	--question: url(../icons/question_с05.svg) center / contain no-repeat;
	--star_border: url(../icons/star_border_с05.svg) center / contain no-repeat;
	--arrow_slider: url(../icons/arrow_slider_с05.svg) center / contain no-repeat;
	--check: url(../icons/check_с05.svg) center / contain no-repeat;
}

:root[data-font_color='color_06'] {
	--main-font-color: #4B3D39;
	--button-bg-2: #4B3D39;
	--button-color-1: #4B3D39;
	--list-stile: background url(../icons/bullet_с06.svg) left 0 top 0 / contain no-repeat;
	--list-stile2: background url(../icons/check_с06.svg) left 0 top 0 / contain no-repeat;
	--like-stile: background url(../icons/like_с06.svg) left 0 top 0 / contain no-repeat;
	--download: url(../icons/download_с06.svg) center / contain no-repeat;
	--phone_icon: url(../icons/phone_с06.svg) center / contain no-repeat;
	--telegram_icon: url(../icons/telegram_с06.svg) center / contain no-repeat;
	--whatsapp_icon: url(../icons/whatsapp_с06.svg) center / contain no-repeat;
	--mail_icon: url(../icons/mail_с06.svg) center / contain no-repeat;
	--arrow_item_list: url(../icons/link_с06.svg) right 0 center / contain no-repeat;
	--menu_btn: var(--button-bg-1) url(../icons/menu_с06.svg) center / contain no-repeat;
	--question: url(../icons/question_с06.svg) center / contain no-repeat;
	--star_border: url(../icons/star_border_с06.svg) center / contain no-repeat;
	--arrow_slider: url(../icons/arrow_slider_с06.svg) center / contain no-repeat;
	--check: url(../icons/check_с06.svg) center / contain no-repeat;
}

:root[data-font_color='color_07'] {
	--main-font-color: #49431D;
	--button-bg-2: #49431D;
	--button-color-1: #49431D;
	--list-stile: background url(../icons/bullet_с07.svg) left 0 top 0 / contain no-repeat;
	--list-stile2: background url(../icons/check_с07.svg) left 0 top 0 / contain no-repeat;
	--like-stile: background url(../icons/like_с07.svg) left 0 top 0 / contain no-repeat;
	--download: url(../icons/download_с07.svg) center / contain no-repeat;
	--phone_icon: url(../icons/phone_с07.svg) center / contain no-repeat;
	--telegram_icon: url(../icons/telegram_с07.svg) center / contain no-repeat;
	--whatsapp_icon: url(../icons/whatsapp_с07.svg) center / contain no-repeat;
	--mail_icon: url(../icons/mail_с07.svg) center / contain no-repeat;
	--arrow_item_list: url(../icons/link_с07.svg) right 0 center / contain no-repeat;
	--menu_btn: var(--button-bg-1) url(../icons/menu_с07.svg) center / contain no-repeat;
	--question: url(../icons/question_с07.svg) center / contain no-repeat;
	--star_border: url(../icons/star_border_с07.svg) center / contain no-repeat;
	--arrow_slider: url(../icons/arrow_slider_с07.svg) center / contain no-repeat;
	--check: url(../icons/check_с07.svg) center / contain no-repeat;
}

:root[data-font_color='color_08'] {
	--main-font-color: #2F2442;
	--button-bg-2: #2F2442;
	--button-color-1: #2F2442;
	--list-stile: background url(../icons/bullet_с08.svg) left 0 top 0 / contain no-repeat;
	--list-stile2: background url(../icons/check_с08.svg) left 0 top 0 / contain no-repeat;
	--like-stile: background url(../icons/like_с08.svg) left 0 top 0 / contain no-repeat;
	--download: url(../icons/download_с08.svg) center / contain no-repeat;
	--phone_icon: url(../icons/phone_с08.svg) center / contain no-repeat;
	--telegram_icon: url(../icons/telegram_с08.svg) center / contain no-repeat;
	--whatsapp_icon: url(../icons/whatsapp_с08.svg) center / contain no-repeat;
	--mail_icon: url(../icons/mail_с08.svg) center / contain no-repeat;
	--arrow_item_list: url(../icons/link_с08.svg) right 0 center / contain no-repeat;
	--menu_btn: var(--button-bg-1) url(../icons/menu_с08.svg) center / contain no-repeat;
	--question: url(../icons/question_с08.svg) center / contain no-repeat;
	--star_border: url(../icons/star_border_с08.svg) center / contain no-repeat;
	--arrow_slider: url(../icons/arrow_slider_с08.svg) center / contain no-repeat;
	--check: url(../icons/check_с08.svg) center / contain no-repeat;
}

:root[data-font_color='color_09'] {
	--main-font-color: #4B284E;
	--button-bg-2: #4B284E;
	--button-color-1: #4B284E;
	--list-stile: background url(../icons/bullet_с09.svg) left 0 top 0 / contain no-repeat;
	--list-stile2: background url(../icons/check_с09.svg) left 0 top 0 / contain no-repeat;
	--like-stile: background url(../icons/like_с09.svg) left 0 top 0 / contain no-repeat;
	--download: url(../icons/download_с09.svg) center / contain no-repeat;
	--phone_icon: url(../icons/phone_с09.svg) center / contain no-repeat;
	--telegram_icon: url(../icons/telegram_с09.svg) center / contain no-repeat;
	--whatsapp_icon: url(../icons/whatsapp_с09.svg) center / contain no-repeat;
	--mail_icon: url(../icons/mail_с09.svg) center / contain no-repeat;
	--arrow_item_list: url(../icons/link_с09.svg) right 0 center / contain no-repeat;
	--menu_btn: var(--button-bg-1) url(../icons/menu_с09.svg) center / contain no-repeat;
	--question: url(../icons/question_с09.svg) center / contain no-repeat;
	--star_border: url(../icons/star_border_с09.svg) center / contain no-repeat;
	--arrow_slider: url(../icons/arrow_slider_с09.svg) center / contain no-repeat;
	--check: url(../icons/check_с09.svg) center / contain no-repeat;
}

:root[data-font_color='color_10'] {
	--main-font-color: #454141;
	--button-bg-2: #454141;
	--button-color-1: #454141;
	--list-stile: background url(../icons/bullet_с10.svg) left 0 top 0 / contain no-repeat;
	--list-stile2: background url(../icons/check_с10.svg) left 0 top 0 / contain no-repeat;
	--like-stile: background url(../icons/like_с10.svg) left 0 top 0 / contain no-repeat;
	--download: url(../icons/download_с10.svg) center / contain no-repeat;
	--phone_icon: url(../icons/phone_с10.svg) center / contain no-repeat;
	--telegram_icon: url(../icons/telegram_с10.svg) center / contain no-repeat;
	--whatsapp_icon: url(../icons/whatsapp_с10.svg) center / contain no-repeat;
	--mail_icon: url(../icons/mail_с10.svg) center / contain no-repeat;
	--arrow_item_list: url(../icons/link_с10.svg) right 0 center / contain no-repeat;
	--menu_btn: var(--button-bg-1) url(../icons/menu_с10.svg) center / contain no-repeat;
	--question: url(../icons/question_с10.svg) center / contain no-repeat;
	--star_border: url(../icons/star_border_с10.svg) center / contain no-repeat;
	--arrow_slider: url(../icons/arrow_slider_с10.svg) center / contain no-repeat;
	--check: url(../icons/check_с10.svg) center / contain no-repeat;
}

* {
	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: var(--main-font);
	color: var(--main-font-color);
	font-size: 17px;
	line-height: 20px;
	font-weight: 400;
}

.wrap {
	margin: 0 auto;
	max-width: 1820px;
	padding: 0 70px;
	overflow: hidden;
}

body.fixed {
	overflow: hidden;
}

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

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

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

h1, h2, h3, h4, h5, h6 {
	font-family: var(--main-font);
	font-weight: 500;
}

h1 {
	font-size: calc(32px + 38 * ((100vw - 992px) / (1920 - 992)));
	line-height: calc(30px + 35 * ((100vw - 992px) / (1920 - 992)));
	margin-bottom: 40px;
}

h3 {
	font-size: calc(32px + 38 * ((100vw - 992px) / (1920 - 992)));
	line-height: calc(30px + 35 * ((100vw - 992px) / (1920 - 992)));
	margin-bottom: 40px;
	&.small {
		font-size: calc(32px + 28 * ((100vw - 992px) / (1920 - 992)));
		line-height: calc(30px + 30 * ((100vw - 992px) / (1920 - 992)));
	}
	&.v_small {
		font-size: 45px;
		line-height: 50px;
	}
}

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

h5 {
	font-weight: 500;
	font-size: 26px;
	line-height: 30px;
	margin-bottom: 20px;
}

p:not(:last-child) {
	margin-bottom: 20px;
}

strong {
	font-weight: 500;
}

input[type="text"], textarea {
	border: 1px solid rgba(19, 24, 51, 0.1);
	outline: none;
	width: 100%;
	font-family: var(--main-font);
	font-size: 17px;
	line-height: 20px;
	color: var(--main-font);
	padding: 12px 15px 13px 15px;
	border-radius: 10px;
	&::-webkit-input-placeholder {
		font-family: var(--main-font);
		font-size: 17px;
		line-height: 20px;
		color: var(--second-font-color);
	}
}

textarea {
	resize: none;
	height: 180px;
	display: block;
}

.wrap_file {
	& input[type="file"] {
		display: none;
	}
	& label {
		cursor: pointer;
		display: block;
	}
}

ul {
	padding-left: 20px;
	& li:not(:last-child) {
		margin-bottom: 10px;
	}
}

ul.irregular:not(.breadcrumbs) {
	padding-left: 0;
	& li {
		list-style: none;
		padding-left: 30px;
		background: var(--list-stile2);
		background-size: 20px 20px;
		&:not(:last-child) {
			margin-bottom: 15px;
		}
	}
	&.star_list {
		& li {
			list-style: none;
			padding-left: 35px;
			background: var(--list-stile);
			background-size: 25px 25px;
			&:not(:last-child) {
				margin-bottom: 10px;
			}
		}
		&.column_double {
			column-count: 2;
			column-gap: 25px;
			& li {
				break-inside: avoid-column;
			}
		}
	}
	&.like_list {
		& li {
			list-style: none;
			padding-left: 45px;
			background: var(--like-stile);
			background-size: 30px 30px;
			&:not(:last-child) {
				margin-bottom: 30px;
			}
		}
		& .label {
			margin-bottom: 5px;
			font-weight: 500;
			font-size: 26px;
			line-height: 30px;
		}
	}
}

@keyframes bg_button {
    0% { background-position: 300% 0; }
    100% { background-position: 0 0; }
}

@keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

.button, button {
	display: inline-block;
	transition: all 0.3s ease;
	text-align: center;
	border: 0;
	outline: none;
	cursor: pointer;
	padding: 20px 30px;
	border-radius: 100px;
	font-weight: 500;
	font-size: 17px;
	line-height: 20px;
	&.bg_1 {
		background: var(--button-bg-1);
		color: var(--button-color-1);
		&:disabled {
			background: rgba(0, 0, 0, 0.05);
			color: rgba(0, 0, 0, 0.5);
		}
		& span {
			display: block;
			position: relative;
			transition: all 0.3s ease;
			&::after {
				position: absolute;
				content: attr(data-text);
				background-image: linear-gradient(100deg, #C15C5C, #A48E4F, #4B8B45, #456C99, #96436A, #456C99, #4B8B45, #A48E4F, #C15C5C);
				-webkit-background-clip: text;
				-webkit-text-fill-color: transparent;
				background-size: 300%;
				animation: bg_button 5s linear infinite;
				left: 0;
				top: 0;
				width: 100%;
				height: 100%;
				opacity: 0;
				transition: all 0.3s ease;
			}
		}
	}
	&.bg_2 {
		background: var(--button-bg-2);
		color: var(--button-color-2);
		position: relative;
		& span {
			position: relative;
			z-index: 2;
		}
		&::after {
			position: absolute;
			content: "";
			background: linear-gradient(100deg, #22894E, #26658A, #272289, #8A266F, #272289, #26658A, #22894E);
            background-size: 300%;
            animation: bg_button 15s linear infinite;
			left: 0;
			top: 0;
			width: 100%;
			height: 100%;
			transition: all 0.3s ease;
			opacity: 0;
			border-radius: 100px;
			z-index: 1;
		}
	}
	&.icon {
		padding-left: 60px;
		position: relative;
		&::before {
			position: absolute;
			content: "";
			width: 20px;
			height: 20px;
			left: 30px;
			top: 50%;
			transform: translateY(-50%);
		}
	}
	&.download {
		width: 110px;
		height: 110px;
		background: var(--button-bg-1) var(--download);
		background-size: 30px 30px;
	}
	&.phone::before {
		background: var(--phone_icon);
	}
	&.telegram::before {
		background: var(--telegram_icon);
	}
	&.whatsapp::before {
		background: var(--whatsapp_icon);
	}
	&.mail::before {
		background: var(--mail_icon);
	}
	&.small {
		padding: 12px 20px 13px 20px;
	}
}

.wrap_header {
	max-width: 1920px;
	margin: 0 auto;
	& .close {
		display: none;
	}
}

.main_page {
	& header {
		& .logo {
			opacity: 0;
			transition: all 0s;
		}
	}
}

header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	padding: 10px;
	font-weight: 500;
	font-size: 15px;
	line-height: 20px;
	top: -200px;
	transition: top 0s;
	& .col {
		display: flex;
		&:last-child {
			white-space: nowrap;
			& .button {
				display: flex;
				align-items: center;
			}
		}
	}
	& .logo {
		display: block;
		width: 95px;
		height: 95px;
		background: url(../icons/logo_small.svg) center / contain no-repeat;
		margin-right: 15px;
		padding: 0;
	}
	& .page_menu {
		display: inline-flex;
		flex-wrap: wrap;
		margin-bottom: 5px;
		backdrop-filter: blur(20px);
		border-radius: 100px;
		& a {
			display: block;
			padding: 12px 20px 13px 20px;
		}
	}
	& .menu {
		display: flex;
		flex-wrap: wrap;
	}
	& .wrap_item_menu {
		position: relative;
		padding-bottom: 5px;
	}
	& .title_menu {
		display: block;
		padding: 12px 20px 13px 20px;
		border-radius: 100px;
		background: var(--button-bg-1);
		margin-right: 5px;
		backdrop-filter: blur(20px);
		transition: background 0.3s ease;
	}
	& .list {
		position: absolute;
		left: 0;
		top: 100%;
		border-radius: 30px;
		box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.12),0px 2px 1px 0px rgba(0, 0, 0, 0.04);
		background: var(--button-color-2);
		padding: 20px 0;
		border: 1px solid var(--border-color);
		z-index: 2;
		opacity: 0;
		visibility: hidden;
		transition: opacity 0.3s ease;
		width: 280px;
		& .back {
			display: none;
		}
	}
	& a {
		display: block;
		transition: all 0.3s ease;
		color: var(--main-font-color);
		padding: 10px 30px;
	}
	& .item_list {
		&:not(:last-child) {
			margin-bottom: 10px;
		}
		& a {
			&.blur {
				color: var(--second-font-color);
			}
		}
	}
	& .wrap_sub_list {
		width: 285px;
		position: absolute;
		left: 100%;
		top: 0;
		padding-left: 5px;
		opacity: 0;
		visibility: hidden;
		transition: opacity 0.3s ease;
	}
	& .sub_list {
		width: 100%;
		border-radius: 30px;
		box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.12),0px 2px 1px 0px rgba(0, 0, 0, 0.04);
		background: var(--button-color-2);
		padding: 20px 0;
		border: 1px solid var(--border-color);
		z-index: 2;
		& a {
			color: var(--main-font-color);
			&:not(:last-child) {
				margin-bottom: 5px;
			}
			&.blur {
				color: var(--second-font-color);
			}
		}
	}
	& .links {
		display: flex;
		flex-wrap: wrap;
		width: 200px;
		margin-right: 5px;
		& a {
			display: flex;
			align-items: center;
			justify-content: center;
			background: var(--button-bg-1);
			border-radius: 100px;
			padding: 12px 20px 13px 20px;
			backdrop-filter: blur(20px);
			&:first-child {
				width: 100%;
				margin-bottom: 5px;
			}
			&:not(:first-child) {
				flex: 1;
			}
		}
		& .icon {
			width: 20px;
			height: 20px;
			&:not(:last-child) {
				margin-right: 5px;
			}
			& svg path {
				fill: var(--main-font-color);
			}
		}
	}
	&.top_fixed {
		position: fixed;
		left: 50%;
		top: 0;
		width: 100%;
		max-width: 1920px;
		z-index: 4;
		transition: top 0.5s ease;
		transform: translateX(-50%);
		& .logo {
			opacity: 1;
		}
	}
}

.main_banner {
	min-height: calc(100vh - 115px);
	padding: calc(60px + 100 * ((100vw - 992px) / (1920 - 992))) 0;
	position: relative;
	max-width: 1820px;
	margin: 0 auto;
	& .wrap {
		display: flex;
		align-items: flex-end;
		justify-content: space-between;
	}
	& .wrap_text {
		width: 50%;
		position: relative;
		z-index: 1;
	}
	& .logo {
		display: block;
		margin-bottom: 80px;
		background: url(../icons/logo.svg) center / contain no-repeat;
		width: 330px;
		height: 100px;
	}
	& .text {
		font-size: calc(17px + 7 * ((100vw - 992px) / (1920 - 992)));
		line-height: calc(20px + 10 * ((100vw - 992px) / (1920 - 992)));
		margin-bottom: 60px;
	}
	& .flex_buttons {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		margin-bottom: -5px;
		& .button {
			margin-bottom: 5px;
		}
		& .button:not(:last-child) {
			margin-right: 5px;
		}
	}
	& .image {
		position: absolute;
		right: 120px;
		top: -65px;
		z-index: -1;
		width: 45%;
		max-width: 853px;
		max-height: 853px;
		& img {
			display: block;
		}
	}
	& .wrap_label {
		width: 195px;
		height: 130px;
		margin-right: 50px;
	}
}

.content {
	padding-bottom: 160px;
	&.border_line {
		border-bottom: 1px solid var(--border-color);
		margin-bottom: 80px;
	}
	&.border_line_after {
		position: relative;
		margin-bottom: 80px;
		&::after {
			position: absolute;
			content: "";
			left: 50%;
			bottom: 0;
			transform: translateX(-50%);
			height: 1px;
			width: calc(100% - 140px);
			max-width: 1820px;
			border-bottom: 1px solid var(--border-color);
		}
	}
}

.flex_content {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	& h3 {
		margin-bottom: 60px;
	}
	& .col {
		width: calc(50% - 20px);
	}
	& .indicators {
		padding: 0 140px;
		font-weight: 500;
		& .head {
			display: flex;
			justify-content: center;
			margin-bottom: 40px;
		}
		& .item {
			position: relative;
			padding-left: 100px;
			flex: 1;
			&.p_item {
				padding-left: 190px;
				min-height: 150px;
				& .title {
					font-size: 120px;
					line-height: 120px;
				}
				&::before {
					position: absolute;
					content: "";
					width: 150px;
					height: 150px;
					left: 0;
					top: 0;
					background: url(../icons/p_icon.svg) center / contain no-repeat;
				}
			}
			&.ye_item::before {
				background: url(../icons/ye_icon.svg) center / contain no-repeat;
			}
			&.cl_item::before {
				background: url(../icons/cl_icon.svg) center / contain no-repeat;
			}
			&.em_item::before {
				background: url(../icons/em_icon.svg) center / contain no-repeat;
			}
			&.re_item::before {
				background: url(../icons/re_icon.svg) center / contain no-repeat;
			}
			& .title {
				font-size: 60px;
				line-height: 60px;
			}
		}
		& .line_indicator {
			display: flex;
			justify-content: center;
			padding-top: 40px;
			border-top: 1px solid var(--border-color);
			&:not(:last-child) {
				margin-bottom: 40px;
			}
			& .item {
				min-height: 80px;
				&:first-child {
					margin-right: 60px;
				}
				&::before {
					position: absolute;
					content: "";
					width: 80px;
					height: 80px;
					left: 0;
					top: 0;
				}
			}
		}
	}
}

.flex_image {
	display: flex;
	margin-bottom: 60px;
	position: relative;
	& .col {
		width: 50%;
		&:last-child {
			display: flex;
			justify-content: flex-end;
			border-radius: 30px;
			padding: 55px 40px;
			background: var(--button-bg-1);
			& .text {
				width: 65%;
			}
		}
		&:first-child {
			padding-right: 15%;
			font-size: 24px;
			line-height: 30px;
		}
	}
	& .image {
		position: absolute;
		width: 580px;
		height: 580px;
		left: calc(50% - 30px);
		top: 50%;
		transform: translate(-50%, -50%);
		z-index: 1;
		& img {
			display: block;
		}
	}
}

.flex_half {
	display: flex;
	& .col {
		width: 50%;
		& img {
			display: block;
			height: auto;
		}
		& svg {
			width: 100%;
			height: 100%;
			& path:nth-child(1) {
				fill: var(--main-font-color);
			}
			& ellipse {
				fill: var(--main-font-color);
			}
			& path:nth-child(4) {
				fill: var(--main-font-color);
			}
			& path:nth-child(6) {
				fill: var(--main-font-color);
			}
			& path:nth-child(7) {
				fill: var(--main-font-color);
			}
		}
		& .list {
			font-weight: 500;
			& .item_list {
				display: block;
				padding-right: 25px;
				position: relative;
				&:not(:last-child) {
					margin-bottom: 15px;
				}
				&::after {
					position: absolute;
					content: "";
					width: 20px;
					height: 20px;
					background: var(--arrow_item_list);
					bottom: 0;
					margin-left: 5px;
				}
			}
			& a.item_list {
				text-decoration: underline;
				text-decoration-color: transparent;
				transition: all 0.3s ease;
			}
		}
	}
	& .text {
		margin-bottom: 60px;
		font-size: 24px;
		line-height: 30px;
	}
	& .like_list {
		margin-bottom: 60px;
		font-size: 20px;
		line-height: 25px;
		max-width: 560px;
	}
	&.pad {
		justify-content: space-between;
		& .col {
			width: calc(50% - 20px);
			&:last-child {
				display: flex;
				flex-direction: column;
				font-size: 24px;
				line-height: 30px;
			}
		}
		& .text {
			margin-bottom: 40px;
		}
		& .address {
			font-size: 24px;
			line-height: 30px;
			font-weight: 500;
			margin-bottom: 60px;
		}
		& .links {
			display: flex;
			& .button {
				margin-right: 5px;
				flex-grow: unset;
			}
		}
		& .button {
			display: flex;
			align-items: center;
			justify-content: center;
			flex-grow: 1;
			border-radius: 1000px;
			&.large_icon {
				position: relative;
				& span {
					display: block;
					position: relative;
					padding-top: 160px;
					&::before {
						position: absolute;
						content: "";
						width: 120px;
						height: 120px;
						top: 0;
						left: 50%;
						transform: translateX(-50%);
						background: url(../icons/chat.svg) center / contain no-repeat;
					}
				}
				& .icon {
					position: absolute;
					width: calc(100% - 320px);
					background: url(../img/l_icon.webp) center / contain no-repeat;
					top: -140px;
					right: -80px;
					z-index: 2;
					&::after {
						display: block;
						content: "";
						padding-top: 100%;
					}
				}
				&::after {
					border-radius: 1000px;
				}
			}
			&.double_image {
				margin-bottom: 20px;
				& .icon {
					position: absolute;
					width: 340px;
					height: 340px;
					background: url(../img/l_icon2.webp) center / contain no-repeat;
					top: -70px;
					right: -30px;
					z-index: 2;
				}
				& .icon2 {
					position: absolute;
					width: 350px;
					height: 350px;
					background: url(../img/l_icon3.webp) center / contain no-repeat;
					bottom: 0;
					left: -70px;
					z-index: 2;
				}
				& span {
					display: block;
					position: relative;
					padding-top: 160px;
					&::before {
						position: absolute;
						content: "";
						width: 120px;
						height: 120px;
						top: 0;
						left: 50%;
						transform: translateX(-50%);
						background: url(../icons/satellite.svg) center / contain no-repeat;
					}
				}
				&::after {
					border-radius: 1000px;
				}
			}
		}
		& .flex_buttons {
			display: flex;
			flex-wrap: wrap;
			& .button {
				&:last-child {
					flex-grow: unset;
				}
			}
		}
	}
}

.main_catalog {
	display: flex;
	margin-bottom: 80px;
	& .item_catalog {
		width: calc((100% / 3) - 4px);
		&:not(:last-child) {
			margin-right: 6px;
		}
	}
	& .wrap_image {
		overflow: hidden;
		position: relative;
		margin-bottom: 10px;
		border-radius: 30px;
		& img {
			display: block;
			object-fit: cover;
			position: absolute;
			left: 0;
			top: 0;
		}
		&::after {
			display: block;
			content: "";
			padding-top: calc(100% - 140px);
		}
	}
	& .name {
		font-weight: 500;
		margin-bottom: 5px;
	}
	& .parent {
		color: var(--second-font-color);
		& span:not(:last-child) {
			position: relative;
			padding-right: 15px;
			margin-right: 5px;
			&::after {
				position: absolute;
				content: "";
				width: 8px;
				height: 8px;
				background: var(--second-font-color);
				border-radius: 50%;
				right: 0;
				top: 50%;
				transform: translateY(-50%);
			}
		}
	}
}

.large_text {
	font-size: 24px;
	line-height: 30px;
	margin-bottom: 80px;
	&.half {
		width: 50%;
	}
}

.tab_nav {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 20px;
	font-weight: 500;
	line-height: 30px;
	color: var(--second-font-color);
	padding-left: 40px;
	background: url(../icons/star.svg) left 0 top 0 / contain no-repeat;
	background-size: 30px 30px;
	& .item_nav {
		cursor: pointer;
		margin: 0 30px 20px 0;
		&.active {
			color: var(--main-font-color);
		}
	}
}

.tabs .tab:not(:first-child) {
	display: none;
}

.catalog_list {
	display: flex;
	flex-wrap: wrap;
	margin-right: -5px;
	margin-bottom: -5px;
	& .item_list {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		width: calc(25% - 5px);
		margin-right: 5px;
		margin-bottom: 5px;
		border-radius: 30px;
		padding: 40px;
		background: var(--button-bg-1);
		& .icon {
			width: 140px;
			height: 140px;
			margin-bottom: 20px;
		}
		& .head {
			margin-bottom: 50px;
			position: relative;
			& .label {
				position: absolute;
				right: 0;
				top: 0;
				font-weight: 500;
				font-size: 13px;
				line-height: 15px;
				display: flex;
				flex-direction: column;
				align-items: flex-end;
				text-align: right;
				z-index: 1;
				& img {
					display: block;
					width: 40px;
					height: 40px;
					margin-bottom: 5px;
				}
			}
		}
		& .flex_list {
			& .item_f_list {
				display: flex;
				align-content: center;
				justify-content: space-between;
				&:not(:last-child) {
					margin-bottom: 10px;
				}
			}
			& .label {
				margin-right: 5px;
				color: var(--second-font-color);
			}
			& .vol {
				font-weight: 500;
				text-align: right;
			}
			&:not(:last-child) {
				margin-bottom: 40px;
			}
		}
		& .button {
			align-self: flex-start;
		}
	}
	&.service_page_list {
		padding-top: 40px;
		&:not(:last-child) {
			margin-bottom: 40px;
		}
	}
}

.flex_third {
	display: flex;
	padding-top: 40px;
	&.main {
		border-top: 1px solid var(--border-color);
	}
	&:not(:last-child) {
		margin-bottom: 40px;
	}
	& .item_third {
		width: calc(100% / 3);
		padding-right: 40px;
	}
	& .head {
		max-width: 420px;
	}
	& .icon {
		width: 80px;
		height: 80px;
		margin-bottom: 20px;
		& svg {
			width: 100%;
			height: 100%;
			& path {
				stroke: var(--main-font-color);
			}
		}
	}
	& .text {
		max-width: 420px;
	}
}

.slide_third {
	display: flex;
	padding-top: 40px;
	& .col {
		width: calc(100% / 3);
		&.image {
			position: relative;
			&::after {
				display: block;
				content: "";
				padding-top: 100%;
			}
			& .image_slide {
				position: absolute;
				left: 0;
				top: 0;
				width: 100%;
				height: 100%;
				transition: opacity 0.8s linear;
				opacity: 0;
				visibility: hidden;
				&.active {
					opacity: 1;
					visibility: visible;
				}
			}
		}
	}
	& .nav {
		font-size: 24px;
		line-height: 30px;
		font-weight: 500;
		color: var(--second-font-color);
		counter-reset: number;
	}
	& .name {
		cursor: pointer;
		padding: 40px;
		border-radius: 30px;
		position: relative;
		display: flex;
		align-items: flex-start;
		transition: background 0.3s ease;
		&.active {
			color: var(--main-font-color);
			background: var(--button-bg-1);
		}
		&::before {
			display: block;
			content: counter(number, decimal-leading-zero);
    		counter-increment: number;
			margin-right: 5px;
			min-width: 95px;
		}
	}
	& .list {
		display: none;
	}
	& .slide_content {
		& .list {
			display: block;
		}
		& .item_list {
			padding: 20px 30px;
			position: relative;
			&::before {
				position: absolute;
				content: "";
				width: 20px;
				height: 20px;
				left: 0;
				top: 20px;
				background: var(--check);
			}
		}
	}
}

.reviews_main {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 80px;
	padding-top: 40px;
	margin: 0 -6px 74px 0;
	& .item_rev {
		width: calc((100% / 3) - 6px);
		padding: 110px 40px 40px 40px;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		background: var(--button-bg-1);
		border-radius: 30px;
		position: relative;
		cursor: pointer;
		margin: 0 6px 6px 0;
		&::before {
			position: absolute;
			content: "“";
			font-weight: 500;
			font-size: 70px;
			line-height: 65px;
			left: 40px;
			top: 40px;
		}
	}
	& .wrap_text {
		margin-bottom: 45px;
		font-size: 24px;
		line-height: 30px;
	}
	& .title {
		font-weight: 500;
		margin-bottom: 5px;
	}
	& .footnote_title {
		color: var(--second-font-color);
	}
	& .text {
		overflow: hidden;
        text-overflow: ellipsis;
        display: -moz-box;
        display: -webkit-box;
        line-clamp: 9;
        box-orient: vertical;
        -moz-box-orient: vertical;
        -webkit-line-clamp: 9;
        -webkit-box-orient: vertical;
	}
}

.infinite_slider {
	padding-top: 40px;
	& .item_slider {
		width: 320px;
		height: 240px;
		min-width: 320px;
		min-height: 240px;
	}
	& .after_slide {
		width: 240px;
		height: 240px;
		min-width: 240px;
		min-height: 240px;
	}
	&.flex {
		display: flex;
		margin: 0 auto;
	    max-width: 1820px;
	    padding: 0 70px;
	}
}

.flex_third_b_f {
	display: flex;
	margin-bottom: 80px;
	padding-top: 40px;
	& .item_f {
		display: flex;
		width: calc(25% - 4px);
		padding: 40px;
		border-radius: 30px;
		background: var(--button-bg-1);
		&:not(:last-child) {
			margin-right: 6px;
		}
		&:first-child {
			width: calc(50% - 4px);
		}
	}
	& .image {
		flex: 1;
		margin-right: 40px;
		display: flex;
		justify-content: space-between;
		& .col {
			height: 270px;
			flex: unset;
			&:first-child {
				width: 37.5%;
				& svg {
					width: 100%;
					height: 100%;
					& path {
						fill: var(--main-font-color);
					}
					& ellipse {
						fill: var(--main-font-color);
					}
				}
			}
			&:last-child {
				overflow: hidden;
				border-radius: 1000px;
				width: 56%;
			}
			& img {
				object-fit: cover;
			}
		}
	}
	& .col {
		flex: 1;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}
	& .text_wrap {
		margin-bottom: 40px;
	}
	& .label {
		display: inline-block;
		padding: 7.5px 10px;
		border-radius: 100px;
		background: var(--button-bg-1);
		margin-bottom: 20px;
		font-size: 13px;
		line-height: 15px;
		color: var(--second-font-color);
	}
	& .title {
		font-size: 26px;
		line-height: 30px;
		font-weight: 500;
		margin-bottom: 20px;
	}
	& .date {
		font-size: 15px;
		line-height: 20px;
		color: var(--second-font-color);
	}
}

.seo_section {
	padding-top: 20px;
	& .text {
		max-width: calc(((100% / 3) * 2) - 20px);
		font-size: 24px;
		line-height: 30px;
		margin-bottom: 40px;
		& a {
			text-decoration: underline;
		}
		&:last-child {
			margin-bottom: 20px;
		}
	}
	& .flex_seo {
		display: flex;
	}
	& .item_flex {
		width: calc((100% / 3) - 40px);
		&:not(:last-child) {
			margin-right: 60px;
		}
	}
	& .title {
		font-size: 26px;
		line-height: 30px;
		margin-bottom: 20px;
		font-weight: 500;
	}
	& .label_title {
		font-weight: 500;
		color: var(--second-font-color);
	}
	& .wrap_chart_section {
		border-radius: 30px;
		padding: 60px;
		border: 1px solid var(--border-color);
		margin-top: 60px;
	}
	& .chart_section {
		max-width: 830px;
		& .head_chart {
			display: flex;
			align-items: flex-start;
			justify-content: space-between;
			margin-bottom: 34px;
		}
		& .col {
			display: flex;
			align-items: center;
			font-size: 13px;
			line-height: 15px;
			font-weight: 500;
			color: var(--button-color-2);
		}
		& .label_col {
			border-radius: 45px;
			padding: 5px 10px 5px 25px;
			&:not(:last-child) {
				margin-right: 5px;
			}
			&.ya {
				background: var(--ya-color) url(../icons/ya.svg) left 5px center / contain no-repeat;
				background-size: 15px 15px;
			}
			&.go {
				background: var(--go-color) url(../icons/go.svg) left 5px center / contain no-repeat;
				background-size: 15px 15px;
			}
		}
		& canvas {
			width: 100%!important;
			height: auto!important;
			max-height: 415px;
		}
	}
}

.faq_section {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	padding-top: 40px;
	& .col {
		width: calc(50% - 20px);
	}
}

.slide_item {
	&:not(:last-child) {
		margin-bottom: 20px;
	}
	& .name {
		font-weight: 500;
		font-size: 24px;
		line-height: 30px;
		display: flex;
		align-items: center;
		min-height: 45px;
		position: relative;
		padding-left: 80px;
		cursor: pointer;
		&::before {
			position: absolute;
			content: "";
			width: 60px;
			height: 45px;
			border-radius: 100px;
			left: 0;
			top: 0;
			background: var(--button-bg-1) url(../icons/plus.svg) center / contain no-repeat;
			background-size: 20px 20px;
		}
		&.active::before {
			background: var(--button-bg-1) url(../icons/minus.svg) center / contain no-repeat;
			background-size: 20px 20px;
		}
	}
	& .list {
		padding: 20px 0 40px 80px;
		display: none;
	}
}

.form_wrap {
	width: calc(50% - 20px);
	max-width: 560px;
	border-radius: 30px;
	border: 1px solid var(--border-color);
	padding: 140px 40px 40px 40px;
	position: relative;
	&::before {
		position: absolute;
		content: "";
		width: 80px;
		height: 80px;
		left: 40px;
		top: 40px;
		background: var(--question);
	}
	& h5 {
		margin-bottom: 60px;
	}
	& nav {
		display: flex;
		flex-wrap: wrap;
		margin-bottom: 30px;
		font-weight: 500;
		& .item_nav {
			cursor: pointer;
			color: var(--second-font-color);
			margin-right: 30px;
			margin-bottom: 10px;
			display: flex;
			align-items: center;
			& svg {
				width: 20px;
				height: 20px;
				margin-right: 5px;
				& path {
					fill: var(--second-font-color);
				}
			}
			&.active {
				color: var(--main-font-color);
				& svg {
					& path {
						fill: var(--main-font-color);
					}
				}
			}
		}
	}
	& input[type="text"] {
		margin-bottom: 40px;
	}
}

.agree {
	position: relative;
	cursor: pointer;
	padding-left: 30px;
	margin-bottom: 20px;
	&::before {
		position: absolute;
		content: "";
		width: 20px;
		height: 20px;
		left: 0;
		top: 2px;
		border-radius: 5px;
		background: var(--button-bg-1);
	}
	&.checked::before {
		background: var(--main-font-color) url(../icons/check_light.svg) center / contain no-repeat;
		background-size: 15px 15px;
	}
	& a {
		text-decoration: underline;
	}
}

footer {
	min-height: 640px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	color: var(--button-color-2);
	position: relative;
	z-index: 3;
	& #glscreen {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		z-index: 1;
	}
	& img {
		position: relative;
		z-index: 2;
		height: auto;
	}
}

.footer_flex {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	padding: 100px 10px 10px 10px;
	font-size: 15px;
	line-height: 20px;
	position: relative;
	z-index: 2;
	& .col {
		max-width: calc(50% - 30px);
		&:first-child {
			margin-right: 60px;
		}
		&:last-child {
			text-align: right;
		}
	}
	& .item_col {
		display: block;
		&:not(:last-child) {
			margin-bottom: 5px;
		}
	}
}

select[name="tab_nav"] {
	display: none;
}

.mobile_header {
	display: none;
}

.popup {
	position: fixed;
	display: none;
	align-items: center;
	justify-content: flex-end;
	background: var(--second-font-color);
	z-index: 5;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	& .wrap_popup {
		height: 100%;
		width: 620px;
		padding: 10px;
	}
	& .content_popup {
		padding: 100px 0 40px 0;
		background: var(--button-color-2);
		border-radius: 30px;
		height: 100%;
		position: relative;
		display: flex;
		align-items: center;
		& .scroll_content {
			padding-right: 40px;
			overflow: hidden;
			overflow-y: auto;
			max-height: 100%;
			padding-bottom: 20px;
			padding-left: 40px;
			width: 100%;
		}
	}
	& .close {
		position: absolute;
		cursor: pointer;
		font-size: 15px;
		line-height: 20px;
		top: 40px;
		right: 40px;
		z-index: 1;
	}
	& input[type="text"], & textarea {
		margin-bottom: 10px;
		&:last-child {
			margin-bottom: 0;
		}
	}
	& .item_form {
		margin-bottom: 40px;
		& nav {
			display: flex;
			flex-wrap: wrap;
			margin-bottom: 30px;
			font-weight: 500;
			& .item_nav {
				cursor: pointer;
				color: var(--second-font-color);
				margin-right: 30px;
				margin-bottom: 10px;
				display: flex;
				align-items: center;
				& svg {
					width: 20px;
					height: 20px;
					margin-right: 5px;
					& path {
						fill: var(--second-font-color);
					}
				}
				&.active {
					color: var(--main-font-color);
					& svg {
						& path {
							fill: var(--main-font-color);
						}
					}
				}
			}
		}
	}
	& .icon {
		width: 240px;
		height: 240px;
		margin-bottom: 80px;
		display: inline-block;
		& img {
			display: block;
		}
	}
	&#thanks {
		text-align: center;
		& h4 {
			margin-bottom: 20px;
		}
	}
	&.item_team {
		& .content_popup {
			padding-top: 0;
		}
		& .wrap_image {
			height: 460px;
			background: var(--button-bg-1);
			margin-bottom: 40px;
			margin-left: -40px;
			margin-right: -40px;
			& img {
				display: block;
			}
		}
		& .name {
			font-size: 35px;
			font-weight: 500;
			line-height: 40px;
			margin-bottom: 10px;
		}
		& .footnote_name {
			color: var(--second-font-color);
			margin-bottom: 40px;
		}
		& .flex_link {
			display: flex;
			flex-wrap: wrap;
			margin-right: -30px;
			margin-bottom: 20px;
			font-weight: 500;
			& a {
				display: block;
				margin: 0 30px 20px 0;
				padding-left: 25px;
				white-space: nowrap;
				&.phone {
					background: url(../icons/phone.svg) left 0 center / contain no-repeat;
					background-size: 20px 20px;
				}
				&.telegram {
					background: url(../icons/telegram.svg) left 0 center / contain no-repeat;
					background-size: 20px 20px;
				}
				&.whatsapp {
					background: url(../icons/whatsapp.svg) left 0 center / contain no-repeat;
					background-size: 20px 20px;
				}
			}
		}
		& .text_item_team {
			margin-bottom: 40px;
		}
		& .skills_list {
			& .item_s:not(:last-child) {
				margin-bottom: 10px;
			}
		}
	}
	&.center {
		justify-content: center;
		& .wrap_popup {
			height: auto;
			padding: 0;
			width: 840px;
		}
		& .content_popup {
			display: block;
			padding: 130px 40px 40px 40px;
			height: auto;
			& .text {
				margin-bottom: 40px;
				font-size: 24px;
				line-height: 30px;
			}
		}
		& .wrap_title {
			& .title {
				font-weight: 500;
				margin-bottom: 5px;
			}
			& .footnote_title {
				color: var(--second-font-color);
			}
		}
		& .logo_case {
			position: absolute;
			width: 140px;
			height: 30px;
			left: 40px;
			top: 40px;
			& img {
				display: block;
			}
		}
	}
}

.slide_list {
	position: relative;
	margin-bottom: 10px;
	& .name {
		cursor: pointer;
		padding: 12px 43px 13px 20px;
		position: relative;
		border-radius: 10px;
		border: 1px solid var(--border-color);
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		&.active {
			background: var(--border-color);
		}
		&::after {
			position: absolute;
			content: "";
			width: 20px;
			height: 20px;
			right: 13px;
			top: 50%;
			transform: translateY(-50%);
			background: url(../icons/arrow.svg) center / contain no-repeat;
		}
	}
	& .list {
		display: none;
		position: absolute;
		left: 0;
		top: 100%;
		width: 100%;
		background: #ffffff;
		z-index: 2;
		box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.12),0px 2px 1px 0px rgba(0, 0, 0, 0.04);
		& .item_list {
			padding: 12px 43px 13px 20px;
			cursor: pointer;
			position: relative;
			&.active::after {
				position: absolute;
				content: "";
				width: 20px;
				height: 20px;
				right: 13px;
				top: 50%;
				transform: translateY(-50%);
				background: var(--check);
			}
			&:nth-child(even) {
				background: var(--border-color);
			}
		}
	}
}

select.slide_list {
	display: none;
}

.page_banner {
	padding-top: 30px;
	position: relative;
	max-width: 1820px;
	margin: 0 auto;
	margin-bottom: 160px;
	&.border_line {
		margin-bottom: 80px;
		padding-bottom: calc(60px + 100 * ((100vw - 992px) / (1920 - 992)));
		&::after {
			position: absolute;
			content: "";
			left: 50%;
			bottom: 0;
			transform: translateX(-50%);
			height: 1px;
			width: calc(100% - 140px);
			max-width: 1820px;
			border-bottom: 1px solid var(--border-color);
		}
	}
	& .wrap {
		display: flex;
		align-items: flex-end;
		justify-content: space-between;
	}
	& .wrap_text {
		width: 50%;
		position: relative;
		z-index: 1;
	}
	& .text {
		font-size: calc(17px + 7 * ((100vw - 992px) / (1920 - 992)));
		line-height: calc(20px + 10 * ((100vw - 992px) / (1920 - 992)));
		margin-bottom: 40px;
	}
	& .flex_buttons {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		margin-bottom: -5px;
		& .button {
			margin-bottom: 5px;
		}
		& .button:not(:last-child) {
			margin-right: 5px;
		}
	}
	& .image {
		position: absolute;
		right: 120px;
		top: -65px;
		z-index: -1;
		width: 45%;
		max-width: 853px;
		max-height: 853px;
		& img {
			display: block;
		}
	}
	& .footnote_text {
		background: var(--button-bg-1);
		padding: 40px;
		border-radius: 30px;
	}
	.flex_info {
		display: flex;
		align-items: flex-start;
		& .info {
			flex: 1;
			&:not(:last-child) {
				margin-right: 5px;
			}
		}
		& .title {
			margin-bottom: 5px;
			color: var(--second-font-color);
		}
		& .inf {
			font-weight: 500;
			& a {
				display: inline-block;
				padding-right: 25px;
				background: url(../icons/new_window.svg) right 0 center / contain no-repeat;
				background-size: 20px 20px;
			}
		}
	}
}

ul.breadcrumbs {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	margin-bottom: 55px;
	font-size: 15px;
	line-height: 20px;
	font-weight: 500;
	color: var(--second-font-color);
	&:last-child {
		margin-bottom: 0;
	}
	& li {
		list-style: none;
		margin: 0 15px 15px 0;
		padding-left: 0;
		& a {
			display: block;
			position: relative;
			color: var(--main-font-color);
		}
		&:not(:last-child) {
			& a {
				padding-right: 22px;
				&::after {
					position: absolute;
					content: "/";
					right: 0;
					top: 50%;
					transform: translateY(-50%);
				}
			}
		}
	}
}

.team_text {
	margin-bottom: 40px;
	max-width: calc(((100% / 3) * 2) - 20px);
	font-size: calc(26px + 19 * ((100vw - 992px) / (1920 - 992)));
	font-weight: 500;
	line-height: calc(30px + 20 * ((100vw - 992px) / (1920 - 992)));
}

.team_list {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -5px -80px 0;
	& .item_team {
		width: calc(25% - 5px);
		margin: 0 5px 80px 0;
		cursor: pointer;
		& .hidden_section {
			display: none;
		}
	}
	& .wrap_image {
		border-radius: 30px;
		background: var(--button-bg-1);
		overflow: hidden;
		position: relative;
		margin-bottom: 10px;
		&::after {
			display: block;
			content: "";
			padding-top: 100%;
		}
		& img {
			position: absolute;
			left: 0;
			top: 0;
			object-fit: cover;
			object-position: top center;
			display: block;
		}
	}
	& .name {
		font-weight: 500;
		margin-bottom: 5px;
	}
	& .footnote_name {
		color: var(--second-font-color);
	}
}

.page_banner.contacts_page {
	& .wrap {
		display: block;
	}
	& .wrap_text {
		width: auto;
	}
}

.contacts_wrap {
	display: flex;
	padding-top: 20px;
	justify-content: space-between;
	& .col {
		width: calc(50% - 2.5px);
		font-size: 24px;
		line-height: 30px;
	}
	& .image_contacts {
		height: 470px;
		width: 100%;
		overflow: hidden;
		border-radius: 30px;
		margin-bottom: 20px;
		& img {
			display: block;
			object-fit: cover;
		}
	}
	& .pnone {
		display: block;
		margin-bottom: 10px;
	}
	& .shed {
		margin-bottom: 20px;
		color: var(--second-font-color);
		font-size: 17px;
		line-height: 20px;
	}
	& .map {
		height: 470px;
		width: 100%;
		overflow: hidden;
		border-radius: 30px;
		margin-bottom: 20px;
	}
}

.docs_list {
	padding-top: 20px;
	font-size: 24px;
	line-height: 30px;
	& .item_docs {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 20px 0 40px 0;
		border-top: 1px solid var(--border-color);
	}
	& .name {
		width: calc(50% - 2.5px);
		padding-right: 30px;
		padding-left: 45px;
		background: url(../icons/download.svg) left 5px top 4px / contain no-repeat;
		background-size: 20px 20px;
	}
	& span {
		width: calc(50% - 2.5px);
		display: block;
		color: var(--second-font-color);
	}
}

.case_catalog {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -6px 74px 0;
	padding-top: 40px;
}

.item_case {
	margin: 0 6px 6px 0;
	border-radius: 30px;
	background: var(--button-bg-1);
	padding: 40px;
	width: calc((100% / 3) - 6px);
	& .logo {
		height: 40px;
		margin-bottom: 40px;
		width: 140px;
		& img {
			display: block;
		}
	}
	& .section_item_case {
		margin-bottom: 40px;
	}
	& .label_title {
		font-weight: 500;
		color: var(--second-font-color);
	}
	& .chart_section {
		border-radius: 15px;
		padding: 30px;
		background: var(--button-color-2);
		height: 255px;
		& .head_chart {
			display: flex;
			align-items: flex-start;
			justify-content: space-between;
			margin-bottom: 15px;
		}
		& .col {
			display: flex;
			align-items: center;
			font-size: 13px;
			line-height: 15px;
			font-weight: 500;
			color: var(--button-color-2);
		}
		& .label_col {
			border-radius: 45px;
			padding: 5px 10px 5px 25px;
			&:not(:last-child) {
				margin-right: 5px;
			}
			&.ya {
				background: var(--ya-color) url(../icons/ya.svg) left 5px center / contain no-repeat;
				background-size: 15px 15px;
			}
			&.go {
				background: var(--go-color) url(../icons/go.svg) left 5px center / contain no-repeat;
				background-size: 15px 15px;
			}
		}
		& canvas {
			width: 100%!important;
			height: 155px!important;
		}
	}
	& .image_case {
		width: 100%;
		overflow: hidden;
		height: 255px;
		border-radius: 15px;
		& img {
			display: block;
			object-fit: cover;
		}
	}
}

.tab_nav_tariff {
	display: flex;
	align-items: center;
	margin-bottom: 5px;
	padding-top: 40px;
	& .item_nav {
		width: 50%;
		display: flex;
		align-items: center;
		padding: 40px;
		border-radius: 30px;
		cursor: pointer;
		&.active {
			background: var(--button-bg-1);
		}
	}
	& .icon {
		width: 80px;
		height: 80px;
		margin-right: 20px;
		&.tarif_1 {
			background: url(../icons/t1.svg) center / contain no-repeat;
		}
		&.tarif_2 {
			background: url(../icons/t2.svg) center / contain no-repeat;
		}
	}
	& .wrap_inner {
		max-width: calc(100% - 100px);
	}
	& h4 {
		margin-bottom: 10px;
		& span {
			font-size: 17px;
			line-height: 20px;
			padding-left: 10px;
			vertical-align: top;
		}
	}
}

.tabs_tariff {
	& .tab {
		padding: 80px 40px;
		background: var(--button-bg-1);
		border-radius: 30px;
		&:not(:nth-child(2)) {
			display: none;
		}
	}
	& .top_tab {
		display: flex;
		align-items: stretch;
		margin-bottom: 80px;
	}
	& .wrap_range {
		width: calc(50% - 170px);
		padding: 100px;
		border-radius: 1000px;
		background: var(--button-color-2);
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
		font-weight: 500;
		font-size: 24px;
		line-height: 30px;
	}
	& .wrap_input {
		input[type="text"] {
			border-radius: 15px;
		}
	}
	& .slider_range {
		width: calc(100% - 30px);
		margin: -3px 0 0 15px;
		& .ui-state-default {
			background: var(--main-font-color);
			width: 20px;
			height: 20px;
		}
		&.ui-widget-content {
			background: transparent;
		}
	}
	& .wrap_result {
		width: 340px;
		height: 340px;
		border-radius: 50%;
		background: var(--button-color-2);
		padding: 80px;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
		font-weight: 500;
		& .val {
			margin-bottom: 20px;
			font-size: 35px;
			line-height: 40px;
		}
		& .footnote {
			font-weight: 400;
			color: var(--second-font-color);
			margin-bottom: 5px;
		}
	}
	& .button {
		width: calc(50% - 170px);
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 1000px;
		padding: 75px;
		position: relative;
		font-size: 24px;
		line-height: 30px;
		&::after {
			border-radius: 1000px;
		}
		& span {
			display: block;
			position: relative;
			padding-top: 160px;
			&::before {
				position: absolute;
				content: "";
				width: 120px;
				height: 120px;
				top: 0;
				left: 50%;
				transform: translateX(-50%);
				background: url(../icons/satellite.svg) center / contain no-repeat;
			}
		}
		& .icon {
			position: absolute;
			width: 310px;
			height: 310px;
			background: url(../img/moon.webp) center / contain no-repeat;
			bottom: -90px;
			right: -45px;
			z-index: 2;
		}
	}
	& .m_item_nav {
		display: none;
	}
}

.limited_column {
	max-width: calc(((100% / 3) * 2) - 20px);
}

.number_list {
	counter-reset: number;
	padding-top: 40px;
}

.item_number_list {
	padding-left: 140px;
	min-height: 100px;
	position: relative;
	&:not(:last-child) {
		margin-bottom: 60px;
	}
	&::before {
		position: absolute;
		counter-increment: number;
		content: counter(number, decimal-leading-zero);
		left: 0;
		top: 0;
		font-size: 24px;
		line-height: 30px;
		font-weight: 500;
		text-align: center;
		background: var(--button-bg-1);
		padding: 20px;
		width: 100px;
		height: 100%;
		border-radius: 30px;
	}
	& .title_list {
		margin-bottom: 20px;
		font-weight: 500;
		font-size: 24px;
		line-height: 30px;
	}
	& .flex_col {
		display: flex;
		&:not(:last-child) {
			margin-bottom: 20px;
		}
	}
	& .col {
		flex: 1;
		&:not(:last-child) {
			margin-right: 20px;
		}
	}
	& .title_ul {
		font-weight: 500;
		margin-bottom: 15px;
	}
}

.flex_column {
	display: flex;
	flex-wrap: wrap;
	counter-reset: number_star;
	&.border_top {
		& .col {
			padding-top: 40px;
			position: relative;
			&:nth-child(odd) {
				&::before {
					position: absolute;
					content: "";
					width: 200%;
					height: 1px;
					border-top: 1px solid var(--border-color);
					left: 0;
					top: 0;
				}
			}
		}
	}
	& .col {
		width: 50%;
		padding-right: 140px;
		margin-bottom: 40px;
		& .icon {
			width: 80px;
			height: 80px;
			margin-bottom: 20px;
			position: relative;
			&::before {
				position: absolute;
				content: "";
				width: 100%;
				height: 100%;
				background: var(--star_border);
			}
			&::after {
				position: absolute;
				counter-increment: number_star;
				content: counter(number_star, decimal-leading-zero);
				left: 0;
				top: 0;
				width: 100%;
				height: 100%;
				display: flex;
				align-items: center;
				justify-content: center;
				font-weight: 500;
				font-size: 24px;
				line-height: 30px;
			}
			
		}
		&:nth-child(1n) {
			& .icon::before {
				transform: rotate(0deg);
			}
		}
		&:nth-child(2n) {
			& .icon::before {
				transform: rotate(14.3deg);
			}
		}
		&:nth-child(3n) {
			& .icon::before {
				transform: rotate(28.6deg);
			}
		}
		&:nth-child(4n) {
			& .icon::before {
				transform: rotate(42.9deg);
			}
		}
		&:nth-child(5n) {
			& .icon::before {
				transform: rotate(57.2deg);
			}
		}
		&:nth-child(6n) {
			& .icon::before {
				transform: rotate(71.5deg);
			}
		}
		&:nth-child(7n) {
			& .icon::before {
				transform: rotate(0deg);
			}
		}
		&:nth-child(8n) {
			& .icon::before {
				transform: rotate(14.3deg);
			}
		}
		&:nth-child(9n) {
			& .icon::before {
				transform: rotate(28.6deg);
			}
		}
		&:nth-child(10n) {
			& .icon::before {
				transform: rotate(42.9deg);
			}
		}
		&:last-child {
			margin-bottom: 0;
		}
		&:nth-last-child(2) {
			margin-bottom: 0;
		}
	}
	&.three_columns {
		& .col {
			width: calc(100% / 3);
			padding-top: 40px;
			position: relative;
			&:nth-child(4)::before {
				position: absolute;
				content: "";
				width: 300%;
				height: 1px;
				border-top: 1px solid var(--border-color);
				left: 0;
				top: 0;
			}
		}
	}
	&.slider_reviews {
		& .slick-list {
			margin-right: -6px;
		}
		& .col {
			height: auto;
			margin-right: 6px;
		}
	}
}

.wrap_slider {
	padding: 80px 80px 40px 80px;
	border-radius: 30px;
	background: var(--button-bg-1);
	overflow: hidden;
	&.col_image {
		display: flex;
		flex-wrap: wrap;
		& .col {
			flex: 1;
			&:not(:nth-child(2)) {
				margin-right: 40px;
			}
			& img {
				display: block;
				border: 1px solid var(--border-color);
				border-radius: 15px;
			}
		}
	}
	& .footnote_title {
		width: 100%;
		color: var(--second-font-color);
		padding-top: 40px;
	}
}

.wrap_padding {
	padding-top: 40px;
	&:not(:last-child) {
		margin-bottom: 40px;
	}
}

.demo_slider {
	margin-bottom: 40px;
	& .item_sliderColumn {
		display: flex;
	}
	& .col {
		width: 50%;
		&:first-child {
			padding-right: 20px;
		}
		&:last-child {
			padding-left: 20px;
		}
		&.image {
			border-radius: 15px;
			overflow: hidden;
			border: 1px solid var(--border-color);
			& img {
				display: block;
			}
		}
	}
	& .text_slide {
		margin-bottom: 40px;
		font-size: 24px;
		line-height: 30px;
	}
	& .wrap_slide {
		margin-right: 30px;
		max-height: 55vh;
		/*height: unset;*/
		& img {
			/*height: auto;*/
		}
	}
	& .slick-list {
		margin-right: -30px;
	}
	& .before_after {
		height: 640px;
		border-radius: 15px;
		overflow: hidden;
		border: 1px solid var(--border-color);
		& img {
			object-fit: cover;
		}
		& .twentytwenty-handle {
			width: 100px;
			height: 100px;
			backdrop-filter: blur(20px);
			background: var(--button-bg-1);
		}
	}
	& .twentytwenty-horizontal .twentytwenty-handle:before {
		box-shadow: none;
		bottom: 100%;
		margin-bottom: 0;
		background: #F6F6F6;
	}
	& .twentytwenty-horizontal .twentytwenty-handle:after {
		top: 100%;
		box-shadow: none;
		margin-top: 0;
		background: #F6F6F6;
	}
	& .twentytwenty-left-arrow {
		background: var(--arrow_slider);
		width: 20px;
		height: 20px;
		left: 30px;
		transform: translateY(-50%) rotate(180deg);
	}
	& .twentytwenty-right-arrow {
		background: var(--arrow_slider);
		width: 20px;
		height: 20px;
		right: 30px;
		transform: translateY(-50%);
	}
	& .twentytwenty-before-label:before, & .twentytwenty-after-label:before {
		padding: 12px 20px 13px 20px;
		border-radius: 52px;
		backdrop-filter: blur(20px);
		background: var(--button-bg-1);
	}
	& .twentytwenty-before-label:before, & .twentytwenty-after-label:before {
		color: var(--main-font-color);
		font-size: 17px;
		font-weight: 400;
		line-height: 20px;
	}
}


.file_list {
	font-size: 17px;
	font-weight: 500;
	line-height: 20px;
	& a {
		display: flex;
		align-items: center;
		min-height: 60px;
		padding-left: 80px;
		position: relative;
		&:not(:last-child) {
			margin-bottom: 20px;
		}
		&::before {
			position: absolute;
			left: 0;
			top: 0;
			content: "";
			width: 60px;
			height: 60px;
			border-radius: 50%;
			background: var(--button-bg-1) var(--download);
			background-size: 20px 20px;
		}
	}
}

.nav_demo_slider {
	display: none;
	align-items: center;
	justify-content: space-between;
	& .wrap_arrow {
		display: flex;
		align-items: center;
	}
	& .arrow {
		width: 90px;
		height: 60px;
		border-radius: 30px;
		backdrop-filter: blur(20px);
		background: var(--button-bg-1);
		position: relative;
		&::before {
			position: absolute;
			content: "";
			width: 20px;
			height: 20px;
			background: var(--arrow_slider);
			left: 50%;
			top: 50%;
			transform: translate(-50%, -50%);
		}
		&:not(.disabled) {
			cursor: pointer;
		}
		&.disabled {
			&::before {
				opacity: 0.5;
			}
		}
		&.prev {
			margin-right: 5px;
			&::before {
				transform: translate(-50%, -50%) rotate(-180deg);
			}
		}
	}
	& .indicator {
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 30px;
		padding: 20px 10px;
		backdrop-filter: blur(20px);
		background: var(--button-bg-1);
		font-weight: 500;
		min-width: 90px;
		& .current {
			padding-right: 4px;
		}
		& .total {
			padding-left: 4px;
		}
	}
	&:not(:last-child) {
		margin-bottom: 40px;
	}
}

.reviews_main.slider_reviews {
	& .slick-list {
		display: flex;
		margin-right: -6px;
	}
	& .slick-track {
		display: flex;
	}
	& .wrap_item {
		margin-right: 6px;
		& .item_rev {
			width: auto;
			height: 100%;
		}
	}
}

.callback_section {
	display: flex;
	padding: 40px;
	border-radius: 30px;
	border: 1px solid var(--border-color);
	& .col {
		flex: 1;
		&:first-child {
			display: flex;
			align-items: center;
		}
	}
	& .border_icon {
		width: 50%;
		height: 140px;
		margin-right: 10px;
		padding: 10px;
		border-radius: 90px;
		border: 3px solid var(--main-font-color);
		& svg {
			display: block;
			width: 120px;
			height: 120px;
			margin: 0 auto;
			& path:not(:last-child) {
				fill: var(--main-font-color);
			}
			& path:last-child {
				stroke: var(--main-font-color);
			}
		}
	}
	& .icon {
		margin-right: 10px;
		width: 140px;
		height: 140px;
		& svg {
			width: 100%;
			height: 100%;
			& path:first-child {
				fill: var(--main-font-color);
			}
		}
	}
	& .double_icon {
		width: 65px;
		height: 140px;
		& svg {
			width: 100%;
			height: 100%;
			& path {
				stroke: var(--main-font-color);
			}
			& circle {
				fill: var(--main-font-color);
			}
		}
	}
}

.wrap_column_list {
	padding-top: 40px;
	& ul {
		column-count: 4;
		column-gap: 5px;
		& a {
			transition: all 0.3s ease;
			text-decoration: underline;
			text-decoration-color: transparent;
		}
	}
}

.services_list {
	padding: 60px 100px;
	background: var(--button-color-2);
	border-radius: 15px;
	& .title {
		font-weight: 500;
		font-size: 24px;
		line-height: 30px;
		margin-bottom: 40px;
	}
	& .flex_list {
		display: flex;
		flex-wrap: wrap;
		margin: 0 -40px -30px 0;
	}
	& .item_services {
		cursor: pointer;
		position: relative;
		padding-left: 30px;
		width: calc((100% / 3) - 40px);
		margin: 0 40px 30px 0;
		& .price {
			font-weight: 500;
			padding-top: 10px;
		}
		&::before {
			position: absolute;
			content: "";
			width: 20px;
			height: 20px;
			left: 0;
			top: 2px;
			border-radius: 5px;
			background: var(--button-bg-1);
		}
		&.checked::before {
			background: var(--main-font-color) url(../icons/check_light.svg) center / contain no-repeat;
			background-size: 15px 15px;
		}
	}
}

.team_section {
	display: flex;
	flex-wrap: wrap;
	padding-top: 40px;
	margin: 0 -5px -5px 0;
}

.item_team_section {
	width: calc(25% - 5px);
	margin: 0 5px 5px 0;
	& .title {
		font-size: 24px;
		font-weight: 500;
		line-height: 30px;
		margin-bottom: 10px;
	}
	&:not(.decor) {
		border-radius: 30px;
		padding: 40px;
		background: var(--button-bg-1);
	}
	&.decor {
		& .wrap_image {
			display: flex;
			justify-content: space-between;
			&.image_1 {
				& .col {
					height: 235px;
					&:first-child {
						width: calc(100% - 120px);
						border: 3px solid var(--main-font-color);
						display: flex;
						align-items: center;
						justify-content: center;
						border-radius: 30px;
						& svg {
							width: 120px;
							height: 120px;
							& path:nth-child(1), & path:nth-child(2), & path:nth-child(4) {
								fill: var(--main-font-color);
							}
							& path:nth-child(3) {
								stroke: var(--main-font-color);
							}
						}
					}
					&:last-child {
						width: 115px;
						& svg {
							& path {
								stroke: var(--main-font-color);
							}
							& ellipse {
								fill: var(--main-font-color);
							}
						}
					}
				}
			}
			&.image_2 {
				& .col {
					height: 235px;
					&:first-child {
						width: 235px;
						& svg {
							width: 100%;
							height: 100%;
							& path:first-child {
								fill: var(--main-font-color);
							}
						}
					}
					&:last-child {
						width: calc(100% - 240px);
						display: flex;
						align-items: center;
						justify-content: center;
						border-radius: 200px;
						border: 3px solid var(--main-font-color);
						& svg {
							& circle:first-child {
								fill: var(--main-font-color);
							}
							& circle:last-child {
								stroke: var(--main-font-color);
							}
						}
					}
				}
			}
		}
	}
}

.fixed_nav {
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	padding: 10px;
	z-index: 3;
	display: flex;
	justify-content: space-between;
	font-size: 15px;
	font-weight: 500;
	line-height: 20px;
	& .scroll_top.button {
		padding-left: 45px;
		position: relative;
		backdrop-filter: blur(20px);
		&::before {
			position: absolute;
			content: "";
			width: 20px;
			height: 20px;
			top: 50%;
			left: 20px;
			transform: translateY(-50%);
			background: url(../icons/to_top.svg) center / contain no-repeat;
		}
	}
	& nav {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		margin-bottom: -10px;
	}
	& .scroll_to {
		padding: 12px 20px 13px 20px;
		border-radius: 100px;
		backdrop-filter: blur(20px);
		background: var(--button-bg-1);
		margin-bottom: 10px;
		transition: all 0.3s ease;
		&:not(.active) {
			cursor: pointer;
		}
		&.active {
			color: var(--button-color-2);
			background: var(--main-font-color);
		}
		&:not(:last-child) {
			margin-right: 5px;
		}
	}
	& .button {
		font-size: 15px;
		line-height: 20px;
		&.link {
			padding-right: 45px;
			position: relative;
			backdrop-filter: blur(20px);
			&::after {
				position: absolute;
				content: "";
				width: 20px;
				height: 20px;
				right: 20px;
				top: 50%;
				transform: translateY(-59%);
				background: url(../icons/new_window.svg) center / contain	no-repeat;
			}
		}
	}
}

.indicators_flex {
	display: flex;
	flex-wrap: wrap;
	font-weight: 500;
	font-size: 17px;
	line-height: 20px;
	padding-top: 20px;
	position: relative;
	& .item_ind {
		width: calc((100% / 3) - 6px);
		padding-right: 90px;
		margin: 0 6px 40px 0;
		&:nth-child(n+4) {
			padding-top: 40px;
			margin-bottom: 0;
		}
		&:nth-child(4n)::before {
			position: absolute;
			content: "";
			width: 100%;
			height: 1px;
			border-bottom: 1px solid var(--border-color);
			margin-top: -40px;
		}
	}
	& .title {
		font-size: 45px;
		line-height: 50px;
		margin-bottom: 10px;
	}
}

.next_item {
	display: flex;
	& .title {
		width: calc(100% - 475px);
		border-radius: 1000px;
		background: var(--button-bg-1);
		padding: 140px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		font-weight: 500;
		hyphens: auto;
	}
	& .label {
		color: var(--second-font-color);
		font-size: 24px;
		line-height: 30px;
		margin-bottom: 20px;
	}
	& .title_name {
		font-size: 60px;
		line-height: 60px;
	}
	& .image {
		width: 475px;
		height: 475px;
		border-radius: 50%;
		overflow: hidden;
		& img {
			display: block;
			object-fit: cover;
		}
	}
}

.opinions_page {
	& .page_banner {
		& .text {
			padding-top: 20px;
			margin-bottom: 60px;
		}
	}
	& .reviews_main {
		flex-wrap: wrap;
		margin: 0 -6px -6px 0;
		&:not(:last-child) {
			margin-bottom: 74px;
		}
		& .text {
			overflow: hidden;
            text-overflow: ellipsis;
            display: -moz-box;
            display: -webkit-box;
            line-clamp: 9;
            box-orient: vertical;
            -moz-box-orient: vertical;
            -webkit-line-clamp: 9;
            -webkit-box-orient: vertical;
		}
		& .wrap_text {
			margin-bottom: 15px;
		}
		& .item_rev {
			margin: 0 6px 6px 0;
			width: calc((100% / 3) - 6px);
		}
	}
}

.flex_links {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -5px -5px 0;
	& .item_link {
		margin: 0 5px 5px 0;
		width: calc((100% / 3) - 5px);
		border-radius: 30px;
		background: var(--button-bg-1);
		padding: 40px;
		transition: all 0.3s ease;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}
	& .head {
		margin-bottom: 109px;
	}
	& .label {
		margin-bottom: 20px;
		border-radius: 100px;
		padding: 7.5px 10px;
		background: var(--button-bg-1);
		font-size: 13px;
		line-height: 15px;
		color: var(--second-font-color);
		width: fit-content;
	}
	& .title {
		font-size: 26px;
		font-weight: 500;
		line-height: 30px;
		display: block;
	}
	& .ex_link {
		color: var(--second-font-color);
		font-size: 15px;
		line-height: 20px;
		position: relative;
		padding-right: 25px;
		display: block;
		&::after {
			position: absolute;
			content: "";
			width: 20px;
			height: 20px;
			right: 0;
			top: 0;
			background: url(../icons/new_window.svg) center / contain no-repeat;
			opacity: 0;
			visibility: hidden;
			transition: opacity 0.3s ease;
		}
	}
}

.media_page {
    & .page_banner {
		margin-bottom: 30px;
        & .text {
            padding-top: 20px;
			margin-bottom: 0;
        }
		& .image {
			top: -120px;
			right: 190px;
			width: 42%;
		}
    }
}

.flex_links_page {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -5px 75px 0;
	& .item_link {
		margin: 0 5px 5px 0;
		border-radius: 30px;
		padding: 40px;
		background: var(--button-bg-1);
		display: flex;
		justify-content: space-between;
		transition: all 0.3s ease;
		&:not(.image_wrap) {
			flex-direction: column;
			align-items: flex-start;
			width: calc(25% - 5px);
		}
		&.image_wrap {
			width: calc(50% - 5px);
		}
		& .image {
			width: calc(50% - 20px);
			& img {
				display: block;
			}
		}
		& .text {
			display: flex;
			flex-direction: column;
			justify-content: space-between;
			align-items: flex-start;
			width: calc(50% - 20px);
		}
		& .head {
			margin-bottom: 30px;
		}
		& .label {
			border-radius: 100px;
			background: var(--button-bg-1);
			margin-bottom: 20px;
			color: var(--second-font-color);
			padding: 7.5px 10px;
			font-size: 13px;
			line-height: 15px;
			display: inline-block;
		}
		& .title {
			font-size: 26px;
			font-weight: 500;
			line-height: 30px;
			overflow: hidden;
            text-overflow: ellipsis;
            display: -moz-box;
            display: -webkit-box;
            line-clamp: 3;
            box-orient: vertical;
            -moz-box-orient: vertical;
            -webkit-line-clamp: 3;
            -webkit-box-orient: vertical;
			&:not(:last-child) {
				margin-bottom: 20px;
			}
		}
		& .date {
			font-size: 15px;
			line-height: 20px;
			color: var(--second-font-color);
		}
		& .wrap_text {
			overflow: hidden;
            text-overflow: ellipsis;
            display: -moz-box;
            display: -webkit-box;
            line-clamp: 3;
            box-orient: vertical;
            -moz-box-orient: vertical;
            -webkit-line-clamp: 3;
            -webkit-box-orient: vertical;
		}
	}
}

.page_banner.blog_page {
	margin-bottom: 60px;
	& h1:last-child {
		margin-bottom: 0;
	}
	& .breadcrumbs {
		margin-bottom: 70px;
	}
}

.article_page {
	& .page_banner {
		margin-bottom: 0;
		&.border_line {
			padding-bottom: 30px;
		}
		& .wrap {
			align-items: center;
		}
		& .image {
			position: static;
			right: unset;
			top: unset;
			width: 50%;
			max-width: unset;
			max-height: unset;
			margin-top: -44px;
		}
		& .date {
			font-size: 15px;
			font-weight: 500;
			line-height: 20px;
			color: var(--second-font-color);
			margin-bottom: 30px;
		}
		& h1 {
			font-size: calc(32px + 28 * ((100vw - 992px) / (1920 - 992)));
			line-height: calc(30px + 30 * ((100vw - 992px) / (1920 - 992)));
			margin-bottom: 60px;
		}
		& .text {
			margin-bottom: 60px;
		}
	}
}

.tags {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -5px -5px 0;
	font-size: 13px;
	line-height: 15px;
	& .tag {
		display: block;
		margin: 0 5px 5px 0;
		border-radius: 100px;
		background: var(--button-bg-1);
		color: var(--second-font-color);
		padding: 7.5px 10px;
	}
}

.flex_wrap {
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	position: relative;
	& section {
		padding-top: 80px;
		font-size: 20px;
		line-height: 25px;
		&:not(:last-child) {
			padding-bottom: 60px;
			border-bottom: 1px solid var(--border-color);
		}
	}
	& .wrap_text {
		width: calc(100% - 562px);
	}
	& .content_section {
		&:not(:last-child) {
			margin-bottom: 60px;
		}
	}
	& .content_section_inner {
		&:not(:last-child) {
			margin-bottom: 40px;
		}
	}
	& .wrap_nav {
		padding-top: 80px;
		width: 415px;
		& .wrap_sticky {
			&:not(:last-child) {
				margin-bottom: 30px;
			}
		}
		& nav {
			border-radius: 40px;
			padding: 40px;
			background: #F6F6F6;
			& .item_nav {
				cursor: pointer;
				&.active {
					font-weight: 500;
				}
				&:not(:last-child) {
					margin-bottom: 15px;
				}
			}
			&.fixed {
				position: fixed;
				width: 415px;
				top: 130px;
				animation: fadeIn 0.5s;
				&.stop_sticky {
					position: absolute;
					bottom: 0;
					top: unset;
				}
			}
			&.fixed_top {
				position: fixed;
				width: 415px;
				top: 130px;
				&.stop_sticky {
					position: absolute;
					bottom: 0;
					top: unset;
				}
			}
		}
		& select.scroll_to {
			display: none;
		}
		& .item_col {
			border-radius: 40px;
			padding: 40px;
			border: 1px solid var(--border-color);
			&:not(:last-child) {
				margin-bottom: 30px;
			}
			&.flex {
				display: flex;
				justify-content: space-between;
				& .text {
					width: calc(100% - 140px);
				}
				& .name {
					font-weight: 500;
					margin-bottom: 5px;
				}
				& .label_name {
					color: var(--second-font-color);
					margin-bottom: 15px;
				}
				& .link {
					display: inline-block;
					font-size: 15px;
					font-weight: 500;
					line-height: 20px;
					padding-right: 25px;
					background: var(--arrow_item_list);
					background-size: 20px 20px;
				}
				& .profile_photo {
					width: 120px;
					height: 120px;
					border-radius: 15px;
					& img {
						display: block;
						object-fit: cover;
					}
				}
				& h5 {
					margin-bottom: 15px;
				}
			}
			& .image img {
				height: auto;
			}
		}
	}
	& .item_callback {
		display: none;
	}
}

.promo_vacancy {
	display: flex;
	align-items: center;
	& .wrap_text {
		display: flex;
		flex-wrap: wrap;
		margin: 0 -6px -40px 0;
		width: calc((100% / 3) * 2 - 3px);
	}
	& .item_text {
		padding-top: 40px;
		border-top: 1px solid var(--border-color);
		margin: 0 6px 40px 0;
		width: calc(50% - 6px);
		padding-right: 140px;
		& h5 br {
			display: none;
		}
	}
	& .icon {
		width: 80px;
		height: 80px;
		margin-bottom: 20px;
		& img {
			display: block;
		}
	}
	& .image {
		width: calc((100% / 3) - 3px);
		max-width: 556px;
		max-height: 556px;
		& img {
			display: block;
		}
	}
}

.vacancy_list {
	margin-bottom: 60px;
	& .item_list {
		display: flex;
		align-items: center;
		justify-content: space-between;
		flex-wrap: wrap;
		padding: 20px 0;
		border-top: 1px solid var(--border-color);
		margin-bottom: 20px;
		& h5 {
			margin-right: 5px;
			margin-bottom: 0;
			flex: 1;
		}
		& .num {
			font-size: 24px;
			line-height: 30px;
			flex: 1;
			display: flex;
			align-items: center;
			justify-content: space-between;
			& span {
				padding-left: 5px;
				font-weight: 500;
				font-size: 17px;
				line-height: 20px;
				display: block;
				padding-right: 25px;
				background: url(../icons/link.svg) right 0 center / contain no-repeat;
				background-size: 20px 20px;
			}
		}
	}
}

.page_vacancy {
	& .page_banner {
		margin-bottom: 55px;
	}
}

.flex_page {
	display: flex;
	justify-content: space-between;
	position: relative;
	& .text {
		width: calc(50% - 6px);
		font-size: 20px;
		line-height: 25px;
	}
	& section {
		&:not(:last-child) {
			margin-bottom: 60px;
		}
		&.head {
			font-size: 24px;
			line-height: 30px;
			& h1 {
				margin-bottom: 20px;
			}
			& h4 {
				margin-bottom: 60px;
			}
			& .button {
				display: none;
			}
		}
	}
	& .wrap_nav {
		width: 555px;
		& nav {
			border: 1px solid var(--border-color);
			border-radius: 30px;
			padding: 40px;
			width: 555px;
			& input[type="text"] {
				margin-bottom: 10px;
			}
			&.fixed {
				position: fixed;
				top: 130px;
				&.stop_sticky {
					position: absolute;
					bottom: 0;
					top: unset;
				}
			}
		}
	}
	& .wrap_file {
		margin-bottom: 40px;
	}
}

@media (min-width: 1921px) {
    h1 {
        font-size: 70px;
        line-height: 65px;
    }
    h3 {
        font-size: 70px;
        line-height: 65px;
        &.small {
            font-size: 60px;
		    line-height: 60px;
        }
    }
    .main_banner {
        padding: 120px 0;
        & .text {
            font-size: 24px;
            line-height: 30px;
        }
    }
    .page_banner {
        & .text {
            font-size: 24px;
            line-height: 30px;
        }
        &.border_line {
            padding-bottom: 160px;
        }
    }
    .team_text {
        font-size: 45px;
        line-height: 50px;
    }
    .article_page {
        & .page_banner {
            & h1 {
                font-size: 60px;
                line-height: 60px;
            }
        }
    }
}

@media (min-width: 992px) {
    .button:not(:disabled):hover, button:not(:disabled):hover {
        &.bg_2::after {
            opacity: 1;
        }
		&.bg_1 span {
			color: transparent;
			&::after {
				opacity: 1;
			}
		}
		&:active {
			transition: all 0s;
			&.bg_2::after {
				transition: all 0s;
				opacity: 0;
			}
			&.bg_1 {
				background: rgba(0, 0, 0, 0.1);
				& span {
					color: var(--button-color-1);
					transition: all 0s;
					&::after {
						transition: all 0s;
						opacity: 0;
					}
				}
			}
		}
    }
    header .wrap_item_menu:hover {
        & .title_menu {
            background: var(--button-bg-1_hover);
        }
        & .list {
            opacity: 1;
            visibility: visible;
        }
    }
    header .item_list a:hover {
        color: var(--main-font-color);
    }
    header .item_list:hover {
        & .wrap_sub_list {
            opacity: 1;
            visibility: visible;
        }
    }
	header {
		& .links {
			& a:hover {
				background: var(--button-bg-1_hover);
			}
		}
	}
    .scroll_content {
        &::-webkit-scrollbar-thumb {
            width:0;
            background: transparent;
        }
        &::-webkit-scrollbar {
            width: 0;
            background: transparent;
        }
    }
    .flex_links .item_link:hover {
        background: var(--button-bg-1_hover);
        & .ex_link::after {
            opacity: 1;
            visibility: visible;
        }
    }
    .flex_links_page .item_link:hover {
        background: var(--button-bg-1_hover);
    }
    .flex_half .col .list a.item_list:hover {
    	text-decoration-color: var(--main-font-color);
    }
    .wrap_column_list ul a:hover {
    	text-decoration-color: var(--main-font-color);
    }
    @-moz-document url-prefix() {
        .scroll_content {
            scrollbar-color: transparent transparent;
        }
    }
}

@media (max-width: 1620px) {
    .demo_slider {
        & .before_after {
            height: 480px;
        }
    }
    .wrap_slider {
    	padding: 40px 40px 20px 40px;
    }
}

@media (max-width: 992px) {
    @-moz-document url-prefix() {
        .main_catalog {
            scrollbar-color: transparent transparent;
        }
        .catalog_list {
            scrollbar-color: transparent transparent;
        }
        .reviews_main {
            scrollbar-color: transparent transparent;
        }
        .flex_third_b_f {
            scrollbar-color: transparent transparent;
        }
    }
    @keyframes show_header {
        0% { top: -100px; }
        100% { top: 0; }
    }
    body {
        font-size: 15px;
    }
    h3, h1 {
        font-size: 32px;
        line-height: 30px;
        margin-bottom: 20px;
        &.small {
            font-size: 28px;
            line-height: 30px;
        }
        &.v_small {
            font-size: 26px;
            line-height: 30px;
            margin-bottom: 10px;
        }
    }
    h5 {
        font-size: 20px;
        line-height: 20px;
        margin-bottom: 15px;
    }
    p:not(:last-child) {
        margin-bottom: 10px;
    }
    input[type="text"], textarea {
        font-size: 15px;
        padding: 10px;
        &::placeholder {
            font-size: 15px;
        }
    }
    .button, button {
        font-size: 15px;
        padding: 15px 25px;
        &:not(.inline) {
            display: block;
        }
        &.download {
            width: 100px;
            height: 100px;
        }
    }
    & .wrap {
        padding: 0 20px;
    }
    .wrap_header {
        display: none;
        position: fixed;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background: var(--button-color-2);
        z-index: 5;
        overflow: hidden;
        overflow-y: auto;
        & .close {
            display: block;
            position: fixed;
            right: 20px;
            top: 20px;
            cursor: pointer;
            width: 60px;
            height: 60px;
            border-radius: 50%;
            backdrop-filter: blur(20px);
            background: var(--button-bg-1) url(../icons/close.svg) center / contain no-repeat;
            background-size: 20px 20px;
            z-index: 2;
        }
    }
    header {
        flex-direction: column;
        justify-content: space-between;
        padding: 110px 20px 90px 20px;
        min-height: 100%;
        & .logo {
            width: 60px;
            height: 60px;
            background: url(../icons/logo_hm.svg) center / contain no-repeat;
            margin-right: 0;
            position: fixed;
            left: 20px;
            top: 20px;
            z-index: 1;
        }
        & .col {
            display: block;
            width: 100%;
            &:last-child {
                & .button {
                    position: fixed;
                    left: 50%;
                    top: 20px;
                    transform: translateX(-50%);
                    padding: 20px 25px;
                    width: calc(100% - 180px);
                    z-index: 2;
                    display: block;
                }
            }
        }
        & .links {
            width: calc(100% - 40px);
            margin-right: 0;
            position: fixed;
            left: 20px;
            bottom: 20px;
            opacity: 0;
            visibility: hidden;
            transition: opacity 0s ease 0s;
            z-index: 1;
            &.active {
                transition: opacity 0s ease 0.2s;
                opacity: 1;
                visibility: visible;
            }
            & a {
                padding: 15px;
                flex: unset;
                &:first-child {
                    width: auto;
                    margin-bottom: 0;
                    padding-left: 20px;
                    padding-right: 20px;
                }
                &:not(:last-child) {
                    margin-right: 5px;
                }
                &:not(:first-child) {
                    flex-grow: 1;
                }
            }
            & .icon {
                &:not(:last-child) {
                    margin-right: 10px;
                }
            }
        }
        & a {
            color: var(--main-font-color);
        }
        & .wrap_nav {
            display: flex;
            flex-direction: column-reverse;
        }
        & .page_menu {
            display: block;
            backdrop-filter: unset;
            padding: 10px 0 5px 0;
            margin-bottom: 0;
            & a {
                padding: 10px 0;
                &:not(:last-child) {
                    margin-bottom: 5px;
                }
            }
        }
        & .menu {
            display: block;
            font-size: 17px;
            padding-bottom: 10px;
            border-bottom: 1px solid var(--border-color);
            & a {
                padding: 10px 0;
                &.next_link {
                    background: url(../icons/link.svg) right 0 center / contain no-repeat;
                    background-size: 20px 20px;
                    padding-right: 30px;
                }
            }
        }
        & .title_menu {
            margin-right: 0;
            padding: 10px 30px 10px 0;
            border-radius: 0;
            background: url(../icons/link.svg) right 0 center / contain no-repeat;
            background-size: 20px 20px;
            backdrop-filter: unset;
        }
        & .wrap_item_menu {
            padding-bottom: 0;
        }
        & .list {
            position: fixed;
            left: 0;
            top: 0;
            opacity: 1;
            visibility: visible;
            border-radius: 0;
            box-shadow: none;
            padding: 110px 20px 90px 20px;
            width: 100%;
            z-index: 1;
            height: 100%;
            max-height: 100%;
            overflow: hidden;
            overflow-y: auto;
            display: none;
            border-bottom: 0;
            & .back {
                display: block;
                position: fixed;
                width: 60px;
                height: 60px;
                border-radius: 50%;
                left: 20px;
                top: 20px;
                z-index: 1;
                backdrop-filter: blur(20px);
                background: var(--button-bg-1) url(../icons/link.svg) center / contain no-repeat;
                background-size: 20px 20px;
                transform: rotate(180deg);
                cursor: pointer;
            }
        }
        & .item_list {
            &:not(:last-child) {
                margin-bottom: 0;
            }
        }
        & .wrap_sub_list {
            width: 100%;
            position: fixed;
            left: 0;
            padding: 110px 20px 90px 20px;
            z-index: 1;
            height: 100%;
            max-height: 100%;
            overflow: hidden;
            overflow-y: auto;
            display: none;
            background: var(--button-color-2);
			opacity: 1;
			visibility: visible;
        }
        & .sub_list {
            border: 0;
            border-radius: 0;
            box-shadow: none;
            padding: 0;
        }
    }
    .main_page {
        & header {
            & .logo {
                opacity: 1;
            }
        }
    }
    .main_banner {
        min-height: 100vh;
        padding: 0;
        margin-bottom: 60px;
        & .wrap_label {
            display: none;
        }
        & .wrap {
          flex-direction: column;
          align-items: stretch;
          justify-content: unset;
        }
        & .wrap_text {
            width: auto;
            order: 2;
            position: static;
        }
        & .image {
            position: static;
            width: auto;
            max-width: unset;
            max-height: hidden;
            overflow: hidden;
            margin: 0 -20px 20px -20px;
            order: 1;
            & img {
                object-fit: cover;
                height: auto;
            }
        }
        & .logo {
           display: none;
        }
        & .text {
            font-size: 17px;
            line-height: 20px;
            margin-bottom: 30px;
        }
        & .flex_buttons {
            & .button {
                padding-left: 15px;
                padding-right: 15px;
                flex: 1;
            }
        }
    }
    .page_banner {
        padding: 0;
        margin-bottom: 60px;
        & .wrap {
            flex-direction: column;
            align-items: stretch;
            justify-content: unset;
        }
        & .wrap_text {
            width: auto;
            order: 2;
            position: static;
        }
        & .image {
            position: static;
            width: auto;
            max-width: unset;
            max-height: hidden;
            overflow: hidden;
            margin: 0 -20px 20px -20px;
            order: 1;
            & img {
                object-fit: cover;
                height: auto;
            }
            &.padding_image {
                padding-top: 60px;
            }
        }
        & .text {
            font-size: 17px;
            line-height: 20px;
            margin-bottom: 20px;
        }
        &.border_line:not(.m_border) {
            margin-bottom: 60px;
            padding-bottom: 0;
            &::after {
                display: none;
            }
        }
        & .footnote_text {
            border-radius: 15px;
            padding: 20px;
            & h5 {
                margin-bottom: 10px;
            }
        }
        & select[name="tab_nav"] {
            margin-bottom: 30px;
        }
        & .flex_info {
            padding-top: 10px;
            flex-wrap: wrap;
            margin-right: -5px;
            margin-bottom: -20px;
            & .info {
                flex: unset;
                width: calc(50% - 5px);
                margin-bottom: 20px;
                &:last-child {
                    margin-right: 5px;
                }
            }
        }
        &.border_line.m_border {
            padding-bottom: 30px;
            margin-bottom: 30px;
            &::after {
                width: calc(100% - 40px);
            }
        }
    }
    ul.breadcrumbs {
        display: none;
    }
    .content {
        padding-bottom: 60px;
        &.border_line {
            padding-bottom: 60px;
            margin-bottom: 30px;
            &.small_padding {
                padding-bottom: 20px;
            }
        }
        &.border_line_after {
            margin-bottom: 30px;
            &::after {
                width: calc(100% - 40px);
            }
        }
    }
    .flex_content {
        display: block;
        & .col {
            width: auto;
            &:first-child {
                margin-bottom: 40px;
            }
        }
        & h3 {
            margin-bottom: 30px;
        }
        & .indicators {
            padding: 0;
            & .head {
                margin-bottom: 20px;
            }
            & .item {
                padding-left: 0;
                &.p_item {
                    padding-left: 120px;
                    min-height: 100px;
                    &::before {
                        width: 100px;
                        height: 100px;
                    }
                    & .title {
                        font-size: 80px;
                        line-height: 80px;
                    }
                }
            }
            & .line_indicator {
                padding-top: 20px;
                &:not(:last-child) {
                    margin-bottom: 20px;
                }
                & .item {
                    flex: 1;
                    padding-top: 60px;
                    text-align: center;
                    &:first-child {
                        margin-right: 10px;
                    }
                    &::before {
                        left: 50%;
                        transform: translateX(-50%);
                        width: 60px;
                        height: 60px;
                    }
                    & .title {
                        font-size: 50px;
                        line-height: 45px;
                    }
                }
            }
        }
    }
    .flex_image {
        display: block;
        margin-bottom: 30px;
        & .col {
            width: auto;
            &:first-child {
                padding-right: 0;
                font-size: 17px;
                line-height: 20px;
            }
            &:last-child {
                display: block;
                border-radius: 20px;
                padding: 20px;
                & .text {
                    width: auto;
                }
            }
        }
        & .image {
            position: relative;
            left: unset;
            top: unset;
            transform: unset;
            width: auto;
            height: auto;
            & img {
                position: absolute;
                left: 0;
                top: 0;
            }
            &::after {
                display: block;
                content: "";
                padding-top: 100%;
            }
        }
    }
    .flex_half {
        display: block;
        & .col {
            width: auto;
            &:first-child {
                margin-bottom: 30px;
            }
            & svg {
            	height: auto;
            }
        }
        & .text {
            font-size: 17px;
            line-height: 20px;
            margin-bottom: 30px;
        }
        &.pad {
            & .col {
                width: auto;
            }
            & .text {
                margin-bottom: 30px;
            }
            & .address {
                font-size: 17px;
                line-height: 20px;
                margin-bottom: 30px;
            }
            & .links {
                flex-direction: column;
                align-items: flex-start;
                & .button {
                    margin-right: 0;
                    &:not(:last-child) {
                        margin-bottom: 5px;
                    }
                }
            }
            & .button {
                &.large_icon {
                    font-size: 17px;
                    padding: 40px;
                    & span {
                        padding-top: 80px;
                        &::before {
                            width: 60px;
                            height: 60px;
                        }
                    }
                    & .icon {
                        width: calc(100% - 70px);
                        top: -105px;
                        right: -70px;
                        max-width: 250px;
                        max-height: 250px;
                    }
                }
                &.double_image {
                    margin-bottom: 10px;
                    margin-top: 10px;
                    & .icon {
                        width: 120px;
                        height: 155px;
                        top: -45px;
                        right: -15px;
                    }
                    & .icon2 {
                        width: 115px;
                        height: 115px;
                        left: -20px;
                    }
                    & span {
                        padding-top: 80px;
                        &::before {
                            width: 60px;
                            height: 60px;
                        }
                    }
                }
            }
        }
        & .like_list {
            font-size: 15px;
            line-height: 20px;
            padding-top: 10px;
        }
        & .flex_buttons {
            & .button {
                font-size: 17px;
            }
        }
    }
    .main_catalog {
        overflow: hidden;
        overflow-x: auto;
        margin-right: -20px;
        margin-left: -20px;
        padding-left: 20px;
        padding-right: 10px;
        margin-bottom: 30px;
        & .item_catalog {
            margin-right: 10px;
            width: calc(100vw - 95px);
            min-width: calc(100vw - 95px);
            &:not(:last-child) {
                margin-right: 10px;
            }
        }
        & .wrap_image {
            border-radius: 20px;
            &::after {
                padding-top: calc(100% - 67px);
            }
        }
    }
    .main_catalog::-webkit-scrollbar-thumb {
        height: 0;
        background: transparent;
    }
    .main_catalog::-webkit-scrollbar {
        height: 0;
        background: transparent;
    }
    .large_text {
        font-size: 17px;
        line-height: 20px;
        margin-bottom: 30px;
        &.half {
            width: auto;
        }
        & h3 {
            margin-bottom: 10px;
        }
    }
    .catalog_list {
        flex-wrap: nowrap;
        overflow: hidden;
        overflow-x: auto;
        margin-left: -20px;
        padding-left: 20px;
        margin-right: -20px;
        padding-right: 10px;
        margin-bottom: 0;
        & .item_list {
            margin-right: 10px;
            width: calc(100vw - 95px);
            min-width: calc(100vw - 95px);
            border-radius: 20px;
            padding: 20px;
            margin-bottom: 0;
            & .icon {
                width: 70px;
                height: 70px;
                margin-bottom: 15px;
            }
            & .flex_list {
                & .item_f_list {
                    &:not(:last-child) {
                        margin-bottom: 5px;
                    }
                }
            }
        }
    }
    .catalog_list::-webkit-scrollbar-thumb {
        height: 0;
        background: transparent;
    }
    .catalog_list::-webkit-scrollbar {
        height: 0;
        background: transparent;
    }
    .tab_nav {
        display: none;
    }
    select[name="tab_nav"] {
        display: block;
        width: 100%;
        outline: none;
        margin-bottom: 20px;
        border: 0;
        background: var(--button-color-2) url(../icons/arrow_down.svg) right 0 center / contain no-repeat;
        background-size: 20px 20px;
        font-family: var(--main-font);
        font-size: 15px;
        line-height: 20px;
        font-weight: 500;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
    }
    select[name="tab_nav"]::-ms-expand {
        display: none;
    }
    .flex_third {
        padding-top: 0;
        display: block;
        border-top: 0;
        &:not(:last-child) {
            margin-bottom: 0;
        }
        & .item_third {
            width: auto;
            padding: 20px 0;
            border-top: 1px solid var(--border-color);
        }
        & .text {
            max-width: unset;
            display: none;
            padding-top: 20px;
        }
        & .head {
            max-width: unset;
            padding-right: 70px;
            position: relative;
            cursor: pointer;
            display: flex;
            align-items: center;
            min-height: 50px;
            &.active svg {
                & path:first-child {
                    fill: var(--main-font-color);
                }
                & path:not(:first-child) {
                    stroke: var(--button-color-2);
                }
                & circle {
                    stroke: var(--button-color-2);
                }
                & line {
                    stroke: var(--button-color-2);
                }
            }
        }
        & .icon {
            position: absolute;
            right: 0;
            top: 0;
            width: 50px;
            height: 50px;
            margin-bottom: 0;
        }
        & h5 {
            margin-bottom: 0;
        }
    }
    .slide_third {
        padding-top: 10px;
        display: block;
        & .col {
            width: auto;
            &.image {
                display: none;
            }
        }
        & .name {
            border-radius: 20px;
            padding: 20px;
            font-size: 17px;
            line-height: 20px;
            background: var(--button-bg-1);
            &::before {
                min-width: 25px;
            }
        }
        & .slide_content {
            display: none;
        }
        & .item_nav {
            &:not(:last-child) {
                margin-bottom: 10px;
            }
        }
        & .list {
            padding: 20px;
            font-size: 15px;
            line-height: 20px;
            color: var(--main-font-color);
            & .item_list {
                padding-left: 30px;
                background: var(--check);
                background-position: left 0 top 0;
                background-size: 20px 20px;
                &:not(:last-child) {
                    margin-bottom: 10px;
                }
            }
        }
    }
    .reviews_main {
        overflow: hidden;
        overflow-x: auto;
        margin-left: -20px;
        margin-right: -20px;
        padding-left: 20px;
        margin-bottom: 30px;
        padding-right: 20px;
        & .item_rev {
            width: calc(100vw - 95px);
            min-width: calc(100vw - 95px);
            padding: 50px 20px 20px 20px;
            border-radius: 20px;
            cursor: pointer;
            &::before {
                left: 20px;
                top: 20px;
                font-size: 32px;
                line-height: 30px;
            }
        }
        & .wrap_text {
            margin-bottom: 30px;
            font-size: 17px;
            line-height: 20px;
            & .text {
                overflow: hidden;
                text-overflow: ellipsis;
                display: -moz-box;
                display: -webkit-box;
                line-clamp: 10;
                box-orient: vertical;
                -moz-box-orient: vertical;
                -webkit-line-clamp: 10;
                -webkit-box-orient: vertical;
                user-select: none;
            }
        }
        & .title {
            margin-bottom: 0;
        }
        &::-webkit-scrollbar-thumb {
            height: 0;
            background: transparent;
        }
        &::-webkit-scrollbar {
            height: 0;
            background: transparent;
        }
    }
    .infinite_slider {
        & .item_slider {
            width: 140px;
            height: 105px;
            min-width: 140px;
            min-height: 105px;
        }
        & .after_slide {
            width: 105px;
            height: 105px;
            min-width: 105px;
            min-height: 105px;
        }
        &.flex {
        	padding: 0 20px;
        }
    }
    .flex_third_b_f {
        margin: 0 -20px 30px -20px;
        padding-left: 20px;
        padding-right: 20px;
        overflow: hidden;
        overflow-x: auto;
        &::-webkit-scrollbar-thumb {
            height: 0;
            background: transparent;
        }
        &::-webkit-scrollbar {
            height: 0;
            background: transparent;
        }
        & .item_f {
            width: calc(100vw - 40px);
            min-width: calc(100vw - 40px);
            border-radius: 20px;
            padding: 20px;
            display: block;
            &:first-child {
                width: calc(100vw - 40px);
            }
        }
        & .image {
            margin-right: 0;
            margin-bottom: 20px;
            & .col {
                height: auto;
            }
        }
        & .text_wrap {
            margin-bottom: 20px;
            & .text {
                overflow: hidden;
                text-overflow: ellipsis;
                display: -moz-box;
                display: -webkit-box;
                line-clamp: 3;
                box-orient: vertical;
                -moz-box-orient: vertical;
                -webkit-line-clamp: 3;
                -webkit-box-orient: vertical;
                user-select: none;
            }
        }
        & .label {
            margin-bottom: 15px;
        }
        & .title {
            font-size: 20px;
            line-height: 20px;
            overflow: hidden;
            text-overflow: ellipsis;
            display: -moz-box;
            display: -webkit-box;
            line-clamp: 3;
            box-orient: vertical;
            -moz-box-orient: vertical;
            -webkit-line-clamp: 3;
            -webkit-box-orient: vertical;
            user-select: none;
            margin-bottom: 15px;
        }
    }
    .faq_section {
        display: block;
        & .col {
            width: auto;
            margin-bottom: 30px;
        }
    }
    .form_wrap {
        width: auto;
        max-width: unset;
        padding: 85px 20px 20px 20px;
        border-radius: 20px;
        &::before {
            width: 50px;
            height: 50px;
            left: 20px;
            top: 20px;
        }
        & h5 {
            margin-bottom: 30px;
        }
        & nav {
            margin-bottom: 10px;
            & .item_nav {
                margin-right: 20px;
            }
        }
        & input[type="text"] {
            margin-bottom: 20px;
        }
        & button {
            display: block;
            width: 100%;
        }
    }
    .slide_item {
        & .name {
            font-size: 17px;
            line-height: 20px;
            min-height: 40px;
            padding-left: 65px;
            &::before {
                width: 50px;
                height: 40px;
            }
        }
        & .list {
            padding-left: 65px;
        }
    }
    .seo_section {
        & .text {
            max-width: unset;
            margin-bottom: 30px;
            font-size: 17px;
            line-height: 20px;
            &:last-child {
                margin-bottom: 0;
            }
        }
        & .flex_seo {
            display: block;
        }
        & .item_flex {
            width: auto;
            &:not(:last-child) {
                margin-right: 0;
                margin-bottom: 20px;
            }
        }
        & .title {
            font-size: 20px;
            line-height: 20px;
            margin-bottom: 10px;
        }
        & .wrap_chart_section {
            margin-top: 0;
            padding: 20px;
        }
        & .chart_section {
            & .head_chart {
                margin-bottom: 10px;
            }
        }
    }
    .footer_flex {
        display: block;
        font-size: 13px;
        line-height: 15px;
        padding: 10px;
        & .col {
            max-width: unset;
            &:first-child {
                margin-right: 0;
                margin-bottom: 10px;
            }
            &:last-child {
                text-align: left;
            }
        }
        & .item_col {
            &:not(:last-child) {
                margin-bottom: 10px;
            }
        }
    }
    .mobile_header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        position: absolute;
        left: 0;
        top: 0;
        padding: 20px;
        width: 100%;
        z-index: 4;
        & .logo {
            display: block;
            width: 198px;
            height: 60px;
            background: url(../icons/logo_m.svg) center / contain no-repeat;
        }
        & .menu_btn {
            width: 60px;
            height: 60px;
            cursor: pointer;
            border-radius: 50%;
            backdrop-filter: blur(20px);
            background: rgba(255, 255, 255, 0.2) url(../icons/menu.svg) center / contain no-repeat;
            background-size: 20px 20px;
        }
        &.fixed {
            position: fixed;
            animation: show_header 0.3s linear;
            & .logo {
                width: 60px;
                height: 60px;
                background: url(../icons/logo_hm.svg) center / contain no-repeat;
            }
            & .menu_btn {
                background: var(--button-bg-1) url(../icons/menu_b.svg) center / contain no-repeat;
                background-size: 20px 20px;
            }
        }
        &.dark {
            & .menu_btn {   
                background: var(--menu_btn);
                background-size: 20px 20px;
            }
            &:not(.fixed) {
                & .logo {
                    background: url(../icons/logo_m_b.svg) center / contain no-repeat;
                }
            }
        }
    }
    .popup {
        & .wrap_popup {
            width: 100%;
            padding: 0;
        }
        & .content_popup {
            border-radius: 0;
            padding: 60px 20px 30px 20px;
            overflow: hidden;
            overflow-y: auto;
            display: block;
            & .scroll_content {
                padding: 0;
                overflow: unset;
                max-height: unset;
            }
            & .text {
                padding-top: 30px;
                position: relative;
                margin-bottom: 40px;
                font-size: 17px;
                &::before {
                    position: absolute;
                    content: "“";
                    font-weight: 500;
                    font-size: 32px;
                    line-height: 30px;
                    left: 0;
                    top: 0;
                }
            }
            & .wrap_title .title {
                font-weight: 500;
            }
            & .footnote_title {
                color: var(--second-font-color);
            }
        }
        & .close {
            font-size: 13px;
            top: 20px;
            right: 20px;
        }
        & input[type="text"], & textarea {
            margin-bottom: 5px;
        }
        & .item_form {
            margin-bottom: 20px;
            & nav {
                margin-right: -15px;
                & .item_nav {
                    margin-right: 15px;
                }
            }
        }
        & h5 {
            margin-bottom: 10px;
        }
        & button {
            width: 100%;
        }
        & .icon {
            width: 160px;
            height: 160px;
            margin-bottom: 20px;
        }
        &#thanks {
            & h4 {
                margin-bottom: 10px;
            }
        }
        &.item_team {
            & .wrap_image {
                height: 267px;
                margin-left: -20px;
                margin-right: -20px;
                margin-bottom: 20px;
            }
            & .name {
                font-size: 24px;
                line-height: 25px;
                margin-bottom: 5px;
            }
            & .footnote_name {
                margin-bottom: 20px;
            }
            & .flex_link {
                display: block;
                margin-right: 0;
                margin-bottom: 20px;
                & a {
                    margin: 0 0 10px 0;
                }
            }
            & .text_item_team {
                margin-bottom: 20px;
            }
            & .skills_list {
                & .item_s:not(:last-child) {
                    margin-bottom: 5px;
                }
            }
        }
        &.center {
            & .wrap_popup {
                width: 100%;
                height: 100%;
            }
            & .content_popup {
                padding: 70px 20px 20px 20px;
                height: 100%;
                & .text {
                    font-size: 17px;
                    line-height: 20px;
                }
            }
            & .logo_case {
                left: 20px;
                top: 20px;
            }
            & .wrap_title {
                & .title {
                    margin-bottom: 0;
                }
            }
        }
    }
    h4 {
        font-size: 24px;
        line-height: 25px;
        margin-bottom: 20px;
    }
    .slide_list {
        display: none;
    }
    select.slide_list {
        display: block;
        width: 100%;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        outline: none;
        border: 1px solid var(--border-color);
        background: url(../icons/arrow_down.svg) right 10px center / contain no-repeat;
        background-size: 15px 15px;
        padding: 10px 35px 10px 15px;
        border-radius: 10px;
        margin-bottom: 5px;
    }
    select::-ms-expand {
        display: none;
    }
    .agree {
        margin-bottom: 10px;
    }
    .team_text {
        max-width: unset;
        margin-bottom: 30px;
        font-size: 26px;
        line-height: 30px;
    }
    .team_list {
        margin: 0 -10px -10px 0;
        & .item_team {
            width: calc(50% - 10px);
            margin: 0 10px 10px 0;
        }
        & .wrap_image {
            border-radius: 15px;
            margin-bottom: 5px;
        }
        & .name {
            margin-bottom: 0;
        }
    }
    .contacts_wrap {
        display: block;
        padding-top: 0;
        & .col {
            width: auto;
            font-size: 17px;
            line-height: 20px;
            &:first-child {
                margin-bottom: 30px;
            }
        }
        & .image_contacts {
            border-radius: 15px;
            height: 180px;
            margin-bottom: 10px;
        }
        & .pnone {
            margin-bottom: 0;
        }
        & .shed {
            margin-bottom: 10px;
            font-size: 15px;
            line-height: 20px;
        }
        & .map {
            border-radius: 15px;
            margin-bottom: 10px;
            height: 180px;
        }
    }
    .page_banner.contacts_page {
        padding-top: 120px;
    }
    .docs_list {
        padding-top: 10px;
        font-size: 17px;
        line-height: 20px;
        & .item_docs {
            padding: 10px 0 30px 0;
            align-items: flex-start;
            &:last-child {
                padding-bottom: 0;
            }
        }
        & span {
            width: auto;
            white-space: nowrap;
        }
        & .name {
            width: auto;
            flex-grow: 1;
            padding-right: 20px;
            padding-left: 35px;
            background: url(../icons/download.svg) left 0 top 0 / contain no-repeat;
            background-size: 20px 20px;
        }
    }
    .page_contacts {
        & h1 {
            margin-bottom: 30px;
        }
    }
    .page_about {
        & h1 {
            margin-bottom: 30px;
        }
    }
    .page {
        & h1 {
            margin-bottom: 30px;
        }
        & .page_banner {
            & .text {
                margin-bottom: 30px;
                & ul {
                    padding-top: 20px;
                }
            }
            &.border_line {
                padding-bottom: 60px;
                margin-bottom: 30px;
                &::after {
                    display: block;
                    width: calc(100% - 40px);
                }
            }
        }
    }
    .case_catalog {
        display: block;
        padding-top: 10px;
        margin: 0 0 30px 0;
    }
    .item_case {
        width: auto;
        margin: 0 0 6px 0;
        border-radius: 20px;
        padding: 20px;
        & .logo {
            margin-bottom: 20px;
        }
        & h5 {
            margin-bottom: 10px;
        }
        & .section_item_case {
            margin-bottom: 20px;
        }
        & .chart_section {
            border-radius: 8.82px;
            padding: 17.65px;
            height: 150px;
            & .head_chart {
                margin-bottom: 10px;
            }
            & canvas {
                height: 70px!important;
            }
            & .label_col {
                border-radius: 26.47px;
                padding: 2.94px 5.88px 2.94px 14.71px;
                &.go {
                    background: var(--go-color) url(../icons/go.svg) left 3px top 3px / contain no-repeat;
                    background-size: 9px 9px;
                }
                &.ya {
                    background: var(--ya-color) url(../icons/ya.svg) left 3px top 3px / contain no-repeat;
                    background-size: 9px 9px;
                }
            }
        }
        & .label_title {
            font-size: 17px;
        }
        & .image_case {
        	height: 150px;
        	border-radius: 10px;
        }
    }
    .tab_nav_tariff {
        display: none;
    }
    .tabs_tariff {
        & .tab {
            border-radius: 20px;
            padding: 20px;
            margin-bottom: 5px;
        }
        & .top_tab {
            display: block;
            margin-bottom: 40px;
        }
        & .wrap_range {
            border-radius: 15px;
            width: auto;
            padding: 20px;
            font-size: 17px;
            line-height: 20px;
        }
        & .wrap_input {
            width: 100%;
            & input[type="text"] {
                padding: 15px;
                font-size: 17px;
            }
        }
        & .wrap_result {
            border-radius: 15px;
            padding: 20px;
            width: 100%;
            display: block;
            height: auto;
            & .val {
                font-size: 24px;
                line-height: 25px;
                margin-bottom: 5px;
            }
            & .footnote {
                margin-bottom: 0;
            }
        }
        & .button {
            width: 100%;
            padding: 20px;
            font-size: 17px;
            line-height: 20px;
            & .icon {
                width: 140px;
                height: 140px;
                right: -40px;
                bottom: -15px;
            }
            & span {
                padding-top: 80px;
                &::before {
                    width: 80px;
                    height: 80px;
                }
            }
        }
        & .m_item_nav {
            display: block;
            margin-bottom: 5px;
            border-radius: 20px;
            border: 1px solid var(--border-color);
            padding: 20px;
            cursor: pointer;
            position: relative;
            & .icon {
                width: 50px;
                height: 50px;
                margin-bottom: 20px;
                &.tarif_1 {
                    background: url(../icons/t1.svg) center / contain no-repeat;
                }
                &.tarif_2 {
                    background: url(../icons/t2.svg) center / contain no-repeat;
                }
            }
            & .wrap_inner {
                & h4 {
                    margin-bottom: 5px;
                    & span {
                        display: block;
                        font-size: 15px;
                        line-height: 20px;
                    }
                }
            }
            &::before {
                position: absolute;
                content: "";
                width: 20px;
                height: 20px;
                top: 20px;
                right: 20px;
                background: url(../icons/plus.svg) center / contain no-repeat;
            }
            &.active {
                background: var(--button-bg-1);
                &::before {
                    background: url(../icons/minus.svg) center / contain no-repeat;
                }
            }
        }
    }
    .services_list {
        padding: 20px;
        & .title {
            margin-bottom: 20px;
            font-size: 17px;
            line-height: 20px;
        }
        & .flex_list {
            display: block;
            margin: 0;
        }
        & .item_services {
            width: auto;
            margin: 0 0 20px 0;
            & .price {
                padding-top: 0;
            }
            &:last-child {
                margin-bottom: 0;
            }
        }
    }
    .limited_column {
        max-width: unset;
    }
    .number_list {
        padding-top: 10px;
    }
    .item_number_list {
        min-height: unset;
        padding: 0;
        & .hid_el {
            display: none;
            padding: 20px;
            ul:not(.irregular) {
                & li {
                    &:not(:last-child) {
                        margin-bottom: 10px;
                    }
                }
            }
        }
        &:not(:last-child) {
            margin-bottom: 10px;
        }
        & .title_list {
            font-size: 17px;
            line-height: 20px;
            padding: 20px 20px 20px 50px;
            border-radius: 20px;
            background: var(--button-bg-1);
            margin-bottom: 0;
            cursor: pointer;
            color: var(--second-font-color);
        }
        &::before {
            padding: 20px 0 20px 20px;
            font-size: 17px;
            line-height: 20px;
            width: 30px;
            background: none;
            color: var(--second-font-color);
        }
        &.active {
            & .title_list, &::before {
                color: var(--main-font-color);
            }
        }
        & .flex_col {
            display: block;
            & .col {
                &:not(:last-child) {
                    margin-right: 0;
                    margin-bottom: 10px;
                }
            }
        }
    }
    .flex_column {
        margin-right: -20px;
        padding-bottom: 70px;
        & .slick-list {
            padding-right: 65px;
        }
        & .col {
            padding-right: 20px;
            margin-bottom: 0;
            & .icon {
                width: 50px;
                height: 50px;
                margin-bottom: 10px;
                &::after {
                    font-size: 15px;
                    line-height: 18.75px;
                }
            }
            & h5 {
                margin-bottom: 10px;
            }
        }
        & .slick-arrow {
            font-size: 0;
            line-height: 0;
            border: 0;
            outline: none;
            width: 90px;
            height: 50px;
            position: absolute;
            bottom: 0;
            &::after {
                position: absolute;
                content: "";
                width: 20px;
                height: 20px;
                left: 50%;
                top: 50%;
                transform: translate(-50%, -50%);
                background: url(../icons/arrow_slider.svg) center / contain no-repeat;
            }
            &.slick-next {
                left: 95px;
            }
            &.slick-prev {
                left: 0;
                &::after {
                    transform: translate(-50%, -50%) rotate(-180deg);
                }
            }
            &.slick-disabled {
                &::after {
                    opacity: 0.5;
                }
            }
        }
        &.border_top {
            & .col {
                padding-top: 0;
                &:nth-child(2n+1) {
                    &::before {
                        display: none;
                    }
                }
            }
        }
        &.three_columns {
            padding-top: 10px;
            & .col {
                padding-top: 0;
            }
        }
        &.slider_reviews {
            padding-bottom: 20px;
            & .slick-list {
                margin-right: -10px;
            }
            & .col {
                margin-right: 10px;
            }
        }
    }
    .wrap_padding {
        padding-top: 10px;
    }
    .wrap_slider {
        padding: 20px;
        border-radius: 20px;
        &.col_image {
            display: block;
            & .col {
                &:not(:nth-child(2)) {
                    margin-right: 0;
                    margin-bottom: 10px;
                }
            }
        }
        & .footnote_title {
            padding-top: 10px;
            font-size: 17px;
        }
    }
    .demo_slider {
        margin-bottom: 20px;
        & .item_sliderColumn {
            display: block;
        }
        & .col {
            width: auto;
            &:first-child {
                padding-right: 0;
                margin-bottom: 40px;
            }
            &:last-child {
                padding-left: 0;
            }
        }
        & .text_slide {
            margin-bottom: 20px;
            font-size: 17px;
            line-height: 20px;
        }
        & .before_after {
            height: auto;
            border-radius: 0;
            border: 0;
            & span {
                display: block;
                border: 1px solid var(--border-color);
                border-radius: 10px;
                position: relative;
                overflow: hidden;
                &::before {
                    position: absolute;
                    padding: 7px 15px 8px 15px;
                    border-radius: 52px;
                    backdrop-filter: blur(20px);
                    background: var(--button-bg-1);
                    font-size: 15px;
                    font-weight: 400;
                    line-height: 20px;
                    z-index: 1;
                    left: 10px;
                    top: 10px;
                }
                &:first-child {
                    margin-bottom: 10px;
                    &::before {
                        content: "Было";
                    }
                }
                &:last-child {
                    &::before {
                        content: "Стало";
                    }
                }
            }
            & img {
                object-fit: contain;
                display: block;
            }
        }
        & .wrap_slide {
        	max-height: unset;
        	height: unset;
        	& img {
        		height: auto;
        	}
        }
    }
    .file_list {
        & a {
            min-height: 50px;
            padding-left: 60px;
            &:not(:last-child) {
                margin-bottom: 10px;
            }
            &::before {
                width: 50px;
                height: 50px;
                background-size: 16.67px 16.67px;
            }
        }
    }
    .nav_demo_slider {
        position: relative;
        & .indicator {
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%);
            height: 50px;
        }
        & .wrap_arrow:not(:last-child) {
            width: 100%;
            justify-content: space-between;
        }
        & .arrow {
            height: 50px;
        }
    }
    .reviews_main.slider_reviews {
        padding-top: 10px;
        padding-right: 0;
        & .slick-list {
            padding-right: 75px;
        }
    }
    ul:not(.irregular) {
        &.like_list {
            margin-bottom: 30px;
            & li {
                padding-left: 30px;
                background-size: 20px 20px;
                &:not(:last-child) {
                    margin-bottom: 20px;
                }
            }
            & .label {
                font-size: 20px;
                line-height: 20px;
            }
        }
        &.star_list {
            &.column_double {
                column-count: unset;
                column-gap: unset;
            }
        }
    }
    .callback_section {
        display: block;
        padding: 20px;
        border-radius: 20px;
        & .col {
            &:first-child {
                margin-bottom: 20px;
            }
        }
        & .icon {
            display: none;
        }
        & .border_icon {
            width: calc(100% - 75px);
        }
        & h5 {
            margin-bottom: 20px;
        }
    }
    .wrap_column_list {
        padding-top: 10px;
        & ul {
            column-count: unset;
            column-gap: unset;
            &:not(:last-child) {
                margin-bottom: 30px;
            }
        }
    }
    .team_section {
        padding-top: 10px;
        & .item_team_section {
            width: calc(50% - 5px);
            min-height: 140px;
            & .title {
                font-size: 17px;
                line-height: 20px;
                margin-bottom: 5px;
            }
            &:not(.decor) {
                border-radius: 20px;
                padding: 20px;
            }
            &.decor {
                & .wrap_image {
                    &.image_1 {
                        & .col {
                            height: 140px;
                            &:first-child {
                                width: 100%;
                                border-radius: 20px;
                                border-width: 2px;
                            }
                            &:last-child {
                                display: none;
                            }
                        }
                    }
                    &.image_2 {
                        & .col {
                            &:first-child {
                                width: 100%;
                                height: 140px;
                            }
                            &:last-child {
                                display: none;
                            }
                        }
                    }
                }
            }
        }
    }
    .fixed_nav {
        display: none;
    }
    .item_case_page {
        & .seo_section {
            margin-bottom: 20px;
            & .text {
                font-size: 15px;
            }
            & canvas {
            	max-height: 115px;
            }
        }
        & .wrap_padding {
            &:not(:last-child) {
                margin-bottom: 10px;
            }
        }
    }
    .indicators_flex {
        padding-top: 10px;
        display: block;
         margin-bottom: -20px;
        & .item_ind {
            width: auto;
            margin: 0 0 20px 0;
            padding-right: 55px;
            &:nth-child(4n)::before {
                display: none;
            }
            &:nth-child(n+4) {
                padding-top: 0;
                margin-bottom: 20px;
            }
            &:last-child {
                margin-bottom: 0;
            }
        }
        & .title {
            font-size: 26px;
            line-height: 30px;
            margin-bottom: 5px;
        }
    }
    .next_item {
        display: block;
        & .image {
            display: none;
        }
        & .title {
            padding: 40px;
            width: auto;
            display: block;
        }
        & .label {
            font-size: 17px;
            line-height: 20px;
            margin-bottom: 5px;
        }
        & .title_name {
            font-size: 28px;
            line-height: 30px;
        }
    }
    .opinions_page {
        & .reviews_main {
            display: flex;
            flex-wrap: nowrap;
            padding: 0;
            margin-right: -20px;
            &:not(:last-child) {
                margin-bottom: 30px;
            }
            & .item_rev {
                margin-bottom: 0;
                &:last-child {
                    margin-right: 20px;
                }
            }
        }
    }
    .media_page {
        & .page_banner {
            margin-bottom: 60px;
            & .image {
                width: auto;
            }
            & .text {
                padding-top: 0;
            }
        }
    }
    .flex_links {
        display: block;
        margin: 0;
        & .item_link {
            margin: 0 0 6px 0;
            width: auto;
            border-radius: 20px;
            padding: 20px;
            &:last-child {
                margin-bottom: 0;
            }
            & .label {
                margin-bottom: 15px;
            }
            & .title {
                font-size: 20px;
                line-height: 20px;
            }
            & .head {
                margin-bottom: 40px;
            }
            & .ex_link {
                font-size: 13px;
                line-height: 15px;
                padding-right: 20px;
                &::after {
                    width: 15px;
                    height: 15px;
                    opacity: 1;
                    visibility: visible;
                }
            }
        }
    }
    .page_banner.blog_page {
        padding-top: 120px;
        margin-bottom: 30px;
    }
    .flex_links_page {
        display: block;
        margin: 0 0 25px 0;
        & .item_link {
            border-radius: 20px;
            padding: 20px;
            margin: 0 0 5px 0;
            display: block;
            &.image_wrap {
                width: auto;
            }
            &:not(.image_wrap) {
                width: auto;
            }
            & .image {
                width: 100%;
                margin-bottom: 20px;
                & img {
                	height: auto;
                }
            }
            & .text {
                display: block;
                width: auto;
            }
            & .label {
                margin-bottom: 15px;
            }
            & .title {
                font-size: 20px;
                line-height: 20px;
                &:not(:last-child) {
                    margin-bottom: 15px;
                }
            }
            & .head {
                margin-bottom: 20px;
            }
            & .date {
                font-size: 13px;
                line-height: 15px;
            }
        }
    }
    .article_page {
        & .page_banner {
            padding-top: 120px;
            & .wrap {
                align-items: stretch;
            }
            & h1 {
                font-size: 28px;
                line-height: 30px;
                margin-bottom: 30px;
            }
            & .image {
                width: auto;
                margin-top: 0;
                margin: 0 0 15px 0;
            }
            & .date {
                font-size: 13px;
                margin-bottom: 15px;
            }
            & .text {
                margin-bottom: 30px;
            }
            &.border_line:not(.m_border) {
                margin-bottom: 0;
                padding-bottom: 30px;
                &::after {
                    display: block;
                    width: calc(100% - 40px);
                }
            }
        }
    }
    .flex_wrap {
        display: block;
        & .wrap_nav {
            padding-top: 30px;
            width: auto;
            & .wrap_sticky {
                display: none;
            }
            & .item_col {
                border-radius: 20px;
                padding: 20px;
                &:last-child {
                    display: none;
                }
                &.flex {
                    & .text {
                        width: calc(100% - 90px);
                    }
                    & .profile_photo {
                        width: 80px;
                        height: 80px;
                        border-radius: 10px;
                    }
                    & h5 {
                        margin-bottom: 10px;
                    }
                    & .name {
                        margin-bottom: 0;
                    }
                    & .label_name {
                        margin-bottom: 10px;
                    }
                    & .link {
                        font-size: 13px;
                        padding-right: 20px;
                        background-size: 15px 15px;
                    }
                }
            }    
            & select.scroll_to {
                display: block;
                width: 100%;
                outline: none;
                margin-bottom: 30px;
                border: 0;
                background: var(--button-color-2) url(../icons/arrow_down.svg) right 0 center / contain no-repeat;
                background-size: 20px 20px;
                font-family: var(--main-font);
                font-size: 15px;
                line-height: 20px;
                font-weight: 500;
                -webkit-appearance: none;
                -moz-appearance: none;
                appearance: none;
            }
            & select.scroll_to::-ms-expand {
                display: none;
            }
        }
        & .wrap_text {
            width: auto;
            margin-bottom: 30px;
        }
        & section {
            padding-top: 30px;
            &:not(:last-child) {
                padding-bottom: 30px;
            }
        }
        & .content_section {
            &:not(:last-child) {
                margin-bottom: 30px;
            }
        }
        & .content_section_inner {
            &:not(:last-child) {
                margin-bottom: 20px;
            }
        }
        & .item_callback {
            display: block;
            border: 1px solid var(--border-color);
            border-radius: 20px;
            padding: 20px;
            & .image {
                margin-bottom: 20px;
                & img {
                    display: block;
                }
            }
            & h5 {
                margin-bottom: 20px;
            }
        }
    }
    .promo_vacancy {
        display: block;
        & .image {
            display: none;
        }
        & .wrap_text {
            display: block;
            width: auto;
            margin: 0;
        }
        & .item_text {
            padding-right: 0;
            width: auto;
            padding-top: 20px;
            position: relative;
            margin-right: 0;
            margin-bottom: 20px;
            &:last-child {
                margin-bottom: 0;
            }
            & h5 {
                min-height: 50px;
                padding-top: 5px;
                margin-bottom: 20px;
                padding-right: 70px;
                & br {
                    display: block;
                }
            }
        }
        & .icon {
            width: 50px;
            height: 50px;
            margin-bottom: 0;
            position: absolute;
            right: 0;
            top: 20px;
        }
    }
    .vacancy_list {
        margin-bottom: 30px;
        & .item_list {
            display: block;
            margin-bottom: 10px;
            & h5 {
                margin-right: 0;
                margin-bottom: 20px;
            }
            & .num {
                font-size: 17px;
                line-height: 20px;
                & span {
                    padding-right: 20px;
                    background-size: 15px 15px;
                    font-size: 15px;
                }
            }
        }
    }
    .page_vacancy {
        padding-top: 120px;
        & .page_banner {
            margin-bottom: 0;
        }
    }
    .flex_page {
        display: block;
        & .text {
            width: auto;
            font-size: 15px;
            line-height: 20px;
            margin-bottom: 60px;
        }
        & section {
            &:not(:last-child) {
                margin-bottom: 30px;
            }
            &.head {
                font-size: 17px;
                line-height: 20px;
                & h4 {
                    margin-bottom: 30px;
                }
                & .button {
                    display: inline-block;
                    margin-bottom: 30px;
                }
            }
        }
        & .wrap_nav {
            width: 100%;
            & nav {
                width: 100%;
                border-radius: 20px;
                padding: 20px;
                & button {
                    width: 100%;
                }
            }
        }
        & .wrap_file {
            margin-bottom: 20px;
        }
    }
    footer {
    	& #glscreen {
    		background: url(../img/bg_f_m.webp) center / cover no-repeat;
    	}
    }
    ul.irregular:not(.breadcrumbs) {
	    &.star_list {
	        &.column_double {
	            column-count: unset;
	            column-gap: unset;
	        }
	    }
	}
}