:root {
  --_colors---bg-default: #fafafa;
  --primary-family: Teg, Arial, sans-serif;
  --_colors---dark: #191919;
  --_typography---line-height--120: 120%;
  --_typography---font--family-regular: 400;
  --_colors---dark-transparent: #19191933;
  --_typography---font-size-desktop--text-small: 1.25rem;
  --_colors---border-line: #1919191a;
  --h3: 4.5rem;
  --_typography---font--family-light: 300;
  --_typography---font-size-tablet--h3: 3rem;
  --_typography---font_size-phone--h3: 2.25rem;
  --_typography---font-size-desktop--h3-small: 3.5rem;
  --_colors---grey-text: grey;
  --_colors---bg-darker: #efefef;
  --_typography---font-size-desktop--h4: 2rem;
  --_typography---font-size-phone--h4: 1.75rem;
  --_typography---font-size-desktop--text-large: 3.5rem;
  --_typography---font-size-tablet--text-small: 1.125rem;
  --_colors---accent: #00c79c;
  --_typography---font-size-desktop--h1: 4.5rem;
  --_typography---font-size-tablet--h1: 4rem;
  --_typography---font-size-phone--h1: 3rem;
  --_typography---line-height--140: 140%;
  --_typography---font-size-tablet--text-large: 2.25rem;
  --_typography---font_size-phone--text-large: 1.9rem;
  --_typography---font-size-desktop--h2: 10rem;
  --_typography---line-height--100: 100%;
  --_typography---font-size-tablet--h2: 6rem;
  --_typography---font_size-phone--h2: 3.5rem;
  --_typography---font-size-desktop--extra-small-text: 1rem;
  --_typography---line-height--150: 150%;
  --_typography---font-size-desktop--h3: 4.5rem;
  --_typography---font-size-desktop--text-main: 1.5rem;
  --_typography---font-size-tablet--text-main: 1.25rem;
  --_typography---font_size-phone--text-main: 1.25rem;
  --_typography---font--family-medium: 500;
  --_colors---transparent: transparent;
  --_typography---font--font-family: Teg, Arial, sans-serif;
  --_colors---very-light-grey: #bfbfbf;
  --primary-light: 200px;
  --primary-regular: 300px;
  --text-small: 1.25rem;
  --text-main: 2rem;
  --text-large: 14.5em;
  --h6: 1.5rem;
  --h5: 2rem;
  --h4: 2rem;
  --h2: 10rem;
  --h1: 4.5rem;
  --display: 0px;
}

body {
  background-color: var(--_colors---bg-default);
  font-family: var(--primary-family);
  color: var(--_colors---dark);
  line-height: var(--_typography---line-height--120);
  font-weight: var(--_typography---font--family-regular);
}

h4 {
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: bold;
  line-height: 24px;
}

.page_main {
  width: 100%;
}

.page_code_wrap {
  display: none;
}

.hero_section_wrapper {
  height: 200vh;
  margin-bottom: -100vh;
  position: relative;
}

.hero_section {
  justify-content: flex-start;
  align-items: center;
  min-height: 100vh;
  display: flex;
  position: sticky;
  top: 0;
}

.section_bg_wrap.hero_bg_wrap {
  background-color: var(--_colors---dark-transparent);
  width: 100%;
  height: 100%;
  position: absolute;
}

.container {
  z-index: 2;
  flex-flow: column;
  width: 100%;
  max-width: 90rem;
  margin-left: auto;
  margin-right: auto;
  padding: 7rem 2em;
  display: flex;
}

.container.hero_container {
  justify-content: center;
  align-self: stretch;
  align-items: flex-start;
  position: relative;
}

.container.intro {
  justify-content: center;
  align-items: flex-end;
}

.container.cta {
  padding-top: 0;
  padding-bottom: 0;
}

.container.relative {
  position: relative;
}

.container._404 {
  padding-top: 12rem;
}

.hero_image {
  z-index: -1;
  width: 100%;
  height: 100vh;
  position: relative;
}

.link-arrow-wrap {
  z-index: 5;
  grid-column-gap: .75rem;
  grid-row-gap: .75rem;
  justify-content: flex-start;
  align-items: flex-end;
  text-decoration: none;
  display: flex;
  position: absolute;
  inset: auto auto 2rem 2rem;
}

.link_arrow_text {
  color: var(--_colors---bg-default);
  font-size: var(--_typography---font-size-desktop--text-small);
}

.intro_section {
  z-index: 2;
  background-color: var(--_colors---bg-default);
  justify-content: flex-start;
  align-items: flex-start;
  min-height: 100vh;
  display: flex;
  position: relative;
  overflow: hidden;
}

.intro_features_wrap {
  margin-top: 7rem;
}

.intro_features_row {
  grid-column-gap: 160px;
  grid-row-gap: 160px;
  border-bottom: 1px solid var(--_colors---border-line);
  flex-flow: row;
  justify-content: space-between;
  align-items: flex-start;
  padding-top: 2em;
  padding-bottom: 2em;
  display: flex;
}

.intro_feature_container {
  grid-column-gap: 160px;
  grid-row-gap: 160px;
  display: flex;
}

.intro_cards_wrap {
  grid-column-gap: 3.75rem;
  grid-row-gap: 3.75rem;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  margin-top: 7rem;
  display: flex;
}

.h3 {
  font-size: var(--h3);
  line-height: var(--_typography---line-height--120);
  font-weight: var(--_typography---font--family-light);
  margin-top: 0;
  margin-bottom: 0;
}

.h3.small {
  font-size: var(--_typography---font-size-desktop--h3-small);
}

.h3.small.video-section-content {
  color: var(--_colors---grey-text);
  width: 80%;
}

.intro_cards_grid {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  flex-flow: row;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  place-items: stretch stretch;
  display: grid;
}

.intro_cards_grid.bigger_wrap {
  grid-template-columns: 1fr 1fr 1fr 1fr;
  margin-top: 4rem;
}

.intro_card {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  background-color: #fafafa;
  flex-flow: column;
  justify-content: space-between;
  align-self: stretch;
  align-items: flex-start;
  width: 100%;
  height: 100%;
  padding: 2rem;
  transition: background-color .3s ease-in-out;
  display: flex;
  position: relative;
}

.intro_card:hover {
  background-color: var(--_colors---bg-darker);
}

.intro_card_wraper {
  z-index: 5;
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
}

.notch {
  z-index: -1;
  background-color: #0003;
  width: 100%;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
}

.notch_wrap {
  z-index: -1;
  filter: blur(8px);
  position: absolute;
  inset: 20px 0 0 20px;
}

.video_section {
  background-color: var(--_colors---dark);
  overflow: hidden;
}

.h4 {
  color: var(--_colors---grey-text);
  font-size: var(--_typography---font-size-desktop--h4);
  line-height: var(--_typography---line-height--120);
  font-weight: var(--_typography---font--family-light);
  margin-top: 0;
  margin-bottom: 0;
}

.h4.video_title {
  color: var(--_colors---bg-default);
  font-weight: var(--_typography---font--family-regular);
}

.h4.big {
  font-size: var(--_typography---font-size-desktop--text-large);
}

.h4.big_bright {
  color: var(--_colors---bg-darker);
  font-size: var(--_typography---font-size-desktop--text-large);
}

.text_small {
  color: var(--_colors---dark);
  font-size: var(--_typography---font-size-desktop--text-small);
  line-height: 140%;
  font-weight: var(--_typography---font--family-regular);
  margin-bottom: 0;
}

.text_small.narrow {
  width: 30%;
}

.text_small.light_narrow {
  color: var(--_colors---bg-default);
  width: 70%;
}

.text_small.feature_style {
  border-top: 1px solid var(--_colors---border-line);
  padding-top: 1rem;
  padding-bottom: 1rem;
  display: flex;
}

.text_small.feature_style.last_one, .text_small.feature_style.last_one_desktop {
  border-bottom: 1px solid var(--_colors---border-line);
}

.text_small.light {
  color: var(--_colors---bg-default);
}

.glare-text {
  color: var(--_colors---accent);
}

.h1 {
  color: var(--_colors---bg-default);
  font-size: var(--_typography---font-size-desktop--h1);
  line-height: 130%;
  font-weight: var(--_typography---font--family-light);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  min-width: 50%;
  margin-top: 0;
  margin-bottom: 0;
  position: absolute;
  inset: 0% auto auto 0%;
}

.large_text {
  line-height: var(--_typography---line-height--120);
  font-weight: var(--_typography---font--family-light);
  margin-bottom: 0;
}

.large_text._2 {
  line-height: var(--_typography---line-height--120);
  text-align: left;
}

.intro_text_wrap {
  font-size: var(--_typography---font-size-desktop--text-large);
  line-height: var(--_typography---line-height--120);
  text-align: right;
  flex-flow: wrap;
  justify-content: center;
  align-items: flex-end;
}

.hero_section_cover {
  z-index: 3;
  background-color: var(--_colors---dark);
  opacity: 0;
  position: absolute;
  inset: 0%;
}

.video_section_layout {
  z-index: 1;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  height: 670px;
  margin-top: 7.5rem;
  display: flex;
  position: relative;
}

.hover_video_wrap {
  background-color: var(--_colors---dark-transparent);
  text-align: center;
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  height: 100%;
  transition: all .4s cubic-bezier(.445, .05, .55, .95);
  display: inline-flex;
  position: relative;
}

.hover_video_wrap.active {
  flex: 1;
  width: 50%;
  overflow: hidden;
}

.hover_video_wrap.inactive {
  width: 25%;
  overflow: hidden;
}

.hover_video_wrap.inactive:hover {
  width: 50%;
}

.hover_video {
  z-index: -1;
  width: 101%;
  height: 101%;
  position: absolute;
  inset: 0%;
}

.hover_video_content {
  z-index: 0;
  opacity: .6;
  text-align: left;
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  height: 100%;
  padding: 2.2rem;
  transition: opacity .4s cubic-bezier(.55, .085, .68, .53);
  display: flex;
  position: relative;
}

.hover_video_content:hover {
  opacity: 1;
}

.hover_video_content._02 {
  transition: opacity .2s;
}

.h2 {
  font-size: var(--_typography---font-size-desktop--h2);
  line-height: var(--_typography---line-height--100);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 300;
}

.text_extra_small {
  color: var(--_colors---dark);
  font-size: var(--_typography---font-size-desktop--extra-small-text);
  line-height: var(--_typography---line-height--150);
  font-weight: var(--_typography---font--family-regular);
  margin-bottom: 0;
}

.features_section {
  background-color: var(--_colors---bg-default);
  overflow: hidden;
}

.features_flex {
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
}

.what_section {
  background-color: var(--_colors---bg-default);
  overflow: hidden;
}

.features_wrap {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  width: 50%;
  display: flex;
}

.features_column {
  flex: 1;
}

.cta_section {
  background-color: var(--_colors---bg-darker);
  overflow: hidden;
}

.features_flex_wrap {
  grid-column-gap: 7rem;
  grid-row-gap: 7rem;
  flex-flow: column;
  display: flex;
}

.cta_wrap {
  margin-left: -2rem;
  margin-right: -2rem;
  padding: 9rem 5rem 9rem 2rem;
  display: flex;
  position: relative;
}

.cta_animation_wrap {
  width: 50%;
  position: absolute;
  inset: 0% auto 0% 0%;
}

.sta_content_wrap {
  z-index: 6;
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  margin-left: auto;
  display: flex;
  position: relative;
}

.cta_link_wrap {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  color: var(--_colors---accent);
  font-weight: var(--_typography---font--family-light);
  justify-content: flex-start;
  align-items: center;
  text-decoration: none;
  display: flex;
}

.cta_link_text {
  font-size: var(--_typography---font-size-desktop--h3);
  line-height: var(--_typography---line-height--120);
}

.cta_link_text.small, .cta_link_text._404 {
  font-size: var(--_typography---font-size-desktop--h3-small);
}

.cta_link_text._404.glare-text {
  font-size: 2.5rem;
}

.cta_linl_arrow {
  margin-top: 4px;
}

.cta_background {
  z-index: -1;
  background-color: var(--_colors---bg-darker);
  width: 120vw;
  position: absolute;
  inset: 0% -2rem;
}

.cta_image_01 {
  position: absolute;
  inset: -3px auto auto -100px;
}

.cta_image_02 {
  position: absolute;
  inset: 0% auto auto 70px;
}

.cta_image_04 {
  position: absolute;
  inset: auto auto 0% 40px;
}

.cta_image_03 {
  position: absolute;
  inset: 90px auto auto 60px;
}

.cta_image_05 {
  position: absolute;
  inset: 0% 140px auto auto;
}

.cta_image_06 {
  position: absolute;
  inset: 0% 131px auto auto;
}

.cta_image_07 {
  position: absolute;
  inset: auto 220px 100px auto;
}

.cta_image_08 {
  position: absolute;
  inset: -9px -60px auto auto;
}

.technology_section, .contact_section {
  background-color: var(--_colors---bg-default);
  overflow: hidden;
}

.contact_wrap {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  margin-top: 3rem;
  display: flex;
}

.contact_flex {
  justify-content: space-between;
  margin-top: 4rem;
  display: flex;
}

.contact_content {
  font-size: var(--_typography---font-size-desktop--text-main);
  line-height: var(--_typography---line-height--140);
  width: 40%;
  margin-bottom: 0;
}

.contact_form_block {
  flex-flow: column;
  width: 45%;
  margin-bottom: 0;
  display: flex;
}

.contact_form_block.hidden {
  display: none;
}

.contact_for_content {
  font-size: var(--_typography---font-size-desktop--text-main);
  line-height: var(--_typography---line-height--140);
  margin-bottom: 0;
}

.form {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  flex-flow: column;
  justify-content: center;
  align-items: flex-end;
  margin-top: 3.25rem;
  display: flex;
}

.field_label {
  font-size: 14px;
  font-weight: var(--_typography---font--family-medium);
}

.text_field {
  border-style: solid;
  border-width: 1px;
  border-color: var(--_colors---transparent) var(--_colors---transparent) var(--_colors---border-line);
  background-color: var(--_colors---transparent);
  font-size: var(--_typography---font-size-desktop--text-small);
  margin-bottom: 0;
  padding-left: 0;
  padding-right: 0;
}

.text_field:active, .text_field:focus, .text_field:focus-visible, .text_field[data-wf-focus-visible] {
  border-color: var(--_colors---transparent) var(--_colors---transparent) var(--_colors---accent);
}

.text_field::placeholder {
  color: var(--_colors---grey-text);
  font-size: var(--_typography---font-size-desktop--text-small);
}

.contact_fields_wrap {
  align-self: stretch;
}

.contact_form_button {
  background-color: var(--_colors---transparent);
  color: var(--_colors---accent);
  font-size: var(--_typography---font-size-desktop--text-main);
  background-image: url('../images/🡐-1.svg');
  background-position: 90%;
  background-repeat: no-repeat;
  background-size: auto;
  background-attachment: scroll;
  margin-top: 3rem;
  padding-right: 60px;
  transition: all .3s;
}

.contact_form_button:hover {
  background-position: 100%;
}

.success_message_wrap {
  background-color: var(--_colors---transparent);
  padding-left: 0;
}

.success_message_container {
  grid-column-gap: .7rem;
  grid-row-gap: .7rem;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.success_message_text {
  color: var(--_colors---accent);
  font-size: var(--_typography---font-size-desktop--text-small);
  line-height: var(--_typography---line-height--140);
  font-weight: var(--_typography---font--family-regular);
  text-align: left;
}

.marquee-track {
  background-color: var(--_colors---dark);
  width: 2000vw;
  display: flex;
}

.gallery_image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  margin-right: 0;
}

.gallery_section {
  background-color: var(--_colors---dark);
  width: auto;
  overflow: hidden;
}

.lightbox {
  flex: none;
  width: 37rem;
  height: 20rem;
  overflow: hidden;
}

.footer_section {
  background-color: var(--_colors---dark);
  overflow: hidden;
}

.footer_container {
  z-index: 2;
  flex-flow: column;
  width: 100%;
  max-width: 90rem;
  margin-left: auto;
  margin-right: auto;
  padding: 7rem 2em .5rem;
  display: flex;
}

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

.footer_menu {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.footer_layout {
  grid-column-gap: 7rem;
  grid-row-gap: 7rem;
  flex-flow: column;
  margin-top: 7rem;
  display: flex;
}

.footer_tiny_text {
  color: var(--_colors---grey-text);
  font-size: 14px;
  line-height: var(--_typography---line-height--150);
  font-weight: var(--_typography---font--family-regular);
  padding-top: 8px;
  padding-bottom: 8px;
  text-decoration: none;
}

.footer_tiny_l {
  color: var(--_colors---accent);
  font-size: 14px;
  font-weight: var(--_typography---font--family-regular);
}

.footer_tiny_wrap {
  grid-column-gap: 6px;
  grid-row-gap: 6px;
  text-align: left;
  flex: none;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.footer_tiny_link_wrap {
  grid-column-gap: 6px;
  grid-row-gap: 6px;
  color: var(--_colors---accent);
  padding-top: 8px;
  padding-bottom: 8px;
  display: flex;
}

.footer_tiny_link_icon {
  color: var(--_colors---accent);
}

.gallery_container {
  width: 100%;
  height: 20rem;
  position: relative;
}

.swiper {
  padding-top: 32px;
  position: static;
  overflow: hidden;
}

.swiper.slider-second {
  width: 100%;
}

.swiper.intro-slider {
  height: 500px;
  padding-top: 0;
}

.swiper.slider-third {
  width: 100%;
  min-height: 580px;
  margin-top: 4rem;
}

.swiper-wrapper {
  flex-flow: row;
  width: auto;
  height: 100%;
  display: flex;
}

.swiper-wrapper.third {
  margin-top: 2rem;
}

.swiper-wrapper.second {
  height: 500px;
  margin-top: 4rem;
}

.swiper-slide {
  flex: none;
  align-self: stretch;
  width: 100%;
  overflow: hidden;
}

.slide_wrapper {
  background-color: var(--_colors---bg-darker);
  grid-template-rows: auto;
  grid-template-columns: 40% 55%;
  grid-auto-columns: 1fr;
  height: 100%;
  padding: 3rem;
  position: relative;
  overflow: hidden;
}

.slide_image {
  object-fit: cover;
  width: 50%;
  height: 100%;
  position: absolute;
  inset: 0% 0% 0% auto;
}

.slide_content_wrap {
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  width: 45%;
  height: 100%;
  margin-right: 2rem;
  display: flex;
}

.slide_content {
  grid-column-gap: 2.5rem;
  grid-row-gap: 2.5rem;
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.swiper-pagination {
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.custom-bullet {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  color: var(--_colors---grey-text);
  cursor: pointer;
  padding: 10px 0 10px 10px;
  font-size: 24px;
  display: flex;
}

.slider_number {
  cursor: pointer;
}

.dash {
  background-color: var(--_colors---grey-text);
  align-self: center;
  width: 32px;
  height: 1px;
}

.custom-bullet-active {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  color: var(--_colors---accent);
  cursor: pointer;
  padding: 10px 0 10px 10px;
  font-size: 24px;
  display: flex;
}

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

.slider_wrap {
  width: 75%;
  margin-top: 6rem;
}

.tech_list_wrap {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-flow: column;
  display: flex;
}

.tech-slide-image {
  z-index: -1;
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: relative;
}

.tech_list_row {
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.custom-bullet-active-2 {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  color: #00c79c;
  cursor: pointer;
  padding: 10px 0 10px 10px;
  font-size: 24px;
  display: flex;
}

.tech_list_dot {
  background-color: #00c79c;
  flex: none;
  width: 8px;
  height: 8px;
}

.custom-bullet-2 {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  color: gray;
  cursor: pointer;
  padding: 10px 0 10px 10px;
  font-size: 24px;
  display: flex;
}

.tech-slide_wrapper {
  flex-flow: column;
  min-height: 580px;
  padding: 3rem;
  display: flex;
  position: relative;
  overflow: hidden;
}

.tech_slider_content {
  grid-column-gap: 160px;
  grid-row-gap: 160px;
  flex-flow: column;
  flex: 1;
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
  position: relative;
}

.dash-2 {
  background-color: gray;
  align-self: center;
  width: 32px;
  height: 1px;
}

.tech-slide_image_wrap {
  background-image: linear-gradient(90deg, var(--_colors---dark), var(--_colors---transparent) 93%);
  position: absolute;
  inset: 0%;
}

.swiper-pagination-text {
  justify-content: flex-start;
  align-items: center;
  margin-left: -10px;
  display: flex;
}

.video_cover {
  z-index: -1;
  background-color: #19191933;
  background-image: linear-gradient(0deg, var(--_colors---dark), var(--_colors---transparent) 69%);
  position: absolute;
  inset: 0%;
}

.navbar {
  background-color: var(--_colors---transparent);
  width: 100%;
  position: fixed;
  inset: 0% 0% auto;
}

.navbar_container {
  z-index: 2;
  flex-flow: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 90rem;
  margin-left: auto;
  margin-right: auto;
  padding: 1.5rem 2em;
  display: flex;
}

.menu_button {
  order: 1;
  padding: 1rem;
}

.menu_button.w--open {
  background-color: var(--_colors---transparent);
}

.nav_button_container {
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
  width: 1.5rem;
  height: 1rem;
  display: flex;
}

.nav_button_line {
  background-color: var(--_colors---bg-default);
  width: 1.5rem;
  height: .125rem;
}

.brand {
  order: -1;
}

.nav_logo {
  color: #fff;
  width: 130px;
}

.nav_menu {
  background-color: var(--_colors---bg-darker);
  width: 50vw;
  height: 100vh;
  padding-top: 2rem;
  padding-bottom: 2rem;
  padding-left: 3rem;
  position: absolute;
  inset: 0% 0% 0% auto;
}

.nav_menu_container {
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  height: 95vh;
  display: flex;
}

.close_link {
  cursor: pointer;
  justify-content: flex-start;
  align-items: center;
  padding: 1rem;
  display: flex;
}

.close_button_line {
  border: .01rem solid var(--_colors---dark);
  background-color: var(--_colors---dark);
  width: 1.5rem;
  height: .125rem;
}

.close_button_line._01 {
  height: .09rem;
  position: absolute;
  transform: rotate(45deg);
}

.close_button_line._02 {
  height: .09rem;
  position: absolute;
  transform: rotate(-45deg);
}

.close_link_wrap {
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  padding-right: 2rem;
  display: flex;
}

.aditional_text_wrap {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-flow: column;
  display: flex;
}

.nav_link_wrap {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  margin-bottom: 5rem;
  display: flex;
}

.close_button_container {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 1rem;
  height: 1rem;
  display: flex;
  position: relative;
}

.nav-link {
  color: var(--_colors---grey-text);
  font-size: var(--_typography---font-size-desktop--text-large);
  line-height: var(--_typography---line-height--120);
  font-weight: var(--_typography---font--family-light);
  text-decoration: none;
  transition: all .2s;
}

.nav-link:hover {
  color: var(--_colors---dark);
}

.nav-link.small {
  font-size: var(--_typography---font-size-desktop--text-main);
  font-weight: var(--_typography---font--family-regular);
}

.nav-link.small:hover {
  color: var(--_colors---bg-default);
}

.why_section {
  background-color: var(--_colors---bg-default);
}

.custom-code {
  display: none;
}

.utility-page-wrap {
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  height: 100vh;
  max-height: 100%;
  display: flex;
}

.utility-page-content {
  text-align: center;
  flex-direction: column;
  width: 260px;
  display: flex;
}

.utility-page-form {
  flex-direction: column;
  align-items: stretch;
  display: flex;
}

.hero_text_change {
  color: var(--_colors---bg-default);
  font-size: var(--_typography---font-size-desktop--h1);
  line-height: 130%;
  font-weight: var(--_typography---font--family-light);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  margin-top: 0;
  margin-bottom: 0;
  position: absolute;
  inset: 0% auto auto 0%;
}

.hero_text_change._03, .hero_text_change._02 {
  display: none;
}

.hero_wrap {
  width: 100%;
  height: 200px;
  position: relative;
}

.footer_tiny_link {
  color: var(--_colors---grey-text);
  font-size: 14px;
  line-height: var(--_typography---line-height--150);
  font-weight: var(--_typography---font--family-regular);
  padding-top: 8px;
  padding-bottom: 8px;
  text-decoration: none;
  transition: color .3s;
}

.footer_tiny_link:hover {
  color: var(--_colors---bg-default);
}

.loader {
  z-index: 999999;
  background-color: var(--_colors---bg-darker);
  width: 100%;
  height: 100vh;
  display: none;
  position: fixed;
  inset: 0% 0% auto;
  overflow: hidden;
}

.loader_container {
  z-index: 2;
  flex-flow: column;
  width: 100%;
  max-width: 90rem;
  margin-left: auto;
  margin-right: auto;
  padding: 0 2em;
  display: flex;
  position: relative;
}

.trigger {
  width: 0;
  height: 0;
  display: none;
  position: fixed;
  inset: 0% auto auto 0%;
}

.loader_number {
  font-size: 10rem;
  line-height: var(--_typography---line-height--150);
  font-weight: var(--_typography---font--family-light);
  margin-bottom: 0;
}

._404_description {
  font-size: 1rem;
}

._404_text {
  font-family: var(--_typography---font--font-family);
  font-size: 2.5rem;
  line-height: 130%;
  font-weight: var(--_typography---font--family-light);
  margin-top: 0;
  margin-bottom: 0;
}

._404_text.big {
  font-size: 8rem;
}

._404_wrap {
  grid-column-gap: 7rem;
  grid-row-gap: 7rem;
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  width: 50%;
  display: flex;
}

._404_wrapper {
  grid-column-gap: 7rem;
  grid-row-gap: 7rem;
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.section_404 {
  background-color: var(--_colors---bg-default);
}

@media screen and (min-width: 1920px) {
  .nav_menu_container {
    max-width: 45rem;
  }

  .close_link {
    margin-left: auto;
  }

  .close_link_wrap {
    justify-content: space-between;
    align-items: stretch;
    padding-right: 3rem;
  }
}

@media screen and (max-width: 991px) {
  .container {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .container._404 {
    padding-top: 7rem;
  }

  .intro_section {
    padding-top: 0;
  }

  .intro_features_wrap {
    margin-top: 4rem;
  }

  .intro_features_row {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    flex-flow: column;
    padding-top: 2em;
    padding-bottom: 2em;
  }

  .intro_feature_container {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    justify-content: flex-start;
    align-items: center;
  }

  .intro_cards_wrap {
    margin-top: 4rem;
  }

  .h3.cta {
    font-size: var(--_typography---font-size-tablet--h3);
  }

  .intro_cards_grid.bigger_wrap {
    grid-template-columns: 1fr 1fr;
    margin-top: 4rem;
  }

  .intro_card {
    padding: 1.5rem;
  }

  .video_section {
    overflow: visible;
  }

  .h4 {
    font-size: var(--_typography---font-size-desktop--h4);
  }

  .h4.big {
    font-size: 2.5rem;
  }

  .h4.big_bright {
    font-size: var(--_typography---font-size-phone--h4);
  }

  .text_small {
    font-size: var(--_typography---font-size-tablet--text-small);
  }

  .text_small.narrow {
    width: 70%;
    margin-left: 2.6rem;
  }

  .text_small.light_narrow {
    width: 60%;
  }

  .text_small.feature_style.last_one_desktop {
    border-bottom-style: none;
  }

  .h1 {
    font-size: var(--_typography---font-size-tablet--h1);
  }

  .large_text._2 {
    line-height: var(--_typography---line-height--140);
  }

  .intro_text_wrap {
    font-size: var(--_typography---font-size-tablet--text-large);
    line-height: var(--_typography---line-height--140);
  }

  .video_section_layout {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    flex-flow: column;
    height: auto;
    margin-top: 4rem;
    display: flex;
  }

  .hover_video_wrap.active {
    flex: none;
    width: auto;
    height: 400px;
    margin-bottom: 260px;
    position: sticky;
    top: 100px;
  }

  .hover_video_wrap.inactive {
    width: auto;
    height: 400px;
  }

  .hover_video_wrap.inactive:hover {
    width: auto;
  }

  .hover_video_wrap.inactive._3 {
    z-index: 3;
    position: sticky;
    top: 180px;
  }

  .hover_video_wrap.inactive._2 {
    z-index: 2;
    margin-bottom: 120px;
    position: sticky;
    top: 220px;
  }

  .hover_video_content {
    opacity: 1;
  }

  .h2 {
    font-size: var(--_typography---font-size-tablet--h2);
  }

  .features_wrap {
    grid-column-gap: 0rem;
    grid-row-gap: 0rem;
    flex-flow: column;
  }

  .cta_wrap {
    padding-left: 0;
    padding-right: 1rem;
  }

  .cta_animation_wrap {
    width: 70%;
  }

  .sta_content_wrap {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
    width: 50%;
  }

  .cta_link_wrap {
    justify-content: flex-start;
    align-items: center;
  }

  .cta_link_text {
    font-size: var(--_typography---font-size-tablet--h3);
  }

  .cta_linl_arrow {
    width: 25px;
  }

  .contact_flex {
    margin-top: 2rem;
  }

  .contact_form_block {
    width: 50%;
  }

  .lightbox {
    width: 26rem;
    height: 16rem;
  }

  .footer_container {
    padding-top: 4rem;
  }

  .footer_menu {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .gallery_container {
    height: 16rem;
  }

  .swiper.intro-slider {
    height: 300px;
  }

  .swiper-wrapper.first {
    margin-top: 0;
  }

  .swiper-slide {
    align-self: stretch;
  }

  .slide_wrapper {
    grid-column-gap: 32px;
    grid-row-gap: 32px;
    justify-content: flex-start;
    height: 100%;
    padding: 2rem;
  }

  .slider_wrap {
    width: 100%;
    margin-top: 4rem;
  }

  .tech-slide_wrapper {
    min-height: 500px;
    padding: 2rem;
  }

  .nav_menu {
    width: 100vw;
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .nav-link {
    font-size: var(--_typography---font-size-tablet--text-large);
  }

  .nav-link.small {
    font-size: var(--_typography---font-size-tablet--text-main);
  }

  .nav-link.small:hover {
    color: var(--_colors---grey-text);
  }

  .hero_text_change {
    font-size: var(--_typography---font-size-tablet--h1);
  }

  .loader_container {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  ._404_wrap {
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
    width: 100%;
  }

  ._404_wrapper {
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
    flex-flow: column;
    width: auto;
  }
}

@media screen and (max-width: 767px) {
  .intro_cards_wrap {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .h3 {
    font-size: var(--_typography---font-size-tablet--h3);
  }

  .h3.small.video-section-content {
    font-size: var(--_typography---font_size-phone--h3);
    width: auto;
  }

  .intro_cards_grid {
    flex-flow: column;
    display: flex;
  }

  .intro_cards_grid.bigger_wrap {
    margin-top: 2rem;
  }

  .h1 {
    font-size: var(--_typography---font-size-phone--h1);
  }

  .h2 {
    font-size: var(--_typography---font_size-phone--h2);
  }

  .features_flex {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    flex-flow: column;
  }

  .features_wrap, .cta_animation_wrap {
    width: 100%;
  }

  .sta_content_wrap {
    justify-content: center;
    align-items: flex-start;
    width: auto;
    margin-left: 2rem;
  }

  .cta_link_text.small.glare-text, .cta_link_text._404.glare-text {
    font-size: var(--_typography---font_size-phone--h3);
  }

  .contact_wrap {
    margin-top: 20px;
  }

  .contact_flex {
    flex-flow: column;
  }

  .contact_content {
    font-size: var(--_typography---font-size-tablet--text-main);
    width: auto;
  }

  .contact_form_block {
    width: auto;
    margin-top: 2rem;
  }

  .contact_for_content {
    font-size: var(--_typography---font_size-phone--text-main);
  }

  .text_field:active {
    font-size: var(--_typography---font-size-tablet--text-small);
  }

  .contact_form_button {
    font-size: var(--_typography---font-size-tablet--text-main);
    margin-top: 1.5rem;
  }

  .lightbox {
    height: 12rem;
  }

  .footer_flex {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .footer_flex.aditional {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
  }

  .footer_layout {
    grid-column-gap: 4rem;
    grid-row-gap: 4rem;
    margin-top: 4rem;
  }

  .gallery_container {
    height: 12rem;
  }

  .swiper-wrapper.second {
    height: auto;
  }

  .slide_wrapper {
    padding: 1rem 1rem 332px;
  }

  .slide_image.second_slider {
    width: 100%;
    height: 300px;
    inset: auto 0% 0%;
  }

  .slide_content_wrap {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    flex-flow: column;
    width: auto;
    margin-right: 0;
  }

  .slide_content {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .hero_text_change {
    font-size: var(--_typography---font-size-phone--h1);
  }
}

@media screen and (max-width: 479px) {
  .container {
    padding: 4rem 1em;
  }

  .container.hero_container {
    justify-content: flex-end;
    align-items: flex-start;
    padding-bottom: 8rem;
  }

  .container.intro {
    padding-left: 1em;
    padding-right: 1em;
  }

  .intro_features_wrap {
    margin-top: 3rem;
  }

  .intro_features_row {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
  }

  .intro_feature_container {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .h3, .h3.small, .h3.small.video-section-content, .h3.cta {
    font-size: var(--_typography---font_size-phone--h3);
  }

  .intro_cards_grid.bigger_wrap {
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
  }

  .intro_card {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    padding: 1rem 1rem 1rem .5rem;
  }

  .video_section {
    overflow: visible;
  }

  .h4 {
    font-size: var(--_typography---font-size-phone--h4);
  }

  .text_small.narrow {
    width: auto;
    margin-left: 0;
  }

  .text_small.light_narrow {
    width: auto;
  }

  .intro_text_wrap {
    font-size: var(--_typography---font_size-phone--text-large);
  }

  .video_section_layout {
    justify-content: space-between;
  }

  .hover_video_wrap.active {
    margin-bottom: 240px;
    top: 100px;
  }

  .hover_video_wrap.inactive._3 {
    margin-right: -8px;
  }

  .hover_video_wrap.inactive._2 {
    top: 200px;
  }

  .hover_video_content {
    padding: .8rem;
  }

  .features_flex_wrap {
    grid-column-gap: 4rem;
    grid-row-gap: 4rem;
  }

  .cta_wrap {
    margin-left: -1rem;
    margin-right: -1rem;
    padding-top: 6rem;
    padding-bottom: 6rem;
  }

  .sta_content_wrap {
    margin-left: 1rem;
  }

  .cta_link_wrap {
    grid-column-gap: .2rem;
    grid-row-gap: .2rem;
    justify-content: flex-start;
    align-items: center;
  }

  .cta_link_text {
    font-size: var(--_typography---font_size-phone--h3);
  }

  .cta_link_text.small.glare-text {
    font-size: 1.6rem;
  }

  .cta_link_text._404.glare-text {
    font-size: 2rem;
  }

  .cta_linl_arrow {
    width: 20px;
  }

  .cta_image_01 {
    width: 60px;
    inset: 0% auto auto 0%;
  }

  .cta_image_02 {
    width: 40px;
  }

  .cta_image_04 {
    width: 120px;
    left: 20px;
  }

  .cta_image_05 {
    width: 240px;
    right: 60px;
  }

  .cta_image_06 {
    width: 112px;
    right: 60px;
  }

  .cta_image_07 {
    width: 60px;
    bottom: 40px;
    right: 50px;
  }

  .cta_image_08 {
    width: 60px;
    inset: 0% 0% auto auto;
  }

  .contact_wrap, .contact_flex {
    margin-top: 24px;
  }

  .form {
    justify-content: center;
    align-items: flex-start;
    margin-top: 2rem;
  }

  .contact_form_button {
    padding-left: 0;
  }

  .footer_container {
    padding-top: 3rem;
    padding-left: 1em;
    padding-right: 1em;
  }

  .footer_menu {
    flex-flow: wrap;
  }

  .swiper.slider-second {
    margin-top: 2rem;
    padding-top: 20px;
  }

  .swiper.intro-slider {
    height: 200px;
  }

  .swiper.slider-third {
    margin-top: 2rem;
  }

  .swiper-wrapper.second {
    height: 100%;
    min-height: 470px;
    margin-top: 3rem;
  }

  .swiper-slide.second_slider_slide {
    height: 470px;
    min-height: 470px;
  }

  .slide_wrapper {
    grid-column-gap: 32px;
    grid-row-gap: 32px;
    grid-auto-columns: 1fr;
    padding-bottom: 232px;
  }

  .slide_image.second_slider {
    height: 200px;
  }

  .slide_content_wrap {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .custom-bullet {
    grid-column-gap: 5px;
    grid-row-gap: 5px;
    padding-left: 6px;
    font-size: 18px;
  }

  .dash {
    width: 16px;
  }

  .custom-bullet-active {
    grid-column-gap: 5px;
    grid-row-gap: 5px;
    padding-left: 6px;
    font-size: 18px;
  }

  .tech_list_wrap {
    grid-column-gap: .75rem;
    grid-row-gap: .75rem;
  }

  .tech_list_row {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .custom-bullet-active-2 {
    grid-column-gap: 6px;
    grid-row-gap: 6px;
    padding-left: 6px;
    font-size: 15px;
  }

  .tech_list_dot {
    margin-top: 8px;
  }

  .custom-bullet-2 {
    grid-column-gap: 6px;
    grid-row-gap: 6px;
    padding-left: 6px;
    font-size: 15px;
  }

  .tech-slide_wrapper {
    min-height: 540px;
    padding: 1rem;
  }

  .tech_slider_content {
    grid-column-gap: 40px;
    grid-row-gap: 40px;
  }

  .dash-2 {
    width: 16px;
  }

  .tech-slide_image_wrap {
    background-color: var(--_colors---dark-transparent);
    background-image: linear-gradient(0deg, var(--_colors---dark), var(--_colors---transparent));
  }

  .swiper-pagination-text {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    flex-flow: wrap;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-columns: 1fr;
    margin-left: 0;
    display: flex;
  }

  .navbar_container {
    padding: .5rem 1em 0;
  }

  .menu_button {
    margin-right: -1rem;
  }

  .brand {
    padding-left: 0;
  }

  .nav_logo {
    width: 110px;
  }

  .nav_menu {
    padding: 1rem;
  }

  .nav_menu_container {
    height: 90vh;
  }

  .close_link {
    margin-right: -1rem;
  }

  .close_link_wrap {
    padding-right: 0;
  }

  .hero_wrap {
    overflow: hidden;
  }

  .loader_container {
    padding: 0 1em;
  }

  .loader_number {
    font-size: 4rem;
  }

  ._404_text {
    font-size: 2rem;
  }

  ._404_text.big {
    line-height: 100%;
  }

  ._404_wrap._01 {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }
}

#w-node-b137b8b8-0bae-d099-cf28-5b5fbf3f16d8-de36f8c2, #w-node-c830727d-4828-086a-3d1f-9f2d2bb30fda-de36f8c2, #w-node-a82ee39e-0968-dcc6-2c8b-c971d46b1c68-de36f8c2 {
  align-self: stretch;
}


@font-face {
  font-family: 'Teg';
  src: url('../fonts/TEG-Regular.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Teg';
  src: url('../fonts/TEG-Light.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Teg';
  src: url('../fonts/TEG-Medium.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}