html {
  font-size: max(0.4vw, 8px);
  overflow-x: hidden;
  margin: 0 !important;
  padding: 0 !important;
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  font-style: normal;
}

textarea {
  resize: vertical;
}

div, ul, li {
  box-sizing: border-box;
}

a {
  text-decoration: none;
}

body {
  padding: 5rem 0;
  color: #121C44;
}

.mont {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

.container {
  margin: auto;
  width: 100%;
}
.container._a {
  max-width: min(214rem, 95%);
}
.container._a_b {
  max-width: 164rem;
}
.container._b {
  max-width: 150rem;
}
.container._c {
  max-width: 120rem;
}

.join_btn {
  font-size: 2.2em;
  font-weight: 700;
  display: flex;
  justify-content: center;
  border: none;
  border-radius: 2em;
  padding: 0.6em 3em;
  cursor: pointer;
  transition: background 0.5s;
  max-width: 12em;
}

.learn_more {
  display: flex;
  align-items: center;
  gap: 1em;
  font-size: 1.6em;
  color: #F59330;
  position: relative;
  width: 100%;
}
.learn_more ._title {
  opacity: 0;
  position: absolute;
  transition: opacity 0.6s ease 0.25s;
}
.learn_more ._icon {
  margin-left: 0;
  transition: margin 1s, color 0.6s;
  color: #194D54;
  font-size: 1.6em;
}
.learn_more:hover ._title {
  opacity: 1;
}
.learn_more:hover ._icon {
  margin-left: 6em;
  color: #F59330;
}

#cta_banner ._grid {
  display: grid;
  border-radius: 3em;
  overflow: hidden;
  grid-template-columns: 70em 1fr;
}
#cta_banner .image {
  width: 100%;
  height: 58em;
}
#cta_banner .image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
  width: 100%;
  -o-object-position: center;
     object-position: center;
}
#cta_banner .desc {
  padding: 7em 12em;
  display: flex;
  flex-direction: column;
  gap: 4em;
  color: #fff;
}
#cta_banner .desc h1 {
  font-size: 5em;
  line-height: 1.2;
  font-weight: 700;
}
#cta_banner .desc h1 p {
  margin: 0;
}
#cta_banner .desc > p {
  font-size: 3em;
}
#cta_banner .join_btn {
  margin-top: auto;
}
#cta_banner.hotels {
  margin-top: 20rem;
}
#cta_banner.hotels h1 {
  font-weight: 300;
}
#cta_banner.hotels h1 strong, #cta_banner.hotels h1 em {
  font-weight: 700;
}
#cta_banner.hotels .join_btn {
  background-color: #A9D9DE;
  color: #194D54;
}
#cta_banner.hotels .join_btn:hover {
  background: #F59330;
}
#cta_banner.hotels .desc {
  background-color: #194D54;
}

.top_banner {
  margin-top: -12em;
  color: #121C44;
  position: relative;
  z-index: 10;
}
.top_banner .wrapper {
  border-radius: 3em;
  background: #fff;
  box-shadow: rgba(0, 0, 0, 0.14) 0 0.3em 2.8em;
  display: grid;
  grid-template-columns: 55% 40%;
  gap: 2%;
}
.top_banner ._left {
  display: flex;
  flex-direction: column;
  gap: 2em;
  padding: 8em;
}
.top_banner h3 {
  margin: 0;
  font-size: 4.2em;
  font-weight: 700;
  line-height: 1.1;
  color: #121C44;
}
.top_banner h3 p {
  margin: 0;
}
.top_banner h3 strong, .top_banner h3 em {
  color: #F59330;
  font-weight: 700;
}
.top_banner ._desc {
  font-size: 2em;
  font-weight: 400;
  line-height: 1.4;
}
.top_banner ._right {
  width: 100%;
  padding: 4em;
}
.top_banner ._right img {
  width: 100%;
  height: auto;
}

._gr .mont {
  font-family: "Roboto", sans-serif;
}
._gr .join_btn {
  max-width: 15em;
  font-size: 2em;
}

.generic {
  margin-top: 10em;
}
.generic h1 {
  font-size: 3.6em;
  font-weight: 700;
}
.generic h2 {
  font-size: 2.8em;
  font-weight: 700;
  margin-top: 1em;
}
.generic h3 {
  font-size: 2.2em;
  font-weight: 700;
}
.generic .desc {
  display: flex;
  flex-direction: column;
  gap: 2em;
}
.generic p {
  font-size: 2em;
}

@media (max-aspect-ratio: 1.5) {
  html {
    font-size: max(0.6vw, 7px);
  }
  .container._a_b {
    max-width: 85%;
  }
  .container._b {
    max-width: 85%;
  }
}
@media (max-width: 1000px), (max-aspect-ratio: 1) {
  html {
    font-size: max(0.75vw, 8px);
  }
  body {
    padding: 0;
  }
  .container._a {
    max-width: 100%;
  }
  .top_banner .wrapper {
    grid-template-columns: 61% 37%;
  }
  .top_banner h3 {
    font-size: 3.2em;
  }
  .top_banner ._right {
    align-self: center;
    padding: 0;
    padding-right: 2em;
  }
  .top_banner ._left {
    padding: 6em 2em 6em 6em;
  }
}
@media (max-width: 1000px), (max-aspect-ratio: 0.7222222222) {
  .container._a_b {
    max-width: 92%;
  }
  .container._b {
    max-width: 92%;
  }
  .top_banner .wrapper {
    display: flex;
    flex-direction: column;
  }
  .top_banner ._right {
    align-self: center;
    padding: 4em;
  }
}
@media (max-width: 1000px), (max-aspect-ratio: 0.5777777778) {
  .top_banner h3 {
    font-size: 2.8em;
  }
  .top_banner ._left {
    padding: 4em;
  }
}/*# sourceMappingURL=general.css.map */