@font-face {
  font-family: Onest;
  font-display: swap;
  src: url("../fonts/Onest-ExtraBold.woff2") format("woff2"), url("../fonts/Onest-ExtraBold.woff") format("woff");
  font-weight: 800;
  font-style: normal;
}

@font-face {
  font-family: Onest;
  font-display: swap;
  src: url("../fonts/Onest-Black.woff2") format("woff2"), url("../fonts/Onest-Black.woff") format("woff");
  font-weight: 900;
  font-style: normal;
}

@font-face {
  font-family: Onest;
  font-display: swap;
  src: url("../fonts/Onest-Bold.woff2") format("woff2"), url("../fonts/Onest-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: Onest;
  font-display: swap;
  src: url("../fonts/Onest-Light.woff2") format("woff2"), url("../fonts/Onest-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: Unbounded;
  font-display: swap;
  src: url("../fonts/Unbounded-Black.woff2") format("woff2"), url("../fonts/Unbounded-Black.woff") format("woff");
  font-weight: 900;
  font-style: normal;
}

@font-face {
  font-family: Onest;
  font-display: swap;
  src: url("../fonts/Onest-Regular.woff2") format("woff2"), url("../fonts/Onest-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: Unbounded;
  font-display: swap;
  src: url("../fonts/Unbounded-Bold.woff2") format("woff2"), url("../fonts/Unbounded-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: Onest;
  font-display: swap;
  src: url("../fonts/Onest-Medium.woff2") format("woff2"), url("../fonts/Onest-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: Unbounded;
  font-display: swap;
  src: url("../fonts/Unbounded-Regular.woff2") format("woff2"), url("../fonts/Unbounded-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: Unbounded;
  font-display: swap;
  src: url("../fonts/Unbounded-Light.woff2") format("woff2"), url("../fonts/Unbounded-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: Unbounded;
  font-display: swap;
  src: url("../fonts/Unbounded-Medium.woff2") format("woff2"), url("../fonts/Unbounded-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: ZonaPro;
  font-display: swap;
  src: url("../fonts/ZonaPro-Bold.woff2") format("woff2"), url("../fonts/ZonaPro-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: ZonaPro;
  font-display: swap;
  src: url("../fonts/ZonaPro-Light.woff2") format("woff2"), url("../fonts/ZonaPro-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: ZonaPro;
  font-display: swap;
  src: url("../fonts/ZonaPro-Regular.woff2") format("woff2"), url("../fonts/ZonaPro-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: ZonaPro;
  font-display: swap;
  src: url("../fonts/ZonaPro-SemiBold.woff2") format("woff2"), url("../fonts/ZonaPro-SemiBold.woff") format("woff");
  font-weight: 600;
  font-style: normal;
}

@font-face {
  font-family: ZonaPro;
  font-display: swap;
  src: url("../fonts/ZonaPro-ExtraBold.woff2") format("woff2"), url("../fonts/ZonaPro-ExtraBold.woff") format("woff");
  font-weight: 800;
  font-style: normal;
}

:root {
  --white: #FFFFFF;
  --dark: #0F0F0F;
  --dark-secondary: #222222;
  --grey: #EDEDED;
  --light-grey: #F5F5F5;
  --primary: #cb4e00;
  --width-base: 1440;
  --width-current: 100vw;
  --width-multiplier: calc(var(--width-current) / var(--width-base));
}

html {
  height: 100%;
  scroll-behavior: smooth;
  scroll-padding-top: calc(50 * var(--width-multiplier));
}

body {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 100vh;
  color: var(--dark, #0F0F0F);
  background-color: var(--white, #FFFFFF);
  font: 400 calc(16 * var(--width-multiplier))/1.4 ZonaPro;
  text-rendering: optimizeSpeed;
  overflow-x: hidden;
}

::-webkit-scrollbar {
  width: 0;
}

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

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
li,
figure,
figcaption,
blockquote,
dl,
dd {
  margin: 0;
}

h1 {
  font: 400 calc(52 * var(--width-multiplier))/1.2 Unbounded;
}

h2 {
  font: 600 calc(40 * var(--width-multiplier))/1.2 Unbounded;
}

h3 {
  font: 700 calc(24 * var(--width-multiplier))/1.2 Onest;
}

h4 {
  font: 600 calc(20 * var(--width-multiplier))/1.2 Onest;
}

h5,
h6 {
  font-family: Onest;
  font-weight: 600;
  line-height: 1.2em;
}

ul,
ol {
  padding: 0;
  list-style-position: inside;
}

ul[class],
ol[class] {
  list-style: none;
}

a {
  text-decoration: none;
  color: inherit;
}

a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

img {
  max-width: 100%;
  display: block;
}

article > * + * {
  margin-top: 1em;
}

input,
button,
textarea,
select {
  font: inherit;
}

input:focus-visible {
  outline: none;
}

.container {
  width: 100%;
  padding: 0 calc(50 * var(--width-multiplier));
}

input,
select,
textarea {
  width: 100%;
  padding: calc(20 * var(--width-multiplier)) calc(12 * var(--width-multiplier));
  border: 1px solid transparent;
  border-radius: calc(8 * var(--width-multiplier));
  color: var(--dark, #0F0F0F);
  background-color: var(--grey, #EDEDED);
  font: inherit;
}

input::-moz-placeholder, select::-moz-placeholder, textarea::-moz-placeholder {
  color: rgba(15, 15, 15, 0.4);
}

input::placeholder,
select::placeholder,
textarea::placeholder {
  color: rgba(15, 15, 15, 0.4);
}

input:focus,
input:focus-visible,
select:focus,
select:focus-visible,
textarea:focus,
textarea:focus-visible {
  outline: none;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: calc(20 * var(--width-multiplier)) calc(12 * var(--width-multiplier));
  padding-right: calc(40 * var(--width-multiplier));
  background: url(../img/down.svg) no-repeat top 50% right calc(16 * var(--width-multiplier));
  background-color: var(--grey, #EDEDED);
}

textarea {
  resize: none;
  height: calc(140 * var(--width-multiplier));
}

.button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: -moz-max-content;
  width: max-content;
  padding: calc(20 * var(--width-multiplier)) calc(48 * var(--width-multiplier));
  border: 1px solid transparent;
  border-radius: calc(8 * var(--width-multiplier));
  background-color: transparent;
  font: 600 calc(14 * var(--width-multiplier))/1 Onest;
  text-transform: uppercase;
  transition: box-shadow 0.3s ease-in-out, transform 0.3s ease-in-out;
}

.button:hover:not(:disabled) {
  cursor: pointer;
}

.button:disabled {
  opacity: 0.5;
}

.button-primary {
  color: var(--white, #FFFFFF);
  background-color: var(--primary, #cb4e00);
}

.button-primary:hover {
  box-shadow: 0 0 16px rgba(203, 78, 0, 0.5);
  transform: scale(0.95);
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  padding: calc(30 * var(--width-multiplier)) 0;
  color: var(--white, #FFFFFF);
  background-color: var(--dark, #0F0F0F);
  z-index: 9;
  transition: background-color 0.3s ease-in-out;
}

.header__container {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: calc(24 * var(--width-multiplier));
  font-size: calc(14 * var(--width-multiplier));
  font-weight: 600;
  font-family: ZonaPro;
}

.header__logo {
  position: relative;
  width: calc(135 * var(--width-multiplier));
  height: calc(22 * var(--width-multiplier));
  z-index: 1;
}

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

.header__nav.open {
  top: 0;
}

.header__menu {
  display: flex;
  align-items: center;
  gap: calc(24 * var(--width-multiplier));
  color: var(--white, #FFFFFF);
}

.header__menu a {
  transition: color 0.3s ease-out;
}

.header__menu a:hover {
  color: var(--primary, #cb4e00);
}

.header__feedback {
  position: relative;
  padding-bottom: calc(4 * var(--width-multiplier));
  cursor: pointer;
}

.header__feedback::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: calc(2 * var(--width-multiplier));
  width: 100%;
  background-color: var(--white, #FFFFFF);
  transform-origin: 100% 50%;
  transform: scale3d(1, 1, 1);
  transition: transform 0.3s cubic-bezier(0.7, 0, 0.2, 1);
}

.header__feedback:hover {
  cursor: pointer;
}

.header__feedback:hover::before {
  transform-origin: 0% 50%;
  transform: scale3d(0, 1, 1);
  transition-timing-function: cubic-bezier(0.4, 1, 0.8, 1);
}

.header__burger {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: calc(40 * var(--width-multiplier));
  height: calc(40 * var(--width-multiplier));
  padding: calc(12 * var(--width-multiplier)) calc(10 * var(--width-multiplier));
  border-radius: calc(8 * var(--width-multiplier));
  background-color: var(--primary, #cb4e00);
  cursor: pointer;
  transition: 0.3s ease;
  z-index: 1;
}

.header__burger span {
  pointer-events: none;
  width: 100%;
  height: 2px;
  border-radius: 4px;
  background-color: var(--white, #FFFFFF);
  transition: 0.3s ease;
}

.header__burger.active {
  justify-content: center;
}

.header__burger.active span {
  width: 110%;
}

.header__burger.active span:nth-child(1) {
  transform: rotate(45deg) translateY(2px) translateX(1px);
}

.header__burger.active span:nth-child(2) {
  opacity: 0;
}

.header__burger.active span:nth-child(3) {
  transform: rotate(-45deg) translateY(-2px) translateX(0px);
}

.footer {
  color: var(--white, #FFFFFF);
  background-color: var(--dark, #0F0F0F);
}

.footer__container {
  padding: calc(50 * var(--width-multiplier)) 0;
  color: rgba(255, 255, 255, 0.7);
  font-size: calc(14 * var(--width-multiplier));
}

.footer__container a {
  transition: color 0.3s ease-out;
}

.footer__container a:hover {
  color: var(--primary, #cb4e00);
}

.footer__wrap {
  display: grid;
  grid-template-columns: auto 1fr auto;
  justify-content: space-between;
  -moz-column-gap: calc(24 * var(--width-multiplier));
       column-gap: calc(24 * var(--width-multiplier));
  row-gap: calc(50 * var(--width-multiplier));
  padding-bottom: calc(50 * var(--width-multiplier));
  margin-bottom: calc(50 * var(--width-multiplier));
  border-bottom: 1px solid #727272;
}

.footer__col {
  display: grid;
  grid-template-columns: calc(80 * var(--width-multiplier)) 1fr;
  gap: calc(40 * var(--width-multiplier));
}

.footer__col:nth-child(3n-1) {
  margin-left: 31%;
}

.footer__caption {
  font-weight: 600;
  line-height: 1;
  text-transform: lowercase;
}

.footer__menu {
  display: flex;
  flex-direction: column;
  gap: calc(20 * var(--width-multiplier));
  line-height: 1;
}

.footer__logo {
  width: calc(157 * var(--width-multiplier));
  height: calc(26 * var(--width-multiplier));
}

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

.footer__copy {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: calc(16 * var(--width-multiplier));
  line-height: 1;
}

.section-hidden {
  overflow: hidden;
}

.section-pad {
  padding: calc(50 * var(--width-multiplier)) 0;
}

.section-pad-top {
  padding-top: calc(50 * var(--width-multiplier));
}

.section-pad-bottom {
  padding-bottom: calc(50 * var(--width-multiplier));
}

.section-dark {
  color: var(--white, #FFFFFF);
  background-color: var(--dark, #0F0F0F);
}

.heading {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: calc(20 * var(--width-multiplier));
}

.title-s {
  font: 700 calc(24 * var(--width-multiplier))/1 Onest;
}

.text-up {
  text-transform: uppercase;
}

.text-lower {
  text-transform: lowercase;
}

.text-m {
  font-size: calc(24 * var(--width-multiplier));
  line-height: 1.2em;
}

.text-l {
  font-size: calc(40 * var(--width-multiplier));
  line-height: 1.2em;
}

.link {
  position: relative;
  display: block;
  width: -moz-max-content;
  width: max-content;
  padding-bottom: calc(4 * var(--width-multiplier));
  font-weight: 700;
  text-transform: lowercase;
}

.link::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: calc(2 * var(--width-multiplier));
  width: 100%;
  background-color: var(--dark, #0F0F0F);
  transform-origin: 100% 50%;
  transform: scale3d(1, 1, 1);
  transition: transform 0.3s cubic-bezier(0.7, 0, 0.2, 1);
}

.link:hover {
  cursor: pointer;
}

.link:hover::before {
  transform-origin: 0% 50%;
  transform: scale3d(0, 1, 1);
  transition-timing-function: cubic-bezier(0.4, 1, 0.8, 1);
}

.indent-bottom {
  margin-bottom: calc(32 * var(--width-multiplier));
}

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

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

.swiper-arrows {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(24 * var(--width-multiplier));
  margin-top: calc(32 * var(--width-multiplier));
}

.swiper-arrow {
  padding: calc(10 * var(--width-multiplier));
  border-radius: calc(100 * var(--width-multiplier));
  border: 1px solid var(--dark, #0F0F0F);
  cursor: pointer;
}

.swiper-arrow svg {
  display: block;
  width: calc(24 * var(--width-multiplier));
  height: calc(9 * var(--width-multiplier));
  pointer-events: none;
}

.swiper-button-disabled {
  opacity: 0.4;
  pointer-events: none;
}

.swiper-button-lock {
  display: none;
}

.hero__container {
  display: grid;
  grid-template-columns: 7fr 5fr;
  align-items: center;
  gap: calc(24 * var(--width-multiplier));
  min-height: 100dvh;
  padding-top: calc(100 * var(--width-multiplier));
  padding-bottom: calc(50 * var(--width-multiplier));
}

.hero__title {
  margin-bottom: calc(32 * var(--width-multiplier));
}

.hero__desc {
  max-width: 90%;
  margin-bottom: calc(48 * var(--width-multiplier));
  font: 400 calc(24 * var(--width-multiplier))/1.2 Onest;
}

.hero__img {
  height: calc(600 * var(--width-multiplier));
  border-radius: calc(20 * var(--width-multiplier));
  overflow: hidden;
}

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

.brands__title {
  margin-bottom: calc(24 * var(--width-multiplier));
  padding: 0 calc(50 * var(--width-multiplier));
  font: 400 calc(24 * var(--width-multiplier))/1 Unbounded;
  text-align: center;
}

.brands .marquee {
  animation: scroll 20s linear infinite;
}

.brands__wrap {
  position: relative;
  display: flex;
  overflow: hidden;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  gap: calc(64 * var(--width-multiplier));
}

.brands__wrap:hover .marquee {
  animation-play-state: paused;
}

.brands__items {
  flex-shrink: 0;
  display: flex;
  gap: calc(64 * var(--width-multiplier));
  counter-reset: item;
  justify-content: space-around;
  min-width: 100%;
}

.brands__item {
  max-width: calc(120 * var(--width-multiplier));
  width: auto;
  max-height: calc(80 * var(--width-multiplier));
  height: auto;
}

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

.about__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: calc(24 * var(--width-multiplier));
       column-gap: calc(24 * var(--width-multiplier));
  row-gap: calc(32 * var(--width-multiplier));
}

.about__card {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: calc(8 * var(--width-multiplier));
  padding-top: calc(20 * var(--width-multiplier));
  border-top: 1px solid rgba(255, 255, 255, 0.3);
  font-size: calc(14 * var(--width-multiplier));
  font-weight: 700;
}

.about__count {
  color: rgba(255, 255, 255, 0.4);
}

.about__num {
  font: 400 calc(96 * var(--width-multiplier))/1 Onest;
}

.about__txt {
  max-width: calc(140 * var(--width-multiplier));
  text-align: end;
}

.about__caption {
  max-width: calc(900 * var(--width-multiplier));
  margin: 0 auto;
  margin-top: calc(100 * var(--width-multiplier));
  margin-bottom: calc(30 * var(--width-multiplier));
  text-align: center;
  color: rgba(255, 255, 255, 0.6);
  font: 400 calc(40 * var(--width-multiplier))/1.2 Unbounded;
}

.about__caption strong {
  color: rgb(255, 255, 255);
  font: 400 calc(40 * var(--width-multiplier))/1.2 Unbounded;
}

.about-service__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(24 * var(--width-multiplier));
}

.about-service__card {
  display: flex;
  flex-direction: column;
  gap: calc(16 * var(--width-multiplier));
}

.about-service__img {
  height: calc(230 * var(--width-multiplier));
  border-radius: calc(8 * var(--width-multiplier));
  overflow: hidden;
}

.about-service__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.about-service__caption {
  font: 600 calc(20 * var(--width-multiplier))/1.2 Onest;
}

.about-service__txt {
  font: 400 calc(16 * var(--width-multiplier))/1.2 Onest;
}

.partners {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: calc(24 * var(--width-multiplier));
}

.partners-card {
  padding: calc(80 * var(--width-multiplier)) calc(16 * var(--width-multiplier));
}

.partners-card__img {
  height: calc(150 * var(--width-multiplier));
}

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

.partners-card__caption {
  font: 600 calc(16 * var(--width-multiplier))/1.5 ZonaPro;
  text-align: center;
}

.steps__title {
  margin-bottom: calc(50 * var(--width-multiplier));
  text-align: center;
}

.steps__cards {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: calc(24 * var(--width-multiplier));
}

.steps__card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.steps__card::before {
  content: "";
  position: absolute;
  top: calc(20 * var(--width-multiplier));
  left: 50%;
  height: 5px;
  width: 100%;
  background-color: #D9D9D9;
  z-index: -1;
}

.steps__card:last-child::before {
  content: none;
}

.steps__count {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(50 * var(--width-multiplier));
  height: calc(50 * var(--width-multiplier));
  margin-bottom: calc(24 * var(--width-multiplier));
  border-radius: 100%;
  color: var(--white);
  background-color: #FF6507;
}

.steps__caption {
  margin-bottom: calc(52 * var(--width-multiplier));
  font: 700 calc(24 * var(--width-multiplier))/1.2 Onest;
  text-align: center;
}

.steps__txt {
  line-height: 1.2em;
  text-align: center;
}

.reviews__slider .swiper-slide {
  width: calc(265 * var(--width-multiplier));
  height: calc(375 * var(--width-multiplier));
  border-radius: calc(20 * var(--width-multiplier));
  border: 4px solid #0F0F0F;
  overflow: hidden;
}

.reviews__slider .swiper-slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.cases-slide {
  display: flex;
  flex-direction: column;
  gap: calc(16 * var(--width-multiplier));
}

.cases-slide__img {
  height: calc(220 * var(--width-multiplier));
}

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

.cases-slide__caption {
  font: 600 calc(20 * var(--width-multiplier))/1 Onest;
}

.cases-slide__txt {
  font: 400 calc(16 * var(--width-multiplier))/1.2 Onest;
}

.services__slider .swiper {
  overflow: visible;
}

.services__card {
  display: flex;
  flex-direction: column;
  gap: calc(16 * var(--width-multiplier));
}

.services__img {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: calc(220 * var(--width-multiplier));
  border-radius: calc(16 * var(--width-multiplier));
  background-color: #FF6507;
  overflow: hidden;
}

.services__img img {
  position: relative;
  width: calc(70 * var(--width-multiplier));
  height: calc(110 * var(--width-multiplier));
  -o-object-fit: contain;
     object-fit: contain;
  z-index: 1;
}

.services__img::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(220 * var(--width-multiplier));
  height: calc(220 * var(--width-multiplier));
  background: url(../img/services-back.svg) center/contain no-repeat;
}

.services__caption {
  font: 600 calc(20 * var(--width-multiplier))/1.2 Onest;
}

.services__txt {
  font: 400 calc(16 * var(--width-multiplier))/1.2 Onest;
}

.feedback__container {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: calc(800 * var(--width-multiplier));
  padding: calc(50 * var(--width-multiplier)) 0;
}

.feedback__content {
  position: relative;
  max-width: calc(522 * var(--width-multiplier));
  margin: 0 auto;
  z-index: 2;
}

.feedback__title {
  margin-bottom: calc(32 * var(--width-multiplier));
  font: 400 calc(40 * var(--width-multiplier))/1.2 Unbounded;
  text-align: center;
}

.feedback__desc {
  margin-bottom: calc(48 * var(--width-multiplier));
  font: 400 calc(24 * var(--width-multiplier))/1.4 Onest;
  text-align: center;
}

.feedback__button {
  margin: 0 auto;
}

.thanks__container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: calc(640 * var(--width-multiplier));
}

.thanks__title {
  margin-bottom: calc(30 * var(--width-multiplier));
  font-size: calc(64 * var(--width-multiplier));
}

.thanks__link {
  color: var(--primary, #cb4e00);
}

.page-error__container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: calc(640 * var(--width-multiplier));
}

.page-error__box {
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-error__box span {
  position: relative;
  display: block;
  font-family: Onest;
  font-size: calc(250 * var(--width-multiplier));
  font-weight: 800;
  line-height: 1;
}

.page-error__box span::after {
  content: "4";
  position: absolute;
  left: calc(2 * var(--width-multiplier));
  text-shadow: -1px 0 red;
  top: 0;
  color: var(--dark, #0F0F0F);
  background: #fff;
  overflow: hidden;
  clip: rect(0, 900px, 0, 0);
  animation: noise-anim 2s infinite linear alternate-reverse;
}

.page-error__box a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(200 * var(--width-multiplier));
  height: calc(200 * var(--width-multiplier));
  padding: calc(10 * var(--width-multiplier));
  border-radius: 100%;
  color: var(--white, #FFFFFF);
  background-color: var(--primary, #cb4e00);
}

.page-error__box a:hover {
  box-shadow: 0 0 16px rgba(203, 78, 0, 0.5);
  transform: scale(0.95);
}

.page-error__txt {
  font-size: calc(140 * var(--width-multiplier));
  font-weight: 800;
  line-height: 1;
}

.glitch {
  position: relative;
  margin: 0 auto;
  color: var(--dark, #0F0F0F);
  font-size: calc(140 * var(--width-multiplier));
  font-weight: 800;
  line-height: 1;
}

.glitch::after {
  content: "ERROR";
  position: absolute;
  left: calc(2 * var(--width-multiplier));
  text-shadow: -1px 0 red;
  top: 0;
  color: var(--dark, #0F0F0F);
  background: #fff;
  clip: rect(0, 900px, 0, 0);
  overflow: hidden;
  animation: noise-anim 2s infinite linear alternate-reverse;
}

.orbit {
  position: absolute;
  top: 44%;
  width: calc(800 * var(--width-multiplier));
  height: calc(800 * var(--width-multiplier));
  transform: translateY(-50%);
}

.orbit-left {
  left: calc(-500 * var(--width-multiplier));
}

.orbit-right {
  right: calc(-500 * var(--width-multiplier));
}

.orbit-track {
  position: relative;
  width: 100%;
  height: 100%;
  border-radius: 50%;
}

.orbit-item {
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc(100 * var(--width-multiplier));
  height: calc(100 * var(--width-multiplier));
  border-radius: 50%;
  background: #F7F7F7;
  display: flex;
  justify-content: center;
  align-items: center;
  transform-origin: center;
}

.orbit-item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.modals {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9;
  opacity: 0;
  pointer-events: none;
}

.modal {
  position: relative;
  display: none;
  width: 100%;
  max-width: calc(550 * var(--width-multiplier));
  margin: calc(100 * var(--width-multiplier)) auto;
  border-radius: calc(18 * var(--width-multiplier));
  background-color: var(--white, #FFFFFF);
}

.modal__container {
  padding: calc(32 * var(--width-multiplier));
}

.modal__close {
  position: absolute;
  top: calc(16 * var(--width-multiplier));
  right: calc(16 * var(--width-multiplier));
  width: -moz-max-content;
  width: max-content;
  padding: 0;
  margin: 0;
  border: 0;
  background-color: transparent;
}

.modal__close svg {
  width: calc(20 * var(--width-multiplier));
  min-width: calc(20 * var(--width-multiplier));
  height: calc(20 * var(--width-multiplier));
  pointer-events: none;
}

.modal__close:hover {
  cursor: pointer;
}

.modal__caption {
  margin-bottom: calc(20 * var(--width-multiplier));
  font-size: calc(32 * var(--width-multiplier));
  font-weight: 400;
  line-height: 1;
  text-align: center;
}

.modal__form form {
  display: flex;
  flex-direction: column;
  gap: calc(16 * var(--width-multiplier));
}

.wpcf7-form.submitting .button {
  pointer-events: none;
  opacity: .6;
  cursor: not-allowed;
}

.modal__form .button {
  width: 100%;
}

.modal-vacancies {
  max-width: 45vw;
  height: 100%;
  margin: 0;
  margin-left: auto;
  border-radius: 0;
  overflow-x: hidden;
  overflow-y: auto;
}

.modal-vacancies .modal__container {
  display: flex;
  flex-direction: column;
  gap: calc(12 * var(--width-multiplier));
  padding-bottom: calc(20 * var(--width-multiplier));
}

.modal-vacancies .modal__close {
  top: calc(20 * var(--width-multiplier));
  right: calc(20 * var(--width-multiplier));
}

.modal__top {
  position: relative;
  padding: calc(20 * var(--width-multiplier));
  border-radius: calc(20 * var(--width-multiplier));
  background-color: rgba(0, 0, 0, 0.03);
}

.modal__position {
  max-width: 95%;
  margin-bottom: calc(16 * var(--width-multiplier));
  font-weight: 600;
  font-size: calc(20 * var(--width-multiplier));
  line-height: 1.2em;
}

.modal__tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: calc(8 * var(--width-multiplier));
}

.modal__item {
  display: flex;
  align-items: center;
  gap: calc(8 * var(--width-multiplier));
  padding: calc(8 * var(--width-multiplier)) calc(12 * var(--width-multiplier));
  border-radius: calc(200 * var(--width-multiplier));
  color: var(--white, #FFFFFF);
  background-color: var(--primary, #cb4e00);
  line-height: 1;
}

.modal__item svg {
  min-width: calc(16 * var(--width-multiplier));
  width: calc(16 * var(--width-multiplier));
  height: calc(16 * var(--width-multiplier));
}

.modal__box {
  display: flex;
  flex-direction: column;
  gap: calc(16 * var(--width-multiplier));
  padding: calc(20 * var(--width-multiplier));
  border-radius: calc(20 * var(--width-multiplier));
  background-color: rgba(0, 0, 0, 0.03);
}

.modal__bottom {
  position: sticky;
  bottom: 0;
  right: 0;
  left: 0;
  padding: calc(12 * var(--width-multiplier)) 0;
  background-color: var(--white, #FFFFFF);
}

.modal__button {
  width: 100%;
}

.preloader {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  background-color: var(--dark, #0F0F0F);
  z-index: 9;
  transition: opacity 0.3s ease-out;
}

.preloader__container {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.preloader__box {
  position: relative;
  display: flex;
  align-items: flex-end;
  gap: calc(5 * var(--width-multiplier));
}

.preloader__letters {
  position: relative;
  color: var(--white, #fff);
  font-family: Unbounded;
  font-weight: 600;
  font-size: calc(32 * var(--width-multiplier));
  line-height: calc(22 * var(--width-multiplier));
  letter-spacing: calc(-3 * var(--width-multiplier));
  z-index: 1;
  opacity: 0;
}

.preloader__dote {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  border-radius: 100%;
  background-color: var(--primary, #cb4e00);
  transform: translate(-50%, -50%);
}

@keyframes scroll {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(calc(-100% - 20px));
  }
}

@keyframes noise-anim {
  0% {
    clip: rect(12px, 9999px, 85px, 0);
  }

  5% {
    clip: rect(44px, 9999px, 23px, 0);
  }

  10% {
    clip: rect(77px, 9999px, 12px, 0);
  }

  15% {
    clip: rect(9px, 9999px, 64px, 0);
  }

  20% {
    clip: rect(53px, 9999px, 19px, 0);
  }

  25% {
    clip: rect(71px, 9999px, 88px, 0);
  }

  30% {
    clip: rect(34px, 9999px, 56px, 0);
  }

  35% {
    clip: rect(21px, 9999px, 43px, 0);
  }

  40% {
    clip: rect(63px, 9999px, 74px, 0);
  }

  45% {
    clip: rect(85px, 9999px, 51px, 0);
  }

  50% {
    clip: rect(42px, 9999px, 97px, 0);
  }

  55% {
    clip: rect(18px, 9999px, 32px, 0);
  }

  60% {
    clip: rect(59px, 9999px, 70px, 0);
  }

  65% {
    clip: rect(8px, 9999px, 44px, 0);
  }

  70% {
    clip: rect(91px, 9999px, 27px, 0);
  }

  75% {
    clip: rect(26px, 9999px, 83px, 0);
  }

  80% {
    clip: rect(64px, 9999px, 15px, 0);
  }

  85% {
    clip: rect(37px, 9999px, 68px, 0);
  }

  90% {
    clip: rect(73px, 9999px, 39px, 0);
  }

  95% {
    clip: rect(11px, 9999px, 92px, 0);
  }

  100% {
    clip: rect(49px, 9999px, 28px, 0);
  }
}

@keyframes down {
  0% {
    transform: translateY(calc(-100 * var(--width-multiplier)));
    opacity: 0;
  }

  100% {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes right {
  0% {
    transform: translateX(calc(-100 * var(--width-multiplier)));
    opacity: 0;
  }

  100% {
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes up {
  0% {
    transform: translateY(calc(50 * var(--width-multiplier)));
    opacity: 0;
  }

  100% {
    transform: translateY(0);
    opacity: 1;
  }
}

@media (min-width: 768px) {
  .header__burger {
    display: none;
  }
}

@media (max-width: 1300px) {
  .footer__col:nth-child(3n-1) {
    margin-left: 28%;
  }
}

@media (max-width: 1200px) {
  .footer__col:nth-child(3n-1) {
    margin-left: 25%;
  }
}

@media (max-width: 1100px) {
  .footer__col:nth-child(3n-1) {
    margin-left: 20%;
  }
}

@media (max-width: 1024px) {
  :root {
    --width-base: 768;
    --width-current: 100vmin;
  }

  h1 {
    font-size: calc(32 * var(--width-multiplier));
  }

  h2 {
    font-size: calc(24 * var(--width-multiplier));
  }

  .container {
    padding: 0 calc(16 * var(--width-multiplier));
  }

  .header {
    padding: calc(20 * var(--width-multiplier)) 0;
  }

  .footer__wrap {
    grid-template-columns: repeat(3, auto);
  }

  .footer__col:nth-child(3n-1) {
    margin-left: 0;
  }

  .footer__col {
    grid-template-columns: 1fr;
    gap: calc(24 * var(--width-multiplier));
  }

  .text-m {
    font-size: calc(20 * var(--width-multiplier));
  }

  .text-l {
    font-size: calc(32 * var(--width-multiplier));
  }

  .hero__container {
    grid-template-columns: 100%;
    min-height: unset;
    padding-top: calc(64 * var(--width-multiplier));
  }

  .hero__title {
    margin-bottom: calc(24 * var(--width-multiplier));
  }

  .hero__desc {
    margin-bottom: calc(32 * var(--width-multiplier));
    font-size: calc(22 * var(--width-multiplier));
  }

  .hero__img {
    order: -1;
    height: calc(400 * var(--width-multiplier));
  }

  .brands__title {
    padding: 0 calc(16 * var(--width-multiplier));
    font-size: calc(22 * var(--width-multiplier));
  }

  .brands__wrap {
    gap: calc(32 * var(--width-multiplier));
  }

  .brands__items {
    gap: calc(32 * var(--width-multiplier));
  }

  .about__cards {
    grid-template-columns: repeat(2, 1fr);
    gap: calc(24 * var(--width-multiplier));
  }

  .about__num {
    font-size: calc(82 * var(--width-multiplier));
  }

  .about__caption {
    margin-top: calc(60 * var(--width-multiplier));
    margin-bottom: calc(24 * var(--width-multiplier));
    font-size: calc(24 * var(--width-multiplier));
  }

  .about__caption strong {
    font-size: calc(24 * var(--width-multiplier));
  }

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

  .partners-card {
    padding: calc(40 * var(--width-multiplier)) calc(16 * var(--width-multiplier));
  }

  .steps__title {
    margin-bottom: calc(32 * var(--width-multiplier));
  }

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

  .reviews__slider .swiper {
    overflow: visible;
  }

  .feedback__container {
    min-height: calc(600 * var(--width-multiplier));
  }

  .feedback__content {
    max-width: calc(400 * var(--width-multiplier));
  }

  .feedback__title {
    font-size: calc(30 * var(--width-multiplier));
  }

  .feedback__desc {
    font-size: calc(20 * var(--width-multiplier));
  }

  .thanks__title {
    font-size: calc(44 * var(--width-multiplier));
  }

  .page-error__box span {
    font-size: calc(150 * var(--width-multiplier));
  }

  .page-error__box a {
    width: calc(150 * var(--width-multiplier));
    height: calc(150 * var(--width-multiplier));
  }

  .page-error__txt {
    font-size: calc(80 * var(--width-multiplier));
  }

  .orbit {
    top: 40%;
    width: calc(600 * var(--width-multiplier));
    height: calc(600 * var(--width-multiplier));
  }

  .orbit-right {
    right: calc(-400 * var(--width-multiplier));
  }

  .modal__caption {
    font-size: calc(24 * var(--width-multiplier));
  }

  .modal-vacancies {
    max-width: 75vw;
  }
}

@media (max-width: 767px) {
  :root {
    --width-base: 375;
    --width-current: 100vmin;
  }

  h1 {
    font-size: calc(24 * var(--width-multiplier));
  }

  h2 {
    font-size: calc(22 * var(--width-multiplier));
  }

  h3 {
    font-size: calc(20 * var(--width-multiplier));
  }

  input,
  select,
  textarea {
    padding: calc(16 * var(--width-multiplier)) calc(12 * var(--width-multiplier));
  }

  select {
    padding: calc(16 * var(--width-multiplier)) calc(12 * var(--width-multiplier));
    padding-right: calc(40 * var(--width-multiplier));
  }

  .button {
    padding: calc(16 * var(--width-multiplier)) calc(32 * var(--width-multiplier));
    width: 100%;
  }

  .header {
    padding: calc(16 * var(--width-multiplier)) 0;
  }

  .header__logo {
    width: calc(87 * var(--width-multiplier));
    height: calc(15 * var(--width-multiplier));
  }

  .header__nav {
    position: absolute;
    top: -100vh;
    left: 0;
    display: flex;
    flex-direction: column;
    gap: calc(40 * var(--width-multiplier));
    min-height: 100dvh;
    width: 100%;
    padding: calc(40 * var(--width-multiplier)) calc(16 * var(--width-multiplier));
    padding-top: calc(140 * var(--width-multiplier));
    background-color: var(--dark, #0F0F0F);
    transition: top 0.3s ease-out;
  }

  .header__menu {
    flex-direction: column;
    font-size: calc(24 * var(--width-multiplier));
  }

  .footer__container {
    padding: calc(40 * var(--width-multiplier)) 0;
  }

  .footer__wrap {
    grid-template-columns: repeat(2, 1fr);
    gap: calc(40 * var(--width-multiplier));
    padding-bottom: calc(40 * var(--width-multiplier));
    margin-bottom: calc(40 * var(--width-multiplier));
  }

  .footer__col:nth-child(3n-1) {
    order: 1;
    grid-column: span 2;
  }

  .footer__logo {
    order: -1;
    margin-bottom: calc(20 * var(--width-multiplier));
  }

  .footer__copy a:not(.footer__logo) {
    order: 1;
  }

  .footer__copy {
    flex-direction: column;
    align-items: flex-start;
  }

  .section-pad {
    padding: calc(40 * var(--width-multiplier)) 0;
  }

  .section-pad-top {
    padding-top: calc(40 * var(--width-multiplier));
  }

  .section-pad-bottom {
    padding-bottom: calc(40 * var(--width-multiplier));
  }

  .title-s {
    font-size: calc(22 * var(--width-multiplier));
  }

  .text-l {
    font-size: calc(24 * var(--width-multiplier));
  }

  .hero__container {
    padding-top: calc(72 * var(--width-multiplier));
    padding-bottom: calc(40 * var(--width-multiplier));
  }

  .hero__title {
    margin-bottom: calc(16 * var(--width-multiplier));
  }

  .hero__desc {
    margin-bottom: calc(24 * var(--width-multiplier));
    font-size: calc(18 * var(--width-multiplier));
  }

  .brands__title {
    font-size: calc(20 * var(--width-multiplier));
  }

  .brands__wrap {
    gap: calc(24 * var(--width-multiplier));
  }

  .brands__items {
    gap: calc(24 * var(--width-multiplier));
  }

  .about__cards {
    grid-template-columns: 100%;
    gap: calc(16 * var(--width-multiplier));
  }

  .about__num {
    font-size: calc(64 * var(--width-multiplier));
  }

  .about__caption {
    margin-top: calc(50 * var(--width-multiplier));
    margin-bottom: 0;
    font-size: calc(22 * var(--width-multiplier));
  }

  .about__caption strong {
    font-size: calc(22 * var(--width-multiplier));
  }

  .about-service__cards {
    grid-template-columns: 100%;
  }

  .about-service__card {
    padding: calc(16 * var(--width-multiplier));
    border: 1px solid #D9D9D9;
    border-radius: calc(8 * var(--width-multiplier));
  }

  .partners {
    grid-template-columns: 100%;
    gap: 0;
  }

  .partners-card {
    padding: calc(24 * var(--width-multiplier)) calc(16 * var(--width-multiplier));
  }

  .steps__title {
    margin-bottom: calc(24 * var(--width-multiplier));
  }

  .steps__cards {
    grid-template-columns: 1fr;
    gap: calc(40 * var(--width-multiplier));
  }

  .steps__card::before {
    top: 100%;
    transform: translateX(-50%);
    width: 2px;
    height: calc(40 * var(--width-multiplier));
  }

  .steps__card {
    padding: calc(16 * var(--width-multiplier));
    border: 1px solid #D9D9D9;
    border-radius: calc(8 * var(--width-multiplier));
  }

  .steps__count {
    width: calc(30 * var(--width-multiplier));
    height: calc(30 * var(--width-multiplier));
    margin-bottom: calc(16 * var(--width-multiplier));
  }

  .steps__caption {
    margin-bottom: calc(16 * var(--width-multiplier));
    font-size: calc(20 * var(--width-multiplier));
  }

  .feedback__container {
    padding: calc(40 * var(--width-multiplier)) 0;
  }

  .feedback__title {
    font-size: calc(24 * var(--width-multiplier));
  }

  .feedback__desc {
    font-size: calc(18 * var(--width-multiplier));
  }

  .thanks__title {
    margin-bottom: calc(20 * var(--width-multiplier));
    font-size: calc(32 * var(--width-multiplier));
  }

  .page-error__box span {
    font-size: calc(120 * var(--width-multiplier));
  }

  .page-error__box a {
    width: calc(120 * var(--width-multiplier));
    height: calc(120 * var(--width-multiplier));
  }

  .page-error__txt {
    font-size: calc(70 * var(--width-multiplier));
  }

  .orbit {
    left: 41%;
    transform: translateY(-50%) translateX(-50%);
    width: calc(400 * var(--width-multiplier));
    height: calc(400 * var(--width-multiplier));
  }

  .orbit-left {
    top: -15%;
  }

  .orbit-right {
    right: auto;
    bottom: -70%;
    top: auto;
  }

  .orbit-item {
    width: calc(60 * var(--width-multiplier));
    height: calc(60 * var(--width-multiplier));
  }

  .modal {
    width: calc(100% - 16 * var(--width-multiplier));
    margin: calc(50 * var(--width-multiplier)) auto;
  }

  .modal__container {
    padding: calc(16 * var(--width-multiplier));
    padding-top: calc(32 * var(--width-multiplier));
  }

  .modal__caption {
    font-size: calc(20 * var(--width-multiplier));
  }

  .modal-vacancies .modal__container {
    padding-top: calc(16 * var(--width-multiplier));
    padding-bottom: calc(4 * var(--width-multiplier));
  }

  .modal-vacancies .modal__close {
    top: calc(16 * var(--width-multiplier));
    right: calc(12 * var(--width-multiplier));
  }

  .modal-vacancies {
    max-width: 95vw;
    margin: 0;
    margin-left: auto;
  }

  .modal__top {
    padding: calc(16 * var(--width-multiplier));
    border-radius: calc(12 * var(--width-multiplier));
  }

  .modal__position {
    font-size: calc(18 * var(--width-multiplier));
  }

  .modal__item svg {
    min-width: calc(14 * var(--width-multiplier));
    width: calc(14 * var(--width-multiplier));
    height: calc(14 * var(--width-multiplier));
  }

  .modal__item {
    font-size: calc(12 * var(--width-multiplier));
  }

  .modal__box {
    padding: calc(16 * var(--width-multiplier));
    border-radius: calc(12 * var(--width-multiplier));
    font-size: calc(14 * var(--width-multiplier));
  }

  .preloader__letters {
    font-size: calc(24 * var(--width-multiplier));
    line-height: calc(20 * var(--width-multiplier));
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .steps__card:nth-child(3n)::before {
    content: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}