
/*--- Загрузчик AJAX ---*/
#loading-layer {
		display: block !important;
		background-color: #fff;
		background-color: rgba(255,255,255,0.9);
		z-index: 9999;
		position: fixed;
		top: 0; left: 0; right: 0; bottom: 0;
		width: 100%; height: 100%; text-indent: -9999px;
		overflow: hidden;
		white-space: nowrap;
	}
	#loading-layer:before, #loading-layer:after {
		content: "";
		border-radius: 50%;
		background-color: #95c00e;
		position: absolute;
		left: 50%; top: 50%;
	}
	#loading-layer:before {
		width: 100px; height: 100px;
		margin: -50px 0 0 -50px;
	}
	#loading-layer:after {
		width: 40px; height: 40px;
		background-color: #8663c4;
		margin: -20px 0 0 -20px;
	}

	#loading-layer:before {
		-webkit-animation: load1 1s infinite ease;
		animation: load1 1s infinite ease;
	}
	#loading-layer:after {
		-webkit-animation: load2 1s infinite -0.32s ease;
		animation: load2 1s infinite -0.32s ease;
	}
	@-webkit-keyframes load1 {
		0%, 80%, 100% { -webkit-transform: scale(1,1); }
		40% { -webkit-transform: scale(.6,.6); }
	}
	@keyframes load1 {
		0%, 80%, 100% { transform: scale(1,1); }
		40% { transform: scale(.6,.6); }
	}
	@-webkit-keyframes load2 {
		0%, 80%, 100% { -webkit-transform: scale(1,1); }
		40% { -webkit-transform: scale(.5,.5); }
	}
	@keyframes load2 {
		0%, 80%, 100% { transform: scale(1,1); }
		40% { transform: scale(.5,.5); }
	}


/*---показ оригинальной картинки загруженной на сайт из уменьшенной копии---*/
.highslide-wrapper, .highslide-outline { background: #fff }
	.highslide-image { border: 2px solid #fff }
	.highslide-active-anchor { visibility: hidden } 
	.highslide-active-anchor img { visibility: hidden }
	.highslide-dimming { background-color: black }
	.highslide-html { background-color: white }
	.highslide-loading { display: block; color: white; font-size: 9px; font-weight: bold; text-decoration: none; padding: 3px; border: 1px solid white; background-color: black }
	a.highslide-full-expand { background: url(../dleimages/fullexpand.gif) no-repeat; display: block; margin: 0 10px 10px 0; width: 34px; height: 34px }
	.highslide-display-block { display: block }
	.highslide-display-none { display: none }
	.highslide-caption { display: none; padding: 5px; background: white }
	.highslide-controls { width: 195px; height: 40px; background: url(../../../engine/classes/highslide/graphics/controlbar-black-border.gif) no-repeat 0 -90px; margin-right: 15px; margin-bottom: 10px; margin-top: 10px }
	.highslide-controls ul { position: relative; left: 15px; height: 40px; list-style: none; margin: 0; padding: 0; background: url(../../../engine/classes/highslide/graphics/controlbar-black-border.gif) no-repeat 100% -90px }
	.highslide-controls li { float: left; padding: 5px 0; }
	.highslide-controls a { background: url(../../../engine/classes/highslide/graphics/controlbar-black-border.gif); display: block; float: left; height: 30px; width: 30px; outline: none }
	.highslide-controls a.disabled { cursor: default }
	.highslide-controls a span { display: none }
 
/*---The CSS sprites for the controlbar---*/
.highslide-controls .highslide-previous a { background-position: 0 0 }
	.highslide-controls .highslide-previous a:hover { background-position: 0 -30px }
	.highslide-controls .highslide-previous a.disabled { background-position: 0 -60px !important }
	.highslide-controls .highslide-play a { background-position: -30px 0 }
	.highslide-controls .highslide-play a:hover { background-position: -30px -30px }
	.highslide-controls .highslide-play a.disabled { background-position: -30px -60px !important }
	.highslide-controls .highslide-pause a { background-position: -60px 0 }
	.highslide-controls .highslide-pause a:hover { background-position: -60px -30px }
	.highslide-controls .highslide-next a { background-position: -90px 0 }
	.highslide-controls .highslide-next a:hover { background-position: -90px -30px }
	.highslide-controls .highslide-next a.disabled { background-position: -90px -60px !important }
	.highslide-controls .highslide-move a { background-position: -120px 0 }
	.highslide-controls .highslide-move a:hover { background-position: -120px -30px }
	.highslide-controls .highslide-full-expand a { background-position: -150px 0 }
	.highslide-controls .highslide-full-expand a:hover { background-position: -150px -30px }
	.highslide-controls .highslide-full-expand a.disabled { background-position: -150px -60px !important }
	.highslide-controls .highslide-close a { background-position: -180px 0 }
	.highslide-controls .highslide-close a:hover { background-position: -180px -30px }



body{
	font-family: 'Mulish', sans-serif;
	overflow-x: hidden;
	counter-reset: heading;
}

header{
	padding-top: 16px;
	padding-bottom: 16px;
	position: fixed;
	top: 0px;
	width: 100%;
	left: 0px;
	z-index: 5;
	transition-duration: 0.2s;
}
header.scroll {
    background-color: rgb(21 36 155 / 70%);
	padding: 0px 0;
}

header .logo{
	max-height: 47px;
    max-width: 100%;
}
a:hover,
button:hover{
	text-decoration: none;
	transition-duration: 0.2s;
}
a:hover{
	color: #FFD93C !important;
	
}
a:focus,
button:focus{
	outline: none;
	text-decoration: none;
}
header .menu li a{
	font-size: 18px;
	color: #fff;
	margin-right: 49px;
}
header .menu li:last-child a{
	margin-right: 0px;
}

header .phone{
	
	font-weight: 500;
	height: 77px;
    transition-duration: 0.2s;
}
header.scroll .phone{
 	height: 38px;   
}
header .phone a{
	color: #fff;
}

header .phone>a>span:nth-child(2) {
    border: 1px solid #fff;
    border-radius: 50%;
	transition-duration: 0.2s;
	margin-left: 40px;
	padding: 26px 28px;
}
header.scroll .phone>a>span:nth-child(2) {
    margin-left: 40px;
    padding: 10px 10px;
}
img{
	max-width: 100%;
}

.mobile-menu{
	position: fixed;
	width: 206px;
	max-width: 90%;
	height: 100vh;
	right: 0px;
	opacity: 0;
	visibility: hidden;
	transform: translateX(150px);
	transition-duration: 0.2s;
	z-index: 10;
    background-color: #fff;
}
.mobile-menu.active{
	transform: translateX(0px);
	opacity: 1;
	visibility: visible;
}

.mobile-menu .mobile-btn {
    /* border: 1px solid #101b6d; */
    border: 1px solid #164CA5;
    position: absolute;
    right: 0px;
    width: 35px;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    top: 10px;
    right: 15px;
}
.mobile-menu .links {
    padding-left: 35px;
    padding-top: 42px;
    padding-bottom: 22px;
    border-bottom: 1px solid #C7DFFF;
}
.mobile-menu .links a{
	font-weight: normal;
	font-size: 18px;
	line-height: 30px;
	/* identical to box height, or 167% */

	margin-bottom: 7px;
	display: block;
	color: #000000;
}
.mobile-menu .m-phone{
	font-weight: 500;
	font-size: 14px;
	line-height: 30px;
	/* identical to box height, or 214% */
	padding-left: 35px;
    margin-top: 17px;
	
	
}
.mobile-menu .m-phone a {
    color: #000;
    
}
.mobile-menu button{
	margin-left: 35px;
	margin-top: 10px;
	background: #FFCD00;
	border-radius: 3px;
	font-weight: 500;
	font-size: 14px;
	line-height: 18px;
	/* identical to box height */
	padding: 9px 16px;

	color: #FFFFFF;
}





section.main{
	min-height: 70vh;
	background-color: #030e5f;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center bottom;
	padding-top: 170px;
}

section.main h1{
	font-weight: 500;
	font-size: 48px;
	line-height: 62px;
	color: #fff;
	position: relative;
	z-index: 1;
}


.main-form{
	background: linear-gradient(180deg, rgba(65, 80, 185, 0.86) 0%, rgba(4, 16, 100, 0.7568) 100%);
	border-radius: 5px;
	padding: 44px 30px;
	color: #fff;
	width: 382px;
	max-width: 100%;
	position: relative;
	min-height: 693px;
}
.main-form::before{
	position: absolute;
	content: url('../img/podarok.png');
	bottom: 0px;
    left: -190px;
    z-index: 0;
}

.main-form h3{
	font-weight: 500;
	font-size: 27px;
	line-height: 30px;
	/* identical to box height, or 111% */

	margin-bottom: 21px;
	color: #FFFFFF;
}
.main-form p{
	font-style: normal;
	font-weight: normal;
	font-size: 18px;
	line-height: 30px;
	/* or 167% */
	margin-bottom: 34px;

	color: #FFFFFF;
}
.main-form .form-group{
	    z-index: 1;
    position: relative;
	margin-bottom: 31px;
}
.main-form .form-group:last-child{
	margin-bottom: 0px;
}
.form-control{
	font-size: 20px;
	line-height: 26px;
	padding: 20px 30px;
	height: auto;
}

.btn-yellow{
	border: none;
	background: #FFCD00;
	border-radius: 7px;
	font-weight: 500;
	font-size: 20px;
	line-height: 26px;
	color: #fff;
	padding: 27px 18px;
	text-align: center;
}
.main-form .btn-yellow{
	width: 100%;
	margin-top: 44px;
}

.main .container{
	display: flex;
	flex-wrap: wrap;
}
.main .container .text{
	max-width: calc(100% - 382px);
	padding-left: 64px;
	margin-top: 13px;
}

form{
	margin-bottom: 0;
}

.main .container .text p {
    font-style: normal;
    font-weight: normal;
    font-size: 36px;
    line-height: 46px;
    color: #FFD93C;
    margin-top: 39px;
	position: relative;
	z-index: 1;
	 min-height: 4em;
    
}
span.typed-cursor{
	color: #FFD93C;
	
}


img.knizhka {
    position: absolute;
    right: -150px;
    bottom: 0px;
    z-index: 0;
}

.main .container>div:nth-child(2){
	max-width: 100%;
}
section {
    overflow-x: clip;
}
@media (max-width: 575px){
	section {
		overflow-x: hidden;
	}
}
.p-relative{
	position: relative;
}

.case{
	padding-top: 104px;
	padding-bottom: 64px;
	background: #fff;
}

.heading{
	display: flex;
	
	align-items: center;
}
.heading h2, .heading h1 {
   width: 100%;
    font-weight: 500;
    font-size: 45px;
    line-height: 120%;
    margin-bottom: 0px;
    color: #0B0635;
}
.heading>*:nth-child(2){
	width: 100%;
	padding-left: 50px;
	font-style: normal;
	font-weight: normal;
	font-size: 18px;
	line-height: 30px;
	/* or 167% */

	margin-bottom: 0px;
	color: #6E767C;
}
@media (max-width: 768px){
	.heading{
		flex-wrap: wrap;
		
	}
	.heading>*:nth-child(2){
		padding-left: 0px;
		margin-top: 30px;
	}
	.case-item .buttons a:not(:last-child){
		margin-bottom: 15px;
	}
}
img.xfieldimage.caseimg {
    border-radius: 5px;
    width: 478px;
    max-width: 100%;
}

.case-item{
	margin-bottom: 43px;
}
.case-item:first-child{
	margin-top: 59px;
}
.case-item:last-child{
	margin-bottom: 66px;
}

.case-item{
	flex-wrap: wrap;
	display: flex;
	align-items: flex-start;
	
}
.case-item .text {
    background: #FFFFFF;
    box-shadow: 7px 30px 87px rgba(199, 221, 239, 0.26);
    border-radius: 5px;
    margin-top: 10px;
    padding: 28px 38px;
	width: calc(100% - 478px);
}
.case-item .text h3{
	font-weight: 500;
	font-size: 24px;
	line-height: 27px;
	/* identical to box height, or 112% */

	margin-bottom: 28px;
	color: #000000;
}
.case-item .info{
	padding-left: 47px;
	position: relative;
}
.case-item .info:first-child {
    margin-bottom: 26px;
    border-bottom: 1px solid #e7e7e7;
    padding-bottom: 26px;
}
.case-item .info .icon {
    background: #F3C400;
	display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    text-align: center;
    border-radius: 50%;
	position: absolute;
	left: 0px;
	top: -5px;
}
.case-item .info h5{
	font-weight: 500;
font-size: 18px;
line-height: 27px;
/* identical to box height, or 150% */

margin-bottom: 0px;
color: #000000;
}
.case-item .info p{
	margin-bottom: 0px;
	font-size: 18px;
line-height: 27px;
/* or 150% */

text-transform: lowercase;

color: #000000;
}
.case-item .buttons{
	margin-top: 20px;
	
}
.btn-blue {
    font-weight: 500;
    font-size: 18px;
    line-height: 23px;
    text-align: center;
    border: 1px solid #594AD9;
    box-sizing: border-box;
    border-radius: 7px;
    color: #594AD9;
    padding: 20px 28px;
    display: inline-block;
	transition-duration: 0.2s;
	background-color: #fff;
}
.btn-blue:hover{
	background-color: #594AD9;
	color: #fff !important;
}

.btn-blue-dark{
	font-weight: 500;
    font-size: 18px;
    line-height: 23px;
    text-align: center;
    border: 1px solid #594AD9;
    box-sizing: border-box;
    border-radius: 7px;
    color: #fff;
    padding: 20px 28px;
    display: inline-block;
	background-color: #594AD9;
	transition-duration: 0.2s;
	
}
.btn-blue-dark:hover{
	background-color: #4237a0;
	color: #fff !important;
	
}
.case-item .info .icon svg{
	fill: #fff;
	height: 13px;
	
}
.res-item div:first-child{
	font-size: 45px;
	line-height: 27px;
	/* identical to box height, or 60% */

	text-transform: lowercase;
	margin-top: 25px;
	color: #000000;
	
}

.res-item div:last-child{
	font-size: 16px;
	line-height: 21px;
	text-transform: lowercase;
	margin-top: 17px;
	color: #000000;
}
.case .ogo{
	text-align: center;
	font-weight: 500;
	font-size: 24px;
	line-height: 31px;
	text-align: center;
	width: 946px;
	max-width: 100%;
	margin: 0 auto;
	color: #000000;
	margin-bottom: 33px;
}


.service {
    background: url(/uploads/bgs/bg1.webp) 0 5% no-repeat, url(/uploads/bgs/bg2.webp) 0 45% no-repeat, url(/uploads/bgs/bg3.webp) 0 95% no-repeat;
    padding-top: 79px;
    padding-bottom: 102px;
    background-color: #F7F9FB;
}

.service-item {
    background: #FFFFFF;
    box-shadow: 7px 30px 87px rgba(199, 221, 239, 0.26);
    border-radius: 5px;
    padding: 38px 42px 32px 42px;
	position: relative;
	margin-bottom: 49px;
	
}


.service-item-one {
    padding: 38px 42px 102px 42px;
	margin-bottom: 0px;
	height: 100%;
}

.service-item-one button{
	position: absolute;
    bottom: 30px;
}
.service .heading{
	margin-bottom: 54px;
}
.service-item .xfieldimage.icon {
    position: absolute;
    right: 32px;
    top: -18px;
}
.service-item h3{
	font-weight: 500;
	font-size: 24px;
	line-height: 27px;
	color: #000000;
	margin-bottom: 26px;
	padding-right: 80px;
}
.service-item p {
    font-weight: normal;
    font-size: 16px;
    line-height: 27px;
    color: #000000;
    padding-right: 38px;
}
.steps-item{
	margin-bottom: 31px;
}
.steps-item .text{
	position: relative;
	padding-left: 57px;
	font-size: 16px;
	line-height: 27px;
	/* identical to box height, or 169% */

	padding-right: 10px;
	color: #000000;
}



	
	
.service-item.fixed>.row>div:nth-child(2)::before {
    content: '';
    width: 1px;
    height: calc(100% + 80px);
    border-left: 3px solid #f3f7fa;
    position: absolute;
    left: 0px;
    top: -40px;
}
.service-item.fixed>.row>div:nth-child(2){
	padding-left: 35px;
}
.vertical{
	display: flex;
    flex-direction: column;
    
	
}
.steps-item .count {
    position: absolute;
    left: 0px;
    background: linear-gradient(180deg, #E1EFFF 0%, #BCD7F1 100%);
    font-weight: 500;
    font-size: 24px;
    line-height: 27px;
    color: #FFFFFF;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    top: -8px;
}
.uf-wrapper.service-form::before {
    position: absolute;
    content: url(../img/im02.png);
    right: -60px;
    bottom: 0px;
    z-index: 1;
}
.uf-wrapper.service-form{
	position: relative;
	z-index: 0;
}
.uf-wrapper.service-form .f-bg {
    position: absolute;
    z-index: -1;
   
    left: -1rem;
    overflow: hidden;
    top: -1rem;
    width: calc(100% + 2rem);
    height: calc(100% + 3rem);
}
.uf-wrapper.service-form .f-bg::before {
   background-image: linear-gradient(to bottom left, rgba(99, 112, 255, 0), rgba(107, 118, 252, 0.09), rgba(115, 123, 249, 0.18), rgba(123, 129, 247, 0.27), rgba(131, 135, 244, 0.36), rgba(139, 141, 241, 0.45), rgba(147, 146, 238, 0.55), rgba(155, 152, 235, 0.64), rgba(163, 158, 232, 0.73), rgba(171, 164, 230, 0.82), rgba(179, 169, 227, 0.91), rgb(187, 175, 224));
    position: absolute;
    content: '';
    width: 80%;
    height: 140%;
    top: -20%;
    right: -30%;
    transform: rotate(15deg);
}
.p-relative-2{
	position: relative;
	z-index: 2;
}



.uf-alert.uf-alert-success.p-relative-2 {
    color: #000;
}


.magnit{
	padding-top: 83px;
	padding-bottom: 99px;
	background-image: url(/uploads/bgs/bg134.webp);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}
.magnit .heading h2{
	width: 100%;
	max-width: 980px;
	color: #fff;
	font-style: normal;
	font-weight: normal;
	font-size: 40px;
	line-height: 65px;
	margin-bottom: 42px;
}

.magnit .form h3{
	font-style: normal;
	font-weight: normal;
	font-size: 18px;
	line-height: 23px;
	position: relative;
	color: #FFDA54;
	text-transform: uppercase;
	display: inline-block;
	margin-bottom: 11px;
}
.magnit .form h3::after{
	content: '';
	position: absolute;
	background: #24FF00;
	width: 5.2px;
	height: 5.2px;
	border-radius: 50%;
	right: -11px;
	top: -4px;
}

.magnit .form h3::before {
    width: 13px;
    right: -15px;
    top: -8px;
    height: 13px;
    position: absolute;
    content: '';
    border-radius: 50%;
    background: rgba(36, 255, 0, 0.17);
}
.magnit .form p{
	font-size: 18px;
	line-height: 30px;
	color: #FFFFFF;
	margin-bottom: 31px;
}
.magnit .form .btn-yellow {
    display: block;
    width: 100%;
    padding: 21px 0;
}

.about {
    padding-top: 115px;
    padding-bottom: 102px;
    background-image: url(/uploads/bgs/bg145.webp);
    background-repeat: no-repeat;
    background-position: right;
    background-size: 45% 100%;
}

.about .text{
	margin-top: 22px;
}
.about .text p{
	margin-bottom: 80px;
}
.about .foto{
	border-radius: 5px;
}
.about .about-item{
	min-height: 203px;
}
.about .about-item>div:nth-child(1){
		font-weight: 500;
font-size: 32px;
line-height: 36px;
/* identical to box height, or 102% */


color: #0B0635;
}
.about .about-item>div:nth-child(1) b{
	font-weight: 500;
font-size: 64px;
line-height: 65px;
/* identical to box height, or 102% */


color: #0B0635;
	
}
.about .about-item>div:nth-child(2){
	font-size: 18px;
line-height: 30px;
/* identical to box height, or 167% */


color: #404549;
margin-top: 22px;
	
}

.about .text2{
	font-size: 18px;
line-height: 30px;
/* or 167% */

margin-top: 47px;
color: #404549;
}



.about .team-item img{
	border-radius: 5px;
}
.about .team-item img+div {
    position: absolute;
    bottom: 0px;
    background: rgba(255, 200, 60, 0.78);
    padding: 11px 17px;
    width: calc(100% - 30px);
	border-radius: 0px 0px 5px 5px;
}
.about .team-item img+div>span:nth-child(1){
	font-weight: 500;
font-size: 16px;
line-height: 21px;
/* identical to box height */

display: block;
color: #FFFFFF
}
.about .team-item img+div>span:nth-child(2){
	font-weight: normal;
font-size: 14px;
line-height: 18px;
/* identical to box height */

margin-top: 3px;
color: #FFFFFF;
display: block;
}


.prem{
	background: #F7F9FB;
	padding-top: 118px;
	padding-bottom: 80px;
}

.prem-item .icon{
		margin-bottom: 32px;
}
.prem-item h5{
	font-weight: 500;
font-size: 18px;
line-height: 23px;

color: #0B0635;
margin-bottom: 15px;
}
.prem-item p{
	font-weight: normal;
font-size: 14px;
line-height: 22px;
/* or 157% */


color: #404549;
}

.ssteps{
	
	background-image: url(/uploads/bgs/bg1234.webp);
	padding: 85px 0px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}
.ssteps .item-heading{
	
	
}
.ssteps .item-heading h2{
	font-weight: 500;
font-size: 45px;
line-height: 55px;
/* or 122% */


color: #FFFFFF
}
.ssteps .item-heading p{
	margin-bottom: 39px;
	font-weight: normal;
font-size: 14px;
line-height: 22px;
/* identical to box height, or 157% */


color: #FFFFFF;
}
.ssteps .item{
	background: rgba(0, 14, 117, 0.94);
	border: 1px solid #2E3A92;
	box-sizing: border-box;
	color: #fff;
	position: relative;
	height: 100%;
	min-height: 383px;
	padding: 37px 40px 58px 40px;
}
.ssteps .item::before {
    counter-increment: heading;
    content: "0" counter(heading);
    position: absolute;
    font-weight: 300;
    font-size: 144px;
    line-height: 65px;
    color: #0E1B77;
    bottom: 20px;
    right: 5px;
    z-index: 0;
}
.ssteps .item .icon {
    margin-bottom: 35px;
    left: -54px;
    position: relative;
	z-index: 1;
}
.ssteps .item h4{
	font-weight: 500;
font-size: 24px;
line-height: 31px;
/* identical to box height */
position: relative;
	z-index: 1;
margin-bottom: 18px;
color: #FFFFFF;
}
.ssteps .item p{
	font-size: 14px;
line-height: 22px;
/* or 157% */
position: relative;
	z-index: 1;

color: #FFFFFF;
margin-bottom: 0px;
}

.slider{
	padding: 86px 0;
	background-image: url(/uploads/bgs/bg-line.webp);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	position: relative;
}
.slider .heading{
	margin-bottom: 51px;
}
.slider .swiper-slide{
	text-align: center;
	padding: 0 80px;
}

.smartphone {
    position: relative;
	padding: 6%;
}
.smartphone::after{
	content: '';
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	background-image: url(../img/bg-phone.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
	cursor: zoom-in;
}
.smartphone img {
    border-radius: 24px;
	max-width: 100%;
	max-height: 100%;
	cursor: zoom-in;
}
.slider .swiper-button-next,
.slider .swiper-button-prev{
	position: absolute;
	z-index: 2;
	top: calc(50% - 37px);
	cursor: pointer;
}
.slider .swiper-button-next{  
    right: 0px;  
}
.slider .swiper-button-prev{
    left: 0px;
}


.project{
	padding: 76px 0;
	background: #F7F9FB;
}
.project .heading h2{
	max-width: 1049px;
	width: 100%;
	margin-bottom: 46px;
}

.project .row>div{
	background-color: rgba(255, 255, 255, 0.94);
	border: 1px solid #DCE6EE;
	box-sizing: border-box;
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 172px;
	padding-top: 54px;
	padding-right: 40px;
}
.project .row>div:nth-child(1){
	background-image: url(../img/1123.jpg);
}
.project .row>div:nth-child(2){
	background-image: url(../img/1124.jpg);
}
.project h3{
	font-weight: normal;
font-size: 24px;
line-height: 27px;
/* or 112% */
margin-bottom: 49px;

color: #000000;
}

.project .items .item{
	margin-bottom: 16px;
	font-weight: normal;
font-size: 16px;
line-height: 27px;
/* or 169% */
padding-left: 55px;
position: relative;
color: #000000
}
.project .items .item:last-child{
	margin-bottom: 71px;
	
}
.project .items .item img {
    position: absolute;
    left: 0px;
    top: 7px;
}
.project .quote img {
    position: absolute;
    top: -15px;
}
.project .quote {
    background-image: url(../img/figure.jpg);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    position: relative;
    left: -32px;
    padding: 32px 40px 18px 32px;
    margin-bottom: 22px;
    width: calc(100% + 32px);
}

.project .items-2 .item{
	font-style: normal;
	font-weight: normal;
	font-size: 16px;
	line-height: 27px;
	color: #000000;
	position: relative;
	margin-bottom: 53px;
	padding-left: 18px;
	position: relative;
}

.project .items-2 .item::before{
	content: '';
	position: absolute;
	height: calc(100% - 20px);
	top: 10px;
	width: 3px;
	background: #594AD9;
	left: 0px;
	
	
}

.promo2 {
    padding-top: 103px;
    background-image: url(/uploads/bgs/bg3153.webp);
    background-size: cover;
    background-position: center -177px;
    background-repeat: no-repeat;
    padding-bottom: 130px;
    background-color: #f7f9fb;
}
.promo2 .heading h2 {
    margin-bottom: 64px;
    max-width: 890px;
}

.promo2 .form h3{
	font-style: normal;
	font-weight: normal;
	font-size: 18px;
	line-height: 23px;
	position: relative;
	color: #0AA82D;
	text-transform: uppercase;
	display: inline-block;
	margin-bottom: 11px;
}
.promo2 .form h3::after{
	content: '';
	position: absolute;
	background: #0AA82D;
	width: 5.2px;
	height: 5.2px;
	border-radius: 50%;
	right: -11px;
	top: -4px;
}

.promo2 .form h3::before {
    width: 13px;
    right: -15px;
    top: -8px;
    height: 13px;
    position: absolute;
    content: '';
    border-radius: 50%;
    background: rgba(10, 168, 45, 0.17)
}
.promo2 .form p{
	font-size: 18px;
	line-height: 30px;
	color: #000;
	margin-bottom: 31px;
}
.ogon{
	position: relative;
}
.ogon::after {
    content: url(../img/ogon.png);
    position: absolute;
   left: 100%;
    top: 0px;
}

img.xfieldimage.kniga {
    position: absolute;
    right: -150px;
    bottom: -130px;
    z-index: 1;
}
.promo2 .container::before {
    position: absolute;
    content: '';
    width: 90%;
    right: 0px;
    height: 137px;
    bottom: -90px;
    border: 20px solid #FFDA54;
    border-width: 0px 20px 20px 20px;
    box-sizing: border-box;
    border-radius: 0px 0px 10px 10px;
    z-index: 0;
}

.contacts{
	background: #F7F9FB;
	padding-bottom: 67px;
}
.contacts .block {
    background: #FFFFFF;
    border-radius: 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
	overflow: hidden;
}
.contacts .block .right{
	position: relative;
	
}

.text-photo {
    position: absolute;
    width: 100%;
    height: 100%;
    background: linear-gradient(180.08deg, rgba(255, 255, 255, 0) 50.11%, #1E1093 99.93%);
    bottom: 0px;
    padding: 32px 26px;
    display: flex;
    align-items: flex-end;
	
    flex-wrap: wrap;
/* or 271% */


color: #FFFFFF
}
.text-photo h5{
	font-weight: 500;
	font-size: 24px;
}
.text-photo span{
	font-weight: 500;
	font-size: 14px;
    display: block;
    margin-top: 13px;
	color: #FFFFFF;
}

.contacts .block .left {
    padding: 50px 0px 50px 76px;
}
.contacts .block .left h2{
	font-weight: 500;
font-size: 48px;
line-height: 62px;
/* identical to box height */
margin-bottom: 33px;
letter-spacing: 0.025em;

color: #1B2334;
}
.contacts .block .left .icon{
	margin-right: 16px;
}
.contacts-footer>div{
	font-weight: 500;
font-size: 18px;
line-height: 23px;
margin-bottom: 38px;
color: #000000;
}
.qes {
    margin-top: 38px;
}
.qes h3{
	font-weight: 500;
font-size: 36px;
line-height: 46px;
letter-spacing: 0.025em;

color: #1B2334;
}
.qes p{
	font-size: 24px;
line-height: 30px;
/* identical to box height, or 125% */


color: #000000;
}

footer{
	padding: 48px 0;
}


footer .logo{
	max-height: 47px;
    max-width: 70%;
}


footer .menu li a{
	font-size: 18px;
	color: #000;
	margin-right: 49px;
}
footer .menu li:last-child a{
	margin-right: 0px;
}
footer .phone{
	
	font-weight: 500;
	height: 77px;
}

footer .phone>a>span:nth-child(2) {
    border: 1px solid #594AD9;
    border-radius: 50%;
	padding: 16px 18px;
}

.menu ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
}
.menu ul li{
	list-style: none;
    padding: 0;
    margin: 0;
}
.menu ul li a{
	
}

section.speedbar {
    background-color: #030e5f;
    color: #fff;
    padding: 130px 0 30px 0;
    text-transform: uppercase;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
section.speedbar a{
	color: #fff;
	font-weight: 500;
}
span.sep {
    margin: 0 15px;
}

section.fullcase {
    position: relative;
    background-image: url(/uploads/bgs/bg3.webp);
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
	min-height: 100vh;
}
section.fullcase .caseimg {
    position: absolute;
    right: 0;
    top: 0;
    z-index: -1;
    opacity: 0.2;
    max-width: 50%;
    border-radius: 0;
}

 table {
    margin-bottom: 60px;
    border: 1px solid #dedede;
}
table thead{
	
}
table thead th {
    font-size: 24px;
    text-transform: uppercase;
    padding: 20px 20px;
    background-color: rgb(248 217 113 / 16%);
    border-bottom: 1px solid #dedede;
}
table tr{
	
}
table tr:nth-child(2n) {
    background-color: #efefef;
}
table td {
    padding: 20px 20px;
    border: 1px solid #dedede;
    background-color: rgb(255 255 255 / 62%);
}

.xfieldimage.mobileimg {
    max-height: 630px;
    border-radius: 20px;
}
.mmm {
    width: max-content;
    position: relative;
    display: block;
    margin: 0 auto;
    padding: 51px 21px 10px 21px;
    text-align: center;
    display: flex;
    justify-content: center;
}
.mmm span {
    background-image: url("/uploads/bgs/iphone.webp");
    display: block;
    position: absolute;
    height: 100%;
    width: 100%;
    z-index: 1;
    top: 0;
    background-size: 100% 100%;
}

.xfieldimage.mobileimgbg {
    position: absolute;
    right: 0;
    z-index: -1;
    opacity: 0.2;
    top: 20%;
    right: -10%;
}


.statistics table{
	margin-bottom: 0px;
}

@media (max-width: 768px){
	.case-item .text {
		padding: 10px;
	}
	.statistics table{
		margin-bottom: 0px;
	}
	.statistics table td, .statistics table th {
		padding: 10px;
		font-size: 12px;
	}
	.case-item .xfieldimage.caseimg {
		margin-bottom: 30px;
		width: 100%;
		max-width: 478px;
	}
	.case-item .buttons {
		padding-left: 0 !important;
		margin-bottom: 20px;
	}
}

.port-table .table-header{
	font-size: 24px;
    text-transform: uppercase;
    padding: 20px 20px;
    background-color: rgb(248 217 113 / 16%);
    border-bottom: 1px solid #dedede;
}

.uf-inline-loading {
	height: 400px;
	background: ;		
}
.uf-inline-loading {
	margin: 40px auto;
	font-size: 10px;
	position: relative;
	text-indent: -9999em;
	border-top: 1.1em solid rgba(155, 207, 230, .3);
	border-right: 1.1em solid rgba(155, 207, 230, .3);
	border-bottom: 1.1em solid rgba(155, 207, 230, .3);
	border-left: 1.1em solid #4b9fc5;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-animation: ufLoading 1.1s infinite linear;
	animation: ufLoading 1.1s infinite linear;
}
.uf-inline-loading,
.uf-inline-loading:after {
	border-radius: 50%;
	width: 10em;
	height: 10em;
}

@-webkit-keyframes ufLoading {
	0% {
		-webkit-transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
	}
	}
	@keyframes ufLoading {
	0% {
		-webkit-transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
	}
}
@keyframes ufLoading {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
	}
	@keyframes ufLoading {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

	
a.sp-link {
    display: flex;
    border: 1px solid #594ad9;
    border-radius: 5px;
    padding: 15px 17px;
    align-items: center;
    background-color: #1b00ff0f;
    font-size: 20px;
}
a.sp-link svg {
    width: 42px;
    height: 42px;
    fill: #ffda57;
}
a.sp-link span {
    width: calc(100% - 42px - 20px);
    margin-left: 20px;
}

svg[data-dismiss=modal] {
    width: 20px;
    position: absolute;
    right: 20px;
	z-index: 9999;
	cursor: pointer;
}





.wbdcheckbox {
    font-size: 12px;
    display: flex;
    align-items: baseline;
    text-align: left;
}
.wbdcheckbox input {
    appearance: none;
    width: 10px !important;
    height: 10px;
    border: 1px solid #ccc;
    border-radius: 0px;
    cursor: pointer;
    position: relative;
    transition: background 0.2s;
    margin-right: 10px;
    padding: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.wbdcheckbox input::after{
	content: "✓";
    color: white;
    
    font-size: 12px;
	opacity: 0;
	visibility: hidden;
}
.wbdcheckbox input:checked {
  background-color: rgba(93,142,255,1);
  border-color: rgba(93,142,255,1);
}

.wbdcheckbox input:checked::after {
    opacity: 1;
	visibility: visible;
}

.wbdcheckbox a{
	color: inherit;
	text-decoration: underline;
}
.wbdcheckbox a:hover{
	color: rgba(93,142,255,1);
}
