/* Reset and base styles  */
* {
  padding: 0px;
  margin: 0px;
  border: none;
}

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

/* Links */
a, a:link, a:visited {
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

/* Common */
aside, nav, footer, header, section, main {
  display: block;
}

h1, h2, h3, h4, h5, h6, p {
  font-size: inherit;
  font-weight: inherit;
}

ul, ul li {
  list-style: none;
}

img {
  vertical-align: top;
}

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

address {
  font-style: normal;
}

/* Form */
input, textarea, button, select {
  font-family: inherit;
  font-size: inherit;
  color: inherit;
  background-color: transparent;
}

input::-ms-clear {
  display: none;
}

button, input[type=submit] {
  display: inline-block;
  box-shadow: none;
  background-color: transparent;
  background: none;
  cursor: pointer;
}

input:focus, input:active,
button:focus, button:active {
  outline: none;
}

button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

label {
  cursor: pointer;
}

legend {
  display: block;
}

#trigger_overlay {
  position: fixed;
  display: none;
  z-index: 999;
  right: 10px;
  top: 16px;
  padding: 2px;
  background: black;
  border: none;
  outline: none;
  font-size: 0;
}

#trigger_overlay svg {
  height: 40px;
  width: 40px;
  stroke-width: 1;
  stroke: white;
}

/* Overlay style */
.overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(181, 185, 184, 0.9);
  z-index: 1000;
}

/* Overlay closing */
.overlay #overlay_close {
  position: absolute;
  right: 10px;
  top: 16px;
  padding: 2px;
  border: none;
  background: black;
  font-size: 0;
  outline: none;
  z-index: 10;
}

.overlay #overlay_close svg {
  height: 40px;
  width: 40px;
  stroke-width: 1;
  stroke: white;
}

/* Menu style */
.overlay nav {
  text-align: center;
  position: relative;
  top: 50%;
  height: 100%;
  transform: translateY(-50%);
  overflow: auto;
}

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

.overlay .menu_items ul {
  display: block;
}

.overlay ul {
  list-style: none;
  padding: 10px 15px;
  margin: 0 auto;
  display: inline-block;
  position: relative;
}

.overlay ul li {
  display: block;
  padding: 3px 0;
}

.overlay ul li a {
  font-size: 24px;
  font-weight: 500;
  padding: 8px 0;
  display: inline-block;
  text-shadow: 0 0 5px black, 0 0 3px black, 0 0 2px black, 0 0 1px black;
  color: white;
  transition: color 0.2s;
  line-height: normal;
}

.overlay ul li a:hover,
.overlay ul li a:focus {
  color: #f0f0f0;
}

/* Effects */
.body_container {
  box-shadow: 0 0 100px rgba(0, 0, 0, 0);
  transition: transform 0.5s, box-shadow 0.5s; /*will-change: transform;*/
}

.body_container.overlay-open {
  box-shadow: 0 0 100px rgba(0, 0, 0, 0.4);
  transform: scale(0.65);
}

.overlay-contentscale {
  visibility: hidden;
  transform: translateY(100%);
  transition: transform 0.5s, visibility 0s 0.5s; /*will-change: transform;*/
}

.overlay-contentscale.open {
  visibility: visible;
  transform: translateY(0%);
  transition: transform 0.5s;
}

@media screen and (max-height: 30.5em) {
  .overlay nav {
    height: 100%;
    font-size: 34px;
  }
  .overlay ul li {
    min-height: 34px;
  }
}
* {
  font-family: "Manrope", sans-serif;
  font-weight: 400;
}

html, body {
  background-color: #F4F4F4;
}

h1, .h1 {
  font-size: 40px;
  font-weight: 700;
}

h2, .h2 {
  font-size: 34px;
}

h3, .h3 {
  font-size: 30px;
}

strong {
  font-weight: bold;
}

a, .btn {
  transition: all 0.2s ease-in;
}
a:hover, .btn:hover {
  color: #BD203A;
  cursor: pointer;
}

input, textarea {
  padding: 16px;
  border: 2px solid #C1C1C1;
  width: 100%;
  transition: all 0.2s ease-in;
  background-color: white;
}

input:focus, textarea:focus {
  outline: none;
  border: 2px solid #323232;
  box-shadow: 0 0 6px 2px rgba(164, 15, 39, 0.5);
}

textarea {
  resize: vertical;
  max-height: 300px;
  min-height: 120px;
}

.form-group label {
  margin-bottom: 6px;
  display: inline-block;
}

.footnote {
  font-size: 24px;
  color: #BD203A;
  transition: all 0.2s ease-in;
}

.footnote.small {
  font-size: 16px;
}

.form_field_wrap {
  position: relative;
}
.form_field_wrap label.placeholder {
  color: #F4F4F4;
  position: absolute;
  top: 10px;
  left: 10px;
  height: 0;
  font-size: 16px;
  transition: all 0.2s ease-in;
}
.form_field_wrap.focus label.placeholder, .form_field_wrap.validate label.placeholder {
  top: 1px;
  font-size: 12px;
  color: white;
}
.form_field_wrap.focus label.placeholder .footnote, .form_field_wrap.validate label.placeholder .footnote {
  font-size: 12px;
  color: white;
}

input.error, textarea.error {
  border-color: #D61F26;
}

label.error {
  color: #D61F26;
  font-weight: bold;
}

.container {
  max-width: 1400px;
  margin: auto;
}

.products, .our_works,
.our_production,
.reviews,
.our_advantages,
.our_specialists,
.about,
.catalog,
.contacts {
  padding: 100px 0;
  position: relative;
}

::-webkit-input-placeholder {
  color: white;
  opacity: 1;
}

:-moz-placeholder {
  color: white;
  opacity: 1;
}

::-moz-placeholder {
  color: white;
  opacity: 1;
}

:-ms-input-placeholder {
  color: white;
  opacity: 1;
}

.btn {
  display: block;
  background-color: #BD203A;
  text-align: center;
  color: white;
  padding: 16px 0;
  leading-trim: both;
  font-size: 12px;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.24px;
  text-transform: uppercase;
  max-width: 300px;
  margin: auto;
}

.btn.white {
  background-color: white;
  color: #BD203A;
}

.btn:hover, .btn:active {
  background-color: #A40F27;
  color: white;
}

.our_works_swiper, .swiper_our_specialists, .our_production_swiper, .reviews_swiper {
  overflow: hidden;
  position: relative;
  margin: 40px 0;
  z-index: 5;
}

.slide-inner {
  padding: 14px;
}

.header_bar {
  display: flex;
  align-items: center;
  position: relative;
  z-index: 5;
}
.header_bar > div {
  flex: 0 1 auto;
}
.header_bar > .h1 {
  flex-grow: 1;
}

.arrow_buttons {
  display: flex;
}
.arrow_buttons .mine-swiper-button-next {
  transform: rotate(180deg);
  margin-left: 19px;
}
.arrow_buttons > div {
  border: solid 2px rgba(255, 255, 255, 0.3);
  padding: 6px;
  cursor: pointer;
  transition: all 0.2s ease-in;
}
.arrow_buttons > div:hover {
  border-color: white;
}
.arrow_buttons svg {
  width: 40px;
  float: left;
  stroke: white;
  fill: none;
}
div.mine-swiper-pagination.swiper-pagination-horizontal {
  text-align: center;
  position: relative;
  z-index: 5;
  inset: 0;
  margin-top: 26px;
  font-size: 0;
}
div.mine-swiper-pagination.swiper-pagination-horizontal span.swiper-pagination-bullet {
  width: 16px;
  height: 16px;
  border: 2px solid #C1C1C1;
  background: none;
  border-radius: 0;
  margin: 0 20px;
  opacity: 1;
  transition: all 0.2s ease-in;
}
div.mine-swiper-pagination.swiper-pagination-horizontal span.swiper-pagination-bullet-active {
  border: none;
  transform: rotate(45deg);
  border: 2px solid #A40F27;
  background: #A40F27;
}

.top_fix_wrap {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 100;
  width: 100%;
  background: linear-gradient(180deg, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%);
}
.top_fix_wrap * {
  color: white;
  font-weight: 500;
}
.top_fix_wrap a:hover {
  color: white;
}
.top {
  display: flex;
  width: 100%;
  padding: 12px 0;
}
.top .phone_top_wrap,
.top .btn_top_wrap {
  width: 44%;
}
.top .phone_top_wrap {
  display: flex;
  align-items: center;
}
.top .phone_top_wrap .item:first-child {
  padding-right: 30px;
  padding-left: 15px;
}
.top .phone_top_wrap a {
  font-size: 18px;
}
.top .logo_top_wrap {
  text-align: center;
  width: 110px;
}
.top .btn_top_wrap {
  display: flex;
  align-items: center;
  justify-content: end;
}
.top .btn_top_wrap a {
  font-size: 18px;
  padding: 6px 6px 6px 30px;
  position: relative;
  line-height: 20px;
}
.top .btn_top_wrap a::before {
  content: "";
  position: absolute;
  padding: 6px;
  background-color: #BD203A;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
  border-radius: 100%;
  animation: pulse 2.5s infinite cubic-bezier(0.4, 0, 1, 1) both;
}

@keyframes pulse {
  0% {
    box-shadow: 0px 0px 0px 0px #BD203A;
  }
  50% {
    box-shadow: 0px 0px 0px 18px rgba(255, 0, 0, 0);
  }
}
.top_menu {
  border-top: solid 1px rgba(255, 255, 255, 0.2);
  transition: all 0.2s ease-in;
}
.top_menu .nav {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  height: 50px;
}
.top_menu .nav li {
  flex: 1;
  display: flex;
}
.top_menu .nav a {
  font-size: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  width: 100%;
  text-shadow: 0 0 10px black;
}
.top_menu .nav a:hover {
  box-shadow: 0px 2px 0px 0px #BD203A inset;
}
.top_menu.fixed {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  background-color: #111;
  box-shadow: 0 0 10px black;
}
.top_menu.fixed > .container {
  margin: 0 auto;
}
.top_menu.fixed a {
  text-shadow: none;
}
.top_menu.fixed a:hover {
  background-color: #BD203A;
  box-shadow: none;
}

.swiper_banner_top {
  overflow: hidden;
  position: relative;
  width: 100%;
  left: 0;
  top: 0;
  z-index: 10;
}
.swiper_banner_top .swiper-slide { /*height:100dvh;*/
  height: calc(var(--vh) * 100);
  overflow: hidden;
}
.swiper_banner_top .slide_inner {
  height: inherit;
  background-position: center;
  background-size: cover;
  position: absolute;
  width: 100%;
}
.swiper_banner_top .container {
  height: inherit;
  position: relative;
}
.swiper_banner_top .slide_text_flex {
  display: flex;
  height: inherit;
  align-items: center;
  color: white;
}
.swiper_banner_top .slide_text {
  flex: 1 1;
}
.swiper_banner_top .header {
  font-size: 62px;
  font-weight: 700;
  margin-bottom: 40px;
  text-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
}
.swiper_banner_top .text {
  font-size: 40px;
  margin-bottom: 80px;
  text-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
}
.swiper_banner_top .btn {
  margin: 0;
  font-size: 14px;
  text-transform: uppercase;
  padding: 14px 20px;
}
.swiper_banner_top .swiper_navbar {
  position: relative;
  z-index: 10;
  bottom: 16vh;
}
.swiper_banner_top .swiper_navbar_flex {
  display: flex;
  align-items: center;
  gap: 0 80px;
  height: 0;
}
.swiper_banner_top div.mine-swiper-pagination.swiper-pagination-horizontal {
  width: auto;
  margin-top: 0;
}
.swiper_banner_top .next_element {
  width: 320px;
  height: 240px;
  cursor: pointer;
  background-position: center;
  background-size: cover;
  position: absolute;
  bottom: 13vh;
  right: 0;
  z-index: 12;
}

.container_all {
  position: relative;
}

.catalog_items {
  margin: 0px;
}

.catalog_col {
  text-align: center;
  display: flex;
}

#tabs-1 .catalog_col {
  display: none;
}

#tabs-1 .catalog_col.active {
  display: block;
}

.catalog_card {
  position: relative;
  z-index: 5;
  text-align: left;
  padding: 20px;
}
.catalog_card .image {
  margin-bottom: 16px;
  position: relative;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
  cursor: pointer;
  text-align: center;
}
.catalog_card .image a {
  position: relative;
  z-index: 3;
  display: block;
}
.catalog_card .description, .catalog_card .all_images {
  display: none;
}
.catalog_card .characteristics {
  display: none;
}
.catalog_card .collection {
  font-size: 14px;
  color: #A2A2A2;
  font-weight: 300;
}
.catalog_card .collection span {
  font-weight: 400;
}
.catalog_card .price .price_num {
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  margin: 10px 0 16px;
  padding-right: 6px;
}
.catalog_card .price .price_text {
  color: black;
  font-weight: 300;
  font-size: 15px;
  display: inline-block;
  line-height: 10px;
}
.catalog_card .btn_wrap {
  height: 0;
  opacity: 0;
  overflow: hidden;
  transition: all 0.2s linear;
  margin-top: 16px;
}
.catalog_card_wrap {
  position: relative;
  display: block;
  margin: auto;
}
.catalog_card_wrap.active .catalog_card {
  position: absolute;
  background-color: white;
  width: 100%;
  left: 0;
  z-index: 10;
  box-shadow: 0 0 66.8px 0 rgba(0, 0, 0, 0.2);
}
.catalog_card_wrap.active .catalog_card .btn_wrap {
  height: 50px;
  opacity: 1;
}

.catalog_col.coll_all .image {
  position: relative;
  overflow: hidden;
}
.catalog_col.coll_all .image::before {
  background-image: url(../images/catalog/coll_all_blur.jpg);
  filter: blur(7.5px);
  inset: -10px;
  position: absolute;
  content: "";
}
.catalog_col.coll_all .image img {
  opacity: 0;
}
.catalog_col.coll_all .image .more_text {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  align-items: center;
  z-index: 10;
  transition: all 0.2s ease-in;
}
.catalog_col.coll_all .image .text {
  color: white;
  font-weight: 500;
  font-size: 20px;
  line-height: 20px;
  width: 100%;
}

.st.st-theme-basic {
  border: none;
  background: none;
}
.st.st-theme-basic > .nav {
  box-shadow: none;
  margin: 40px 0;
}
.st.st-theme-basic > .nav .nav-link {
  color: #1C1C1C;
  padding: 19px 0;
  font-weight: 600;
  line-height: 22px;
  font-size: 20px;
}
.st.st-theme-basic > .nav li:first-child {
  padding-right: 60px;
}
.st.st-theme-basic > .nav .nav-link.active {
  color: #D61F26 !important;
}
.st.st-theme-basic > .nav .nav-link::after {
  height: 4px;
  background-color: none;
}
.st.st-theme-basic > .nav .nav-link.active::after {
  background-color: #D61F26 !important;
}
.st.st-theme-basic > .nav .nav-link span {
  color: #A2A2A2;
  transition: all 0.2s linear;
}
.st.st-theme-basic > .nav .nav-link.active span {
  color: #191919;
}

.st.st-justified > .nav .nav-link, .st.st-justified > .nav > li {
  flex-grow: inherit;
  flex-basis: auto;
}

.st > .tab-content {
  overflow: visible;
}

.st > .tab-content > .tab-pane {
  padding: 0;
}

.catalog_btn_wrap {
  margin-top: 24px;
}
.catalog_btn_wrap .more_len {
  padding-left: 5px;
  display: inline-block;
}

.feedback {
  background-color: #111;
  overflow: hidden;
}
.feedback .container {
  padding: 100px 0;
  position: relative;
}
.feedback * {
  color: white;
}
.feedback .text {
  color: #A2A2A2;
  margin: 40px 0;
  max-width: 420px;
  text-shadow: 0 0 10px black, 0 0 5px black, 0 0 2px black;
}
.feedback .h1 {
  font-weight: 600;
}

.feedback_img_parallax_wrap {
  position: absolute;
  inset: 0;
}

.feedback_img_wrap_1 {
  position: absolute;
  z-index: 10;
}
.feedback_img_wrap_1::before {
  position: absolute;
  content: "";
  inset: 0;
  background: linear-gradient(180deg, rgba(17, 17, 17, 0.5) 0%, rgba(17, 17, 17, 0) 70%);
  z-index: 10;
}

.feedback_img_wrap_2 {
  position: absolute;
  right: -80px;
  width: 480px;
  text-align: center;
  z-index: 20;
}
.feedback_img_wrap_2 img {
  filter: blur(38.6px);
}

.feedback_flex {
  display: flex;
  justify-content: flex-end;
  z-index: 20;
  position: relative;
}

.feedback_col {
  max-width: 600px;
}

.feedback_form input, .feedback_form textarea {
  padding: 16px 16px 16px 24px;
  border: 2px solid #323232;
  -webkit-backdrop-filter: blur(40px);
          backdrop-filter: blur(40px);
  background-color: transparent;
}
.feedback_form input:focus, .feedback_form textarea:focus {
  border: 2px solid white;
}
.feedback_form input.error, .feedback_form textarea.error,
.feedback_form input.error:focus, .feedback_form textarea.error:focus {
  border-color: #D61F26;
}
.feedback_form .form_group {
  margin-top: 40px;
}
.feedback_form .form_group:first-child {
  margin-bottom: 28px;
}
.feedback_form .button_group {
  display: flex;
  align-items: center;
  padding-bottom: 30px;
}
.feedback_form .personal_data_svg {
  position: relative;
  padding-left: 64px;
  text-shadow: 0 0 10px black, 0 0 5px black, 0 0 2px black;
}
.feedback_form .personal_data_svg svg {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  padding: 10px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 2px solid #323232;
}
.feedback_form .personal_data_svg p {
  font-size: 16px;
}
.feedback_form .button_wrap {
  width: 300px;
}
.feedback_form .button_wrap .btn {
  min-width: 100%;
}

.products_flex {
  gap: 60px 0px;
  margin-top: 60px;
  overflow: hidden;
  align-content: flex-start;
}
.products_flex > .product_col {
  flex-grow: 0;
}

.product_card {
  max-width: 450px;
  margin: auto;
  padding: 0px 10px;
  position: relative;
}
.product_card .image img {
  min-width: 100%;
}
.product_card .name {
  margin-top: 20px;
  font-size: 18px;
  font-weight: 600;
  color: #191919;
}
.product_card .image_load {
  overflow: hidden;
  position: relative;
}
.product_card .image_load::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 5;
  background: rgba(0, 0, 0, 0.5);
}
.product_card .image_load img {
  filter: blur(7.5px);
  position: relative;
  z-index: 3;
}
.product_card .product_more_text {
  position: absolute;
  inset: 0;
  z-index: 10;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: white;
  font-weight: 500;
  transition: all 0.2s ease-in;
}
.product_card .number {
  font-size: 32px;
  line-height: 32px;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  border: solid 2px rgba(255, 255, 255, 0.3);
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 20px;
  transition: all 0.2s ease-in;
}
.product_card .text {
  font-size: 16px;
}

.product_more_btn .product_card:hover {
  cursor: pointer;
}
.product_more_btn .product_card:hover .product_more_text {
  transform: scale(1.05);
}
.product_more_btn .product_card:hover .number {
  border: solid 2px white;
}

.our_works {
  background-image: url(./../images/fon_job.jpg);
  background-size: cover;
  background-repeat: no-repeat;
}
.our_works .btn_wrap {
  position: relative;
  z-index: 10;
  margin-top: 50px;
}

.our_works_cont::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: #1C1C1C;
  opacity: 0.5;
  z-index: 1;
}
.our_works_cont * {
  color: white;
}

.our_works_swiper .slide-inner .text {
  margin-top: 20px;
  font-weight: 600;
  font-size: 16px;
}

.our_production {
  background-color: white;
}
.our_production .header_bar .arrow_buttons > div {
  border: 2px solid #C1C1C1;
}
.our_production .header_bar .arrow_buttons svg {
  stroke: #C1C1C1;
  transition: all 0.2s ease-in;
}
.our_production .header_bar .arrow_buttons > div:hover {
  border-color: #A40F27;
}
.our_production .header_bar .arrow_buttons > div:hover svg {
  stroke: #A40F27;
}

.our_production_swiper .slide-inner .text {
  margin-top: 20px;
  font-weight: 600;
  font-size: 16px;
}

.reviews {
  background-color: white;
  padding-left: 10px;
  padding-right: 10px;
}
.reviews .header_bar .arrow_buttons > div {
  border: 2px solid #C1C1C1;
}
.reviews .header_bar .arrow_buttons svg {
  stroke: #C1C1C1;
  transition: all 0.2s ease-in;
}
.reviews .header_bar .arrow_buttons > div:hover {
  border-color: #A40F27;
}
.reviews .header_bar .arrow_buttons > div:hover svg {
  stroke: #A40F27;
}

.reviews_swiper .slide-inner {
  background-color: #F4F4F4;
  padding: 30px;
  margin: 10px;
}
.reviews_swiper .slide-inner .info {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
}
.reviews_swiper .slide-inner .image {
  margin-right: 20px;
}
.reviews_swiper .slide-inner .image img {
  border-radius: 50%;
  max-width: 60px;
}
.reviews_swiper .slide-inner .name {
  font-weight: 700;
  font-size: 16px;
  word-break: break-all;
}
.reviews_swiper .slide-inner .review {
  height: 150px;
  overflow-y: auto;
}

.sw-app[id^=sw-app-] .sw-app-body .sw-review-box {
  background-color: transparent !important;
}

.sw-app[id^=sw-app-] .sw-review-item {
  box-shadow: none !important;
}

.sw-review-bottom {
  margin-left: 0 !important;
}

.sw-app[id^=sw-app-] .sw-review-bottom .sw-swiper-button-next,
.sw-app[id^=sw-app-] .sw-review-bottom .sw-swiper-button-prev {
  width: 52px !important;
  height: 52px !important;
  flex-basis: 52px !important;
  border-radius: 0 !important;
}

.sw-app[id^=sw-app-] .sw-review-bottom .sw-swiper-button-next::after,
.sw-app[id^=sw-app-] .sw-review-bottom .sw-swiper-button-prev::after {
  line-height: 52px !important;
}

.sw-app[id^=sw-app-] .sw-reviews-btn.sw-reviews-more {
  border-radius: 0;
  font-family: "Manrope", sans-serif;
  padding: 13px 0;
  display: block;
  letter-spacing: 0.24px;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 700;
  min-width: 200px;
  text-align: center;
  color: white;
  background-color: #BD203A;
  box-shadow: none !important;
  transition: all 0.2s ease-in;
}

.sw-app[id^=sw-app-] .sw-reviews-btn.sw-reviews-more:hover {
  background-color: #A40F27;
}

.about {
  background-color: white;
  /*.image{background-image:url(./../images/about.webp); background-size: cover; background-position: center; min-height: clamp(400px, $_min_height, 650px); margin:0 10%;}*/
}
.about .about_wrap {
  position: relative;
  z-index: 2;
}
.about .about_wrap .row_flex {
  align-items: center;
}
.about::before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 55%;
  background-image: url(./../images/about_bg.jpg);
  background-position: bottom;
  background-size: cover;
  z-index: 1;
}
.about .video {
  padding: 0 0 0 4vw;
}
.about iframe {
  height: 40vh;
  position: relative;
  z-index: 2;
}
.about .text_wrap {
  margin-right: 5%;
}
.about .text {
  margin: 48px 0;
}
.about .text p {
  margin-bottom: 15px;
  text-shadow: 0 0 4px white, 0 0 4px white, 0 0 4px white, 0 0 2px white;
}
.about .text p:last-child {
  margin-bottom: 0;
}
.about .btn_wrap .btn {
  max-width: 200px;
  margin: 0;
}

/*.video_full{background-color:$WHITE;

    &::before{content:''; position:absolute; left: 0; top:0; height:100%; width:45%; background-image:url(./../images/about_bg.jpg); background-position:top; z-index:1;}
    iframe{height:50vh; position: relative; z-index: 2;}

}*/
.our_specialists {
  background-color: white;
}
.our_specialists .our_specialists_wrap {
  position: relative;
  z-index: 2;
}
.our_specialists .our_specialists_wrap .h1 {
  margin-bottom: 60px;
}
.our_specialists::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 45%;
  background-image: url(./../images/about_bg.jpg);
  background-position: top;
  z-index: 1;
}
.our_specialists .specialist_item {
  padding: 0 13px;
}
.our_specialists .name {
  font-size: 18px;
  font-weight: 500;
  margin-top: 16px;
}
.our_specialists .post {
  margin-top: 10px;
  color: #A2A2A2;
  font-size: 14px;
  font-weight: 500;
}

.our_advantages {
  background-color: #111;
  padding-bottom: 110px;
}
.our_advantages .our_advantages_wrap {
  padding-top: 80px;
  position: relative;
  overflow: hidden;
}
.our_advantages .our_advantages_wrap .row_flex {
  gap: 80px 0px;
}
.our_advantages * {
  color: white;
}
.our_advantages .our_advantages_item {
  display: flex;
  height: 100%;
  gap: 0 28px;
}
.our_advantages .our_advantages_item .image {
  width: 120px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.our_advantages .our_advantages_item svg {
  max-height: 100px;
}
.our_advantages .our_advantages_item .text {
  flex: 1 0;
  font-size: 18px;
  font-weight: 500;
  border-bottom: 2px solid rgba(255, 255, 255, 0.2);
  padding-right: 18%;
}

footer {
  background-image: url(./../images/fon_job.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
}
footer::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: #1C1C1C;
  opacity: 0.8;
  z-index: 1;
}
footer .container {
  position: relative;
  z-index: 5;
}
footer .h1 {
  color: white;
}
footer #ymaps-map canvas {
  filter: grayscale(100%);
}
footer #ymaps-map:hover canvas {
  filter: none;
}
footer #ymaps-map * {
  color: black;
}
footer .ymaps-2-1-79-gototech {
  display: none;
}

.contacts_wrap {
  padding: 60px 0 100px;
  border-bottom: 2px solid rgba(255, 255, 255, 0.2);
  margin-bottom: 60px;
}
.contacts_wrap .row_flex {
  gap: 0px 100px;
  flex-flow: row;
}
.contacts_wrap .col_66 {
  flex: 1 0;
}
.contacts_wrap .contact_item:first-child {
  padding-top: 0;
  border-top: none;
}
.contacts_wrap .contact_item {
  padding: 20px 0 40px;
  border-top: 2px solid rgba(255, 255, 255, 0.2);
}
.contacts_wrap .contact_item * {
  color: white;
}
.contacts_wrap .contact_item .header {
  color: #A2A2A2;
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 10px;
}
.contacts_wrap .contact_item p, .contacts_wrap .contact_item a {
  font-size: 18px;
  font-weight: 500;
}
.footer_logo_wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.footer_logo_wrap * {
  color: white;
}
.footer_logo_wrap .footer_logo img {
  cursor: pointer;
}

.arrow_btn_top {
  font-size: 18px;
  font-weight: 500;
  display: flex;
  align-items: center;
  -moz-column-gap: 30px;
       column-gap: 30px;
}
.arrow_btn_top .arrow_btn_top_wrap {
  border: 2px solid rgba(255, 255, 255, 0.3);
  display: inline-block;
  overflow: hidden;
  padding: 6px;
  cursor: pointer;
  transition: all 0.2s ease-in;
}
.arrow_btn_top svg {
  transform: rotate(90deg);
  stroke: white;
  fill: none;
  width: 40px;
  float: left;
}
.arrow_btn_top:hover .arrow_btn_top_wrap {
  border-color: white;
}

.remodal_catalog {
  display: none;
  /*
  .all_images .crop{position: relative; overflow: hidden; height: 150px;}
  .all_images .crop img{position: absolute; left: 0; }
  */
}
.remodal_catalog .all_images_wrap a {
  display: block;
  margin: 25px 0px 10px;
  box-shadow: 0 0 10px #D61F26;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}
.remodal_catalog .all_images_wrap img {
  width: 100%;
}

.remodal .remodal_catalog {
  display: block;
}

.remodal_characteristics {
  text-align: left;
}
.remodal_characteristics h3, .remodal_characteristics h3 span {
  font-size: 26px;
  text-align: center;
  font-weight: bold;
}
.remodal_characteristics .table {
  border-collapse: collapse;
  border: solid 2px #5e5e5e;
  margin: 20px 0;
  text-align: center;
}
.remodal_characteristics th {
  font-weight: bold;
}
.remodal_characteristics th, .remodal_characteristics td {
  border-bottom: dashed 1px #5e5e5e;
  padding: 5px;
}
.remodal_characteristics tr {
  transition: all 0.2s ease-in;
}
.remodal_characteristics tr:not(.table_header):hover {
  background-color: white;
}
.remodal_characteristics .table_header {
  background: antiquewhite;
}
.remodal_characteristics li {
  position: relative;
  padding-left: 14px;
}
.remodal_characteristics li::before {
  font-size: 150%;
  background: #A40F27;
  position: absolute;
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  top: 9px;
  left: 0;
}

.remodal-overlay {
  background: rgba(43, 46, 56, 0.5);
  z-index: 998;
}

.remodal-wrapper {
  z-index: 999;
}

.remodal {
  background: #F4F4F4;
  color: black;
  position: relative;
  box-shadow: 0 0 100px rgba(0, 0, 0, 0.5);
  overflow: hidden;
}
.remodal::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(./../images/about_bg.jpg);
  background: linear-gradient(93deg, grey, white);
  opacity: 0.4;
  background-position: bottom;
  z-index: 1;
}
.remodal .remodal_content {
  position: relative;
  z-index: 2;
}
.remodal .remodal-close.remodal-close-mine {
  left: auto;
  right: 0;
  width: auto;
  height: auto;
  font-size: 0;
  z-index: 3;
}
.remodal .remodal-close.remodal-close-mine:before {
  display: none;
}
.remodal .remodal-close.remodal-close-mine svg {
  width: 40px;
  height: 40px;
  padding: 2px;
  background-color: #BD203A;
  stroke: white;
  stroke-width: 1;
  transition: all 0.2s ease-in;
}
.remodal .remodal-close.remodal-close-mine svg:focus {
  outline: none;
}
.remodal .remodal-close.remodal-close-mine:hover svg {
  background-color: #A40F27;
  stroke: #F4F4F4;
}
.remodal .form-group {
  margin-bottom: 20px;
}
.remodal .btn {
  min-width: 250px;
}
.remodal .header {
  margin-bottom: 20px;
  text-transform: uppercase;
  font-weight: 700;
}
.remodal .google-recaptcha-container {
  display: flex;
  justify-content: center;
}
.remodal label.placeholder {
  color: #111;
}
.remodal .form_field_wrap.focus label.placeholder, .remodal .form_field_wrap.validate label.placeholder {
  top: 1px;
  font-size: 12px;
  color: black;
}
.remodal .form_field_wrap.focus label.placeholder .footnote, .remodal .form_field_wrap.validate label.placeholder .footnote {
  font-size: 12px;
  color: black;
}

/* _menu.scss */
.body_container {
  box-shadow: 0 0 100px rgba(0, 0, 0, 0);
  transition: transform 0.5s, box-shadow 0.5s;
}

html.remodal-is-locked .body_container {
  transform: scale(0.65);
  transform-origin: center;
  box-shadow: 0 0 100px rgba(0, 0, 0, 0.4);
}

html .body_container_perspective { /*perspective: 500px; transition: .5s;*/ }

/*html .body_container_perspective{perspective: 500px; transition: .5s;}
html .js_body_container{transform-origin: left;}
html.remodal-is-locked .js_body_container{transform: translateX(0vw) rotateY(1deg) translateZ(0px);}
*//*# sourceMappingURL=style.css.map */