:root { 
  --background-color: #ffffff; /* Background color for the entire website, including individual sections */
  --default-color: #575962; /* Default color used for the majority of the text content across the entire website */
  --heading-color: #485664; /* Color for headings, subheadings and title throughout the website */
  --primary-color: #4eceff; /* Accent color that represents your brand on the website. It's used for buttons, links, and other elements that need to stand out */
  --primary-active-color: #1d6791; /* Accent color that represents your brand on the website. It's used for buttons, links, and other elements that need to stand out */
  --primary-light: #c2ebff; /* Accent color that represents your brand on the website. It's used for buttons, links, and other elements that need to stand out */
  --accent-color: #039BE5; /* Accent color that represents your brand on the website. It's used for buttons, links, and other elements that need to stand out */
  --surface-color: #ffffff; /* The surface color is used as a background of boxed elements within sections, such as cards, icon boxes, or other elements that require a visual separation from the global background. */
  --contrast-color: #ffffff; /* Contrast color for text, ensuring readability against backgrounds of accent, heading, or default colors. */
  --nav-height: 64px;
  --gray-color: #cccccc;
  --gray-light-color: #e9e9e9;
}
@font-face {
  font-family: 'Open Sans';
  src: url('../fonts/OpenSans-Regular.ttf')  format('truetype'); /* Safari, Android, iOS */
}
html {
	  height: 100%;
	  box-sizing: border-box;
	}
body {
	/*padding-top: 5rem;*/
	position: relative;
	font-family: "Lato", FontAwesome, sans-serif;
  	font-size: 14px;
	background-color: var(--background-color);
	min-height: 100%;
	padding-bottom: 10rem;
}
main {
	min-height: 100%;
}
a {
 	color: #38afda;
}
a:hover {
	color: #0a779e;
	text-decoration: none;
}
.font14 {
	font-size: 14px;
}
.font12 {
	font-size: 12px;
}
.row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: 0; 
    margin-left: 0; 
}
.container {
    width: 100%;
    padding-right: 0; 
    padding-left: 0; 
    margin-right: auto;
    margin-left: auto;
}
.loader {
  border: 24px solid #f3f3f3;
  border-radius: 50%;
  border-top: 24px solid #38afda;
  width: 120px;
  height: 120px;
  -webkit-animation: spin 2s linear infinite;
  animation: spin 2s linear infinite;
  margin: 20px auto;
}

@-webkit-keyframes spin {
  0% { -webkit-transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
.navbar {
	padding: .2rem 1rem;
}
.navbar-light {
	background-color: #ffffff;
}
.navbar-brand {
	margin-right: 0px;
}
.navbar-brand img {
	height: 40px;
	float: left;
}
.navbar-brand .title {
	float: left;
	font-size: 12px;
	line-height: 18px;
	margin-top: 2px;
	/*width: 40%;*/
}
.navbar-brand .title .bold {
	font-size: 16px;
	font-weight: 600;
	white-space: normal;
}
.header-title-info {
	font-size: 22px;
	font-weight: 600;
	letter-spacing: 0.5px;
	color: #38afda;
}
.dropdown-menu {
	min-width: 15rem;
	margin-top: 10px;
	border-radius: 0px;	
	border: none;
	box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.17);
}
.img-lang {
	width: 20px;
	height: 20px;
	border: 2px solid #acacac;
}


.steps {
	background-color: #f7f7f7;
}
.step-on {
	background-color: var(--primary-color);
	float: left;
	border-radius: 40px;
	padding: 5px 25px;
}
.step-num-on {
	float: left;
	width: 35px;
	height: 35px;
  	background-color: var(--primary-light);
  	color: var(--primary-color);
  	font-weight: 500;
  	border-radius: 50%!important;
	font-size: 22px;
	text-align: center;
}
.step-num-on .text {
}
.step-text-on {
	float: left;
	margin: 8px 20px;
	color: #ffffff;
}
.icon-next-on, .icon-next-off {
	float: right;
	width: 50px;
	height: 100%;
	align-items: center!important;
	vertical-align: middle;
}
.icon-next-on img, .icon-next-off img {
	height: 14px;
	margin: 17px 40px;
}
.step-off {
	background-color: none;
	float: left;
	border-radius: 40px;
	padding: 5px 25px;
}
.step-num-off {
	float: left;
	width: 35px;
	height: 35px;
  	background-color: #d0d0d0;
  	color: #0d0d0d;
  	font-weight: 500;
  	border-radius: 50%!important;
	font-size: 22px;
	text-align: center;
}
.step-text-off {
	float: left;
	margin: 8px 20px;
	color: #0d0d0d;
}
.step-current-proses {
	color: #777777;
	margin-right: 10px;
}
.step-current {
	color: #38afda;
	margin: 0px 20px;
}
.step-num-current {
	float: left;
	width: 25px;
	height: 25px;
	background-color: #38afda;
	color: #ffffff;
  	border-radius: 50%!important;
	text-align: center;
}
.step-title {
	font-size: 14px;
	font-weight: bold;
}
.step-subtitle {
	font-size: 12px;
	color: #999999;
}
.card {
	border-radius: 5px;
	background-color: #ffffff;
	border: none;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.card-border {
	border: 1px solid rgba(0,0,0,.125);
}
.card-header {
	background-color: #ffffff;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.6px;
	padding: .5rem;
	border-left: 3px solid #38afda;
}
.card-body {
	padding: 10px;
	font-size: 12px;
}
.panelchosendate {
	border-radius: 5px;
	background-color: #ffffff;
	font-size: 12px;
	letter-spacing: 0.3px;
	text-align: center;
	color: #333333;
	border: none;
	width: 100%;
    margin-left: 0;
    display: none;
}
.chosendatepart {
    text-align: left;
    padding: 5px 25px;
}
.chosendiv {
	padding: 5px;
}
.chosenicon {
    width: 40px;
}
.chosenicon img{
    width: 18px;
    height: 16px;
}
.chosenlabel {
	color: var(--primary-color);
	font-weight: bold;
	line-height: 12px;
}
.chosenvalue {
    font-size: 13px;
}
.drop-icon {
	float: right;
	width: 15px;
}
.hasrightdivider {
    /*border-right: 1px solid #bbbbbb;*/
    border-bottom: 1px solid #bbbbbb;
}
.right-divider {
	border-right: 1px solid #d7d7d7;
}
.room-rate-divider {
	min-width: 100%;
	padding: 0 10px;
	border-bottom: 1px solid #d7d7d7;
}
a.dropdown-link {
	color: #000000;
	margin-left: 0px;
}
a.dropdown-link:hover {
	text-decoration: none;
}
.dropdown-item {
	font-size: .8rem;
}

.slick-prev:before, .slick-next:before {
	opacity: 1;
	font-size: 40px;
	color: var(--primary-color);
}

.col-room-img {
	min-height: 140px;
}

.room-img {
	width: 100%;
	height: 100px;
	background-color: #cccccc;
	border-radius: 5px;
	overflow: hidden;
}
.room-img img.img-room {
	float: left;
	width: 100%;
	min-height: 100%;
    object-fit: cover;
}

.dropdown-chosendate {
/*	margin-top: 50px;*/
	margin-left: 10px;
	width: 90%;
}

.dropdown-chosendate .scroll {
	max-height: 250px;
	overflow-y: scroll;
}
.dropdown-chosendate-mini {
	margin-top: 15px;
	margin-left: -5px;
	min-width: 300px;
}
.dropdown-duration-mini {
	margin-top: 15px;
	margin-left: -120px;
	min-width: 280px;
}
.dropdown-duration-mini.scroll {
	max-height: 250px;
	overflow-y: scroll;
}
.dropdown-guest-mini {
	margin-top: 15px;
	margin-left: -140px;
	min-width: 200px;
}
.dropdown-guest-mini.scroll {
	max-height: 250px;
	overflow-y: scroll;
}
.dropdown-room-mini {
	margin-top: 15px;
	margin-left: -140px;
	min-width: 200px;
}
.dropdown-room-mini.scroll {
	max-height: 250px;
	overflow-y: scroll;
}
.drop-icon {
	/*position: absolute;
	padding: 10px 0;*/
}
.drop-icon img{
	width: 13px;
}

.row-kategori {
	padding: 5px 0;
	border-bottom: 3px solid #f7f7f7;
}
.table-nav-kat {
	min-width: 50%;
}
.table-nav-kat tr td {
	min-width: 70px;
}
.nav-kategori {
	display: block;
	padding: 10px 30px;
	color: #bbbbbb;
	font-weight: 600;
	letter-spacing: 0.4px;
	text-align: center;
}
.nav-kategori.active {
	border-radius: 2px;
  	background-color: #ffffff;
  	border: solid 1px #38afda;
  	color: #38afda;
}

.room-list {
	width: 100%;
    margin-left: 0;
}
.room-item {
/*	padding-bottom: 30px;*/
	margin-left: 0px;
	margin-right: 0px;
	transition: all 0.3s ease;
}
.room-item:hover, .room-item-hasbottomdivider:hover {
	transform: scale(1.02);
	box-shadow: 0px 20px 29px -10px rgba(0, 0, 0, 0.3);
}
.room-item-hasbottomdivider {
	padding-top: 15px;
	padding-bottom: 15px;
	margin-left: 0px;
	margin-right: 0px;
  border-bottom: 1px solid #e3e3e3;
	transition: box-shadow 0.15s ease-in-out;
}
.room-item-hasrightdivider {
    border-right: none;
}
.service-item .card {
	transition: all 0.3s ease;
}
.service-item .card:hover {
	transform: scale(1.02);
	box-shadow: 0px 20px 29px -10px rgba(0, 0, 0, 0.3);
}
.service-title {
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0.4px;
	color: #333333;
  line-height: 18px;
  cursor: pointer;
}
.service-sub-title {
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0.4px;
	color: #333333;
  line-height: 18px;
}
.service-maxguest {
	font-size: 12px;
}
.service-stock {
	font-size: 12px;
	color: var(--primary-color);
}
.service-include {
	margin-top: 10px;
}

.btn-cart-float {
	position: fixed;
	bottom: 30px;
	right: 30px;
	z-index: 1200;
	background: #ffffff;
	width: 65px;
	height: 65px;
	border-radius: 50%;
	border: none;
	box-shadow: 0 2px 6px rgba(0,0,0,.15);
  cursor: pointer;
}

#cartBlock.is-sticky {
	position: fixed;
	top: 65px;
	right: 4.5%;
	width: 30%;
}

/**/

.category-wrapper {
  position: relative;
  background: #fff;
  z-index: 1020;
}

/* horizontal scroll nav */
.category-nav {
  overflow-x: auto;
  white-space: nowrap;
  scrollbar-width: none;
}
.category-nav::-webkit-scrollbar {
  display: none;
}

/* chevrons */
.nav-chevron {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1030;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: none;
  background: rgba(255,255,255,.9);
  box-shadow: 0 2px 6px rgba(0,0,0,.15);
  cursor: pointer;
  transition: opacity .2s ease;
}

.nav-chevron.left {
  left: 0px;
}

.nav-chevron.right {
  right: 0px;
}

.nav-chevron.hidden {
  opacity: 0;
  pointer-events: none;
}

.category-nav {
  background: #fff;
  position: relative;
  z-index: 1020;
  overflow-x: auto;
  white-space: nowrap;
  scrollbar-width: none;        /* Firefox */
}

.category-nav::-webkit-scrollbar {
  display: none;                /* Chrome */
}

/* sticky state */
.category-wrapper.is-sticky {
  position: fixed;
  top: 56px;
  box-shadow: 0 2px 8px rgba(0,0,0,.08);
  max-width: 97vw;
}

/* nav items */
.category-nav .nav {
  flex-wrap: nowrap;
}

.nav-link {
	color: var(--default-color);
}

.nav-link:hover, .nav-link.active {
	color: var(--primary-color);
}

.category-nav .nav-link {
  padding: .75rem 1rem;
  white-space: nowrap;
  transition: all .25s ease;
}

.category-nav .nav-link.active {
  font-weight: 600;
  transform: scale(1.05);
  border-bottom: 3px solid var(--primary-color);
}

.section {
  scroll-margin-top: var(--nav-height);
}

.promo-kat-name {
	color: #dcb423;
}
.promo-star-img {
	position: absolute;
	width: 10px;
	height: 10px;
}
.ribbon1 {
  position: absolute;
  top: -6.1px;
  right: 10px;
}
.ribbon1:after {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-left: 53px solid transparent;
  border-right: 53px solid transparent;
  border-top: 10px solid #31CE36;
}
.ribbon1 span {
  position: relative;
  display: block;
  text-align: center;
  background: #31CE36;
  font-size: 14px;
  line-height: 1;
  padding: 12px 8px 10px;
  border-top-right-radius: 8px;
  width: 105px;
}
.ribbon1 span:before, .ribbon1 span:after {
  position: absolute;
  content: "";
}
.ribbon1 span:before {
 height: 6px;
 width: 6px;
 left: -6px;
 top: 0;
 background: #31CE36;
}
.ribbon1 span:after {
 height: 6px;
 width: 8px;
 left: -8px;
 top: 0;
 border-radius: 8px 8px 0 0;
 background: #31CE36;
}
.ribbon3 {
  width: 120px;
  height: 40px;
  line-height: 15px;
  padding: 5px;
  position: absolute;
  left: -4px;
  top: 13vh;
  background: #31CE36;
  color: #ffffff;
  -webkit-filter: drop-shadow(2px 0 2px rgba(0, 0, 0, 0.3));
  transform: translate3d(0, 0, 0);
  text-transform: uppercase;
  text-align: center;
  font-weight: bold;
  text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.15);
/*  letter-spacing: -2px;*/
}
.ribbon3:before, .ribbon3:after {
  content: "";
  position: absolute;
}
.ribbon3:before {
  height: 0;
  width: 0;
  top: -8.5px;
  left: 0.1px;
  border-bottom: 9px solid rgba(0, 0, 0, 0.5);
  border-left: 9px solid transparent;
}
.ribbon3:after {
  height: 0;
  width: 0;
  right: -14.5px;
  top: 0;
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
}
.ribbon3-promo-name {
	font-size: 8px;
}
.ribbon3-primary {
	background-color: #039BE5;
  	border-color: #039BE5;
}
.ribbon3-primary:after {
  border-left: 15px solid #039BE5;
}
.ribbon3-success {
	background-color: #31CE36;
  	border-color: #31CE36;
}
.ribbon3-success:after {
  border-left: 15px solid #31CE36;
}
.ribbon3-warning {
	background-color: #FFAD46;
  	border-color: #FFAD46;
}
.ribbon3-warning:after {
  border-left: 15px solid #FFAD46;
}
.ribbon3-danger {
	background-color: #fa5456;
  	border-color: #fa5456;
}
.ribbon3-danger:after {
  border-left: 15px solid #fa5456;
}

.ribbon3-space {
	margin-top: 60px;
}
.ribbon4 {
  position: absolute;
  top: 15px;
  left: 0px;
  padding: 8px 10px;
  background: #00B3ED;
  box-shadow: -1px 2px 3px rgba(0,0,0,.3);
}
.ribbon4:before, .ribbon4:after {
  content: "";
  position: absolute;
}
.ribbon4:before {
  width: 7px;
  height: 100%;
  top: 0;
  left: -6.5px;
  padding: 0 0 7px;
  background: inherit;
  border-radius: 5px 0 0 5px;
}
.ribbon4:after {
  width: 5px;
  height: 5px;
  bottom: -5px;
  left: -4.5px;
  background: lightblue;
  border-radius: 5px 0 0 5px;
 }
 .ribbon {
  line-height: 1em;
  font-size: 1.5em;
  text-transform: uppercase;
  text-align: center;
  font-weight: bold;
  text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.15);
  letter-spacing: -2px;
  display: block;
  width: 7rem;
  height: 4rem;
  background: linear-gradient(to bottom, #999999 0%, #cccccc 100%);
  color: white;
  margin: 1em 0.5em 0;
  float: left;
  padding-top: 1rem;
  position: absolute;
  top: -50px;
  left: 150px;
  -webkit-filter: drop-shadow(0 0.5rem 0.3em rgba(0, 0, 0, 0.1));
  transform: translate3d(0, 0, 0);
}
.ribbon:after {
  content: "";
  width: 0;
  height: 0;
  border-right: 3.5rem solid transparent;
  border-left: 3.5rem solid transparent;
  border-top: 1.5rem solid #CCCCCC;
  position: absolute;
  top: 4rem;
  left: 0;
}
.ribbon.ribbon--red {
  background: linear-gradient(to bottom, #d3362d 0%, #e57368 100%);
}
.ribbon.ribbon--red:after {
  border-top: 1.5rem solid #E57368;
}
.ribbon.ribbon--orange {
  background: linear-gradient(to bottom, #e7711b 0%, #f7981d 100%);
}
.ribbon.ribbon--orange:after {
  border-top: 1.5rem solid #F7981D;
}
.ribbon.ribbon--yellow {
  background: linear-gradient(to bottom, #f1ca3a 0%, #f6eb3b 100%);
}
.ribbon.ribbon--yellow:after {
  border-top: 1.5rem solid #F6EB3B;
}
.ribbon.ribbon--green {
  background: linear-gradient(to bottom, #5f9654 0%, #65b045 100%);
}
.ribbon.ribbon--green:after {
  border-top: 1.5rem solid #65B045;
}
.ribbon.ribbon--blue {
  background: linear-gradient(to bottom, #1c91c0 0%, #11a9cc 100%);
}
.ribbon.ribbon--blue:after {
  border-top: 1.5rem solid #11A9CC;
}
.ribbon.ribbon--purple {
  background: linear-gradient(to bottom, #5c3292 0%, #7e3794 100%);
}
.ribbon.ribbon--purple:after {
  border-top: 1.5rem solid #7E3794;
}

.promo-ribbon, .member-promo-ribbon {
	position: absolute;
}
.promo-ribbon img.img-ribbon{
	width: 40px;
}
.promo-label {
	position: absolute;
	top: 5px;
	left: 7px;
	font-size: 14px;
	font-weight: 400;
	line-height: 14px;
	color: #ffffff;
}
.room-title {
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.4px;
	color: #333333;
	line-height: 18px;
}
.room-stock {
	font-size: 12px;
	color: var(--primary-color);
	margin-left: 10px;
}
.room-maxguest {
	font-size: 11px;
	color: #999999;
	margin-left: 10px;
}
.room-include {
	margin-top: 0px;
	margin-left: 10px;
}
.room-include-item {
	font-size: 11px;
	letter-spacing: 0.3px;
	color: #333333;
}
.room-include-img {
	width: 10px;
	height: 10px;
	margin-right: 10px;
	float: left;
}
.room-include-tax {
	font-size: 10px;
	font-style: italic;
	color: #868e96;
}
.room-include-right {
	text-align: left;
	margin-top: 5px;
}
.room-include-item-right {
	font-size: 11px;
	letter-spacing: 0.3px;
	color: #333333;
}
.room-include-img-right {
	width: 10px;
	height: 10px;
	margin-right: 10px;
	float: left;
}
.room-include-tax-right {
	font-size: 10px;
	font-style: italic;
	color: #868e96;
}
.text-not-include {
	color: #cdcdcd;
}
.text-line-through {
	text-decoration: line-through;
}
.button-room-detail {
	margin-left: 10px;
	padding: 1px 8px;
	border-radius: 2px;
	border: solid 1px var(--primary-color);
	background-color: var(--primary-color);
	color: #ffffff;
	letter-spacing: 0.4px;
	font-size: 12px;
	transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
	cursor: pointer;
}
.button-room-detail:hover {
	background-color: #38afda;
	color: #ffffff;
}
.button-room-detail-left {
	padding: 1px 8px;
	border-radius: 2px;
	border: solid 1px #38afda;
	color: #38afda;
	background: none;
	letter-spacing: 0.4px;
	font-size: 12px;
	transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
	cursor: pointer;
}
.button-room-detail-left:hover {
	background-color: #38afda;
	color: #ffffff;
}
.room-qty-block {
	border: 1px solid #cccccc;
	display: flex;
	align-items: center;
	border-radius: 5px;
}
.qty-button {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 5px;
  width: 1rem;
  height: 1.5rem;
  border: none;
  color: var(--primary-color);
  background-color: #ffffff;
}
.qty-button:hover {
  color: var(--accent-color);
  cursor: pointer;
}
.qty-button:focus {
	color: var(--primary-active-color);
}
.qty-button:disabled {
  opacity: 0.5;
  color: #cccccc;
  pointer-events: none;
}
.qty-button:active {
	color: var(--primary-active-color);
}

.qty-number {
  font-size: 1rem;
  min-width: 1rem;
  text-align: center;
}
.dim {
  color: #cccccc;
}
.qty-label {
	font-size: 13px;
}
.flag-hot-promo {
	position: absolute;
	right: 5px;
	width: 100px;
	height: 80px;
	padding-top: 20px;
	padding-left: 10px;
	text-align: center;
	/*background-color: #ff0300;*/
	color: #ffffff;
    font-size: 11px;
    border-radius: 3px;
    background: url(../img/bg_hot_promo.png) no-repeat;
}
.flag-last-minute {
	position: absolute;
	right: 5px;
	width: 100px;
	height: 80px;
	padding-top: 20px;
	padding-left: 10px;
	text-align: center;
    /*background-color: #0060ad;*/
    color: #ffffff;
    font-size: 11px;
    border-radius: 3px;
    background: url(../img/bg_last_minute.png) no-repeat;
}
.flag-min-stay {
	position: absolute;
	right: 5px;
	width: 100px;
	height: 80px;
	padding-top: 20px;
	padding-left: 10px;
	text-align: center;
    /*background-color: #0060ad;*/
    color: #ffffff;
    font-size: 11px;
    border-radius: 3px;
    background: url(../img/bg_min_stay.png) no-repeat;
}
.flag-early-bird {
	position: absolute;
	right: 5px;
	width: 100px;
	height: 80px;
	padding-top: 20px;
	padding-left: 10px;
	text-align: center;
    /*background-color: #218d4e;*/
    color: #ffffff;
    font-size: 11px;
    border-radius: 3px;
    background: url(../img/bg_early_bird.png) no-repeat;
}
.fasilitas-more {
	font-size: 11px;
	position: absolute;
	bottom: 0;
	right: 20px;
}
.fasilitas-more-left {
	font-size: 11px;
	margin-left: 10px;
}
.room-member-disc {
	font-size: 10px;
}
.room-rate-title {
	text-align: left;
	font-size: 13px;
	font-weight: 600;
	color: #38afda;
}
.room-price-list {
	text-align: right;
}
.room-price-button {
	text-align: right;
}
.room-price-full {
	font-size: 14px;
	letter-spacing: 0.4px;
	text-align: right;
	color: #cccccc;
	text-decoration: line-through;
	line-height: 15px;
}
.room-price-disc {
	font-size: 20px;
	font-weight: 600;
	letter-spacing: 0.7px;
	text-align: right;
	color: var(--primary-color);
	line-height: 20px;
}
.room-price-total {
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.7px;
	text-align: right;
	line-height: 20px;
}
.curr-text {
	color: #999999;
	float: left;
	font-size: 16px;
}
.curr-text-right {
	color: #999999;
	font-size: 16px;
}
.room-price-desc {
	font-size: 12px;
	letter-spacing: 0.4px;
	text-align: right;
	color: #333333;
}
.room-reminder {
	font-size: 11px;
	margin-right: -10px;
}
.button-book-now {
	width: 100%;
	border: none;
	color: #ffffff;
	font-size: 12px;
	font-weight: bold;
	letter-spacing: 1px;
	padding-top: 5px;
	padding-bottom: 5px;
	border-radius: 2px;
	background-color: #38afda;
	cursor: pointer;
	margin-right: -15px;
}
.button-book-now:hover {
	background-color: #278fb5;
}
.column-price {
/*	margin-top: 5px;*/
	min-height: 100%;
}
.minichosendate {
	display: block;
	margin-bottom: .1rem;
}
.minichosenlabel {
	font-size: 11px;
	float: left;
	width: 100%;
	text-align: center;
}
.minichosenvalue {
	font-size: 12px;
	float: left;
	width: 100%;
	font-weight: bold;
	text-align: center;
}

.funkyradio label {
    width: 100%;
    height: 2rem;
    font-weight: normal;
}
.funkyradio input[type="radio"]:empty, .funkyradio input[type="checkbox"]:empty {
    display: none;
}
.funkyradio input[type="radio"]:empty ~ label, .funkyradio input[type="checkbox"]:empty ~ label {
    position: relative;
    line-height: 2em;
    text-indent: 3.25em;
    margin: 10px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    width: 95%;
}
.funkyradio input[type="radio"]:empty ~ label:before, .funkyradio input[type="checkbox"]:empty ~ label:before {
    position: absolute;
    display: block;
    top: 0;
    bottom: 0;
    left: 0;
    content:'\2714';
    text-indent: .6em;
    color: #909090;
    width: 2em;
    background-color: #dedede;
    border-radius: 50%!important;
}
.funkyradio input[type="radio"]:hover:not(:checked) ~ label:before, .funkyradio input[type="checkbox"]:hover:not(:checked) ~ label:before {
    content:'\2714';
    text-indent: .6em;
    color: #C2C2C2;
    color: #fff;
    background-color: #cdcdcd;
}
.funkyradio input[type="radio"]:hover:not(:checked) ~ label, .funkyradio input[type="checkbox"]:hover:not(:checked) ~ label {
    color: #343434;
}
.funkyradio input[type="radio"]:checked ~ label:before, .funkyradio input[type="checkbox"]:checked ~ label:before {
    content:'\2714';
    text-indent: .6em;
    color: #333;
    background-color: #ccc;
}
.funkyradio input[type="radio"]:checked ~ label, .funkyradio input[type="checkbox"]:checked ~ label {
    color: #777;
}
.funkyradio input[type="radio"]:focus ~ label:before, .funkyradio input[type="checkbox"]:focus ~ label:before {
    box-shadow: 0 0 0 3px #999;
}
.funkyradio-info input[type="radio"]:checked ~ label:before, .funkyradio-info input[type="checkbox"]:checked ~ label:before {
    color: #fff;
    background-color: #5bc0de;
}
.checkout-period {
	margin-top: -8px;
}
.checkout-date-label {
	position: absolute;
	font-size: 12px;
	margin-top: -12px;
}
.text-small {
	font-size: 11px;
	letter-spacing: 0.2px;
	color: #777777;
}
.card-detail-pemesanan {
	background-color: #f9f9f9;
	border: solid 1px #e3e3e3;
}
.subtitle {
	font-size: 12px;
	font-weight: bold;
	letter-spacing: 0.4px;
	color: #777777;
	margin-bottom: 5px;
}
.detail-pemesanan .label-left {
	font-size: 12px;
	letter-spacing: 0.3px;
	color: #262626;
}
.detail-pemesanan .label-right {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.3px;
	text-align: right;
	color: #262626;
}
.detail-pemesanan .border-bottom {
	border-bottom: solid 1px #e3e3e3;
}
.detail-pemesanan .row {
	padding: 5px;
	margin-left: 0px;
	margin-right: 0px;
	width: 100%;
}
.detail-pemesanan .float-right {
	text-align: right;
	font-size: 12px;
	letter-spacing: 0.4px;
}
.detail-pemesanan .total {
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0.6px;
	color: #38afda;
}
.ekstra {
	max-height: 100px;
	overflow-y: scroll;
}
.ekstra::-webkit-scrollbar-track
{
	background-color: none;
}
.ekstra::-webkit-scrollbar
{
	margin-right: 2px;
	width: 3px;
	background-color: none;
	border-radius: 1px;
}
.ekstra::-webkit-scrollbar-thumb
{
	background-color: #dddddd;
}
.ekstra .row {
	padding: 5px 0;
	margin-left: 0;
	margin-right: 0;
}
.ekstra .border-bottom {
	border-bottom: solid 1px #e3e3e3;
}
.ekstra .border-right {
	border-right: solid 1px #e3e3e3;
}
.ekstra-img img.img-ekstra {
	background-color: #dcdcdc;
	float: left;
	border-radius: 4px;
	width: 40px;
	height: 40px;
	cursor: pointer;
}
.ekstra-coldesc {
	float: left;
	margin-left: 10px;
}
.ekstra-title {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.3px;
	color: #262626;
	cursor: pointer;
}
.ekstra-desc {
	font-size: 12px;
	font-weight: 300;
	font-style: italic;
	letter-spacing: 0.3px;
	color: #808080;
}
.ekstra-satuan {
	font-size: 12px;
	letter-spacing: 0.3px;
	color: #262626;
}
.ekstra-price {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.3px;
	color: #ff2a2a;
}
.ekstra-total-label {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.3px;
	color: #777777;
}
.ekstra-total {
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0.5px;
	text-align: right;
	color: #333333;
}
select.form-control:not([size]):not([multiple]) {
    height: 35px;
}
select.form-control.input-sm:not([size]):not([multiple]) {
    height: calc(1.5rem + 2px);
    padding: 0;
}
.form-control.special-request {
	height: 35px;
}
.card-body.voucher {
	text-align: center;
}
.voucher-title {
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.5px;
	color: #38afda;
}
.voucher-label {
	font-size: 12px;
	letter-spacing: 0.4px;
	color: #333333;
}
.grand-total-label {
	font-size: 12px;
	font-weight: bold;
	letter-spacing: 0.6px;
	color: #777777;
}
.grand-total {
	font-size: 22px;
	font-weight: 600;
	letter-spacing: 0.8px;
	color: #38afda;
}
.grand-total-idr {
	font-size: 12px;
	letter-spacing: 0.6px;
	text-align: right;
	color: #777777;
}
.card.metode-bayar .card-header {
	text-align: center;
}
.row.payMethod{
    background: white;
    padding: 10px 0 0;
    margin-left: 0px;
    margin-right: 0px;
}
.row.payMethod .payType{
    width: 124px;
    height: 65px;
    background-size: 100% 100%;
    margin: 0 auto 15px auto;
    display: block;
    position: relative;
    cursor: pointer;
    border-radius: 6px;
}
.row.payMethod .active{
    box-shadow: 0 0 10px #336600;
}
.creditCard{
    background: url(../img/creditCard.png);
}
.debitBNI{
    background: url(../img/debitBNI.png);
}
.bniPromo{
    background: url(../img/bniPromo.png);
}
.banktransfer{
    background: url(../img/bankTransfer.png);
}
.pacpayment{
    background: url(../img/pacpayment.png);
}
.qrcode{
    background: url(../img/qrcode.png);
}
.bniva{
    background: url(../img/bniva.png);
}
.bca_va{
    background: url(../img/bca_va.png);
}
.mandiri_va{
    background: url(../img/mandiri_va.png);
}
.bri_va{
    background: url(../img/bri_va.png);
}
.bsi_va{
    background: url(../img/bsi_va.png);
}
.permata_va{
    background: url(../img/permata_va.png);
}
.cimbniaga_va{
    background: url(../img/cimbniaga_va.png);
}
.indomaret{
    background: url(../img/indomaret.png);
}
.alfamart{
    background: url(../img/alfamart.png);
}
.gopay{
    background: url(../img/gopay.png);
}
.bniyap{
    background: url(../img/bniyap.png);
}
.qrcode{
    background: url(../img/qrcode.png);
}
.payathotel{
    background: url(../img/payathotel.png);
}
.shopeepay{
    background: url(../img/shopeepay.png);
}
.redeempoin{
    background: url(../img/redeempoin.png);
}
.row.payMethod input[type=radio]{
    display: none;
}
.row.payMethod .payType .paySel{
    position: absolute;
    top: 0;
    right: 0;
}
.payment-hint {
	text-align: center;
	font-size: 11px;
	line-height: 13px;
	color: #777777;
	background: #def6ff;
	/*border: 1px solid #efefef;*/
	border-radius: 5px;
	margin-top: -13px;
	padding: 5px;
	margin-bottom: 10px;
}
.kebijakan-label {
	font-size: 16px;
	letter-spacing: 0.5px;
	color: #777777;
	text-align: center;
}
.kebijakan-text {
	border-radius: 2px;
	background-color: #f7f7f7;
	border: solid 1px #e3e3e3;
	max-height: 100px;
	overflow: scroll;
	padding: 5px;
	font-size: 14px;
	letter-spacing: 0.6px;
	color: #777777;
}
.kebijakan-text::-webkit-scrollbar-track
{
	background-color: none;
}
.kebijakan-text::-webkit-scrollbar
{
	margin-right: 2px;
	width: 3px;
	background-color: none;
	border-radius: 1px;
}
.kebijakan-text::-webkit-scrollbar-thumb
{
	background-color: #dddddd;
}
.kebijakan-agree {
	margin-top: 4px;
	font-size: 12px;
	letter-spacing: 0.6px;
	color: #000;
	font-weight: bold;
}

.hide, .hidden {
	display: none !important;
}
.gray {
	color: #999999;
}
.noPad{
    padding: 0;
}
.noPad-lg{
    padding: 0;
}
.narrowPad{
    padding: 5px;
}
.narrowPad-lg{
    padding: 0;
}
.bgf7 {
	background-color: #f7f7f7;
}
.bgf9 {
	background-color: #f9f9f9;
}
.text-center {
	text-align: center;
}
.text-justify {
	text-align: justify;
}
.bg-info-light {
	background-color: #cdf5fb;
}

.disable-layer {
	background-color: rgba(220, 220, 220, 0.41); 
	position: absolute; 
	width: 100%; 
	height: 100%; 
	margin: -10px;
}

.row.subtotal {
	background-color: #efefef;
}
.collapse-toggle:after {
	font-family: FontAwesome;
	content: "\f107";
	float: right;
}
.border-top {
	border-top: 1px solid #e3e3e3;
}
.border-bottom {
	border-bottom: solid 1px #e3e3e3;
}
.border-top {
	border-top: solid 1px #e3e3e3;
}
img.img-finish-logo {
	height: 30px;
}
img.img-finish-logo-big {
	height: 60px;
}
.payment-powered {
	font-size: 12px;
	letter-spacing: 0.3px;
	color: #333333;
}
.nowrap {
	white-space: nowrap;
}

/* Forms
-------------------------------------------------- */
.error-msg {
	color: #888888;
}
.help-block {
    display: block;
    margin-top: 0px;
    margin-bottom: 0px;
    color: #737373;
    font-size: 11px;
    text-align: right;
}
.has-error .help-block, .has-error .control-label, .has-error .radio, .has-error .checkbox, .has-error .radio-inline, .has-error .checkbox-inline, .has-error.radio label, .has-error.checkbox label, .has-error.radio-inline label, .has-error.checkbox-inline label {
	color: #a94442;
}
.has-error .form-control {
    border-color: #a94442;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
}
.has-success .form-control {
    border-color: #3c763d;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
}
.has-feedback .form-control-feedback {
    right: 20px;
}

buttons.less:15
.has-success .form-control-feedback {
    color: #3c763d;
}

.form-control-feedback {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    display: block;
    width: 34px;
    height: 34px;
    line-height: 34px;
    text-align: center;
    pointer-events: none;
}

.has-feedback .form-control-feedback {
    right: 20px;
}

.custom-controls-stacked .custom-control {
    margin-bottom: 0;
}

label.custom-control {
	margin-bottom: 0;
}

.custom-control-description {
	margin-top: 4px;
	font-weight: bold;
}
.text-primary {
	color: var(--primary-color) !important;
}
.text-gray {
	color: var(--gray-color) !important;
}
.bg-gray {
	background-color: var(--gray-color) !important;
}
.bg-gray-light {
	background-color: var(--gray-light-color) !important;
}
.text-info {
	color: #38afda;
}
.btn-outline-primary {
	border-color: var(--primary-color) !important;
	color: var(--primary-color) !important;
	font-weight: bold;
}
.btn-outline-primary:hover, .btn-outline-primary:active {
	border-color: var(--primary-active-color) !important;
	background-color: var(--primary-active-color) !important;
	font-weight: bold;
}
.btn-check:checked+.btn, .btn.active, .btn.show, .btn:first-child:active, :not(.btn-check)+.btn:active {
	background-color: var(--primary-color) !important;
	color: #ffffff !important;
}
.btn-primary {
	border-color: var(--primary-color);
	background-color: var(--primary-color);
	font-weight: bold;
}
.btn-primary:hover, .btn-primary:active {
	border-color: var(--primary-active-color);
	background-color: var(--primary-active-color);
	font-weight: bold;
}
.coupon {
  border: 2px dashed #bbb; /* Dotted border */
  border-left: 5px solid #bbb;
}

/* Forms
-------------------------------------------------- */
.form-group {
    margin-bottom: .2rem;
}
.form-group label {
	font-size: 12px;
	letter-spacing: 0.3px;
	color: #333333;
	margin-bottom: 0;
}
.form-control {
  	height: 35px;
	border-radius: 2px;
	background-color: #ffffff;
	border: solid 1px #e3e3e3;
	font-size: 12px;
}
.form-control-sm {
	height: 20px;
	font-size: .875rem;
	line-height: 1.5;
	border-radius: .2rem;
}
.btn {
	border-radius: 2px;
}
.btn-info {
    background-color: #38afda;
    border-color: #38afda;
}
.btn-disabled {
    background-color: #e3e3e3;
    border-color: #e3e3e3;
}
.minh80 {
	min-height: 0;
}
.minh100 {
	min-height: 0;
}
.minh250 {
	min-height: 0;
}
.minh500 {
	min-height: 0;
}
.btn-lanjutkan {
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 0.5px;
}
.btn-voucher {
	padding: 0 .75rem;
	font-size: 12px;
}
.btn-remove {
	height: 30px;
	padding: 0 .75rem;
	font-size: 12px;
}
.btn-block-height {
    height: 100%;
}
.diskon-label {
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0.4px;
  color: #38afda;
}
.voucher-total {
	font-size: 22px;
	font-weight: 600;
	letter-spacing: 0.6px;
	color: #ff4444;
}
.voucher-idr {
	font-size: 12px;
	text-align: right;
  	color: #777777;
}
.img-cara-transfer {
	margin-right: 10px;
	margin-top: 7px;
	float: left;
}
.header-cara-transfer {
	font-weight: 600;
	letter-spacing: 0.4px;
	color: #333333;
}
ol.step-transfer {
	padding-left: 20px;
}
ol.step-transfer li {
	padding-left: 20px;
}
ol.step-bni {
	padding-left: 10px;
}
ol.step-bni li{
	margin-bottom: 20px;
}

/* Modal
-------------------------------------------------- */
.modal-fullscreen .modal-dialog {
  width: 100%;
  min-width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}

.modal-fullscreen .modal-content {
  height: auto;
  min-height: 100%;
  border: 0 none;
  border-radius: 0;
}

.modal-content {
	border: none;
	border-radius: 5px;
}
.modal-header {
	border-bottom: none;
}
.modal-footer {
	border-top: none;
}
#detailtab {
	font-size: 12px;
}
#detailtabcontent {
	padding: 10px;
    font-size: 12px;
	letter-spacing: 0.3px;
}
.tab-pane {
	text-align: justify;
}
.tab-pane ul.fasilitas-list {
	padding-left: 10px;
	columns: 2;
	list-style-position: inside;
}
.full-height-vh {
	height: 85vh;
}
.full-height-percent {
	height: 100%;
}

/* Member
-------------------------------------------------- */
.link-img-profile {
	width: 100%;
	margin-top: 10px;
	margin-bottom: 10px;
	text-align: center;
}
.img-profile {
	width: 35%;
	border-radius: 50%;
}
.member-h1 {
  font-size: 28px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: normal;
  letter-spacing: 0.4px;
  text-align: left;
  color: #25aae1;
}
.member-email-h1 {
	letter-spacing: 0.2px;
	color: #333333;
}
.member-poin-h1 {
	font-size: 28px;
	font-weight: bold;
	font-style: normal;
	font-stretch: normal;
	line-height: normal;
	letter-spacing: 0.8px;
	text-align: center;
	color: #25aae1;
	border-bottom: solid 1px #25aae1;
}
.bg-member-menu {
	padding: 5px;
	background-color: #f3fafc;
	border-radius: .25rem;
}
.bg-member-menu:hover {
	background-color: #def0f5;
}
.bg-member-menu.active{
	background-color: #d8eff7;
}
.member-menu-icon {
	vertical-align: middle;
}
.member-menu-text {
	margin-left: 20px;
	font-size: 20px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: normal;
	letter-spacing: 0.3px;
	text-align: left;
	color: #333333;
	vertical-align: middle;
}
.member-menu-chevron {
	font-size: 22px;
	color: #333333;
	float: right;
	vertical-align: middle;
}
.member-title {
	font-size: 18px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: normal;
	letter-spacing: 0.5px;
	text-align: left;
	color: #25aae1;
}
.member-redeem-itemname {
	font-size: 14px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: normal;
	letter-spacing: 0.4px;
	text-align: left;
	color: #333333;
	color: var(--black);
	/*min-height: 60px;*/
}
.member-redeem-itempoin {
	font-size: 12px;
	font-weight: normal;
	font-style: normal;
	font-stretch: normal;
	line-height: normal;
	letter-spacing: 0.3px;
	text-align: left;
	color: #777777;
}
.member-room-img img.img-room {
	float: left;
	border-radius: 4px;
	width: 70px;
	height: 70px;
}
.member-promo-ribbon img.img-ribbon{
	width: 35px;
}
.member-promo-label {
	position: absolute;
	top: 5px;
	left: 7px;
	font-size: 14px;
	font-weight: 400;
	line-height: 14px;
	color: #ffffff;
}
.member-room-title {
	float: left;
	width: 75%;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.4px;
	color: #333333;
	margin-left: 10px;
	line-height: 18px;
}
.member-room-maxguest {
	float: left;
	width: 75%;
	font-size: 11px;
	color: var(--primary-color);
	margin-left: 10px;
}
.member-room-price-full {
	font-size: 14px;
	letter-spacing: 0.4px;	
	color: #333333;
	text-decoration: line-through;
	line-height: 15px;
}
.member-column-price {
	float: left;
	width: 75%;
	margin-top: 5px;
	margin-left: 10px;
}
.member-price-disc {
	font-size: 20px;
	font-weight: 600;
	letter-spacing: 0.7px;
	text-align: left;
	color: #fb0a20;
	line-height: 20px;
}
.member-tabs .nav-link {
	color: #bbbbbb;
	font-size: 18px;
  	font-weight: 600;
}
.member-tabs .nav-link:hover {
	color: #25aae1;
}
.member-tabs .nav-item.show .nav-link, .member-tabs .nav-link.active {
	color: #25aae1;
	font-size: 18px;
  	font-weight: 600;
}
.produk-outstok {
	opacity: 0.5;
}
.div-img-redeem {
	width: auto; /* Set your preferred width */
    height: 100px; /* Set your preferred height */
    background-color: #efefef;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
}
.div-img-redeem img {
	height: 100%;
    width: auto; /* Maintain aspect ratio */
    object-fit: contain;
}
.table-history {
	font-size: 13px;
}
.table-inbox td, .table-inbox th {
    border-top: 1px solid #dfdfdf;
}
.iteminbox {
	cursor: pointer; 
	font-size: 13px;
}
.iteminbox:hover td {
	background-color: #cfcfcf;
}  
.iteminbox-date {
	float: right;
	font-size: 11px; 
	color: #999999;
}
.read { 
	background: #efefef;
}
.list-inbox {
	overflow-y: scroll;
	max-height: 150px;
}
#isiinbox {
	overflow-x: scroll;
}

.summaries {
	padding: 20px;
	background-color: #ffffff;
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	box-shadow: 0 -4px 8px rgba(0, 0, 0, 0.1);
	z-index: 999;
}

.summary-title {
	font-size: 18px;
	font-weight: bold;
	color: var(--primary-color);
}

.summary-total-bayar {
	font-size: 24px;
	font-weight: bold;
	color: var(--primary-color);
}

/* Sticky footer styles
-------------------------------------------------- */
.footer {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	margin-top: 10px;
	height: auto; /* Set the fixed height of the footer here */
	line-height: 30px; /* Vertically center the text there */
}
.footer .top {
	padding: 5px 30px;
	border-radius: 5px;
	background-color: #f7f7f7;
}
.footer .bottom {
	margin-top: 10px;
	font-size: 12px;
	letter-spacing: 0.3px;
	text-align: center;
}
.footer .bottom .bold {
	font-weight: 600;
}
.img-footer-logo {
	padding: 10px;
}
.img-footer-payment {
	padding-top: 5px;
}
.bold {
	font-weight: bold;
}
.compare-modal {
	position: fixed;
	bottom: 0; 
	right: 5px; 
	z-index: 10;
}
.compare-modal .card-body {
	border: 1px solid #bbbbbb;
}

/* Custom styles for the thumbnail indicators */
#mdc-carousel-thumbs {
    position: static; /* Remove default absolute positioning */
    margin-top: 1rem;
    margin-bottom: 1rem;
}

/* Ensure main carousel images are sized properly */
.carousel-inner img {
    max-height: 420px; /* Example max height */
    object-fit: cover;
}

#mdc-carousel-thumbs button {
  width: 76px; height: 76px; /* Adjust size */
  margin: 0 5px; padding: 0;
  text-indent: 0; opacity: 0.7;
  background: transparent; border: 2px solid #ccc;
}
#mdc-carousel-thumbs button.active { opacity: 1; border-color: #000; }
#mdc-carousel-thumbs button img {
  width: 100%; height: 100%; object-fit: cover;
}

/*Small devices (landscape phones, 576px and up)*/
@media (min-width: 576px) { 
	body {
		/*background-color: blue;*/
	}
	.row {
	    display: -ms-flexbox;
	    display: flex;
	    -ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	    margin-right: -15px; 
	    margin-left: -15px; 
	}
	.container {
	    width: 100%;
	    padding-right: 0; 
	    padding-left: 0; 
	    margin-right: auto;
	    margin-left: auto;
	}
	.container {
	    width: 100%;
	    padding-right: 15px; 
	    padding-left: 15px; 
	    margin-right: auto;
	    margin-left: auto;
	}
	.card-header {
		font-size: 16px;
		padding: .75rem;
	}
	.card-body {
		padding: 10px;
		font-size: 14px;
		letter-spacing: 0.3px;
	}
	.img-footer-payment {
		margin-top: 10px;
	}
	.hasrightdivider {
	    border-right: 1px solid #d7d7d7;
	    border-bottom: none;
	}
	.panelchosendate {
		border-radius: 5px;
		background-color: #ffffff;
		box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
		font-size: 12px;
		letter-spacing: 0.3px;
		text-align: center;
		color: #333333;
		border: none;
		width: 100%;
    	margin-left: 0;
    	display: block;
	}
	.chosendatepart {
	    text-align: left;
	    padding: 0 15px;
	}
	.chosenicon img{
	    width: 21px;
	    height: 20px;
	}
	.room-list {
		width: 100%;
	    margin-left: 0;
	}
	.room-item {
/*		padding-bottom: 45px;*/
		margin-left: 0px;
		margin-right: 0px;
		transition: all 0.3s ease;
		min-height: 185px;
	}
	.room-item:hover, .room-item-hasbottomdivider:hover {
		transform: scale(1.02);
		box-shadow: 0px 20px 29px -10px rgba(0, 0, 0, 0.3);
	}
	.room-item-hasbottomdivider {
		padding-top: 15px;
		padding-bottom: 15px;
		margin-left: 0px;
		margin-right: 0px;
	    border-bottom: 1px solid #e3e3e3;
	 
		transition: box-shadow 0.15s ease-in-out;
	}
	.room-item-hasrightdivider {
		border-right: 1px solid #bbbbbb;
	}
	.room-item-subtotal {
		font-size: 18px;
		color: var(--primary-color);
		font-weight: bold;
	}

	.col-room-img {
		min-height: 120px;
	}

	.room-img {
		width: 100%;
		height: 120px;
		background-color: #cccccc;
		border-radius: 5px;
		overflow: hidden;
		cursor: pointer;
	}
	.room-img img.img-room {
		float: left;
		width: 100%;
		min-height: 100%;
    object-fit: cover;
	}
	.room-img-service {
		height: 140px;
	}
	.ribbon3 {
  	width: 180px;
  	height: 50px;
	 	top: 110px;
	 	padding: 10px 15px 0 15px;
	}
	.ribbon3:after {
		height: 0;
		width: 0;
		right: -14.5px;
		top: 0;
		border-top: 25px solid transparent;
		border-bottom: 25px solid transparent;
	}
	.ribbon-item {
		left: -10px;
	}
	.ribbon3-promo-name {
		font-size: 10px;
	}
	.promo-ribbon img.img-ribbon{
		width: 50px;
	}
	.promo-label {
		position: absolute;
		top: 5px;
		left: 7px;
		font-size: 18px;
		font-weight: 400;
		line-height: 18px;
		color: #ffffff;
	}
	.room-title {
		font-size: 18px;
		font-weight: 600;
		letter-spacing: 0.4px;
		color: #333333;
    	line-height: 18px;
	}
	.room-sub-title {
		font-size: 16px;
		font-weight: 600;
		letter-spacing: 0.4px;
		color: #333333;
    	line-height: 18px;
	}
	.room-maxguest {
		font-size: 12px;
		margin-left: 10px;
	}
	.room-stock {
		font-size: 12px;
		color: var(--primary-color);
		margin-left: 10px;
	}
	.room-include {
		margin-top: 10px;
		margin-left: 10px;
	}
	.room-include-item {
		font-size: 12px;
		letter-spacing: 0.3px;
		color: #333333;
	}
	.room-include-img {
		height: 12px;
		margin-right: 10px;
	}
	.button-room-detail {
		margin-left: 10px;
		padding: 1px 8px;
		border-radius: 2px;
		border: solid 1px var(--primary-color);
		background-color: var(--primary-color);
		color: #ffffff;
		letter-spacing: 0.4px;
		font-size: 12px;
	}
	.button-room-detail:hover {
		background-color: #38afda;
		color: #ffffff;
	}
	.room-qty-block {
		border: 1px solid #cccccc;
		display: flex;
  	align-items: center;
  	border-radius: 5px;
	}
	.qty-button {
	  display: flex;
	  justify-content: center;
	  align-items: center;
	  margin: 5px;
	  width: 1rem;
	  height: 1.5rem;
	  border: none;
	  color: var(--primary-color);
	  background-color: #ffffff;
	}
	.qty-button:hover {
	  color: var(--accent-color);
	  cursor: pointer;
	}
	.qty-button:focus {
		color: var(--primary-active-color);
	}
	.qty-button:disabled {
	  opacity: 0.5;
	  color: #cccccc;
	  pointer-events: none;
	}
	.qty-button:active {
		color: var(--primary-active-color);
	}

	.qty-number {
	  font-size: 1rem;
	  min-width: 1rem;
	  text-align: center;
	}
	.dim {
	  color: #cccccc;
	}
	.qty-label {
		font-size: 13px;
	}
	.room-fas-title {
		font-size: 12px;
		font-weight: 600;
		letter-spacing: 0.3px;
		color: #333333;
		margin-left: 10px;
	}
	ul.room-fas-list {
		columns: 1;
		-webkit-columns: 1;
		-moz-columns: 1;
		margin-top: 10px;
		margin-bottom: 0px;
		margin-left: 0px;
		padding-left: 0px;
		list-style-position: inside;
	}
	.room-fas-list li {
		margin-left: 0px;
		font-size: 12px;
		letter-spacing: 0.3px;
		color: #333333;
	}
	.room-fas-title-left {
		font-size: 12px;
		font-weight: 600;
		letter-spacing: 0.3px;
		color: #333333;
		margin-top: 10px;
	}
	ul.room-fas-list-left {
		columns: 1;
		-webkit-columns: 1;
		-moz-columns: 1;
		margin-bottom: 0px;
		margin-left: 10px;
		padding-left: 0px;
		list-style-position: inside;
	}
	.room-fas-list-left li {
		margin-left: 0px;
		font-size: 12px;
		letter-spacing: 0.3px;
		color: #333333;
	}
	.room-rate-title {
		text-align: left;
		font-size: 14px;
		font-weight: 600;
		color: var(--primary-color);
	}
	.room-price-list {
		text-align: right;
	}
	.room-price-button {
		text-align: right;
	}
	.room-t {
		width: 100%;
		padding: 0;
		display: table;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		margin: 0;
	}
	.room-tc {
		padding: 0;
		vertical-align: middle;
		display: table-cell;
		margin: 0;
	}
	.room-price-full {
		font-size: 16px;
		letter-spacing: 0.4px;
		text-align: right;
		color: #cccccc;
		text-decoration: line-through;
	}
	.room-price-disc {
		font-size: 24px;
		font-weight: 600;
		letter-spacing: 0.7px;
		text-align: right;
		color: var(--primary-color);
		line-height: 24px;
	}
	.curr-text {
		color: #999999;
		float: left;
		font-size: 16px;
	}
	.room-price-desc {
		font-size: 12px;
		letter-spacing: 0.4px;
		text-align: right;
		color: #333333;
	}
	.room-reminder {
		font-size: 11px;
		margin-right: 0;
	}
	.button-book-now {
		width: 100%;
		border: none;
		color: #ffffff;
		font-size: 14px;
		font-weight: bold;
		letter-spacing: 1px;
		padding-top: 10px;
		padding-bottom: 10px;
		border-radius: 2px;
  		background-color: #38afda;
  		cursor: pointer;
  		margin-right: 0;
	}
	.button-book-now:hover {
		background-color: #278fb5;
	}
	.column-price {
		min-height: 100%;
	}

	.dropdown-checkin {
	    z-index: 1000;
	    display: none;
	    float: left;
	    width: 98%;
	    padding: .5rem;
	    color: #212529;
	    text-align: left;
	    background-color: #fff;
	    border-radius: 0px;
	    border: none;
	    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.17);
	    position: absolute;
	    top: 50px;
	    left: 5px;
	    -webkit-transition:  visibility .3s ease-out;
	    -moz-transition:  visibility .3s ease-out;
	    -ms-transition:  visibility .3s ease-out;
	    transition:  visibility .3s ease-out;
	}
	.dropdown-checkin.show {
		display: block;
	}
	.dropdown-chosendate.scroll {
		max-height: 250px;
		overflow-y: scroll;
	}
	.minichosendate {
		display: none;
	}
	
	.ekstra {
		max-height: 200px;
		overflow-y: scroll;
	}
	.ekstra-img img.img-ekstra {
		width: 50px;
		height: 50px;
	}
	select.form-control:not([size]):not([multiple]) {
	    height: 30px;
	}
	select.form-control.input-sm:not([size]):not([multiple]) {
	    height: 30px;
	}
	.voucher-title {
		font-size: 22px;
		font-weight: 600;
		letter-spacing: 1px;
		color: #38afda;
	}
	.voucher-label {
		font-size: 18px;
		letter-spacing: 0.4px;
		color: #333333;
	}
	.form-control {
    	height: 45px;
    }
    .form-group {
    	margin-bottom: .5rem;
    }
    .form-group label {
    	margin-bottom: .5rem;
    }
    .form-control.special-request {
		height: 100px;
	}
    .grand-total-label {
		font-size: 18px;
	}
	.btn-voucher {
		padding: .375rem .75rem;
		font-size: 1rem;
	}
	/* sticky state */
	.category-wrapper.is-sticky {
	  max-width: 60vw;
	}
	.form-control-sm {
		height: 20px;
		font-size: .875rem;
		line-height: 1.5;
		border-radius: .2rem;
	}
}

/*Medium devices (tablets, 768px and up)*/
@media (min-width: 768px) { 
	body {
		/*background-color: green;*/
	}
	.img-footer-payment {
		margin-top: 10px;
	}
	.navbar-brand .title {
		margin-left: 20px;
		/*width: 80%;*/
	}
	.navbar-light {
		background-color: #ffffff;
		box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
	}
	.ekstra {
		max-height: 300px;
		overflow-y: scroll;
	}
}

/*Large devices (desktops, 992px and up)*/
@media (min-width: 992px) {
	body {
		/*background-color: yellow;*/
	}
	.img-footer-payment {
		margin-top: 10px;
	}
	.minh80 {
		min-height: 80px;
	}
	.minh100 {
		min-height: 100px;
	}
	.minh250 {
		min-height: 250px;
	}
	.minh500 {
		min-height: 500px;
	}
	.noPad-lg{
		padding-left: 15px;
		padding-right: 15px;
	}
	.narrowPad-lg{
	    padding: 5px;
	}
	.card-header {
		border-left: none;
	}
	.row.payMethod .payType{
	    width: 137px;
	    height: 70px;
	}
	.ekstra {
		max-height: 442px;
		overflow-y: scroll;
		margin-bottom: 10px;
	}
	.detail-pemesanan .total {
		font-size: 22px;
	}
	.card-body.voucher {
		height: 180px;
	}
	.grand-total {
		font-size: 30px;
	}
	.grand-total-idr {
		font-size: 18px;
	}
	.collapse-toggle:after {
		content: "";
	}
}

/*Extra large devices (large desktops, 1200px and up)*/
@media (min-width: 1200px) {
	body {
		/*background-color: cyan;*/
	}
	.img-footer-payment {
		margin-top: 10px;
	}
}