@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500&display=swap");
:root {
  --color_primary: #20baba;
  --color_secondary: #126a6a;
  --color_selection: 18, 106, 106;
}

html, body {
  scroll-behavior: smooth;
  cursor: default;
  font-family: "Roboto", sans-serif;
  color: #1A1A1A;
}
@media screen and (max-width: 400px) {
  html, body {
    font-size: 90%;
  }
}

::selection {
  background-color: rgba(var(--color_selection), 0.3);
}

a {
  display: block;
  text-decoration: none;
}

.font_roboto {
  font-family: "Roboto", sans-serif;
}

.text_2xs {
  font-size: 0.65rem !important;
}

.text_xs {
  font-size: 0.75rem !important;
}

.text_sm {
  font-size: 0.9rem !important;
}

.text_base {
  font-size: 1rem !important;
}

.text_lg {
  font-size: 1.125rem !important;
}

.text_xl {
  font-size: 1.25rem !important;
}

.text_2xl {
  font-size: 1.3rem !important;
}

.text_3xl {
  font-size: 1.5rem;
}

.text_4xl {
  font-size: 1.8rem;
}

.text_6xl {
  font-size: 3.75rem;
}

.font_light {
  font-weight: 300;
}

.font_medium {
  font-weight: 500;
}

.font_semiBold {
  font-weight: 600;
}

.font_bold {
  font-weight: bold;
}

.bg_primary {
  background: var(--color_primary);
}

.bg_secondary {
  background: var(--color_secondary);
}

.bg_white {
  background: #FFFFFF;
}

.bg_silver {
  background: #dee2e6;
}

.text_primary {
  color: var(--color_primary);
}

.text_secondary {
  color: var(--color_secondary);
}

.text_silver {
  color: #dee2e6 !important;
}

.text_silver02 {
  color: #ccc !important;
}

.cursor_pointer {
  cursor: pointer;
}

.box_shadow {
  box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.2);
}

.transition {
  transition: ease-in-out 0.125s;
}

.left_0 {
  left: 0;
}

.right_0 {
  right: 0;
}

.line_height_normal {
  line-height: normal;
}

.center_X {
  left: 50%;
  transform: translate(-50%, 0);
}

.center_Y {
  top: 50%;
  transform: translateY(-50%);
}

.position_center_XY {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.flex_1 {
  flex: 1;
}

.text_limit {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

.object_cover {
  object-fit: cover;
}

.card_offer_img {
  height: 13rem;
  width: 20rem;
}
@media screen and (max-width: 991px) {
  .card_offer_img {
    width: 100%;
    height: 16rem;
  }
}

.a_hover_primary:hover {
  opacity: 0.8;
  color: #20baba !important;
}

.header_right {
  width: 18rem;
}
@media screen and (max-width: 575px) {
  .header_right {
    width: 100%;
  }
}

.modal .btn-close:focus {
  box-shadow: none !important;
}

.btn:focus {
  box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.2);
}
.btn:hover {
  box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.3) !important;
}

.shadow_hover {
  transition: ease-in-out 0.125s !important;
}
.shadow_hover:hover {
  background-color: #eee !important;
}

.btn_active_none:active {
  box-shadow: none !important;
}

.swiper-button-next, .swiper-button-prev {
  height: 2rem !important;
  margin-top: 0 !important;
  transform: translateY(-50%) !important;
}

.swiper-button-next:after, .swiper-button-prev:after {
  font-size: 1.1rem !important;
  color: #FFF;
}

.modal_body_gallery_top .swiper-slide {
  height: 520px !important;
}
@media screen and (max-width: 767px) {
  .modal_body_gallery_top .swiper-slide {
    height: 350px !important;
  }
}
@media screen and (max-width: 450px) {
  .modal_body_gallery_top .swiper-slide {
    height: 300px !important;
  }
}
.modal_body_gallery_top .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.modal_body_gallery_top .swiper-button-next, .modal_body_gallery_top .swiper-button-prev {
  height: 100% !important;
  margin-top: unset !important;
  padding: 0 0.8rem;
  width: unset !important;
}
.modal_body_gallery_top .swiper-button-next:after, .modal_body_gallery_top .swiper-button-prev:after {
  content: "" !important;
}
.modal_body_gallery_top .swiper-button-next span, .modal_body_gallery_top .swiper-button-prev span {
  width: 2.5rem;
  height: 2.5rem;
  background-color: #FFFFFF;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #000000;
}
.modal_body_gallery_top .swiper-button-next {
  right: 0 !important;
}
.modal_body_gallery_top .swiper-button-prev {
  left: 0 !important;
}

.modal_body_gallery_thumbs .swiper-slide {
  height: 120px !important;
}
@media screen and (max-width: 767px) {
  .modal_body_gallery_thumbs .swiper-slide {
    height: 80px !important;
  }
}
@media screen and (max-width: 450px) {
  .modal_body_gallery_thumbs .swiper-slide {
    height: 55px !important;
  }
}
.modal_body_gallery_thumbs .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  cursor: pointer;
}

.custom_modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  width: 100%;
  height: 100%;
  overflow-y: auto;
  background-color: rgba(0, 0, 0, 0.3);
  opacity: 0;
  visibility: hidden;
  transition: ease-in-out 0.1s;
}
.custom_modal .modal_dialog {
  display: flex;
  align-items: center;
  flex-direction: column;
  max-width: 900px;
  margin: 2.5rem auto;
  min-height: calc(100% - 32.5rem);
  padding: 0 1.5rem;
}
@media screen and (max-width: 991px) {
  .custom_modal .modal_dialog {
    margin: 1.5rem auto;
  }
}
.custom_modal .modal_content {
  display: flex;
  flex-direction: column;
  pointer-events: auto;
  width: 100%;
  background-color: #FFF;
  position: relative;
  overflow: hidden;
  border-radius: 0.5rem;
}
.custom_modal .modal-close {
  cursor: pointer;
  font-size: 1.6rem;
  opacity: 0.7;
  transition: ease-in-out 0.125s;
}
.custom_modal .modal-close:hover {
  opacity: 1;
}
.custom_modal .modal_body_amenities .modal_body_amenities_item {
  padding: 0.3rem 0.8rem;
  margin: 0.2rem;
  border: 1px solid rgba(0, 0, 0, 0.1);
}
.custom_modal .modal_body_amenities .modal_body_amenities_item .modal_body_amenities_icon {
  font-size: 2.4rem;
  text-align: center;
}
.custom_modal .modal_body_amenities .modal_body_amenities_item .modal_body_amenities_label {
  font-size: 0.7rem;
  font-weight: 500;
  text-align: center;
}

.custom_modal.open {
  opacity: 1 !important;
  visibility: visible !important;
}

/*# sourceMappingURL=main.css.map */
