.slick-slider {
	position: relative;
	display: block;
	box-sizing: border-box;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-ms-touch-action: pan-y;
	touch-action: pan-y;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

.slick-list {
	position: relative;
	overflow: hidden;
	display: block;
	margin: 0;
	padding: 0
}

.slick-list:focus {
	outline: none
}

.slick-list.dragging {
	cursor: pointer;
	cursor: hand
}

.slick-slider .slick-track,
.slick-slider .slick-list {
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0)
}

.slick-track {
	position: relative;
	left: 0;
	top: 0;
	display: block;
	margin-left: auto;
	margin-right: auto
}

.slick-track:before,
.slick-track:after {
	content: "";
	display: table
}

.slick-track:after {
	clear: both
}

.slick-loading .slick-track {
	visibility: hidden
}

.slick-slide {
	float: left;
	height: 100%;
	min-height: 1px;
	display: none
}

[dir=rtl] .slick-slide {
	float: right
}

.slick-slide img {
	display: block
}

.slick-slide.slick-loading img {
	display: none
}

.slick-slide.dragging img {
	pointer-events: none
}

.slick-initialized .slick-slide {
	display: block
}

.slick-loading .slick-slide {
	visibility: hidden
}

.slick-vertical .slick-slide {
	display: block;
	height: auto;
	border: 1px solid rgba(0, 0, 0, 0)
}

.slick-arrow.slick-hidden {
	display: none
}

header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 10;
	background: #0d0c0c;
	padding: 28px 0;
	border-bottom: 1px solid #1b1b1b
}

.header {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center
}

.header_menu_wrap {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	gap: 45px
}

@media screen and (max-width: 767px) {
	.header_menu_desctop {
		display: none
	}
}

.header_menu_mobile {
	display: none;
	position: fixed;
	z-index: 10;
	width: 100%;
	background-color: #0d0c0c;
	padding: 40px 15px;
	margin-top: 29px
}

.header_menu_mobile .main-nav ul {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 40px
}

.header_menu_close_wrap {
	display: none
}

@media screen and (max-width: 767px) {
	.header_menu_close_wrap {
		display: flex
	}
}

#logo img {
	width: 166px;
	height: 44px
}

.main-nav ul {
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: center;
	margin: 0;
	padding: 0;
	gap: 45px
}

.main-nav ul li {
	position: relative;
	list-style-type: none
}

.main-nav ul li a {
	font-size: 18px;
	color: #fff;
	font-weight: 400;
	text-decoration: none;
	transition: .3s
}

.main-nav ul li a:hover {
	color: #1b47f5
}

.main-nav ul li.current-menu-parent {
	padding-right: 23px
}

.main-nav ul li.current-menu-parent>a {
	color: #1b47f5;
	position: relative
}

.main-nav ul li.current-menu-parent>a:after {
	content: "";
	position: absolute;
	display: block;
	width: 15px;
	height: 8px;
	background-image: url(.././images/icons/blue_arrow_down.png);
	background-size: 100% 100%;
	right: -23px;
	top: 8px
}

.main-nav ul li.current-menu-parent.active .sub-menu {
	position: absolute;
	display: flex;
	flex-direction: column;
	align-items: center;
	right: 0;
	top: 35px;
	z-index: 1;
	background: #1b47f5;
	border-radius: 4px;
	padding: 6px 20px;
	gap: 0;
	transition: .3s
}

.main-nav ul li.current-menu-parent.active .sub-menu li {
	width: 133px;
	text-align: center
}

.main-nav ul li.current-menu-parent.active .sub-menu li.current-lang a {
	color: #fff
}

.main-nav ul li.current-menu-parent.active .sub-menu li:first-child {
	border-bottom: 1px solid #fff
}

.main-nav ul li.current-menu-parent.active .sub-menu li a {
	display: block;
	color: #8d9fe6;
	font-weight: 400;
	margin: 14px 0
}

.main-nav ul li.current-menu-parent.active .sub-menu li:hover a {
	color: #fff;
	font-weight: 500
}

.main-nav ul.sub-menu {
	display: none
}

.header_menu_close {
	position: relative;
	width: 28px;
	height: 2px;
	border-radius: 2px;
	background: #1b47f5;
	cursor: pointer;
	user-select: none
}

.header_menu_close:before {
	content: "";
	display: block;
	position: absolute;
	width: 28px;
	height: 2px;
	border-radius: 2px;
	background: #1b47f5;
	top: -10px;
	transition: .5s
}

.header_menu_close:after {
	content: "";
	display: block;
	position: absolute;
	width: 28px;
	height: 2px;
	border-radius: 2px;
	background: #1b47f5;
	top: 10px;
	transition: .5s
}

.header_menu_close_wrap.opened .header_menu_close {
	background: rgba(0, 0, 0, 0)
}

.header_menu_close_wrap.opened .header_menu_close:before {
	top: 0;
	transform: rotate(45deg)
}

.header_menu_close_wrap.opened .header_menu_close:after {
	top: 0;
	transform: rotate(-45deg)
}

.overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .5);
	backdrop-filter: blur(24px);
	align-items: center;
	justify-content: center;
	transition: opacity .3s ease, visibility .3s ease
}

.top {
	display: flex;
	position: relative;
	height: 100vh;
	padding: 120px 0 40px;
	overflow: hidden;
	background-position: center;
	background-size: cover;
	background-attachment: fixed;
	background-repeat: no-repeat
}

.top video {
	position: absolute;
	display: block;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: auto;
	height: auto;
	min-width: 100%;
	min-height: 100%;
	object-fit: cover
}

.top video.video_mobile {
	display: none;
	width: 100%
}

@media screen and (max-width: 979px) {
	.top video.video_mobile {
		display: block
	}
}

@media screen and (max-width: 979px) {
	.top video.video_desctop {
		display: none
	}
}

.top_block {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	gap: 140px;
	z-index: 1
}

@media screen and (max-width: 979px) {
	.top_block {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 40px
	}
}

@media screen and (max-width: 767px) {
	.top_block {
		gap: 20px
	}
}

.top_left,
.top_right {
	width: 50%
}

@media screen and (max-width: 767px) {

	.top_left,
	.top_right {
		width: 100%
	}
}

.top_right {
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: center
}

.top_subtitle {
	color: #fff;
	font-size: 20px;
	font-weight: 400;
	margin-bottom: 32px
}

@media screen and (max-width: 979px) {
	.top_subtitle {
		text-align: center;
		font-size: 18px;
		margin-bottom: 20px
	}
}

.top_title {
	color: #fff;
	font-size: 50px;
	font-weight: 500;
	text-transform: uppercase
}

@media screen and (max-width: 979px) {
	.top_title {
		text-align: center;
		font-size: 36px
	}
}

@media screen and (max-width: 767px) {
	.top_title {
		font-size: 28px
	}
}

.popup {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .5);
	backdrop-filter: blur(24px);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 1000;
	opacity: 0;
	visibility: hidden;
	transition: opacity .3s ease, visibility .3s ease
}

.popup_content {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
	position: relative;
	background: #fff;
	padding: 40px 80px 16px;
	margin: 0 15px;
	border-radius: 6px;
	width: 100%;
	max-width: 560px
}

@media screen and (max-width: 767px) {
	.popup_content {
		padding: 40px 15px 16px
	}
}

.popup_content input[type=submit] {
	position: relative;
	text-decoration: none;
	text-align: left;
	width: 100%;
	max-width: 430px;
	font-size: 16px;
	color: #fff;
	text-transform: uppercase;
	padding: 16px 32px;
	background: #1b47f5;
	border: 3px solid #1b47f5;
	border-radius: 3px;
	transition: .3s;
	cursor: pointer;
	margin-top: 20px
}

.popup_content input[type=submit]:after {
	content: "";
	display: block;
	position: absolute;
	width: 17px;
	height: 18px;
	background: url("https://dev.lookupagency.net/wp-content/themes/lookupagency/images/icons/button_arrow_white.svg");
	right: 32px;
	top: 0;
	bottom: 0;
	margin: auto
}

.popup_content input[type=submit]:hover {
	background: rgba(0, 0, 0, 0);
	color: #1b47f5
}

.popup_content input[type=submit]:hover:after {
	background: url("https://dev.lookupagency.net/wp-content/themes/lookupagency/images/icons/button_arrow.svg")
}

.popup_content input[type=text] {
	width: 100%;
	text-align: center;
	color: #1b47f5;
	font-size: 18px;
	border: 2px solid #1b47f5;
	border-radius: 6px;
	padding: 16px 32px;
	margin-bottom: 8px
}

.popup_content input[type=text]::placeholder {
	color: #1b47f5
}

.popup_content input[type=text]:focus::placeholder {
	opacity: 0
}

.popup_title {
	font-size: 20px;
	font-weight: 400;
	color: #1b47f5;
	text-transform: uppercase;
	text-align: center;
	margin-bottom: 12px;
	padding: 0 40px
}

.popup_subtitle {
	font-size: 18px;
	font-weight: 400;
	color: #0d0c0c;
	text-align: center;
	margin-bottom: 28px
}

.popup_close {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	position: absolute;
	width: 40px;
	height: 40px;
	background: #fff;
	border-radius: 50%;
	top: -60px;
	right: 0;
	font-size: 24px;
	cursor: pointer;
	transition: .5s
}

.popup_close svg {
	width: 12px;
	height: 12px
}

.popup_close:hover {
	background: #1b47f5
}

.popup_close:hover svg path {
	stroke: #fff
}

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

.cases-template-default h1 {
	font-size: 50px;
	text-transform: uppercase;
	margin: 60px 0;
	max-width: 600px
}

@media screen and (max-width: 979px) {
	.cases-template-default h1 {
		font-size: 40px;
		font-weight: 400
	}
}

@media screen and (max-width: 767px) {
	.cases-template-default h1 {
		font-size: 28px;
		font-weight: 400
	}
}

.cases-template-default .subtitle {
	font-size: 24px;
	text-transform: uppercase;
	max-width: 600px
}

.cases_wrap {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 50px 40px;
	padding: 0 0 130px
}

@media screen and (max-width: 979px) {
	.cases_wrap {
		flex-direction: column;
		align-items: stretch;
		justify-content: stretch;
		padding: 0 0 80px
	}
}

.cases_page .page_title.cases_title {
	margin: 60px 0 80px
}

@media screen and (max-width: 979px) {
	.cases_page .page_title.cases_title {
		margin: 40px 0 60px
	}
}

.cases_page .blue_link {
	margin-bottom: 80px
}

.cases_preview {
	flex: 1 1 45%;
	min-width: 320px;
	max-width: 620px
}

@media screen and (max-width: 979px) {
	.cases_preview {
		max-width: 100%
	}
}

.cases_preview a {
	text-decoration: none
}

.cases_preview_title {
	position: absolute;
	top: 0;
	width: 100%;
	text-align: center;
	font-size: 18px;
	font-weight: 400;
	color: #fff;
	background: #1b47f5;
	padding: 10px 15px 12px
}

.cases_title {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	color: #fff;
	font-size: 24px;
	font-weight: 400;
	margin: 0;
	gap: 60px
}

@media screen and (max-width: 979px) {
	.cases_title {
		font-size: 20px;
		font-weight: 300
	}
}

.cases_image {
	position: relative;
	border-radius: 8px;
	height: 390px;
	overflow: hidden;
	margin-bottom: 20px
}

@media screen and (max-width: 979px) {
	.cases_image {
		height: 440px
	}
}

.cases_image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	border-radius: 8px
}

.cases_front {
	padding: 130px 0
}

@media screen and (max-width: 979px) {
	.cases_front {
		padding: 80px 0
	}
}

.cases_front .slick-list {
	margin-right: -20px
}

.cases_front .slick-track {
	display: flex !important
}

.cases_front .slick-slide {
	margin-right: 20px
}

.cases_front .cases_preview {
	max-width: 630px
}

@media screen and (max-width: 979px) {
	.cases_front .cases_preview {
		max-width: 100%
	}
}

.cases_front_toprow {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center
}

.cases_slider {
	margin: 60px 0 0
}

.cases_more {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	gap: 40px
}

.cases_more_link {
	margin: 60px 0 130px
}

@media screen and (max-width: 979px) {
	.cases_more_link {
		margin: 50px 0 80px
	}
}

.cases_more_controls .slider_controls_arrows {
	display: none
}

@media screen and (max-width: 979px) {
	.cases_more_controls .slider_controls_arrows {
		display: flex
	}
}

.cases_more .slick-slide {
	margin-right: 20px
}

.cases_more .slick-list {
	margin-right: -20px
}

.cases_team {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	padding: 70px 0 130px;
	gap: 60px
}

.cases_team_text ul {
	margin: 0;
	padding: 0
}

.cases_team_text ul li {
	list-style-type: none;
	font-size: 20px;
	font-weight: 400
}

.cases_team_text p {
	font-size: 20px;
	font-weight: 400
}

@media screen and (max-width: 979px) {
	.cases_team_text p {
		font-size: 16px;
		font-weight: 300
	}
}

.cases_team_text p:first-child {
	margin-top: 0
}

.cases_team_text p:last-child {
	margin-bottom: 0
}

.cases_challenges {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	display: flex;
	padding: 70px 0 0;
	gap: 60px
}

.cases_challenges_text {
	width: 100%;
	max-width: 750px;
	font-size: 18px;
	font-weight: 400
}

.cases_challenges_text strong {
	font-size: 24px;
	font-weight: 600
}

.cases_challenges_text p,
.cases_challenges_text ul li,
.cases_challenges_text ol li,
.cases_realizacion_text p,
.cases_realizacion_text ul li,
.cases_realizacion_text ol li {
	font-size: 20px;
	font-weight: 400
}

@media screen and (max-width: 979px) {

	.cases_challenges_text p,
	.cases_challenges_text ul li,
	.cases_challenges_text ol li,
	.cases_realizacion_text p,
	.cases_realizacion_text ul li,
	.cases_realizacion_text ol li {
		font-size: 16px;
		font-weight: 300
	}
}

.cases_challenges_text p:first-child,
.cases_challenges_text ul li:first-child,
.cases_challenges_text ol li:first-child {
	margin-top: 0
}

.cases_challenges_text p:last-child,
.cases_challenges_text ul li:last-child,
.cases_challenges_text ol li:last-child {
	margin-bottom: 0
}

.cases_challenges_text ul li,
.cases_challenges_text ol li {
	margin-bottom: 20px
}

.cases_realizacion_text {
	width: 100%;
	max-width: 750px
}

.cases_realizacion_text img {
	border-radius: 8px
}

.cases_realizacion_text strong {
	font-size: 24px;
	font-weight: 600
}

@media screen and (max-width: 979px) {
	.cases_realizacion_text strong {
		font-size: 18px;
		font-weight: 400
	}
}

.cases_realizacion_text p {
	font-size: 18px;
	font-weight: 400;
	margin: 20px 0
}

@media screen and (max-width: 979px) {
	.cases_realizacion_text p {
		font-size: 16px;
		font-weight: 300
	}
}

.cases_realizacion_text p:first-child {
	margin-top: 0
}

.cases_realizacion_text p:last-child {
	margin-bottom: 0
}

.fotos_gallery {
	padding-top: 20px
}

@media screen and (max-width: 979px) {
	.fotos_gallery {
		padding-top: 0
	}
}

.fotos_gallery_wrap {
	padding: 0 0 130px
}

@media screen and (max-width: 979px) {
	.fotos_gallery_wrap {
		adding: 0 0 80px
	}
}

.fotos_item {
	display: flex !important;
	align-items: flex-start;
	justify-content: space-between;
	gap: 65px
}

@media screen and (max-width: 979px) {
	.fotos_item {
		flex-direction: column-reverse;
		gap: 30px
	}
}

.fotos_text {
	font-size: 18px;
	font-weight: 400;
	max-width: 465px;
	flex-shrink: 0
}

@media screen and (max-width: 979px) {
	.fotos_text {
		max-width: 100%;
		font-size: 16px;
		font-weight: 300
	}
}

.advantages_wrap {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: stretch;
	padding: 130px 0;
	border-top: 3px solid #2c2c2c;
	gap: 100px
}

@media screen and (max-width: 979px) {
	.advantages_wrap {
		flex-direction: column;
		align-items: center;
		padding: 80px 0;
		gap: 50px
	}
}

.advantages_left {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: flex-start;
	width: min-content !important;
	min-width: 430px
}

@media screen and (max-width: 979px) {
	.advantages_left {
		min-width: 100%;
		align-items: center
	}
}

.advantages_left_bottom {
	position: relative
}

.advantages_left_bottom p {
	color: #fff;
	font-size: 24px;
	margin: 0 0 40px
}

@media screen and (max-width: 979px) {
	.advantages_left_bottom p {
		text-transform: uppercase;
		margin: 0
	}
}

.advantages_arrow {
	position: absolute;
	right: -30px;
	top: -150px
}

@media screen and (max-width: 979px) {
	.advantages_arrow {
		display: none
	}
}

.advantages_right {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	flex: 1;
	flex-wrap: wrap;
	width: 100%;
	max-width: 750px;
	gap: 20px
}

@media screen and (max-width: 979px) {
	.advantages_right {
		max-width: 100%
	}
}

.advantages_block {
	position: relative;
	width: 100%;
	max-width: 365px;
	height: 300px;
	padding: 32px;
	border: 3px solid #1b47f5;
	border-radius: 8px;
	transition: .3s
}

@media screen and (max-width: 979px) {
	.advantages_block {
		max-width: 100%;
		height: auto;
		min-height: 170px;
		padding: 32px 140px 32px 32px
	}
}

.advantages_block_title {
	font-size: 20px;
	font-weight: 500;
	color: #fff;
	margin-top: 0;
	text-transform: uppercase
}

@media screen and (max-width: 979px) {
	.advantages_block_title {
		font-size: 18px
	}
}

.advantages_block_subtitle {
	font-size: 18px;
	font-weight: 400;
	color: #fff;
	margin-bottom: 0
}

@media screen and (max-width: 979px) {
	.advantages_block_subtitle {
		font-size: 16px;
		font-weight: 300
	}
}

.advantages_block_image {
	display: none;
	position: absolute;
	right: 0;
	bottom: 0;
	transition: .3s
}

.advantages_block.active,
.advantages_block.selected {
	background: #1b47f5
}

.advantages_block.active .advantages_block_image,
.advantages_block.selected .advantages_block_image {
	display: block
}

.services_front {
	background: #fff;
	padding: 100px 0
}

@media screen and (max-width: 979px) {
	.services_front {
		padding: 80px 0
	}
}

.services_front .slick-list {
	margin-right: -20px
}

.services_front .slick-slide {
	margin-right: 20px
}

.services_preview {
	display: flex !important;
	justify-content: space-between;
	align-items: stretch;
	overflow: hidden;
	gap: 100px
}

@media screen and (max-width: 979px) {
	.services_preview {
		flex-direction: column-reverse;
		gap: 16px
	}
}

@media screen and (max-width: 979px) {
	.services_text {
		margin-bottom: 50px
	}
}

.services_text_block {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: flex-start;
	max-width: 430px;
	flex: 1
}

@media screen and (max-width: 979px) {
	.services_text_block {
		max-width: 100%
	}
}

.services_text p {
	color: #0d0c0c;
	font-size: 18px;
	margin: 0
}

@media screen and (max-width: 979px) {
	.services_text p {
		font-size: 16px;
		display: flex;
		height: 80px;
		overflow: hidden;
		text-overflow: ellipsis
	}
}

.services_title {
	font-size: 24px;
	font-weight: 400;
	color: #0d0c0c;
	margin: 0 0 16px 0
}

@media screen and (max-width: 767px) {
	.services_title {
		font-size: 20px
	}
}

.services_page {
	padding: 105px 0 0
}

.services_page .services_preview {
	padding-bottom: 130px;
	margin-bottom: 130px;
	border-bottom: 3px solid #2c2c2c
}

@media screen and (max-width: 979px) {
	.services_page .services_preview {
		padding-bottom: 80px;
		margin-bottom: 80px
	}
}

.services_page .services_preview:last-child {
	margin-bottom: 0;
	border-bottom: none
}

.services_page_title {
	font-size: 50px;
	font-weight: 400;
	text-transform: uppercase;
	margin-top: 60px
}

@media screen and (max-width: 979px) {
	.services_page_title {
		font-size: 28px;
		margin-top: 40px
	}
}

.services_page_subtitle {
	font-size: 24px;
	font-weight: 400;
	text-transform: uppercase;
	margin-bottom: 80px
}

@media screen and (max-width: 979px) {
	.services_page_subtitle {
		font-size: 18px;
		margin-bottom: 60px
	}
}

.services_page .page_title.category_title {
	margin: 60px 0 80px
}

@media screen and (max-width: 979px) {
	.services_page .page_title.category_title {
		margin: 40px 0 60px
	}
}

.services_page .services_title {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: flex-start;
	color: #fff;
	font-size: 32px;
	gap: 16px
}

@media screen and (max-width: 979px) {
	.services_page .services_title {
		display: none
	}
}

.services_page .services_title_number {
	color: #1b47f5
}

.services_page .services_title_mobile {
	display: none
}

@media screen and (max-width: 979px) {
	.services_page .services_title_mobile {
		display: flex
	}
}

.services_page .services_text p {
	color: #fff;
	font-size: 20px
}

@media screen and (max-width: 979px) {
	.services_page .services_text p {
		font-size: 16px;
		font-weight: 300
	}
}

.services_page .services_link:hover {
	background: rgba(0, 0, 0, 0);
	color: #fff
}

.services_page .services_link:hover svg path {
	stroke: #fff
}

.services-template-default .cases_more {
	margin-bottom: 130px
}

@media screen and (max-width: 979px) {
	.services-template-default .cases_more {
		margin-bottom: 80px
	}
}

.stages_wrap {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	padding: 130px 0;
	gap: 60px
}

@media screen and (max-width: 979px) {
	.stages_wrap {
		flex-direction: column;
		align-items: flex-start;
		padding: 80px 0;
		gap: 0
	}
}

.stages_block {
	width: 100%;
	max-width: 750px;
	list-style: none;
	counter-reset: custom-counter;
	padding-left: 0;
	margin: 0
}

@media screen and (max-width: 979px) {
	.stages_block {
		max-width: 100%
	}
}

.stages_block_wrap {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
	gap: 20px
}

.stages_item {
	border: 3px solid #1b47f5;
	border-radius: 8px;
	counter-increment: custom-counter;
	position: relative;
	padding: 24px 160px 24px 110px;
	margin-bottom: 20px;
	transition: opacity 1s ease, transform 1s ease
}

@media screen and (max-width: 767px) {
	.stages_item {
		padding: 24px 24px 24px 80px
	}
}

.stages_item:before {
	content: counter(custom-counter, decimal-leading-zero);
	position: absolute;
	left: 24px;
	font-size: 50px;
	font-weight: 300;
	color: #fff
}

@media screen and (max-width: 979px) {
	.stages_item:before {
		font-size: 28px
	}
}

.stages_item.active,
.stages_item.selected {
	background: #1b47f5
}

.stages_item.active .stages_image,
.stages_item.selected .stages_image {
	display: block
}

.stages_item.hidden {
	display: none;
	opacity: 0;
	transform: translateY(-10px)
}

.stages_item:last-child {
	margin-bottom: 0
}

.stages_title {
	font-size: 20px;
	font-weight: 500;
	color: #fff;
	text-transform: uppercase;
	margin: 0 0 16px
}

@media screen and (max-width: 767px) {
	.stages_title {
		font-size: 18px
	}
}

.stages_text {
	font-size: 18px;
	font-weight: 400;
	color: #fff;
	margin: 0
}

@media screen and (max-width: 767px) {
	.stages_text {
		font-size: 16px
	}
}

.stages_image {
	display: none;
	position: absolute;
	max-height: 90px;
	right: 24px;
	top: 0;
	bottom: 0;
	margin: auto;
	transition: .3s
}

@media screen and (max-width: 767px) {
	.stages_image {
		display: none !important
	}
}

.stages_button {
	font-size: 20px;
	font-weight: 400;
	color: #fff;
	background: rgba(0, 0, 0, 0);
	border: none;
	cursor: pointer;
	transition: .3s
}

.stages_button:hover {
	color: #1b47f5
}

.stages_button_less {
	margin-top: 20px
}

.partners {
	background: #fff;
	overflow: hidden
}

.partners_wrap {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: stretch;
	padding: 100px 0;
	position: relative;
	gap: 50px
}

@media screen and (max-width: 979px) {
	.partners_wrap {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		align-items: stretch;
		gap: 50px
	}
}

.partners_left,
.partners_right {
	width: 50%
}

@media screen and (max-width: 979px) {

	.partners_left,
	.partners_right {
		width: 100%
	}
}

.partners_right {
	display: flex;
	align-items: center
}

.partners_buttons {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 16px;
	margin: 0 0 0 98px;
	padding: 0
}

@media screen and (max-width: 979px) {
	.partners_buttons {
		justify-content: center;
		margin: 0
	}
}

.partners_button {
	list-style-type: none;
	font-size: 16px;
	font-weight: 500;
	color: #0d0c0c;
	text-transform: uppercase;
	padding: 10px 16px;
	border: 1px solid #0d0c0c;
	border-radius: 25px;
	background: #fff;
	cursor: pointer;
	transition: .3s;
	z-index: 1
}

.partners_button.active,
.partners_button:hover {
	color: #fff;
	background: #1b47f5;
	border: 1px solid #1b47f5
}

.partners_image_group {
	display: none;
	opacity: 0;
	transform: translateY(10px);
	transition: opacity .5s ease, transform .5s ease
}

.partners_image_group.active {
	display: flex;
	flex-direction: row;
	justify-content: space-around;
	align-items: stretch;
	opacity: 1;
	transform: translateY(0);
	gap: 30px
}

@media screen and (max-width: 979px) {
	.partners_image_group.active {
		gap: 15px
	}
}

.partners_image_group .country {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	color: #0d0c0c;
	margin-top: 30px;
	min-height: 35px;
	gap: 10px
}

@media screen and (max-width: 767px) {
	.partners_image_group .country {
		flex-direction: column
	}
}

.partners_image_group>div {
	width: 50%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center
}

@media screen and (max-width: 767px) {
	.partners_image_group>div {
		justify-content: space-between
	}
}

.partners_image_group>div>img {
	width: 100%;
	max-width: 300px
}

.partners_image_wrap {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	flex-grow: 1
}

.partners_image_wrap img {
	width: 100%
}

.partners_images {
	width: 100%;
	margin: 0;
	padding: 0
}

.partners_bg_image {
	position: absolute;
	left: -80px;
	bottom: 0;
	z-index: 0
}

.reviews {
	padding: 130px 0
}

@media screen and (max-width: 979px) {
	.reviews {
		padding: 80px 0
	}
}

.reviews_front_slider {
	margin: 60px 0 0;
	padding: 0
}

@media screen and (max-width: 979px) {
	.reviews_front_slider {
		margin: 0
	}

	.reviews_front_slider .slick-slide {
		margin-right: 20px
	}

	.reviews_front_slider .slick-list {
		margin-right: -20px
	}
}

.reviews_front_slider .slick-slide>div {
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: stretch
}

.reviews_front_slide {
	width: 100%;
	max-width: 750px;
	border: 3px solid #1b47f5;
	border-radius: 8px;
	padding: 20px 20px 24px
}

.reviews_front_slide_img {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 380px;
	border-radius: 9px;
	overflow: hidden;
	margin-bottom: 16px;
	background: #0f286f
}

.reviews_front_slide_img img {
	height: 100%;
	width: auto
}

.reviews_front_slide_text {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	color: #fff
}

.reviews_front_slide_text blockquote {
	margin: 0
}

.reviews_front_slide_text p {
	font-size: 18px;
	font-weight: 400;
	margin: 0 0 20px
}

@media screen and (max-width: 767px) {
	.reviews_front_slide_text p {
		font-size: 16px
	}
}

.reviews_front_slide_text .author {
	position: relative;
	width: 100%;
	padding-right: 80px
}

.reviews_front_slide_text .author .name {
	font-size: 18px;
	font-weight: 300;
	text-transform: uppercase;
	margin-bottom: 8px
}

.reviews_front_slide_text .author .company {
	font-size: 16px;
	font-weight: 300
}

.reviews_front_slide_text .author .reviews_front_quotes {
	position: absolute;
	width: 48px;
	height: 37px;
	right: 0;
	bottom: 0
}

.case_reviews_slider {
	margin: 0;
	padding: 10px 0 60px
}

@media screen and (max-width: 979px) {
	.case_reviews_slider {
		padding: 0 0 50px
	}
}

.case_reviews_slider_arrows #leftarrow_case_reviews {
	transform: rotate(180deg);
	margin-right: 60px
}

.case_reviews_slider_arrows #leftarrow_case_reviews,
.case_reviews_slider_arrows #rightarrow_case_reviews {
	cursor: pointer;
	transition: .3s
}

.case_reviews_slider_arrows #leftarrow_case_reviews:hover path,
.case_reviews_slider_arrows #rightarrow_case_reviews:hover path {
	stroke: #1b47f5
}

.case_reviews_slider .slick-slide {
	margin-right: 20px
}

.case_reviews_slider .slick-list {
	margin-right: -20px
}

.case_reviews_slide {
	list-style-type: none;
	background: #1b47f5;
	color: #fff;
	border-radius: 9px;
	padding: 28px 32px
}

.case_master_review {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	width: 100%;
	position: relative;
	border: 3px solid #1b47f5;
	border-radius: 8px;
	padding: 20px 20px 24px;
	color: #fff;
	gap: 33px
}

@media screen and (max-width: 979px) {
	.case_master_review {
		flex-direction: column-reverse;
		padding: 15px 15px 20px;
		gap: 16px
	}
}

.case_master_review_wrap {
	padding: 60px 0 130px;
	border-top: 3px solid #2c2c2c
}

@media screen and (max-width: 979px) {
	.case_master_review_wrap {
		padding: 50px 0 80px
	}
}

.case_master_text {
	flex: 1;
	max-width: 345px
}

@media screen and (max-width: 979px) {
	.case_master_text {
		max-width: 100%
	}
}

.case_master_text_top {
	margin-bottom: 60px
}

@media screen and (max-width: 979px) {
	.case_master_text_top {
		margin-bottom: 30px
	}
}

.case_master_text_top p {
	margin-top: 0;
	font-size: 18px;
	font-weight: 400
}

@media screen and (max-width: 979px) {
	.case_master_text_top p {
		font-size: 16px;
		font-weight: 300
	}
}

@media screen and (max-width: 979px) {
	.case_master_text_bottom {
		padding-right: 70px
	}
}

.case_master_text_bottom p {
	margin-top: 0
}

.case_master_text_bottom .title {
	font-size: 18px;
	font-weight: 300
}

.case_master_text_bottom .company {
	font-size: 16px;
	font-weight: 300;
	margin-bottom: 0
}

.case_master_quotes {
	width: 48px;
	height: 37px
}

@media screen and (max-width: 979px) {
	.case_master_quotes {
		position: absolute;
		right: 20px;
		bottom: 20px
	}
}

.faq h3 {
	font-size: 50px;
	font-weight: 400;
	text-transform: uppercase;
	color: #fff;
	margin-top: 0 !important;
	margin-right: 80px;
	margin-bottom: 0 !important;
	width: min-content !important
}

.faq_wrap {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	padding: 130px 0;
	border-top: 3px solid #2c2c2c;
	gap: 60px
}

@media screen and (max-width: 979px) {
	.faq_wrap {
		flex-direction: column;
		padding: 80px 0;
		gap: 0
	}
}

ul.accordion-list {
	position: relative;
	display: block;
	width: 100%;
	max-width: 750px;
	height: auto;
	margin: 0;
	padding: 0
}

@media screen and (max-width: 979px) {
	ul.accordion-list {
		max-width: 100%
	}
}

@media screen and (max-width: 519px) {
	ul.accordion-list {
		padding: 44px 16px 50px
	}
}

ul.accordion-list li {
	position: relative;
	display: block;
	width: 100%;
	height: auto;
	color: #fff;
	font-size: 20px;
	text-decoration: none;
	margin-bottom: 20px;
	border-bottom: 1px solid #1b1b1b;
	z-index: 1
}

ul.accordion-list li.active .accordion-title img {
	transform: rotateZ(90deg)
}

ul.accordion-list li.active .answer {
	display: block
}

ul.accordion-list li .accordion-title {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding: 0 0 24px;
	font-size: 20px;
	font-weight: 400;
	text-transform: uppercase;
	cursor: pointer;
	gap: 60px
}

@media screen and (max-width: 767px) {
	ul.accordion-list li .accordion-title {
		font-size: 16px
	}
}

ul.accordion-list li .accordion-title span {
	flex: 1
}

ul.accordion-list li .accordion-title img {
	margin-right: 8px;
	transition: all .3s ease-in-out
}

ul.accordion-list li .answer {
	display: none;
	opacity: 0;
	height: 0;
	overflow: hidden;
	transition: opacity .3s, height .3s ease-in-out
}

ul.accordion-list li .answer p {
	font-size: 18px;
	font-weight: 400;
	margin: 0 0 24px
}

@media screen and (max-width: 767px) {
	ul.accordion-list li .answer p {
		font-size: 16px
	}
}

.cooperation {
	background: #1b47f5;
	padding: 100px 0
}

@media screen and (max-width: 767px) {
	.cooperation {
		padding: 80px 0
	}
}

.cooperation_wrap {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: stretch;
	gap: 110px
}

@media screen and (max-width: 979px) {
	.cooperation_wrap {
		flex-direction: column;
		gap: 40px
	}
}

.cooperation h3 {
	color: #fff;
	font-size: 50px;
	font-weight: 400;
	margin: 0;
	text-transform: uppercase
}

@media screen and (max-width: 979px) {
	.cooperation h3 {
		font-size: 40px
	}
}

@media screen and (max-width: 767px) {
	.cooperation h3 {
		font-size: 28px
	}
}

.cooperation_text {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: flex-start;
	flex: 1
}

.cooperation_text p {
	margin: 0;
	color: #fff;
	font-size: 18px;
	font-weight: 400
}

@media screen and (max-width: 979px) {
	.cooperation_text p {
		display: none
	}
}

.cooperation_text_mobile {
	display: none;
	margin: 0
}

@media screen and (max-width: 979px) {
	.cooperation_text_mobile {
		display: flex
	}
}

.cooperation_image {
	width: 100%;
	max-width: 750px;
	height: 400px;
	background: url("../images/Clapper_Board.jpg");
	background-size: cover;
	background-position: center;
	border-radius: 8px
}

@media screen and (max-width: 979px) {
	.cooperation_image {
		max-width: 100%
	}
}

.cooperation_link {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	background: #fff;
	border: 3px solid #fff;
	border-radius: 3px;
	text-align: left;
	padding: 16px 32px;
	margin-top: 60px;
	text-decoration: none;
	transition: .3s
}

@media screen and (max-width: 979px) {
	.cooperation_link {
		margin-top: 50px
	}
}

.cooperation_link .button_label {
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	color: #1b47f5;
	transition: .3s
}

.cooperation_link:hover {
	background: rgba(0, 0, 0, 0)
}

.cooperation_link:hover .button_label {
	color: #fff
}

.cooperation_link:hover svg path {
	stroke: #fff
}

.about_top {
	overflow: hidden;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: stretch;
	padding-top: 60px;
	gap: 110px
}

@media screen and (max-width: 979px) {
	.about_top {
		flex-direction: column;
		gap: 20px
	}
}

.about_top_title {
	font-size: 50px;
	text-transform: uppercase;
	margin-bottom: 75px
}

@media screen and (max-width: 979px) {
	.about_top_title {
		font-size: 36px;
		margin-bottom: 40px
	}
}

@media screen and (max-width: 767px) {
	.about_top_title {
		font-size: 28px;
		margin-bottom: 28px
	}
}

.about_top_superpower {
	background: #1b47f5;
	color: #fff;
	font-size: 20px;
	border-radius: 8px;
	padding: 24px;
	margin-bottom: 75px;
	text-transform: uppercase
}

@media screen and (max-width: 979px) {
	.about_top_superpower {
		margin-bottom: 40px
	}
}

@media screen and (max-width: 767px) {
	.about_top_superpower {
		font-size: 16px;
		margin-bottom: 0
	}
}

.about_top_superpower strong {
	display: block;
	font-size: 24px;
	font-weight: 400;
	margin: 0 0 10px
}

@media screen and (max-width: 767px) {
	.about_top_superpower strong {
		font-size: 20px
	}
}

.about_top_subtext {
	font-size: 24px;
	text-transform: uppercase;
	margin-bottom: 45px
}

@media screen and (max-width: 979px) {
	.about_top_subtext {
		display: none
	}
}

@media screen and (max-width: 767px) {
	.about_top_subtext {
		font-size: 20px
	}
}

.about_top_subtext.about_top_subtext_mobile {
	display: none;
	position: absolute;
	left: 0;
	top: 38px;
	width: 155px
}

@media screen and (max-width: 979px) {
	.about_top_subtext.about_top_subtext_mobile {
		display: block
	}
}

.about_top_right {
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	position: relative
}

.about_top_right img {
	width: 100%;
	height: auto
}

@media screen and (max-width: 979px) {
	.about_top_right img {
		margin-right: -30px
	}
}

.about_top_left,
.about_top_right {
	width: 50%
}

@media screen and (max-width: 979px) {

	.about_top_left,
	.about_top_right {
		width: 100%
	}
}

.about_text_blue {
	background: #1b47f5;
	padding: 32px 0;
	overflow: hidden
}

.about_text_blue .wrap {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: relative
}

.about_text_blue .wrap:before {
	content: "";
	display: block;
	position: absolute;
	background-image: url(.././images/about_blue_left.svg);
	background-size: cover;
	width: 207px;
	height: 207px;
	left: 0;
	bottom: -25px
}

.about_text_blue .wrap:after {
	content: "";
	display: block;
	position: absolute;
	background-image: url(.././images/about_blue_right.svg);
	background-size: cover;
	width: 232px;
	height: 232px;
	right: -45px;
	top: -50px
}

.about_text_blue p {
	text-align: center;
	max-width: 1000px;
	font-size: 28px
}

@media screen and (max-width: 767px) {
	.about_text_blue p {
		font-size: 20px
	}
}

.about_text_blue p:first-child {
	margin: 48px 0 20px
}

.about_text_blue p:nth-child(2) {
	margin: 20px 0 30px
}

.about_text_blue p:last-child {
	margin: 30px 0 0;
	text-transform: uppercase
}

@media screen and (max-width: 767px) {
	.about_text_blue p:last-child {
		font-size: 24px
	}
}

.about_text_white {
	background: #fff;
	padding: 20px 0
}

.about_text_white p {
	text-align: center;
	color: #1b47f5;
	font-size: 40px;
	text-transform: uppercase;
	margin: 0
}

@media screen and (max-width: 979px) {
	.about_text_white p {
		font-size: 32px
	}
}

@media screen and (max-width: 767px) {
	.about_text_white p {
		font-size: 24px
	}
}

.about_team {
	background: #fff;
	color: #0d0c0c;
	padding: 100px 0
}

@media screen and (max-width: 767px) {
	.about_team {
		padding: 80px 0
	}
}

.about_team_slider_item {
	display: flex !important;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start
}

.about_team_slider_item p {
	font-size: 16px;
	font-weight: 300
}

.about_team_slider_item p.about_team_slider_name {
	font-size: 24px;
	font-weight: 400;
	color: #1b47f5;
	margin: 20px 0 8px
}

.about_team_slider_item p.about_team_slider_position {
	font-size: 20px;
	font-weight: 400;
	margin: 0 0 12px
}

.about_team_slider_item p:last-child {
	margin-bottom: 0
}

.about_team_slider_image {
	width: 100%;
	border-radius: 26px;
	transition: .5s;
	overflow: hidden;
	aspect-ratio: 1
}

@media screen and (max-width: 767px) {
	.about_team_slider_image {
		background: #1b47f5
	}
}

.about_team_slider_image img {
	width: 100%;
	height: auto
}

.about_team .slick-list {
	padding: 0 !important
}

.about_team .slick-slide {
	margin-right: 20px
}

.about_team .slick-slide.slick-center img {
	background: #1b47f5
}

.about_team .slick-list {
	margin-right: -20px
}

@media screen and (max-width: 767px) {
	.about_team .slider_controls {
		flex-direction: column
	}
}

.about_gallery {
	margin-bottom: 60px
}

@media screen and (max-width: 979px) {
	.about_gallery {
		margin-bottom: 50px
	}
}

.about_gallery .slick-list {
	margin-right: -40px
}

@media screen and (max-width: 979px) {
	.about_gallery .slick-list {
		margin-right: 0
	}
}

.about_gallery .slick-slide {
	margin-right: 40px
}

@media screen and (max-width: 979px) {
	.about_gallery .slick-slide {
		margin-right: 0
	}
}

.about_gallery_image {
	max-width: 620px;
	height: 400px;
	border-radius: 8px;
	overflow: hidden
}

@media screen and (max-width: 979px) {
	.about_gallery_image {
		max-width: 100%
	}
}

.about_gallery_image img {
	width: 100%;
	height: auto;
	border-radius: 8px
}

.about_gallery_wrap {
	padding: 130px 0
}

@media screen and (max-width: 767px) {
	.about_gallery_wrap {
		padding: 80px 0
	}
}

.milestones {
	height: 1700px;
	position: relative;
	padding-top: 130px
}

@media screen and (max-width: 979px) {
	.milestones {
		padding: 175px 0 110px;
		height: auto
	}
}

.milestones h2 {
	position: absolute;
	left: 0;
	top: 120px
}

@media screen and (max-width: 979px) {
	.milestones h2 {
		top: 80px
	}
}

.milestones_item {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	justify-content: flex-end;
	margin-bottom: 80px
}

@media screen and (max-width: 979px) {
	.milestones_item {
		margin-bottom: 110px
	}
}

.milestones_item:nth-child(odd) {
	justify-content: flex-start
}

.milestones_item:nth-child(odd) .milestones_item_wrap {
	flex-direction: row-reverse
}

.milestones_item:nth-child(odd) .milestones_item_wrap .milestones_header,
.milestones_item:nth-child(odd) .milestones_item_wrap .milestones_text {
	text-align: right
}

.milestones_item_wrap {
	position: relative;
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	justify-content: flex-end;
	gap: 24px
}

@media screen and (max-width: 979px) {
	.milestones_item.last-item {
		margin-bottom: 0
	}
}

.milestones_item.last-item .milestones_item_wrap:after {
	display: block;
	position: absolute;
	content: "";
	background-image: url(".././images/snake_tail.png");
	background-size: 100% 100%;
	background-repeat: no-repeat;
	left: -630px;
	top: 50px;
	width: 710px;
	height: 360px;
	z-index: -1
}

@media screen and (max-width: 979px) {
	.milestones_item.last-item .milestones_item_wrap:after {
		display: none
	}
}

.milestones_year {
	text-align: center;
	color: #fff;
	font-size: 28px;
	font-weight: 300;
	background: #1b47f5;
	border-radius: 30px;
	padding: 9px 32px
}

@media screen and (max-width: 979px) {
	.milestones_year {
		font-size: 20px;
		padding: 8px 27px
	}
}

.milestones_year--hidden {
	position: absolute;
	width: 5px;
	height: 5px;
	padding: 0;
	z-index: -1
}

.milestones_year--hidden#b-1 {
	left: 50%;
	top: -50px
}

.milestones_year--hidden#b0 {
	left: 50%;
	top: -50px
}

.milestones_year--hidden#b6 {
	left: 50%;
	bottom: -70px
}

.milestones_block {
	width: 100%;
	max-width: 488px;
	opacity: 0;
	transform: translateY(50px);
	transition: opacity .8s ease, transform .8s ease
}

.milestones_block:hover .milestones_text {
	background: #1b47f5
}

.milestones_block.visible {
	opacity: 1;
	transform: translateY(0)
}

.milestones_header {
	font-size: 24px;
	font-weight: 400;
	margin-bottom: 24px
}

@media screen and (max-width: 979px) {
	.milestones_header {
		font-size: 16px;
		margin-bottom: 12px
	}
}

.milestones_text {
	position: relative;
	font-size: 20px;
	font-weight: 400;
	text-transform: uppercase;
	border: 4px solid #1b47f5;
	background: #0d0c0c;
	border-radius: 10px;
	padding: 20px 24px;
	z-index: 1
}

@media screen and (max-width: 979px) {
	.milestones_text {
		font-size: 16px;
		padding: 15px
	}
}

#b1 {
	top: 50px;
	left: 100px
}

#b2 {
	top: 150px;
	left: 250px
}

#b3 {
	top: 300px;
	left: 400px
}

#b4 {
	top: 450px;
	left: 600px
}

#b5 {
	top: 600px;
	left: 600px
}

svg#connector {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: -1
}

svg#connector .connector-path {
	stroke: #1b47f5;
	stroke-width: 30px;
	fill: none;
	stroke-linecap: round;
	stroke-linejoin: round
}

@media screen and (max-width: 979px) {
	svg#connector .connector-path {
		stroke-width: 13px
	}
}

footer {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: stretch;
	background: #0d0c0c;
	padding: 60px 0 40px;
	gap: 30px
}

.footer_top {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center
}

@media screen and (max-width: 767px) {
	.footer_top {
		flex-direction: column;
		gap: 42px
	}
}

.footer_bottom {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	color: #c6c6c6;
	font-size: 12px;
	font-weight: 400
}

@media screen and (max-width: 767px) {
	.footer_bottom {
		flex-direction: column;
		gap: 12px
	}
}

.footer_bottom a {
	color: #c6c6c6;
	text-decoration: none
}

.footer_bottom a:hover {
	color: #c6c6c6
}

.footer_logo {
	width: 170px;
	height: 45px
}

.footer_contacts {
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: center;
	flex-wrap: wrap;
	gap: 42px
}

@media screen and (max-width: 767px) {
	.footer_contacts {
		flex-direction: column
	}
}

.footer_phone {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 8px
}

.footer_phone a {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	font-size: 20px;
	font-weight: 400;
	color: #fff;
	text-decoration: none;
	gap: 12px
}

.footer_mail {
	font-size: 20px;
	font-weight: 400;
	color: #fff;
	text-decoration: none
}

.footer_social {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	gap: 26px
}

@media screen and (max-width: 767px) {
	.footer {
		gap: 42px
	}
}

body.error404 main .wrap {
	height: calc(100vh - 200px);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	overflow: hidden
}

body.error404 .notfound {
	position: relative;
	font-size: 200px
}

@media screen and (max-width: 979px) {
	body.error404 .notfound {
		font-size: 150px
	}
}

@media screen and (max-width: 767px) {
	body.error404 .notfound {
		font-size: 120px
	}
}

body.error404 .notfound:before {
	content: "";
	display: block;
	position: absolute;
	background-image: url(.././images/404_before.svg);
	background-size: cover;
	width: 354px;
	height: 352px;
	right: -200px;
	top: -140px
}

@media screen and (max-width: 979px) {
	body.error404 .notfound:before {
		width: 254px;
		height: 252px;
		right: -110px;
		top: -120px
	}
}

@media screen and (max-width: 767px) {
	body.error404 .notfound:before {
		width: 176px;
		height: 175px;
		right: -80px;
		top: -80px
	}
}

body.error404 .notfound:after {
	content: "";
	display: block;
	position: absolute;
	background-image: url(.././images/404_after.svg);
	background-size: cover;
	width: 341px;
	height: 269px;
	left: -160px;
	top: 0;
	z-index: -1
}

@media screen and (max-width: 979px) {
	body.error404 .notfound:after {
		width: 241px;
		height: 169px;
		left: -110px;
		top: -30px
	}
}

@media screen and (max-width: 767px) {
	body.error404 .notfound:after {
		width: 170px;
		height: 134px;
		left: -70px;
		top: -20px
	}
}

body.error404 h1 {
	text-align: center;
	font-size: 36px;
	text-transform: uppercase;
	max-width: 465px;
	margin-bottom: 40px
}

@media screen and (max-width: 979px) {
	body.error404 h1 {
		font-size: 30px
	}
}

@media screen and (max-width: 767px) {
	body.error404 h1 {
		font-size: 28px
	}
}

body.error404 .blue_link {
	display: flex !important
}

.privacy_policy {
	padding-bottom: 130px
}

@media screen and (max-width: 767px) {
	.privacy_policy {
		padding-bottom: 80px
	}
}

.privacy_policy_title {
	margin: 90px 0 20px !important
}

@media screen and (max-width: 767px) {
	.privacy_policy_title {
		margin: 40px 0 16px !important
	}
}

.privacy_policy p {
	font-size: 20px;
	font-weight: 400;
	margin: 0 0 40px
}

@media screen and (max-width: 767px) {
	.privacy_policy p {
		font-size: 16px;
		font-weight: 300;
		margin: 0 0 30px
	}
}

.privacy_policy p:last-child {
	margin: 0
}

.privacy_policy ol {
	counter-reset: custom-counter;
	list-style: none;
	padding-left: 0
}

.privacy_policy ol li {
	counter-increment: custom-counter;
	font-size: 20px;
	font-weight: 400;
	margin: 0 0 80px
}

@media screen and (max-width: 767px) {
	.privacy_policy ol li {
		font-size: 16px;
		font-weight: 300;
		margin: 0 0 60px
	}
}

.privacy_policy ol li::marker {
	content: "";
	display: none
}

.privacy_policy ol li strong {
	text-transform: uppercase;
	display: block;
	position: relative;
	margin-bottom: 30px;
	padding-left: 55px
}

@media screen and (max-width: 767px) {
	.privacy_policy ol li strong {
		padding-left: 35px
	}
}

.privacy_policy ol li strong:before {
	content: counter(custom-counter, decimal-leading-zero) ". ";
	font-weight: bold;
	color: #1b47f5;
	position: absolute;
	left: 0
}

html {
	margin-top: 0 !important;
	overflow-x: hidden
}

body {
	margin: 0;
	font-family: "Geologica", serif;
	color: #fff;
	background: #0d0c0c
}

body.home main {
	padding-top: 0
}

main {
	padding-top: 105px
}

*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	outline: none
}

a {
	cursor: pointer
}

.wrap {
	width: 100%;
	max-width: 1360px;
	padding: 0 40px;
	margin: 0 auto
}

@media screen and (max-width: 767px) {
	.wrap {
		padding: 0 15px
	}
}

.category-page {
	padding-top: 130px
}

h2.page_title {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 50px;
	font-weight: 400;
	color: #fff;
	text-transform: uppercase;
	margin: 0 0 50px;
	max-width: 80%
}

@media screen and (max-width: 979px) {
	h2.page_title {
		font-size: 40px;
		max-width: 100%
	}
}

@media screen and (max-width: 767px) {
	h2.page_title {
		font-size: 28px
	}
}

h2.page_title span {
	color: #1b47f5
}

.section_number {
	font-size: 50px;
	font-weight: 400;
	color: #1b47f5;
	margin-right: 20px
}

@media screen and (max-width: 979px) {
	.section_number {
		font-size: 40px
	}
}

@media screen and (max-width: 767px) {
	.section_number {
		font-size: 28px;
		margin-right: 8px
	}
}

.blue {
	color: #1b47f5 !important
}

.front_video {
	width: 100%
}

.front_video_wrap {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
	padding-bottom: 130px
}

@media screen and (max-width: 979px) {
	.front_video_wrap {
		padding-bottom: 80px
	}
}

.front_video_block {
	position: relative;
	width: 100%;
	height: 100%;
	margin-bottom: 60px;
	border-radius: 8px;
	overflow: hidden
}

@media screen and (max-width: 767px) {
	.front_video_block {
		margin-bottom: 50px
	}
}

.front_video_block .front_video_overlay {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: center;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-image: url(.././images/image_bg.jpg);
	background-size: cover;
	-webkit-transition: opacity 1s ease;
	transition: opacity 1s ease;
	z-index: 1
}

.front_video_block .front_video_overlay a svg rect {
	-webkit-transition: 1s;
	transition: 1s
}

.front_video_block .front_video_overlay a:hover svg rect {
	fill-opacity: 1
}

.front_video_block .front_video_overlay_text {
	font-size: 50px;
	text-align: center;
	text-transform: uppercase;
	margin: 0 0 8%
}

@media screen and (max-width: 979px) {
	.front_video_block .front_video_overlay_text {
		font-size: 28px
	}
}

@media screen and (max-width: 767px) {
	.front_video_block .front_video_overlay_text {
		font-size: 16px;
		margin: 0 0 4%
	}
}

.front_video_block .front_video_overlay_button {
	display: block;
	position: absolute;
	width: 104px;
	height: 108px;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto
}

@media screen and (max-width: 767px) {
	.front_video_block .front_video_overlay_button {
		width: 70px;
		height: 70px
	}
}

.front_video_block .front_video_overlay_button svg {
	width: 100%;
	height: 100%
}

.front_video_button {
	color: #fff;
	background: #1b47f5;
	border-radius: 60px;
	font-size: 40px;
	font-weight: 400;
	text-transform: uppercase;
	padding: 12px 44px;
	text-align: center;
	margin-bottom: 24px
}

@media screen and (max-width: 979px) {
	.front_video_button {
		font-size: 28px
	}
}

@media screen and (max-width: 767px) {
	.front_video_button {
		font-size: 20px;
		padding: 7px 40px;
		margin-bottom: 30px
	}
}

.front_video_subtitle {
	color: #fff;
	font-size: 24px;
	font-weight: 400;
	margin-bottom: 12px;
	text-align: center
}

@media screen and (max-width: 767px) {
	.front_video_subtitle {
		font-size: 20px;
		margin-bottom: 20px
	}
}

.front_video_title {
	color: #fff;
	font-size: 40px;
	font-weight: 500;
	text-transform: uppercase;
	text-align: center
}

@media screen and (max-width: 767px) {
	.front_video_title {
		font-size: 30px
	}
}

.content_block {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 130px;
	gap: 60px
}

@media screen and (max-width: 979px) {
	.content_block {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		margin-bottom: 80px;
		gap: 50px
	}
}

.content_block_left {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1
}

.content_block_left strong {
	font-size: 24px;
	font-weight: 600
}

.content_block_left p {
	font-size: 20px;
	margin: 20px 0
}

@media screen and (max-width: 767px) {
	.content_block_left p {
		font-size: 16px;
		font-weight: 300
	}
}

.content_block_left p:first-child {
	margin-top: 0
}

.content_block_left p:last-child {
	margin-bottom: 0
}

@media screen and (max-width: 979px) {
	.content_block_left {
		width: 100%
	}
}

.content_block_right {
	width: 100%;
	max-width: 750px;
	-webkit-box-flex: 2;
	-ms-flex: 2;
	flex: 2
}

@media screen and (max-width: 979px) {
	.content_block_right {
		max-width: 100%
	}
}

.content_block_right iframe {
	width: 100%;
	height: 400px;
	border-radius: 9px
}

.content_block_right img {
	width: 100%;
	height: auto;
	border-radius: 9px
}

@media screen and (max-width: 979px) {
	.content_block_right img {
		height: auto
	}
}

.content_block_right img.stages_image {
	width: auto
}

.content_block .page_title {
	margin-bottom: 0
}

@media screen and (max-width: 979px) {
	.content_block--reverse {
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		-ms-flex-direction: column-reverse;
		flex-direction: column-reverse;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center
	}
}

.image_block {
	position: relative;
	width: 100%;
	max-width: 750px;
	height: 400px;
	border-radius: 8px;
	overflow: hidden;
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1
}

@media screen and (max-width: 979px) {
	.image_block {
		max-width: 100%;
		-webkit-box-flex: 1;
		-ms-flex: auto;
		flex: auto
	}
}

@media screen and (max-width: 767px) {
	.image_block {
		height: 300px
	}
}

.image_block img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	-o-object-fit: cover;
	object-fit: cover
}

.slider_controls {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 60px
}

@media screen and (max-width: 979px) {
	.slider_controls {
		margin-bottom: 50px
	}
}

.slider_controls_arrows {
	-ms-flex-negative: 0;
	flex-shrink: 0
}

.slider_controls_arrows .slider_leftarrow {
	-webkit-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	transform: rotate(180deg);
	margin-right: 60px
}

@media screen and (max-width: 767px) {
	.slider_controls_arrows .slider_leftarrow {
		margin-right: 36px
	}
}

.slider_controls_arrows .slider_arrow {
	cursor: pointer;
	-webkit-transition: .3s;
	transition: .3s
}

@media screen and (max-width: 767px) {
	.slider_controls_arrows .slider_arrow {
		width: 22px;
		height: 15px
	}
}

.slider_controls_arrows .slider_arrow:hover path {
	stroke: #1b47f5
}

.slider_controls--white h2.page_title {
	color: #0d0c0c
}

.slider_controls--white .slider_arrow {
	stroke: #1b47f5
}

.slider_controls .page_title {
	margin: 0
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
	border-color: #ffb900;
	color: #0d0c0c
}

.wpcf7 form .wpcf7-response-output {
	color: #0d0c0c
}

.blue_link {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	text-decoration: none;
	width: 100%;
	max-width: 430px;
	font-size: 16px;
	color: #fff;
	text-transform: uppercase;
	padding: 16px 32px;
	background: #1b47f5;
	border: 3px solid #1b47f5;
	border-radius: 3px;
	-webkit-transition: .3s;
	transition: .3s
}

@media screen and (max-width: 767px) {
	.blue_link {
		max-width: 100%
	}
}

.blue_link:hover {
	background: rgba(0, 0, 0, 0);
	color: #fff
}

.services_front .blue_link:hover {
	color: #1b47f5
}
.services_front .blue_link:hover svg path {
    stroke: #1b47f5;
}

.blue_link:hover svg path {
	stroke: #fff
}

@media screen and (max-width: 979px) {
	.blue_link.blue_link_desctop {
		display: none
	}
}

.blue_link.blue_link_mobile {
	display: none
}

@media screen and (max-width: 979px) {
	.blue_link.blue_link_mobile {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex
	}
}