﻿:root {
	--white: #fff;
	--black: #000;
	--blue: #2755C5;
	--grey: #464646;
	--bg: #F4F6FC;
	--u: min(0.0520833333vw, 0.0625rem);
}
* {
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}

*::-webkit-scrollbar {
	width: 5px;
	height: 5px;
	background: var(--white);
}

*::-webkit-scrollbar-thumb {
	background: var(--blue);
	border-radius: calc(var(--u) * 7);
}

*::-webkit-scrollbar-track {
	background-color: transparent;
	border: none;
}

body {
	background: var(--bg);
	color: var(--black);
	font-family: "Gilroy", sans-serif;
	font-size: calc(var(--u) * 16);
	font-style: normal;
	font-weight: 400;
	line-height: 1.5;
	overflow-x: hidden;
	padding: 0 !important;
}

body.hidden {
	overflow-y: hidden;
	display: block;
}

.hidden {
	display: none;
}

a {
	position: relative;
	transition: all .25s ease;
	text-decoration: none;
	outline: 0;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: 500;
}

svg, svg path, svg rect, svg stroke, svg g {
	transition: all .25s ease;
}

header {
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 99;
	flex-direction: column;
	transition: all .25s ease;
}

main {
	/* overflow-x: hidden; */
	min-height: 75vh;
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
}

.container {
	display: flex;
	max-width: 100%;
	width: 100%;
	align-items: flex-start;
	flex-direction: column;
	height: 100%;
	gap: calc(var(--u) * 40);
	transition: all .5s ease;
	padding: 0 calc(var(--u) * 40);
}

section {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: calc(var(--u) * 2560);
	margin-bottom: calc(var(--u) * 120);
	position: relative;
	flex-direction: column;
	z-index: 9;
}

input {
	transition: all .25s ease;
	outline: 0;
}

.modal {
	display: flex;
	transform: translateY(-100%);
	position: fixed;
	transition: all .5s ease;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	z-index: 99;
	justify-content: center;
	align-items: center;
	overflow: hidden;
}

.burger {
	display: none;
	flex-direction: column;
	align-items: center;
	gap: calc(var(--u) * 10);
	position: relative;
	width: 40px;
	height: 32px;
	justify-content: center;
}

/* MAIN STYLES */

header .container {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 0;
    max-width: calc(var(--u) * 2560);
    width: 100%;
}

nav.menu ul {
    display: flex;
    align-items: center;
    gap: calc(var(--u) * 60);
    list-style: none;
}

nav.menu ul li a {
    display: flex;
    font-weight: 500;
    font-size: calc(var(--u) * 20);
    line-height: calc(var(--u) * 24);
    color: #FFFFFFB2;
}

nav.menu ul li a:hover {
    color: var(--white);
}

a.phone {
    padding: calc(var(--u) * 24) calc(var(--u) * 20);
    font-weight: 500;
    font-size: calc(var(--u) * 22);
    line-height: calc(var(--u) * 26);
    background: var(--Colors-White-15, #FFFFFF26);
    backdrop-filter: blur(calc(var(--u) * 4));
    color: var(--white);
}

a.logo {
    display: flex;
}

a.logo svg {
    width: min(6.8229vw, 8.1875rem);   /* 131px */
    height: min(1.7708vw, 2.125rem);   /* 34px */
}

.left {
    display: flex;
    align-items: flex-start;
    padding: calc(var(--u) * 20) calc(var(--u) * 40);
}

a.phone:hover {
    background: var(--white);
    color: var(--blue);
}

section.hero {
    max-height: calc(var(--u) * 1000);
    height: 100vh;
}

video.hero__bg,
video.about__hero__bg {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

section.hero .container {
    padding: 0;
    justify-content: flex-end;
    z-index: 9;
}

section.hero::before {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: #00000080;
    z-index: 1;
}

.hero__wrapper {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: calc(var(--u) * 64);
}

.hero__info {
    padding: 0 calc(var(--u) * 40);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(var(--u) * 60);
}

section.hero h1.title {
    font-family: "Gilroy", sans-serif;
    font-weight: 500;
    font-size: calc(var(--u) * 80);
    line-height: calc(var(--u) * 80);
    max-width: calc(var(--u) * 1065);
    color: var(--white);
}

.btn {
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all .25s ease;
    font-family: "Gilroy", sans-serif;
    font-weight: 500;
    font-size: calc(var(--u) * 28);
    line-height: calc(var(--u) * 32);
    cursor: pointer;
    outline: 0;
    border: none;
}

.btn.hero__btn {
    padding: calc(var(--u) * 24) calc(var(--u) * 32);
    background: var(--Colors-White-50, #FFFFFF80);
    backdrop-filter: blur(calc(var(--u) * 20));
    color: var(--white);
}

.btn.hero__btn:hover {
    background: var(--white);
    color: var(--blue);
}

.hero__services {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.hero__services__item {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: calc(var(--u) * 400);
    border: calc(var(--u) * 1) solid var(--Colors-White-100, #FFFFFF);
    padding: calc(var(--u) * 40);
    transition: all .25s ease;
    position: relative;
    border-left: none;
}

.hero__services__item:last-child {
    border-right: none;
}

p.hero__services__item__title {
    font-family: "Gilroy", sans-serif;
    font-weight: 600;
    font-size: calc(var(--u) * 28);
    line-height: calc(var(--u) * 32);
    color: var(--Colors-White-50, #FFFFFF80);
    transition: all .25s ease;
    z-index: 2;
}

.hero__services__item nav ul {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 20);
    list-style: none;
    z-index: 2;
}

.hero__services__item nav ul a {
    font-family: "Gilroy", sans-serif;
    font-weight: 400;
    font-size: calc(var(--u) * 26);
    line-height: calc(var(--u) * 26);
    color: #FFFFFFB2;
    border-bottom: calc(var(--u) * 1) solid transparent;
}

.hero__services__item:hover p.hero__services__item__title {
    color: #FFFFFFB2;
}

.hero__services__item nav ul a:hover {
    border-color: inherit;
    color: var(--white);
}

.hero__services__item::before {
    content: "";
    position: absolute;
    inset: 0;
    background: url('/local/templates/space/img/noise.png');
    opacity: 0;
    pointer-events: none;
    z-index: 1;
    transition: all .25s ease;
}

.hero__services__item nav {
    display: flex;
    z-index: 2;
}

.hero__services__item:hover::before {
    opacity: 1;
}

header.header.header--white {
    position: sticky;
}

header.header.fixed {
    background: var(--white);
}

header.header.fixed a.logo svg path:nth-child(1),
header.header.header--white a.logo svg path:nth-child(1) {
    fill: var(--grey);
}

header.header.fixed a.logo svg path:nth-child(2),
header.header.header--white a.logo svg path:nth-child(2) {
    fill: var(--blue);
}

header.header.fixed nav.menu ul li a,
header.header.header--white nav.menu ul li a{
    color: var(--grey);
}

header.header.fixed nav.menu ul li a:hover,
header.header.header--white nav.menu ul li a:hover{
    color: var(--blue);
}

header.header.fixed a.phone,
header.header.header--white a.phone{
    color: var(--blue);
}

header.header.fixed a.phone:hover,
header.header.header--white a.phone:hover{
    background: var(--blue);
    color: var(--white);
}

h2.section__title,
h1.section__title,
h1.detail__title {
    font-weight: 500;
    font-size: calc(var(--u) * 80);
    line-height: calc(var(--u) * 94);
    letter-spacing: 0%;
    color: var(--blue);
}

h1.detail__title {
    font-size: calc(var(--u) * 60);
    line-height: calc(var(--u) * 72);
    max-width: calc(var(--u) * 1200);
}

.section__header {
    display: flex;
    flex-direction: column;
    width: 100%;
}

section.projects .section__header {
    gap: calc(var(--u) * 40);
}

.projects__cats {
    display: flex;
    flex-wrap: wrap;
    gap: calc(var(--u) * 4);
}

.projects__cats__item {
    font-family: "Gilroy", sans-serif;
    font-weight: 500;
    font-style: Medium;
    font-size: calc(var(--u) * 22);
    leading-trim: NONE;
    line-height: calc(var(--u) * 26);
    letter-spacing: 0%;
    text-align: center;
    color: var(--blue);
    background: var(--Colors-Primary-10, #2755C51A);
    padding: calc(var(--u) * 8) calc(var(--u) * 32);
    border-radius: calc(var(--u) * 16);
}

.projects__cats__item:hover:not(p.projects__cats__item:hover) {
    background: var(--blue);
    color: var(--white);
}

.grid {
    display: grid;
    width: 100%;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.grid__2 {
    grid-template-columns: repeat(2, 1fr);
}

a.projects__item {
    display: flex;
    position: relative;
    width: 100%;
    height: calc(var(--u) * 600);
    overflow: hidden;
}

img.projects__item__media {
    width: 100%;
    transition: all .5s ease;
    z-index: 1;
    object-fit: cover;
}

.gap20 {
    gap: calc(var(--u) * 20);
}

.projects__item__info {
    position: absolute;
    width: 100%;
    height: 100%;
    padding: calc(var(--u) * 12);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    z-index: 3;
}

.tags {
    display: flex;
    gap: 1px;
}

.tag {
    display: flex;
    font-family: "Gilroy", sans-serif;
    font-weight: 500;
    font-size: calc(var(--u) * 18);
    line-height: calc(var(--u) * 22);
    letter-spacing: 0%;
    text-align: center;
    padding: calc(var(--u) * 6) calc(var(--u) * 20);
    background: #9ba1a8;
    backdrop-filter: blur(calc(var(--u) * 50));
    color: var(--white);
    border-radius: calc(var(--u) * 12);
}

.cat.tag {
    background: var(--blue);
}

h3.projects__item__name {
    font-family: "Gilroy", sans-serif;
    font-weight: 500;
    font-style: Medium;
    font-size: calc(var(--u) * 28);
    leading-trim: NONE;
    line-height: calc(var(--u) * 32);
    letter-spacing: 0%;
    color: var(--white);
    padding: calc(var(--u) * 16);
}

a.projects__item::before {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 70%, rgba(0, 0, 0, 0.7) 94.97%);
    z-index: 2;
}

a.projects__item:hover img {
    transform: scale(1.05);
}

.company__info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(var(--u) * 32);
    max-width: calc(var(--u) * 600);
    justify-content: space-between;
}

h3.company__title {
    font-family: "Gilroy", sans-serif;
    font-weight: 500;
    font-style: Medium;
    font-size: calc(var(--u) * 48);
    leading-trim: NONE;
    line-height: calc(var(--u) * 48);
    letter-spacing: 0%;
}

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

a.link {
    display: flex;
    align-items: flex-end;
    gap: calc(var(--u) * 20);
    font-family: "Gilroy", sans-serif;
    font-weight: 500;
    font-size: calc(var(--u) * 40);
    line-height: 1;
    color: var(--blue);
    padding: calc(var(--u) * 8) 0;
    margin-top: calc(var(--u) * 40);
}

a.link svg {
	width: calc(var(--u) * 21);
	height: calc(var(--u) * 21);
}

a.link * {
    line-height: .9;
}

a.link svg {
    margin-bottom: calc(var(--u) * 5);
}

a.link span {
    position: relative;
    transition: all .25s ease;
}

a.link span::after {
    content: '';
    position: absolute;
    bottom: calc(var(--u) * -3);
    width: 0%;
    height: calc(var(--u) * 2);
    background: var(--blue);
    left: 0;
    transition: all .25s ease;
}

a.link:hover span::after {
    width: 100%;
}

.company__stats__item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(var(--u) * 2);
    padding-bottom: calc(var(--u) * 8);
    border-bottom: calc(var(--u) * 1) solid var(--Colors-Black-50, #00000080);
}

p.value {
    font-family: "Gilroy", sans-serif;
    font-weight: 600;
    font-style: Semibold;
    font-size: calc(var(--u) * 70);
    leading-trim: NONE;
    line-height: calc(var(--u) * 70);
    letter-spacing: 0%;
}

.company__stats__item .text {
    font-family: "Gilroy", sans-serif;
    font-weight: 400;
    font-style: Regular;
    font-size: calc(var(--u) * 24);
    leading-trim: NONE;
    line-height: calc(var(--u) * 28);
    letter-spacing: 0%;
}

.company__stats {
    row-gap: calc(var(--u) * 60);
}

section.company {
    margin-bottom: calc(var(--u) * 60);
}

section.partners .container {
    padding: 0;
    overflow: hidden;
}

.partners__slider {
    overflow: hidden;
    width: 100%;
}

.partners__track {
    display: flex;
    width: max-content;
    animation: partnersScroll 60s linear infinite;
}

.partners__item {
    width: min(10.4167vw, 12.5rem);
    height: min(10.4167vw, 12.5rem);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: min(1.5625vw, 1.875rem);
    flex-shrink: 0;
}

.partners__item img {
    width: 100%;
}

.fos__info svg {
    width: min(20.8333vw, 25rem);     /* 400px */
    height: min(5.4167vw, 6.5rem);    /* 104px */
}

@keyframes partnersScroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

@keyframes clientsScroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

.direction__wrapper {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 20);
    width: 100%;
}

.direction__tabs {
    display: flex;
    gap: calc(var(--u) * 40);
}

p.direction__tab {
    font-family: "Gilroy", sans-serif;
    font-weight: 500;
    font-style: Medium;
    font-size: calc(var(--u) * 40);
    leading-trim: NONE;
    line-height: calc(var(--u) * 40);
    letter-spacing: 0%;
    color: var(--Colors-Primary-70, #2755C5B2);
    transition: all .25s ease;
    border-bottom: calc(var(--u) * 2) solid transparent;
    cursor: pointer;
}

p.direction__tab.active {
    color: var(--blue);
    border-color: var(--blue);
}

p.direction__tab:hover {
    color: var(--blue);
}

.direction__body.grid {
    display: none;
    position: relative;
    gap: 0;
    overflow: hidden;
}

.direction__body.active {
    display: grid;
}

video.direction__bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: calc(var(--u) * 800);
    object-fit: cover;
}

.direction__body__item {
    z-index: 2;
    height: calc(var(--u) * 400);
    border: calc(var(--u) * 1) solid var(--Colors-White-100, #FFFFFF);
    background: #00000080;
    padding: calc(var(--u) * 40);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    color: var(--white);
    position: relative;
    /* cursor: pointer; */
    transition: all .25s ease;
}

.info {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 20);
    z-index: 2;
}

.info a.title {
    font-family: "Gilroy", sans-serif;
    font-weight: 600;
    font-style: Semibold;
    font-size: calc(var(--u) * 52);
    leading-trim: NONE;
    line-height: calc(var(--u) * 52);
    letter-spacing: 0%;
    color: var(--white);
}

.info .text {
    font-family: "Gilroy", sans-serif;
    font-weight: 400;
    font-style: Regular;
    font-size: calc(var(--u) * 22);
    leading-trim: NONE;
    line-height: calc(var(--u) * 26);
    letter-spacing: 0%;
    color: #FFFFFFB2;
    max-width: 600px;
}

.direction__body__item .link {
    font-family: "Gilroy", sans-serif;
    font-weight: 400;
    font-style: Regular;
    font-size: calc(var(--u) * 26);
    leading-trim: CAP_HEIGHT;
    line-height: calc(var(--u) * 26);
    letter-spacing: 0%;
    color: #FFFFFFB2;
    padding: 0;
    gap: calc(var(--u) * 12);
    margin: 0;
}

.links {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(var(--u) * 16);
    z-index: 2;
}

.direction__body__item .link span::after {
    content: none;
}

.direction__body__item .link span {
    border-bottom: calc(var(--u) * 1) solid transparent;
}

.direction__body__item .link:hover span {
    border-color: var(--white);
}

.direction__body__item .link:hover {
    color: var(--white);
}

.direction__body__item .link:hover svg path {
    fill-opacity: 1;
}

.direction__body__item::before {
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    inset: 0;
    background: url(/local/templates/space/img/noise.png);
    opacity: 0;
    pointer-events: none;
    z-index: 1;
    transition: all .25s ease;
}

.direction__body__item:hover::before {
    opacity: 1;
}

.footer__bottom {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.footer__bottom svg {
    width: 100%;
    height: auto;
    aspect-ratio: 1840 / 392;
    margin: calc(var(--u) * 40) 0 calc(var(--u) * 20) 0;
    display: block;
}

a.title:hover {
    text-decoration: underline;
}

section.blog h2.section__title {
    font-size: calc(var(--u) * 48);
    line-height: calc(var(--u) * 48);
}

section.blog .container {
    gap: calc(var(--u) * 20);
}

.section__content {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(var(--u) * 20);
}

.grid__3 {
    grid-template-columns: repeat(3, 1fr);
}

a.blog__item {
    border: calc(var(--u) * 1) solid var(--Colors-Black-5, #0000000D);
    display: flex;
    flex-direction: column;
    width: 100%;
    align-items: flex-start;
    position: relative;
    aspect-ratio: 1 / 1;
    justify-content: space-between;
    padding: calc(var(--u) * 20);
    transition: all .25s ease;
    gap: calc(var(--u) * 20);
    max-height: 600px;
}

.recent__posts__list a.blog__item:not(:last-child),
section.blog a.blog__item:not(:last-child, section.blog.blog--page a.blog__item) {
    border-right: none;
}

img.blog__item__poster {
    position: absolute;
    bottom: 0;
    right: 0;
    transition: all .25s ease;
    filter: grayscale(1);
    max-width: 65.2%;
}

img.blog__item__poster__mobile {
    display: none;
}

.blog__item__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(var(--u) * 16);
    max-width: 800px;
}

span.date {
    font-weight: 400;
    font-size: calc(var(--u) * 16);
    line-height: calc(var(--u) * 20);
    letter-spacing: 0%;
    color: #0000004D;
}

h3.blog__item__title {
    font-family: "Gilroy", sans-serif;
    font-weight: 600;
    font-style: SemiBold;
    font-size: calc(var(--u) * 24);
    leading-trim: NONE;
    line-height: calc(var(--u) * 28);
    color: #000000B2;
    transition: all .25s ease;
}

.blog__item__anons {
    font-family: "Gilroy", sans-serif;
    font-weight: 500;
    font-style: Medium;
    font-size: calc(var(--u) * 16);
    leading-trim: NONE;
    line-height: 160%;
    letter-spacing: 0%;
    color: #000000B2;
    -webkit-line-clamp: 3;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.blog__item__tags {
    display: flex;
    flex-wrap: wrap;
    gap: calc(var(--u) * 4);
    max-width: calc(var(--u) * 320);
}

span.blog__item__tag {
    font-family: "Gilroy", sans-serif;
    font-weight: 400;
    font-style: Regular;
    font-size: calc(var(--u) * 14);
    leading-trim: NONE;
    line-height: calc(var(--u) * 16);
    color: var(--blue);
}

a.blog__item:hover h3.blog__item__title {
    color: var(--blue);
}

a.blog__item:hover img.blog__item__poster {
    filter: grayscale(0);
}

a.blog__item:hover {
    background: var(--white);
}

section.blog a.link {
    font-size: calc(var(--u) * 26);
    line-height: 1;
    align-items: center;
    gap: calc(var(--u) * 12);
}

section.blog a.link svg {
    width: calc(var(--u) * 12);
    height: calc(var(--u) * 12);
    margin: 0;
}

section.blog a.link span::after {
    height: calc(var(--u) * 1);
}

section.fos .container {
    gap: calc(var(--u) * 120);
}

.fos__wrapper {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    height: calc(var(--u) * 800);
}

.fos__info {
    background: var(--Colors-Primary-10, #2755C51A);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(var(--u) * 40);
    padding: calc(var(--u) * 50);
    justify-content: space-between;
}

.fos__info__header {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 28);
}

p.fos__title {
    font-family: "Gilroy", sans-serif;
    font-weight: 600;
    font-style: SemiBold;
    font-size: calc(var(--u) * 48);
    leading-trim: NONE;
    line-height: calc(var(--u) * 48);
    letter-spacing: 0%;
}

p.fos__text {
    font-family: "Gilroy", sans-serif;
    font-weight: 500;
    font-style: Medium;
    font-size: calc(var(--u) * 28);
    leading-trim: NONE;
    line-height: calc(var(--u) * 32);
    letter-spacing: 0%;
}

form.fos__form {
    padding: calc(var(--u) * 40);
    background: var(--white);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: calc(var(--u) * 100);
}

.top {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 40);
}

.row {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 8);
}

p.row__title {
    font-family: "Gilroy", sans-serif;
    font-weight: 600;
    font-style: SemiBold;
    font-size: calc(var(--u) * 28);
    leading-trim: NONE;
    line-height: calc(var(--u) * 32);
    letter-spacing: 0%;
    color: var(--blue);
}

input.fos__input {
    font-family: "Gilroy", sans-serif;
    font-weight: 400;
    font-style: Regular;
    font-size: calc(var(--u) * 50);
    leading-trim: NONE;
    line-height: calc(var(--u) * 60);
    letter-spacing: 0%;
    padding: calc(var(--u) * 20) 0 calc(var(--u) * 8) 0;
    border: none;
    border-bottom: calc(var(--u) * 1) solid #2755C54D;
    transition: all .25s ease;
    color: var(--blue);
}

input.fos__input::placeholder {
    color: #2755C54D;
    transition: all .25s ease;
}

input.fos__input:focus {
    border-color: var(--blue);
}

form.fos__form .row:nth-child(2) {
    gap: calc(var(--u) * 12);
}

p.row__title.small {
    font-family: "Gilroy", sans-serif;
    font-weight: 600;
    font-style: SemiBold;
    font-size: calc(var(--u) * 24);
    leading-trim: NONE;
    line-height: calc(var(--u) * 28);
    letter-spacing: 0%;
}

form.fos__form .row:nth-child(2) input.fos__input {
    font-family: "Gilroy", sans-serif;
    font-weight: 400;
    font-style: Regular;
    font-size: calc(var(--u) * 24);
    leading-trim: NONE;
    line-height: calc(var(--u) * 28);
    letter-spacing: 0%;
    padding: 0 0 calc(var(--u) * 8) 0;
}

.bottom {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 16);
}

button.btn.fos__btn {
    font-family: "Gilroy", sans-serif;
    font-weight: 600;
    font-style: SemiBold;
    font-size: calc(var(--u) * 32);
    leading-trim: NONE;
    line-height: calc(var(--u) * 38);
    letter-spacing: 0%;
    padding: calc(var(--u) * 20);
    background: var(--blue);
    color: var(--white);
    background: var(--Colors-Primary-95, #2755C5F2);
}

button.btn.fos__btn:hover {
    background: var(--blue);
}

.fos__input__file {
	position: relative;
	display: flex;
	align-items: flex-start;
}
.fos__input__file span {
	position: relative;
	display: flex;
	cursor: pointer;
	outline: none;
	color: var(--blue);
	font-family: "Gilroy", sans-serif;
	font-weight: 600;
	font-size: calc(var(--u) * 18);
	line-height: calc(var(--u) * 22);
	border: calc(var(--u) * 1) solid var(--Colors-Primary-100, #2755C5);
	padding: calc(var(--u) * 5);
	transition: all .25s ease;
}
.fos__input__file input[type=file] {
	position: absolute;
	z-index: -1;
	opacity: 0;
	display: block;
	width: 0;
	height: 0;
}
 
/* Focus */
.fos__input__file input[type=file]:focus + span {
	box-shadow: 0 0 0 0.2rem rgba(0,123,255,.25);
}
 
/* Hover/active */
.fos__input__file:hover span {
	background-color: var(--blue);
	color: var(--white);
}
.fos__input__file:active span {
	background-color: #2E703A;
}
 
/* Disabled */
.fos__input__file input[type=file]:disabled + span {
	background-color: #eee;
}

.checkbox__input {
    appearance: none;
    -webkit-appearance: none; 
}

.checkbox__input {
    appearance: none;
    width: calc(var(--u) * 16);
    height: calc(var(--u) * 16);
    border: calc(var(--u) * 1) solid var(--Colors-Primary-70, #2755C5B2);
    background-color: transparent;
    cursor: pointer;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    margin: 0;
}

.checkbox__input:checked {
    background: url(/local/templates/space/img/check.svg) no-repeat center;
	background-color: var(--blue);
    border-color: var(--blue);
}

.checkbox__input:active {
    filter: brightness(90%);
}

.checkbox__input:hover:not(:disabled) {
    border-color: var(--blue);
}

.checkbox__input:focus {
    border-color: var(--blue);
    outline: none;
}

.checkbox__input:disabled {
    filter: none;
    opacity: 0.5;
    cursor: not-allowed;
}

.checkbox__input:disabled ~ .checkbox__label {
    opacity: 0.5;
    cursor: not-allowed;
}


label.checkbox__label {
    font-family: "Gilroy", sans-serif;
    font-weight: 500;
    font-style: Medium;
    font-size: calc(var(--u) * 16);
    leading-trim: NONE;
    line-height: calc(var(--u) * 16);
    letter-spacing: -3%;
    vertical-align: middle;
    color: #2755C5B2;
    width: 100%;
    display: block;
    cursor: pointer;
}

label.checkbox__label a {
    color: #2755C5B2;
}

label.checkbox__label a:hover {
    color: var(--blue);
}

.checkbox__item {
    display: flex;
    align-items: flex-start;
    gap: calc(var(--u) * 8);
    cursor: pointer;
}

.form__successful {
    display: flex;
    padding: calc(var(--u) * 40);
    background: var(--blue);
    color: var(--white);
    width: 100%;
}

.form__successful__info {
    width: 50%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(var(--u) * 28);
}

.form__successful__info .title {
    font-family: "Gilroy", sans-serif;
    font-weight: 600;
    font-style: SemiBold;
    font-size: calc(var(--u) * 48);
    leading-trim: NONE;
    line-height: calc(var(--u) * 48);
    letter-spacing: 0%;
    border-bottom: calc(var(--u) * 1) solid var(--white);
    padding-bottom: calc(var(--u) * 28);
}

.form__successful__info .text {
    font-family: "Gilroy", sans-serif;
    font-weight: 500;
    font-size: calc(var(--u) * 24);
    line-height: calc(var(--u) * 28);
}

.form__successful__info .text a {
    color: var(--white);
    border-bottom: calc(var(--u) * 1) solid;
}

.form__successful__info .text a:hover {
    border-color: transparent;
}

section.tg .container {
    align-items: center;
}

.tg__wrapper {
    max-width: calc(var(--u) * 1220);
    width: 100%;
    background: var(--white);
    padding: calc(var(--u) * 20);
    display: flex;
    gap: calc(var(--u) * 20);
}

.tg__wrapper .left {
    flex-direction: column;
    align-items: flex-start;
    gap: calc(var(--u) * 20);
    max-width: calc(100% - calc(var(--u) * 380));
    padding: 0;
}

.tg__wrapper .title {
    font-family: "Gilroy", sans-serif;
    font-weight: 600;
    font-style: SemiBold;
    font-size: calc(var(--u) * 60);
    leading-trim: NONE;
    line-height: calc(var(--u) * 60);
    letter-spacing: 0%;
    color: var(--blue);
}

.tg__wrapper .text {
    font-family: "Gilroy", sans-serif;
    font-weight: 600;
    font-style: SemiBold;
    font-size: calc(var(--u) * 24);
    leading-trim: NONE;
    line-height: calc(var(--u) * 28);
    letter-spacing: 0%;
    color: var(--blue);
}

a.btn.tg__btn {
    display: flex;
    align-items: center;
    gap: calc(var(--u) * 20);
    padding: calc(var(--u) * 10) calc(var(--u) * 20);
    background: var(--blue);
    color: var(--white);
    border: calc(var(--u) * 1) solid var(--blue);
}

a.btn.tg__btn:hover {
    background: var(--white);
    color: var(--blue);
}

a.btn.tg__btn:hover svg path {
    fill: var(--blue);
}

.tg__wrapper .right {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 8);
    max-width: calc(var(--u) * 360);
    justify-content: space-between;
}

.tg__wrapper .item {
    font-family: "Gilroy", sans-serif;
    font-weight: 600;
    font-style: SemiBold;
    font-size: calc(var(--u) * 20);
    leading-trim: NONE;
    line-height: calc(var(--u) * 20);
    letter-spacing: 0%;
    color: var(--blue);
    padding: calc(var(--u) * 12);
    background: var(--Colors-Primary-10, #2755C51A);
}

footer.footer {
    padding: calc(var(--u) * 40) 0 calc(var(--u) * 20) 0;
    background: var(--blue);
    color: var(--white);
}

nav.footer__nav ul {
    display: flex;
    align-items: center;
    list-style: none;
    gap: calc(var(--u) * 40);
}

nav.footer__nav ul li a {
    font-family: "Gilroy", sans-serif;
    font-weight: 500;
    font-style: Medium;
    font-size: calc(var(--u) * 28);
    leading-trim: NONE;
    line-height: calc(var(--u) * 32);
    color: #FFFFFFB2;
}

nav.footer__nav ul li a:hover {
    color: var(--white);
}

.footer__contacts {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 40);
    align-items: flex-start;
}

.footer__contacts .mail {
    font-family: "Gilroy", sans-serif;
    font-weight: 500;
    font-style: Medium;
    font-size: calc(var(--u) * 100);
    leading-trim: NONE;
    line-height: calc(var(--u) * 100);
    letter-spacing: -3%;
    color: var(--white);
    position: relative;
}

.footer__contacts .mail::before {
    content: '';
    position: absolute;
    width: 0;
    height: calc(var(--u) * 3);
    bottom: calc(var(--u) * -13);
    left: 0;
    background: var(--white);
    transition: all .25s ease;
}

.footer__contacts .mail:hover::before {
    width: 100%;
}

.footer__contacts__list {
    display: flex;
    align-items: flex-start;
    gap: calc(var(--u) * 20);
    width: 100%;
}

.footer__contacts__item {
    width: calc(var(--u) * 290);
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 2);
}

.footer__contacts__item .title {
    font-family: "Gilroy", sans-serif;
    font-weight: 600;
    font-style: SemiBold;
    font-size: calc(var(--u) * 24);
    leading-trim: NONE;
    line-height: calc(var(--u) * 28);
    letter-spacing: 0%;
}

a.footer__contacts__phone {
    font-family: "Gilroy", sans-serif;
    font-weight: 500;
    font-style: Medium;
    font-size: calc(var(--u) * 22);
    leading-trim: NONE;
    line-height: calc(var(--u) * 26);
    letter-spacing: 0%;
    color: var(--white);
}

.footer__contacts__item .text {
    font-family: "Gilroy", sans-serif;
    font-weight: 500;
    font-style: Medium;
    font-size: calc(var(--u) * 18);
    leading-trim: NONE;
    line-height: calc(var(--u) * 22);
    color: #FFFFFFB2;
    display: flex;
    flex-direction: column;
}

.footer__contacts__item .text a {
    color: #FFFFFFB2;
}

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

.footer__bottom__info {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

a.footer__link {
    font-family: "Gilroy", sans-serif;
    font-weight: 400;
    font-style: Regular;
    font-size: calc(var(--u) * 20);
    leading-trim: NONE;
    line-height: calc(var(--u) * 24);
    color: #FFFFFFB2;
}

p.copyright {
    font-family: "Gilroy", sans-serif;
    font-weight: 400;
    font-style: Regular;
    font-size: calc(var(--u) * 18);
    leading-trim: NONE;
    line-height: calc(var(--u) * 22);
    color: #FFFFFF80;
}

a.footer__link:hover {
    color: var(--white);
}

/* PROJECTS */

.pt {
    padding-top: calc(var(--u) * 120);
}

.pt--detail {
    padding-top: calc(var(--u) * 80);
}

.projects__cats__wrapper {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 20);
}

.projects__cats__row {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 10);
}

span.projects__cats__name {
    font-weight: 500;
    font-size: 16px;
    line-height: 1;
}

.projects__cats__row .projects__cats__item {
    font-size: 16px;
    line-height: 22px;
    padding: 6px 20px;
    border-radius: 12px;
}

.projects__cats__row .projects__cats__item.active {
    background: var(--blue);
    color: var(--white);
}

.projects__cats__row .projects__cats {
    gap: 2px;
}

.projects__list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 10px;
    width: 100%;
}

.projects__list a.projects__item:nth-child(1), .projects__list a.projects__item:nth-child(8) {
    width: 100%;
    height: calc(var(--u) * 900);
}

.projects__list a.projects__item {
    width: calc(50% - 5px);
}

section.blog.blog--page .section__header {
    gap: calc(var(--u) * 80);
}

.blog__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

a.blog__tag {
    font-family: "Gilroy", sans-serif;
    font-weight: 600;
    font-size: 22px;
    line-height: 26px;
    letter-spacing: 0%;
    color: #00000080;
}

a.blog__tag.active {
    color: var(--blue);
}

a.blog__tag:hover {
    color: var(--blue);
}

.blog__list {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    width: 100%;
}

.blog__list a.blog__item {
    width: calc(100%/3);
    max-height: calc(var(--u) * 600);
}

.blog__list a.blog__item:nth-child(7), .blog__list a.blog__item:nth-child(16) {
    width: calc((100% / 3) * 2);
}

section.blog.blog--page .container {
    gap: calc(var(--u) * 40);
}

.blog__list a.blog__item.marked {
    background: var(--blue);
    justify-content: flex-end;
    padding: calc(var(--u) * 40);
    border: none;
}

img.blog__item__poster.blog__marked__poster {
    bottom: auto;
    top: 0;
    filter: none;
}

img.blog__marked__logo {
    position: absolute;
    top: calc(var(--u) * 40);
    left: calc(var(--u) * 40);
    width: calc(var(--u) * 150);
    height: auto;
}

.blog__list a.blog__item.marked span.date {
    color: #FFFFFF80;
}

.blog__list a.blog__item.marked h3.blog__item__title {
    color: var(--white);
}

.blog__list a.blog__item.marked .blog__item__anons {
    color: #FFFFFFB2;
}

.blog__list a.blog__item.marked span.blog__item__tag {
    color: var(--white);
}

.blog__list a.blog__item.marked:nth-child(7) img.blog__item__poster, .blog__list a.blog__item.marked:nth-child(16) img.blog__item__poster {
    max-width: calc(var(--u) * 420);
}

.blog__list a.blog__item.marked img.blog__item__poster {
    max-width: calc(var(--u) * 380);
}

.blog__list a.blog__item:nth-child(7) img.blog__marked__logo, .blog__list a.blog__item:nth-child(16) img.blog__marked__logo {
    width: calc(var(--u) * 315);
}

.blog__list a.blog__item:nth-child(7) h3.blog__item__title, .blog__list a.blog__item:nth-child(16) h3.blog__item__title {
    font-size: calc(var(--u) * 36);
    line-height: calc(var(--u) * 42);
}

.categories {
    display: flex;
    gap: 10px;
}

section.project--page .section__header {
    gap: calc(var(--u) * 20);
}

a.category.tag {
    color: var(--blue);
    background: var(--Colors-Primary-10, #2755C51A);
}

a.category.tag:hover {
    background: var(--blue);
    color: var(--white);
}

section.project--page .container:not(section.projects.project--page .container) {
    padding: 0;
}

.project__detail h1.detail__title {
    padding-left: calc(var(--u) * 40);
}

.project__detail__header {
    display: flex;
    flex-direction: column;
}

.project__detail .categories {
    padding-left: calc(var(--u) * 40);
    margin: calc(var(--u) * 20) 0 calc(var(--u) * 40) 0;
}

.project__poster {
    display: flex;
    width: 100%;
    max-height: calc(var(--u) * 1080);
    overflow: hidden;
}

.project__poster img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.project__detail {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.author {
    display: flex;
    flex-direction: column;
    padding: calc(var(--u) * 40);
    gap: 20px;
    background: var(--Colors-Primary-10, #2755C51A);
}

.author__header {
    display: flex;
    align-items: center;
    gap: 20px;
}

.author__header img {
    width: calc(var(--u) * 120);
    height: calc(var(--u) * 120);
    object-fit: cover;
    border-radius: 50%;
}

.author__info {
    display: flex;
    flex-direction: column;
}

.author__inner {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 20);
    padding-left: calc(var(--u) * 40);
    border-left: calc(var(--u) * 4) solid var(--Colors-Primary-100, #2755C5);
    max-width: calc(var(--u) * 1200);
}

.author__info .name {
    font-weight: 600;
    font-size: calc(var(--u) * 32);
    line-height: calc(var(--u) * 38);
    letter-spacing: 0%;
}

.author__info .status {
    font-weight: 500;
    font-size: calc(var(--u) * 20);
    line-height: calc(var(--u) * 24);
    letter-spacing: 0%;
    color: #00000080;
}

.author__text {
    font-weight: 400;
    font-size: calc(var(--u) * 28);
    line-height: 160%;
    letter-spacing: 0%;
}

.project__detail__content {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.project__detail__content img {
    width: 100%;
    height: auto;
}

.text__container {
    display: flex;
    flex-direction: column;
    max-width: calc(var(--u) * 1200);
    padding: calc(var(--u) * 120) 0 calc(var(--u) * 80) 0;
    font-size: calc(var(--u) * 28);
    line-height: 1.8;
    gap: calc(var(--u) * 20);
}

.text__container h2 {
    font-weight: 500;
    font-size: calc(var(--u) * 50);
    line-height: calc(var(--u) * 60);
    letter-spacing: 0%;
    color: var(--blue);
}

.text__container h3 {
    font-weight: 500;
    font-size: calc(var(--u) * 42);
    line-height: calc(var(--u) * 48);
    letter-spacing: 0%;
    color: var(--blue);
}

.text__container ol, .text__container ul {
    padding: 20px 0 20px 30px;
    font-size: calc(var(--u) * 24);
    line-height: 1.6;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.project__detail__slider.swiper {
    width: 100%;
    padding: 0 calc(var(--u) * 40);
    cursor: grab;
}

section.project__service {
    margin-bottom: calc(var(--u) * 80);
}

.project__service__inner {
    width: 100%;
    padding: calc(var(--u) * 40);
    background: var(--blue);
    color: var(--white);
    display: flex;
    flex-direction: column;
    gap: 20px;
    align-items: flex-start;
}

p.project__service__title {
    max-width: calc(var(--u) * 1200);
    font-size: calc(var(--u) * 70);
    line-height: calc(var(--u) * 84);
    font-weight: 600;
}

.project__service__text {
    max-width: calc(var(--u) * 800);
    font-size: calc(var(--u) * 24);
    line-height: calc(var(--u) * 28);
    color: #FFFFFFB2;
}

.project__service__inner a.link {
    color: var(--white);
}

.project__service__inner a.link span::after {
    background: var(--white);
}

.project__service__inner a.link svg path {
    stroke: var(--white);
}

section.recent__project .container {
    gap: 20px;
}

section.recent__project .container h3.section__title {
    font-size: calc(var(--u) * 48);
    line-height: 1;
    color: var(--blue);
}

.recent__project__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    width: 100%;
}

.recent__project__list a.projects__item {
    height: calc(var(--u) * 395);
}

section.recent__project {
    margin-bottom: calc(var(--u) * 90);
}

.project__detail__slider.swiper .swiper-slide {
    width: calc(var(--u) * 1200);
    height: calc(var(--u) * 960);
    position: relative;
}

.project__detail__slider.swiper .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

section.post .container {
    gap: 20px;
}

section.post .section__header {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

h2.detail__title {
    font-weight: 500;
    font-size: calc(var(--u) * 60);
    line-height: 1;
    letter-spacing: 0%;
    color: var(--blue);
}

a.back__link {
    display: flex;
    align-items: center;
    gap: 20px;
    font-size: 24px;
    line-height: 28px;
    color: var(--blue);
    font-weight: 600;
}

a.back__link span {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}

a.back__link span::before {
    position: absolute;
    content: '';
    width: 0%;
    height: 1px;
    background: var(--blue);
    bottom: 0;
    transition: all .25s ease;
}

a.back__link:hover span::before {
    width: 100%;
}

section.post .post__content {
    padding: calc(var(--u) * 40);
    background: var(--white);
    display: flex;
    gap: calc(var(--u) * 60);
    align-items: flex-start;
    max-width: 100%;
}

aside.sidebar {
    max-width: calc(var(--u) * 600);
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 40);
    position: sticky;
    top: calc(var(--u) * 90);
}

.content {
    width: calc(100% - calc(var(--u) * 660));
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 40);
}

.post__content__header {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.post__info {
    display: flex;
    align-items: center;
    gap: 40px;
}

.post__info span.date, .post__info a.tag {
    font-weight: 500;
    font-size: 16px;
    line-height: 1;
    color: #00000080;
    padding: 0;
    background: transparent;
}

.post__info .tags {
    gap: 12px;
}

.post__info .tags a.tag:hover {
    color: var(--blue);
}

.post__info .tags a.tag {
    color: #000000B2;
    font-weight: 400;
}

h1.post__title {
    font-weight: 600;
    font-size: calc(var(--u) * 60);
    line-height: 1;
    letter-spacing: 0%;
}

.post__quar {
    padding: 10px 20px;
    border-left: 4px solid var(--blue);
    background: var(--Colors-Primary-10, #2755C51A);
    font-size: 22px;
    line-height: 1.8;
}

.post__picture {
    display: flex;
    width: 100%;
}

.post__picture img, .post__picture picture {
    width: 100%;
    height: 600px;
    object-fit: cover;
}

.post__content__detail {
    gap: calc(var(--u) * 30);
    font-size: calc(var(--u) * 28);
    line-height: 1.8;
    width: 100%;
    padding-bottom: calc(var(--u) * 20);
    border-bottom: 1px solid var(--Colors-Black-30, #0000004D);
}

.post__content__detail h2 {
    font-weight: 600;
    font-size: calc(var(--u) * 50);
    line-height: calc(var(--u) * 60);
    letter-spacing: 0%;
    margin-top: calc(var(--u) * 60);
    margin-bottom: calc(var(--u) * 30);
}

.post__content__detail h2 strong,
.post__content__detail h3 strong{
    font-weight: 600;
}

.post__content__detail h3 {
    margin-top: calc(var(--u) * 60);
    margin-bottom: calc(var(--u) * 30);
    font-size: calc(var(--u) * 40);
    font-weight: 600;
    line-height: calc(var(--u) * 48);
}

.post__content__detail img, .post__content__detail picture {
    max-width: 100%;
    height: auto;
}

.post__content__detail p {
    margin-bottom: 20px;
}

.post__content__detail ul, .post__content__detail ol {
    margin: 20px 0;
    padding-left: 25px;
}

.post__content__detail ul li, .post__content__detail ol li {
    padding: 10px 0;
}

.post__content__detail b {
    font-weight: 700;
}

.post__content__detail ul li {
    list-style: none;
    padding-left: 44px;
    position: relative;
}

.post__content__detail ul {
    padding: 0;
}

.post__content__detail ul li::before {
    content: '';
    width: 24px;
    height: 24px;
    position: absolute;
    left: 0;
    top: 23px;
    background: var(--blue);
    border-radius: 50%;
}

figure {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 24);
    margin: 20px 0;
    align-items: center;
}

figcaption, span.post__small, em {
    font-size: calc(var(--u) * 16);
    line-height: calc(var(--u) * 20);
    font-weight: 500;
    color: #00000080;
    width: 100%;
    text-align: left;
    display: flex;
}

.author p {
    margin: 0;
}

.post__content__detail .author {
    border-left: 4px solid var(--Colors-Primary-100, #2755C5);
    margin: calc(var(--u) * 40) 0 0;
}

.post__share {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.post__share span {
    line-height: 28px;
    font-size: 24px;
    font-weight: 500;
}

.share__btns {
    display: flex;
    align-items: center;
    gap: calc(var(--u) * 20);
}

a.share__link {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 80px;
    height: 80px;
    border: 1px solid var(--blue);
}

a.share__link:hover {
    background: var(--blue);
}

a.share__link:hover svg path {
    fill: var(--white);
}

a.share__link svg {
    width: 40px;
    height: 40px;
}

section.post {
    margin-bottom: calc(var(--u) * 60);
    max-width: 1920px;
}

.recent__posts__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    width: 100%;
}

section.recent__posts {
    margin-bottom: calc(var(--u) * 90);
}

.post__nav {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 22);
}

p.post__nav__title {
    font-size: 18px;
    line-height: 22px;
    color: #00000080;
    font-weight: 600;
}

nav.post__nav__list ul {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

nav.post__nav__list {
    padding: calc(var(--u) * 8) 0 calc(var(--u) * 8) calc(var(--u) * 40);
    border-left: 4px solid var(--blue);
}

nav.post__nav__list ul li {
    position: relative;
    color: #0000004D;
}

nav.post__nav__list ul li a {
    color: #0000004D;
    font-weight: 500;
    font-size: 18px;
    line-height: 22px;
    width: 100%;
    display: flex;
}

nav.post__nav__list ul li a:hover {
    color: var(--blue);
}

nav.post__nav__list ul li:hover {
    color: var(--blue);
}

.post__service {
    display: flex;
    padding: 40px;
    background: var(--blue);
    color: var(--white);
    gap: 20px;
    flex-direction: column;
    align-items: flex-start;
}

p.post__service__title {
    font-size: calc(var(--u) * 36);
    line-height: calc(var(--u) * 42);
    font-weight: 600;
}

.post__service__text {
    font-size: 24px;
    line-height: 28px;
    color: #FFFFFFB2;
}

.post__service a.link {
    color: var(--white);
    font-size: calc(var(--u) * 26);
}

.post__service a.link svg path {
    stroke: var(--white);
}

.post__service a.link svg {
    width: 12px;
    height: 12px;
    margin: 0;
}

.post__service a.link span::after {
    background: var(--white);
}

a.back__link svg {
    width: 33px;
    height: 15px;
}

.post__nav.adaptive {
    display: none;
}

.mark {
    background: var(--Colors-Primary-10, #2755C51A);
    border-left: 4px solid var(--Colors-Primary-100, #2755C5);
    padding: 40px;
    font-size: 28px;
    line-height: 1.6;
    color: var(--blue);
    font-weight: 500;
    margin: 40px 0;
}

section.about__hero {
    max-height: calc(var(--u) * 1000);
    height: 100vh;
    margin-bottom: calc(var(--u) * 100);
}

section.about__hero .container {
    justify-content: center;
}

.about__hero__wrapper {
    display: flex;
    flex-direction: column;
}

.about__hero__info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(var(--u) * 68);
    z-index: 9;
}

.about__hero__info h1.title {
    font-size: calc(var(--u) * 100);
    font-weight: 700;
    color: var(--white);
    line-height: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.about__hero__info h1.title span.large {
    font-size: calc(var(--u) * 140);
    line-height: calc(var(--u) * 100);
}

.about__hero__info .subtitle {
    font-size: calc(var(--u) * 40);
    line-height: 1.2;
    color: var(--white);
    font-weight: 500;
    max-width: calc(var(--u) * 1065);
}

.company__information img {
    width: calc(var(--u) * 600);
    height: auto;
}

section.company .container {
    gap: calc(var(--u) * 80);
}

.company__information__text {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 40);
    font-size: calc(var(--u) * 32);
    line-height: calc(var(--u) * 38);
}

.company__principe__items > p {
    font-size: 26px;
    line-height: 1;
    font-weight: 600;
}

.company__principe__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: calc(var(--u) * 50) calc(var(--u) * 60);
}

.company__information img {
    width: calc(var(--u) * 600);
    height: auto;
}

section.company .container {
    gap: calc(var(--u) * 80);
}

.company__information__text {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 40);
    font-size: calc(var(--u) * 32);
    line-height: calc(var(--u) * 38);
}

.company__principe {
    background: var(--blue);
    color: var(--white);
    padding: 40px;
}

h3.section__title {
    font-size: 40px;
    line-height: 48px;
    font-weight: 600;
    max-width: 560px;
}

.company__principe__wrapper {
    display: flex;
    flex-direction: column;
    padding-top: 40px;
    gap: calc(var(--u) * 100);
}

.company__principe__items {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.company__principe__items > p {
    font-size: 26px;
    line-height: 1;
    font-weight: 600;
}

.company__principe__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: calc(var(--u) * 50) calc(var(--u) * 60);
}

.company__principe__item {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

p.num {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    line-height: 1;
    font-weight: 600;
    width: 100%;
}

p.num span.line {
    width: calc(100% - 30px);
    height: 2px;
    background: #FFFFFF80;
    display: flex;
}

p.num span {
    width: 20px;
}

.company__principe__item .text {
    font-size: 20px;
    line-height: 1.2;
}

.company__principe__disclaimer {
    max-width: 445px;
    font-size: 20px;
    line-height: 1.2;
    color: #FFFFFFB2;
}

h2.section__title.small {
    font-size: calc(var(--u) * 50);
    line-height: calc(var(--u) * 60);
}

.section__description {
    display: flex;
    flex-direction: column;
    gap: 20px;
    font-size: calc(var(--u) * 32);
    line-height: calc(var(--u) * 38);
}

section.team .container {
    gap: calc(var(--u) * 80);
    padding: 0;
}

section.team .grid {
    padding: 0 calc(var(--u) * 40);
}

.team__slider.swiper {
    width: 100%;
    padding-left: calc(var(--u) * 40);
    padding-right: calc(var(--u) * 40);
    cursor: grab;
}

.swiper-slide.team__item {
    display: flex;
    flex-direction: column;
    gap: 18px;
    width: 31.25vw;
}

.team__item__info {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-height: 62px;
}

.team__item__info .name {
    font-size: 32px;
    line-height: 1;
    font-weight: 600;
}

.team__item__info .status {
    font-size: 18px;
    line-height: 20px;
    font-weight: 500;
    color: var(--blue);
}

.team__item__photo {
    display: flex;
    position: relative;
}

.team__item__photo > img {
    width: 100%;
    height: 41.6667vw;
    object-fit: cover;
}

.overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: linear-gradient(180deg, rgba(2, 24, 77, 0) 0%, #0C2970 100%);
    transition: all .25s ease;
    opacity: 0;
}

.team__item__text {
    position: absolute;
    width: calc(100% - 40px);
    left: 20px;
    bottom: 20px;
    font-size: 18px;
    line-height: 1.3;
    font-weight: 600;
    color: var(--white);
    transition: all .25s ease;
    opacity: 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.swiper-slide.team__item:hover .overlay, .swiper-slide.team__item:hover .team__item__text {
    opacity: 1;
}

section.team .section__footer {
    padding: 0 calc(var(--u) * 40);
}

.team__footer__text {
    width: calc(var(--u) * 915);
    display: flex;
    flex-direction: column;
    gap: 20px;
    font-size: calc(var(--u) * 32);
    line-height: calc(var(--u) * 38);
    font-weight: 500;
}

section.geo .container {
    gap: 10px;
}

.geo__wrapper {
    display: flex;
    width: 100%;
}

.geo__wrapper img {
    width: 100%;
    height: auto;
}

.grid.grid__5__7 {
    grid-template-columns: 5fr 7fr;
}

section.rules h2.section__title {
    max-width: calc(var(--u) * 600);
}

.rules__row.grid {
    gap: 0 calc(var(--u) * 80);
    grid-template-columns: repeat(2, calc(var(--u) * 462));
    padding-bottom: calc(var(--u) * 40);
    border-bottom: 1px solid var(--Colors-Black-50, #00000080);
}

.rules__item {
    font-size: calc(var(--u) * 28);
    font-weight: 500;
    line-height: 1;
}

.rules__list {
    display: flex;
    flex-direction: column;
    gap: 60px;
}

.rules__row.grid:last-child {
    border: none;
}

.clients__info {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

p.clients__title {
    font-size: calc(var(--u) * 40);
    line-height: 1;
    font-weight: 500;
}

p.clients__text {
    font-size: calc(var(--u) * 22);
    line-height: calc(var(--u) * 26);
    max-width: calc(var(--u) * 600);
}

.clients__slider__wrapper {
    width: 100%;
    max-width: 55.46875vw;
    min-height: calc(var(--u) * 700);
    background: var(--Colors-Primary-10, #2755C51A);
    padding: calc(var(--u) * 50);
    position: relative;
}

.clients__slider.swiper {
    width: 100%;
    height: 100%;
}

.swiper-slide.clients__item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    height: auto;
    gap: 40px;
    opacity: 0 !important;
    transition: all .25s ease;
}

.clients__item__info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    padding-right: calc(var(--u) * 105);
}

.clients__item__info .text {
    font-size: calc(var(--u) * 50);
    line-height: calc(var(--u) * 60);
    font-weight: 500;
    color: var(--blue);
}

.clients__item__info .read__more {
    transition: all .25s ease;
    font-size: calc(var(--u) * 20);
    line-height: calc(var(--u) * 24);
    color: #2755C580;
    cursor: pointer;
    position: relative;
}

.clients__item__info .read__more::after {
    content: '';
    width: 0;
    height: 1px;
    bottom: 0;
    left: 0;
    position: absolute;
    background: #2755C580;
    transition: all .25s ease;
}

.clients__item__info .read__more:hover {
    color: var(--blue);
}

.clients__item__info .read__more:hover::after {
    width: 100%;
    background: var(--blue);
}

.clients__item__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.clients__item__footer img {
    width: 125px;
    height: auto;
}

.clients__item__author {
    display: flex;
    flex-direction: column;
    gap: 4px;
    align-items: flex-start;
}

.clients__item__author .name {
    font-size: 24px;
    line-height: 28px;
    color: var(--blue);
    font-weight: 600;
}

.clients__item__author .status {
    font-size: 18px;
    line-height: 22px;
    color: #2755C5B2;
    font-weight: 500;
}

.clients {
    width: 100%;
}

.clients__track {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap: calc(var(--u) * 20);
    grid-template-rows: repeat(2, auto);
}

.clients__item {
    width: calc(var(--u) * 212.5);
    height: calc(var(--u) * 106.25);
    display: flex;
    justify-content: center;
    align-items: center;
}

.clients__item img {
    max-width: 63%;
    height: auto;
}

/* скрываем дубли на десктопе */
.clients__item--duplicate {
    display: none;
}

section.clients {
    margin-bottom: calc(var(--u) * 40);
}

.clients__wrapper.grid.grid__5__7 {
    gap: calc(var(--u) * 175);
}

.clients__slider__more {
    display: flex;
    align-items: center;
    gap: calc(var(--u) * 16);
    font-size: calc(var(--u) * 20);
    line-height: calc(var(--u) * 24);
    font-weight: 500;
    color: #2755C5B2;
    position: absolute;
    right: calc(var(--u) * 50);
    top: calc(var(--u) * 50);
    z-index: 9;
    cursor: pointer;
}

.clients__slider__more span {
    transition: all .25s ease;
}

.clients__slider__more:hover span {
    color: var(--blue);
}

.clients__slider__more:hover svg path {
    fill-opacity: 1;
}

.clients__slider__more:hover svg {
    transform: rotate(360deg);
}

.swiper-slide.clients__item.swiper-slide-active {
    opacity: 1 !important;
}

section.service__hero {
    height: calc(var(--u) * 718);
    background: var(--blue);
    padding-bottom: calc(var(--u) * 100);
    margin-bottom: calc(var(--u) * 100);
}

.service__hero__wrapper {
    display: flex;
    height: 100%;
    align-items: flex-end;
}

.service__hero__info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    max-width: 1065px;
    gap: calc(var(--u) * 40);
}

h1.title {
    font-size: calc(var(--u) * 80);
    line-height: 1;
    color: var(--white);
    font-weight: 600;
}

.service__hero__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 1px;
}

.service__hero__tags .tag {
    background: var(--white);
    color: var(--blue);
}

.service__hero__text {
    font-size: calc(var(--u) * 24);
    line-height: 1;
    max-width: calc(var(--u) * 757);
    color: #FFFFFFB2;
}

section.service__hero .btn {
    background: var(--white);
    color: var(--blue);
}

section.service__hero .btn:hover {
    background: var(--Colors-White-50, #FFFFFF80);
    color: var(--white);
}

section.spaces h2.section__title {
    font-size: calc(var(--u) * 60);
    font-weight: 600;
}

.spaces__list {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.spaces__item {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    padding: calc(var(--u) * 50) 0;
    border-top: 1px solid #00000033;
}

p.spaces__item__title {
    font-size: calc(var(--u) * 40);
    line-height: 1;
    font-weight: 600;
}

.spaces__item__tags {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 1px;
    transition: all .25s ease;
    opacity: 0;
}

.spaces__item__tags ul {
    display: flex;
    flex-wrap: wrap;
    gap: 1px;
    list-style: none;
}

.spaces__item__tags ul li {
    display: flex;
    font-family: "Gilroy", sans-serif;
    font-weight: 500;
    font-size: calc(var(--u) * 18);
    line-height: calc(var(--u) * 22);
    letter-spacing: 0%;
    text-align: center;
    padding: calc(var(--u) * 6) calc(var(--u) * 20);
    background: #9ba1a8;
    backdrop-filter: blur(calc(var(--u) * 50));
    color: var(--white);
    border-radius: calc(var(--u) * 12);
}

.spaces__item:hover .spaces__item__tags {
    opacity: 1;
}

section.spaces {
    margin-bottom: calc(var(--u) * 200);
}

section.sets h3.section__title {
    color: var(--blue);
}

.sets__wrapper {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 40);
}

.sets__wrapper .link {
    margin: 0;
}

.sets__items {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.sets__item__row {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: calc(var(--u) * 60);
    padding-bottom: calc(var(--u) * 40);
    border-bottom: 1px solid var(--Colors-Black-50, #00000080);
}

.sets__item__row:last-child {
    border: none;
}

.sets__item {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

p.sets__item__title {
    font-size: calc(var(--u) * 32);
    font-weight: 500;
    line-height: 1.355;
}

.sets__item__text {
    display: flex;
    flex-direction: column;
    gap: 20px;
    font-size: 18px;
    line-height: 1;
    color: #00000080;
    font-weight: 500;
    line-height: 1.167;
}

.sets__item__text ol, .sets__item__text ul {
    padding-left: 20px;
}

section.steps {
    padding: calc(var(--u) * 100) 0;
    background: var(--blue);
    color: var(--white);
    margin-bottom: calc(var(--u) * 100);
}

.steps__wrapper {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 100);
    width: 100%;
}

.steps__items {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: calc(var(--u) * 112) calc(var(--u) * 40);
}

.steps__item {
    display: flex;
    flex-direction: column;
}

.steps__item .title {
    font-size: calc(var(--u) * 32);
    line-height: 1;
    margin: calc(var(--u) * 60) 0 calc(var(--u) * 10) 0;
    font-weight: 500;
}

.steps__item .text {
    font-size: calc(var(--u) * 20);
    line-height: 1.2;
    font-weight: 500;
}

section.steps a.link {
    color: var(--white);
}

section.steps a.link span::after {
    background: var(--white);
}

section.steps a.link svg path {
    stroke: var(--white);
}

section.approach .container {
    gap: calc(var(--u) * 100);
}

section.approach .section__header {
    gap: calc(var(--u) * 20);
    max-width: 600px;
}

section.approach .section__header h3.section__title {
    color: var(--blue);
    line-height: 1;
}

section.approach .section__header p.section__description {
    font-size: calc(var(--u) * 20);
    line-height: calc(var(--u) * 24);
    font-weight: 500;
    color: #2755C5B2;
}

.approach__items {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    gap: 40px 0;
}

.approach__wrapper {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 40px;
    align-items: flex-start;
}

.approach__wrapper .link {
    margin: 0;
}

.approach__item {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding-bottom: calc(var(--u) * 40);
    width: calc((100% - calc(var(--u) * 120))/3);
    border-bottom: 1px solid var(--Colors-Black-50, #00000080);
}

p.approach__title {
    font-size: calc(var(--u) * 32);
    line-height: 1.355;
    font-weight: 500;
}

.approach__text {
    display: flex;
    flex-direction: column;
    gap: 20px;
    font-size: calc(var(--u) * 18);
    line-height: 1.167;
    color: #00000080;
    font-weight: 500;
}

.approach__text ol, .approach__text ul {
    padding-left: 20px;
}

.approach__item:nth-child(3n-1), .approach__item:nth-child(3n-2) {
    padding-right: calc(var(--u) * 60);
    width: calc(calc((100% - calc(var(--u) * 120))/3) + calc(var(--u) * 60));
}

section.approach {
    margin-bottom: calc(var(--u) * 140);
}

section.service__projects .container {
    gap: 20px;
}

section.service__projects h3.section__title {
    color: var(--blue);
}

section.profits {
    padding: 40px 0;
    background: var(--blue);
    color: var(--white);
    margin-bottom: calc(var(--u) * 100);
}

.profits__wrapper {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 60);
    align-items: flex-start;
}

.profits__wrapper .text {
    font-size: calc(var(--u) * 22);
    line-height: 1.355;
    font-weight: 600;
}

.profits__items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: calc(var(--u) * 60);
}

.profits__items .steps__item {
    gap: 10px;
}

.profits__items .steps__item p.text {
    font-size: calc(var(--u) * 20);
    line-height: 1.2;
    font-weight: 500;
}

.opacity__text {
    max-width: 455px;
    font-size: calc(var(--u) * 20);
    line-height: 1.2;
    color: #FFFFFFB2;
}

.profits__wrapper .btn {
    background: var(--white);
    color: var(--blue);
}

.profits__wrapper .btn:hover {
    color: var(--white);
    background: var(--Colors-White-50, #FFFFFF80);
}

section.faq .container {
    gap: 20px;
}

section.faq h2.section__title {
    font-size: calc(var(--u) * 60);
    line-height: 1.141;
    font-weight: 600;
    color: var(--black);
}

.faq__items {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.faq__item {
    display: flex;
    flex-direction: column;
    border-bottom: 1px solid var(--Colors-Black-50, #00000080);
    padding: calc(var(--u) * 40) 0 calc(var(--u) * 20);
    gap: calc(var(--u) * 20);
}

.faq__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    cursor: pointer;
}

p.question {
    font-size: calc(var(--u) * 32);
    line-height: 1.355;
    font-weight: 500;
    max-width: 90%;
    transition: all .25s ease;
}

p.faq__icon {
    display: flex;
    width: calc(var(--u) * 32);
    height: calc(var(--u) * 32);
    position: relative;
    transition: all .25s ease;
    cursor: pointer;
    justify-content: center;
    align-items: center;
}

.faq__item span.line {
    width: 100%;
    height: calc(var(--u) * 3);
    background: var(--blue);
    position: absolute;
    transition: all .25s ease;
}

.faq__item span.line:nth-child(2) {
    transform: rotate(90deg);
}

.faq__body {
    overflow: hidden;
    transition: all .25s ease;
    height: 0px;
}

.faq__body__inner {
    display: flex;
    flex-direction: column;
    gap: 20px;
    font-size: calc(var(--u) * 18);
    line-height: calc(var(--u) * 22);
    font-weight: 500;
    color: #000000B2;
    max-width: 600px;
}

section.faq {
    margin-bottom: calc(var(--u) * 90);
}

.faq__item.active span.line:nth-child(2) {
    transform: rotate(0);
}

.faq__header:hover p.question {
    color: var(--blue);
}

.spaces__item__tags .tag {
    background: #0000004D;
}

.approach__item:last-child {
    /* border: none; */
}

section.services__hero {
    height: calc(var(--u) * 900);
    background: var(--blue);
    margin-bottom: calc(var(--u) * 100);
}

.services__hero__wrapper {
    display: flex;
    height: 100%;
    padding-top: 140px;
}

.services__hero__info {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 100);
    max-width: calc(7/12 * 100%);
}

.services__hero__info h1.title {
    font-size: calc(var(--u) * 100);
    font-weight: 500;
}

.services__hero__text {
    display: flex;
    max-width: 760px;
    font-size: calc(var(--u) * 28);
    line-height: 1.355;
    color: var(--white);
    font-weight: 500;
}

.tasks__grid.grid {grid-template-columns: 7fr 5fr;}

.task__media {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 100);
    align-items: flex-start;
}

img.tasks__img {
    width: 100%;
    max-width: calc(var(--u) * 756);
}

.task__media h2.section__title {
    font-size: calc(var(--u) * 60);
    line-height: 1.355;
}

.tasks__text {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 88);
    font-size: calc(var(--u) * 32);
    line-height: calc(var(--u) * 38);
}

section.services h2.section__title {
    font-size: calc(var(--u) * 60);
    line-height: 1;
}

section.services .section__header {
    gap: 20px;
}

section.services .section__description {
    max-width: 755px;
    font-size: calc(var(--u) * 30);
    line-height: 1.355;
}

section.services .container {
    gap: calc(var(--u) * 100);
}

.services__wrapper {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 200);
    width: 100%;
}

.services__item {
    display: grid;
    grid-template-columns: 5fr 7fr;
    width: 100%;
    gap: 20px;
    border-top: 1px solid #000000;
    padding-top: calc(var(--u) * 40);
}

.services__item__info {
    display: flex;
    flex-direction: column;
    max-width: calc(var(--u) * 600);
    gap: 20px;
}

p.services__item__title {
    font-size: calc(var(--u) * 30);
    line-height: 1;
    font-weight: 500;
}

.services__item__description {
    font-size: calc(var(--u) * 24);
    line-height: 1.4;
}

.services__item__list {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 30);
}

.services__item__list__body {
    display: flex;
    flex-direction: column;
    gap: 20px;
    overflow: hidden;
    height: 0;
    transition: all .25s ease;
}

.services__item__list__body .text {
    display: flex;
    flex-direction: column;
    gap: 20px;
    font-size: calc(var(--u) * 24);
    line-height: 1.6;
    padding-top: 20px;
}

.services__item__list__body .text ul, .services__item__list__body .text ol {
    padding-left: 25px;
}

.services__item__list__header {
    cursor: pointer;
    display: flex;
    gap: 20px;
    transition: all .25s ease;
    justify-content: space-between;
}

.second__level__el .services__item__list__header,
.second__level__el .services__item__list__body {
    padding-left: 40px;
}

.services__item__list__header .num {
    font-weight: 500;
    font-size: calc(var(--u) * 24);
    line-height: calc(var(--u) * 28);
    display: flex;
    align-items: center;
    transition: all .25s ease;
    padding-top: calc(var(--u) * 7);
}

.services__item__list__header .title {
    font-size: calc(var(--u) * 36);
    line-height: calc(var(--u) * 42);
    font-weight: 600;
    transition: all .25s ease;
}

.services__item__list__el {
    display: flex;
    flex-direction: column;
}

.services__item__list__header:hover .title, .services__item__list__header:hover .num {
    color: var(--blue);
}

section.services {
    margin-bottom: 100px;
}

section.complex {
    padding: 40px 0;
    background: radial-gradient(100% 418.3% at 0% 100%, #2755C5 0%, #000000 100%);
    color: var(--white);
}

.services__item__list__header .left {
    padding: 0;
    gap: 20px;
}

.services__item__list__header p.icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 20px;
    height: 20px;
    position: relative;
}

.services__item__list__header p.icon span.line {
    width: 100%;
    height: 2px;
    background: var(--blue);
    position: absolute;
    transition: all .25s ease;
}

.services__item__list__header p.icon span.line:nth-child(2) {
    transform: rotate(90deg);
}

.services__item__list__el.active .icon span.line:nth-child(2) {
    transform: rotate(0deg);
    opacity: 0;
}

.services__item__list__el.active .icon span.line:nth-child(1) {
    transform: rotate(180deg);
}

.services__item__list__body .link {
    margin: 0;
    font-size: calc(var(--u) * 26);
    gap: 12px;
}

.services__item__list__body .link svg {
    width: 12px;
    height: 12px;
}

section.complex .container, section.complex .section__content {
    gap: calc(var(--u) * 80);
}

section.complex h2.section__title {
    color: var(--white);
    font-weight: 600;
}

section.complex .section__header {
    max-width: calc(var(--u) * 1065);
    gap: calc(var(--u) * 40);
}

section.complex .section__description {
    font-size: calc(var(--u) * 20);
    line-height: 1.2;
    max-width: calc(var(--u) * 600);
}

.complex__item {
    display: flex;
    flex-direction: column;
    gap: calc(var(--u) * 30);
    width: 100%;
}

p.complex__item__title {
    font-size: calc(var(--u) * 28);
    line-height: calc(var(--u) * 32);
    font-weight: 600;
    color: #FFFFFFB2;
}

.complex__item__benefits {
    display: grid;
    align-items: flex-start;
    gap: calc(var(--u) * 40);
    grid-template-columns: repeat(5, 1fr);
}

.complex__item__benefits__el {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
}

.complex__item__benefits__el .num {
    font-size: calc(var(--u) * 60);
    line-height: 1.2;
    font-weight: 600;
    color: #FFFFFF1A;
}

.complex__item__benefits__el .title {
    font-size: calc(var(--u) * 20);
    line-height: calc(var(--u) * 26);
    font-weight: 500;
}

p.complex__item__footer {
    margin-top: calc(var(--u) * 30);
    max-width: calc(var(--u) * 600);
    font-size: calc(var(--u) * 20);
    line-height: calc(var(--u) * 26);
    color: #FFFFFFB2;
    font-weight: 500;
}

.complex__item__benefits__el svg {
    width: 100%;
    height: auto;
}

.complex__item:nth-child(2) .complex__item__benefits__el:last-child svg {
    margin: 5px 0;
}

.complex__item:nth-child(2) .complex__item__benefits__el {
    gap: 10px;
}

.complex__item__benefits__el .mobile__complex__svg {
    display: none;
}

.spacepm__media {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(var(--u) * 60);
    max-width: calc(var(--u) * 600);
}

.spacepm__media h2.section__title {
    font-size: calc(var(--u) * 60);
    line-height: 1.355;
    font-weight: 600;
}

.spacepm__media img {
    width: calc(var(--u) * 600);
}

.spacepm__items {
    display: flex;
    flex-wrap: wrap;
    gap: calc(var(--u) * 80) 0;
    width: 100%;
    /* align-items: flex-start; */
}

.spacepm__item {
    border-bottom: 1px solid var(--Colors-Black-50, #00000080);
    padding-bottom: calc(var(--u) * 40);
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.spacepm__item:nth-child(2n-1) {
    padding-right: 7.512%;
    width: 50.892%;
}

.spacepm__item:nth-child(2n) {
    padding-right: 5.634%;
    width: 49.014%;
}

.spacepm__item:last-child {
    border: none;
}

.spacepm__grid.grid.grid__5__7 {
    align-items: flex-start;
}

p.spacepm__title {
    font-size: calc(var(--u) * 32);
    line-height: 1.355;
    font-weight: 500;
}

.spacepm__text {
    font-size: calc(var(--u) * 18);
    line-height: 1.355;
    color: #00000080;
    font-weight: 500;
}

.spacepm__wrapper {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(var(--u) * 60);
}

.spacepm__wrapper .link {
    margin: 0;
    font-size: 26px;
    line-height: 1;
}

.spacepm__wrapper .link svg {
    width: 12px;
    height: 12px;
}

section.page__404 {
    height: 100vh;
    max-height: 1000px;
    background: var(--blue);
    color: var(--white);
    margin: 0;
}

section.page__404 .container {
    justify-content: center;
    align-items: center;
}

section.page__404 p {
    font-size: calc(var(--u) * 30);
    text-align: center;
}

section.page__404 p.title__404 {
    font-size: calc(var(--u) * 400);
    line-height: calc(var(--u) * 320);
    font-weight: 700;
    color: #FFFFFF80;
}

.btn.hero__btn.white__btn {
    background: var(--white);
    color: var(--blue);
}

.btn.hero__btn.white__btn:hover {
    background: var(--Colors-White-50, #FFFFFF80);
    color: var(--white);
}

.modal.modal__nav.active {
    transform: translateY(0);
}

.modal.modal__nav {
    background: var(--blue);
}

header.header.nav__active {
    z-index: 999;
}

header.header.fixed.nav__active {
    background: transparent;
}

header.header.fixed.nav__active a.logo svg path:nth-child(1), header.header.header--white.nav__active a.logo svg path:nth-child(1) {
    fill: var(--white);
}

header.header.fixed.nav__active a.logo svg path:nth-child(2), header.header.header--white.nav__active a.logo svg path:nth-child(2) {
    fill: var(--white);
}

header.header.fixed.nav__active .burger span.line {
    background: var(--white);
}

.hidden {
    display: none;
}

nav.post__nav__list ul li.active {
    color: var(--blue);
}

nav.post__nav__list ul li.active a {
    color: var(--blue);
}

.form__successful__wrapper {
    display: none;
    overflow: hidden;

    max-height: 0;
    opacity: 0;

    transition: max-height .5s ease, opacity .4s ease;
}

/* активное состояние */
.form__successful__wrapper.active {
    display: block;
    opacity: 1;
    max-height: 1000px; /* запас */
}

.message {
    margin-top: 16px;
    font-size: 14px;
    display: none;
}

.message.error {
    color: #ff4d4f;
}

.message.success {
    color: #52c41a;
}

.fos__input.error {
    border-color: red;
}

.fos__input__file {
    position: relative;
    display: inline-flex;
    align-items: center;
    cursor: pointer;
}

.fos__input__file input[type="file"] {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}

.fos__input__file span {
    transition: all .3s ease;
    display: inline-block;
}

/* при выборе файла */
.fos__input__file.active span {
    color: #2755C5;
    transform: translateY(-2px);
}

/* эффект "появления" текста */
.fos__input__file span.fade-out {
    opacity: 0;
    transform: translateY(5px);
}

.fos__input__file span.fade-in {
    opacity: 1;
    transform: translateY(0);
}

section.legal--detail .container {
    max-width: 1200px;
}

.legal__list {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 14px;
    align-items: flex-start;
}

.legal__link {
    color: var(--blue);
    border-bottom: 1px solid transparent;
}

.legal__link:hover {
    border-color: var(--blue);
}

.legal__detail {
    line-height: 1.7;
    text-align: justify;
}

.blog__pagination {
    margin-top: 40px;
    display: flex;
    justify-content: center;
}

.pagination__list {
    display: flex;
    gap: 10px;
    list-style: none;
    padding: 0;
}

.pagination__link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 1px solid var(--blue);
    color: var(--blue);
    text-decoration: none;
}

.pagination__item.active .pagination__link {
    background: var(--blue);
    color: #fff;
}

.pagination__link:hover {
    background: var(--blue);
    color: var(--white);
    border-color: var(--blue);
}

.post__content__detail a {
    color: var(--blue);
    text-decoration: underline;
}

.post__content__detail a:hover {
    text-decoration: none;
}