.height_listing ul, .gallery_slider .gallery_list {
  padding: 0;
  margin: 0;
  list-style-type: none;
}

.about_company .map_block .image_block > img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.about_company .map_block .image_block > img {
  object-fit: cover;
}

.about_company .map_block .image_block iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100% !important;
  height: 100% !important;
}

.about_company .map_block .image_block {
  position: relative;
  overflow: hidden;
}
.about_company .map_block .image_block:before {
  display: block;
  content: "";
  padding-bottom: 100%;
}

.about_company .map_block .logo_block:after {
  font-family: "icon" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.main_title {
  font-size: 640%;
  line-height: 1.17em;
}
@media screen and (min-width: 1025px) and (max-width: 1199px) {
  .main_title {
    font-size: 480%;
  }
}
@media screen and (min-width: 576px) and (max-width: 1024px) {
  .main_title {
    font-size: 320%;
  }
}
@media screen and (max-width: 575px) {
  .main_title {
    font-size: 280%;
  }
}

.platform_block .description_block, .about_company .description_block, .projects_block .description_block {
  font-size: 160%;
  line-height: 1.25em;
}
@media screen and (max-width: 575px) {
  .platform_block .description_block, .about_company .description_block, .projects_block .description_block {
    font-size: 140%;
  }
}

.gallery_slider a[href*=youtu] {
  font-size: 140%;
  line-height: 1.28em;
}
@media screen and (max-width: 575px) {
  .gallery_slider a[href*=youtu] {
    font-size: 120%;
  }
}

.height_listing li {
  font-size: 160%;
  line-height: 19px;
}
@media screen and (max-width: 575px) {
  .height_listing li {
    font-size: 140%;
  }
}

.search_section {
  position: relative;
  margin: 0 auto;
  width: 100%;
  z-index: 7;
  text-align: center;
}

.main_title {
  text-align: center;
  font-family: "roboto-bold";
}
@media screen and (max-width: 399px) {
  .main_title {
    font-size: 2rem;
  }
}

.search_block {
  position: relative;
  z-index: 10;
  display: inline-block;
  vertical-align: top;
  border-radius: 20px;
  padding: 40px;
  background: linear-gradient(180deg, rgba(243, 243, 243, 0.8) 0%, #F3F3F3 100%);
  box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.1);
}
@media screen and (min-width: 1025px) {
  .search_block .block_inner {
    flex-wrap: nowrap;
  }
  .search_block .range_block,
  .search_block .btn_block {
    flex: 1;
    min-width: 205px;
  }
}
@media screen and (max-width: 1024px) {
  .search_block {
    max-width: 273px;
    border-radius: 20px;
    padding-top: 5px;
    background: linear-gradient(180deg, rgba(243, 243, 243, 0.46) 0%, #F3F3F3 100%);
  }
}
.search_block .range_block {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 1025px) {
  .search_block .range_block {
    padding-left: 8px;
    padding-right: 8px;
  }
}
@media screen and (max-width: 1024px) {
  .search_block .range_block {
    padding-left: 4px;
    padding-right: 4px;
  }
}
@media screen and (max-width: 1024px) {
  .search_block .range_block {
    flex: 0 0 100%;
    max-width: 100%;
    margin-top: 40px;
  }
}

.cloud_container {
  position: absolute;
  width: 100%;
  z-index: 5;
  overflow: hidden;
  left: 0;
  height: 29.17vw;
  bottom: -15vw;
}
@media screen and (max-width: 399px) {
  .cloud_container {
    bottom: -20vw;
  }
}
.cloud_container img {
  position: absolute;
  height: auto;
}
.cloud_container img:first-child {
  top: -0.02%;
  width: 71%;
  left: -52%;
  animation: moveCloud1 50s infinite;
}
.cloud_container img:nth-child(2) {
  top: 0.02%;
  width: 43%;
  left: 0.1%;
  animation: moveCloud2 50s infinite;
}
.cloud_container img:nth-child(3) {
  width: 55%;
  top: -0.03%;
  left: -33%;
  animation: moveCloud3 50s infinite;
}
.cloud_container img:nth-child(4) {
  width: 45%;
  top: 0.03%;
  left: -41%;
  animation: moveCloud4 50s infinite;
}
.cloud_container img:nth-child(5) {
  width: 65%;
  left: 64%;
  animation: moveCloud5 50s infinite;
}
.cloud_container img:nth-child(6) {
  width: 65%;
  left: 64%;
  animation: moveCloud6 50s infinite;
}

@keyframes moveCloud1 {
  0% {
    left: -52%;
  }
  50% {
    left: 65%;
  }
  100% {
    left: -52%;
  }
}
@keyframes moveCloud2 {
  0% {
    left: 0.1%;
  }
  50% {
    left: 40%;
  }
  100% {
    left: 0.1%;
  }
}
@keyframes moveCloud3 {
  0% {
    left: 36%;
  }
  50% {
    left: -33%;
  }
  100% {
    left: 36%;
  }
}
@keyframes moveCloud4 {
  0% {
    left: 45%;
  }
  50% {
    left: -41%;
  }
  100% {
    left: 45%;
  }
}
@keyframes moveCloud5 {
  0% {
    left: 64%;
  }
  50% {
    left: 10%;
  }
  100% {
    left: 64%;
  }
}
@keyframes moveCloud6 {
  0% {
    left: 64%;
  }
  50% {
    left: 64%;
  }
  100% {
    left: 64%;
  }
}
.projects_section {
  padding-top: 120px;
}
@media screen and (max-width: 1024px) {
  .projects_section {
    padding-top: 100px;
  }
}

.projects_block {
  max-width: 822px;
  margin: 0 auto;
  text-align: center;
}
.projects_block .sub_title {
  padding-bottom: 30px;
}
.projects_block .description_block {
  color: rgba(34, 34, 34, 0.7);
  padding-bottom: 40px;
}

.gallery_slider:not(.slick-slider) {
  position: relative;
}
.gallery_slider:not(.slick-slider):not(.slick-slider) {
  overflow: hidden;
  display: flex;
}
.gallery_slider:not(.slick-slider):not(.slick-slider) > div {
  flex: 0 0 100%;
  max-width: 100%;
}
.gallery_slider .slide_block {
  margin: 0 -8px;
}
.gallery_slider .gallery_list {
  position: relative;
  clear: both;
}
.gallery_slider .gallery_list li {
  position: relative;
  float: left;
  width: 25%;
}
.gallery_slider .gallery_list li::before {
  display: block;
  content: "";
  padding-bottom: 81.53%;
}
.gallery_slider .gallery_list li:first-child {
  width: 50%;
}
@media screen and (max-width: 639px) {
  .gallery_slider .gallery_list li:first-child {
    width: 100%;
  }
}
.gallery_slider .gallery_list li a:not([href*=youtu]) {
  font-size: 0;
  line-height: 0;
}
@media screen and (max-width: 639px) {
  .gallery_slider .gallery_list li:not(:first-child) {
    width: 50%;
  }
}
.gallery_slider img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  border-radius: inherit;
}
.gallery_slider a {
  font-size: 0;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 8px;
  padding: 8px;
  border-radius: 8px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.12);
}
@media screen and (max-width: 767px) {
  .gallery_slider a {
    margin: 4px;
    padding: 4px;
    border-radius: 4px;
  }
}
.gallery_slider a[href*=youtu] {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .gallery_slider a[href*=youtu] {
    font-size: 120%;
  }
}
.gallery_slider a[href*=youtu] span {
  display: block;
  position: absolute;
  bottom: 45px;
  max-width: 596px;
  text-align: center;
  margin: 0 auto;
  left: 0;
  right: 0;
  padding: 0 50px;
}
.gallery_slider a[href*=youtu] span::before {
  content: "";
  display: block;
  z-index: 2;
  background-image: url("images/playbtn.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 87px;
  height: 96px;
  margin-bottom: 30px;
}
@media screen and (max-width: 1024px) {
  .gallery_slider a[href*=youtu] span::before {
    background-size: 67px;
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 767px) {
  .gallery_slider a[href*=youtu] span::before {
    background-size: 47px;
    margin-bottom: 5px;
  }
}
@media screen and (max-width: 1024px) {
  .gallery_slider a[href*=youtu] span {
    padding: 0 30px;
    bottom: 10px;
  }
}
@media screen and (max-width: 639px) {
  .gallery_slider a[href*=youtu] span {
    padding: 0 20px;
    bottom: 15px;
  }
}

@media screen and (max-width: 1024px) {
  .projects_block .sub_title {
    padding-bottom: 20px;
  }
  .projects_block .description_block {
    color: rgba(34, 34, 34, 0.7);
    padding-bottom: 30px;
  }
}
.middle_images {
  position: relative;
}
.middle_images .cloud_container {
  bottom: -26vw;
  z-index: 10;
}

.middle_bg {
  position: relative;
  z-index: -5;
}
.middle_bg::before, .middle_bg::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 3;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 232px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #FFFFFF 100%);
}
@media screen and (min-width: 1025px) and (max-width: 1199px) {
  .middle_bg::before, .middle_bg::after {
    height: 200px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .middle_bg::before, .middle_bg::after {
    height: 160px;
  }
}
@media screen and (min-width: 640px) and (max-width: 767px) {
  .middle_bg::before, .middle_bg::after {
    height: 120px;
  }
}
@media screen and (max-width: 639px) {
  .middle_bg::before, .middle_bg::after {
    height: 80px;
  }
}
.middle_bg img {
  width: 100%;
  height: auto;
}

.clouds_block {
  position: absolute;
  width: 100%;
  top: -40%;
  z-index: -3;
}
@media screen and (max-width: 767px) {
  .clouds_block {
    top: -25%;
  }
}
.clouds_block img {
  width: 100%;
  height: auto;
}

.second_cloud {
  top: -75%;
}

.bottomimage_block {
  position: absolute;
  width: 100%;
  top: 30%;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .bottomimage_block {
    top: 75%;
  }
}
.bottomimage_block img {
  width: 100%;
  height: auto;
}

.about_company {
  position: relative;
  z-index: 15;
}
.about_company .description_block {
  color: rgba(34, 34, 34, 0.7);
}
.about_company .title_section {
  display: flex;
  justify-content: center;
  flex-direction: column;
  text-align: center;
  margin: 0 auto;
  max-width: 550px;
}
.about_company .title_section .description_block {
  padding-top: 30px;
}
@media screen and (max-width: 1024px) {
  .about_company .title_section .description_block {
    padding-top: 20px;
  }
}
.about_company .map_block {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  padding-top: 30px;
}
.about_company .map_block .description_block {
  max-width: 598px;
  flex: 0 0 50%;
  padding: 0 45px;
}
.about_company .map_block .logo_block {
  position: absolute;
  left: 10%;
  top: 30%;
  z-index: 5;
  width: 44%;
  display: flex;
  animation: moveLogo 6s infinite linear;
}
.about_company .map_block .logo_block img {
  width: 100%;
  height: auto;
}
.about_company .map_block .logo_block::after {
  position: absolute;
  width: 26%;
  left: 85%;
  top: 40%;
  height: 67%;
  content: "\e913";
  font-size: 440%;
  animation: moveVector 6s infinite linear;
}
.about_company .map_block .image_block {
  position: relative;
  display: block;
  flex: 0 0 50%;
  max-width: 388px;
  margin: 0 45px;
}
.about_company .map_block .image_block > img {
  margin-right: auto;
  animation: moveImg 6s infinite;
}
@media screen and (max-width: 1024px) {
  .about_company .map_block {
    padding-top: 20px;
  }
  .about_company .map_block .description_block {
    max-width: 100%;
    flex: 0 0 100%;
    text-align: center;
    padding: 0;
  }
  .about_company .map_block .image_block {
    flex: 0 0 100%;
    margin: 60px 0 0;
  }
  .about_company .map_block .image_block img {
    margin: 0;
  }
}

@keyframes moveImg {
  0% {
    transform: rotate(0deg);
  }
  5% {
    transform: rotate(0deg);
  }
  45% {
    transform: rotate(35deg);
  }
  55% {
    transform: rotate(35deg);
  }
  95% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
@keyframes moveVector {
  0% {
    transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
  }
  50% {
    transform: scale(0);
    -moz-transform: scale(0);
    -ms-transform: scale(0);
    -webkit-transform: scale(0);
    -o-transform: scale(0);
  }
  100% {
    transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
  }
}
@keyframes moveLogo {
  0% {
    opacity: 1;
  }
  5% {
    opacity: 1;
  }
  45% {
    opacity: 0;
  }
  55% {
    opacity: 0;
  }
  95% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
.contacts_section {
  padding-bottom: 120px;
}
.contacts_section .btns_block {
  margin: 0 -8px;
}
.contacts_section .btns_block .primary_btn {
  margin: 40px 8px 0;
}
@media screen and (max-width: 1024px) {
  .contacts_section .btns_block .primary_btn {
    margin-top: 20px;
  }
}

.listing_section .page_container {
  position: relative;
  overflow: hidden;
  z-index: 5;
}

.platform_block {
  max-width: 822px;
  margin: 0 auto;
  text-align: center;
}
.platform_block .sub_title {
  padding-bottom: 30px;
}
.platform_block .description_block {
  color: rgba(34, 34, 34, 0.7);
  padding-bottom: 40px;
}

.height_listing {
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: center;
  flex: 0 0 100%;
  max-width: 648px;
  margin: 0 auto;
  cursor: grab;
  -o-transition: all 1s ease-out;
  -ms-transition: all 1s ease-out;
  -moz-transition: all 1s ease-out;
  -webkit-transition: all 1s ease-out;
  transition: all 1s ease-out;
}
@media screen and (min-width: 640px) {
  .height_listing:before, .height_listing:after {
    pointer-events: none;
    display: block;
    content: "";
    position: absolute;
    z-index: 1;
    top: 5px;
    width: 74px;
    height: 100%;
    bottom: 5px;
    background: linear-gradient(90deg, rgba(243, 243, 243, 0) 0%, #F3F3F3 100%);
    -o-transition: opacity 0.3s;
    -ms-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .height_listing:before {
    left: 0;
    transform: scaleX(-1);
    -moz-transform: scaleX(-1);
    -ms-transform: scaleX(-1);
    -webkit-transform: scaleX(-1);
    -o-transform: scaleX(-1);
  }
  .height_listing:after {
    right: 0;
  }
  .height_listing.no_scroll:before, .height_listing.no_scroll:after {
    display: none;
  }
}
.height_listing ul {
  max-width: 648px;
  align-items: center;
  margin: 0 -4px;
  position: relative;
  overflow-y: hidden;
  overflow-x: auto;
  display: inline-flex;
  vertical-align: top;
  padding: 5px 0;
  scrollbar-color: transparent transparent;
  scrollbar-width: thin;
}
.height_listing ul::-webkit-scrollbar {
  width: 0;
  height: 0;
  border-radius: 0;
  background: transparent;
}
.height_listing ul::-webkit-scrollbar-thumb {
  border-radius: 0;
  background: transparent;
}
.height_listing li {
  display: flex;
  flex: 0 0 74px;
  max-width: 74px;
  justify-content: center;
  align-items: center;
  margin: 0 4px;
  padding: 15px 20px;
  border-radius: 8px;
  background: rgba(243, 243, 243, 0.5);
  color: rgba(34, 34, 34, 0.5);
  font-family: "inter-bold";
}
.height_listing li.current_page {
  color: #222222;
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1215686275);
  pointer-events: none;
  background: #F3F3F3;
}
.height_listing.reached_end:after, .height_listing.reached_start:before {
  opacity: 0;
}
.height_listing ~ .product_listing li:not(.active) {
  display: none;
}

/*# sourceMappingURL=index.css.map */
