:root {
	--light-grey: #F2F0EF;
	--grey: #A5A5A5;
	--dark: #393939;
	--white: #fff;
	--black: #111;
	--blue: #139acc;
}

* {
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}

*::-webkit-scrollbar {
	width: 5px;
	height: auto;
}

*::-webkit-scrollbar-thumb {
	background: var(--blue);
	border-radius: 5px;
}

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

body {
	background: var(--light-grey);
	color: var(--dark);
	font-family: "LT Superior", sans-serif;
	font-size: .9375vw;
	font-style: normal;
	font-weight: 400;
	line-height: 1.38;
	overflow-x: hidden;
}

body.hidden {
	overflow-y: hidden;
}

a {
	position: relative;
	transition: all .5s ease;
	text-decoration: none;
	color: var(--black);
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 400;
    color: var(--black);
}

svg, svg path {
	transition: all .5s ease;
}

.hidden__content {
    display: none;
}

header {
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: all .5s ease;
	z-index: 999;
	background: var(--white);
	padding: 0;
	border-bottom: 1px solid transparent;
}

.container {
	display: flex;
	max-width: calc(100% - 4.167vw);
	width: 100%;
	align-items: flex-start;
	flex-direction: column;
	position: relative;
	gap: 4.16vw;
	height: 100%;
	padding-top: 1.3vw;
	border-top: 1px solid var(--grey);
}

section {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	margin-bottom: 150px;
	overflow: hidden;
	position: relative;
	z-index: 9;
}

section ul {
    padding: 0 0 0 20px;
}

section.top__screen {
	position: relative;
	align-items: flex-start;
	background-size: cover;
	height: 100vh;
	margin: 0;
}

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

header .container {
	align-items: center;
	flex-direction: row;
	justify-content: space-between;
	padding: 0;
	border: none;
}

footer {
	display: flex;
	justify-content: center;
	background: var(--footer-bg);
	padding: 4.167vw 0;
	color: var(--white);
}

a.logo {
    display: flex;
    width: 9.167vw;
    height: 2.5vw;
}

a.logo svg {
    width: 100%;
    height: 100%;
}

nav.menu {
    display: flex;
}

nav.menu ul {
    display: flex;
    align-items: center;
    gap: 3.646vw;
}

nav.menu ul li {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    position: relative;
    padding: 1.616vw 0;
    cursor: pointer;
    transition: all .5s ease;
}

nav.menu ul li ul.second__level {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    height: 100%;
    width: 100%;
    box-shadow: 0px 5px 20px 0px #00000040;
    background: var(--white);
    padding: 1.1vw;
    border-radius: .21vw;
    gap: .78vw;
}

nav.menu ul li ul.second__level li {
    padding: 0;
    text-align: center;
}

nav.menu ul li ul.second__level li a {
    font-size: .78em;
    text-align: left;
}

.offer {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: flex-start;
    padding: 3.646vw 0;
    max-width: 63.54vw;
    gap: 20px;
}

a.btn.top__btn {
    background: var(--blue);
    padding: 20px 40px;
    color: var(--white);
    border-radius: 500px;
    justify-content: center;
}

a.btn.top__btn:hover {
    background: var(--black);
}

.video__overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: #05242fa3;
}

h1.title {
    font-size: 3.278em;
    color: var(--white);
    line-height: 1;
}




.ticker-inline {
	margin: 0 auto;
	overflow: hidden;
}
  
.ticker-inline-bottom-trial {
	margin-bottom: 4rem;
}
  
.run__word__list {
	position: relative;
	display: inline-block;
	white-space: nowrap;
	width: 100%;
	overflow: hidden;
	padding: 4.167vw;
}
  
.ticker1 {
	position: absolute;
	top: 2px;
	left: -110%;
	animation: marquee1 1s linear infinite;
}
  
.run__word__inner {
	display: flex;
	animation: startLine 20s linear, marquee 20s linear 20s infinite;
	width: auto;
	margin: 0 auto;
	gap: 3.646vw;
}
  
.word {
	width: auto;
	text-align: center;
	font-size: 3.278em;
	color: var(--light-grey);
	-webkit-text-stroke: 1px var(--grey);
}
  
@keyframes startLine {
	0% {
	  transform: translateX(100%);
	}
	100% {
	  transform: translateX(50%);
	}
}
  
@keyframes marquee {
	0% {
	  transform: translateX(0%);
	}
	100% {
	  transform: translateX(-100%);
	}
}

section.top__screen .container {
    padding: 0;
    border: none;
}

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

h2.section__title,
h1.section__title {
    max-width: 40.365vw;
    font-size: 2.22em;
    line-height: 1.15;
    font-weight: 450;
}

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

.section__control {
    display: flex;
    align-items: center;
}

.btn {
    display: flex;
    gap: .26vw;
    align-items: flex-start;
}

.btn span {
    padding: 0 1.09vw;
    height: 3.4375vw;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border-radius: 50px;
    background: var(--blue);
    color: var(--white);
    line-height: 1;
    transition: all .5s ease;
}

.btn span.btn__icon {
    width: 3.4375vw;
    height: 3.4375vw;
    line-height: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--blue);
}

svg, svg path, svg stroke {
    transition: all .5s ease;
}

.btn:hover > span {
    background: var(--black);
    color: var(--white);
}

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

section.run__word {
    margin: 0;
}

section.run__word {
    margin: 0;
}

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

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

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

.section__header__info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    max-width: 40.365vw;
    gap: 2.083vw;
}

.full .section__header__info {
    max-width: 100%;
    width: 100%;
}

section.run__word {
    margin: 0;
}

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

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

.area__media {
    height: 29.17vw;
    width: 100%;
    display: flex;
    background-size: cover !important;
    background-attachment: fixed !important;
}

.section__content {
    display: flex;
    width: 100%;
    align-items: center;
}

.accordeon {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.1vw;
    align-items: flex-end;
    width: 100%;
}

.accordeon__media {
    display: flex;
    height: 29.167vw;
    width: 100%;
}

.accordeon__item__list {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
}

.accordeon__media__item {
    display: flex;
    width: calc(50% - .55vw);
    height: 29.167vw;
    position: absolute;
    z-index: 1;
    opacity: 0;
    transition: all .5s ease;
}

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

.accordeon__media__item.active {
    z-index: 2;
}

.accordeon__media__item.visible {
    opacity: 1;
}

.accordeon__item {
    display: flex;
    flex-direction: column;
    border-bottom: 1px solid var(--grey);
    width: 100%;
}

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

.accordeon__item__header {
    display: flex;
    align-items: center;
    width: 100%;
    justify-content: space-between;
    padding: .78125vw 0;
    cursor: pointer;
}

.accordeon__item__header a {
    display: flex;
    width: 1.875vw;
    height: 1.875vw;
    opacity: 0;
}

.accordeon__item__header a svg {
    width: 100%;
    height: 100%;
}

.accordeon__item__header h3 {
    font-size: 1.389em;
    font-weight: 450;
    color: var(--grey);
    transition: all .5s ease;
    max-width: 31.25vw;
}

.accordeon__item__content {
    height: 0px;
    overflow: hidden;
    transition: all .5s ease;
}

.accordeon__item__text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1.1vw;
    padding: .26vw 0 4.167vw 0;
    max-width: 31.25vw;
}

.accordeon__item__header:hover > h3 {
    color: var(--blue);
}

.accordeon__item.active .accordeon__item__header h3 {
    color: var(--black);
}

.accordeon__item.active .accordeon__item__header a {
    opacity: 1;
}

.accordeon__item.active .accordeon__item__content {
    height: auto;
}

.projects__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 4.167vw 0;
    justify-content: space-between;
    width: 100%;
}

a.projects__item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.projects__item__poster {
    display: flex;
    position: relative;
    overflow: hidden;
}

p.projects__item__tag {
    position: absolute;
    color: var(--grey);
    background: var(--white);
    padding: .667em;
    border-radius: 50px;
    line-height: 1;
    top: 1.1vw;
    right: 1.1vw;
    z-index: 2;
}

.projects__item__poster img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all .5s ease;
}

.projects__item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: .782vw;
    width: 100%;
}

.project__item__info {
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
    padding-bottom: .782vw;
    border-bottom: 1px solid var(--grey);
}

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

a.project__item__name {
    font-weight: 450;
}

a.project__item__icon {
    display: flex;
    padding: .3vw 0 .3vw .3vw;
}

a.project__item__icon:hover > svg path {
    stroke: var(--blue);
}

.projects__item:nth-child(1n) .projects__item__poster {
    width: 100%;
    height: 56.25vw;
}

.projects__item:nth-child(2n) .projects__item__poster {
    height: 35.416vw;
}

.projects__item:nth-child(2n), .projects__item:nth-child(3n), .projects__item:nth-child(4n), .projects__item:nth-child(5n), .projects__item:nth-child(6n), .projects__item:nth-child(7n) {
    width: calc(33.3% - 2.083vw/3);
}

.projects__item:nth-child(3n) .projects__item__poster, .projects__item:nth-child(4n) .projects__item__poster {
    height: 20.83vw;
}

.projects__item:nth-child(7n) .projects__item__poster {
    height: 35.416vw;
}

.projects__item:nth-child(5n) .projects__item__poster, .projects__item:nth-child(6n) .projects__item__poster {
    height: 20.83vw;
}

a.projects__item__poster:hover > img {
    transform: scale(1.1);
}

.swiper-slide.partner__logo {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
	gap: 20px;
	font-size: .8em;
}

.partner__logo__wrapper {
    display: flex;
    background: var(--white);
    height: 10vw;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: 1.1vw;
}

.swiper-slide.partner__logo img {
    max-width: 100%;
    height: auto;
    object-fit: contain;
    width: 100%;
    height: 100%;
}

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

a.blog__post {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    gap: .55vw;
}

.blog_post__poster {
    display: flex;
    width: 100%;
    height: 20.83vw;
    overflow: hidden;
}

.blog_post__poster img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    transition: all .5s ease;
}

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

.blog__post__info span.icon {
    display: flex;
    width: 1.875vw;
    height: 1.875vw;
}

.blog__post__info span.icon svg {
    width: 100%;
    height: 100%;
}

span.date {
    color: var(--grey);
    font-size: .78em;
}

.blog__post__preview {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: .55vw;
}

p.blog__post__title {
    font-weight: 450;
    transition: all .5s ease;
    width: 100%;
}

p.blog__post__anons {
    color: var(--dark);
}

.blog_post__poster:hover > img {
    transform: scale(1.1);
}

.blog__post__info span.icon:hover > svg path {
    stroke: var(--blue);
}

a.blog__post:hover > .blog__post__preview .blog__post__title {
    color: var(--blue);
}

section.contacts {
    padding: 4.167vw 0;
    background: var(--white);
    margin: 0;
}

section.contacts .container {
    padding-top: 0;
    border: none;
    flex-direction: row;
    justify-content: space-between;
    align-items: unset;
}

.contacts__info {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: auto;
}

.row {
    display: flex;
    align-items: flex-start;
    gap: 3.44vw;
}

.contacts__info__item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: .55vw;
}

span.small__title {
    color: var(--grey);
}

.contacts__info__item a {
    font-size: 1.39em;
    font-weight: 450;
}

.contacts__info__wrapper {
    display: flex;
    flex-direction: column;
    gap: 2.1vw;
}

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

.row:nth-child(2) {}

.soc__links {
    display: flex;
    align-items: flex-start;
    gap: .78vw;
}

.soc__links a {
    font-size: 1em;
    text-transform: uppercase;
    font-weight: 450;
}

.contacts__form {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 31.25vw;
    position: relative;
}

p.contact__form__title {
    font-weight: 450;
    color: var(--black);
    max-width: 72%;
    font-size: 1.5em;
}

form {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    gap: 2.6vw;
    margin: 2.6vw 0 .78vw 0;
}

.form__input {
    width: 100%;
    font-family: inherit;
    font-size: 1em;
    border: none;
    border-bottom: 1px solid var(--black);
    padding-bottom: .78vw;
    transition: all .5s ease;
    outline: 0;
}

.form__input.error {
    border-color: #b82c2c;
}

.form__input::placeholder {
    color: var(--grey);
}

.form__input:hover, .form__input:focus {
    border-color: var(--blue);
}

input.form__submit {
    padding: 1.25vw;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50px;
    border: none;
    font-family: inherit;
    font-size: 1em;
    color: var(--white);
    background: var(--blue);
    cursor: pointer;
    transition: all .5s ease;
    outline: 0;
}

input.form__submit:hover {
    background: var(--black);
}

p.politics {
    text-align: center;
    font-size: .67em;
    width: 100%;
    color: var(--grey);
}

p.politics a {
    color: var(--grey);
    border-bottom: 1px solid;
}

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

.footer__top {
    display: flex;
    width: 100%;
    justify-content: space-between;
}

footer .container {
    border: none;
    padding-top: 0;
}

.column {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1.56vw;
}

p.company__info {
    display: flex;
    font-size: .78em;
    color: var(--grey);
    max-width: 18.5vw;
}

.footer__top .column:nth-child(2) {
    flex-direction: row;
    gap: 3.65vw;
    align-items: unset;
    width: 30.5vw;
}

.footer__top .column:nth-child(2) nav {
    display: flex;
    width: 10.42vw;
}

.footer__top .column:nth-child(2) nav ul {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: .55vw;
}

.footer__top .column:nth-child(2) nav ul li {
    list-style: none;
    display: flex;
}

.footer__top .column:nth-child(2) nav ul li a:hover {
    color: var(--blue);
}

.footer__contacts {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    color: var(--dark);
    width: 70%;
}

.footer__contacts__info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: .55vw;
    margin-top: 10px;
}

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

.footer__bottom {
    display: flex;
    justify-content: space-between;
    width: 100%;
    font-size: .78em;
    color: var(--grey);
}

.links {
    display: flex;
    gap: 3.65vw;
    width: 30.5vw;
}

.links a {
    color: var(--grey);
}

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

nav.menu ul li:hover > nav.inner {
    display: flex;
}

nav.inner {
    display: none;
    position: absolute;
    bottom: 0;
    transform: translateY(100%);
    padding-top: .78vw;
}

nav.menu ul li:nth-child(2) nav.inner {
    width: 13.05vw;
}

.run__word__inner {
    animation: startLine 10s linear, marquee 10s linear 10s infinite;
    gap: 40px;
}

.run__word__list {
    padding: 30px 0 40px 0;
}

.accordeon__item__header {
    padding: 15px 0;
}

.little__title.mob,
.mob__active {
    display: none !important;
}

.accordeon__mob__media {
    display: none;
    flex-direction: column;
    align-items: flex-start;
    gap: 30px;
    padding-bottom: 40px;
}

.arrow {
    display: none;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all .5s ease;
}

.error__text {
    display: none;
    color: #b82c2c;
}

.error__text.visible {
    display: flex;
}

.sended {
    display: none;
}

.sended.acitve {
    display: flex;
}

.sended.active {
    display: flex;
    position: absolute;
    width: 100%;
    height: 100%;
    justify-content: center;
    background: var(--white);
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 20px;
    z-index: 9;
}

.sended p.contact__form__title {
    font-size: 1.25em;
}

p.subtitle {
    font-size: .83em;
    max-width: 60%;
    color: var(--grey);
}

main.page {
    padding-top: 6vw;
}

section.breadcrumb .container {
    border: none;
    padding: 0;
}

section.breadcrumb .container ul {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px;
    color: var(--grey);
    padding: 0;
}

section.breadcrumb .container ul li {
    list-style: none;
    font-size: .78em;
    color: initial;
}

section.breadcrumb .container ul li a {
    color: var(--grey);
}

section.breadcrumb .container ul li a:hover {
    color: var(--blue);
}

section.breadcrumb {
    margin-bottom: 50px;
}

section.breadcrumb .container ul li:first-child span {
    display: none;
}

.person__cart__wrapper {
    display: flex;
    gap: 20px;
}

.person__cart__photo {
    display: flex;
    width: 31.25vw;
    height: 29.167vw;
    align-items: flex-start;
}

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

.person__cart__info {
    padding: 2.6vw 3.125vw;
    background: var(--white);
    width: calc(100% - 31.25vw - 20px);
    display: flex;
    gap: 4vw;
}

.col {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 50%;
}

p.person__name {
    font-size: 1.39em;
    font-weight: 450;
}

p.person__status {
    margin: 25px 0 40px 0;
}

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

.description {
    display: flex;
    flex-direction: column;
    gap: 25px;
}

.description ul {
    padding: 0 0 0 20px;
}

.col__bottom {
    display: flex;
    gap: 2.86vw;
}

.person__stat, .person__contacts {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

span.num {
    font-size: 1.39em;
    font-weight: 450;
    color: var(--black);
    line-height: 1;
}

span.param {
    color: var(--grey);
}

.page__projects .projects__item:nth-child(1n) .projects__item__poster, .page__projects .projects__item:nth-child(2n) .projects__item__poster {
    width: 100%;
    height: 29.167vw;
}

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

.page__projects .projects__item .projects__item__poster .projects__item__name,
.projects__grid .projects__item .projects__item__poster .projects__item__name {
    position: absolute;
    bottom: 2.083vw;
    left: 2.083vw;
    z-index: 99;
    font-size: 1.39em;
    color: var(--white);
    font-weight: 450;
    transition: all .5s ease;
    overflow: hidden;
    z-index: 999;
}

p.params {
    display: flex;
    gap: 1em;
    font-size: .9375vw;
    color: var(--white);
    padding-top: 1em;
}
/* 
.page__projects .projects__item .projects__item__poster:hover > .projects__item__name, .projects__grid .projects__item .projects__item__poster:hover > .projects__item__name {
    height: 4.16vw;
} */

p.params.projects__item__params {
    left: 20px;
    position: absolute;
    z-index: 999;
    bottom: 20px;
    color: var(--white)
}

.project__overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: linear-gradient(0deg, rgba(8,80,107,1) 5%, rgba(19,154,204,0) 30%);
    z-index: 99;
}

.page__projects .projects__item:nth-child(2n) {
    width: 100%;
}

.person__list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px 20px;
}

a.person__list__item img {
    width: 100%;
    height: 29.167vw;
    object-fit: cover;
}

p.person__list__item__name {
    margin: 15px 0 5px 0;
    font-weight: 450;
    color: var(--black);
    transition: all .5s ease;
}

a.person__list__item {
    flex-direction: column;
    display: flex;
}

p.person__list__item__status {
    color: var(--dark);
}

a.person__list__item:hover > p.person__list__item__name {
    color: var(--blue);
}

section.page__form .container {
    display: flex;
    flex-direction: row;
    gap: 20px;
    align-items: normal;
}

.page__form__media {
    display: flex;
    width: calc(50% - 10px);
}

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

.page__form__wrapper {
    height: auto;
    background: var(--white);
    display: flex;
    flex-direction: column;
    align-items: center;
    width: calc(50% - 10px);
    justify-content: center;
    padding: 30px 0;
}

.page__form__wrapper__inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    max-width: 31.25vw;
    gap: 15px;
}


.page__form__description {
    margin: 0 0 35px 0;
}

.page__form__wrapper__inner form {
    margin: 0;
    gap: 1.05vw;
}

textarea.form__input {
    height: 85px;
}

.input-file {
	position: relative;
	display: flex;
	align-items: center;
	cursor: pointer;
}
.input-file-btn {
	display: flex;
}
.input-file-text {
	padding: 0 10px;
	line-height: 40px;
	display: inline-block;
	transition: all .5s ease;
}
.input-file input[type=file] {
	position: absolute;
	z-index: -1;
	opacity: 0;
	display: block;
	width: 0;
	height: 0;
}

.input-file input[type=file]:disabled + .input-file-btn {
	background-color: #eee;
}

.input-file:hover > .input-file-btn svg path {
    stroke: var(--blue);
}

section.page__form .container {
    padding-top: 0;
    border: none;
}

section.page__form .container {
    padding-top: 0;
    border: none;
    align-items: normal;
}

.page__form__wrapper__inner form .form__input {
    margin-top: 1.55vw;
}

.page__form__wrapper__inner form input[name="name"] {
    margin: 0;
}

.tag__list {
    position: absolute;
    top: 1.1vw;
    right: 1.1vw;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 10px;
}

.tag__list p.projects__item__tag {
    position: initial;
}

.filter {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px 1.25vw;
}

.filter__item {
    cursor: pointer;
    color: var(--grey);
    transition: all .5s ease;
}

.filter__item:hover, .filter__item.active {
    color: var(--black);
}

.projects__grid .projects__item:nth-child(1n) .projects__item__poster {
    height: 44.79vw;
}

.projects__grid .projects__item:nth-child(2n) .projects__item__poster, .projects__grid .projects__item:nth-child(3n) .projects__item__poster, .projects__grid .projects__item:nth-child(4n) .projects__item__poster {
    width: 100%;
}

.projects__grid .projects__item:nth-child(2n), .projects__grid .projects__item:nth-child(3n), .projects__grid .projects__item:nth-child(4n), .projects__grid .projects__item:nth-child(5n), .projects__grid .projects__item:nth-child(6n), .projects__grid .projects__item:nth-child(7n), .projects__grid .projects__item:not(:nth-child(1)) {
    width: calc(50% - 10px);
	height: 29.17vw;
}

section.contacts__media {
    margin: 0;
    height: 41.67vw;
}

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

.page__contacts .contacts__info__item {
    width: 15.104vw;
}

.page__contacts .contacts__info {
    gap: 3.125vw;
}

.page__contacts .contacts__info__wrapper {
    justify-content: flex-end;
    gap: 1.5625vw;
}

.page__contacts .contacts__info__wrapper .row:nth-child(2) {
    padding-top: 1.5625vw;
    border-top: 1px solid var(--grey);
}

section.top__media h1.section__title {
    position: absolute;
    left: 2.083vw;
    bottom: 4.167vw;
    color: var(--white);
    font-size: 3.28em;
    max-width: 63.54vw;
}

section.top__media {
    height: 52.83vw;
    overflow: hidden;
}

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

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

.content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.media {
    display: flex;
    height: 29.167vw;
}

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

.section__footer__info {
    display: flex;
    gap: 3.5vw;
}

.detail__project__media {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.detail__project__media img:nth-child(3n) {
    width: 100%;
    height: 44.792vw;
    object-fit: cover;
}

.detail__project__media img:nth-child(3n-1), 
.detail__project__media img:nth-child(3n-2) {
    width: calc(50% - 10px);
    height: 29.167vw;
    object-fit: cover;
}

.slider__wrapper {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    position: relative;
    height: 44.79vw;
    overflow: hidden;
}

.arrows {
    display: flex;
    width: calc(100% - 3.125vw);
    position: absolute;
    z-index: 9;
    justify-content: space-between;
}

.detail__project__slider .arrow {
    display: flex;
    width: 3.125vw;
    height: 3.125vw;
    justify-content: center;
    align-items: center;
    background: var(--white);
    border-radius: 50%;
}

.detail__project__slider .arrow:hover {
    background: var(--blue);
}

.detail__project__slider .arrow:hover > svg path {
    stroke: var(--white);
}

.swiper {
    width: 100%;
}

.slider.swiper {
    height: 44.8vw;
}

.slider.swiper .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
}

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

.swiper-slide.process__slider__item {
    width: 47.395vw;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1.3vw;
}

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

section.detail__project__process .container {
    max-width: 100%;
    padding-left: 2.083vw;
}

.swiper-slide.process__slider__item p {
    font-size: 1.39em;
    color: var(--black);
}

.recent__projects .projects__grid .projects__item:nth-child(2n) .projects__item__poster, .recent__projects .projects__grid .projects__item:nth-child(2n-1) .projects__item__poster {
    width: 100%;
    height: 29.167vw;
}

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

.recent__projects .projects__grid .projects__item:nth-child(2n), .recent__projects .projects__grid .projects__item:nth-child(2n-1) {
    width: 100%;
}

.category {
    display: grid;
    grid-template-columns: repeat(3, 11.98vw);
    gap: 10px 4.167vw;
}

a.category__item:hover, a.category__item.active {
    color: var(--black);
}

a.category__item {
    color: var(--grey);
}

.video__wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 100%;
    height: 52.083vw;
}

.video__wrapper video {
    width: 100%;
    height: 100%;
}

span.play {
    position: absolute;
    width: 4.95vw;
    height: 4.95vw;
    border-radius: 50%;
    background: var(--white);
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: all .5s ease;
    z-index: 2;
}

span.play:hover {
    background: var(--blue);
}

span.play:hover > svg path {
    fill: var(--white);
}

.video__wrapper img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}

section.market .section__content {
    justify-content: space-between;
    align-items: flex-start;
}

section.market .section__content .section__content__left {
    max-width: 31.25vw;
}

section.market .section__content .section__content__right {
    max-width: 31.25vw;
    width: 100%;
}

.content__list {
    display: flex !important;
    flex-direction: column;
    gap: 2.083vw;
}

.content__list__item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: .5em;
}

h3.list__item__header {
    font-size: 1.39em;
    font-weight: 450;
    border-bottom: 1px solid var(--grey);
    width: 100%;
    line-height: 1;
    padding-bottom: .5vw;
}

.list__item__text {
    max-width: 23.18vw;
}

.video__wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 100%;
    height: 52.083vw;
}

.video__wrapper video {
    width: 100%;
    height: 100%;
}

span.play {
    position: absolute;
    width: 4.95vw;
    height: 4.95vw;
    border-radius: 50%;
    background: var(--white);
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: all .5s ease;
    z-index: 2;
}

span.play:hover {
    background: var(--blue);
}

span.play:hover > svg path {
    fill: var(--white);
}

.video__wrapper img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}

section.market .section__content {
    justify-content: space-between;
    align-items: flex-start;
}

section.market .section__content .section__content__left {
    max-width: 31.25vw;
}

section.market .section__content .section__content__right {
    max-width: 31.25vw;
    width: 100%;
}

.content__list {
    display: flex !important;
    flex-direction: column;
    gap: 2.083vw;
}

.content__list__item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: .5em;
}

h3.list__item__header {
    font-size: 1.39em;
    font-weight: 450;
    border-bottom: 1px solid var(--grey);
    width: 100%;
    line-height: 1;
    padding-bottom: .5vw;
}

.list__item__text {
    max-width: 23.18vw;
}

section.worth .section__content {
    flex-direction: column;
    align-items: flex-start;
    gap: 80px;
}

.section__content__left {
    display: flex;
    flex-direction: column;
    gap: 80px;
}

section.worth .content__list__item {
    flex-direction: row;
    padding-bottom: 25px;
    border-bottom: 1px solid var(--grey);
    gap: 1.05em;
}

section.worth .content__list__item h3.list__item__header {
    border: none;
    padding: 0;
}

section.worth .content__list__item .list__item__text {
    max-width: 23.77vw;
}

section.worth .content__list {
    gap: 25px;
}

.worth__wrapper {
    display: flex;
    width: 100%;
    justify-content: space-between;
}

.worth__wrapper .section__content__left {
    width: calc(50% - 10px);
}

.worth__wrapper .section__content__right {
    width: calc(50% - 10px);
    display: flex;
}

.worth__img {
    display: flex;
    overflow: hidden;
}

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

.worth__gallery {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.worth__gallery img:nth-child(1), .worth__gallery img:nth-child(2) {
    display: flex;
    width: calc(50% - 10px);
    height: 29.167vw;
    object-fit: cover;
}

.worth__gallery img:nth-child(3) {
    width: 100%;
    height: 44.79vw;
    display: flex;
}

.post__container {
    max-width: 47.396vw;
    display: flex;
    flex-direction: column;
}

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

.post__poster {
    display: flex;
    width: 100%;
    margin-top: 4.167vw;
    margin-bottom: 30px;
}

.post__poster img {
    width: 100%;
}

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

h2.post__title {
    margin: 3.125vw 0 1em 0;
    font-size: 1.39em;
    font-weight: 450;
}

.post__slider .swiper {
    width: 100%;
    height: 29.167vw;
}

.post__slider {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

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

.post__slider .swiper .swiper-slide {
    display: flex;
}

.post__slider__nav {
    position: absolute;
    display: flex;
    width: calc(100% - 40px);
    justify-content: space-between;
}

.post__slider .arrow,
.service__accordeon__slider__nav .arrow {
    display: flex;
    z-index: 2;
    width: 3.125vw;
    height: 3.125vw;
    border-radius: 50%;
    background: var(--white);
}

.post__slider .arrow:hover,
.service__accordeon__slider__nav .arrow:hover {
    background: var(--blue);
}

.post__slider .arrow:hover > svg path,
.service__accordeon__slider__nav .arrow:hover > svg path {
    stroke: var(--white);
}

/* CHECK & RADIO INPUT START */

.custom-checkbox {
	position: absolute;
	z-index: -1;
	opacity: 0;
}

.custom-checkbox+label {
	display: inline-flex;
	align-items: center;
	user-select: none;
	cursor: pointer;
}

.custom-checkbox+label::before {
	content: '';
	display: inline-block;
	width: 1em;
	height: 1em;
	flex-shrink: 0;
	flex-grow: 0;
	border: 1px solid #adb5bd;
	border-radius: 50%;
	margin-right: 0.5em;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 50% 50%;
}

.custom-checkbox:checked+label::before {
	border-color: var(--blue);
	background-color: var(--blue);
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e");
}

  /* стили при наведении курсора на checkbox */
.custom-checkbox:not(:disabled):not(:checked)+label:hover::before {
	border-color: #b2eaff;
}
  /* стили для активного состояния чекбокса (при нажатии на него) */
.custom-checkbox:not(:disabled):active+label::before {
	background-color: #b2eaff;
	border-color: #b2eaff;
}
  /* стили для чекбокса, находящегося в фокусе */
.custom-checkbox:focus+label::before {
	box-shadow: 0 0 0 0.2rem #139acc47;
}
  /* стили для чекбокса, находящегося в фокусе и не находящегося в состоянии checked */
.custom-checkbox:focus:not(:checked)+label::before {
	border-color: #8ce0ff;
}
  /* стили для чекбокса, находящегося в состоянии disabled */
.custom-checkbox:disabled+label::before {
	background-color: #e9ecef;
}

/* CHECK & RADIO INPUT END */

section.service__work .section__content {
    align-items: flex-start;
    justify-content: space-between;
}

.description.full {
    height: auto;
    overflow: hidden;
    max-width: 31.25vw;
}

section.service__work .section__content .description {
    max-width: 31.25vw;
}

section.service__work .section__content .section__content__right {
    max-width: calc(50% - 10px);
    width: 100%;
}

section.service__work .section__content .section__content__right .content__list {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px 20px;
}

section.service__work .section__content .section__content__left {
    gap: 40px;
}

span.more__desc {
    display: none;
    cursor: pointer;
    transition: all .5s ease;
    font-weight: 450;
}

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

.description.full.active {
    height: auto;
}

.service__slider__wrapper .swiper-slide {
    display: flex;
    width: calc(50% - 20px);
    height: 27.6vw;
    gap: 20px;
}

.service__slider__wrapper .swiper {
    width: 100%;
}

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

.service__slide__img {
    display: flex;
    width: calc(50% - 10px);
}

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

.service__slide__content {
    width: calc(50% - 10px);
    background: var(--white);
    padding: 30px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

p.serivce__slide__title {
    font-size: 1.39em;
    font-weight: 450;
    color: var(--black);
}

.service__accordeon__body {
    display: none;
    flex-direction: column;
    gap: 4.167vw;
    width: 100%;
}

.service__accordeon__body .section__description, .mx600 {
    max-width: 600px !important;
}

.service__accordeon__body.active {
    display: flex;
}

.service__accordeon__slider {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 44.8vw;
}

.service__accordeon__slider__nav {
    position: absolute;
    width: calc(100% - 40px);
    display: flex;
    justify-content: space-between;
    z-index: 2;
}

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

.service__accordeon__slider .swiper {
    height: 100%;
}

.quiz__screen {
    display: flex;
    width: 100%;
    height: 44.8vw;
    background: var(--white);
}

.quiz__screen.main .left {
    width: calc(50% + 30px);
    padding: 3.125vw;
    position: relative;
    display: flex;
    align-items: center;
}

.quiz__screen.main .right {
    width: calc(50% - 30px);
}

.quiz__screen.main .right img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.screen__header {
    position: absolute;
    display: flex;
    align-items: center;
    gap: 50px;
    top: 3.125vw;
}

.screen__info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2.083vw;
}

h3.quiz__screen__title {
    font-size: 2.22em;
    font-weight: 450;
}

.quiz__screen__desc {
    max-width: 385px;
}

button.btn {
    width: 260px;
    height: 60px;
    justify-content: center;
    align-items: center;
    font-family: inherit;
    font-size: 1em;
    border-radius: 500px;
    border: none;
    background: var(--black);
    color: var(--white);
    outline: 0;
    cursor: pointer;
    transition: all .5s ease;
}

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

.quiz__screen.question {
    display: none;
    position: absolute;
    width: 100%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2.25vw;
    height: 100%;
}

.quiz__screen.question.active {
    display: flex;
}

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

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

.steps__item__header {
    display: flex;
    padding: 1.3vw 0;
    border-top: 1px solid var(--grey);
    justify-content: space-between;
    transition: all .5s ease;
    cursor: pointer;
}

.steps__item__header__info {
    display: flex;
    align-items: center;
    gap: 29.69vw;
}

.steps__item__header__info span.num {
    width: 50px;
}

.steps__item__body__inner {
    padding: 0 0 80px calc(29.69vw + 50px);
}

p.header {
    font-size: 1.39em;
    color: var(--black);
    transition: all .5s ease;
}

.icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 16px;
    height: 16px;
}

.steps span.line {
    width: 16px;
    height: 2px;
    background: var(--black);
    position: initial;
    transition: all .5s ease;
}

.steps span.line:nth-child(1) {
    transform: rotate(45deg) translateX(2px);
}

.steps span.line:nth-child(2) {
    transform: rotate(-45deg) translateX(-2px);
}

.steps__item.active .icon span.line {
    position: absolute;
}

.steps__item.active .icon span.line:nth-child(2) {
    transform: rotate(-45deg);
}

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

.steps__item__header:hover > .steps__item__header__info p.header {
    color: var(--blue);
}

.steps__item__body {
    height: 0px;
    overflow: hidden;
    transition: all .5s ease;
}

section.quiz .container {
    position: relative;
    border: none;
    height: auto;
    padding: 0;
    overflow: hidden;
    align-items: center;
    justify-content: center;
}

.question__item {
    display: flex;
}

.question__list {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 1.05vw;
}

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

.quiz__controls button {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 60px;
    width: 200px;
    border-radius: 500px;
    border: none;
    background: var(--black);
    color: var(--white);
    font-family: inherit;
    font-size: 1em;
    transition: all .5s ease;
    cursor: pointer;
}

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

.quiz__controls button.disable {
    display: none;
}

.quiz__screen.question.final {
    flex-direction: row;
    align-items: normal;
}

.quiz__screen.question.final .left {
    width: 50%;
    display: flex;
    flex-direction: column;
    padding: 60px;
    justify-content: center;
    gap: 20px;
}

.quiz__screen.question.final .right {
    width: 50%;
}

.quiz__screen.question.final .right img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.quiz__screen.question.final .left .quiz__controls {
    margin-top: 60px;
}

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

.tabs__item {
    display: flex;
    width: 100%;
    height: 60px;
    border: 1px solid var(--black);
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: all .5s ease;
}

section.service__accordeon.cut .section__header__info {
    max-width: 100%;
    width: 100%;
}

.tabs__item:hover, .tabs__item.active {
    background: var(--black);
    color: var(--white);
}

.filter__wrapper .filter {
    display: none;
}

.filter__wrapper .filter.active {
    display: grid;
}

.types__img {
    display: flex;
    width: 100%;
    gap: 20px;
}

.types__img img {
    width: calc(50% - 10px);
    height: 29.17vw;
    object-fit: cover;
}

section.logistic .section__content {
    align-items: flex-start;
}

section.logistic .left {
    display: flex;
    flex-direction: column;
    gap: 2.25vw;
}

div#panel {
    z-index: 99999;
    position: fixed;
    width: 100%;
}

section.not__found {
    height: 100vh;
    margin: 0;
}

section.not__found .container {
    justify-content: center;
    align-items: center;
    gap: 3.125vw;
}

a.btn.home__btn {
    height: 60px;
    padding: 0 7.82vw;
    background: var(--light-grey);
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 500px;
}

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

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

.reviews__slider .swiper-slide {
    background: var(--white);
    padding: 40px;
    gap: 20px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    line-height: 1.2;
    font-weight: 450;
    color: var(--black)
}

.reviews__text {
    font-size: 1.39em;
}

.reviews__author {
    color: var(--dark);
    line-height: 1.4;
}

span.filter__item.disable {
    display: none;
}

section.text__block .section__content {
    flex-direction: column;
    gap: 80px;
}

section.text__block .section__content h2.section__title {
    max-width: 100%;
}

section.text__block .section__content .section__content__left {
    gap: 40px;
}

.footer__contacts__info a {
    border-bottom: 1px solid;
}

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

p.footer__contacts__title {
    font-weight: bold;
}

p.footer__contacts__text {
    font-size: .8em;
}

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

.footer__soc {
    display: flex;
    align-items: center;
    gap: 10px;
}

.footer__soc a {
    display: flex;
}

.footer__soc a svg {
    width: 32px;
    height: 32px;
}

.footer__soc a:hover > svg path {
    fill: var(--black);
}

.footer__contacts p:first-child {
    font-weight: bold;
}

.footer__contacts__info p {
    font-weight: normal !important;
}