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

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

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

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

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

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

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

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

* {
  box-sizing: border-box;
}

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

img {
  max-width: 100%;
  height: auto;
}

input,
textarea {
  outline: none;
  border: 0;
  padding: 0;
  font-size: inherit;
  font-family: inherit;
}

input::placeholder,
textarea::placeholder {
  font-size: inherit;
  font-family: inherit;
  color: inherit;
}

select {
  outline: none;
}

table,
tbody,
tfoot,
thead,
td,
th,
tr {
  border-collapse: collapse;
  border-spacing: 0;
  padding: 0;
}

.alignleft {
  float: left;
  margin-right: 1.5em;
  margin-bottom: 1.5em;
}

.alignright {
  float: right;
  margin-left: 1.5em;
  margin-bottom: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.5em;
}

ul,
ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  font-family: 'Montserrat';
  font-size: .8333vw;
  line-height: 1.7;
  color: #827E78;
  -webkit-tap-highlight-color: transparent;
}

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

.container {
  width: 100%;
  max-width: 60.9375vw;
  margin: 0 auto;
}

h1,
h2 {
  font-size: 1.875vw;
  line-height: 1.42;
  margin: 0;
  font-family: 'Oswald';
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #000;
}

h3 {
  font-size: .8854vw;
  margin: 0;
  font-family: 'Oswald';
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #000;
}

h4 {
  font-size: .7292vw;
  margin: 0;
  font-family: 'Oswald';
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #000;
}

.orange_subtitle {
  color: #f94a13;
  margin: 0 0 .4167vw;
}

h5 {
  font-size: .625vw;
  margin: 0;
  font-family: 'Oswald';
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #000;
}

.mt_100 {
  margin-top: 5.2083vw;
}

.marquee_text {
  overflow: hidden;
  width: 100%;
  height: 1.6146vw;
  display: flex;
  align-items: center;
  color: #fff;
  font-size: 120%;
  font-weight: 500;
  position: relative;
  z-index: 99999;
}

.marquee__inner {
  display: inline-flex;
  gap: .2604vw;
  white-space: nowrap;
  will-change: transform;
  animation: marquee var(--marquee-duration, 20s) linear infinite;
}

.marquee__text {
  display: inline-block;
}

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

  to {
    transform: translateX(-50%);
  }
}

.marquee_text:hover .marquee__inner,
.marquee_text:focus-within .marquee__inner {
  animation-play-state: paused;
}

@media (prefers-reduced-motion: reduce) {
  .marquee__inner {
    animation: none;
  }
}

.header_pc {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4.6875vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  border-bottom: 1px solid #FFFFFF17;
  background-color: rgba(0, 0, 0, 0.4);
  z-index: 99;
  transition: background-color 1s, box-shadow 1s;
}

.header_pc.fixed {
  position: fixed;
  background-color: #fff;
  border-bottom: 0;
  box-shadow: 0 .1042vw .4167vw rgba(0, 0, 0, 0.1);
  transition: background-color 1s, box-shadow 1s;
}

.header_pc.fixed .marquee_text {
  color: #000;
}

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

.logo_1 {
  display: none;
}

.header_pc.fixed .logo_1 {
  display: block;
}

.header_pc.fixed .logo_2 {
  display: none;
}

.logo {
  display: block;
  line-height: 0;
}

.logo img {
  width: 10.8854vw;
}

.header_pc .menu {
  display: flex;
  align-items: center;
  gap: 1.1979vw;
}

.header_pc .menu li {
  color: #fff;
  text-transform: uppercase;
  font-family: 'Oswald';
  letter-spacing: 1px;
}

.header_pc.fixed .menu li {
  color: #221C13;
}

.header_pc .menu>li>a {
  padding: .2604vw .5208vw;
  border-radius: .2083vw;
  font-size: 90%;
}

.header_pc .menu li.menu-item-has-children,
.header_pc .menu li.current_lang {
  position: relative;
}

.header_pc .menu li.current_lang .sub-menu img {
  width: 1.0417vw;
  margin-right: .2604vw;
}

.header_pc .menu li.menu-item-has-children>a::after {
  content: '';
  display: inline-block;
  width: .7292vw;
  height: .625vw;
  background-image: url(..//img/menu_item_arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  margin-left: .3646vw;
  position: relative;
  top: .1042vw;
}

.header_pc.fixed .menu li.menu-item-has-children>a::after,
.header_pc.fixed .menu li.current_lang::after {
  background-image: url(..//img/menu_item_arrow_black.svg);
}

.header_pc .menu li.current_lang {
  cursor: pointer;
}

.header_pc .sub-menu {
  position: absolute;
  top: 5.2083vw;
  min-width: 11.4583vw;
  border-radius: .2604vw;
  background-color: #fff;
  box-shadow: 0px 0px 2.6042vw .5208vw rgb(0 0 0 / 10%);
  font-size: 80%;
  visibility: hidden;
  opacity: 0;
  transition: 0.3s;
}

.header_pc .sub-menu::after,
.header_pc .menu li.current_lang .sub-menu::after {
  content: '';
  position: absolute;
  top: -1.0417vw;
  left: 0;
  width: 100%;
  height: 1.0417vw;
}

.header_pc .sub-menu::before,
.header_pc .menu li.current_lang .sub-menu::before {
  content: '';
  position: absolute;
  top: -0.4688vw;
  left: 2.0833vw;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 .5208vw .5208vw .5208vw;
  border-color: transparent transparent #ffffff transparent
}

.header_pc .menu li.current_lang .sub-menu::before {
  left: 1.3542vw;
}

.header_pc .menu li.current_lang .sub-menu {
  min-width: 3.6458vw;
  white-space: nowrap;
}

.header_pc .menu li.menu-item-has-children:hover .sub-menu,
.header_pc .menu li.current_lang:hover .sub-menu {
  top: 2.6042vw;
  visibility: visible;
  opacity: 1;
  transition: 0.3s;
}

.header_pc .menu li.current_lang .sub-menu {
  left: 50%;
  transform: translateX(-50%);
}

.header_pc .menu li.current_lang:hover .sub-menu {
  top: 2.0833vw;
}

.header_pc .sub-menu a {
  padding: .625vw 1.5625vw;
  border-top: 1px solid #f5f5f5;
  color: #221c13;
  display: block;
  transition: 0.2s;
}

.header_pc .sub-menu a:hover {
  background-color: #f5f5f5;
  color: #f94a13;
}

.header_pc .menu li.current_lang .sub-menu a {
  padding: .625vw .7813vw;
}

.header_pc .sub-menu li:first-child a {
  border-top: 0;
}

.flag_box {
  line-height: 0;
}

.flag_box img {
  width: 1.0417vw;
  height: 1.0417vw;
  border-radius: 50%;
  object-fit: cover;
}

.socials {
  display: flex;
  gap: .2604vw;
}

.socials a {
  display: flex;
  justify-content: center;
  align-items: center;
}

.socials img {
  width: 1.25vw;
}

.main_screen li {
  height: 41.25vw;
}

.main_screen li::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #221C134D;
}

.main_screen li img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
}

.main_screen_text {
  margin: 10.4167vw auto 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5625vw;
  text-align: center;
  max-width: 72.9167vw;
  position: relative;
}

.main_screen li h1,
.main_screen li h2 {
  font-size: 4.1667vw;
  font-weight: 500;
  line-height: 1.2;
  color: #fff;
  position: relative;
  bottom: 10.4167vw;
  opacity: 0;
  transition: 1s;
  transition-delay: 0.5s;
}

.main_screen li.swiper-slide-active h1,
.main_screen li.swiper-slide-active h2 {
  bottom: 0;
  opacity: 1;
  transition: 1s;
}

.main_slide_subtitle {
  font-size: 1.25vw;
  text-transform: uppercase;
  font-weight: 700;
  color: #fff;
  position: relative;
  bottom: 1.5625vw;
  opacity: 0;
  transition: 0.5s;
  transition-delay: 0.5s;
}

.main_screen li.swiper-slide-active .main_slide_subtitle {
  bottom: 0;
  opacity: 1;
  transition: 0.5s;
}

.main_screen_arrows>div {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2.6042vw;
  height: 2.6042vw;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  border: .1042vw solid #EBE8E485;
  cursor: pointer;
  transition: 0.2s;
  z-index: 20;
}

.main_screen_arrows>div:hover {
  border-color: #fff;
  transition: 0.2s;
}

.main_screen_arrows>div img {
  width: .7292vw;
}

.main_screen_prev {
  left: 4.9479vw;
}

.main_screen_next {
  right: 4.9479vw;
}

.about {
  position: relative;
  padding-top: 6.6667vw;
}

.about_bg {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  opacity: 0.1;
}

.about_box {
  display: flex;
  gap: 2.8646vw;
}

.about_img {
  position: relative;
  padding-top: 2.3438vw;
  width: 52%;
  line-height: 0;
}

.about_img img:first-child {
  position: absolute;
  top: -2.8646vw;
  right: 1.25vw;
  width: 8.0729vw;
  z-index: -1;
}

.about_img img:nth-child(2) {
  width: 100%;
}

.about_img img:nth-child(3) {
  position: absolute;
  top: -1.0417vw;
  right: 2.7604vw;
  width: 22.3958vw;
}

.about_content {
  width: 48%;
}

.about_descr {
  margin-top: 1.5625vw;
}

a.all_btn,
.all_btn {
  padding: 0 3.0208vw;
  width: fit-content;
  height: 2.3438vw;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  background-color: #f94a13;
  border-radius: 1.5625vw;
  color: #fff;
  line-height: 1;
  font-size: .7292vw;
  font-weight: 700;
  text-transform: uppercase;
  font-family: 'Oswald';
  letter-spacing: 1px;
  cursor: pointer;
  transition: 0.2s;
}

a.all_btn:hover,
.all_btn:hover {
  background-color: #6e1999;
  transform: scale(0.9);
  transition: 0.2s;
}

.main_btn {
  margin: 2.6042vw auto 0;
}

.about_btn_box {
  display: flex;
  align-items: flex-end;
  gap: 2.6042vw;
  margin-top: 1.0417vw;
}

.about_btn_box img {
  width: 6.0938vw;
  position: relative;
  bottom: .5208vw;
}

.adv {
  position: relative;
  padding-bottom: 5.2083vw;
}

.adv_bg {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  z-index: -1;
}

.adv_list {
  display: flex;
  flex-wrap: wrap;
  gap: 2.0833vw;
}

.adv_item {
  width: calc(25% - 1.6vw);
  background-color: #fff;
  box-shadow: 0 .5208vw 3.125vw 0 rgba(0, 0, 0, 0.13);
  padding: 2.0833vw 2.0833vw 1.4063vw;
}

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

.adv_square {
  width: 3.125vw;
  height: 3.125vw;
  background-image: linear-gradient(68deg, #fff 0%, #CD8C6630 100%);
}

.adv_icon {
  height: 3.125vw;
}

.adv_title {
  font-family: 'Oswald';
  letter-spacing: 1px;
  font-size: 1.4583vw;
  font-weight: 700;
  text-transform: uppercase;
  color: #000;
  margin-top: .7813vw;
}

.boundaries {
  position: relative;
  padding: 5.9896vw 0;
}

.boundaries::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #221C1370;
}

.boundaries_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
}

.boundaries>img:nth-child(2) {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  z-index: 2;
}

.boundaries_box {
  display: flex;
  align-items: center;
  gap: 4.1667vw;
  position: relative;
  z-index: 5;
}

.boundaries_left {
  width: 50%;
  color: #fff;
}

.boundaries_right {
  width: 50%;
  color: #fff;
}

.reviews h4,
.reviews h2 {
  text-align: center;
}

.swiper_box {
  margin-top: 4.1667vw;
  position: relative;
}

.review {
  font-size: 1.0938vw;
  font-weight: 500;
  line-height: 1.4;
  font-style: italic;
  text-align: center;
}

.author_box {
  margin-top: 1.3021vw;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.0417vw;
}

.avatar {
  line-height: 0;
}

.avatar img {
  width: 2.6042vw;
  height: 2.6042vw;
  border-radius: 50%;
  object-fit: cover;
}

.author {
  font-weight: 700;
}

.review_date {
  font-weight: 500;
}

.reviews_arrows>div {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
}

.reviews_arrows>div img {
  width: .7813vw;
}

.reviews_prev {
  left: -2.6042vw;
}

.reviews_next {
  right: -2.6042vw;
}

.reviews_pagination {
  margin-top: 1.5625vw;
  display: flex;
  justify-content: center;
}

.reviews_pagination span {
  margin: 0 .3125vw !important;
  width: .3125vw;
  height: .3125vw;
}

.reviews_pagination span.swiper-pagination-bullet-active {
  background-color: #000;
}

.contact_us_logos {
  position: relative;
}

.contact_us_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.contacts_items {
  margin-top: 1.8229vw;
  display: flex;
  justify-content: space-between;
  max-width: 32.0833vw;
  width: 100%;
}

.contact_item {
  display: flex;
  align-items: center;
  gap: .7813vw;
}

.contact_icon {
  width: 2.5vw;
  height: 2.5vw;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #EBE8E4;
}

.contact_icon img {
  width: .7292vw;
}

.contact_label {
  text-transform: uppercase;
  font-weight: 500;
  font-size: .7292vw;
}

.contact_value {
  font-size: .9375vw;
  font-weight: 600;
  color: #221c13;
}

.contact_us {
  position: relative;
}

.contact_us_bg {
  position: absolute;
  top: 9.2188vw;
  left: 0;
  width: 100%;
  height: 13.6458vw;
  object-fit: cover;
}

.marquee {
  --logo-w: 5vw;
  --gap: 1.5625vw;
  overflow: hidden;
  position: relative;
  padding: 3.9583vw 0 3.4896vw;
  background: transparent;
}

.contact_us_logos {
  display: flex;
  gap: var(--gap);
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
  white-space: nowrap;
  width: max-content;
  will-change: transform;
  backface-visibility: hidden;
  transform: translate3d(0, 0, 0);
  animation: marquee linear infinite;
  animation-duration: 60s;
  animation-timing-function: linear;
}

.contact_us_logos li {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  min-width: calc(var(--logo-w) + var(--gap));
}

.contact_us_logos li img {
  display: block;
  width: var(--logo-w);
  height: auto;
  object-fit: contain;
}

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

  to {
    transform: translateX(-50%);
  }
}

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

@media (prefers-reduced-motion: reduce) {
  .contact_us_logos {
    animation: none;
  }
}

.contact_us .container {
  position: relative;
}

.contact_us_form {
  position: absolute;
  top: 0;
  right: 0;
  padding: 2.7083vw 3.0208vw 2.9688vw 3.2292vw;
  max-width: 25.5208vw;
  box-shadow: 0 .5208vw 3.125vw 0 rgba(0, 0, 0, 0.2);
  border-top: .2604vw solid #f94a13;
  border-radius: 1.5625vw;
  overflow: hidden;
  z-index: 5;
}

.contact_us_form_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
}

.contact_us_form::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #221C13;
  opacity: 0.9;
}

.contact_us_form h4 {
  position: relative;
  margin-bottom: 0;
}

.contact_us_form h2 {
  position: relative;
  color: #fff;
  font-size: 1.5625vw;
}

.fields_box {
  display: flex;
  flex-direction: column;
  gap: .5208vw;
}

.fields_box input,
.fields_box textarea {
  color: #000;
  font-weight: 500;
  width: 100%;
  height: 2.0833vw;
  border-radius: .1563vw;
  padding: 0 .625vw;
  font-size: .7292vw;
}

.fields_box input::placeholder,
.fields_box textarea::placeholder {
  color: #acacac;
}

.fields_box textarea {
  padding: .2604vw .7292vw;
  height: 5vw;
  resize: none;
}

.submit_btn {
  position: relative;
}

.submit_btn input {
  width: 100%;
  height: 2.7083vw;
  background-color: #221c13;
  color: #fff;
  line-height: 1;
  font-size: .7292vw;
  font-weight: 700;
  text-transform: uppercase;
  font-family: 'Oswald';
  letter-spacing: 1px;
  cursor: pointer;
  transition: 0.2s;
}

.submit_btn input:hover {
  background-color: #f94a13;
  transition: 0.2s;
}

.wpcf7-spinner {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 1.0417vw;
  width: 1.25vw;
  height: 1.25vw;
  margin: 0 1.25vw;
}

.wpcf7-spinner::before {
  top: .2083vw;
  left: .2083vw;
  width: .3125vw;
  height: .3125vw;
  transform-origin: .4167vw .4167vw;
}

.wpcf7-not-valid-tip {
  display: none;
}

.fields_box input.wpcf7-not-valid::placeholder {
  color: #ff731c;
}

.fields_box input.wpcf7-not-valid {
  border: 1px solid #ff731c;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
  display: none;
}

.wpcf7 form.sent .wpcf7-response-output {
  position: relative;
  margin: 1.0417vw 0 0;
  padding: 0;
  border: 0;
  color: rgb(21, 209, 21);
  line-height: 1.4;
  font-weight: 700;
  font-size: 110%;
}

.our_offer {
  padding: 6.1979vw 0 1.5625vw;
  position: relative;
  background-color: #F5F3F0;
}

.portfolio {
  padding-bottom: 6.1979vw;
  background-color: #fff;
}

.our_offer_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.15;
}

.portfolio .our_offer_bg {
  width: auto;
  object-fit: contain;
  opacity: 1;
}

.our_offer h4,
.our_offer h2 {
  text-align: center;
}

.our_offer_list {
  display: flex;
  margin: 2.3958vw auto 0;
  max-width: 81.7708vw;
  box-shadow: 0 0 .5208vw 0 rgba(0, 0, 0, 0.5);
}

.our_offer_list li {
  flex: 1 1 0%;
  min-width: 0;
  height: 23.9583vw;
  position: relative;
  cursor: pointer;
  transition: 0.5s;
}

.our_offer_list li:hover {
  flex: 0 0 60%;
  transition: 0.5s;
}

.our_offer_list li:not(:hover) {
  flex: 1 1 0%;
}

.our_offer_list li::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0;
  background-color: #00000059;
  z-index: 2;
  transition: 0.5s;
}

.our_offer_list li:hover::before {
  height: 100%;
  transition: 0.5s;
}

.our_offer_img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.our_offer_btn {
  margin-top: 1.5625vw;
  position: relative;
  z-index: 5;
}

.our_offer_list h3 {
  position: relative;
  top: 7vw;
  font-size: 1.1458vw;
  padding: 0 1.0417vw;
  text-align: center;
  color: #fff;
  opacity: 0;
  transition: 0.5s;
  z-index: 5;
}

.our_offer_list li:hover h3 {
  top: 3.6458vw;
  opacity: 1;
  transition: 0.5s;
  transition-delay: 0.2s;
}

.our_offer_list p {
  position: relative;
  margin: 0;
  text-align: center;
  font-size: .7813vw;
  padding: 0 1.0417vw;
  color: #fff;
  top: 7vw;
  opacity: 0;
  transition: 0.5s;
  z-index: 5;
}

.our_offer_list li:hover p {
  top: 5.2083vw;
  opacity: 1;
  transition: 0.5s;
  transition-delay: 0.4s;
}

a.portfolio_item_btn {
  background-color: transparent;
  border: 1px solid #fff;
  border-radius: .2604vw;
  margin: 0 auto;
  position: relative;
  top: 7vw;
  opacity: 0;
  transition: 0.5s;
  z-index: 5;
}

a.portfolio_item_btn:hover {
  transform: scale(1);
  background-color: transparent;
}

.our_offer_list li:hover a.portfolio_item_btn {
  top: 5.2083vw;
  opacity: 1;
  transition: 0.5s;
  transition-delay: 0.4s;
}

.main_footer {
  background-color: #221C13;
  position: relative;
  padding-top: 5vw;
  color: #fff;
}

.footer_bg {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  opacity: 0.05;
}

.footer_box {
  position: relative;
  display: flex;
  justify-content: space-between;
}

.main_footer .logo_2 {
  display: block;
  line-height: 0;
}

.logo_2 img {
  width: 8.6979vw;
}

.footer_col_title {
  color: #fff;
  margin-bottom: 1.25vw;
}

.footer_menu ul {
  display: flex;
  flex-direction: column;
  gap: .3646vw;
}

.main_footer a {
  transition: 0.2s;
}

.main_footer a:hover {
  color: #f94a13;
  transition: 0.2s;
}

.footer_contacts a {
  display: flex;
  align-items: center;
  gap: .5208vw;
  margin: .3646vw 0;
}

.footer_contacts a img {
  width: .7292vw;
}

.footer_socials {
  display: flex;
  gap: .5208vw;
  margin-top: 1.0417vw;
}

.footer_socials a {
  display: flex;
  justify-content: center;
  align-items: center;
}

.footer_contacts .footer_socials img {
  width: 2.0833vw;
}

.copyright {
  position: relative;
  padding: 1.3542vw 0;
  border-top: 1px solid #7A736A45;
  color: #827E78;
  font-size: .7813vw;
  text-align: center;
  margin-top: 4vw;
}

#scrollToTopBtn {
  position: fixed;
  right: 1.8vw;
  bottom: 7.2917vw;
  width: 2.0833vw;
  height: 2.0833vw;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  transition: 0.2s;
  z-index: 999;
}

#scrollToTopBtn img {
  width: 80%;
}

.anim_top {
  position: relative;
  top: 4vw;
  opacity: 0;
  transition: 2s;
}

.anim_top.active {
  top: 0;
  opacity: 1;
  transition: 2s;
}

.anim_scale {
  transform: scale(0);
  opacity: 0;
  transition: transform 2s, opacity 2s;
}

.anim_scale.active {
  transform: scale(1);
  opacity: 1;
  transition: transform 2s, opacity 2s;
}

.fixed_tel_btn {
  width: 3.6458vw;
  height: 3.6458vw;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  position: fixed;
  right: 1.0417vw;
  bottom: 1.0417vw;
  background-color: #f94a13;
  cursor: pointer;
  z-index: 99;
  animation: hoverWave linear 2s infinite;
}

@keyframes hoverWave {
  0% {
    box-shadow: 0 8px 10px rgba(249, 74, 19, 0.3), 0 0 0 0 rgba(249, 74, 19, 0.2), 0 0 0 0 rgba(249, 74, 19, 0.2);
  }

  40% {
    box-shadow: 0 8px 10px rgba(249, 74, 19, 0.3), 0 0 0 15px rgba(249, 74, 19, 0.2), 0 0 0 0 rgba(249, 74, 19, 0.2);
  }

  80% {
    box-shadow: 0 8px 10px rgba(249, 74, 19, 0.3), 0 0 0 30px rgba(249, 74, 19, 0), 0 0 0 26.7px rgba(249, 74, 19, 0.067);
  }

  100% {
    box-shadow: 0 8px 10px rgba(249, 74, 19, 0.3), 0 0 0 30px rgba(249, 74, 19, 0), 0 0 0 40px rgba(249, 74, 19, 0.0);
  }
}

.fixed_tel_btn img {
  width: 1.3vw;
  position: absolute;
}

.fixed_tel {
  animation: appear-first 6s linear infinite both, shake 1s steps(6) infinite both;
}

.fixed_email {
  animation:
    appear-second 6s linear infinite both,
    shake 1s steps(6) infinite both;
}

@keyframes appear-first {
  0% {
    opacity: 1;
  }

  45% {
    opacity: 1;
  }

  48% {
    opacity: 0.6;
  }

  52% {
    opacity: 0;
  }

  100% {
    opacity: 0;
  }
}

@keyframes appear-second {
  0% {
    opacity: 0;
  }

  45% {
    opacity: 0;
  }

  48% {
    opacity: 0.6;
  }

  52% {
    opacity: 1;
  }

  95% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@keyframes shake {
  0% {
    transform: rotate(0deg);
  }

  20% {
    transform: rotate(-22deg);
  }

  40% {
    transform: rotate(22deg);
  }

  60% {
    transform: rotate(-22deg);
  }

  80% {
    transform: rotate(22deg);
  }

  100% {
    transform: rotate(0deg);
  }
}

.mob {
  display: none;
}

.mob_menu_popup {
  position: fixed;
  visibility: hidden;
}

.first_screen {
  padding: 15.5208vw 0 9.5313vw;
  position: relative;
  color: #fff;
}

.first_screen h1,
.first_screen h2,
.first_screen h3,
.first_screen h4,
.first_screen h5 {
  color: #fff;
}

.first_screen::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(34, 28, 19, 0.4);
  z-index: -1;
}

.first_screen_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
}

.breadcrumbs ul {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: .5208vw;
  font-family: 'Oswald';
  font-size: 90%;
  letter-spacing: 1px;
  text-transform: uppercase;
  font-weight: 500;
}

.separator {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: .2604vw 0 .2604vw .3125vw;
  border-color: transparent transparent transparent #ffffff;
}

.breadcrumbs a {
  transition: 0.2s;
}

.breadcrumbs a:hover {
  color: #f94a13;
  transition: 0.2s;
}

.service {
  position: relative;
  padding: 6.25vw 0;
}

.service:nth-child(odd) {
  background-color: #F6F4F1;
}

.left_bg {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
}

.right_bg {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 42.0313vw;
}

.service_box {
  display: flex;
  gap: 4.1667vw;
  position: relative;
  z-index: 3;
}

.service_content {
  width: 40%;
}

.service_img {
  width: 60%;
  position: relative;
  box-shadow: -3.125vw 0px 0px -2.0833vw #CD8C66;
  aspect-ratio: 4/3;
}

.service_img img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.service_descr {
  margin: 1.5625vw 0 2.0833vw;
}

a.service_btn {
  transition: 0.2s;
}

a.service_btn:hover {
  transform: scale(1);
  transition: 0.2s;
}

.service:nth-child(odd) a.service_btn {
  background-color: #f94a13;
}

.service:nth-child(odd) a.service_btn:hover {
  background-color: #6e1999;
}

.services_have_questions {
  position: relative;
  padding: 6.25vw 0;
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.services_have_questions::before {
  content: '';
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.44);
}

.services_have_questions h2 {
  text-align: center;
  color: #fff;
  position: relative;
  font-size: 2.6042vw;
  letter-spacing: 2px;
}

.services_have_questions_descr {
  text-align: center;
  color: #fff;
  font-size: 1.0417vw;
  font-weight: 500;
  margin-top: .5208vw;
  position: relative;
}

.services_have_questions_btns {
  display: flex;
  justify-content: center;
  gap: 1.0417vw;
  margin-top: 2.0833vw;
  position: relative;
}

.services_have_questions_btns a {
  background-color: #f94a13;
}

.services_have_questions_btns a:hover {
  background-color: #6e1999;
  transform: scale(1);
}

.contacts_popup {
  position: fixed;
  inset: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999999;
  visibility: hidden;
}

.contacts_popup.active {
  visibility: visible;
}

.contacts_overlay {
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.75);
}

.contacts_close {
  position: absolute;
  top: 1.0417vw;
  right: 1.0417vw;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  width: 2.0833vw;
  height: 2.0833vw;
}

.contacts_close span {
  width: 1.3021vw;
  height: .2083vw;
  background-color: #221C13;
  transform: rotate(45deg);
  position: absolute;
  border-radius: .5208vw;
}

.contacts_close span:last-child {
  transform: rotate(-45deg);
}

.contacts_content {
  position: relative;
  width: 95%;
  max-width: 23.4375vw;
  border-radius: .5208vw;
  background-color: #fff;
  box-shadow: 0 0 1.0417vw rgba(0, 0, 0, 0.1);
  padding: 3.125vw;
  display: flex;
  flex-direction: column;
  gap: 1.0417vw;
  top: 10.4167vw;
  opacity: 0;
  transform: scale(0);
  transition: 0.3s;
}

.contacts_popup.active .contacts_content {
  top: 0;
  opacity: 1;
  transform: scale(1);
  transition: 0.3s;
}

.contacts_content h2 {
  text-align: center;
}

.contacts_content a {
  width: 100%;
  text-align: center;
  background-color: #f94a13;
}

.contacts_content a:hover {
  background-color: #6e1999;
  transform: scale(1);
}

.the_content h1 {
  text-align: center;
}

.faq_list {
  margin-top: 1.5625vw;
  display: flex;
  flex-direction: column;
  gap: .5208vw;
  position: relative;
  max-width: 53.4896vw;
  margin-left: auto;
  margin-right: auto;
  z-index: 5;
}

.faq_question {
  background-color: #f7f9fb;
  border: 1px solid transparent;
  color: #000;
  font-weight: 700;
  padding: .7292vw 4.4271vw .7292vw 1.5625vw;
  position: relative;
  cursor: pointer;
  transition: 0.2s;
}

.faq_question::after {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 1.5625vw;
  width: .8333vw;
  height: .5208vw;
  background-image: url(..//img/faq_arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transition: 0.2s;
}

.faq_answer {
  padding: 1.5625vw 4.4271vw 1.8229vw 3.3854vw;
  display: none;
}

.faq_question.active {
  border: 1px solid #000;
  transition: 0.2s;
}

.faq_question.active::after {
  background-image: url(..//img/faq_up.svg);
  height: .8333vw;
  transition: 0.2s;
}

.tel_email_box {
  margin: 1.5625vw 0;
  display: flex;
  justify-content: center;
  gap: 1.0417vw;
}

.tel_email_box a {
  display: flex;
  align-items: center;
  font-weight: 500;
  gap: .5208vw;
  transition: 0.2s;
}

.tel_email_box a:hover {
  color: #f94a13;
  transition: 0.2s;
}

.tel_email_box img {
  width: .7292vw;
}

.contacts_page .wpcf7 {
  max-width: 40.1042vw;
  margin: 0 auto;
}

.contacts_page .fields_box {
  flex-wrap: wrap;
  flex-direction: row;
}

.contacts_page .fields_box input,
.contacts_page .fields_box textarea {
  border: 1px solid #000;
}

.contacts_page .fields_box span {
  width: calc(50% - .3vw);
}

.contacts_page .fields_box span[data-name="your-message"] {
  width: 100%;
}

.contacts_page .fields_box input.wpcf7-not-valid {
  border-color: #ff731c;
}

.video_slider h2 {
  text-align: center;
}

.video_list {
  margin-top: 2.6042vw;
}

.video_list li {
  line-height: 0;
}

.video_list iframe {
  width: 100%;
  height: 16.4063vw;
  border-radius: 1.0417vw;
}

.video_arrows>div {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
}

.video_arrows img {
  width: 1.0417vw;
}

.video_prev {
  left: -2.6042vw;
}

.video_next {
  right: -2.6042vw;
}

.swiper-button-disabled {
  opacity: 0.5;
}

.cookies_popup {
  position: fixed;
  right: 5.7292vw;
  bottom: 0;
  background-color: #fff;
  border-radius: 1.5625vw;
  box-shadow: 0 0 .8333vw rgba(0, 0, 0, 0.1);
  padding: 2.6042vw 1.5625vw;
  max-width: 26.0417vw;
  z-index: 9999999;
  visibility: hidden;
  opacity: 0;
  transition: 0.5s;
}

.cookies_popup.loaded {
  visibility: visible;
  opacity: 0.9;
  bottom: 1.0417vw;
  transition: 0.5s;
  transition-delay: 2s;
}

.cookies_popup.accepted {
  display: none;
}

.cookies_settings {
  display: none;
}

.cookies_btns {
  display: flex;
  flex-direction: column;
  gap: .5208vw;
  margin-top: 1.5625vw;
}

.cookies_btns>div {
  width: 100%;
}

.cookies_btns>div:first-child {
  background-color: #6e1999;
}

.cookies_btns>div:first-child:hover {
  background-color: #f94a13;
}

.cookies_btns>div:hover {
  transform: scale(1);
}

.thanks {
  margin: 15.625vw 0;
  font-size: 120%;
}

.page-template-thanks .header_pc,
.page-template-thanks .main_footer {
  display: none;
}

@media(max-width:768px) {
  body {
    font-size: 4.4444vw;
  }

  .container {
    max-width: 100%;
    padding: 0 5.5556vw;
  }

  h1,
  h2 {
    font-size: 8.3333vw;
  }

  h3 {
    font-size: 5.5556vw;
  }

  h4 {
    font-size: 4.4444vw;
  }

  h5 {
    font-size: 3.3333vw;
  }

  .mob {
    display: block;
  }

  .pc {
    display: none;
  }

  .marquee_text {
    height: 8.6111vw;
    font-size: 80%;
  }

  .marquee__inner {
    gap: 1.3889vw;
  }

  .header_pc {
    height: 19.4444vw;
  }

  .header_pc.fixed {
    box-shadow: 0 .5556vw 1.6667vw rgba(0, 0, 0, 0.1);
  }

  .burger {
    display: flex;
    flex-direction: column;
    gap: 1.3889vw;
    margin-left: 8.3333vw;
  }

  .burger span {
    width: 8.3333vw;
    height: .8333vw;
    background-color: #fff;
    border-radius: .8333vw;
  }

  .header_pc.fixed .burger span {
    background-color: #221C13;
  }

  .logo {
    flex-grow: 1;
  }

  .logo img {
    width: 41.6667vw;
  }

  .header_pc .menu li.current_lang::after {
    width: 3vw;
    height: 3vw;
    margin-left: 1.9444vw;
  }

  .flag_box img {
    width: 5.5556vw;
    height: 5.5556vw;
  }

  .header_pc .menu li.current_lang .sub-menu {
    border-radius: 1.9444vw;
    box-shadow: 0px 0px 13.8889vw 2.5vw rgb(0 0 0 / 10%);
    top: 12vw;
  }

  .header_pc .menu li.current_lang:hover .sub-menu {
    top: 12vw;
    opacity: 0;
    visibility: hidden;
  }

  .header_pc .menu li.current_lang.active .sub-menu {
    top: 9vw;
    opacity: 1;
    visibility: visible;
  }

  .header_pc .menu li.current_lang .sub-menu::after {
    top: -5vw;
    height: 5vw;
  }

  .header_pc .menu li.current_lang .sub-menu::before {
    top: -2.5vw;
    left: 7vw;
    border-width: 0 2.7778vw 2.7778vw 2.7778vw;
  }

  .header_pc .menu li.current_lang .sub-menu {
    min-width: 19.4444vw;
  }

  .header_pc .menu li.current_lang .sub-menu a {
    padding: 3.3333vw 4.1667vw;
  }

  .main_screen li {
    height: calc(100vh - 41.6667vw);
  }

  .main_screen_arrows {
    display: none;
  }

  .main_screen_text {
    top: 27.7778vw;
    max-width: 100%;
    padding: 0 5.5556vw;
  }

  .main_screen li h1,
  .main_screen li h2 {
    bottom: 55.5556vw;
    font-size: 9vw;
  }

  .main_slide_subtitle {
    bottom: 8.3333vw;
    font-size: 5vw;
  }

  #scrollToTopBtn {
    width: 7.2222vw;
    height: 7.2222vw;
    bottom: 30vw;
    right: 7vw;
  }

  .fixed_tel_btn {
    width: 11.1111vw;
    height: 11.1111vw;
    right: 5.5556vw;
    bottom: 7.7778vw;
  }

  .fixed_tel_btn img {
    width: 4.1667vw;
  }

  .mob_menu_popup {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 999999;
  }

  .mob_menu_popup.active {
    visibility: visible;
  }

  .mob_menu_overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.9);
  }

  .mob_menu_content {
    position: absolute;
    top: 0;
    left: -100%;
    width: 69.4444vw;
    height: 100%;
    background-color: #0A0A0A;
    overflow-y: auto;
    transition: 0.7s;
  }

  .mob_menu_popup.active .mob_menu_content {
    left: 0;
    transition: 0.7s;
  }

  .mob_menu_popup .logo {
    margin: 5.5556vw;
    display: block;
  }

  .mob_menu_popup .logo_2 {
    display: block;
    width: 55.5556vw;
  }

  .mob_menu li {
    border-bottom: 1px solid #FFFFFF0F;
  }


  .mob_menu li:first-child {
    border-top: 1px solid #FFFFFF0F;
  }

  .mob_menu a {
    font-family: 'Oswald';
    letter-spacing: 1px;
    font-weight: 500;
    font-size: 4.4444vw;
    text-transform: uppercase;
    padding: 5vw 5.5556vw;
    color: #fff;
    display: block;
  }

  .mob_menu li.menu-item-has-children {
    padding-right: 13.8889vw;
    position: relative;
  }

  .mob_menu li.menu-item-has-children::after {
    content: '';
    position: absolute;
    top: 7.2222vw;
    right: 5.5556vw;
    width: 2.7778vw;
    height: 2.7778vw;
    background-image: url(..//img/menu_item_arrow.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
  }

  .mob_menu .sub-menu {
    display: none;
  }

  .mob_menu .sub-menu li {
    margin-right: -13.8889vw;
  }

  .mob_menu .sub-menu a {
    padding-left: 8.3333vw;
    font-size: 90%;
  }

  .mob_menu .sub-menu li:last-child {
    border-bottom: 0;
  }

  .mob_menu li:not(.menu-item-has-children):hover {
    border-top: 1px solid #f94a13 !important;
    border-bottom: 1px solid #f94a13 !important;
  }

  .mob_menu li:not(.menu-item-has-children):hover a {
    color: #f94a13;
  }

  .mob_menu_close {
    position: absolute;
    top: 8.3333vw;
    right: 8.3333vw;
    width: 12.5vw;
    height: 12.5vw;
    display: flex;
    justify-content: center;
    align-items: center;
    border: .8333vw solid #fff;
    transform: scale(0);
    opacity: 0;
    transition: 0.7s;
  }

  .mob_menu_popup.active .mob_menu_close {
    transform: scale(1);
    opacity: 1;
    transition: 0.7s;
    transition-delay: 0.7s;
  }

  .mob_menu_close img {
    width: 3.3333vw;
  }

  .no_scroll {
    overflow: hidden;
  }

  .about {
    padding-top: 13.8889vw;
    padding-bottom: 13.8889vw;
  }

  .about_box {
    flex-direction: column;
    gap: 11.1111vw;
  }

  .about_img img:first-child {
    width: 43.0556vw;
    right: 5.5556vw;
    top: -12.5vw;
  }

  .about_img {
    padding-top: 0;
    margin-left: -5.5556vw;
    width: calc(100% + 11.1111vw);
  }

  .about_img img:nth-child(3) {
    width: 75.8333vw;
    right: auto;
    left: 0;
    top: -4.4vw;
  }

  .about_content {
    width: 100%;
  }

  a.all_btn,
  .all_btn {
    padding: 0 8.3333vw;
    height: 11.1111vw;
    font-size: 3.8889vw;
    border-radius: 8.3333vw;
  }

  .about_btn_box {
    margin-top: 5.5556vw;
    justify-content: center;
    position: relative;
  }

  .about_btn_box img {
    width: 20vw;
    position: absolute;
    right: 0;
    bottom: 5.5556vw;
  }

  .mt_100 {
    margin-top: 13.8889vw;
  }

  .adv_list {
    gap: 5.5556vw;
  }

  .adv_item {
    width: 100%;
    box-shadow: 0px 2.7778vw 16.6667vw 0px rgba(0, 0, 0, 0.13);
    padding: 11.1111vw 11.1111vw 7.5vw 11.1111vw;
    border-radius: 2.7778vw;
  }

  .adv_square {
    width: 38.8889vw;
    height: 16.9444vw;
  }

  .adv_icon {
    height: 16.9444vw;
  }

  .adv_title {
    font-size: 8.3333vw;
    margin-top: 2.7778vw;
  }

  .boundaries_box {
    flex-direction: column;
    gap: 8.3333vw;
  }

  .boundaries_left,
  .boundaries_right {
    width: 100%;
  }

  .boundaries_left {
    text-align: center;
  }

  .boundaries {
    padding: 13.8889vw 0;
  }

  .review {
    font-size: 5.5556vw;
  }

  .author_box {
    margin-top: 5.5556vw;
    gap: 2.7778vw;
  }

  .avatar img {
    min-width: 13.8889vw;
    width: 13.8889vw;
    height: 13.8889vw;
  }

  .author {
    font-size: 90%;
    line-height: 1.3;
  }

  .review_date {
    margin-top: 1.9444vw;
  }

  .reviews_pagination {
    margin-top: 8.3333vw;
  }

  .reviews_pagination span {
    margin: 0 1.6667vw !important;
    width: 1.6667vw;
    height: 1.6667vw;
  }

  .swiper_box {
    margin-top: 8.3333vw;
  }

  .contact_us_bg {
    display: none;
  }

  .contacts_items {
    max-width: 100%;
    margin-top: 8.3333vw;
    flex-direction: column;
    gap: 5.5556vw;
  }

  .contact_item {
    gap: 2.7778vw;
  }

  .contact_icon {
    width: 13.3333vw;
    height: 13.3333vw;
  }

  .contact_icon img {
    width: 3.8889vw;
  }

  .contact_label {
    font-size: 4.4444vw;
  }

  .contact_value {
    font-size: 5vw;
  }

  .contact_us_form {
    position: relative;
    margin-top: 8.3333vw;
    max-width: 100%;
    box-shadow: 0px 2.7778vw 16.6667vw 0px rgba(0, 0, 0, 0.2);
    border-width: 1.3889vw;
    padding: 8.3333vw 5.5556vw;
    border-radius: 5.5556vw;
  }

  .contact_us_form h2 {
    font-size: 6.9444vw;
  }

  .fields_box input {
    height: 11.1111vw;
    font-size: 3.8889vw;
    padding: 0 3.3333vw;
    border-radius: .8333vw;
  }

  .fields_box textarea {
    font-size: 3.8889vw;
    padding: 0 3.3333vw;
    padding: 1.3889vw 3.3333vw;
    border-radius: .8333vw;
    height: 26.6667vw;
  }

  .fields_box {
    gap: 2.7778vw;
    margin-top: 1.3889vw;
  }

  .submit_btn {
    margin-top: .8333vw;
  }

  .submit_btn input {
    height: 14.4444vw;
    font-size: 3.8889vw;
  }

  .wpcf7-spinner {
    width: 6.6667vw;
    height: 6.6667vw;
    margin: 0 6.6667vw;
  }

  .wpcf7-spinner::before {
    top: 1.1111vw;
    left: 1.1111vw;
    width: 1.6667vw;
    height: 1.6667vw;
    transform-origin: 2.2222vw 2.2222vw;
  }

  .wpcf7 form.sent .wpcf7-response-output {
    margin-top: 5.5556vw;
  }

  .marquee {
    --logo-w: 27.7778vw;
    --gap: 8.3333vw;
    padding: 13.8889vw 0 8.3333vw;
    margin: 0 -5.5556vw;
  }

  .our_offer {
    padding: 13.8889vw 0 8.3333vw;
  }

  .portfolio {
    padding-bottom: 13.8889vw;
  }

  .our_offer_list {
    max-width: 100%;
    margin-top: 8.3333vw;
    box-shadow: 0px 0px 2.7778vw 0px rgba(0, 0, 0, 0.5);
  }

  .our_offer_list li {
    height: 138.8889vw;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    transition: 1s;
  }

  .our_offer_list li:hover {
    flex: 1 1 0%;
    transition: 0s;
  }

  .our_offer_list li.active {
    flex: 1 1 60%;
    transition: 1s !important;
  }

  .our_offer_btn {
    margin-top: 5.5556vw;
  }

  .our_offer_list h3 {
    font-size: 5.5556vw;
    top: 28vw;
    line-height: 1.4;
    padding: 0 5.5556vw;
    transition: 0s;
  }

  .our_offer_list li:hover h3 {
    top: 28vw;
    opacity: 0;
    transition: 0s;
  }

  .our_offer_list li.active h3 {
    top: 28vw !important;
    opacity: 1 !important;
    transition: 1s !important;
    transition-delay: 1s !important;
  }

  .our_offer_list p {
    font-size: 3.8889vw;
    top: 30vw;
    padding: 0 5.5556vw;
    transition: 0s;
  }

  .our_offer_list li:hover p {
    top: 30vw;
    opacity: 0;
    transition: 0s;
  }

  .our_offer_list li.active p {
    top: 30vw !important;
    opacity: 1 !important;
    transition: 1s !important;
    transition-delay: 1s !important;
  }

  a.portfolio_item_btn {
    border-radius: 1.3889vw;
    top: 35vw;
    opacity: 0;
    visibility: hidden;
    transition: 0s;
  }

  .our_offer_list li:hover a.portfolio_item_btn {
    top: 35vw;
    opacity: 0;
    visibility: hidden;
    transition: 0s;
  }

  .our_offer_list li.active a.portfolio_item_btn {
    top: 35vw !important;
    opacity: 1 !important;
    visibility: visible !important;
    transition: 1s !important;
    transition-delay: 1s !important;
  }

  .our_offer_list li:hover::before {
    height: 0;
    transition: 0s;
  }

  .our_offer_list li.active::before {
    height: 100% !important;
    transition: 1s !important;
  }

  .main_footer {
    padding: 9.7222vw 0;
  }

  .footer_box {
    flex-direction: column;
    gap: 8.3333vw;
    position: relative;
  }

  .logo_2 img {
    width: 75vw;
  }

  .footer_col_title {
    margin-bottom: 4.1667vw;
  }

  .footer_contacts a {
    gap: 2.7778vw;
    margin: 1.3889vw 0;
  }

  .footer_contacts a img {
    width: 4.1667vw;
  }

  .footer_socials {
    justify-content: center;
    margin-top: 0;
    gap: 2.7778vw;
    position: absolute;
    top: 29.4444vw;
    width: 100%;
  }

  .footer_contacts .footer_socials img {
    width: 11.1111vw;
  }

  .copyright {
    margin-top: 8.3333vw;
    padding: 4.1667vw 0;
    font-size: 3.8889vw;
  }

  .first_screen {
    padding: 82.7778vw 0 50.8333vw;
  }

  .separator {
    border-width: 1.3889vw 0 1.3889vw 1.6667vw;
  }

  .breadcrumbs ul {
    gap: 2.7778vw;
  }

  .service {
    padding: 16.6667vw 0;
  }

  .service_box {
    flex-direction: column;
    gap: 8.3333vw;
  }

  .service_box>div {
    width: 100%;
  }

  .service_descr {
    margin: 5.5556vw 0 8.3333vw;
  }

  .service_img {
    box-shadow: none;
  }

  .right_bg {
    display: none;
  }

  .services_have_questions {
    padding: 11.1111vw 0;
  }

  .services_have_questions h2 {
    font-size: 13.8889vw;
  }

  .services_have_questions_descr {
    font-size: 5.5556vw;
    margin-top: 5.5556vw;
  }

  .services_have_questions_btns {
    flex-direction: column;
    align-items: center;
    gap: 5.5556vw;
    margin-top: 11.1111vw;
  }

  .services_have_questions_btns a {
    width: 100%;
  }

  .contacts_content {
    max-width: 100%;
    border-radius: 2.7778vw;
    padding: 13.8889vw 5.5556vw;
    gap: 4.1667vw;
    top: 55.5556vw;
  }

  .contacts_close {
    width: 8.3333vw;
    height: 8.3333vw;
  }

  .contacts_close span {
    width: 5.5556vw;
    height: .8333vw;
  }

  .main_btn {
    margin: 8.3333vw auto;
    font-size: 3.3333vw;
    padding: 0 2.7778vw;
  }

  .header_pc .menu li.current_lang .sub-menu img {
    width: 5.5556vw;
    margin-right: 1.3889vw;
  }

  .our_offer_btn {
    margin-left: auto;
    margin-right: auto;
  }

  .portfolio .our_offer_bg {
    height: auto;
  }

  .map {
    height: 41.6667vw;
    position: absolute;
    top: 48.8889vw;
    width: 100%;
  }

  .map iframe {
    width: 100%;
    height: 100%;
  }

  .footer_box .logo_2 {
    padding-bottom: 65.2778vw;
  }

  .faq_list {
    margin-top: 8.3333vw;
    gap: 2.7778vw;
    position: relative;
    max-width: 100%;
  }

  .faq_question {
    padding: 3.8889vw 23.6111vw 3.8889vw 5.5556vw;
  }

  .faq_question::after {
    right: 8.3333vw;
    width: 4.4444vw;
    height: 2.7778vw;
  }

  .faq_answer {
    padding: 8.3333vw;
  }

  .faq_question.active::after {
    height: 4.4444vw;
  }

  .tel_email_box {
    margin: 8.3333vw 0;
    flex-direction: column;
    align-items: center;
    gap: 2.7778vw;
  }

  .tel_email_box a {
    gap: 2.7778vw;
  }

  .tel_email_box img {
    width: 3.8889vw;
  }

  .contacts_page .wpcf7 {
    max-width: 100%;
  }

  .contacts_page .fields_box span {
    width: 100%;
  }

  .video_slider {
    margin: 8.3333vw 0;
  }

  .video_list {
    margin-top: 8.3333vw;
  }

  .video_list iframe {
    height: 50vw;
    border-radius: 5.5556vw;
  }

  .video_arrows>div {
    position: unset;
    transform: translateY(0);
  }

  .video_arrows img {
    width: 4vw;
  }

  .video_arrows {
    display: flex;
    margin-top: 8.3333vw;
    justify-content: space-between;
    padding: 0 13.8889vw;
  }

  .cookies_popup {
    max-width: 100%;
    right: 5.5556vw;
    left: 5.5556vw;
    border-radius: 5.5556vw;
    padding: 5.5556vw;
    box-shadow: 0 0 4.4444vw rgba(0, 0, 0, 0.2);
    line-height: 1.3;
  }

  .cookies_popup.loaded {
    bottom: 5.5556vw;
  }

  .cookies_popup p {
    margin: 2.7778vw 0;
  }

  .cookies_btns {
    gap: 2.7778vw;
    margin-top: 4.1667vw;
  }

  .cookies_btns>div {
    height: 8.3333vw;
    font-size: 3.6111vw;
  }

  .thanks {
    margin: 83.3333vw 0;
  }
}