@import url("https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap");
:root {
	--font: "DM Sans", sans-serif;
	--primary-color: #B72025;
	--black: #191e3b;
	--white: #fff;
	--text: #191e3b;
	--red: #e61e43;
	--heightinput:38px;
	--border-radius-box:16px;
	--border-radius-normal:100px;
	--light-background-color:#fff;
	--light-border-color-primary:#d6d6d6;
	--button-outline-bg-hover:#f1f0ee;
}

*,
*:before,
*:after {
	box-sizing: border-box;
}

* {
	margin: 0;
	padding: 0;
	font: inherit;
}

img,
picture,
svg,
video {
	max-width: 100%;
}

ol,
ul {
	list-style: none;
}

html {
	font-size: 62.5%;
	scroll-behavior: smooth;
}

body {
	font-family: var(--font), sans-serif;
	display: block;
	color: var(--text);
	font-size: 1.6rem;
	line-height: 1.5;
}

.ov-hidden {
	overflow: hidden;
}

.container {
	max-width: 1360px;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
	margin-bottom: 0;
	font-weight: 600;
}

a {
	color: var(--text);
	text-decoration: none;
}
a:hover, a:focus {
	text-decoration: none;
}

input,
button {
	outline: none;
	background-color: transparent;
}

.row.rg-3 {
	margin-left: -10px;
	margin-right: -10px;
}
.row.rg-3 > [class*=col-] {
	padding-left: 10px;
	padding-right: 10px;
}

.form-control{
	border-radius:0;
	background:transparent;
	height:35px;
	padding:0 10px;
	font-size:1.6rem;
}
.form-control:focus {
	box-shadow: none;
}

.dropdown-menu {
	font-size: 1.6rem;
	border-radius: 16px;
	overflow: hidden;
}
.dropdown-item {
	padding: 6px 16px;
}
.dropdown-item:hover {
	background-color: transparent;
}

.text-base {
	letter-spacing: -0.03rem;
	font-size: 1.6rem;
	line-height: 150%;
	font-weight: 400;
}
.text-base.text-bold {
	font-weight: 700;
}

.divider {
	width: 100%;
	height: 1px;
	background-color: var(--light-border-color-primary);
}

input, select {
	color: var(--black);
	background-color: #fff;
	border: 1px solid #222;
	color: #222;
	height: var(--heightinput);
	padding: 13px 12px;
	padding: 0 12px;
	font-size: 1.4rem;
	line-height: 1.5;
	display: block;
	outline: none;
}

textarea {
	color: var(--black);
	background-color: #fff;
	border: 1px solid #222;
	color: #222;
	height: 76px;
	padding: 10px 12px;
	font-size: 1.4rem;
	line-height: 1.5;
	display: block;
	outline: none;
}

button {
	outline: none;
}

.button {
	grid-column-gap: 0.4rem;
	grid-row-gap: 0.4rem;
	display: inline-block;
	position: relative;
	padding: 14px 24px;
	border: 1px solid transparent;
	border-radius: var(--border-radius-normal);
	font-weight: 500;
	transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1);
}
.button-light {
	background-color: var(--light-background-color);
}
.button-primary {
	background-color: var(--primary-color);
	color: #fff;
}
.button-primary:hover {
	background-color: var(--red);
	color: #fff;
}
.button-outline {
	background-color: transparent;
	border-color: var(--primary-color);
	color: var(--primary-color);
}
.button-outline:hover {
	background-color: var(--primary-color);
	color: #fff;
}
.button-outline.active {
	background-color: var(--primary-color);
	color: #fff;
}
.button-more {
	width: auto;
	background-color: transparent;
	border-color: var(--primary-color);
	color: var(--primary-color);
}
.button-more:hover {
	background-color: var(--red);
	border-color: var(--red);
	color: #fff;
}
.button-book {
	border-radius: 8px;
	background: linear-gradient(to right, #E61E4D 0%, #E31C5F 50%, #D70466 100%);
	color: #fff;
	padding: 8px 12px;
	font-size: 1.4rem;
}
.button-book:hover {
	color: #fff;
	background: linear-gradient(to left, #E61E4D 0%, #E31C5F 50%, #D70466 100%);
}

.flex-grow {
	flex: 1;
}

.heading-title {
	margin-bottom: 3rem;
}
.heading-title .sectitle {
	font-size: 2.8rem;
	line-height: 1.3;
	color: var(--black);
	font-weight: 600;
}
.heading-title .subtitle {
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: 400;
}

.tb-space {
	padding: 60px 0;
}

.tb-space-top {
	padding-top: 60px;
}

.tb-space-bottom {
	padding-bottom: 60px;
}

.owl-theme .owl-nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 0 !important;
}
.owl-theme .owl-nav button.owl-prev, .owl-theme .owl-nav button.owl-next {
	width: 40px;
	height: 40px;
	border-radius: 100%;
	border: 1px solid transparent;
	background-color: #fff;
	box-shadow: rgba(0, 0, 0, 0.2) 0px 8px 24px;
}
.owl-theme .owl-nav button:hover {
	background-color: var(--primary-color) !important;
}

@keyframes animate-bar-left {
	0% {
		transform: translateX(-100%);
	}
	100% {
		transform: translateX(0);
	}
}
.header {
	background: var(--primary-color);
}
.header-inner {
	padding: 10px 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.header .toggle-bar {
	font-size: 2.6rem;
	color: #fff;
	width: 30px;
	cursor: pointer;
}
@media (min-width: 992px) {
	.header .toggle-bar {
		display: none;
	}
}
.header .logo img {
	max-height: 70px;
}
.header-nav ul li a {
	display: inline-block;
	color: #fff;
	padding: 6px 8px;
}
@media (max-width: 992px) {
	.header-nav {
		opacity: 0;
		visibility: hidden;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		overflow-y: auto;
		background-color: rgba(0, 0, 0, 0.6);
		z-index: 999;
	}
	.header-nav ul {
		display: block;
		margin-right: 60px;
		width: auto;
		height: 100%;
		background-color: #fff;
		transform: translateX(-100%);
		transition: all 0.3s ease-in-out;
	}
	.header-nav ul li a {
		display: block;
		padding: 12px 16px;
		color: var(--text);
	}
	.header-nav.show {
		opacity: 1;
		visibility: visible;
	}
	.header-nav.show ul {
		transform: translateX(0);
		transition: all 0.3s ease-in-out;
	}
}
.header .nav-right {
	display: flex;
	align-items: center;
}
.header .nav-right .languages {
	margin-right: 15px;
}
.header .languages-btn {
	border: 2px solid var(--white);
	color: var(--white);
	padding: 8px 14px;
	border-radius: 999px;
}
@media (max-width: 991px) {
	.header .languages {
		display: none;
	}
}
.header .languages-mobile .languages {
	padding: 14px 16px;
}
.header .languages-mobile .languages-btn {
	border-color: var(--text);
	color: var(--text);
	min-width: 200px;
}
@media (min-width: 992px) {
	.header .languages-mobile {
		display: none;
	}
}
@media (max-width: 991px) {
	.header .languages-mobile .languages {
		display: block;
	}
}
.header .actions-btn {
	display: flex;
	align-items: center;
	padding: 8px 14px;
	padding-left: 20px;
	gap: 14px;
	border: 2px solid var(--white);
	color: var(--white);
	border-radius: 999px;
	font-size: 3.2rem;
	cursor: pointer;
	transition: box-shadow 0.2s cubic-bezier(0.2, 0, 0, 1);
	appearance: none;
}
.header .actions-btn::after {
	display: none;
}
.header .actions-btn:hover {
	box-shadow: 0 2px 4px rgba(255, 255, 255, 0.56);
}
.header .actions .dropdown-menu {
	min-width: 220px;
}
.header .actions .iconBar {
	font-size: 1.6rem;
}
.header .dropdown-item {
	font-weight: 600;
}
.header .dropdown-item:hover {
	background-color: #eeeaea;
}

.login-section {
	padding: 60px 0;
}
.login-section .login-content {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	position: relative;
	grid-column-gap: 6rem;
	grid-row-gap: 6rem;
}
.login-section .login-content.h_100 {
	flex-flow: row;
	height: 100%;
}
.login-section .login-modal {
	border: 1px solid #d6d6d6;
	border-radius: 16px;
	background-color: var(--primary-color);
	text-align: left;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	width: auto;
	min-width: 41.6rem;
	max-width: 44.8rem;
	margin-bottom: 0;
	padding: 2rem;
	display: flex;
}
.login-section .login-modal-inner {
	width: 100%;
}
.login-section .login-form {
	grid-column-gap: 2.4rem;
	grid-row-gap: 2.4rem;
	flex-flow: column;
	justify-content: flex-start;
	align-items: stretch;
	display: flex;
}
.login-section .login-form .lgimg {
	display: flex;
	align-items: center;
	justify-content: center;
}
.login-section .login-form .lgimg img {
	height: 67px;
}
.login-section .login-form .flex-block-infor {
	grid-column-gap: 0.8rem;
	grid-row-gap: 0.8rem;
	text-align: center;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
}
.login-section .login-form .flex-block-infor .text-head {
	color: var(--white);
	font-weight: 700;
}
.login-section .login-form .flex-block-infor .text-base {
	color: var(--white);
	margin-bottom: 0;
}
.login-section .login-form .login-withgoogle-btn {
	grid-column-gap: 0.4rem;
	grid-row-gap: 0.4rem;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	border-radius: 10px;
	padding: 6px 12px;
	font-size: 1.6rem;
	line-height: 1.3;
	color: var(--black);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1);
}
.login-section .login-form .login-withgoogle-btn.outline {
	font-weight: 700;
	background-color: #fff;
	border: 1px solid var(--light-border-color-primary);
}
.login-section .login-form .login-withgoogle-btn.outline:hover {
	background-color: var(--button-outline-bg-hover);
}
.login-section .login-form .hr-divider {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	grid-column-gap: 1.6rem;
	grid-row-gap: 1.6rem;
	color: #fff;
}
.login-section .login-form .form-field {
	grid-column-gap: 0.8rem;
	grid-row-gap: 0.8rem;
	flex-flow: column;
	display: flex;
	color: #fff;
}
.login-section .login-form .form-field label {
	margin-bottom: 0;
	font-weight: 700;
}
.login-section .login-form .form-field input {
	border: 1px solid var(--light-border-color-primary);
	background-color: #fff;
	border-radius: 8px;
	width: 100%;
	padding: 6px 12px;
	margin-bottom: 0;
	transition: all 0.25s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.login-section .login-form .form-field input:focus {
	box-shadow: 0 0 0 3px #ea9a85;
}
.login-section .login-form .btn-submit {
	padding: 6px 12px;
	background-color: var(--red);
	color: #fff;
}
.login-section .login-form .btn-submit:hover {
	box-shadow: 0px 2px 8px 0px rgba(255, 255, 255, 0.56);
}
.login-section .login-form .forgotpassword {
	text-align: center;
	color: #fff;
	text-decoration: underline;
}
.login-section .login-form .link-base {
	color: #fff;
}
.login-section .login-form .link-base-red {
	color: inherit;
	font-weight: 600;
	text-decoration: underline;
}
.login-section .login-form .link-base-red:hover {
	color: var(--red);
}

.banner-home {
	position: relative;
}
.banner-home img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.banner-home .bg-banner {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	max-height: none;
	z-index: -1;
}
.banner-home .home-searchbox {
	padding: 40px 15px;
	height: 500px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.banner-page img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 16/9;
}

.home-searchbox-head {
	text-align: center;
	text-shadow: 3px 4px 30px #777;
	margin: 24px 0;
	font-size: 4.8rem;
	line-height: 1.3;
	letter-spacing: 0;
	color: #fff;
	font-weight: 700;
	margin-bottom: 70px;
}
@media (max-width: 991.98px) {
	.home-searchbox-head {
		font-size: 3.8rem;
	}
}
@media (max-width: 767.98px) {
	.home-searchbox-head {
		font-size: 2.4rem;
		margin-bottom: 20px;
	}
}
.home-searchbox_searchbox {
	padding: 0 25px;
	border-radius: 100px;
	background-color: #fff;
	box-shadow: 0 2.9px 13.95px rgba(0, 0, 0, 0.07), 0 8.01px 38.57px rgba(0, 0, 0, 0.046), 0 19.29px 92.85px rgba(0, 0, 0, 0.035), 0 64px 250px rgba(0, 0, 0, 0.024);
}
@media (max-width: 576px) {
	.home-searchbox_searchbox {
		border-radius: 18px;
		padding: 20px;
	}
}
.home-searchbox .searchbox-searchinput {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	min-height: 92px;
}
.home-searchbox .searchbox-searchinput .select-destinations .select2-container--default .select2-selection--single{
	border:0;
	border-radius:0;
	height:var(--heightinput);
}
.home-searchbox .searchbox-searchinput .select-destinations .select2-container--default .select2-selection--single .select2-selection__rendered{
	line-height:var(--heightinput);
	padding:0;
	color:var(--black);
}
.home-searchbox .searchbox-searchinput .item-col {
	flex: 1 0 0;
}
@media (max-width: 576px) {
	.home-searchbox .searchbox-searchinput .item-col {
		flex: 100%;
	}
}
.home-searchbox .searchbox-searchinput .input-field {
	position: relative;
	padding: 0 10px;
}
.home-searchbox .searchbox-searchinput .input-field::after {
	content: "";
	width: 1px;
	height: 30px;
	background-color: #ebebeb;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}
.home-searchbox .searchbox-searchinput .input-field .icon {
	color: #898989;
	font-size: 1.2rem;
	line-height: 1.5;
	letter-spacing: 0;
}
.home-searchbox .searchbox-searchinput .input-field input, 
.home-searchbox .searchbox-searchinput .input-field select {
	width: 100%;
}
.home-searchbox .searchbox-searchinput .input-field input {
	border: 0;
	padding: 0;
	font-size: 1.6rem;
	line-height: 1.5;
	color: var(--black);
}
.home-searchbox .searchbox-searchinput .input-field input::placeholder {
	color: inherit;
}
.home-searchbox .searchbox-searchinput .input-field .actbtn .guestroom {
	height: var(--heightinput);
	padding: 0;
	font-size: 1.6rem;
	line-height: 1.5;
	color: var(--black);
	display: flex;
	align-items: center;
	grid-column-gap: 0.8rem;
	grid-row-gap: 0.8rem;
}
.home-searchbox .searchbox-searchinput .input-field .actbtn .guestroom-item {
	display: flex;
	align-items: center;
	gap: 0.3rem;
}
.home-searchbox .searchbox-searchinput .input-field .actbtn .guestroom-item input {
	height: auto;
	inline-size: 1.5rem;
	text-align: center;
	pointer-events: none;
}
.home-searchbox .searchbox-searchinput .input-field .actnumber {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	z-index: 1;
	background-color: #fff;
	padding: 15px;
	border-radius: 18px;
	box-shadow: 0 73px 158px rgba(0, 0, 0, 0.07), 0 30.5px 66.01px rgba(0, 0, 0, 0.05), 0 16.31px 35.29px rgba(0, 0, 0, 0.042), 0 9.14px 19.78px rgba(0, 0, 0, 0.035), 0 4.85px 10.51px rgba(0, 0, 0, 0.028), 0 2.02px 4.37px rgba(0, 0, 0, 0.02);
}
.home-searchbox .searchbox-searchinput .input-field .actnumber .item {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.home-searchbox .searchbox-searchinput .input-field .actnumber .item:not(:last-child) {
	margin-bottom: 10px;
}
.home-searchbox .searchbox-searchinput .input-field .actnumber .item-flex {
	display: flex;
	align-items: center;
	justify-content: center;
}
.home-searchbox .searchbox-searchinput .input-field .actnumber .item-flex input {
	font-size: 1.6rem;
	inline-size: 5rem;
	text-align: center;
	pointer-events: none;
}
.home-searchbox .searchbox-searchinput .input-field .actnumber .item-flex button {
	width: 40px;
	height: 40px;
	border-radius: 100%;
	border: 1px solid #818494;
	color: var(--primary-color);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	block-size: 3rem;
	inline-size: 3rem;
}
.home-searchbox .searchbox-searchinput .input-field .actnumber .item-flex button:disabled {
	cursor: not-allowed;
	opacity: 0.7;
}
.home-searchbox .searchbox-searchinput button[type=submit] {
	width: 100%;
}

.destinations-list {
	position: relative;
}
.destinations-list .owl-nav .owl-prev {
	opacity: 0;
	transform: translateY(30px);
	transition: all 0.3s ease;
}
.destinations-list .owl-nav .owl-next {
	opacity: 0;
	transform: translateY(30px);
	transition: all 0.3s ease;
}
.destinations-list:hover .owl-nav .owl-prev {
	opacity: 1;
	transform: translate(0);
}
.destinations-list:hover .owl-nav .owl-next {
	opacity: 1;
	transform: translate(0);
}
.destinations-slider .item-inner {
	box-shadow: 0px 4px 10px rgba(3, 18, 26, 0.15);
	border-radius: var(--border-radius-box);
	overflow: hidden;
	margin-bottom: 15px;
}
.destinations-slider .item-inner a {
	display: block;
	color: inherit;
	width: 100%;
}
.destinations-slider .item-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 4/3;
}
.destinations-slider .item-content {
	padding: 15px;
}
.destinations-slider .item-content__title {
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	line-clamp: 3;
	-webkit-box-orient: vertical;
	color: var(--black);
	font-weight: 600;
}
.destinations-slider .item-content__desc {
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	line-clamp: 3;
	-webkit-box-orient: vertical;
	margin-bottom: 0;
}

.hotels-item {
	margin-bottom: 20px;
}
.hotels-item__inner.type-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	grid-auto-columns: minmax(0, 1fr);
	border: 1px solid #dfe0e4;
	border-radius: var(--border-radius-box);
	min-height: 230px;
}
.hotels-item__inner.type-grid .hotels-item__image .hotels-item-gallery {
	block-size: 100%;
}
.hotels-item__inner.type-grid .hotels-item__image .hotels-item-gallery .item {
	block-size: 100%;
}
.hotels-item__inner.type-grid .hotels-item__content {
	grid-column-start: span 2;
	padding: 15px;
	justify-content: space-between;
}
.hotels-item__inner.type-grid .hotels-item__content .hotels-name-heading {
	font-size: 2rem;
}
.hotels-item__inner.type-grid .hotels-item__content .hotels-price-flex .price {
	font-size: 2rem;
	color: var(--red);
}
.hotels-item__inner.type-grid .hotels-meta {
	display: flex;
	flex-wrap: wrap;
}
.hotels-item__inner.type-grid .hotels-meta-item {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	padding-block: 0.25rem;
	padding-inline-end: 1rem;
	font-size: 1.2rem;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	line-clamp: 3;
	-webkit-box-orient: vertical;
}
.hotels-item__inner.type-grid .hotels-meta-item svg, .hotels-item__inner.type-grid .hotels-meta-item i {
	block-size: 1.4rem;
}
.hotels-item__inner.type-grid .box-ft {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
.hotels-item__inner.type-grid .box-ft .badge-ranking .ranking-text span {
	display: block;
}
.hotels-item__inner.type-grid .box-ft .hotels-price {
	text-align: right;
	font-size: 1.6rem;
	line-height: 1.3;
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.hotels-item__inner.type-grid .box-ft .hotels-price-flex {
	flex-direction: column;
	align-items: flex-end;
	gap: 0;
}
.hotels-item__inner:hover {
	cursor: pointer;
}
.hotels-item__image {
	position: relative;
	border-radius: var(--border-radius-box);
	overflow: hidden;
}
.hotels-item__image .heart {
	position: absolute;
	top: 8px;
	right: 8px;
	width: 30px;
	height: 30px;
	border-radius: 100%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background-color: #fff;
	z-index: 1;
	cursor: pointer;
}
.hotels-item__image .heart .active {
	color: var(--primary-color);
}
.hotels-item__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 4/3;
}
.hotels-item__image .hotels-gallery-mt button {
	width: 32px;
	height: 32px;
	background-color: rgba(12, 14, 28, 0.56);
	color: #fff;
}
.hotels-item__image .hotels-gallery-mt button.arrow-prev {
	margin-left: 0.5rem;
}
.hotels-item__image .hotels-gallery-mt button.arrow-next {
	margin-right: 0.5rem;
}
.hotels-item__content {
	padding: 10px 0;
	display: flex;
	flex-direction: column;
	grid-column-gap: 0.8rem;
	grid-row-gap: 0.8rem;
}
.hotels-item__content .hotels-name-heading {
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
	font-weight: 600;
	margin-bottom: 4px;
}
.hotels-item__content .hotels-name-heading a {
	color: inherit;
}
.hotels-item__content .hotels-name-location {
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
}
.hotels-item__content .hotels-price-flex {
	display: flex;
	align-items: center;
	gap: 0.8rem;
}
.hotels-item__content .hotels-price-flex .price {
	font-weight: 600;
	color: var(--text);
	font-size: 1.8rem;
}
.hotels-item__content .hotels-price .taxfees {
	font-size: 1.4rem;
}
.hotels-item__content .discount-text {
	display: inline-block;
	background-color: var(--red);
	padding: 0 8px;
	color: #fff;
	border-radius: 8px;
	font-size: 1.4rem;
	line-height: 2.4rem;
}
.hotels-meta {
	display: flex;
	flex-wrap: wrap;
}
.hotels-meta-item {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	padding-block: 0.25rem;
	padding-inline-end: 1rem;
	font-size: 1.2rem;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	line-clamp: 3;
	-webkit-box-orient: vertical;
}
.hotels-meta-item svg, .hotels-meta-item i {
	block-size: 1.4rem;
}
.hotels-photo {
	margin-bottom: 20px;
	display: grid;
	grid-template-columns: repeat(4, minmax(300px, 1fr));
	gap: 10px;
}
.hotels-photo .item {
	position: relative;
}
.hotels-photo .item .viewphotoall {
	position: absolute;
	bottom: 8px;
	right: 10px;
	background-color: #fff;
	border-radius: 16px;
	border: 0;
	padding: 8px;
	font-size: 1.4rem;
	min-width: 150px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	transition: all 0.3s ease;
}
.hotels-photo .item .viewphotoall:hover {
	background-color: var(--primary-color);
	color: #fff;
	transition: all 0.3s ease;
}
.hotels-photo .item img {
	aspect-ratio: 8/5;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 8px;
	transition: all 0.2s ease;
}
.hotels-photo .item img:hover {
	filter: brightness(0.75);
	transition: all 0.2s ease;
}
.hotels-photo .item:nth-child(1) {
	grid-column: span 2;
	grid-row: span 2;
}
@media (max-width: 767.98px) {
	.hotels-photo {
		grid-template-columns: repeat(3, 1fr);
	}
}
@media (max-width: 576px) {
	.hotels-photo {
		grid-template-columns: repeat(2, 1fr);
	}
}
.hotels-detail {
	padding: 50px 0;
}
.hotels-detail-navtabs {
	position: sticky;
	top: 0;
	background-color: #fff;
	z-index: 99;
}
.hotels-detail-navtabs ul {
	position: relative;
	display: flex;
	block-size: 4.4rem;
	box-shadow: 0 1px 0 0 #dfe0e4;
	overflow-x: auto;
	overflow-y: hidden;
	white-space: nowrap;
}
.hotels-detail-navtabs ul li {
	cursor: pointer;
	text-align: center;
	border-bottom: 2px solid transparent;
}
.hotels-detail-navtabs ul li a {
	padding: 0 1.6rem;
	block-size: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-decoration: none;
	font-weight: 600;
}
.hotels-detail-navtabs ul li.active, .hotels-detail-navtabs ul li:hover {
	border-color: var(--primary-color);
}
.hotels-detail-navtabs ul li.active a, .hotels-detail-navtabs ul li:hover a {
	color: var(--primary-color);
}
.hotels-detail #overview, .hotels-detail #rooms, .hotels-detail #amenities, .hotels-detail #reviews, .hotels-detail #location, .hotels-detail #policies {
	scroll-margin-top: 90px;
}
.hotels-detail-info {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}
@media (max-width: 576px) {
	.hotels-detail-info {
		flex-direction: column;
		align-items: flex-start;
	}
}
.hotels-detail__head {
	flex: 1;
}
@media (max-width: 576px) {
	.hotels-detail__head {
		flex-basis: 100%;
	}
}
.hotels-detail__heading {
	font-size: 2.4rem;
	line-height: 1.5;
	font-weight: 700;
}
.hotels-detail__sublocation {
	color: #687176;
	font-weight: 700;
}
.hotels-detail__meta {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 8px;
}
.hotels-detail__typeaccom {
	background-color: #ecf8ff;
	border-radius: 14px;
	padding: 4px 8px;
	color: var(--red);
	font-size: 1.4rem;
	font-weight: 500;
}
.hotels-detail__rating a {
	font-weight: 600;
	text-decoration: underline;
}
.hotels-detail__rating a:hover {
	color: var(--primary-color);
}
.hotels-detail__price {
	display: flex;
	align-items: center;
	gap: 10px;
}
.hotels-detail__price .price-box {
	display: flex;
	flex-direction: column;
	row-gap: 4px;
}
.hotels-detail__price .price-box-label {
	font-weight: 500;
	color: #687176;
	font-size: 1.4rem;
	text-align: right;
}
.hotels-detail__price .price-box-number {
	font-size: 2rem;
	color: var(--primary-color);
	font-weight: 700;
	text-align: right;
}
.hotels-detail__price .hotels-booking .button {
	border-radius: 6px;
	padding: 8px 12px;
}
.hotels-detail__content {
	margin-top: 10px;
	padding: 12px;
	border-radius: 10px;
	border: 1px solid #f2f3f3;
}
.hotels-detail__content-inner {
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 5;
	line-clamp: 5;
	-webkit-box-orient: vertical;
	max-height: 100px;
}
.hotels-detail__content-inner.more {
	display: block;
	max-height: none;
}
.hotels-detail__content .viewmore-content {
	display: inline-block;
	margin-top: 10px;
	font-weight: 600;
}
.hotels-detail__rooms {
	margin-top: 30px;
}
.hotels-detail__rooms .room-item {
	padding: 20px;
	border: 1px solid #ddd;
	border-radius: 18px;
	margin-bottom: 15px;
}
.hotels-detail__rooms .room-item:last-child {
	margin-bottom: 0;
}
.hotels-detail__rooms .room-item__inner {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.hotels-detail__rooms .room-item__image .item {
	position: relative;
}
.hotels-detail__rooms .room-item__image .item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 8px;
}
.hotels-detail__rooms .room-item__image .item .viewphotoall {
	position: absolute;
	bottom: 8px;
	right: 10px;
	background-color: #fff;
	border-radius: 16px;
	border: 0;
	padding: 4px 8px;
	font-size: 1.4rem;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	transition: all 0.3s ease;
}
.hotels-detail__rooms .room-item__image .item .viewphotoall:hover {
	background-color: var(--primary-color);
	color: #fff;
	transition: all 0.3s ease;
}
@media (max-width: 576px) {
	.hotels-detail__rooms .room-item__image {
		width: 100%;
	}
}
.hotels-detail__rooms .room-item__content {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	flex: 1;
}
.hotels-detail__rooms .room-item__content-info {
	flex: 1;
}
.hotels-detail__rooms .room-item__content-title {
	font-size: 2rem;
	line-height: 1.5;
	font-weight: 600;
	margin-bottom: 10px;
}
.hotels-detail__rooms .room-item__content-amenities ul {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.hotels-detail__rooms .room-item__content-amenities ul li {
	flex: 1 0 46%;
}
.hotels-detail__rooms .room-item__content-book {
	margin-top: 10px;
}
.hotels-detail__rooms .room-item__content-book > select{
	padding:0 10px;
	min-width:60px;
}
.hotels-detail__rooms .room-item__content-book a {
	width: 100%;
	text-align: center;
}
@media (max-width: 576px) {
	.hotels-detail__rooms .room-item__content {
		flex-direction: column;
	}
	.hotels-detail__rooms .room-item__content-price {
		width: 100%;
	}
}
.hotels-detail__rooms .room-item__price {
	text-align: right;
}
.hotels-detail__rooms .room-item__price .price-old {
	font-size: 1.4rem;
	font-weight: 500;
	color: #687176;
}
.hotels-detail__rooms .room-item__price .price {
	font-size: 2rem;
	font-weight: 700;
	color: var(--primary-color);
}
.hotels-detail .heading {
	font-size: 2rem;
	line-height: 1.5;
	font-weight: 700;
	margin-bottom: 10px;
}
.hotels-detail__amenities {
	margin: 30px 0;
}
.hotels-detail__amenities .amenities-list {
	display: block;
	column-count: 4;
	column-gap: 24px;
	margin-bottom: -16px;
	margin-top: 30px;
	font-size: 1.4rem;
}
.hotels-detail__amenities .amenities-list .item {
	overflow: hidden;
	break-inside: avoid;
	margin-bottom: 10px;
}
.hotels-detail__amenities .amenities-list .item-head {
	font-weight: 600;
	margin-bottom: 12px;
	font-size: 1.6rem;
}
.hotels-detail__amenities .amenities-list .item ul li {
	margin: 8px 0;
}
@media (max-width: 767.98px) {
	.hotels-detail__amenities .amenities-list {
		column-count: 3;
	}
}
@media (max-width: 576px) {
	.hotels-detail__amenities .amenities-list {
		column-count: 2;
	}
}
.hotels-detail__reviews {
	margin: 30px 0;
}
.hotels-detail__reviews .reviews-travel {
	display: flex;
	width: 100%;
}
.hotels-detail__reviews .reviews-travel-col {
	flex: 1;
	vertical-align: top;
}
.hotels-detail__reviews .reviews-travel-col.cell-right--sidefilter {
	flex-grow: 2;
}
.hotels-detail__reviews .reviews-travel-branding {
	text-align: center;
}
@media (max-width: 576px) {
	.hotels-detail__reviews .reviews-travel {
		flex-direction: column;
		gap: 10px;
	}
}
.hotels-detail__reviews .reviews-pointed {
	border: 8px solid var(--primary-color);
	border-radius: 100%;
	padding: 6px;
	width: 120px;
	height: 120px;
	margin: 0 auto;
}
.hotels-detail__reviews .reviews-pointed span {
	background-color: var(--primary-color);
	border-radius: 100%;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 3.8rem;
	color: #fff;
	pointer-events: none;
}
.hotels-detail__reviews .reviews-pointed-text {
	font-size: 2.4rem;
	line-height: 1.3;
	font-weight: 700;
	color: var(--primary-color);
	text-align: center;
	margin-top: 5px;
}
.hotels-detail__reviews .reviews-travelgrade-item {
	display: inline-block;
	font-size: 1.4rem;
	vertical-align: top;
	width: 48%;
	margin: 15px 0 0;
	padding: 0 20px;
}
.hotels-detail__reviews .reviews-travelgrade-category {
	display: inline-block;
	font-size: 14px;
	margin-top: 5px;
}
.hotels-detail__reviews .reviews-travelgrade-scole {
	float: right;
	margin-top: 5px;
}
.hotels-detail__reviews .reviews-travelgrade-scole--highlight {
	color: var(--primary-color);
}
.hotels-detail__reviews .reviews-progressbar {
	position: relative;
}
.hotels-detail__reviews .reviews-progressbar__scorebar {
	border-radius: 5px;
	height: 5px;
	overflow: hidden;
	width: 100%;
	background-color: #e9ebee;
}
.hotels-detail__reviews .reviews-progressbar__scale {
	animation-name: animate-bar-left;
	background-color: #488bf8;
}
.hotels-detail__reviews .reviews-progressbar__scale--highlight {
	-webkit-animation-duration: 0.4s;
	animation-duration: 0.4s;
	-webkit-animation-iteration-count: 1;
	animation-iteration-count: 1;
	-webkit-animation-timing-function: ease-in;
	animation-timing-function: ease-in;
	border-radius: 5px;
	height: 100%;
	width: 0;
	background-color: #66be5b;
}
.hotels-detail__reviews .reviews-list {
	margin-top: 30px;
}
.hotels-detail__reviews .reviews-comment {
	display: flex;
	flex-direction: row;
	gap: 24px;
	padding: 24px;
	border-radius: 6px;
	border: 1px solid #f2f3f3;
	background-color: #fff;
	margin-bottom: 10px;
	max-width: 1048px;
}
.hotels-detail__reviews .reviews-comment-user {
	display: flex;
	align-items: center;
}
.hotels-detail__reviews .reviews-comment-info {
	display: flex;
	flex-direction: column;
	gap: 12px;
	flex-basis: 25%;
}
.hotels-detail__reviews .reviews-comment-avt {
	width: 65px;
	height: 65px;
	margin-right: 16px;
}
.hotels-detail__reviews .reviews-comment-avt img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 100%;
}
.hotels-detail__reviews .reviews-comment-avt span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	border-radius: 100%;
	background-color: var(--primary-color);
	color: #fff;
	font-weight: 600;
}
.hotels-detail__reviews .reviews-comment .comment-username {
	font-weight: 700;
}
.hotels-detail__reviews .reviews-comment-content {
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	gap: 12px;
	flex: 1;
}
.hotels-detail__reviews .reviews-comment-content .comment-content-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	align-self: stretch;
}
.hotels-detail__reviews .reviews-comment-content .comment-content-head .rating-scole {
	background-color: #ecf8ff;
	padding: 4px 12px;
	border-radius: 999px;
	color: var(--black);
	font-weight: 500;
}
.hotels-detail__reviews .reviews-comment-content .comment-content-head .rating-scole span {
	color: var(--primary-color);
	font-weight: 700;
}
.hotels-detail__reviews .reviews-comment-content .comment-content-desc {
	font-weight: 500;
}
.hotels-detail__reviews .reviews-comment-content .comment-content-image {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	row-gap: 12px;
}
.hotels-detail__reviews .reviews-comment-content .comment-content-image .item {
	flex: 1;
	flex-basis: 85px;
	flex-grow: 0;
	margin-right: 12px;
}
.hotels-detail__reviews .reviews-comment-content .comment-content-image .item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 3/3;
	border-radius: 6px;
}
@media (max-width: 576px) {
	.hotels-detail__reviews .reviews-comment {
		flex-direction: column;
		gap: 15px;
	}
}
.hotels-detail__location {
	margin: 30px 0;
}
.hotels-detail__location .poilist {
	margin-top: 30px;
}
.hotels-detail__location .poilist .sectitle {
	font-weight: 600;
	margin-bottom: 20px;
}
.hotels-detail__location .poilist-head {
	display: flex;
	align-items: center;
	margin-bottom: 10px;
}
.hotels-detail__location .poilist-head .icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 24px;
	width: 24px;
	border-radius: 50%;
	position: relative;
	vertical-align: middle;
	color: #fff;
	background-color: var(--primary-color);
	font-size: 1.2rem;
	margin-right: 12px;
}
.hotels-detail__location .poilist-list li {
	font-size: 1.4rem;
	padding: 4px 10px;
}
.hotels-detail__location .poilist-list li p {
	margin-bottom: 5px;
}
.hotels-detail__location .poilist-list li .wrap-title {
	font-weight: 600;
}
.hotels-detail__location .poilist-list li .wrap-distance {
	display: flex;
	align-items: center;
}
.hotels-detail__location .poilist-list li .wrap-distance .icon {
	margin-right: 8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	position: relative;
	vertical-align: middle;
	background-color: #000;
	color: #fff;
}
.hotels-detail__policies .policies-wrapper .item:not(:last-child) {
	margin-bottom: 10px;
}
.hotels-detail__policies .policies-wrapper .item-head {
	font-weight: 600;
	margin-bottom: 10px;
}
.hotels-other {
	position: relative;
}
.hotels-other-list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1.2rem;
}
.hotels-other-list .item {
	display: block;
}
.hotels-other-list .item a {
	display: flex;
	align-items: center;
	gap: 6px;
	font-weight: 500;
}
.hotels-other-list .item:hover a {
	color: var(--primary-color);
}
@media (max-width: 767.98px) {
	.hotels-other-list {
		grid-template-columns: repeat(3, 1fr);
	}
}
@media (max-width: 576px) {
	.hotels-other-list {
		grid-template-columns: repeat(1, 1fr);
	}
}

.badge-ranking {
	display: flex;
	align-items: center;
	grid-column-gap: 0.6rem;
	grid-row-gap: 0.6rem;
	font-size: 1.4rem;
}
.badge-ranking .ranking-number {
	background-color: #227950;
	padding: 3px 6px;
	font-weight: 600;
	color: #fff;
	border-radius: 6px;
}
.badge-ranking .ranking-text .text-head {
	font-size: 1.6rem;
	font-weight: 600;
}

.pagination {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid #ddd;
	text-align: center;
	justify-content: center;
}
.pagination ul {
	text-align: center;
}
.pagination ul li {
	display: inline-block;
}
.pagination ul li a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: 5px;
	border: 1px solid var(--primary-color);
	border-radius: 100%;
	color: var(--primary-color);
	transition: all 0.3s ease;
}
.pagination ul li.active a, .pagination ul li:hover a {
	background-color: var(--primary-color);
	color: #fff;
	transition: all 0.3s ease;
}

.sidebar-bookroom {
	position: sticky;
	top: 50px;
	margin-top: 30px;
	border: 1px solid #dddddd;
	border-radius: 12px;
	padding: 24px;
	box-shadow: rgba(0, 0, 0, 0.12) 0px 6px 16px;
}
.sidebar-bookroom .input-field {
	position: relative;
	border: 1px solid var(--black);
	margin-bottom: 20px;
	border-radius: 8px;
	padding: 6px 10px;
}
.sidebar-bookroom .input-field::after {
	content: "";
	width: 1px;
	height: 30px;
	background-color: #ebebeb;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}
.sidebar-bookroom .input-field .icon {
	color: var(--black);
	font-size: 1.6rem;
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: 0;
}
.sidebar-bookroom .input-field input {
	width: 100%;
	border: 0;
	padding: 0;
	font-size: 1.6rem;
	line-height: 1.5;
	color: var(--black);
	height: auto;
}
.sidebar-bookroom .input-field input::placeholder {
	color: inherit;
}
.sidebar-bookroom .input-field .actbtn .guestroom {
	height: auto;
	padding: 0;
	font-size: 1.6rem;
	line-height: 1.5;
	color: var(--black);
	display: flex;
	align-items: center;
	grid-column-gap: 0.8rem;
	grid-row-gap: 0.8rem;
}
.sidebar-bookroom .input-field .actbtn .guestroom-item {
	display: flex;
	align-items: center;
	gap: 0.3rem;
}
.sidebar-bookroom .input-field .actbtn .guestroom-item input {
	height: auto;
	inline-size: 1.5rem;
	text-align: center;
	pointer-events: none;
}
.sidebar-bookroom .input-field .actnumber {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	z-index: 1;
	background-color: #fff;
	padding: 15px;
	border-radius: 18px;
	box-shadow: 0 73px 158px rgba(0, 0, 0, 0.07), 0 30.5px 66.01px rgba(0, 0, 0, 0.05), 0 16.31px 35.29px rgba(0, 0, 0, 0.042), 0 9.14px 19.78px rgba(0, 0, 0, 0.035), 0 4.85px 10.51px rgba(0, 0, 0, 0.028), 0 2.02px 4.37px rgba(0, 0, 0, 0.02);
}
.sidebar-bookroom .input-field .actnumber .item {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.sidebar-bookroom .input-field .actnumber .item:not(:last-child) {
	margin-bottom: 10px;
}
.sidebar-bookroom .input-field .actnumber .item-flex {
	display: flex;
	align-items: center;
	justify-content: center;
}
.sidebar-bookroom .input-field .actnumber .item-flex input {
	font-size: 1.6rem;
	inline-size: 5rem;
	text-align: center;
	pointer-events: none;
}
.sidebar-bookroom .input-field .actnumber .item-flex button {
	width: 40px;
	height: 40px;
	border-radius: 100%;
	border: 1px solid #818494;
	color: var(--primary-color);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	block-size: 3rem;
	inline-size: 3rem;
}
.sidebar-bookroom .input-field .actnumber .item-flex button:disabled {
	cursor: not-allowed;
	opacity: 0.7;
}
.sidebar-bookroom .button-book {
	width: 100%;
	padding: 14px 20px;
	font-size: 2rem;
}
.sidebar-bookroom .box-info {
	display: block;
	margin-top: 20px;
}
.sidebar-bookroom .box-info .item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: nowrap;
	margin-bottom: 4px;
	font-weight: 500;
}
.sidebar-bookroom .box-info .item-room {
	margin-bottom: 10px;
}
.sidebar-bookroom .box-info .item-room-title {
	font-weight: 700;
}
.sidebar-bookroom .box-info .item-text {
	text-decoration: underline;
}
.sidebar-bookroom .box-info .item-price {
	white-space: nowrap;
}
.sidebar-bookroom .box-info .item.total-price {
	font-weight: 700;
}
.sidebar-bookroom .box-info .item.total-price .item-price {
	text-decoration: none;
}
.sidebar-bookroom .box-info .divided {
	margin: 15px 0;
}

.whychoose {
	margin-bottom: 5rem;
}
.whychoose-item .icon {
	text-align: center;
	font-size: 6rem;
}
.whychoose-item .icon i, .whychoose-item .icon svg {
	width: 6rem;
	height: 6rem;
}
.whychoose-item .item-text-head {
	font-weight: 700;
	margin-bottom: 1rem;
	color: var(--primary-color);
}

.page-content-field {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 20px;
}
.page-content-field .page-head {
	font-weight: 500;
}
.page-content-field .filter-sort select {
	box-shadow: 0 0 0 1px var(--black);
	padding: 0 12px;
	border-radius: 8px;
}

.widget {
	padding: 20px 0;
}
.widget-head {
	font-size: 2.2rem;
	font-weight: 600;
	margin-bottom: 10px;
}
.widget-search {
	padding-top: 0;
}
.widget-search .widget-field input {
	border-radius: 8px;
	width: 100%;
}
.widget .field-choosebox input {
	width: 18px;
	height: 18px;
	display: inline-block;
}
.widget .field-choosebox .field-item {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	padding: 0.8rem;
	position: relative;
	grid-column-gap: 0.8rem;
}
.widget .field-choosebox .field-item label {
	margin-bottom: 0;
	cursor: pointer;
}
.widget .field-choosebox .morehide {
	display: block;
	padding: 4px 6px;
	margin-top: 10px;
	color: var(--primary-color);
	text-decoration: underline;
	cursor: pointer;
}
.widget .field-choosebox .morehide:hover {
	background-color: #e6dede;
}
.widget .utk-checkbox .field-item input {
	display: none;
}
.widget .utk-checkbox .field-item label {
	position: relative;
	padding-left: 25px;
}
.widget .utk-checkbox .field-item label::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 20px;
	height: 20px;
	border-radius: 3px;
	border: 2px solid #1668e3;
}
.widget .utk-checkbox .field-item label::after {
	content: "\f00c";
	font-family: fontawesome;
	position: absolute;
	top: 50%;
	left: 5px;
	transform: translateY(-50%);
	font-size: 12px;
	display: none;
}
.widget .utk-checkbox .field-item input:checked + label:before {
	background-color: var(--primary-color);
	border-color: var(--primary-color);
}
.widget .utk-checkbox .field-item input:checked + label:after {
	display: block;
	color: #fff;
}

.divided {
	width: 100%;
	height: 1px;
	background-color: #dfe0e4;
}

.price-range-slider .range-value {
	margin: 0;
}
.price-range-slider .range-value input {
	width: 100%;
	background: none;
	color: #000;
	font-size: 16px;
	font-weight: initial;
	box-shadow: none;
	border: none;
	margin: 0 0 20px;
	padding: 0;
}
.price-range-slider .range-bar {
	border: none;
	background: #ddd;
	height: 6px;
	width: 96%;
	margin-left: 8px;
}
.price-range-slider .range-bar .ui-slider-range {
	background: var(--primary-color);
}
.price-range-slider .range-bar .ui-slider-handle {
	border: none;
	outline: none;
	border-radius: 25px;
	background: #fff;
	border: 2px solid var(--primary-color) !important;
	height: 17px;
	width: 20px;
	top: -6px;
	cursor: pointer;
}
.price-range-slider .range-bar .ui-slider-handle + span {
	background: var(--primary-color);
}

.news-item {
	margin-bottom: 30px;
}
.news-item .item-image {
	border-radius: var(--border-radius-box);
	overflow: hidden;
}
.news-item .item-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 6/4;
}
.news-item .item-content-title {
	font-weight: 600;
	margin: 10px 0;
}
.news-item .item-content-title a {
	color: inherit;
}
.news-item .item-content-title a:hover {
	color: var(--primary-color);
}
.news-item .item-content-desc {
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
}
.news-item .item-content-button a {
	font-weight: 600;
	text-transform: uppercase;
	color: var(--primary-color);
	font-size: 1.4rem;
}
.news-detail .heading-title {
	margin-bottom: 10px;
}
.news-detail-meta {
	margin-bottom: 10px;
	color: var(--primary-color);
	font-weight: 500;
}
.news-detail-content h1, .news-detail-content h2, .news-detail-content h3, .news-detail-content h4, .news-detail-content h5, .news-detail-content h6 {
	margin-top: 6px;
	margin-bottom: 15px;
}
.news-detail-content figure {
	text-align: center;
}
.news-detail-content img {
	max-width: 90%;
	margin: 0 auto;
}
.news-detail-tagfoot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-weight: 500;
	margin: 30px 0;
	padding-top: 20px;
	border-top: 1px solid #ddd;
}
.news-detail-tagfoot .share i {
	font-size: 2.4rem;
	margin-right: 4px;
}

.destinations-wrap-tabs .nav-link {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
	position: relative;
	border: 0;
	outline: none;
	background-color: transparent;
	text-align: center;
	font-weight: 500;
}
.destinations-wrap-tabs .nav-link.active {
	color: var(--primary-color);
	border-bottom: 2px solid var(--primary-color);
}
.destinations-wrap-content {
	margin-top: 20px;
}
.destinations-list .item {
	margin-bottom: 20px;
}
.destinations-list .item-inner {
	position: relative;
	border-radius: 8px;
	overflow: hidden;
	width: 100%;
	display: flex;
}
.destinations-list .item-inner:hover {
	color: inherit;
}
.destinations-list .item-inner .box-image {
	display: flex;
	position: relative;
	width: 100%;
	padding-bottom: 67.5%;
}
.destinations-list .item-inner .box-image::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 0.012) 13.54%, rgba(0, 0, 0, 0.039) 27.6%, rgba(0, 0, 0, 0.082) 42.19%, rgba(0, 0, 0, 0.137) 56.77%, rgba(0, 0, 0, 0.204) 71.35%, rgba(0, 0, 0, 0.275) 85.94%, rgba(0, 0, 0, 0.349) 100%);
}
.destinations-list .item-inner .box-image img {
	display: flex;
	height: 100%;
	position: absolute;
	width: 100%;
	transition: 0.2s linear;
}
.destinations-list .item-inner .box-desc {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	pointer-events: none;
	padding: 16px;
	color: #fff;
}
.destinations-list .item-inner .box-desc-title {
	font-size: 1.8rem;
	font-weight: 500;
}
.destinations-list .item-inner .box-desc-number {
	font-size: 1.2rem;
}
.destinations-detail .heading-title {
	margin-bottom: 2rem;
}

.breadcrumbs ol li {
	display: inline-block;
	position: relative;
}
.breadcrumbs ol li:not(:first-child) {
	padding-left: 20px;
}
.breadcrumbs ol li:not(:first-child)::before {
	content: "\f054";
	font-family: fontawesome;
	position: absolute;
	top: 50%;
	left: 3px;
	transform: translateY(-50%);
	z-index: 1;
	font-size: 1.2rem;
}
.breadcrumbs ol li a {
	color: var(--text);
}
.breadcrumbs ol li a:hover {
	color: var(--primary-color);
}

.accounts {
	background-color: #f7f9fa;
}
.accounts-sidebar {
	background-color: white;
	border: 1px solid #cdd0d1;
	border-radius: var(--border-radius-box);
}
.accounts-sidebar .box-wrap {
	padding: 1.5rem;
	border-bottom: 1px solid #e7e7e7;
}
.accounts-sidebar .box-wrap a:hover {
	color: var(--primary-color);
}
.accounts-sidebar .accounts-name {
	display: flex;
	align-items: center;
	gap: 10px;
}
.accounts-sidebar .accounts-name .box-image {
	border-color: white;
	border-radius: 64px;
	border-width: 2px;
	border-style: solid;
	height: 64px;
	width: 64px;
	box-shadow: rgba(3, 18, 26, 0.2) 0px 1px 2px;
	background-color: #f7f9fa;
	display: flex;
	align-items: center;
	justify-content: center;
}
.accounts-sidebar .accounts-name .box-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 100%;
}
.accounts-sidebar .nav-link {
	padding: 16px;
	border: 0;
	border-bottom: 1px solid #e7e7e7;
	text-align: left;
}
.accounts-sidebar .nav-link.active {
	background-color: var(--primary-color);
	color: #fff;
}
.accounts-content .box-tabs-content .setting-row {
	margin-bottom: 20px;
	padding: 15px;
	padding-bottom: 20px;
	border-bottom: 1px solid #e7e7e7;
}
.accounts-content .box-tabs-content .setting-row-layout {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.accounts-content .box-tabs-content .setting-row-layout .display-text {
	flex-grow: 1;
	width: 0;
}
.accounts-content .box-tabs-content .setting-row-layout .display-text-label {
	margin-bottom: 6px;
}
.accounts-content .box-tabs-content .setting-row-layout .display-text-value {
	color: #6a6a6a;
}
.accounts-content .box-tabs-content .setting-row-layout .display-actions {
	min-width: 110px;
	text-align: end;
	width: 110px;
}
.accounts-content .box-tabs-content .setting-row-layout .display-actions .action-text {
	color: var(--text);
	text-decoration: underline;
	cursor: pointer;
	font-weight: 600;
}
.accounts-content .box-tabs-content .setting-display-mode {
	display: none;
}
.accounts-content .box-tabs-content .form-action-mode {
	margin-top: 20px;
}
.accounts-content .box-tabs-content .form-action-mode .form-group label {
	width: 100%;
}
.accounts-content .box-tabs-content .form-action-mode .form-group input,
.accounts-content .box-tabs-content .form-action-mode .form-group select {
	height: auto;
	padding: 12px 16px;
	width: 100%;
	border-radius: 8px;
	border: 1px solid var(--black);
	font-size: 1.6rem;
}
.accounts-content .box-tabs-content .form-action-mode .button {
	padding: 8px 10px;
	border-radius: 8px;
}

.stepbooking-wrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	max-width: 1000px;
	margin: 0 auto;
}
.stepbooking-wrap .item {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-grow: 1;
}
.stepbooking-wrap .item:last-child {
	flex-grow: 0;
}
.stepbooking-wrap .item .step-number {
	width: 45px;
	height: 45px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 100%;
	background-color: transparent;
	color: var(--primary-color);
	font-size: 1.4rem;
	border: 2px solid var(--primary-color);
	font-weight: 700;
}
.stepbooking-wrap .item .step-text {
	font-weight: 700;
	color: #595959;
}
.stepbooking-wrap .item .hz {
	flex: 1;
	height: 1px;
	min-width: 16px;
	background-color: #868686;
}
.stepbooking-wrap .item.active .step-number {
	background-color: var(--primary-color);
	color: #fff;
}
.stepbooking-wrap .item.active .step-text {
	color: var(--primary-color);
}

.bookinginfo .px-roude {
	padding: 14px;
	border: 1px solid #e7e7e7;
	background-color: #fff;
	border-radius: 16px;
}
.bookinginfo .px-roude + .px-roude {
	margin-top: 16px;
}
.bookinginfo .people-detail input, .bookinginfo .people-detail select {
	width: 100%;
	border-color: #aaa;
}
.bookinginfo .people-detail input, 
.bookinginfo .people-detail select,
.bookinginfo .people-detail .select2-container .select2-selection--single,
.bookinginfo .people-detail .select2-container--default .select2-selection--single .select2-selection__rendered{
	height:40px;
	line-height:40px;
}
.bookinginfo .people-detail label {
	font-weight: 600;
}
.bookinginfo .agreement-text {
	margin: 24px 0;
}
.bookinginfo .agreement-text a {
	color: var(--red);
}
.bookinginfo .agreement-text a:hover {
	color: var(--primary-color);
}
.bookinginfo .agreement .btngroup {
	text-align: right;
}
.bookinginfo-sidebar .sidebar-book-hotel .gallery-hotel {
	margin-bottom: 8px;
	display: none;
}
.bookinginfo-sidebar .sidebar-book-hotel .gallery-hotel img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 6/3;
	border-radius: 16px;
}
.bookinginfo-sidebar .sidebar-book-hotel .title-hotel {
	display: block;
	margin-bottom: 8px;
}
.bookinginfo-sidebar .sidebar-book-hotel .title-hotel a:hover {
	color: var(--primary-color);
}
.bookinginfo-sidebar .sidebar-book-hotel .facilities {
	margin-top: 10px;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	gap: 6px;
	font-size: 1.4rem;
}
.bookinginfo-sidebar .hotel-star {
	color: #ffdc00;
}
.bookinginfo-sidebar .divided {
	margin: 10px 0;
}
.bookinginfo-sidebar .card-booking .title-room {
	margin-bottom: 8px;
}
.bookinginfo-sidebar .card-booking .room-facilities {
	color: #687176;
	display: block;
	column-count: 2;
	font-size: 1.4rem;
}
.bookinginfo-sidebar .card-booking .buid-date {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.bookinginfo-sidebar .card-booking .buid-date-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	row-gap: 4px;
	border: 1px solid #cdd0d1;
	border-radius: 10px;
	padding: 8px;
	font-size: 1.6rem;
	line-height: 1.2;
}
.bookinginfo-sidebar .card-booking .buid-date__label {
	font-weight: 500;
}
.bookinginfo-sidebar .card-booking .buid-date__title {
	font-weight: 700;
}
.bookinginfo-sidebar .card-booking .buid-time {
	margin-top: 8px;
	font-weight: 500;
	display: flex;
	flex-direction: column;
}
.bookinginfo-sidebar .card-booking .buid-time-strong {
	font-weight: 700;
}
.bookinginfo-sidebar .tentative-cost .title-head {
	font-size: 1.6rem;
	font-weight: 700;
	margin-bottom: 15px;
}
.bookinginfo-sidebar .tentative-cost .cost-list-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: nowrap;
	margin-bottom: 4px;
	font-weight: 500;
}
.bookinginfo-sidebar .tentative-cost .cost-list .total-price {
	font-weight: 700;
}
.bookinginfo .payment-option-item {
	display: flex;
	align-items: center;
	gap: 10px;
}
.bookinginfo .payment-option-item label {
	margin-bottom: 0;
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: 8px;
}
.bookinginfo .payment-option-item input {
	width: 24px;
}
.bookinginfo .payment-option-content {
	margin-top: 10px;
}
.bookinginfo .payment-option-content .payment-card {
	display: none;
}
.bookinginfo .payment-option-content .inputbox {
	margin-bottom: 10px;
}
.bookinginfo .payment-option-content .inputbox label {
	font-weight: 700;
}
.bookinginfo .payment-option-content .inputbox input, .bookinginfo .payment-option-content .inputbox select {
	border-radius: 6px;
	width: 100%;
	border-color: #cdd0d1;
	height: 45px;
	font-size: 1.6rem;
}
.bookinginfo .bui-text label {
	font-weight: 700;
}
.bookinginfo .bui-text label .indicator {
	font-weight: normal;
}
.bookinginfo .bui-text textarea {
	width: 100%;
	border-radius: 6px;
}

.required {
	color: #a30000;
	font-size: 1.5rem;
}

.footer {
	background-color: #f7f7f7;
	padding: 80px 0;
}
.footer-head {
	font-weight: 600;
	margin-bottom: 16px;
}
.footer ul {
	margin-bottom: 15px;
}
.footer ul li {
	margin-bottom: 0.5rem;
}
.footer ul li a {
	color: inherit;
}
.footer ul li a:hover {
	color: var(--primary-color);
	text-decoration: underline;
}
@media (max-width: 576px) {
	.footer {
		padding: 40px 0;
	}
}

.extrabeds-item{
	display: flex;
	flex-wrap:wrap;
	row-gap: 4px;
	border: 1px solid #cdd0d1;
	border-radius: 10px;
	padding: 14px;
	font-size: 1.6rem;
	line-height: 1.2;
}
.extrabeds-item+.extrabeds-item{
	margin-top:20px;
}
.extrabeds-item__image{
	max-width: 201px;
	margin-right: 15px;
	margin-bottom: 15px;
}
.extrabeds-item__image img{
	border-radius:10px;
}
.extrabeds-item__content{
	flex:1;
}
.extrabeds-item__desc{
	margin:10px 0;
}
.extrabeds-item__pricewrap{
	display: flex;
	align-items: center;
	gap: 10px;
	justify-content: space-between;
}
.extrabeds-item__number input{
	width:auto !important;
	border-radius: 20px;
	text-align: center;

}


/*service gr*/
.service-gritem{
	display: flex;
	flex-wrap:wrap;
	row-gap: 4px;
	border: 1px solid #cdd0d1;
	border-radius: 10px;
	padding: 14px;
	font-size: 1.6rem;
	line-height: 1.2;
}
.service-gritem{
	margin-top:20px;
}
.service-gritem__image{
	max-width: 201px;
	margin-right: 15px;
	margin-bottom: 15px;
}
.service-gritem__image img{
	border-radius:10px;
}
.service-gritem__content{
	flex:1;
}
.service-gritem__desc{
	margin:10px 0;
}
.service-gritem__pricewrap{
	display: flex;
	align-items: center;
	gap: 10px;
	justify-content: space-between;
}
.service-gritem__number input{
	width:auto !important;
	border-radius: 20px;
	text-align: center;

}

.order-room{
	padding:50px 0;
}
.order-room table thead th{
	vertical-align: middle;
	font-weight:bold;
}

.reviews-reservation .skill {
	margin-bottom: 20px;
}
.reviews-reservation label {
	margin-bottom: 5px;
	font-weight: bold;
	display:block;
}

.skill-group {
	border: 1px #999 solid;
	display: inline-flex;
	font-size:0;
	justify-content: center;
	align-items: center;
	flex-direction: row-reverse;
	background: linear-gradient(to right, #f00 , #b72025, #0f0);
	border-radius:24px;
	overflow:hidden;
}
.skill-group input {
	display: none;
}
.skill-group label {
	display: flex;
	width: 40px;
	height: 40px;
	font-size: 18px;
	justify-content: center;
	align-items: center;
	background: #fff;
	color: #000;
	cursor: pointer;
	margin-bottom:0;
}
.skill-group label {
	border-left: 1px #999 solid;
	transition: .3s;
}
.skill-group label:last-child{
	border:0;	
}
.skill-group input[type='radio']:hover~label,
input[type='radio']:checked~label{
	background: none;
	color: #fff;
}
#reviewForm-reservation .btn-primary{
	padding:10px;
	background: var(--primary-color);
	color:#fff;
	border-radius:50px;
	border:0;
	font-size:16px;
}