body {
	min-height: 100vh;
	min-width: 320px;

	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flexbox;
	display: flex;

	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

/* ============================ Шапка */
.header {
	
}

/* ============================ Логотип */
.logo {
	display: block;
	
	text-decoration: none;
}

.logoText {
    display: block;
    color: #fff;
}

.mainSection {
	height: 100vh;
	background: url('../img/bg1.jpg') no-repeat center;
	background-size: cover;
	overflow: hidden;
	position: relative;
}

.header {
	padding-top: 40px;
}

.logo {
	text-align: center;
}

.headerTel {
	position: absolute;
	right: 20px;
	top: -4px;
}

.mainItems {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 85vh;
	flex-direction: column;
}

.mainTitle {
	font-family: 'RF Dewi Extended';
	font-style: normal;
	font-weight: 900;
	font-size: 64px;
	line-height: 140.5%;
	color: #FFFFFF;
	text-align: center;
	margin-bottom: 20px;
}

.mainText {
	font-size: 34px;
	line-height: 56px;
	text-align: center;

	color: #FFFFFF;
}

.arrowDownWrap {
	position: absolute;
	bottom: -20px;
	left: calc(50% - 20px);
}

.video {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 0;
	transform: translate(-50%, -50%);
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.arrowDown {
	display: inline-block;
	-webkit-animation: fade_move_down 1.5s ease-in-out infinite;
	-moz-animation: fade_move_down 1.5s ease-in-out infinite;
	animation: fade_move_down 1.5s ease-in-out infinite;
}

@keyframes fade_move_down {
	0% {
		transform:translate(0, -10px);
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		transform:translate(0, 10px);
		opacity: 0;
	}
}

.itemRect {
	position: absolute;
}

.itemAnimSquares {
	position: relative;
}

.rect1 {
	background: #E3E0DE;
	border-radius: 4px;
	width: 50px;
	height: 50px;
}


.rect2 {
	background: #E3E0DE;
	border-radius: 4px;
	width: 70px;
	height: 70px;
}

.rect3 {
	width: 90px;
	height: 90px;
	background: linear-gradient(96.91deg, #500E85 -6.45%, #8E37D3 114.79%);
	border-radius: 4px;
}

.screenDown {
	background: #fff;
	padding: 230px 0;
}

.secondItems {
	display: flex;
	justify-content: space-between;
	position: relative;
}

.itemTitle {
	font-family: 'RF Dewi Extended';
	font-style: normal;
	font-weight: 900;
	font-size: 64px;
	line-height: 77px;
	color: #500E85;
	margin-bottom: 25px;
}

.itemText {
	font-size: 30px;
	line-height: 166%;
	color: #393140;
	max-width: 612px;
}

.itemRect.item1 {
	right: 400px;
	top: 50px;
	animation: anim0 2.5s ease;
}

@keyframes anim0 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(-12px, 50px, 0);
		transform: translate3d(-12px, 50px, 0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(-12px, 50px, 0);
		transform: translate3d(-12px, 50px, 0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item2 {
	right: 315px;
	top: 50px;
	animation: anim1 2.5s ease;
}

@keyframes anim1 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(-150px, 150px, 0);
		transform: translate3d(-150px, 150px, 0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(-150px, 150px, 0);
		transform: translate3d(-150px, 150px, 0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item3 {
	right: 210px;
	top: 50px;
	animation: anim2 2.5s ease;
}


@keyframes anim2 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(65px, 157px, 0);
		transform: translate3d(65px, 157px, 0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(65px, 157px, 0);
		transform: translate3d(65px, 157px, 0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item4 {
	right: 105px;
	top: 50px;
	animation: anim3 2.5s ease;
}

@keyframes anim3 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(-245px, 241px, 0);
		transform: translate3d(-245px, 241px, 0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(-245px, 241px, 0);
		transform: translate3d(-245px, 241px, 0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item5 {
	right: 20px;
	top: 50px;
	animation: anim4 2.5s ease;

}

@keyframes anim4 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(-45px, 89px, 0);
		transform: translate3d(-45px, 89px, 0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(-45px, 89px, 0);
		transform: translate3d(-45px, 89px, 0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item6 {
	right: 400px;
	top: 142px;
	animation: anim5 2.5s ease;
}

@keyframes anim5 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(56px, 4px, 0);
		transform: translate3d(56px, 4px, 0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(56px, 4px, 0);
		transform: translate3d(56px, 4px, 0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}


.itemRect.item7 {
	right: 306px;
	top: 132px;
	animation: anim6 2.5s ease;
}

@keyframes anim6 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(-56px, -45px, 0);
		transform: translate3d(-56px, -45px, 0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(-56px, -45px, 0);
		transform: translate3d(-56px, -45px, 0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item8 {
	right: 201px;
	top: 132px;
	animation: anim7 2.5s ease;
}

@keyframes anim7 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(-23px, 45px, 0);
		transform: translate3d(-23px, 45px, 0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(-23px, 45px, 0);
		transform: translate3d(-23px, 45px, 0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item9 {
	right: 96px;
	top: 132px;
	animation: anim8 2.5s ease;
}

@keyframes anim8 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(13px, -145px, 0);
		transform: translate3d(13px, -145px, 0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(13px, -145px, 0);
		transform: translate3d(13px, -145px, 0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item10 {
	right: 20px;
	top: 142px;
	animation: anim9 2.5s ease;
}

@keyframes anim9 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(-73px, 45px, 0);
		transform: translate3d(-73px, 45px, 0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(-73px, 45px, 0);
		transform: translate3d(-73px, 45px, 0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item11 {
	right: 400px;
	top: 247px;
	animation: anim10 2.5s ease;
}

@keyframes anim10 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(42px, 21px, 0);
		transform: translate3d(42px, 21px, 0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(42px, 21px, 0);
		transform: translate3d(42px, 21px, 0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item12 {
	right: 306px;
	top: 236px;
	animation: anim11 2.5s ease;
}

@keyframes anim11 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(-119px, 121px, 0);
		transform: translate3d(-119px, 121px, 0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(-119px, 121px, 0);
		transform: translate3d(-119px, 121px, 0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item13 {
	right: 192px;
	top: 226px;
	animation: anim12 2.5s ease;
}

@keyframes anim12 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(19px, -28px, 0);
		transform: translate3d(19px, -28px, 0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(19px, -28px, 0);
		transform: translate3d(19px, -28px, 0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item14 {
	right: 96px;
	top: 236px;
	animation: anim13 2.5s ease;
}

@keyframes anim13 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(90px, 68px, 0);
		transform: translate3d(90px, 68px, 0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(90px, 68px, 0);
		transform: translate3d(90px, 68px, 0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item15 {
	right: 20px;
	top: 247px;
	animation: anim14 2.5s ease;
}

@keyframes anim14 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(21px, 45px, 0);
		transform: translate3d(21px, 45px, 0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(21px, 45px, 0);
		transform: translate3d(21px, 45px, 0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item16 {
	right: 400px;
	top: 352px;
	animation: anim15 2.5s ease;
}

@keyframes anim15 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(-109px, 98px, 0);
		transform: translate3d(-109px, 98px, 0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(-109px, 98px, 0);
		transform: translate3d(-109px, 98px, 0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item17 {
	right: 306px;
	top: 342px;
	animation: anim16 2.5s ease;
}

@keyframes anim16 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(59px, -28px, 0);
		transform: translate3d(59px, -28px, 0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(59px, -28px, 0);
		transform: translate3d(59px, -28px, 0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item18 {
	right: 202px;
	top: 342px;
	animation: anim17 2.5s ease;
}

@keyframes anim17 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(-59px, 28px, 0);
		transform: translate3d(-59px, 28px,  0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(-59px, 28px,  0);
		transform: translate3d(-59px, 28px,  0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item19 {
	right: 96px;
	top: 342px;
	animation: anim18 2.5s ease;
}

@keyframes anim18 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(-159px, -88px, 0);
		transform: translate3d(-159px, -88px,  0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(-159px, -88px,  0);
		transform: translate3d(-159px, -88px,  0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item20 {
	right: 20px;
	top: 352px;
	animation: anim19 2.5s ease;
}

@keyframes anim19 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(100px, 38px, 0);
		transform: translate3d(100px, 38px,  0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(100px, 38px,  0);
		transform: translate3d(100px, 38px,  0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item21 {
	right: 400px;
	top: 444px;
	animation: anim20 2.5s ease;
}

@keyframes anim20 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(50px, -68px, 0);
		transform: translate3d(50px, -68px,  0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(50px, -68px,  0);
		transform: translate3d(50px, -68px,  0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item22 {
	 right: 315px;
	 top: 444px;
	animation: anim21 2.5s ease;
 }

@keyframes anim21 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(-98px, 178px, 0);
		transform: translate3d(-98px, 178px,  0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(-98px, 178px,  0);
		transform: translate3d(-98px, 178px,  0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item23 {
	right: 210px;
	top: 444px;
	animation: anim22 2.5s ease;
}

@keyframes anim22 {
	0% {
		opacity: 1;
		-webkit-transform: translate3d(-8px, 78px, 0);
		transform: translate3d(-8px, 78px,  0);
	}

	20% {
		opacity: 1;
		-webkit-transform: translate3d(-8px, 78px,  0);
		transform: translate3d(-8px, 78px,  0);
	}

	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.itemRect.item24 {
	right: 105px;
	top: 444px;
	animation: anim7 2.5s ease;
}



.itemRect.item25 {
	right: 20px;
	top: 444px;
	animation: anim2 2.5s ease;
}

.repItems {
	display: flex;
	justify-content: space-between;
}

.repSection {
	padding: 220px 0;
	background: #ECEDF4;
}

.repItemLeft {
	padding-left: 50px;
	padding-top: 50px;
}

.repItemCheck {
	position: absolute;
	top: -25px;
	left: 150px;
	animation: animCheck 1s ease-in-out;
}

@keyframes animCheck {
	0% {
		opacity: 0;
		transform: translate3d(240px, 40px, 0) scale(0.6) rotate(0deg);
	}

	50% {
		opacity: 1;
		transform: translate3d(240px, 40px, 0) scale(0.7)  rotate(45deg);
	}


	100% {
		opacity: 1;
		transform: scale(1)  rotate(0);
	}
}

.repItemCircle {
	border: 80px solid #FFFFFF;
	box-sizing: border-box;
	border-radius: 100%;
	text-align: center;

	width: 400px;
	height: 400px;

	animation: animCircle 0.2s ease-in-out;
	position: absolute;
}


@keyframes animCircle {
	0% {
		width: 500px;
		height: 500px;
		border: 60px solid #FFFFFF;
	}


	100% {
		border: 80px solid #FFFFFF;
		box-sizing: border-box;
		border-radius: 100%;
	}
}

.contactsSection {
	background: #500E85;
	padding: 50px 0;
}

.contactTitle {
	font-family: 'RF Dewi Extended';
	font-weight: 900;
	font-size: 80px;
	line-height: 96px;
	color: #FFFFFF;
	margin-bottom: 25px;
}

.footerTel {
	font-weight: bold;
	font-size: 28px;
	line-height: 166%;
	color: #FFFFFF;
	text-decoration: none;
	margin-bottom: 10px;
	display: inline-block;
}

.footerAdress {
	font-size: 28px;
	line-height: 166%;
	color: #FFFFFF;
	margin-bottom: 10px;
}

.footerMail {
	font-size: 28px;
	line-height: 166%;
	color: #FFFFFF;
	margin-bottom: 35px;
	display: inline-block;
}

.footer {
	background: #500E85;
	padding: 15px 0;
	border-top: 1px solid #5C1495;
}

.footPolitics {
	font-size: 12px;
	line-height: 166%;
	text-decoration-line: underline;
	color: #8B6CA5;
}

.formBut .but {
	width: 100%;
	background: #500E85;
	border-radius: 4px;

	font-size: 20px;
	line-height: 24px;
	color: #FFFFFF;

	font-family: 'RF Dewi';
	padding: 16px 0;
	font-weight: 400;
}

.formButText {
	margin-bottom: 20px;
}

.formBut {
	margin-bottom: 30px;
}

.modalHeader.success {
	text-align: center;
}

.modalHeader.success .modalTitle {
	margin-bottom: 20px;
}

.mobileShape {
	display: none;
}

.preloader {
	display: flex;
	align-items: center;
	justify-content: center;
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: 9999;
	background: #500E85;
	text-align: center;
}

.animateLogo {
	display: flex;
	align-items: baseline;
	position: relative;
	z-index: 2;
}

.animateLogo img {
	margin-right: 12px;
}

.letter3 {
	position: relative;
	bottom: -23px;
}

.letter7 {
	margin-left: 40px;
}

.letter1 {
	animation: animletter1 1s ease-in;
}


@keyframes animletter1 {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

.letter2 {
	animation: animletter2 1s ease-in-out;
}


@keyframes animletter2 {
	0% {
		opacity: 0;
		transform: translateX(-80px)
	}

	100% {
		opacity: 1;
		transform: translateX(0)
	}
}

.letter3 {
	animation: animletter3 1s ease-in-out;
}


@keyframes animletter3 {
	0% {
		opacity: 0;
		transform: translateX(-150px)
	}

	100% {
		opacity: 1;
		transform: translateX(0)
	}
}

.letter4 {
	animation: animletter4 1s ease-in-out;
}


@keyframes animletter4 {
	0% {
		opacity: 0;
		transform: translateX(-230px)
	}

	100% {
		opacity: 1;
		transform: translateX(0)
	}
}

.letter5 {
	animation: animletter5 1s ease-in-out;
}


@keyframes animletter5 {
	0% {
		opacity: 0;
		transform: translateX(-290px)
	}

	100% {
		opacity: 1;
		transform: translateX(0)
	}
}

.letter15 {
	animation: animletter15 1s ease-in-out;
}


@keyframes animletter15 {
	0% {
		opacity: 0;
		transform: translateX(-350px)
	}

	100% {
		opacity: 1;
		transform: translateX(0)
	}
}

.letter6 {
	animation: animletter6 1s ease-in-out;
}


@keyframes animletter6 {
	0% {
		opacity: 0;
		transform: translateX(-410px)
	}

	100% {
		opacity: 1;
		transform: translateX(0)
	}
}

.letter7 {
	animation: animletter7 1s ease-in-out;
}


@keyframes animletter7 {
	0% {
		opacity: 0;
		transform: translateX(-480px)
	}

	100% {
		opacity: 1;
		transform: translateX(0)
	}
}

.letter8 {
	animation: animletter8 1s ease-in-out;
}


@keyframes animletter8 {
	0% {
		opacity: 0;
		transform: translateX(-540px)
	}

	100% {
		opacity: 1;
		transform: translateX(0)
	}
}

.letter9 {
	animation: animletter9 1s ease-in-out;
}


@keyframes animletter9 {
	0% {
		opacity: 0;
		transform: translateX(-600px)
	}

	100% {
		opacity: 1;
		transform: translateX(0)
	}
}

.letter10 {
	 animation: animletter10 1s ease-in-out;
 }


@keyframes animletter10 {
	0% {
		opacity: 0;
		transform: translateX(-660px)
	}

	100% {
		opacity: 1;
		transform: translateX(0)
	}
}

.letter11 {
	animation: animletter11 1s ease-in-out;
}


@keyframes animletter11 {
	0% {
		opacity: 0;
		transform: translateX(-720px)
	}

	100% {
		opacity: 1;
		transform: translateX(0)
	}
}

.letter12 {
	animation: animletter12 1s ease-in-out;
}


@keyframes animletter12 {
	0% {
		opacity: 0;
		transform: translateX(-780px)
	}

	100% {
		opacity: 1;
		transform: translateX(0)
	}
}

.letter13 {
	animation: animletter13 1s ease-in-out;
}


@keyframes animletter13 {
	0% {
		opacity: 0;
		transform: translateX(-840px)
	}

	100% {
		opacity: 1;
		transform: translateX(0)
	}
}

.letter14 {
	animation: animletter14 1s ease-in-out;
}


@keyframes animletter14 {
	0% {
		opacity: 0;
		transform: translateX(-900px)
	}

	100% {
		opacity: 1;
		transform: translateX(0)
	}
}


svg .outer {
	stroke: #5C1199;
}

.chart {
	position: absolute;
	transform: rotate(-90deg);
	zoom: 0.8;
}

.outer {
	fill: transparent;
	stroke: #333;
	stroke-width: 75;
	stroke-dasharray: 2000;
	stroke-dashoffset: 2000;
	animation: show100 2s ease-in-out forwards;
}



@-webkit-keyframes show100 {

	to {
		stroke-dashoffset: 0;
		stroke-dasharray: 2000;
	}
}

@keyframes show100 {

	to {
		stroke-dashoffset: 0;
		stroke-dasharray: 2000;
	}
}

.animFade {
	animation: animFade 0.8s ease-in-out forwards;
}

@keyframes animFade {

	to {
		transform: translateY(-2000px);
		opacity: 0;
	}
}