/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

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

:root {
  --blue: #7f68c2;
  --bl: #000;
  --bl-64: #1d1b23;
  --dark: #4f4f50;
  --wh: #fff;
  --wh-48: rgba(255, 255, 255, 0.48);
  --grey: #9d9d9d;
  --l-grey: #f7f7f7;
  --ll-grey: #f2f2f2;
}

/* start normalize */

html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  height: 100%;
  scroll-behavior: smooth;
}

body {
  margin: 0;
  display: flex;
  min-height: 100%;
  flex-direction: column;
}

body.lock {
  overflow: hidden;
}

main {
  display: block;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

a {
  background-color: transparent;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

b,
strong {
  font-weight: bolder;
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

/*===end normalize====*/

/* custom classnames start*/

.pt-16 {
  padding-top: 16px !important;
}

.pb-16 {
  padding-bottom: 16px !important;
}

.pt-32 {
  padding-top: 32px !important;
}

.pb-32 {
  padding-bottom: 32px !important;
}

.pt-72 {
  padding-top: 72px !important;
}

.pb-72 {
  padding-bottom: 72px !important;
}

.pt-100 {
  padding-top: 100px !important;
}

.pb-100 {
  padding-bottom: 100px !important;
}

.opacity-10 {
  opacity: 0.1;
}

.opacity-25 {
  opacity: 0.25;
}

.opacity-50 {
  opacity: 0.5;
}

.opacity-75 {
  opacity: 0.75;
}

.opacity-90 {
  opacity: 0.9;
}

.relative {
  position: relative;
}

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

.translate-none-x img {
  transform: translateX(0) !important;
}

.top-15 img {
  top: 15% !important;
}

.left-60 img {
  left: 60% !important;
}

.bg-gray {
  background-color: var(--ll-grey) !important;
}

.bg-white {
  background-color: var(--wh) !important;
}

.bg-white-60 {
  background: rgba(255, 255, 255, 0.6) !important;
}

.filter-black img {
  filter: invert(0%) sepia(100%) saturate(0%) hue-rotate(52deg) brightness(97%)
    contrast(101%);
}

.chess-placing {
  display: flex;
}

.chess-placing:nth-child(even) {
  flex-direction: row-reverse;
}

.mirror {
  transform: scale(-1, 1) !important;
}

.divider {
  position: relative;
  margin-top: 90px;
  height: 1px;
}

.divider-arrow-down {
  position: relative;
}

.divider-arrow-down:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 5%;
  right: 5%;
  width: 90%;
  height: 1px;
  background-image: linear-gradient(
    to right,
    transparent,
    var(--bl),
    transparent
  );
}

.divider-arrow-down:after {
  z-index: 1;
  content: "";
  position: absolute;
  bottom: -16px;
  left: calc(50% - 16px);
  width: 32px;
  height: 32px;
  transform: rotate(45deg);
  background-color: var(--wh);
  border-bottom: 1px solid var(--bl);
  border-right: 1px solid var(--bl);
}

/* custom classnames end*/

* {
  margin: 0;
  padding: 0;
}

body {
  margin: 0;
  padding: 0;
  width: 100%;
  font-size: 16px;
  font-weight: 700;
  color: var(--bl-64);
  background-color: var(--wh);
}

img {
  max-width: 100%;
}

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

p,
h1 {
  margin: 0;
}

#main {
  flex: 1 1 auto;
}

.pt-100 {
  padding-top: 100px !important;
}

.pt-72 {
  padding-top: 72px !important;
}

.pb-72 {
  padding-bottom: 72px !important;
}

.pt-32 {
  padding-top: 32px !important;
}

.pb-32 {
  padding-bottom: 32px !important;
}

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

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

section.banner .background > img,
.background > img {
  position: absolute;
  height: 580px;
  left: 50%;
  top: 0px;
  transform: translateX(-36%);
  max-width: unset;
  object-fit: cover;
}

.container_L {
  position: relative;
  text-align: center;
  margin: 0 auto;
  max-width: 990px;
}

.flex_block {
  display: flex;
  background: var(--l-grey);
  border-radius: 4px;
  margin: 4px;
  padding: 26px 28px;
}

.flex-item-column {
  display: flex;
  flex-direction: column;
  align-items: start;
  justify-content: start;
  gap: 12px;
  text-align: start;
}

.container_L .big_img {
  padding-top: 40px;
}

.container_XL {
  max-width: 1200px;
}

.container_M {
  max-width: 768px;
}

.flex-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0 3%;
}

.grey {
  background-color: var(--l-grey);
}

.flex-container_3col {
  display: flex;
  justify-content: space-between;
}

.flex-container_3col > div {
  display: flex;
  flex-direction: column;
  text-align: start;
  max-width: 31%;
  width: 100%;
  padding-top: 20px;
}

.flex-container_2col {
  display: flex;
  justify-content: space-between;
}

.flex-container_2col > div {
  display: flex;
  flex-direction: column;
  text-align: start;
  max-width: 45%;
  width: 100%;
  padding-top: 20px;
}

.flex-container_2col > div > div {
  padding-bottom: 20px;
}

@media (max-width: 1024px) {
  .container_L,
  .container_XL {
    padding: 0 3%;
  }
}

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

.line_object {
  position: absolute;
  bottom: 0;
  right: -60px;
  width: 30px;
  height: 6px;
  background: var(--bl);
}

/*===========banner============*/
.banner {
  position: relative;
}

.pt-150 {
  padding-top: 150px;
}

.pt-73 {
  padding-top: 73px;
}

.pb-90 {
  padding-bottom: 90px;
}

.mb-40 {
  margin-bottom: 40px;
}

.button-animated {
  opacity: 0;
  transition: 5s;
}

.button-animated.visible {
  opacity: 1;
}

.main_title span:last-child {
  border-right: 1px solid;
  animation: blinkTextCursor 1000ms infinite normal;
}

@keyframes blinkTextCursor {
  from {
    border-right-color: var(--blue);
  }
  to {
    border-right-color: transparent;
  }
}

/* ============section platform============*/
.platform {
  position: relative;
  text-align: center;
}

.platform a,
.platform a:visited {
  color: var(--wh);
}

/*common title style */
.title {
  position: relative;
  max-width: 850px;
  width: 100%;
  margin: 0 auto;
  font-size: 72px;
  font-weight: 700;
  line-height: 77.76px;
  letter-spacing: 7.2px;
  color: var(--blue);
}

.platform_text {
  margin: 16px 0 30px;
}

.button-wrapper {
  position: relative;
  display: inline-block;
  margin-top: 31px;
}

.button-wrapper:hover .frame {
  animation: moveFrame 0.3s forwards;
}

.button-wrapper:hover .button {
  background-color: var(--wh);
  color: var(--bl-64);
  transition: background-color 0.3s;
}

@keyframes moveFrame {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(-10px, -10px);
  }
}

.frame {
  position: absolute;
  top: 8px;
  left: 8px;
  width: 100%;
  height: 100%;
  border: 2px solid var(--bl-64);
  pointer-events: none;
}

a.header_logo {
  width: 170px;
  display: block;
  margin-bottom: 14px;
}

/*========about_platform===========*/
.about_platform {
  padding-top: 122px;
  padding-bottom: 132px;
  text-align: center;
  background-color: var(--wh);
}

.block {
  max-width: 786px;
  margin: 0 auto;
  text-align: left;
  align-items: start;
  column-gap: 15px;
}

.title_h3 {
  font-size: 28px;
  color: var(--blue);
  letter-spacing: 2.8px;
  margin-bottom: 12px;
}

.wrapper-text {
  display: flex;
  flex-direction: column;
  gap: 15px;
  max-width: 383px;
  padding-top: 30px;
}

.types_block {
  position: relative;
  max-width: 374px;
  padding-top: 30px;
}

.types_block .wrapper-flex {
  flex-wrap: wrap;
}

.wrapper_grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 40px;
  justify-content: center;
}

.wrapper_grid_one_col {
  display: grid;
  grid-gap: 40px;
  justify-content: center;
}

.types_frame {
  position: relative;
  width: 167px;
  height: 91px;
  border: 2px solid var(--bl-64);
}

.types_frame img {
  position: absolute;
  top: 0;
  right: 0;
}

.types_text {
  font-family: "Manrope", sans-serif;
  font-size: 32px;
  font-weight: 700;
  line-height: 35px;
  letter-spacing: 0.1em;
  text-align: left;
  padding: 44px 0 0 20px;
}
/*========end about_platform===========*/

/*==================BLOCK FEATURES==========*/
.features {
  position: relative;
  margin: 0 auto;
  padding-bottom: 280px;
  padding-top: 70px;
  text-align: center;
}

section.banner.banner_bg_gray {
  background-color: var(--ll-grey);
}

.items_wrap {
  position: relative;
  max-width: 853px;
  margin: 0 auto;
  padding-top: 30px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 50px 40px;
  justify-content: center;
}

.container_item {
  display: flex;
  align-items: center;
}

.container_item_icon {
  margin-right: 16px;
  max-width: 32px;
  max-height: 32px;
}

.container_item_text {
  text-align: left;
}
/*==================END BLOCK FEATURES==========*/

/*==================BLOCK quote===============*/
.blockquote_section {
  padding-top: 150px;
}

.bottom-150 {
  padding-top: 0;
  position: relative;
  bottom: 150px;
}

.quote_block {
  padding: 39px 0 51px;
  background-color: var(--wh);
  text-align: center;
  border: 1px solid var(--l-grey);
  box-shadow: 0px 4px 34px rgba(0, 0, 0, 0.05);
}

.quote_text {
  max-width: 994px;
  margin: 0 auto;
  padding: 0 68px;
  font-size: 28px;
  line-height: 30.24px;
  letter-spacing: 2.8px;
  color: var(--bl-64);
}

.quotation_marks {
  font-size: 72px;
}

.author {
  font-size: 28px;
  letter-spacing: 2.8px;
  color: var(--blue);
}
/*==================END BLOCK quote ===============*/

/*==================BLOCK PARTNERS==========*/

.tiles_wrap_one_column,
.feedbacks_wrap_one_column {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  padding-top: 30px;
}

/*==================END BLOCK PARTNERS==========*/

/*==================BLOCK FEEDBACKS==========*/

.feedbacks_container {
  max-width: 1240px;
  margin: 0 auto;
}

.feedbacks_wrap {
  display: flex;
  gap: 40px;
  justify-content: center;
}

.feedback {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
  padding: 40px;
  width: 478px;
  margin: 0 auto;
  box-shadow: 0px 4px 34px 0px rgba(0, 0, 0, 0.05);
  border-radius: 4px;
  letter-spacing: 0.1em;
  line-height: 1.08;
}

.feedback__title {
  font-size: 28px;
  color: var(--blue);
  max-width: 450px;
}

.feedback__description {
  font-size: 18px;
  margin: 0;
}

.description__quotation-mark {
  font-size: 72px;
}

.description__text {
  line-height: 1.15;
}

.description__text.overflow {
  display: -webkit-box;
  -webkit-line-clamp: 12;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.description__button {
  position: absolute;
  z-index: -1;
  opacity: 0;
  color: var(--blue);
  cursor: pointer;
}

.description__button.visible {
  position: initial;
  z-index: 1;
  opacity: 1;
}

.feedback__icon-container {
  width: 280px;
  min-width: 280px;
  height: 86px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid black;
}

.feedback__icon {
  max-width: 200px;
  max-height: 36px;
  object-fit: contain;
}

@media screen and (max-width: 561px) {
  .feedback {
    padding: 20px;
  }
}

@media screen and (max-width: 481px) {
  .feedback__title {
    font-size: 18px;
  }

  .feedback__description {
    font-size: 15px;
  }

  .description__quotation-mark {
    font-size: 36px;
  }

  .feedback__icon-container {
    width: 200px;
    min-width: 200px;
    height: 60px;
  }

  .feedback__icon {
    max-width: 150px;
    max-height: 30px;
  }
}

/*==================END BLOCK FEEDBACKS==========*/

/*==================BLOCK architecture ===============*/
.architecture {
  text-align: center;
  background-color: var(--wh);
}

.container_medium_item {
  position: relative;
  max-width: 786px;
  margin: 34px auto 44px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.container_medium_item img {
  max-width: 374px;
  max-height: 241px;
}

.container_medium_text {
  max-width: 372px;
  text-align: left;
  margin-left: 40px;
}

.architecture_section .container_medium_item .line_object {
  left: -60px;
}

.architecture_section h2 {
  margin-bottom: 73px;
}

.architecture_section h3 {
  margin-top: 73px;
}

.architecture_section .container_L:nth-of-type(6) h3 {
  margin-top: 135px;
}

.architecture_section .container_L:nth-of-type(7) h3 {
  margin-top: 135px;
}

.container_item_card + h2 {
  margin-bottom: 50px;
}

/*==================END BLOCK architecture ===============*/

/*============services_project section============*/
.services_h2 {
  max-width: 1200px;
  width: 100%;
}

.block_services {
  max-width: 1200px;
  width: 100%;
  display: flex;
  justify-content: space-around;
  padding-top: 30px;
  margin: 0 auto;
}

.specificities_wrap {
  padding-top: 30px;
}

.container_item_card .container_item_title {
  color: var(--dark);
}

.container_item_card {
  display: flex;
  flex-direction: column;
  background: var(--l-grey);
  border-radius: 4px;
  margin: 4px auto;
  padding: 26px 28px;
}

.container_item_card .container_item_icon {
  min-width: 56px;
  min-height: 56px;
  overflow: hidden;
}

.container_item_card .container_item_text {
  padding-left: 20px;
  padding-bottom: 16px;
  color: var(--dark);
}

ul.item_card_list {
  list-style: none;
  text-align: start;
  font-weight: 700;
  font-size: 16px;
  line-height: 108%;
  text-transform: lowercase;
  color: var(--dark);
  padding-left: 88px;
}

.item_card_list li {
  margin-bottom: 8px;
}

ul.item_card_list li:before {
  content: "/";
  margin-right: 5px;
}

.project_wrap {
  max-width: 786px;
  background: var(--l-grey);
  margin: 50px auto 0;
  padding: 50px 0 70px;
}

.project_wrap h3 {
  text-align: center;
  margin-bottom: 47px;
  padding: 0 80px;
}

.services_project_row {
  padding: 0 30px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

section.services_project {
  text-align: center;
  padding: 150px 0 0;
}

.any_project {
  font-weight: 700;
  font-size: 21px;
  line-height: 108%;
  text-align: center;
  letter-spacing: 0.1em;
  padding: 0 30px;
  margin-bottom: 17px;
}

.services_description {
  margin-top: 2rem;
  max-width: 90%;
  text-align: center;
}
/*============END services_project============*/

/*============road_map============*/
.section_road_map {
  padding-bottom: 23px;
  height: 510px;
  margin: 150px auto 0;
  padding-top: 70px;
  text-align: center;
}

.section_road_map h2 {
  margin-bottom: 216px;
}

.road_map_wrap {
  margin: 0 auto 0;
  text-align: center;
}

.road_items {
  position: relative;
  height: 2px;
  width: 100%;
  color: var(--bl-64);
  background-color: var(--bl-64);
}

.road_item {
  text-align: right;
  position: absolute;
  bottom: -5px;
  left: 27%;
}

.road_item:nth-of-type(2) {
  left: 45%;
}

.road_item:nth-of-type(3) {
  left: 63%;
}

.road_item:nth-of-type(4) {
  top: 0;
  left: 30%;
}

.road_item:nth-of-type(5) {
  top: 0;
  left: 48%;
}

.road_item:nth-of-type(6) {
  top: 0;
  left: 66%;
}

.road_item .road_item_text {
  text-align: center;
  position: absolute;
  white-space: nowrap;
  top: -26px;
  left: 29%;
}

.road_item:nth-of-type(2) .road_item_text {
  text-align: center;
  position: absolute;
  white-space: normal;
  top: -44px;
  left: 30px;
}

.road_item:nth-of-type(3) .road_item_text {
  position: absolute;
  white-space: nowrap;
  bottom: 100px;
  left: 30%;
}

.road_item:nth-of-type(4) .road_item_text {
  position: absolute;
  text-align: center;
  white-space: normal;
  width: 185px;
  left: -22%;
  top: 99px;
}

.road_item:nth-of-type(5) .road_item_text {
  position: absolute;
  white-space: normal;
  width: 185px;
  left: -24%;
  top: 99px;
}

.road_item:nth-of-type(6) .road_item_text {
  position: absolute;
  white-space: nowrap;
  left: 44%;
  top: 103px;
}

/*============End road============*/

/*============Numbers section============*/
section.numbers {
  padding-top: 50px;
  padding-bottom: 100px;
}

.numbers_wrap {
  margin: 0 103px;
  padding: 30px 144px 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.numbers_title_h2 {
  color: var(--blue);
  font-size: 28px;
  text-align: center;
  display: block;
  margin-bottom: 44px;
}

.any_number_wrap {
  margin: 0 30px 24px;
  text-align: center;
  font-weight: 700;
}

.any_number {
  font-size: 72px;
  line-height: 108%;
  margin-bottom: 8px;
}

.any_number_slash {
  font-size: 16px;
  line-height: 17px;
  margin-top: 50px;
  color: var(--grey);
}
/*============END numbers section============ */

/*============Contact-form============ */
.contact-form {
  margin-top: 17px;
  padding: 24px 10px;
  border: solid 2px var(--bl-64);
}

.contact-form-wrap {
  position: relative;
  text-align: center;
  max-width: 786px;
  margin: 0 auto;
}

#form-contact-form::before {
  display: block;
  content: " ";
  margin-top: -160px;
  height: 160px;
  visibility: hidden;
}

@media screen and (max-width: 1200px) {
  #form-contact-form::before {
    margin-top: -135px;
    height: 135px;
  }
}

@media screen and (max-width: 767px) {
  #form-contact-form::before {
    margin-top: -110px;
    height: 110px;
  }
}

.contact-form-bottom {
  display: flex;
  justify-content: space-between;
  padding: 0 14px;
  flex-wrap: wrap;
  column-gap: 15px;
  row-gap: 0;
}

.contact-form-item input {
  box-sizing: border-box;
  width: 100%;
  border: none;
  background-color: transparent;
  padding-bottom: 6px;
  outline: none;
  border-bottom: solid 2px var(--bl-64);
}

.contact-form-item .validation-error-message {
  visibility: hidden;
  height: 15px;
  padding-top: 4px;
  font-size: 0.8em;
  font-weight: normal;
  color: #dc4935;
  text-align: left;
}

.contact-form-item.invalid .validation-error-message {
  visibility: visible;
}

.contact-form-item.invalid input {
  border-bottom: solid 2px #dc4935;
  color: #dc4935;
}

.contact-form-item-wrap {
  margin-bottom: 14px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

.contact-form-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin: 0 14px;
}

.contact-form-item_agreement {
  margin: 0;
  text-align: left;
  padding-bottom: 0;
}

.contact-form-item-wrap > div {
  flex-grow: 1;
}

.contact-form-item {
  position: relative;
  padding-bottom: 10px;
  background-color: transparent;
}

.contact-form-item_tel label {
  width: 45px;
  position: absolute;
  left: -13px;
}

.contact-form-item_tel input {
  padding-left: 18px;
}

.section_contact {
  padding-top: 100px;
  padding-bottom: 150px;
  height: auto;
}

.contact-form-button {
  display: flex;
  border: none;
  background-color: transparent;
  color: var(--blue);
  margin-left: auto;
  cursor: pointer;
}

.contact-form-button:disabled {
  opacity: 0.5;
}

.contact-form-button_arrow {
  margin-left: 12px;
}

@keyframes fade {
  0% {
    left: -100%;
    opacity: 0;
  }
  15% {
    left: 30px;
    opacity: 1;
  }
  85% {
    left: 30px;
    opacity: 1;
  }
  100% {
    left: -100%;
    opacity: 0;
  }
}

.contact-form-message {
  position: fixed;
  visibility: hidden;
  bottom: 30px;
  left: -100%;
  border: solid 2px;
  color: black;
  border-radius: 6px;
  padding: 16px;
  z-index: 2;
}

.contact-form-message.success {
  border-color: #a3c76e;
  background-color: #f0fae4;
}

.contact-form-message.error {
  border-color: #f5c2c2;
  background-color: #fff0ed;
}

.contact-form-message.visible {
  visibility: visible;
  animation: fade 4s;
}

/*============End contact-form============ */

/*========banner CMS===========*/

.banner_row {
  display: flex;
  position: relative;
  justify-content: center;
  padding-top: 150px;
}

.banner_img {
  vertical-align: bottom;
}

.banner_txt {
  margin-right: 7.43%;
  width: 400px;
  font-weight: 700;
  font-size: 16px;
  line-height: 108%;
  color: var(--bl);
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-bottom: 40px;
}

.line_wrap .line_object {
  bottom: 4px;
  right: 147px;
}

.button-wrapper_cms {
  width: 212px;
}

.banner_desc {
  text-align: left;
  margin: 19px 0 26px 0;
}

.banner_txt .title_h2 {
  text-align: left;
}

/*========End banner CMS===========*/

/*========way===========*/
.about_way {
  padding-top: 122px;
  padding-bottom: 160px;
  text-align: center;
  background-color: #fff;
}

.block_way {
  position: relative;
  display: flex;
  justify-content: space-around;
  flex-direction: row;
  max-width: 740px;
  margin: 0 auto;
  text-align: left;
}

.way_step {
  max-width: 295px;
}

@media (max-width: 992px) {
  .block_way {
    flex-wrap: wrap;
  }
}

.way_icon {
  position: absolute;
  top: -38px;
  left: -34px;
  background-color: #fff;
  z-index: 2;
}

.way_img {
  margin-left: 112px;
}

.way_icon_right_bottom {
  position: absolute;
  bottom: -38px;
  right: -34px;
  background-color: #fff;
  z-index: 2;
}

.way_icon_left_bottom {
  position: absolute;
  bottom: -38px;
  left: -34px;
  background-color: #fff;
  z-index: 2;
}

.way_arrow_top {
  position: absolute;
  top: -15px;
  left: 140px;
  z-index: 2;
}

.way_arrow_right {
  position: absolute;
  bottom: 20px;
  right: -10px;
  transform: rotate(90deg);
  z-index: 2;
}

.way_arrow_bottom {
  position: absolute;
  bottom: -15px;
  left: 140px;
  transform: rotate(180deg);
  z-index: 2;
}

.way_arrow_top_step3 {
  position: absolute;
  top: -15px;
  left: 264px;
  z-index: 2;
}

.way_arrow_bottom_step3 {
  position: absolute;
  bottom: -15px;
  right: 47px;
  transform: rotate(180deg);
  z-index: 2;
}

.way_arrow_top_step4 {
  position: absolute;
  top: -15px;
  right: 112px;
  z-index: 2;
}

.way_arrow_bottom_step4 {
  position: absolute;
  bottom: -15px;
  left: 42px;
  transform: rotate(180deg);
  z-index: 2;
}

.way_arrow_right_step6 {
  position: absolute;
  bottom: 170px;
  right: -10px;
  transform: rotate(90deg);
  z-index: 2;
}

.way_arrow_bottom_step6 {
  position: absolute;
  bottom: -15px;
  left: 260px;
  transform: rotate(180deg);
  z-index: 2;
}

.way_arrow_img_step {
  position: absolute;
  bottom: 150px;
  left: -10px;
  transform: rotate(90deg);
  z-index: 2;
}

.about_way .bordered-top-right-bottom {
  padding: 40px;
  border-top: dashed 2px #000;
  border-right: dashed 2px #000;
  border-bottom: dashed 2px #000;
  border-image-source: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' stroke='%23333' stroke-width='5' stroke-dasharray='10%2c 15' stroke-dashoffset='5' stroke-linecap='square'/%3e%3c/svg%3e");
  border-image-slice: 2;
  border-image-repeat: round;
  border-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' stroke='%23333' stroke-width='5' stroke-dasharray='10%2c 15' stroke-dashoffset='5' stroke-linecap='square'/%3e%3c/svg%3e")
    2 round;
}

.about_way .bordered-left {
  padding: 40px;
  border-left: dashed 2px #000;
  border-image-source: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' stroke='%23333' stroke-width='5' stroke-dasharray='10%2c 15' stroke-dashoffset='5' stroke-linecap='square'/%3e%3c/svg%3e");
  border-image-slice: 2;
  border-image-repeat: round;
  border-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' stroke='%23333' stroke-width='5' stroke-dasharray='10%2c 15' stroke-dashoffset='5' stroke-linecap='square'/%3e%3c/svg%3e")
    2 round;
}

.about_way .largeGaps {
  border-image-source: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' stroke='%23333' stroke-width='5' stroke-dasharray='10%2c 15' stroke-dashoffset='5' stroke-linecap='square'/%3e%3c/svg%3e");
}

.title_way {
  max-width: 902px;
  margin-bottom: 93px;
}

.one_column_way .way_step {
  max-width: none;
}

.one_column_way .block_way {
  flex-direction: column;
}

.one_column_way .block_way .way_step:nth-of-type(2n + 1),
.one_column_way .way_step_first {
  margin-bottom: 40px;
}

/*========end way===========*/

/*============classes modificators===========*/

.about_platform .about_platform_one_column {
  flex-direction: column;
  align-items: center;
}

.features .items_wrap_one_column {
  grid-template-columns: repeat(1, 1fr);
  grid-gap: 5px 40px;
  max-width: 500px;
}

.container_medium_items_one_column .container_medium_item {
  flex-direction: column;
  max-width: 500px;
}

.container_medium_items_one_column .container_medium_item img {
  margin-bottom: 15px;
}

/*============End classes modificators===========*/

/*========custom checkbox===========*/

#contact-form-agreement {
  position: absolute;
  z-index: -1;
  opacity: 0;
}

#contact-form-agreement + label {
  font-weight: normal;
  display: flex;
}

#contact-form-agreement + label::before {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  flex-shrink: 0;
  flex-grow: 0;
  border: 1px solid #aba9ad;
  border-radius: 5px;
  margin-right: 0.5em;
  background-repeat: no-repeat;
  background-position: center center;
  vertical-align: text-top;
  cursor: pointer;
}

#contact-form-agreement + label a {
  color: #553998;
  border-bottom: 1.4px solid #553998;
}

#contact-form-agreement + label a:hover {
  color: #7e68c2;
  border-color: #7e68c2;
}

.contact-form-item.invalid #contact-form-agreement + label::before {
  border-color: #dc4935;
}

#contact-form-agreement:checked + label::before {
  border-color: #7e68c2;
  background-color: #7e68c2;
  background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='10' viewBox='0 0 14 10' fill='none'><path d='M5.79288 9.59407L5.77107 9.61588L0.326263 4.17107L2.0992 2.39813L5.79295 6.09188L11.7008 0.184032L13.4737 1.95697L5.81475 9.61595L5.79288 9.59407Z' fill='white'/></svg>");
}

#contact-form-agreement:focus + label::before {
  border-color: #7e68c2;
  box-shadow: 0px 0px 4.95px 0px #7e68c2;
}

.contact-form-item.invalid #contact-form-agreement:focus + label::before {
  border-color: #dc4935;
  box-shadow: 0px 0px 0px 4.95px rgba(220, 53, 69, 0.5);
}

#contact-form-agreement:disabled + label::before {
  border-color: #aba9ad;
}

#contact-form-agreement:disabled + label {
  opacity: 0.5;
}

/*========End custom checkbox===========*/

/*========Start board-with-list===========*/
.board_wrapper {
  max-width: 498px;
  width: 100%;
}

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

.board_with_list,
.board_list {
  border-style: solid;
  border-color: black;
}

.board_with_list {
  display: flex;
  border-width: 2px;
  height: 100%;
}

.board_images_block {
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
  width: 50%;
}

.image_wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  max-height: calc(50% - 33px);
  height: 100%;
}

.board_with_list.list_on_left .board_images_block {
  order: 1;
}

.board_separator {
  text-align: center;
  background: black;
  color: white;
  padding-block: 23px;
}

.main_separator_wrapper {
  align-self: center;
  flex-grow: 1;
  min-width: 140px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.main_separator_arrow {
  display: inline-block;
  background-color: var(--bl);
  height: 3px;
  width: 60%;
  align-self: center;
  position: relative;
}

.main_separator_arrow.mirror {
  rotate: 180deg;
}

.main_separator_arrow::after,
.main_separator_arrow::before {
  content: "";
  background: var(--bl);
  position: absolute;
  height: 3px;
  width: 10px;
}

.main_separator_arrow::before {
  right: -2px;
  bottom: -3px;
  transform: rotate(-45deg);
}

.main_separator_arrow::after {
  right: -2px;
  top: -3px;
  transform: rotate(45deg);
}

.board_list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  position: relative;
  border-width: 0;
  border-left-width: 2px;
  padding: 32px 5px 16px;
  width: 50%;
}

.list_on_left .board_list {
  border-left-width: 0;
  border-right-width: 2px;
}

.list_wrapper {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: min-content;
  align-self: center;
}

.list_item {
  display: flex;
  align-items: center;
}

.list_title {
  text-align: center;
}

.board_title {
  position: absolute;
  top: -18px;
  left: calc(50%);
  transform: translateX(-50%);
  padding: 8px 24px;
  max-width: 75%;
  width: max-content;
  background: var(--bl-64);
  color: var(--wh);
  text-align: center;
}

.board_icon {
  display: block;
  min-height: 125px;
  max-height: 95%;
  object-fit: contain;
}

.list_item .container_item_text {
  color: var(--bl-64);
}

a > .container_item_text:hover {
  color: var(--blue);
}

@media screen and (max-width: 990px) {
  .block_services {
    flex-direction: column;
    align-items: center;
    gap: 36px;
  }

  .main_separator_wrapper {
    flex-direction: row;
    gap: unset;
  }

  .main_separator_arrow {
    width: 117px;
    rotate: 90deg;
  }

  .main_separator_arrow.mirror {
    rotate: -90deg;
  }

  .board_separator.main_separator {
    max-width: 172px;
    width: 100%;
  }
}

@media screen and (max-width: 480px) {
  .image_wrapper {
    max-height: calc(50% - 23px);
  }

  .list_wrapper {
    gap: 10px;
  }

  .board_separator {
    padding-block: 14px;
  }

  .block_services {
    font-size: 14px;
    padding-top: 16px;
  }

  .container_item_icon {
    width: 24px;
    height: 24px;
    margin-right: 12px;
  }

  .board_icon {
    margin: 15px;
    align-self: center;
  }
}

/*========End board-with-list===========*/

/*========Start carousel===========*/

.mySwiper.swiper {
  padding-top: 30px;
  padding-bottom: 60px;
}

.mySwiperBlack.swiper {
  position: relative;    
  background: var(--black-400);
  width: 100%;
  max-width: 1580px;
  padding-left: 2rem;
  padding-right: 2rem;
  padding-bottom: 30px !important;
  max-height: 424px;
  min-height: 240px;
  overflow: hidden;
}

.mySwiper .swiper-slide {
  display: flex;
  box-sizing: border-box;
  height: auto;
  padding-left: 20px;
  padding-right: 20px;
}

.swiper-slide-top {
  position: relative;
  height: auto;
  max-height: 400px;
  width: 100%;
  max-width: 1520px;
  min-height: 240px;
  overflow: hidden;
}

.mySwiperBlack .swiper-slide-active {
  padding-left: 0px;
}

.mySwiperBlack .swiper-slide-next {
  padding-right: 0px;
}

.mySwiper .swiper-slide-active {
  padding-left: 50px;
}

.mySwiper .swiper-slide-next {
  padding-right: 50px;
}

.mySwiper .swiper-pagination {
  display: flex;
  justify-content: center;
  gap: 30px;
  margin-top: 20px;
}

.mySwiper .swiper-pagination-bullet {
  width: 30px;
  height: 6px;
  border-radius: 0;
  opacity: 1;
  background: var(--grey);
  transition: 0.3s;
}

.mySwiper .swiper-pagination-bullet-active,
.mySwiper .swiper-pagination-bullet:hover {
  background: var(--bl-64);
}

.mySwiper .swiper-button-next,
.swiper-button-prev {
  color: var(--grey);
}

.mySwiperBlack .swiper-button-next {
    right: 8px !important;
    z-index: 1;
}

.mySwiperBlack .swiper-button-prev {
    left: 8px !important;
    z-index: 1;
}


.mySwiper_one-item .swiper-slide {
  padding: 0 50px;
  width: 100%;
}

@media screen and (max-width: 1199px) {
  .mySwiper .swiper-slide {
    padding: 0 50px;
  }
}

@media screen and (min-width: 1200px) {
  .mySwiper .swiper-slide {
    width: 50%;
  }

  .mySwiper_one-item .swiper-button-next {
    right: calc(50% - 320px);
  }

  .mySwiper_one-item .swiper-button-prev {
    left: calc(50% - 320px);
  }
}

@media screen and (max-width: 1199px) and (min-width: 667px) {
  .mySwiper .swiper-button-next {
    right: calc(50% - 320px);
  }

  .mySwiper .swiper-button-prev {
    left: calc(50% - 320px);
  }
}

@media screen and (max-width: 481px) {
  .mySwiper .swiper {
    padding-top: 10px;
    padding-bottom: 40px;
  }

  .mySwiper_one-item .swiper-slide,
  .mySwiper .swiper-slide {
    padding: 0 35px;
  }

  .mySwiper .swiper-pagination {
    gap: 10px;
  }

  :root {
    --swiper-navigation-size: 30px;
  }
}

/*========Start banner-link===========*/

/*========End carousel===========*/
@media (min-width: 992px) and (max-width: 1200px) {
  .container {
    max-width: 90%;
  }
}

@media (min-width: 1025px) and (max-width: 1200px) {
  .infrastructure_desc {
    padding: 14px 0 0;
  }

  .numbers_wrap {
    padding: 30px 26px 0;
  }

  .line_wrap .line_object {
    bottom: 4px;
    right: 37px;
  }
}

@media (min-width: 1025px) {
  h2,
  .main_title {
    max-width: inherit;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .about_way .container {
    max-width: 672px;
  }

  .author {
    padding-top: 15px;
    font-size: 25px;
  }

  .quote {
    bottom: -300px;
  }

  .quote_text {
    font-size: 23px;
    line-height: 23.24px;
    letter-spacing: 2.3px;
  }

  .quotation_marks {
    font-size: 48px;
  }

  .line_object {
    display: none;
  }

  .infrastructure_desc {
    padding: 14px 0 0;
  }

  .numbers_wrap {
    margin: 0;
    padding: 30px 0 0;
  }

  .way_step {
    padding: 2px;
  }

  .way_img {
    margin-left: 84px;
  }

  a.header_logo {
    width: 120px;
  }

  .footer_logo {
    width: 120px;
  }
}

@media (max-width: 936px) {
  .road_item:nth-of-type(4) .road_item_text {
    width: 144px;
  }

  .road_item:nth-of-type(5) .road_item_text {
    width: 144px;
    left: 0;
    white-space: normal;
    text-align: center;
  }

  .contact-form-wrap {
    max-width: 90vw;
  }
}

@media (max-width: 700px) {
  .road_item:nth-of-type(3) .road_item_text {
    left: 36%;
  }

  .road_item:nth-of-type(1) .road_item_text {
    left: 8%;
  }

  .road_item {
    left: 7%;
  }

  .road_item:nth-of-type(2) {
    left: 36%;
  }

  .road_item:nth-of-type(3) {
    left: 66%;
  }

  .road_item:nth-of-type(4) {
    left: 13%;
  }

  .road_item:nth-of-type(5) {
    left: 42%;
  }

  .road_item:nth-of-type(6) {
    left: 72%;
  }

  .contact-form-item-wrap {
    flex-direction: column;
    align-items: stretch;
  }
}

@media (min-width: 481px) and (max-width: 767px) {
  .container {
    max-width: 90%;
  }

  .section_contact {
    height: auto;
  }

  .title {
    font-size: 40px;
    line-height: 46.88px;
    letter-spacing: 4px;
  }

  .author {
    padding-top: 15px;
    font-size: 25px;
  }

  .block {
    flex-direction: column;
    width: 100%;
    align-items: center;
  }

  .wrapper-text {
    max-width: 100%;
    text-align: center;
  }

  .items_wrap {
    grid-template-columns: 1fr;
    grid-gap: 20px;
  }

  .quote {
    bottom: -210px;
  }

  .quote_text {
    font-size: 16px;
    letter-spacing: 1.6px;
    line-height: 19px;
    padding: 0 12px;
  }

  .quotation_marks {
    font-size: 34px;
  }

  .banner.features {
    padding-bottom: 230px;
  }

  .container_medium_item {
    flex-direction: column;
  }

  .container_medium_text {
    margin-top: 20px;
  }

  .line_object {
    display: none;
  }

  .infrastructure_desc {
    flex-direction: column;
    padding: 20px 0 0;
  }

  section.services_project {
    padding: 100px 0px 0px;
  }

  .project_wrap .title_h3 {
    padding: 0 30px;
  }

  .project_wrap {
    padding: 30px 0;
  }

  .services_project_row {
    padding: 0;
  }

  .numbers .container_XL {
    max-width: 80vw;
  }

  .numbers_wrap {
    margin: 0;
    padding: 30px 0 0;
  }
  .any_number_slash {
    margin-top: 35px;
  }

  .any_number_wrap {
    margin: 0 3% 12px;
  }

  .any_number_txt {
    max-width: 150px;
  }

  .any_number {
    font-size: 56px;
  }

  .footer_logo {
    display: none;
  }

  a.header_logo {
    width: 86px;
  }

  .footer_address {
    margin-bottom: 10px;
    text-align: center;
  }

  .footer .wrapper-flex {
    flex-direction: column;
  }

  .way_img {
    margin-left: 84px;
  }

  .about_way .container {
    max-width: 400px;
  }

  .way_step .title_h3 {
    margin-top: 20px;
    margin-top: 20px;
  }
}

@media (min-width: 481px) and (max-width: 580px) {
  .any_number {
    font-size: 24px;
  }

  .any_number_txt {
    max-width: 135px;
  }

  .any_number_wrap {
    margin: 0 1% 12px;
  }

  .any_number_slash {
    margin-top: 15px;
  }

  .container_medium_item img {
    max-width: 96%;
  }

  .flex-container_2col {
    flex-direction: column;
    padding-top: 20px;
  }

  .flex-container_2col div {
    max-width: 100%;
    padding-top: 0;
  }

  .flex-container_3col {
    flex-direction: column;
  }

  .flex-container_3col div {
    max-width: 100%;
    padding-top: 20px;
  }
}

@media (max-width: 480px) {
  .container_medium_item img {
    max-width: 96%;
  }

  .flex-container_2col {
    flex-direction: column;
    padding-top: 20px;
  }

  .flex-container_2col div {
    max-width: 100%;
    padding-top: 0;
  }

  .flex-container_3col {
    flex-direction: column;
  }

  .flex-container_3col div {
    max-width: 100%;
    padding-top: 20px;
  }

  .container_item_card img {
    display: none;
  }

  ul.item_card_list {
    padding-left: 20px;
  }

  .title {
    font-size: 35px;
    line-height: 42.88px;
    letter-spacing: 3.6px;
  }

  .title_platform {
    font-size: 35px;
  }

  .main_menu {
    text-align: right;
    flex-direction: column;
  }

  .items_wrap {
    grid-template-columns: 1fr;
    grid-gap: 20px;
  }

  .block {
    flex-direction: column;
    width: 100%;
    align-items: center;
  }

  .wrapper-text {
    max-width: 100%;
    text-align: center;
  }

  .wrapper-text h3 {
    font-size: 22px;
  }

  .quote {
    bottom: -210px;
  }

  .quote_text {
    font-size: 15px;
    letter-spacing: 1.6px;
    line-height: 15px;
    padding: 0 8px;
  }

  .quotation_marks {
    font-weight: 400;
    font-size: 22px;
  }

  .features {
    padding-bottom: 230px;
  }

  .container_medium_item {
    flex-direction: column;
  }

  .services_project_row {
    flex-direction: column;
  }

  .container_medium_text {
    margin-top: 20px;
    margin-left: 0;
  }

  .line_object {
    display: none;
  }

  .infrastructure_desc {
    flex-direction: column;
    padding: 20px 0 0;
  }

  .author {
    padding-top: 15px;
    font-size: 18px;
  }

  .author img {
    height: 10px;
  }

  .wrapper_grid {
    grid-gap: 15px;
  }

  .the_services .container {
    width: 80vw;
  }

  .the_services {
    padding-bottom: 56px;
  }

  .project_wrap .title_h3 {
    padding: 0 30px;
  }

  .project_wrap {
    padding: 30px 0;
  }

  .services_project_row {
    padding: 0;
  }

  .numbers_title_h2 {
    margin-bottom: 17px;
  }

  .numbers .container_XL {
    max-width: 90vw;
  }

  .numbers_wrap {
    margin: 0;
    padding: 30px 0 0;
  }

  .any_number_slash {
    display: none;
  }

  .any_number_wrap {
    margin: 0 1% 12px;
  }

  .any_number_txt {
    max-width: 150px;
  }

  .any_number {
    font-size: 24px;
  }

  .footer_logo {
    display: none;
  }

  .footer_address {
    margin-bottom: 10px;
    text-align: center;
  }

  .footer .wrapper-flex {
    flex-direction: column;
  }

  .cards_one_column {
    flex-direction: row;
    max-width: 100%;
  }

  .project_wrap h3 {
    padding: 0 34px;
  }

  /*=============part 2 ===============*/
  .banner_img {
    display: none;
  }

  .button-wrapper_cms {
    margin: 0 auto;
  }

  .banner_txt {
    margin-right: 0;
  }

  .way_step .title_h3 {
    margin-top: 20px;
    font-size: 22px;
  }

  .title_way {
    font-size: 28px;
    line-height: 32px;
  }

  .way_arrow_top_step3 {
    left: 171px;
  }
  .way_arrow_img_step {
    bottom: 84px;
  }

  .way_img {
    margin-left: 84px;
  }
  /*==================end part 2============*/
}

@media (max-width: 420px) {
  .road_item:nth-of-type(3) .road_item_text {
    white-space: initial;
    max-width: 50px;
    left: 63%;
    top: -42px;
  }
}

.top-banner-img {
  width: 95%;
  max-width: 1400px;
  margin: auto;
  display: block;
  object-fit: cover;
  object-position: top;
  max-height: 400px;
  z-index: 2;
}

.top-banner-title {
  position: absolute;
  z-index: 3;
  display: inline-block;
  color: white;
  top: 12%;
  left: 7%;
  max-width: 40%;
  max-height: 40%;
  font-weight: 700;
  margin-bottom: 1.25rem;
  font-size: 2.5em;
  margin-inline: auto;
  line-height: 1.1;
}

.top-banner-button {
  position: absolute;
  z-index: 3;
  color: var(--purple-400) !important;
  background: white !important;
  bottom: 20%;
  left: 7%;
  max-width: 35%;
  border: 2px solid white !important;
}

@media (max-width: 1520px) {
    
.top-banner-title {
  position: absolute;
  z-index: 3;
  display: inline-block;
  color: white;
  top: 12%;
  left: 7%;
  max-width: 45%;
  max-height: 60%;
  font-weight: 700;
  margin-bottom: 1.25rem;
  font-size: 2.1em;
  margin-inline: auto;
  line-height: 1.1;
}

}

@media (max-width: 1024px) {
    
.top-banner-title {
  position: absolute;
  z-index: 3;
  display: inline-block;
  color: white;
  top: 12%;
  left: 7%;
  max-width: 45%;
  max-height: 60%;
  font-weight: 700;
  margin-bottom: 1.25rem;
  font-size: 1.6em;
  margin-inline: auto;
  line-height: 1.1;
}

}

@media (max-width: 760px) {

.top-banner-title {
  position: absolute;
  z-index: 3;
  display: inline-block;
  color: white;
  top: 12%;
  left: 7%;
  max-width: 70%;
  max-height: 60%;
  font-weight: 700;
  margin-bottom: 1.25rem;
  font-size: 1.4em;
  margin-inline: auto;
  line-height: 1.1;
}

.top-banner-img {
  width: auto;
  margin: auto;
  display: block;
  object-fit: cover;
  object-position: top;
  max-height: 300px;
  z-index: 2;
  overflow: hidden;
}

.top-banner-button {
  position: absolute;
  z-index: 3;
  color: var(--purple-400) !important;
  background: white !important;
  bottom: 10%;
  left: 7%;
  max-width: 100%;
  border: 2px solid white !important;
}
    
}

.swiper-pagination {
    position: absolute;
    bottom: 0px !important;
    z-index: -1;
}

.mySwiperBlack .swiper-pagination-bullet {
  background: var(--grey);
}

.mySwiperBlack .swiper-pagination-bullet-active,
.mySwiperBlack .swiper-pagination-bullet:hover {
  background: var(--purple-400);
}

.top-slider-container {
  padding-left: 0px !important;
  padding-right: 0px !important;
  padding-top: 7rem !important;
  padding-bottom: 1rem !important;
  position: relative;
  max-width: 1560px !important;
}

.top-slider-section {
  width: 100% !important;
}