@import url('https://fonts.googleapis.com/css2?family=Onest:wght@100..900&display=swap');

:root {
	--container: 1230px;
	--white: #fff;
	--white-20: rgba(255, 255, 255, 0.2);
	--black: #000;
	--bg: #0F0804;
	--light-grey: #C1BDB5;
	--light-grey-bg: #F9F8F8;
	--grey: #2F2F2E;
	--grey2: #D9D9D9;
	--grey3: #E4E4E4;
	--yellow: #FFD82B;
	--red: #f00;
	
	
	
	--all-in: all 0.25s ease-in;
	--all-out: all 0.25s ease-out;
	--all-inout: all 0.25s ease-in-out;
}

html, body {
	padding: 0px;
	margin: 0px;
	line-height: 1.5;
	position: relative;
	font-family: "Onest", sans-serif;
	color : var(--grey);
}

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

input, textarea, select, button, option {
	outline: none;
	font-family: "Onest", sans-serif;
}

textarea {
	resize: none;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
	padding: 0px;
	margin: 0px;
	position: relative;
	z-index: 2;
	font-weight: 700;
	font-family: "Onest", sans-serif;
	line-height: 1.2;
}


h1, .h1 {
	font-size: 36px;
	text-transform: uppercase;
}

h2, .h2 {
	font-size: 36px;
	text-transform: uppercase;
}

h3, .h3 {
	text-transform: uppercase;
}

h4, .h4 {
	
}

h5, .h5 {
	
}

h6, .h6 {
	
}

p {
	margin: 0px;
	line-height: 1.5;
	font-weight: 400;
}

ul, ol {
	margin: 0px;
	font-family: "Onest", sans-serif;
}

strong {
	font-weight: 600;
}

img {
	max-width: 100%;
	height: auto;
}

p a, ul a, ol a {
	color: var(--green);
}

p a:hover, ul a:hover, ol a:hover {
	
}

blockquote {
	
}

blockquote a {
	
}

.medium {
	font-weight: 500;
}

.semi {
	font-weight: 600;
}

.bold {
	font-weight: bold;
}

.uppercase {
	text-transform: uppercase;
}

.flex-col {
	display: flex;
	flex-direction: column;
}

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

.gap-4 {
	gap: 4px;
}

.gap-5 {
	gap: 5px;
}

.gap-8 {
	gap: 8px;
}

.gap-10 {
	gap: 10px;
}

.gap-12 {
	gap: 12px;
}

.gap-16 {
	gap: 16px;
}

.gap-18 {
	gap: 18px;
}

.gap-20 {
	gap: 20px;
}

.gap-24 {
	gap: 24px;
}

.gap-30 {
	gap: 30px;
}

.gap-32 {
	gap: 32px;
}

.gap-40 {
	gap: 40px;
}

.grid {
	display: grid;
}

.grid-2 {
	grid-template-columns: 1fr 1fr;
}

.grid-3 {
	grid-template-columns: repeat(3, 1fr);
}

.grid-4 {
	grid-template-columns: repeat(4, 1fr);
}

.grid-5 {
	grid-template-columns: repeat(5, 1fr);
}

.grid-6 {
	grid-template-columns: repeat(6, 1fr);
}

.container {
	width: 100%;
	max-width: var(--container);
	margin-left: auto;
	margin-right: auto;
	position: relative;
	box-sizing: border-box;
	padding-left: 15px;
	padding-right: 15px;
}

.full-container {
	width: 100%;
	max-width: 100%;
	position: relative;
	box-sizing: border-box;
	padding-left: 0px;
	padding-right: 0px;
}

.img-cover {
	overflow: hidden;
}

.img-cover img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	vertical-align: top;
}

.img-contain img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	vertical-align: top;
}

a, button, input[type="submit"], input[type="button"] {
	transition: var(--all-out);
	outline: none;
	cursor: pointer;
}

a:hover, button:hover, input[type="submit"]:hover, input[type="button"]:hover {
	transition: var(--all-in);
}

.clear {
	width: 0px;
	height: 0px;
	float: none !important;
	clear: both !important;
}

.clearfix:after {
	content: '';
	display: block;
	clear: both;
}

.mobile {
	display: none !important;
}

/*--------*/

/*header*/

header {
	border-bottom: 1px solid var(--white-20);
	background: var(--bg);
	width: 100%;
	left: 0;
	top: 0;
	position: fixed;
	z-index: 10;
}

header .box {
	padding: 18px 30px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 80px;
}

header .box .logo img {
	max-width: 136px;
	max-height: 28px;
	vertical-align: top;
}

header .box .lang {
	display: flex;
	align-items: center;
	height: 33px;
	padding: 0 10px;
	border: 1px solid rgba(193, 189, 181, 0.40);
	gap: 4px;
}

header .box .lang a {
	text-transform: uppercase;
	color: var(--light-grey);
	font-size: 14px;
	font-weight: 400;
	text-decoration: none;
	display: flex;
	align-items: center;
	gap: 4px;
}

header .box .lang a.active,
header .box .lang a:hover {
	color: var(--white);
}

header .box .lang a:not(:last-child)::after {
	content: "|";
	color: var(--white);
}

#menu {
	margin-left: auto;
	margin-right: auto;
}

#header-menu {
	display: flex;
	align-items: center;
	padding: 0;
	list-style: none;
	gap: 32px;
}

#header-menu > li {
	position: relative;
}

#header-menu > li > a {
	color: var(--light-grey);
	font-size: 18px;
	line-height: 54px;
	display: flex;
	text-decoration: none;
	align-items: center;
	gap: 4px;
}

#header-menu > li > a:hover,
#header-menu > li.current-menu-item > a {
	color: var(--yellow);
}

#header-menu > li.menu-item-has-children {
	position: relative;
}

#header-menu > li.menu-item-has-children > a::after {
	width: 8px;
	height: 9px;
	display: flex;
	content: "";
	transition: var(--all-inout);
	background: var(--light-grey);
	mask: url('../images/arrow-down.svg') center center no-repeat;
}

#header-menu > li.menu-item-has-children > a:hover::after {
	background: var(--yellow);
}

#header-menu .sub-menu {
	max-height: 0;
	overflow: hidden;
	opacity: 0;
	position: absolute;
	left: 0;
	top: 100%;
	width: 320px;
	transform: translateY(-10px);
	transition: var(--all-inout);
	padding: 0 24px;
	list-style: none;
	background: var(--bg);
}

#header-menu .sub-menu > li:first-child {
	padding-top: 24px;
}

#header-menu .sub-menu > li:last-child {
	padding-bottom: 24px;
}

#header-menu .sub-menu > li {
	line-height: 28px;
}

#header-menu .sub-menu > li:not(:first-child) {
	margin-top: 12px;
}

@media (min-width: 1020px) {
	#header-menu li.menu-item-has-children:hover > .sub-menu {
		max-height: 600px;
		opacity: 1;
		transform: translateY(0);
	}
}

#header-menu .sub-menu > li > a {
	color: var(--light-grey);
  	font-size: 16px;
	text-decoration: none;
}

#header-menu .sub-menu > li.current-menu-item > a,
#header-menu .sub-menu > li > a:hover {
	color: var(--yellow);
}

header .box .header-but {
	margin-left: auto;
}

.but > a,
.but > button {
	position: relative;
	height: 54px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--black);
	text-align: center;
	font-size: 16px;
	font-weight: 500;
	padding: 0 40px;
	overflow: hidden;
	text-decoration: none;
	cursor: pointer;
	background: linear-gradient(87deg, #F3D05B 0%, #FC0 103.73%) top right / 100% auto;
	width: fit-content;
}

.but > a::before,
.but > button::before {
	width: 0;
	height: 0;
	position: absolute;
	border-top: 14px solid var(--light-grey-bg);
	border-right: 14px solid transparent;
	top: 0;
	left: 0;
	z-index: 2;
	content: "";
}

.but > a::after,
.but > button::after {
	width: 0;
	height: 0;
	position: absolute;
	border-bottom: 14px solid var(--light-grey-bg);
	border-left: 14px solid transparent;
	bottom: 0;
	right: 0;
	z-index: 2;
	content: "";
}

.header-but.but > a::before,
.header-but.but > button::before {
	border-top: 14px solid var(--bg);
}

.header-but.but > a::after,
.header-but.but > button::after {
	border-bottom: 14px solid var(--bg);
}

.but > a:hover,
.but > button:hover {
	background: linear-gradient(87deg, #F3D05B 0%, #FC0 103.73%) top right / 300% auto;
}

.but > a span,
.but > button span {
	position: relative;
	z-index: 2;
}

/*--------*/

/*footer*/

footer {
	background: var(--light-grey-bg);
	padding: 80px 0;
	overflow-x: hidden;
}

footer .copyright {
	margin-top: 60px;
	color: var(--light-grey);
	font-size: 12px;
	font-weight: 300;
	line-height: normal;
	text-align: center;
}

footer .box {
	display: flex;
	gap: 90px;
	justify-content: space-between;
}

footer .box .info {
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 44px;
}

footer .box .title {
	color: var(--black);
	font-size: 36px;
	font-weight: 700;
	line-height: 120%;
	text-transform: uppercase;
	margin-bottom: 24px;
}

footer .box .info .block .footer-menu ul {
	padding: 0;
	list-style: none;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px 80px;
}

footer .box .info .block .footer-menu ul a {
	color: var(--grey);
	font-style: normal;
	font-weight: 200;
	line-height: 120%;
	text-decoration: none;
}

footer .box .info .block .footer-menu ul a:hover {
	color: var(--yellow);
}

footer .box .info .block .footer-contacts {
	display: flex;
	flex-direction: column;
	gap: 12px;
	position: relative;
}

footer .box .info .block .footer-contacts .addr,
footer .box .info .block .footer-contacts .work-time,
footer .box .info .block .footer-contacts .email,
footer .box .info .block .footer-contacts .phone {
	display: flex;
	align-items: center;
	gap: 16px;
}

footer .box .info .block .footer-contacts .addr::before,
footer .box .info .block .footer-contacts .work-time::before,
footer .box .info .block .footer-contacts .email::before,
footer .box .info .block .footer-contacts .phone::before {
	width: 60px;
	height: 60px;
	border: 1px solid rgba(193, 189, 181, 0.40);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: auto 32px;
	display: flex;
	content: "";
}

footer .box .info .block .footer-contacts .addr::before {
	background-image: url('../images/mdi_location.svg');
}

footer .box .info .block .footer-contacts .work-time::before {
	background-image: url('../images/ri_calendar-schedule-fill.svg');
}

footer .box .info .block .footer-contacts .email::before {
	background-image: url('../images/ic_sharp-email.svg');
}

footer .box .info .block .footer-contacts .phone::before {
	background-image: url('../images/phone-icon.svg');
}

footer .box .info .block .footer-contacts .addr a,
footer .box .info .block .footer-contacts .work-time p,
footer .box .info .block .footer-contacts .email a,
footer .box .info .block .footer-contacts .phone a {
	color: var(--grey);
	font-style: normal;
	font-weight: 200;
	line-height: 120%;
	text-decoration: none;
}

footer .box .info .block .footer-contacts .addr a:hover,
footer .box .info .block .footer-contacts .email a:hover,
footer .box .info .block .footer-contacts .phone a:hover {
	color: var(--yellow);
}

footer .box .info .block .footer-contacts .social {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px;
	position: absolute;
	right: 0;
	bottom: 0;
	flex-direction: column;
}

footer .box .info .block .footer-contacts .social a {
	width: 60px;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(193, 189, 181, 0.4);
}

footer .box .info .block .footer-contacts .social a:hover {
	background: var(--yellow);
	border-color: var(--yellow);
}

footer .box .form {
	width: 100%;
	max-width: 590px;
	flex-shrink: 0;
}

footer .box .form.form-items .but {
	width: 100%;
}

footer .box .form.form-items .but a {
	width: 100%;
	height: 80px;
}

footer .box .form.form-items .map {
	margin-top: 32px;
	width: 100%;
}

footer .box .form.form-items .map iframe {
	vertical-align: top;
	width: 100% !important;
	height: 380px !important;
}

.form form {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.form form .form-group.but {
	margin-top: 12px;
}

.form form .form-group {
	display: flex;
	flex-direction: column;
	gap: 12px;
	position: relative;
}

.form form .form-group p {
	color: var(--black);
	font-size: 14px;
	font-weight: 500;
	line-height: normal;
}

.form form .form-group input[type="text"],
.form form .form-group input[type="tel"],
.form form .form-group input[type="date"],
.form form .form-group textarea,
.form form .form-group input[type="email"] {
	width: 100%;
	height: 60px;
	border: 1px solid var(--light-grey);
	padding: 0 24px;
	color: var(--grey);
	transition: var(--all-inout);
	font-size: 14px;
}

.form form .form-group textarea {
	height: 120px;
	padding: 24px;
}

.form form .form-group input[type="text"].wpcf7-not-valid,
.form form .form-group input[type="tel"].wpcf7-not-valid,
.form form .form-group input[type="date"].wpcf7-not-valid,
.form form .form-group textarea.wpcf7-not-valid,
.form form .form-group input[type="email"].wpcf7-not-valid {
	border-color: var(--red);
}

.form form .form-group input[type="submit"] {
	width: 100%;
	border: 0;
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--black);
	text-align: center;
	font-size: 16px;
	font-weight: 500;
	padding: 0 40px;
	overflow: hidden;
	text-decoration: none;
	cursor: pointer;
	background: linear-gradient(87deg, #F3D05B 0%, #FC0 103.73%) top right / 100% auto;

}

.form form .form-group input[type="submit"]:hover {
	background: linear-gradient(87deg, #F3D05B 0%, #FC0 103.73%) top right / 300% auto;
}

.form form .form-group.but::before {
	width: 0;
	height: 0;
	position: absolute;
	border-top: 14px solid var(--light-grey-bg);
	border-right: 14px solid transparent;
	top: 0;
	left: 0;
	z-index: 2;
	content: "";
}

.form form .form-group.but::after {
	width: 0;
	height: 0;
	position: absolute;
	border-bottom: 14px solid var(--light-grey-bg);
	border-left: 14px solid transparent;
	bottom: 0;
	right: 0;
	z-index: 2;
	content: "";
}

.wpcf7-spinner {
  	position: absolute;
  	right: 20px !important;
  	top: 50% !important;
  	translate: 0 -50% !important;
}

/*--------*/

/**/

.home-first {
	padding: 110px 0 50px;
	background: var(--black);
	position: relative;
	min-height: 1164px;
	overflow: hidden;
}

/*.home-first::before {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background: url('../images/381.webp') center center / cover;
	z-index: 1;
	content: "";
	mix-blend-mode: hard-light;
	filter: blur(2.5px);
}*/

.home-first .human-image {
	position: absolute;
	bottom: 0;
	left: calc(50% + 170px);
	height: calc(100% - 100px);
	display: flex;
	align-items: flex-end;
	justify-content: center;
	z-index: 3;
}

.home-first .human-image img {
	vertical-align: top;
	height: 100%;
	max-height: 100%;
	max-width: initial;
	width: auto;
	position: relative;
	z-index: 2;
}

.home-first .human-image span {
	width: 260px;
	height: 260px;
	display: flex;
	border-radius: 50%;
	background: var(--yellow);
	box-shadow: 0 0 0 140px #FFB522, 0 0 0 280px #F77E13;
	flex-shrink: 0;
	position: absolute;
	z-index: 1;
	opacity: 0.5;
	filter: blur(100px);
	bottom: 0;
	left: 45%;
}

.home-first .image2 {
	position: absolute;
	bottom: 130px;
	left: -30px;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	z-index: 3;
}

.home-first .image2 > div {
	width: 220px;
	height: 420px;
	background: url('../images/22f11a1f1df87130dd67d4e123738f073265c958.webp') top right / cover;
	mask: url('../images/Rectangle.svg') top right / cover;
	position: relative;
	z-index: 2;
}

.home-first .image2 span {
	width: 140px;
	height: 140px;
	display: flex;
	border-radius: 50%;
	background: var(--yellow);
	box-shadow: 0 0 0 80px #FFB522, 0 0 0 160px #F77E13;
	flex-shrink: 0;
	position: absolute;
	z-index: 1;
	opacity: 0.5;
	filter: blur(100px);
	bottom: 80px;
  	left: 0;
}

.home-first .title {
	position: absolute;
	z-index: 1;
	left: 0;
  	top: -110px;
	width: 100%;
}

.home-first .title .word {
	font-size: 244px;
	font-style: normal;
	font-weight: 900;
	line-height: normal;
	letter-spacing: -12.72px;
	background: linear-gradient(14deg, #FFF 8.09%, rgba(255, 255, 255, 0.00) 155.3%);
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	text-align: center;
	text-transform: uppercase;
	text-align: left;
	line-height: 390px;
	overflow: hidden;
	position: relative;
}

.home-first .title .word video {
	margin-left: auto;
	margin-right: auto;
	display: block;
	max-width: 1570px;
	position: relative;
	z-index: 1;
	width: 100%;
}

.home-first .title .word::before {
	width: 100%;
	height: 100%;
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	z-index: 3;
	box-shadow: 0px 0px 30px 30px rgba(0, 0, 0, 1) inset;
	-webkit-box-shadow: 0px 0px 30px 30px rgba(0, 0, 0, 1) inset;
	-moz-box-shadow: 0px 0px 30px 30px rgba(0, 0, 0, 1) inset;
}

.home-first .title .word::after {
  	width: 100%;
  	height: 100%;
  	content: "";
	background: url('../images/381404.webp') 50% 10% / auto 150% no-repeat;
	opacity: 0.6;
  	position: absolute;
  	left: 0;
  	top: 0;
  	/*mix-blend-mode: hard-light;*/
  	mix-blend-mode: lighten;
	animation-name: showFigures;
	animation-duration: 5s;
	animation-timing-function: ease-in;
	z-index: 4;
}

@keyframes showFigures {
    from {
        opacity: 0;
    }
    to {
        opacity: 0.6;
    }
}

.home-first .title .container {
	position: absolute;
	top: 550px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 2;
}

.home-first .title p {
	width: 100%;
	max-width: 300px;
	color: var(--light-grey);
	font-size: 16px;
	font-weight: 200;
	line-height: 120%;
}

.home-first .items-box {
	margin-top: 87px;
	position: relative;
	z-index: 5;
}

.home-first .items-box .container,
.inner-first-statistics {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.home-first .items-box .container .item,
.inner-first-statistics .item {
	width: 100%;
	background: rgba(193, 189, 181, 0.30);
	backdrop-filter: blur(12.5px);
}

.home-first .items-box .container .item:first-child,
.for-partners-first .inner-first-statistics .item:first-child,
.about-first .inner-first-statistics .item:first-child {
	mask: url('../images/f-top-left.svg') left top / cover no-repeat;
}

.home-first .items-box .container .item:last-child,
.for-partners-first .inner-first-statistics .item:last-child,
.about-first .inner-first-statistics .item:last-child {
	mask: url('../images/f-bottom-right.svg') right bottom / cover no-repeat;
}

.home-first .items-box .container .item .info,
.inner-first-statistics .item .info {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 20px;
	height: 220px;
}

.home-first .items-box .container .item .info .number,
.inner-first-statistics .item .info .number {
	color: var(--white);
	text-align: center;
	font-size: 110px;
	font-weight: 200;
	line-height: 80px;
	letter-spacing: -4.4px;
}

.home-first .items-box .container .item .info p,
.inner-first-statistics .item .info p {
	color: var(--light-grey);
	text-align: center;
	font-size: 16px;
	font-weight: 200;
	line-height: normal;
}

.inner-first-statistics .item .info p {
	color: var(--white);
}

.home-first .items-box .container .item .name,
.inner-first-statistics .item .name {
	background: rgba(0, 0, 0, 0.50);
	width: 100%;
	height: 64px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	color: var(--white);
	font-size: 20px;
	font-weight: 600;
	text-transform: uppercase;
}

.home-first .items-box .container .item img,
.inner-first-statistics .item img {
	max-width: 30px;
	max-height: 30px;
}

.home-first .content {
	margin-top: 515px;
	position: relative;
	z-index: 4;
}

.home-first .content .container .text {
	display: flex;
	flex-direction: column;
	gap: 24px;
	padding-left: 100px;
}

.home-first .content p {
	width: 100%;
	max-width: 300px;
	color: rgba(193, 189, 181, 0.50);
	font-size: 15px;
	font-weight: 200;
	line-height: 120%;
}

.home-first .content p strong,
.home-first .content p b {
	color: var(--white);
	font-weight: 600;
}

.but-stroked a,
.but-stroked button {
	height: 54px;
	padding: 0 36px;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid rgba(193, 189, 181, 0.80);
	color: var(--white);
	text-align: center;
	font-size: 14px;
	font-weight: 500;
	text-decoration: none;
	width: fit-content;
	background: transparent;
}

.but-stroked a:hover,
.but-stroked button:hover {
	border-color: var(--yellow);
	background: var(--yellow);
	color: var(--black);
}

.home-first .objects-box {
	position: absolute;
	right: -30px;
	bottom: 300px;
	z-index: 4;
}

.home-first .objects-box .objects-item {
	background: var(--black);
	mask: url('../images/Rectangle2.svg') top left / cover;
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 24px 60px;
	height: 260px;
	width: 455px;
	position: relative;
}

.home-first .objects-box .objects-item .image {
	position: absolute;
	z-index: 1;
	right: -40px;
  	height: 85%;
  	width: 70%;
}

.home-first .objects-box .objects-item .image img {
	max-height: 100%;
	width: auto;
  	height: 100%;
}

.home-first .objects-box .objects-item *:not(.image) {
	position: relative;
	z-index: 2;
}

.home-first .objects-box .objects-item .objects-title {
	color: var(--white);
	font-size: 20px;
	font-weight: 400;
	line-height: 24px;
}

.home-first .objects-box .objects-item p {
	color: var(--light-grey);
	font-size: 12px;
	font-weight: 400;
	line-height: normal;
	opacity: 0.5;
}

.home-first .objects-box .objects-item .but-stroked {
	margin-top: 24px;
}

.home-first .objects-box .objects-item .but-stroked a {
	height: 40px;
	padding: 0 18px;
	border-color: var(--yellow);	
}

.home-first .socials {
	position: absolute;
	left: 40px;
	top: 220px;
	z-index: 3;
	display: flex;
	width: 62px;
	align-items: center;
  	gap: 12px;
}

.home-first .socials .social {
	display: flex;
	flex-direction: column;
	gap: 24px;
	align-items: center;
}

.home-first .socials .social a {
	display: flex;
	width: 36px;
	height: 36px;
	border: 1px solid rgba(193, 189, 181, 0.40);
	justify-content: center;
	align-items: center;
}

.home-first .socials .social a:hover {
	background: var(--yellow);
	border-color: var(--yellow);
}

.home-first .socials .social a img {
	filter: invert(1);
	transition: var(--all-inout);
	max-width: 20px;
	max-height: 20px;
}

.home-first .socials .social a:hover img {
	filter: invert(0);
}

.home-first .socials .subtitle {
	color: rgba(193, 189, 181, 0.50);
	font-size: 12px;
	font-weight: 400;
	line-height: normal;
	letter-spacing: 4px;
	height: 14px;
	transform: rotate(-90deg) translateX(-50%);
  	transform-origin: top left;
	width: 260px;
  	flex-shrink: 0;
  	text-align: center;
}

/*--------*/

/**/

.services-block {
	padding: 60px 0;
}

.home-first + .services-block {
	margin-top: 60px;
}

.services-block .container {
	display: flex;
	flex-direction: column;
	gap: 58px;
}

.services-block .box {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	position: relative;
}

.services-block .box::before {
	width: 0;
	height: 0;
	border-top: 94px solid var(--white);
	border-right: 94px solid transparent;
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
}

.services-block .box::after {
	width: 0;
	height: 0;
	border-bottom: 94px solid var(--white);
	border-left: 94px solid transparent;
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 2;
}

.services-block .box .item {
	width: 100%;
	height: 365px;
}

.services-block .box .item a {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	width: 100%;
	height: 100%;
	position: relative;
	text-decoration: none;
}

.services-block .box .item a .img {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}

.services-block .box .item a .img img {
	transition: var(--all-inout);
	scale: 1;
}

.services-block .box .item a:hover .img img {
	scale: 1.05;
}

.services-block .box .item a .name {
	position: relative;
	z-index: 2;
	backdrop-filter: blur(4px);
	height: 80px;
	padding: 16px 32px 16px 16px;
	display: flex;
	color: var(--white);
	font-size: 20px;
	font-weight: 600;
	line-height: 120%;
	transition: var(--all-inout);
	background: url('../images/service-arrow.svg') calc(100% - 16px) 20px no-repeat, rgba(0, 0, 0, 0.25);
}

.services-block .box .item:last-child a .name {
	padding-right: 94px;
	background: url('../images/service-arrow.svg') calc(100% - 75px) 20px no-repeat, rgba(0, 0, 0, 0.25);
}

.services-block .box .item a:hover .name {
	color: var(--yellow);
}

/*--------*/

/**/

.about-info-block {
	padding: 60px 0;
}

.about-info-block .box {
	display: grid;
	grid-template-columns: auto 590px;
	gap: 20px;
}

.about-info-block .box .image {
	width: 100%;
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	gap: 75px;
	position: relative;
	z-index: 2;
}

.about-info-block .box .image.reverse {
	flex-direction: column-reverse;
	justify-content: flex-end;
}

.about-info-block .box .image .caption {
	color: var(--light-grey);
	text-align: right;
	font-size: 12px;
	font-weight: 300;
	line-height: normal;
	letter-spacing: 5.76px;
}

.about-info-block .box .image.reverse .caption {
	padding-top: 60px;
}

.about-info-block .box .info {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.about-info-block .box .info.reverse {
	flex-direction: column-reverse;
}

.about-info-block .box .info .text {
	padding: 54px 0;
	background: var(--light-grey-bg);
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 24px;
	padding-right: 80px;
}

.about-info-block .box .info .text::before {
	width: 100vw;
	height: 100%;
	content: "";
	position: absolute;
	top: 0;
	right: 100%;
	background: var(--light-grey-bg);
}

.about-info-block .box .info .text::after {
	content: "";
  	position: absolute;
	top: 0;
	left: 100%;
	width: 140px;
	height: 100%;
  	background: var(--light-grey-bg);
  	clip-path: polygon(0 0, 140px 0, 0 100%);
}

.about-info-block .box .info .text p {
	color: var(--grey);
	font-size: 14px;
	font-weight: 200;
}

.about-info-block .box .info .text .buts {
	margin-top: 12px;
	display: flex;
	align-items: center;
	gap: 20px;
}

.about-info-block .box .info .text .buts .but-stroked a {
  	border-color: var(--yellow);
  	color: var(--black);
}

.about-info-block .box .info .text-block {
	display: flex;
  	flex-direction: column;
  	gap: 24px;
}

.about-info-block .box .info .text-block .text-wr {
	overflow: hidden;
	transition: var(--all-inout);
}

.text-wr::after {
	width: 100%;
	height: 40px;
	content: "";
	background: var(--white);
	background: -webkit-linear-gradient(0deg, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0) 100%);
	background: -moz-linear-gradient(0deg, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0) 100%);
	background: linear-gradient(0deg, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFF", endColorstr="#FFFFFF", GradientType=0);
	position: absolute;
	left: 0;
	bottom: 0;
  	opacity: 0;
  	transition: var(--all-inout);
}

.text-wr.close::after {
  	opacity: 1;
}

.about-info-block .box .info .text-block .text-wr .text-content {
	display: flex;
  	flex-direction: column;
 	gap: 16px;
}

.about-info-block .box .info .list {
	counter-reset: acc;
}

.about-info-block .box .info .list.accordion-list .accordion,
.about-info-block .box .info .list.accordion-list .accordion-open {
	counter-increment: acc;
	color: var(--black);
	font-size: 20px;
	font-weight: 600;
	line-height: normal;
	letter-spacing: -0.8px;
	padding-left: 67px;
	padding-right: 41px;
	position: relative;
	cursor: pointer;
	padding-bottom: 40px;
	transition: var(--all-inout);
}

.about-info-block .box .info .list.accordion-list .accordion.active,
.about-info-block .box .info .list.accordion-list .accordion-open {
	padding-bottom: 20px;
}

.about-info-block .box .info .list.accordion-list .accordion:not(:first-child),
.about-info-block .box .info .list.accordion-list .accordion-open:not(:first-child) {
	padding-top: 40px;
	border-top: 1px solid rgba(193, 189, 181, 0.30);
}

.about-info-block .box .info .list.accordion-list .accordion::before,
.about-info-block .box .info .list.accordion-list .accordion-open::before {
	content: "0"counter(acc);
	color: var(--black);
	font-size: 20px;
	font-weight: 200;
	line-height: normal;
	letter-spacing: -0.8px;
	position: absolute;
	left: 17px;
	top: 0;
}

.about-info-block .box .info .list.accordion-list .accordion:not(:first-child)::before,
.about-info-block .box .info .list.accordion-list .accordion-open:not(:first-child)::before {
	top: 40px;
}

.about-info-block .box .info .list.accordion-list .accordion::after {
	content: "";
	width: 24px;
	height: 24px;
	display: flex;
	background: url('../images/accordion-arrow.svg') center center / 24px auto no-repeat;
	position: absolute;
	top: 0;
	right: 17px;
}

.about-info-block .box .info .list.accordion-list .accordion:not(:first-child)::after {
	top: 40px;
}

.panel {
	max-height: 0;
  	overflow: hidden;
  	transition: max-height 0.2s ease-out;
}

.about-info-block .box .info .list.accordion-list .panel-inner {
	padding: 0 0 40px;
}

.about-info-block .box .info .list.accordion-list .panel-inner {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding-left: 67px;
	padding-right: 41px;
}

.about-info-block .box .info .list.accordion-list .panel-inner > * {
	color: var(--grey);
	font-size: 14px;
	font-weight: 200;
	line-height: 130%;
}

/*--------*/

/**/

.home-projects {
	margin-top: 60px;
	margin-bottom: 60px;
	padding: 180px 0 275px;
	position: relative;
	overflow: hidden;
	background: var(--light-grey-bg);
}

.home-projects .hp-bg-slider {
	width: 100%;
	height: 100%;
	content: "";
	position: absolute;
	left: 0;
	top: 0;
}

.home-projects .container {
	z-index: 2;
}

.home-projects .container h2 {
	color: var(--yellow);
}

.home-projects .container h2 + .box {
	margin-top: 51px;
}

.home-projects .box {
	position: relative;
	padding: 30px 105px 30px 0;
  	max-width: 450px;
}

.home-projects .box::before {
	content: "";
  	position: absolute;
	top: 0;
	right: 0;
	width: 2140px;
	height: 100%;
  	background: rgba(0, 0, 0, 0.25);
	backdrop-filter: blur(15px);
  	/*clip-path: polygon(0 0, 3140px 0, 3000px 100%, 0 100%);*/

	clip-path: polygon(0 0, 2140px 0, 2000px 100%, 0 100%);
}

.home-projects .box .slider {
	position: relative;
	z-index: 2;
}

.home-projects .box .controls {
	display: flex;
	align-items: center;
	gap: 24px;
	margin-bottom: 32px;
}

.home-projects .box .controls button {
	width: 32px;
	height: 32px;
	font-size: 0;
	background: transparent;
	border: 1px solid var(--light-grey);
	transition: var(--all-inout);
	display: flex !important;
	align-items: center;
	justify-content: center;
}

.home-projects .box .controls button:hover {
	border-color: var(--yellow);
	background: var(--yellow);
}

.home-projects .box .controls button::before {
	width: 18px;
	height: 18px;
	content: "";
	display: flex;
	background: var(--white);
	mask: url('../images/weui_arrow-filled.svg') center center no-repeat;
	transition: var(--all-inout);
}

.home-projects .box .controls button:hover::before {
	background: var(--black);
}

.home-projects .box .controls button.next {
	left: 56px;
}

.home-projects .box .controls button.next::before {
	rotate: 180deg;
}

.home-projects .box .slider .item {
	display: flex !important;
	flex-direction: column;
	gap: 12px;
	border-bottom: 1px solid transparent;
}

.home-projects .box .slider .item .title,
.home-projects .box .slider .item .title a {
	color: var(--white);
	font-size: 20px;
	font-weight: 600;
	line-height: normal;
	text-transform: uppercase;
	text-decoration: none;
}

.home-projects .box .slider .item .title a:hover {
	color: var(--yellow);
}

.home-projects .box .slider .item .about {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.home-projects .box .slider .item .about > * {
	color: var(--grey2);
	font-size: 14px;
	font-weight: 200;
	line-height: normal;
}

.home-projects .box .slider .item .but-stroked {
	margin-top: 12px;
}

.home-projects .box .slider .item .but-stroked a {
	border-color: var(--yellow);
}

/*--------*/

/**/

.serts-carusel {
	padding: 120px 0 80px;
	background: var(--light-grey-bg);
}

.serts-carusel .title {
	display: flex;
	gap: 16px 280px;
}

.serts-carusel .title h2 {
	width: 100%;
	max-width: 350px;
}

.serts-carusel .title .text {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.serts-carusel .title .text > *:not(.subtitle) {
	color: var(--grey);
	font-size: 12px;
	font-weight: 200;
}

.serts-carusel .title .text .subtitle {
	color: var(--grey);
	font-size: 14px;
	font-weight: 500;
	line-height: normal;
	letter-spacing: 4px;
}

.serts-carusel .slider {
	margin-top: 120px;
}

.serts-carusel .slider .item {
  	transition: transform 0.5s, opacity 0.5s;
	padding-top: 48px;
}

.serts-carusel .slider .item.swiper-slide-active {
	padding-top: 0;
  	transform: scale(1.3);
  	z-index: 1;
	/*margin-left: 24px;
  	margin-right: 36px !important;*/
  	margin-top: 46px;
}

.serts-carusel .slider .item a {
	width: 100%;
	height: 100%;
}

.serts-carusel .slider .item a img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.serts-carusel .slider .controls {
	display: flex;
	align-items: center;
	gap: 24px;
	justify-content: center;
	margin-top: 70px;
}

.serts-carusel .slider .controls button {
	width: 32px;
	height: 32px;
	font-size: 0;
	background: transparent;
	border: 1px solid var(--light-grey);
	transition: var(--all-inout);
	display: flex !important;
	align-items: center;
	justify-content: center;
}

.serts-carusel .slider .controls button:hover {
	border-color: var(--yellow);
	background: var(--yellow);
}

.serts-carusel .slider .controls button::before {
	width: 18px;
	height: 18px;
	content: "";
	display: flex;
	background: var(--black);
	mask: url('../images/weui_arrow-filled.svg') center center no-repeat;
	transition: var(--all-inout);
}

.serts-carusel .slider .controls button.next::before {
	rotate: 180deg;
}



/*--------*/

/**/

section.yellow-line {
	background: var(--yellow);
	padding: 27px;
}

section.yellow-line.image-line {
	margin: 32px 0 0;
}

section.yellow-line.image-line .container {
	padding-left: 156px;
}

section.yellow-line .logo {
	flex-shrink: 0;
}

section.yellow-line .logo img {
	vertical-align: top;
	max-width: 180px;
	max-height: 36px;
	filter: brightness(0)
}

section.yellow-line .image {
	flex-shrink: 0;
	position: absolute;
	left: 0;
	top: calc(50% - 70px);
	z-index: 2;
}

section.yellow-line .image img {
	width: 140px;
}

section.yellow-line .container {
	display: flex;
	align-items: center;
	gap: 54px;
}

section.yellow-line .container .text {
	color: var(--black);
	font-size: 17px;
	font-weight: 700;
	text-transform: uppercase;
}

section.yellow-line .container .menu {
	width: 100%;
	margin-left: 100px;
}

section.yellow-line .container .menu ul {
	padding: 0;
	list-style: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
}

section.yellow-line .container .menu ul .sub-menu {
	display: none;
}

section.yellow-line .container .menu ul li a {
	color: var(--black);
	text-decoration: none;
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
}

section.yellow-line .container .menu ul li a:hover {
	text-decoration: underline;
}

/*--------*/

/**/

.experts-block {
	padding: 120px 0 0;
	background: var(--bg);
	position: relative;
	overflow: hidden;
}

.experts-block::before {
	border-radius: 50%;
	width: 550px;
	height: 550px;
	content: "";
	background: #F77E13;
	filter: blur(145px);
	position: absolute;
	right: 54px;
	bottom: 38px;
	z-index: 1;
	opacity: 0.7;
	/*mix-blend-mode: plus-lighter;*/
}

.experts-block::after {
	width: 600px;
  	height: 465px;
	position: absolute;
	right: 0;
	bottom: 0;
  	background: url('../images/22f11a1f1df87130dd67d4e123738f073265c958.webp') top right / cover;
	clip-path: polygon(160px 0, 100% 0, 100% 100%, 0 100%);
	content: "";
	z-index: 2;
}

.experts-block .container {
	z-index: 3;
}

.experts-block .box {
	display: flex;
	justify-content: space-between;
	gap: 75px;
}

.experts-block .box .info {
	display: flex;
	flex-direction: column;
	gap: 32px;
	width: 100%;
	max-width: 530px;
}

.experts-block .box .info h2 {
	color: var(--white)
}

.experts-block .box .info .swiper {
	width: 100%;
}

.experts-block .box .info .swiper .item {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.experts-block .box .info .swiper .item .name {
	color: var(--white);
	font-size: 20px;
	font-weight: 600;
}

.experts-block .box .info .swiper .item .about {
	display: flex;
	flex-direction: column;
	gap: 12px;
	max-width: 350px;
}

.experts-block .box .info .swiper .item .about > * {
	color: var(--light-grey);
	font-size: 14px;
	font-weight: 200;
	line-height: 140%;
}

.experts-block .box .info .swiper .item .but-stroked {
	margin-top: 24px;
}

.experts-block .box .info .swiper .item .but-stroked a {
	border-color: var(--yellow);
	width: 210px;
}

.experts-block .box .cards {
	width: 100%;
	max-width: 405px;/**/
	position: relative;
	margin-bottom: 112px;
  	margin-right: 80px;
}

.experts-block .box .cards .cards-slider .item {
	position: relative;
}

.experts-block .box .cards .cards-slider .item .img {
	height: 600px;
}

/*.experts-block .box .cards .cards-slider .item .img img {
	max-height: 100%;
	width: auto;
}*/

.experts-block .box .cards .cards-slider .item .name {
	position: absolute;
	left: 0;
	bottom: -34px;
	width: 600px;
	height: 34px;
	display: flex;
	background: rgba(0, 0, 0, 0.25);
	backdrop-filter: blur(11px);
	rotate: -90deg;
	transform-origin: top left;
	align-items: center;
	padding-left: 16px;
	color: var(--white);
	font-size: 12px;
	font-weight: 600;
}

.cards-swiper-button-prev,
.cards-swiper-button-next {
	position: absolute;
	bottom: -24px;
	left: calc(50% - 44px);
	width: 32px;
	height: 32px;
	font-size: 0;
	z-index: 2;
	background: transparent;
	border: 1px solid var(--light-grey);
	transition: var(--all-inout);
	display: flex !important;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

.cards-swiper-button-prev:hover,
.cards-swiper-button-next:hover {
	border-color: var(--yellow);
	background: var(--yellow);
}

.cards-swiper-button-prev::before,
.cards-swiper-button-next::before {
	width: 18px;
	height: 18px;
	content: "";
	display: flex;
	background: var(--white);
	mask: url('../images/weui_arrow-filled.svg') center center no-repeat;
	transition: var(--all-inout);
}

.cards-swiper-button-prev:hover::before,
.cards-swiper-button-next:hover::before {
	background: var(--black);
}

.cards-swiper-button-next {
	left: calc(50% + 12px);
}

.cards-swiper-button-next::before {
	rotate: 180deg;
}

.experts-object-box {
	margin-top: auto;
	position: relative;
}

.experts-object-box::before {
	content: "";
	background: rgba(193, 189, 181, 0.30);
	backdrop-filter: blur(11px);
	position: absolute;
	right: 0;
	bottom: 0;
	clip-path: polygon(0 0, 2090px 0, 2000px 100%, 0 100%);
	width: 2140px;
	height: 70%;
	z-index: -1;
}

.experts-object-box::after {
	width: 200px;
	height: 200px;
	content: "";
	background: #FFB522;
	box-shadow: 0 0 100px 50px #FFB522;
	position: absolute;
	border-radius: 50%;
	z-index: -1;
	bottom: 87px;
	right: 190px;
	opacity: 0.3;
	filter: blur(30px);
}

.experts-object-box .image {
	max-width: 420px;
}

.experts-object-box .image img {
	max-width: 420px;
}

.experts-object-box .about {
	padding: 23px 0 32px;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 100px;
	max-width: 420px;
	margin-top: -50px;
	position: relative;
}

.experts-object-box .about::before {
	content: "";
	background: linear-gradient(5deg, rgba(0, 0, 0, 0.20) -5.61%, rgba(225, 225, 225, 0.00) 97.17%);
	backdrop-filter: blur(18px);
	position: absolute;
  	right: -17px;
  	bottom: 0;
	width: 2090px;
  	height: 100%;
  	clip-path: polygon(0 0, 2090px 0, 2042px 100%, 0 100%);
  	z-index: 1;
}

.experts-object-box .about .text {
	display: flex;
	flex-direction: column;
	gap: 6px;
	width: 100%;
	max-width: 190px;
	position: relative;
	z-index: 2;
}

.experts-object-box .about .text .title {
	color: var(--white);
	font-size: 20px;
	font-weight: 600;
}

.experts-object-box .about .text p {
	color: var(--light-grey);
	font-size: 10px;
	font-weight: 300;
}

.experts-object-box .about .more {
	margin-right: 32px;
	position: relative;
	z-index: 2;
}

.experts-object-box .about .more a {
	color: var(--white);
	font-size: 12px;
	font-weight: 500;
	padding-right: 18px;
	text-decoration: none;
	position: relative;
	line-height: 26px;
	display: flex;
}

.experts-object-box .about .more a:hover {
	color: var(--yellow);
}

.experts-object-box .about .more a::after {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 2px;
	background: var(--yellow);
	content: "";
}

/*--------*/

/**/

.reviews-block {
	padding: 120px 0 60px;
}

.reviews-block .box {
	gap: 64px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.reviews-block .box > .info {
	width: 100%;
	max-width: 545px;
	padding: 70px 0 50px;
	position: relative;
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.reviews-block .box > .info::before {
  	content: "";
  	position: absolute;
  	top: 0;
  	right: -150px;
  	width: 2140px;
  	height: 100%;
  	background: var(--light-grey-bg);
  	clip-path: polygon(0 0, 2140px 0, 2000px 100%, 0 100%);
}

.reviews-block .box > .info h2 {
	max-width: 360px;
	position: relative;
	z-index: 2;
}

.reviews-block .box > .info .subtitle {
	color: var(--light-grey);
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 4px;
	position: relative;
	z-index: 2;
}

.reviews-block .box > .info .controls {
	display: flex;
	align-items: center;
	gap: 24px;
	position: relative;
	z-index: 2;
	margin-top: 60px;
}

.reviews-block .box > .info .controls button {
	width: 32px;
	height: 32px;
	font-size: 0;
	background: transparent;
	border: 1px solid var(--light-grey);
	transition: var(--all-inout);
	display: flex !important;
	align-items: center;
	justify-content: center;
}

.reviews-block .box > .info .controls button:hover {
	border-color: var(--yellow);
	background: var(--yellow);
}

.reviews-block .box > .info .controls button::before {
	width: 18px;
	height: 18px;
	content: "";
	display: flex;
	background: var(--black);
	mask: url('../images/weui_arrow-filled.svg') center center no-repeat;
	transition: var(--all-inout);
}

.reviews-block .box > .info .controls button.next::before {
	rotate: 180deg;
}

.reviews-block .box .slider-wr {
	margin-top: 140px;
}

.reviews-block .box .slider-wr .item {
	display: grid;
	grid-template-columns: 285px auto;
	gap: 20px;
}

.reviews-block .box .slider-wr .item .photo {
	width: 285px;
	height: 285px;
}

.reviews-block .box .slider-wr .item .review-info {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding-top: 14px;
}

.reviews-block .box .slider-wr .item .review-info .info {
	margin-bottom: 16px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 32px;
}

.reviews-block .box .slider-wr .item .review-info .info .date {
	color: var(--light-grey);
	font-size: 10px;
	font-weight: 200;
	line-height: 120%;
}

.reviews-block .box .slider-wr .item .review-info .info .rating {
	display: flex;
	align-items: center;
	gap: 2px;
}

.reviews-block .box .slider-wr .item .review-info .info .rating span {
	display: flex;
	width: 12px;
	height: 12px;
	background: url('../images/star-stroke.svg') center center no-repeat;
}

.reviews-block .box .slider-wr .item .review-info .info .rating span.fill {
	background: url('../images/star-fill.svg') center center no-repeat;
}

.reviews-block .box .slider-wr .item .review-info .name {
	color: var(--black);
	font-size: 20px;
	font-weight: 600;
	line-height: normal;
}

.reviews-block .box .slider-wr .item .review-info .review-text {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.reviews-block .box .slider-wr .item .review-info .review-text > * {
	color: var(--grey);
	font-size: 14px;
	font-weight: 200;
}

/*--------*/


/**/

.media-center-block {
	padding: 60px 0;
}

.media-center-block h2 + .box {
	margin-top: 32px;
}

.media-center-block .box {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.media-center-block .box .item:first-child {
	grid-row-start: 1;
	grid-row-end: 3;
	position: relative;
}

.media-center-block .box .item:not(:first-child),
.article-item {
	display: flex;
	flex-direction: row-reverse;
	gap: 20px;
	border: 1px solid rgba(193, 189, 181, 0.30);
}

.media-center-block .box .item:not(:first-child) .image,
.article-item .image {
	width: 285px;
	height: 285px;
	flex-shrink: 0;
}

.media-center-block .box .item:first-child .image {
	width: 100%;
	height: 100%;
	flex-shrink: 0;
}

.media-center-block .box .item .image a,
.article-item .image a {
	display: block;
	width: 100%;
	height: 100%;
}

.media-center-block .box .item .image img,
.article-item .image img {
	transition: var(--all-inout);
	scale: 1;
	vertical-align: top;
}

.media-center-block .box .item:hover .image img,
.article-item:hover .image img {
	scale: 1.05;
}

.media-center-block .box .item:not(:first-child) .info,
.article-item .info {
	padding: 32px 0 32px 32px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 16px;
}

.media-center-block .box .item .info .title,
.article-item .info .title {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.media-center-block .box .item .info .title .date,
.article-item .info .title .date {
	color: var(--light-grey);
	font-size: 10px;
	font-weight: 200;
	line-height: 120%;
}

.media-center-block .box .item .info .title > a,
.article-item .info .title > a {
	text-decoration: none;
	color: var(--black);
	font-size: 20px;
	font-weight: 600;
}

.media-center-block .box .item .info .title > a:hover,
.article-item .info .title > a:hover {
	color: var(--yellow);
}

.media-center-block .box .item .info .excerpt,
.article-item .info .excerpt {
	max-height: 102px;
	overflow: hidden;
}

.media-center-block .box .item .info .excerpt p,
.article-item .info .excerpt p {
	color: var(--grey);
	font-size: 14px;
	font-weight: 200;
	line-height: 120%;
}

.media-center-block .box .item .info .but-more a,
.article-item .info .but-more a {
	display: block;
	color: var(--black);
	text-decoration: none;
	font-size: 12px;
	font-weight: 500;
	line-height: 16px;
	padding-bottom: 8px;
	padding-right: 18px;
	position: relative;
	width: fit-content;
}

.media-center-block .box .item:first-child .info .but-more a {
	color: var(--white);
}

.media-center-block .box .item .info .but-more a:hover,
.article-item .info .but-more a:hover {
	color: var(--yellow);
}

.media-center-block .box .item .info .but-more a::after,
.article-item .info .but-more a::after {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 2px;
	background: var(--yellow);
	content: "";
}

.media-center-block .box .item:first-child .info .excerpt {
	display: none;
}

.media-center-block .box .item:first-child .info {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-end;
	gap: 46px;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	background: linear-gradient(3deg, rgba(0, 0, 0, 0.20) -9.31%, rgba(225, 225, 225, 0.00) 97.07%);
	backdrop-filter: blur(20px);
	padding: 32px;
}

.media-center-block .box .item:first-child .info .title > a {
	color: var(--white);
	text-transform: uppercase;
	font-size: 36px;
	font-weight: 700;
	line-height: 1.1;
}




/*--------*/

/**/

.text-section {
	padding: 60px 0 120px;
}

.text-section h1 + .box, 
.text-section h2 + .box {
	margin-top: 50px;
}

.text-section .box {
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.text-section .box .text-wr {
	overflow: hidden;
	transition: var(--all-inout);
	position: relative;
}

.text-section .box .text {
	columns: 2;
	gap: 20px;
	position: relative;
}

.text-section .box .text-wr::after {
	width: 100%;
	height: 40px;
	content: "";
	background: var(--white);
	background: -webkit-linear-gradient(0deg, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0) 100%);
	background: -moz-linear-gradient(0deg, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0) 100%);
	background: linear-gradient(0deg, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFF", endColorstr="#FFFFFF", GradientType=0);
	position: absolute;
	left: 0;
	bottom: 0;
	opacity: 1;
	transition: var(--all-inout);
}

.text-section.project-about .box .text-wr::after {
	width: 100%;
	height: 40px;
	content: "";
	background: var(--light-grey-bg);
	background: -webkit-linear-gradient(0deg, var(--light-grey-bg) 20%, rgba(255, 255, 255, 0) 100%);
	background: -moz-linear-gradient(0deg, var(--light-grey-bg) 20%, rgba(255, 255, 255, 0) 100%);
	background: linear-gradient(0deg, var(--light-grey-bg) 20%, rgba(255, 255, 255, 0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFF", endColorstr="#FFFFFF", GradientType=0);
	position: absolute;
	left: 0;
	bottom: 0;
	opacity: 1;
	transition: var(--all-inout);
}

.text-section .box .text-wr.open::after {
	opacity: 0;
}

.text-section .box .text > *:not(:first-child) {
	margin-top: 16px;
}

.text-content p,
.text-content ol,
.text-content ul {
	font-size: 14px;
	font-weight: 200;
}

.text-content .gallery {
	display: grid;
	grid-template-columns: 2fr 1fr 2fr;
	gap: 20px;
}

.text-content .gallery * {
	height: 154px;
	overflow: hidden;
	margin-bottom: 0 !important;
}

.text-content .gallery > *:first-child *, 
.text-content .gallery > *:first-child {
	width: 100%;
	height: 356px;
	grid-column-start: 1;
	grid-column-end: 4;
}

.text-content .gallery img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	vertical-align: top;
}

.but-more button,
.but-more a {
	display: block;
	color: var(--black);
	text-decoration: none;
	font-size: 12px;
	font-weight: 500;
	line-height: 16px;
	padding-bottom: 8px;
	padding-right: 18px;
	position: relative;
	width: fit-content;
	border: 0;
	background: none;
}

.but-more button:hover,
.but-more a:hover {
	color: var(--yellow);
}

.but-more button::after,
.but-more a::after {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 2px;
	background: var(--yellow);
	content: "";
}

.text-section.project-about {
	padding: 80px 0 60px;
	background: var(--light-grey-bg);
}

.text-section.project-about .container {
	display: grid;
	grid-template-columns: auto 680px;
	gap: 32px;
}

.text-section.project-about .container .box {
	margin-top: 0;
}

.text-section.project-about .container .box .text {
	columns: 1;
}

/*.text-section:not(.home-text-section) .box .text-wr::after {
  	background: var(--light-grey-bg);
  	background: -webkit-linear-gradient(0deg, var(--light-grey-bg) 20%, rgba(255, 255, 255, 0) 100%);
  	background: -moz-linear-gradient(0deg, var(--light-grey-bg) 20%, rgba(255, 255, 255, 0) 100%);
  	background: linear-gradient(0deg, var(--light-grey-bg) 20%, rgba(255, 255, 255, 0) 100%);
  	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFF", endColorstr="#FFFFFF", GradientType=0);
}*/


/*--------*/

/**/

.cases-first {
	height: 690px;
	padding: 110px 0 32px;
	position: relative;
}

.cases-first .image {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.cases-first .image::before {
	width: 100%;
	height: 100%;
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	background: var(--black);
	opacity: 0.2;
}

.cases-first .container {
	z-index: 2;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.cases-first .box {
	display: flex;
	justify-content: center;
}

.cases-first.about-cases-first .box {
	margin-top: auto;
}

.cases-first .box .watch a {
	display: flex;
	flex-direction: column;
	gap: 16px;
	text-decoration: none;
	color: var(--yellow);
	text-align: center;
	font-size: 16px;
	font-weight: 600;
	line-height: 120%;
}

.cases-first .box .watch a .icon {
	display: flex;
	width: 120px;
	height: 120px;
	border-radius: 50%;
	justify-content: center;
	align-items: center;
	border-radius: 120px;
	background: rgba(193, 189, 181, 0.30);
	backdrop-filter: blur(12px);
}

.cases-first .box .watch a .icon img {
	filter: drop-shadow(0 0 34px rgba(255, 255, 255, 0.8));
	transform: translateX(4px);
}

.breadcrumbs {
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.breadcrumbs li {
	display: inline-flex;
	align-items: center;
	gap: 12px;
}

.breadcrumbs li:not(:last-child)::after {
	width: 14px;
	height: 14px;
	display: flex;
	content: "";
	background: url('../images/arrow-right.svg') center center no-repeat;
}

.breadcrumbs li a {
	color: var(--grey3);
	text-decoration: none;
	font-size: 14px;
	line-height: 120%;
}


.breadcrumbs li > span {
	color: var(--grey3);
	text-decoration: none;
	font-size: 14px;
	line-height: 120%;
}

.breadcrumbs.dark li a,
.breadcrumbs.dark li > span {
	color: rgba(153, 153, 153, 0.80);
}

.breadcrumbs li a:hover {
	color: var(--yellow);
}

/*--------*/

/**/

.cases-section {
	padding: 80px 0 60px;
}

.cases-section.inner {
	padding: 60px 0 60px;
}

.cases-section .title + .box {
	margin-top: 80px;
}

.cases-section.inner .title + .box {
	margin-top: 60px;
}

.cases-section .title {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.cases-section .title h2,
.cases-section .title h1 {
	max-width: 490px;
}

.cases-section .title .filter {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.cases-section .title .filter label {
	color: var(--black);
	font-size: 20px;
	font-weight: 600;
	line-height: 1;
}

.cases-section .title .filter select {
	width: 100%;
	height: 65px;
	border: 1px solid var(--light-grey);
	padding: 0 32px 0 12px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	position: relative;
	background: url('../images/weui_arrow-filled-select.svg') calc(100% - 12px) 50% no-repeat;
	color: var(--grey);
	font-size: 14px;
	font-weight: 200;
	line-height: 120%;
}

.cases-section .title .filter select option {
	font-size: 14px;
	font-weight: 200;
}

.cases-section .box .list {
	display: grid;
	grid-template-columns: 50% 50%;
	gap: 32px 20px;
}

.cases-section .box .list > p.nope,
.media-center-list .box > p.nope {
	grid-column-start: 1;
	grid-column-end: 3;
	font-size: 14px;
	font-weight: 200;
}

.cases-section .box .list .item {
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.cases-section .box .list .item .images {
	position: relative;
}

.cases-section .box .list .item .images .img {
	width: 100%;
	height: 378px;
}

.cases-section .box .list .item .images .img a {
	display: block;
	width: 100%;
	height: 100%;
}

.cases-section .box .list .item .images .map-link {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 2;
}

.cases-section .box .list .item .images .map-link a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border: 1px solid rgba(193, 189, 181, 0.50);
	background: rgba(193, 189, 181, 0.30);
	backdrop-filter: blur(12px);
}

.cases-section .box .list .item .images .map-link a img {
	vertical-align: top;
}

.cases-section .box .list .item .images .info {
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 2;
	padding: 0 0 12px 12px;
	display: flex;
	align-items: center;
	gap: 12px;
	width: 80%;
	flex-wrap: wrap;
}

.cases-section .box .list .item .images .info div {
	padding: 0 8px;
	height: 32px;
	border: 1px solid rgba(193, 189, 181, 0.50);
	background: rgba(193, 189, 181, 0.30);
	backdrop-filter: blur(12px);
	color: var(--white);
	font-size: 12px;
	font-weight: 500;
	line-height: normal;
	display: flex;
	align-items: center;
}

.cases-section .box .list .item .images .swiper-pagination {
	position: absolute;
	padding: 0 10px;
	height: 32px;
	border: 1px solid rgba(193, 189, 181, 0.50);
	background: rgba(193, 189, 181, 0.30);
	backdrop-filter: blur(12px);
	bottom: 12px;
	right: 12px;
	z-index: 2;
	left: initial;
	width: fit-content;
	display: flex;
	align-items: center;
	gap: 4px;
}

.cases-section .box .list .item .images .swiper-pagination .swiper-pagination-bullet {
	width: 4px;
	height: 4px;
	background: rgba(255, 255, 255, 0.5);
	margin: 0;
	opacity: 1;
}

.cases-section .box .list .item .images .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
	width: 8px;
	height: 8px;
	background: var(--white);
}

.cases-section .box .list .item .text {
	display: flex;
	justify-content: space-between;
	gap: 24px;
}

.cases-section .box .list .item .text .but-stroked a {
	border-color: var(--yellow);
	width: 207px;
	color: var(--black);
}

.cases-section .box .list .item .text .name {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.cases-section .box .list .item .text .name p {
	color: var(--light-grey);
	font-size: 12px;
	font-weight: 200;
	line-height: 120%;
}

.cases-section .box .list .item .text .name .h4 {
	font-size: 20px;
	font-weight: 600;
}

.cases-section .box .list .item .text .name .h4 a {
	color: var(--black);
	text-decoration: none;
}

.cases-section .box .list .item .text .name .h4 a:hover {
	color: var(--yellow);
}


/*--------*/

/**/

.about-in-numbers {
	position: relative;
	padding: 165px 0 90px;
	background: var(--bg);
	overflow-x: hidden;
}

.about-in-numbers::before {
	width: 100%;
	height: 75px;
	position: absolute;
	left: 0;
	top: 0;
	background: var(--white);
	z-index: 1;
	content: "";
}

.about-in-numbers .image {
	position: absolute;
	bottom: 0;
	left: 50%;
	margin-left: -230px;
	height: 100%;
	z-index: 2;
}

.about-in-numbers .container {
	z-index: 3;
}

.about-in-numbers .image img {
	height: 100%;
	vertical-align: top;
}

.about-in-numbers h2 {
	color: var(--white);
}

.about-in-numbers h2 + .box {
	margin-top: 32px;
}

.about-in-numbers .box {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	width: 100%;
	max-width: 590px;
}

.about-in-numbers .box .item {
	width: 100%;
	background: rgba(193, 189, 181, 0.30);
	backdrop-filter: blur(12.5px);
}

.about-in-numbers .box .item .info {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 20px;
	height: 220px;
}

.about-in-numbers .box .item .info .number {
	color: var(--white);
	text-align: center;
	font-size: 110px;
	font-weight: 200;
	line-height: 80px;
	letter-spacing: -4.4px;
}

.about-in-numbers .box .item .info p {
	color: var(--light-grey);
	text-align: center;
	font-size: 16px;
	font-weight: 200;
	line-height: normal;
}

.about-in-numbers .box .item .name {
	background: rgba(0, 0, 0, 0.50);
	width: 100%;
	height: 64px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	color: var(--white);
	font-size: 20px;
	font-weight: 600;
	text-transform: uppercase;
}

.about-in-numbers .box .item img {
	max-width: 30px;
	max-height: 30px;
}

/*--------*/

/**/

.first-section {
	padding-top: 110px !important;
}

.contacts-section {
	padding: 60px 0 100px;
}

.contacts-section .box {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.contacts-section .box .map iframe {
	vertical-align: top;
	width: 100% !important;
	height: 100% !important;
}

.contacts-section .box .info {
	display: flex;
	flex-direction: column;
	gap: 60px;
}

.contacts-section .box .info .block {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.contacts-section .box .info .block .title {
	color: var(--black);
	font-size: 36px;
	font-weight: 700;
	line-height: 120%;
	text-transform: uppercase;
}

.contacts-section .box .info .block .content {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.contacts-section .box .info .block .content div {
	display: flex;
	gap: 16px;
	align-items: center;
	color: var(--grey);
	font-size: 16px;
	font-weight: 200;
}

.contacts-section .box .info .block .content div p {
	font-size: 16px;
	font-weight: 200;
}

.contacts-section .box .info .block .content div a {
	color: var(--grey);
	text-decoration: none;
}

.contacts-section .box .info .block .content div a:hover {
	color: var(--yellow);
}

.contacts-section .box .info .block .content div::before {
	width: 60px;
	height: 60px;
	content: "";
	border: 1px solid rgba(193, 189, 181, 0.40);
	background-position: center center;
	background-repeat: no-repeat;
	flex-shrink: 0;
}

.contacts-section .box .info .block .content div.addr::before {
	background-image: url('../images/addr-icon.svg');
}

.contacts-section .box .info .block .content div.email::before {
	background-image: url('../images/email-icon.svg');
}
.contacts-section .box .info .block .content div.phone::before {
	background-image: url('../images/phone-icon.svg');
}

.contacts-section .box .info .block .content div.work-time::before {
  	background-image: url('../images/ri_calendar-schedule-fill.svg');
}

.contacts-section .box .info .block .content-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 32px;
}

.contacts-section .box .info .block .content-row a {
	width: 60px;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(193, 189, 181, 0.4);
}

.contacts-section .box .info .block .content-row a:hover {
	background: var(--yellow);
	border-color: var(--yellow);
}


/*--------*/

/**/

.footer-section {
	padding: 120px 0;
	background: var(--bg);
	overflow: hidden;
}

.footer-section .box {
	display: flex;
	flex-direction: column;
	gap: 80px;
}

.services-list {
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.services-list .h2 {
	color: var(--white);
}

.services-list.dark .h2 {
	color: var(--black);
}

.services-list .list ul {
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
}

.services-list .list ul li a {
	height: 54px;
	padding: 0 18px;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid rgba(193, 189, 181, 0.80);
	color: var(--white);
	text-align: center;
	font-size: 14px;
	font-weight: 200;
	text-decoration: none;
	width: fit-content;
}

.services-list.dark .list ul li a {
	/*color: var(--grey);*/
	border-color: var(--yellow);
	background: var(--yellow);
	color: var(--black);
}

.services-list .list ul li a:hover {
	border-color: var(--yellow);
	background: var(--yellow);
	color: var(--black);
}

.services-list.dark .list ul li a:hover {
	background: transparent;
}

.footer-section .box .form-part {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.footer-section .box .form-part .info {
	display: flex;
	flex-direction: column;
	gap: 24px
}

.footer-section .box .form-part .info .h2 {
	color: var(--white);
	max-width: 375px;
}

.footer-section .box .form-part .info p {
	max-width: 375px;
	color: var(--white);
	font-size: 14px;
	font-weight: 200;
}

.footer-section .box .form-part .info .img {
	margin-top: 70px;
}

.footer-section .box .form-part .info .img img {
	max-width: 230px;
}

.footer-section .box .form-part .form form .form-group p {
	color: var(--white);
}

.footer-section .box .form-part .form form .form-group input[type="text"], 
.footer-section .box .form-part .form form .form-group input[type="tel"], 
.footer-section .box .form-part .form form .form-group input[type="email"] {
	background: none;
	color: var(--white);
}

.footer-section .box .form-part .form form .form-group.but::before {
  	border-top-color: var(--bg);
}

.footer-section .box .form-part .form form .form-group.but::after {
  	border-bottom-color: var(--bg);
}

.footer-section .box .form-part .form .but > a {
	width: 100%;
	height: 80px;
}

.footer-section .box .form-part .form .but > a::before {
	border-top: 14px solid var(--bg);
}

.footer-section .box .form-part .form .but > a::after {
	border-bottom: 14px solid var(--bg);
}

/*--------*/

/**/

.media-center-first .box {
	padding-top: 210px;
	padding-bottom: 90px;
	display: flex;
	align-items: center;
	gap: 20px;
	position: relative;
}

.media-center-first .box::before {
  	content: "";
  	position: absolute;
  	top: 0;
  	right: 50%;
  	width: 2180px;
  	height: 100%;
  	background: var(--light-grey-bg);
  	clip-path: polygon(0 0, 2180px 0, 2000px 100%, 0 100%);
}

.media-center-first .box .title {
	display: flex;
	flex-direction: column;
	gap: 24px;
	width: 100%;
	max-width: 590px;
}

.media-center-first .box .title > * {
	position: relative;
	z-index: 2;
}

.media-center-first .box .title p {
	max-width: 375px;
	color: var(--grey);
	font-size: 14px;
	font-weight: 200;
}

.media-center-first .box .categories {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.media-center-first .box .categories .h5 {
	color: var(--black);
	font-size: 20px;
	font-weight: 600;
}

.media-center-first .box .categories .list {
	display: flex;
	align-items: center;
	gap: 16px;
	flex-wrap: wrap;
}

.media-center-first .box .categories .list a {
	border-color: rgba(193, 189, 181, 0.30);
	color: var(--black)
}

.media-center-first .box .categories .list a:hover {
	border-color: var(--yellow)
}

.media-center-first .box .categories .list a.active {
	border-color: var(--light-grey);
	color: var(--yellow);
	font-weight: 500;
}

.media-center-first .box .categories .list a.active:hover {
	border-color: var(--yellow);
	color:var(--black);
}

.media-center-first .box .breadcrumbs {
	position: absolute;
	left: 0;
	top: 110px;
}


/*--------*/

/**/

.media-center-list {
	padding: 80px 0 60px;
}

.media-center-list .container {
	display: flex;
	flex-direction: column;
	gap: 60px;
}

.media-center-list .box {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.media-center-list .more {
	display: flex;
	justify-content: center;
}

.media-center-list .more.but-stroked button {
	color: var(--black);
	border-color: var(--yellow);
	width: 250px;
	height: 66px;
	display: flex;
	align-items: center;
	gap: 12px;
}

.media-center-list .more .nope {
	font-size: 14px;
	font-weight: 200;
}

.media-center-list .more.but-stroked button.waiting::after {
	width: 16px;
	height: 16px;
	border-radius: 50px;
	border-top: 2px solid var(--grey);
	border-bottom: 2px solid var(--grey);
	content: "";
	display: flex;
	animation: rotate 0.25s infinite;
}

@keyframes rotate {
    from {
        rotate: 0deg;
    }
    to {
        rotate: 180deg;
    }
}

/*--------*/

/**/

.service-first {
	padding: 43px 0 60px;
	overflow: hidden;
}

.service-first .box:not(.text-section-box) {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.service-first .box .image {
	margin-top: 160px;
	position: relative;
	z-index: 2;
	height: 440px;
}

.service-first.service-first-add .box .image {
	margin-top: 0;
}

.service-first .box .text {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.service-first .box .text .subtitle {
	padding-top: 20px;
	color: var(--light-grey);
	text-align: right;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 4px;
	margin-bottom: 100px;
}

.service-first .box .text .preview {
	padding: 50px 0;
	display: flex;
	flex-direction: column;
	gap: 20px;
	position: relative;
}

.service-first.service-first-add .box .text .preview {
	padding-left: 32px;
}

.service-first .box .text .preview::before {
	top: 0;
	right: 0;
	width: 100vw;
	height: 100%;
	background: var(--light-grey-bg);
	content: "";
	position: absolute;
}

.service-first .box .text .preview::after {
  	content: "";
  	position: absolute;
  	top: 0px;
  	left: 100%;
  	width: 140px;
  	height: 100%;
  	background: var(--light-grey-bg);
  	clip-path: polygon(0px 0px, 140px 0px, 0px 100%);
}

.service-first.service-first-add .box .text .preview::before {
	top: 0;
	left: 0;
	width: 100vw;
	height: 100%;
	background: var(--light-grey-bg);
	content: "";
	position: absolute;
}

.service-first.service-first-add .box .text .preview::after {
  	content: "";
  	position: absolute;
  	top: 0px;
  	right: 100%;
	left: initial;
  	width: 140px;
  	height: 100%;
  	background: var(--light-grey-bg);
  	clip-path: polygon(140px 0px, 140px 100%, 0 100%);
}

.service-first .box .text .preview > * {
	position: relative;
	z-index: 2;
}

.service-first .box .text .preview h1 {
	max-width: 60px;
}

.service-first .box .text .preview .buts {
	margin-top: 12px;
	display: flex;
	align-items: center;
	gap: 20px;
}

.service-first .box .text .preview .buts .but-stroked a {
	border-color: var(--yellow);
	color: var(--black);
}

.service-first .box .text .preview p,
.service-first .box .text .preview ol,
.service-first .box .text .preview ul {
	color: var(--grey);
	font-size: 14px;
	font-weight: 200;
}

.service-first .box .text .preview ol,
.service-first .box .text .preview ul {
	padding-left: 20px;
}

.service-first .box .text .preview p strong,
.service-first .box .text .preview ol strong,
.service-first .box .text .preview ul strong {
	font-weight: 500;
}

.service-first .text .text-wr {
	transition: var(--all-inout);
	overflow: hidden;
	position: relative;
}

.service-first .text .text-wr::after {
	width: 100%;
	height: 40px;
	content: "";
	background: var(--white);
	background: -webkit-linear-gradient(0deg, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0) 100%);
	background: -moz-linear-gradient(0deg, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0) 100%);
	background: linear-gradient(0deg, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFF", endColorstr="#FFFFFF", GradientType=0);
	position: absolute;
	left: 0;
	bottom: 0;
	opacity: 0;
	transition: var(--all-inout);
}

.service-first .text .text-wr.close::after {
	opacity: 1;
}

.service-first .text .text-wr.close.open::after {
	opacity: 0;
}

.service-first .text .text-wr .text-content {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.text-section-box .text-wr {
  	overflow: hidden;
  	transition: var(--all-inout);
  	position: relative;
}

.text-section-box .text-wr::after {
	width: 100%;
	height: 40px;
	content: "";
	background: var(--white);
	background: -webkit-linear-gradient(0deg, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0) 100%);
	background: -moz-linear-gradient(0deg, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0) 100%);
	background: linear-gradient(0deg, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFF", endColorstr="#FFFFFF", GradientType=0);
	position: absolute;
	left: 0;
	bottom: 0;
	opacity: 1;
	transition: var(--all-inout);
}

.text-section-box .text-wr.open::after {
	opacity: 0;
}

.text-section-box .text-wr .text {
	display: block;
  	columns: 2;
  	gap: 20px;
  	position: relative;
}

.text-section-box .text > :not(:first-child) {
  	margin-top: 16px;
}

.text-section-box {
  	display: flex;
  	flex-direction: column;
  	gap: 32px;
}

.service-first.service-first-add .container {
	display: flex;
	flex-direction: column;
	gap: 60px;
}

/*--------*/

/**/

.suggest-block {
	padding: 112px 0 120px;
	background: var(--light-grey-bg);
	position: relative;
}

.suggest-block .box {
	display: grid;
	grid-template-columns: 300px auto;
	gap: 110px;
}

.suggest-block .box .list {
	counter-reset: acc;
}

.suggest-block .box .list.accordion-list .accordion,
.suggest-block .box .list.accordion-list .accordion-open,
.list.accordion-list .accordion,
.list.accordion-list .accordion-open {
	counter-increment: acc;
	color: var(--black);
	font-size: 20px;
	font-weight: 600;
	line-height: normal;
	letter-spacing: -0.8px;
	padding-left: 67px;
	padding-right: 41px;
	position: relative;
	cursor: pointer;
	padding-bottom: 40px;
	transition: var(--all-inout);
}

.suggest-block .box .list.accordion-list .accordion.active,
.suggest-block .box .list.accordion-list .accordion-open,
.list.accordion-list .accordion.active,
.list.accordion-list .accordion-open {
	padding-bottom: 20px;
}

.suggest-block .box .list.accordion-list .accordion:not(:first-child),
.suggest-block .box .list.accordion-list .accordion-open:not(:first-child),
.list.accordion-list .accordion:not(:first-child),
.list.accordion-list .accordion-open:not(:first-child) {
	padding-top: 40px;
	border-top: 1px solid rgba(193, 189, 181, 0.30);
}

.suggest-block .box .list.accordion-list .accordion::before,
.suggest-block .box .list.accordion-list .accordion-open::before,
.list.accordion-list .accordion::before,
.list.accordion-list .accordion-open::before {
	content: "0"counter(acc);
	color: var(--black);
	font-size: 20px;
	font-weight: 200;
	line-height: normal;
	letter-spacing: -0.8px;
	position: absolute;
	left: 17px;
	top: 0;
}

.suggest-block .box .list.accordion-list .accordion:not(:first-child)::before,
.suggest-block .box .list.accordion-list .accordion-open:not(:first-child)::before,
.list.accordion-list .accordion:not(:first-child)::before,
.list.accordion-list .accordion-open:not(:first-child)::before {
	top: 40px;
}

.suggest-block .box .list.accordion-list .accordion::after,
.list.accordion-list .accordion::after {
	content: "";
	width: 24px;
	height: 24px;
	display: flex;
	background: url('../images/accordion-arrow.svg') center center / 24px auto no-repeat;
	position: absolute;
	top: 0;
	right: 17px;
}

.suggest-block .box .list.accordion-list .accordion:not(:first-child)::after,
.list.accordion-list .accordion:not(:first-child)::after {
	top: 40px;
}

.suggest-block .box .list.accordion-list .panel-inner,
.list.accordion-list .panel-inner {
	padding: 0 0 40px;
}

.suggest-block .box .list.accordion-list .panel-inner,
.list.accordion-list .panel-inner {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding-left: 67px;
	padding-right: 41px;
}

.suggest-block .box .list.accordion-list .panel-inner > *,
.list.accordion-list .panel-inner > * {
	color: var(--grey);
	font-size: 14px;
	font-weight: 200;
	line-height: 130%;
}

.suggest-block > .image {
	position: absolute;
	bottom: 0px;
  	left: 0px;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	z-index: 3;
}

.suggest-block > .image > div {
	width: 280px;
	height: 420px;
	background: url('../images/22f11a1f1df87130dd67d4e123738f073265c958.webp') top right / cover;
	mask: url('../images/Rectangle.svg') top right / cover;
}

.suggest-block .box .info .more-but {
	margin-top: 100px;
	padding-top: 32px;
	padding-right: 32px;
	position: relative;
	width: fit-content;
}

.suggest-block .box .info .more-but::before {
	width: 346px;
	height: 262px;
	content: "";
	display: flex;
	border: 1px solid var(--light-grey);
	position: absolute;
	top: 0;
	right: 0;
}

.suggest-block .box .info .more-but a {
	display: block;
	color: var(--black);
	text-decoration: none;
	font-size: 16px;
	font-weight: 500;
	line-height: 20px;
	padding-bottom: 8px;
	padding-right: 18px;
	position: relative;
	width: fit-content;
	border: 0;
	background: none;
}

.suggest-block .box .info .more-but a:hover {
	color: var(--yellow);
}

.suggest-block .box .info .more-but a::after {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 2px;
	background: var(--yellow);
	content: "";
}

/*--------*/

/**/

.text-with-image {
	padding: 120px 0 60px;
}

.text-with-image .box {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.text-with-image .box .image {
	height: 360px;
}

.text-with-image .box .text-wr .text {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.text-with-image .box .text-wr .text h1,
.text-with-image .box .text-wr .text h2,
.text-with-image .box .text-wr .text h3,
.text-with-image .box .text-wr .text h4,
.text-with-image .box .text-wr .text h5,
.text-with-image .box .text-wr .text h6 {
	margin-bottom: 8px;
}

.text-with-image .box .info {
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.text-with-image .box .info .text-wr {
	position: relative;
	transition: var(--all-inout);
	overflow: hidden;
}

.text-with-image .box .info .text-wr::after {
	width: 100%;
	height: 40px;
	content: "";
	background: var(--white);
	background: -webkit-linear-gradient(0deg, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0) 100%);
	background: -moz-linear-gradient(0deg, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0) 100%);
	background: linear-gradient(0deg, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFF", endColorstr="#FFFFFF", GradientType=0);
	position: absolute;
	left: 0;
	bottom: 0;
	opacity: 1;
	transition: var(--all-inout);
}

.text-with-image .box .info .text-wr.open::after {
  	opacity: 0;
}

/*--------*/

/**/

.service-advantages {
	padding: 60px 0;
}

.service-advantages h2 {
	max-width: 450px;
}

.service-advantages h2 + .box {
	margin-top: 60px;
}

.service-advantages .box {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.service-advantages .box .item {
	border: 1px solid var(--light-grey);
}

.service-advantages .box .item .image {
	background: var(--light-grey-bg);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 220px;
	padding: 18px;
}

.service-advantages .box .item .image img {
	max-width: 100%;
	max-height: 100%;
}

.service-advantages .box .item .name {
	height: 66px;
	width: 100%;
	background: var(--bg);
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	color: var(--white);
	font-size: 20px;
	font-weight: 600;
	text-transform: uppercase;
}

.service-advantages .box .item .name img {
	max-height: 32px;
}


.service-advantages .box .item .text-wr {
	position: relative;
	transition: var(--all-inout);
	overflow: hidden;
}

.service-advantages .box .item .text-wr::after {
  	width: 100%;
  	height: 30px;
  	content: "";
  	background: var(--white);
  	background: -webkit-linear-gradient(0deg, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0) 100%);
  	background: -moz-linear-gradient(0deg, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0) 100%);
  	background: linear-gradient(0deg, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0) 100%);
  	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFF", endColorstr="#FFFFFF", GradientType=0);
  	position: absolute;
  	left: 0;
  	bottom: 0;
  	opacity: 1;
  	transition: var(--all-inout);
}

.service-advantages .box .item .text-wr.open::after {
  	opacity: 0;
}

.service-advantages .box .item .text {
	padding: 24px 16px 0 16px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.service-advantages .box .item .text > * {
	color: var(--grey);
	font-size: 12px;
	font-weight: 200;
}

.service-advantages .box .item .but-more {
	padding: 16px 16px 24px;
}

/*--------*/

/**/

.form-section {
	margin: 60px 0 100px;
	padding-top: 115px;
	position: relative;
}

.form-section.dark {
	background: var(--bg);
	overflow: hidden;
	margin-bottom: 0;
}

.form-section.dark::before {
	width: 100%;
	height: 100%;
	content: "";
	background: url('../images/3812.webp') center center / cover no-repeat;
	opacity: 0.3;
	position: absolute;
	left: 0;
	top: 0;
	mix-blend-mode: hard-light;
}

.form-section.dark::after {
	width: 100%;
	height: 115px;
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	background: var(--white);
}

.form-section.dark .container::before {
	width: 542px;
	height: 542px;
	border-radius: 50%;
	background: #F77E13;
	filter: blur(143px);
	position: absolute;
	left: calc(50% - 50vw - 540px);
	bottom: -230px;
	content: "";
	opacity: 0.4;
}

.form-section.dark .container::after {
	width: 542px;
	height: 542px;
	border-radius: 50%;
	background: #F77E13;
	filter: blur(143px);
	position: absolute;
	right: calc(50% - 50vw - 540px);
	bottom: -230px;
	content: "";
	opacity: 0.4;
}

.form-section .box {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	z-index: 1;
}

.form-section.dark .box {
	justify-content: flex-start;
}

.form-section.dark .circle {
	width: 542px;
	height: 542px;
	border-radius: 50%;
	background: #F77E13;
	filter: blur(143px);
	position: absolute;
	right: calc(50% - 270px);
	bottom: calc(100% - 110px);
	display: flex;
	opacity: 0.4;
}

.form-section .box .image {
	position: absolute;
	left: 0;
	bottom: 0;
}

.form-section .box .image img {
	vertical-align: top;
	max-height: 360px;
	filter: drop-shadow(6px -5px 50px rgba(0, 0, 0, 0.15));
}

.form-section.dark .box .image img {
	filter: none;
}

.form-section.dark .box .image {
	left: initial;
	right: 0;
}

.form-section.dark .box .image img {
	transform: scaleX(-1);
}

.form-section .box .form {
	max-width: 415px;
	width: 100%;
	padding: 24px 0;
}

.form-section.dark .box .form {
	order: 1;
}

.form-section .box .form form {
	gap: 12px;
}

.form-section .box .form form .form-group.but {
	margin-top: 12px;
}

.form-section .box .form form .form-group {
	gap: 6px;
}

.form-section .box .form form .form-group p {
	font-size: 12px;
}

.form-section.dark .box .form form .form-group p {
	color: var(--white);
}

.form-section .box .form form .form-group input[type="text"],
.form-section .box .form form .form-group input[type="tel"],
.form-section .box .form form .form-group input[type="email"] {
	padding: 0 16px;
	height: 40px;
	font-size: 14px;
}

.form-section .box .form form .form-group input[type="submit"] {
	height: 54px;
	font-size: 14px;
}

.form-section .box .form form .form-group.but::before {
  	border-top-color: var(--white);
}

.form-section .box .form form .form-group.but::after {
  	border-bottom-color: var(--white);
}

.form-section.dark .box .form form .form-group.but::before {
  	border-top-color: var(--bg);
}

.form-section.dark .box .form form .form-group.but::after {
  	border-bottom-color: var(--bg);
}

.form-section .box .form.only-but .but, 
.form-section .box .form.only-but .but a {
	width: 100%;
}

.form-section .box .form.only-but .but a::before,
.form-section .box .form.only-but .but a::after {
	display: none;
}

.form-section .box .form.only-but > p {
	margin-top: 36px;
	color: var(--light-grey);
	text-align: center;
	font-size: 12px;
	font-weight: 300;
	letter-spacing: 4px;
} 

.form-section .box .form.only-but .social {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 32px;
	margin-top: 24px;
	justify-content: center;
}

.form-section .box .form.only-but .social a {
	width: 60px;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(193, 189, 181, 0.4);
}

.form-section .box .form.only-but .social a:hover {
	background: var(--yellow);
	border-color: var(--yellow);
}

.form-section.dark .box .form.only-but .social a img {
	filter: invert(1);
	transition: var(--all-inout);
}

.form-section.dark .box .form.only-but .social a:hover img {
	filter: invert(0);
}

.form-section .box .text {
	margin-left: 353px;
	display: flex;
	flex-direction: column;
	gap: 24px;
	width: 100%;
	max-width: 280px;
	padding: 32px 0;
}

.form-section.dark .box .text {
	order: 2;
	margin-left: 130px;
}

.form-section .box .text::before {
	width: 2140px;
	height: 100%;
	position: absolute;
	top: 0;
	right: 450px;
	content: "";
	background: linear-gradient(87deg, #F3D05B 0%, #FC0 103.73%);
	clip-path: polygon(0 0, 2140px 0, 2000px 100%, 0 100%);
	z-index: -1;
}

.form-section.dark .box .text::before {
	display: none;
}

.form-section .box .text .logo img {
	vertical-align: top;
	filter: brightness(0);
	max-height: 24px;
}

.form-section .box .text .title {
	color: var(--black);
	font-size: 24px;
	font-weight: 700;
	text-transform: uppercase;
	line-height: 1.2;
}

.form-section.dark .box .text .title {
	color: var(--white);
}

.form-section .box .text p {
	color: var(--grey);
	font-size: 14px;
	font-weight: 200;
}

.form-section.dark .box .text p {
	color: var(--white);
}

.form-section.dark .box .text .subtitle {
	color: rgba(193, 189, 181, 0.80);
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 4px;
}

/*--------*/

/**/

.about-first {
	padding-bottom: 38px;
}

.about-first-deeper {
	padding-top: 80px;
	padding-bottom: 50px;
}

.inner-first {
	position: relative;
}

.inner-first > .image {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}

.inner-first > .image::before {
	width: 100%;
	height: 150px;
	background: #000;
	background: -webkit-linear-gradient(180deg, rgba(0, 0, 0, 1) 20%, rgba(0, 0, 0, 0) 100%);
	background: -moz-linear-gradient(180deg, rgba(0, 0, 0, 1) 20%, rgba(0, 0, 0, 0) 100%);
	background: linear-gradient(180deg, rgba(0, 0, 0, 1) 20%, rgba(0, 0, 0, 0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000", endColorstr="#000000", GradientType=0);
	content: "";
	position: absolute;
	left: 0;
	top: 0;
}

.about-first-deeper.inner-first > .image::before {
	display: none;
}

.about-first .box {
	margin-top: 55px;
	position: relative;
	max-width: 480px;
	padding: 40px 35px 40px 0;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.about-first .box::before {
  	content: "";
  	position: absolute;
  	top: 0;
  	right: -140px;
  	width: 2140px;
  	height: 100%;
  	background: rgba(0, 0, 0, 0.25);
  	backdrop-filter: blur(15px);
  	clip-path: polygon(0 0, 2140px 0, 2000px 100%, 0 100%);
}

.about-first .box > * {
	position: relative;
	z-index: 2;
}

.about-first .box .but {
	margin-top: 8px;
}

.about-first .box h1 {
	color: var(--white);
}

.about-first .box p {
	color: rgba(255, 255, 255, 0.78);
	font-size: 14px;
	font-weight: 300;
}

.but-figure a {
	height: 54px;
	width: 178px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: url('../images/Rectangle6295.svg') center center no-repeat;
	color: var(--white);
	font-size: 14px;
	font-weight: 500;
	text-decoration: none;
}

.but-figure a:hover {
	background: var(--yellow);
	mask: url('../images/but-figure.svg') center center no-repeat;
	color: var(--black);
}

.about-first .items-box {
	margin-top: 90px;
}
	

/*--------*/

/**/

.roadmap-section {
	padding: 120px 0;
}

.roadmap-section .title {
	display: flex;
	justify-content: space-between;
	gap: 32px;
}

.roadmap-section .title .title-text {
	display: flex;
	flex-direction: column;
	gap: 24px;
	max-width: 320px;
}

.roadmap-section .title .title-text p {
	color: var(--light-grey);
	font-size: 14px;
	font-weight: 200;
}

.roadmap-section .subtitle {
	color: var(--light-grey);
	text-align: right;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 4px;
}

.roadmap-section .title + .box {
	margin-top: 50px;
}

.roadmap-section .box {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.roadmap-section .box .item {
	display: flex;
	align-items: center;
	gap: 20px;
}

.roadmap-section .box .item:nth-child(2n) {
	flex-direction: row-reverse;
}

.roadmap-section .box .item .number {
	width: 100%;
	max-width: 590px;
	flex-shrink: 0;
	color: var(--light-grey-bg);
	font-size: 200px;
	font-weight: 200;
	line-height: normal;
	letter-spacing: -8px;
	transition: var(--all-inout);
}

.roadmap-section .box .item:nth-child(2n+1) .number {
	text-align: right;
}

.roadmap-section .box .item:hover .number {
	color: var(--black);
}

.roadmap-section .box .item .info {
	width: 100%;
	max-width: 590px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
}

.roadmap-section .box .item:nth-child(2n) .info {
	flex-direction: row-reverse;
}

.roadmap-section .box .item .info .text {
	padding: 40px;
	width: 100%;
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 12px;
	background: var(--light-grey-bg);
	transition: var(--all-inout);
}

.roadmap-section .box .item:hover .info .text {
	background: var(--yellow);
}

.roadmap-section .box .item .info .text::after {
  	content: "";
  	position: absolute;
  	top: 0;
  	left: 100%;
  	width: 80px;
  	height: 100%;
  	background: var(--light-grey-bg);
  	clip-path: polygon(0 0, 80px 0, 0 100%);
	transition: var(--all-inout);
}

.roadmap-section .box .item:nth-child(2n) .info .text::after {
  	content: "";
  	position: absolute;
  	top: 0;
  	right: 100%;
	left: initial;
  	width: 80px;
  	height: 100%;
  	background: var(--light-grey-bg);
  	clip-path: polygon(80px 0, 80px 100%, 0 100%);
	transition: var(--all-inout);
}

.roadmap-section .box .item:hover .info .text::after {
	background: var(--yellow);
}

.roadmap-section .box .item .info .text p,
.roadmap-section .box .item .info .text ol,
.roadmap-section .box .item .info .text ul {
	color: var(--grey);
	font-size: 14px;
	font-weight: 200;
	transition: var(--all-inout);
}

.roadmap-section .box .item:hover .info .text p,
.roadmap-section .box .item:hover .info .text ol,
.roadmap-section .box .item:hover .info .text ul {
	color: var(--black);
}

.roadmap-section .box .item .info .image {
	width: 210px;
	height: 210px;
	flex-shrink: 0;
	transform: translateY(60px);
}

/*--------*/

/**/

.competencies-section {
	padding: 120px 0;
	background: var(--light-grey-bg);
}

.competencies-section .title {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 24px;
}

.competencies-section .title .subtitle {
	color: var(--light-grey);
	text-align: right;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 4px;
}

.competencies-section .title + .box {
	margin-top: 48px;
}

.competencies-section .box {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.competencies-section .box .item {
	display: block;
	text-decoration: none;
}


.competencies-section .box .item .image {
	width: 100%;
	height: 285px;
	display: block;
}

.competencies-section .box .item .image img {
	vertical-align: top;
	scale: 1;
	transition: var(--all-inout);
}

.competencies-section .box .item:hover .image img {
	scale: 1.05;
}

.competencies-section .box .item .name {
	display: block;
	width: 100%;
	height: 65px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	background: var(--bg);
	color: var(--white);
	font-size: 20px;
	font-weight: 500;
	line-height: 120%;
	text-transform: uppercase;
	transition: var(--all-inout);
	padding: 8px 12px;
}

.competencies-section .box .item:hover .name {
	color: var(--yellow)
}

/*--------*/

/**/

.fields-section {
	padding: 120px 0;
	background: var(--bg);
	position: relative;
	overflow: hidden;
}

.fields-section::before {
	width: 140px;
	height: 140px;
	display: flex;
	border-radius: 50%;
	background: var(--yellow);
	box-shadow: 0 0 0 80px #FFB522, 0 0 0 160px #F77E13;
	flex-shrink: 0;
	position: absolute;
	z-index: 1;
	opacity: 0.5;
	filter: blur(100px);
	top: calc(50% - 40px);
	left: -240px;
	content: "";
}

.fields-section::after {
	width: 140px;
	height: 140px;
	display: flex;
	border-radius: 50%;
	background: var(--yellow);
	box-shadow: 0 0 0 80px #FFB522, 0 0 0 160px #F77E13;
	flex-shrink: 0;
	position: absolute;
	z-index: 1;
	opacity: 0.5;
	filter: blur(100px);
	top: 15%;
	left: calc(100% + 120px);
	content: "";
}

.fields-section .container .title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

.fields-section .container .title h2 {
	color: var(--white);
}

.fields-section .container .title .subtitle {
	color: var(--light-grey);
	text-align: right;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 4px;
}

.fields-section .container .title + .box {
	margin-top: 58px;
}

.fields-section .container .box {
	display: grid;
	grid-template-columns: 50% 50%;
	gap: 40px 20px;
}

.fields-section .container .box .item {
	display: flex;
  	flex-direction: column;
  	gap: 32px;
}

.fields-section .container .box .item .images {
	position: relative;
}

.fields-section .container .box .item .images .img {
	width: 100%;
	height: 378px;
}

.fields-section .container .box .item .text {
	display: flex;
	justify-content: space-between;
	gap: 24px;
	align-items: center;
}

.fields-section .container .box .item .text .but-stroked a {
	border-color: var(--yellow);
	width: 207px;
}

.fields-section .container .box .item .text .name {
	max-width: 350px;
}

.fields-section .container .box .item .text .name .h4 {
	font-size: 20px;
	font-weight: 600;
	text-transform: uppercase;
}

.fields-section .container .box .item .text .name .h4 a {
	color: var(--white);
	text-decoration: none;
}

.fields-section .container .box .item .text .name .h4 a:hover {
	color: var(--yellow);
}

.fields-section .container .box .item .images .swiper-pagination {
	position: absolute;
	padding: 0 10px;
	height: 32px;
	border: 1px solid rgba(193, 189, 181, 0.50);
	background: rgba(193, 189, 181, 0.30);
	backdrop-filter: blur(12px);
	bottom: 12px;
	right: 12px;
	z-index: 2;
	left: initial;
	width: fit-content;
	display: flex;
	align-items: center;
	gap: 4px;
}

.fields-section .container .box .item .images .swiper-pagination .swiper-pagination-bullet {
	width: 4px;
	height: 4px;
	background: rgba(255, 255, 255, 0.5);
	margin: 0;
	opacity: 1;
}

.fields-section .container .box .item .images .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
	width: 8px;
	height: 8px;
	background: var(--white);
}

.fields-section .container .box .item .images .controls {
	display: flex;
	align-items: center;
	gap: 24px;
	position: absolute;
	left: 12px;
	bottom: 12px;
	z-index: 2;
}

.fields-section .container .box .item .images .controls button {
	width: 32px;
	height: 32px;
	font-size: 0;
	background: rgba(193, 189, 181, 0.30);
	backdrop-filter: blur(17.5px);
	border: 1px solid var(--light-grey);
	transition: var(--all-inout);
	display: flex !important;
	align-items: center;
	justify-content: center;
}

.fields-section .container .box .item .images .controls button::before {
	width: 18px;
	height: 18px;
	content: "";
	display: flex;
	background: var(--white);
	mask: url('../images/weui_arrow-filled.svg') center center no-repeat;
	transition: var(--all-inout);
}

.fields-section .container .box .item .images .controls button.next::before {
  	rotate: 180deg;
}

/*--------*/

/**/

.block-404 {
	padding: 110px 0 100px;
	background: var(--bg);
	position: relative;
	overflow: hidden;
}

.block-404::before {
	width: 140px;
	height: 140px;
	display: flex;
	border-radius: 50%;
	background: var(--yellow);
	box-shadow: 0 0 0 80px #FFB522, 0 0 0 160px #F77E13;
	flex-shrink: 0;
	position: absolute;
	z-index: 1;
	opacity: 0.5;
	filter: blur(100px);
	bottom: -100px;
	left: -200px;
	content: "";
}

.block-404::after {
	width: 140px;
	height: 140px;
	display: flex;
	border-radius: 50%;
	background: var(--yellow);
	box-shadow: 0 0 0 80px #FFB522, 0 0 0 160px #F77E13;
	flex-shrink: 0;
	position: absolute;
	z-index: 1;
	opacity: 0.5;
	filter: blur(100px);
	top: 0;
	left: calc(100% + 100px);
	content: "";
}

.block-404 > .image {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	opacity: 0.5;
  	mix-blend-mode: hard-light;
}

.block-404 .box {
	display: flex;
	flex-direction: column;
	gap: 12px;
	align-items: center;
}

.block-404 .box .num {
	font-size: 318px;
	font-weight: 700;
	line-height: 290px;
	letter-spacing: -12.72px;
	background: linear-gradient(33deg, #FFF 18.18%, rgba(255, 255, 255, 0.00) 113.14%);
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	margin-top: 50px;
}

.block-404 .box .title {
	color: var(--white);
	font-size: 20px;
	font-weight: 700;
}

.block-404 .box p {
	color: var(--white);
	font-size: 14px;
	font-weight: 200;
}

.block-404 .box .services-list {
	margin-top: 68px;
}

/*--------*/

/**/

.for-partners-first {
	padding-bottom: 60px;
}

.inner-first.for-partners-first > .image::before {
  	width: 100%;
  	height: 100%;
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.30) 0%, rgba(0, 0, 0, 0.30) 100%);
}

.for-partners-first .box {
	max-width: 350px;
	margin-top: 305px;
}

.for-partners-first .box h1 {
	color: var(--white);
}

.for-partners-first .items-box {
	margin-top: 28px;
}

/*--------*/

/**/

.why-choose-us {
	position: relative;
	margin-top: 40px;
	margin-bottom: 60px;
	overflow: hidden;
}

.why-choose-us.why-choose-us-project {
	margin-top: 80px;
}

.why-choose-us::before {
	width: 50%;
	height: 100%;
	left: 0;
	bottom: 0;
	background: url('../images/2978bbac20b406cee054e5075086b1d1117bbd21.webp') top right / 100% auto no-repeat;
	content: "";
	position: absolute;
}

.why-choose-us::after {
	width: 140px;
	height: 140px;
	display: flex;
	border-radius: 50%;
	background: var(--yellow);
	box-shadow: 0 0 0 80px #FFB522, 0 0 0 160px #F77E13;
	flex-shrink: 0;
	position: absolute;
	z-index: 1;
	opacity: 1;
	filter: blur(100px);
	bottom: 210px;
  	right: calc(50% + 250px);
	content: "";
}

.why-choose-us > .bottom {
	width: 100%;
	height: 90px;
	background: var(--bg);
	z-index: 2;
	position: relative;
	overflow: hidden;
}

.why-choose-us > .bottom::after {
	width: 140px;
	height: 140px;
	display: flex;
	border-radius: 50%;
	background: var(--yellow);
	box-shadow: 0 0 0 80px #FFB522, 0 0 0 160px #F77E13;
	flex-shrink: 0;
	position: absolute;
	z-index: 1;
	opacity: 0.6;
	filter: blur(100px);
	bottom: 200px;
  	left: calc(50% - 70px);
	content: "";
}

.why-choose-us > .bottom .container {
	display: flex;
	align-items: center;
	height: 100%;
}

.why-choose-us > .bottom .container .logo {
	background: var(--yellow);
}

.why-choose-us > .bottom .container .logo img {
	filter: brightness(0);
	vertical-align: top;
}

.why-choose-us .box {
	width: 100%;
	max-width: 590px;
	margin-left: auto;
	display: flex;
	flex-direction: column;
	gap: 75px;
	padding-top: 223px;
	padding-bottom: 152px;
}

.why-choose-us.why-choose-us-project .box {
	padding-top: 0;
}

.why-choose-us .container {
	display: grid;
	grid-template-columns: 50% 50%;
	gap: 20px;
}

.why-choose-us .container .image {
	position: relative;
	z-index: 2;
	padding-top: 130px;
}

.why-choose-us .container .image .image-inner {
	width: 100%;
	height: calc(100% - 130px);
	position: absolute;
	left: 0;
	bottom: 0;
}

.why-choose-us .container .image .image-inner img {
	vertical-align: top;
	height: 100%;
	width: auto;
}

.why-choose-us.why-choose-us-project::before {
	display: none;
}

.why-choose-us.why-choose-us-project::after {
	display: none;
}

.why-choose-us.why-choose-us-project .images-slider .is-slider,
.why-choose-us.why-choose-us-project .images-slider .is-slider .swiper-wrapper, 
.why-choose-us.why-choose-us-project .images-slider .is-slider .swiper-wrapper .item,
.why-choose-us.why-choose-us-project .images-slider .is-slider .swiper-wrapper .item .img {
	height: 100%
}

.why-choose-us.why-choose-us-project .images-slider .swiper-button-prev,
.why-choose-us.why-choose-us-project .images-slider .swiper-button-next {
	position: absolute;
	bottom: 24px;
	left: 32px;
	width: 32px;
	height: 32px;
	font-size: 0;
	z-index: 2;
	background: transparent;
	border: 1px solid var(--light-grey);
	transition: var(--all-inout);
	display: flex !important;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

.why-choose-us.why-choose-us-project .images-slider .swiper-button-next {
	right: 32px;
	left: initial !important;
}

.why-choose-us.why-choose-us-project .images-slider .swiper-button-prev svg,
.why-choose-us.why-choose-us-project .images-slider .swiper-button-next svg {
	display: none;
}

.why-choose-us.why-choose-us-project .images-slider .swiper-button-prev:hover,
.why-choose-us.why-choose-us-project .images-slider .swiper-button-next:hover {
	border-color: var(--yellow);
	background: var(--yellow);
}

.why-choose-us.why-choose-us-project .images-slider .swiper-button-prev::before,
.why-choose-us.why-choose-us-project .images-slider .swiper-button-next::before {
	width: 18px;
	height: 18px;
	content: "";
	display: flex;
	background: var(--bg);
	mask: url('../images/weui_arrow-filled.svg') center center no-repeat;
	transition: var(--all-inout);
}

.why-choose-us.why-choose-us-project .images-slider .swiper-button-prev:hover::before,
.why-choose-us.why-choose-us-project .images-slider .swiper-button-next:hover::before {
	background: var(--black);
}

.why-choose-us.why-choose-us-project .images-slider .swiper-button-next {
	left: calc(50% + 12px);
}

.why-choose-us.why-choose-us-project .images-slider .swiper-button-next::before {
	rotate: 180deg;
}

/*--------*/

/**/

.page-services-list {
	padding: 60px 0;
}

/*--------*/

/**/

.partners-section {
	padding: 60px 0;
	background: var(--light-grey-bg);
}

.partners-section .title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

.partners-section .title .subtitle {
	color: var(--light-grey);
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 4px;
}

.partners-section .slider .item {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100px;
}

.partners-section .title + .box {
	margin-top: 24px;
}

.partners-section .box .controls {
	margin-bottom: 50px;
	display: flex;
	align-items: center;
	gap: 24px;
}

.partners-section .box .controls button {
	width: 32px;
	height: 32px;
	font-size: 0;
	background: transparent;
	border: 1px solid var(--light-grey);
	transition: var(--all-inout);
	display: flex !important;
	align-items: center;
	justify-content: center;
}

.partners-section .box .controls button:hover {
	border-color: var(--yellow);
	background: var(--yellow);
}

.partners-section .box .controls button::before {
	width: 18px;
	height: 18px;
	content: "";
	display: flex;
	background: var(--black);
	mask: url('../images/weui_arrow-filled.svg') center center no-repeat;
	transition: var(--all-inout);
}

.partners-section .box .controls button.next::before {
	rotate: 180deg;
}

/*--------*/

/**/

.vacancies-first {
	padding-bottom: 120px;
	overflow: hidden;
	position: relative;
	background: var(--bg);
}

.vacancies-first::before {
	width: 140px;
	height: 140px;
	display: flex;
	border-radius: 50%;
	background: var(--yellow);
	box-shadow: 0 0 0 80px #FFB522, 0 0 0 160px #F77E13;
	flex-shrink: 0;
	position: absolute;
	z-index: 1;
	opacity: 0.6;
	filter: blur(100px);
	top: calc(50% + 50px);
  	left: -200px;
	content: "";
}

.vacancies-first::after {
	width: 140px;
	height: 140px;
	display: flex;
	border-radius: 50%;
	background: var(--yellow);
	box-shadow: 0 0 0 80px #FFB522, 0 0 0 160px #F77E13;
	flex-shrink: 0;
	position: absolute;
	z-index: 1;
	opacity: 0.6;
	filter: blur(100px);
	top: 25%;
  	right: -200px;
	content: "";
}

.vacancies-first .box {
	margin-top: 32px;
	display: grid;
	grid-template-columns: 50% 50%;
	gap: 20px;
	align-items: start;
}

.vacancies-first .box .info {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.vacancies-first .box .info .img {
	position: relative;
	margin-bottom: -255px;
}

.vacancies-first .box .info .img::after {
	width: 100%;
	height: 50%;
	background: #0F0804;
	background: -webkit-linear-gradient(0deg, rgba(15, 8, 4, 1) 20%, rgba(15, 8, 4, 0) 100%);
	background: -moz-linear-gradient(0deg, rgba(15, 8, 4, 1) 20%, rgba(15, 8, 4, 0) 100%);
	background: linear-gradient(0deg, rgba(15, 8, 4, 1) 20%, rgba(15, 8, 4, 0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#0F0804", endColorstr="#0F0804", GradientType=0);
	position: absolute;
	left: 0;
	bottom: 0;
	content: "";
}

.vacancies-first .box .info h1 {
	color: var(--white);
	position: relative;
	z-index: 2;
}

.vacancies-first .box .info p {
	color: var(--light-grey);
	font-size: 14px;
	font-weight: 200;
	position: relative;
	z-index: 2;
}

.vacancies-first .box .info p strong {
	font-weight: 600;
	color: var(--white);
}

.vacancies-first .box .info .buts {
	margin-top: 8px;
	display: flex;
	align-items: center;
	gap: 20px;
	position: relative;
	z-index: 2;
}

.vacancies-first .box .info .buts .but > a::before {
  	border-top: 14px solid var(--bg);
}

.vacancies-first .box .info .buts .but > a::after {
  	border-bottom: 14px solid var(--bg);
}

.vacancies-first .box .items-box {
	display: grid;
	grid-template-columns: 50% 50%;
	gap: 20px;
	position: relative;
	z-index: 2;
}

.vacancies-first .box .items-box .item .info {
	width: 100%;
	height: 221px;
	display: flex;
	flex-direction: column;
	gap: 18px;
	text-align: center;
	justify-content: center;
	align-items: center;
	background: rgba(193, 189, 181, 0.30);
	backdrop-filter: blur(12.5px);
	padding: 20px 45px;
}

.vacancies-first .box .items-box .item .info .number {
	color: var(--white);
	font-size: 110px;
	font-weight: 200;
	line-height: 80px;
	letter-spacing: -4.4px;
}

.vacancies-first .box .items-box .item .info p {
	color: var(--light-grey);
	text-align: center;
	font-size: 16px;
	font-weight: 200;
}

.vacancies-first .box .items-box .item .name {
	width: 100%;
	height: 64px;
	background: rgba(0, 0, 0, 0.50);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--white);
	font-size: 20px;
	font-weight: 500;
	line-height: normal;
	text-transform: uppercase;
}

/*--------*/

/**/

.text-with-image-reverse {
	padding: 60px 0;
	background: var(--light-grey-bg);	
}

.text-with-image-reverse h2 {
	max-width: 400px;
}

.text-with-image-reverse h2 + .box {
	margin-top: 32px;
}

.text-with-image-reverse .box {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.text-with-image-reverse .box.text-section-box {
	display: flex;
  	flex-direction: column;
  	gap: 32px;
}

.text-with-image-reverse .box + .box.text-section-box {
	margin-top: 40px;
}

.text-with-image-reverse .box + .box.text-section-box .text-wr::after {
  	background: var(--light-grey-bg);
  	background: -webkit-linear-gradient(0deg, var(--light-grey-bg) 20%, rgba(255, 255, 255, 0) 100%);
  	background: -moz-linear-gradient(0deg, var(--light-grey-bg) 20%, rgba(255, 255, 255, 0) 100%);
  	background: linear-gradient(0deg, var(--light-grey-bg) 20%, rgba(255, 255, 255, 0) 100%);
  	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#F9F8F8", endColorstr="#F9F8F8", GradientType=0);
}

.text-with-image-reverse .box .info {
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.text-with-image-reverse .box .info > h3 {
	padding-left: 40px;
	margin-top: 8px;
	font-size: 20px;
	font-weight: 600;
	text-transform: uppercase;
	color: var(--black);
}

.text-with-image-reverse .box .info .text {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.text-with-image-reverse .box .info .list.accordion-list {
	padding-left: 40px;
}

.text-with-image-reverse .list.accordion-list .panel-inner {
	padding-bottom: 24px;
}

.text-with-image-reverse .list.accordion-list .accordion-open:not(:first-child) {
  	padding-top: 24px;
}

.text-with-image-reverse .list.accordion-list .accordion-open:not(:first-child)::before {
  	top: 24px;
}

.text-with-image-reverse .list.accordion-list .accordion-open {
  	padding-bottom: 12px;
}

.text-with-image-reverse .list.accordion-list .panel-inner {
  	padding-left: 44px;
  	padding-right: 21px;
}

.text-with-image-reverse .list.accordion-list .accordion-open {
  	font-size: 16px;
  	padding-left: 44px;
}

.text-with-image-reverse .list.accordion-list .accordion-open::before {
  	font-size: 16px;
  	left: 0;
}

.text-with-image-reverse.article-text-with-image {
	background: none;
}

/*--------*/

/**/

.vacancies-section {
	padding: 120px 0 60px;
}

.vacancies-section .title {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.vacancies-section .title .text {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.vacancies-section .title .text h2 {
	max-width: 400px;
}

.vacancies-section .title .text p {
	color: var(--grey);
	font-size: 14px;
	font-weight: 200;
	max-width: 440px;
}

.vacancies-section .title .tabs {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.vacancies-section .title .tabs p {
	color: var(--black);
	font-size: 20px;
	font-weight: 600;
}

.vacancies-section .title .tabs .tabs-list {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
}

.vacancies-section .title .tabs .tabs-list button {
	height: 54px;
	padding: 0 18px;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid rgba(193, 189, 181, 0.30);
	background: none;
	color: var(--black);
	font-size: 14px;
	font-weight: 200;
}

.vacancies-section .title .tabs .tabs-list button:hover {
	border-color: var(--yellow);
}

.vacancies-section .title .tabs .tabs-list button.active {
	border-color: var(--light-grey);
	font-weight: 500;
}

.vacancies-section .tabcontent {
    animation: fadeEffect 1s;
}

.vacancies-section .tabcontent:not(:first-child) {
    display: none;
}

@keyframes fadeEffect {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.vacancies-section .title + .box {
	margin-top: 80px;
}

.vacancies-section .box .tabcontent-inner {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 20px;
}

.vacancies-section .box .tabcontent-inner .item {
	padding: 32px;
	border: 1px solid rgba(193, 189, 181, 0.30);
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.vacancies-section .box .tabcontent-inner .item .text {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.vacancies-section .box .tabcontent-inner .item .text p {
	color: var(--grey);
	font-size: 14px;
	font-weight: 600;
	line-height: 120%;
}

.vacancies-section .box .tabcontent-inner .item .text ul {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px 20px;
	padding: 0;
	list-style: none;
	color: var(--grey);
	font-size: 12px;
	font-weight: 200;
	line-height: 120%;
}

.vacancies-section .box .tabcontent-inner .item .text ul li {
	padding-left: 16px;
	position: relative;
}

.vacancies-section .box .tabcontent-inner .item .text ul li::before {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	content: "";
	position: absolute;
	left: 0;
	top: 3px;
	background: var(--yellow);
}

.vacancies-section .box .tabcontent-inner .item .info {
	display: flex;
	justify-content: space-between;
	gap: 24px 32px;
}

.vacancies-section .box .tabcontent-inner .item .info .cost {
	width: 110px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0 5px;
	height: 42px;
	border: 1px solid rgba(193, 189, 181, 0.50);
	color: var(--grey);
	font-size: 12px;
	font-weight: 500;
	flex-shrink: 0;
}

.vacancies-section .box .tabcontent-inner .item .info .title {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.vacancies-section .box .tabcontent-inner .item .info .title .h5 {
	color: var(--black);
	font-size: 20px;
	font-weight: 600;
}

.vacancies-section .box .tabcontent-inner .item .info .title p {
	color: var(--light-grey);
	font-size: 12px;
	font-weight: 200;
}

/*--------*/

/**/

.sevices-first {
	position: relative;
	padding-bottom: 140px;
}

.sevices-first .image::before {
  	content: "";
  	position: absolute;
  	top: 0;
  	right: calc(50% - 110px);
	left: initial;
  	width: 2140px;
  	height: 100%;
  	background: var(--light-grey-bg);
  	clip-path: polygon(0 0, 2140px 0, 2000px 100%, 0 100%);
}

.sevices-first .box {
	display: flex;
	flex-direction: column;
	gap: 24px;
	max-width: 400px;
	margin-top: 160px;
}

/*--------*/

/**/

.services-tiles {
	padding: 80px 0 60px;
}

.services-tiles .box {
	display: grid;
	grid-template-columns: 690px auto;
	gap: 20px;
}

.services-tiles .box .tabs-blocks {
	order: 2;
	display: grid;
	grid-template-columns: 50% 50%;
	gap: 20px;
	counter-reset: tb;
}

.services-tiles .box .tabs-blocks .t-block {
	background: var(--light-grey-bg);
	padding: 24px;
	position: relative;
	counter-increment: tb;
	display: flex;
	justify-content: flex-start;
	align-items: flex-end;
	cursor: pointer;
	transition: var(--all-inout);
	width: 100%;
	height: 232px;
}

.services-tiles .box .tabs-blocks .t-block:hover {
	background: var(--yellow);
}

.services-tiles .box .tabs-blocks .t-block.active {
	background: var(--bg);
}

.services-tiles .box .tabs-blocks .t-block .name {
	color: var(--black);
	font-size: 20px;
	font-weight: 600;
	line-height: 120%;
	transition: var(--all-inout);
	position: relative;
	z-index: 2;
}

.services-tiles .box .tabs-blocks .t-block.active .name {
	color: var(--white);
}

.services-tiles .box .tabs-blocks .t-block::before {
	color: var(--black);
	font-size: 22px;
	font-weight: 200;
	line-height: normal;
	position: absolute;
	top: 24px;
	left: 24px;
	z-index: 2;
	content: "0"counter(tb);
	transition: var(--all-inout);
	line-height: 18px;
}

.services-tiles .box .tabs-blocks .t-block.active::before {
	color: var(--white);
}

.services-tiles .box .tabs-blocks .t-block::after {
	content: "";
	width: 16px;
	height: 16px;
	position: absolute;
	top: 24px;
	right: 24px;
	background: var(--bg);
	mask: url('../images/accordion-arrow.svg') center center / contain no-repeat;
	rotate: 180deg;
	z-index: 2;
	transition: var(--all-inout);
}

.services-tiles .box .tabs-blocks .t-block.active::after {
	background: var(--white);
}

.services-tiles .box .tabs-blocks .t-block .img {
	position: absolute;
	top: 32px;
	right: 0;
	width: 100%;
	max-width: 160px;
  	height: 140px;
}

.services-tiles .box .tabs-blocks .t-block .img::before {
	width: 32px;
	height: 32px;
	display: flex;
	border-radius: 50%;
	background: var(--yellow);
	box-shadow: 0 0 0 40px #FFB522, 0 0 0 50px #F77E13;
	flex-shrink: 0;
	position: absolute;
	z-index: 1;
	opacity: 0;
	filter: blur(25px);
	top: 65px;
  	right: 85px;
	transition: var(--all-inout);
	content: "";
}

.services-tiles .box .tabs-blocks .t-block.active .img::before {
	opacity: 0.7;
}

.services-tiles .box .tabs-blocks .t-block .img img {
	z-index: 2;
	position: relative;
}

.services-tiles .box .tabs-content {
	counter-reset: tbc;
	order: 1;
	padding: 40px;
	background: var(--light-grey-bg);
	max-height: 484px;
}

.services-tiles .box .tabs-content .tabcontent {
    animation: fadeEffect 1s;
	counter-increment: tbc;
	position: relative;
}

.services-tiles .box .tabs-content .tabcontent:not(:first-child) {
    display: none;
}

.services-tiles .box .tabs-content .tabcontent .tabcontent-inner .number {
	color: var(--black);
	font-size: 32px;
	font-weight: 200;
	position: absolute;
	top: 0;
	left: 0;
	line-height: 26px;
}

.services-tiles .box .tabs-content .tabcontent::after {
	content: "";
	width: 24px;
	height: 24px;
	position: absolute;
	top: 0;
	right: 0;
	background: var(--bg);
	mask: url('../images/accordion-arrow.svg') center center / contain no-repeat;
	z-index: 2;
	transition: var(--all-inout);
}

.services-tiles .box .tabs-content .tabcontent .tabcontent-inner .img {
	position: absolute;
	top: -40px;
  	right: -30px;
	width: 290px;
	height: 290px;
	padding: 24px;
}

.services-tiles .box .tabs-content .tabcontent .tabcontent-inner .img img {
	filter: drop-shadow(13px 11px 30px rgba(0, 0, 0, 0.30));
}

.services-tiles .box .tabs-content .tabcontent .tabcontent-inner {
	padding-top: 67px;
}

.services-tiles .box .tabs-content .tabcontent .tabcontent-inner .text {
	width: 100%;
	max-width: 370px;
	display: flex;
	flex-direction: column;
	gap: 30px;
}

.services-tiles .box .tabs-content .tabcontent .tabcontent-inner .text h3 {
	color: var(--black);
	font-size: 30px;
	font-weight: 600;
	text-transform: none;
}

.services-tiles .box .tabs-content .tabcontent .tabcontent-inner .text p,
.services-tiles .box .tabs-content .tabcontent .tabcontent-inner .text ol,
.services-tiles .box .tabs-content .tabcontent .tabcontent-inner .text ul {
	color: var(--grey);
	font-size: 16px;
	font-weight: 200;
	line-height: 130%;
}

.services-tiles .box .tabs-content .tabcontent .tabcontent-inner .list {
	margin-top: 80px;
}

.services-tiles .box .tabs-content .tabcontent .tabcontent-inner .list ul {
	padding: 0;
	list-style: none;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 4px 40px;
}

.services-tiles .box .tabs-content .tabcontent .tabcontent-inner .list ul li {
	position: relative;
	padding-left: 18px;
	font-size: 14px;
	font-weight: 400;
	line-height: 24px;
}

.services-tiles .box .tabs-content .tabcontent .tabcontent-inner .list ul li::before {
	width: 10px;
	height: 10px;
	content: "";
	border-radius: 50%;
	background: var(--yellow);
	position: absolute;
	left: 0;
	top: 7px;
}

.services-tiles .box .tabs-content .tabcontent .tabcontent-inner .list ul li a {
	color: var(--grey);
	text-decoration: none;
}

.services-tiles .box .tabs-content .tabcontent .tabcontent-inner .list ul li a:hover {
	color:var(--yellow);
}

/*--------*/

/**/

.directions-first {
	background: var(--bg);
	position: relative;
	overflow: hidden;
	padding-bottom: 120px;
}

.directions-first::before {
	width: 140px;
	height: 140px;
	display: flex;
	border-radius: 50%;
	background: var(--yellow);
	box-shadow: 0 0 0 80px #FFB522, 0 0 0 160px #F77E13;
	flex-shrink: 0;
	position: absolute;
	z-index: 1;
	opacity: 0.5;
	filter: blur(100px);
	top: calc(50% - 40px);
	left: -240px;
	content: "";
}

.directions-first::after {
	width: 140px;
	height: 140px;
	display: flex;
	border-radius: 50%;
	background: var(--yellow);
	box-shadow: 0 0 0 80px #FFB522, 0 0 0 160px #F77E13;
	flex-shrink: 0;
	position: absolute;
	z-index: 1;
	opacity: 0.5;
	filter: blur(100px);
	top: 15%;
	left: calc(100% + 120px);
	content: "";
}

.directions-first .title {
	margin-top: 83px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

.directions-first .title h1 {
	color: var(--white);
}

.directions-first .title .subtitle {
	color: var(--light-grey);
	text-align: right;	
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 4px;
}

.directions-first .box {
	margin-top: 100px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 30px 20px;
}

.directions-first .box .item {
	display: grid;
	grid-template-columns: auto 280px;
	border: 1px solid rgba(193, 189, 181, 0.30);
}

.directions-first .box .item .img {
	position: relative;
	height: 100%;
}

.directions-first .box .item .img .img-inner {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}

.directions-first .box .item .info {
	padding: 32px 16px 32px 32px;
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.directions-first .box .item .info .name {
	color: var(--white);
	font-size: 20px;
	font-weight: 600;
	text-transform: uppercase;
	line-height: 1.3;
}

.directions-first .box .item .info .name a {
	color: var(--white);
	text-decoration: none;
}

.directions-first .box .item .info .name a:hover {
	color: var(--yellow);
}

.directions-first .box .item .info .but-more a {
	color: var(--white);
}

.directions-first .box .item .info .but-more a:hover {
	color: var(--yellow);
}

.directions-first .box .item .info .text {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.directions-first .box .item .info .text p,
.directions-first .box .item .info .text ol,
.directions-first .box .item .info .text ul {
	color: var(--white);
	font-size: 14px;
	font-weight: 400;
	line-height: 24px;
}

.directions-first .box .item .info .text ol {
	padding-left: 16px;
}

.directions-first .box .item .info .text ul {
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 4px;
	list-style: none;
}

.directions-first .box .item .info .text ul li {
	padding-left: 18px;
	position: relative;
}

.directions-first .box .item .info .text ul li::before {
	width: 10px;
	height: 10px;
	content: "";
	border-radius: 50%;
	background: var(--yellow);
	position: absolute;
	left: 0;
	top: 7px;
}

.directions-first .box .item .info .text ul li a {
	color: var(--white);
	text-decoration: none;
}

.directions-first .box .item .info .text ul li a:hover {
	color:var(--yellow);
}

/*--------*/

/**/

.about-info-block.vacancies-cards {
	padding: 120px 0 126px;
}

.vacancies-cards .box {
	align-items: flex-start;
	grid-template-columns: 590px 590px;
}

.vacancies-cards .cards {
	width: 100%;
	max-width: 450px;
	position: relative;
	margin-left: auto;
}

.vacancies-cards .cards .cards-slider .item {
	position: relative;
}

.vacancies-cards .cards .cards-slider .item .img {
	height: 600px;
}

.vacancies-cards .cards .cards-slider .item .img img {
	max-height: 100%;
	width: auto;
}

.vacancies-cards .cards .cards-slider .item .name {
	position: absolute;
	left: 0;
	bottom: -34px;
	width: 600px;
	height: 34px;
	display: flex;
	background: rgba(0, 0, 0, 0.25);
	backdrop-filter: blur(11px);
	rotate: -90deg;
	transform-origin: top left;
	align-items: center;
	padding-left: 16px;
	color: var(--white);
	font-size: 12px;
	font-weight: 600;
}

.vacancies-cards .cards-swiper-button-prev, .vacancies-cards .cards-swiper-button-next {
  	bottom: -56px;
}

.vacancies-cards .cards-swiper-button-prev::before, .vacancies-cards .cards-swiper-button-next::before {
	background: var(--bg);
}

.vacancies-cards .vh-slider .item {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.vacancies-cards .vh-slider .item .title {
	color: var(--black);
	font-size: 20px;
	font-weight: 600;
}

.vacancies-cards .vh-slider .item .subtitle {
	color: var(--light-grey);
	font-size: 12px;
	font-weight: 400;
	line-height: 130%;
}

.vacancies-cards .vh-slider .item .text-content {
	margin-top: 12px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.vacancies-cards .vh-slider .item .but-more {
	margin-top: 12px;
}

.vacancies-cards .vh-slider .item .images {
	margin-top: 12px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.vacancies-cards .vh-slider .item .images .img {
	width: 100%;
	height: 183px;
}

/*--------*/

/**/


.project-first .container {
	z-index: 2;
}

.project-first .project-bg-slider {
	width: 100%;
	height: 100%;
}

.project-first .project-bg-slider .swiper-pagination {
	position: absolute;
	padding: 0 10px;
	height: 32px;
	border: 1px solid rgba(193, 189, 181, 0.50);
	background: rgba(193, 189, 181, 0.30);
	backdrop-filter: blur(12px);
	bottom: 12px;
	right: 12px;
	z-index: 2;
	left: initial;
	width: fit-content;
	display: flex;
	align-items: center;
	gap: 4px;
}

.project-first .project-bg-slider .swiper-pagination .swiper-pagination-bullet {
	width: 4px;
	height: 4px;
	background: rgba(255, 255, 255, 0.5);
	margin: 0;
	opacity: 1;
}

.project-first .project-bg-slider .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
	width: 8px;
	height: 8px;
	background: var(--white);
}

.project-first .box {
	margin-top: 280px;
	padding: 48px 0;
	position: relative;
	width: 100%;
	max-width: 540px;
	display: flex;
	flex-direction: column;
	gap: 24px;
	z-index: 2;
}

.project-first .box::before {
	content: "";
  	position: absolute;
  	top: 0;
  	right: -140px;
  	width: 2140px;
  	height: 100%;
  	background: rgba(0, 0, 0, 0.25);
  	backdrop-filter: blur(15px);
  	clip-path: polygon(0 0, 2140px 0, 2000px 100%, 0 100%);
}

.project-first .box h1 {
	color: var(--white);
}

.project-first .box .text {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.project-first .box .text > * {
	color: var(--grey2);
}

.project-first .box .text > .but {
	margin-top: 40px;
}

/*--------*/

/**/

.article-first {
	padding-bottom: 20px;
}

.article-first .box {
	margin-top: 43px;
	display: flex;
	justify-content: space-between;
	gap: 20px;
}

.article-first .box .text {
	width: 100%;
	max-width: 590px;
	flex-shrink: 0;
}
.article-first .box > .text > .title {
	padding: 50px 32px 50px 0;
	min-height: 192px;
	display: flex;
	align-items: center;
	position: relative;
	margin-bottom: 50px;
}

.article-first .box > .text > .title::before {
	content: "";
	position: absolute;
	top: 0;
	right: -140px;
	width: 2140px;
	height: 100%;
	background: var(--light-grey-bg);
	clip-path: polygon(0 0, 2140px 0, 2000px 100%, 0 100%);
}

.article-first .box > .text > .content-box {
	margin-top: 50px;
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.article-first .box > .text > .content-box > .title {
	color: var(--black);
	font-size: 24px;
	font-weight: 700;
	text-transform: uppercase;
}

.article-first .box > .text > .content-box .list {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.article-first .box > .text > .content-box .list a {
	height: 38px;
	padding: 0 16px;
	border: 1px solid var(--light-grey);
	text-decoration: none;
	color: var(--grey);
	font-size: 14px;
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: center;
}

.article-first .box > .text > .content-box .list a:hover {
	border-color: var(--yellow);
	background: var(--yellow);
}

.article-first .box .image {
	margin-top: 162px;
}

/*--------*/

/**/

.text-columns {
	padding: 60px 0 20px;
}

.text-columns.grey-bg {
	background: var(--light-grey-bg);
	padding: 60px 0 80px;
}

.text-columns h2 + .box {
	margin-top: 50px;
}

.text-columns .box .text {
	gap: 20px;
	columns: 2;
}

.text-columns .box .text > * {
	margin-bottom: 16px; 
}

.text-content ol {
	padding-left: 16px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

/*--------*/

/**/

.wpcf7-not-valid-tip {
	display: none !important;
}

form {
	position: relative;
}

.wpcf7-response-output {
	position: absolute;
	left: 0;
	top: calc(100% + 24px);
	width: 100%;
	margin: 0 !important;
	color: var(--white);
	padding: 16px !important;
	font-size: 14px;
	font-weight: 300;
	transition: var(--all-inout);
}

#partner .wpcf7-response-output,
#client .wpcf7-response-output {
	position: relative;
	top: initial;
	color: var(--text);
}

footer .wpcf7-response-output,
.light-form .wpcf7-response-output {
	color: var(--grey);
	background: var(--white);
	backdrop-filter: blur(5px);
}

#partner .form form .form-group.but::before,
#client .form form .form-group.but::before {
	border-top: 14px solid var(--white);
}

#partner .form form .form-group.but::after,
#client .form form .form-group.but::after {
	border-bottom: 14px solid var(--white);
}


/*--------*/

/**/

#form .modal-box {
	display: flex;
	flex-direction: column;
	gap: 8px;
	justify-content: center;
	max-width: 300px;
	width: 100%;
}

#form .modal-box .title {
  	color: var(--black);
  	font-size: 24px;
  	font-weight: 600;
	text-transform: uppercase;
	text-align: center;
}

#form .modal-box > p {
	text-align: center;
	font-size: 14px;
	font-weight: 200;
}

#form .modal-box .form {
	margin-top: 24px;
}

#form .modal-box .form form .form-group {
  	gap: 6px;
  	align-items: flex-start;
}

#form .modal-box .form form .form-group input[type="text"], 
#form .modal-box .form form .form-group input[type="tel"], 
#form .modal-box .form form .form-group input[type="email"] {
  	height: 40px;
}

#form .modal-box .form form .form-group p {
	width: 100%;
}

#form .modal-box .form form .form-group input[type="submit"] {
	height: 54px;
}

#form .modal-box .form form {
  	gap: 16px;
}

#form .modal-box .form form .wpcf7-response-output { 
  	position: relative;
    top: 0;
	color: var(--grey);
}

#client > .f-button.is-close-btn, #partner > .f-button.is-close-btn {
	top: 0 !important;
}

.modal-box.cols {
	width: 1136px;
  	max-width: 100%;
	flex-direction: row;
	gap: 32px;
	padding: 40px 0;
}

.modal-box.cols .form-title-text {
	width: 100%;
	max-width: 500px;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.modal-box.cols .form-title-text .subtitle {
	color: var(--light-grey);
	font-size: 12px;
	font-weight: 300;
	letter-spacing: 4px;
}

.modal-box.cols .form-title-text .text-block {
	position: relative;
	padding: 40px 0;
	display: flex;
	flex-direction: column;
	gap: 24px;
	padding-right: 150px;
}

.modal-box.cols .form-title-text .text-block::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 532px;
	height: 100%;
	background: var(--light-grey-bg);
	clip-path: polygon(0 0, 532px 0, 392px 100%, 0 100%);
}

#partner .modal-box.cols .form-title-text .text-block::before {
	background: var(--yellow);
}

.modal-box.cols .form-title-text .text-block > * {
	z-index: 2;
	position: relative;
}

.modal-box.cols .form-title-text .text-block p {
	color: var(--grey);
	font-size: 14px;
	font-weight: 200;
}

form .f-position {
	margin-top: 12px;
}

form .twos > p {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}

form .trios > p {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 12px;
}

#client form .wpcf7-list-item,
#partner form .wpcf7-list-item {
	margin-left: 0;
}

.wpcf7-list-item input[type="radio"] {
	display: none;
}

.wpcf7-radio {
	display: flex;
	align-items: center;
	gap: 12px 80px;
	flex-wrap: wrap;
}

.wpcf7-list-item .wpcf7-list-item-label {
	position: relative;
	display: flex;
	gap: 12px;
	color: var(--grey);
	font-size: 14px;
	font-weight: 200;
	line-height: normal;
	align-items: center;
}

.wpcf7-list-item .wpcf7-list-item-label::before {
	width: 24px;
	height: 24px;
	background: var(--white);
	border: 1px solid var(--light-grey);
	transition: var(--all-inout);
	box-shadow: inset 0 0 0 6px var(--white);
}

.wpcf7-list-item input:checked + .wpcf7-list-item-label::before {
	background: var(--yellow);
}

/*--------*/

/**/

.case-attributes {
	padding: 100px 0;
}

.case-attributes h2 + .box {
	margin-top: 80px;
}

.case-attributes .box {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 30px 120px;
}

.case-attributes .box .item {
	display: flex;
	flex-direction: column;
	gap: 23px;
}

.case-attributes .box .item .name {
	color: var(--black);
	font-size: 20px;
	font-weight: 600;
	line-height: normal;
}

.case-attributes .box .item p {
	color: var(--grey);
	font-size: 14px;
	font-weight: 200;
	line-height: 120%;
}

/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/