* {
  margin: 0;
  padding: 0; }

*,
*::before,
*::after {
  box-sizing: inherit; }

html {
  scroll-behavior: smooth; }

html,
body {
  box-sizing: border-box;
  font-family: "Lexend", "Mitr", sans-serif;
  font-size: 1rem;
  font-weight: 400;
  color: #0b0c11; }

body.offcanvas-active {
  overflow: hidden; }

a,
a:hover,
a:focus {
  color: inherit;
  text-decoration: none;
  cursor: pointer; }

::-webkit-scrollbar {
  width: 10px; }

::-webkit-scrollbar-track {
  background: #fff; }

::-webkit-scrollbar-thumb {
  background: rgba(11, 12, 17, 0.2);
  border-radius: 0; }

::-webkit-scrollbar-thumb:hover {
  background: #ff7f3f; }

@font-face {
  font-family: "Lexend Zetta";
  src: url("../fonts/LexendZetta/LexendZetta-Light.ttf");
  font-weight: 300; }

@font-face {
  font-family: "Lexend Zetta";
  src: url("../fonts/LexendZetta/LexendZetta-Regular.ttf");
  font-weight: 400; }

@font-face {
  font-family: "Lexend Zetta";
  src: url("../fonts/LexendZetta/LexendZetta-Medium.ttf");
  font-weight: 500; }

@font-face {
  font-family: "Lexend Zetta";
  src: url("../fonts/LexendZetta/LexendZetta-Bold.ttf");
  font-weight: 600; }

@font-face {
  font-family: "Lexend";
  src: url("../fonts/Lexend/Lexend-ExtraLight.ttf");
  font-weight: 200; }

@font-face {
  font-family: "Lexend";
  src: url("../fonts/Lexend/Lexend-Light.ttf");
  font-weight: 300; }

@font-face {
  font-family: "Lexend";
  src: url("../fonts/Lexend/Lexend-Regular.ttf");
  font-weight: 400; }

@font-face {
  font-family: "Lexend";
  src: url("../fonts/Lexend/Lexend-Medium.ttf");
  font-weight: 500; }

@font-face {
  font-family: "Lexend";
  src: url("../fonts/Lexend/Lexend-Bold.ttf");
  font-weight: 600; }

@font-face {
  font-family: "Mitr";
  src: url("../fonts/Mitr/Mitr-ExtraLight.ttf");
  font-weight: 200; }

@font-face {
  font-family: "Mitr";
  src: url("../fonts/Mitr/Mitr-Light.ttf");
  font-weight: 300; }

@font-face {
  font-family: "Mitr";
  src: url("../fonts/Mitr/Mitr-Regular.ttf");
  font-weight: 400; }

@font-face {
  font-family: "Mitr";
  src: url("../fonts/Mitr/Mitr-Medium.ttf");
  font-weight: 500; }

@font-face {
  font-family: "Mitr";
  src: url("../fonts/Mitr/Mitr-Bold.ttf");
  font-weight: 600; }

.line-clamp-1 {
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden; }

.line-clamp-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden; }

.line-clamp-3 {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden; }

.navbar-top {
  background-color: #0b0c11;
  padding: 0.4rem 0; }
  .navbar-top .navbar-top-nav {
    list-style-type: none;
    padding: 0;
    margin: 0; }
    .navbar-top .navbar-top-nav .nav-item {
      display: inline-block; }
      .navbar-top .navbar-top-nav .nav-item .nav-link {
        font-size: 0.874rem;
        font-weight: 300;
        color: #d8d8d8;
        letter-spacing: 1px; }
        .navbar-top .navbar-top-nav .nav-item .nav-link:hover {
          color: #f1f1f1; }

.navbar-main {
  background-color: #fff;
  height: 5.625rem;
  border-bottom: 1px solid transparent;
  padding: 0;
  transition: background-color 0.3s ease-in-out, height 0.4s ease-in-out;
  overflow: hidden;
  z-index: 2; }
  .navbar-main .navbar-brand--logo {
    max-width: 60px;
    border-radius: 50%;}
  .navbar-main .navbar-brand--title {
    font-size: 1.5rem;
    font-weight: 400;
    letter-spacing: 1px;
    color: #ff7f3f; }
  .navbar-main .navbar-brand--subtitle {
    font-size: 1.125rem;
    font-weight: 300;
    letter-spacing: 1px;
    color: #ff7f3f; }
  .navbar-main .navbar-nav .nav-item {
    margin-right: 2.875rem; }
    .navbar-main .navbar-nav .nav-item .nav-link {
      position: relative;
      font-size: 1rem;
      font-weight: 300;
      color: #0b0c11; }
      .navbar-main .navbar-nav .nav-item .nav-link::before {
        content: "";
        position: absolute;
        display: inline-block;
        left: 0;
        bottom: 0.6rem;
        background-color: #ff7f3f;
        width: 100%;
        height: 2px;
        opacity: 0;
        transform: scale(0);
        transition: bottom 0.3s ease-in-out, transform 0.2s ease-out, opacity 0.3s ease-in-out; }
      .navbar-main .navbar-nav .nav-item .nav-link:hover::before, .navbar-main .navbar-nav .nav-item .nav-link.active::before {
        content: "";
        bottom: 0;
        opacity: 1;
        transform: scale(1); }
      .navbar-main .navbar-nav .nav-item .nav-link.active {
        color: #ff7f3f; }
  .navbar-main.navbar-scroll {
    background: rgba(11, 12, 17, 0.6);
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    border-bottom: 1px solid transparent;
    height: 5.3125rem; }
    .navbar-main.navbar-scroll .navbar-nav .nav-item .nav-link {
      font-size: 1rem;
      font-weight: 300;
      color: #fff;
      transition: all 0.2s ease-in-out; }
      .navbar-main.navbar-scroll .navbar-nav .nav-item .nav-link.active {
        color: #ff7f3f;
        transition: color 0.2s ease-in-out; }
  @media all and (max-width: 991.98px) {
    .navbar-main {
      position: relative;
      background: #fff;
      padding: 2rem 0rem;
      height: 100%;
      border-bottom: none; }
      .navbar-main .offcanvas-header {
        margin: 1.5rem;
        position: absolute;
        display: block;
        top: 0;
        right: 0; }
      .navbar-main .navbar-brand--logo {
        max-width: 42px;
        border-radius: 50%;}
      .navbar-main .navbar-brand--title {
        font-size: 1.25rem; }
      .navbar-main .navbar-brand--subtitle {
        font-size: 1rem; }
      .navbar-main .navbar-nav {
        margin-top: 4rem;
        margin-bottom: 1rem; }
        .navbar-main .navbar-nav .nav-item:not(:last-child) {
          margin-right: 0rem; }
        .navbar-main .navbar-nav .nav-item .nav-link {
          position: relative;
          font-size: 1rem;
          font-weight: 300;
          padding: 1rem 1rem;
          transition: font-size 0.2s ease-in-out, color 0.3s ease-in-out; }
          .navbar-main .navbar-nav .nav-item .nav-link span {
            position: relative;
            z-index: 2; }
          .navbar-main .navbar-nav .nav-item .nav-link::before {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            width: 0%;
            height: 0%;
            background: white;
            background: linear-gradient(274deg, rgba(255, 255, 255, 0) 0%, rgba(199, 152, 60, 0.4) 100%);
            border-left: 4px solid #ff7f3f;
            z-index: 0;
            transition: width 0.5s ease-in-out; }
          .navbar-main .navbar-nav .nav-item .nav-link:hover {
            color: #ff7f3f; }
            .navbar-main .navbar-nav .nav-item .nav-link:hover::before {
              width: 100%;
              height: 100%; }
          .navbar-main .navbar-nav .nav-item .nav-link.active {
            background: white;
            background: linear-gradient(274deg, rgba(255, 255, 255, 0) 0%, rgba(199, 152, 60, 0.4) 100%);
            color: #ff7f3f;
            border-left: 4px solid #ff7f3f;
            transition: color 0.2s ease-in-out; }
      .navbar-main .btn {
        margin-left: 1rem; } }

.navbar-mobile {
  background-color: #fff;
  height: 5.625rem;
  padding: 0;
  transition: background-color 0.3s ease-in-out, height 0.4s ease-in-out;
  overflow: hidden;
  z-index: 2; }
  .navbar-mobile .navbar-brand--logo {
    max-width: 53px;
    border-radius: 50%;}
  .navbar-mobile .navbar-brand--title {
    font-size: 1.25rem;
    font-weight: 400;
    color: #ff7f3f; }
  .navbar-mobile .navbar-brand--subtitle {
    font-size: 1.125rem;
    font-weight: 400;
    letter-spacing: 1px;
    color: #ff7f3f; }
  .navbar-mobile .navbar-nav .nav-item .nav-link {
    font-size: 1.125rem;
    font-weight: 300; }
    .navbar-mobile .navbar-nav .nav-item .nav-link.active {
      color: #ff7f3f; }
  .navbar-mobile .btn-toggler span {
    display: block;
    width: 35px;
    height: 3px;
    background-color: #333;
    margin: 8px 0; }
  .navbar-mobile .btn-toggler:active, .navbar-mobile .btn-toggler:focus {
    outline: none !important;
    box-shadow: none !important; }
  .navbar-mobile.navbar-scroll {
    background: rgba(11, 12, 17, 0.6);
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    height: 4.3125rem; }
    .navbar-mobile.navbar-scroll .navbar-nav .nav-item .nav-link {
      font-size: 1rem;
      font-weight: 300;
      transition: font-size 0.2s ease-in-out; }
      .navbar-mobile.navbar-scroll .navbar-nav .nav-item .nav-link.active {
        color: #ff7f3f;
        transition: color 0.2s ease-in-out; }
    .navbar-mobile.navbar-scroll .btn-toggler span {
      background-color: #fff; }
  @media (max-width: 576px) {
    .navbar-mobile {
      height: 4.625rem; }
      .navbar-mobile .navbar-brand--logo {
        max-width: 36px;
        border-radius: 50%;}
      .navbar-mobile .navbar-brand--title {
        font-size: 1.125rem;
        font-weight: 400; }
      .navbar-mobile .navbar-brand--subtitle {
        font-size: 1rem;
        font-weight: 400;
        letter-spacing: 0.6px; }
      .navbar-mobile .btn-toggler span {
        width: 32px;
        height: 2px;
        margin: 7px 0; }
      .navbar-mobile.navbar-scroll {
        background: rgba(11, 12, 17, 0.6);
        -webkit-backdrop-filter: blur(4px);
        backdrop-filter: blur(4px);
        height: 4.3125rem; } }

.offcanvas-header {
  display: none; }

.screen-darken {
  height: 100%;
  width: 0%;
  z-index: 30;
  position: fixed;
  top: 0;
  right: 0;
  opacity: 0;
  visibility: hidden;
  background-color: rgba(34, 34, 34, 0.6);
  transition: opacity 0.2s linear, visibility 0.2s, width 2s ease-in; }

.screen-darken.active {
  z-index: 10;
  transition: opacity 0.3s ease, width 0s;
  opacity: 1;
  width: 100%;
  visibility: visible; }

@media (max-width: 575.98px) {
  .mobile-offcanvas {
    visibility: hidden;
    transform: translateX(-100%);
    border-radius: 0;
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 1200;
    overflow-y: auto;
    overflow-x: hidden;
    transition: visibility 0.3s ease-in-out, transform 0.3s ease-in-out; }
  .mobile-offcanvas.show {
    visibility: visible;
    transform: translateX(0); }
  .mobile-offcanvas .container,
  .mobile-offcanvas .container-fluid,
  .mobile-offcanvas .container-lg {
    display: block; } }

@media (min-width: 576px) and (max-width: 991px) {
  .mobile-offcanvas {
    visibility: hidden;
    transform: translateX(-100%);
    border-radius: 0;
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 60%;
    z-index: 1200;
    overflow-y: auto;
    overflow-x: hidden;
    transition: visibility 0.3s ease-in-out, transform 0.3s ease-in-out; }
  .mobile-offcanvas.show {
    visibility: visible;
    transform: translateX(0); }
  .mobile-offcanvas .container,
  .mobile-offcanvas .container-fluid,
  .mobile-offcanvas .container-lg {
    display: block; } }

.header-main {
  height: 34rem;
  background-image: url("../images/bg/bg-header-2.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center; }
  .header-main--head__title {
    font-size: 4rem;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: 0.4rem;
    color: #fff; }
  .header-main--breadcrumb .breadcrumb .breadcrumb-item {
    font-size: 1.5rem;
    font-weight: 400;
    color: #fff;
    letter-spacing: 0.1rem; }
    .header-main--breadcrumb .breadcrumb .breadcrumb-item.active {
      color: #ff7f3f; }
  @media (max-width: 575.98px) {
    .header-main {
      height: 20rem; }
      .header-main--head__title {
        font-size: 2.625rem;
        font-weight: 400;
        line-height: 1.5;
        letter-spacing: 0.3rem;
        color: #fff; } }

.footer {
  background-color: #0b0c11;
  padding-bottom: 1.375rem; }
  .footer-main {
    padding: 5.616rem 0rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
    .footer-main--company__brand {
      margin-bottom: 1.875rem; }
      .footer-main--company__brand--logo {
        max-width: 53px; }
      .footer-main--company__brand--title {
        font-size: 1.25rem;
        font-weight: 400;
        letter-spacing: 1px;
        color: #fff; }
      .footer-main--company__brand--subtitle {
        font-size: 1.125rem;
        font-weight: 300;
        letter-spacing: 1px;
        color: #fff; }
    .footer-main--company__address {
      font-size: 1rem;
      font-weight: 400;
      color: rgba(255, 255, 255, 0.5);
      margin-bottom: 1.75rem; }
    .footer-main--company__social ul {
      padding: 0;
      margin: 0;
      list-style-type: none; }
    .footer-main--company__social--item {
      float: left;
      font-size: 1rem;
      color: rgba(255, 255, 255, 0.5);
      cursor: pointer; }
      .footer-main--company__social--item__box {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 28px;
        height: 28px;
        border: 1px solid rgba(255, 255, 255, 0.5);
        border-radius: 50%;
        padding: 1rem; }
        .footer-main--company__social--item__box:hover, .footer-main--company__social--item__box:active, .footer-main--company__social--item__box:focus {
          background-color: #ff7f3f;
          border: 1px solid #ff7f3f;
          color: #fff; }
      .footer-main--company__social--item:not(:last-child) {
        margin-right: 0.563rem; }
    .footer-main--menu__title {
      font-size: 1.25rem;
      font-weight: 400;
      line-height: 32px;
      color: #fff;
      margin-bottom: 2.75rem; }
    .footer-main--menu__list {
      margin: 0;
      padding: 0;
      list-style-type: none;
      color: rgba(255, 255, 255, 0.5); }
    .footer-main--menu__item {
      font-size: 1rem; }
      .footer-main--menu__item i {
        font-size: 1.25rem;
        color: #ff7f3f; }
      .footer-main--menu__item a {
        cursor: pointer; }
        .footer-main--menu__item a:hover .footer-main--menu__item--text {
          text-decoration: underline; }
        .footer-main--menu__item a:active .footer-main--menu__item--text, .footer-main--menu__item a:focus .footer-main--menu__item--text {
          color: #ff7f3f;
          text-decoration: underline; }
      .footer-main--menu__item:not(:last-child) {
        margin-bottom: 1.75rem; }
    .footer-main--page__title {
      font-size: 1.25rem;
      font-weight: 400;
      line-height: 32px;
      color: #fff;
      margin-bottom: 2.75rem; }
    .footer-main--page__list {
      margin: 0;
      padding: 0;
      list-style-type: none;
      color: rgba(255, 255, 255, 0.5); }
    .footer-main--page__item {
      font-size: 1rem; }
      .footer-main--page__item a {
        transition: color 0.4s ease-in-out; }
        .footer-main--page__item a i {
          visibility: hidden;
          opacity: 0;
          transition: opacity 0.3s ease-in-out, margin-right 0.4s ease-in-out; }
        .footer-main--page__item a:hover, .footer-main--page__item a:active, .footer-main--page__item a:focus {
          color: #ff7f3f; }
          .footer-main--page__item a:hover i, .footer-main--page__item a:active i, .footer-main--page__item a:focus i {
            visibility: visible;
            opacity: 1;
            margin-right: 0.4rem; }
      .footer-main--page__item:not(:last-child) {
        margin-bottom: 1.75rem; }
    .footer-main--subscribe__title {
      font-size: 1.25rem;
      font-weight: 400;
      line-height: 32px;
      color: #fff;
      margin-bottom: 2.75rem; }
  .footer-copyright {
    padding: 1rem;
    font-size: 0.625rem;
    font-weight: 200;
    letter-spacing: 0.2rem;
    color: rgba(255, 255, 255, 0.5);
    border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
  @media (max-width: 575.98px) {
    .footer-main {
      padding: 3.616rem 1rem; }
      .footer-main--company__brand {
        margin-left: auto;
        margin-right: auto; } }

.detail-page--question__description {
  margin-bottom: 0; }

.detail-page--question .accordion {
  padding: 0 2.75rem; }
  .detail-page--question .accordion-item {
    background-color: #ededed;
    border: 4px solid #fff; }
  .detail-page--question .accordion-header {
    background-color: #ededed;
    border: 0 !important; }
  .detail-page--question .accordion-body {
    padding: 0.625rem 2.625rem 1.875rem 2.625rem; }
  .detail-page--question .accordion-button {
    padding: 1.875rem 2.625rem;
    background-color: #ededed;
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 1.4;
    color: #000;
    box-shadow: none !important; }

.btn.btn-custom--primary {
  position: relative;
  padding: 0.75rem;
  border: 1px solid #ff7f3f;
  border-radius: 0;
  color: #fff;
  transition: color 0.3s ease-in-out; }
  .btn.btn-custom--primary::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-color: #ff7f3f;
    z-index: 0;
    transition: width 0.3s ease-in-out; }
  .btn.btn-custom--primary i {
    position: relative;
    z-index: 1;
    margin-left: 0.5rem;
    transition: margin-left 0.2s ease-in-out; }
  .btn.btn-custom--primary:active, .btn.btn-custom--primary:focus {
    outline: none !important;
    box-shadow: none !important; }
  .btn.btn-custom--primary .btn-custom--text {
    position: relative;
    font-size: 1rem;
    font-weight: 400;
    z-index: 1; }
    .btn.btn-custom--primary .btn-custom--text__filter {
      position: relative;
      font-size: 1rem;
      font-weight: 400;
      z-index: 1; }
    .btn.btn-custom--primary .btn-custom--text__subscribe {
      position: relative;
      font-size: 1rem;
      font-weight: 400;
      z-index: 1; }
    .btn.btn-custom--primary .btn-custom--text__submit {
      position: relative;
      font-size: 1.25rem;
      font-weight: 400;
      padding: 0.75rem 3.438rem;
      z-index: 1; }
  .btn.btn-custom--primary:hover {
    background-color: transparent;
    color: #ff7f3f;
    border: 1px solid #ff7f3f; }
    .btn.btn-custom--primary:hover::before {
      width: 0%; }
    .btn.btn-custom--primary:hover i {
      margin-left: 1rem; }

.btn.btn-custom--category {
  position: relative;
  background-color: transparent !important;
  padding: 1rem 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 26px;
  transition: color 0.4s ease-in-out; }
  .btn.btn-custom--category:hover, .btn.btn-custom--category:active, .btn.btn-custom--category:focus {
    outline: none !important;
    box-shadow: none !important;
    color: #ff7f3f; }
    .btn.btn-custom--category:hover::after, .btn.btn-custom--category:active::after, .btn.btn-custom--category:focus::after {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      background: #ff7f3f;
      width: 100%;
      height: 2px; }
  .btn.btn-custom--category::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    background: transparent;
    width: 0;
    height: 2px;
    transition: width 0.3s ease-in-out; }
  .btn.btn-custom--category::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.3);
    width: 100%;
    height: 1px; }

.btn.btn-custom--booking {
  border-radius: 100%; }
  .btn.btn-custom--booking:focus, .btn.btn-custom--booking:active {
    outline: none !important;
    box-shadow: none !important; }
  .btn.btn-custom--booking:hover {
    color: #fff;
    background-color: #ff7f3f; }

.btn.btn-custom--service {
  background-color: #ff7f3f;
  padding: 0.475rem;
  border: 1px solid #ff7f3f;
  border-radius: 0;
  color: #fff;
  font-size: 0.874rem;
  font-weight: 500;
  transition: color 0.3s ease-in-out, background-color 0.2s ease-in-out; }
  .btn.btn-custom--service:hover {
    background-color: #fff;
    color: #ff7f3f;
    border: 1px solid #ff7f3f; }
  .btn.btn-custom--service:active, .btn.btn-custom--service:focus {
    outline: none !important;
    box-shadow: none !important;
    background-color: #ff7f3f;
    color: #fff; }

.btn.btn-custom--light-secondary {
  background-color: rgba(11, 12, 17, 0.07);
  color: #0b0c11;
  padding: 0.75rem;
  border-radius: 0 !important;
  font-size: 1rem;
  font-weight: 300;
  transition: all 0.2s ease-in-out; }
  .btn.btn-custom--light-secondary:hover {
    background-color: rgba(11, 12, 17, 0.9);
    color: #fff; }
  .btn.btn-custom--light-secondary:active, .btn.btn-custom--light-secondary:focus {
    outline: none !important;
    box-shadow: none !important;
    background-color: #0b0c11;
    color: #fff; }

.btn.btn-custom--close {
  background-color: transparent;
  border: 1px solid #ff7f3f;
  border-radius: 0 !important;
  color: #ff7f3f;
  font-size: 1.125rem;
  transform: scale(1); }
  .btn.btn-custom--close:hover {
    background-color: #ff7f3f;
    color: #fff;
    border: 1px solid #ff7f3f; }
  .btn.btn-custom--close:active, .btn.btn-custom--close:focus {
    outline: none !important;
    box-shadow: none !important;
    background-color: #ff7f3f;
    color: #fff;
    transform: scale(0.97); }

.btn.btn-custom--login-google {
  position: relative;
  background-color: #fff;
  padding: 0.875rem;
  border: 1px solid #ff7f3f;
  border-radius: 0 !important; }
  .btn.btn-custom--login-google::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0%;
    height: 100%;
    background-color: #ff7f3f;
    z-index: 0;
    transition: width 0.5s ease-in-out; }
  .btn.btn-custom--login-google .text__login {
    position: relative;
    font-size: 1rem;
    font-weight: 400;
    color: #ff7f3f;
    letter-spacing: 1px;
    z-index: 1;
    transition: color 0.4s ease-in-out; }
  .btn.btn-custom--login-google .login-google__icon {
    max-width: 24px;
    margin-right: 0.6rem; }
  .btn.btn-custom--login-google:hover::before, .btn.btn-custom--login-google:active::before, .btn.btn-custom--login-google:focus::before {
    width: 100%; }
  .btn.btn-custom--login-google:hover .text__login {
    color: #fff; }
  .btn.btn-custom--login-google:active, .btn.btn-custom--login-google:focus {
    outline: none !important;
    box-shadow: none !important; }
    .btn.btn-custom--login-google:active .text__login, .btn.btn-custom--login-google:focus .text__login {
      color: #fff; }

.card-custom--filter {
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.5);
  border-radius: 0; }
  .card-custom--filter .card-header {
    padding: 1rem 1.5rem;
    background-color: transparent;
    border: 0; }
    .card-custom--filter .card-header--text {
      position: relative;
      font-size: 1.5rem;
      font-weight: 400;
      line-height: 4.2rem; }
      .card-custom--filter .card-header--text::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        background-color: #ff7f3f;
        width: 78px;
        height: 2px; }
  .card-custom--filter .card-body {
    padding: 0rem 1.5rem 1.75rem 1.5rem; }
    .card-custom--filter .card-body .category-list .btn-check:focus + .btn,
    .card-custom--filter .card-body .category-list .btn-check .btn:focus {
      outline: none !important;
      box-shadow: none !important; }
    .card-custom--filter .card-body .category-list .btn-check:checked + .btn-custom--category {
      color: #ff7f3f; }
      .card-custom--filter .card-body .category-list .btn-check:checked + .btn-custom--category::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        background: #ff7f3f;
        width: 100%;
        height: 2px; }
    .card-custom--filter .card-body .form-select-my:first-child {
      margin-top: 1.8rem; }
    .card-custom--filter .card-body .form-select-my:not(:last-child) {
      margin-bottom: 1.5rem; }
  .card-custom--filter__booknow {
    margin-top: 1.75rem;
    margin-bottom: 4.188rem; }
    .card-custom--filter__booknow--icon {
      max-width: 28px;
      margin-right: 0.688rem; }
    .card-custom--filter__booknow--price {
      margin-top: 2.5rem;
      font-size: 1.5rem;
      font-weight: 400;
      line-height: 1rem;
      color: #000; }
      .card-custom--filter__booknow--price span {
        font-size: 1rem;
        font-weight: 400;
        color: #0d0d0d80; }

.card-custom--room {
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: 1px solid #0b0c11;
  border-radius: 0; }
  .card-custom--room__img {
    width: 100%;
    height: 240px;
    object-fit: cover;
    border-radius: 4px; }
  .card-custom--room__content {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between; }
  .card-custom--room__title {
    font-size: 1.5rem;
    font-weight: 400;
    color: #0b0c11;
    letter-spacing: 1px; }
  .card-custom--room__price {
    border-right: 1px solid #00000080;
    border-left: 1px solid #00000080; }
    .card-custom--room__price--title {
      background-color: rgba(0, 0, 0, 0.1);
      font-size: 1rem;
      font-weight: 400;
      padding: 0.4rem; }
    .card-custom--room__price--text {
      padding: 0.874rem 0;
      font-size: 1.125rem;
      font-weight: 500; }
  .card-custom--room__deposit {
    border-right: 1px solid #00000080; }
    .card-custom--room__deposit--title {
      background-color: rgba(0, 0, 0, 0.1);
      font-size: 1rem;
      font-weight: 400;
      padding: 0.4rem; }
    .card-custom--room__deposit--text {
      padding: 0.874rem 0;
      font-size: 1.125rem;
      font-weight: 500; }
  .card-custom--room__footer {
    font-size: 0.874rem;
    font-weight: 300;
    color: #0b0c11; }
  @media (max-width: 575.98px) {
    .card-custom--room__title {
      font-size: 1.25rem; }
    .card-custom--room__price--title {
      font-size: 0.874rem; }
    .card-custom--room__price--text {
      padding: 0.75rem 0;
      font-size: 1rem; }
    .card-custom--room__deposit--title {
      font-size: 0.874rem; }
    .card-custom--room__deposit--text {
      padding: 0.75rem 0;
      font-size: 1rem; } }
  @media (min-width: 768px) and (max-width: 991.98px) {
    .card-custom--room__img {
      height: 340px; } }

.card-custom--new {
  position: relative;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.5);
  border-radius: 0;
  overflow: hidden;
  cursor: pointer;
  transition: border 0.3s ease-in-out; }
  .card-custom--new__image {
    position: relative;
    height: 240px;
    overflow: hidden; }
    .card-custom--new__image img {
      object-fit: cover;
      width: 100%;
      height: 100%; }
  .card-custom--new__price {
    position: absolute;
    left: 0;
    bottom: 0;
    min-width: 118px;
    width: 0;
    max-width: 100%;
    margin-left: 1.188rem;
    margin-bottom: 1.375rem;
    background-color: #ff7f3f;
    padding: 0.35rem 0.325rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 30px;
    color: #fff;
    z-index: 1;
    transition: margin-left 0.3s ease-in-out, margin-bottom 0.3s ease-in-out, width 0.5s ease-in-out; }
  .card-custom--new .card-body {
    padding: 1.688rem 1.188rem 2.75rem 1.188rem; }
  .card-custom--new__title {
    font-size: 1.25rem;
    font-weight: 400;
    line-height: 1.875rem;
    margin-bottom: 0.875rem;
    color: #000; }
  .card-custom--new__description {
    font-size: 0.875rem;
    font-weight: 400;
    color: #2c2c2c; }
  .card-custom--new__footer {
    margin-top: 1.813rem; }
    .card-custom--new__footer--icon {
      font-size: 1rem;
      margin-right: 0.5rem;
      color: #ff7f3f; }
    .card-custom--new__footer--text {
      font-size: 0.875rem;
      font-weight: 400; }
  .card-custom--new:hover {
    border: 1px solid #ff7f3f; }
    .card-custom--new:hover .card-custom--room__price {
      width: 100%;
      margin-left: 0rem;
      margin-bottom: 0rem;
      background-color: #ff7f3f;
      color: #fff; }
    .card-custom--new:hover .card-custom--room__title {
      color: #ff7f3f; }
  .card-custom--new:active::after, .card-custom--new:focus::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #ff7f3f;
    opacity: 0.1;
    z-index: 2; }
  @media (max-width: 575.98px) {
    .card-custom--new__image {
      height: 200px; } }

.card-custom--picture {
  position: relative;
  overflow: hidden;
  height: 25.625rem;
  border: 0 !important;
  border-radius: 0 !important;
  z-index: 0; }
  .card-custom--picture__image {
    object-fit: cover;
    width: 100%;
    height: 100%; }
  .card-custom--picture::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 0;
    background-color: rgba(0, 0, 0, 0.3);
    z-index: 1;
    transition: height 0.4s ease-in-out; }
  .card-custom--picture:hover::before {
    height: 100%; }
  .card-custom--picture:hover .card-body {
    opacity: 1;
    bottom: 2.625rem; }
  .card-custom--picture .card-body {
    position: absolute;
    opacity: 0;
    bottom: -100%;
    margin: 0 2.438rem;
    background-color: #fff;
    padding: 2.563rem 1.688rem 0.625rem 1.688rem;
    transition: opacity 0.4s ease-in-out, bottom 0.6s ease-in-out;
    z-index: 2; }
  .card-custom--picture__head {
    margin-bottom: 1.438rem; }
    .card-custom--picture__head div.d-flex:not(:last-child) {
      margin-bottom: 1.438rem; }
    .card-custom--picture__head--title {
      font-size: 1.25rem;
      font-weight: 400; }
    .card-custom--picture__head--price {
      font-size: 1rem;
      font-weight: 400;
      color: #ff7f3f; }
    .card-custom--picture__head--icon {
      max-width: 28px; }
    .card-custom--picture__head--text {
      font-size: 1rem;
      font-weight: 400; }
  .card-custom--picture__description {
    font-size: 0.875rem;
    font-weight: 400;
    color: #2c2c2c; }
  .card-custom--picture__footer {
    border-top: 1px solid rgba(0, 0, 0, 0.2);
    padding-top: 0.4rem; }
    .card-custom--picture__footer--more .icon-more {
      background-color: #fff;
      overflow: hidden;
      width: 25px;
      height: 25px;
      font-size: 0.813rem;
      color: #ff7f3f;
      border: 1px solid #ff7f3f;
      border-radius: 50%;
      margin-right: 0.75rem; }
    .card-custom--picture__footer--more .text-more {
      font-size: 0.813rem;
      font-weight: 400;
      color: #ff7f3f; }
    .card-custom--picture__footer--more:hover .icon-more {
      background-color: #ff7f3f;
      color: #fff; }
    .card-custom--picture__footer--more:hover .text-more {
      text-decoration: underline; }
    .card-custom--picture__footer--reviews .text--score {
      font-size: 0.813rem; }
    .card-custom--picture__footer--reviews .text--number {
      font-size: 0.813rem;
      color: rgba(0, 0, 0, 0.5); }

.card-custom--booking {
  background: #fdfdfd;
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  border: none;
  margin-bottom: 30px; }
  .card-custom--booking__content {
    display: flex;
    align-items: center; }
    .card-custom--booking__content--image {
      width: 200px;
      height: 200px;
      border-radius: 1rem;
      object-fit: cover; }
    .card-custom--booking__content--detail {
      margin-left: 30px; }
      .card-custom--booking__content--detail--headdetail {
        font-size: 24px;
        font-weight: 500;
        margin-bottom: 16px; }
      .card-custom--booking__content--detail--subdetail {
        color: rgba(0, 0, 0, 0.5); }
    .card-custom--booking__content--price {
      font-size: 1.5rem;
      margin-right: 1rem; }
    @media (max-width: 991.98px) {
      .card-custom--booking__content--price {
        font-size: 1.25rem;
        margin-right: 0rem; } }
    @media (max-width: 575.98px) {
      .card-custom--booking__content {
        display: block; }
        .card-custom--booking__content--image {
          width: 100%; }
        .card-custom--booking__content--detail {
          margin: 1rem 0rem 1rem 0rem; } }

.card-custom--booknow {
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.5);
  border-radius: 0; }
  .card-custom--booknow .card-header {
    padding: 1rem 1.5rem;
    background-color: transparent;
    border: 0; }
    .card-custom--booknow .card-header--text {
      position: relative;
      font-size: 1.5rem;
      font-weight: 400;
      line-height: 4.2rem; }
      .card-custom--booknow .card-header--text::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        background-color: #ff7f3f;
        width: 78px;
        height: 2px; }
  .card-custom--booknow__header {
    margin-top: 1rem; }
    .card-custom--booknow__header--img {
      width: 100%;
      height: 180px;
      object-fit: cover; }
    .card-custom--booknow__header--title {
      padding: 0rem 1.5rem;
      font-size: 1.25rem;
      font-weight: 600;
      line-height: 1.5;
      color: #ff7f3f;
      margin-bottom: 1rem; }
  .card-custom--booknow .card-body {
    padding: 1rem 1.5rem 1.75rem 1.5rem; }
  .card-custom--booknow__icon {
    max-width: 28px;
    margin-right: 0.688rem; }
  .card-custom--booknow__price {
    margin-top: 2.5rem;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1rem;
    color: #000; }
    .card-custom--booknow__price span {
      font-size: 1rem;
      font-weight: 400;
      color: #0d0d0d80; }

.daterangepicker {
  font-family: "Mitr", sans-serif !important;
  font-weight: 300 !important; }
  .daterangepicker .table-condensed th {
    font-size: 0.938rem !important;
    font-weight: 300 !important; }
    .daterangepicker .table-condensed th.month {
      font-size: 1rem !important;
      font-weight: 400 !important;
      line-height: 2 !important; }
  .daterangepicker .table-condensed td {
    font-size: 0.938rem !important;
    font-weight: 300 !important;
    padding: 0.4rem !important; }
    .daterangepicker .table-condensed td.in-range {
      background-color: rgba(255, 127, 63, 0.15); }
    .daterangepicker .table-condensed td.start-date, .daterangepicker .table-condensed td.end-date {
      border-radius: 0 !important; }
  .daterangepicker .drp-buttons .btn {
    margin-left: 8px;
    font-size: 12px;
    font-weight: 300 !important;
    padding: 4px 8px; }
  .daterangepicker td.active,
  .daterangepicker .daterangepicker td.active:hover {
    background-color: #ff7f3f !important;
    border-color: transparent;
    color: #fff; }
  .daterangepicker .ranges li:hover {
    background-color: #eee; }
  .daterangepicker .ranges li.active {
    background-color: #ff7f3f !important;
    color: #fff; }
  .daterangepicker .cancelBtn {
    font-size: 0.938rem !important;
    padding: 0.4rem 0.75rem !important; }
  .daterangepicker .applyBtn {
    font-size: 0.938rem !important;
    color: #fff !important;
    padding: 0.4rem 0.75rem !important; }
  @media (min-width: 564px) {
    .daterangepicker {
      width: 100%;
      max-width: 740px; }
      .daterangepicker .drp-calendar {
        display: none;
        width: 100%;
        max-width: 360px; }
      .daterangepicker th {
        height: 42px !important; }
      .daterangepicker td {
        font-size: 0.938rem !important;
        font-weight: 300 !important;
        padding: 0.4rem !important;
        height: 42px !important; } }
  @media (max-width: 575.98px) {
    .daterangepicker {
      width: 90%;
      max-width: none; }
      .daterangepicker .drp-calendar {
        display: none;
        width: 100%;
        max-width: none; }
      .daterangepicker th {
        height: 42px !important; }
      .daterangepicker td {
        font-size: 0.75rem !important;
        font-weight: 300 !important;
        padding: 0.2rem !important;
        height: 32px !important; } }
  @media (min-width: 576px) and (max-width: 767.98px) {
    .daterangepicker {
      width: 80%;
      max-width: none; }
      .daterangepicker .drp-calendar {
        display: none;
        width: 100%;
        max-width: none; }
      .daterangepicker th {
        height: 42px !important; }
      .daterangepicker td {
        font-size: 0.938rem !important;
        font-weight: 300 !important;
        padding: 0.4rem !important;
        height: 42px !important; } }

.form-select--filter {
  height: 2.688rem;
  font-size: 1rem;
  font-weight: 400;
  color: rgba(0, 0, 0, 0.7);
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0;
  cursor: pointer; }
  .form-select--filter:focus {
    border: 1px solid #ff7f3f;
    outline: none !important;
    box-shadow: none !important; }

.input-group-custom {
  height: 50px; }
  .input-group-custom .form-control {
    background-color: transparent;
    font-size: 1rem;
    font-weight: 200;
    color: #fff;
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 0; }
    .input-group-custom .form-control:focus {
      border: 1px solid #ff7f3f;
      outline: none !important;
      box-shadow: none !important; }

.input-group-filter {
  position: relative; }
  .input-group-filter .input-group-text {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    background-color: transparent;
    padding: 0.375rem 0.75rem;
    font-size: 1.125rem;
    border: none !important;
    border-radius: 0;
    z-index: 4; }
    .input-group-filter .input-group-text i {
      color: #212529b7; }
  .input-group-filter .form-control {
    font-size: 1rem;
    font-weight: 300;
    padding: 0.375rem 0.5rem 0.375rem 2.5rem;
    border: 1px solid transparent;
    border-radius: 0; }
    .input-group-filter .form-control::placeholder {
      font-size: 1rem;
      font-weight: 300; }
    .input-group-filter .form-control:focus {
      border: 1px solid transparent;
      outline: none !important;
      box-shadow: none !important; }
      .input-group-filter .form-control:focus + .input-group-text i {
        color: #ff7f3f; }
    .input-group-filter .form-control.border-left {
      border-left-color: rgba(0, 0, 0, 0.5) !important; }
  @media (max-width: 575.98px) {
    .input-group-filter .form-control {
      padding: 0.475rem 0.5rem 0.475rem 2.5rem; } }

.form-label-custom {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.4;
  color: #000;
  margin-bottom: 0.75rem; }
  .form-label-custom span {
    color: #ff0000; }

.form-select-custom {
  height: 42px;
  background-color: #d9d9d975;
  font-size: 1rem;
  font-weight: 400;
  border: 1px solid #d9d9d975;
  border-radius: 5px; }
  .form-select-custom:focus {
    box-shadow: none !important;
    outline: none !important;
    color: #0b0c11;
    border: 1px solid #ff7f3f;
    border-radius: 0px; }

.form-select-custom-room {
  font-size: 1rem;
  font-weight: 400;
  color: #313131;
  border: 1px solid #0b0c11;
  border-radius: 0;
  cursor: pointer; }
  .form-select-custom-room:focus {
    box-shadow: none !important;
    outline: none !important;
    color: #0b0c11;
    border: 1px solid #0b0c11;
    border-radius: 0px; }
  @media (max-width: 575.98px) {
    .form-select-custom-room {
      font-size: 0.874rem; } }

.form-check-custom:not(:last-child) {
  margin-right: 1.25rem; }

.form-check-custom .form-check-input {
  width: 1.25em;
  height: 1.25em;
  border: 1px solid #000; }
  .form-check-custom .form-check-input:focus {
    box-shadow: none !important;
    outline: none !important; }
  .form-check-custom .form-check-input:checked {
    background-color: #ff7f3f;
    border: 1px solid #ff7f3f; }

.form-check-custom .form-check-label {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.4;
  color: #000;
  margin-left: 0.25rem; }

.form-control-custom {
  height: 42px;
  background-color: #d9d9d975;
  font-size: 1rem;
  font-weight: 400;
  border: 1px solid #d9d9d975;
  border-radius: 5px; }
  .form-control-custom:focus {
    box-shadow: none !important;
    outline: none !important;
    color: #0b0c11;
    border: 1px solid #ff7f3f;
    border-radius: 0px; }

.form-control-plaintext-custom {
  height: 42px;
  font-size: 1rem;
  font-weight: 400; }
  .form-control-plaintext-custom:focus {
    box-shadow: none !important;
    outline: none !important; }

.textarea-custom {
  height: auto;
  background-color: #d9d9d975;
  font-size: 1rem;
  font-weight: 400;
  border: 1px solid #d9d9d975;
  border-radius: 5px; }
  .textarea-custom:focus {
    box-shadow: none !important;
    outline: none !important;
    color: #0b0c11;
    border: 1px solid #ff7f3f;
    border-radius: 0px; }

.input-quantity .form-control-plaintext {
  display: inline-block;
  font-size: 1.25rem;
  font-weight: 300;
  width: 40px;
  max-width: 60px;
  text-align: center;
  margin: 0 1rem; }
  .input-quantity .form-control-plaintext:active, .input-quantity .form-control-plaintext:focus {
    box-shadow: none !important;
    outline: none !important; }

.input-quantity__remove, .input-quantity__add {
  font-size: 1.25rem;
  background-color: #fff;
  border: 1px solid #0b0c11;
  border-radius: 0;
  color: #0b0c11; }
  .input-quantity__remove:hover, .input-quantity__add:hover {
    background-color: #0b0c11;
    color: #fff; }
  .input-quantity__remove:active, .input-quantity__remove:focus, .input-quantity__add:active, .input-quantity__add:focus {
    outline: none !important;
    box-shadow: none !important; }

.modal-custom--quantity {
  padding: 0rem 0 !important;
  border-radius: 0% !important;
  border: 1px solid #00000080 !important; }
  .modal-custom--quantity__header {
    margin-bottom: 2.75rem; }
    .modal-custom--quantity__header--img {
      width: 100%;
      height: 240px;
      object-fit: cover;
      margin-bottom: 1rem; }
    .modal-custom--quantity__header--title {
      font-size: 1.5rem;
      font-weight: 400;
      line-height: 1.5; }
  .modal-custom--quantity__price {
    margin-top: 2rem;
    font-size: 1.125rem; }
  .modal-custom--quantity .modal-body {
    padding: 0rem 0 2.75rem 0 !important; }

.modal-custom--completed {
  padding: 1rem 0 !important;
  border-radius: 0% !important;
  border: 1px solid #00000080 !important; }
  .modal-custom--completed .btn-close:active, .modal-custom--completed .btn-close:focus {
    outline: none !important;
    box-shadow: none !important; }
  .modal-custom--completed__icon {
    overflow: hidden;
    width: 100px;
    height: 100px;
    background-color: #fff;
    border: 3px solid #ff7f3f;
    border-radius: 100%;
    margin-bottom: 2rem; }
    .modal-custom--completed__icon img {
      width: 100%; }
  .modal-custom--completed__title {
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.5;
    color: #ff7f3f;
    margin-bottom: 0.5rem; }
  .modal-custom--completed__description {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #0d0d0d80;
    margin-bottom: 0; }

.modal-custom--howto {
  background: rgba(11, 12, 17, 0.6);
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
  /* Styles for even items */
  /* Styles for odd items */ }
  .modal-custom--howto .modal-content {
    position: relative;
    padding: 0 0 1rem 0 !important;
    border-radius: 0% !important;
    border: 1px solid #00000080 !important; }
  .modal-custom--howto .modal-body {
    padding: 1rem 2rem; }
  .modal-custom--howto .btn-close:active, .modal-custom--howto .btn-close:focus {
    outline: none !important;
    box-shadow: none !important; }
  .modal-custom--howto__title {
    position: relative;
    display: inline-block;
    font-size: 1.5rem;
    font-weight: 500;
    letter-spacing: 1px;
    margin-bottom: 4rem;
    color: #0b0c11; }
    .modal-custom--howto__title::before {
      content: "";
      position: absolute;
      left: 50%;
      right: 50%;
      bottom: -1rem;
      width: 50%;
      height: 2px;
      background-color: #ff7f3f;
      transform: translate(-50%, -50%); }
  .modal-custom--howto-timeline__item {
    position: relative;
    border-bottom: 1px solid rgba(11, 12, 17, 0.4);
    width: 100%; }
  .modal-custom--howto-timeline__number {
    position: absolute;
    top: 50%;
    border-radius: 0;
    height: 2rem;
    width: 2rem;
    background: #ff7f3f;
    font-size: 1rem;
    font-weight: 300;
    color: #fff; }
  .modal-custom--howto-timeline__content {
    padding: 1rem; }
    .modal-custom--howto-timeline__content--title {
      font-size: 1.125rem;
      font-weight: 400;
      letter-spacing: 1px;
      color: #ff7f3f; }
    .modal-custom--howto-timeline__content--description {
      font-size: 0.874rem;
      font-weight: 300;
      letter-spacing: 1px;
      color: #0b0c11; }
    .modal-custom--howto-timeline__content--img {
      width: 100%;
      height: 100%;
      object-fit: contain; }
  .modal-custom--howto-timeline__item:nth-child(2n) {
    border-left: 1px solid rgba(11, 12, 17, 0.4); }
  .modal-custom--howto-timeline__item:nth-child(2n) .modal-custom--howto-timeline__number {
    left: 0;
    transform: translate(-50%, -50%); }
  .modal-custom--howto-timeline__item:nth-child(2n) .modal-custom--howto-timeline__content {
    text-align: left;
    margin-left: 1rem; }
  .modal-custom--howto-timeline__item:nth-child(2n + 1) {
    border-right: 1px solid rgba(11, 12, 17, 0.4); }
  .modal-custom--howto-timeline__item:nth-child(2n + 1) .modal-custom--howto-timeline__number {
    right: 0;
    transform: translate(50%, -50%); }
  .modal-custom--howto-timeline__item:nth-child(2n + 1) .modal-custom--howto-timeline__content {
    text-align: right;
    margin-right: 1rem; }
  @media (max-width: 576px) {
    .modal-custom--howto .modal-body {
      padding: 1rem 1.5rem; }
    .modal-custom--howto__title {
      font-size: 1.25rem;
      margin-bottom: 2.65rem; }
    .modal-custom--howto-timeline__content {
      padding: 1rem 0.65rem; }
      .modal-custom--howto-timeline__content--title {
        font-size: 1rem;
        letter-spacing: 0.6px; }
      .modal-custom--howto-timeline__content--description {
        font-size: 0.75rem;
        letter-spacing: 0.6px; } }

.custom-pagination .page-item:not(:last-child) {
  margin-right: 2rem; }

.custom-pagination .page-item.disabled {
  cursor: no-drop; }
  .custom-pagination .page-item.disabled .page-link {
    opacity: 0.2;
    background-color: rgba(0, 0, 0, 0.1); }

.custom-pagination .page-item.active .page-link {
  background-color: #ff7f3f !important;
  color: #fff;
  border: 1px solid #ff7f3f; }

.custom-pagination .page-item .page-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 1px solid rgba(0, 0, 0, 0.5);
  border-radius: 0;
  padding: 0;
  font-size: 1rem;
  font-weight: 400;
  color: #000; }
  .custom-pagination .page-item .page-link:hover {
    background-color: rgba(0, 0, 0, 0.1); }
  .custom-pagination .page-item .page-link:focus {
    outline: none !important;
    box-shadow: none !important; }

@media (max-width: 575.98px) {
  .custom-pagination .page-item:not(:last-child) {
    margin-right: 1rem; } }

.dropdown-custom--booking .dropdown-item:hover {
  color: #fff;
  background-color: #ff7f3f; }

.booknow-page {
  padding: 3.625rem 0rem 6rem 0rem; }
  .booknow-page--wrapper {
    background-color: #fff;
    padding: 3.875rem 4.125rem;
    border: 1px solid #00000080; }
    .booknow-page--wrapper__title {
      font-size: 2rem;
      font-weight: 400;
      color: #000;
      line-height: 1.4;
      margin-bottom: 2rem; }
    .booknow-page--wrapper__form--submit {
      margin-top: 6rem; }
    .booknow-page--wrapper__form--services {
      margin: 2rem 0; }
      .booknow-page--wrapper__form--services__title {
        font-size: 2rem;
        font-weight: 400;
        color: #000;
        line-height: 1.4;
        margin-bottom: 0rem; }
      .booknow-page--wrapper__form--services__description {
        font-size: 1rem;
        font-weight: 400;
        line-height: 1.4;
        color: #0d0d0d80; }
      .booknow-page--wrapper__form--services__list {
        position: relative;
        margin-top: 2rem;
        max-height: 400px;
        overflow-y: scroll;
        overflow-x: hidden; }
        .booknow-page--wrapper__form--services__list::-webkit-scrollbar {
          width: 0.4rem; }
        .booknow-page--wrapper__form--services__list--item {
          border: 1px solid #00000080;
          border-radius: 0%; }
          .booknow-page--wrapper__form--services__list--item__img {
            width: 120px;
            height: 120px;
            object-fit: cover;
            border-radius: 100%;
            margin-bottom: 1rem; }
          .booknow-page--wrapper__form--services__list--item__title {
            font-size: 1.125rem;
            font-weight: 400; }
          .booknow-page--wrapper__form--services__list--item__content {
            margin-top: 1rem; }
          .booknow-page--wrapper__form--services__list--item__amount {
            border-right: 1px solid #00000080; }
            .booknow-page--wrapper__form--services__list--item__amount--title {
              background-color: rgba(0, 0, 0, 0.2);
              font-size: 0.874rem;
              font-weight: 400;
              padding: 0.4rem; }
            .booknow-page--wrapper__form--services__list--item__amount--text {
              padding: 0.4rem;
              font-size: 1.125rem;
              font-weight: 500; }
          .booknow-page--wrapper__form--services__list--item__price--title {
            background-color: rgba(0, 0, 0, 0.2);
            font-size: 0.874rem;
            font-weight: 400;
            padding: 0.4rem; }
          .booknow-page--wrapper__form--services__list--item__price--text {
            padding: 0.4rem;
            font-size: 1.125rem;
            font-weight: 500; }
          .booknow-page--wrapper__form--services__list--item__footer {
            margin-top: 1rem; }

.detail-page {
  padding: 10.688rem 0rem 8.75rem 0rem; }
  .detail-page--heading {
    margin-bottom: 8rem; }
    .detail-page--heading__title {
      font-size: 2.25rem;
      font-weight: 400;
      line-height: 1.4;
      color: #000;
      margin-bottom: 4.063rem; }
    .detail-page--heading__description {
      font-size: 1rem;
      font-weight: 400;
      color: #00000099; }
  .detail-page--images img {
    object-fit: cover;
    width: 100%;
    height: 290px; }
  .detail-page--body {
    margin-top: 4.875rem;
    padding-bottom: 3.5rem;
    border-bottom: 1px solid #00000033; }
    .detail-page--body__title {
      font-size: 2.25rem;
      font-weight: 400;
      line-height: 1.4;
      color: #000;
      margin-bottom: 3.25rem; }
    .detail-page--body__description {
      font-size: 1rem;
      font-weight: 400;
      color: #00000099; }
  .detail-page--amenities {
    margin-top: 3.5rem;
    margin-bottom: 3.375rem; }
    .detail-page--amenities__title {
      font-size: 2.25rem;
      font-weight: 400;
      line-height: 1.4;
      color: #000;
      margin-bottom: 3.25rem; }
    .detail-page--amenities__item--icon {
      width: 54px;
      margin-right: 1rem; }
      .detail-page--amenities__item--icon img {
        width: 100%; }
    .detail-page--amenities__item--text {
      font-size: 1.125rem;
      font-weight: 400;
      line-height: 1.2;
      color: #000000b2; }

.new-detail-page {
  padding: 10.688rem 0rem 8.75rem 0rem; }
  .new-detail-page--heading__title {
    font-size: 2rem;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 1.5;
    color: #0b0c11;
    margin-bottom: 2rem; }
  .new-detail-page--image img {
    width: 100%;
    object-fit: contain; }

.home-page {
  position: relative;
  padding: 10.688rem 0rem 8.75rem 0rem; }
  .home-page__header {
    margin-bottom: 3rem; }
    .home-page__header--title {
      position: relative;
      display: inline-block;
      font-size: 1.75rem;
      font-weight: 500;
      letter-spacing: 1px;
      padding-bottom: 0.75rem;
      color: #000; }
      .home-page__header--title::before {
        content: "";
        position: absolute;
        display: inline-block;
        left: 0;
        bottom: 0;
        background-color: #ff7f3f;
        width: 100%;
        height: 2px; }
  .home-page__rooms {
    border: 1px solid #0b0c11; }
    @media (max-width: 575.98px) {
      .home-page__rooms--footer .btn {
        display: block;
        width: 100%; } }
  .home-page--filter-top {
    height: 3.8rem;
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, 0.5);
    margin-top: -12rem;
    margin-bottom: 2.4rem;
    padding: 0rem; }
  .home-page--filter {
    position: sticky;
    left: 0;
    top: 10%; }
  .home-page--pagination {
    margin-top: 3rem; }
  @media (max-width: 575.98px) {
    .home-page--filter-top {
      height: auto; } }

.howto-page {
  padding: 10.688rem 0rem 8.75rem 0rem; }
  .howto-page--content__timeline {
    /* Used to position the left vertical line */
    position: relative; }
    .howto-page--content__timeline--line {
      border-right: 4px solid #ff7f3f;
      left: 1.5rem;
      position: absolute;
      top: 0;
      height: 100%; }
    .howto-page--content__timeline--list {
      list-style-type: none;
      margin: 0px;
      padding: 0px; }
    .howto-page--content__timeline--item:not(:last-child) {
      margin-bottom: 4rem; }
    .howto-page--content__timeline--item__top {
      align-items: center;
      display: flex; }
    .howto-page--content__timeline--item__box {
      position: relative;
      background-color: #ff7f3f;
      height: 3.25rem;
      width: 3.25rem;
      font-size: 1.25rem;
      font-weight: 300;
      color: #fff;
      z-index: 1; }
    .howto-page--content__timeline--item__title {
      flex: 1; }
      .howto-page--content__timeline--item__title * {
        font-size: 1.5rem;
        font-weight: 400;
        letter-spacing: 1px;
        margin-left: 1rem;
        margin-bottom: 0;
        color: #ff7f3f; }
    .howto-page--content__timeline--item__description {
      margin-left: 4.5rem; }
      .howto-page--content__timeline--item__description p {
        font-size: 1rem;
        font-weight: 300;
        letter-spacing: 1px;
        color: #0b0c11; }
    .howto-page--content__timeline--item__img {
      width: 100%;
      object-fit: contain; }
  @media (max-width: 576px) {
    .howto-page--content__timeline--line {
      left: 0.9rem; }
    .howto-page--content__timeline--item:not(:last-child) {
      margin-bottom: 4rem; }
    .howto-page--content__timeline--item__top {
      align-items: center;
      display: flex; }
    .howto-page--content__timeline--item__box {
      position: relative;
      background-color: #ff7f3f;
      height: 2rem;
      width: 2rem;
      font-size: 1.125rem;
      font-weight: 300;
      color: #fff;
      z-index: 1; }
    .howto-page--content__timeline--item__title {
      flex: 1; }
      .howto-page--content__timeline--item__title * {
        font-size: 1.25rem;
        font-weight: 400;
        letter-spacing: 0.6px;
        margin-left: 1rem;
        margin-bottom: 0;
        color: #ff7f3f; }
    .howto-page--content__timeline--item__description {
      margin-left: 3rem; }
      .howto-page--content__timeline--item__description p {
        font-size: 0.75rem;
        font-weight: 300;
        letter-spacing: 0.6px;
        color: #0b0c11; }
    .howto-page--content__timeline--item__img {
      width: 100%;
      object-fit: contain; } }

.rooms-page {
  padding: 10.688rem 0rem 8.75rem 0rem; }
  .rooms-page--pagination {
    margin-top: 3rem; }

.login-page {
  height: 100vh; }
  .login-page .login-form {
    position: relative;
    width: 100%;
    max-width: 640px;
    padding: 5rem 4rem 4rem 4rem;
    border: 1px solid #d9d9d9; }
    .login-page .login-form .go-back {
      position: absolute;
      top: 0;
      left: 0;
      background-color: #ff7f3f;
      font-size: 0.875rem;
      font-weight: 300;
      letter-spacing: 1px;
      color: #fff;
      margin-top: 1.5rem;
      margin-left: -2rem;
      padding: 0.625rem;
      box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
      transform: scale(1);
      transition: transform 0.3s ease-in-out, box-shadow 0.34s ease-in-out; }
      .login-page .login-form .go-back:hover {
        transform: scale(0.98);
        box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 9px 0px; }
      .login-page .login-form .go-back:active, .login-page .login-form .go-back:focus {
        transform: scale(0.97);
        box-shadow: rgba(100, 100, 111, 0.2) 0px 2px 2px 0px; }
    .login-page .login-form--header {
      margin-bottom: 3.875rem; }
      .login-page .login-form--header__title {
        position: relative;
        font-size: 2rem;
        font-weight: 500;
        line-height: 1.5;
        color: #0b0c11; }
        .login-page .login-form--header__title::after {
          content: "";
          position: absolute;
          left: 0;
          bottom: -10px;
          background-color: #ff7f3f;
          width: 60%;
          height: 2px; }
    .login-page .login-form--body__btn {
      margin-top: 2rem; }
    @media (max-width: 575.98px) {
      .login-page .login-form {
        padding: 5rem 3rem 3rem 3rem;
        max-width: 540px; }
        .login-page .login-form .go-back {
          color: #fff;
          margin-top: 0;
          margin-left: 0rem; }
        .login-page .login-form--header {
          margin-bottom: 3rem; }
          .login-page .login-form--header__title {
            font-size: 1.5rem; } }
    @media (min-width: 576px) and (max-width: 767.98px) {
      .login-page .login-form {
        max-width: 540px; }
        .login-page .login-form .go-back {
          color: #fff;
          margin-top: 0;
          margin-left: 0rem; } }

.booking-page {
  margin-top: 3.75rem; }
  .booking-page__header {
    margin-bottom: 3.75rem; }
    .booking-page__header--title {
      font-weight: 700;
      font-size: 3rem; }
  .booking-page__content--count {
    font-weight: 600;
    font-size: 2rem; }
  .booking-page__content--date {
    font-size: 1.25rem;
    color: rgba(0, 0, 0, 0.7); }

.contact {
  padding: 3.625rem 0rem 6rem 0rem; }
