*::-webkit-input-placeholder {
	color: rgba(116,132,148, .53);
	opacity: 1;
}
*:-moz-placeholder {
	color: rgba(116,132,148, .53);
	opacity: 1;
}
*::-moz-placeholder {
	color: rgba(116,132,148, .53);
	opacity: 1;
}
*:-ms-input-placeholder {
	color: rgba(116,132,148, .53);
	opacity: 1;
}

body input:focus:required:invalid,
body textarea:focus:required:invalid {
	
}
body input:required:valid,
body textarea:required:valid {
	
}
body {
	font-family: 'DM Sans', sans-serif;
	font-size: 16px;
	line-height: 1.3;
	color: rgb(7,30,87);
	overflow-x: hidden;
	margin: 0;
	background-color: #fff;
}
button {
	cursor: pointer;
}
button, input, optgroup, select, textarea {
	font-family: inherit;
}
input {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}
button,
textarea,
input.text,
input[type="text"],
input[type="button"],
input[type="submit"] {
  -webkit-appearance: none;
}
*:link, 
*:visited, 
*:hover, 
*:focus,
*:active {
	outline: 0;
	-webkit-tap-highlight-color: transparent;
}
a, button, input, img {
	transition: all 0.3s;
}
h1,h2,h3,h4,h5,h6 {
	padding: 0;
	margin: 0;
	font-weight: normal;
}
.wrapper {
	overflow: hidden;
}
a {
	text-decoration: none;
	outline: none;
}
* {
	outline: none !important;
}
ul {
	padding: 0;
	margin: 0;
}
ul li {
	list-style-type: none;
	outline: none;
}
img {
	outline: none;
	display: block;
}
p {
	padding: 0;
	margin: 0;
}
form {
	margin: 0;
}
.header {
	padding: 20px 0;
	background-color: rgba(231, 244, 253, 1);
}
.header__wrapper {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.logo img {
	width: 143px;
}
.header__buttons {
	gap: 10px;
	display: flex;
	align-items: center;
}
.btn-main {
	padding: 0 42px;
	height: 50px;
	font-weight: 400;
	font-size: 16px;
	border-radius: 5px;
    line-height: 1.8;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	border: none;
	color: #fff;
	font-family: "Roboto";
	background-color: rgba(18, 146, 238, 1);
}
.btn-main.btn-main_page:hover,
.btn-main:hover {
	color: #fff;
	background: rgb(7,30,87);
}
.btn-main.btn-main_page:hover img {
	filter: brightness(0) invert(1);
}
.header__buttons .btn-main {
	height: 45px;
	padding: 0 22px;
	font-size: 15px;
	font-weight: 700;
	border-radius: 8px;
	box-shadow: 0px 5px 10px 0px rgba(7,30,87, 0.25);
}
.header__buttons .btn-main img {
	width: 16px;
	margin-right: 10px;
}
.header__buttons .btn-main:not(.btn-main_page) img {
	filter: brightness(0) invert(1);
}
.btn-main.btn-main_page {
	color: rgb(18,146,238);
	background: #fff;
}

.billbord {
	padding-top: 10px;
	padding-bottom: 50px;
	background-color: rgba(231, 244, 253, 1);
	position: relative;
	z-index: 1;
}
.title-big {
	font-size: 57px;
	margin-bottom: 10px;
	line-height: 1.3;
	font-weight: 700;
	letter-spacing: -1px;
	text-align: center;
	color: rgb(7,30,87);
}
.descr-big {
	margin-bottom: 10px;
	text-align: center;
	line-height: 1.7;
	color: rgb(116,132,148);
}
.btn-main.btn-main_transparent {
	color: rgba(7,30,87, 1);
    border: 1px solid rgba(7,30,87, 1);
	background: transparent;
	box-shadow: none;
}
.btn-main.btn-main_transparent:hover {
	color: rgb(18,146,238);
	border-color: rgb(18,146,238);
}
.billbord__button .btn-main {
	font-size: 16px;
	padding: 0 44px;
	height: 63px;
	font-weight: 700;
	letter-spacing: 0.5px;
}
.billbord__button {
	text-align: center;
}
.billbord__image {
	margin: -54px -40px -115px 0px;
	position: relative;
	z-index: -1;
}
.billbord__image img {
	max-width: 100%;
	height: auto;
	display: block;
	margin: 0 auto;
}
.item-billbord {
	padding: 15px;
	padding-left: 25px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-radius: 15px;
}
.item-billbord__icon {
	width: 60px;
	height: 60px;
	margin-left: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0px 0px 10px -5px rgba(0, 0, 0, .8);
	border-radius: 10px;
	flex: none;
}
.item-billbord__icon img {
	width: 24px;
	height: auto;
	filter: brightness(0) invert(1);
}
.item-billbord__title {
	font-size: 19px;
    line-height: 1.6;
    font-weight: 600;
	font-weight: 700;
	color: rgb(7,30,87);
	letter-spacing: -1px;
	display: block;
}
.item-billbord__text {
	font-size: 14px;
    line-height: 1.4;
    font-weight: 400;
    letter-spacing: 0px;
	color: rgb(116,132,148);
	display: block;
}
.item-billbord_1 {
    background-color: rgba(222,161,255, .2);
}
.item-billbord_1 .item-billbord__icon {
    background-color: rgba(222,161,255, 1);
}
.item-billbord_2 {
    background-color: rgba(247,199,76, .2);
}
.item-billbord_2 .item-billbord__icon {
    background-color: rgba(247,199,76, 1);
}
.item-billbord_3 {
    background-color: rgba(46,211,125, .2);
}
.item-billbord_3 .item-billbord__icon {
    background-color: rgba(18,146,238, 1);
}
.item-billbord_1:hover {
    background-color: rgba(222,161,255, .45);
}
.item-billbord_2:hover {
    background-color: rgba(247,199,76, .45);
}
.item-billbord_3:hover {
    background-color: rgba(46,211,125, .45);
}
.row_billbord {
	padding: 0 10px;
}

.services {
	padding-top: 40px;
	padding-bottom: 60px;
	background-image: url(../img/bg_service.jpg);
	background-repeat: no-repeat;
	background-position: 47% 45%;
    background-size: contain;
}
.title-section {
	font-size: 38px;
	margin-bottom: 30px;
	line-height: 1.3;
	letter-spacing: -1px;
	font-weight: 500;
	color: rgb(7,30,87);
	text-align: center;
}
.item-info {
	padding: 25px 60px 25px 60px;
	margin: 0;
	font-size: 17px;
	line-height: 1.9;
	text-align: center;
	color: rgb(116,132,148);
	border: 1px solid rgba(231, 231, 231, 1);
    border-radius: 20px;
	background: #fff;
	transition: all 0.7s;
	height: 100%;
	min-height: 250px;
}
.item-info:hover {
	box-shadow: 0px 0px 10px 10px rgba(7,30,87, .1);
}
.row.row_services > div {
	margin: 15px 0;
}
.item-info p {
	margin: 10px 0;
}
.item-info__title {
	font-size: 21px;
	padding-bottom: 20px;
	margin-top: 10px;
	line-height: 1.6;
	font-weight: 500;
	letter-spacing: -0.5px;
	color: rgb(7,30,87);
}
.item-info__icon {
	width: 65px;
	height: 65px;
	border: 2px solid #000;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
	border-radius: 50%;
	transition: all 0.7s;
}
.item-info__icon img {
	height: 32px;
	width: auto;
	transition: all 0.2s;
}
.item-info__icon:hover img {
	filter: brightness(0) invert(1);
}
.item-info_1 .item-info__icon {
	border-color: rgb(247,199,76);
}
.item-info_2 .item-info__icon {
	border-color: rgb(46,211,125);
}
.item-info_3 .item-info__icon {
	border-color: rgb(222,161,255);
}
.item-info_4 .item-info__icon {
	border-color: rgb(35,157,219);
}
.item-info_1 .item-info__icon:hover {
	background: rgb(247,199,76);
}
.item-info_2 .item-info__icon:hover {
	background: rgb(46,211,125);
}
.item-info_3 .item-info__icon:hover {
	background: rgb(222,161,255);
}
.item-info_4 .item-info__icon:hover {
	background: rgb(35,157,219);
}

.help {
	padding-top: 20px;
	background-image: url(../img/bg_service.jpg);
	background-repeat: no-repeat;
	background-position: 52% 60%;
    background-size: contain;
}
.item-help__head {
	font-size: 38px;
	padding: 30px;
	line-height: 1.3;
	font-weight: 500;
	letter-spacing: -1px;
	color: rgba(7,30,87, .7);
	cursor: pointer;
}
.item-help {
	border-top: 1px solid rgb(116,132,148);
}
.item-help:last-child {
	border-bottom: 1px solid rgb(116,132,148);
}
.item-help__content {
	font-size: 20px;
	padding-bottom: 20px;
    line-height: 1.9;
	color: rgb(116,132,148);
	display: none;
}
.item-help__content .btn-main {
	margin-top: 50px;
}
.item-help:nth-child(2) .item-help__content {
	display: block;
}
.help__image img {
	max-width: 100%;
	height: auto;
}
.item-help .item-help__left {
	padding-left: 60px;
}

.clients {
	padding: 50px 0;
}
.item-client img {
	margin: 0 auto;
	max-width: 100%;
	height: auto;
}
.item-client_1 img {
	max-width: 78%;
}
.item-client_2 img {
	max-width: 86%;
	filter: brightness(0%);
}
.item-client_3 img {
	max-width: 63%;
}

.consultation {
	padding: 55px 0px 128px 0px;
	background-color: rgba(248,250,255, 1);
	position: relative;
	z-index: 1;
}
.consultation__descr {
	margin: 10px 0;
	margin-bottom: 60px;
	color: rgb(116,132,148);
}
.consultation .title-section {
	margin-top: 20px;
	text-align: left;
}
.item-contact {
	display: flex;
	align-items: flex-start;
}
.item-contact__icon {
	width: 47px;
	height: 47px;
	margin-right: 25px;
	flex: none;
	display: flex;
	align-items: center;
	justify-content: center;
}
.item-contact__icon img {
	max-width: 100%;
	max-height: 100%;
}
.item-contact {
	position: relative;
}
.item-contact__title {
	font-size: 18px;
    line-height: 1.4;
	color: rgb(18,146,238);
}
.item-contact__value {
	font-size: 17px;
	line-height: 1.9;
	color: rgb(116,132,148);
}
a.item-contact__value:hover {
	text-decoration: underline;
}
.item-contact {
	margin-bottom: 40px;
}
.form-page {
	padding: 30px 55px 45px 55px;
	max-width: 540px;
	margin-left: auto;
	background: #fff;
	border-radius: 10px;
    box-shadow: 0px 20px 70px 0px rgba(3, 15, 39, .2);
}
.title-form {
	font-size: 26px;
	margin-bottom: 30px;
	line-height: 1.4;
	font-weight: 500;
	letter-spacing: -1px;
	text-align: center;
}
.item-form {
	margin-bottom: 15px;
}
.item-form input,
.item-form textarea {
	height: 57px;
	padding: 0 24px;
	font-size: 17px;
	color: rgb(7,30,87);
	background-color: rgba(116,132,148, .1);
	width: 100%;
	border-radius: 5px;
	border: 2px transparent solid;
}
.item-form_error input,
.item-form_error textarea {
	border: 2px solid #f00;
}
.item-form textarea {
	height: 165px;
	padding-top: 14px;
	resize: none;
}
.form-page__button {
	text-align: center;
}
.consultation__bg {
	top: -12px;
    left: -28px;
	z-index: -1;
	position: absolute;
}

.footer {
	padding-top: 25px;
	font-size: 16px;
    line-height: 1.9;
	color: rgb(116, 132, 148);
	background-color: rgba(29, 43, 55, 1);
}
.footer .logo img {
	width: 132px;
	filter: brightness(200%) hue-rotate(0deg) saturate(0%) contrast(0%);
}
.footer__title {
	margin-top: 10px;
	margin-bottom: 20px;
	font-size: 14px;
	line-height: 1.5;
	color: #fff;
	font-weight: 700;
}
.footer__nav {
	columns: 2;
}
.footer__nav a {
	color: rgb(116, 132, 148);
}
.footer__nav a:hover {
	text-decoration: underline;
}
.copyright {
	font-size: 14px;
	margin-top: 30px;
    line-height: 1.3;
	padding: 25px 0;
	color: #fff;
	border-top: 1px solid rgba(53,72,92,1);
	text-align: center;
}
.wow {
	visibility: hidden;
}
.sandwich {
	display: none;
}
.billbord-page {
	padding-top: 70px;
	padding-bottom: 40px;
	min-height: 377px;
	color: #fff;
	background-image: url(../img/billbord_page1.jpg);
	background-repeat: no-repeat;
	background-position: 49% 32%;
	background-size: cover;
	position: relative;
	z-index: 1;
	text-align: center;
}
.billbord-page::after {
	position: absolute;
	display: block;
	content: " ";
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	background-color: rgba(3, 15, 39, .85);
}
.billbord-page .title-section {
	margin-bottom: 15px;
	color: #fff;
	font-weight: 700;
}
.title-min {
	font-size: 17px;
	line-height: 1.9;
}
.billbord-page .btn-main.btn-main_transparent:not(:hover) {
	color: #fff;
	border-color: #fff;
}
.billbord-page .btn-main {
	height: 63px;
	margin-top: 30px;
	font-weight: 700;
}
.billbord-page .title-min {
	color: #fff !important;
}
.about {
	padding-top: 40px;
	padding-bottom: 30px;
}
.title-section + .title-min {
	color: rgb(116,132,148);
	text-align: center;
}
.item-about {
	font-size: 17px;
	line-height: 1.9;
	color: rgb(116,132,148);
	display: flex;
	align-items: flex-start;
}
.icon-page {
	width: 65px;
	height: 65px;
	margin-right: 20px;
	border-radius: 50%;
	box-shadow: 0px 10px 15px 5px rgba(0, 0, 0, .1);
	flex: none;
	display: flex;
	align-items: center;
	justify-content: center;
}
.icon-page img {
	height: 35px;
	width: auto;
}
.title-small {
	font-size: 21px;
	margin-bottom: 10px;
	line-height: 1.6;
	font-weight: 500;
	letter-spacing: -0.5px;
    color: rgb(7, 30, 87);	
}
.row.row_about > div {
	margin-top: 40px;
}
.about .title-min {
	max-width: 702px;
	margin-left: auto;
	margin-right: auto;
}
.item-info_about .item-info__title {
	font-size: 16px;
	padding-bottom: 0;
	font-weight: 600;
	text-align: center;
}
.item-info_about .item-info__icon {
	border: none;
}
.item-info_about .item-info__icon img {
	width: 48px;
	height: auto;
}
.item-info_about {
	text-align: left;
}
.about .row_services {
	padding-top: 15px;
}
.item-couple img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	font-family: 'object-fit: cover;';
	border-radius: 20px;
}
.couple-images .row > div:nth-child(1) .image-couple-wrap {
	margin-right: -60px;
}
.couple-images .row > div:nth-child(2) .image-couple-wrap {
	margin-left: -80px;
}
.couple-images .row > div:nth-child(2) {
	margin-top: 100px;
}
.couple-images .row > div:nth-child(1) {
	z-index: 2;
}
.item-couple {
	padding-top: 100%;
	position: relative;
}
.item-couple__image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	box-shadow: 0px 0px 20px 20px rgba(7,30,87, .1);
    border-radius: 20px;
}
.item-couple__image::after {
	position: absolute;
	display: block;
	content: " ";
	background-color: rgba(7,30,87, .1);
	border-radius: 20px;
	width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.assist {
	padding: 35px 0;
	background-color: rgba(248,250,255, 1);
}
.assist .title-section {
	text-align: left;
}
.couple-images {
	padding-right: 20px;
}
.assist__content {
    padding: 0 80px;
	font-size: 17px;
	line-height: 1.9;
	color: rgb(116,132,148);
}
.assist__content .btn-main {
	margin-top: 50px;
}
.etaps .item-help:nth-child(2) .item-help__content {
	display: none;
}
.etaps .item-help:nth-child(1) .item-help__content {
	display: block;
}
.etaps .item-help__content {
	padding: 10px 15px 40px 60px;
}
.etaps .item-help {
	margin-right: -17px;
}
.etaps .title-section {
	text-align: left;
}
.etaps {
	padding-top: 30px;
	padding-bottom: 50px;
	background-image: url(../img/bg_service.jpg);
	background-repeat: no-repeat;
	background-position: 47% 45%;
    background-size: contain;
}
.etaps__image {
	max-width: 522px;
	margin: 0 auto;
}
.etaps__image img {
	max-width: 100%;
	height: auto;
	display: block;
}
.navigation {
	gap: 60px;
	display: flex;
	align-items: center;
}
.navigation > li {
	position: relative;
}
.navigation > li > a {
	font-size: 18px;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: 0px;
    color: rgba(7,30,87, .6);
}
.navigation > li > a:hover,
.navigation > li.active > a {
	color: rgba(18,146,238, .6);
}
.wrapper_page .header .logo img {
	width: 116px;
}
.navigation > li ul {
	width: 300px;
	position: absolute;
	top: 100%;
	left: 0;
	background: #fff;
	z-index: 10;
	visibility: hidden;
	opacity: 0;
}
.navigation > li ul li a {
	padding: 15px 35px 15px 15px;
	color: rgba(7,30,87, 1);
	border-bottom: 1px solid rgba(0, 0, 0, .08);
	display: block;
}
.navigation > li:hover ul {
	visibility: visible;
	opacity: 1;
}
.item-info_about .item-info__icon img {
	filter: none !important;
}
.about__inner {
	padding-bottom: 35px;
	padding-top: 5px;
	border-top: 2px solid rgba(116,132,148, .75);
	border-bottom: 2px solid rgba(116,132,148, .75);
}
.about__inner .title-section {
	margin-top: 30px;
	text-align: left;
}
.about .about__inner .title-min {
	max-width: 333px;
	text-align: left;
}
.about_development .item-info {
	min-height: 300px;
}
.about.about_development .title-min {
	max-width: 100%;
}
.about .row_services > div {
	padding: 0 20px;
	margin: 20px 0;
}
.about .row_services {
	margin: 0 -20px;
} 
.alert-success {
	padding: 17px 30px;
	margin-bottom: 15px;
	font-size: 14px;
	font-weight: 500;
	color: #5dd37b;
	background-color: #e7ffe5;
	border: 2px #5dd37b solid;
	border-radius: 10px;
	display: none;
}

.alert-error {
	padding: 17px 30px;
	margin-bottom: 15px;
	font-size: 14px;
	font-weight: 500;
	color: #d35d5d;
	background-color: #ffe5e5;
	border: 2px #d35d5d solid;
	border-radius: 10px;
	display: none;	
}

button[disabled=disabled], button:disabled,
button[disabled=disabled]:hover,button:disabled:hover{
    background-color: grey;
}
