@import url("fonts/stylesheet.css");

input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
input:-webkit-autofill:active {
    /*-webkit-box-shadow: 0 0 0 30px white inset !important;*/
    transition: all 5000s ease-in-out;
    background: rgba(0,0,0,0);
    background-color: rgba(0,0,0,0);
} 
input:-webkit-autofill {
    -webkit-text-fill-color: #fff !important;
}



body {
	font-family: 'Gilroy', sans-serif;
	color: #222233;
	background: #fff;
	font-size: 14px;
	font-weight: 400;
}

html.no_scroll,
body.no_scroll {
	overflow: hidden;
}

body::-webkit-scrollbar,
::-webkit-scrollbar {
	width: 10px;
	height: 5px;
}
body::-webkit-scrollbar-thumb,
::-webkit-scrollbar-thumb {
	background-color: #336DCD;
	border-radius: 10px;
}
body::-webkit-scrollbar-track,
::-webkit-scrollbar-track {
	background-color: #F1F7FF;
}

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

.clr { clear: both; }

a {
	text-decoration: none;
}
a.block_full {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

input, textarea {
	outline:none;
	padding: 0 30px;
}
textarea {
	padding: 20px 30px;
}
textarea:focus, 
input:focus, 
select:focus {
	outline: none;
	outline-offset: 0;
}
textarea::-moz-focus-inner,
input::-moz-focus-inner {
	outline: none;
	outline-offset: 0;
}
::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color: #fff;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
   color: #fff;
   opacity:  1;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
   color: #fff;
   opacity:  1;
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
   color: #fff;
}
::-ms-input-placeholder { /* Microsoft Edge */
   color: #fff;
}
::placeholder { /* Most modern browsers support this now. */
   color: #fff;
}


h1 {
	font-size: 80px;
	line-height: 80px;
	font-weight: 900;
}
h1.page {
	background: var(--unnamed, linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%));
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	leading-trim: both;
	text-edge: cap;
	font-size: 50px;
	font-weight: 800;
	line-height: 58px; /* 116% */
}
h2 {
	font-size: 50px;
	line-height: 58px;
	font-weight: 900;
}
h2.white {
	color: #fff
}
h2.tac {
	text-align: center;
}
h2.mb50 {
	margin-bottom: 50px;
}
h3 {
	font-size: 30px;
	line-height: 36px;
	font-weight: 700;
}
h4 {
	font-size: 20px;
	line-height: normal;
	font-weight: 700;
}
.subtext {
	font-size: 20px;
	line-height: 28px;
	font-weight: 500;
}
p {
	font-size: 18px;
	line-height: 26px;
	font-weight: 500;
	margin-bottom: 10px;
}

.pb100 {
	margin-bottom: 100px;
}

.btnBlue {
	display: inline-flex;
	height: 50px;
	padding: 0px 40px;
	justify-content: center;
	align-items: center;
	flex-shrink: 0;
	border-radius: 10px;
	background: var(--unnamed, linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%));
	box-shadow: 0px 4px 20px -4px #5AA1FF;
	color: var(--unnamed, #FFF);
	text-align: center;
	leading-trim: both;
	text-edge: cap;
	font-size: 14px;
	font-family: Gilroy;
	font-style: normal;
	font-weight: 600;
	line-height: 14px;
	letter-spacing: 1.4px;
	text-transform: uppercase;
	transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
	cursor: pointer;
}
.btnBlue:hover {
	background: linear-gradient(45deg, #5BA1FF 0%, #336DCD 49.76%, #5BA1FF 100%);
	box-shadow: 0px 4px 20px -4px #5AA1FF;
}

.content_in {
	width: 1072px;
	margin: 0 auto;
}

.btnBorder {
	display: inline-flex;
	height: 50px;
	padding: 0px 40px;
	justify-content: center;
	align-items: center;
	flex-shrink: 0;
	border-radius: 10px;
	border: 2px solid var(--unnamed, #F1F7FF);
	box-shadow: 0px 4px 20px -4px #5AA1FF;
	color: var(--unnamed, #FFF);
	text-align: center;
	leading-trim: both;
	text-edge: cap;
	font-size: 14px;
	font-family: Gilroy;
	font-style: normal;
	font-weight: 600;
	line-height: 14px;
	letter-spacing: 1.4px;
	text-transform: uppercase;
	background: rgba(241, 247, 255, 0.0);
	transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
	cursor: pointer;
}
.btnBorder:hover {
	border-radius: 10px;
	border: 2px solid var(--unnamed, #F1F7FF);
	background: rgba(241, 247, 255, 0.10);
	box-shadow: 0px 4px 20px -4px #5AA1FF;
}







header {
	width: 100%;
	height: 80px;
	border-radius: 0px 0px 20px 20px;
	background: var(--unnamed, #F1F7FF);
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	padding: 0 80px;
	position: sticky;
    top: 0;
    z-index: 50;
}
header .logo {
	width: 100px;
	height: 50px;
	margin: 0 20px 0 0;
}
header nav ul {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
}
header nav ul li a {
	leading-trim: both;
	text-edge: cap;
	line-height: normal;
	background: linear-gradient(136.24deg, #336DCD 0%, #5BA1FF 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
    font-weight: 600;
}
header a.phone {
	height: 17px;
	line-height: 17px;
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	margin: 0 20px 0 20px;
}
header a.phone img {
	margin-right: 6px;
	float: left;
}
header a.mail {
	height: 17px;
	line-height: 17px;
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	margin: 0 20px 0 auto;
}
header a.mail img {
	margin-right: 6px;
	float: left;
}



section {
	width: 100%;
}
section.main {
	height: 720px;
}
section.main .bg {
	position: absolute;
	top: 0;
	right: 0;
	width: 50%;
	height: 100%;
	border-radius: 0px 0px 50px 0px;
	overflow: hidden;
}
section.main .bg:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, #fff 0%, transparent 80%)
}
section.main .bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: top center;
}
section.main .content_in {
	height: 100%;
}
section.main .main_text {
	width: 690px;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}
section.main .main_text h1 {
	color: var(--unnamed, #3F7DCF);
	leading-trim: both;
	text-edge: cap;
	margin-bottom: 33px;
}
section.main .main_text .subtext {
	margin-bottom: 90px;
}
section.main .main_text .count {
	display: flex;
	flex-wrap: wrap;
	gap: 60px;
	border-radius: 0 20px 20px 0;
	background: rgba(241, 247, 255, 0.70);
	backdrop-filter: blur(5px);
	width: 660px;
	height: 110px;
	margin-bottom: 60px;
	align-items: center;
}
section.main .main_text .count:before {
	content: '';
	position: absolute;
	width: 200%;
	height: 100%;
	left: -200%;
	top: 0;
	background: rgba(241, 247, 255, 0.70);
	backdrop-filter: blur(5px);
}
section.main .main_text .count .num {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	color: var(--unnamed, #3F7DCF);
	leading-trim: both;
	text-edge: cap;
	font-size: 40px;
	font-weight: 700;
	line-height: normal;
	gap: 10px;
}
section.main .main_text .count .num .text {
	color: var(--unnamed, #3F7DCF);
	leading-trim: both;
	text-edge: cap;
	font-size: 16px;
	line-height: 18px;
	font-weight: 400;
}


section.work .content_in {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
section.work .content_in .img {
	width: 536px;
	height: 400px;
	flex-shrink: 0;
	border-radius: 50px;
	overflow: hidden;
}
section.work .content_in .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
section.work .content_in .text {
	display: flex;
	padding: 50px 40px 50px 60px;
	flex-direction: column;
	align-items: flex-start;
	border-radius: 20px 0 0 20px;
	background: rgba(241, 247, 255, 0.70);
	backdrop-filter: blur(5px);
	margin-left: -60px;
}
section.work .content_in .text h3 {
	color: var(--unnamed, #3F7DCF);
	leading-trim: both;
	text-edge: cap;
	margin-bottom: 30px;
}
section.work .content_in .text .check {
	height: 25px;
	line-height: 25px;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 10px;
}


section.problem {
	padding: 100px 0;
}
section.problem h2 {
	margin-bottom: 50px;
}
section.problem .blocks {
	width: 100%;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 8px;
}
section.problem .blocks .block {
	width: 262px;
	height: 130px;
	border-radius: 20px;
	background: var(--unnamed, #F1F7FF);
	overflow: hidden;
	display: flex;
	padding: 40px 60px 0 30px;
	align-items: flex-start;
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	font-size: 20px;
	font-weight: 600;
	line-height: 22px;
}
section.problem .blocks .block:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 20px;
	background: url("../img/block-problem.svg") center no-repeat;
	z-index: 5;
}
section.problem .blocks .block img {
	position: absolute;
	bottom: 10px;
	right: 30px;
}

section.use {
	padding: 100px 0;
	border-radius: 50px;
	background: var(--unnamed, #F1F7FF);
}
section .two_text {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	margin-bottom: 50px;
	width: 100%;
}
section .two_text.fs {
	align-items: flex-start;
}
section .two_text .subtext {
	margin-bottom: 5px;
}
section.use .blocks_use {
	width: 100%;
	display: flex;
	justify-content: flex-end;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 8px;
	flex: 1 0 0;
}
section.use .blocks_use .block {
	width: 262px;
	height: 100px;
	border-radius: 20px;
	overflow: hidden;
	background: #fff;
}
section.use .blocks_use .block img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

section.improve {
	width: 100%;
	padding: 100px 0;
}
section.improve .block_full {
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	gap: 8px;
}
section.improve .block_full .img {
	width: 352px;
    height: 910px;
    /* aspect-ratio: 352/450; */
    border-radius: 20px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 8px;
}
section.improve .block_full .img img {
    width: 352px;
    height: 450px;
    border-radius: 20px;
    object-fit: cover;
}
section.improve .block_full .img .img.top {
    width: 352px;
    height: 278px;
    border-radius: 20px;
}
section.improve .block_full .img .img.top img {
    width: 352px;
    height: 450px;
    border-radius: 20px;
    object-fit: cover;
}

section.improve .block_full .text_img {
	width: calc(100% - 360px);
	height: 100%;
	display: flex;
	flex-direction: column;
}
section.improve .block_full .text_img h2 {
	margin-bottom: 40px;
}
section.improve .block_full .text_img .subtext {
    width: calc(100% - 20px);
	margin-bottom: 50px;
}
section.improve .block_full .text_img .imgs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
section.improve .block_full .text_img .imgs img {
	border-radius: 20px;
}


section.process {
	width: 100%;
	padding: 80px 0;
	border-radius: 50px;
	background: var(--unnamed, linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%));
}
section.process .two_text {
	color: #fff;
	margin-bottom: 50px;
}
section.process .blocks {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
section.process .blocks .block {
	width: 208px;
	height: 260px;
	padding: 30px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 20px;
	border-radius: 20px;
	background: var(--unnamed, #F1F7FF);
}
section.process .blocks .block img {
	width: 35px;
	height: 35px;
}
section.process .blocks .block .ttl {
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	font-size: 18px;
	font-weight: 700;
	line-height: 20px; 
}
section.process .blocks .block p {
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	font-size: 14px;
	font-weight: 400;
	line-height: 18px;
}

section.reviews {
	width: 100%;
	padding: 100px 100px;
}
section.reviews h2 {
	margin-bottom: 50px;
}
.a1 { grid-area: f; }
.a2 { grid-area: s; }
.a3 { grid-area: m; }
section.reviews .reviews {
	width: 100%;
	aspect-ratio: 1352/501;
	margin-top: 72px;
	display: grid;
	grid-template-columns: 66% 34%;
	grid-template-rows: 50% 50%;
    grid-template-areas: "f s"
                         "f m"; 
}
section.reviews .reviews.revers {
	grid-template-columns: 34% 66%;
	grid-template-rows: 50% 50%;
    grid-template-areas: "s f"
                         "m f"; 
}


/**/


section.reviews .reviews iframe {
	aspect-ratio: 1352/501;
	width: 100%;
	height: 100%;
}
section.reviews .reviews .review {
	display: flex;
	border-radius: 30px;
	background: #F1F7FF;
	overflow: hidden;
}
section.reviews .reviews .review.active:after {
	display: none;
}
section.reviews .reviews .review.big {
	/*width: calc(66% - 15px);*/
	width: calc(100% - 15px);
	aspect-ratio: 891/501;
}
section.reviews .reviews .review.big:nth-child(2){
    /*width: calc(34% - 15px);*/
    width: calc(100% - 15px);
}
section.reviews .reviews .review.big:nth-child(3){
    /*width: calc(34% - 15px);*/
    width: calc(100% - 15px);
}
section.reviews .reviews .review.big:after {
    display: none;
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	background: url(/assets/img/ico-play.svg) center no-repeat;
	z-index: 10;
}
section.reviews .reviews .block_small {
	display: flex;
	width: calc(34% - 15px);
	flex-direction: column;
	row-gap: 30px;
}
section.reviews .reviews .block_small .review.small {
	max-width: 100%;
	aspect-ratio: 431/235;
}
section.reviews .reviews .block_small .review.small:after {
    display: none;
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	background: url(/assets/img/ico-play-small.svg) center no-repeat;
	z-index: 10;
}

section.reviews .reviews .review .text {
	display: flex;
	width: 50%;
	height: 100%;
	padding: 60px 0 0 60px;
	flex-direction: column;
	justify-content: flex-start;
}
section.reviews .reviews.revers .review.big:nth-child(1) .text,
section.reviews .reviews.revers .review.big:nth-child(3) .text,
section.reviews .reviews .review.big:nth-child(2) .text,
section.reviews .reviews .review.big:nth-child(3) .text,
section.reviews .reviews .review.small .text {
	padding: 20px 0 0 30px;
}
section.reviews .reviews.revers .review.big:nth-child(2) .text .name,
section.reviews .reviews .review.big .text .name {
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	font-size: 30px;
	font-weight: 700;
	line-height: 36px; /* 120% */
	margin-bottom: 40px;
}
section.reviews .reviews.revers .review.big:nth-child(2) .text .rev,
section.reviews .reviews .review.big .text .rev {
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	font-size: 20px;
	font-weight: 500;
	line-height: 28px; /* 140% */
}
section.reviews .reviews.revers .review.big:nth-child(1) .text .name,
section.reviews .reviews.revers .review.big:nth-child(3) .text .name,
section.reviews .reviews .review.big:nth-child(2) .text .name,
section.reviews .reviews .review.big:nth-child(3) .text .name,
section.reviews .reviews .review.small .text .name {
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	font-size: 16px;
	font-weight: 600;
	line-height: 20px; /* 120% */
	margin-bottom: 20px;
}
section.reviews .reviews.revers .review.big:nth-child(1) .text .rev,
section.reviews .reviews.revers .review.big:nth-child(3) .text .rev,
section.reviews .reviews .review.big:nth-child(2) .text .rev,
section.reviews .reviews .review.big:nth-child(3) .text .rev,
section.reviews .reviews .review.small .text .rev {
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	font-size: 12px;
	font-weight: 400;
	line-height: normal;
}

section.reviews .reviews .review .img {
	width: 50%;
	height: calc(100% + 140px);
    margin-top: -70px;
}
section.reviews .reviews .review .img:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, #F1F7FF 0%, rgba(241, 247, 255, 0.00) 80%);
	z-index: 2;
}
section.reviews .reviews .review .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

section.zoom {
	width: 100%;
	height: 839px;
	padding: 100px 0;
	background: url("../img/maps-new.svg") center no-repeat;
	background-size: 100% 800px;
}

section.certificates {
	width: 100%;
	padding: 100px 0;
	border-radius: 50px;
	background: var(--unnamed, #F1F7FF);
}
section.certificates h2 {
	margin-bottom: 40px;
}
section.certificates .subtext {
	margin-bottom: 50px;
}
section.certificates #sliders.cert {
	width: calc(100% - 40px);
	height: calc(565px + 50px + 14px);
/*	padding: 0 20px;*/
	margin: 0 auto;
}
section.certificates #sliders.cert .arrow_left {
	position: absolute;
	width: 62px;
	height: 31px;
	top: calc(50% - 35px);
	left: -62px;
	cursor: pointer;
	z-index: 1;
}
section.certificates #sliders.cert .arrow_right {
	position: absolute;
	width: 62px;
	height: 31px;
	top: 50%;
	right: -62px;
	cursor: pointer;
	z-index: 1;
}
section.certificates #sliders.cert .scroll {
	width: 100%;
	height: 565px;
	margin-bottom: 50px;
	display: flex;
	overflow: hidden;
	cursor: grab;
}
section.certificates #sliders.cert .scroll.start {
	padding-left: calc(50% - 200px);
	padding-right: calc(50% - 200px);
}
section.certificates #sliders.cert .scroll .img {
	width: 278px;
	height: 393px;
	aspect-ratio: 400/565;
	margin: auto 20px;
	transition: all 0.2s linear;
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
}
section.certificates #sliders.cert .scroll .img.active {
	width: 400px;
	height: 565px;
	aspect-ratio: 400/565;
	margin: auto 20px;
}
section.certificates #sliders.cert .scroll .img.prev {
	width: 278px;
	height: 393px;
	aspect-ratio: 400/565;
	margin: auto 0 auto 20px;
}
section.certificates #sliders.cert .scroll .img.next {
	width: 278px;
	height: 393px;
	aspect-ratio: 400/565;
	margin: auto 20px auto 0;
}
section.certificates #sliders.cert .scroll .img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
section.certificates #sliders .pagen {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 20px;
}
section.certificates #sliders .pagen .circ {
    width: 14px;
    height: 14px;
    background: var(--unnamed, linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%));
    border-radius: 14px;
    cursor: pointer;
    transition: all 0.2s linear;
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
}
section.certificates #sliders .pagen .circ.active {
    background: #fff;
    width: 82px;
    border: 1px solid #336DCD;
}
section.certificates #sliders .startImg {
    position: absolute;
    top: 0;
    left: 20px;
    width: 278px;
    height: calc(100% - 50px);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s linear;
	-webkit-transition: all 0.3s linear;
    -moz-transition: all 0.3s linear;
    -o-transition: all 0.3s linear;
    opacity: 1;
    pointer-events: none;
}
section.certificates #sliders .stopImg {
    position: absolute;
    top: 0;
    right: 20px;
    width: 278px;
    height: calc(100% - 50px);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s linear;
	-webkit-transition: all 0.3s linear;
    -moz-transition: all 0.3s linear;
    -o-transition: all 0.3s linear;
    opacity: 1;
    pointer-events: none;
}
section.certificates #sliders .startImg img,
section.certificates #sliders .stopImg img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
section.certificates #sliders .startImg.na {
    opacity: 0;
}
section.certificates #sliders .stopImg.na {
    opacity: 0;
}
/**/

section.clients {
	width: 100%;
	padding: 100px 0;
}
section.clients .two_text {
	margin-bottom: 50px;
}
section.clients .blocks {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
section.clients .blocks .block {
	width: 208px;
	height: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
}
section.clients .blocks .block img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
section.clients .blocks .block.end {
	border-radius: 20px;
	/*border: 1px dashed #336DCD; /*linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%);*/
	background: var(--unnamed, linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%));
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	leading-trim: both;
	text-edge: cap;
	font-size: 16px;
	font-weight: 500;
	line-height: 28px; /* 175% */
}
section.clients .blocks .block.end:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url("../img/client-border.svg") center no-repeat;
	background-size: cover;
}

section.price {
	width: 100%;
	padding: 60px 0;
	border-radius: 50px;
	background: var(--unnamed, linear-gradient(90deg, #336DCD 0%, #5BA1FF 50%));
	overflow: hidden;
}
section.price:after {
	content: '';
	position: absolute;
	right: 0;
	top: 0;
	width: 50%;
	height: 100%;
	background: url("../img/techno.png") no-repeat center;
	background-size: cover;
	z-index: 1;
}
section.price:before {
	content: '';
	position: absolute;
	right: 0;
	top: 0;
	width: 50%;
	height: 100%;
	background: linear-gradient(to right, #5BA1FF 5%, rgba(0,0,0,0) 30%);
	background-size: cover;
	z-index: 2;
}
section.price span {
    font-size: 13px;
}
section.price span a {
    color: #fff;
}
section.price .text {
	display: flex;
	flex-wrap: wrap;
}
section.price .text .left {
	width: 50%;
	color: #fff;
}
section.price .text .left h3,
section.price .text .left .subtext {
	margin-bottom: 30px;
}
section.price .text .right {
	width: 50%;
	display: flex;
	justify-content: flex-end;
	align-items: flex-end;
	text-align: right;
	z-index: 3;
}
section.price .text .right h3 {
	background: var(--unnamed, linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%));
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

section.serv {
	width: 100%;
	padding: 100px 0;
}
section.serv .blocks {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	column-count: 2;
}
section.serv .blocks .block {
	width: 532px;
	padding: 30px;
	border-radius: 20px;
	background: var(--unnamed, #F1F7FF);
}
section.serv .blocks .block .ttl {
	background: var(--unnamed, linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%));
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	leading-trim: both;
	text-edge: cap;
	font-size: 30px;
	font-weight: 700;
	line-height: 36px; /* 120% */
	margin-bottom: 20px;
}
section.serv .blocks .block p {
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	font-size: 14px;
	font-weight: 400;
	line-height: 18px; /* 128.571% */
}

section.why {
	width: 100%;
	padding: 100px 0;
	background: url("../img/why-bg.jpg") center no-repeat;
	background-size: cover;
	border-radius: 50px;
}
section.why h2 {
	margin-bottom: 50px;
}
section.why .blocks {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
section.why .blocks .block {
	width: 352px;
	height: 200px;
	padding: 30px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: flex-start;
	gap: 20px;
	border-radius: 20px;
	background: rgba(241, 247, 255, 0.70);
	backdrop-filter: blur(20px);
}
section.why .blocks .block .ttl {
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	font-size: 18px;
	font-weight: 700;
	line-height: 20px; /* 111.111% */
}
section.why .blocks .block p {
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	font-size: 14px;
	font-weight: 400;
	line-height: 18px; /* 128.571% */
}


section.about {
	width: 100%;
    padding: 90px 0;
    background: url(../img/dlya-razdela-o-nas-zareznov-dmitrij-profil.jpg) left calc(50% + 550px) center no-repeat;
    background-size: contain;
}
section.about:after {
    content: '';
    position: absolute;
    background: linear-gradient(0deg, #fff 0%, transparent 80%);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
section.about h1 {
	margin-bottom: 45px;
	z-index: 1;
}
section.about p {
	max-width: 805px;
	z-index: 1;
}
section.about p.author {
	width: 100%;
	max-width: 100%;
	text-align: right;
	z-index: 1;
}


section.team {
	width: 100%;
	padding: 100px 0;
	border-radius: 50px;
	background: var(--unnamed, #F1F7FF);
}
section.team.bgn {
	background: none;
}
section.team h2 {
	margin-bottom: 40px;
}
section.team p {
	margin-bottom: 50px;
}
section.team .blocks {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 50px;
}
section.team .blocks .block {
	width: 262px;
	border-radius: 20px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
}
section.team .blocks .block img {
    filter: grayscale(1);
}
section.team .blocks .block .info {
	width: 100%;
	padding: 20px 0px 20px 30px;
	margin-top: -38px;
	border-radius: 20px;
	background: var(--unnamed, linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%));
	backdrop-filter: blur(5px);
	color: #fff;
}
section.team .blocks .block .info .ttl {
	leading-trim: both;
	text-edge: cap;
	font-size: 20px;
	font-weight: 700;
	line-height: normal;
}
section.team .blocks .block .info .rev {
	leading-trim: both;
	text-edge: cap;
	font-size: 12px;
	font-weight: 500;
	line-height: normal;
}
section.team .video {
	width: 100%;
	aspect-ratio: 1167/520;
	cursor: pointer;
	border-radius: 20px;
	overflow: hidden;
}
section.team .video img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: blur(8px);
}
section.team .video:after {
    display: none;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url("../img/ico-play.svg") center no-repeat;
	pointer-events: none;
}
section.team .video.active:after {
	display: none;
}
section.team .video h3 {
	position: absolute;
	margin: 50px 0 0 50px;
	z-index: 1;
}
section.team .video.active iframe {
	width: 100%;
	height: auto;
	aspect-ratio: 1167/520;
}

section.uslugi {
	width: 100%;
	padding: 100px 0;
}
section.p50 {
    padding: 50px 0 !important;
}
section.uslugi h1 {
	margin-bottom: 45px;
}
section.uslugi h3 {
	margin: 100px 0 50px 0;
}
section.uslugi .blocks {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
section.uslugi .blocks .block {
	width: 262px;
	height: 262px;
	border-radius: 20px;
	overflow: hidden;
}
section.uslugi .blocks .block img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
section.uslugi .blocks .block .text {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 20px 30px 20px 30px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	background: url("../img/uslugi-block-bg.svg") top center no-repeat;
}
section.uslugi .blocks .block .text p {
	color: var(--unnamed, #FFF);
	leading-trim: both;
	text-edge: cap;
	font-size: 20px;
	font-weight: 600;
	line-height: 22px;
	width: calc(100% - 20px);
	margin: 0;
}
section.uslugi .blocks .block .text a {
	width: 20px;
	height: 20px;
}

section.main.page .main_text .count {
	margin-top: 95px;
}

section.slider {
	width: 100%;
	padding: 100px 0;
	border-radius: 50px;
	background: var(--unnamed, #F1F7FF);
}
section.slider.nbg {
	background: none;
}
section.slider h2 {
	margin-bottom: 50px;
}
section.slider #sliders {
	width: 100%;
}
section.slider #sliders .img_full {
	width: 100%;
	height: 500px;
	margin-bottom: 50px;
	border-radius: 20px;
	cursor: grab;
/*	overflow: hidden;*/
}
section.slider #sliders .img_full img {
	border-radius: 20px;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
section.slider #sliders .img_full .arrow_left {
	position: absolute;
	top: calc(50% - 15px);
	left: -60px;
	width: 60px;
	height: 30px;
	cursor: pointer;
}
section.slider #sliders .img_full .arrow_right {
	position: absolute;
	top: calc(50% - 15px);
	right: -60px;
	width: 60px;
	height: 30px;
	cursor: pointer;
}
section.slider #sliders .img_mini {
	display: flex;
    /* flex-wrap: wrap; */
    align-items: center;
    justify-content: flex-start;
    overflow: auto;
    padding-bottom: 10px;
    gap: 20px;
}
section.slider #sliders .img_mini .img {
	width: 100px;
	height: 100px;
	flex-shrink: 0;
	border-radius: 20px;
	overflow: hidden;
	cursor: pointer;
}
section.slider #sliders .img_mini .img.active:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 7px solid #336DCD;
	border-radius: 20px;
	z-index: 1;
}
section.slider #sliders .img_mini .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

section.text2c {
	width: 100%;
	margin-top: -50px;
	margin-bottom: 50px;
}
section.text2c .blocks {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
}
section.text2c .blocks .text1 {
	width: 764px;
}
section.text2c .blocks .text2 {
	width: 268px;
}
section.text2c .blocks .text2 .ttl {
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	font-size: 20px;
	font-weight: 700;
	line-height: normal;
}

section.text {
	width: 100%;
	padding: 100px 0;
}

section.calc {
	width: 100%;
	padding: 100px 0;
}
section.calc .two_text {
	margin-bottom: 40px;
}
section.calc .object {
	display: flex;
	width: 100%;
	padding: 80px;
	flex-direction: column;
	align-items: flex-start;
	gap: 30px;
	align-self: stretch;
	border-radius: 20px;
	background: var(--unnamed, #F1F7FF);
}
section.calc .object .small {
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	font-size: 14px;
	font-weight: 400;
	line-height: 18px;
}
section.calc .object .blocks {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
section.calc .object .blocks .block {
	width: 262px;
	height: 262px;
	border-radius: 20px;
	overflow: hidden;
}
section.calc .object .blocks .block img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
section.calc .object .blocks .block .text {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 40px 30px 40px 30px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	background: url("../img/uslugi-block-bg.svg") top center no-repeat;
}
section.calc .object .blocks .block .text p {
	color: var(--unnamed, #FFF);
	leading-trim: both;
	text-edge: cap;
	font-size: 20px;
	font-weight: 600;
	line-height: 22px;
	width: calc(100% - 20px);
	margin: 0;
}
section.calc .object .blocks .block .text a {
	width: 20px;
	height: 20px;
}

section.how {
	width: 100%;
	padding: 100px 0;
	border-radius: 50px;
	overflow: hidden;
	background: url("../img/how-bg-new.jpg") center top no-repeat;
	background-size: cover;
}
section.how h2 {
	margin-bottom: 50px;
}
section.how .blocks {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 50px;
}
section.how .blocks .block {
	display: flex;
	width: 262px;
	height: 200px;
	padding: 30px;
	flex-direction: column;
	align-items: flex-start;
	gap: 20px;
	border-radius: 20px;
	background: rgba(241, 247, 255, 0.70);
	backdrop-filter: blur(20px);
}
section.how .blocks .block .ttl {
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	font-size: 18px;
	font-weight: 700;
	line-height: 20px;
}
section.how .blocks .block p {
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	font-size: 14px;
	font-weight: 400;
	line-height: 18px;
}
section.how .step {
	width: 100%;
	padding-top: 30px;
	padding-left: 30px;
	padding-right: 30px;
	padding-bottom: 10px;
	border-radius: 20px;
	background: rgba(241, 247, 255, 0.70);
	backdrop-filter: blur(20px);
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: flex-start;
	gap: 20px;
	margin-bottom: 8px;
}

section.rev_text {
	width: 100%;
	padding: 100px 0;
	border-radius: 50px;
	background: var(--unnamed, #F1F7FF);
}
section.rev_text h2,
section.rev_text .subtext {
	margin-bottom: 40px;
}
section.rev_text #sliders {
	width: 100%;
	display: flex;
	flex-direction: column;
}
section.rev_text #sliders .arrow_left {
	position: absolute;
	width: 62px;
	height: 31px;
	top: calc(50% - 45px);
	left: -60px;
	cursor: pointer;
}
section.rev_text #sliders .arrow_right {
	position: absolute;
	width: 62px;
	height: 31px;
	top: calc(50% - 45px);
	right: -60px;
	cursor: pointer;
}
section.rev_text #sliders .scroll {
	/*width: 982px;*/
	width: 1072px;
    height: 534px;
    margin-bottom: 50px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    overflow: hidden;
	transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
}
section.rev_text #sliders .block_rev {
    width: 100%;
	display: inline-flex;
	padding: 50px;
	align-items: flex-start;
	gap: 50px;
	border-radius: 40px;
	background: var(--unnamed, linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%));
/*	margin-right: 50px;*/
	transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
	cursor: grab;
}
section.rev_text #sliders .block_rev.na {
	opacity: 0;
}
section.rev_text #sliders .block_rev .text {
	display: flex;
	width: 644px;
	flex-direction: column;
	overflow-y: auto;
    height: calc(100% - 0px);
}
section.rev_text #sliders .block_rev .text .ttl {
	color: var(--unnamed, #FFF);
	leading-trim: both;
	text-edge: cap;
	font-size: 20px;
	font-weight: 700;
	line-height: normal;
	margin-bottom: 30px;
}
section.rev_text #sliders .block_rev .text p {
	color: var(--unnamed, #FFF);
	leading-trim: both;
	text-edge: cap;
	font-size: 18px;
	font-weight: 500;
	line-height: 26px;
}
section.rev_text #sliders .block_rev .img {
	width: 278px;
	height: 430px;
	border-radius: 20px;
	overflow: hidden;
}
section.rev_text #sliders .block_rev .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
section.rev_text #sliders .pagen {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 20px;
}
section.rev_text #sliders .pagen .circ {
	width: 14px;
	height: 14px;
	background: var(--unnamed, linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%));
	border-radius: 14px;
	cursor: pointer;
	transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
}
section.rev_text #sliders .pagen .circ.active {
	background: #fff;
	width: 82px;
	border: 1px solid #336DCD;
}

section.uslugi .filters {
	width: 70%;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 50px 0 50px 0;
}
section.uslugi .filters .filter {
	display: flex;
	padding: 20px 30px;
	justify-content: center;
	align-items: center;
	border-radius: 20px;
	border: 1px solid var(--unnamed, #23314A);
	cursor: pointer;
}
section.uslugi .filters .filter img {
	display: none;
	margin-left: 10px;
	cursor: pointer;
}
section.uslugi .filters .filter.active {
	background: var(--unnamed, linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%));
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	border: 1px solid #336DCD;
	cursor: auto;
}
section.uslugi .filters .filter.active img {
	display: block;
}
section.uslugi .blocks.c2 .block {
	width: 352px;
	height: 400px;
}
section.uslugi .blocks.c2 .block .text {
	background: rgba(241, 247, 255, 0.80);
	padding: 15px 30px;
	flex-direction: column;
	flex-wrap: nowrap;
	align-items: flex-start;
	gap: 10px;
}
section.uslugi .blocks.c2 .block .text .ttl {
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	font-size: 20px;
	font-weight: 700;
	line-height: normal;
}
section.uslugi .blocks.c2 .block .text p {
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	font-size: 14px;
	font-weight: 500;
	line-height: 20px;
}

section.uslugi .filters.mt50 {
	margin-top: 50px;
}
section.uslugi .filters.mb100 {
	margin-bottom: 100px;
}
section.uslugi .filters.w100 {
	width: 100%;
}
section.uslugi .filters .text {
	line-height: 26px;
	font-size: 18px;
	display: flex;
	align-items: center;
	background: var(--unnamed, linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%));
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
section.uslugi .filters .filter {
	font-size: 18px;
}
section.uslugi .filters .filter span {
	background: var(--unnamed, linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%));
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	margin-left: 10px;
}
section.uslugi .block_bz {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin-bottom: 10px;
}
section.uslugi .block_bz .img {
	width: 50%;
	height: 250px;
	border-radius: 20px;
	overflow: hidden;
}
section.uslugi .block_bz .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
section.uslugi .block_bz .text {
	margin-left: -100px;
	width: calc(50% + 100px);
	padding: 30px 60px 30px 30px;
	border-radius: 20px;
	background: var(--unnamed, #F1F7FF);
	display: flex;
	flex-direction: column;
/*	align-items: center;*/
	gap: 20px;
}
section.uslugi .block_bz .text .ttl {
	leading-trim: both;
	text-edge: cap;
	font-size: 20px;
	font-weight: 700;
	line-height: normal;
	background: var(--unnamed, linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%));
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
section.uslugi .block_bz .text p {
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	font-size: 14px;
	font-weight: 500;
	line-height: 20px;
}
section.uslugi .block_bz .text .date {
	position: absolute;
	transform: rotate(90deg);
	right: 0px;
	top: calc(50% - 10px);
	text-align: center;
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	font-size: 12px;
	font-weight: 500;
	line-height: 20px;
}

section.uslugi.mb0 {
	margin-bottom: 0;
	padding-bottom: 0;
}

section.uslugi h3.mt40 {
	margin: 40px 0 0 0;
}

section.rev_text.mini {
	padding-top: 0;
	background: #fff;
}

section#map {
	width: 100%;
	height: 800px;
	border-radius: 50px;
	overflow: hidden;
}
section#map .content_in {
	padding: 70px 0;
	height: 100%;
	z-index: 2;
	pointer-events: none;
}
section#map .content_in .info {
	display: flex;
	width: 536px;
	padding: 50px;
	flex-direction: column;
	align-items: flex-start;
	gap: 30px;
	flex-shrink: 0;
	border-radius: 40px;
	background: rgba(241, 247, 255, 0.30);
	box-shadow: 20px 20px 30px 0px rgba(146, 168, 198, 0.30), 0px 0px 100px 0px #FFF inset;
	backdrop-filter: blur(15px);
	pointer-events: auto;
}
section#map .content_in .info .line {
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
section#map .content_in .info .line .ttl {
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	font-size: 20px;
	font-weight: 700;
	line-height: normal;
}
section#map .content_in .info .line a,
section#map .content_in .info .line p {
	color: var(--unnamed, #23314A);
	leading-trim: both;
	text-edge: cap;
	font-size: 18px;
	font-weight: 500;
	line-height: 26px;
	margin: 0;
}
section#map .content_in .info .line a.mail {
	text-decoration: underline;
}

ymaps.ymaps-2-1-79-map {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	filter: grayscale(1);
	-ms-filter: grayscale(1);
	-webkit-filter: grayscale(1);
	-moz-filter: grayscale(1);
	-o-filter: grayscale(1);
}


section.main.object {
	height: 454px;
}
section.object .main_text {
	justify-content: center;
	gap: 40px
}
section.object .main_text h1,
section.object .main_text h3 {
	margin: 0;
}

section.text2c.mt0 {
	margin-top: 0;
	margin-bottom: 0;
	padding: 100px 0;
}
section.text2c.bg {
	border-radius: 50px;
	background: var(--unnamed, linear-gradient(180deg, #C8DFFF 0%, #EDF3FF 100%));
}
section.text2c.mt0 h2 {
	margin-bottom: 35px;
}
section.text2c.mt0 .problem_img {
	width: 100%;
	height: auto;
	margin: 50px 0;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
section.text2c.mt0 .problem_img .img {
	width: 532px;
	height: 500px;
	padding: 30px;
	display: flex;
	align-items: flex-end;
	justify-content: flex-start;
	border-radius: 20px;
	overflow: hidden;
}
section.text2c.mt0 .problem_img .img img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
section.text2c.mt0 .problem_img .img .text {
    width: calc(100% + 60px);
    margin-left: -30px;
    margin-right: -30px;
    margin-bottom: -30px;
	padding: 20px 30px;
	border-radius: 20px;
	background: var(--unnamed, linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%));
	backdrop-filter: blur(5px);
	font-size: 18px;
	color: #fff;
	z-index: 2;
}

section.example {
	width: 100%;
	padding: 100px 0;
	border-radius: 50px;
	background: var(--unnamed, #F1F7FF);
}
section.example h2 {
	margin-bottom: 50px;
}
section.example .ex_img {
	width: 100%;
	height: 500px;
	margin: 50px 0;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
section.example .ex_img .img {
	width: 352px;
	height: 100%;
	padding: 30px;
	display: flex;
	align-items: flex-end;
	justify-content: flex-start;
	border-radius: 20px;
	overflow: hidden;
}
section.example .ex_img .img img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
section.example .ex_img .img .text {
    width: calc(100% + 60px);
    margin-left: -30px;
    margin-right: -30px;
    margin-bottom: -30px;
	padding: 20px 30px;
	border-radius: 20px;
	background: var(--unnamed, linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%));
	backdrop-filter: blur(5px);
	font-size: 18px;
	color: #fff;
	z-index: 2;
}

section.text2c .ex_img {
	width: 100%;
	height: 350px;
	margin: 50px 0;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
section.text2c .ex_img .img {
	width: 352px;
	height: 100%;
	padding: 30px;
	display: flex;
	align-items: flex-end;
	justify-content: flex-start;
	border-radius: 20px;
	overflow: hidden;
}
section.text2c .ex_img .img img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
section.text2c .ex_img .img .text {
    width: calc(100% + 60px);
    margin-left: -30px;
    margin-right: -30px;
    margin-bottom: -30px;
	padding: 20px 30px;
	border-radius: 20px;
	background: var(--unnamed, linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%));
	backdrop-filter: blur(5px);
	font-size: 18px;
	color: #fff;
	z-index: 2;
}

section.uslugi h3.mt0 {
	margin-top: 0;
}

section.p404 {
    width: 100%;
    padding: 90px 0 150px 0;
    background: url(/assets/img/bg404.png) top -20px right no-repeat;
    background-size: contain; 
    margin-top: 0;
    
}
section.p404 .num404 {
    leading-trim: both;
    text-edge: cap;
    font-variant-numeric: ordinal;
    font-size: 500px;
    font-weight: 800;
    margin-bottom: 70px;
    background: linear-gradient(90deg, #336DCD 0%, rgba(91, 161, 255, 0.00) 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    /*backdrop-filter: blur(10px);*/
}
section.p404 .text404 {
    color: var(--unnamed, #23314A);
    leading-trim: both;
    text-edge: cap;
    font-size: 30px;
    font-weight: 700;
    line-height: 36px; /* 120% */
}
section.p404 .text404 a {
    background: var(--unnamed, linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%));
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    leading-trim: both;
    text-edge: cap;
}

section.main .main_text .info {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    height: 53px;
    line-height: 53px;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    color: #23314A;
}
section.main .main_text .info .tags {
    padding: 0 30px;
    border-radius: 20px;
    border: 1px solid var(--unnamed, #23314A);
}

section.article img {
    max-width: 100%;
}






section.form {
	padding: 70px 0;
	border-radius: 50px;
	background: var(--unnamed, linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%));
}
section.form .content_in {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
}
section.form .content_in .text {
	color: #fff;
	display: flex;
	flex-direction: column;
	gap: 30px;
}
section.form .content_in .text p {
	font-size: 12px;
	font-weight: 300;
}
section.form .content_in .text p a {
	color: #fff;
	text-decoration: underline;
}
section.form .content_in form {
	width: 496px;
}
section.form .content_in form input.enter {
	width: 100%;
	height: 45px;
	line-height: 45px;
	background: rgba(0,0,0,0.0);
	border: none;
	padding: 0;
	border-bottom: 2px solid var(--unnamed, #FFF);
/*	box-shadow: 0px 5px 10px 0px rgba(34, 34, 34, 0.10) inset;*/
	margin-bottom: 15px;
	color: #fff;
}
section.form .content_in form input.enter.error {
    border-bottom: 2px solid var(--unnamed, #FF645A);
}
section.form .content_in form input.btnBorder {
	width: 100%;
	margin-top: 15px;
}

form input {
	width: 100%;
}
form input.enter {
    width: 100%;
    height: 45px;
    line-height: 45px;
    background: none;
    border: none;
    padding: 0;
    border-bottom: 2px solid var(--unnamed, #FFF);
    /* box-shadow: 0px 5px 10px 0px rgba(34, 34, 34, 0.10) inset; */
    margin-bottom: 15px;
    color: #fff;
}
form input.enter.error {
    border-bottom: 2px solid var(--unnamed, #FF645A);
}

section ul,
section ol {
    margin: 50px 0;
}
section ul li,
section ol li {
    /*display: inline-block;*/
    font-size: 18px;
    list-style: disc;
    /*padding-left: 15px;*/
    margin-left: 20px;
    margin-bottom: 10px;
    line-height: normal;
}


footer {
	width: 100%;
	height: 300px;
	padding: 50px 80px;
	border-radius: 50px;
	background: var(--unnamed, #23314A);
}
footer .line {
	width: 100%;
	height: 50px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
footer .logo {
	width: 100px;
	height: 50px;
	margin: 0 20px 0 0;
}
footer nav ul {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
}
footer nav ul li a {
	leading-trim: both;
	text-edge: cap;
	line-height: normal;
	background: var(--unnamed, linear-gradient(180deg, #C8DFFF 0%, #EDF3FF 100%));
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
footer a.phone {
	color: var(--unnamed, #3F7DCF);
	leading-trim: both;
	text-edge: cap;
	font-size: 16px;
	font-weight: 400;
	line-height: normal;
	margin: 0 0px 0 auto;
}
footer a.phone img {
	margin-right: 6px;
	float: left;
}
footer .copy {
	margin-top: 40px;
	color: var(--unnamed, #3F7DCF);
	leading-trim: both;
	text-edge: cap;
	font-size: 14px;
	font-weight: 400;
	line-height: normal;
}


section#wrap {
    position: fixed;
    display: none;
    border-radius: 0;
    background: linear-gradient(45deg, rgba(51, 109, 205, 0.80) 0%, rgba(91, 161, 255, 0.80) 100%);
    justify-content: center;
    align-items: center;
    z-index: 99999999;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

}
section#wrap.active {
    display: flex;
}
section#wrap .content_in {
    padding: 70px 0;
    border-radius: 50px;
    background: var(--unnamed, linear-gradient(45deg, #336DCD 0%, #5BA1FF 100%));
    width: calc(100% - 160px);
    margin: auto;
    flex-direction: column;
    align-content: center;
    overflow: hidden;
}
section#wrap .content_in .close {
    position: absolute;
    top: 50px;
    right: 50px;
    width: 40px;
    height: 40px;
    cursor: pointer;
    z-index: 10;
}
section#wrap .content_in .content_after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
    padding: 100px 140px;
    display: none;
    flex-wrap: wrap;
    align-items: center;
    gap: 50px;
}
section#wrap .content_in .content_after.active {
    display: flex;
}
section#wrap .content_in .content_after .left {
    width: 360px;
}
section#wrap .content_in .content_after .left h2 {
    margin-bottom: 40px;
}
section#wrap .content_in .content_after .right {
    width: calc(100% - 410px);
    height: 100%;
    justify-content: flex-end;
    display: flex;
}
section#wrap .content_in .content_after .right .video {
    height: 100%;
    aspect-ratio: 720/435;
    cursor: pointer;
    border-radius: 20px;
    overflow: hidden;
}
section#wrap .content_in .content_after .right .video:after {
    display: none;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../img/ico-play.svg) center no-repeat;
    pointer-events: none;
}
section#wrap .content_in .content_after .right .video.active:after {
    display: none;
}
section#wrap .content_in .content_after .right .video img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
section#wrap .content_in .content_after .right .video iframe {
    width: 100%;
    height: 100%;
}

/*
section.start {
    padding-top: 80px !important;
}
*/


#quiz {
    position: fixed;
    top: 361px;
    left: -111px;
    transform: rotate(-90deg);
    z-index: 1000;
}

header.mobile,
#mobile_menu {
    display: none;
}

@media only screen and (min-device-width: 320px) and (max-device-width: 1140px) {
    #quiz {
        display: none;
    }
    section#wrap {
        padding: 0;
    }
    section#wrap .content_in {
        margin: 10px;
        padding: 70px 20px 40px 20px;
        flex-direction: column;
        width: 100%;
        border-radius: 20px;
    }
    section#wrap .content_in .close {
        top: 20px;
        right: 20px;
    }
    section#wrap .content_in .content_after {
        padding: 70px 20px 40px 20px;
        flex-direction: column;
        gap: 20px;
    }
    section#wrap .content_in .content_after .left,
    section#wrap .content_in .content_after .right {
        width: 100%;
        height: auto;
    }
    section#wrap .content_in form {
        width: 100%;
    }
    
    header {
        display: none;
    }
    
    .content_in {
        width: 100%;
    }
    
    header.mobile {
        display: flex;
        width: 100%;
        height: 60px;
        flex-wrap: wrap;
        align-items: center;
        padding: 0;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 100;
    }
    header.mobile .logo {
        width: 80px;
        height: 40px;
        margin: 0 auto 0 20px;
    }
    header.mobile .logo img {
        width: 100%;
        height: 100%;
    }
    header.mobile .burger {
        width: 40px;
        height: 40px;
        margin: 0 20px 0 20px;
        display: flex;
        flex-direction: column;
    }
    header.mobile #quiz_mobile {
        width: 50px;
        height: 50px;
        padding: 0;
        margin: 0 0 0 auto;
    }
    
    #mobile_menu {
        display: flex;
        position: fixed;
        width: 80vw;
        height: calc(100vh - 60px);
        top: 60px;
        right: -80vw;
        background: #F1F7FF;
        z-index: 500;
        padding: 50px 20px;
        transition: all 0.2s linear;
    	-webkit-transition: all 0.2s linear;
        -moz-transition: all 0.2s linear;
        -o-transition: all 0.2s linear;
    }
    #mobile_menu.active {
        right: 0;
    }
    #mobile_menu nav {
        width: 100%;
    }
    #mobile_menu ul {
        display: flex;
        flex-direction: column;
        width: 100%;
    }
    #mobile_menu ul li {
        width: 100%;
        text-align: center;
        margin-bottom: 30px;
    }
    #mobile_menu ul li a {
        font-size: 20px;
        color: #3F7DCF;
        font-weight: 600;
    }
    
    section.main {
        padding: 20px;
        margin-top: 60px;
    }
    
    section.main .main_text h1 {
        font-size: 38px;
        line-height: normal;
        text-transform: uppercase;
    }
    section.main .bg {
        width: 100%;
        height: 50%;
        border-radius: 0;
    }
    section.main.object .bg {
        border-radius: 0;
    }
    section.main .bg:after {
        background: linear-gradient(0deg, #fff 0%, transparent 80%);
    }
    section.main.object .bg:after {
        background: linear-gradient(0deg, #fff 0%, transparent 80%), linear-gradient(90deg, #fff 0%, transparent 80%);
    }
    section.main .main_text {
        width: 100%;
    }
    section.main .main_text .subtext {
        margin-bottom: 35px;
    }
    
    section.main .main_text .count {
        width: 100%;
        margin-bottom: 0;
        gap: 30px;
        justify-content: space-between;
    }
    section.main .main_text .count .num {
        flex-direction: column;
        font-size: 30px;
        align-items: flex-start;
    }
    section.main .main_text .count .num .text {
        font-size: 12px;
        line-height: normal;
        font-weight: 400;
    }
    section.main .main_text .count .num .text br {
    	/*content: ' ';*/
    }
    
    section.work .content_in .img {
        width: 100%;
    }
    
    section.work .content_in .text {
        width: 100%;
        padding: 20px;
        margin-left: 0;
        margin-top: -145px;
        flex-direction: inherit;
        flex-wrap: wrap;
        display: block;
    }
    section.work .content_in .text h3 {
        font-size: 18px;
        line-height: normal;
        width: 40%;
        float: left;
        margin-right: 20px;
    }
    
    section.work .content_in .text .check {
        font-size: 14px;
        margin-bottom: 0;
    }
    section.work .content_in .text .check img {
        display: none;
    }
    
    h2 {
        font-size: 28px;
        font-weight: 800;
        line-height: normal;
    }
    .subtext {
        font-size: 12px;
    }
    
    section.problem {
        padding: 50px 20px;
    }
    section.problem .blocks .block {
        width: calc(50% - 8px);
        padding: 20px 20px 0 20px;
        font-size: 16px;
    }
    
    section.form {
        padding: 50px 20px;
        border-radius: 20px;
    }
    
    section .two_text .subtext {
        width: 100%;
    }
    
    section.use {
        padding: 50px 20px;
        border-radius: 20px;
    }
    section.use .blocks_use {
        justify-content: flex-start;
    }
    section.use .blocks_use .block {
        width: calc(50% - 8px);
        height: 70px;
    }
    
    section.improve {
        padding: 50px 20px;
    }
    section.improve .block_full {
        flex-direction: column;
    }
    section.improve .block_full .text_img {
        width: 100%;
    }
    section.improve .block_full .text_img .subtext {
        font-size: 14px;
        line-height: 22px;
        margin-bottom: 30px;
    }
    section.improve .block_full .text_img .imgs {
        width: 100%;
    }
    section.improve .block_full .text_img .imgs img {
        width: 100%;
        height: 300px;
        object-fit: cover;
    }
    section.improve .block_full .img {
        width: 100%;
        aspect-ratio: 1/1;
        height: 600px;
        flex-direction: column-reverse;
        overflow: hidden;
    }
    section.improve .block_full .img .img.top {
        width: 100%;
        overflow: hidden;
    }
    section.improve .block_full .img img {
        width: 100%;
        height: 300px;
    }
    section.improve .block_full .img .img.top img {
        width: 100%;
    }
    
    section.process {
        padding: 50px 20px;
        border-radius: 20px;
    }
    section.process .blocks .block {
        /*
        width: calc(50% - 8px);
        padding: 15px 10px;
        */
        width: 100%;
        height: auto;
        padding: 20px;
    }
    section.process .blocks .block p {
        word-break: break-word;
    }
    
    section.reviews {
        padding: 50px 20px;
    }
    section.reviews .reviews {
        display: flex;
        flex-direction: column;
    }
    section.reviews .reviews .review.big:nth-child(2),
    section.reviews .reviews .review.big:nth-child(3),
    section.reviews .reviews .review.big {
        width: 100%;
        margin-bottom: 30px;
    }
    section.reviews .reviews .block_small {
        width: 100%;
    }
    section.reviews .reviews .review.big .text {
        padding: 15px 15px;
        width: calc(50% - 25px);
        margin-right: 25px;
        word-break: break-word;
    }
    section.reviews .reviews .review.big .text .name {
        font-size: 16px;
        line-height: 120%;
    }
    section.reviews .reviews .review.big .text .rev {
        font-size: 16px;
    }
    
    section.zoom {
        padding: 50px 20px;
        height: 400px;
    }
    
    section.clients {
        padding: 50px 20px;
    }
    section.clients .blocks .block {
        width: calc(50% - 8px);
    }
    section.clients .blocks .block img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }
    section.clients .blocks .block.end:after {
        background-size: contain;
    }
    
    section.price {
        padding: 50px 20px;
        border-radius: 20px;
    }
    section.price:before {
        width: 100%;
        background: #5BA1FF;
    }
    section.price .text {
        flex-direction: column;
        z-index: 50;
    }
    section.price .text .left {
        width: 100%;
    }
    section.price .text .right {
        width: 100%;
    }
    section.price .text .right h3 {
        margin-top: 30px;
        font-size: 20px;
        -webkit-text-fill-color: #fff;
    }
    
    section.serv {
        padding: 50px 20px;
    }
    
    section.why {
        padding: 50px 20px;
        border-radius: 20px;
    }
    section.why .blocks .block {
        width: 100%;
        height: auto;
    }
    
    section.team .video {
        aspect-ratio: 16/9;
    }
    section.team .video.active iframe {
        aspect-ratio: 16/9;
    }
    section.team .video h3 {
        position: absolute;
        bottom: 20px;
        width: 100%;
        text-align: center;
        margin: 0;
    }
    section.team .video img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    
    footer {
        padding: 50px 20px;
        border-radius: 20px;
        height: auto;
    }
    footer .line {
        flex-direction: column;
        height: auto;
    }
    
    footer nav ul {
        flex-direction: column;
        margin-top: 30px;
        margin-bottom: 30px;
    }
    footer nav ul li a {
        font-size: 18px;
    }
    footer a.phone {
        margin: 20px auto;
        font-size: 18px;
    }
    footer .copy {
        text-align: center;
    }
    
    
    section.uslugi {
        padding: 100px 20px 50px 20px;
    }
    section.uslugi h1 {
        font-size: 40px;
        margin-bottom: 30px;
        line-height: 120%;
    }
    section.uslugi h3 {
        font-size: 30px;
        margin: 30px 0;
    }
    section.uslugi .blocks .block {
        margin-left: auto;
        margin-right: auto;
    }
    
    section.about {
        padding: 100px 20px 50px 20px;
        background: url(../img/about.png) right -150px top 60px no-repeat;
    }
    section.about h1 {
        font-size: 40px;
        margin-bottom: 30px;
        line-height: 120%;
    }
    section.about .content_in {
        padding-top: 400px;
    }
    
    section.team {
        padding: 50px 20px;
        border-radius: 20px;
    }
    section.team .blocks .block {
        width: calc(50% - 8px);
    }
    section.team .blocks .block img {
        width: 100%;
    }
    
    section.certificates {
        padding: 50px 20px;
        border-radius: 20px;
    }
    
    section.certificates #sliders.cert .arrow_right,
    section.certificates #sliders.cert .arrow_left {
        display: none;
    }
    section.certificates #sliders.cert .scroll.start {
        padding-left: 0;
        padding-right: 0;
    }
    
    section.certificates #sliders.cert .scroll .img.active {
        width: calc(100% - 40px);
    }
    section.certificates #sliders.cert .scroll .img.active img {
        object-fit: contain;
    }
    
    section.uslugi .blocks.c2 .block {
        width: 100%;
    }
    
    section.rev_text #sliders .arrow_left,
    section.rev_text #sliders .arrow_right{
        display: none;
    }
    section.rev_text #sliders .scroll {
        /*min-width: calc(100vw * 1);*/
        width: 100%;
        height: auto;
    }
    section.rev_text #sliders .block_rev {
        flex-direction: column-reverse;
        display: flex;
        width: calc(100vw - 40px);
        min-width: calc(100vw - 40px);
        max-width: calc(100vw - 40px);
        height: auto;
        padding: 10px;
        gap: 20px;
        border-radius: 20px;
    }
    section.rev_text #sliders .block_rev .text {
        width: 100%;
    }
    section.rev_text #sliders .block_rev .img {
        width: 100%;
    }
    section.rev_text #sliders .block_rev .text p {
        font-size: 16px;
    }
    
    section.uslugi .block_bz {
        flex-wrap: nowrap;
        flex-direction: column;
        margin-bottom: 30px;
    }
    section.uslugi .block_bz .img {
        width: 100%;
    }
    section.uslugi .block_bz .text {
        margin-left: 0;
        width: calc(100% - 40px);
        margin-top: -100px;
    }
    
    section#map {
        height: 1000px;
    }
    section#map .content_in {
        padding: 0;
    }
    section#map .content_in .info {
        padding: 20px;
        width: 100%;
    }
    section#map .content_in .info .btnBlue {
        width: 100%;
    }
    
    section.main.page {
        height: auto;
    }
    
    section.slider {
        padding: 50px 0;
        border-radius: 20px;
    }
    
    section.text2c,
    section.text2c.mt0 {
        margin: 0;
        padding: 50px 20px;
    }
    section.text2c.mt0 .problem_img {
        height: auto;
    }
    section.text2c.mt0 .problem_img .img {
        width: 100%;
        height: auto;
        aspect-ratio: 1/1;
    }
    
    section.calc {
        padding: 50px 20px;
    }
    
    section.how {
        padding: 50px 20px;
        border-radius: 20px;
    }
    section.how .blocks .block {
        width: 100%;
    }
    section.how .step {
        border-radius: 20px;
    }
    
    section.rev_text {
        padding: 50px 20px;
        border-radius: 20px;
    }
    
    
    section.text {
        padding: 50px 20px;
    }
    
    section.serv .blocks .block {
        width: 100%;
    }
    
    section.example {
        padding: 50px 20px;
    }
    section.example .ex_img,
    section.text2c .ex_img {
        height: auto;
    }
    section.example .ex_img .img,
    section.text2c .ex_img .img {
        width: 100%;
        height: auto;
        aspect-ratio: 1/1;
    }
    section.slider.nbg {
        padding: 50px 20px;
    }
    section.slider #sliders .img_full .arrow_left,
    section.slider #sliders .img_full .arrow_right {
        display: none;
    }
    
    section.calc .object {
        padding: 20px;
    }
    
    section.slider #sliders .img_full {
        height: 300px;
    }
    section.p50 {
        padding: 50px 20px !important;
    }
    
    section.start {
        padding-top: 80px !important;
    }
    
}





















































