:root {
	--blue: #6a95f3;
	--white: #ffffff;
	--gray: rgba(255, 255, 255, 0.6);
	--light-blue: #eef3ff;
	--dark-blue: #232747;
}

body {
	background-color: var(--dark-blue);
	color: var(--light-blue);
	font-family: "Sansation";
	font-size: 20px;
	font-weight: 400;
	line-height: 120%;
}

.body-wrapper {
	position: relative;
	overflow: hidden;
}

.container {
	width: 1920px;
	max-width: 100%;
	margin: 0 auto;
	padding: 0 60px;
}

.section {
	margin-bottom: 200px;
}

.h1 {
	font-size: 160px;
	line-height: 100%;
}

.h2 {
	font-size: 120px;
	line-height: 100%;
}

.h3 {
	font-size: 60px;
	line-height: 120%;
}

.h4 {
	font-size: 35px;
	line-height: 120%;
}

.h5 {
	font-size: 25px;
	line-height: 120%;
}

.text-xxl {
	font-size: 50px;
	line-height: 120%;
}

.text-xl {
	font-size: 40px;
	line-height: 120%;
}

.text-l {
	font-size: 35px;
	line-height: 120%;
}

.text-m {
	font-size: 25px;
	line-height: 120%;
}

.text-s {
	font-size: 18px;
	line-height: 120%;
}

.bold {
	font-weight: 700;
}

.blue-text {
	color: var(--blue);
}

.dark-blue-text {
	color: var(--dark-blue);
}

.white-text {
	color: var(--white);
}

.gray-text {
	color: var(--gray);
}

.btn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	padding: 18px 30px;
	border-radius: 5px;
	background-color: var(--white);
	color: var(--dark-blue);
	-webkit-transition: all ease 0.5s;
	transition: all ease 0.5s;
	font-weight: 700;
	height: -webkit-fit-content;
	height: -moz-fit-content;
	height: fit-content;
	white-space: nowrap;
	border: 1px solid var(--white);
}

.btn:not(.btn_anim):hover {
	background-color: rgba(255, 255, 255, 0);
	color: var(--white);
}

.input {
	width: 100%;
	padding: 14px 20px;
	border-radius: 5px;
	background-color: var(--white);
	margin-bottom: 10px;
	color: var(--dark-blue);
}

.input_textarea {
	min-height: 100px;
	resize: none;
}

.input::-webkit-input-placeholder {
	color: rgba(35, 39, 71, 0.6);
}

.input:-ms-input-placeholder {
	color: rgba(35, 39, 71, 0.6);
}

.input::-ms-input-placeholder {
	color: rgba(35, 39, 71, 0.6);
}

.input::placeholder {
	color: rgba(35, 39, 71, 0.6);
}

.checkbox {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding-left: 30px;
	position: relative;
}

.checkbox a {
	text-decoration: underline;
}

.checkbox__checkmark {
	width: 20px;
	height: 20px;
	border-radius: 2px;
	border: 1px solid var(--dark-blue);
	position: absolute;
	top: 4px;
	left: 0;
}

.checkbox__checkmark::after {
	display: block;
	content: "";
	width: calc(100% - 4px);
	height: calc(100% - 4px);
	background-color: var(--dark-blue);
	border-radius: 2px;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	-webkit-transition: all ease 0.5s;
	transition: all ease 0.5s;
	opacity: 0;
}

.checkbox__input {
	display: none;
	position: absolute;
	height: 0;
	width: 0;
}

.checkbox__input:checked~.checkbox__checkmark::after {
	opacity: 1;
}

.home {
	padding-top: 60px;
	position: relative;
}

.home::after {
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-image: url(../img/home/bg.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: top right;
	-webkit-filter: blur(5px);
	filter: blur(5px);
	z-index: -5;
}

.home__wrapper {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 1fr;
	grid-template-columns: 1fr 1fr;
	position: relative;
}

.home__title {
	padding: 160px 210px 200px 60px;
	position: relative;
}

.home__body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	padding: 40px 60px 200px 215px;
	margin-left: -190px;
	height: -webkit-fit-content;
	height: -moz-fit-content;
	height: fit-content;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	height: 520px;
	gap: 20px;
	z-index: 10;
}

.home__bottom-logo {
	width: 274px;
	height: 83px;
}

.home__bottom-logo img {
	-o-object-fit: contain;
	object-fit: contain;
}

.home__path {
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	pointer-events: none;
	z-index: -2;
}

.home__path img {
	height: 100%;
	width: 100%;
	-o-object-fit: unset;
	object-fit: unset;
}

.home__bottom {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 180px 230px 30px 60px;
	position: relative;
	grid-column: span 2;
	margin-top: -280px;
	height: 440px;
}

.home__desc {
	width: 100%;
	max-width: 660px;
	margin-bottom: 25px;
}

.home__bottom-btn {
	display: none;
}

.home__logo {
	display: none;
}

.home__panel {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.home__menu-btn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 55px;
	height: 55px;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: relative;
	cursor: pointer;
	display: none;
}

.home__menu-btn span {
	display: block;
	width: 45px;
	height: 2px;
	background-color: var(--white);
	-webkit-transition: all ease 0.5s;
	transition: all ease 0.5s;
}

.home__menu-btn::after {
	display: block;
	content: "";
	width: 45px;
	height: 2px;
	background-color: var(--white);
	position: absolute;
	top: 20px;
	left: 5px;
	-webkit-transition: all ease 0.5s;
	transition: all ease 0.5s;
}

.home__menu-btn::before {
	display: block;
	content: "";
	width: 25px;
	height: 2px;
	background-color: var(--white);
	position: absolute;
	top: 34px;
	left: 5px;
	-webkit-transition: all ease 0.5s;
	transition: all ease 0.5s;
}

.home .nav {
	width: 100%;
	max-width: 420px;
	height: -webkit-fit-content;
	height: -moz-fit-content;
	height: fit-content;
}

.home .nav__list {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: auto auto;
	grid-template-columns: auto auto;
	gap: 10px;
	-webkit-column-gap: 20px;
	column-gap: 20px;
	width: 100%;
}

.home .nav__link {
	-webkit-transition: all ease 0.5s;
	transition: all ease 0.5s;
}

.home .nav__link:hover {
	color: var(--white);
}

.home__btn {
	-webkit-transition: unset;
	transition: unset;
}

.home_open .home__menu-btn span {
	width: 0;
	opacity: 0;
}

.home_open .home__menu-btn::before {
	width: 45px;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%) rotate(-45deg);
	transform: translate(-50%, -50%) rotate(-45deg);
}

.home_open .home__menu-btn::after {
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%) rotate(45deg);
	transform: translate(-50%, -50%) rotate(45deg);
}

.about__wrapper {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 3fr;
	grid-template-columns: 1fr 3fr;
	gap: 20px;
}

.about__slider {
	width: 100%;
	overflow: visible;
}

.about__slide {
	max-width: 335px;
	padding-left: 40px;
	padding-bottom: 25px;
	border-left: 2px solid var(--white);
}

.about__slider-wrapper {
	-ms-grid-columns: 1fr 1fr 1fr;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 20px;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.about__num {
	margin-bottom: 20px;
}

.about__name {
	margin-bottom: 10px;
}

.direction__wrapper {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 1fr 1fr 1fr;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-auto-rows: 435px;
	gap: 20px;
	grid-template-areas: "a b c ."
		"d e . f"
		". . g h";
}

.direction__item {
	position: relative;
}

.direction__item:nth-child(8n + 1) {
	grid-area: auto / a;
}

.direction__item:nth-child(8n + 2) {
	grid-area: auto / b;
}

.direction__item:nth-child(8n + 3) {
	grid-area: auto / c;
}

.direction__item:nth-child(8n + 4) {
	grid-area: auto / d;
}

.direction__item:nth-child(8n + 5) {
	grid-area: auto / e;
}

.direction__item:nth-child(8n + 6) {
	grid-area: auto / f;
}

.direction__item:nth-child(8n + 7) {
	grid-area: auto / g;
}

.direction__item:nth-child(8n + 8) {
	grid-area: auto / h;
}

.direction__item::after {
	display: block;
	content: "";
	width: 200%;
	height: 200%;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	background: radial-gradient(50% 50% at 50% 50%, #5562d1 0%, rgba(35, 39, 71, 0) 75%);
	opacity: 0;
	-webkit-transition: all ease 0.5s;
	transition: all ease 0.5s;
	z-index: -1;
	pointer-events: none;
}

.direction__item_active::after {
	opacity: 1;
}

.direction__item_active .direction__item-card::after {
	opacity: 1;
}

.direction__item-card {
	height: 100%;
	min-height: 120px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	background-color: var(--blue);
	padding: 40px;
	border-radius: 5px;
	background: linear-gradient(139deg, #232747 0%, #363e67 100%);
	position: relative;
	z-index: 1;
}

.direction__item-card::after {
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	background-image: url(../img/direction.png);
	background-repeat: no-repeat;
	background-position: top right;
	background-size: contain;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	-webkit-transition: all ease 0.5s;
	transition: all ease 0.5s;
}

.case__title {
	margin-bottom: 30px;
}

.case__wrapper {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 1fr;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.case__item {
	position: relative;
	border-radius: 5px;
	overflow: hidden;
}

.case__item:hover .case__img-bg {
	-webkit-filter: blur(24px);
	filter: blur(24px);
}

.case__img-bg {
	position: relative;
	z-index: 1;
	-webkit-transition: 0.5s -webkit-filter ease;
	transition: 0.5s -webkit-filter ease;
	transition: 0.5s filter ease;
	transition: 0.5s filter ease, 0.5s -webkit-filter ease;
}

.case__img-bg::after {
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(55, 62, 104, 0)), to(rgba(35, 39, 71, 0.8)));
	background: linear-gradient(180deg, rgba(55, 62, 104, 0) 0%, rgba(35, 39, 71, 0.8) 100%);
	z-index: 2;
}

.case__body {
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	padding: 40px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.case__company {
	margin-bottom: 20px;
}

.case__bottom {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.case__desc {
	width: 100%;
	max-width: 430px;
}

.case__preview {
	position: absolute;
	z-index: 3;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	-webkit-transform: translateY(100%);
	transform: translateY(100%);
}

.stack__title {
	max-width: 355px;
}

.stack__wrapper {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 3fr;
	grid-template-columns: 1fr 3fr;
	gap: 20px;
}

.stack__desc {
	margin-bottom: 60px;
}

.stack__list {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 1fr 1fr 1fr;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 20px;
	padding-right: 160px;
}

.stack__item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	min-height: 100px;
	width: 100%;
	border-bottom: 1px solid var(--gray);
	gap: 10px;
}

.stack__item:hover .stack__name {
	-webkit-transform: none;
	transform: none;
}

.stack__item:hover .stack__logo {
	-webkit-transform: none;
	transform: none;
	opacity: 1;
}

.stack__logo {
	padding: 5px;
	border-radius: 5px;
	background-color: var(--white);
	min-width: 70px;
	width: 70px;
	height: 70px;
	-webkit-transition: all ease 0.5s;
	transition: all ease 0.5s;
	opacity: 0;
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%);
	pointer-events: none;
}

.stack__logo img {
	-o-object-fit: contain;
	object-fit: contain;
	-o-object-position: center;
	object-position: center;
}

.stack__name {
	-webkit-transition: all ease 0.5s;
	transition: all ease 0.5s;
	-webkit-transform: translateX(-80px);
	transform: translateX(-80px);
}

.popup {
	display: none;
	background-image: url(../img/popup.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	padding: 45px 135px 75px 90px;
	background-color: transparent;
	width: 100%;
	max-width: 514px;
}



.popup__title {
	margin-bottom: 10px;
}

.popup__desc {
	margin-bottom: 20px;
	color: rgba(35, 39, 71, 0.6);
}

.popup__social {
	margin-top: 20px;
	color: rgba(35, 39, 71, 0.6);
}

.popup__social a {
	text-decoration: underline;
}

.popup__checkbox {
	color: rgba(35, 39, 71, 0.6);
}

.popup__btn {
	width: 100%;
	margin-bottom: 14px;
}

.popup .f-button.is-close-btn {
	top: 50px;
	right: 105px;
	width: 33px;
	height: 33px;
	background: none;
	opacity: 1;
}

.popup .f-button.is-close-btn svg {
	width: 100%;
	height: 100%;
	stroke: var(--dark-blue);
}


.popup_success {
	background: none;
	background: linear-gradient(15deg, #f8faff 12.68%, rgba(248, 250, 255, 0.25) 108.13%);
	border: 2px solid rgba(255, 255, 255, 0.6);
	border-radius: 5px;
	padding: 30px 20px;
	max-width: 400px;
}

.popup_success .f-button.is-close-btn {
	top: 20px;
	right: 20px;
}

.fancybox__backdrop {
	border-radius: 10px;
	background: linear-gradient(139deg, rgba(35, 39, 71, 0.3) 4.61%, rgba(54, 62, 103, 0.3) 80.05%);
	-webkit-backdrop-filter: blur(20px);
	backdrop-filter: blur(20px);
}

.header {
	max-width: calc(100% - 20px);
	position: fixed;
	bottom: 40px;
	left: 50%;
	-webkit-transform: translateX(-50%) translateY(200%);
	transform: translateX(-50%) translateY(200%);
	z-index: 20;
	-webkit-transition: all ease 0.5s;
	transition: all ease 0.5s;
}

.header__logo {
	width: 200px;
	height: 56px;
	padding-left: 10px;
}

.header__logo img {
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
}

.header__wrapper {
	border-radius: 5px;
	border: 2px solid rgba(255, 255, 255, 0.6);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 40px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background: linear-gradient(267deg, rgba(248, 250, 255, 0.2) 3.52%, rgba(248, 250, 255, 0.05) 101.28%);
	-webkit-backdrop-filter: blur(40px);
	backdrop-filter: blur(40px);
	position: relative;
}

.header__btn {
	margin: -2px;
	padding: 18px 30px !important;
}

.header_open {
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.footer {
	position: relative;
	padding-bottom: 180px;
}

.footer::after {
	display: block;
	content: "";
	width: 100%;
	height: 2000px;
	background-image: url(../img/footer/bg.png);
	background-size: contain;
	background-position: bottom center;
	background-repeat: no-repeat;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}

.footer__body {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 40px;
	padding-bottom: 50px;
	padding-right: 180px;
}

.footer__subtitle {
	margin-bottom: 15px;
}

.footer__link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	white-space: nowrap;
}

.footer__link:not(:last-child) {
	margin-bottom: 6px;
}

.footer__item {
	max-width: 275px;
}

.footer__contact {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 110px;
	position: relative;
	padding: 40px 150px;
	margin-left: -12%;
}

.footer__wrapper {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 56% 44%;
	grid-template-columns: 56% 44%;
}

.footer__path {
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	pointer-events: none;
	z-index: -2;
}

.footer__path img {
	height: 100%;
	width: 100%;
	-o-object-fit: unset;
	object-fit: unset;
}

.footer__bottom {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 25px;
	gap: 140px;
	width: 100%;
}

.footer__policy {
	margin-left: auto;
}

.footer__desc {
	max-width: 450px;
}

.slider-prev,
.slider-next {
	pointer-events: all;
	width: 45px;
	height: 45px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	cursor: pointer;
	-webkit-transition: all ease 0.5s;
	transition: all ease 0.5s;
}

.swiper-button-disabled {
	opacity: 0.3;
	cursor: default;
}

.client {
	padding-top: 670px;
	background-image: url(../img/client/bg.png);
	background-repeat: no-repeat;
	background-size: 1700px auto;
	background-position: bottom -200px center;
}

.client__controls {
	width: 100%;
	max-width: 335px;
	margin: 0 auto;
	margin-top: 65px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 20px;
}

.client__scrollbar {
	width: 200px;
	height: 5px;
	border-radius: 2px;
	background-color: var(--white);
	overflow: hidden;
	cursor: pointer;
}

.client__scrollbar .swiper-scrollbar-drag {
	background-color: var(--blue);
}

.client__scrollbar .swiper-scrollbar-drag::after {
	display: block;
	content: "";
	width: 500px;
	height: 100%;
	background-color: var(--blue);
	position: absolute;
	top: 0;
	right: 0;
	pointer-events: none;
}

.client__item {
	border-radius: 5px;
	background-color: var(--white);
	padding: 10px;
	width: 160px;
	height: 160px;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
}

.client__item:nth-child(1) {
	-webkit-transform: translate(-760px, -100px);
	transform: translate(-760px, -100px);
}

.client__item:nth-child(2) {
	-webkit-transform: translate(-520px, -550px);
	transform: translate(-520px, -550px);
}

.client__item:nth-child(3) {
	-webkit-transform: translate(130px, -650px);
	transform: translate(130px, -650px);
}

.client__item:nth-child(4) {
	-webkit-transform: translate(530px, -350px);
	transform: translate(530px, -350px);
}

.client__item:nth-child(5) {
	-webkit-transform: translate(-430px, -280px);
	transform: translate(-430px, -280px);
}

.client__item:nth-child(6) {
	-webkit-transform: translate(-80px, -460px);
	transform: translate(-80px, -460px);
}

.client__item:nth-child(7) {
	-webkit-transform: translate(320px, -200px);
	transform: translate(320px, -200px);
}

.client__list {
	position: relative;
}

.client__list::after {
	display: block;
	content: "";
	width: 1380px;
	height: 1380px;
	border-radius: 50%;
	border: 1px solid var(--gray);
	z-index: 0;
	position: absolute;
	top: 60px;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	pointer-events: none;
}

.client__list::before {
	display: block;
	content: "";
	width: 890px;
	height: 890px;
	border-radius: 50%;
	border: 1px solid var(--gray);
	z-index: 0;
	position: absolute;
	top: 60px;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	pointer-events: none;
}

.client__title {
	text-align: center;
	max-width: 600px;
	margin: 0 auto;
	margin-bottom: 90px;
}

.client__icon {
	width: 100px;
	height: 100px;
}

.client__icon img {
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
}

.client__slide {
	border-radius: 10px;
	border: 2px solid var(--gray);
	background: linear-gradient(267deg, rgba(248, 250, 255, 0.2) 3.52%, rgba(248, 250, 255, 0.05) 101.28%);
	-webkit-backdrop-filter: blur(40px);
	backdrop-filter: blur(40px);
	padding: 40px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 100%;
	max-width: 320px;
	height: 360px;
	-webkit-transition: all ease 0.5s;
	transition: all ease 0.5s;
	-webkit-transform: rotate(-6deg) translateY(70px);
	transform: rotate(-6deg) translateY(70px);
}

.client__slider {
	overflow: visible;
}

.client .swiper-slide-next {
	-webkit-transform: rotate(4deg) translateY(30px);
	transform: rotate(4deg) translateY(30px);
}

.client .swiper-slide-prev {
	-webkit-transform: rotate(-4deg) translateY(30px);
	transform: rotate(-4deg) translateY(30px);
}

.client .swiper-slide-next~.swiper-slide {
	-webkit-transform: rotate(6deg) translateY(70px);
	transform: rotate(6deg) translateY(70px);
}

.client .swiper-slide-active {
	-webkit-transform: none;
	transform: none;
}

.preloader {
	background-color: #272347;
	position: fixed;
	z-index: 100;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-transition: all ease 0.8s;
	transition: all ease 0.8s;
}

.preloader__wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 30px;
}

.preloader__line {
	width: 6px;
	height: 140px;
	background-color: #6a95f3;
	-webkit-transform: translateY(-50vh) translateX(200px);
	transform: translateY(-50vh) translateX(200px);
}

.preloader__text {
	-webkit-transform: translateX(300%);
	transform: translateX(300%);
}

.preloader__logo {
	-webkit-transform: translateX(-600%);
	transform: translateX(-600%);
}

.preloader_hide {
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
}

@media screen and (max-width: 1920px) and (min-width: 1024px) {
	.home {
		font-size: 10vw;
	}

	.home__title {
		font-size: 0.834em;
		padding: 0.834em 1em 1.25em 0.375em;
	}

	.home__body {
		font-size: 0.104em;
		padding: 2em 3em 10em 10.75em;
		gap: 3em;
		height: 25em;
		margin-left: -9.5em;
	}

	.home__nav {
		font-size: 1em;
	}

	.home__btn {
		padding: 1em 1.5em;
	}

	.home__bottom {
		font-size: 0.208em;
		padding: 4.5em 5.75em 0.75em 1.5em;
		height: 11em;
		margin-top: -7em;
	}

	.home__desc {
		font-size: 1em;
		margin-bottom: 0.625em;
		max-width: 16.5em;
	}

	.home__bottom-logo {
		width: 6.85em;
		height: 2.075em;
	}
}

@media screen and (min-width: 768px) {
	.direction__item:hover::after {
		opacity: 1;
	}

	.direction__item:hover .direction__item-card::after {
		opacity: 1;
	}
}

@media screen and (max-width: 1700px) {
	.footer__body {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		gap: 20px;
	}

	.footer__contact {
		padding: 40px 110px;
		padding-right: 40px;
	}
}

@media screen and (max-width: 1500px) {
	.about__wrapper {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		gap: 30px;
	}

	.about__slide {
		border: none;
		border-top: 2px solid var(--white);
		padding: 0;
		padding-top: 10px;
		opacity: 0.5;
		-webkit-transition: all ease 0.5s;
		transition: all ease 0.5s;
	}

	.about__slide.swiper-slide-duplicate-active,
	.about__slide.swiper-slide-active {
		opacity: 1;
	}

	.about__slider-wrapper {
		gap: 0;
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: start;
	}

	.client {
		padding-top: 530px;
	}

	.client__list {
		-webkit-transform: scale(0.8);
		transform: scale(0.8);
	}
}

@media screen and (max-width: 1400px) {
	.direction__wrapper {
		-ms-grid-columns: 1fr 1fr 1fr;
		grid-template-columns: 1fr 1fr 1fr;
		grid-template-areas: unset;
	}

	.direction__item {
		grid-area: auto !important;
	}

	.footer__wrapper {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
	}

	.footer__contact {
		margin: 0;
		padding: 40px;
	}

	.footer__body {
		padding: 40px;
	}
}

@media screen and (max-width: 1300px) {
	.stack__wrapper {
		display: block;
	}

	.stack__title {
		margin-bottom: 30px;
	}

	.stack__list {
		padding: 0;
	}
}

@media screen and (max-width: 1200px) {
	.direction__wrapper {
		-ms-grid-columns: 1fr 1fr;
		grid-template-columns: 1fr 1fr;
		grid-auto-rows: 300px;
	}

	.case__wrapper {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
	}

	.footer {
		padding-bottom: 120px;
	}

	.footer__bottom {
		gap: 30px;
	}

	.client {
		padding-top: 360px;
		background-size: 1200px auto;
		background-position: bottom center;
	}

	.client__list {
		-webkit-transform: scale(0.5);
		transform: scale(0.5);
	}

	.client__item:nth-child(1) {
		-webkit-transform: translate(-470px, -610px);
		transform: translate(-470px, -610px);
	}

	.client__item:nth-child(2) {
		-webkit-transform: translate(-220px, -700px);
		transform: translate(-220px, -700px);
	}

	.client__item:nth-child(3) {
		-webkit-transform: translate(60px, -700px);
		transform: translate(60px, -700px);
	}

	.client__item:nth-child(4) {
		-webkit-transform: translate(300px, -610px);
		transform: translate(300px, -610px);
	}

	.client__item:nth-child(5) {
		-webkit-transform: translate(-330px, -390px);
		transform: translate(-330px, -390px);
	}

	.client__item:nth-child(6) {
		-webkit-transform: translate(-80px, -460px);
		transform: translate(-80px, -460px);
	}

	.client__item:nth-child(7) {
		-webkit-transform: translate(170px, -390px);
		transform: translate(170px, -390px);
	}
}

@media screen and (max-width: 1024px) {
	.btn {
		padding: 14px 30px;
	}

	.h3 {
		font-size: 25px;
		line-height: 120%;
	}

	.stack__logo {
		-webkit-transform: none;
		transform: none;
		opacity: 1;
	}

	.stack__name {
		display: none;
	}

	.stack__item {
		min-height: 0;
		border: none;
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
	}

	.stack__list {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.home {
		padding-top: 20px;
	}

	.home::after {
		border-radius: 850px;
		background: linear-gradient(147deg, #5a8eff 29.63%, #92b1f5 70.52%);
		-webkit-filter: blur(190px);
		filter: blur(190px);
	}

	.home__wrapper {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
	}

	.home__body {
		height: auto;
		-webkit-box-ordinal-group: 0;
		-ms-flex-order: -1;
		order: -1;
		margin: 0;
		padding: 10px;
		padding-bottom: 40px;
		padding-right: 15px;
	}

	.home__title {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		padding: 65px 73px 86px 30px;
		height: auto;
		margin: -20px 0 -40px;
		font-size: 100px;
		line-height: 100%;
	}

	.home__title-wrapper {
		max-width: 400px;
	}

	.home__bottom {
		padding: 30px 20px;
		padding-top: 77px;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		height: auto;
		margin: 0;
	}

	.home__bottom-btn {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		width: 100%;
	}

	.home__bottom-logo {
		display: none;
	}

	.home__panel {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
		background: linear-gradient(139deg, rgba(35, 39, 71, 0.4) 4.61%, rgba(54, 62, 103, 0.4) 80.05%);
		pointer-events: none;
		z-index: -1;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		flex-direction: column;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		padding: 20px;
		border: 2px solid rgba(255, 255, 255, 0.6);
		border-radius: 5px;
		-webkit-backdrop-filter: blur(55px);
		backdrop-filter: blur(55px);
		padding-top: 100px;
		-webkit-transition: all ease 0.5s;
		transition: all ease 0.5s;
	}

	.home__menu-btn {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}

	.home__logo {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		width: 213px;
		height: 57px;
	}

	.home__logo img {
		width: 100%;
		height: 100%;
		-o-object-fit: contain;
		object-fit: contain;
		-o-object-position: left center;
		object-position: left center;
	}

	.home__desc {
		max-width: none;
		font-size: 30px;
		line-height: 120%;
		margin-bottom: 20px;
	}

	.home__btn {
		margin-top: 30px;
		width: 100%;
	}

	.home .nav {
		width: 100%;
		max-width: none;
		color: var(--white);
	}

	.home .nav__list {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		width: 100%;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		gap: 20px;
	}

	.home_open .home__panel {
		opacity: 1;
		pointer-events: all;
	}

	.footer__bottom {
		gap: 10px;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
	}

	.footer__policy {
		margin: 0;
	}

	.preloader__wrapper {
		-webkit-transform: scale(0.6);
		transform: scale(0.6);
	}
}

@media screen and (max-width: 768px) {
	.container {
		padding: 0 30px;
	}

	.section {
		margin-bottom: 100px;
	}

	.direction__wrapper {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		gap: 0;
	}

	.direction__title {
		margin-bottom: 20px;
	}

	.direction__item-card {
		padding: 30px 20px;
	}

	.direction__item {
		padding: 10px 0;
	}

	.footer {
		padding-bottom: 80px;
	}

	.footer__contact {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
		gap: 30px;
		padding-top: 70px;
	}
}

@media screen and (max-width: 570px) {
	body {
		font-size: 18px;
		line-height: 120%;
	}

	.h1 {
		font-size: 60px;
		line-height: 100%;
	}

	.h2 {
		font-size: 60px;
		line-height: 120%;
	}

	.h3 {
		font-size: 25px;
		line-height: 120%;
	}

	.h4 {
		font-size: 35px;
		line-height: 120%;
	}

	.h5 {
		font-size: 35px;
		line-height: 120%;
	}

	.text-xxl {
		font-size: 25px;
		line-height: 120%;
	}

	.text-xl {
		font-size: 20px;
		line-height: 120%;
	}

	.text-l {
		font-size: 25px;
		line-height: 120%;
	}

	.text-m {
		font-size: 18px;
		line-height: 120%;
	}

	.text-s {
		font-size: 18px;
		line-height: 120%;
	}

	.container {
		padding: 0 10px;
	}

	.case__body {
		padding: 0;
		position: static;
	}

	.case__preview {
		display: none;
	}

	.case__company {
		margin-bottom: 5px;
	}

	.case__desc {
		color: var(--gray);
		font-size: 18px;
		line-height: 120%;
	}

	.case__item {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		-ms-flex-direction: column-reverse;
		flex-direction: column-reverse;
		gap: 30px;
	}

	.case__item:hover .case__img-bg {
		-webkit-filter: none;
		filter: none;
	}

	.case__tags {
		position: absolute;
		bottom: 20px;
		left: 20px;
	}

	.about__slide {
		max-width: 240px;
	}

	.about__num {
		margin-bottom: 10px;
	}

	.about__name {
		margin-bottom: 8px;
	}

	.popup {
		background: linear-gradient(15deg, #f8faff 12.68%, rgba(248, 250, 255, 0.25) 108.13%);
		padding: 30px 20px;
		border: 2px solid rgba(255, 255, 255, 0.6);
		border-radius: 5px;
	}

	.popup__title {
		font-size: 25px;
		line-height: 120%;
		padding-right: 40px;
	}

	.popup .f-button.is-close-btn {
		top: 30px !important;
		right: 15px !important;
	}

	.footer {
		padding-bottom: 50px;
	}

	.footer__body {
		padding: 30px 20px;
		padding-bottom: 45px;
	}

	.footer__contact {
		padding: 30px 20px;
		padding-top: 75px;
	}

	.client {
		background-size: auto 100%;
		padding-top: 260px;
	}

	.client__list {
		-webkit-transform: scale(0.4) translateY(50px);
		transform: scale(0.4) translateY(50px);
	}

	.client__slide {
		padding: 20px;
		height: 200px;
		max-width: 60vw;
		-webkit-transform: rotate(-4deg) translateY(20px);
		transform: rotate(-4deg) translateY(20px);
	}

	.client__icon {
		width: 50px;
		height: 50px;
	}

	.client__controls {
		max-width: none;
	}

	.client__scrollbar {
		width: 100%;
	}

	.client__title {
		margin-bottom: 30px;
		max-width: 300px;
	}

	.client .swiper-slide-next {
		-webkit-transform: rotate(2deg) translateY(10px);
		transform: rotate(2deg) translateY(10px);
	}

	.client .swiper-slide-prev {
		-webkit-transform: rotate(-2deg) translateY(10px);
		transform: rotate(-2deg) translateY(10px);
	}

	.client .swiper-slide-next~.swiper-slide {
		-webkit-transform: rotate(4deg) translateY(20px);
		transform: rotate(4deg) translateY(20px);
	}

	.client .swiper-slide-active {
		-webkit-transform: none;
		transform: none;
	}

	.preloader__wrapper {
		-webkit-transform: scale(0.3);
		transform: scale(0.3);
	}

	.header__wrapper {
		gap: 20px;
	}

	.header__btn {
		padding-left: 14px !important;
		padding-right: 14px !important;
	}

	.header__logo {
		padding: 0;
	}
}