@charset "UTF-8";
/*!
Theme Name: Luviana Child
Theme URI: https://motopress.com/products/luviana
Author: MotoPress
Author URI: https://motopress.com
Description: Luviana is a Gutenberg theme perfectly fitting for hotels, rental accommodations and services, boarding houses or hostels. The theme comprises an integrated online booking plugin that allows conducting reservations of your rental properties and receiving online payments.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: luviana
Template: luviana
*/


/* Import Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display&family=Jost:wght@400;500;700&family=Mrs+Saint+Delafield&display=swap');



h1, h2, h3, h4, h5, h6 {
	font-family: "DM Serif Display";
	color: #b47d4c;
}

h2 {
	font-size: 31px;
	font-size: 35px;
}

body, input, select, optgroup, textarea {
/*	font-family: "Jost";*/
	font-weight: normal;
	font-size: 13px;
	font-family: "Jost";
}

button{
	font-family: "DM Serif Display";
}


.logged-out.wp-block-loginout a{
	color: white;
	background: #b47d4c;
	padding: 10px 15px;
	top: 18px;
}


.header-social-menu{
	opacity: 0;
}

.mphb-view-details-button{
	font-style: italic;
}

.mphb-room-type-images .flex-viewport {
    max-height: 410px;
}



.wp-block-button__link, .wp-block-file .wp-block-file__button{
	border-radius: 0px !important;
}



.wp-block-getwid-advanced-heading.is-style-style-1 .wp-block-getwid-advanced-heading__content {
	position: relative;
	padding-top: 1.25rem;
	line-height: 45px;
}

.site-footer {
	border-top: 0px solid #ededed;
}


/* Currency symbol styling */
.currency-symbol,
.woocommerce-Price-currencySymbol,
.mphb-currency {
	font-family: "Open Sans", sans-serif !important; /* Use your theme's sans-serif font */
	font-style: normal !important;
}


.mphb_sc_search_results-wrapper  .mphb-recommendation-details-list span[class*="currency"]::after {
	top: -20px;
	left: 0px;
	font-size: 17px !important;
}

.mphb_sc_search_results-wrapper  .mphb-recommendation-total-value span[class*="currency"]::after {
	top: -25px;
	left: 5px;
	font-size: 20px !important;
}


.entry-header-image{
	display: none;
}

.page-template-template-page-with-sidebar .site-content {
	padding-top: 5.625rem;
	padding-bottom: 5.625rem;
	padding-left: 30px;
	padding-right: 30px;
}
.activites-into  {
	margin-top: 0;
	text-align: center;
	padding: 10px 8px 40px 8px;
}

.site-branding .logo-wrapper + .site-title-wrapper {
	margin-left: 1.25rem;
	display: none;
}

.page-template-template-page-with-sidebar .entry-header-background {

	margin: 0px -40px;
}

.single-mphb_room_type .mphb_room_type span[class*="currency"]::after {
	top: 5px;
	left: 5px;
	font-size: 20px !important;
}

.single-mphb_room_type .mphb_room_type .mphb-regular-price .mphb-price {
	margin-right: 50px;
}

.single-mphb_room_type p:nth-child(1) {
	margin: 0 0 1.5em;
	text-align: center;
	font-size: 13px;
	padding: 15px 30px;
}

.single-mphb_room_type .mphb-single-room-type-post-thumbnail{
	position: relative;
	
}

.single-mphb_room_type .site-content .post-thumbnail.mphb-single-room-type-post-thumbnail{
	margin: 0px -30px;
	margin-bottom: 40px;
}

.single-mphb_room_type .mphb-single-room-type-post-thumbnail:after{
	content: '';
	position: absolute;
	height: 100%;
	width: 100%;
	background: linear-gradient(0deg, #00000085, transparent);
	left: 0px;
	bottom: 0px;
	left: 0px;
}





.single-mphb_room_type .site-content h1.mphb-room-type-title{
	position: absolute;
	top: 280px;
	z-index: 1;
	width: 100%;
	text-align: center;
	color: white;
}

.single-mphb_room_type .site-content h1.mphb-room-type-title:after {
	content: '';
	position: absolute;
	height: 1px;
	width: 50%;
	background: linear-gradient(90deg, transparent, #ffffff, transparent);
	left: 0px;
	bottom: 0px;
	left: 25%;
}




/* Price formatting */
.mphb-price,
.woocommerce-Price-amount {
	direction: ltr !important;
	position: relative;
}

body.absolute-menu .site-header {
	position: relative;
	background: #b47d4c;
}

.site-branding .custom-logo {
	max-width: 230px;
}

body.absolute-menu .menu-toggle .line {
	background: #b38c70;
	height: 2px;
}

/* Currency symbol styling */
.mphb-currency {
	font-size: 0 !important;
	visibility: hidden;
	position: relative;
	display: inline-block;
	font-family: "Open Sans", sans-serif !important;
	font-style: normal !important;
	margin-left: 4px;
}

.mphb-currency::after {
	content: 'DH';
	visibility: visible;
	position: absolute;
	top: 0;
	left: 0;
	font-size: 16px !important;
	display: block;
}

/* Price formatting */
.mphb-price {
	direction: ltr !important;
	white-space: nowrap;
}

.mphb_sc_search_results-wrapper .mphb-recommendation .mphb-recommendation-total {
	/* float: right; */
	text-align: center;
	margin-right: 40px;
	float: none !important;
	font-size: 25px !important;
	font-weight: 500 !important;

}
.entry-content .mphb_sc_search_results-wrapper .mphb-recommendation .mphb-recommendation-reserve-button {
	float: none !important;
	margin-left: auto;
	margin-right: auto;
	display: block;
}

/* Additional fix for any other currency display */
span[class*="currency"] {
	font-size: 0 !important;
	visibility: hidden;
	position: relative;
}

span[class*="currency"]::after {
	content: 'DH';
	visibility: visible;
	position: absolute;
	top: 15px;
	left: 0px;
	font-size: 20px !important;
	display: block;
	font-family: "Open Sans", sans-serif !important;
}


.mphb_sc_checkout-wrapper  span[class*="currency"]::after {
	top: -5px;
	font-size: 16px !important;
}

.activity-booking-details .mpa-price{
	position: relative;
}


.mpa_service.type-mpa_service:nth-child(3) .loop-service-content,
.mpa_service.type-mpa_service:nth-child(6) .loop-service-content{ 
	margin-left: -30px;
	margin-right: -30px;
}



.mpa_service.type-mpa_service:nth-child(3) .loop-service-footer .mpa-post-title,
.mpa_service.type-mpa_service:nth-child(6) .loop-service-footer .mpa-post-title
 {
	width: 100vw;
	top: 0px;
	right: 0px;
	left: 0px;
	margin-left: -10px;
}

span[class*="currency"]::after {
	content: 'MAD';
	visibility: visible;
	position: absolute;
	top: -18px;
	left: auto;
	font-size: 15px !important;
	display: block;
	font-family: "Open Sans", sans-serif !important;
	right: -40px;
}

.mphb_sc_checkout-wrapper .mphb-login-form-wrap, .mphb_sc_checkout-wrapper .mphb-checkout-section {
	padding: 1.125rem 20px !important;
}

.entry-content .mphb_sc_search_results-wrapper .mphb-search-recommendations-wrapper{
	padding: 20px !important;
}

.entry-content .mphb_sc_search_results-wrapper .mphb-recommendation .mphb-recommendation-details-list {
	margin-right: 30px;
}

.mphb_sc_checkout-wrapper .mphb-login-form-wrap, .mphb_sc_checkout-wrapper .mphb-checkout-section td {
	border: 0px solid #ededed;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type {
	padding: 1.5rem !important;
}

.mphb_sc_search_results-wrapper  span[class*="currency"]::after {
	top: 10px;
}

.activity-booking-details span[class*="currency"]::after {
	content: 'DH';
	visibility: visible;
	position: absolute;
	bottom: 60px;
	left: 5px;
	font-size: 16px !important;
	display: block;
	font-family: "Open Sans", sans-serif !important;
	top: -20px;
}

.woocommerce ul.order_details li {
	width: 100%;
}




.site-content {
	padding-top: 5.625rem;
	padding-bottom: 5.625rem;
	padding-left: 15px;
	padding-right: 15px;
}

.mphb_room_type  span[class*="currency"]::after {
	content: 'MAD';
	visibility: visible;
	position: absolute;
	top: 15px;
	left: auto;
	font-size: 13px !important;
	font-family: "Open Sans", sans-serif !important;
	right: -40px;
}


.mphb_room_type .mphb-regular-price .mphb-price-period {
	padding-right: 0px;
}

.woocommerce-checkout #payment {
	background: rgb(255 255 255);
	border-radius: 5px;
	box-shadow: 0px 1px 5px 0px #c4c4c4;
	margin-bottom: 45px;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt {
	background-color: #b47d4c;
	color: #fff;
	-webkit-font-smoothing: antialiased;
}

#add_payment_method #payment div.payment_box, .woocommerce-cart #payment div.payment_box, .woocommerce-checkout #payment div.payment_box {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	padding: 1em;
	margin: 1em 0;
	font-size: .92em;
	border-radius: 2px;
	line-height: 1.5;
	background-color: #f8f8f8;
	color: #515151;
}

#add_payment_method #payment div.payment_box::before, .woocommerce-cart #payment div.payment_box::before, .woocommerce-checkout #payment div.payment_box::before {
	content: "";
	display: block;
	border: 1em solid #f8f8f8;
	border-right-color: transparent;
	border-left-color: transparent;
	border-top-color: transparent;
	position: absolute;
	top: -.75em;
	left: 0;
	margin: -1em 0 0 2em;
}

 .woocommerce-privacy-policy-text p{
	font-size: 12px;
	margin-bottom: 15px;
}

.woocommerce-checkout-review-order  span[class*="currency"]::after {
	content: 'DH';
	visibility: visible;
	position: absolute;
	top: -18px;
	left: auto;
	font-size: 16px !important;
	display: block;
	font-family: "Open Sans", sans-serif !important;
	right: -70px;
}

.mphb_sc_checkout-wrapper .mphb_sc_checkout-submit-wrapper {
	text-align: center;
}

.mphb_sc_checkout-wrapper .mphb-total-price {
	text-align: center;
}

.mphb-errors-wrapper {
	text-align: center;
}

.mphb_sc_checkout-wrapper .mphb-login-form-wrap, .mphb_sc_checkout-wrapper .mphb-checkout-section {
	margin-top: 4.375rem;
	background: #fff;
	-webkit-box-shadow: 0 2px 15px 0 rgba(37, 46, 89, 0.1) !important;
	box-shadow: 0 2px 15px 0 rgba(37, 46, 89, 0.1) !important;
	padding: 3.125rem 1.5rem;
}



.mphb-regular-price .mphb-price, .mphb-widget-room-type-price .mphb-price {
	font-weight: 400;
	margin-right: 40px;
}


.luviana-front-page-header .child-pages-list .child-page-thumbnail video {
	object-fit: contain;
height: auto;
width: 115vw;
margin-bottom: 0px;
margin-top: 0px;
}

.luviana-front-page-header .child-pages-list .child-page {
	min-height: 100%;
}


.luviana-front-page-header .child-pages-list .child-page-thumbnail {
	position: relative;
}

.luviana-front-page-header .child-pages-list .child-page-content-wrapper {
	padding: 0px;
}

.front-page-widget-area {	
	margin: 0px;
	background: #FFF;
	box-shadow: 0px 4px 5px 0px rgba(6, 28, 52, 0.23);
}

/* Date and Guest Popup Styles */


.luviana-front-page-header {
	
	background: #ffffff;
	padding-bottom: 120px;
}

.front-page-widget-area:before {

	/*background: -webkit-gradient(linear, left bottom, left top, from(#286d8c), to(rgba(25, 30, 35, 0)));*/
	background: rgb(248 244 238);
	opacity: 1;
}

.mphb-reserve-btn-wrapper .mphb-reserve-btn {
	display: inline-block;
	background: #c1b086;
	color: #fff;
	border: 1px solid;
	border-color: #c1b086;
	border-radius: 0px;
	font-size: 12px;
	font-size: 0.75rem;
	text-transform: uppercase;
	line-height: 1.2;
	padding: 0.5835em 1.333em;
	font-weight: 600;
	-webkit-transition: all .3sease;
	transition: all .3sease;
	text-align: center;
	letter-spacing: 1px;
	margin-left: auto;
	margin-right: auto;
	display: block;
	margin-top: 40px;
}

.site-content {
	padding-bottom: 0rem;
}

.footer-widgets {
	margin-top: -2px;
}


.post-thumbnail img {
	height: 300px;
	max-width: 100%;
}

.mphb_room_type.type-mphb_room_type{
	position: relative;
}

.single-mphb_room_type .site-content h1.mphb-room-type-title {
	position: absolute;
	top: 200px;
	z-index: 1;
	width: 100%;
	text-align: center;
	color: white;
}

.single-mphb_room_type .site-content .mphb-regular-price {
	margin: 0;
	font-size: 30px;
	font-size: 1.875rem;
	color: #222222;
	position: absolute;
	top: 240px;
	text-align: center;
	width: 100%;
	color: white;
}


.single-mphb_room_type .site-content   .mphb-price-period{
	color: white;
}



.front-page-widget-area .widget_mphb_search_availability_widget .mphb-search-widget-default-fields, .front-page-widget-area .widget_mphb_search_availability_widget .mphb-search-widget-custom-fields {
	margin: 0 -9px;
	justify-content: space-evenly;
}

.front-page-widget-area {

	margin-top: -135px;
	color: #b47d4c;
}

.luviana-front-page-header .front-page-slider-video .child-page-thumbnail:after{
	opacity: 0;
}


.front-page-widget-area .widget_mphb_search_availability_widget .mphb_widget_search-form {
	padding: 1rem !important;
}

.front-page-widget-area .widget_mphb_search_availability_widget .mphb_widget_search-submit-button-wrapper {
	margin: 0px !important;
}

.front-page-widget-area .widget_mphb_search_availability_widget .mphb_widget_search-submit-button-wrapper .button{

	padding: 15px;

}

 .front-page-widget-area .guests-toggle,  .front-page-widget-area  .dates-toggle{
	padding: 8px 12px;
	border: 0px solid #ddd;
	border-bottom: 1px solid #aaaaaa;
}

.front-page-widget-area br{
	display: none;
}

.luviana-front-page-header .fp-slider-video-controls {
	max-width: calc(1170px + 100px);
	position: absolute;
	left: 0;
	right: -40px;
	margin: auto;
	bottom: 2rem;
	padding: 0 50px;
	z-index: 10;
	text-align: right;
}



/* Date and Guest Popup Styles */
.mphb_widget_search-dates-popup,
.mphb_widget_search-guests-popup {
	position: inherit;
	margin-bottom: 0px;
}

.dates-toggle,
.guests-toggle {
	cursor: pointer;
	padding: 12px 20px;
	border: 1px solid #e4e4e4;
	border-radius: 4px;
	display: flex;
	width: 100%;
	background: transparent;
	align-items: center;
	justify-content: space-between;
	color: #666;
	font-size: 14px;
	position: relative;
	transition: all 0.3s ease;
}

.dates-toggle i,
.guests-toggle i {
	color: #c1b086;
	font-size: 12px;
	transition: transform 0.3s ease;
	margin-left: 10px;
}

.dates-toggle.active i,
.guests-toggle.active i {
	transform: rotate(180deg);
}

.dates-toggle.active,
.guests-toggle.active {
	border-color: #c1b086;
}

.dates-popup,
.guests-popup {
	display: none;
	position: absolute;
	top: calc(100% + -80px);
	left: 0;
	right: 0;
	background: white;
	border: 1px solid #e4e4e4;
	border-radius: 4px;
	padding: 20px;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
	z-index: 1000;
	width: 80vw;
	left: 5vw;
}

.dates-popup.active,
.guests-popup.active {
	display: block;
}

.dates-popup label,
.guests-popup label {
	display: block;
	margin-bottom: 8px;
	color: #222;
	font-weight: 500;
}

.dates-popup input,
.guests-popup select {
	width: 100%;
	padding: 10px 15px;
	border: 1px solid #e4e4e4;
	border-radius: 4px;
	background: #fff;
	color: #666;
	margin-bottom: 15px;
}

.dates-popup input:focus,
.guests-popup select:focus {
	border-color: #c1b086;
	outline: none;
}

.mphb_widget_search-check-in-date,
.mphb_widget_search-check-out-date {
	margin-bottom: 15px;
}

.mphb_widget_search-check-out-date {
	margin-bottom: 0;
}

.mphb_widget_search-dates-wrapper{
	margin:0px;
}

/*End of Date and Guest Popup Styles */


body.page-template-template-front-page.absolute-menu .site-content {
	padding-top: 0;
	padding-bottom: 0;
	overflow: hidden;
}

.play-video-button{
	margin-bottom: 0;
	text-align: center;
	position: relative;
	width: 200px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 40px;
}

.play-video-button:before {
	position: absolute;
	width: 40px;
	height: 40px;
	content: "\f144";
	font-family: "Font Awesome 5 Free";
	left: 5px;
	font-size: 24px;
	bottom: -12px;
	color: #b37c4b;
}

.wp-block-getwid-advanced-heading.is-style-style-1 .wp-block-getwid-advanced-heading__content:before{
	position: relative;
}

.wp-block-button{
	display: flex;
	flex-direction: row;
	justify-content: center;
}




/* Room Types Slider Styles - Mobile First */

h2.card-title {
	font-size: 35px;
line-height: 40px;
	color: white;
	position: absolute;
	width: 100%;
	background: linear-gradient(179deg, #4c3521, transparent);
	top: 0px;
	padding-bottom: 200px;
	padding-top: 20px;

}

h2.card-title:before {
	content: '';
	position: absolute;
	height: 1px;
	width: 50%;
	background: linear-gradient(90deg, transparent, #ffffff, transparent);
	left: 0px;
	top: 110px;
	left: 25%;
}

.mphb_sc_checkout-wrapper .mphb-coupon-code-wrapper .mphb-apply-coupon-code-button, .mphb_sc_checkout-wrapper .mphb_sc_checkout-submit-wrapper .button, .content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .mphb-view-details-button:hover {
	background: #b47d4c !important;
	border-color: #ffffff;
}


.home  .mphb-room-types-wrapper {
	margin: 0 -10px;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease;
}

.home  .mphb-room-types-wrapper.slick-initialized {
	opacity: 1;
	visibility: visible;
}

.home  .mphb-room-types-wrapper .mphb-room-type {
	padding: 0 10px;
}

/* Slider Navigation */
.home  .slick-arrow {
	position: absolute;
	top: calc(50% + -15px);
	transform: translateY(-50%);
	z-index: 1;
	width: 40px;
	height: 40px;
	/* background: #fff; */
	border: none;
	border-radius: 50%;
	/* box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); */
	cursor: pointer;
	transition: all 0.3sease;
	display: flex !important
;
	align-items: center;
	justify-content: center;
}

.home  .slick-arrow:hover {
	background: #c1b086;
	color: #fff;
}

.home .slick-prev {
	left: -8px;
}

.home  .slick-next {
	right: -8px;
}

.restaurant-page .section-slide  .slick-next,
.restaurant-page .section-slide .slick-prev
	{
		color: transparent !important;
}

.home  .slick-arrow i {
	font-size: 20px;
margin-left: -15px;
display: none;
}
/* Slider Dots */
.home  .slick-dots {
	position: relative;
	bottom: 0;
	padding: 15px 0 0;
	margin: 0;
	list-style: none;
	text-align: center;
}


.section-reunions-title .wp-block-getwid-section__inner-content{
	display: flex;
}

.home  .slick-next:before, 
.home  .slick-prev:before {
	font-family: slick;
	font-size: 30px;
	line-height: 1;
	opacity: .75;
	color: #b47d4c;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.home  .slick-dots li {
	display: inline-block;
	margin: 0 4px;
}

button, input[type="button"], input[type="reset"], input[type="submit"], .button, .more-link {
	display: inline-block;
	background: #c1b086;
	color: #fff;
	border: 1px solid;
	border-color: #c1b086;
	border-radius: 0px;
	font-size: 12px;
	font-size: 0.75rem;
	text-transform: capitalize;
	line-height: 1.2;
	padding: 10px 3.333em;
	font-weight: 600;
	-webkit-transition: all .3sease;
	transition: all .3sease;
	text-align: center;
	letter-spacing: 1px;
	font-weight: 100;
}


.home  .slick-dots button {
	display: block;
	width: 8px;
	height: 8px;
	padding: 0;
	border: none;
	border-radius: 50%;
	background-color: #e4e4e4;
	text-indent: -9999px;
	cursor: pointer;
	transition: all 0.3s ease;
}

.home .slick-dots li.slick-active button {
	background-color: #c1b086;
	transform: scale(1.2);
}


.home .mpa-services-list-shortcode .slick-next {
	right: -30px;
}

.home .mpa-services-list-shortcode .slick-prev {
	left: -30px;
}

/* Room Type Card Styles */
.home .mphb-room-type {
	background: #fff;
	border-radius: 4px;
	overflow: hidden;
	box-shadow: 0 2px 10px rgba(0,0,0,0.05);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	margin-bottom: 15px;
}



.home .mphb-room-type:hover {
	transform: translateY(-3px);
	box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

.home .mphb-room-type-images {
	position: relative;
	overflow: hidden;
	padding-top: 75%; /* 4:3 Aspect Ratio for mobile */
}

.home .mphb-room-type-images img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}

.home .mphb-room-type:hover .mphb-room-type-images img {
	transform: scale(1.05);
}

.home .mphb-room-type-content {
	padding: 15px;
}

.home .mphb-room-type-title {
	margin: 0 0 10px;
	font-size: 18px;
	color: #222;
	line-height: 1.3;
}

.home .mphb-room-type-facilities {
	margin: 10px 0;
	font-size: 13px;
	color: #666;
	line-height: 1.4;
	display: none;
}

.home .mphb-room-type-price {
	font-size: 16px;
	color: #c1b086;
	font-weight: 600;
}


.home .mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-inner-wrapper .mphb-loop-room-type-attributes {
	display: flex;
}

.home .mphb-loop-room-type-attributes li {
	margin-bottom: .5rem;
	padding-left: 1.5rem;
	position: relative;
	margin-right: 10px;
}

.home .mphb_sc_rooms-wrapper.is-style-style-3 .type-mphb_room_type .room-images-wrapper + .room-description-wrapper {
	padding: 15px !important;
	background: #f5ece547;
	margin-top: -15px;
}

.home .mphb-attribute-title.mphb-adults-title,
.home .mphb-attribute-title.mphb-size-title,
.home .mphb-attribute-title.mphb-categories-title{
	display: none;
}

.home  .mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-inner-wrapper .mphb-regular-price {
	position: absolute;
	top: -10px;
	right: -10px;
	max-width: 100px;
	line-height: 20px;
	text-align: right;
	border-radius: 0px;
}

.home span[class*="currency"]::after {
	content: 'DH';
	visibility: visible;
	position: absolute;
	top: 5px;
	left: 0px;
	font-size: 20px !important;
	display: block;
	font-family: "Open Sans", sans-serif !important;
}

.home .mphb_sc_rooms-wrapper.is-style-style-3 .type-mphb_room_type .mphb-room-type-title {
font-size: 18px;
font-size: 20px;
margin-bottom: .5em;
color: #b47d4c;
font-weight: 800;
max-width: calc(100% - 90px);
}

/* Homepage specific styles */
.home .mphb-room-types-wrapper{
	margin: 0 -20px;
	padding: 0 25px;
	min-height: 200px; /* Prevent layout shift */
}


.home .mpa-services-list-shortcode .mpa-posts-wrapper {
	margin:0px;
	padding: 0px;
}
/* Tablet Styles */
@media (min-width: 768px) {

.home 	.mphb-room-types-wrapper {
		margin: 0 -15px;
	}
	
.home 	.mphb-room-type {
		padding: 0 15px;
		margin-bottom: 20px;
	}
	
.home 	.mphb-room-types-wrapper .slick-arrow {
		width: 35px;
		height: 35px;
	}

.home .mphb_sc_rooms-wrapper .mphb-view-details-button {
		margin-top: 20px !important;
	}
		
.home 	.mphb-room-types-wrapper .slick-prev {
		left: -15px;
	}
	
.home 	.mphb-room-types-wrapper .slick-next {
		right: -15px;
	}
	
.home 	.mphb-room-type-images {
		padding-top: 66.67%; /* 3:2 Aspect Ratio for larger screens */
	}
	
.home 	.mphb-room-type-content {
		padding: 20px;
	}
	
.home 	.mphb-room-type-title {
		font-size: 20px;
		margin: 0 0 15px;
	}
	
.home 	.mphb-room-type-facilities {
		font-size: 14px;
		margin: 15px 0;
	}
	
.home 	.mphb-room-type-price {
		font-size: 18px;
	}
}

/* Desktop Styles */
@media (min-width: 1024px) {
	
	#back-to-top {
		right: 25px;
		bottom: 100px;
	}
	
	
	.home .entry-content{
		max-width: 960px;
		margin-left: auto;
		margin-right: auto;
	}
	
	.luviana-front-page-header .fp-slider-video-controls .pause {
		left: 40px !important;
		bottom: 70px;
	}
.home 	.mphb-room-types-wrapper .slick-arrow {
		width: 40px;
		height: 40px;
	}
	
.home 	.mphb-room-types-wrapper .slick-prev {
		left: -20px;
	}
	
.home 	.mphb-room-types-wrapper .slick-next {
		right: -20px;
	}
	
.home 	.mphb-room-types-wrapper .slick-arrow i {
		font-size: 14px;
	}
	
.home 	.mphb-room-type:hover {
		transform: translateY(-5px);
	}
}



/* ... rest of the existing slider styles with .home prefix ... */

/* Homepage specific styles */
.home .mphb-room-types-wrapper,
.home .mpa-services-list-shortcode  {
	margin: 0 -20px;
	padding: 0 20px;
	min-height: 200px; /* Prevent layout shift */
}

/* Ensure slides are visible before initialization */
.home .mphb-room-types-wrapper > * {
	opacity: 0;
	transition: opacity 0.3s ease;
}

.home .mphb-room-types-wrapper.slick-initialized {
	opacity: 1;
	visibility: visible;
}

.home .mphb-room-types-wrapper.slick-initialized > * {
	opacity: 1;
}

/* Make sure each slide has content */
.home .mphb-room-types-wrapper .mphb-room-type {
	display: none; /* Hide all rooms initially */
}

.home .mphb-room-types-wrapper .mphb-room-type:first-child {
	display: block; /* Show first room */
}

.home .mphb-room-types-wrapper.slick-initialized .mphb-room-type {
	display: block; /* Show all rooms once initialized */
		margin-top: 0;
		padding: 0 0px;
	margin-bottom: -7px;
	padding: 0px !important;

}

.home .mphb_sc_rooms-wrapper .mphb-view-details-button {
	border-color: #b47d4c;
	border-radius: 0rem;
	padding: 10px;
}

.home  .mphb-room-types-wrapper .slick-slide,
.home .mpa-services-list-shortcode .slick-slide{
	margin-bottom: 0px;
	box-shadow: 0px 0px 0px rgb(0 0 0);
/*	background: #f5ece5;*/
	padding: 0px;
	/* border: 1px solid #b47d4c; */
	/*box-shadow: 0px 0px 5px #b47d4c;*/
	margin: 5px;
}

.home  .mphb_sc_rooms-wrapper.is-style-style-3 .type-mphb_room_type .room-description-wrapper {
	background: #fff;
	z-index: 1;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.home .mphb-room-types-wrapper.slick-slider .slick-next:focus:before, 
.home .mphb-room-types-wrapper.slick-slider .slick-next:hover:before,
.home .mphb-room-types-wrapper.slick-slider .slick-prev:focus:before,
.home .mphb-room-types-wrapper.slick-slider .slick-prev:hover:before {
	opacity: 1;
}

.home  .mphb_sc_rooms-wrapper.is-style-style-3 .type-mphb_room_type .room-description-wrapper .room-booking-details {
	width: 100%;
	padding: 0;
	margin: auto 0 0;
	border: 0;
	display: flex
;
	flex-flow: row;
	align-items: center;
}

.home .mphb_sc_rooms-wrapper.is-style-style-3 .type-mphb_room_type .room-description-wrapper .room-booking-details {
	width: 100%;
	padding: 0;
	margin: auto 0 0;
	border: 0;
	display: flex
;
	flex-flow: row;
	align-items: center;
	/* flex-wrap: nowrap; */
	/* align-content: space-between; */
	/* flex-wrap: nowrap; */
	width: 100%;
	/* align-content: space-between; */
	flex-wrap: wrap;
	justify-content: space-between;
}

.home .rooms-title {
	position: relative;
	padding-top: 15px;
	/* margin-bottom: -110px !important; */
	z-index: 1;
	background: linear-gradient(181deg, #b47d4c, #b47d4c00 70%, transparent);
	margin: 10px;
	height: 200px;
	position: absolute;
	width: calc(100% - 20px);
	top: -5px;
}

.home .rooms-title h2 {
	color: white;
}

.home .mphb_sc_rooms-wrapper.is-style-style-3 .type-mphb_room_type .mphb-view-details-button-wrapper,
.home  .mphb_sc_rooms-wrapper.is-style-style-3 .type-mphb_room_type .mphb-to-book-btn-wrapper {
margin:	0px;
}

.home .mpa-services-list-shortcode .mpa-posts-wrapper .book-now{
	display: none
}


.home .mpa-services-list-shortcode .mpa-posts-loop .mpa-loop-post-wrapper>*:last-child {
	margin-bottom: 0;
	padding: 30px;
	text-align: center;
	background: rgb(248 244 238);
	height: 330px;
}

.post-thumbnail img {
	-webkit-box-shadow: none;
	box-shadow: none;
}

.home .mpa-services-list-shortcode .mpa-posts-loop p {
	font-size: 12px;
	margin-bottom: 20px;
	line-height: 24px
}

.home .mpa-services-list-shortcode .mpa-posts-loop h2 a {
	color: #b47d4c;
	text-decoration: none;
	-webkit-transition: all .3sease;
	transition: all .3sease;
	font-family: "Mrs Saint Delafield";
}

.home .mpa-services-list-shortcode .mpa-posts-loop .activity-booking-details a {
	border-color: #b47d4c;
	border-radius: 0rem;
	padding: 10px;
	background: transparent;
	color: #66462a;
}

.footer-widgets-wrapper .widget-area:nth-child(2) .wp-block-heading {
	font-family: "Jost";
	margin-bottom: 20px;
	color: black;
	font-size: 24px;
	margin-bottom: 0px;
}


.footer-widgets-wrapper .widget-area:nth-child(2) {
	margin-bottom: 50px;
}



.footer-widgets-wrapper .wp-block-heading {
	font-family: "Mrs Saint Delafield";
	text-align: center;
	margin-bottom: 0px;
}

.footer-widgets-wrapper .widget + .widget {
	margin-top: 10px;
	display: flex
;
	justify-content: center;
}
.footer-widgets-wrapper .wp-block-social-links {
	justify-content: center;
}

.footer-widgets-wrapper .widget-area {
	text-align: center;
}

.footer-widgets-wrapper .widget-area p {
	margin: 0 0 .5em;
	font-size: 10px;
}

.footer-widgets-wrapper {
	padding-bottom: 0px !important;
	
}

.site-info-wrapper .site-info {
	font-size: 8px;
	text-align: center;
	width: 100%;
}

.site-info-wrapper .wrapper:not(:empty) {
padding: 0.875rem 20px;
}

.footer-widgets-wrapper .widget-area {

	margin-bottom: 1.125rem;
}

.footer-widgets-wrapper .widget-area:nth-child(1) img {
	height: auto;
	max-width: 60%;
}

/* Rooms&Suites Page*/

.mphb-room-type .button{
	background: #b47d4c;
	color: #fff;
	border-color: #b47d4c;
	border-radius: 0px;
	font-size: 12px;
	font-size: 0.75rem;
	text-transform: capitalize;
	line-height: 1.2;
	padding: 10px 15px;
	font-weight: 600;
	-webkit-transition: all .3sease;
	transition: all .3sease;
	text-align: center;
	letter-spacing: 1px;
}

.mphb_sc_rooms-wrapper .mphb-view-details-button:hover {
	background: #b47d4c !important;
}

.mphb_sc_search_results-wrapper .mphb-view-details-button-wrapper, .mphb_sc_search_results-wrapper .mphb-to-book-btn-wrapper, .mphb_sc_rooms-wrapper .mphb-view-details-button-wrapper, .mphb_sc_rooms-wrapper .mphb-to-book-btn-wrapper, .mphb_sc_room-wrapper .mphb-view-details-button-wrapper, .mphb_sc_room-wrapper .mphb-to-book-btn-wrapper {
	display: inline-block;
	margin-right: 0rem !important;
	margin-top: 1.25rem;
	vertical-align: top;
	margin-bottom: 0;
}

.mphb-regular-price .mphb-price-period, .mphb-widget-room-type-price .mphb-price-period {
	color: #5f6060;
font-size: 35% !important;
vertical-align: middle;
text-decoration: none;
border: 0;
position: relative;
padding-right: 10px;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper {
	width: 100%;
	padding: 0px !important;
	margin-bottom: 15px !important;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-wrapper {
	width: 100%;
	padding: 0px;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-categories{
	display: none;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper {
	width: 100%;
	padding: 0px;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-wrapper {
	width: 100%;
	padding: 0px !important
}


.mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-inner-wrapper {

	position: relative;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-inner-wrapper .mphb-regular-price {
	position: absolute;
	top: 0px;
	right: 0px;
	max-width: 100px;
	line-height: 10px;
	text-align: right;
	border-radius: 0px;
}


body.page-has-post-thumbnail .entry-header-background {
	max-width: none;
	background: #252e59;
	position: relative;
	z-index: -1;
	top: 0;
	bottom: 0;
	left: 0px;
	right: 0px;
	margin: -20px;
	margin-top: 0px;
	margin-bottom: 20px;
}

body.page-has-post-thumbnail .entry-header-wrapper .entry-title {
	color: #b47d4c;
}

body.page-has-post-thumbnail .entry-header-wrapper .entry-summary {
	color: initial;
	padding-left: 30px;
	font-size: 11px;
	line-height: 25px;
	padding-right: 30px;
}
body.page-has-post-thumbnail .entry-header-wrapper {
color: #fff;
padding: 0rem;
min-height: fit-content;
	margin-bottom: 40px;
}

.button:active, .button:focus, .button:hover, .wp-block-button__link:hover, .wp-block-file .wp-block-file__button:hover, .wp-block-button.is-style-outline .wp-block-button__link:hover {
	border-color: #ffffff;
	background: #b47d4c33;
	color: #b47d4c;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .entry-title {
max-width: calc(100% - 100px);
}
.mphb_sc_rooms-wrapper .type-mphb_room_type {
	-webkit-box-shadow: none !important;
	box-shadow: none !important;
	padding: 20px !important;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-facilities{
	display: none;
}
.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper {
	width: 100%;
	padding: 0px;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-inner-wrapper .mphb-loop-room-type-attributes {
	font-size: 12px !important;
	line-height: 12px;
	margin-top: 15px;
	padding-left: 10px;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .room-details {
	width: 100%;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-attribute-title{
	display: none;
	
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .room-booking-details {
	width: 100%;
	display: flex
;
	justify-content: space-evenly;
}

.mphb_sc_rooms-wrapper ul.mphb-loop-room-type-attributes{
	display: flex;
	flex-wrap: wrap;
}



.mphb-loop-room-type-attributes li, .mphb-single-room-type-attributes li, .mphb-widget-room-type-attributes li {
	margin-bottom: 10px !important;
	padding-left: 10px !important;
	position: relative;
	padding-right: 0px;
	margin-right: 20px;
}

.mphb-room-types-wrapper .mphb-regular-price, .mphb-widget-room-type-price {
	margin: 0;
	font-size: 30px;
	font-size: 20px;
	color: #222222;
}

.mphb-room-types-wrapper  .mphb_room_type span[class*="currency"]::after {
    content: 'MAD';
    visibility: visible;
    position: absolute;
    top: 14px;
    left: auto;
    font-size: 13px !important;
    font-family: "Open Sans", sans-serif !important;
    right: -45px;
}

.mphb_sc_search_results-wrapper .mphb-room-type-title, .mphb_sc_rooms-wrapper .mphb-room-type-title, .mphb_sc_room-wrapper .mphb-room-type-title {
	text-align: left;
	color: #b47d4c !important;
	text-decoration: none;
	font-size: 25px;
}

.mphb-loop-room-type-attributes li:before{
	background-size: contain;
	width: 15px !important;
	height: 15px !important;
	content: "" !important;
}


li.mphb-room-type-total-capacity:before{
	background-image: url("images/guest.svg");
}


li.mphb-room-type-view:before{
	background-image: url("images/view.svg");
}





li.mphb-room-type-bed-type:before{
	background-image: url("images/bed.svg");
}

li.mphb-room-type-size:before{
	background-image: url("images/area.svg");
}


li span.bed-double-simple{
	padding-left: 20px;
	position: relative;
}

li span.bed-double-simple:before{
	position: absolute;
	left: 2px;
	top: -6px;
	content: "";
	background-size: contain;
	width: 28px !important;
	height: 28px !important;
	content: "" !important;
	background-image: url(images/twin-beds.svg);
}

li span.bed-one-simple:before{
	position: absolute;
	left: 15px;
	top: -5px;
	content: "";
	background-size: contain;
	width: 20px !important;
	height: 20px !important;
	content: "" !important;
	background-image: url(images/one-bed.svg);
}

/* The single room type gallery is a plain CSS grid + lightbox now
   (see luviana-child/mphb-customizations.php and mphb-custom.css) —
   no Slick carousel, so no visibility:hidden-until-.slick-initialized
   gate is needed here. That gate used to permanently hide the gallery
   once the Slick init script was removed. */
.mphb-room-type-gallery-wrapper.mphb-single-room-type-gallery-wrapper {
	margin: 0 0 40px;
}


.slick-next:before{
	background-image: url(images/arrow-next.svg);
	width: 30px !important;
	height: 30px !important;
	background-size: contain;
	display: block;
	content: "";
	color: transparent;

}

.slick-prev:before{
	background-image: url(images/arrow-back.svg);
	width: 30px !important;
	height: 30px !important;
	background-size: contain;
	display: block;
	content: "";
	color: transparent;

}

.slick-slide .gallery-item {
	padding: 0 0px !important;
	margin: 0em 0 !important;
}

.slick-prev {
	left: -30px;
}

.slick-next {
	right: -20px;
}



.mphb-regular-price strong:first-child, .mphb-widget-room-type-price strong:first-child {
	display: none !important;
}


	

.mphb-loop-room-type-attributes li:before, .mphb-single-room-type-attributes li:before, .mphb-widget-room-type-attributes li:before {
	left: -10px !important;
	top: -3px !important;
	
}

.mphb-loop-room-type-attributes li:before, .mphb-single-room-type-attributes li:before, .mphb-widget-room-type-attributes li:before {
	left: -10px !important;
	top: 0px !important;	
}

 .mphb_sc_search_results-wrapper .mphb_room_type .mphb-loop-room-type-attributes li:before,  .mphb_sc_search_results-wrapper .mphb_room_type .mphb-single-room-type-attributes li:before, .mphb_sc_search_results-wrapper .mphb_room_type .mphb-widget-room-type-attributes li:before {
	top: 5px !important;	
}


li.mphb-room-type-view:before {
	background-image: url(images/view.svg);
	width: 20px !important;
	height: 20px !important;
	left: -12px !important;
	top: -2px !important;
}


.mphb_sc_rooms-wrapper ul.mphb-loop-room-type-attributes {
	display: flex
;
	flex-wrap: wrap;
	margin-bottom: 0px;
	justify-content: flex-start;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-wrapper {
	width: 100%;
	padding: 0px;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .room-booking-details strong{
	display: none;
}


/* Lazy Video Styling */
.wp-block-video {
	position: relative;
	min-height: 100px; /* Placeholder height until video loads */
	background-color: #f0f0f0; /* Light gray placeholder */
}

.wp-block-video::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 50px;
	height: 50px;
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"><path fill="none" d="M0 0h24v24H0z"/><path d="M8 5v14l11-7z" fill="rgba(0,0,0,0.5)"/></svg>');
	background-size: contain;
	background-repeat: no-repeat;
	opacity: 0.7;
	pointer-events: none;
}

.lazy-video {
	opacity: 0;
	transition: opacity 0.3s;
}

.lazy-video[src] {
	opacity: 1;
}


/* Bar Archive Styles */
.bars-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap: 2rem;
	padding: 2rem 0;
}

.bar-entry {
	background: #fff;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0 2px 4px rgba(0,0,0,0.1);
	transition: transform 0.3s ease;
}

.bar-entry:hover {
	transform: translateY(-5px);
}

.bar-thumbnail img {
	width: 100%;
	height: 200px;
	object-fit: cover;
}

.bar-entry .entry-header {
	padding: 1rem;
}

.bar-entry .entry-title {
	margin: 0;
	font-size: 1.5rem;
}

.bar-entry .entry-summary {
	padding: 0 1rem 1rem;
}

.bar-thumbnail img {
	width: 100%;
	height: 200px;
	object-fit: cover;
}





.bar-terrasse-top-links .wp-block-columns {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap !important;
	font-size: 11px;
	padding: 0px 11px;
}


.bar-terrasse-top-links{
	margin-top: 20px !important;
	margin-bottom: -15px !important;
}

.bar-terrasse-top-links:before {
	content: '';
	position: absolute;
	height: 1px;
	width: 100%;
	background: linear-gradient(90deg, transparent, #b47d4c, transparent);
	left: 0px;
	top: 30px;
	left: 0%;
}

.wp-block-post-excerpt__more-link {
	display: block;
margin-left: auto;
margin-right: auto;
border: 1px solid #b47d4c;
width: 100px;
text-align: center;
padding: 5px;
margin-top: 0px;
}

.bar-terrasse-top-links{
	margin-bottom: 70px;
}

body.page-has-post-thumbnail .entry-header-wrapper {
	color: #fff;
	padding: 0rem;
	min-height: fit-content;
	margin-bottom: 5px;
}

 .bar-card .wp-block-getwid-custom-post-type__post-wrapper{
	position: relative;
}

 .bar-card  .wp-block-getwid-custom-post-type__post-header{
	position: absolute;
 top: 0px;
 width: 100%;
 text-align: center;
 background: linear-gradient(180deg, #553a23, transparent);
 height: 200px;
 padding-top: 10px;
}

.bar-card .wp-block-getwid-custom-post-type__post-title a {
	color: #ffffff;
	font-size: 35px;
}


/* Restaurant Archive Styles */

.restaurant-page .site-content {
	padding-top: 5.625rem;
	padding-bottom: 0rem;
	padding-left: 0px;
	padding-right: 0px;
}

.restaurant-page .wp-block-getwid-images-slider.has-images-center .wp-block-getwid-images-slider__item {
	opacity: 50%;
	filter: blur(2px);
	transition: filter 0.3sease, opacity 0.3sease;
}

.restaurant-page .wp-block-getwid-images-slider.has-images-center .wp-block-getwid-images-slider__item.slick-active{
	opacity: 100%;
	filter: blur(0px);
}

.restaurant-page .wp-block-getwid-section__wrapper {
	padding: 0em;
}

.restaurant-page .top-description {
	padding: 0px 65px;
}


.restaurant-page .restaurant.type-restaurant{
	padding: 0px 40px;
	
}


.restaurant-page .restaurant.type-restaurant p{
	text-align: center;
	padding: 0px 16px;
	margin-bottom: 15px;
}

.restaurant-page .restaurant.type-restaurant a.wp-block-read-more{
	border: 1px solid #b47d4c;
	padding: 10px 15px;
	color: #593d25;
	font-style: italic;
	margin-left: auto;
	margin-right: auto;
}


.restaurant-page .section-chef {
	margin: 0px 40px;
	background: #b7886617;
	padding-bottom: 40px;
	margin-top: 60px;
	
}




 .restaurant-page  .section-chef,
 .restaurant-page  .section-equipe,
 .restaurant-page  .section-equipe
 {
	text-align: center;
}





 .restaurant-page  .section-chef h2{
	margin-top: 0px;
	margin-bottom: 0px;
	line-height: 40px;
}

 .restaurant-page  .section-chef h3{
	margin-top: 0px;
	margin-bottom: 0px;
}


 .restaurant-page  .section-chef p{
	font-size: 10px;
	padding: 15px 20px;
	line-height: 15px;
}


 .restaurant-page  .section-chef h4 {
	margin-bottom: 0;
	font-family: "Mrs Saint Delafield";
	font-size: 30px;
	font-weight: 700;
}


 .restaurant-page  .section-equipe h4{
	font-family: "Jost";
	color: #b47d4c;
	font-family: "Mrs Saint Delafield";
	font-size: 35px;
	margin-top: 15px;
}

 .restaurant-page  .section-equipe p,
 .restaurant-page  .section-slide p{
	margin-bottom: 0;
	padding: 0px 50px;
	font-size: 11px;
}

.restaurant-page .section-equipe {
	margin-bottom: 70px;
	margin-top: 70px;
}

 .restaurant-page .section-slide{
	margin-bottom: 0;
	padding: 0px 0px;
	font-size: 11px;
	text-align: center;
	margin-top: 70px;
	overflow: hidden;
}

 .restaurant-page .section-slide .slick-next {
	right: 5px;
}

 .restaurant-page .section-slide .slick-prev {
	left: 5px;
}

 .restaurant-page  .section-slide h4{
	font-family: "Jost";
	color: #b47d4c;
	font-family: "Mrs Saint Delafield";
	font-size: 35px;
	margin-top: 15px;
}

.wp-block-button__link, .wp-block-file .wp-block-file__button {
	border-radius: 1.875rem;
	font-size: 12px;
	font-size: 13px;
	text-transform: math-auto;
	line-height: 1.2;
	padding: 10px 20px;
	font-weight: 600;
	-webkit-transition: all .3sease;
	transition: all .3sease;
	letter-spacing: 0px;
	background: #c1b086;
	color: #fff;
	border: 1px solid;
	border-color: transparent;
	font-family: "Jost";
	font-style: italic;
}

.wp-block-post-excerpt__more-link{

border-radius: 0px;
font-size: 12px;
font-size: 13px;
text-transform: math-auto;
line-height: 1.2;
padding: 5px 15px;
font-weight: 600;
-webkit-transition: all .3sease;
transition: all .3sease;
letter-spacing: 0px;
/* background: #c1b086; */
color: #4a3420;
border: 1px solid;
border-color: #b47d4c;
font-family: "DM Serif Display";
font-style: italic;
font-weight: 100;
}


body.page-has-post-thumbnail .entry-header-wrapper .entry-title {
	color: #b47d4c;
	font-size: 30px;
	margin-bottom: 1px;
}


.restaurant-card h2,
.bar-card h2 {
	font-size: 45px !important;
	margin-bottom: -15px !important;
}




.restaurants-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap: 2rem;
	padding: 2rem 0;
}

.restaurant-entry {
	background: #fff8f3; /* Slightly warmer background than bars */
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0 2px 4px rgba(0,0,0,0.1);
	transition: transform 0.3s ease;
}

.restaurant-entry:hover {
	transform: translateY(-5px);
}

.restaurant-thumbnail img {
	width: 100%;
	height: 200px;
	object-fit: cover;
}

.restaurant-entry .entry-header {
	padding: 1rem;
}

.restaurant-entry .entry-title {
	margin: 0;
	font-size: 1.6rem;
	margin-bottom: 1.2rem;
}

.restaurant-entry .entry-summary {
	padding: 0 1rem 1rem;
}

/* Card Styles for Bars and Restaurants */
.bars-grid,
.restaurants-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap: 2rem;
	padding: 2rem 0;
}

.bar-card, .restaurant-card ,
.type-mpa_service{
	height: 100%;
	position: relative;
	text-align: center;
}

.bar-card p, .restaurant-card p{
	padding: 15px;
	line-height: 20px;
	padding-top: 0px;
}

.bar-entry,
.restaurant-entry {
	background: #fff;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0 2px 10px rgba(0,0,0,0.1);
	transition: all 0.3s ease;
	height: 100%;
	display: flex;
	flex-direction: column;
}

.bar-entry:hover,
.restaurant-entry:hover {
	transform: translateY(-5px);
	box-shadow: 0 5px 15px rgba(0,0,0,0.2);
}

.bar-thumbnail,
.restaurant-thumbnail {
	position: relative;
	padding-top: 60%; /* Aspect ratio 5:3 */
	overflow: hidden;
}

.bar-thumbnail img,
.restaurant-thumbnail img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}

.bar-entry:hover .bar-thumbnail img,
.restaurant-entry:hover .restaurant-thumbnail img {
	transform: scale(1.05);
}

.bar-content,
.restaurant-content {
	padding: 1.5rem;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}

.entry-title {
	margin: 0 0 1rem;
	font-size: 1.5rem;
	color: #b47d4c;
}

.entry-title a {
	color: #b47d4c;
	text-decoration: none;
	transition: color 0.3s ease;
}

.entry-title a:hover {
	color: #95663d;
}

.entry-summary {
	color: #666;
	font-size: 0.95rem;
	line-height: 1.6;
	margin-bottom: 1.5rem;
	flex-grow: 1;
}

.entry-footer {
	margin-top: auto;
	text-align: right;
}

.read-more-btn {
	display: inline-block;
	padding: 0.75rem 1.5rem;
	background: #b47d4c;
	color: #fff;
	text-decoration: none;
	border-radius: 4px;
	font-size: 0.9rem;
	transition: all 0.3s ease;
	border: 1px solid #b47d4c;
}

.read-more-btn:hover {
	background: #fff;
	color: #b47d4c;
	transform: translateY(-2px);
}

/* Restaurant-specific styles */
.restaurant-entry {
	background: #fff8f3; /* Slightly warmer background than bars */
}

.restaurant-entry .entry-title {
	font-size: 1.6rem;
	margin-bottom: 1.2rem;
	
}

.restaurant-content {
	padding: 2rem;
}

.restaurant-entry .read-more-btn {
	background: #b47d4c;
	border-color: #b47d4c;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-size: 0.85rem;
}

.restaurant-entry .read-more-btn:hover {
	background: transparent;
	color: #b47d4c;
}


.front-page-widget-area label {
	color: #535353;
	font-size: 14px;
	font-size: 0.875rem;
}

/* Add a subtle food icon to restaurant cards */
.restaurant-entry::before {
	content: '';
	position: absolute;
	top: 10px;
	right: 10px;
	width: 24px;
	height: 24px;
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23b47d4c" d="M11 9H9V2H7v7H5V2H3v7c0 2.12 1.66 3.84 3.75 3.97V22h2.5v-9.03C11.34 12.84 13 11.12 13 9V2h-2v7zm5-3v8h2.5v8H21V2c-2.76 0-5 2.24-5 4z"/></svg>');
	background-repeat: no-repeat;
	background-size: contain;
	opacity: 0.15;
	pointer-events: none;
	z-index: 1;
}

/* Hover effects specific to restaurants */
.restaurant-entry:hover {
	background: #fff;
}

.restaurant-thumbnail::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(to bottom, transparent 50%, rgba(180, 125, 76, 0.1));
	pointer-events: none;
	transition: opacity 0.3s ease;
}

.restaurant-entry:hover .restaurant-thumbnail::after {
	opacity: 0;
}

/* Responsive adjustments for restaurants */
@media (max-width: 768px) {
	.restaurant-content {
		padding: 1.5rem;
	}
	
	.restaurant-entry .entry-title {
		font-size: 1.4rem;
	}
}

/* Grid layout adjustments for better restaurant card display */
@media (min-width: 1200px) {
	.restaurants-grid {
		grid-template-columns: repeat(3, 1fr);
		max-width: 1400px;
		margin: 0 auto;
	}
	
	.home .entry-content{
		max-width: 1060px;
		margin-left: auto;
		margin-right: auto;
	}
}


@media (min-width: 1360px) {

	
	.home .entry-content{
		max-width: 1100px;
		margin-left: auto;
		margin-right: auto;
	}
}


/* Block Pattern Styles */
.bars-section,
.restaurants-section {
	padding: 1rem 0;
	max-width: 1200px;
	margin: 0 auto;
}

.restaurant-card .restaurant-subtitle,
.bar-card .bar-subtitle {
	font-size: 1.5rem !important;
	font-weight: 500 !important;
	font-style: normal !important;
	margin-top: 0 !important;
	margin-bottom: 1rem !important;
	color: #ffffff !important;
	line-height: 1.3 !important;
}



.restaurant-page .restaurant.type-restaurant .entry-header-wrapper,
.bar-terrasse-page .bar.type-bar .entry-header-wrapper{
	margin-bottom: 2rem;
	color: #b47d4c;
	font-size: 45px;
	line-height: 40px;
	color: white;
	position: absolute;
	width: 100%;
	background: linear-gradient(179deg, #45301c, transparent);
	top: 0px;
	padding-bottom: 200px;
	padding-top: 0px;
	margin-top: 0px;
	text-align: center;
}

.page-template-template-page-with-sidebar .type-mpa_service .mpa-post-title {
	margin-bottom: 2rem;
color: #b47d4c;
font-size: 45px;
line-height: 40px;
color: white;
position: absolute;
/* width: 100%; */
background: linear-gradient(179deg, #b78866, transparent);
top: 0px;
padding-bottom: 0px;
padding-top: 20px;
margin-top: 0px;
text-align: center;
right: 20px;
left: 20px;
height: 200px;
}


.page-template-template-page-with-sidebar .type-mpa_service .mpa-post-title a {
	color: #ffffff;
	font-size: 40px;
	line-height: 40px;
	font-family: "DM Serif Display";
	position: relative;
}

.footer-widgets-wrapper .widget-area {
	padding: 0px 0px !important;

}

.bar-terrasse-page .bars-section ul > li:last-child{
	margin-bottom: 40px;
}



.bar-terrasse-page .bars-section ul > li:last-child .entry-header-wrapper
 {
	margin-bottom: 0rem;
	color: #b47d4c;
	font-size: 45px;
	line-height: 40px;
	color: #b47d4c;
	position: relative;
	width: 100%;
	background: transparent;
	top: 0px;
	padding-bottom: 0px;
	padding-top: 0px;
	margin-top: 0px;
	text-align: center;
}

.bar-terrasse-page .bars-section ul > li:last-child  h2 a {
	color: #b47d4c;
	font-size: 40px;
}

.bar-terrasse-page .bars-section ul > li:last-child .bar-subtitle{
	font-family: "Mrs Saint Delafield";
	color: #b47d4c !important;
	margin-top: 5px !important;
}

.bar-terrasse-page .bars-section ul > li:last-child  .bar-card{
	background: #b7886617;
}

.restaurants-section h2 a{
	color: white;
}

.restaurants-section h2:before,
.bar-card h2:before{
	content: '';
	position: absolute;
	height: 1px;
	width: 50%;
	background: linear-gradient(90deg, transparent, #ffffff5c, transparent);
	left: 0px;
	top: 90px;
	left: 25%;
}


.loop-service-info h2.entry-title a:before {
content: '';
position: absolute;
height: 1px;
width: 100%;
background: linear-gradient(90deg, transparent, #ffffff5c, transparent);
left: 0px;
bottom: -10px;
left: 0%;
}

.mpa-loop-post-wrapper .loop-service-info p{
	font-size: 11px;
	line-height: 15px;
	padding: 20px 5px;
	height: 240px;
}


.page-template-template-page-with-sidebar .mpa-loop-post-wrapper .loop-service-info p{
	height: auto
}

.mpa-loop-post-wrapper .loop-service-info ul {
	list-style: none;
	display: flex
;
	width: 60%;
	margin-left: 30%;
	justify-content: space-around;
	font-size: 12px;
	font-weight: 700;
	font-style: italic;
}

.type-mpa_service .activity-booking-details{
	position: relative;
}

.type-mpa_service  .mpa-service-price {
	position: absolute;
	top: -54px;
	font-size: 12px;
	font-weight: 700;
	left: 25px;
}

.type-mpa_service  .book-now{
	display: none;
}


.type-mpa_service .view-tour{
	background: #b47d4c;
	color: #fff;
	border-color: #b47d4c;
	border-radius: 0px;
	font-size: 12px;
	font-size: 1rem;
	text-transform: capitalize;
	line-height: 1.2;
	padding: 15px 15px;
	font-weight: 600;
	-webkit-transition: all .3sease;
	transition: all .3sease;
	text-align: center;
	letter-spacing: 1px;
	background: transparent;
	color: #5f6060;
	border-color: #dadada;
	border-radius: 0px;
	width: 290px;
	cursor: pointer;
}


.type-mpa_service .view-tour:hover{
	background: #b47d4c;
	color: white;
}

body.page-template-template-page-with-sidebar .entry-header-background {
	max-width: none;
	background: #252e59;
	position: relative;
	z-index: -1;
	top: 0;
	bottom: 0;
	left: 0px;
	right: 0px;
	margin: 0px -40px 30px -40px;
}

.type-mpa_service span[class*="currency"]::after {
	content: 'MAD';
	visibility: visible;
	position: absolute;
	bottom: 60px;
	left: 5px;
	font-size: 12px !important;
	display: block;
	font-family: "Open Sans", sans-serif !important;
	top: -17px;
}

.wp-block-query .wp-block-post-template {
	gap: 2rem;
	margin: 0;
}

.wp-block-query-pagination {
	margin-top: 2rem;
	justify-content: center;
}

.wp-block-query-pagination-numbers {
	display: flex;
	gap: 0.5rem;
}

.wp-block-query-pagination .page-numbers {
	padding: 0.5rem 1rem;
	border: 1px solid #b47d4c;
	border-radius: 4px;
	color: #b47d4c;
	text-decoration: none;
	transition: all 0.3s ease;
}

.wp-block-query-pagination .page-numbers.current,
.wp-block-query-pagination .page-numbers:hover {
	background: #b47d4c;
	color: #fff;
}



 .wp-block-group.bar-card h2 a{
	color: white;
	font-size: 40px;
}

.restaurant-card .entry-subtitle, .type-restaurant .entry-subtitle {
	color: #ffffff;
	font-size: 25px;
	font-weight: 300;
	margin-top: -5px;
}

	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-inner-wrapper .room-details {
	width: 100% !important;
}

/* Responsive adjustments */
@media (max-width: 768px) {
	.entry-subtitle {
		font-size: 0.95rem;
	}
	

}

 .bar-terrasse-page  .site-content {
	padding-top: 5.625rem;
	padding-bottom: 0rem;
	padding-left: 0px;
	padding-right: 0px;
}

.section-bar-chef{
	text-align: center;
	

}

.bars-section .entry-subtitle {
	font-size: 23px;
}

.bars-section{
	padding: 0px 30px;
}

.section-bar-chef .wp-block-getwid-section__wrapper{
	padding: 0px;
}

.section-bar-chef p{
	margin-bottom: 0;
	padding: 10px 25px;
	font-size: 11px;
}

.section-bar-chef h2 {
	font-size: 31px;
	font-size: 35px;
	color: #b47d4c;
	font-family: "Mrs Saint Delafield";
	margin-top: 20px;
	margin-bottom: 0px;
}

.restaurant-template-default.single-restaurant .site-content,
.bar-template-default.single-bar .site-content {
	padding-top: 0px;
	padding-bottom: 0px;
	padding-left: 20px;
	padding-right: 20px;
}

.restaurant-template-default.single-restaurant .entry-header-wrapper,
.bar-template-default.single-bar .entry-header-wrapper{
	display: none
}

.restaurant-template-default.single-restaurant  article,
.bar-template-default.single-bar  article{
	position: relative;
}


.site-branding .white-logo {
	display: block;
}


.site-branding .dark-logo {
	display: none;
}



.restaurant-template-default.single-restaurant  article h1,
.bar-template-default.single-bar  article h1{
	margin-bottom: 0px;
	color: white;
}

.restaurant-template-default.single-restaurant  article h3,
.bar-template-default.single-bar  article h3{
	margin-top: 0px;
	color: white;
}

.restaurant-template-default.single-restaurant  .restaurant-gallery h3,
.bar-template-default.single-bar  .bar-gallery h3 {
	color: #b47d4c;
	position: relative;
}

.restaurant-template-default.single-restaurant  .restaurant-gallery h3::after,
.bar-template-default.single-bar   .bar-gallery h3::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 50%;
	height: 1px;
	background: linear-gradient(to right, #ffffff, #333, #ffffff);
}

.restaurant-template-default.single-restaurant .restaurant-single-header,
.bar-template-default.single-bar .bar-single-header {
	position: absolute;
	width: 100%;
	text-align: center;
	top: 360px;
	z-index: 1;
}

.restaurant-template-default.single-restaurant .restaurant-featured-image,
.bar-template-default.single-bar .bar-featured-image{
	max-width: 100vw;
	margin: 0px -20px;
	position: relative;
}

.restaurant-template-default.single-restaurant .restaurant-single-header:after,
.bar-template-default.single-bar .bar-single-header:after{
	content: '';
	position: absolute;
	height: 1px;
	width: 50%;
	background: linear-gradient(90deg, transparent, #ffffff, transparent);
	left: 0px;
	bottom: 0px;
	left: 25%;
}
.restaurant-template-default.single-restaurant .restaurant-featured-image img,
.bar-template-default.single-bar .bar-featured-image img{
	height: auto;
	max-width: 100%;
	position: relative;
}

.restaurant-template-default.single-restaurant .restaurant-featured-image:after,
.bar-template-default.single-bar .bar-featured-image:after{
	content: '';
	position: absolute;
	height: 100%;
	width: 100%;
	background: linear-gradient(0deg, #00000085, transparent);
	left: 0px;
	bottom: 8px;
	left: 0px;
}

 .restaurant-template-default.single-restaurant  p,
 .bar-template-default.single-bar  p{
	text-align: center;
}

 .restaurant-template-default.single-restaurant .post-navigation-wrapper,
 .bar-template-default.single-bar .post-navigation-wrapper{
	display: none;
}


	/* Main bar card styles */
.bar-card .entry-title {
	font-size: 2rem !important;
	font-weight: 600 !important;
	margin-bottom: 0.5rem !important;
	color: #FFF !important;
	padding: 0 !important;
	line-height: 1.3 !important;
}

/* Subtitle styles in bar cards */
.bar-card .bar-subtitle {
	font-size: 1.5rem !important;
	font-weight: 500 !important;
	font-style: italic !important;
	margin-top: 0 !important;
	margin-bottom: 1rem !important;
	color: #FFF !important;
	line-height: 1.3 !important;
}

/* Handle nested structure in bar cards */
.bar-card .entry-header-wrapper {
	padding: 1rem 0 0.5rem 0;
}

/* Ensure subtitle is visible */
.bar-subtitle:empty {
	display: none;
}

.lightbox-close {
	padding: 0px;
}

.lightbox-next {
	padding: 0px;
}

.lightbox-prev {
padding: 0px;
}



/* Modern Popup Menu Enhancements */
body.menu-open {
	overflow: hidden;
}

/* Animation for menu burger to X */
.menu-toggle-btn .line {
	transform-origin: center;
}

.menu-toggle-btn.active .line:nth-child(1) {
	transform: translateY(8px) rotate(45deg);
}

.menu-toggle-btn.active .line:nth-child(2) {
	opacity: 0;
}

.menu-toggle-btn.active .line:nth-child(3) {
	transform: translateY(-8px) rotate(-45deg);
}

/* Menu item hover effects */
.popup-menu a {
	position: relative;
	overflow: hidden;
}

.popup-menu a::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 2px;
	background-color: #fff;
	transform: translateX(-101%);
	transition: transform 0.4s cubic-bezier(0.7, 0, 0.3, 1);
	background: linear-gradient(270deg, #ffffff, transparent);
}


.popup-menu a:hover {
	color: #b47d4c;
}

.popup-menu a:hover::before {
	transform: translateX(0);
}

/* Add fading letter animation to menu items */
.popup-menu a span {
	display: inline-block;
	transition: transform 0.3s, opacity 0.3s;
	transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
}

.popup-menu a:hover span {
	transform: translateY(-10px);
	opacity: 0.7;
}

.popup-menu a::after {
	content: attr(data-text);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: 0.5rem 1rem;
	transform: translateY(110%);
	transition: transform 0.3s;
	transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
}

.popup-menu a:hover::after {
	transform: translateY(0);
}

/* Enhanced background transition */
.popup-menu-overlay {
	background: rgb(255 241 229);
}

.popup-menu-content .logo-wrapper .white-logo{
	display: none;
}

.popup-menu-content .logo-wrapper .dark-logo{
	justify-self: center;
	margin-bottom: 20px;
}

.popup-menu-content .logo-wrapper .dark-logo{
	justify-self: center;
	margin-bottom: 20px;
}

.popup-menu-content .logo-wrapper .dark-logo img{
	max-width: 125px;
}


.popup-menu-overlay.active .popup-secondary-navigation #footer-menu li {
	opacity: 0.7;
	transform: translateY(0);
}

.popup-navigation::after{
	content: '';
	position: absolute;
	height: 1px;
	width: 50%;
	background: linear-gradient(90deg, transparent, #b47d4c, transparent);
	left: 0px;
	bottom: -20px;
	left: 25%;
}


	body.page-has-post-thumbnail .entry-header-wrapper h1.entry-title {
		font-family: "Mrs Saint Delafield";
	}


	.page-contact-us .title-plan-access{
		font-family: "Mrs Saint Delafield";
	}
	
	.page-contact-us  h3 {
		font-family: "Mrs Saint Delafield" !important;
	}

	.page-contact-us .car-title,
	.page-contact-us .bus-title{
		position: relative;
		margin-left: 60px;
	}
	
	.contact-us-top-buttons{
		display: flex;
		width: 100%;
		justify-content: space-around !important;
	}
	
	.contact-us-top-buttons a{
		font-style: normal;
		font-weight: 100;
	}
	
	.page-contact-us figure {
		margin-left: -30px;
		margin-right: -30px;
		margin: 70px 0;
	}
	
	.page-contact-us figure img {
		-webkit-box-shadow: none;
		box-shadow: none;
	}
	
	.page-contact-us iframe{
		border: 0;
		margin-top: 70px;
		margin-left: -30px;
		margin-right: -30px;
		width:100vw;
		max-width: 100vw;
	}
	
	.page-contact-us .car-title:before{
		position: absolute;
		background-size: contain;
		width: 45px !important;
		height: 45px !important;
		content: "" !important;
		background-image: url(images/car.svg);
		bottom: 0px;
	left: -50px;
	}
	
	.page-contact-us .bus-title:before{
		position: absolute;
		background-size: contain;
		width: 45px !important;
		height: 45px !important;
		content: "" !important;
		background-image: url(images/bus.svg);
		bottom: 0px;
	left: -50px;
	}


.page-template-template-page-with-sidebar .site-content {
		padding-top: 0rem !important;
	}
	
	
	.mpa-grid-column.mpa_service.type-mpa_service{
		margin-bottom: 70px;
	}
	
	.entry-header-wrapper, .page-header {
		margin-bottom: 3rem !important;
	}
	
	
	.mphb_sc_checkout-services-list.mphb_checkout-services-list span[class*="currency"]{
		margin-right: 40px !important;
	}
	
/* Enhance menu item appearance on all screen sizes */
@media screen and (min-width: 1024px) {
	
	.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .room-description-wrapper {
		width: 100% !important;
		max-width: none !important;
		padding-right: 2.5rem;
	}
	
	p{
		font-size: 15px;
		line-height: 25px;
	}
	

	
		.restaurant-page h1{
		margin-top: 70px;
	}
	.popup-menu a {
		font-size: 2.5rem;
		letter-spacing: 1px;
	}
		
	.popup-menu .sub-menu a {
		font-size: 1.6rem;
	}
}

/* Enhance menu item appearance on all screen sizes */
@media screen and (min-width: 1200px) {
	.footer-widgets{
		max-width: 1100px;
		padding: 0 0px;
	}
	
	.footer-widgets-wrapper .widget-area {

		padding: 0 0px;
	}
}




/* Improve social menu appearance */
.theme-social-menu a {
	border: 0px solid rgba(255,255,255,0.2);
	border-radius: 50%;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.theme-social-menu a:hover {
	background-color: rgba(255,255,255,0.1);
	transform: translateY(-5px);
}

/* Style the menu toggle button */
.menu-toggle-btn {
	position: relative;
	z-index: 1000;
}

.menu-toggle-btn:hover .line {
	background-color: #555;
}

/* Ensure proper functionality with theme */
.site-branding {
	z-index: 100;
}

/* Improved animations */
@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes scaleIn {
	from {
		opacity: 0;
		transform: scale(0.95);
	}
	to {
		opacity: 1;
		transform: scale(1);
	}
}

.popup-menu-container {
	animation: scaleIn 0.5s forwards;
	animation-delay: 0.2s;
	opacity: 0;
}

.popup-menu-overlay.active .popup-menu-container {
	opacity: 1;
}



/*--------------------------------------------------------------
# Modern Popup Menu
--------------------------------------------------------------*/

/* Body when menu is open - prevent scrolling */
body.menu-open {
	overflow: hidden;
}

/* Menu Toggle Button Styles */
.menu-toggle {
	position: fixed;
	top: 20px;
	right: 20px;
	z-index: 9999;
	background: transparent;
	border: none;
	width: 40px;
	height: 40px;
	cursor: pointer;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
	padding: 0;
	transition: transform 0.3s ease;
}

.menu-toggle:hover {
	transform: scale(1.1);
}

.menu-toggle:focus {
	outline: none;
}

/* Burger Menu Bars */
.menu-toggle span {
	display: block;
	width: 100%;
	height: 3px;
	background-color: #000;
	border-radius: 3px;
	transition: all 0.3s ease;
}

/* Menu Open State */
.menu-toggle[aria-expanded="true"] span:nth-child(1) {
	transform: translateY(13px) rotate(45deg);
}

.menu-toggle[aria-expanded="true"] span:nth-child(2) {
	opacity: 0;
}

.menu-toggle[aria-expanded="true"] span:nth-child(3) {
	transform: translateY(-13px) rotate(-45deg);
}

/* Main Navigation Styles for Popup */
.main-navigation {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background: rgba(0, 0, 0, 0.95);
	z-index: 9998;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	opacity: 0;
	visibility: hidden;
	transition: all 0.5s ease;
	backdrop-filter: blur(10px);
}

.main-navigation.toggled {
	opacity: 1;
	visibility: visible;
}

/* Menu Container */
.main-navigation .menu-container {
	width: 100%;
	max-width: 1200px;
	padding: 0 20px;
}

/* Menu Items */
.main-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.main-navigation li {
	margin: 10px 0;
	transform: translateY(20px);
	opacity: 0;
	transition: all 0.5s ease;
}

.main-navigation.toggled li {
	transform: translateY(0);
	opacity: 1;
}

.entry-header-wrapper .entry-header-image, .entry-header-wrapper .entry-header-image, .page-header .entry-header-image, .page-header .entry-header-image{
	opacity: 0;
}

/* Menu Links */
.main-navigation a {
	color: #fff;
	font-size: 2rem;
	text-decoration: none;
	position: relative;
	padding: 5px 0;
	display: block;
	overflow: hidden;
	transition: color 0.3s ease;
}

/* Hover Effect - Underline */
.main-navigation a::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #fff;
	transform: scaleX(0);
	transform-origin: right;
	transition: transform 0.3s ease;
}

.main-navigation a:hover::after {
	transform: scaleX(1);
	transform-origin: left;
}

/* Text Animation on Hover */
.main-navigation a span {
	display: inline-block;
	transition: transform 0.3s ease, opacity 0.3s ease;
}

.main-navigation a:hover span {
	transform: translateY(-5px);
	opacity: 0.7;
}

.main-navigation a::before {
	content: attr(data-text);
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	transform: translateY(100%);
	opacity: 0;
	transition: transform 0.3s ease, opacity 0.3s ease;
	padding: 5px 0;
}

.main-navigation a:hover::before {
	transform: translateY(0);
	opacity: 1;
}

/* Submenu Styles */
.main-navigation .sub-menu {
	display: none;
	padding-left: 20px;
	width: 100%;
}

.main-navigation .sub-menu.toggled {
	display: block;
}

.main-navigation .sub-menu li {
	margin: 5px 0;
}

.main-navigation .sub-menu a {
	font-size: 1.5rem;
}

/* Menu Item with Children */
.main-navigation .menu-item-has-children > a::after {
	content: '+';
	margin-left: 10px;
	transition: transform 0.3s ease;
}

.main-navigation .menu-item-has-children > a[aria-expanded="true"]::after {
	content: '-';
}

.mphb-single-room-type-gallery-wrapper .slick-next {
	right: -40px;
}
.mphb-single-room-type-gallery-wrapper .slick-prev {
	left: -30px;
}



/* Number of Rooms Field Styles */
.mphb_sc_search-rooms-count {
	margin-bottom: 1em;
}

.mphb_sc_search-rooms-count select {
	width: 100%;
	max-width: 100%;
	padding: 8px;
	border: 1px solid #ddd;
	border-radius: 4px;
}

.mphb-rooms-count-message {
	background-color: #f8f9fa;
	padding: 10px 15px;
	margin-bottom: 20px;
	border-left: 4px solid #6a11cb;
	font-weight: bold;
}

.mphb-rooms-total-price {
	margin-top: 10px;
	padding: 8px 12px;
	background-color: #f0f0f0;
	border-radius: 4px;
	font-size: 1.1em;
}

.mphb-rooms-count-info {
	background-color: #f8f9fa;
	padding: 8px 12px;
	margin-bottom: 10px;
	border-left: 3px solid #6a11cb;
}

.mphb-rooms-booked-info {
	background-color: #e8f4f8;
	padding: 15px;
	margin-bottom: 20px;
	border-radius: 4px;
	font-size: 1.1em;
	font-weight: bold;
	text-align: center;
}
/* Larger screen adjustments */
@media screen and (min-width: 992px) {
	.mpa-loop-post-wrapper .loop-service-info p{

		height: 100px;
	}
	
	.page-contact-us iframe {
		width: 100%;
	}
	
	.page-contact-us figure img {
		width: 100%;
	}
	.main-navigation a {
		font-size: 3rem;
		letter-spacing: 2px;
	}
	
	.main-navigation .sub-menu a {
		font-size: 2rem;
	}
}

/* Menu Item Animation Stagger */
.main-navigation li:nth-child(1) { transition-delay: 0.1s; }
.main-navigation li:nth-child(2) { transition-delay: 0.15s; }
.main-navigation li:nth-child(3) { transition-delay: 0.2s; }
.main-navigation li:nth-child(4) { transition-delay: 0.25s; }
.main-navigation li:nth-child(5) { transition-delay: 0.3s; }
.main-navigation li:nth-child(6) { transition-delay: 0.35s; }
.main-navigation li:nth-child(7) { transition-delay: 0.4s; }
.main-navigation li:nth-child(8) { transition-delay: 0.45s; }
.main-navigation li:nth-child(9) { transition-delay: 0.5s; }
.main-navigation li:nth-child(10) { transition-delay: 0.55s; }

/* Social Menu Styles */
.main-navigation .social-menu {
	margin-top: 40px;
	display: flex;
	flex-direction: row;
	justify-content: center;
}

.main-navigation .social-menu li {
	margin: 0 10px;
}

.main-navigation .social-menu a {
	font-size: 1.5rem;
	padding: 10px;
}

/* Screen Reader Text - Accessibility */
.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}


/* Modern Popup Menu Styles */
.site-header-wrapper {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 1rem;
	position: relative;
}

/* Toggle Menu Button */
.menu-toggle-btn {
	display: flex;
	align-items: center;
	background: transparent;
	border: none;
	cursor: pointer;
	padding: 0.5rem;
	z-index: 100;
	transition: all 0.3s ease;
}

.menu-toggle-btn:hover {
	opacity: 0.8;
}

.menu-toggle-btn .menu-icon {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 24px;
	height: 18px;
	margin-right: 8px;
}

.menu-toggle-btn .line {
	display: block;
	width: 100%;
	height: 2px;
	background-color: #ffffff;
	transition: all 0.3s ease;
}

.menu-toggle-btn.active .line:nth-child(1) {
	transform: translateY(8px) rotate(45deg);
}

.menu-toggle-btn.active .line:nth-child(2) {
	opacity: 0;
}

.menu-toggle-btn.active .line:nth-child(3) {
	transform: translateY(-8px) rotate(-45deg);
}

.menu-toggle-btn .menu-text {
	font-size: 11px;
	font-weight: 500;
	color: #ffffff;
}



#masthead{
	display: none
}

/* Popup Menu Overlay */
.popup-menu-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgb(255 248 243);
	backdrop-filter: blur(5px);
	z-index: 999;
	display: flex;
	justify-content: center;
	align-items: center;
	opacity: 0;
	visibility: hidden;
	transition: all 0.4s cubic-bezier(0.19, 1, 0.22, 1);
}

.popup-menu-overlay.active {
	opacity: 1;
	visibility: visible;
}

.popup-menu-container {
	position: relative;
	width: 90%;
	max-width: 1200px;
	height: 90%;
	max-height: 800px;
	overflow-y: auto;
	padding: 3rem;
	box-sizing: border-box;
}

.popup-menu-close {
	position: absolute;
	top: 0rem;
	right: 0rem;
	background: transparent;
	border: none;
	color: #b47d4c;
	font-size: 2rem;
	cursor: pointer;
	z-index: 10;
	width: 40px;
	height: 40px;
	display: flex
;
	align-items: center;
	justify-content: center;
	transition: all 0.3sease;
	padding: 0px;
}

.popup-menu-close:hover {
	transform: rotate(90deg);
}

.popup-menu-content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 100%;
	color: white;
}

/* Popup Navigation Menu */
.popup-navigation {
	margin-bottom: 2rem;
	position: relative;
}

.popup-menu {
	list-style: none;
	padding: 0;
	margin: 0;
	text-align: center;
}

.popup-menu li {
	margin: 1rem 0;
	opacity: 0;
	transform: translateY(20px);
	transition: all 0.3s ease;
	transition-delay: calc(var(--item-index, 0) * 0.1s);
}

.popup-menu-overlay.active .popup-menu li {
	opacity: 1;
	transform: translateY(0);
}

.popup-menu a {
	font-size: 14px;
	color: #b47d4c;
	text-decoration: none;
	padding: 0px;
	display: inline-block;
	position: relative;
	transition: all 0.3sease;
}

.popup-menu a::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 0;
	height: 2px;
	background-color: white;
	transition: all 0.3s ease;
	transform: translateX(-50%);
	display: none
}

.popup-menu a:hover::after {
	width: 80%;
}

/* Sub-menus */
.popup-menu .sub-menu {
	display: none;
	opacity: 0;
	padding-left: 0;
	max-height: 0;
	overflow: hidden;
	transition: all 0.4s ease;
	list-style: none;
}

.popup-menu .menu-item-has-children.active > .sub-menu {
	display: block;
	opacity: 1;
	max-height: 1000px;
	margin-top: 0.5rem;
}

.popup-menu .sub-menu a {
	font-size: 1.4rem;
}

.popup-menu .menu-item-has-children > a::before {
	content: '+';
	margin-right: 0.5rem;
	transition: all 0.3s ease;
}

.popup-menu .menu-item-has-children.active > a::before {
	content: '-';
}

/* Social Menu */
.popup-socials {
	margin-top: 3rem;
	text-align: center;
}

.theme-social-menu {
	display: flex;
	justify-content: center;
	list-style: none;
	padding: 0;
	margin: 0;
}

.theme-social-menu li {
	margin: 0 0.5rem;
}

.theme-social-menu a {
	color: white;
	font-size: 1.2rem;
	padding: 0.5rem;
	transition: all 0.3s ease;
}

.theme-social-menu a:hover {
	opacity: 0.7;
}

/* Responsive adjustments */
@media (min-width: 768px) {
	
	
	.popup-menu a {
		font-size: 1.3rem;
	}
	
	.popup-menu .sub-menu a {
		font-size: 1.2rem;
	}
	
	.popup-menu-container {
		padding: 2rem;
	}
}

/* Body class for when menu is open */
body.menu-open {
	overflow: hidden;
}


/* Header with Social Menu Layout */
.site-header-wrapper {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 1rem;
	position: relative;
}

/* Adjust the menu toggle button */
.menu-toggle-btn {
	order: 1;
	margin-right: auto;
}

/* Center the site branding */
.site-branding {
	order: 2;
	flex-grow: 1;
	text-align: center;
	align-items: center;
	justify-content: center;
}

/* Position the social menu on the right */
.header-social-menu {
	order: 3;
	margin-left: auto;
}

.header-social-menu .social-menu {
	display: flex;
	list-style: none;
	margin: 0;
	padding: 0;
}

.header-social-menu .social-menu li {
	margin: 0 5px;
}

.header-social-menu .social-menu a {
	color: #333;
	font-size: 1.2rem;
	padding: 0.3rem;
	transition: all 0.3s ease;
	display: block;
}

.header-social-menu .social-menu a:hover {
	color: #b47d4c;
	transform: scale(1.1);
}

	.header-social-menu .social-menu {
		flex-direction: column;
	}
	
.header-social-menu .social-menu a {
		color: #ffffff;
		font-size: 10px;
		padding: 0.1rem;
		transition: all 0.3sease;
		display: block;
		text-align: right;
	}
	
	.site-header-wrapper {
		padding: 0rem;
	}
	
	.site-header {
position: absolute !important;
	top: 0;
	left: 0;
	right: 0;
	z-index: 10;
	background: linear-gradient(180deg, black, transparent);
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fafafa;
}

.entry-header-wrapper{
	position: relative;
}

.site-branding .custom-logo {
	max-width: 60px;
}

.section-home-restaurant,
.section-home-bar{
	padding: 0px 15px;
}

.section-home-restaurant figure,
.section-home-bar figure{
	height: 350px;
	overflow: hidden;
}


.section-home-restaurant .wp-block-getwid-section__wrapper,
.section-home-bar .wp-block-getwid-section__wrapper
 {
	padding: 0em;
}

.section-home-restaurant h2.card-title,
.section-home-bar h2.card-title
 {
	top: -360px;
}

.section-home-restaurant p,
.section-home-bar p{
	padding: 15px;
}


 body.absolute-menu .site-header{
	position: absolute !important;
 	top: 0;
 	left: 0;
 	right: 0;
 	z-index: 10;
 	background: linear-gradient(180deg, black, transparent);
 	-webkit-box-shadow: none;
 	box-shadow: none;
 	color: #fafafa;
}




/*SideBar*/

.admin-bar .main-sidebar{
	top: 32px;
}

.main-sidebar{
	position: fixed;
	right: 0;
	top: 0;
	bottom: 0;
	width: 100%;
	max-width: 100%;
	height: 100%;
	background: #fdf5ef;
	transition: .3sease;
	transform: translateX(120%);
	opacity: 0;
	z-index: 20;
	box-shadow: 0 0 100px rgba(24, 22, 24, 0.5);
	overflow: auto;
	padding: 50px 20px;
}
















.main-sidebar.opened {
	opacity: 1;
	transform: none;
	display: none;
}

.mpa-shortcode.appointment-form-shortcode.mpa-loaded{
	display: none;
}



.wp-block-getwid-images-stack__media-wrapper:nth-child(2n) {
	margin-top: 5% !important;
	float: right;
}


.wp-block-social-links .wp-block-social-link.wp-social-link:nth-child(3) svg{
	padding: 4px;
}




















.main-sidebar .close-sidebar {
	background: transparent;
	padding: 0;
	width: 30px;
	height: 30px;
	position: absolute;
	top: 20px;
	right: 20px;
}




/* ... existing styles ... */

/* Slick Gallery Styles */
.gallery-slick-container {
	margin: 40px 0;
	position: relative;
	visibility: hidden; /* Initially hidden until slick is initialized */
}

.gallery-slick-container .slick-initialized {
	visibility: visible; /* Show after initialization */
}

.gallery-slick-slide {
	position: relative;
	text-align: center;
	padding: 0 10px;
}

.gallery-slick-slider .slick-list {
	margin: 0 -10px;
}

.gallery-slick-slide img {
	margin: 0 auto;
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
}

/* Slick navigation arrows - consistent with other sliders */
.gallery-slick-slider .slick-arrow {
	font-size: 0;
	line-height: 0;
	position: absolute;
	top: 50%;
	z-index: 10;
	display: block;
	width: 40px;
	height: 40px;
	padding: 0;
	transform: translate(0, -50%);
	cursor: pointer;
	color: transparent;
	border: none;
	outline: none;
	background: rgba(0, 0, 0, 0.5);
	border-radius: 50%;
	text-align: center;
}

.gallery-slick-slider .slick-arrow i {
	color: #fff;
	font-size: 18px;
	line-height: 40px;
}

.gallery-slick-slider .slick-arrow:hover {
	background: rgba(0, 0, 0, 0.8);
}

.gallery-slick-slider .slick-prev {
	left: 15px;
}

.gallery-slick-slider .slick-next {
	right: 15px;
}

/* Slick dots */
.gallery-slick-slider .slick-dots {
	position: absolute;
	bottom: -30px;
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	list-style: none;
	text-align: center;
}

.gallery-slick-slider .slick-dots li {
	position: relative;
	display: inline-block;
	width: 15px;
	height: 15px;
	margin: 0 5px;
	padding: 0;
	cursor: pointer;
}

.gallery-slick-slider .slick-dots li button {
	font-size: 0;
	line-height: 0;
	display: block;
	width: 15px;
	height: 15px;
	padding: 5px;
	cursor: pointer;
	color: transparent;
	border: 0;
	outline: none;
	background: transparent;
	position: relative;
}

.gallery-slick-slider .slick-dots li button:before {
	position: absolute;
	top: 0;
	left: 0;
	width: 10px;
	height: 10px;
	content: '';
	text-align: center;
	background-color: #ccc;
	border-radius: 50%;
	opacity: 0.5;
}

.gallery-slick-slider .slick-dots li.slick-active button:before {
	background-color: #000;
	opacity: 1;
}

/* Center mode specifics for gallery */
.gallery-slick-multi .gallery-slick-slide {
	transform: scale(0.85);
	transition: transform 0.3s ease;
}

.gallery-slick-multi .slick-center .gallery-slick-slide {
	transform: scale(1);
}

/* Responsive adjustments */
@media (max-width: 768px) {
	.gallery-slick-container {
		margin: 20px 0;
	}
	
	.gallery-slick-slider .slick-dots {
		bottom: -25px;
	}
	
	.gallery-slick-slider .slick-arrow {
		width: 30px;
		height: 30px;
	}
	
	.gallery-slick-slider .slick-arrow i {
		font-size: 14px;
		line-height: 30px;
	}
}




/* Facility items with images styling */
.mphb-facilities-wrapper {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 5px;
}

.facility-item {
	display: inline-flex;
	align-items: center;
	margin-bottom: 5px;
}

.facility-item a {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	text-decoration: none;
	transition: all 0.3s ease;
}

.facility-image {
	width: 20px !important;
	height: 20px !important;
	object-fit: cover;
	border-radius: 50%;
	transition: transform 0.3s ease;
}

.facility-item a:hover .facility-image {
	transform: scale(1.1);
}

.facility-name {
	font-size: 0.95em;
}


.widget_mphb_search_availability_widget .mphb_widget_search-form{
	display: none;
}

.mphb_sc_search-form{
	border: 1px solid #ddd;
	border-radius: 8px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	position: fixed;
	z-index: 9999;
	box-shadow: 0 5px 25px rgba(0, 0, 0, 0.1);
	transition: transform 0.3s ease-in-out, opacity 0.3s;
	background-color: #fff;
	width: 100%;
	height: 100%;
	bottom: 0;
	right: 0;
	border-radius: 0;
	transition: transform 0.3s ease-in-out;
	padding: 40px;
	padding-top: 80px;
	margin: 0px
}

.mphb_sc_search-form input[type='text'].mphb-datepick.is-datepick {
	border-radius: 35px;
	height: 50px;
	padding: 0px 15px;
	border: 1px solid black;
}

.mphb_sc_search-form input, .mphb_sc_search-form select {
	max-width: 100%;
	border-radius: 35px;
	border: 1px solid black;
	padding: 0px 15px;
	font-size: 17px;
}

.mphb_sc_search-guests-group{
	margin-top: 15px;
}

.mphb_sc_search-form.minimized {
		transform: translateY(100%);
		transform: translateY(calc(100% - 0px));
		opacity: 0;
		pointer-events: none;
}

#mphb-mobile-search-header{
	display: flex;
	width: 100%;
	justify-content: space-between;
	padding: 10px;
	background: #e6e6e6;
	position: absolute;
	top: 0px;
	left: 0px;
	
}


#mphb-mobile-search-header h3{
	margin: 0px;
}

.mphb_sc_search-form .mphb_sc_search-submit-button-wrapper input[type="submit"], .button {

	margin-top: 0px;
	padding: 15px 5px;
	font-size: 20px;
	border-radius: 50px;
	width: 100%;
}


.page-id-3185 .top-description,
.team-building-p{
		padding: 0px 30px;
		text-align: center;
	}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .mphb-button{
	margin-top: 0px;

}

.mphb_sc_search-wrapper {
	position: relative;
}

.mphb_sc_search-wrapper .mphb-mobile-search-button{
display: flex
;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 10px 15px;
	background-color: #b47d4c;
	border: 1px solid #ddd;
	border-radius: 30px;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
	cursor: pointer;
	transition: all 0.3s ease;
	font-size: 16px;
	color: #ffffff;
	margin: 0px 0px;
	
}

.mphb_sc_search-wrapper .mphb-mobile-search-button span{
	margin-left: 5px;
}

.wp-block-image img
{
	box-shadow: none;
}

.mphb_sc_search-form.mobile p{
	text-align: center;
}

.page-id-25 .site-content {
	padding-top: 9rem !important;
	/* margin-top: 70px; */
}

@media (max-width: 768px) {
	.home #n8n-chat-toggle {
		bottom: 0px;
		right: 0px;
		position: relative;
	}
}


.home .home-header-buttons{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	padding: 0px 0Px;
	margin: 50px 0px;
}

.home .mphb_sc_search-form {
	margin: 0px !important;
}



.home #mphb-mobile-search-close {
	display: inline-block;
	background: transparent;
	color: #b47d4c;
	border: 0px solid;
	border-color: transparent;
	border-radius: 0px;
	font-size: 12px;
	font-size: 32px;
	text-transform: capitalize;
	line-height: 1.2;
	padding: 0px 15px;
	font-weight: 600;
	-webkit-transition: all .3sease;
	transition: all .3sease;
	text-align: center;
	letter-spacing: 1px;
	font-weight: 100;
}

.home .mphb_sc_search-submit-button-wrapper input[type="submit"]:hover{
	border-color: #b47d4c;
	background: #ffffff;
	color: #b47d4c;
}

.home  .mphb_sc_search-submit-button-wrapper {

	padding: 0px;
	margin-top: 70px;
}

.home .home-chat{
/*	position: relative !important;
display: flex !important;
z-index: 10 !important;*/
}


.home .slick-arrow:hover {
	background: transparent;
}


.page-template-template-page-with-sidebar .site-content {
	padding-top: 9rem;
}

.mphb_sc_search_results-wrapper .mphb-recommendation-total-value span[class*="currency"]::after {
	top: -7px;
	font-size: 17px !important;
	left: 0px
}

.mpa_service-template-default.single-mpa_service ul.mpa-service-attributes {
	display: flex
;
	justify-content: space-around;
	margin-top: 30px;
	font-size: 13px;
	font-weight: 600;
	margin-left: -30px;
	margin-right: -30px;
	padding-left: 0px;
	list-style: none;
}

.mpa_service-template-default.single-mpa_service .wpforms-container{
	background: #b47d4c1c;
	padding: 15px;
}

.mpa_service-template-default.single-mpa_service .wpforms-container button[type=submit]:not(:hover):not(:active){
background-color: #b47d4c;
width: 150px;
}
.mpa_service-template-default.single-mpa_service ul .mpa-attribute-prix {
	text-align: left;
}

.mpa_service-template-default.single-mpa_service .entry-content{
	padding: 0px 30px;
	line-height: 25px;
	letter-spacing: 1px;
}


.mpa_service-template-default.single-mpa_service .ulmpa-service-attributes  {
	margin-left: -30px;
	margin-right: -30px;
}


.mpa_service-template-default.single-mpa_service  .site-content {
	padding-top: 0px;
	padding-bottom: 5.625rem;
	padding-left: 0px;
	padding-right: 0px;
	overflow: hidden;
}

.mpa_service-template-default.single-mpa_service h1{
	position: absolute;
	bottom: 30px;
	text-align: center;
	width: 100%;
	color: white;
}

	.mpa_service-template-default.single-mpa_service h1:after {
	content: '';
	position: absolute;
	height: 1px;
	width: 50%;
	background: linear-gradient(90deg, transparent, #ffffff, transparent);
	left: 0px;
	bottom: 0px;
	left: 25%;
}
/* ... existing styles ... */

/* End SideBar*/

/* Responsive adjustments */
@media (min-width: 960px) {
	
	.home .mphb-room-types-wrapper.slick-initialized{
		padding: 0px;
	}
	
	.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type {
		padding: 1.5rem !important;
		width: 48%;
		float: left;
		margin: 1%;
	}
	
	
	.mpa_service-template-default.single-mpa_service  .site-content {
		padding-top: 0px;
		padding-bottom: 5.625rem;
		padding-left: 0px;
		padding-right: 0px;
		margin-top: -120px;
		overflow: hidden;
	}
	
	.mpa_service-template-default.single-mpa_service .entry-header-wrapper{
		position: relative
	}
	
	.mpa_service-template-default.single-mpa_service .entry-header-wrapper .post-thumbnail {
		max-width: none;
		max-height: 70vh;
		overflow: hidden;
	}
	
	.mpa_service-template-default.single-mpa_service  .post-thumbnail img {
		height: auto;
		max-width: 100%;
		width: 100%;
	}
	
	.mpa_service-template-default.single-mpa_service  .post-thumbnail:after {
		content: '';
		position: absolute;
		height: 100%;
		width: 100%;
		background: linear-gradient(0deg, #00000085, transparent);
		left: 0px;
		bottom: 0px;
		left: 0px;
	}
	
	.mpa_service-template-default.single-mpa_service h1{
		position: absolute;
		top: 55vh;
		z-index: 1;
		width: 100%;
		text-align: center;
		color: white;
		font-size: 35px;
		padding-bottom: 7px;
		left: 0px;
	}
	
	.mpa_service-template-default.single-mpa_service .site-branding .dark-logo {
		display: none;
	}
	
	.mpa_service-template-default.single-mpa_service ul.mpa-service-attributes{
		display: flex;
		justify-content: space-around;
		margin-top: 70px;
		font-size: 18px;
		font-weight: 600;
	}
	
	.mpa_service-template-default.single-mpa_service h1:after {
		content: '';
		position: absolute;
		height: 1px;
		width: 50%;
		background: linear-gradient(90deg, transparent, #ffffff, transparent);
		left: 0px;
		bottom: 0px;
		left: 25%;
	}
	
	.home .mphb_sc_search-submit-button-wrapper {
		padding: 0px;
		margin-top: 0px;
	}
	
	.page-activites .mpa-grid-column {
		width: 50% !important;
		padding-bottom: 70px !important;
	}
	
	.mpa_service.type-mpa_service:nth-child(3) .loop-service-footer .mpa-post-title, .mpa_service.type-mpa_service:nth-child(6) .loop-service-footer .mpa-post-title {
	width: 100%;
	}	
	
	.mpa_service.type-mpa_service:nth-child(3) .loop-service-content, .mpa_service.type-mpa_service:nth-child(6) .loop-service-content {
		margin-left: 0px;
		margin-right: 0px;
	}
	
	.mpa_service.type-mpa_service:nth-child(3) .loop-service-footer .mpa-post-title, .mpa_service.type-mpa_service:nth-child(6) .loop-service-footer .mpa-post-title {
		width: auto !important;
		top: 0px;
		right: 20px;
		left: 20px;
		margin-left: 0px;
	}
	
	.mphb_sc_search-submit-button-wrapper{
		max-width: 150px;
		
	}
	
	.mphb_sc_search-submit-button-wrapper .button {
		border-radius: 30px !important;
		width: 100% !important;
		margin-top: 15px !important;
		margin-left: -35px !important;
	}
	
	.mphb_sc_search-form  label {
		font-size: 10px;
		color: #919291;
	}
	
	.mphb_sc_search-form  p {
		text-align: center;
	}
	
	.mphb_sc_search-form select {
		height: 40px;
		background-position :right .9em top 13px;
		border: 1px solid #b47d4c;
	}
	
	
	.mphb_sc_search-form  input[type='text'].mphb-datepick.is-datepick {
		background-position: right 0.9em top 10px;
		opacity: 1;
	}
	
	.mphb_sc_search-form input[type='text'].mphb-datepick.is-datepick {
		border-radius: 35px;
		height: 40px;
		padding: 0px 15px;
		border: 1px solid black;
		opacity: 1;
		border: 1px solid #b47d4c;
	}
	
	.home .mphb_sc_search-form {
		display: flex;
		flex-direction: row;
		position: relative;
		justify-content: space-evenly;
		border: 2px solid #b47d4c;
		background: white;
		background: #fffcf7;
	}
	
	.mphb_sc_search-guests-group p {
		font-size: 15px;
		line-height: 25px;
		width: 80px;
		text-align: center;
	}
	
	.home .home-header-buttons {
		display: block;
		flex-direction: row;
		justify-content: space-between;
		padding: 0px 15Px;
		margin: 50px 0px;
		width: 100%;
		margin-left: auto;
		margin-right: auto;
		margin-top: -140px;
		margin-bottom: -50px;
	}
	
	.home #n8n-chat-toggle {
		display: flex;
	}
	
	.home-chat{
	/*	display: none !important;
		opacity: 0;*/
	}
	
	.footer-widgets-wrapper #n8n-chat-toggle {
		display: none;
	}
	
	.home .mphb_sc_search-form > p.mphb-required-fields-tip {
		display: none;
	}
	
	.home .mphb_sc_search-dates-group{
		width: 40%;
		display: flex;
		justify-content: space-between;
		margin-left: 25px;
	}
	
	.home .mphb_sc_search-guests-group{
		width: 40%;
		display: flex;
		justify-content: space-evenly;
		margin-top: 0px;
		
	}
	
	.mphb_sc_search-form.minimized {
		transform: none;
		transform: none;
		opacity: 1;
	pointer-events: auto;
	}
	
	.mphb_sc_search-form {
		padding: 0px;
		padding-top: 10px;
		margin: 0px;
		border-radius: 100px;
	}
	
	.mphb_sc_search-wrapper .mphb-mobile-search-button {
	display: none !important;}
	
	#mphb-mobile-search-header {
		display: none;
	}
	
	.mphb_sc_search-submit-button-wrapper{
		max-width: 200px !important;
	}
	
	.mphb-mobile-search-button-wrapper{
		display: none;
	}
	.content-area.with-sidebar .site-main {
		max-width: none;
		width: 100%;
	}
	
	.content-area.with-sidebar  {
		max-width: 100%;
		width: 100%;
	}
	
.main-sidebar {
		width: 560px;
	}
	
	.single-mphb_room_type .site-content .post-thumbnail.mphb-single-room-type-post-thumbnail {
		margin: 0px 0px;
		max-width: none;
		margin-left: -50px;
		margin-right: -50px;
		height: 80vh;
		overflow: hidden;
		margin-bottom: 70px;
	}
	
	.single-mphb_room_type .site-content h1.mphb-room-type-title {
		position: absolute;
		top: 65vh;
		z-index: 1;
		width: 100%;
		text-align: center;
		color: white;
		font-size: 35px;
		padding-bottom: 7px;
	}
	
	.single-mphb_room_type .site-content .mphb-regular-price {
		margin: 0;
		font-size: 30px;
		font-size: 1.875rem;
		color: #222222;
		position: absolute;
		top: 80vh;
		text-align: center;
		/* width: 100%; */
		color: white;
		right: 0px;
		transform: translate(0px, -100%);
	}
	
	.single-mphb_room_type .site-content .mphb-regular-price strong{
		display: none;
	}
	
	.single-mphb_room_type  .post-thumbnail img {
		height: auto;
		max-width: 100%;
		width: 100%;
	}
	

	
	body.page-has-post-thumbnail .entry-header-background img {
		transform: translate(0%, 0%);
	}
	
	.site-header .site-header-wrapper {

		padding: 15px;
	}
	
	.menu-toggle-btn .menu-text {
		font-size: 12px;
		font-weight: 500;
		color: #ffffff;
	}
	
	.header-social-menu .social-menu a {
		font-size: 15px;
		color: #ffffff;
		text-transform: uppercase;
	}
	
	.header-social-menu .social-menu .menu-item:nth-child(2) a {

		background: #b47d4c;
		padding: 10px 25px;
	}
	
	.header-social-menu .social-menu .menu-item:nth-child(2) a:hover {
		color: #b47d4c;
		background: #FFF;
		transform: scale(1.1);
	}
	
	.front-page-widget-area .widget_mphb_search_availability_widget .mphb_widget_search-submit-button-wrapper .button:hover {
		background: #b47d4c54 !important;
		color: #b47d4c;
	}
	
	.popup-menu-close:hover{
		border-color: #ffffff;
		background: #ae794a;
	}
	
.section-home-restaurant figure,
.section-home-bar figure{
	height: auto;
	overflow: hidden;
}
	
	body.absolute-menu .site-header {
		position: absolute;
	background: linear-gradient(180deg, black 0%, transparent 100%);
	height: 300px;
	}
	
	.header-social-menu .social-menu a {
		color: #ffffff;
		text-transform: uppercase;
	}
	
	.header-social-menu,.menu-toggle-btn{
		width: 200px;
	}
	
	#header-social-menu{
		
	}
	.site-branding .custom-logo {
		position: relative !important;
		width: 100%;
		left: auto;
		top: -150px;
		background: transparent;
	}
	
	.site-branding .custom-logo {
		max-width: 200px;
	}
	
	.site-branding .logo-wrapper a{
		position: absolute;
		left: 50%;
		transform: translate(-50%, 50%);
		margin-top: 20px;
	}
	
	.popup-menu-close {
		right: 10px;
	}
	
	
	
	.menu-toggle-btn .line {
		background-color: #ffffff;
	}
	
	.header-social-menu .social-menu{
		flex-direction: row-reverse;
		display: none;
	}
	.luviana-front-page-header .child-pages-list .child-page-thumbnail video {
		max-width: none;
		width: 105vw;
	}
	
	.home .mpa-services-list-shortcode .mpa-posts-loop p {
		font-size: 13px;
		margin-bottom: 20px;
		line-height: 20px;
		letter-spacing: 1px;
	}
	
	.luviana-front-page-header .fp-slider-video-controls {
		max-width: calc(1170px + 100px);
		position: absolute;
		left: 0;
		right: 15px;
		margin: auto;
		bottom: 5px;
		padding: 0 50px;
		z-index: 10;
		text-align: right;
	}
	
	
	.site-branding .dark-logo {
		display: block;
	}
	
.front-page-widget-area {
		position: relative;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	
.widget_mphb_search_availability_widget {
		position: absolute !important;
		width: 80%;
		left: 50%;
		top: -50px;
		background: #ffffff;
		transform: translate(-50%, -50%);
	}
	
	.luviana-front-page-header .fp-slider-video-controls button{
		bottom: 30px;
	}
	
	.luviana-front-page-header .fp-slider-video-controls .pause {
		left: 0px;
	}
	
	.luviana-front-page-header .fp-slider-video-controls .mute {
		left: 40px;
	}
	
	.section-home-restaurant .wp-block-getwid-section__inner-content{
		display: flex	
	}
	
	
	
	
	
	.section-home-restaurant .wp-block-image,
	.section-home-bar .wp-block-image
	{
		flex:1;
		padding: 15px;
	}
	
	.home .mpa-services-list-shortcode {
		margin: 0 -45px;
		padding: 0 0px;
		min-height: 200px;
	}
	
	.mphb-room-types .mphb-room-types-wrapper .type-mphb_room_type{
		max-width: 50%;
	}
	
	.home	.mphb-room-types .mphb-room-types-wrapper .type-mphb_room_type{
		max-width: 100%;
	}
	
	
	
	.section-home-bar .wp-block-getwid-section__inner-content{
		display: flex;
		flex-direction: row-reverse;
	}
	.front-page-widget-area .widget_mphb_search_availability_widget .mphb_widget_search-form {
		padding: 0px 15px 10px 15px !important;
	}
	
	.front-page-widget-area .widget_mphb_search_availability_widget label {
		color: #b47d4c;
		font-size: 14px;
		font-size: 0.875rem;
		padding-top: 10px;
		padding-bottom: 0px;
		margin-bottom: 0px;
	}
	
	.front-page-widget-area .widget_mphb_search_availability_widget {
		padding: 0;
		border-radius: 10px;
	}
	
	.front-page-widget-area .widget_mphb_search_availability_widget .mphb_widget_search-submit-button-wrapper .button {
		border-radius: 0px 10px 10px 0px !important;
	}
	
	.front-page-widget-area .widget_mphb_search_availability_widget .mphb-search-widget-default-fields{

		padding-right: 200px;
	}
	
	.section-home-restaurant-body,
	.section-home-bar-body
	{
		flex:1;
	}
	
	
	
	.section-home-restaurant-body .wp-block-getwid-section__inner-content,
	.section-home-bar-body .wp-block-getwid-section__inner-content
	{
		flex-direction: column;
	}
	
		
	.section-home-restaurant-body h2.card-title,
	.section-home-bar-body h2.card-title{
		font-size: 45px;
		line-height: 50px;
		color: #b47d4c;
		position: relative;
		width: 100%;
		background: transparent;
		top: 0px;
		padding-bottom: 20px;
		padding-top: 20px;
	}
	
	.section-home-restaurant-body h2.card-title:before,
	.section-home-bar-body h2.card-title:before{
		content: '';
		position: absolute;
		height: 1px;
		width: 50%;
		background: linear-gradient(90deg, transparent, #b47d4c, transparent);
		left: 0px;
		top: 130px;
		left: 25%;
	}
	
	.section-home-restaurant-body p,
	.section-home-bar-body p{
		padding: 10px 100px;
		line-height: 30px;
	}
	
	.home .rooms-title h2 {
		color: #b47d4c;
	}
	
	.home .rooms-title {
		position: relative;
		padding-top: 15px;
		/* margin-bottom: -110px !important; */
		z-index: 1;
		background: transparent;
		margin: 30px;
		height: 100px;
		position: relative;
		width: calc(100% - 60px);
		top: 0px;
	}
	
	.luviana-front-page-header {
		background: transparent;
		padding-bottom: 120px;
	}
	
	.home .mphb_sc_rooms-wrapper.is-style-style-3 .type-mphb_room_type .mphb-room-type-title {
		min-height: 35px;
		line-height: 1.25;
	}
	
	.home .mphb_sc_rooms-wrapper.is-style-style-3 .type-mphb_room_type .room-description-wrapper .room-booking-details {
		width: 100%;
		padding: 0;
		margin: auto 0 0;
		border: 0;
		display: flex
	;
		flex-flow: row;
		align-items: center;
		/* flex-wrap: nowrap; */
		/* align-content: space-between; */
		/* flex-wrap: nowrap; */
		width: 100%;
		/* align-content: space-between; */
		flex-wrap: wrap;
		justify-content: center;
		margin-top: 20px;
	}
	
	.home .mpa-services-list-shortcode .mpa-posts-loop .mpa-loop-post-wrapper>*:last-child {

		height: 280px;
	}
	
	
	
	
	body.page-has-post-thumbnail .entry-header-background{
		width:100%;
		max-height: 70vh;
		overflow: hidden;
	}
	
	.bar-terrasse-page .bar.type-bar .wp-block-post-excerpt,
	.restaurant-page .restaurant.type-restaurant .wp-block-post-excerpt{
		padding-left: 0px;
		padding-right: 0px;
		flex: 1;
		display: flex;
		align-content: center;
		flex-wrap: wrap;
		justify-content: center;
		padding-top: 70px;
	}
	
	.restaurant-page .restaurant.type-restaurant .entry-header-wrapper, .bar-terrasse-page .bar.type-bar .entry-header-wrapper {
		margin-bottom: 2rem;
		font-size: 45px;
		line-height: 40px;
		width: 50%;
		background: transparent;
		top: 15%;
		padding-bottom: 0px;
		text-align: center;
		right: 0px;
	}
	
	.restaurant-page .restaurant.type-restaurant .wp-block-group__inner-container,
	.bar-terrasse-page .bar.type-bar .wp-block-group__inner-container
	{
		display: flex
	}
	

	.bar-terrasse-page .bars-section ul > li:nth-child(2)  .wp-block-group__inner-container,
	.restaurant-page .restaurants-section ul > li:nth-child(2)  .wp-block-group__inner-container

	{
		flex-direction: row-reverse;
	}
	
	.bar-terrasse-page .bars-section ul > li:nth-child(2) .entry-header-wrapper,
	.restaurant-page .restaurants-section ul > li:nth-child(2)  .entry-header-wrapper {
			left: 0px;
	}
	
	.bar-card p, .restaurant-page .restaurant.type-restaurant p {
		padding: 15px 70px;
		line-height: 24px;
		padding-top: 0px;
		letter-spacing: 1px;
	}
		
	.restaurant-page .restaurant.type-restaurant .entry-header .wp-block-group__inner-container,
	.bar-terrasse-page .bar.type-bar .entry-header .wp-block-group__inner-container
	{
		display: flex;
		flex-direction: column;
	}
	
	.bar-terrasse-top-links {
		margin-top: 20px !important;
		margin-bottom: 50px !important;
	}
	
	p.restaurant-page .top-description,
	p.bar-terrasse-page .top-description {
		padding: 0px 200px;
		line-height: 20px;
		letter-spacing: 1px;
	}
	
	.section-chef .wp-block-getwid-section__inner-content{
		display: flex
	}
	
	.restaurant-page .section-chef {
		margin: 0px 40px;
		background: transparent;
		padding-bottom: 0px;
		margin-top: 20px;
		margin-left: auto;
		margin-right: auto;
		max-width: 1100px;
		padding: 0px 40px;
		/* margin: 1.5rem auto; */
	}
	
	.restaurant-page .section-chef figure {
		flex: 1;
	}
	
	.restaurant-page .section-chef-content{
		flex: 1;
	}
	
	
	.restaurant-page .section-chef p {
		font-size: 10px;
		padding: 15px 20px;
		line-height: 15px;
		padding: 0px 70px;
		line-height: 24px;
		font-size: 12px;
		padding-top: 0px;
		letter-spacing: 1px;
		margin-top: 40px;
	}
	
	.section-chef-content .wp-block-getwid-section__inner-content{
		flex-direction: column;
	}
	
	
	.restaurant-page .restaurant.type-restaurant .wp-block-post-featured-image,
	.bar-terrasse-page .bar.type-bar .wp-block-post-featured-image {
		flex: 1;
		margin: 0em  !important;
		
	}
	
	.bar-terrasse-page .bars-section ul > li:last-child .entry-header-wrapper {
		position: absolute;
		width: 50%;
		top: 15%;
		padding-bottom: 0px;
		padding-top: 0px;
		margin-top: 0px;
	}
	
	.restaurants-section h2:before, .bar-card h2:before {

		bottom: 10px;
		top: auto;
	}
	
	.bar-terrasse-page .bar.type-bar  .wp-block-group.entry-header,
	.restaurant-page .restaurant.type-restaurant .wp-block-group.entry-header{
		display: flex;
		flex-direction: column
	}
	
	.wp-block-group.bar-card h2 a,
	.wp-block-group.restaurant-card h2 a
	 {
		color: #c89d7a;
		font-size: 40px;
	}
	
	
	.restaurant-image-header img{
		margin-left: auto;
		margin-right: auto;
		display: block;
		box-shadow: none;
	}
	
	
	.bar-card .bar-subtitle,
	.restaurant-card .restaurant-subtitle
 {
		font-size: 2rem !important;
		font-weight: 500 !important;
		font-style: normal  !important;
		margin-top: 0 !important;
		margin-bottom: 1rem !important;
		color: #c89d7a !important;
		line-height: 1.3 !important;

	}
	
	body.page-has-post-thumbnail .entry-header-wrapper .entry-title {
		font-size: 50px;
	}
	
	.bar-terrasse-top-links:before { 
		bottom: 0px;
		top: auto
	}
	.section-bar-chef p {
		margin-bottom: 0;
		padding: 10px 25px;
		font-size: 16px;
		padding: 0px 100px;
		letter-spacing: 1px;
		margin-top: 10px;
	}
	
	.footer-widgets-wrapper {
		position: relative;
		padding-top: 200px;
	}
	
	.footer-widgets-wrapper .widget-area:nth-child(1){
		position: absolute;
		left: calc(50% - 180px);
		top: 90px;
	}
	
	.footer-widgets-wrapper .widget-area:nth-child(1) img {
		height: auto;
		max-width: 100%;
		width: 300px;
	}
	
	.footer-widgets-wrapper .widget-area:nth-child(2) .wp-block-heading {
		font-family: "Jost";
		margin-bottom: 20px;
		color: #b47d4c;
		font-size: 40px;
		margin-bottom: 0px;
		font-family: "Mrs Saint Delafield";
		margin-top: -5px;
	}	
	
	.footer-widgets-wrapper:before {
		content: '';
		position: absolute;
		height: 1px;
		width: 100%;
		background: linear-gradient(90deg, transparent, #b47d4c, transparent);
		left: 0px;
		top: 190px;
		left: 0%;
	}
	
	.mphb-room-types-wrapper{
		display: flex;
		flex-wrap: wrap;
	}
	
	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper {
		width: 100% !important;
	}
	
	.mphb_sc_rooms-wrapper .type-mphb_room_type {
		-ms-flex-wrap: nowrap;
		flex-wrap: wrap;
		flex-direction: column;
	}
	.mphb_sc_rooms-wrapper .type-mphb_room_type {
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		flex: 50%;
	}
		.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper {
		width: 100%;
	}
	
 .type-mphb_room_type .room-images-wrapper .post-thumbnail  img {
		height: auto !important;
		max-width: 100%;
	}
	
	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-wrapper {
		width: 100% !important;
	}
	
	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-inner-wrapper {
		flex-direction: column !important;
	}

	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-inner-wrapper .room-booking-details {
		width: 100% !important; 
		padding-left: 0px !important;
		margin-left: 0px !important;
		border-left: 1px solid #ededed;
	} 
	.mphb_sc_rooms-wrapper .type-mphb_room_type + .type-mphb_room_type {
		margin-top: 0rem !important;
	}
	
	
	.popup-menu {
		text-align: center;
	}
	
	.popup-menu-content {
		display: flex;
		flex-direction: row;
		justify-content: center;
		height: 100%;
		color: white;
		align-items: center;
		align-content: stretch;
		flex-wrap: wrap;
		width: 100%;
		justify-content: space-around;
		padding-top: 100px;

	}
	.popup-menu-overlay .logo-wrapper{
		position: absolute;
		top: 0px;
		left: calc(50% - 90px);
	}
	
	.popup-menu-content .logo-wrapper .dark-logo img {
		max-width: 160px;
	}
	
	.theme-social-menu a {
		color: #b38c70;

	}
	
	.popup-menu a {
		color: #ffdab9;
	}
	
	.popup-menu-container::after {
		content: '';
	position: absolute;
	height: 50%;
	width: 2px;
	background: linear-gradient(180deg, transparent, #b47d4c, transparent);
	left: 0px;
	top: calc(25% + 55px);
	left: 50%;
	}
	
	.popup-menu-container::before{
		content: '';
		position: absolute;
		width: 100%;
		background: linear-gradient(181deg, transparent, #b47d4c, transparent);
		bottom: 100px;
		top: auto;
		left: 0px;
		right: 0px;
		height: 1px;
	}
	
	.popup-navigation .popup-menu {
		text-align: right;
		margin-right: 50px;
	}
	
	.popup-secondary-navigation .popup-menu {
		text-align: left;
		margin-left: 50px;
	}
	
	.popup-navigation::after {
		display: none;
	}
	
	
	.luviana-front-page-header .child-pages-list .child-page-thumbnail {
		max-height: 100vh;
	}
	
	.popup-secondary-navigation{
		position: relative;
		flex: 1;
	}
	
	.popup-navigation{
		flex: 1;
	}
	
	.popup-menu-overlay.active .popup-secondary-navigation #footer-menu li {
		opacity: 1;
	}
	
	.popup-menu-content{
		position: relative
	}
	
	.popup-menu li {
		margin: 10px 0;

	}
	

	.popup-menu-overlay {
		background-color: rgb(0 0 0 / 89%);
	}
	
	.popup-menu-content .logo-wrapper .white-logo {
		display: block;
	}
	
	.popup-menu-content .logo-wrapper .dark-logo {
		display: none;
	}
	
	.popup-menu-content .logo-wrapper .white-logo img {
		height: auto;
		max-width: 180px;
	}	
	
	
	.popup-menu-overlay .popup-socials {
		margin-top: 3rem;
		text-align: center;
		position: absolute;
		bottom: 15px;
	}
	
	
}

/* ================================================================
   CHAMBRES & SUITES — LUXURY REDESIGN
   Horizontal card layout with alternating image/content sides
   ================================================================ */

/* ------ Page wrapper ------ */
.page-id-rooms .entry-content,
.mphb_sc_rooms-wrapper {
	max-width: 1140px;
	margin: 0 auto;
	padding: 0 20px;
}

/* ------ Room card: horizontal split ------ */
.mphb_sc_rooms-wrapper .type-mphb_room_type {
	display: flex !important;
	flex-direction: row !important;
	align-items: stretch !important;
	background: #fff !important;
	border: none !important;
	box-shadow: 0 8px 40px rgba(0,0,0,0.08) !important;
	padding: 0 !important;
	margin-bottom: 0px !important;
	overflow: hidden;
	border-radius: 0px;
	transition: box-shadow 0.4s ease, transform 0.4s ease;
	position: relative;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type:hover {
	box-shadow: 0 16px 60px rgba(0,0,0,0.14) !important;
	transform: translateY(-3px);
}

/* Alternating: odd rooms → image left, even rooms → image right */
.mphb_sc_rooms-wrapper .type-mphb_room_type:nth-child(even) {
	flex-direction: row-reverse !important;
}

/* ------ Image side ------ */
.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper {
	width: 55% !important;
	flex: 0 0 55% !important;
	padding: 0 !important;
	margin: 0 !important;
	overflow: hidden;
	position: relative;
	min-height: 380px;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .mphb-room-type-images,
.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .post-thumbnail,
.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .mphb-flexslider,
.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .flex-viewport,
.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper ul.slides,
.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper ul.slides li,
.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .slick-list,
.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .slick-track,
.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .slick-slide {
	height: 100% !important;
	min-height: 380px;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper img {
	width: 100% !important;
	height: 380px !important;
	object-fit: cover !important;
	object-position: center !important;
	display: block;
	transition: transform 0.6s ease;
}

/* ------ Content side ------ */
.mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-wrapper {
	flex: 1 1 auto !important;
	width: auto !important;
	padding: 40px 44px !important;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
	background: #fff;
}

/* Room number badge */
.mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-wrapper::before {
	counter-increment: room-counter;
	content: "0" counter(room-counter);
	position: absolute;
	top: 28px;
	right: 32px;
	font-family: "DM Serif Display", serif;
	font-size: 52px;
	color: #b47d4c;
	opacity: 0.12;
	line-height: 1;
	pointer-events: none;
}

.mphb_sc_rooms-wrapper {
	counter-reset: room-counter;
}

/* ------ Title ------ */
.mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-title,
.mphb_sc_rooms-wrapper .type-mphb_room_type .entry-title {
	font-family: "DM Serif Display", serif !important;
	font-size: 26px !important;
	color: #1a1a1a !important;
	margin: 0 0 8px 0 !important;
	line-height: 1.25;
	max-width: 100% !important;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-title a,
.mphb_sc_rooms-wrapper .type-mphb_room_type .entry-title a {
	color: #1a1a1a !important;
	text-decoration: none;
	transition: color 0.25s;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-title a:hover,
.mphb_sc_rooms-wrapper .type-mphb_room_type .entry-title a:hover {
	color: #b47d4c !important;
}

/* Gold underline accent */
.mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-title::after {
	content: "";
	display: block;
	width: 42px;
	height: 2px;
	background: #b47d4c;
	margin: 10px 0 16px;
}

/* ------ Excerpt ------ */
.mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-excerpt,
.mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-inner-wrapper > p {
	font-size: 13px !important;
	color: #666 !important;
	line-height: 1.8;
	margin: 0 0 20px !important;
}

/* ------ Attributes row ------ */
.mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-loop-room-type-attributes {
	display: flex !important;
	flex-wrap: wrap;
	gap: 6px 18px;
	padding: 14px 0 !important;
	margin: 0 0 18px !important;
	border-top: 1px solid #f0e8df;
	border-bottom: 1px solid #f0e8df;
	list-style: none;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-loop-room-type-attributes li {
	margin: 0 !important;
	padding: 0 0 0 22px !important;
	font-size: 12px !important;
	color: #555;
	letter-spacing: 0.02em;
	line-height: 1.6;
}

/* ------ Price ------ */
.mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-inner-wrapper .mphb-regular-price {
	position: static !important;
	max-width: none !important;
	text-align: left !important;
	margin: 0 0 22px !important;
	font-size: 24px !important;
	font-family: "DM Serif Display", serif;
	color: #b47d4c !important;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-regular-price .mphb-price-period {
	font-size: 13px !important;
	font-family: "Jost", sans-serif;
	color: #999 !important;
}

/* ------ Buttons ------ */
.mphb_sc_rooms-wrapper .type-mphb_room_type .room-booking-details {
	display: flex !important;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
	justify-content: flex-start !important;
	margin-top: 4px;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-view-details-button-wrapper,
.mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-to-book-btn-wrapper {
	margin: 0 !important;
	display: inline-flex !important;
}

/* "View Details" — outlined */
.mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-view-details-button {
	background: transparent !important;
	color: #b47d4c !important;
	border: 1px solid #b47d4c !important;
	padding: 10px 22px !important;
	font-size: 11px !important;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	font-weight: 600;
	transition: all 0.3s ease;
	border-radius: 0;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-view-details-button:hover {
	background: #b47d4c !important;
	color: #fff !important;
}

/* "Reserve" — filled */
.mphb_sc_rooms-wrapper .type-mphb_room_type .button:not(.mphb-view-details-button),
.mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-reserve-btn {
	background: #b47d4c !important;
	color: #fff !important;
	border: 1px solid #b47d4c !important;
	padding: 10px 22px !important;
	font-size: 11px !important;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	font-weight: 600;
	transition: all 0.3s ease;
	border-radius: 0;
}

.mphb_sc_rooms-wrapper .type-mphb_room_type .button:not(.mphb-view-details-button):hover,
.mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-reserve-btn:hover {
	background: #9a6539 !important;
	border-color: #9a6539 !important;
}

/* ------ Tablet: 768–1023px → image top, content below ------ */
@media (min-width: 768px) and (max-width: 1023px) {
	.mphb_sc_rooms-wrapper .type-mphb_room_type,
	.mphb_sc_rooms-wrapper .type-mphb_room_type:nth-child(even) {
		flex-direction: column !important;
	}

	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper {
		width: 100% !important;
		flex: none !important;
		min-height: 0 !important;
	}

	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper img {
		height: 300px !important;
	}

	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .mphb-room-type-images,
	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .post-thumbnail,
	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .flex-viewport,
	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper ul.slides li,
	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .slick-list,
	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .slick-track,
	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .slick-slide {
		min-height: 0 !important;
		height: 300px !important;
	}

	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-wrapper {
		padding: 28px 30px !important;
	}
}

/* ------ Mobile: < 768px ------ */
@media (max-width: 767px) {
	.mphb_sc_rooms-wrapper .type-mphb_room_type,
	.mphb_sc_rooms-wrapper .type-mphb_room_type:nth-child(even) {
		flex-direction: column !important;
		margin-bottom: 32px !important;
	}

	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper {
		width: 100% !important;
		flex: none !important;
		min-height: 0 !important;
	}

	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper img {
		height: 220px !important;
	}

	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .mphb-room-type-images,
	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .post-thumbnail,
	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .flex-viewport,
	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper ul.slides li,
	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .slick-list,
	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .slick-track,
	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .slick-slide {
		min-height: 0 !important;
		height: 220px !important;
	}

	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-wrapper {
		padding: 22px 20px !important;
	}

	.mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-title {
		font-size: 20px !important;
	}

	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-booking-details {
		flex-direction: column;
		align-items: stretch;
	}

	.mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-view-details-button,
	.mphb_sc_rooms-wrapper .type-mphb_room_type .button:not(.mphb-view-details-button) {
		text-align: center;
		width: 100%;
	}

	.mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-wrapper::before {
		font-size: 36px;
		top: 16px;
		right: 18px;
	}
}

/* ================================================================
   HOMEPAGE ROOM CARDS — full-bleed photo redesign
   Scoped to .home only: the dedicated "Chambres & Suites" archive
   page keeps its own horizontal layout via the body:not(.home)
   "FINAL OVERRIDE" block further down. Photo fills the whole card;
   title/details/price/link sit in a bottom gradient scrim.
   ================================================================ */

/* !important throughout this block: WordPress's Customizer
   "Additional CSS" (a previous "uniform card height" fix, printed
   very late in <head>) sets .mphb-room-type / .slick-slide > div to
   height:100% with equal selector specificity to ours, so it wins
   ties on load order alone without !important. */
.home .mphb_sc_rooms-wrapper .type-mphb_room_type {
	position: relative !important;
	height: 460px !important;
	border-radius: 6px;
	overflow: hidden !important;
	background: #0c0a08;
	display: block !important;
}

.home .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
	flex: none !important;
}

.home .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .post-thumbnail,
.home .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper a {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	aspect-ratio: auto !important;
	margin: 0 !important;
}

.home .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	transition: transform 0.6s ease;
}

.home .mphb_sc_rooms-wrapper .type-mphb_room_type:hover .room-images-wrapper img {
	transform: scale(1.08);
}

/* Gradient scrim for text legibility over the photo */
.home .mphb_sc_rooms-wrapper .type-mphb_room_type::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(10, 8, 6, 0.9) 0%, rgba(10, 8, 6, 0.45) 38%, rgba(10, 8, 6, 0) 68%);
	pointer-events: none;
	z-index: 1;
}

/* .is-style-style-3 repeated to match (and, being declared later in
   the file, beat) the older same-specificity rule at "room-images-
   wrapper + room-description-wrapper" that still sets padding:15px
   and a white background for the old horizontal-card layout. */
.home .mphb_sc_rooms-wrapper.is-style-style-3 .type-mphb_room_type .room-images-wrapper + .room-description-wrapper,
.home .mphb_sc_rooms-wrapper.is-style-style-3 .type-mphb_room_type .room-description-wrapper,
.home .mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-wrapper {
	position: absolute !important;
	top: auto !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	height: auto !important;
	z-index: 2;
	width: 100% !important;
	padding: 26px 24px !important;
	background: none !important;
	margin: 0 !important;
	display: block !important;
	justify-content: flex-start !important;
}

/* No numbered watermark in this design — the photo carries the card */
.home .mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-wrapper::before {
	display: none;
}

.home .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-title,
.home .mphb_sc_rooms-wrapper .type-mphb_room_type .entry-title {
	color: #fff !important;
	font-family: "DM Serif Display", serif !important;
	font-size: 23px !important;
	line-height: 1.25;
	margin: 0 0 8px !important;
	max-width: 100% !important;
}

.home .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-title a,
.home .mphb_sc_rooms-wrapper .type-mphb_room_type .entry-title a {
	color: #fff !important;
}

.home .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-title::after {
	display: none;
}

.home .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-loop-room-type-attributes {
	display: flex !important;
	flex-wrap: wrap;
	gap: 4px 16px;
	padding: 0 !important;
	margin: 0 0 14px !important;
	border: none !important;
	list-style: none;
}

.home .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-loop-room-type-attributes li {
	margin: 0 !important;
	padding: 0 0 0 20px !important;
	font-size: 12px !important;
	color: rgba(255, 255, 255, 0.85) !important;
}

.home .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-loop-room-type-attributes li::before {
	color: #d8a86b !important;
}

.home .mphb_sc_rooms-wrapper .type-mphb_room_type .room-booking-details {
	display: flex !important;
	align-items: center;
	justify-content: space-between !important;
	gap: 12px;
	margin: 0 !important;
}

.home .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-regular-price {
	position: static !important;
	max-width: none !important;
	text-align: left !important;
	color: #fff !important;
	font-family: "DM Serif Display", serif;
	font-size: 20px !important;
	margin: 0 !important;
}

.home .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-regular-price .mphb-price-period {
	color: rgba(255, 255, 255, 0.75) !important;
}

.home .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-view-details-button-wrapper {
	margin: 0 !important;
}

.home .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-view-details-button {
	background: transparent !important;
	color: #fff !important;
	border: 1px solid rgba(255, 255, 255, 0.7) !important;
	padding: 9px 18px !important;
	font-size: 10px !important;
	letter-spacing: 1.4px;
	white-space: nowrap;
}

.home .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-view-details-button:hover {
	background: #fff !important;
	color: #1a1a1a !important;
	border-color: #fff !important;
}

/* Whole card is clickable via the photo link stretched over it; the
   view-details link stays on top (higher z-index) so it still works
   as its own target. */
.home .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper a {
	position: absolute;
	inset: 0;
	z-index: 1;
}

.home .mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-wrapper,
.home .mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-wrapper * {
	position: relative;
	z-index: 2;
}

@media (max-width: 1023px) {
	.home .mphb_sc_rooms-wrapper .type-mphb_room_type {
		height: 420px;
	}
}

@media (max-width: 767px) {
	.home .mphb_sc_rooms-wrapper .type-mphb_room_type {
		height: 380px;
	}

	.home .mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-wrapper {
		padding: 20px 18px !important;
	}

	.home .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-title {
		font-size: 20px !important;
	}

	.home .mphb_sc_rooms-wrapper .type-mphb_room_type .room-booking-details {
		flex-wrap: wrap;
	}
}

/* ================================================================
   ROOMS PAGE — FINAL OVERRIDE  (highest priority, appended last)
   Kills the 2-column flex: 50% grid and forces horizontal cards
   ================================================================ */

/* 1. Wrapper: single column, full width */
body:not(.home) .mphb-room-types-wrapper {
	display: block !important;
	flex-wrap: unset !important;
}

/* 2. Card: full-width horizontal flex row */
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type {
	display: flex !important;
	flex-direction: row !important;
	flex: 1 1 100% !important;
	width: 100% !important;
	max-width: 100% !important;
	flex-wrap: nowrap !important;
	overflow: hidden;
	margin-bottom: 40px !important;
	margin-top: 0 !important;
	background: #fff !important;
	box-shadow: 0 8px 40px rgba(0,0,0,0.08) !important;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type:nth-child(even) , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type:nth-child(even) {
	flex-direction: row-reverse !important;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type:hover , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type:hover {
	box-shadow: 0 16px 60px rgba(0,0,0,0.14) !important;
	transform: translateY(-3px);
}

/* 3. Image wrapper: fixed 55% width, fixed height */
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper {
	width: 55% !important;
	flex: 0 0 55% !important;
	min-width: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	min-height: 380px;
	overflow: hidden;
	position: relative;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper img, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper img,
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .post-thumbnail img , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper .post-thumbnail img {
	width: 100% !important;
	height: 380px !important;
	object-fit: cover !important;
	object-position: center !important;
	max-width: 100% !important;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .flex-viewport, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper .flex-viewport,
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper ul.slides, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper ul.slides,
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper ul.slides li , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper ul.slides li {
	height: 380px !important;
}

/* 4. Description wrapper: remaining 45% */
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-wrapper , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-description-wrapper {
	flex: 1 1 auto !important;
	width: auto !important;
	min-width: 0 !important;
	padding: 36px 40px !important;
	display: flex !important;
	flex-direction: column;
	justify-content: center;
	background: #fff;
}

/* 5. Inner wrapper: column layout */
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-inner-wrapper , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-description-inner-wrapper {
	display: flex !important;
	flex-direction: column !important;
	flex-wrap: nowrap !important;
	width: 100% !important;
}

/* 6. Booking details: full width, horizontal buttons */
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-inner-wrapper .room-booking-details , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-description-inner-wrapper .room-booking-details {
	width: 100% !important;
	padding-left: 0 !important;
	margin-left: 0 !important;
	border-left: none !important;
	display: flex !important;
	flex-direction: row !important;
	gap: 12px;
	flex-wrap: wrap;
	margin-top: 16px;
	justify-content: flex-start !important;
}

/* 7. Title styling */
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .entry-title, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .entry-title,
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-title , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-room-type-title {
	font-family: "DM Serif Display", serif !important;
	font-size: 26px !important;
	color: #1a1a1a !important;
	max-width: 100% !important;
	margin: 0 0 10px !important;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .entry-title a, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .entry-title a,
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-title a , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-room-type-title a {
	color: #1a1a1a !important;
	text-decoration: none;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .entry-title:after , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .entry-title:after {
	content: "";
	display: block;
	width: 42px;
	height: 2px;
	background: #b47d4c;
	margin: 10px 0 16px;
}

/* 8. Price: inline, gold */
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-regular-price , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-regular-price {
	position: static !important;
	max-width: none !important;
	text-align: left !important;
	font-size: 22px !important;
	color: #b47d4c !important;
	margin: 12px 0 !important;
}

/* 9. Attributes: horizontal flex with dividers */
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-loop-room-type-attributes , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-loop-room-type-attributes {
	display: flex !important;
	flex-wrap: wrap;
	gap: 4px 16px;
	padding: 12px 0 !important;
	margin: 0 0 14px !important;
	border-top: 1px solid #f0e8df;
	border-bottom: 1px solid #f0e8df;
	list-style: none;
}

/* 10. View details button */
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-view-details-button , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-view-details-button {
	background: transparent !important;
	color: #b47d4c !important;
	border: 1px solid #b47d4c !important;
	padding: 10px 20px !important;
	font-size: 11px !important;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	font-weight: 600;
	transition: all 0.3s;
}
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-view-details-button:hover , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-view-details-button:hover {
	background: #b47d4c !important;
	color: #fff !important;
}

/* 11. Book button */
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .button:not(.mphb-view-details-button) , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .button:not(.mphb-view-details-button) {
	background: #b47d4c !important;
	color: #fff !important;
	border: 1px solid #b47d4c !important;
	padding: 10px 20px !important;
	font-size: 11px !important;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	font-weight: 600;
	transition: all 0.3s;
}
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .button:not(.mphb-view-details-button):hover , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .button:not(.mphb-view-details-button):hover {
	background: #9a6539 !important;
	border-color: #9a6539 !important;
}

/* ------ Tablet override ------ */
@media (max-width: 1023px) {
	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type,
	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type:nth-child(even) , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type:nth-child(even) {
		flex-direction: column !important;
	}
	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper {
		width: 100% !important;
		flex: none !important;
		min-height: 0 !important;
	}
	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper img, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper img,
	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .post-thumbnail img , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper .post-thumbnail img {
		height: 280px !important;
	}
	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .flex-viewport, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper .flex-viewport,
	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper ul.slides li , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper ul.slides li {
		height: 280px !important;
	}
	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-wrapper , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-description-wrapper {
		padding: 24px 22px !important;
	}
}

/* ================================================================
   CHAMBRES & SUITES — FINAL POLISH V2
   Stronger premium styling and cleaner spacing rhythm
   ================================================================ */
body:not(.home) .mphb_sc_rooms-wrapper , body:not(.home) .mphb_sc_search_results-wrapper {
	max-width: 1220px;
	margin: 0 auto;
	padding: 14px 20px 40px;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type {
	border-radius: 18px !important;
	border: 1px solid rgba(180, 125, 76, 0.14) !important;
	box-shadow: 0 14px 44px rgba(16, 13, 9, 0.1) !important;
	background: linear-gradient(180deg, #ffffff 0%, #fffcf9 100%) !important;
	margin-bottom: 34px !important;
	transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type:hover , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type:hover {
	transform: translateY(-5px);
	border-color: rgba(180, 125, 76, 0.28) !important;
	box-shadow: 0 18px 54px rgba(16, 13, 9, 0.16) !important;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper {
	border-radius: 18px 0 0 18px;
	background: #f2ece4;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type:nth-child(even) .room-images-wrapper , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type:nth-child(even) .room-images-wrapper {
	border-radius: 0 18px 18px 0;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-wrapper , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-description-wrapper {
	padding: 20px 20px 20px  !important;
	gap: 10px;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .entry-title, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .entry-title,
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-title , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-room-type-title {
	font-size: 30px !important;
	line-height: 1.2;
	letter-spacing: 0.01em;
	margin-bottom: 6px !important;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .entry-title a, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .entry-title a,
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-title a , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-room-type-title a {
	transition: color 0.25s ease;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .entry-title a:hover, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .entry-title a:hover,
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-title a:hover , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-room-type-title a:hover {
	color: #a56f42 !important;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .entry-title:after, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .entry-title:after,
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-title:after , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-room-type-title:after {
	width: 58px;
	height: 3px;
	margin: 12px 0 18px;
	background: linear-gradient(90deg, #b47d4c 0%, #ddba93 100%);
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-inner-wrapper > p, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-description-inner-wrapper > p,
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-excerpt , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-room-type-excerpt {
	font-size: 14px !important;
	line-height: 1.85;
	color: #5d5853 !important;
	max-width: 66ch;
	margin-bottom: 16px !important;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-loop-room-type-attributes , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-loop-room-type-attributes {
	gap: 10px 20px;
	padding: 14px 0 !important;
	margin: 0 0 16px !important;
	border-top-color: rgba(180, 125, 76, 0.26);
	border-bottom-color: rgba(180, 125, 76, 0.26);
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-loop-room-type-attributes li , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-loop-room-type-attributes li {
	font-size: 12px !important;
	font-weight: 500;
	color: #3f3a35;
	padding-left: 20px !important;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-regular-price , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-regular-price {
	font-size: 29px !important;
	font-family: "DM Serif Display", serif !important;
	line-height: 1.15;
	margin: 10px 0 8px !important;
	color: #ab733f !important;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-regular-price .mphb-price-period , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-regular-price .mphb-price-period {
	font-size: 12px !important;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #8f877d !important;
	margin-left: 4px;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-booking-details , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-booking-details {
	margin-top: 14px;
	gap: 10px;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-view-details-button, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-view-details-button,
body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .button:not(.mphb-view-details-button) , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .button:not(.mphb-view-details-button) {
	min-height: 30px;
	padding: 11px 22px !important;
	font-size: 11px !important;
	letter-spacing: 0.15em;
	border-radius: 999px;
	font-weight: 600;
	box-shadow: none;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-view-details-button , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-view-details-button {
	background: rgba(180, 125, 76, 0.04) !important;
	color: #9f6c42 !important;
	border: 1px solid rgba(180, 125, 76, 0.45) !important;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-view-details-button:hover , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-view-details-button:hover {
	background: #b47d4c !important;
	color: #fff !important;
	border-color: #b47d4c !important;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .button:not(.mphb-view-details-button) , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .button:not(.mphb-view-details-button) {
	background: linear-gradient(120deg, #bc8855 0%, #a66d3e 100%) !important;
	color: #fff !important;
	border: 1px solid #a66d3e !important;
}

body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .button:not(.mphb-view-details-button):hover , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .button:not(.mphb-view-details-button):hover {
	background: linear-gradient(120deg, #a66d3e 0%, #8f5d34 100%) !important;
	border-color: #8f5d34 !important;
}

@media (max-width: 1199px) {
	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-wrapper , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-description-wrapper {
		padding: 34px 30px !important;
	}

	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .entry-title, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .entry-title,
	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-title , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-room-type-title {
		font-size: 26px !important;
	}
}

@media (max-width: 1023px) {
	body:not(.home) .mphb_sc_rooms-wrapper , body:not(.home) .mphb_sc_search_results-wrapper {
		padding-top: 10px;
	}

	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type {
		border-radius: 14px !important;
	}

	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper,
	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type:nth-child(even) .room-images-wrapper , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type:nth-child(even) .room-images-wrapper {
		border-radius: 14px 14px 0 0;
	}

	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper img, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper img,
	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .post-thumbnail img, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper .post-thumbnail img,
	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .flex-viewport, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper .flex-viewport,
	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper ul.slides li , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper ul.slides li {
		height: 290px !important;
	}

	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-wrapper , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-description-wrapper {
		padding: 26px 24px 24px !important;
	}
}

@media (max-width: 767px) {
	body:not(.home) .mphb_sc_rooms-wrapper , body:not(.home) .mphb_sc_search_results-wrapper {
		padding: 0 14px 26px;
	}

	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type {
		margin-bottom: 22px !important;
		border-radius: 12px !important;
	}

	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper,
	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type:nth-child(even) .room-images-wrapper , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type:nth-child(even) .room-images-wrapper {
		border-radius: 12px 12px 0 0;
	}

	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper img, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper img,
	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .post-thumbnail img, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper .post-thumbnail img,
	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper .flex-viewport, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper .flex-viewport,
	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-images-wrapper ul.slides li , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-images-wrapper ul.slides li {
		height: 220px !important;
	}

	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-description-wrapper , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-description-wrapper {
		padding: 20px 16px 18px !important;
		gap: 8px;
	}

	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .entry-title, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .entry-title,
	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-room-type-title , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-room-type-title {
		font-size: 21px !important;
	}

	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-regular-price , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-regular-price {
		font-size: 24px !important;
	}

	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .room-booking-details , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .room-booking-details {
		flex-direction: column !important;
		align-items: stretch !important;
	}

	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .mphb-view-details-button, body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .mphb-view-details-button,
	body:not(.home) .mphb_sc_rooms-wrapper .type-mphb_room_type .button:not(.mphb-view-details-button) , body:not(.home) .mphb_sc_search_results-wrapper .type-mphb_room_type .button:not(.mphb-view-details-button) {
		width: 100%;
		text-align: center;
	}
}

/* ================================================================
   SEARCH RESULTS — matches the "Chambres & Suites" design language
   ================================================================
   Unlike the rooms/archive shortcode, search-results has its own
   dedicated (unstyled) layout in the parent theme's
   motopress-hotel-booking.css, built around an extra
   .room-content-wrapper that flex-splits .room-description-wrapper
   (61%) and .room-booking-details (39%) — structurally different
   from the simple image-left/content-right card above. Forcing the
   exact same flex structure onto it collided with those rules (they
   use the very high-specificity prefix
   ".content-area .hentry .entry-content .mphb_sc_search_results-
   wrapper .mphb_room_type", which beat our simpler selectors even
   with !important). Matching that same prefix here guarantees these
   rules win, while keeping the native structure and re-skinning it
   with the same colors/type/spacing as the accommodation pages. */

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper {
	max-width: 1220px;
	margin: 0 auto;
	padding: 0px 0px 0px;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_sc_search_results-info {
	font-family: "DM Serif Display", serif;
	font-size: 20px;
	color: #1a1a1a;
	margin: 0 0 20px;
}

/* Card shell. display/flex-direction explicitly reset to block: an
   earlier, lower-specificity rule (shared with the rooms/archive
   card design) forces display:flex;flex-direction:row on
   .type-mphb_room_type site-wide, which would lay .room-images-
   wrapper and .room-content-wrapper out side-by-side instead of
   image-on-top — this selector's higher specificity overrides that. */
.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type {
	display: block !important;
	flex-direction: unset !important;
	border-radius: 18px !important;
	border: 1px solid rgba(180, 125, 76, 0.14) !important;
	box-shadow: 0 14px 44px rgba(16, 13, 9, 0.1) !important;
	background: linear-gradient(180deg, #ffffff 0%, #fffcf9 100%) !important;
	padding: 15 !important;
	margin-bottom: 30px !important;
	transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type:hover {
	transform: translateY(-4px);
	border-color: rgba(180, 125, 76, 0.28) !important;
	box-shadow: 0 18px 54px rgba(16, 13, 9, 0.16) !important;
}

/* Image: full width, fixed height, rounded */
.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .room-images-wrapper {
	width: 100% !important;
	margin: 0 0 24px !important;
	border-radius: 12px;
	overflow: hidden;
	position: relative;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .room-images-wrapper,
.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .mphb-room-type-images,
.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .flex-viewport,
.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type ul.slides,
.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type ul.slides li {
	height: 400 !important;
}

/* The image sits several levels deep inside the flexslider markup
   (.room-images-wrapper > .mphb-room-type-images > .flex-viewport >
   ul.slides > li > img). A plain height:100% on the <img> doesn't
   reliably resolve through that whole chain (percentage heights only
   resolve against an ancestor with a definite, non-auto height at
   every level — WP core's global img{height:auto} was winning
   instead). Absolute-positioning + inset:0 against the positioned
   <li> sidesteps that entirely — the same pattern used for the
   single-room-type gallery grid and the homepage cards. */
.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type ul.slides li {
	position: relative;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .room-images-wrapper img {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
}

/* Title */
.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .entry-title {
	font-family: "DM Serif Display", serif !important;
	font-size: 26px !important;
	color: #1a1a1a !important;
	margin: 0 0 6px !important;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .entry-title a {
	color: #1a1a1a !important;
	text-decoration: none;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .room-title-wrapper {
	margin-bottom: 16px !important;
	position: relative;
	padding-bottom: 14px;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .room-title-wrapper::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 42px;
	height: 2px;
	background: #b47d4c;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .room-excerpt {
	font-size: 14px !important;
	color: #5d5853 !important;
	line-height: 1.8;
}

/* Content row: description | booking, restored to a clean flex
   split (overrides the 61%/max-width:420px and width:100%!important
   rules fighting over this in the older stylesheets). */
.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .room-content-wrapper {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 30px;
	align-items: flex-start;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .room-description-wrapper {
	flex: 1 1 320px !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	border-right: none !important;
	padding-right: 0 !important;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .room-booking-details {
	flex: 0 0 240px !important;
	width: 240px !important;
	max-width: 240px !important;
	padding-left: 24px !important;
	margin-top: 0 !important;
	border-left: 1px solid #f0e8df;
}

/* Attributes: icon-badge rows instead of the plain 2-column list */
.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .mphb-loop-room-type-attributes {
	column-count: 1 !important;
	display: block !important;
	font-size: 12px !important;
	margin: 0 0 6px !important;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .mphb-loop-room-type-attributes li {
	display: block !important;
	width: auto !important;
	padding: 5px 0 5px 20px !important;
	color: #555;
}

/* Price */
.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .mphb-regular-price {
	font-family: "DM Serif Display", serif !important;
	font-size: 24px !important;
	color: #b47d4c !important;
	margin: 0 0 16px !important;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .mphb-price-period {
	font-size: 12px !important;
	color: #999 !important;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .mphb-rooms-quantity-wrapper {
	margin: 0 0 16px !important;
}

/* Buttons */
.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .mphb-view-details-button,
.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .mphb-button {
	width: 100% !important;
	border-radius: 999px !important;
	padding: 12px 20px !important;
	font-size: 11px !important;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	font-weight: 600;
	text-align: center;
	box-shadow: none !important;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .mphb-view-details-button {
	background: rgba(180, 125, 76, 0.04) !important;
	color: #9f6c42 !important;
	border: 1px solid rgba(180, 125, 76, 0.45) !important;
	margin-bottom: 10px !important;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .mphb-view-details-button:hover {
	background: #b47d4c !important;
	color: #fff !important;
	border-color: #b47d4c !important;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .mphb-button {
	background: linear-gradient(120deg, #bc8855 0%, #a66d3e 100%) !important;
	color: #fff !important;
	border: 1px solid #a66d3e !important;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .mphb-button:hover {
	background: linear-gradient(120deg, #a66d3e 0%, #8f5d34 100%) !important;
}

/* Recommendation summary panel ("Recommandé pour X adultes" + Total
   + Réserver) — styled as a gold CTA card like the reservation CTA
   on the single room type page. */
.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb-search-recommendations-wrapper {
	background: #b47d4c;
	border-radius: 14px;
	padding: 24px 28px !important;
	margin-bottom: 34px;
	color: #fff;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb-recommendation-details-list {
	color: #fff;
	font-size: 13px;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb-recommendation-details-list a {
	color: #fff;
	font-weight: 600;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb-recommendation .mphb-recommendation-total {
	color: #fff !important;
	font-family: "DM Serif Display", serif !important;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb-recommendation .mphb-recommendation-reserve-button {
	background: #fff !important;
	color: #9f6c42 !important;
	border: none !important;
	border-radius: 999px !important;
	padding: 14px 20px !important;
	font-size: 12px !important;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	font-weight: 600;
	max-width: 360px;
}

.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb-recommendation .mphb-recommendation-reserve-button:hover {
	background: #fbeee2 !important;
}

@media (max-width: 767px) {
	.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .room-content-wrapper {
		flex-direction: column;
	}

	.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .room-booking-details {
		flex: 1 1 100% !important;
		width: 100% !important;
		max-width: 100% !important;
		padding-left: 0 !important;
		border-left: none !important;
		border-top: 1px solid #f0e8df;
		padding-top: 20px !important;
		margin-top: 10px !important;
	}

	.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .room-images-wrapper,
	.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .mphb-room-type-images,
	.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type .flex-viewport,
	.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type ul.slides,
	.content-area .hentry .entry-content .mphb_sc_search_results-wrapper .mphb_room_type ul.slides li {
		height: 220px !important;
	}
}

/* ================================================================
   HOMEPAGE — "ACTIVITÉS OUTDOOR" — modern card redesign
   ================================================================
   Was: flat cream cards, a non-rendering 0-height decorative
   "divider" (half-circle/dots), a hardcoded height:330px on the card
   footer and height:240px on the excerpt <p> that together forced
   ~130-150px of dead space below the button on every card regardless
   of how much text it actually had. Rebuilt as elevated white cards
   with auto height, matching the gold/serif language used across the
   rest of the site (rooms carousel, room details, search results).
   ================================================================ */

/* Equal-height cards via a fixed height rather than flex-stretch:
   the carousel has 7 activities total (only 3 visible at a time) and
   slick renders all of them in the DOM, so align-items:stretch on
   .slick-track was equalizing every visible card to the height of
   the single longest OFF-SCREEN slide (~840px) — a hidden card
   dictating everyone else's height. A fixed height + line-clamped
   excerpt keeps all cards uniform and predictable regardless of how
   long any one activity's description is. */
.home .mpa-services-list-shortcode .slick-slide {
	height: auto !important;
	overflow: hidden;
}

.home .mpa-services-list-shortcode .slick-track {
	height: auto !important;
}

/* .slick-list is the carousel's actual clipping viewport; capping it
   to the card's own height + margin hides whatever residual space
   the track still computes (its natural height didn't fully collapse
   to the fixed-height cards even with height:auto above). */
.home .mpa-services-list-shortcode .slick-list {
	height: 590px !important;
	overflow: hidden !important;
}

.home .mpa-services-list-shortcode .mpa-loop-post-wrapper {
	background: #fff !important;
	border-radius: 16px !important;
	overflow: hidden;
	box-shadow: 0 0px 10px rgba(16, 13, 9, 0.08) !important;
	border: 1px solid rgba(180, 125, 76, 0.12);
	transition: transform 0.35s ease, box-shadow 0.35s ease;
	height: 560px !important;
	display: flex !important;
	flex-direction: column;
}

.home .mpa-services-list-shortcode .slick-slide .mpa-loop-post-wrapper {
	margin: 6px 10px 24px;
}

.home .mpa-services-list-shortcode .loop-service-footer {
	flex: 1 1 auto;
	display: flex !important;
	flex-direction: column;
	min-height: 0;
}

.home .mpa-services-list-shortcode .mpa-posts-loop .entry-excerpt,
.home .mpa-services-list-shortcode .mpa-posts-loop p {
	display: -webkit-box !important;
	-webkit-line-clamp: 4;
	line-clamp: 4;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.home .mpa-services-list-shortcode .activity-booking-details {
	margin-top: auto !important;
	padding-top: 18px;
}

.home .mpa-services-list-shortcode .mpa-loop-post-wrapper:hover {
	transform: translateY(-6px);
	box-shadow: 0 5px 15px rgba(16, 13, 9, 0.14) !important;
}

/* Image: fixed aspect box, rounded top corners baked into the card's
   own overflow:hidden, gentle zoom on hover */
.home .mpa-services-list-shortcode .loop-service-content {
	height: auto !important;
	margin: 0 !important;
}

.home .mpa-services-list-shortcode .loop-service-content .post-thumbnail {
	margin: 0;
	height: 260px !important;
	overflow: hidden;
	position: relative;
}

.home .mpa-services-list-shortcode .loop-service-content .post-thumbnail a {
	display: block;
	height: 100%;
}

.home .mpa-services-list-shortcode .loop-service-content img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	transition: transform 0.6s ease;
}

.home .mpa-services-list-shortcode .mpa-loop-post-wrapper:hover .loop-service-content img {
	transform: scale(1.08);
}

/* The old half-circle/dots "divider" never rendered (0 height) —
   drop it cleanly instead of leaving dead markup in the flow */
.home .mpa-services-list-shortcode .divider {
	display: none !important;
}

/* Footer: auto height instead of the old fixed 330px */
.home .mpa-services-list-shortcode .mpa-posts-loop .mpa-loop-post-wrapper > *:last-child,
.home .mpa-services-list-shortcode .loop-service-footer {
	height: auto !important;
	background: transparent !important;
	padding: 26px 24px 28px !important;
	text-align: left !important;
}

.home .mpa-services-list-shortcode .loop-service-info {
	margin-bottom: 18px;
}

/* Title: keep the brand's cursive script, add a clean gold underline
   instead of the old ::before gradient hairline hack */
.home .mpa-services-list-shortcode .mpa-posts-loop h2.mpa-post-title {
	margin: 0 0 12px !important;
	padding-bottom: 12px;
	position: relative;
	font-size: 28px;
}

.home .mpa-services-list-shortcode .mpa-posts-loop h2.mpa-post-title a {
	font-family: "Mrs Saint Delafield", cursive !important;
	color: #1a1a1a !important;
	font-size: 32px;
	transition: color 0.25s ease;
}

.home .mpa-services-list-shortcode .mpa-posts-loop h2.mpa-post-title a:hover {
	color: #b47d4c !important;
}

.home .mpa-services-list-shortcode .loop-service-info h2.entry-title a::before {
	content: none !important;
}

.home .mpa-services-list-shortcode .mpa-posts-loop h2.mpa-post-title::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 40px;
	height: 2px;
	background: #b47d4c;
}

/* Excerpt: auto height instead of the old fixed 240px */
.home .mpa-services-list-shortcode .mpa-posts-loop .entry-excerpt,
.home .mpa-services-list-shortcode .mpa-posts-loop p {
	height: auto !important;
	font-size: 14px !important;
	line-height: 1.75 !important;
	color: #5d5853 !important;
	padding: 0 !important;
	margin-bottom: 0 !important;
}

/* Button: gold outline pill, filling gold on hover — matches the
   view-details buttons used on the rooms/search-results cards
   (previously plain gray, off-brand) */
.home .mpa-services-list-shortcode .activity-booking-details {
	margin-top: 18px;
}

.home .mpa-services-list-shortcode .mpa-posts-loop .activity-booking-details a.view-tour {
	display: block;
	width: 100% !important;
	background: rgba(180, 125, 76, 0.04) !important;
	color: #9f6c42 !important;
	border: 1px solid rgba(180, 125, 76, 0.5) !important;
	border-radius: 999px !important;
	padding: 13px 20px !important;
	font-size: 11px !important;
	letter-spacing: 0.12em;
	text-transform: uppercase !important;
	font-weight: 600;
	text-align: center;
	transition: all 0.3s ease;
}

.home .mpa-services-list-shortcode .mpa-posts-loop .activity-booking-details a.view-tour:hover {
	background: #b47d4c !important;
	color: #fff !important;
	border-color: #b47d4c !important;
}

/* Carousel arrows: match the rooms-carousel treatment (circular,
   sitting just outside the card row) instead of plain chevrons
   floating in the section's whitespace */
.home .mpa-services-list-shortcode .slick-arrow {
	width: 44px;
	height: 44px;
	background: #fff;
	border-radius: 50%;
	/*box-shadow: 0 6px 20px rgba(16, 13, 9, 0.12);	*/
	display: flex;
	align-items: center;
	justify-content: center;
	top: 45%;
}

.home .mpa-services-list-shortcode .slick-prev {
	left: -18px;
}

.home .mpa-services-list-shortcode .slick-next {
	right: -18px;
}

.home .mpa-services-list-shortcode .slick-arrow:before {
	color: #b47d4c;
	opacity: 1;
	font-size: 16px;
}

@media (max-width: 1023px) {
	.home .mpa-services-list-shortcode .loop-service-content .post-thumbnail {
		height: 220px !important;
	}

	.home .mpa-services-list-shortcode .mpa-posts-loop h2.mpa-post-title a {
		font-size: 28px;
	}
}

@media (max-width: 767px) {
	.home .mpa-services-list-shortcode .loop-service-content .post-thumbnail {
		height: 200px !important;
	}

	.home .mpa-services-list-shortcode .loop-service-footer {
		padding: 20px 18px 22px !important;
	}

	.home .mpa-services-list-shortcode .slick-arrow {
		width: 36px;
		height: 36px;
	}

	.home .mpa-services-list-shortcode .slick-prev {
		left: -6px;
	}

	.home .mpa-services-list-shortcode .slick-next {
		right: -6px;
	}
}

/* ================================================================
   CHECKOUT / BOOKING RESERVATION PAGE (/booking-confirmation/)
   ================================================================
   Same gold/serif card language as the rooms, room-details and
   search-results pages. Layout: two-column on desktop — booking
   details + price breakdown + guest form on the left, a slim order-
   summary column (total, terms, submit) on the right — collapsing to
   a single stacked column on tablet/mobile.
   ================================================================ */

:root {
	--checkout-gold: #b47d4c;
	--checkout-gold-dark: #9a6539;
	--checkout-ink: #1a1a1a;
	--checkout-cream: #faf7f3;
	--checkout-line: #ece2d8;
}

/* ------ Page title: the theme's default "no featured image" header
   overlays the title on a generic decorative banner image, which
   collides visually on plain utility pages like this one. Hide the
   banner and give the title a clean, self-contained treatment
   instead — scoped to this page only. ------ */
/* padding-top clears the site header's logo, which is
   position:absolute site-wide (designed to float over a tall hero
   image/video) — on a plain page with no hero, it would otherwise
   overlap this title. 260px desktop / 130px tablet / 120px mobile
   matches the logo's actual measured height at each breakpoint. */
body.page-id-26 .entry-header-wrapper {
	position: relative !important;
	background: var(--checkout-cream) !important;
	min-height: 0 !important;
	padding: 260px 20px 40px !important;
	margin-bottom: 0 !important;
	text-align: center;
}

body.page-id-26 .entry-header-background,
body.page-id-26 .entry-header-image {
	display: none !important;
}

body.page-id-26 .entry-header-wrapper .entry-title {
	position: static !important;
	color: var(--checkout-ink) !important;
	font-family: "DM Serif Display", serif !important;
	font-size: 36px !important;
	margin: 0 !important;
}

body.page-id-26 .entry-header-wrapper .entry-title::after {
	content: "";
	display: block;
	width: 56px;
	height: 2px;
	background: var(--checkout-gold);
	margin: 18px auto 0;
}

/* ------ Page shell ------ */
.mphb_sc_checkout-wrapper {
	max-width: 1180px;
	margin: 0 auto;
	padding: 40px 20px 60px;
}

/* ------ Two-column layout ------
   .mphb-checkout-sidebar is created client-side (see
   luviana_child_checkout_sidebar_wrap() in mphb-customizations.php),
   grouping the total/errors/terms/submit elements into one element.
   Plain grid-column assignment on the individual elements doesn't
   work here: CSS Grid keeps row heights synchronized across both
   columns, so scattering 4 short sidebar items across rows shared
   with 3 much taller main-column sections left them spaced far apart
   instead of stacked together. With everything now grouped into a
   single grid item, it behaves as one normal sticky column. */
@media (min-width: 1024px) {
	.mphb_sc_checkout-wrapper .mphb_sc_checkout-form {
		display: grid;
		grid-template-columns: 1fr 360px;
		gap: 0 40px;
		align-items: start;
	}

	.mphb_sc_checkout-wrapper .mphb-booking-details,
	.mphb_sc_checkout-wrapper .mphb-room-price-breakdown-wrapper,
	.mphb_sc_checkout-wrapper .mphb-checkout-section.mphb-customer-details,
	.mphb_sc_checkout-wrapper .mphb-coupon-code-wrapper {
		grid-column: 1;
	}

	.mphb_sc_checkout-wrapper .mphb-checkout-sidebar {
		grid-column: 2;
		display: flex;
		flex-direction: column;
		position: sticky;
		top: 100px;
	}
}

/* ------ Card shell for every section ------ */
.mphb_sc_checkout-wrapper .mphb-login-form-wrap,
.mphb_sc_checkout-wrapper .mphb-checkout-section {
	margin: 0 0 28px !important;
	background: #fff !important;
	border: 1px solid var(--checkout-line) !important;
	border-radius: 14px !important;
	box-shadow: 0 10px 32px rgba(16, 13, 9, 0.06) !important;
	padding: 28px 30px !important;
}

/* ------ Section titles ------ */
.mphb_sc_checkout-wrapper h3.mphb-booking-details-title,
.mphb_sc_checkout-wrapper h4.mphb-price-breakdown-title,
.mphb_sc_checkout-wrapper h3.mphb-customer-details-title {
	font-family: "DM Serif Display", serif !important;
	font-size: 21px !important;
	font-weight: normal !important;
	color: var(--checkout-ink) !important;
	margin: 0 0 20px !important;
	padding-bottom: 14px;
	position: relative;
}

.mphb_sc_checkout-wrapper h3.mphb-booking-details-title::after,
.mphb_sc_checkout-wrapper h4.mphb-price-breakdown-title::after,
.mphb_sc_checkout-wrapper h3.mphb-customer-details-title::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 40px;
	height: 2px;
	background: var(--checkout-gold);
}

/* ------ Booking details: arrival/departure + room ------ */
.mphb_sc_checkout-wrapper .mphb-check-in-date,
.mphb_sc_checkout-wrapper .mphb-check-out-date {
	font-size: 14px;
	color: #555;
	padding: 10px 0;
	border-bottom: 1px solid var(--checkout-line);
}

.mphb_sc_checkout-wrapper .mphb-check-in-date strong,
.mphb_sc_checkout-wrapper .mphb-check-out-date strong {
	color: var(--checkout-ink);
}

.mphb_sc_checkout-wrapper .mphb-reserve-rooms-details {
	margin-top: 18px;
}

.mphb_sc_checkout-wrapper .mphb-reserve-rooms-details h4 {
	font-family: "DM Serif Display", serif !important;
	font-size: 17px !important;
	color: var(--checkout-gold) !important;
	margin: 20px 0 10px !important;
}

/* ------ Price breakdown table ------ */
.mphb_sc_checkout-wrapper table.mphb-price-breakdown {
	width: 100%;
	border-collapse: collapse;
	font-size: 13px;
}

.mphb_sc_checkout-wrapper table.mphb-price-breakdown th,
.mphb_sc_checkout-wrapper table.mphb-price-breakdown td {
	padding: 10px 12px !important;
	border: none !important;
	border-bottom: 1px solid var(--checkout-line) !important;
	background: transparent !important;
	text-align: left;
}

.mphb_sc_checkout-wrapper table.mphb-price-breakdown th {
	background: var(--checkout-cream) !important;
	font-weight: 600;
	color: var(--checkout-ink);
	text-transform: uppercase;
	font-size: 11px;
	letter-spacing: 0.04em;
}

.mphb_sc_checkout-wrapper table.mphb-price-breakdown tr:last-child td {
	border-bottom: none !important;
	font-weight: 700;
	font-size: 16px;
	color: var(--checkout-gold);
	font-family: "DM Serif Display", serif;
}

/* ------ Guest / customer form ------ */
.mphb_sc_checkout-wrapper .mphb-checkout-section p[class*="mphb-customer-"],
.mphb_sc_checkout-wrapper .mphb-checkout-section p.mphb-required-fields-tip {
	margin: 0 0 18px !important;
}

.mphb_sc_checkout-wrapper .mphb-checkout-section label {
	display: block;
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #777;
	margin-bottom: 6px;
}

.mphb_sc_checkout-wrapper .mphb-checkout-section label abbr {
	color: var(--checkout-gold);
	text-decoration: none;
}

.mphb_sc_checkout-wrapper .mphb-checkout-section input[type="text"],
.mphb_sc_checkout-wrapper .mphb-checkout-section input[type="email"],
.mphb_sc_checkout-wrapper .mphb-checkout-section input[type="tel"],
.mphb_sc_checkout-wrapper .mphb-checkout-section select,
.mphb_sc_checkout-wrapper .mphb-checkout-section textarea {
	width: 100% !important;
	box-sizing: border-box;
	border: 1px solid var(--checkout-line) !important;
	border-radius: 8px !important;
	padding: 12px 14px !important;
	font-size: 14px;
	background: var(--checkout-cream) !important;
	transition: border-color 0.2s ease;
}

.mphb_sc_checkout-wrapper .mphb-checkout-section input:focus,
.mphb_sc_checkout-wrapper .mphb-checkout-section select:focus,
.mphb_sc_checkout-wrapper .mphb-checkout-section textarea:focus {
	outline: none;
	border-color: var(--checkout-gold) !important;
}

.mphb_sc_checkout-wrapper .mphb-reserve-rooms-details select,
.mphb_sc_checkout-wrapper .mphb-reserve-rooms-details input[type="text"] {
	width: 100% !important;
	box-sizing: border-box;
	border: 1px solid var(--checkout-line) !important;
	border-radius: 8px !important;
	padding: 12px 14px !important;
	background: var(--checkout-cream) !important;
}

/* ------ Order-summary sidebar ------ */
.mphb_sc_checkout-wrapper .mphb-total-price {
	background: var(--checkout-gold);
	color: #fff !important;
	border-radius: 14px;
	padding: 24px 26px !important;
	margin: 0 0 20px !important;
	font-family: "DM Serif Display", serif;
	font-size: 22px;
	text-align: center !important;
}

.mphb_sc_checkout-wrapper .mphb-total-price output {
	color: #fff !important;
	font-size: 26px;
}

.mphb_sc_checkout-wrapper .mphb-checkout-terms-wrapper {
	background: #fff !important;
	border: 1px solid var(--checkout-line) !important;
	border-radius: 14px !important;
	padding: 20px 22px !important;
	margin: 0 0 20px !important;
	box-shadow: 0 10px 32px rgba(16, 13, 9, 0.06) !important;
}

.mphb_sc_checkout-wrapper .mphb-terms-and-conditions-accept {
	font-size: 13px;
	color: #555;
	display: flex;
	align-items: flex-start;
	gap: 8px;
}

.mphb_sc_checkout-wrapper .mphb-terms-and-conditions-accept a {
	color: var(--checkout-gold);
}

.mphb_sc_checkout-wrapper .mphb_sc_checkout-submit-wrapper {
	margin: 0 !important;
}

.mphb_sc_checkout-wrapper .mphb_sc_checkout-submit-wrapper .button {
	width: 100%;
	background: var(--checkout-gold) !important;
	color: #fff !important;
	border: none !important;
	border-radius: 999px !important;
	padding: 16px 20px !important;
	font-size: 13px !important;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	font-weight: 600;
	transition: background 0.25s ease;
}

.mphb_sc_checkout-wrapper .mphb_sc_checkout-submit-wrapper .button:hover {
	background: var(--checkout-gold-dark) !important;
}

.mphb_sc_checkout-wrapper .mphb-errors-wrapper {
	background: #fdecea;
	border: 1px solid #f3b3ac;
	border-radius: 10px;
	padding: 14px 16px;
	color: #a83a2e;
	font-size: 13px;
	margin: 0 0 20px !important;
}

/* ------ Coupon code ------ */
.mphb_sc_checkout-wrapper .mphb-coupon-code-wrapper input[type="text"] {
	border: 1px solid var(--checkout-line);
	border-radius: 8px;
	padding: 10px 12px;
	background: var(--checkout-cream);
}

.mphb_sc_checkout-wrapper .mphb-apply-coupon-code-button {
	background: transparent !important;
	color: var(--checkout-gold) !important;
	border: 1px solid var(--checkout-gold) !important;
	border-radius: 999px !important;
	padding: 10px 20px !important;
	font-size: 11px !important;
	text-transform: uppercase;
	letter-spacing: 0.1em;
}

.mphb_sc_checkout-wrapper .mphb-apply-coupon-code-button:hover {
	background: var(--checkout-gold) !important;
	color: #fff !important;
}

/* ------ Tablet ------ */
@media (min-width: 768px) and (max-width: 1023px) {
	.mphb_sc_checkout-wrapper {
		padding: 30px 24px 50px;
	}

	.mphb_sc_checkout-wrapper .mphb-login-form-wrap,
	.mphb_sc_checkout-wrapper .mphb-checkout-section {
		padding: 26px !important;
	}

	body.page-id-26 .entry-header-wrapper {
		padding: 130px 20px 32px !important;
	}

	body.page-id-26 .entry-header-wrapper .entry-title {
		font-size: 30px !important;
	}
}

/* ------ Mobile ------ */
@media (max-width: 767px) {
	.mphb_sc_checkout-wrapper {
		padding: 20px 16px 40px;
	}

	.mphb_sc_checkout-wrapper .mphb-login-form-wrap,
	.mphb_sc_checkout-wrapper .mphb-checkout-section {
		padding: 20px !important;
		border-radius: 12px !important;
	}

	.mphb_sc_checkout-wrapper h3.mphb-booking-details-title,
	.mphb_sc_checkout-wrapper h4.mphb-price-breakdown-title,
	.mphb_sc_checkout-wrapper h3.mphb-customer-details-title {
		font-size: 19px !important;
	}

	.mphb_sc_checkout-wrapper table.mphb-price-breakdown {
		font-size: 12px;
	}

	.mphb_sc_checkout-wrapper table.mphb-price-breakdown th,
	.mphb_sc_checkout-wrapper table.mphb-price-breakdown td {
		padding: 8px 6px !important;
	}

	.mphb_sc_checkout-wrapper .mphb-total-price {
		font-size: 18px;
		padding: 20px !important;
	}

	.mphb_sc_checkout-wrapper .mphb-total-price output {
		font-size: 22px;
	}

	body.page-id-26 .entry-header-wrapper {
		padding: 120px 16px 28px !important;
	}

	body.page-id-26 .entry-header-wrapper .entry-title {
		font-size: 24px !important;
	}
}

/* ============================================================
   SERVICE DETAILS REDESIGN (single mpa_service — "Kayak",
   "Excursion Cathédral", etc.)
   ------------------------------------------------------------
   Was: raw Gutenberg paragraphs with emoji-text markers
   (⭐ HIGHLIGHTS, ✅ INCLUS, ❌ NON INCLUS...) rendered as plain
   centered text, pipe-separated "lists" crammed into one bullet,
   a duplicated intro paragraph, and a native "Détails" box
   showing placeholder Prix/Durée/Capacité values that contradict
   the real numbers already written in the content. The PHP side
   (includes/service-details.php) restructures the markup into
   proper sections/timeline steps without touching stored content;
   this styles that structure and adds a call/contact CTA.
   ============================================================ */

/* The plugin's auto-appended attributes box shows placeholder
   defaults (Prix: 0 MAD, Durée: 30min, Capacité: 1) that were
   never configured and conflict with the real info already in
   the content itself — showing it would mislead customers. */
.mpa_service-template-default.single-mpa_service .mpa-attributes-title,
.mpa_service-template-default.single-mpa_service ul.mpa-service-attributes {
	display: none !important;
}

.mpa_service-template-default.single-mpa_service .entry-content {
	max-width: 760px;
	margin: 0 auto;
	padding: 0 24px;
}

/* ---------- CTA (call / contact) ---------- */
.service-cta {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	align-items: center;
}

.service-cta--top {
	margin: 8px 0 36px;
}

.service-cta--bottom {
	margin: 48px 0 8px;
	padding: 32px;
	background: linear-gradient(135deg, rgba(180, 125, 76, 0.08), rgba(180, 125, 76, 0.02));
	border: 1px solid rgba(180, 125, 76, 0.18);
	border-radius: 16px;
	flex-direction: column;
	text-align: center;
}

.service-cta-bottom-title {
	font-family: "Mrs Saint Delafield", cursive;
	font-size: 30px;
	color: #1a1a1a;
	margin: 0 0 8px;
}

.service-cta--bottom .service-cta-button {
	margin: 0 6px;
}

.service-cta-button {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 13px 24px;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	transition: all 0.3s ease;
	white-space: nowrap;
}

.service-cta-button--primary {
	background: #b47d4c;
	color: #fff !important;
	border: 1px solid #b47d4c;
}

.service-cta-button--primary:hover {
	background: #9a6b40;
	border-color: #9a6b40;
}

.service-cta-button--ghost {
	background: transparent;
	color: #9f6c42 !important;
	border: 1px solid rgba(180, 125, 76, 0.5);
}

.service-cta-button--ghost:hover {
	background: rgba(180, 125, 76, 0.08);
}

.service-cta-icon {
	width: 14px;
	height: 14px;
	display: inline-block;
	position: relative;
}

.service-cta-icon:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	position: absolute;
	inset: 0;
	font-size: 14px;
	line-height: 1;
}

.service-cta-icon--phone:before {
	content: "\f095";
}

.service-cta-icon--mail:before {
	content: "\f0e0";
}

/* ---------- Content sections ---------- */
.service-content-sections {
	display: flex;
	flex-direction: column;
	gap: 22px;
}

.service-section--intro {
	font-size: 16px;
	line-height: 1.8;
	color: #4a4540;
}

.service-section--intro p {
	margin: 0 0 14px;
}

.service-section:not(.service-section--intro) {
	background: #fff;
	border-radius: 16px;
	padding: 26px 28px;
	box-shadow: 0 2px 14px rgba(16, 13, 9, 0.06);
	border: 1px solid rgba(16, 13, 9, 0.06);
}

.service-section--highlight {
	background: linear-gradient(135deg, rgba(180, 125, 76, 0.07), #fff) !important;
	border-color: rgba(180, 125, 76, 0.2) !important;
}

.service-section--good {
	border-left: 3px solid #5a9d6b !important;
}

.service-section--bad {
	border-left: 3px solid #c17a5c !important;
}

.service-section--pricing {
	background: linear-gradient(135deg, rgba(180, 125, 76, 0.1), #fff) !important;
	border-color: rgba(180, 125, 76, 0.25) !important;
}

.service-heading {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 16px;
}

.service-heading-icon {
	flex: none;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	position: relative;
	background: rgba(180, 125, 76, 0.1);
}

.service-heading-icon:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 14px;
	color: #b47d4c;
}

.service-section--good .service-heading-icon {
	background: rgba(90, 157, 107, 0.12);
}

.service-section--good .service-heading-icon:before {
	color: #4c8a5c;
}

.service-section--bad .service-heading-icon {
	background: rgba(193, 122, 92, 0.12);
}

.service-section--bad .service-heading-icon:before {
	color: #b25f3f;
}

.service-heading-icon--star:before {
	content: "\f005";
}

.service-heading-icon--check:before {
	content: "\f00c";
}

.service-heading-icon--times:before {
	content: "\f00d";
}

.service-heading-icon--clock:before {
	content: "\f017";
}

.service-heading-icon--map:before {
	content: "\f279";
}

.service-heading-icon--coins:before {
	content: "\f51e";
}

.service-heading-icon--pin:before {
	content: "\f3c5";
}

.service-heading-label {
	font-family: "Noto Serif", serif;
	font-size: 17px;
	font-weight: 700;
	color: #1a1a1a;
	text-transform: capitalize;
	letter-spacing: 0.01em;
}

.service-section .wp-block-list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 10px 20px;
}

.service-section .wp-block-list li {
	position: relative;
	padding-left: 22px;
	font-size: 14.5px;
	line-height: 1.6;
	color: #4a4540;
}

.service-section .wp-block-list li:before {
	content: "•";
	position: absolute;
	left: 4px;
	color: #b47d4c;
}

.service-section--good .wp-block-list li:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f00c";
	font-size: 11px;
	top: 3px;
	color: #4c8a5c;
}

.service-section--bad .wp-block-list li:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f00d";
	font-size: 11px;
	top: 3px;
	color: #b25f3f;
}

.service-marker-body {
	margin: 0;
	font-size: 14.5px;
	line-height: 2;
	color: #4a4540;
}

/* ---------- Itinerary timeline ---------- */
.service-timeline-step {
	position: relative;
	padding: 0 0 20px 26px;
	border-left: 2px solid rgba(180, 125, 76, 0.25);
}

.service-timeline-step:last-child {
	padding-bottom: 0;
	border-color: transparent;
}

.service-timeline-step:before {
	content: "";
	position: absolute;
	left: -6px;
	top: 4px;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: #b47d4c;
	box-shadow: 0 0 0 3px #fff;
}

.service-timeline-time {
	display: inline-block;
	font-weight: 700;
	font-size: 13px;
	color: #b47d4c;
	margin-right: 10px;
}

.service-timeline-title {
	font-size: 14.5px;
	font-weight: 600;
	color: #1a1a1a;
}

.service-timeline-desc {
	margin: 4px 0 0;
	font-size: 13.5px;
	line-height: 1.6;
	color: #6b655e;
}

/* ---------- Embedded booking form (Kayak, Balade en bateau...) ---------- */
.mpa_service-template-default.single-mpa_service .wpforms-container {
	background: #fff !important;
	border: 1px solid rgba(180, 125, 76, 0.18);
	border-radius: 16px;
	padding: 26px 28px !important;
	box-shadow: 0 2px 14px rgba(16, 13, 9, 0.06);
	margin-top: 10px;
}

@media (max-width: 767px) {
	.mpa_service-template-default.single-mpa_service .entry-content {
		padding: 0 18px;
	}

	.service-cta--top {
		flex-direction: column;
		align-items: stretch;
	}

	.service-cta--top .service-cta-button {
		justify-content: center;
	}

	.service-section:not(.service-section--intro) {
		padding: 20px 20px;
	}

	.service-heading-label {
		font-size: 22px;
	}

	.service-section .wp-block-list {
		grid-template-columns: 1fr;
	}

	.service-cta--bottom .service-cta-button {
		display: flex;
		margin: 6px 0;
	}
}

/* ============================================================
   LANGUAGE SWITCHER — styled to match the Menu button
   ------------------------------------------------------------
   Moved into .site-header-wrapper via JS (see
   includes/language-switcher-header.php) so it scrolls away with
   the hero exactly like the Menu button, instead of staying
   fixed on screen with white text over plain white content below
   the fold.
   ============================================================ */
.site-header-wrapper .trp-floating-switcher {
	position: absolute !important;
	top: 50% !important;
	right: 1rem !important;
	bottom: auto !important;
	left: auto !important;
	transform: translateY(-50%) !important;
	z-index: 100;
	overflow: visible !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	padding: 0.5rem !important;
	width: auto !important;
	flex-direction: column !important;
	transition: opacity 0.3s ease;
}

.site-header-wrapper .trp-floating-switcher:hover {
	opacity: 0.8;
}

.site-header-wrapper .trp-floating-switcher .trp-language-switcher-inner {
	flex-direction: column !important;
}

.site-header-wrapper .trp-language-item {
	display: flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
}

.site-header-wrapper .trp-language-item-name {
	font-size: 11px !important;
	font-weight: 500 !important;
	color: #ffffff !important;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.site-header-wrapper .trp-flag-image {
	width: 16px !important;
	height: 12px !important;
	border-radius: 2px;
}

.site-header-wrapper .trp-switcher-dropdown-list {
	position: absolute;
	top: calc(100% + 8px);
	right: 0;
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.15);
	padding: 0px;
	width: max-content;
	min-width: 130px;
}

.site-header-wrapper .trp-switcher-dropdown-list .trp-language-item-name {
	color: #143852 !important;
	text-transform: none;
}

.site-header-wrapper .trp-switcher-dropdown-list .trp-language-item {
	padding: 8px 10px;
	border-radius: 6px;
}

.site-header-wrapper .trp-switcher-dropdown-list .trp-language-item:hover {
	background: rgba(180, 125, 76, 0.08);
}

@media (max-width: 767px) {
	.site-header-wrapper .trp-floating-switcher {
		right: 0.5rem !important;
	}

	.site-header-wrapper .trp-language-item-name {
		font-size: 10px !important;
	}
}

/* ============================================================
   SERVICE DETAILS — hero/header pushed off-screen
   ------------------------------------------------------------
   `.mpa_service-template-default.single-mpa_service .site-content`
   has `margin-top: -120px` (parent theme, desktop only) meant to
   pull the hero image up under the header. Because `.site-header`
   is `position: absolute` (out of normal flow), `.site-content`
   is effectively the first IN-FLOW child of `.site`, so that
   negative margin collapses straight through `.site` and <body>,
   shifting the entire page — including the header, Menu button
   and language switcher — 120px above the viewport on load.
   `display: flow-root` gives `.site` its own block-formatting
   context, which stops the collapse without clipping anything
   (unlike `overflow: hidden`, which would also cut off the fixed
   popup-menu overlay that lives inside `.site`).
   ============================================================ */
body .site {
	display: flow-root;
}

/* ============================================================
   GALLERY PAGE — "Our Gallery" / "Notre Galerie"
   ------------------------------------------------------------
   Replaces a broken Getwid "Images Stack" masonry block that only
   ever rendered ~10 of its 33 images, leaving ~15,000px of empty
   placeholder boxes below the fold (see includes/gallery-page.php
   for the content-side fix). CSS-columns masonry + a lightbox,
   matching the gold/serif language used across the rest of the
   site's redesigned pages.
   ============================================================ */
.page-id-300 .entry-content {
	max-width: 1360px;
	margin: 0 auto;
	padding: 0 24px 80px;
}

.gallery-page-intro {
	max-width: 620px;
	margin: 0 auto 48px;
	text-align: center;
	font-family: "Noto Serif", serif;
	font-size: 17px;
	line-height: 1.8;
	color: #5d5853;
}

.gallery-grid {
	columns: 4;
	column-gap: 18px;
}

.gallery-grid-item {
	display: block;
	position: relative;
	break-inside: avoid;
	margin-bottom: 18px;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 2px 14px rgba(16, 13, 9, 0.08);
	background: #f4f1ec;
}

.gallery-grid-item img {
	display: block;
	width: 100%;
	height: auto;
	transition: transform 0.6s ease;
}

.gallery-grid-item::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(0deg, rgba(16, 13, 9, 0.55), rgba(16, 13, 9, 0) 55%);
	opacity: 0;
	transition: opacity 0.35s ease;
}

.gallery-grid-item-icon {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 46px;
	height: 46px;
	transform: translate(-50%, -50%) scale(0.7);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.92);
	opacity: 0;
	transition: opacity 0.35s ease, transform 0.35s ease;
	z-index: 1;
}

.gallery-grid-item-icon::before {
	content: "\f065";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 16px;
	color: #b47d4c;
}

.gallery-grid-item:hover img {
	transform: scale(1.08);
}

.gallery-grid-item:hover::after,
.gallery-grid-item:hover .gallery-grid-item-icon {
	opacity: 1;
}

.gallery-grid-item:hover .gallery-grid-item-icon {
	transform: translate(-50%, -50%) scale(1);
}

@media (max-width: 1100px) {
	.gallery-grid {
		columns: 3;
	}
}

@media (max-width: 767px) {
	.page-id-300 .entry-content {
		padding: 0 16px 56px;
	}

	.gallery-page-intro {
		font-size: 15px;
		margin-bottom: 32px;
	}

	.gallery-grid {
		columns: 2;
		column-gap: 12px;
	}

	.gallery-grid-item {
		margin-bottom: 12px;
		border-radius: 10px;
	}
}

@media (max-width: 480px) {
	.gallery-grid {
		columns: 1;
	}
}