/*
    Theme Name: hoteldoncurro2025-2025
    Theme URI: hoteldoncurro2025-2025
    Description: Hoteldoncurro2025-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(56px, calc(56px + (80 - 56) * ((100vw - 767px) / (1920 - 767))), 80px);
    /*80 --- 56*/
    --mft-space-4xl: clamp(64px, calc(64px + (96 - 64) * ((100vw - 767px) / (1920 - 767))), 96px);
    /*96 --- 64*/
    --mft-space-5xl: clamp(120px, calc(72px + (160 - 120) * ((100vw - 767px) / (1920 - 767))), 160px);
    /*160 --- 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-accent);
}

/***** 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);
}

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

/*********** 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: var(--e-global-color-text);
    border-radius: 2px;
    -webkit-transition: all .3s;
    transition: all .3s;
}

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

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

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

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

/***** GENERIC BUTTON STYLES *****/
.mft-btn.elementor-button {
    fill: inherit;
}

/* when hovering */
.mft-btn .elementor-button-text:after {
    content: "\e967";
    font-family: 'mirai-icofonts';
    font-size: 12px;
    padding-left: 12px;
    opacity: 0;
    transition: all .3s ease;
}

.mft-btn:not(.mft-btn-4) .elementor-button-content-wrapper {
    align-items: center;
    transform: translateX(11px);
    transition: all .3s ease;
}

.elementor-button.mft-btn:hover .elementor-button-text:after {
    opacity: 1;
}

.elementor-button.mft-btn:hover .elementor-button-content-wrapper {
    transform: translateX(0);
}

/***** BTN - 1 *****/
.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);
    transition: all .3s ease;
}

.elementor-button.mft-btn-1:hover {
    background-color: var(--e-global-color-13f4851a);
    border: 2px solid var(--e-global-color-13f4851a);
    fill: var(--e-global-color-47eea86e);
}

/***** BTN - 2 *****/
.elementor-button.mft-btn-2 {
    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;
    padding: var(--mft-space-2xs) var(--mft-space-xs);
    border: 2px solid;
    transition: all .3s ease;
}

.elementor-button.mft-btn-2: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);
}

/***** BTN - 3 *****/
.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);
    background-color: var(--e-global-color-6cb047a);
    border: 2px solid var(--e-global-color-primary);
    padding: var(--mft-space-2xs) var(--mft-space-xs);
    transition: all .3s ease;
}

.elementor-button.mft-btn-3: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);
}

/***** BTN - 4 *****/
.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);
    background-color: transparent;
    padding: 0;
    transition: all .3s ease;
}

/* Texto del botón */
.mft-btn.mft-btn-4 .elementor-button-text {
    position: relative;
    padding-right: 24px;
    /* espacio para la flecha */
}

/* Flecha siempre visible - sobreescribe opacity 0 de mft-btn */
.mft-btn.mft-btn-4 .elementor-button-text:after {
    content: "\e967";
    /* tu icono de flecha */
    font-family: 'mirai-icofonts';
    font-size: 12px;
    position: absolute;
    right: 0;
    /* pegada a la derecha del texto */
    top: 50%;
    transform: translateY(-50%);
    transition: transform .3s ease;
    opacity: 1 !important;
    /* fuerza visibilidad */
}

/* Hover: mover solo la flecha */
.mft-btn.mft-btn-4:hover .elementor-button-text:after {
    transform: translateY(-50%) translateX(4px);
    /* mover 4px a la derecha */
}


/*.elementor-button.mft-btn-4 .elementor-button-text:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    background: var(--e-global-color-text);
    left: 0;
    bottom: 0;
}

.elementor-button.mft-btn-4:hover .elementor-button-text:before {
    background: var(--e-global-color-primary);
}/*

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

/************* 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-primary);
    top: calc(50% - 5px);
    right: 0px;
}

/* 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-52235058);
}

.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;
}

.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: #ffffff;
}

/* 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-primary) !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;
    }

    /* 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: 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="%232b5170"/></svg>');
    }

    .wpml-ls-legacy-dropdown-click .wpml-ls-current-language:hover>a::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="%231a3143"/></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);
}

.offers-mashup dl {
    border-radius: 2px;
}

/* title */
.offers-mashup dl dt {
    font-family: var(--e-global-typography-765451f-font-family);
    font-size: var(--e-global-typography-765451f-font-size);
    font-weight: var(--e-global-typography-765451f-font-weight);
    line-height: 32px;
    color: var(--e-global-color-text);
    text-transform: uppercase;
}

/* discount */
.offers-mashup dl dd {
    font-family: var(--e-global-typography-765451f-font-family), Sans-serif;
    font-size: 32px;
    font-weight: 700;
    line-height: var(--e-global-typography-765451f-line-height);
    color: var(--e-global-color-text);
}

.offers-mashup dl dd span {
    padding-bottom: var(--mft-space-m);
    padding-top: var(--mft-space-3xs);
}

/* button */

.offers-mashup dl .more-info-link {
    font-family: var(--e-global-typography-fcce242-font-family), Sans-serif;
    font-size: var(--e-global-typography-fcce242-font-size);
    color: var(--e-global-color-primary);
    background-color: transparent;
    padding: 0;
    transition: all .3s ease;
    font-weight: 700;
    padding-top: var(--mft-space-xs);
}

.offers-mashup dl .more-info-link:hover {
    color: var(--e-global-color-secondary);
}

.offers-mashup dl .more-info-link {
    position: relative;
    padding-bottom: 5px;
}

.offers-mashup dl .more-info-link:after {
    font-size: 0;
    padding-left: 0;
}

.offers-mashup dl .more-info-link:hover::after {
    opacity: 1;
    font-size: 12px;
    padding-left: 10px;
}

.offers-mashup dl .more-info-link:hover::before {
    background: var(--e-global-color-primary);
}

/* when hovering */
.offers-mashup dl .more-info-link:after {
    content: "\e963";
    font-family: 'mirai-icofonts';
    font-size: 12px;
    padding-left: 10px;
    opacity: 0;
    transition: all .3s ease;
    font-weight: 700;
}

.offers-mashup-slide:not(.more-info-link .offers-mashup dl) {
    align-items: center;
    /*transform: translateX(11px);*/
    transition: all .3s ease;
}

.offers-mashup dl .more-info-link:hover::after {
    opacity: 1;
}

.offers-mashup dl .more-info-link:hover {
    transform: translateX(0);
}


/***** 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-13f4851a);
    padding: var(--mft-space-l);
}

.mashup-2 .offers-mashup dl dt {
    border-bottom: 2px solid #dfdfdf;
    padding: 0 40px 24px;
    margin-bottom: 24px;
    position: relative;
}

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

/***** 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:768px) {

    .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%;
    }
}

@media (max-width:867px) {

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


}

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

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

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

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

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

.cookies-section p,
.cookies-section .elementor-text-editor {
    line-height: 26px !important;
}

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

.cookies-section .elementor-row {
    display: flex !important;
}

.cookies-section .elementor-section .elementor-container {
    display: block !important;
}

.cookies-section .elementor-section.elementor-section-boxed>.elementor-container {
    padding: 16px 0px 0px 0px !important;
}

/***** 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 {
    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: 24px;
    text-transform: var(--e-global-typography-secondary-text-transform);
}

.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: 24px;
    text-transform: var(--e-global-typography-secondary-text-transform);
    display: none;
}

.cookies-section .elementor-widget-wrap .elementor-widget-heading .mi-title3 {
    font-family: var(--e-global-typography-765451f-font-family);
    font-size: var(--e-global-typography-765451f-font-size);
    font-weight: 700;
    line-height: var(--e-global-typography-765451f-line-height);
    padding-bottom: 24px;
    text-transform: var(--e-global-typography-765451f-text-transform);
}

/* 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;
}

.legal h2 {
    font-family: var(--e-global-typography-765451f-font-family), Sans-serif;
    font-size: var(--e-global-typography-765451f-font-size);
    line-height: var(--e-global-typography-765451f-line-height);
    font-weight: 700;
    padding: 32px 0px 24px 0px;
}

.legal p,
.legal ul li,
.legal ol li {
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
    font-size: var(--e-global-typography-text-font-size);
    font-weight: var(--e-global-typography-text-font-weight);
    line-height: var(--e-global-typography-text-line-height);
    margin-bottom: 12px;
}

.legal ul li {
    list-style: disc !important;
    /* fuerza el tipo de viñeta (bullet) */
    list-style-position: inside !important;
    /* o 'outside' según prefieras */
    margin-left: 20px !important;
    padding-left: 0 !important;
}

.legal ul li::marker {
    color: var(--e-global-color-primary);
    font-size: 12px;
}

/* 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-secondary);
}

.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 *****/

/* 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.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,
.offers-listing-wrapper,
.offers-detail-wrapper {
    max-width: var(--width-m);
    margin: 0 auto;
    box-sizing: border-box;
}

/* 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-765451f-font-family), Sans-serif;
    font-size: var(--e-global-typography-765451f-font-size);
    font-weight: 700;
    line-height: var(--e-global-typography-765451f-line-height);
    text-decoration: none;
    text-transform: uppercase;
    transition: .3s ease-in-out;
    color: var(--e-global-color-primary) !important;
}

.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;
    text-transform: uppercase;
    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-secondary) !important;
}

.offers-listing .offer-special:hover .offer-title {
    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: 32px;
}

.offers-listing .offer .offer-title {
    font-size: 24px;
    font-weight: 600;
    width: 100%;
    color: var(--e-global-color-text);
    padding: 0px;
}

.offers-listing .offer .offer-wrapper-featured .offer-title {

    font-weight: 600;
    width: 100%;
    color: var(--e-global-color-47eea86e);
}

/*** descuento ****/
.offers-listing .offer-wrapper-featured .offer-box .offer-data span {
    font-size: 24px;
    font-weight: 600;
    color: var(--e-global-color-accent);
    padding-bottom: 24px;
}

/***** BTN - more info rooms *****/
.rooms-listing-wrapper .room-box a.more-info,
.rooms-listing-wrapper .room-box .room-intro a {
    font-family: var(--e-global-typography-6d2edf1-font-family), Sans-serif;
    font-size: var(--e-global-typography-6d2edf1-font-size);
    font-weight: 700;
    background-color: transparent;
    padding: 0;
    transition: all .3s ease;
    margin-top: 32px;
    text-decoration: none !important;
    color: var(--e-global-color-primary);
}

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


/* Texto del botón */
.rooms-listing-wrapper .room-box a.more-info,
.rooms-listing-wrapper .room-box .room-intro a {
    position: relative;
    padding-right: 24px;
    /* espacio para la flecha */
    color: var(--e-global-color-primary);
}

/* Flecha siempre visible - sobreescribe opacity 0 de mft-btn */
.rooms-listing-wrapper .room-box a.more-info:after,
.rooms-listing-wrapper .room-box .room-intro a:after {
    content: "\e967";
    /* tu icono de flecha */
    font-family: 'mirai-icofonts';
    font-size: 12px;
    position: absolute;
    right: 0;
    /* pegada a la derecha del texto */
    top: 50%;
    transform: translateY(-50%);
    transition: transform .3s ease;
    opacity: 1 !important;
    /* fuerza visibilidad */
    color: var(--e-global-color-primary);
}

/* Hover: mover solo la flecha */
.rooms-listing-wrapper .room-box a.more-info:hover:after,
.rooms-listing-wrapper .room-box .room-intro a:hover:after {
    transform: translateY(-50%) translateX(4px);
    /* mover 4px a la derecha */
}


/***** btn - offer-button *****/

.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;
}

.offers-listing .offer-wrapper-featured .offer-box .offer-btn {
    font-weight: 700;
    border-radius: 2px;
    color: var(--e-global-color-47eea86e);
    border: 1px solid var(--e-global-color-47eea86e);
    text-shadow: none !important;
    padding: var(--mft-space-2xs) var(--mft-space-xs);
}

.offers-listing .offer-wrapper-featured .offer-box .offer-btn:hover {
    color: var(--e-global-color-47eea86e);
    border: 1px solid var(--e-global-color-primary);
    background-color: var(--e-global-color-primary);
}

.offers-listing .offer .offer-btn:after {
    content: "\e967";
    font-family: 'mirai-icofonts';
    font-size: 12px;
    padding-left: 8px;
    display: inline-block;
    vertical-align: 0px;
}

.offers-listing .offer-wrapper-special .offer-box {
    color: var(--e-global-color-text) !important;
    width: 50% !important;
    line-height: 32px;
}

.offers-listing .offer-wrapper-special .offer-box .offer-btn {
    color: var(--e-global-color-primary) !important;
}

.offers-listing .offer-wrapper-special .offer-box .offer-btn:hover {
    color: var(--e-global-color-secondary) !important;
    border-color: var(--e-global-color-secondary) !important;
}

.offers-listing .offer-special.offer-odd a:hover .offer-btn {
    border-color: var(--e-global-color-secondary) !important;
}

/* 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 -  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: 20px;
    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 {
    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-transform: uppercase;
    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);
}

.rooms-listing .room-box-1 .room-content .room-description {
    padding-bottom: var(--mft-space-2xs);
    line-height: 28px;
}

.rooms-listing .room-box-1 .room-content .exclusive-services {
    padding-bottom: var(--mft-space-2xs);
}

.rooms-listing .room-box-1 .room-detail h3 {
    padding-bottom: var(--mft-space-xs);
}

.room-item .row .room-box-1 a {
    padding-left: var(--mft-space-m);
}

.rooms-listing-1 .room-box .room-detail ul {
    background: var(--e-global-color-13f4851a) !important;
    text-align: left;
    padding: 16px;
    margin: 0;
    display: flex;
    justify-content: space-around;
    margin-bottom: var(--mft-space-xs);
}

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

.rooms-listing-1 .room-box .room-content .room-price {
    border-top: 1px solid #ededed;
    margin-top: var(--mft-space-m);
    padding-top: var(--mft-space-xs);
}

.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-size: 14px !important;
    font-family: var(--e-global-typography-765451f-font-family);
    font-size: var(--e-global-typography-765451f-font-size);
    font-weight: 500;
    color: #9db86f;
}

.rooms-listing-1 .room-box .room-content .room-price .box-from .box-price span {
    font-size: 16px;
    font-family: var(--e-global-typography-765451f-font-family);
    font-size: var(--e-global-typography-765451f-font-size);
    font-weight: 500;
    color: #9db86f;
}

.rooms-listing-wrapper.alternate .rooms-listing .room-item.odd .room-detail,
.rooms-listing-wrapper.alternate .rooms-listing .room-item.odd .room-content {
    padding: 0 0 0 var(--mft-space-m) !important;
}

.rooms-listing-wrapper.alternate .rooms-listing .room-item .room-detail,
.rooms-listing-wrapper.alternate .rooms-listing .room-item .room-content {
    padding: 0 var(--mft-space-m) 0 0 !important;
}

@media (min-width: 1200px) {
    .rooms-listing-wrapper .common-services {
        padding: 0 110px 0 191px !important;
        margin-top: var(--mft-space-xs);
    }
}

@media (max-width: 768px) {

    .rooms-listing-wrapper.alternate .rooms-listing .room-item .room-detail,
    .rooms-listing-wrapper.alternate .rooms-listing .room-item .room-content {
        padding: 0px !important;
    }

    .rooms-listing-wrapper.alternate .rooms-listing .room-item.odd .room-detail,
    .rooms-listing-wrapper.alternate .rooms-listing .room-item.odd .room-content {
        padding: 0px !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.occupancies-list {
    width: 33% !important;
}

.rooms-detail-wrapper .room-box-detail ul li.distribution-list {
    width: 33% !important;
}

.rooms-detail-wrapper .room-box-detail ul li.size-list {
    width: 32% !important;
}

.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: 1.25rem;
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
}

.rooms-detail-wrapper .room-box-common-services ul:last-of-type {
    padding-top: 1.25rem !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;
    }
}

.rooms-detail-wrapper .room-box-price .go-to-calendar {
    color: var(--e-global-color-primary);
}

.rooms-detail-wrapper .room-box-description {
    line-height: 30px;
}

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

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

.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: var(--e-global-color-13f4851a) !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;
}

.offers-listing .offer a.offer-link:hover .offer-photo .offer-box .offer-btn {
    border-color: var(--e-global-color-primary) !important;
}

.rooms-detail-wrapper .room-box-offers .go-to-offers-page {
    margin: 40px 0 20px !important;
}

.rooms-detail-wrapper .go-to-offers-page a {
    display: inline-flex;
    /* para poder alinear texto y flecha */
    align-items: center;
    justify-content: center;
    padding: 0.75rem 1.5rem;
    border: 2px solid var(--e-global-color-primary);
    color: var(--e-global-color-primary);
    background-color: #fff;
    text-decoration: none;
    font-weight: 700;
    position: relative;
    transition: all 0.3s ease;
    gap: 0.5rem;
    font-size: var(--e-global-typography-text-font-size);
    border-radius: 2px;
}

/* Flecha al final */
.rooms-detail-wrapper .go-to-offers-page a::after {
    content: "\e967";
    font-family: 'mirai-icofonts';
    display: inline-block;
    transition: transform 0.3s ease;
    font-size: 14px;
    font-weight: 500;
}

/* Hover: fondo primary y texto blanco, flecha se mueve */
.rooms-detail-wrapper .go-to-offers-page a:hover {
    background-color: var(--e-global-color-primary);
    color: #fff !important;
    border-color: var(--e-global-color-primary);
}

.rooms-detail-wrapper .go-to-offers-page a:hover::after {
    transform: translateX(5px);
    /* mueve la flecha 5px a la derecha */
}


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

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

/*  ----- Detalle de oferta ----- */

.offers-detail-wrapper {
    max-width: none !important;

}

.offers-detail-wrapper .offer-intro {
    min-height: 80vh !important;
}

.offer .offer-intro .offer-photo img {
    max-width: none;
    min-height: 80vh;
}

.offers-detail-wrapper .offer .offer-photo img {
    position: relative !important;
    left: 0 !important;
    margin-left: 0px !important;
}

.offer .absolute-full {
    left: 0 !important;
    margin-left: 0 !important;
}

.offer .offer-intro .offer-wrapper .offer-title h2 {
    font-family: var(--e-global-typography-primary-font-family);
    font-size: var(--e-global-typography-primary-font-size) !important;
    font-weight: var(--e-global-typography-primary-font-weight);
    text-transform: uppercase;
    padding-top: 45px;
}

@media (min-width: 1920px) {
    .offer .offer-intro .offer-photo .absolute-full {
        margin-left: 0 !important;
        width: 100%;
    }
}

@media (max-width: 767px) {
    .offers-detail-wrapper.offer-detail-3 .offer .socialmedia-share {
        text-align: center !important;
    }

    body.cat-rooms .rooms-listing-wrapper>.row:first-child {
        width: 100% !important;
    }

    .offer .offer-intro .offer-photo img {
        min-height: 25vh;
        margin-top: 55px;
    }
}


/*  ----- FIN Detalle de oferta ----- */

.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 {
    font-weight: 400;
    color: var(--e-global-color-text);
}

.mi-vcard-email a:hover,
.mi-vcard-email a:active,
.mi-vcard-phone a:hover,
.mi-vcard-phone a:active {
    border-bottom: 2px solid var(--e-global-color-primary);
    color: var(--e-global-color-primary);
}

/***** ADDRESS HOVER *****/
.elementor-widget-vcard-address .elementor-widget-container {
    color: var(--e-global-color-text);
    border-bottom: 2px solid transparent;
    padding: 2px 0px;
    font-weight: 400;
}

.elementor-widget-vcard-address .elementor-widget-container:hover {
    border-bottom: 2px solid var(--e-global-color-primary);
    color: var(--e-global-color-primary);
    padding: 2px 0px;
    cursor: pointer;
}

/***** MENU LEGAL HOVER *****/

footer .elementor-nav-menu--main.elementor-nav-menu--layout-horizontal a,
footer .elementor-nav-menu--main.elementor-nav-menu--layout-horizontal a {
    padding: 3px 0px;
    border-bottom: 2px solid transparent;
    transition: all 0.3s ease;
}

footer .elementor-nav-menu--main.elementor-nav-menu--layout-horizontal a:hover,
footer .elementor-nav-menu--main.elementor-nav-menu--layout-horizontal a:active,
footer .elementor-nav-menu--main.elementor-nav-menu--layout-horizontal a:focus,
footer .elementor-nav-menu--main.elementor-nav-menu--layout-horizontal a:hover,
footer .elementor-nav-menu--main.elementor-nav-menu--layout-horizontal a:active,
footer .elementor-nav-menu--main.elementor-nav-menu--layout-horizontal a:focus {
    border-bottom: 2px solid var(--e-global-color-primary);
    color: var(--e-global-color-primary);
    padding: 3px 0px;
}

footer .elementor-image-box-title a {
    padding: 2px 0px;
    border-bottom: 2px solid transparent;
    transition: all 0.3s ease;
    font-weight: 400 !important;
}

footer .elementor-image-box-title a:hover {
    border-bottom: 2px solid var(--e-global-color-primary);
    color: var(--e-global-color-primary);
    padding: 2px 0px;
}

.footer-link a {
    padding: 2px 0px !important;
    border-bottom: 2px solid transparent !important;
    transition: all 0.3s ease !important;
    font-weight: 400 !important;
}

.footer-link a:hover {
    border-bottom: 2px solid var(--e-global-color-primary) !important;
    color: var(--e-global-color-primary) !important;
    padding: 2px 0px;
}

@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;
    }
}