@charset "UTF-8";
header.planeta {
  width: 100%;
  height: 120px;
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  padding: 0 60px;
  position: relative;
  background-color: #fff;
}
@media (max-width: 991.98px) {
  header.planeta {
    padding: 0 20px;
  }
}
header.planeta.floating {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 3;
  background-color: transparent;
}
header.planeta.white {
  color: #fff;
}
header.planeta.white .header-container .header-collapse .header-links .top-links {
  color: #fff;
}
header.planeta .header-container {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
}
header.planeta .header-container .logo img {
  height: 36px;
}
header.planeta .header-container .menu-btn-wrapper {
  width: 40px;
  height: 40px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  margin: 1rem;
  font-size: 18px;
  color: #fff;
  background-color: #031330;
  border-radius: 50%;
}
@media (max-width: 991.98px) {
  header.planeta .header-container .menu-btn-wrapper {
    margin: 0.25rem;
  }
}
header.planeta .header-container .mobile-wrapper {
  display: none;
}
header.planeta .header-container .mobile-wrapper .burger-button {
  border: 0;
  background-color: transparent;
  font-size: 28px;
  color: black;
}
header.planeta .header-container .mobile-wrapper .menu-btn-wrapper {
  padding: 0;
}
@media (max-width: 991.98px) {
  header.planeta .header-container .mobile-wrapper {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0.3rem;
  }
}
header.planeta .header-container .header-collapse {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  overflow-y: auto;
}
header.planeta .header-container .header-collapse .header-links {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
}
header.planeta .header-container .header-collapse .header-links ul {
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 30px;
  list-style: none;
}
header.planeta .header-container .header-collapse .header-links ul li a {
  text-decoration: none;
  color: inherit;
}
header.planeta .header-container .header-collapse .header-links ul li.collapser {
  cursor: pointer;
}
header.planeta .header-container .header-collapse .header-links ul li.collapser i {
  font-size: 14px;
}
@media (max-width: 1199.98px) {
  header.planeta .header-container .header-collapse .header-links ul {
    gap: 20px;
  }
}
header.planeta .header-container .header-collapse .header-links .top-links {
  display: flex;
  flex-direction: row;
  justify-content: end;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  font-weight: 600;
  font-size: 0.875em;
  color: #D9B8A7;
  letter-spacing: 0.42px;
  margin-bottom: 20px;
}
@media (max-width: 1199.98px) {
  header.planeta .header-container .header-collapse .header-links .top-links {
    font-size: 0.675em;
  }
}
header.planeta .header-container .header-collapse .header-links .bottom-links {
  display: flex;
  flex-direction: row;
  justify-content: end;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  font-size: 1.125em;
  font-style: italic;
  letter-spacing: 0.9px;
}
@media (max-width: 1199.98px) {
  header.planeta .header-container .header-collapse .header-links .bottom-links {
    font-size: 0.975em;
  }
}
header.planeta .header-container .header-collapse .header-links .header-link-collapse {
  width: 100dvw;
  max-height: 0;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  position: absolute;
  z-index: 2;
  left: 0;
  top: 119px;
  color: black;
  padding-left: 60px;
  padding-right: 60px;
  background-color: #F6F3F1;
  opacity: 0;
  transition: all 0.3s ease-out;
}
header.planeta .header-container .header-collapse .header-links .header-link-collapse.show {
  max-height: 600px;
  padding-top: 40px;
  padding-bottom: 40px;
  opacity: 1;
}
header.planeta .header-container .header-collapse .lang-selector-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  margin-left: 2.2vw;
}
@media (max-width: 991.98px) {
  header.planeta .header-container .header-collapse .menu-btn-wrapper {
    display: none;
  }
}
@media (max-width: 991.98px) {
  header.planeta .header-container .header-collapse {
    width: 100dvw;
    height: 0;
    display: flex;
    flex-direction: column;
    justify-content: normal;
    align-items: normal;
    flex-wrap: nowrap;
    gap: 0;
    background-color: #fff;
    position: absolute;
    z-index: 3;
    left: 0;
    top: 119px;
    padding: 0 20px;
    transition: all 0.7s ease-out;
    color: black;
  }
  header.planeta .header-container .header-collapse.show {
    height: calc(100dvh - 120px);
  }
  header.planeta .header-container .header-collapse .lang-selector-wrapper {
    padding: 20px 0 10px 0;
    order: 1;
    margin-left: auto;
  }
  header.planeta .header-container .header-collapse .header-links {
    order: 2;
    padding-bottom: 3rem;
  }
  header.planeta .header-container .header-collapse .header-links .bottom-links {
    width: 100%;
    order: 1;
    font-size: 1.5rem;
  }
  header.planeta .header-container .header-collapse .header-links .top-links {
    width: 100%;
    order: 2;
    margin-top: 1rem;
    color: #D9B8A7 !important;
  }
  header.planeta .header-container .header-collapse .header-links .top-links ul {
    gap: 20px;
    font-size: 1rem;
  }
  header.planeta .header-container .header-collapse .header-links ul {
    width: 100%;
    flex-direction: column;
    gap: 40px;
    font-weight: 800;
  }
  header.planeta .header-container .header-collapse .header-links .header-link-collapse {
    position: static;
    width: 100%;
    flex-direction: column;
    align-items: start;
    background-color: transparent;
    font-weight: normal;
    font-size: 0.875rem;
    padding: 0;
  }
  header.planeta .header-container .header-collapse .header-links .header-link-collapse.show {
    padding: 0;
  }
  header.planeta .header-container .header-collapse .header-links .header-link-collapse ul {
    gap: 30px;
  }
  header.planeta .header-container .header-collapse .header-links .header-link-collapse .collapse-link {
    margin: 40px 0 30px 0;
  }
}
footer.planeta-footer {
  width: 100%;
  padding: 60px 0;
  background-color: #031330;
  color: #fff;
}
footer.planeta-footer .footer-container {
  max-width: 1920px;
  padding-left: 120px;
  padding-right: 60px;
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: wrap;
  gap: 0;
}
footer.planeta-footer .footer-container .footer-logo-wrapper {
  width: 25%;
}
footer.planeta-footer .footer-container .footer-newsletter-wrapper {
  width: 75%;
  padding-right: 60px;
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: end;
  flex-wrap: nowrap;
  gap: 0;
}
footer.planeta-footer .footer-container .footer-newsletter-wrapper .newsletter-label {
  width: fit-content;
  line-height: 14.32px;
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 1.2px;
  margin: 0;
  text-transform: uppercase;
}
footer.planeta-footer .footer-container .footer-newsletter-wrapper .newsletter-link {
  width: fit-content;
  display: block;
  margin-top: 10px;
  color: #fff;
  font-size: 60px;
  white-space: nowrap;
  text-decoration: none;
  line-height: 1.2;
  letter-spacing: 0.32px;
  font-weight: 400;
}
footer.planeta-footer .footer-container .footer-menu-wrapper {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  padding-top: 50px;
  margin-top: 50px;
  border-top: 1px solid #576673;
}
footer.planeta-footer .footer-container .footer-menu-wrapper .footer-menu-main-wrapper {
  width: 80%;
}
footer.planeta-footer .footer-container .footer-menu-wrapper .footer-menu-main-wrapper .footer-menu-main {
  padding: 0px;
  margin: 0px;
  list-style: none;
  font-size: 1em;
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 40px;
}
footer.planeta-footer .footer-container .footer-menu-wrapper .footer-menu-main-wrapper .footer-menu-main .footer-menu-main-item a {
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  color: #fff;
  letter-spacing: 1.2px;
}
footer.planeta-footer .footer-container .footer-menu-wrapper .footer-menu-main-wrapper .footer-menu-main .footer-menu-main-item .footer-submenu {
  padding: 0px;
  margin: 0px;
  list-style: none;
  font-size: 1em;
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 8px;
  padding-top: 20px;
}
footer.planeta-footer .footer-container .footer-menu-wrapper .footer-menu-main-wrapper .footer-menu-main .footer-menu-main-item .footer-submenu .footer-submenu-item a {
  font-size: 13px;
  color: #fff;
  text-decoration: auto;
  text-transform: none;
  letter-spacing: 0.8px;
  line-height: 14.66px;
}
footer.planeta-footer .footer-container .footer-menu-wrapper .footer-menu-secondary-wrapper {
  width: 20%;
}
footer.planeta-footer .footer-container .footer-menu-wrapper .footer-menu-secondary-wrapper .footer-menu-secondary {
  padding: 0px;
  margin: 0px;
  list-style: none;
  font-size: 1em;
}
footer.planeta-footer .footer-container .footer-menu-wrapper .footer-menu-secondary-wrapper .footer-menu-secondary .footer-menu-secondary-link {
  padding-bottom: 20px;
}
footer.planeta-footer .footer-container .footer-menu-wrapper .footer-menu-secondary-wrapper .footer-menu-secondary .footer-menu-secondary-link a {
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  color: #fff;
  letter-spacing: 1.6px;
}
footer.planeta-footer .footer-container .footer-copyright {
  width: 50%;
  display: flex;
  flex-direction: row;
  justify-content: start;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
}
footer.planeta-footer .footer-container .footer-copyright span {
  text-align: left;
  display: block;
  font-size: 13px;
  line-height: 1.5;
  letter-spacing: 0.65px;
  font-weight: 400;
  max-width: 510px;
}
footer.planeta-footer .footer-container .footer-social-wrapper {
  width: 50%;
  display: flex;
  flex-direction: row;
  justify-content: end;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
}
footer.planeta-footer .footer-container .footer-social-wrapper .footer-social {
  padding: 0;
  margin: 50px 0;
  list-style: none;
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 20px;
}
footer.planeta-footer .footer-container .footer-social-wrapper .footer-social .footer-social-item a {
  color: #fff;
  font-size: 24px;
}
footer.planeta-footer .footer-container .footer-menu-bottom-wrapper {
  width: 80%;
}
footer.planeta-footer .footer-container .footer-menu-bottom-wrapper .footer-menu-bottom {
  padding: 0px;
  margin: 0px;
  list-style: none;
  font-size: 1em;
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 7px;
}
footer.planeta-footer .footer-container .footer-menu-bottom-wrapper .footer-menu-bottom .footer-menu-bottom-item a {
  color: #fff;
  text-decoration: none;
  margin: 0px;
  font-size: 0.78em;
  line-height: 1.42857em;
  font-weight: 500;
  letter-spacing: 0.05em;
}
footer.planeta-footer .footer-container .footer-language {
  width: 20%;
  display: flex;
  flex-direction: row;
  justify-content: end;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
}
@media (max-width: 1199.98px) {
  footer.planeta-footer .footer-container {
    width: 100%;
    max-width: 100%;
    padding-left: 40px;
    padding-right: 40px;
  }
  footer.planeta-footer .footer-container .footer-logo-wrapper, footer.planeta-footer .footer-container .footer-newsletter-wrapper, footer.planeta-footer .footer-container .footer-menu-wrapper, footer.planeta-footer .footer-container .footer-copyright, footer.planeta-footer .footer-container .footer-social-wrapper, footer.planeta-footer .footer-container .footer-menu-bottom-wrapper, footer.planeta-footer .footer-container .footer-language {
    width: 100%;
  }
  footer.planeta-footer .footer-container .footer-logo-wrapper {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: normal;
    flex-wrap: nowrap;
    gap: 0;
    order: 1;
  }
  footer.planeta-footer .footer-container .footer-newsletter-wrapper {
    align-items: center;
    margin-top: 40px;
    padding: 0;
    order: 2;
  }
  footer.planeta-footer .footer-container .footer-newsletter-wrapper .newsletter-link {
    font-size: 50px;
  }
  footer.planeta-footer .footer-container .footer-menu-wrapper {
    order: 3;
  }
  footer.planeta-footer .footer-container .footer-menu-wrapper .footer-menu-main-wrapper {
    flex-direction: column;
  }
  footer.planeta-footer .footer-container .footer-menu-wrapper .footer-menu-main-wrapper .footer-menu-main {
    flex-direction: column;
    gap: 20px;
  }
  footer.planeta-footer .footer-container .footer-menu-wrapper .footer-menu-main-wrapper .footer-menu-main .footer-menu-main-item .footer-submenu {
    display: none;
  }
  footer.planeta-footer .footer-container .footer-menu-bottom-wrapper {
    order: 5;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: normal;
    flex-wrap: nowrap;
    gap: 0;
  }
  footer.planeta-footer .footer-container .footer-menu-bottom-wrapper .footer-menu-bottom {
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 60px;
    padding-bottom: 50px;
  }
  footer.planeta-footer .footer-container .footer-copyright {
    order: 6;
    justify-content: center;
  }
  footer.planeta-footer .footer-container .footer-social-wrapper {
    order: 4;
    justify-content: center;
  }
  footer.planeta-footer .footer-container .footer-social-wrapper .footer-social {
    margin: 40px 0 0 0;
  }
  footer.planeta-footer .footer-container .footer-language {
    order: 7;
    justify-content: center;
    margin-top: 30px;
  }
}
@media (max-width: 767.98px) {
  footer.planeta-footer .footer-container .footer-newsletter-wrapper .newsletter-label {
    max-width: 270px;
    margin: 0 auto;
    text-align: center;
  }
  footer.planeta-footer .footer-container .footer-newsletter-wrapper .newsletter-link {
    font-size: 30px;
  }
  footer.planeta-footer .footer-container .footer-menu-wrapper .footer-menu-main-wrapper {
    width: 50%;
  }
  footer.planeta-footer .footer-container .footer-menu-wrapper .footer-menu-secondary-wrapper {
    width: 50%;
  }
}
#product .carousel-wrapper {
  min-height: 100dvh !important;
  height: 100dvh !important;
}
#product .carousel-wrapper .carousel-title {
  font-weight: 400 !important;
  line-height: 1.2 !important;
  letter-spacing: 1px !important;
  display: inline-flex !important;
  height: fit-content !important;
  color: #F6F3F1 !important;
  text-align: center !important;
}
#product > .custom-container {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}
#product > .custom-container .booking-wrapper {
  position: static !important;
}
#main-header {
  height: 120px;
  background-color: #fff;
  box-shadow: none;
}
#main-header .logo img {
  height: 36px;
}
#main-header .hamburger-btn {
  display: none;
}
#main-header .hamburger-btn svg {
  width: 20px;
  height: 20px;
  fill: #031330;
}
@media (max-width: 767.98px) {
  #main-header .hamburger-btn {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0;
  }
}
#main-header .cart-button-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.75rem;
}
@media (max-width: 767.98px) {
  #main-header .cart-button-wrapper .cart-text {
    display: none;
  }
}
#main-header .cart-button-wrapper .cart-circle {
  width: 45px;
  height: 45px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
  border-radius: 50%;
  background-color: #BDBFC2;
  color: #fff;
  border: none;
  transition: all 500ms ease;
}
#main-header .cart-button-wrapper .cart-circle i {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
  font-size: 18px;
}
#main-header .cart-button-wrapper .cart-circle:hover {
  background-color: #D9B8A7;
  color: #031330;
}
#main-header .cart-button-wrapper .cart-circle svg {
  width: 20px;
  height: 20px;
  fill: #fff;
  transition: fill 500ms ease;
}
main {
  min-height: calc(100dvh - 120px);
}
footer {
  padding: 2rem 0;
  box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 1px 3px 1px;
}
footer .custom-container {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
}
footer .custom-container .footer-left img {
  height: 60px;
}
footer .custom-container .footer-right .links-list {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 1rem;
}
footer .custom-container .footer-right .links-list a {
  color: #031330;
  text-decoration: underline;
  text-underline-offset: 0px;
  transition: all 0.3s linear;
  cursor: pointer;
}
footer .custom-container .footer-right .links-list a:hover {
  color: #D9B8A7;
}
#showcase .card-switch-container {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  margin-top: 2rem;
}
#showcase .card-switch-container .go-back-wrapper {
  height: 60px;
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  padding: 0 1rem;
  font-size: 20px;
  font-weight: 700;
  border: 2px solid #D9B8A7;
  color: #031330;
  transition: all 400ms linear;
  cursor: pointer;
}
#showcase .card-switch-container .go-back-wrapper:hover {
  border-color: #031330;
  color: #D9B8A7;
}
#showcase .card-switch-container .card-switch-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0 1rem;
}
#showcase .card-switch-container .card-switch-wrapper .switch {
  width: 60px;
  height: 60px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  border: 2px solid #D9B8A7;
  transition: border 400ms linear;
}
#showcase .card-switch-container .card-switch-wrapper .switch:hover:not(.active) {
  border-color: #031330;
}
#showcase .card-switch-container .card-switch-wrapper .switch:hover:not(.active) svg * {
  fill: #031330;
}
#showcase .card-switch-container .card-switch-wrapper .switch.active {
  background-color: #D9B8A7;
}
#showcase .card-switch-container .card-switch-wrapper .switch.active svg * {
  stroke: #031330;
  fill: #031330;
}
#showcase .card-switch-container .card-switch-wrapper .switch svg {
  width: 25px;
  height: 25px;
}
#showcase .card-switch-container .card-switch-wrapper .switch svg * {
  fill: #D9B8A7;
  transition: fill 400ms linear;
}
@media (max-width: 767.98px) {
  #showcase .card-switch-container {
    display: none;
  }
}
#showcase > .selectors-wrapper {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: wrap;
  gap: 1rem;
  margin: 2rem 0;
}
#showcase > .selectors-wrapper #date-time-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  padding: 1.5rem;
  background-color: transparent;
  border: 1px solid #031330;
  transition: border-color 0.5s ease;
  flex: 1 0 auto;
}
#showcase > .selectors-wrapper #date-time-wrapper.opened {
  border-color: #D9B8A7;
}
#showcase > .selectors-wrapper #date-time-wrapper.opened .left-wrapper .icon-wrapper {
  transform: rotateZ(90deg);
}
#showcase > .selectors-wrapper #date-time-wrapper .right-wrapper {
  width: auto;
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.75rem;
  flex: 1 0 auto;
}
#showcase > .selectors-wrapper #date-time-wrapper .right-wrapper .icon-wrapper {
  width: 50px;
  height: 50px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  background-color: #031330;
  border-radius: 4px;
}
#showcase > .selectors-wrapper #date-time-wrapper .right-wrapper .icon-wrapper svg {
  width: 25px;
  height: 25px;
}
#showcase > .selectors-wrapper #date-time-wrapper .right-wrapper .icon-wrapper svg > * {
  fill: #fff;
}
#showcase > .selectors-wrapper #date-time-wrapper .right-wrapper .icon-wrapper.calendar svg > * {
  fill: none;
  stroke: #fff;
}
#showcase > .selectors-wrapper #date-time-wrapper .right-wrapper .icon-wrapper.selected {
  background-color: #558e05;
}
#showcase > .selectors-wrapper #date-time-wrapper .right-wrapper .text {
  font-size: 18px;
  font-weight: bold;
  color: #7E7E7E;
  text-transform: capitalize;
}
#showcase > .selectors-wrapper #date-time-wrapper .left-wrapper {
  width: auto;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 1rem;
  flex: 0 1 auto;
}
#showcase > .selectors-wrapper #date-time-wrapper .left-wrapper .desc {
  font-size: 14px;
}
@media (max-width: 991.98px) {
  #showcase > .selectors-wrapper #date-time-wrapper .left-wrapper .desc {
    display: none;
  }
}
#showcase > .selectors-wrapper #date-time-wrapper .left-wrapper .icon-wrapper {
  font-size: 20px;
  color: #7E7E7E;
  transition: transform 0.7s ease;
}
#showcase > .selectors-wrapper #guests-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  padding: 1.5rem;
  background-color: transparent;
  border: 1px solid #031330;
  transition: border-color 0.5s ease;
  width: 40%;
  max-width: 430px;
}
#showcase > .selectors-wrapper #guests-wrapper.opened {
  border-color: #D9B8A7;
}
#showcase > .selectors-wrapper #guests-wrapper.opened .left-wrapper .icon-wrapper {
  transform: rotateZ(90deg);
}
#showcase > .selectors-wrapper #guests-wrapper .right-wrapper {
  width: auto;
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.75rem;
  flex: 1 0 auto;
}
#showcase > .selectors-wrapper #guests-wrapper .right-wrapper .icon-wrapper {
  width: 50px;
  height: 50px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  background-color: #031330;
  border-radius: 4px;
}
#showcase > .selectors-wrapper #guests-wrapper .right-wrapper .icon-wrapper svg {
  width: 25px;
  height: 25px;
}
#showcase > .selectors-wrapper #guests-wrapper .right-wrapper .icon-wrapper svg > * {
  fill: #fff;
}
#showcase > .selectors-wrapper #guests-wrapper .right-wrapper .icon-wrapper.calendar svg > * {
  fill: none;
  stroke: #fff;
}
#showcase > .selectors-wrapper #guests-wrapper .right-wrapper .icon-wrapper.selected {
  background-color: #558e05;
}
#showcase > .selectors-wrapper #guests-wrapper .right-wrapper .text {
  font-size: 18px;
  font-weight: bold;
  color: #7E7E7E;
  text-transform: capitalize;
}
#showcase > .selectors-wrapper #guests-wrapper .left-wrapper {
  width: auto;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 1rem;
  flex: 0 1 auto;
}
#showcase > .selectors-wrapper #guests-wrapper .left-wrapper .desc {
  font-size: 14px;
}
@media (max-width: 991.98px) {
  #showcase > .selectors-wrapper #guests-wrapper .left-wrapper .desc {
    display: none;
  }
}
#showcase > .selectors-wrapper #guests-wrapper .left-wrapper .icon-wrapper {
  font-size: 20px;
  color: #7E7E7E;
  transition: transform 0.7s ease;
}
@media (max-width: 767.98px) {
  #showcase > .selectors-wrapper #date-time-wrapper, #showcase > .selectors-wrapper #guests-wrapper {
    width: 100%;
    max-width: none;
  }
}
#showcase > .selectors-wrapper #date-time-popover, #showcase > .selectors-wrapper #guests-popover {
  position: absolute;
  padding: 1rem;
  margin: 0;
  background-color: #fff;
  border: 1px solid #D9B8A7;
  z-index: 4;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  animation: fade-out 0.7s ease-out;
}
#showcase > .selectors-wrapper #date-time-popover:popover-open, #showcase > .selectors-wrapper #guests-popover:popover-open {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  animation: fade-in 0.7s ease-out;
}
#showcase > .selectors-wrapper #date-time-popover {
  min-height: 375px;
  padding: 0;
}
#showcase > .selectors-wrapper #date-time-popover > .wrapper {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
}
#showcase > .selectors-wrapper #date-time-popover > .wrapper .popover-calendar-wrapper, #showcase > .selectors-wrapper #date-time-popover > .wrapper .popover-timepicker-wrapper {
  width: 50%;
  padding: 1.5rem;
}
#showcase > .selectors-wrapper #date-time-popover > .wrapper .popover-calendar-wrapper {
  width: 50%;
  display: flex;
  flex-direction: row;
  justify-content: stretch;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  padding: 1.5rem;
  border-right: 1px solid #D9B8A7;
}
#showcase > .selectors-wrapper #date-time-popover > .wrapper .popover-calendar-wrapper > * {
  flex: 1 0 auto;
}
#showcase > .selectors-wrapper #date-time-popover > .wrapper .popover-timepicker-wrapper {
  width: 50%;
  padding: 1.5rem;
}
@media (max-width: 767.98px) {
  #showcase > .selectors-wrapper #date-time-popover > .wrapper .popover-calendar-wrapper, #showcase > .selectors-wrapper #date-time-popover > .wrapper .popover-timepicker-wrapper {
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: 0;
  }
}
#showcase > .selectors-wrapper #guests-popover {
  min-height: 222px;
}
@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-out {
  0% {
    opacity: 1;
    display: flex;
  }
  100% {
    opacity: 0;
    display: none;
  }
}
#product .carousel-wrapper {
  width: 100%;
  height: 400px;
  position: relative;
}
@media (max-width: 767.98px) {
  #product .carousel-wrapper {
    height: 200px;
  }
}
#product .carousel-wrapper .carousel-title {
  display: none;
  position: absolute;
  left: 50%;
  top: 50%;
  color: #fff;
  transform: translate(-50%, -50%);
  font-size: 60px;
  font-style: italic;
}
#product > .custom-container {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: wrap;
  gap: 0;
}
#product > .custom-container .info-wrapper {
  width: 50%;
  padding-right: 2rem;
}
#product > .custom-container .info-wrapper .badges {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0 0.75rem;
}
#product > .custom-container .info-wrapper .badges .custom-badge {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  padding: 4px 12px;
  background-color: #D9B8A7;
  font-weight: bold;
  border-radius: 5px;
  line-height: normal;
}
#product > .custom-container .info-wrapper .product-name {
  margin-bottom: 0.25rem;
  font-size: 27px;
  font-weight: bold;
}
#product > .custom-container .info-wrapper .product-description {
  margin-bottom: 0.5rem;
  font-size: 16px;
}
#product > .custom-container .info-wrapper .go-back {
  width: fit-content;
  padding: 1rem;
  border: 2px solid #D9B8A7;
  color: #031330;
  font-weight: 700;
  font-size: 20px;
  transition: all 400ms linear;
  cursor: pointer;
}
#product > .custom-container .info-wrapper .go-back:hover {
  border-color: #031330;
  color: #D9B8A7;
}
@media (max-width: 1199.98px) {
  #product > .custom-container .info-wrapper {
    width: 40%;
  }
}
@media (max-width: 991.98px) {
  #product > .custom-container .info-wrapper {
    width: 100%;
    padding: 0 0 1rem 0;
  }
}
@media (max-width: 767.98px) {
  #product > .custom-container .info-wrapper {
    width: 100%;
  }
}
#product > .custom-container .booking-wrapper {
  width: 50%;
  padding: 0 1rem;
}
#product > .custom-container .booking-wrapper:not(.quote) {
  position: relative;
  bottom: 110px;
}
@media (max-width: 991.98px) {
  #product > .custom-container .booking-wrapper:not(.quote) {
    width: 0;
  }
}
@media (max-width: 991.98px) {
  #product > .custom-container .booking-wrapper.quote {
    padding: 0;
    width: 100%;
  }
}
@media (max-width: 1199.98px) {
  #product > .custom-container .booking-wrapper {
    width: 60%;
  }
}
#product > .custom-container .mobile-btn-wrapper {
  width: 100%;
  display: none;
  padding: 1rem;
}
#product > .custom-container .mobile-btn-wrapper .mobile-button {
  width: 100%;
  padding: 1.5rem;
  background-color: #031330;
  color: #fff;
  font-weight: 600;
  border: 0;
  border-radius: 5px;
}
@media (max-width: 991.98px) {
  #product > .custom-container .mobile-btn-wrapper {
    display: block;
  }
}
@media (max-width: 991.98px) {
  #product > .custom-container {
    flex-direction: column;
  }
}
#checkout {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: wrap;
  gap: 1rem 2rem;
  position: relative;
  margin: 2rem auto;
}
#checkout input[type="checkbox"] {
  width: 24px;
  height: 24px;
}
#checkout .cart-summary-wrapper, #checkout .customer-form-wrapper, #checkout .checkout-texts-wrapper, #checkout .buttons-wrapper, #checkout .payments-wrapper {
  width: calc(100% - 2rem - 300px);
}
#checkout .cart-totals-wrapper {
  width: 300px;
  position: absolute;
  right: 1.5rem;
}
#checkout .buttons-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: end;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 1rem;
}
#checkout .buttons-wrapper button {
  padding: 0.5rem 1.75rem;
  color: #031330;
  border: 0;
  font-weight: 800;
  font-size: 0.85rem;
}
#checkout .buttons-wrapper button:disabled {
  opacity: 0.3;
}
#checkout .buttons-wrapper .back-btn {
  background-color: #BDBFC2;
}
#checkout .buttons-wrapper .submit-btn {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.2rem;
  background-color: #D9B8A7;
}
#checkout .buttons-wrapper .submit-btn .spinner-grow {
  display: none;
  opacity: 0;
  transition: all 0.3s ease-out allow-discrete;
}
#checkout .buttons-wrapper .submit-btn.loading .spinner-grow {
  display: block;
  opacity: 1;
}
@media (max-width: 991.98px) {
  #checkout .cart-summary-wrapper, #checkout .customer-form-wrapper, #checkout .checkout-texts-wrapper, #checkout .buttons-wrapper, #checkout .cart-totals-wrapper, #checkout .payments-wrapper {
    width: 100%;
  }
  #checkout .cart-summary-wrapper {
    order: 1;
  }
  #checkout .cart-totals-wrapper {
    order: 2;
    position: static;
  }
  #checkout .customer-form-wrapper {
    order: 3;
  }
  #checkout .payments-wrapper {
    order: 4;
    position: static;
  }
  #checkout .checkout-texts-wrapper {
    order: 5;
  }
  #checkout .buttons-wrapper {
    order: 6;
  }
}
#my-bookings {
  margin: 1rem auto;
}
#my-bookings .login-text {
  text-decoration: underline;
  cursor: pointer;
}
#my-booking {
  margin: 0 auto 2rem auto;
}
#my-booking .heading {
  padding: 0.25rem 0.5rem;
  margin-bottom: 1rem;
  font-size: 1.125rem;
  background-color: #D9B8A7;
  color: #031330;
  border-width: 1px 0;
  border-style: solid;
  border-color: #031330;
}
#my-booking .go-to-list-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: end;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.5rem;
}
#my-booking .go-to-list-wrapper button {
  padding: 10px 40px;
  background-color: #D9B8A7;
  color: #fff;
  border: none;
  border-radius: 10px;
  transition: all 0.3s ease-out;
}
#my-booking .go-to-list-wrapper button.cancellation-btn {
  background-color: #ff6767;
  color: #fff;
}
#my-booking .go-to-list-wrapper button.cancellation-btn .spinner-grow {
  width: 16px;
  height: 16px;
}
#my-booking .go-to-list-wrapper button:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
#my-booking .go-to-list-wrapper button:hover:not(:disabled) {
  transform: scale(1.05);
}
#registration {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 1rem;
  margin: 1rem auto;
}
#registration .message {
  padding: 1rem 1.5rem;
  background-color: rgba(85, 142, 5, 0.7);
  color: #fff;
  border-radius: 8px;
}
#registration .errors-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.5rem;
}
#registration .errors-wrapper .error {
  padding: 1rem 1.5rem;
  background-color: rgba(255, 103, 103, 0.7);
  color: black;
  border-radius: 8px;
}
#registration .buttons-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: end;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.5rem;
}
#registration .buttons-wrapper button {
  padding: 10px 40px;
  background-color: #D9B8A7;
  color: #fff;
  border: none;
  border-radius: 10px;
  transition: all 0.3s ease-out;
}
#registration .buttons-wrapper button .spinner-grow {
  width: 16px;
  height: 16px;
}
#registration .buttons-wrapper button.reverse {
  background-color: #BDBFC2;
  color: #031330;
}
#registration .buttons-wrapper button:hover {
  transform: scale(1.05);
}
#registration .buttons-wrapper button:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.grecaptcha-badge {
  bottom: 105px !important;
}
#bmg-loading {
  min-width: 100lvw;
  min-height: 100dvh;
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  background-color: #fff;
  opacity: 1;
  transition: opacity 0.1s ease;
}
#bmg-loading .wrapper {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  opacity: 1;
  transition: opacity 0.5s ease;
}
#bmg-loading .wrapper .spinner-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0 1rem;
}
.toasts-container {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.5rem;
  position: fixed;
  bottom: 1rem;
  left: 1rem;
  z-index: 4;
}
.custom-alert {
  width: 400px;
  padding: 0;
  border: 0;
  border-radius: 4px;
  background-color: #fff;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}
.custom-alert .alert-heading {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  padding: 0.75rem;
  border-bottom: 2px solid #D9B8A7;
}
.custom-alert .alert-heading .alert-close {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  cursor: pointer;
  font-size: 20px;
}
.custom-alert .alert-body {
  padding: 0.75rem;
  overflow-y: auto;
}
.custom-alert .alert-body p {
  margin: 0;
}
.custom-alert .alert-body .alert-list {
  margin: 0;
}
@media (max-width: 767.98px) {
  .custom-alert {
    width: calc(100dvw - 2rem);
  }
}
.custom-alert.custom-dialog {
  width: 40dvw;
  margin: 2rem auto 0 auto;
  z-index: 4;
  transform: scale(0);
  transition: all 0.5s ease-out allow-discrete;
}
.custom-alert.custom-dialog[open] {
  transform: scale(1);
}
.custom-alert.custom-dialog[open]::backdrop {
  background-color: rgba(0, 0, 0, 0.5);
}
@starting-style {
  .custom-alert.custom-dialog[open]::backdrop {
    background-color: rgba(0, 0, 0, 0);
  }
}
@starting-style {
  .custom-alert.custom-dialog[open] {
    transform: scale(0);
  }
}
.custom-alert.custom-dialog::backdrop {
  background-color: rgba(0, 0, 0, 0);
  transition: all 0.5s ease-out allow-discrete;
}
.custom-alert.custom-dialog .alert-body {
  max-height: 90dvh;
}
@media (max-width: 1399.98px) {
  .custom-alert.custom-dialog {
    width: 40dvw;
  }
}
@media (max-width: 1199.98px) {
  .custom-alert.custom-dialog {
    width: 60dvw;
  }
}
@media (max-width: 991.98px) {
  .custom-alert.custom-dialog {
    width: 70dvw;
  }
}
@media (max-width: 767.98px) {
  .custom-alert.custom-dialog {
    width: 90dvw;
  }
}
@media (max-width: 575.98px) {
  .custom-alert.custom-dialog {
    width: 90dvw;
  }
}
.language-select {
  color: #031330;
  border: 0;
  background-color: transparent;
}
.language-select.white {
  color: #fff;
}
.language-select option {
  color: #031330;
}
.currency-select {
  color: #031330;
  border: 0;
  background-color: transparent;
}
.currency-select option {
  color: #031330;
}
#menu {
  min-width: 400px;
  min-height: 100%;
  position: relative;
  z-index: 4;
  padding: 0;
  margin: 0 auto 0 0;
  border: none;
  transform: translateX(-100%);
  transition: all 0.4s allow-discrete;
}
#menu[open] {
  transform: translateX(0%);
  transition: all 0.7s allow-discrete;
}
#menu[open]::backdrop {
  background-color: rgba(0, 0, 0, 0.5);
}
@starting-style {
  #menu[open]::backdrop {
    background-color: rgba(0, 0, 0, 0);
  }
}
@starting-style {
  #menu[open] {
    transform: translateX(-100%);
  }
}
#menu::backdrop {
  background-color: rgba(0, 0, 0, 0);
  transition: all 0.7s ease-out allow-discrete;
}
#menu .menu-header {
  display: flex;
  flex-direction: row;
  justify-content: end;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  padding: 1rem;
  padding-bottom: 0;
}
#menu .menu-header .close-button {
  padding: 0;
  background-color: transparent;
  border: none;
  font-size: 28px;
}
#menu .menu-body {
  padding: 1rem;
}
#menu .menu-body ul {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.35rem;
  padding: 0;
  margin: 0;
  list-style: none;
}
#menu .menu-body ul li {
  font-size: 17px;
}
#menu .menu-body a {
  color: black;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.3s ease-out;
}
#menu .menu-body a:hover {
  color: #D9B8A7;
  text-decoration: underline;
}
#menu .menu-body a.disable {
  pointer-events: none;
  color: #7E7E7E;
}
#menu .menu-body .upper-menu {
  margin-bottom: 2rem;
}
#menu .menu-body .bottom-menu {
  margin-bottom: 1.5rem;
}
#menu .menu-body .bottom-menu .welcome-back {
  font-size: 18px;
  margin-bottom: 0.25rem;
}
#menu .menu-body .bottom-menu .user-name {
  color: #D9B8A7;
  font-weight: 500;
}
#menu .menu-body .structure-info-wrapper {
  padding: 1.5rem 0;
  margin-bottom: 1.5rem;
  border-width: 2px 0 2px 0;
  border-style: solid;
  border-color: #D9B8A7;
}
#menu .menu-body .structure-info-wrapper li {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
}
#menu .menu-body .structure-info-wrapper li .icon-wrapper {
  width: 40px;
  height: 40px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
}
#menu .menu-body .structure-info-wrapper li .icon-wrapper i {
  font-size: 25px;
}
#menu .menu-body .structure-info-wrapper li a {
  font-size: 14px;
}
#menu .menu-body .selector-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
}
#menu .menu-body .selector-wrapper .currency-wrapper {
  width: 50%;
  padding-right: 0.25rem;
}
#menu .menu-body .selector-wrapper .currency-wrapper select {
  width: 100%;
}
#menu .menu-body .selector-wrapper .language-wrapper {
  width: 50%;
  padding-left: 0.25rem;
}
#menu .menu-body .selector-wrapper .language-wrapper select {
  width: 100%;
}
@media (max-width: 767.98px) {
  #menu {
    min-width: 100%;
    margin: 0;
  }
}
.carousel-component {
  width: 100%;
  height: 100%;
}
.carousel-component .carousel-inner {
  height: 100%;
}
.carousel-component .carousel-inner .carousel-item {
  height: 100%;
}
.carousel-component .carousel-inner .carousel-item img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: brightness(60%);
}
.carousel-component button {
  z-index: 0;
  transition: all 0.3s ease-out;
}
.carousel-component.no-filter .carousel-inner .carousel-item img {
  filter: unset;
}
.carousel-component.no-filter button:hover {
  background-color: rgba(0, 0, 0, 0.2);
}
.quote-request {
  padding: 1rem;
  border-radius: 10px;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.5);
}
.quote-request .form-heading {
  margin-bottom: 0.5rem;
  font-size: 28px;
  font-weight: 800;
  color: #D9B8A7;
}
.quote-request .input-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.25rem;
}
.quote-request .input-wrapper .error {
  font-size: 14px;
  color: #ff6767;
}
.quote-request .checkbox-wrapper {
  width: fit-content;
  font-size: 15px;
}
.quote-request .checkbox-wrapper label {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.5rem;
}
.quote-request legend {
  font-size: 18px;
  font-weight: 500;
  color: #D9B8A7;
}
.quote-request input[type="checkbox"] {
  width: 24px;
  height: 24px;
}
.quote-request .main-form-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: wrap;
  gap: 0.5rem 1rem;
  margin-bottom: 0.5rem;
}
.quote-request .main-form-wrapper .input-wrapper {
  width: calc((100% - 1rem) / 2);
}
.quote-request .main-form-wrapper .input-wrapper.small {
  width: calc((100% - 2rem) / 3);
}
.quote-request .main-form-wrapper .input-wrapper.message {
  width: 100%;
}
.quote-request .main-form-wrapper .input-wrapper label {
  text-transform: capitalize;
  font-size: 15px;
}
.quote-request .main-form-wrapper .input-wrapper label span {
  margin-left: 0.2rem;
  color: #D9B8A7;
}
.quote-request .main-form-wrapper .input-wrapper input, .quote-request .main-form-wrapper .input-wrapper select, .quote-request .main-form-wrapper .input-wrapper textarea {
  padding: 0.5rem;
  font-size: 15px;
  border-radius: 5px;
  border: 1px solid #031330;
}
.quote-request .main-form-wrapper .input-wrapper input.not-valid, .quote-request .main-form-wrapper .input-wrapper select.not-valid, .quote-request .main-form-wrapper .input-wrapper textarea.not-valid {
  border-color: #ff6767;
}
.quote-request .main-form-wrapper .input-wrapper select {
  appearance: none;
  background-color: transparent;
  background-image: url('data:image/svg+xml,<svg fill="%23000000" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"><path d="M10 1L5 8h10l-5-7zm0 18l5-7H5l5 7z"></path></g></svg>');
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 16px;
  padding-right: 2rem;
}
.quote-request .flexible-dates-wrapper {
  margin-bottom: 0.5rem;
}
.quote-request .party-wrapper {
  margin-bottom: 0.5rem;
}
.quote-request .customer-tags-wrapper {
  margin-bottom: 0.5rem;
}
.quote-request .customer-tags-wrapper .checkboxs-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
}
.quote-request .customer-tags-wrapper .checkbox-wrapper {
  width: calc((100% - 3rem) / 4);
}
@media (max-width: 767.98px) {
  .quote-request .customer-tags-wrapper .checkbox-wrapper {
    width: calc((100% - 2rem) / 3);
  }
}
.quote-request .texts-fieldset {
  margin-bottom: 0.5rem;
}
.quote-request .texts-fieldset h1 {
  font-size: 18px;
  font-weight: 500;
  color: #D9B8A7;
}
.quote-request .send-btn-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: end;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
}
.quote-request .send-btn-wrapper .send-btn {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 5px;
  border: 1px solid transparent;
  padding: 0.5rem 0.75rem;
  border-radius: 5px;
  background-color: #D9B8A7;
  color: #031330;
  font-weight: 600;
  transition: all 0.3s ease-out;
}
.quote-request .send-btn-wrapper .send-btn .spinner-grow {
  display: none;
  opacity: 0;
  transition: all 0.3s ease-out allow-discrete;
}
.quote-request .send-btn-wrapper .send-btn.loading .spinner-grow {
  display: block;
  opacity: 1;
}
@starting-style {
  .quote-request .send-btn-wrapper .send-btn .spinner-grow {
    opacity: 0;
  }
}
.quote-request .send-btn-wrapper .send-btn:hover:not(:disabled) {
  color: #031330;
  border-color: #031330;
}
.quote-request .send-btn-wrapper .send-btn:disabled:not(.loading) {
  background-color: #BDBFC2;
  cursor: not-allowed;
}
.address-form .address-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
}
.address-form .address-wrapper input.address-input {
  flex: 1 0 auto;
  border-radius: 8px 0 0 8px;
}
.address-form .address-wrapper label.empty {
  color: #ff6767;
}
.address-form .address-wrapper span {
  border-width: 1px 1px 1px 0;
  border-style: solid;
  border-color: #031330;
  border-radius: 0 8px 8px 0;
  flex: 0 0 auto;
  padding: 0 1rem;
  font-size: 17px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
}
.address-form .address-wrapper span i {
  transition: transform 0.3s ease-out;
}
.address-form .address-wrapper span.collapsed i {
  transform: rotate(180deg);
}
.address-form .address-wrapper span.not-valid {
  border-color: #ff6767;
}
.address-form .collapse-wrapper {
  margin-top: 0.75rem;
  border: 1px solid #031330;
  border-radius: 8px;
  padding: 0.75rem;
}
.address-form .collapse-wrapper .row {
  gap: 0.75rem 0;
}
.address-form .collapse-wrapper input {
  width: 100%;
}
.address-form .collapse-wrapper .custom-select {
  position: relative;
  width: 100%;
}
.address-form .collapse-wrapper .custom-select::after {
  content: "▼";
  position: absolute;
  top: 50%;
  right: 32px;
  transform: translateY(-50%);
  pointer-events: none;
  color: #031330;
}
.address-form .collapse-wrapper .custom-select select {
  display: block;
  width: 100%;
  background-color: transparent;
  border-radius: 8px;
  border: 1px solid #031330;
  padding: 16px 32px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.customer-form h1 {
  padding: 0.25rem 0.5rem;
  font-size: 18px;
  background-color: #D9B8A7;
  color: #031330;
  border-width: 1px 0;
  border-style: solid;
  border-color: #031330;
}
.customer-form .input-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: wrap;
  gap: 0.75rem 0;
}
.customer-form .input-wrapper p {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  margin: 0;
}
.customer-form .input-wrapper p label {
  padding: 0 10px;
}
.customer-form .input-wrapper p label span.empty {
  color: #ff6767;
}
.customer-form .input-wrapper p input, .customer-form .input-wrapper p textarea {
  border-radius: 8px;
  border: 1px solid #031330;
  padding: 16px 32px;
}
.customer-form .input-wrapper p input.not-valid, .customer-form .input-wrapper p select.not-valid {
  border-color: #ff6767;
}
.customer-form .input-wrapper p .error {
  padding: 0.25rem 0.2rem;
  color: #ff6767;
}
.customer-form .input-wrapper p.customer_notes {
  margin-top: 0.75rem;
}
.customer-form .input-wrapper p.customer_notes label {
  padding: 0;
}
.customer-form .input-wrapper p.compile_billing {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  margin-top: 0.75rem;
}
.payments .payments-heading {
  font-size: 16px;
  font-weight: bold;
}
.payments .accordion .accordion-header .accordion-button {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.5rem;
}
#__xpay_overlay {
  background-color: rgba(0, 0, 0, 0.5) !important;
}
#__xpay_overlay #__xpay_overlay_content {
  height: auto !important;
  margin-top: 3rem !important;
  border-radius: 8px !important;
}
#__xpay_overlay #__xpay_overlay_content #__xpay_close_overlay {
  top: 5px !important;
  right: 5px !important;
}
.texts h1 {
  font-size: 16px;
  font-weight: 600;
}
.texts .texts-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.5rem;
}
.texts .texts-wrapper input[type="checkbox"] {
  width: 24px;
  height: 24px;
}
.texts .texts-wrapper .texts-row {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
}
.texts .texts-wrapper .texts-row.accept-all {
  margin: 0.5rem 0;
}
.texts .texts-wrapper .texts-row:not(.accept-all) {
  padding-left: 2rem;
}
.texts .texts-wrapper .texts-row .title {
  width: fit-content;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.texts .texts-wrapper .texts-row .bottom-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.5rem;
}
.texts .texts-wrapper .texts-row .bottom-wrapper .checkbox-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  flex: 0 0 auto;
}
.texts .texts-wrapper .texts-row .bottom-wrapper span {
  font-size: 14px;
}
.texts .texts-wrapper .texts-row .bottom-wrapper span.empty {
  color: #ff6767;
}
.texts .texts-wrapper .texts-row .error {
  padding: 0.25rem 0;
  color: #ff6767;
  font-size: 12px;
}
.cart-details {
  font-size: 0.938rem;
}
.cart-details .heading {
  padding: 0.25rem 0.5rem;
  margin-bottom: 1rem;
  font-size: 1.125rem;
  background-color: #D9B8A7;
  color: #031330;
  border-width: 1px 0;
  border-style: solid;
  border-color: #031330;
}
.cart-details .item-lists {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: wrap;
  gap: 1.5rem 1rem;
}
.cart-details .item-lists .detail-item {
  width: calc(50% - 0.5rem);
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 1rem;
}
.cart-details .item-lists .detail-item .top-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
}
.cart-details .item-lists .detail-item .top-wrapper .img-wrapper {
  width: 50%;
  height: min-content;
  position: relative;
}
.cart-details .item-lists .detail-item .top-wrapper .img-wrapper img {
  width: 100%;
  aspect-ratio: 1.7777777778;
  filter: brightness(0.8);
  border-radius: 5px;
}
.cart-details .item-lists .detail-item .top-wrapper .img-wrapper .badges-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.75rem;
  position: absolute;
  left: 6px;
  bottom: 6px;
}
.cart-details .item-lists .detail-item .top-wrapper .img-wrapper .badges-wrapper .custom-badge {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  padding: 4px 12px;
  background-color: #D9B8A7;
  font-size: 0.813rem;
  font-weight: bold;
  border-radius: 5px;
  line-height: normal;
}
.cart-details .item-lists .detail-item .top-wrapper .summary-wrapper {
  width: 50%;
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.35rem;
  padding-left: 1rem;
}
.cart-details .item-lists .detail-item .top-wrapper .summary-wrapper .name {
  color: #D9B8A7;
  font-size: 1.25rem;
  font-weight: 700;
}
.cart-details .item-lists .detail-item .top-wrapper .summary-wrapper .date-time-wrapper {
  font-size: 0.938rem;
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.5rem;
}
.cart-details .item-lists .detail-item .top-wrapper .summary-wrapper .date-time-wrapper .date {
  text-transform: capitalize;
}
.cart-details .item-lists .detail-item .top-wrapper .summary-wrapper .date-time-wrapper .time {
  font-weight: 700;
}
.cart-details .item-lists .detail-item .top-wrapper .summary-wrapper .guests-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.cart-details .item-lists .detail-item .top-wrapper .summary-wrapper .guests-wrapper .guest-row {
  display: flex;
  flex-direction: row;
  justify-content: start;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.35rem;
}
.cart-details .item-lists .detail-item .top-wrapper .summary-wrapper .guests-wrapper .guest-row .value {
  width: 30px;
  height: 30px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  background-color: #D9B8A7;
  font-size: 0.875rem;
  font-weight: 800;
  border-radius: 5px;
}
.cart-details .item-lists .detail-item .top-wrapper .summary-wrapper .guests-wrapper .guest-row .label {
  font-size: 1rem;
}
@media (max-width: 767.98px) {
  .cart-details .item-lists .detail-item .top-wrapper {
    flex-direction: column;
  }
  .cart-details .item-lists .detail-item .top-wrapper .img-wrapper, .cart-details .item-lists .detail-item .top-wrapper .summary-wrapper {
    width: 100%;
  }
  .cart-details .item-lists .detail-item .top-wrapper .summary-wrapper {
    margin-top: 0.5rem;
    padding: 0;
  }
}
.cart-details .item-lists .detail-item .head {
  margin-bottom: 0.75rem;
  color: #D9B8A7;
  font-size: 1.125rem;
  font-weight: 700;
}
.cart-details .item-lists .detail-item .totals-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.5rem;
  font-size: 1.063rem;
}
.cart-details .item-lists .detail-item .totals-wrapper > * {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
}
.cart-details .item-lists .detail-item .totals-wrapper .label {
  font-weight: 700;
}
.cart-details .item-lists .detail-item .totals-wrapper .total-amount-wrapper {
  padding-top: 0.5rem;
  border-top: 1px solid #D9B8A7;
}
.cart-details .item-lists .detail-item .totals-wrapper .total-amount-wrapper .label {
  color: #D9B8A7;
}
@media (max-width: 991.98px) {
  .cart-details .item-lists .detail-item {
    width: 100%;
  }
}
.cart-details .grand-total-wrapper {
  margin-top: 1rem;
}
.cart-details .grand-total-wrapper .grand-total-row {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  font-size: 1.375rem;
}
.cart-details .grand-total-wrapper .grand-total-row .label {
  font-weight: 700;
}
.cart-details .grand-total-wrapper .grand-total-row .value {
  font-size: 1.375rem;
}
.related-products {
  width: 100%;
}
.related-products .heading {
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 1rem;
}
.login {
  min-width: 500px;
  position: relative;
  padding: 0;
  margin: 3rem auto 0 auto;
  z-index: 5;
  border: none;
  border-radius: 10px;
  background-color: #fff;
  opacity: 0;
  transition: all 0.3s allow-discrete;
}
.login[open] {
  opacity: 1;
  transition: all 0.7s allow-discrete;
}
.login[open]::backdrop {
  background-color: rgba(0, 0, 0, 0.5);
}
@starting-style {
  .login[open]::backdrop {
    background-color: rgba(0, 0, 0, 0);
  }
}
@starting-style {
  .login[open] {
    opacity: 0;
  }
}
.login::backdrop {
  background-color: rgba(0, 0, 0, 0);
  transition: all 0.7s ease-out allow-discrete;
}
.login .loading-wrapper {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  position: absolute;
  left: 0;
  top: 0;
  background-color: rgba(0, 0, 0, 0.3);
}
.login .loading-wrapper .spinner-border {
  width: 2.5rem;
  height: 2.5rem;
  border-width: 5px;
  border-color: #D9B8A7 transparent #D9B8A7 #D9B8A7;
}
.login .heading {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  padding: 1rem;
  border-bottom: 2px solid #D9B8A7;
}
.login .heading h1 {
  font-size: 20px;
  margin: 0;
}
.login .heading i {
  font-size: 20px;
  cursor: pointer;
}
.login form {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  padding: 1rem;
}
.login form .error-wrapper {
  padding-left: 20px;
  padding-right: 20px;
  opacity: 0;
  max-height: 0;
  background-color: rgba(255, 103, 103, 0.5);
  border-radius: 5px;
  transition: max-height 0.5s ease-out, opacity 0.5s ease-out, padding-top 0.5s ease-out, padding-bottom 0.5s ease-out;
  transition-delay: 0, 500ms, 0, 0;
}
.login form .error-wrapper.show {
  opacity: 1;
  padding-top: 20px;
  padding-bottom: 20px;
  max-height: 80px;
  margin-bottom: 1rem;
}
.login form .input-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.5rem;
  margin-bottom: 1rem;
}
.login form .input-wrapper label {
  display: flex;
  flex-direction: row;
  justify-content: start;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.5rem;
  font-size: 17px;
}
.login form .input-wrapper label span.empty {
  color: #ff6767;
}
.login form .input-wrapper input {
  border-radius: 8px;
  border: 1px solid #031330;
  padding: 16px 32px;
}
.login form .input-wrapper input:focus {
  box-shadow: 0 0 0 0;
}
.login form .btns-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
}
.login form .btns-wrapper span {
  color: #7E7E7E;
  text-decoration: underline;
  text-underline-offset: 4px;
  transition: all 0.4s ease-out;
  cursor: pointer;
}
.login form .btns-wrapper span:hover {
  color: black;
}
.login form .btns-wrapper button {
  padding: 10px 20px;
  background-color: #558e05;
  color: #fff;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  transition: all 0.3s ease-out;
}
.login form .btns-wrapper button:hover {
  transform: scale(1.05);
}
.login form .btns-wrapper button:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}
@media (max-width: 767.98px) {
  .login {
    min-width: calc(100% - 3rem);
  }
}
#forgot-password {
  min-width: 500px;
  position: relative;
  margin: 3rem auto 0 auto;
  padding: 0;
  background-color: #fff;
  border: none;
  border-radius: 10px;
  opacity: 0;
  transition: all 0.3s allow-discrete;
}
#forgot-password[open] {
  opacity: 1;
  transition: all 0.7s allow-discrete;
}
#forgot-password[open]::backdrop {
  background-color: rgba(0, 0, 0, 0.5);
}
@starting-style {
  #forgot-password[open]::backdrop {
    background-color: rgba(0, 0, 0, 0);
  }
}
@starting-style {
  #forgot-password[open] {
    opacity: 0;
  }
}
#forgot-password::backdrop {
  background-color: rgba(0, 0, 0, 0);
  transition: all 0.7s ease-out allow-discrete;
}
#forgot-password .loading-wrapper {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  position: absolute;
  left: 0;
  top: 0;
  background-color: rgba(0, 0, 0, 0.3);
}
#forgot-password .loading-wrapper .spinner-border {
  width: 2.5rem;
  height: 2.5rem;
  border-width: 5px;
  border-color: #D9B8A7 transparent #D9B8A7 #D9B8A7;
}
#forgot-password .dialog-header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  padding: 1rem;
  border-bottom: 1px solid #D9B8A7;
}
#forgot-password .dialog-header h5 {
  margin: 0;
}
#forgot-password .dialog-header i {
  font-size: 22px;
  cursor: pointer;
}
#forgot-password .dialog-body {
  padding: 1rem;
}
#forgot-password .dialog-body .messages-wrapper {
  padding-left: 20px;
  padding-right: 20px;
  opacity: 0;
  max-height: 0;
  border-radius: 5px;
  transition: max-height 0.5s ease-out, opacity 0.5s ease-out, padding-top 0.5s ease-out, padding-bottom 0.5s ease-out;
  transition-delay: 0, 500ms, 0, 0;
}
#forgot-password .dialog-body .messages-wrapper.show {
  opacity: 1;
  padding-top: 20px;
  padding-bottom: 20px;
  max-height: 80px;
  margin-bottom: 1rem;
}
#forgot-password .dialog-body .messages-wrapper.show.success {
  background-color: rgba(85, 142, 5, 0.5);
}
#forgot-password .dialog-body .messages-wrapper.show.error {
  background-color: rgba(255, 103, 103, 0.5);
}
#forgot-password .dialog-body .input-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.5rem;
  margin-bottom: 1rem;
}
#forgot-password .dialog-body .input-wrapper label {
  display: flex;
  flex-direction: row;
  justify-content: start;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.5rem;
  font-size: 17px;
}
#forgot-password .dialog-body .input-wrapper label span.empty {
  color: #ff6767;
}
#forgot-password .dialog-body .input-wrapper input {
  border-radius: 8px;
  border: 1px solid #031330;
  padding: 16px 32px;
}
#forgot-password .dialog-body .input-wrapper input:focus {
  box-shadow: 0 0 0 0;
}
#forgot-password .dialog-body .btns-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: end;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
}
#forgot-password .dialog-body .btns-wrapper button {
  padding: 10px 20px;
  background-color: #558e05;
  color: #fff;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  transition: all 0.3s ease-out;
}
#forgot-password .dialog-body .btns-wrapper button:hover {
  transform: scale(1.05);
}
#forgot-password .dialog-body .btns-wrapper button:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}
@media (max-width: 767.98px) {
  #forgot-password {
    min-width: calc(100% - 3rem);
  }
}
#reset-password-dialog {
  min-width: 500px;
  position: relative;
  margin: 3rem auto 0 auto;
  padding: 0;
  background-color: #fff;
  border: none;
  border-radius: 10px;
  opacity: 0;
  transition: all 0.3s allow-discrete;
}
#reset-password-dialog[open] {
  opacity: 1;
  transition: all 0.7s allow-discrete;
}
#reset-password-dialog[open]::backdrop {
  background-color: rgba(0, 0, 0, 0.5);
}
@starting-style {
  #reset-password-dialog[open]::backdrop {
    background-color: rgba(0, 0, 0, 0);
  }
}
@starting-style {
  #reset-password-dialog[open] {
    opacity: 0;
  }
}
#reset-password-dialog::backdrop {
  background-color: rgba(0, 0, 0, 0);
  transition: all 0.7s ease-out allow-discrete;
}
#reset-password-dialog .loading-wrapper {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  position: absolute;
  left: 0;
  top: 0;
  background-color: rgba(0, 0, 0, 0.3);
}
#reset-password-dialog .loading-wrapper .spinner-border {
  width: 2.5rem;
  height: 2.5rem;
  border-width: 5px;
  border-color: #D9B8A7 transparent #D9B8A7 #D9B8A7;
}
#reset-password-dialog .dialog-header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  padding: 1rem;
  border-bottom: 1px solid #D9B8A7;
}
#reset-password-dialog .dialog-header h5 {
  margin: 0;
}
#reset-password-dialog .dialog-header i {
  font-size: 22px;
  cursor: pointer;
}
#reset-password-dialog .dialog-body {
  padding: 1rem;
}
#reset-password-dialog .dialog-body .messages-wrapper {
  padding-left: 20px;
  padding-right: 20px;
  opacity: 0;
  max-height: 0;
  border-radius: 5px;
  transition: max-height 0.5s ease-out, opacity 0.5s ease-out, padding-top 0.5s ease-out, padding-bottom 0.5s ease-out;
  transition-delay: 0, 500ms, 0, 0;
}
#reset-password-dialog .dialog-body .messages-wrapper.show {
  opacity: 1;
  padding-top: 20px;
  padding-bottom: 20px;
  max-height: 80px;
  margin-bottom: 1rem;
}
#reset-password-dialog .dialog-body .messages-wrapper.show.success {
  background-color: rgba(85, 142, 5, 0.5);
}
#reset-password-dialog .dialog-body .messages-wrapper.show.error {
  background-color: rgba(255, 103, 103, 0.5);
}
#reset-password-dialog .dialog-body .input-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.5rem;
  margin-bottom: 1rem;
}
#reset-password-dialog .dialog-body .input-wrapper label {
  display: flex;
  flex-direction: row;
  justify-content: start;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.5rem;
  font-size: 17px;
}
#reset-password-dialog .dialog-body .input-wrapper label span.empty {
  color: #ff6767;
}
#reset-password-dialog .dialog-body .input-wrapper input {
  border-radius: 8px;
  border: 1px solid #031330;
  padding: 16px 32px;
}
#reset-password-dialog .dialog-body .input-wrapper input:focus {
  box-shadow: 0 0 0 0;
}
#reset-password-dialog .dialog-body .btns-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: end;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
}
#reset-password-dialog .dialog-body .btns-wrapper button {
  padding: 10px 20px;
  background-color: #558e05;
  color: #fff;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  transition: all 0.3s ease-out;
}
#reset-password-dialog .dialog-body .btns-wrapper button:hover {
  transform: scale(1.05);
}
#reset-password-dialog .dialog-body .btns-wrapper button:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}
#cart {
  min-width: 60%;
  min-height: 100dvh;
  padding: 0;
  margin: 0 0 0 auto;
  z-index: 5;
  background-color: #031330;
  color: #fff;
  border: none;
  animation: close 0.7s linear;
  overflow-x: hidden;
}
#cart[open] {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  animation: open 0.7s ease-out;
}
#cart[open]::backdrop {
  background-color: rgba(0, 0, 0, 0.5);
}
@starting-style {
  #cart[open]::backdrop {
    background-color: rgba(0, 0, 0, 0);
  }
}
#cart::backdrop {
  background-color: rgba(0, 0, 0, 0);
  transition: all 0.7s ease-out allow-discrete;
}
@keyframes open {
  0% {
    transform: translateX(100%);
    opacity: 0;
    display: none;
  }
  80% {
    transform: translateX(-30px);
    display: flex;
    flex-direction: column;
    justify-content: normal;
    align-items: normal;
    flex-wrap: nowrap;
    gap: 0;
    opacity: 1;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
    display: flex;
    flex-direction: column;
    justify-content: normal;
    align-items: normal;
    flex-wrap: nowrap;
    gap: 0;
  }
}
@keyframes close {
  0% {
    transform: translateX(0%);
    display: flex;
    flex-direction: column;
    justify-content: normal;
    align-items: normal;
    flex-wrap: nowrap;
    gap: 0;
  }
  60% {
    transform: translateX(100%);
  }
  80% {
    transform: translateX(calc(100% - 30px));
  }
  100% {
    transform: translateX(100%);
    display: none;
  }
}
@keyframes open-mobile {
  0% {
    transform: translateY(-100%);
    opacity: 0;
  }
  100% {
    transform: translateY(0%);
    opacity: 1;
  }
}
@keyframes close-mobile {
  0% {
    transform: translateY(0%);
    display: flex;
    flex-direction: column;
    justify-content: normal;
    align-items: normal;
    flex-wrap: nowrap;
    gap: 0;
  }
  100% {
    transform: translateY(-100%);
    display: flex;
    flex-direction: column;
    justify-content: normal;
    align-items: normal;
    flex-wrap: nowrap;
    gap: 0;
  }
}
@media (max-width: 767.98px) {
  #cart {
    min-width: 100dvw;
    margin: 0;
    transform: translateY(-100%);
    animation: close-mobile 0.7s ease-out;
  }
  #cart[open] {
    transform: translateY(0%);
    animation: open-mobile 0.7s ease-out;
  }
}
#cart > .upper-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 2rem;
  flex: 0 0 auto;
  padding: 2rem 1.5rem;
}
#cart > .upper-wrapper .upper-header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
}
#cart > .upper-wrapper .upper-header .close-button-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 1rem;
}
#cart > .upper-wrapper .upper-header .close-button-wrapper .text {
  font-size: 14px;
}
#cart > .upper-wrapper .upper-header .close-button-wrapper .close-button {
  width: 45px;
  height: 45px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
  background-color: #D9B8A7;
  color: #031330;
  border: none;
  border-radius: 50%;
  transition: background-color 0.3s ease;
}
#cart > .upper-wrapper .upper-header .close-button-wrapper .close-button:hover {
  background-color: #fff;
}
#cart > .upper-wrapper .upper-header .close-button-wrapper .close-button i {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
  font-size: 18px;
}
#cart > .upper-wrapper .bottom-header .title {
  padding-bottom: 1rem;
  font-size: 37px;
  font-weight: bold;
}
#cart > .upper-wrapper .bottom-header .total-container {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
}
#cart > .upper-wrapper .bottom-header .total-container .desc {
  width: 30%;
  font-size: 13px;
}
#cart > .upper-wrapper .bottom-header .total-container .total-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: end;
  align-items: center;
  flex-wrap: nowrap;
  gap: 1.5rem;
}
#cart > .upper-wrapper .bottom-header .total-container .total-wrapper .text {
  font-size: 14px;
}
#cart > .upper-wrapper .bottom-header .total-container .total-wrapper .total {
  padding: 0.5rem;
  background-color: #D9B8A7;
  color: #031330;
  font-size: 20px;
  border-radius: 4px;
}
@media (max-width: 767.98px) {
  #cart > .upper-wrapper .bottom-header {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0;
  }
  #cart > .upper-wrapper .bottom-header .title {
    font-size: 22px;
    padding: 0;
  }
  #cart > .upper-wrapper .bottom-header .total-container .desc {
    display: none;
  }
  #cart > .upper-wrapper .bottom-header .total-container .total-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0.25rem;
  }
  #cart > .upper-wrapper .bottom-header .total-container .total-wrapper .text {
    font-size: 12px;
  }
  #cart > .upper-wrapper .bottom-header .total-container .total-wrapper .total {
    font-size: 16px;
    padding: 0.25rem 0.3rem;
  }
}
@media (max-width: 767.98px) {
  #cart > .upper-wrapper {
    padding: 1.5rem 1rem;
    gap: 1rem;
  }
}
#cart > .main-wrapper {
  flex: 1 1 auto;
  overflow-y: auto;
  scrollbar-color: #D9B8A7 #031330;
}
#cart > .bottom-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: end;
  flex-wrap: nowrap;
  gap: 0;
  padding: 2rem 1.5rem;
}
#cart > .bottom-wrapper .info-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.5rem;
}
#cart > .bottom-wrapper .info-wrapper .title {
  font-weight: bold;
  font-size: 14px;
}
#cart > .bottom-wrapper .info-wrapper .desc {
  width: 40%;
  font-size: 12px;
}
#cart > .bottom-wrapper .bottom-buttons-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: end;
  align-items: center;
  flex-wrap: nowrap;
  gap: 1rem;
  flex: 1 0 auto;
}
#cart > .bottom-wrapper .bottom-buttons-wrapper .go-to-list-button, #cart > .bottom-wrapper .bottom-buttons-wrapper .checkout-button-wrapper .checkout-button {
  font-size: 14px;
  font-weight: 600;
  padding: 1rem 1.75rem;
  background-color: #fff;
  border: none;
  border-radius: 4px;
  color: #031330;
  transition: all 0.3s ease;
}
#cart > .bottom-wrapper .bottom-buttons-wrapper .go-to-list-button:disabled, #cart > .bottom-wrapper .bottom-buttons-wrapper .checkout-button-wrapper .checkout-button:disabled {
  opacity: 0.3;
}
#cart > .bottom-wrapper .bottom-buttons-wrapper .go-to-list-button:hover:not(:disabled) {
  background-color: #D9B8A7;
  color: #031330;
}
#cart > .bottom-wrapper .bottom-buttons-wrapper .checkout-button-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: end;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
}
#cart > .bottom-wrapper .bottom-buttons-wrapper .checkout-button-wrapper .checkout-button {
  background-color: #558e05;
  color: #fff;
}
#cart > .bottom-wrapper .bottom-buttons-wrapper .checkout-button-wrapper .checkout-button:hover:not(:disabled) {
  box-shadow: 0 0 4px 4px rgba(85, 142, 5, 0.3);
}
@media (max-width: 767.98px) {
  #cart > .bottom-wrapper {
    padding: 1.5rem 1rem;
  }
  #cart > .bottom-wrapper .info-wrapper {
    display: none;
  }
  #cart > .bottom-wrapper .bottom-buttons-wrapper .go-to-list-button {
    width: calc(50% - 0.5rem);
    padding: 1rem 0;
  }
  #cart > .bottom-wrapper .bottom-buttons-wrapper .checkout-button-wrapper {
    width: calc(50% - 0.5rem);
  }
  #cart > .bottom-wrapper .bottom-buttons-wrapper .checkout-button-wrapper.extended {
    width: 100%;
  }
  #cart > .bottom-wrapper .bottom-buttons-wrapper .checkout-button-wrapper .checkout-button {
    width: 100%;
    padding: 1rem 0;
  }
  #cart > .bottom-wrapper .checkout-button-wrapper {
    display: block;
  }
  #cart > .bottom-wrapper .checkout-button-wrapper .checkout-button {
    width: 100%;
  }
}
.cart-summary {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 1rem;
}
.cart-summary .cart-item {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: wrap;
  gap: 0;
  border-width: 1px 0;
  border-style: solid;
  border-color: #D9B8A7;
  container-type: inline-size;
}
.cart-summary .cart-item.disabled {
  border-color: #ff6767;
}
.cart-summary .cart-item.disabled > *:not(.booking-selector) {
  border-color: #ff6767 !important;
}
.cart-summary .cart-item > *:not(.booking-selector-wrapper) {
  padding: 1.25rem;
}
.cart-summary .cart-item .desc-wrapper {
  width: 300px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 1rem;
  font-weight: 800;
  border-right: 1px solid #D9B8A7;
}
.cart-summary .cart-item .desc-wrapper .item-alert-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.35rem;
  font-size: 20px;
  color: #ff6767;
}
.cart-summary .cart-item .desc-wrapper .item-alert-wrapper button {
  background-color: #558e05;
  color: #fff;
  border: 0;
  border-radius: 4px;
  font-size: 12px;
}
.cart-summary .cart-item .desc-wrapper .image-wrapper {
  width: 60px;
  height: 60px;
  flex: 0 0 auto;
  border-radius: 50%;
  background-size: cover;
  background-position: center;
  cursor: pointer;
}
.cart-summary .cart-item .desc-wrapper .info-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.25rem;
  flex: 1 1 auto;
}
.cart-summary .cart-item .desc-wrapper .info-wrapper .text {
  text-decoration: underline;
  cursor: pointer;
}
.cart-summary .cart-item .desc-wrapper .info-wrapper .badges-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: stretch;
  flex-wrap: nowrap;
  gap: 0.25rem;
}
.cart-summary .cart-item .desc-wrapper .info-wrapper .badges-wrapper .custom-badge {
  min-width: 45px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.2rem;
  padding: 2px 8px;
  background-color: #D9B8A7;
  color: #031330;
  font-weight: bold;
  border-radius: 5px;
  line-height: normal;
  font-size: 12px;
}
.cart-summary .cart-item .date-time-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: start;
  flex-wrap: nowrap;
  gap: 0.1rem;
  border-right: 1px solid #D9B8A7;
}
.cart-summary .cart-item .guests-wrapper {
  min-width: 140px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  border-right: 1px solid #D9B8A7;
}
.cart-summary .cart-item .guests-wrapper .guest-rows {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: start;
  flex-wrap: nowrap;
  gap: 0.5rem;
}
.cart-summary .cart-item .guests-wrapper .guest-rows .guest-row {
  display: flex;
  flex-direction: row;
  justify-content: start;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.5rem;
}
.cart-summary .cart-item .guests-wrapper .guest-rows .guest-row .guest-number {
  background-color: #fff;
  font-weight: 800;
  color: #031330;
  width: 30px;
  height: 30px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  border-radius: 4px;
}
.cart-summary .cart-item .total-wrapper {
  min-width: 130px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  font-size: 20px;
  border-right: 1px solid #D9B8A7;
}
.cart-summary .cart-item .item-buttons-container {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
}
.cart-summary .cart-item .item-buttons-container .item-buttons-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: start;
  flex-wrap: nowrap;
  gap: 0.5rem;
}
.cart-summary .cart-item .item-buttons-container .item-buttons-wrapper button {
  width: 30px;
  height: 30px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
  background-color: #D9B8A7;
  border: none;
  border-radius: 4px;
  font-size: 18px;
  color: #031330;
  transition: all 0.3s ease;
}
.cart-summary .cart-item .item-buttons-container .item-buttons-wrapper button i {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
}
.cart-summary .cart-item .item-buttons-container .item-buttons-wrapper button.del-button:hover {
  background-color: #ff6767;
  color: #fff;
}
.cart-summary .cart-item .item-buttons-container .item-buttons-wrapper button.edit-button:not(:disabled):hover {
  color: #fff;
  background-color: #558e05;
}
.cart-summary .cart-item .item-buttons-container .item-buttons-wrapper button.edit-button:disabled {
  opacity: 0.3;
}
.cart-summary .cart-item .empty-wrapper {
  width: 60%;
  display: none;
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #D9B8A7;
  font-weight: 600;
}
.cart-summary .cart-item .empty-wrapper .time {
  color: #D9B8A7;
}
@container (max-width: 750px) {
  .cart-summary .cart-item > *:not(.booking-selector-wrapper) {
    padding: 0.5rem;
  }
  .cart-summary .cart-item .date-time-wrapper, .cart-summary .cart-item .guests-wrapper {
    display: none;
  }
  .cart-summary .cart-item .desc-wrapper {
    width: 60%;
    order: 1;
  }
  .cart-summary .cart-item .item-buttons-container {
    width: 40%;
    order: 2;
  }
  .cart-summary .cart-item .item-buttons-container .item-buttons-wrapper {
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 25%;
    flex: 1 0 auto;
  }
  .cart-summary .cart-item .item-buttons-container .item-buttons-wrapper button {
    width: 35px;
    height: 35px;
  }
  .cart-summary .cart-item .empty-wrapper {
    order: 3;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0.5rem;
    padding: 0.25rem 0.5rem;
  }
  .cart-summary .cart-item .total-wrapper {
    width: 40%;
    order: 4;
    padding: 0.25rem 0.5rem;
    border-top: 1px solid #D9B8A7;
    border-right-width: 0;
  }
  .cart-summary .cart-item .booking-selector {
    width: 0;
  }
}
.cart-summary .empty-cart-summary-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  margin: 2rem 0;
}
.cart-summary .empty-cart-summary-wrapper .empty-cart-summary {
  font-size: 14px;
  font-weight: 600;
  color: #7E7E7E;
}
.custom-tooltip {
  position: relative;
  display: inline-block;
}
.custom-tooltip .tooltiptext {
  visibility: hidden;
  min-width: 100px;
  background-color: #7E7E7E;
  color: #fff;
  text-align: center;
  padding: 5px;
  font-size: 12px;
  font-weight: normal;
  border-radius: 6px;
  position: absolute;
  z-index: 6;
  top: 50%;
  left: 150%;
  transform: translateY(-50%);
  opacity: 0;
  transition: opacity 0.3s;
}
.custom-tooltip .tooltiptext::after {
  content: "";
  position: absolute;
  z-index: 6;
  top: 50%;
  left: -10px;
  transform: translateY(-50%);
  border-width: 5px;
  border-style: solid;
  border-color: transparent #7E7E7E transparent transparent;
}
.custom-tooltip:hover .tooltiptext {
  visibility: visible;
  opacity: 1;
}
#cart-button {
  width: 50px;
  height: 50px;
  position: fixed;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  right: 25px;
  bottom: 25px;
  z-index: 5;
  background-color: #7E7E7E;
  color: #fff;
  border-radius: 50%;
  font-size: 22px;
  opacity: 0;
  transform: translateY(calc(100% + 30px));
  cursor: pointer;
  box-shadow: rgba(0, 0, 0, 0.3) 0px 19px 38px, rgba(0, 0, 0, 0.22) 0px 15px 12px;
  transition: all 0.3s ease-out;
}
#cart-button.show {
  opacity: 1;
  transform: translateY(0);
}
#cart-button:hover {
  transform: scale(1.05);
}
#cart-button .n-items-wrapper {
  width: 20px;
  height: 20px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  position: absolute;
  right: -2px;
  top: -6px;
  background-color: #558e05;
  border-radius: 50%;
  font-size: 12px;
  font-weight: bold;
}
.cart-totals .heading {
  padding-bottom: 1rem;
  margin-bottom: 0.75rem;
  border-bottom: 1px dashed #BDBFC2;
  font-size: 28px;
  font-weight: bold;
}
.cart-totals .summary-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.75rem;
}
.cart-totals .summary-wrapper > * {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
}
.cart-totals .summary-wrapper .net-amount-wrapper, .cart-totals .summary-wrapper .vat-wrapper {
  color: #7E7E7E;
}
.cart-totals .summary-wrapper .amount-wrapper {
  font-weight: 600;
}
.party {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 1rem;
  flex: 1 0 auto;
  container-type: inline-size;
}
.party .guest-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
}
.party .guest-wrapper:hover .detail-wrapper .icon-wrapper {
  background-color: #D9B8A7;
}
.party .guest-wrapper:hover .detail-wrapper .text {
  font-weight: bold;
}
.party .guest-wrapper .detail-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.5rem;
  flex: 1 0 auto;
}
.party .guest-wrapper .detail-wrapper .icon-wrapper {
  width: 40px;
  height: 40px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  background-color: #BDBFC2;
  border-radius: 6px;
  font-size: 18px;
  transition: all 0.3s ease;
}
.party .guest-wrapper .input-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  padding: 0.6rem 0.4rem;
  border: 1px solid #031330;
  border-radius: 6px;
}
.party .guest-wrapper .input-wrapper .display {
  width: 40%;
  height: 100%;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  padding: 0 2rem;
  font-size: 18px;
  font-weight: bold;
}
.party .guest-wrapper .input-wrapper button {
  width: 40px;
  height: 40px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  background-color: transparent;
  border: none;
  border-radius: 6px;
  transition: all 0.3s ease;
  aspect-ratio: 1;
}
.party .guest-wrapper .input-wrapper button:hover {
  background-color: #D9B8A7;
}
.party .guest-wrapper .input-wrapper button:hover svg * {
  fill-opacity: 1;
}
.party .guest-wrapper .input-wrapper button svg {
  width: 25px;
  height: 25px;
}
.party .guest-wrapper .input-wrapper button svg * {
  fill: #031330;
  fill-opacity: 0.2;
  transition: fill-opacity 0.3 ease;
}
@container (max-width: 325px) {
  .party .guest-wrapper {
    flex-direction: column;
    display: flex;
    flex-direction: column;
    justify-content: normal;
    align-items: normal;
    flex-wrap: nowrap;
    gap: 0.5rem;
  }
}
.party .children-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: wrap;
  gap: 1rem;
}
.party .children-wrapper .custom-select {
  position: relative;
  display: inline-block;
}
.party .children-wrapper .custom-select::after {
  content: "▼";
  position: absolute;
  top: 50%;
  right: 5px;
  transform: translateY(-50%);
  pointer-events: none;
  color: #031330;
}
.party .children-wrapper .custom-select select {
  min-width: 70px;
  padding: 0.25rem 0.5rem;
  background-color: transparent;
  border: 1px solid #031330;
  border-radius: 4px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.party .submit-button-wrapper {
  width: 100%;
}
.party .submit-button-wrapper button {
  width: 100%;
  padding: 0.5rem 1rem;
  color: #fff;
  background-color: #558e05;
  border: none;
  border-radius: 6px;
  font-weight: 600;
  font-size: 0.75rem;
}
.party .submit-button-wrapper button:disabled {
  background-color: #BDBFC2;
}
@container (min-width: 500px) {
  .party .submit-button-wrapper {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: end;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0;
  }
  .party .submit-button-wrapper button {
    width: auto;
  }
}
.party .party-loader-wrapper {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
}
.party .party-loader-wrapper .spinner-border {
  border-color: #D9B8A7 transparent #D9B8A7 #D9B8A7;
}
.datepicker-container {
  width: 100%;
  position: relative;
}
.datepicker-container.loading .datepicker-loader {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  pointer-events: all;
  opacity: 1;
}
.datepicker-container .datepicker-loader {
  width: 100%;
  height: 100%;
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  opacity: 0;
  transition: all 0.3s ease-out allow-discrete;
}
.datepicker-container .datepicker-loader .spinner-border {
  border-color: #D9B8A7 transparent #D9B8A7 #D9B8A7;
}
.datepicker-container .flatpickr-calendar {
  width: auto;
  max-height: none;
  box-shadow: none;
}
.datepicker-container .flatpickr-calendar.inline {
  top: 0;
}
.datepicker-container .flatpickr-calendar .flatpickr-months {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
  padding: 0.5rem 0;
}
.datepicker-container .flatpickr-calendar .flatpickr-months .flatpickr-prev-month, .datepicker-container .flatpickr-calendar .flatpickr-months .flatpickr-next-month {
  width: 28px;
  height: 28px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
  position: static;
  padding: 0;
  border: 1px solid #7E7E7E;
  border-radius: 50%;
  font-size: 13px;
  color: #7E7E7E;
  transition: all 0.3s ease-out;
}
.datepicker-container .flatpickr-calendar .flatpickr-months .flatpickr-prev-month:hover, .datepicker-container .flatpickr-calendar .flatpickr-months .flatpickr-next-month:hover {
  border-color: #D9B8A7;
  background-color: #D9B8A7;
  color: #fff;
}
.datepicker-container .flatpickr-calendar .flatpickr-months .flatpickr-prev-month.flatpickr-disabled, .datepicker-container .flatpickr-calendar .flatpickr-months .flatpickr-next-month.flatpickr-disabled {
  opacity: 0;
}
.datepicker-container .flatpickr-calendar .flatpickr-months .flatpickr-month {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
}
.datepicker-container .flatpickr-calendar .flatpickr-months .flatpickr-month .flatpickr-current-month {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.2rem;
  position: static;
  padding: 0;
}
.datepicker-container .flatpickr-calendar .flatpickr-months .flatpickr-month .flatpickr-current-month .cur-month {
  flex: 0 0 auto;
  margin: 0;
}
.datepicker-container .flatpickr-calendar .flatpickr-months .flatpickr-month .flatpickr-current-month .cur-month:hover {
  background-color: transparent;
}
.datepicker-container .flatpickr-calendar .flatpickr-months .flatpickr-month .flatpickr-current-month .numInputWrapper {
  width: 45px;
}
.datepicker-container .flatpickr-calendar .flatpickr-months .flatpickr-month .flatpickr-current-month .numInputWrapper:hover {
  background-color: transparent;
}
.datepicker-container .flatpickr-calendar .flatpickr-months .flatpickr-month .flatpickr-current-month .numInputWrapper .cur-year {
  font-weight: 700;
  width: 45px;
  padding: 0;
}
.datepicker-container .flatpickr-calendar .flatpickr-months .flatpickr-month .flatpickr-current-month .numInputWrapper .arrowUp, .datepicker-container .flatpickr-calendar .flatpickr-months .flatpickr-month .flatpickr-current-month .numInputWrapper .arrowDown {
  display: none;
}
.datepicker-container .flatpickr-calendar .flatpickr-innerContainer .flatpickr-rContainer .flatpickr-weekdays {
  height: auto;
}
.datepicker-container .flatpickr-calendar .flatpickr-innerContainer .flatpickr-rContainer .flatpickr-weekdays .flatpickr-weekdaycontainer {
  gap: 0.5rem;
}
.datepicker-container .flatpickr-calendar .flatpickr-innerContainer .flatpickr-rContainer .flatpickr-weekdays .flatpickr-weekdaycontainer .flatpickr-weekday {
  width: calc((100% - (6 * 0.5rem)) / 7);
  flex: none;
  padding: 0.5rem 0;
  font-weight: 600;
  color: black;
}
.datepicker-container .flatpickr-calendar .flatpickr-innerContainer .flatpickr-rContainer .flatpickr-days {
  width: auto;
}
.datepicker-container .flatpickr-calendar .flatpickr-innerContainer .flatpickr-rContainer .flatpickr-days .dayContainer {
  width: auto;
  max-width: none;
  min-width: none;
  gap: 0.5rem;
}
.datepicker-container .flatpickr-calendar .flatpickr-innerContainer .flatpickr-rContainer .flatpickr-days .dayContainer .flatpickr-day {
  width: calc((100% - (6 * 0.5rem)) / 7);
  max-width: none;
  height: auto;
  padding: 0.5rem 0;
  border-radius: 4px;
  flex-basis: auto;
  line-height: normal;
  transition: all 0.3s ease-out;
}
.datepicker-container .flatpickr-calendar .flatpickr-innerContainer .flatpickr-rContainer .flatpickr-days .dayContainer .flatpickr-day.today {
  border-color: transparent;
}
.datepicker-container .flatpickr-calendar .flatpickr-innerContainer .flatpickr-rContainer .flatpickr-days .dayContainer .flatpickr-day.selected {
  background-color: #D9B8A7;
  border-color: #D9B8A7;
  font-weight: 700;
  color: #031330;
}
.datepicker-container .flatpickr-calendar .flatpickr-innerContainer .flatpickr-rContainer .flatpickr-days .dayContainer .flatpickr-day.na {
  border-color: #ff6767;
  color: #ff6767;
  cursor: not-allowed;
}
.datepicker-container .flatpickr-calendar .flatpickr-innerContainer .flatpickr-rContainer .flatpickr-days .dayContainer .flatpickr-day.na:hover {
  background-color: transparent;
}
.datepicker-container .flatpickr-calendar .flatpickr-innerContainer .flatpickr-rContainer .flatpickr-days .dayContainer .flatpickr-day:hover:not(.flatpickr-disabled):not(.selected):not(.na) {
  border-color: #558e05;
  color: #558e05;
  background-color: transparent;
}
.timepicker {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
}
.timepicker .carousel .carousel-inner .carousel-item .wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: wrap;
  gap: 1rem;
}
.timepicker .carousel .carousel-inner .carousel-item .wrapper .time-badge {
  width: calc((100% - (4 - 1) * 1rem) / 4);
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  position: relative;
  padding: 1rem 0;
  color: #031330;
  border: 1px solid #031330;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.3s ease;
}
.timepicker .carousel .carousel-inner .carousel-item .wrapper .time-badge:hover:not(.active):not(.na) {
  color: #558e05;
  border-color: #558e05;
}
.timepicker .carousel .carousel-inner .carousel-item .wrapper .time-badge.na {
  color: #ff6767;
  border-color: #ff6767;
  cursor: not-allowed;
}
.timepicker .carousel .carousel-inner .carousel-item .wrapper .time-badge.na:hover .text {
  opacity: 0;
}
.timepicker .carousel .carousel-inner .carousel-item .wrapper .time-badge.na:hover .na-icon {
  opacity: 1;
}
.timepicker .carousel .carousel-inner .carousel-item .wrapper .time-badge.active {
  background-color: #D9B8A7;
  border-color: #D9B8A7;
  font-weight: bold;
  cursor: unset;
}
.timepicker .carousel .carousel-inner .carousel-item .wrapper .time-badge .na-icon {
  position: absolute;
  left: 50%;
  top: 50%;
  opacity: 0;
  transform: translate(-50%, -50%);
  transition: opacity 0.3s ease;
}
.timepicker .carousel .carousel-inner .carousel-item .wrapper .time-badge .na-icon svg {
  width: 20px;
  height: 20px;
}
.timepicker .carousel .carousel-inner .carousel-item .wrapper .time-badge .na-icon svg path {
  fill: #ff6767;
}
.timepicker .carousel-btns {
  display: flex;
  flex-direction: row;
  justify-content: end;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.5rem;
  margin-top: 1rem;
}
.timepicker .carousel-btns button {
  width: 30px;
  height: 30px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  background-color: transparent;
  border: 2px solid #031330;
  border-radius: 50%;
  transition: all 0.3s ease;
}
.timepicker .carousel-btns button:hover {
  background-color: #D9B8A7;
  border-color: #D9B8A7;
  color: #fff;
}
.timepicker .no-timeslots-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
}
.options-selector {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  flex: 1 0 auto;
}
.options-selector .detail .all-timeslots-btn-wrapper {
  padding-top: 1rem;
}
.options-selector .detail .all-timeslots-btn-wrapper .all-timeslots-btn {
  text-decoration: underline;
  cursor: pointer;
}
.options-selector .detail .option-row {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.25rem;
  padding: 1rem 0;
}
.options-selector .detail .option-row .day {
  font-weight: bold;
}
.options-selector .detail .option-row .month {
  text-transform: capitalize;
}
.options-selector .detail .option-row .time {
  font-weight: bold;
}
.options-selector .detail .plan-rows .plan-row {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  padding: 1rem 0;
  border-bottom: 2px solid #D9B8A7;
}
.options-selector .detail .plan-rows .plan-row:first-of-type {
  border-top: 2px solid #D9B8A7;
}
.options-selector .detail .plan-rows .plan-row .plan-left {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.5rem;
}
.options-selector .detail .plan-rows .plan-row .plan-left .plan-info {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  line-height: 18px;
  cursor: pointer;
}
.options-selector .detail .plan-rows .plan-row .plan-left .plan-info .plan-name {
  text-decoration: underline;
}
.options-selector .detail .plan-rows .plan-row .plan-left .plan-info .plan-refundable {
  font-size: 12px;
  color: #D9B8A7;
  font-weight: 700;
}
.options-selector .detail .plan-rows .plan-row .plan-popover {
  width: 30dvw;
  margin: 2rem auto 0 auto;
  padding: 0;
  border: 0;
  opacity: 0;
  border-radius: 4px;
  transform: scale(0);
  transition: all 0.5s ease-out allow-discrete;
}
.options-selector .detail .plan-rows .plan-row .plan-popover:popover-open {
  opacity: 1;
  transform: scale(1);
}
.options-selector .detail .plan-rows .plan-row .plan-popover:popover-open::backdrop {
  background-color: rgba(0, 0, 0, 0.5);
}
@starting-style {
  .options-selector .detail .plan-rows .plan-row .plan-popover:popover-open {
    opacity: 0;
    transform: scale(0);
  }
}
.options-selector .detail .plan-rows .plan-row .plan-popover::backdrop {
  background-color: rgba(0, 0, 0, 0);
  transition: all 0.5s ease-out allow-discrete;
}
@starting-style {
  .options-selector .detail .plan-rows .plan-row .plan-popover::backdrop {
    background-color: rgba(0, 0, 0, 0);
  }
}
.options-selector .detail .plan-rows .plan-row .plan-popover .plan-popover-header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  padding: 1rem;
  border-bottom: 1px solid #D9B8A7;
}
.options-selector .detail .plan-rows .plan-row .plan-popover .plan-popover-header .plan-popover-close {
  border: 0;
  background-color: transparent;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  cursor: pointer;
  font-size: 20px;
}
.options-selector .detail .plan-rows .plan-row .plan-popover .plan-popover-body {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 1rem;
  padding: 1rem;
}
.options-selector .detail .plan-rows .plan-row .plan-popover .plan-popover-body h2 {
  font-size: 18px;
  margin-bottom: 0.5rem;
}
.options-selector .detail .plan-rows .plan-row .plan-popover .plan-popover-body p {
  margin: 0;
  font-size: 15px;
}
@media (max-width: 1399.98px) {
  .options-selector .detail .plan-rows .plan-row .plan-popover {
    width: 40dvw;
  }
}
@media (max-width: 1199.98px) {
  .options-selector .detail .plan-rows .plan-row .plan-popover {
    width: 60dvw;
  }
}
@media (max-width: 991.98px) {
  .options-selector .detail .plan-rows .plan-row .plan-popover {
    width: 70dvw;
  }
}
@media (max-width: 767.98px) {
  .options-selector .detail .plan-rows .plan-row .plan-popover {
    width: 90dvw;
  }
}
@media (max-width: 575.98px) {
  .options-selector .detail .plan-rows .plan-row .plan-popover {
    width: 90dvw;
  }
}
.options-selector .option-rows {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  padding: 0 0.25rem;
  cursor: pointer;
}
.options-selector .option-rows .options-row {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  padding: 1rem 0;
  border-bottom: 2px solid #D9B8A7;
}
.options-selector .option-rows .options-row:first-of-type {
  border-top: 2px solid #D9B8A7;
}
.options-selector .option-rows .options-row .option-left {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.25rem;
}
.options-selector .option-rows .options-row .option-left .day {
  font-weight: bold;
}
.options-selector .option-rows .options-row .option-left .month {
  text-transform: capitalize;
}
.options-selector .option-rows .options-row .option-left .time {
  font-weight: bold;
}
.options-selector .option-rows .options-row .option-right .price {
  font-size: 18px;
}
.options-selector .carousel-btns {
  display: flex;
  flex-direction: row;
  justify-content: start;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.5rem;
  margin-top: 1rem;
}
.options-selector .carousel-btns button {
  width: 30px;
  height: 30px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  background-color: transparent;
  border: 2px solid #031330;
  color: #031330;
  border-radius: 50%;
  transition: all 0.3s ease;
}
.options-selector .carousel-btns button:hover {
  background-color: #D9B8A7;
  border-color: #D9B8A7;
  color: #fff;
}
.options-selector .no-options-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
}
.booking-selector {
  width: 100%;
  height: 800px;
  position: relative;
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.5);
}
.booking-selector.is-expanded {
  border-radius: 0 10px 10px 10px;
}
.booking-selector .options-wrapper {
  min-width: 400px;
  height: 540px;
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  padding: 2rem;
  background-color: #fff;
  border-radius: 10px 0 0 10px;
  box-shadow: -4px 0px 4px 0px rgba(0, 0, 0, 0.5);
  transition: all 0.7s ease-out allow-discrete;
}
.booking-selector .options-wrapper.is-expanded {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  left: -396px;
}
@starting-style {
  .booking-selector .options-wrapper.is-expanded {
    left: 0;
  }
}
.booking-selector .options-wrapper .title {
  font-weight: bold;
  padding-bottom: 1rem;
}
.booking-selector .selectors-wrapper {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  padding: 2rem;
  position: relative;
  z-index: 2;
  background-color: #fff;
  border-radius: 10px;
}
.booking-selector .selectors-wrapper .upper-wrapper .title {
  display: flex;
  flex-direction: row;
  justify-content: end;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  padding-bottom: 1rem;
  font-weight: bold;
}
.booking-selector .selectors-wrapper .upper-wrapper .accordion {
  margin-bottom: auto;
}
.booking-selector .selectors-wrapper .upper-wrapper .accordion .accordion-item {
  border: 0;
  border-radius: 0;
}
.booking-selector .selectors-wrapper .upper-wrapper .accordion .accordion-item .accordion-header .accordion-button {
  padding: 1rem 0.25rem 1rem 0;
  font-weight: bold;
  text-transform: capitalize;
  border-width: 0 0 2px 0;
  border-style: solid;
  border-color: black;
  border-radius: 0;
  transition: border-color 200ms linear;
}
.booking-selector .selectors-wrapper .upper-wrapper .accordion .accordion-item .accordion-header .accordion-button:not(.collapsed) {
  color: inherit;
  background-color: inherit;
  border-color: #D9B8A7;
}
.booking-selector .selectors-wrapper .upper-wrapper .accordion .accordion-item .accordion-header .accordion-button:focus {
  box-shadow: none;
}
.booking-selector .selectors-wrapper .upper-wrapper .accordion .accordion-item .accordion-header .accordion-button .icon-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  padding: 6px;
  margin-right: 0.5rem;
  background-color: #D9B8A7;
  border-radius: 6px;
}
.booking-selector .selectors-wrapper .upper-wrapper .accordion .accordion-item .accordion-header .accordion-button .icon-wrapper svg {
  width: 16px;
  height: 16px;
}
.booking-selector .selectors-wrapper .upper-wrapper .accordion .accordion-item .accordion-header .accordion-button .icon-wrapper svg:first-of-type * {
  fill: #031330;
}
.booking-selector .selectors-wrapper .upper-wrapper .accordion .accordion-item .accordion-header .accordion-button .icon-wrapper.calendar svg * {
  stroke: #031330;
  fill: unset;
}
.booking-selector .selectors-wrapper .upper-wrapper .accordion .accordion-item .accordion-body {
  padding: 1rem 0 0 0;
}
.booking-selector .selectors-wrapper .bottom-wrapper .submit-button {
  width: 100%;
  padding: 1rem 0;
  color: #fff;
  background-color: #558e05;
  border: none;
  border-radius: 6px;
  font-weight: 600;
  font-size: 15px;
  border: 1px solid transparent;
  transition: all 0.3s ease-out;
}
.booking-selector .selectors-wrapper .bottom-wrapper .submit-button:hover:not(:disabled) {
  box-shadow: 0 0 4px 4px rgba(85, 142, 5, 0.3);
}
.booking-selector .selectors-wrapper .bottom-wrapper .submit-button:disabled {
  background-color: #BDBFC2;
  cursor: not-allowed;
}
.modal-booking-selector {
  min-width: 40vw;
  max-width: 40vw;
  min-height: 90vh;
  padding: 0;
  border: none;
  border-radius: 10px;
  background-color: transparent;
  opacity: 0;
  transition: all 0.3s allow-discrete;
}
.modal-booking-selector[open] {
  opacity: 1;
  transform: translateX(0);
  transition: all 0.7s allow-discrete;
}
.modal-booking-selector[open]::backdrop {
  background-color: rgba(0, 0, 0, 0.5);
}
@starting-style {
  .modal-booking-selector[open]::backdrop {
    background-color: rgba(0, 0, 0, 0);
  }
}
@starting-style {
  .modal-booking-selector[open] {
    opacity: 0;
    transform: translateX(100vw);
  }
}
.modal-booking-selector.is-expanded {
  min-width: 60vw;
  max-width: 60vw;
}
.modal-booking-selector::backdrop {
  background-color: rgba(0, 0, 0, 0);
  transition: all 0.7s ease-out allow-discrete;
}
.modal-booking-selector .booking-selector {
  width: 100%;
  height: 100%;
  min-height: 90vh;
  display: flex;
}
.modal-booking-selector .booking-selector.is-expanded {
  border-radius: 10px;
}
.modal-booking-selector .booking-selector .options-wrapper {
  height: 90vh;
  position: static;
  box-shadow: none;
}
.modal-booking-selector .booking-selector .selectors-wrapper {
  width: 100%;
  height: 90vh;
}
@media (max-width: 1399.98px) {
  .modal-booking-selector {
    min-width: 60vw;
    max-width: 60vw;
  }
  .modal-booking-selector.is-expanded {
    min-width: 80vw;
    max-width: 80vw;
  }
  .modal-booking-selector .options-wrapper, .modal-booking-selector .selectors-wrapper {
    padding: 1rem;
  }
}
.offcanvas-booking-selector {
  min-width: 100dvw;
  min-height: 90dvh;
  max-width: 100dvw;
  max-height: 90dvh;
  margin: auto 0 0 0;
  padding: 1rem;
  border: 0;
  transform: translateY(100%);
  transition: all 0.7s allow-discrete;
}
.offcanvas-booking-selector[open] {
  display: block !important;
  transform: translateY(0%);
  transition: all 0.7s allow-discrete;
}
.offcanvas-booking-selector[open]::backdrop {
  background-color: rgba(0, 0, 0, 0.5);
}
@starting-style {
  .offcanvas-booking-selector[open]::backdrop {
    background-color: rgba(0, 0, 0, 0);
  }
}
@starting-style {
  .offcanvas-booking-selector[open] {
    transform: translateY(100%);
  }
}
.offcanvas-booking-selector::backdrop {
  background-color: rgba(0, 0, 0, 0);
  transition: all 0.7s ease-out allow-discrete;
}
.offcanvas-booking-selector > .heading {
  margin-bottom: 1rem;
}
.offcanvas-booking-selector > .heading > .upper-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  margin-bottom: 1rem;
}
.offcanvas-booking-selector > .heading > .upper-wrapper .text {
  font-size: 15px;
  font-weight: 600;
}
.offcanvas-booking-selector > .heading > .upper-wrapper .buttons-group {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 1rem;
}
.offcanvas-booking-selector > .heading > .upper-wrapper .buttons-group button {
  width: 30px;
  height: 30px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  background-color: transparent;
  color: #7E7E7E;
  border: 1px solid #7E7E7E;
  border-radius: 50%;
  transition: all 0.3s ease;
}
.offcanvas-booking-selector > .heading > .upper-wrapper .buttons-group button:hover:not(:disabled) {
  background-color: #D9B8A7;
  border-color: #D9B8A7;
  color: #fff;
}
.offcanvas-booking-selector > .heading > .upper-wrapper .buttons-group button:disabled {
  opacity: 0.3;
}
.offcanvas-booking-selector > .heading > .upper-wrapper .buttons-group button i {
  font-size: 0.75rem;
}
.offcanvas-booking-selector > .heading progress {
  width: 100%;
  height: 12px;
  appearance: none;
  border-radius: 10px;
}
.offcanvas-booking-selector > .heading progress::-webkit-progress-bar {
  background-color: #e0e0e0;
  border-radius: 10px;
}
.offcanvas-booking-selector > .heading progress::-webkit-progress-value {
  background: #D9B8A7;
  border-radius: 10px;
}
.offcanvas-booking-selector > .heading progress::-moz-progress-bar {
  background: #D9B8A7;
  border-radius: 10px;
}
.offcanvas-booking-selector > .main-wrapper {
  position: relative;
}
.offcanvas-booking-selector > .main-wrapper .fade-box {
  opacity: 0;
  height: 0;
  transition: none;
}
.offcanvas-booking-selector > .main-wrapper .fade-box.visible {
  opacity: 1;
  height: auto;
  transition: opacity 0.4s ease, height 0.4s ease, padding 0.4s ease, margin 0.4s ease;
}
.offcanvas-booking-selector > .main-wrapper .bottom-wrapper {
  min-width: calc(100dvw - 2rem);
  position: fixed;
  bottom: 1rem;
}
.offcanvas-booking-selector > .main-wrapper .bottom-wrapper .submit-button {
  width: 100%;
  padding: 1rem 0;
  color: #fff;
  background-color: #558e05;
  border: none;
  border-radius: 6px;
  font-weight: 600;
  font-size: 15px;
}
.offcanvas-booking-selector > .main-wrapper .bottom-wrapper .submit-button:disabled {
  background-color: #BDBFC2;
  cursor: not-allowed;
}
.booking-selector-wrapper .booking-selector-loader {
  width: 100%;
  height: 100%;
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 4;
  opacity: 0;
  background-color: rgba(0, 0, 0, 0.3);
  border-radius: inherit;
  transition: all 0.6s ease-out allow-discrete;
}
.booking-selector-wrapper .booking-selector-loader.loading {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  opacity: 1;
}
@starting-style {
  .booking-selector-wrapper .booking-selector-loader {
    opacity: 0;
  }
}
.booking-selector-wrapper .booking-selector-loader > .spinner-border {
  width: 4rem;
  height: 4rem;
  border-color: #D9B8A7 transparent #D9B8A7 #D9B8A7;
  border-width: 6px;
}
.product-types-card {
  width: 100%;
  height: 420px;
  position: relative;
  background-position: center;
  background-size: cover;
  cursor: pointer;
}
@media (max-width: 991.98px) {
  .product-types-card {
    height: auto;
    aspect-ratio: 1.3333333333;
  }
}
.product-types-card .content {
  width: 100%;
  height: 100%;
  padding: 3rem;
  border: 10px solid transparent;
  color: #fff;
  backdrop-filter: brightness(80%);
  transition: border-color 500ms linear, box-shadow 500ms linear;
}
@media (max-width: 991.98px) {
  .product-types-card .content {
    padding: 1rem;
  }
}
.product-types-card .content:hover {
  border-color: rgba(255, 255, 255, 0.3);
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.05);
  transition: border-color 500ms linear, box-shadow 500ms linear;
}
@media (min-width: 992px) {
  .product-types-card .content:hover .additional-title-wrapper .icon-wrapper {
    background-color: #fff;
  }
  .product-types-card .content:hover .description-wrapper .description {
    max-height: 200px;
    transition: max-height 1.5s linear;
  }
  .product-types-card .content:hover .description-wrapper .description * {
    opacity: 1;
  }
}
.product-types-card .content .additional-title-wrapper {
  height: 100%;
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0 0.75rem;
}
.product-types-card .content .additional-title-wrapper .icon-wrapper {
  width: 35px;
  height: 35px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  border-radius: 50%;
  background-color: #D9B8A7;
  transition: "background-color" 500ms ease;
}
.product-types-card .content .additional-title-wrapper .icon-wrapper svg {
  width: 18px;
  height: 18px;
}
.product-types-card .content .additional-title-wrapper .icon-wrapper svg path {
  fill: #031330;
}
.product-types-card .content .additional-title-wrapper .additional-title {
  line-height: 38px;
  text-transform: uppercase;
  letter-spacing: 0.25rem;
  font-weight: 500;
}
.product-types-card .content .description-wrapper {
  position: absolute;
  bottom: 3rem;
  width: calc(100% - 6rem);
}
@media (max-width: 991.98px) {
  .product-types-card .content .description-wrapper {
    width: calc(100% - 2rem);
  }
}
.product-types-card .content .description-wrapper .title {
  font-size: 28px;
  font-weight: bold;
}
.product-types-card .content .description-wrapper hr {
  height: 2px;
  margin: 0.5rem 0;
  background-color: #fff;
}
.product-types-card .content .description-wrapper .description {
  max-height: 0;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  font-size: 14px;
  transition: max-height 0.75s ease-out;
}
.product-types-card .content .description-wrapper .description * {
  opacity: 0;
  transition: opacity 0.5s ease-in;
}
.product-types-card .content .description-wrapper .description span svg {
  width: 30px;
  height: 16px;
}
.product-types-card .content .description-wrapper .description span svg path {
  fill: #fff;
}
.product-types-card .content .description-wrapper .arrow-wrapper {
  width: auto;
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  flex: 0 0 auto;
}
.products-card {
  width: 100%;
  margin-bottom: 2rem;
  color: #fff;
}
@media (min-width: 768px) {
  .products-card:hover .content-wrapper .upper-info {
    border-color: #fff;
  }
  .products-card:hover .content-wrapper .upper-info .additional-title-wrapper {
    opacity: 1;
  }
  .products-card:hover .content-wrapper .upper-info .right-wrapper .badges {
    opacity: 1;
  }
  .products-card:hover .content-wrapper .bottom-info .product-description {
    max-height: 200px;
    transition: max-height 1.5s linear;
  }
}
.products-card .content-wrapper {
  padding: 1rem;
  position: relative;
  aspect-ratio: 1.3333333333;
}
.products-card .content-wrapper .image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-color: #BDBFC2;
  background-position: center;
  filter: brightness(60%);
}
.products-card .content-wrapper .upper-info {
  width: calc(100% - 2rem);
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  position: absolute;
  z-index: 2;
  top: 1rem;
  left: 1rem;
  border: 2px solid transparent;
  transition: all 0.5s ease-in;
}
.products-card .content-wrapper .upper-info .additional-title-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  flex: 0 0 auto;
  border-right: 2px;
  border-right-color: white;
  border-right-style: solid;
  padding: 0.35rem;
  text-transform: uppercase;
  letter-spacing: 0.25rem;
  font-weight: 500;
  font-size: 14px;
  opacity: 0;
  transition: all 0.5s ease-in;
}
.products-card .content-wrapper .upper-info .right-wrapper {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  padding: 0.35rem;
}
.products-card .content-wrapper .upper-info .right-wrapper .badges {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  flex: 0 0 auto;
  gap: 0 0.5rem;
  font-size: 14px;
  font-weight: bold;
  opacity: 0;
  transition: all 0.5s ease-in;
}
.products-card .content-wrapper .upper-info .right-wrapper .badges .custom-badge {
  min-width: 45px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.2rem;
  background-color: #D9B8A7;
  color: #031330;
  padding: 0 0.2rem;
  border-radius: 5px;
  font-size: 14px;
}
.products-card .content-wrapper .upper-info .right-wrapper .heart-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  display: none;
}
.products-card .content-wrapper .upper-info .right-wrapper .heart-wrapper svg {
  width: 25px;
  height: 25px;
}
.products-card .content-wrapper .upper-info .right-wrapper .heart-wrapper svg path {
  stroke: #fff;
}
.products-card .content-wrapper .bottom-info {
  width: calc(100% - 2rem);
  position: absolute;
  z-index: 2;
  bottom: 1rem;
  left: 1rem;
}
.products-card .content-wrapper .bottom-info .product-name {
  width: 50%;
  font-size: 24px;
  font-weight: bold;
}
.products-card .content-wrapper .bottom-info .product-description {
  max-height: 0;
  font-size: 14px;
  overflow: hidden;
  transition: max-height 0.75s ease-out;
}
.products-card .btns-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
}
.products-card .btns-wrapper .price-wrapper {
  width: 60%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  position: relative;
  padding: 1rem;
  background-color: #D9B8A7;
  color: #031330;
  transition: all 0.2s ease-in;
}
.products-card .btns-wrapper .price-wrapper:hover {
  background-color: #031330;
}
.products-card .btns-wrapper .price-wrapper:hover .price {
  color: #fff;
}
.products-card .btns-wrapper .price-wrapper:hover .cart-add-btn {
  border-color: #fff;
}
.products-card .btns-wrapper .price-wrapper:hover .cart-add-btn svg path {
  fill: #fff;
}
.products-card .btns-wrapper .price-wrapper .custom-badge {
  height: 20px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  position: absolute;
  left: 1rem;
  top: -10px;
  padding: 1px 5px;
  background-color: #fff;
  color: #031330;
  border-radius: 3px;
  font-size: 10px;
  font-weight: 800;
}
.products-card .btns-wrapper .price-wrapper .price {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  font-size: 27px;
}
.products-card .btns-wrapper .price-wrapper .price.empty {
  font-size: 14px;
}
.products-card .btns-wrapper .price-wrapper .cart-add-btn {
  width: 40px;
  height: 40px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  border-radius: 50%;
  border: 2px solid #031330;
  cursor: pointer;
  transition: all 0.2s ease-in;
}
.products-card .btns-wrapper .price-wrapper .cart-add-btn svg {
  width: 20px;
  height: 20px;
}
.products-card .btns-wrapper .price-wrapper .cart-add-btn svg path {
  fill: #031330;
}
.products-card .btns-wrapper .price-wrapper .cart-add-btn:hover {
  background-color: #D9B8A7;
  border-color: #D9B8A7;
}
.products-card .btns-wrapper .price-wrapper .cart-add-btn:hover svg path {
  fill: #031330;
}
.products-card .btns-wrapper .detail-wrapper {
  width: 40%;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0 1rem;
  position: relative;
  background-color: #031330;
  color: #fff;
  cursor: pointer;
  transition: background-color 0.2s ease-in;
}
.products-card .btns-wrapper .detail-wrapper:hover {
  background-color: #D9B8A7;
}
.products-card .btns-wrapper .detail-wrapper:hover .text-big {
  opacity: 0;
}
.products-card .btns-wrapper .detail-wrapper:hover .icon {
  display: block;
}
.products-card .btns-wrapper .detail-wrapper:hover .text {
  color: #031330;
  display: block;
}
.products-card .btns-wrapper .detail-wrapper .text-big {
  font-size: 20px;
  font-weight: bold;
  opacity: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.products-card .btns-wrapper .detail-wrapper .text {
  font-size: 20px;
  font-weight: bold;
  display: none;
}
.products-card .btns-wrapper .detail-wrapper .icon {
  display: none;
}
.products-card .btns-wrapper .detail-wrapper .icon svg {
  width: 30px;
}
.products-card .btns-wrapper .detail-wrapper .icon svg path {
  fill: #031330;
}
@media (max-width: 767.98px) {
  .products-card .content-wrapper .upper-info {
    border-color: #fff;
  }
  .products-card .content-wrapper .upper-info .additional-title-wrapper {
    opacity: 1;
  }
  .products-card .content-wrapper .upper-info .right-wrapper .badges {
    opacity: 1;
  }
  .products-card .content-wrapper .bottom-info .product-description {
    max-height: 200px;
    transition: max-height 1.5s linear;
  }
}
.products-card-large {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: wrap;
  gap: 0;
  margin-bottom: 2rem;
  border: 1px solid #031330;
}
.products-card-large:hover .upper-section .info-wrapper .bottom-info .product-description {
  max-height: 200px;
  transition: max-height 1.5s linear;
}
.products-card-large .upper-section {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
}
.products-card-large .upper-section .info-wrapper {
  max-width: 1000px;
  width: 40%;
  position: relative;
  padding: 1rem;
  transition-property: max-width, padding;
  transition-duration: 0.5s, 0s;
  transition-timing-function: linear, linear;
  transition-delay: 0s, 0s;
}
.products-card-large .upper-section .info-wrapper.not-collapsed {
  max-width: 0;
  padding: 0;
  transition-delay: 0s, 0.5s;
}
.products-card-large .upper-section .info-wrapper.not-collapsed > *:not(.collapse-btn) {
  opacity: 0;
  transition: opacity 0.2s linear;
}
.products-card-large .upper-section .info-wrapper.not-collapsed .collapse-btn {
  transform: translateX(-15px) rotateZ(180deg);
}
.products-card-large .upper-section .info-wrapper > * {
  transition: opacity 1s linear;
  transition-delay: 0.3s;
}
.products-card-large .upper-section .info-wrapper .collapse-btn {
  width: 30px;
  height: 30px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  position: absolute;
  right: -30px;
  top: 50%;
  z-index: 1;
  transform: translate(-50%, 0);
  background-color: #fff;
  border-radius: 50%;
  box-shadow: 0px 4px 4px 0px #0000001A;
  cursor: pointer;
  transition: transform 0.5s linear;
}
.products-card-large .upper-section .info-wrapper .upper-info {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: end;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
}
.products-card-large .upper-section .info-wrapper .upper-info .product-type-icon-wrapper {
  width: 40px;
  height: 40px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  border-radius: 50%;
  background-color: #D9B8A7;
}
.products-card-large .upper-section .info-wrapper .upper-info .product-type-icon-wrapper svg {
  width: 20px;
  height: 20px;
}
.products-card-large .upper-section .info-wrapper .upper-info .product-type-icon-wrapper svg * {
  fill: #031330;
}
.products-card-large .upper-section .info-wrapper .bottom-info {
  width: calc(100% - 2rem);
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  gap: 1rem 0;
  position: absolute;
  left: 1rem;
  bottom: 1rem;
}
.products-card-large .upper-section .info-wrapper .bottom-info .additional-title-wrapper {
  width: fit-content;
  padding: 0.5rem;
  border: 1px solid #031330;
  text-transform: uppercase;
  font-size: 13px;
  letter-spacing: 0.25rem;
  font-weight: 500;
}
.products-card-large .upper-section .info-wrapper .bottom-info .product-name {
  font-size: 24px;
  font-weight: bold;
}
.products-card-large .upper-section .info-wrapper .bottom-info .product-description {
  max-height: 0;
  font-size: 14px;
  overflow: hidden;
  transition: max-height 0.75s ease-out;
}
.products-card-large .upper-section .carousel-wrapper {
  width: 60%;
  height: 280px;
  flex: 1 0 auto;
  position: relative;
  transition: width 1s ease-in;
}
.products-card-large .upper-section .carousel-wrapper .expand-tab {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #031330;
  transition: transform 0.5s linear;
  transform-origin: 0 100%;
  transform: scaleY(0);
}
.products-card-large .upper-section .carousel-wrapper .expand-tab.is-expanded {
  transform: scaleY(1);
}
.products-card-large .bottom-section {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
}
.products-card-large .bottom-section .datetime-wrapper {
  width: 40%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0 0.75rem;
  padding: 1rem;
  container-type: inline-size;
}
.products-card-large .bottom-section .datetime-wrapper > .left-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0 0.75rem;
}
.products-card-large .bottom-section .datetime-wrapper > .left-wrapper .calendar-icon-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  border-radius: 5px;
  padding: 5px;
  background-color: #D9B8A7;
}
.products-card-large .bottom-section .datetime-wrapper > .left-wrapper .calendar-icon-wrapper svg {
  width: 20px;
  height: 20px;
}
.products-card-large .bottom-section .datetime-wrapper > .left-wrapper .calendar-icon-wrapper svg * {
  stroke: #031330;
}
.products-card-large .bottom-section .datetime-wrapper > .left-wrapper .date-wrapper, .products-card-large .bottom-section .datetime-wrapper > .left-wrapper .time-wrapper {
  line-height: normal;
  font-weight: 800;
  text-transform: capitalize;
}
.products-card-large .bottom-section .datetime-wrapper .badges-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: stretch;
  flex-wrap: nowrap;
  gap: 0.75rem;
}
.products-card-large .bottom-section .datetime-wrapper .badges-wrapper .custom-badge {
  min-width: 45px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.2rem;
  padding: 4px 12px;
  background-color: #D9B8A7;
  font-weight: bold;
  border-radius: 5px;
  line-height: normal;
  font-size: 16px;
}
@container (max-width: 395px) {
  .products-card-large .bottom-section .datetime-wrapper .badges-wrapper {
    display: none;
  }
}
.products-card-large .bottom-section .btns-wrapper {
  width: 60%;
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper {
  width: 60%;
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0 2rem;
  position: relative;
  padding: 1rem;
  background-color: #D9B8A7;
  color: #031330;
  transition: all 0.2s ease-in;
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper:hover, .products-card-large .bottom-section .btns-wrapper .price-wrapper.is-expanded {
  background-color: #031330;
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper:hover .price, .products-card-large .bottom-section .btns-wrapper .price-wrapper.is-expanded .price {
  color: #fff;
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper:hover .cart-wrapper .cart-add-btn, .products-card-large .bottom-section .btns-wrapper .price-wrapper.is-expanded .cart-wrapper .cart-add-btn {
  border-color: #fff;
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper:hover .cart-wrapper .cart-add-btn svg path, .products-card-large .bottom-section .btns-wrapper .price-wrapper.is-expanded .cart-wrapper .cart-add-btn svg path {
  fill: #fff;
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper:hover .cart-wrapper .cart-text, .products-card-large .bottom-section .btns-wrapper .price-wrapper.is-expanded .cart-wrapper .cart-text {
  color: #fff;
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper:hover .expand-btn-wrapper .expand-btn, .products-card-large .bottom-section .btns-wrapper .price-wrapper.is-expanded .expand-btn-wrapper .expand-btn {
  background-color: #D9B8A7;
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper .custom-badge {
  height: 20px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  position: absolute;
  left: 1rem;
  top: -10px;
  padding: 1px 5px;
  background-color: #fff;
  color: #031330;
  border-radius: 3px;
  font-size: 10px;
  font-weight: 800;
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper .price {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  flex: 0 0 auto;
  font-size: 27px;
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper .price.empty {
  font-size: 14px;
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper .cart-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  gap: 0 1rem;
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper .cart-wrapper .cart-add-btn {
  width: 40px;
  height: 40px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  flex: 0 0 auto;
  border-radius: 50%;
  border: 2px solid #031330;
  cursor: pointer;
  transition: all 0.2s ease-in;
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper .cart-wrapper .cart-add-btn svg {
  width: 20px;
  height: 18px;
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper .cart-wrapper .cart-add-btn svg path {
  fill: #031330;
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper .cart-wrapper .cart-add-btn:hover {
  background-color: #D9B8A7;
  border-color: #D9B8A7;
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper .cart-wrapper .cart-add-btn:hover svg path {
  fill: #031330;
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper .cart-wrapper .cart-text {
  font-weight: 300;
  font-size: 14px;
  color: #031330;
}
@media (max-width: 1199.98px) {
  .products-card-large .bottom-section .btns-wrapper .price-wrapper .cart-wrapper .cart-text {
    display: none;
  }
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper .expand-btn-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: end;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  flex: 1 0 auto;
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper .expand-btn-wrapper .expand-btn {
  width: 40px;
  height: 40px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  background-color: #fff;
  border-radius: 50%;
  cursor: pointer;
  transition: background-color 0.2s ease-in, transform 0.5s linear;
  display: none;
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper .expand-btn-wrapper .expand-btn.is-expanded {
  transform: rotateZ(180deg);
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper .expand-btn-wrapper .expand-btn svg {
  width: 20px;
  height: 20px;
}
.products-card-large .bottom-section .btns-wrapper .price-wrapper .expand-btn-wrapper .expand-btn svg * {
  fill: #031330;
}
.products-card-large .bottom-section .btns-wrapper .detail-wrapper {
  width: 40%;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0 1rem;
  position: relative;
  background-color: #031330;
  color: #fff;
  cursor: pointer;
  transition: background-color 0.2s ease-in;
}
.products-card-large .bottom-section .btns-wrapper .detail-wrapper:hover {
  background-color: #D9B8A7;
}
.products-card-large .bottom-section .btns-wrapper .detail-wrapper:hover .text-big {
  opacity: 0;
}
.products-card-large .bottom-section .btns-wrapper .detail-wrapper:hover .icon {
  display: block;
}
.products-card-large .bottom-section .btns-wrapper .detail-wrapper:hover .text {
  color: #031330;
  display: block;
}
.products-card-large .bottom-section .btns-wrapper .detail-wrapper .text-big {
  font-size: 20px;
  font-weight: bold;
  opacity: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.products-card-large .bottom-section .btns-wrapper .detail-wrapper .text {
  font-size: 20px;
  font-weight: bold;
  display: none;
}
.products-card-large .bottom-section .btns-wrapper .detail-wrapper .icon {
  display: none;
}
.products-card-large .bottom-section .btns-wrapper .detail-wrapper .icon svg {
  width: 30px;
}
.products-card-large .bottom-section .btns-wrapper .detail-wrapper .icon svg path {
  fill: #031330;
}
.booking-summary {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  margin-bottom: 2rem;
}
.booking-summary.loading {
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  position: relative;
}
.booking-summary.loading::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.1) 25%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0.1) 75%);
  background-size: 200% 100%;
  border-radius: 10px;
  animation: loading-shimmer 1.5s infinite;
}
@keyframes loading-shimmer {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}
.booking-summary .left-wrapper {
  width: 30%;
}
.booking-summary .left-wrapper .carousel-inner {
  border-radius: 10px;
}
.booking-summary .left-wrapper .carousel-inner img {
  border-radius: 10px;
}
.booking-summary .left-wrapper .carousel-control-prev {
  border-radius: 10px 0 0 10px;
}
.booking-summary .left-wrapper .carousel-control-next {
  border-radius: 0 10px 10px 0;
}
.booking-summary .right-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 1.5rem;
  flex: 1 0 auto;
  padding-left: 0.5rem;
}
.booking-summary .right-wrapper .top-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
}
.booking-summary .right-wrapper .top-wrapper .info-wrapper {
  line-height: normal;
}
.booking-summary .right-wrapper .top-wrapper .info-wrapper .structure-name {
  font-size: 18px;
  font-weight: 500;
}
.booking-summary .right-wrapper .top-wrapper .info-wrapper .booking-name {
  font-size: 15px;
  color: #7E7E7E;
}
.booking-summary .right-wrapper .top-wrapper .price {
  font-size: 20px;
}
.booking-summary .right-wrapper .bottom-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: end;
  flex-wrap: nowrap;
  gap: 0;
}
.booking-summary .right-wrapper .bottom-wrapper .summary-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.5rem;
}
.booking-summary .right-wrapper .bottom-wrapper .summary-wrapper .period {
  font-size: 18px;
  font-weight: 500;
  line-height: normal;
}
.booking-summary .right-wrapper .bottom-wrapper .summary-wrapper .products-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.5rem;
}
.booking-summary .right-wrapper .bottom-wrapper .summary-wrapper .products-wrapper .product-details-item {
  line-height: normal;
}
.booking-summary .right-wrapper .bottom-wrapper .summary-wrapper .products-wrapper .product-details-item .product-name {
  font-size: 15px;
}
.booking-summary .right-wrapper .bottom-wrapper .summary-wrapper .products-wrapper .product-details-item .product-date {
  font-size: 14px;
  color: #7E7E7E;
}
.booking-summary .right-wrapper .bottom-wrapper .summary-wrapper .status {
  font-weight: bold;
}
.booking-summary .right-wrapper .bottom-wrapper .details-button {
  padding: 10px 40px;
  background-color: #D9B8A7;
  color: #fff;
  border: none;
  border-radius: 10px;
  transition: all 0.3s ease-out;
}
.booking-summary .right-wrapper .bottom-wrapper .details-button:hover {
  transform: scale(1.05);
}
@media (max-width: 767.98px) {
  .booking-summary {
    flex-direction: column;
    align-items: center;
    margin-bottom: 2.5rem;
  }
  .booking-summary .left-wrapper {
    width: 100%;
  }
  .booking-summary .right-wrapper {
    width: 100%;
    padding: 1rem 0 0 0;
  }
}
.booking-details {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  margin: 2rem auto;
}
.booking-details > .booking-header {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0;
  margin-bottom: 1rem;
  line-height: 28px;
}
.booking-details > .booking-header .top-wrapper {
  font-size: 28px;
}
.booking-details > .booking-header .top-wrapper .booking-id {
  color: #D9B8A7;
  font-weight: 700;
}
.booking-details > .booking-header .bottom-wrapper {
  font-size: 18px;
}
.booking-details > .booking-header .bottom-wrapper .day {
  color: #D9B8A7;
  font-weight: 700;
}
@media (max-width: 767.98px) {
  .booking-details > .booking-header {
    flex-direction: column;
  }
}
.booking-details > .status-wrapper {
  font-size: 16px;
  margin-bottom: 1rem;
}
.booking-details > .main-wrapper {
  width: 100%;
}
.booking-details > .payment-wrapper {
  margin-top: 1rem;
}
.booking-details > .payment-wrapper .payment-info > * {
  margin: 0;
}
.booking-details > .payment-wrapper .heading {
  padding: 0.25rem 0.5rem;
  margin-bottom: 1rem;
  font-size: 1.125rem;
  background-color: #D9B8A7;
  color: #031330;
  border-width: 1px 0;
  border-style: solid;
  border-color: #031330;
}
.booking-details > .payment-wrapper .payment-btns-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.5rem;
}
.booking-details > .payment-wrapper .payment-btns-wrapper .payment-btn-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: normal;
  align-items: normal;
  flex-wrap: nowrap;
  gap: 0.25rem;
}
.booking-details .payment-method-label {
  font-size: 18px;
}
.booking-details .payment-method-label span {
  font-weight: 600;
  color: #D9B8A7;
}
.booking-details .payment-dialog-label {
  text-decoration: underline;
  cursor: pointer;
}
.booking-details dialog.payment-dialog {
  width: 830px;
  z-index: 4;
  margin: 2rem auto 0 auto;
  border: 0;
  padding: 0;
  transform: scale(0);
  transition: all 0.5s ease-out allow-discrete;
}
.booking-details dialog.payment-dialog[open] {
  transform: scale(1);
}
.booking-details dialog.payment-dialog[open]::backdrop {
  background-color: rgba(0, 0, 0, 0.5);
}
@starting-style {
  .booking-details dialog.payment-dialog[open]::backdrop {
    background-color: rgba(0, 0, 0, 0);
  }
}
@starting-style {
  .booking-details dialog.payment-dialog[open] {
    transform: scale(0);
  }
}
.booking-details dialog.payment-dialog::backdrop {
  background-color: rgba(0, 0, 0, 0);
  transition: all 0.5s ease-out allow-discrete;
}
.booking-details dialog.payment-dialog .payment-dialog-header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  padding: 1rem;
  border-bottom: 1px solid #D9B8A7;
}
.booking-details dialog.payment-dialog .payment-dialog-header i {
  font-size: 20px;
  cursor: pointer;
}
.booking-details dialog.payment-dialog .payment-dialog-body {
  padding: 1rem;
}
@media (max-width: 767.98px) {
  .booking-details dialog.payment-dialog {
    width: calc(100% - 3rem);
  }
}
.booking-details dialog.payment-dialog button.close {
  display: none;
}
html {
  scrollbar-width: none !important;
}
body {
  background-color: #fff !important;
  color: black;
  overflow-x: hidden !important;
}
.custom-container {
  width: 100%;
  margin: 0 auto;
  padding: 0 1.5rem;
}
@media (min-width: 576px) {
  .custom-container {
    max-width: 576px;
  }
}
@media (min-width: 768px) {
  .custom-container {
    max-width: 800px;
  }
}
@media (min-width: 992px) {
  .custom-container {
    max-width: 1040px;
  }
}
@media (min-width: 1200px) {
  .custom-container {
    max-width: 1280px;
  }
}
@media (min-width: 1400px) {
  .custom-container {
    max-width: 1480px;
  }
}
*:focus-visible {
  outline: none;
}
button {
  color: inherit;
  cursor: pointer;
}
select {
  color: inherit;
}
