/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
/*========================================
        FACILITIES - TWO COLUMNS
=========================================*/

/*==========================================
        FACILITIES - 2 COLUMNS
==========================================*/

._hb_room_facility{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:18px 35px !important;
    width:100% !important;
}

.__hb_room_facility__detail{
    width:100% !important;
    margin:0 !important;
    padding:12px 0 !important;
    border-bottom:1px solid #eceff3;
    box-sizing:border-box;
}

.__hb_room_facility__label{
    margin:0 !important;
    font-size:16px;
    font-weight:500;
    line-height:1.5;
    color:#031b42;
}

/* Mobile */

@media (max-width:767px){

    ._hb_room_facility{
        grid-template-columns:1fr !important;
        gap:0 !important;
    }

}


.hb_single_room {
    padding-left: 10px;
    padding-right: 10px;
    box-sizing: border-box;
}
/* =========================================
   SINGLE PROPERTY TITLE
========================================= */

.wphb-single-room-title {
    width: 100%;
    display: block;
    margin: 0 0 30px !important;
    padding: 0 !important;
}

.wphb-single-room-title .wphb-property-title {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 0 15px !important;

    font-family: inherit !important;
    font-size: 42px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: -0.5px !important;

    color: #031b42 !important;
    text-align: left !important;

    position: relative;
}

/* Decorative line below title */
.wphb-single-room-title .wphb-property-title::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    margin-top: 15px;

    background-color: #ffb606;
    border-radius: 3px;
}








/* =========================================================
   CUSTOM PROPERTY GALLERY
   Layout:
   LEFT  = 1 Large Image
   RIGHT = 3 Small Images
   ========================================================= */

.custom-property-gallery {
	width: 100%;
	max-width: 1200px;
	margin: 35px auto 45px;
	position: relative;
}


/* =========================================================
   GALLERY GRID
   ========================================================= */

.custom-property-gallery-grid {
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 8px;
	width: 100%;
	height: 600px;
}


/* =========================================================
   LEFT LARGE IMAGE
   ========================================================= */

.custom-property-gallery-main {
	width: 100%;
	height: 600px;
	overflow: hidden;
	border-radius: 12px 0 0 12px;
}


.custom-property-gallery-main a {
	display: block;
	width: 100%;
	height: 100%;
}


.custom-property-gallery-main img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.5s ease;
}


.custom-property-gallery-main:hover img {
	transform: scale(1.03);
}


/* =========================================================
   RIGHT SIDE - 3 IMAGES
   ========================================================= */

.custom-property-gallery-right {
	display: grid;
	grid-template-rows: repeat(3, 1fr);
	gap: 8px;
	height: 600px;
}


.custom-property-gallery-small {
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
}


.custom-property-gallery-small:first-child {
	border-radius: 0 12px 0 0;
}


.custom-property-gallery-small:last-child {
	border-radius: 0 0 12px 0;
}


.custom-property-gallery-small a {
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
}


.custom-property-gallery-small img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.5s ease;
}


.custom-property-gallery-small:hover img {
	transform: scale(1.05);
}


/* =========================================================
   VIEW ALL OVERLAY
   ========================================================= */

.custom-gallery-view-all-overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;

	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;

	gap: 8px;

	background: rgba(3, 27, 66, 0.72);

	color: #ffffff;

	font-size: 17px;
	font-weight: 600;

	opacity: 0;

	transition: all 0.3s ease;
}


.custom-property-gallery-small:hover
.custom-gallery-view-all-overlay {
	opacity: 1;
}


/* =========================================================
   VIEW ALL ICON
   ========================================================= */

.custom-gallery-view-all-icon {
	font-size: 28px;
	line-height: 1;
}


.custom-gallery-view-all-text {
	font-size: 16px;
	font-weight: 600;
}


/* =========================================================
   HIDDEN GALLERY
   ========================================================= */

.custom-gallery-hidden-items {
	display: none !important;
}


/* =========================================================
   LIGHTBOX MODAL
   ========================================================= */

.custom-gallery-lightbox-modal {
	position: fixed;
	top: 0;
	left: 0;

	width: 100%;
	height: 100%;

	background: rgba(0, 0, 0, 0.92);

	z-index: 999999;

	display: flex;
	align-items: center;
	justify-content: center;

	opacity: 0;
	visibility: hidden;

	transition:
		opacity 0.3s ease,
		visibility 0.3s ease;
}


.custom-gallery-lightbox-modal.is-open {
	opacity: 1;
	visibility: visible;
}


body.custom-gallery-modal-open {
	overflow: hidden;
}


/* =========================================================
   LIGHTBOX CONTENT
   ========================================================= */

.custom-gallery-lightbox-content {
	position: relative;

	width: 90%;
	height: 90%;

	display: flex;
	align-items: center;
	justify-content: center;
}


#custom-gallery-lightbox-image {
	max-width: 85%;
	max-height: 85%;

	width: auto;
	height: auto;

	object-fit: contain;

	border-radius: 8px;

	box-shadow:
		0 20px 60px rgba(0, 0, 0, 0.5);
}


/* =========================================================
   CLOSE BUTTON
   ========================================================= */

.custom-gallery-close {
	position: absolute;

	top: 10px;
	right: 10px;

	width: 48px;
	height: 48px;

	border: none;

	border-radius: 50%;

	background: #ffffff;

	color: #031b42;

	font-size: 32px;

	line-height: 48px;

	cursor: pointer;

	z-index: 10;

	transition: all 0.3s ease;
}


.custom-gallery-close:hover {
	background: #031b42;
	color: #ffffff;

	transform: rotate(90deg);
}


/* =========================================================
   PREVIOUS / NEXT
   ========================================================= */

.custom-gallery-prev,
.custom-gallery-next {
	position: absolute;

	top: 50%;

	transform: translateY(-50%);

	width: 50px;
	height: 50px;

	border: none;

	border-radius: 50%;

	background: #ffffff;

	color: #031b42;

	font-size: 25px;

	cursor: pointer;

	z-index: 10;

	transition: all 0.3s ease;
}


.custom-gallery-prev {
	left: 15px;
}


.custom-gallery-next {
	right: 15px;
}


.custom-gallery-prev:hover,
.custom-gallery-next:hover {
	background: #031b42;
	color: #ffffff;

	transform:
		translateY(-50%)
		scale(1.08);
}


/* =========================================================
   PHOTO COUNTER
   ========================================================= */

.custom-gallery-counter {
	position: absolute;

	bottom: 15px;
	left: 50%;

	transform: translateX(-50%);

	background: rgba(3, 27, 66, 0.9);

	color: #ffffff;

	padding: 8px 18px;

	border-radius: 30px;

	font-size: 14px;

	font-weight: 600;
}


/* =========================================================
   CLICK CURSOR
   ========================================================= */

.custom-property-gallery
a.custom-gallery-lightbox {
	cursor: pointer;
}


/* =========================================================
   FALLBACK IMAGE
   ========================================================= */

.custom-property-gallery-no-image {
	width: 100%;
	margin: 35px auto;
}


.custom-property-gallery-no-image img {
	width: 100%;
	max-height: 600px;
	object-fit: cover;
	border-radius: 12px;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {

	.custom-property-gallery-grid {
		height: 500px;
	}

	.custom-property-gallery-main {
		height: 500px;
	}

	.custom-property-gallery-right {
		height: 500px;
	}

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

	.custom-property-gallery {
		margin: 25px auto 35px;
	}

	.custom-property-gallery-grid {
		grid-template-columns: 1fr;
		grid-template-rows: 300px auto;

		height: auto;

		gap: 6px;
	}


	.custom-property-gallery-main {
		height: 300px;

		border-radius: 10px 10px 0 0;
	}


	.custom-property-gallery-right {
		display: grid;

		grid-template-columns:
			repeat(3, 1fr);

		grid-template-rows: 1fr;

		height: 180px;

		gap: 6px;
	}


	.custom-property-gallery-small {
		height: 180px;
	}


	.custom-property-gallery-small:first-child {
		border-radius: 0;
	}


	.custom-property-gallery-small:last-child {
		border-radius: 0 0 10px 0;
	}


	.custom-gallery-view-all-overlay {
		opacity: 1;

		background:
			rgba(
				3,
				27,
				66,
				0.65
			);
	}


	.custom-gallery-view-all-text {
		font-size: 12px;
		text-align: center;
	}


	.custom-gallery-view-all-icon {
		font-size: 22px;
	}


	.custom-gallery-lightbox-content {
		width: 100%;
		height: 100%;
	}


	#custom-gallery-lightbox-image {
		max-width: 90%;
		max-height: 75%;
	}


	.custom-gallery-prev,
	.custom-gallery-next {
		width: 42px;
		height: 42px;

		font-size: 20px;
	}


	.custom-gallery-prev {
		left: 10px;
	}


	.custom-gallery-next {
		right: 10px;
	}


	.custom-gallery-close {
		top: 20px;
		right: 20px;

		width: 42px;
		height: 42px;

		line-height: 42px;

		font-size: 27px;
	}

}

































/*====================================================
ROOM TABS
====================================================*/

.single-hb_room .hb_single_room_tabs{
    display:flex;
    align-items:center;
    gap:10px;
    margin:35px 0 20px;
    padding:0;
    list-style:none;
    border:none;
    flex-wrap:wrap;
}

.single-hb_room .hb_single_room_tabs li{
    margin:0 !important;
    padding:0 !important;
    border:none !important;
    display:block !important;
}

.single-hb_room .hb_single_room_tabs li::before,
.single-hb_room .hb_single_room_tabs li::after{
    display:none !important;
}

.single-hb_room .hb_single_room_tabs li a{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;

    padding:14px 26px;
    margin:0 !important;

    border-radius:50px;
    border:1px solid #dfe4ea;

    background:#fff;

    color:#031b42;
    font-size:15px;
    font-weight:600;
    line-height:1;

    transition:.3s;
}

.single-hb_room .hb_single_room_tabs li a:hover{
    background:#031b42;
    color:#fff;
    border-color:#031b42;
}

.single-hb_room .hb_single_room_tabs li a.active{
    background:#031b42;
    color:#fff;
    border-color:#031b42;
}

.single-hb_room .hb_single_room_tabs .comment-count{
    font-weight:500;
    opacity:.9;
}



/*====================================================
TAB CONTENT
====================================================*/

.single-hb_room .hb_single_room_tabs_content{
    margin-top: -30px;
}

.single-hb_room .hb_single_room_tab_details{
    margin:0;
    padding:0;
}



/*====================================================
CARD
====================================================*/

.custom-room-tab-card{
    background:#fff;
    border:1px solid #e8edf2;
    border-radius:16px;
    padding:35px;
    box-shadow:0 10px 35px rgba(0,0,0,.05);
}



/*====================================================
CONTENT
====================================================*/

.custom-room-tab-inner h1,
.custom-room-tab-inner h2,
.custom-room-tab-inner h3,
.custom-room-tab-inner h4{
    color:#031b42;
    margin:0 0 20px;
    font-weight:700;
}

.custom-room-tab-inner h3{
    font-size:28px;
}

.custom-room-tab-inner p{
    color:#555;
    font-size:16px;
    line-height:1.9;
    margin:0 0 18px;
}

.custom-room-tab-inner strong{
    color:#031b42;
}

.custom-room-tab-inner ul{
    margin:20px 0;
    padding-left:22px;
}

.custom-room-tab-inner li{
    margin-bottom:12px;
    color:#555;
    line-height:1.8;
}



/*====================================================
PRICING CALENDAR
====================================================*/

.wphb-room-calendar-pricing-wrap{
    border:none;
    box-shadow:none;
    padding:0;
}

.flatpickr-calendar{
    border-radius:15px;
    overflow:hidden;
    box-shadow:0 15px 45px rgba(0,0,0,.08);
}



/*====================================================
BUTTONS
====================================================*/

.wphb-room-calendar-pricing-buttons{
    margin-top:20px;
    display:flex;
    gap:15px;
}

.wphb-room-calendar-pricing-buttons .hb_button{
    border-radius:8px;
    padding:12px 24px;
    font-weight:600;
}

.wphb-room-calendar-pricing-buttons .hb-btn-apply{
    background:#031b42;
    border-color:#031b42;
}

.wphb-room-calendar-pricing-buttons .hb-btn-cancel{
    background:#f4f6f8;
    color:#031b42;
}



/*====================================================
MOBILE
====================================================*/

@media(max-width:768px){

.single-hb_room .hb_single_room_tabs{
    gap:8px;
}

.single-hb_room .hb_single_room_tabs li{
    width:100%;
}

.single-hb_room .hb_single_room_tabs li a{
    width:100%;
    justify-content:center;
}

.custom-room-tab-card{
    padding:22px;
}

.custom-room-tab-inner h3{
    font-size:22px;
}

}
/* Remove red underline from active tab */
.single-hb_room .hb_single_room_tabs li a:before,
.single-hb_room .hb_single_room_tabs li a:after,
.single-hb_room .hb_single_room_tabs li.active a:before,
.single-hb_room .hb_single_room_tabs li.active a:after,
.single-hb_room .hb_single_room_tabs li a.active:before,
.single-hb_room .hb_single_room_tabs li a.active:after {
    display: none !important;
    content: none !important;
    border: 0 !important;
    height: 0 !important;
    width: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Remove any border under active tab */
.single-hb_room .hb_single_room_tabs li.active,
.single-hb_room .hb_single_room_tabs li a.active {
    border-bottom: none !important;
    box-shadow: none !important;
}

/* Keep only your blue active tab */
.single-hb_room .hb_single_room_tabs li a.active {
    background: #031b42 !important;
    color: #fff !important;
    border-color: #031b42 !important;
}




















/* Remove plugin wrapper */
.wphb-single-room-booking-container #hotel_booking_room_hidden{
    position:sticky !important;
    top:30px;
    padding:0 !important;
    margin:0 !important;
    background:transparent !important;
    border:none !important;
    box-shadow:none !important;
    border-radius:0 !important;
}

/* Remove any extra wrapper */
.wphb-single-room-booking-container{
    padding:0 !important;
    margin:0 !important;
    background:none !important;
    border:none !important;
    box-shadow:none !important;
}


/*====================================================
            PREMIUM BOOKING FORM
=====================================================*/

.wphb-single-room-booking-container{
    position:sticky;
    top:30px;
    align-self:flex-start;
    width:100%;
}

/* Remove plugin wrapper */
.wphb-single-room-booking-container #hotel_booking_room_hidden{
    position:relative !important;
    padding:0 !important;
    margin:0 !important;
    background:none !important;
    border:none !important;
    box-shadow:none !important;
}

/* Main Card */
#hotel_booking_room_hidden .wphb-room-tmpl-dates-available{
    background:#fff;
    border:1px solid #e7edf5;
    border-radius:18px;
    overflow:hidden;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
}

/*====================================================
                    HEADER
=====================================================*/

#hotel_booking_room_hidden .hb-booking-room-form-header{
    background:#031b42;
    padding:24px;
    color:#fff;
}

#hotel_booking_room_hidden .hb-booking-room-form-head .description{
    margin:0;
    color:#b9cae8;
    font-size:13px;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:2px;
}

#hotel_booking_room_hidden .price{
    margin-top:10px;
    display:flex;
    flex-wrap:wrap;
    align-items:flex-end;
    gap:6px;
}

#hotel_booking_room_hidden .title-price{
    width:100%;
    color:#d5e1f5;
    font-size:13px;
}

#hotel_booking_room_hidden .price_value{
    font-size:34px;
    font-weight:700;
    line-height:1;
    color:#fff;
}

#hotel_booking_room_hidden .unit{
    color:#fff;
    font-size:15px;
}

#hotel_booking_room_hidden .tax-text{
    width:100%;
    font-size:12px;
    color:#cbd8ef;
}

/*====================================================
                FORM GRID
=====================================================*/

#hotel_booking_room_hidden .hb-search-results-form-container{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    padding:22px;
}

/* Checkin */
#hotel_booking_room_hidden .hb-booking-room-form-group:nth-child(1){
    grid-column:1;
}

/* Checkout */
#hotel_booking_room_hidden .hb-booking-room-form-group:nth-child(2){
    grid-column:2;
}

/* Adults */
#hotel_booking_room_hidden .hb-booking-room-form-group:nth-child(3){
    grid-column:1;
}

/* Children */
#hotel_booking_room_hidden .hb-booking-room-form-group:nth-child(4){
    grid-column:2;
}

/* Rooms */
#hotel_booking_room_hidden .hb-booking-room-form-group:nth-child(5){
    grid-column:1 / span 2;
}

/* Price */
#hotel_booking_room_hidden .hb-room-price{
    grid-column:1 / span 2;
}

/* Button */
#hotel_booking_room_hidden .hb-booking-room-form-group:last-child{
    grid-column:1 / span 2;
}

/*====================================================
                    LABELS
=====================================================*/

#hotel_booking_room_hidden label{
    display:block;
    margin-bottom:7px;
    font-size:13px;
    font-weight:600;
    color:#031b42;
}


/*=====================================================
RESPONSIVE
======================================================*/

@media(max-width:991px){

.wphb-single-room-booking-container{
    position:relative;
    top:0;
    margin-top:30px;
}

}

@media(max-width:575px){

.hb-booking-room-form-group:nth-child(3),
.hb-booking-room-form-group:nth-child(4){

    width:100%;
    margin-right:0;
}

.wphb-single-room-booking-container #hotel_booking_room_hidden{
    padding:18px;
}

.price_value{
    font-size:28px;
}

}

/*====================================================
                    INPUTS
=====================================================*/

#hotel_booking_room_hidden input[type=text],
#hotel_booking_room_hidden input[type=number],
#hotel_booking_room_hidden select{
    width:100%;
    max-width:100%;
    height:46px;
    padding:0 14px;
    border:1px solid #d9e3ee;
    border-radius:12px;
    background:#fff;
    font-size:14px;
    color:#031b42;
    transition:.25s ease;
    box-sizing:border-box;
}

#hotel_booking_room_hidden input[type=number]{
    padding-right:10px;
}

#hotel_booking_room_hidden input:focus,
#hotel_booking_room_hidden select:focus{
    outline:none;
    border-color:#031b42 !important;
    box-shadow:0 0 0 3px rgba(3,27,66,.10);
}

/* Remove browser arrows */

#hotel_booking_room_hidden input::-webkit-outer-spin-button,
#hotel_booking_room_hidden input::-webkit-inner-spin-button{
    -webkit-appearance:none;
    margin:0;
}

#hotel_booking_room_hidden input[type=number]{
    -moz-appearance:textfield;
}

/*====================================================
                FIELD WRAPPERS
=====================================================*/

#hotel_booking_room_hidden .hb-booking-room-form-field{
    margin:0;
    width:100%;
}

#hotel_booking_room_hidden .hb-booking-room-form-group{
    margin:0;
    padding:0;
    border:none;
    width:100%;
}

/*====================================================
                  MAX ROOMS BADGE
=====================================================*/

#hotel_booking_room_hidden .wphb-max-qty{
    display:inline-flex;
    align-items:center;
    gap:5px;
    background:#edf3fb;
    color:#031b42;
    border-radius:40px;
    padding:5px 11px;
    font-size:12px;
    font-weight:600;
    margin-bottom:8px;
}

/*====================================================
                    PRICE BOX
=====================================================*/

#hotel_booking_room_hidden .hb-room-price{
    background:#f8fafc;
    border:1px solid #e5edf6;
    border-radius:14px;
    padding:16px;
}

#hotel_booking_room_hidden .hb-total-price{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:10px;
}

#hotel_booking_room_hidden .hb-total-price-text{
    color:#666;
    font-weight:600;
    font-size:15px;
}

#hotel_booking_room_hidden .hb-total-price-value{
    color:#031b42;
    font-size:28px;
    font-weight:700;
}

/*====================================================
                VIEW DETAILS
=====================================================*/

#hotel_booking_room_hidden .hb_view_price{
    text-align:right;
}

#hotel_booking_room_hidden .hb_view_price a{
    color:#031b42;
    text-decoration:none;
    font-size:14px;
    font-weight:600;
    transition:.25s;
}

#hotel_booking_room_hidden .hb_view_price a:hover{
    color:#0b3d8a;
}

/*====================================================
                    BUTTON
=====================================================*/

#hotel_booking_room_hidden .hb_button{
    width:100% !important; 
    height:54px;
    border:none;
    border-radius:14px;
    background:#031b42;
    color:#fff;
    font-size:16px;
    font-weight:700;
    letter-spacing:.4px;
    cursor:pointer;
    transition:all .3s ease;
    text-transform:uppercase;
}

#hotel_booking_room_hidden .hb_button:hover{
    background:#05295f;
    transform:translateY(-2px);
    box-shadow:0 10px 24px rgba(3,27,66,.25);
}

#hotel_booking_room_hidden .hb_button:active{
    transform:translateY(0);
}

/*====================================================
                FORM RESET
=====================================================*/

#hotel_booking_room_hidden form{
    margin:0;
}

#hotel_booking_room_hidden p{
    margin:0;
}

#hotel_booking_room_hidden *{
    box-sizing:border-box;
}

#hotel_booking_room_hidden .hb-booking-room-form-group:last-child{
    margin-top:2px;
}

#hotel_booking_room_hidden .hb-form-field-input{
    width:100%;
}

#hotel_booking_room_hidden input{
    font-family:inherit;
}

#hotel_booking_room_hidden input::placeholder{
    color:#9aa8b9;
}

#hotel_booking_room_hidden .flatpickr-input{
    cursor:pointer;
}

/* Hide plugin loading overlay background */

#hotel_booking_room_hidden .wphb-single-room-loading-overlay{
    background:rgba(255,255,255,.65);
}

/*====================================================
                PREMIUM EFFECTS
=====================================================*/

#hotel_booking_room_hidden .wphb-room-tmpl-dates-available:hover{
    box-shadow:0 18px 45px rgba(0,0,0,.12);
    transition:.35s;
}

#hotel_booking_room_hidden input:hover,
#hotel_booking_room_hidden select:hover{
    border-color:#b8c7d9;
}

#hotel_booking_room_hidden .price_value{
    text-shadow:0 2px 10px rgba(255,255,255,.08);
}
/*====================================================
                    TABLET
=====================================================*/

@media (max-width:991px){

.wphb-single-room-booking-container{
    position:relative !important;
    top:0 !important;
    width:100%;
    margin-top:30px;
}

#hotel_booking_room_hidden{
    width:100%;
}

#hotel_booking_room_hidden .wphb-room-tmpl-dates-available{
    border-radius:16px;
}

}


/*====================================================
                    MOBILE
=====================================================*/

@media (max-width:767px){

/* Card */

#hotel_booking_room_hidden .wphb-room-tmpl-dates-available{
    width:100%;
    border-radius:14px;
}

/* One Column Layout */

#hotel_booking_room_hidden .hb-search-results-form-container{

    display:flex;
    flex-direction:column;
    gap:18px;
    padding:18px;

}

/* Remove Grid */

#hotel_booking_room_hidden .hb-booking-room-form-group{

    width:100% !important;
    max-width:100% !important;

    margin:0 !important;
    padding:0 !important;

    grid-column:auto !important;

}

/* Header */

#hotel_booking_room_hidden .hb-booking-room-form-header{

    padding:18px;

}

/* Price */

#hotel_booking_room_hidden .price{

    gap:4px;

}

#hotel_booking_room_hidden .price_value{

    font-size:28px;

}

#hotel_booking_room_hidden .unit{

    font-size:14px;

}

#hotel_booking_room_hidden .tax-text{

    font-size:11px;

}

/* Labels */

#hotel_booking_room_hidden label{

    font-size:13px;
    margin-bottom:6px;

}

/* Inputs */

#hotel_booking_room_hidden input[type=text],
#hotel_booking_room_hidden input[type=number],
#hotel_booking_room_hidden select{

    width:100%;
    height:48px;

    font-size:15px;

    padding:0 14px;

}

/* Price Box */

#hotel_booking_room_hidden .hb-room-price{

    padding:14px;

}

#hotel_booking_room_hidden .hb-total-price{

    margin-bottom:10px;

}

#hotel_booking_room_hidden .hb-total-price-text{

    font-size:14px;

}

#hotel_booking_room_hidden .hb-total-price-value{

    font-size:24px;

}

/* Button */

#hotel_booking_room_hidden .hb_button{

    width:100% !important;

    height:50px;

    font-size:15px;

    border-radius:12px;

}

/* Max Room */

#hotel_booking_room_hidden .wphb-max-qty{

    margin-bottom:10px;

}

/* View Details */

#hotel_booking_room_hidden .hb_view_price{

    text-align:left;
    margin-top:10px;

}

}


/*====================================================
                EXTRA SMALL DEVICES
=====================================================*/

@media (max-width:480px){

#hotel_booking_room_hidden .hb-search-results-form-container{

    padding:15px;
    gap:15px;

}

#hotel_booking_room_hidden .hb-booking-room-form-header{

    padding:16px;

}

#hotel_booking_room_hidden .price_value{

    font-size:24px;

}

#hotel_booking_room_hidden .hb-total-price-value{

    font-size:22px;

}

#hotel_booking_room_hidden .hb_button{

    height:48px;
    font-size:14px;

}

#hotel_booking_room_hidden input[type=text],
#hotel_booking_room_hidden input[type=number],
#hotel_booking_room_hidden select{

    height:46px;
    font-size:14px;

}

}
@media (max-width:767px){

#hotel_booking_room_hidden .hb-booking-room-form-group{
    width:100% !important;
    max-width:100% !important;
    flex:0 0 100% !important;
    grid-column:1 / -1 !important;
    margin:0 !important;
}

}

/* ==========================================
   MOBILE WIDTH FIX
========================================== */

@media (max-width:767px){

    /* Main Form Container */
    #hotel_booking_room_hidden .hb-search-results-form-container{
        width:100% !important;
        max-width:100% !important;
        display:flex !important;
        flex-direction:column !important;
        padding:18px !important;
        gap:18px !important;
        box-sizing:border-box !important;
    }

    /* Every Form Group */
    #hotel_booking_room_hidden .hb-booking-room-form-group{
        width:100% !important;
        max-width:100% !important;
        flex:0 0 100% !important;
        margin:0 !important;
        padding:0 !important;
        box-sizing:border-box !important;
    }

    /* Field Wrapper */
    #hotel_booking_room_hidden .hb-booking-room-form-field,
    #hotel_booking_room_hidden .hb-form-field-input{
        width:100% !important;
        max-width:100% !important;
        display:block !important;
        box-sizing:border-box !important;
    }

    /* Inputs */
    #hotel_booking_room_hidden input,
    #hotel_booking_room_hidden select{
        width:100% !important;
        max-width:100% !important;
        box-sizing:border-box !important;
    }

}
@media (max-width:767px){

#hotel_booking_room_hidden .hb-booking-room-form-group.hb-room-price{
    width:100% !important;
    max-width:100% !important;

    padding-left:15px !important;
	padding-right: 15px !important;

    box-sizing:border-box !important;
}

#hotel_booking_room_hidden .hb-room-price{
    padding-left:15px !important;
	padding-right: 15px !important;

    border-radius:12px;
}

}
/*====================================================
                END
=====================================================*/















/*====================================================
            PROPERTY HIGHLIGHTS
=====================================================*/

.property-highlights{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:22px 0;
    margin:30px 0 40px;
    border-top:1px solid #e8edf3;
    border-bottom:1px solid #e8edf3;
    flex-wrap:wrap;
}

.property-highlights .highlight-item{
    display:flex;
    align-items:center;
    gap:10px;
    color:#031b42;
    font-size:15px;
    font-weight:600;
    transition:.3s ease;
    cursor:default;
}

.property-highlights .highlight-item i{
    width:38px;
    height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#eef3fb;
    color:#031b42;
    border-radius:50%;
    font-size:16px;
    transition:.3s ease;
    flex-shrink:0;
}

.property-highlights .highlight-item span{
    color:#031b42;
    white-space:nowrap;
}

.property-highlights .highlight-item:hover i{
    background:#031b42;
    color:#fff;
    transform:translateY(-2px);
}

.property-highlights .highlight-item:hover span{
    color:#031b42;
}

/*====================================================
                TABLET
=====================================================*/

@media (max-width:991px){

.property-highlights{
    justify-content:center;
    gap:18px;
}

.property-highlights .highlight-item{
    min-width:180px;
}

}

/*====================================================
                MOBILE
=====================================================*/

@media (max-width:767px){

.property-highlights{
    justify-content:flex-start;
    gap:18px;
}

.property-highlights .highlight-item{
    width:100%;
}

.property-highlights .highlight-item i{
    width:36px;
    height:36px;
    font-size:15px;
}

}













/*====================================================
            PREMIUM PROPERTY LOCATION CARD
====================================================*/

.custom-room-map{
    margin-top:50px;
    background:#ffffff;
    border:1px solid #e6edf5;
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 12px 35px rgba(3,27,66,.08);
    transition:all .35s ease;
}

.custom-room-map:hover{
    transform:translateY(-3px);
    box-shadow:0 20px 45px rgba(3,27,66,.14);
}

/*==============================
            HEADER
==============================*/

.custom-room-map-heading{
    background:#031b42;
    padding:10px 20px;
    border-bottom:1px solid rgba(255,255,255,.08);
}

.custom-room-map-heading p{
    margin:0;
    display:flex;
    align-items:center;
    gap:12px;
    color:#fff;
    font-size:20px;
    font-weight:700;
    letter-spacing:.2px;
    line-height:1;
}

.custom-room-map-heading p::before{
    content:"\f3c5";
    font-family:"Font Awesome 6 Free";
    font-weight:900;
    font-size:18px;
    width:22px;
    text-align:center;
    color:#fff;
}

/*==============================
            MAP
==============================*/

.custom-room-map iframe{
    display:block;
    width:100%;
    height:260px;
    border:none !important;
    filter:saturate(.95) contrast(1.02);
}

/*==============================
        RESPONSIVE
==============================*/

@media (max-width:768px){

    .custom-room-map{
        margin-top:55px;
        border-radius:16px;
    }

    .custom-room-map-heading{
        padding:20px;
    }

    .custom-room-map-heading p{
        font-size:18px;
    }

    .custom-room-map iframe{
        height:220px;
    }

}

.hotel-booking-search-filter,
.hotel-booking-search-filter-inner{
    display:none !important;
}

.hotel-booking-search-results,
.hotel-booking-archive,
.hotel-booking-content{
    width:100% !important;
    max-width:100% !important;
    flex:0 0 100% !important;
}
/* Hide Sort By & Results Count */
.sort-by-wrapper{
    display: none !important;
}

















/*=========================================
        OTHER PROPERTIES HEADING
=========================================*/

h3.title{
    position: relative;
    margin: 70px 0 35px;
    padding-bottom: 14px;
    font-size: 32px;
    font-weight: 700;
    color: #031b42;
    line-height: 1.2;
    letter-spacing: -0.5px;
    text-align: center;
}

h3.title::after{
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 75px;
    height: 4px;
    border-radius: 50px;
    background: #031b42;
}

h3.title::before{
    content: "";
    position: absolute;
    left: 50%;
    bottom: 1px;
    transform: translateX(-50%);
    width: 140px;
    height: 1px;
    background: #d8e2f1;
}

@media (max-width:767px){

    h3.title{
        font-size:26px;
        margin:50px 0 28px;
    }

    h3.title::before{
        width:100px;
    }

    h3.title::after{
        width:55px;
    }

}








