/* adhocvitae@adhochoteles.com

[field id="email"] 
    Theme Name: adhochoteles2025-2025
    Theme URI: adhochoteles2025-2025
    Description: Adhochoteles2025-2025
    Author:       Mirai Dev Team
    Author URI:   http://mirai.com
    Template:     mirai-ma
    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:  mirai-maai
*/

/*************************************/
/********** GENERAL STYLES **********/
/***********************************/

:root {
	/***** SPACES *****/
	--mft-space-5xs: 4px;
	--mft-space-4xs: 8px;
	--mft-space-3xs: 12px;
	--mft-space-2xs: 16px;
	--mft-space-xs: clamp(16px, calc(16px + (24 - 16) * ((100vw - 767px) / (1920 - 767))), 24px);
	/*dk-24 --- mb-16*/
	--mft-space-s: clamp(24px, calc(24px + (32 - 24) * ((100vw - 767px) / (1920 - 767))), 32px);
	/*32 --- 24*/
	--mft-space-m: clamp(32px, calc(32px + (40 - 32) * ((100vw - 767px) / (1920 - 767))), 40px);
	/*40 --- 32*/
	--mft-space-l: clamp(32px, calc(32px + (48 - 32) * ((100vw - 767px) / (1920 - 767))), 48px);
	/*48 --- 32*/
	--mft-space-xl: clamp(32px, calc(32px + (56 - 32) * ((100vw - 767px) / (1920 - 767))), 56px);
	/*56 --- 32*/
	--mft-space-2xl: clamp(48px, calc(48px + (64 - 48) * ((100vw - 767px) / (1920 - 767))), 64px);
	/*64 --- 48*/
	--mft-space-3xl: clamp(48px, calc(48px + (80 - 48) * ((100vw - 767px) / (1920 - 767))), 80px);
	/*80 --- 48*/
	--mft-space-4xl: clamp(48px, calc(48px + (96 - 48) * ((100vw - 767px) / (1920 - 767))), 96px);
	/*96 --- 48*/
	--mft-space-5xl: clamp(48px, calc(48px + (160 - 48) * ((100vw - 767px) / (1920 - 767))), 160px);
	/*160 --- 48*/
	--mft-space-6xl: clamp(120px, calc(120px + (200 - 120) * ((100vw - 767px) / (1920 - 767))), 200px);
	/*200 --- 120*/

	/***** CONTAINERS *****/
	--width-s: 700px;
	--width-m: 1280px;
	--width-l: 1920px;

	/***** MIN-HEIGHT FOR IMG *****/
	--min-height-s: 300px;
	--min-height-m: 500px;
	--min-height-l: 600px;
}

body,
a,
a:hover {
	font-size: inherit;
	font-family: inherit;
	color: inherit;
	text-transform: inherit;
	text-decoration: none;
}

a,
a::hover,
p,
h1,
h2,
h3,
h4,
h5 {
	text-transform: inherit !important;
}

p {
	line-height: inherit;
	font-weight: inherit;
	font-size: inherit;
	letter-spacing: inherit;
	word-spacing: inherit;
}

/***** SPACE BETWEEN SECTIONS *****/
.mft-space-section-t {
	padding-top: var(--mft-space-4xl);
}

.mft-space-section-b {
	padding-bottom: var(--mft-space-4xl);
}

/* CONTAINERS */
.mft-container-s.elementor-element {
	max-width: var(--width-s);
	margin: 0 auto;
	box-sizing: border-box;
}

.mft-container-m.elementor-element {
	max-width: var(--width-m);
	margin: 0 auto;
	box-sizing: border-box;
}

.mft-container-l.elementor-element {
	max-width: var(--width-l);
	margin: 0 auto;
	box-sizing: border-box;
}

/***** WIDGET IMG RESPONSIVE - makes the image cover and adapt to the container *****/
.mft-bg-img .elementor-element,
.mft-bg-img .elementor-element .elementor-widget-image,
.mft-bg-img .elementor-element .e-n-carousel.swiper,
.mft-bg-img .elementor-element .elementor-widget-container {
	height: 100%;
}

.mft-bg-img .elementor-element .elementor-widget-image img,
.mft-bg-img .elementor-element .elementor-widget-container img {
	position: absolute;
	object-fit: cover;
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
}

.mft-minh-s {
	min-height: var(--min-height-s);
	/*300px*/
}

.mft-minh-m {
	min-height: var(--min-height-m);
	/*500px*/
}

.mft-minh-l {
	min-height: var(--min-height-l);
	/*600px*/
}

@media(max-width:1024px) {
	.mft-minh-l {
		min-height: var(--min-height-m);
	}

	.mft-minh-m {
		min-height: var(--min-height-s);
	}

}

/***** CENTER ICON RRSS - centre social media widget icon *****/
.elementor-social-icon.elementor-icon {
	display: flex;
}

/* 404 PAGE */
.not-found-page {
	display: table;
	background: url(https://static-resources-elementor.mirai.com/common/bg-404.png) no-repeat center center transparent;
	margin-bottom: 0;
	width: 100%;
	min-height: 570px;
	text-align: center;
}

.not-found-page span {
	font-size: 18px;
	display: table-cell;
	vertical-align: middle;
}

/* HIDING RECAPTCHA BADGE */
.grecaptcha-badge {
	visibility: hidden;
}


/* so that loading does not appear in bookingstep1 */
body.elementor-editor-active .mi-rs.loading {
	display: none;
}

/* to make the language selector visible in modal */
.wpml-ls-legacy-dropdown-click:hover .wpml-ls-sub-menu {
	visibility: visible;
}

/***********************************************/

/*********** STYLES THROUGH CLASSES ***********/

/*********************************************/

/***** FROM ABSOLUTE TO RELATIVE - change an absolute element to a relative element from 1024px and above *****/
@media (max-width: 1024px) {
	.mft-relative-tb {
		position: relative;
	}
}

/***** HIDE TEXT CLOSE POP UP CLOSE BUTTON ****/
.btn-close-popup .elementor-icon-box-title {
	display: none;
}

/***** BACKGROUND CONTANER - background for a container through a before to be able to customise it, so that it does not occupy 100% of the container, or that it has a geometric shape, etc. *****/
.mft-bg-section:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 77%;
	background: var(--e-global-color-15b9b07);
}

/***** UNDERLINE - add a low line to a button *****/
.mft-underline.elementor-element::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 2px;
	background-color: var(--e-global-color-text);
	transition: all .3s ease-out;
}

.mft-underline.elementor-element:has(.elementor-button:hover)::after {
	background-color: var(--e-global-color-secondary);
}

/***** CENTER ICON BUTTON & ICON WIDGET - to centre the icons *****/
.mft-icon-btn-center .elementor-button-icon,
.mft-icon-btn-center .elementor-button-wrapper,
.elementor-widget-icon .elementor-widget-container,
.elementor-widget-icon .elementor-widget-container .elementor-icon-wrapper {
	display: flex;
	align-items: center;
}

/***** MOVE THE MOTOR ON Y-AXIS - to put the engine half on the hero image and half off the hero image ******/
.mft-booking-translateY .elementor-widget-Mirai-Finder {
	transform: translateY(-50%);
	box-shadow: 0px 0px 40px 0px rgba(0, 0, 0, 0.10);
}

/***** CHANGE THE COLOUR OF TEXT AND BUTTONS ON A COLOURED BACKGROUND *****/

/* on a dark background - variable white colour */
.mft-light-text,
.mft-light-text .elementor-button {
	color: var(--e-global-color-47eea86e) !important;
	fill: var(--e-global-color-47eea86e) !important;
}

/* on a light background - variable black colour */
.mft-dark-text,
.mft-dark-text .elementor-button {
	color: var(--e-global-color-21f8c9b7) !important;
	fill: var(--e-global-color-21f8c9b7) !important;
}

/******************************************************/

/*********** ARROWS & DOTS CAROUSEL STYLES ***********/

/*****************************************************/

/***** ARROWS *****/
.mft-arrows-carousel-styles .elementor-swiper-button i {
	font-family: 'mirai-icofonts';
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	color: var(--e-global-color-accent);
	border-radius: 50%;
	padding: var(--mft-space-3xs);
	background: #FFFFFF99;
	box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.16);
	transition: all .3s ease-out;
}

.mft-arrows-carousel-styles .elementor-swiper-button:hover i {
	color: var(--e-global-color-47eea86e);
	background: var(--e-global-color-accent);
}

.mft-arrows-carousel-styles .elementor-swiper-button-prev i:before {
	content: "\e962";
}

.mft-arrows-carousel-styles .elementor-swiper-button-next i:before {
	content: "\e963";
}

/***** DOTS *****/
.mft-dots-carousel-styles .swiper-pagination .swiper-pagination-bullet {
	background: var(--e-global-color-accent);
	width: 7px;
	height: 7px;
	margin: 5px;
	transition: all .3s ease-out;
}

.mft-dots-carousel-styles .swiper-pagination .swiper-pagination-bullet:hover {
	background: var(--e-global-color-accent);
}

/***** PROGRESS BAR *****/

/* Barra de progreso */
.swiper-pagination-progressbar {
	position: relative !important;
	/* mantener absolute para no romper offset */
	margin-top: 32px !important;
	/* distancia debajo de las slides */
	left: 49.5% !important;
	/* centrar horizontal */
	transform: translateX(-50%) !important;
	/* centrar exactamente */
	width: 49% !important;
	/* ancho de la barra */
	height: 3px !important;
	/* altura */
	background-color: #CEBEB3 !important;
	z-index: 10;
	/* encima del fondo pero debajo de otros elementos si hace falta */
}


/******************************************/

/*********** AUTOSCROLL POPUPS ***********/

/****************************************/

/***** AUTOSCROLL *****/
.mft-scrolly-auto {
	overflow: hidden !important;
	overflow-y: auto !important;
	max-height: calc(100vh - 140px);
}

/***** SCROLL BAR STYLES *****/
.mft-modal-scroll::-webkit-scrollbar {
	width: 5px;
}

.mft-modal-scroll::-webkit-scrollbar-track {
	box-shadow: inset 0 0 5px var(--e-global-color-text);
	border-radius: 2px;
}

.mft-modal-scroll::-webkit-scrollbar-thumb {
	background-color: #3c3c3c;
	border-radius: 2px;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.mft-modal-scroll::-webkit-scrollbar-thumb:hover {
	background: var(--e-global-color-secondary);
}

/********************************/
/*********** BUTTONS ************/
/********************************/

/***** ESTILOS GENERALES *****/
.mft-btn.elementor-button {
	position: relative;
	fill: inherit;
	overflow: hidden;
	transition: all .3s ease;
	border-radius: 0px !important;
}

/* Eliminar flechas y transformaciones */
.mft-btn .elementor-button-text:after,
.elementor-button.mft-btn:hover .elementor-button-text:after {
	content: none !important;
}

.mft-btn .elementor-button-content-wrapper {
	transform: none !important;
}

/********************************/
/*********** BTN - 1 ************/
/********************************/
/* Fondo sólido */
.elementor-button.mft-btn-1 {
	font-family: var(--e-global-typography-6d2edf1-font-family), Sans-serif;
	font-size: var(--e-global-typography-6d2edf1-font-size);
	font-weight: var(--e-global-typography-6d2edf1-font-weight);
	color: var(--e-global-color-47eea86e);
	background-color: var(--e-global-color-primary);
	border: 2px solid var(--e-global-color-primary);
	padding: var(--mft-space-2xs) var(--mft-space-xs);
	letter-spacing: var(--e-global-typography-6d2edf1-letter-spacing);
	transition: all .3s ease;
	text-transform: uppercase;
}

.elementor-button.mft-btn-1:hover {
	background-color: var(--e-global-color-secondary);
	border-color: var(--e-global-color-secondary);
	color: var(--e-global-color-47eea86e);
}

/********************************/
/*********** BTN - 3 ************/
/********************************/
/* Borde simple sin efectos */
.elementor-button.mft-btn-3 {
	font-family: var(--e-global-typography-6d2edf1-font-family), Sans-serif;
	font-size: var(--e-global-typography-6d2edf1-font-size);
	font-weight: var(--e-global-typography-6d2edf1-font-weight);
	color: var(--e-global-color-primary);
	letter-spacing: var(--e-global-typography-6d2edf1-letter-spacing);
	background-color: transparent;
	border: 2px solid var(--e-global-color-primary);
	padding: var(--mft-space-3xs) var(--mft-space-2xs);
	transition: all .3s ease;
	border-radius: 0px;
}

.elementor-button.mft-btn-3:hover {
	color: var(--e-global-color-secondary);
	border-color: var(--e-global-color-secondary);
}

/********************************/
/*********** BTN - 4 ************/
/********************************/
/* Texto con línea pequeña centrada */
.elementor-button.mft-btn-4 {
	font-family: var(--e-global-typography-6d2edf1-font-family), Sans-serif;
	font-size: var(--e-global-typography-6d2edf1-font-size);
	font-weight: var(--e-global-typography-6d2edf1-font-weight);
	letter-spacing: var(--e-global-typography-6d2edf1-letter-spacing);
	color: var(--e-global-color-text);
	background-color: transparent;
	border: none;
	padding: 0;
	transition: all .3s ease;
	text-transform: var(--e-global-typography-6d2edf1-text-transform);
	padding: 7px 0;
}

.elementor-button.mft-btn-4::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 15%;
	height: 1px;
	background-color: var(--e-global-color-text);
	transform: translateX(-50%);
	transition: all .3s ease;
}

.elementor-button.mft-btn-4:hover {
	color: var(--e-global-color-secondary);
}

.elementor-button.mft-btn-4:hover::after {
	width: 100%;
	background-color: var(--e-global-color-secondary);
}

/* BTN WHITE VERSION */

.elementor-button.mft-btn-4-white {
	font-family: var(--e-global-typography-6d2edf1-font-family), Sans-serif;
	font-size: var(--e-global-typography-6d2edf1-font-size);
	font-weight: var(--e-global-typography-6d2edf1-font-weight);
	letter-spacing: var(--e-global-typography-6d2edf1-letter-spacing);
	color: var(--e-global-color-47eea86e);
	background-color: transparent;
	border: none;
	padding: 0;
	transition: all .3s ease;
	text-transform: var(--e-global-typography-6d2edf1-text-transform);
	padding: 7px 0;
}

.elementor-button.mft-btn-4-white::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 15%;
	height: 1px;
	background-color: var(--e-global-color-47eea86e);
	transform: translateX(-50%);
	transition: all .3s ease;
}

.elementor-button.mft-btn-4-white:hover {
	color: var(--e-global-color-bd9d5b8);
}

.elementor-button.mft-btn-4-white:hover::after {
	width: 100%;
	background-color: var(--e-global-color-bd9d5b8);
}

/********************************/
/*********** BTN - 5 ************/
/********************************/
/* Texto con línea completa siempre visible */
.elementor-button.mft-btn-5 {
	font-family: var(--e-global-typography-6d2edf1-font-family), Sans-serif;
	font-size: var(--e-global-typography-6d2edf1-font-size);
	font-weight: var(--e-global-typography-6d2edf1-font-weight);
	color: var(--e-global-color-text);
	background-color: transparent;
	border: none;
	padding: 0;
	transition: all .3s ease;
}

.elementor-button.mft-btn-5::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: var(--e-global-color-text);
	transition: all .3s ease;
}

.elementor-button.mft-btn-5:hover::after {
	background-color: var(--e-global-color-secondary);
}

.elementor-button.mft-btn-5:hover {
	color: var(--e-global-color-secondary);
}


/*********************************/

/************* WPML *************/

/*******************************/

.wpml-elementor-ls {
	display: flex;
	align-items: center;
}

.wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle {
	min-height: 21px;
	padding-right: 20px
}

.wpml-ls-legacy-dropdown-click a {
	color: var(--e-global-color-primary);
	border: none;
	padding: 1px 10px 1px 25px;
	font-weight: 400 !important;
}

.wpml-ls-legacy-dropdown-click .wpml-ls-item-toggle {
	background-color: transparent;
}

.wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle:after {
	content: '\e965	';
	font-family: 'mirai-icofonts';
	border: 0;
	font-size: 10px;
	color: var(--e-global-color-text);
	top: calc(50% - 5px);
	right: 0px;
}

/* Icono de idiomas - Estado normal */
/*.wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle::before {
    display: inline-block;
    width: 18px;
    height: 18px;
    position: absolute;
    left: 0;
    top: 1px;
    content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M9 14.6362C9.21875 14.6362 9.84375 14.4175 10.4688 13.1362C10.75 12.5737 11 11.9175 11.1562 11.1362H6.8125C7 11.9175 7.21875 12.5737 7.5 13.1362C8.15625 14.4175 8.75 14.6362 9 14.6362ZM6.5625 9.63623H11.4062C11.4688 9.16748 11.5 8.66748 11.5 8.13623C11.5 7.63623 11.4688 7.13623 11.4062 6.63623H6.5625C6.5 7.13623 6.5 7.63623 6.5 8.13623C6.5 8.66748 6.5 9.16748 6.5625 9.63623ZM6.8125 5.13623H11.1562C11 4.38623 10.75 3.72998 10.4688 3.16748C9.84375 1.88623 9.21875 1.63623 9 1.63623C8.75 1.63623 8.15625 1.88623 7.5 3.16748C7.21875 3.72998 7 4.38623 6.8125 5.13623ZM12.9062 6.63623C12.9688 7.13623 12.9688 7.63623 12.9688 8.13623C12.9688 8.66748 12.9688 9.16748 12.9062 9.63623H15.3125C15.4375 9.16748 15.5 8.66748 15.5 8.13623C15.5 7.63623 15.4375 7.13623 15.3125 6.63623H12.9062ZM14.75 5.13623C14.0938 3.85498 13 2.82373 11.6875 2.22998C12.125 3.04248 12.4688 4.04248 12.6875 5.13623H14.75ZM5.28125 5.13623C5.5 4.04248 5.84375 3.04248 6.28125 2.22998C4.96875 2.82373 3.875 3.85498 3.21875 5.13623H5.28125ZM2.65625 6.63623C2.5625 7.13623 2.5 7.63623 2.5 8.13623C2.5 8.66748 2.53125 9.16748 2.65625 9.63623H5.0625C5 9.16748 5 8.66748 5 8.13623C5 7.63623 5 7.13623 5.0625 6.63623H2.65625ZM11.6875 14.0737C13 13.48 14.0938 12.4487 14.75 11.1362H12.6875C12.4688 12.2612 12.125 13.2612 11.6875 14.0737ZM6.28125 14.0737C5.84375 13.2612 5.5 12.2612 5.28125 11.1362H3.21875C3.875 12.4487 4.96875 13.48 6.28125 14.0737ZM9 16.1362C6.125 16.1362 3.5 14.6362 2.0625 12.1362C0.625 9.66748 0.625 6.63623 2.0625 4.13623C3.5 1.66748 6.125 0.13623 9 0.13623C11.8438 0.13623 14.4688 1.66748 15.9062 4.13623C17.3438 6.63623 17.3438 9.66748 15.9062 12.1362C14.4688 14.6362 11.8438 16.1362 9 16.1362Z" fill="%232b5170"/></svg>');
}

.wpml-ls-legacy-dropdown-click .wpml-ls-current-language:hover>a::before {
    display: inline-block;
    width: 18px;
    height: 18px;
    position: absolute;
    left: 0;
    top: 1px;
    content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M9 14.6362C9.21875 14.6362 9.84375 14.4175 10.4688 13.1362C10.75 12.5737 11 11.9175 11.1562 11.1362H6.8125C7 11.9175 7.21875 12.5737 7.5 13.1362C8.15625 14.4175 8.75 14.6362 9 14.6362ZM6.5625 9.63623H11.4062C11.4688 9.16748 11.5 8.66748 11.5 8.13623C11.5 7.63623 11.4688 7.13623 11.4062 6.63623H6.5625C6.5 7.13623 6.5 7.63623 6.5 8.13623C6.5 8.66748 6.5 9.16748 6.5625 9.63623ZM6.8125 5.13623H11.1562C11 4.38623 10.75 3.72998 10.4688 3.16748C9.84375 1.88623 9.21875 1.63623 9 1.63623C8.75 1.63623 8.15625 1.88623 7.5 3.16748C7.21875 3.72998 7 4.38623 6.8125 5.13623ZM12.9062 6.63623C12.9688 7.13623 12.9688 7.63623 12.9688 8.13623C12.9688 8.66748 12.9688 9.16748 12.9062 9.63623H15.3125C15.4375 9.16748 15.5 8.66748 15.5 8.13623C15.5 7.63623 15.4375 7.13623 15.3125 6.63623H12.9062ZM14.75 5.13623C14.0938 3.85498 13 2.82373 11.6875 2.22998C12.125 3.04248 12.4688 4.04248 12.6875 5.13623H14.75ZM5.28125 5.13623C5.5 4.04248 5.84375 3.04248 6.28125 2.22998C4.96875 2.82373 3.875 3.85498 3.21875 5.13623H5.28125ZM2.65625 6.63623C2.5625 7.13623 2.5 7.63623 2.5 8.13623C2.5 8.66748 2.53125 9.16748 2.65625 9.63623H5.0625C5 9.16748 5 8.66748 5 8.13623C5 7.63623 5 7.13623 5.0625 6.63623H2.65625ZM11.6875 14.0737C13 13.48 14.0938 12.4487 14.75 11.1362H12.6875C12.4688 12.2612 12.125 13.2612 11.6875 14.0737ZM6.28125 14.0737C5.84375 13.2612 5.5 12.2612 5.28125 11.1362H3.21875C3.875 12.4487 4.96875 13.48 6.28125 14.0737ZM9 16.1362C6.125 16.1362 3.5 14.6362 2.0625 12.1362C0.625 9.66748 0.625 6.63623 2.0625 4.13623C3.5 1.66748 6.125 0.13623 9 0.13623C11.8438 0.13623 14.4688 1.66748 15.9062 4.13623C17.3438 6.63623 17.3438 9.66748 15.9062 12.1362C14.4688 14.6362 11.8438 16.1362 9 16.1362Z" fill="%231a3143"/></svg>') !important;
}*/

.wpml-ls-legacy-dropdown-click a.wpml-ls-link {
	padding: 7px 10px 7px 10px;
	text-align: center;
	background-color: var(--e-global-color-bd9d5b8);
}

.wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu a {
	border-width: 0;
}

.wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu {
	border-top: none;
	background-color: var(--e-global-color-bd9d5b8);
}

.wpml-ls-legacy-dropdown-click {
	transition: .3s ease-in-out;
}


/* Hover solo en los elementos dentro del submenú */
.wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu a:hover,
.wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu a:focus {
	color: var(--e-global-color-secondary);
	background-color: var(--e-global-color-bd9d5b8);
}

/* Evita que el idioma actual cambie al abrir o hacer hover en el contenedor */
.wpml-ls-legacy-dropdown-click .wpml-ls-current-language>a {
	background: transparent !important;
	color: var(--e-global-color-text) !important;
	font-weight: 400 !important;
}

.wpml-ls-legacy-dropdown-click .wpml-ls-current-language:hover>a>span {
	color: var(--e-global-color-secondary) !important;
}

.wpml-ls-legacy-dropdown-click .wpml-ls-current-language>a:hover,
.wpml-ls-legacy-dropdown-click .wpml-ls-current-language>a:focus {
	background: transparent !important;
	color: inherit !important;
}

.wpml-ls-legacy-dropdown-click a.wpml-ls-link {
	position: relative;
}

.wpml-ls-legacy-dropdown-click a.wpml-ls-link:after {
	content: "";
	position: absolute;
	height: 2px;
	width: 20px;
	background: transparent;
	bottom: 3px;
	left: 50%;
	transform: translateX(-50%);
	transition: .3s ease-in-out;
}

.wpml-ls-legacy-dropdown-click a.wpml-ls-link:hover::after {
	background: var(--e-global-color-primary);
}

@media (max-width: 1024px) {

	/* hide language and arrow in tb */
	/*.wpml-ls-legacy-dropdown-click .wpml-ls-current-language a.wpml-ls-item-toggle .wpml-ls-native,
    .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle:after {
        display: none;
    }*/

	/* to remove the space after hiding the arrow */
	/*.wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle {
        padding-right: 0;
    }*/

	.wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu {
		background-color: var(--e-global-color-bd9d5b8);
	}

	.wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu a:hover,
	.wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu a:focus {
		color: var(--e-global-color-text);
		background: var(--e-global-color-bd9d5b8);
	}

	/* the space for the language drop-down */
	.wpml-ls-legacy-dropdown-click a {
		padding: 1px 10px 1px 19px;
	}

	.wpml-ls-legacy-dropdown-click a.wpml-ls-link {
		padding: 5px 0;
		font-size: 13px;
	}

	.icons-responsive .wpml-ls-legacy-dropdown-click a.wpml-ls-link {
		padding: 7px 10px 7px 10px;
		text-align: center;
		background-color: var(--e-global-color-52235058);
		color: var(--e-global-color-primary) !important;
	}

	/* Estado normal */
	.wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle::before {
		display: inline-block;
		width: 22px;
		height: 22px;
		position: absolute;
		left: 0 !important;
		top: 24px;
		content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M9 14.6362C9.21875 14.6362 9.84375 14.4175 10.4688 13.1362C10.75 12.5737 11 11.9175 11.1562 11.1362H6.8125C7 11.9175 7.21875 12.5737 7.5 13.1362C8.15625 14.4175 8.75 14.6362 9 14.6362ZM6.5625 9.63623H11.4062C11.4688 9.16748 11.5 8.66748 11.5 8.13623C11.5 7.63623 11.4688 7.13623 11.4062 6.63623H6.5625C6.5 7.13623 6.5 7.63623 6.5 8.13623C6.5 8.66748 6.5 9.16748 6.5625 9.63623ZM6.8125 5.13623H11.1562C11 4.38623 10.75 3.72998 10.4688 3.16748C9.84375 1.88623 9.21875 1.63623 9 1.63623C8.75 1.63623 8.15625 1.88623 7.5 3.16748C7.21875 3.72998 7 4.38623 6.8125 5.13623ZM12.9062 6.63623C12.9688 7.13623 12.9688 7.63623 12.9688 8.13623C12.9688 8.66748 12.9688 9.16748 12.9062 9.63623H15.3125C15.4375 9.16748 15.5 8.66748 15.5 8.13623C15.5 7.63623 15.4375 7.13623 15.3125 6.63623H12.9062ZM14.75 5.13623C14.0938 3.85498 13 2.82373 11.6875 2.22998C12.125 3.04248 12.4688 4.04248 12.6875 5.13623H14.75ZM5.28125 5.13623C5.5 4.04248 5.84375 3.04248 6.28125 2.22998C4.96875 2.82373 3.875 3.85498 3.21875 5.13623H5.28125ZM2.65625 6.63623C2.5625 7.13623 2.5 7.63623 2.5 8.13623C2.5 8.66748 2.53125 9.16748 2.65625 9.63623H5.0625C5 9.16748 5 8.66748 5 8.13623C5 7.63623 5 7.13623 5.0625 6.63623H2.65625ZM11.6875 14.0737C13 13.48 14.0938 12.4487 14.75 11.1362H12.6875C12.4688 12.2612 12.125 13.2612 11.6875 14.0737ZM6.28125 14.0737C5.84375 13.2612 5.5 12.2612 5.28125 11.1362H3.21875C3.875 12.4487 4.96875 13.48 6.28125 14.0737ZM9 16.1362C6.125 16.1362 3.5 14.6362 2.0625 12.1362C0.625 9.66748 0.625 6.63623 2.0625 4.13623C3.5 1.66748 6.125 0.13623 9 0.13623C11.8438 0.13623 14.4688 1.66748 15.9062 4.13623C17.3438 6.63623 17.3438 9.66748 15.9062 12.1362C14.4688 14.6362 11.8438 16.1362 9 16.1362Z" fill="%23202020"/></svg>');
	}

	/* Hover */
	.wpml-ls-legacy-dropdown-click .wpml-ls-current-language:hover>a::before {
		display: inline-block;
		width: 22px;
		height: 22px;
		position: absolute;
		left: 0 !important;
		top: 24px;
		content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M9 14.6362C9.21875 14.6362 9.84375 14.4175 10.4688 13.1362C10.75 12.5737 11 11.9175 11.1562 11.1362H6.8125C7 11.9175 7.21875 12.5737 7.5 13.1362C8.15625 14.4175 8.75 14.6362 9 14.6362ZM6.5625 9.63623H11.4062C11.4688 9.16748 11.5 8.66748 11.5 8.13623C11.5 7.63623 11.4688 7.13623 11.4062 6.63623H6.5625C6.5 7.13623 6.5 7.63623 6.5 8.13623C6.5 8.66748 6.5 9.16748 6.5625 9.63623ZM6.8125 5.13623H11.1562C11 4.38623 10.75 3.72998 10.4688 3.16748C9.84375 1.88623 9.21875 1.63623 9 1.63623C8.75 1.63623 8.15625 1.88623 7.5 3.16748C7.21875 3.72998 7 4.38623 6.8125 5.13623ZM12.9062 6.63623C12.9688 7.13623 12.9688 7.63623 12.9688 8.13623C12.9688 8.66748 12.9688 9.16748 12.9062 9.63623H15.3125C15.4375 9.16748 15.5 8.66748 15.5 8.13623C15.5 7.63623 15.4375 7.13623 15.3125 6.63623H12.9062ZM14.75 5.13623C14.0938 3.85498 13 2.82373 11.6875 2.22998C12.125 3.04248 12.4688 4.04248 12.6875 5.13623H14.75ZM5.28125 5.13623C5.5 4.04248 5.84375 3.04248 6.28125 2.22998C4.96875 2.82373 3.875 3.85498 3.21875 5.13623H5.28125ZM2.65625 6.63623C2.5625 7.13623 2.5 7.63623 2.5 8.13623C2.5 8.66748 2.53125 9.16748 2.65625 9.63623H5.0625C5 9.16748 5 8.66748 5 8.13623C5 7.63623 5 7.13623 5.0625 6.63623H2.65625ZM11.6875 14.0737C13 13.48 14.0938 12.4487 14.75 11.1362H12.6875C12.4688 12.2612 12.125 13.2612 11.6875 14.0737ZM6.28125 14.0737C5.84375 13.2612 5.5 12.2612 5.28125 11.1362H3.21875C3.875 12.4487 4.96875 13.48 6.28125 14.0737ZM9 16.1362C6.125 16.1362 3.5 14.6362 2.0625 12.1362C0.625 9.66748 0.625 6.63623 2.0625 4.13623C3.5 1.66748 6.125 0.13623 9 0.13623C11.8438 0.13623 14.4688 1.66748 15.9062 4.13623C17.3438 6.63623 17.3438 9.66748 15.9062 12.1362C14.4688 14.6362 11.8438 16.1362 9 16.1362Z" fill="%23696059"/></svg>') !important;
	}


	/* Estado normal pop-up menu*/
	.icons-responsive .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle::before {
		display: inline-block;
		width: 25px;
		height: 25px;
		position: absolute;
		left: 0;
		top: 24px;
		content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M9 14.6362C9.21875 14.6362 9.84375 14.4175 10.4688 13.1362C10.75 12.5737 11 11.9175 11.1562 11.1362H6.8125C7 11.9175 7.21875 12.5737 7.5 13.1362C8.15625 14.4175 8.75 14.6362 9 14.6362ZM6.5625 9.63623H11.4062C11.4688 9.16748 11.5 8.66748 11.5 8.13623C11.5 7.63623 11.4688 7.13623 11.4062 6.63623H6.5625C6.5 7.13623 6.5 7.63623 6.5 8.13623C6.5 8.66748 6.5 9.16748 6.5625 9.63623ZM6.8125 5.13623H11.1562C11 4.38623 10.75 3.72998 10.4688 3.16748C9.84375 1.88623 9.21875 1.63623 9 1.63623C8.75 1.63623 8.15625 1.88623 7.5 3.16748C7.21875 3.72998 7 4.38623 6.8125 5.13623ZM12.9062 6.63623C12.9688 7.13623 12.9688 7.63623 12.9688 8.13623C12.9688 8.66748 12.9688 9.16748 12.9062 9.63623H15.3125C15.4375 9.16748 15.5 8.66748 15.5 8.13623C15.5 7.63623 15.4375 7.13623 15.3125 6.63623H12.9062ZM14.75 5.13623C14.0938 3.85498 13 2.82373 11.6875 2.22998C12.125 3.04248 12.4688 4.04248 12.6875 5.13623H14.75ZM5.28125 5.13623C5.5 4.04248 5.84375 3.04248 6.28125 2.22998C4.96875 2.82373 3.875 3.85498 3.21875 5.13623H5.28125ZM2.65625 6.63623C2.5625 7.13623 2.5 7.63623 2.5 8.13623C2.5 8.66748 2.53125 9.16748 2.65625 9.63623H5.0625C5 9.16748 5 8.66748 5 8.13623C5 7.63623 5 7.13623 5.0625 6.63623H2.65625ZM11.6875 14.0737C13 13.48 14.0938 12.4487 14.75 11.1362H12.6875C12.4688 12.2612 12.125 13.2612 11.6875 14.0737ZM6.28125 14.0737C5.84375 13.2612 5.5 12.2612 5.28125 11.1362H3.21875C3.875 12.4487 4.96875 13.48 6.28125 14.0737ZM9 16.1362C6.125 16.1362 3.5 14.6362 2.0625 12.1362C0.625 9.66748 0.625 6.63623 2.0625 4.13623C3.5 1.66748 6.125 0.13623 9 0.13623C11.8438 0.13623 14.4688 1.66748 15.9062 4.13623C17.3438 6.63623 17.3438 9.66748 15.9062 12.1362C14.4688 14.6362 11.8438 16.1362 9 16.1362Z" fill="%23ffffff"/></svg>');
	}

	/* Estado hover y active pop-up menu*/
	.icons-responsive .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle:focus::before,
	.icons-responsive .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle:hover::before,
	.icons-responsive .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle:active::before {
		display: inline-block;
		width: 25px;
		height: 25px;
		position: absolute;
		left: 0;
		top: 24px;
		content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M9 14.6362C9.21875 14.6362 9.84375 14.4175 10.4688 13.1362C10.75 12.5737 11 11.9175 11.1562 11.1362H6.8125C7 11.9175 7.21875 12.5737 7.5 13.1362C8.15625 14.4175 8.75 14.6362 9 14.6362ZM6.5625 9.63623H11.4062C11.4688 9.16748 11.5 8.66748 11.5 8.13623C11.5 7.63623 11.4688 7.13623 11.4062 6.63623H6.5625C6.5 7.13623 6.5 7.63623 6.5 8.13623C6.5 8.66748 6.5 9.16748 6.5625 9.63623ZM6.8125 5.13623H11.1562C11 4.38623 10.75 3.72998 10.4688 3.16748C9.84375 1.88623 9.21875 1.63623 9 1.63623C8.75 1.63623 8.15625 1.88623 7.5 3.16748C7.21875 3.72998 7 4.38623 6.8125 5.13623ZM12.9062 6.63623C12.9688 7.13623 12.9688 7.63623 12.9688 8.13623C12.9688 8.66748 12.9688 9.16748 12.9062 9.63623H15.3125C15.4375 9.16748 15.5 8.66748 15.5 8.13623C15.5 7.63623 15.4375 7.13623 15.3125 6.63623H12.9062ZM14.75 5.13623C14.0938 3.85498 13 2.82373 11.6875 2.22998C12.125 3.04248 12.4688 4.04248 12.6875 5.13623H14.75ZM5.28125 5.13623C5.5 4.04248 5.84375 3.04248 6.28125 2.22998C4.96875 2.82373 3.875 3.85498 3.21875 5.13623H5.28125ZM2.65625 6.63623C2.5625 7.13623 2.5 7.63623 2.5 8.13623C2.5 8.66748 2.53125 9.16748 2.65625 9.63623H5.0625C5 9.16748 5 8.66748 5 8.13623C5 7.63623 5 7.13623 5.0625 6.63623H2.65625ZM11.6875 14.0737C13 13.48 14.0938 12.4487 14.75 11.1362H12.6875C12.4688 12.2612 12.125 13.2612 11.6875 14.0737ZM6.28125 14.0737C5.84375 13.2612 5.5 12.2612 5.28125 11.1362H3.21875C3.875 12.4487 4.96875 13.48 6.28125 14.0737ZM9 16.1362C6.125 16.1362 3.5 14.6362 2.0625 12.1362C0.625 9.66748 0.625 6.63623 2.0625 4.13623C3.5 1.66748 6.125 0.13623 9 0.13623C11.8438 0.13623 14.4688 1.66748 15.9062 4.13623C17.3438 6.63623 17.3438 9.66748 15.9062 12.1362C14.4688 14.6362 11.8438 16.1362 9 16.1362Z" fill="%237EAED6"/></svg>') !important;
	}


}

/**************************************/

/*********** MASHUP OFFERS ***********/

/************************************/

/***** GENERAL STYLES *****/
.mashup-1 .offers-mashup-slide,
.mashup-2 .offers-mashup-slide {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--mft-space-xs);
}

/* title */
.offers-mashup dl dt {
	font-family: var(--e-global-typography-fcce242-font-family);
	font-size: 24px;
	font-weight: var(--e-global-typography-fcce242-font-weight);
	line-height: var(--e-global-typography-fcce242-line-height);
}

/* discount */
.offers-mashup dl dd {
	font-family: var(--e-global-typography-8035a56-font-family), Sans-serif;
	font-size: var(--e-global-typography-8035a56-font-size);
	font-weight: var(--e-global-typography-8035a56-font-weight);
	line-height: var(--e-global-typography-8035a56-line-height);
}

/* button */
.offers-mashup dl .more-info-link {
	font-family: var(--e-global-typography-6d2edf1-font-family), Sans-serif;
	font-size: var(--e-global-typography-8035a56-font-size);
	font-weight: var(--e-global-typography-6d2edf1-font-weight);
	color: var(--e-global-color-text);
	background-color: transparent;
	padding: var(--mft-space-2xs) var(--mft-space-xs);
	border: 2px solid;
	display: inline-block;
	text-transform: none;
	transition: all .3s ease;
}

.offers-mashup dl .more-info-link:hover {
	color: var(--e-global-color-47eea86e);
	fill: var(--e-global-color-47eea86e);
	background-color: var(--e-global-color-primary);
	border: 2px solid var(--e-global-color-primary);
}

/***** MASHUP 1 - 2 fixed offers, with photo and without carousel *****/
.mashup-1 .offers-mashup-slide dl {
	background: var(--e-global-color-47eea86e);
}

.mashup-1 .offers-mashup-slide dl img {
	width: 100%;
	height: 250px;
	object-fit: cover;
}

.mashup-1 .offers-mashup dl dt {
	padding: var(--mft-space-s) var(--mft-space-xs) var(--mft-space-3xs);
}

.mashup-1 .offers-mashup dl dd {
	padding: var(--mft-space-2xs) var(--mft-space-xs) var(--mft-space-s);
}

/***** MASHUP 2 - 2 fixed offers, without photo and without carousel *****/
.mashup-2 .offers-mashup-slide dl {
	background-color: var(--e-global-color-f79e654);
	padding: var(--mft-space-l);
}

.mashup-2 .offers-mashup dl dt {
	border-bottom: 2px solid var(--e-global-color-text);
	padding: 0 35px 24px;
	margin-bottom: 24px;
	position: relative;
}

.mashup-2 .offers-mashup dl dt:before {
	content: "\e997";
	font-family: 'mirai-icofonts';
	color: var(--e-global-color-text);
	position: absolute;
	left: 0;
}

/***** MASHUP 3 - with photo and carousel (flickity) *****/
.mashup-3 .offers-mashup dl dt {
	padding: var(--mft-space-s) 0;
}

.mashup-3 .offers-mashup dl dd {
	padding-bottom: var(--mft-space-s);
}

.mashup-3 [data-custom-flickity-params] {
	padding-bottom: 50px;
}

.mashup-3 .offers-mashup dl {
	width: 33%;
	gap: 10px;
	margin: 0 5px;
}

.mashup-3 .flickity-button {
	color: var(--e-global-color-accent) !important;
	padding: var(--mft-space-3xs);
	background: #FFFFFF99 !important;
	box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.16);
	transition: all .3s ease-out;
}

.mashup-3 .flickity-button:hover {
	background: #fff;
	cursor: pointer;
	color: var(--e-global-color-47eea86e) !important;
	background: var(--e-global-color-accent) !important;
}

.mashup-3 .flickity-page-dots .dot {
	background: var(--e-global-color-accent);
}

.mashup-3 [data-custom-flickity-params] .offers-mashup-inner img {
	width: 100%;
	height: 250px;
	object-fit: cover;
}

@media (max-width:1024px) {
	.mashup-3 .offers-mashup dl {
		width: 50%;
	}
}

@media (max-width:767px) {

	.mashup-1 .offers-mashup-slide,
	.mashup-2 .offers-mashup-slide {
		grid-template-columns: 1fr;
	}

	[data-custom-flickity-params] .carousell-cell {
		width: 100%;
	}

	.mashup-3 .offers-mashup dl {
		width: 100%;
	}
}

/****************************************/

/***** START LEGAL PAGE TEXT WIDGET *****/

/****************************************/

/***** COOKIES POLICY ******/
.cookies-section {
	max-width: var(--width-m);
	margin: 0 auto;
	box-sizing: border-box;
	padding: 60px 0;
}

.cookies-section a {
	font-weight: bold;
	transition: .3s ease-in-out;
}

.cookies-section a:hover {
	color: var(--e-global-color-primary);
}

/***** LEGAL NOTICE ******/

/* Heading H1 */
.mft-legal-text h1 {
	font-family: var(--e-global-typography-primary-font-family);
	font-size: var(--e-global-typography-primary-font-size);
	font-weight: var(--e-global-typography-primary-font-weight);
	line-height: var(--e-global-typography-primary-line-height);
	padding-bottom: 20px;
}

/* Heading H2 */
.mft-legal-text h2,
.cookies-section .elementor-widget-wrap .elementor-widget-heading:first-child .mi-title3 {
	font-family: var(--e-global-typography-secondary-font-family);
	font-size: var(--e-global-typography-secondary-font-size);
	font-weight: var(--e-global-typography-secondary-font-weight);
	line-height: var(--e-global-typography-secondary-line-height);
	padding-bottom: 20px;
}

/* Heading H3*/
.mft-legal-text h3 {
	font-family: var(--e-global-typography-accent-font-family);
	font-size: var(--e-global-typography-accent-font-size);
	font-weight: var(--e-global-typography-accent-font-weight);
	line-height: var(--e-global-typography-accent-line-height);
	padding-bottom: 20px;
}

/* Heading H4*/
.mft-legal-text h4,
.cookies-section .mi-title3 {
	font-family: var(--e-global-typography-962030d-font-family), Sans-serif;
	font-size: var(--e-global-typography-962030d-font-size);
	font-weight: var(--e-global-typography-962030d-font-weight);
	line-height: var(--e-global-typography-962030d-line-height);
	padding-bottom: 20px;
}

.mft-legal-text h2:not(:first-of-type),
.mft-legal-text h3,
.mft-legal-text h4,
.cookies-section .mi-title3 {
	margin: 30px 0 0;
}

/* LINKS */
.mft-legal-text a {
	text-wrap: wrap;
	overflow-wrap: break-word;
	text-decoration: none;
	color: var(--e-global-color-primary);
	transition: .3s ease-in-out;
}

.mft-legal-text a:hover {
	color: var(--e-global-color-13f4851a);
}

.mft-legal-text a span {
	color: inherit !important;
}

/* SPACE AFTER ELEMENTS */
.mft-legal-text p,
.mft-legal-text ul,
.mft-legal-text ol {
	margin-bottom: 15px;
}

/* LISTS */
.mft-legal-text ol {
	padding-left: 18px;
}

.mft-legal-text ol li {
	list-style-type: disc;
	list-style-position: outside;
	overflow-wrap: break-word;
	margin-bottom: 5px;
}

.mft-legal-text ul {
	padding-left: 35px;
}

.mft-legal-text ul li {
	list-style-type: circle;
	list-style-position: outside;
	overflow-wrap: break-word;
	margin-bottom: 5px;
}

/* TABLE STYLE */
.mft-legal-text table tr:first-child {
	background-color: var(--e-global-color-primary);
	color: var(--e-global-color-47eea86e);
}

/* Table general styles */
.mft-legal-text table {
	background-color: transparent;
	width: 100%;
	font-size: 1em;
	border-spacing: 0;
	border-collapse: collapse;
	margin: 30px 0;
}

@media (max-width:1023px) {
	.mft-legal-text table {
		max-width: 100%;
		overflow-x: auto;
		display: block;
	}
}

/* Table cell padding and styles */
.mft-legal-text table td,
.mft-legal-text table th {
	padding: 15px;
	line-height: 1.5em;
	vertical-align: top;
	border: 1px solid var(--e-global-color-15b9b07);
	min-width: 200px;
}

/* Background of odd table rows */
.mft-legal-text table tbody>tr:nth-child(odd)>td,
.mft-legal-text table tbody>tr:nth-child(odd)>th {
	background-color: #09090912;
}

.mft-legal-text table a:hover {
	text-decoration: none;
}

/**************************************/

/*********** DYNAMIC PAGES ***********/

/************************************/

/***** GENERAL STYLE *****/

.rooms-detail-wrapper .room{
	background-color: transparent !important;
}

/* ICONS -- these icons are painted on the room detail and offer pages */
a.back-link:before,
a.fwd-link:after,
a.down-link:after {
	content: '\e976';
	font-family: 'mirai-icofonts';
	font-size: .85em;
	line-height: .85em;
	font-weight: normal;
	margin: 0 .5em;
	vertical-align: middle;
	display: inline-block;
	text-decoration: none;
	-webkit-transition: all .2s ease-out;
	transition: all .2s ease-out;
}

a.back-link{
    font-weight: 600;
}

a.back-link:hover{
    font-weight: 600;
    color: var(--e-global-color-secondary);
}

a.fwd-link:after {
	content: '\e967';
}

a.down-link:after {
	content: '\e965';
}

a.fwd-link:hover,
.back a:hover,
a.down-link:hover {
	text-decoration: none;
}

a.fwd-link:hover:after {
	margin-left: 1em;
	margin-right: 0;
}

.back a:hover:before {
	margin-right: 1em;
	margin-left: 0;
}

a.down-link:hover:after {
	-webkit-transform: translateY(0.3em);
	transform: translateY(0.3em);
}

/* hide finder in room detail & offer detail */
body:is(.cat-room-detail, .cat-offer-detail) .mft-wrapper-finder-header,
body:is(.cat-room-detail, .cat-offer-detail) .mft-wrapper-finder {
	display: none !important;
}

/* container */
.rooms-listing-wrapper,
.rooms-detail-wrapper {
	max-width: var(--width-m);
	margin: 0 auto;
	box-sizing: border-box;
}

.offers-listing-wrapper,
.offers-detail-wrapper {
	max-width: var(--width-m);
	margin: 0 auto;
	box-sizing: border-box;
	padding: 40px 0px;
}

.offers-listing{
	row-gap: 24px;
}

.no-offers {
    padding-inline: var(--mft-space-s);
	text-align: center;
}

/* titles rooms & detail room */
.rooms-listing-wrapper h2,
.rooms-listing-wrapper .room-box h3 a,
.rooms-detail-wrapper h3 {
	font-family: var(--e-global-typography-962030d-font-family), Sans-serif;
	font-size: var(--e-global-typography-962030d-font-size);
	font-weight: var(--e-global-typography-962030d-font-weight);
	line-height: var(--e-global-typography-962030d-line-height);
	text-decoration: none;
	text-transform: none;
	transition: .3s ease-in-out;
}

.rooms-detail-wrapper h2 {
    font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
    font-size: var(--e-global-typography-secondary-font-size);
    font-weight: 700;
    line-height: var(--e-global-typography-secondary-line-height);
    text-decoration: none;
    transition: .3s ease-in-out;
    color: var(--e-global-color-text) !important;
}

.rooms-detail-wrapper a {
    color: var(--e-global-color-primary) !important;
}

/* hover title room */
.rooms-listing-wrapper .room-box h3 a:hover {
	color: var(--e-global-color-primary) !important;
}

.offers-listing-wrapper h2,
/* title intro offer */
.offers-listing .offer .offer-title,
/* title offer */
.offers-detail-wrapper .offer-wrapper .offer-title,
/* title offer detail */
.offers-listing-4 .offer-text h3

/* title card offer tpl 4*/
	{
	font-family: var(--e-global-typography-962030d-font-family), Sans-serif;
	font-size: var(--e-global-typography-962030d-font-size);
	font-weight: var(--e-global-typography-962030d-font-weight);
	line-height: var(--e-global-typography-962030d-line-height);
}

.offers-listing .offer .offer-title {
	font-size: 27px;
	width: 100%;
}

/* decoration title underlined */
/*.offers-listing .offer .offer-title:after,
.offers-detail-wrapper .offer-header-content-wrapper .offer-title:after {
	content: "";
	width: 70px;
	height: 3px;
	background: var(--e-global-color-primary);
	display: block;
	margin: var(--mft-space-2xs) 0;
}*/

/***** btn - more information & offer-button *****/
.rooms-listing-wrapper .room-box a.more-info,
.rooms-listing-wrapper .room-box .room-intro a,
.offers-listing .offer .offer-button {
	font-family: var(--e-global-typography-6d2edf1-font-family), Sans-serif;
	font-size: var(--e-global-typography-6d2edf1-font-size);
	font-weight: var(--e-global-typography-6d2edf1-font-weight);
	color: var(--e-global-color-47eea86e);
	background-color: var(--e-global-color-primary);
	border: 2px solid var(--e-global-color-primary);
	padding: var(--mft-space-2xs) var(--mft-space-xs);
	transition: all .3s ease;
}

/* hover btn - more information & button */

.offers-listing .offer .offer-button:hover {
	background-color: var(--e-global-color-13f4851a);
	border: 2px solid var(--e-global-color-13f4851a);
}

/* btn - more information */
.rooms-listing-wrapper .room-box a.more-info,
.rooms-listing-wrapper .room-box .room-intro a {
	margin-top: var(--mft-space-m);
	display: block !important;
	width: max-content;
	text-decoration: none !important;
	font-family: var(--e-global-typography-6d2edf1-font-family), Sans-serif;
	font-size: 14px;
	font-weight: var(--e-global-typography-6d2edf1-font-weight);
	color: var(--e-global-color-47eea86e);
	background-color: var(--e-global-color-primary);
	padding: var(--mft-space-2xs) var(--mft-space-xs);
	letter-spacing: var(--e-global-typography-6d2edf1-letter-spacing);
	transition: all .3s ease;
	text-transform: uppercase;
}

.rooms-listing-wrapper .room-box a.more-info:hover,
.rooms-listing-wrapper .room-box .room-intro a:hover {
	background-color: var(--e-global-color-secondary);
	border-color: var(--e-global-color-secondary);
	color: var(--e-global-color-47eea86e);
}

/* btn -  offer-button */
.offers-listing .offer .offer-button {
	position: relative !important;
	bottom: 0;
	right: 0;
	display: inline-block;
	margin: 10px 35px;
}

.room-box .room-content ul.exclusive-services {
	margin: 15px 0;
	padding-left: 0;
}

/* btn - more information full width & center mobile */
@media (max-width:767px) {

	.rooms-listing-wrapper .room-box a.more-info,
	.rooms-listing-wrapper .room-box .room-intro a {
		width: auto;
		text-align: center;
	}

	.offers-listing .offer .offer-button {
		display: block;
	}

}

/***** icons and room description text *****/
.rooms-listing-1 .room-box .room-detail ul li {
	font-weight: 500;
}

.rooms-listing-wrapper .room-box .room-detail ul li span.occupancies-ico,
.rooms-listing-wrapper .room-box .room-detail ul li span.size-ico,
.rooms-listing-wrapper .room-box .room-detail ul li span.distibution-ico {
	background-image: none !important;
	width: auto;
	height: auto;
}

.rooms-listing-wrapper .room-box .room-detail ul li span.occupancies-ico:before,
.rooms-listing-wrapper .room-box .room-detail ul li span.size-ico:before,
.rooms-listing-wrapper .room-box .room-detail ul li span.distibution-ico:before {
	font-family: 'mirai-icofonts';
	font-size: 25px;
	padding-right: 5px;
	color: var(--e-global-color-primary);
}

.rooms-listing-wrapper .room-box .room-detail ul li span.occupancies-ico:before {
	content: "\ea44";
}

.rooms-listing-wrapper .room-box .room-detail ul li span.size-ico:before {
	content: "\e97e";
}

.rooms-listing-wrapper .room-box .room-detail ul li span.distibution-ico:before {
	content: "\eaa0";
}

/********** TEMPLATES ROOMS **********/

/* ROOM TEMPLATE 1 */
.rooms-listing-wrapper .common-features h2,
.offers-listing-wrapper h2 {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	font-size: var(--e-global-typography-secondary-font-size);
	font-weight: 700;
	line-height: var(--e-global-typography-secondary-line-height);
	transition: .3s ease-in-out;
	color: var(--e-global-color-text) !important;
}

.rooms-listing-wrapper .common-features p {
	font-family: var(--e-global-typography-0668596-font-family), Sans-serif;
	font-size: var(--e-global-typography-0668596-font-size);
	font-weight: 600;
	line-height: var(--e-global-typography-0668596-line-height);
	margin-bottom: 12px;
	color: var(--e-global-color-primary) !important;
}

.rooms-listing-wrapper .common-features .common-services {
	font-family: var(--e-global-typography-text-font-family), Sans-serif;
	font-size: var(--e-global-typography-text-font-size);
	line-height: var(--e-global-typography-text-line-height);
	color: var(--e-global-color-text) !important;
}

.rooms-listing-wrapper .common-features .common-services li {
	list-style-position: inside !important;
	text-align: left;
}

.rooms-listing-wrapper .common-features .common-services li::marker {
	font-family: 'mirai-icofonts';
	content: '\e983';
	font-size: 12px;
	color: var(--e-global-color-primary);
}

.room-box .room-detail h3 {
	font-family: var(--e-global-typography-accent-font-family), Sans-serif;
	font-size: var(--e-global-typography-accent-font-size);
	line-height: var(--e-global-typography-accent-line-height);
	font-weight: var(--e-global-typography-accent-font-weight);
	color: var(--e-global-color-text) !important;
}

.rooms-listing-1 .room-box .room-detail ul {
	background: #fff !important;
	text-align: center;
	padding: 16px;
	margin: var(--mft-space-xs) 0 var(--mft-space-2xs) 0;
}

.rooms-listing-1 .room-box .room-detail ul li {
	width: auto !important;
	padding-right: var(--mft-space-s);
	font-family: var(--e-global-typography-8035a56-font-family), Sans-serif;
	font-size: var(--e-global-typography-8035a56-font-size);
	color: var(--e-global-color-text);
}

.rooms-listing-1 .room-box .room-content .room-price {
	border-top: none;
}

.rooms-listing-1 .room-box .room-content .room-price .box-from .box-price,
.rooms-listing-1 .room-box .room-content .room-price .box-from .price-description {
	color: var(--e-global-color-text);
}

.rooms-listing-1 .room-box .room-content .room-price .box-from .box-price {
	font-weight: bold;
	
}

@media (min-width:1025px) {
	.rooms-listing-1 .room-box .room-detail {
		padding: 0 var(--mft-space-m) !important;
	}

	.rooms-listing-1 .room-box .room-content {
		padding: 0 var(--mft-space-m) var(--mft-space-m) !important;
	}
}

/* ROOM TEMPLATE 2 */
.rooms-listing-2 .room-box {
	border: none;
}

.rooms-listing-2 .room-box .room-detail {
	padding: 0px 2%;
}

@media (min-width:979px) {

	.rooms-listing-2 .room-box .room-image,
	.rooms-listing-2 .room-box .room-detail {
		width: 50%;
	}

	.rooms-listing-2 .room-box .room-detail ul {
		width: 50%;
		left: auto;
	}
}

@media (max-width:979px) {
	.rooms-listing-2 .room-detail h3 {
		padding-top: var(--mft-space-m);
	}
}

/* ROOM TEMPLATE 3 */
.rooms-listing-3 .room-item h3 {
	font-family: var(--e-global-typography-962030d-font-family), Sans-serif;
	font-size: var(--e-global-typography-962030d-font-size);
	font-weight: var(--e-global-typography-962030d-font-weight);
	line-height: var(--e-global-typography-962030d-line-height);
	background-color: rgb(32 32 32 / 60%);
}

.rooms-listing-3 a.room-image-link img {
	transition: all .3s ease;
}

.rooms-listing-3 a.room-image-link:hover img {
	filter: brightness(0.8);
}

.rooms-listing-3 .room-item .min-price {
	background-color: var(--e-global-color-primary);
	color: var(--e-global-color-47eea86e);
}

/* ROOM TEMPLATE 4 */
.rooms-listing-4 .room-box .room-image-link {
	position: relative;
	min-height: 400px;
}

.rooms-listing-4 .room-box .room-image-link img {
	position: absolute;
	object-fit: cover;
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
}

.rooms-listing-4 .room-box .room-content {
	background-color: var(--e-global-color-f79e654) !important;
}

/* ROOM TEMPLATE 5 */
.rooms-listing-5 li.item-service::marker {
	font-size: 0;
}

@media (min-width:768px) {
	.rooms-listing-5 .room-box {
		padding: var(--mft-space-l);
		background-color: transparent !important;
	}

	.rooms-listing-5 .room-name,
	.rooms-listing-5 .room-intro {
		padding-right: var(--mft-space-l);
		padding-left: 0;
	}

	.rooms-listing-5 .room-box:nth-child(odd) .room-name,
	.rooms-listing-5 .room-box:nth-child(odd) .room-intro {
		padding-left: var(--mft-space-l);
		padding-right: 0;
	}
}

@media (max-width:767px) {
	.rooms-listing-wrapper .room-box .room-content {
		padding-top: var(--mft-space-m) !important;
	}

	.rooms-listing-4 .room-box .room-image-link {
		min-height: 200px;
	}

	.rooms-listing-4 .room-box .room-content {
		background-color: transparent !important;
	}
}

/* decomment when requesting centred content - for all templates*/
/*.rooms-listing-wrapper .room-detail,
.rooms-listing-wrapper .room-box .room-detail ul,
.rooms-listing-wrapper .room-box .room-content,
.rooms-listing-5 .room-name,
.rooms-listing-5 .room-description {
text-align: center !important;
}*/

/* centring for template 2 and 4 */
/*.rooms-listing-wrapper .room-box .room-content,
.rooms-listing-2 .room-box .room-detail .room-description,
.rooms-listing-4 .room-box .room-description,
.rooms-listing-5 .room-intro .row:last-child {
display: flex;
flex-direction: column;
align-items: center;
}*/

/* centred check-list template 5 */
/*.rooms-listing-5 .room-services-list {
padding-left: var(--mft-space-l);
}*/

/********** TEMPLATE OFFERS **********/

/* OFFER TEMPLATE 1 */
.offers-listing-1 .offers-listing {
	display: flex;
	flex-wrap: wrap;
	gap: var(--mft-space-l);
	padding-top: var(--mft-space-l);
}

.offers-listing-1 .offer {
	margin: 0 auto;
	width: 48%;
}

.offers-listing-1 .offer .offer-photo {
	position: relative;
	height: 350px;
	width: 150px;
}

.offers-listing-1 .offer .offer-photo img {
	position: absolute;
	object-fit: cover;
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
}

.offers-listing-1 .offer .offer-box {
	float: none;
}

.offers-listing-1 .offer .offer-title {
	padding: 25px 35px 0;
}

.offers-listing-1 .offer .offer-date-range {
	padding: 0 35px;
}

.offers-listing-1 .offer-box.box-3 {
	display: none;
}

.offers-listing-1 .offer-link {
	background: var(--e-global-color-f79e654);
}

.offers-listing-1 .offer .offer-description,
.offers-listing-1 .offer .offer-includes {
	margin-right: 0;
	padding: 0 35px 20px;
}

@media (max-width:1024px) {
	.offers-listing-1 .offer {
		width: 45%;
	}
}

@media (max-width:820px) {
	.offers-listing-1 .offers-listing {
		padding-left: 0;
	}

	.offers-listing-1 .offer {
		width: 100%;
	}
}

@media (max-width:767px) {
	.offers-listing-1 .offer .offer-photo {
		height: 150px;
		width: 100%;
	}

	.offers-listing-1 .offer .offer-title {
		padding: 25px 0 0;
	}

	.offers-listing-1 .offer .offer-description,
	.offers-listing-1 .offer .offer-includes {
		padding: 0 0 20px;
	}

	.offers-listing-1 .offer .offer-button {
		margin: 20px 0;
	}

	.offers-listing .offer .offer-title {
		text-align: left;
	}
}

/* OFFER TEMPLATE 2 */
.offers-listing-2 .offer .offer-intro,
.offers-listing-2 .offer .offer-date-range {
	background-color: var(--e-global-color-52235058);
}

.offers-listing-2 .offer .offer-photo {
	width: 100%;
	height: 200px;
	position: relative;
}

.offers-listing-2 .offer .offer-photo img {
	position: absolute;
	object-fit: cover;
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
}

.offers-listing-2 .offer .offer-deco {
	background-color: var(--e-global-color-primary);
}

.offers-listing-2 .offer-deco i:before {
	content: "\ea7a";
	color: var(--e-global-color-eff34ee);
}

.offers-listing-2 .offer .offer-description {
	padding: var(--mft-space-xs);
}

.offers-listing-2 .offer .offer-box {
	background-color: var(--e-global-color-f79e654);
}

.offers-listing-2 .offer .offer-box span,
.offers-detail-wrapper .offer .offer-box span {
	font-family: var(--e-global-typography-fcce242-font-family);
	font-size: var(--e-global-typography-fcce242-font-size);
	font-weight: var(--e-global-typography-fcce242-font-weight);
	line-height: var(--e-global-typography-fcce242-line-height);
	color: var(--e-global-color-text);
}

.rooms-listing-2 .room-box .room-detail .price-box .last-booking {
	color: var(--e-global-color-text);
	background: #ffffffba;
	padding: 5px;
}

@media (min-width:1025px) {
	.offers-listing-2 .offers-listing .offer {
		width: 33%;
	}
}

/* OFFER TEMPLATE 4 */
.offers-listing-4 .offer-text {
	text-align: center;
}

.offers-listing-4 .offer .offer-box {
	min-height: 400px;
	transition: .3s ease-in-out;
}

.offers-listing-4 .offer .offer-box img {
	position: absolute;
	object-fit: cover;
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
}

.offers-listing-4 .offer .offer-box:hover {
	box-shadow: 0px 0px 9px #00000047;
}

/* OFFER TEMPLATE 5 */
.offers-listing-5 .offer .offer-link,
.offers-detail-wrapper.offer-detail-5 .offer-wrapper {
	background: var(--e-global-color-f79e654) !important;
	transition: .3s ease-in-out;
}

.offers-listing-5 .offer .offer-link *,
.offers-detail-wrapper.offer-detail-5 .offer-wrapper {
	color: var(--e-global-color-text) !important;
}

.offers-listing-5 .offer .offer-link:hover {
	box-shadow: 0px 0px 9px #00000047 !important;
}

.offers-listing-5 .offer .offer-link::before {
	opacity: 0 !important;
}

.offers-listing-5 .offer .offer-title,
.offers-detail-wrapper.offer-detail-5 .offer-wrapper .offer-title {
	border-bottom: 2px solid var(--e-global-color-text) !important;
}

.offers-listing-5 .offer .offer-content i:before,
.offers-detail-wrapper.offer-detail-5 .offer-wrapper .offer-title i:before {
	content: "\e997";
	color: var(--e-global-color-text);
}

.offers-listing-5 .offer .offer-date-range {
	left: 30px;
	font-weight: 600;
}

.offers-listing-5 .offer .offer-date-range i:before {
	content: "\e9e2";
	color: var(--e-global-color-primary);
}

.offers-listing-5 .offer .offer-title:after {
	display: none;
}

@media (min-width:1025px) {
	.offers-listing-5 .offers-listing .offer {
		width: 33%;
	}
}

/***** ROOM DETAILS *****/
.rooms-detail-wrapper .room-box-detail ul li div span.ico{
	background-color: var(--e-global-color-bd9d5b8) !important;
}

.rooms-detail-wrapper .room-box-price p{
	font-size:var(--e-global-typography-5c843f5-font-size);
	font-weight: var(--e-global-typography-5c843f5-font-weight);
}

.rooms-detail-wrapper .room-box-common-services h3{
	font-weight: 600;
}

.rooms-detail-wrapper .room-box-services ul,
.rooms-detail-wrapper .room-box-services ul,
.rooms-detail-wrapper .room-box-common-services ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.5rem;
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
}

.rooms-detail-wrapper .room-box-common-services ul:last-of-type {
    padding-top: 0.5rem !important;
    padding-bottom: 40px !important;
}

@media (max-width: 1024px) {

    .rooms-detail-wrapper .room-box-services ul,
    .rooms-detail-wrapper .room-box-services ul,
    .rooms-detail-wrapper .room-box-common-services ul {
        grid-template-columns: repeat(2, 1fr);
        gap: 1rem;
    }

    .rooms-detail-wrapper .room-box-common-services ul:last-of-type {
        padding-top: 1rem !important;
        padding-bottom: 32px !important;
    }
}

@media (max-width: 600px) {

    .rooms-detail-wrapper .room-box-services ul,
    .rooms-detail-wrapper .room-box-services ul,
    .rooms-detail-wrapper .room-box-common-services ul {
        grid-template-columns: 1fr;
    }
}

.calendar-wrapper.calendar-type1 {
	border-top: 0;
}

.rooms-detail-wrapper .room-box-services h3,
.rooms-detail-wrapper h3 {
	margin-bottom: 40px;
}

.rooms-detail-wrapper h3{
	font-weight: 600;
}

.rooms-detail-wrapper h4 {
	font-family: var(--e-global-typography-962030d-font-family), Sans-serif;
	font-size: var(--e-global-typography-962030d-font-size);
	font-weight: var(--e-global-typography-962030d-font-weight);
	line-height: var(--e-global-typography-962030d-line-height);
}

.rooms-detail-wrapper h2 {
	padding-bottom: var(--mft-space-s);
}

.rooms-detail-wrapper .room-box-detail,
.rooms-detail-wrapper .room-box-price {
	background-color: #fff !important;
}

.rooms-detail-wrapper .room-box-services,
.rooms-detail-wrapper .room-box-common-services {
	padding: 15px 0px;
}

.rooms-detail-5 .offers-listing-1 {
	display: flex;
	flex-wrap: wrap;
	gap: 25px;
}

.rooms-detail-5 .offers-listing-1 .offer {
	width: 48%;
}

.rooms-detail-5 .room-box-offers .elementor-container .offer-list-wrapper {
	background: transparent;
}

/*.rooms-detail-5 .room-box-offers {
	background: var(--e-global-color-f79e654);
}*/

/***** OFFER DETAILS *****/

.detail-offer-intro .detail-description h2 {
	font-family: var(--e-global-typography-secondary-font-family);
	font-weight: var(--e-global-typography-secondary-font-weight);
	padding: 60px 0 16px 0;
}

.title-discount {
    font-size: 1.5em;
    color: var(--e-global-color-text) !important;
	font-weight: 400;;
}

.offers-detail-wrapper.offer-detail-1 .offer-features-wrapper .offer-boxes-wrapper .offer-box span,
.offers-detail-wrapper.offer-detail-1 .offer-features-wrapper .offer-boxes-wrapper .offer-box meta {
	font-family: var(--e-global-typography-fcce242-font-family);
	font-size: 20px !important;
	font-weight: var(--e-global-typography-fcce242-font-weight);
	line-height: var(--e-global-typography-fcce242-line-height);
}

.offers-detail-wrapper.offer-detail-1 .offer-photo {
	width: 230px;
}

.offers-detail-wrapper .offer-photo {
	width: auto;
}

.offers-detail-wrapper.offer-detail-2 .offer-wrapper {
	float: none;
}

.offers-detail-wrapper.offer-detail-2 .offer {
	margin: 55px auto;
}

.offer-detail-5 .offer-wrapper .offer-title i.eci {
	display: inline;
	margin: 0 15px 0 0;
	font-size: 25px;
}

/*************************************/
/*********** FOOTER ******************/
/*************************************/

/***** V-CARDS *****/
.mi-vcard-email a,
.mi-vcard-phone a {
	position: relative;
	font-weight: 400;
	color: var(--e-global-color-text);
	text-decoration: none;
	transition: color 0.3s ease;
}

.mi-vcard-email a::after,
.mi-vcard-phone a::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 0;
	height: 1px;
	background-color: var(--e-global-color-primary);
	transform: translateX(-50%);
	transition: all 0.3s ease;
}

.mi-vcard-email a:hover,
.mi-vcard-phone a:hover {
	color: var(--e-global-color-primary);
}

.mi-vcard-email a:hover::after,
.mi-vcard-phone a:hover::after {
	width: 100%;
}

/***** ADDRESS HOVER *****/
.elementor-widget-vcard-address .elementor-widget-container {
	position: relative;
	color: var(--e-global-color-text);
	font-weight: 400;
	padding: 1px 0;
	cursor: pointer;
	transition: color 0.3s ease;
}

.elementor-widget-vcard-address .elementor-widget-container::after {
	content: "";
	position: absolute;
	bottom: 2px;
	left: 50%;
	width: 0;
	height: 1px;
	background-color: var(--e-global-color-primary);
	transform: translateX(-50%);
	transition: all 0.3s ease;
}

.elementor-widget-vcard-address .elementor-widget-container:hover {
	color: var(--e-global-color-primary);
}

.elementor-widget-vcard-address .elementor-widget-container:hover::after {
	width: 100%;
}

/***** MENU LEGAL HOVER *****/
footer .elementor-nav-menu--main.elementor-nav-menu--layout-horizontal a {
	position: relative;
	display: inline-block;
	padding: 3px 0;
	color: var(--e-global-color-text);
	text-decoration: none;
	transition: color 0.3s ease;
}

footer .elementor-nav-menu--main.elementor-nav-menu--layout-horizontal a::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 0;
	height: 1px;
	background-color: var(--e-global-color-primary);
	transform: translateX(-50%);
	transition: all 0.3s ease;
}

footer .elementor-nav-menu--main.elementor-nav-menu--layout-horizontal a:hover {
	color: var(--e-global-color-primary);
}

footer .elementor-nav-menu--main.elementor-nav-menu--layout-horizontal a:hover::after {
	width: 100%;
}

/***** IMAGE BOX TITLE (ENLACES) *****/
footer .elementor-image-box-title a,
.footer-link a {
	position: relative;
	display: inline-block;
	font-weight: 400 !important;
	color: var(--e-global-color-text) !important;
	text-decoration: none;
	padding: 1px 0;
	transition: color 0.3s ease !important;
}

footer .elementor-image-box-title a::after,
.footer-link a::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 0;
	height: 1px;
	background-color: var(--e-global-color-primary);
	transform: translateX(-50%);
	transition: all 0.3s ease;
}

footer .elementor-image-box-title a:hover,
.footer-link a:hover {
	color: var(--e-global-color-primary) !important;
}

footer .elementor-image-box-title a:hover::after,
.footer-link a:hover::after {
	width: 100%;
}

/* Evita que Elementor cambie el padding en hover del menú principal */
footer .elementor-nav-menu--main .elementor-nav-menu a,
footer .elementor-nav-menu--main .elementor-nav-menu a.highlighted,
footer .elementor-nav-menu--main .elementor-nav-menu a:focus,
footer .elementor-nav-menu--main .elementor-nav-menu a:hover {
	padding: 3px 0 !important;
}


/***** MENU MÓVIL (sin cambios visuales) *****/
@media (max-width: 1024px) {
	.mb-vertical .elementor-nav-menu {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}

	.mb-vertical .elementor-nav-menu li {
		--e-nav-menu-divider-width: 0px !important;
		--e-nav-menu-horizontal-menu-item-margin: 0px !important;
	}
}

/*************************************/
/********* POPUP - VENTAJAS **********/
/*************************************/

/* Asegúrate de que el contenedor del botón sea relativo para poder posicionar sobre él */
.ventajas-btn {
  position: relative;
}

/* Popup personalizado: lo posicionamos absolutamente respecto al botón */
.dropdown-ventajas-popup .dialog-widget {
  position: absolute !important;
  top: 100%;              /* justo debajo del botón */
  left: 0;                 /* alineado con el borde izquierdo del botón */
  transform: translateY(8px); /* un pequeño desplazamiento para separarlo */
  margin: 0 !important;
  width: auto;             /* puedes ajustar el ancho si es necesario */
  min-width: 200px;         /* por ejemplo: un mínimo para que no se achique demasiado */
  z-index: 9999;            /* para estar por encima de otros elementos */
}


@media (max-width: 768px) {
  .dropdown-ventajas-popup .dialog-widget {
    left: auto;
    right: 0; /* si el botón en móvil está más a la derecha */
    transform: translateY(8px) translateX(-50%);
  }
}
