.elementor-kit-5678{--e-global-color-primary:#C8000E;--e-global-color-secondary:#D8D8D8;--e-global-color-accent:#C8000E;--e-global-color-text:#7C7C7C;--e-global-color-13f4851a:#000000;--e-global-color-52235058:#FFFFFF;--e-global-color-6cb047a:#FFFFFF00;--e-global-typography-primary-font-family:"Lato";--e-global-typography-primary-font-size:3.5em;--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Lato";--e-global-typography-secondary-font-size:2em;--e-global-typography-secondary-font-weight:normal;--e-global-typography-text-font-family:"Lato";--e-global-typography-text-font-size:1em;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Lato";--e-global-typography-accent-font-weight:normal;--e-global-typography-fcce242-font-family:"Lato";--e-global-typography-fcce242-font-size:1.25em;--e-global-typography-fcce242-font-weight:normal;--e-global-typography-fcce242-text-transform:uppercase;--e-global-typography-06a02b0-font-family:"Lato";--e-global-typography-06a02b0-font-size:0.813em;--e-global-typography-06a02b0-font-weight:normal;--e-global-typography-06a02b0-text-transform:uppercase;--e-global-typography-d874b9b-font-family:"Lato";--e-global-typography-d874b9b-font-size:1em;--e-global-typography-d874b9b-font-weight:normal;--e-global-typography-d874b9b-text-transform:uppercase;color:#7C7C7C;}.elementor-kit-5678 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5678 h1{font-size:3.5em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1440px;}.e-con{--container-max-width:1440px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-5678{--e-global-typography-primary-font-size:2.5em;--e-global-typography-fcce242-font-size:1.2em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */html,
body {
    overflow-x: hidden;
}

.bold-text {
    font-weight: 600;
}

/* Variables */
:root {
    --xxsmall-size: 20px;
    --xsmall-size: 40px;
    --small-size: 70px;
    --medium-size: 150px;
    --large-size: 200px;
    --pdd-xsmall-size: var(--xsmall-size);
    --pdd-small-size: var(--small-size);
    --pdd-medium-size: var(--medium-size);
    --pdd-large-size: var(--large-size);
}

@media(max-width: 1024px) {
    :root {
        --xsmall-size: 40px;
        --small-size: 70px;
        --medium-size: 90px;
        --large-size: 130px;
    }
}

@media(max-width: 767px) {
    :root {
        --xsmall-size: 10px;
        --small-size: 25px;
        --medium-size: 75px;
        --large-size: 90px;
    }
}

/**/

html {
    font-size: 1em;
}

.container-m {
    max-width: 1400px;
    margin: 0 auto;
    box-sizing: border-box;
}

.container-xs {
    max-width: 1100px;
    margin: 0 auto;
    box-sizing: border-box;
}

.pdd-0.elementor-section.elementor-section-boxed>.elementor-container {
    padding-right: unset !important;
    padding-left: unset !important;
}

.minh {
    min-height: 350px;
}

.minh-600 {
    min-height: 600px;
}

@media(max-width: 1024px) {
    .minh-600 {
        min-height: 500px;
    }
}

@media(max-width: 767px) {
    .minh {
        min-height: 250px;
    }

    .minh-600 {
        min-height: 300px;
    }
}


/* Header cont text fixed */
.text-hover {
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0 6px 16px rgba(200, 0, 14, 0.18);
    opacity: 0;
    pointer-events: none;
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}
.fixed-img:hover + .text-hover {
    opacity: 1
}

/* header Engine */
.mi-be-button.mi-be-book-btn {
    font-family: var(--e-global-typography-text-font-family);
}

.mi-be .mi-be-occupation-field.mi-dropdown-button {
    text-align: center;
}

/* btn book detail */
.page-template-bookingstep1 header .bot-reserva-header,
.cat-room-detail header .bot-reserva-header,
.cat-offer-detail header .bot-reserva-header,
.page-template-bookingstep1 .header-mobile .reserva-header-mobile,
.cat-room-detail .header-mobile .reserva-header-mobile,
.cat-offer-detail .header-mobile .reserva-header-mobile {
    display: none !important;
}

/* disable engine widget on detail pages */
.cat-room-detail .elementor-widget-Mirai.Booking,
.cat-offer-detail .elementor-widget-Mirai.Booking {
    display: none;
}

/* btn book detail */
.cat-room-detail header .reserva-header,
.cat-offer-detail header .reserva-header {
    display: none !important;
}

/* Hide wrapper */
.cat-room-detail section.header-mobile,
.cat-offer-detail section.header-mobile {
    display: none;
}

/* Pseudo Standarization */
@media (min-width: 768px) {
    .elementor-section.elementor-section-boxed>.elementor-container {
        padding-left: 30px;
        padding-right: 30px;
    }
}

.contenedor-mw,
.cookies-section,
.cat-room-detail .elementor-section.elementor-section-boxed>.elementor-container>.rooms-detail-wrapper,
.cat-offer-detail .elementor-section.elementor-section-boxed>.elementor-container>.offers-detail-wrapper {
    max-width: 1440px;
    margin: 0 auto;
    /*padding: 0 0;*/
    box-sizing: border-box;
}

.boxed {
    margin-left: 2%;
    margin-right: 2%;
}

.hidden {
    display: none;
}

/* Bullet list */
.lista-web li,
.lista-web2 li {
    padding-left: 5px;
}

.lista-web li::before {
    content: "•";
    padding-right: 5px;
    color: var(--e-global-color-primary);
}

/**/

/* -- FIXES -- */
a,
p a {
    color: var(--e-global-color-primary);
}

a:hover,
p a:hover {
    text-decoration: none;
    color: var(--e-global-color-secondary);
}

.elementor-widget-container .elementor-text-editor>p,
.elementor-widget-container .elementor-text-editor {
    line-height: 1.6em;
    font-weight: inherit;
}


/* Lightbox Gallery */
.elementor-lightbox .elementor-slideshow__footer .elementor-slideshow__title {
    text-align: center;
}

/* Full-width section under mobile res. */
@media (max-width:480px) {
    section.no-elefix.elementor-section>.elementor-container {
        padding-inline: 0px;
    }
}

/* GDPR */
#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-cookie-notice {
    overflow: inherit;
}


/*Fix underline on close buttons on popups*/
.dialog-close-button.dialog-lightbox-close-button {
    text-decoration: none;
}

/*Hide features default icons*/
.rooms-listing .room-box .room-detail .occupancies-ico,
.rooms-listing .room-box .room-detail .distibution-ico {
    display: none;
}

/*LOGIN MODAL*/
.mi-modal .mi-form__link,
.mi-form__link,
.mi-s-color-link,
.mi-form-item__password-visibility {
    color: var(--e-global-color-primary);
}

.mi-modal .mi-form__link:hover,
.mi-form__link:hover,
.mi-s-color-link:hover,
.mi-form-item__password-visibility:hover {
    color: #444444;
}

[class^="mi-"] .mi-s-color-button {
    background-color: var(--e-global-color-primary);
}

/* Hero - HEADERS */
@media (max-width:1366px) {
    section.elementor-section.elementor-top-section.hero>div.elementor-container.elementor-column-gap-default {
        min-height: 600px;
    }
}

/* Rounded Images - Services */
.rounded-imgs img {
    border-radius: 50%;
    margin-bottom: var(--xxsmall-size);
}

/* TEXT TO HTML */
.text-to-html * {
    margin-bottom: 20px;
}

.text-to-html h2 {
    font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
    font-size: var(--e-global-typography-secondary-font-size);
    font-weight: var(--e-global-typography-secondary-font-weight);
}

.text-to-html h3 {
    font-family: var(--e-global-typography-4e54c9f-font-family), Sans-serif;
    font-size: var(--e-global-typography-4e54c9f-font-size);
    font-weight: var(--e-global-typography-4e54c9f-font-weight);
    line-height: var(--e-global-typography-4e54c9f-line-height);
    letter-spacing: var(--e-global-typography-4e54c9f-letter-spacing);
    word-spacing: var(--e-global-typography-4e54c9f-word-spacing);
}

.text-to-html h4 {
    font-family: var(--e-global-typography-17fe471-font-family), Sans-serif;
    font-size: var(--e-global-typography-17fe471-font-size);
    font-weight: var(--e-global-typography-17fe471-font-weight);
    line-height: var(--e-global-typography-17fe471-line-height);
    letter-spacing: var(--e-global-typography-17fe471-letter-spacing);
    word-spacing: var(--e-global-typography-17fe471-word-spacing);
}


/* FIXES Club & Modal Windows */
.elementor-popup-modal {
    z-index: 1049;
}

.mi-bsmodal-backdrop {
    z-index: 1050;
}

/* ENGINE FIXES */
[class^="mi-"] .mi-s-color-button:hover {
    background-color: var(--e-global-color-primary);
}

/* Form 'Reservas' */
.elementor-field-type-submit button.elementor-button.elementor-size-lg {
    margin-top: var(--xsmall-size);
}

.elementor-field-group-privacy,
.elementor-field-type-html,
.elementor-message {
    text-align: center;
}


.highlight {
    color: var(--e-global-color-primary);
}

/* ROOMS */
body.cat-rooms .rooms-listing-wrapper>.common-features {
    /*max-width: 1440px;*/
    display: none;
}

body.cat-rooms .rooms-listing .room-box .room-content {
    width: 90%;
    margin: -25% auto 9% 5%;
    padding: 2% 3%;
}

@media (min-width:720px) {
body.cat-rooms .rooms-listing .room-box .room-content {
width: 50%;
    margin: -25% auto 9% 40%;
    padding: 2% 3%;
}
}

@media (min-width:1280px) {

    body.cat-rooms .rooms-listing .room-box .room-image-link img,
    .rooms-listing .room-box .room-image-link span.no-photo {
        width: 50%;
        max-height: 489px;
        object-fit: cover;
        width: fit-content;
    }
}


@media (min-width:720px) {

    body.cat-rooms .rooms-listing .room-box .room-image-link img,
    .rooms-listing .room-box .room-image-link span.no-photo {
        min-width: 732px;
        height: 500px;
        width: fit-content;
        object-fit: cover;
    }
}

.rooms-listing .room-box .room-content .room-description a.more-info {
    width: fit-content;
    margin: var(--xxsmall-size) 0px;
    text-align: center;
    background-color: var(--e-global-color-primary);
    padding: var(--xxsmall-size);
    text-decoration: none;
    text-transform: var(--e-global-typography-fcce242-text-transform);
    display: block;
    color: var(--e-global-color-52235058);
    transition: all .5s;
}

.rooms-listing .room-box .room-content .room-description a.more-info:hover {
    background-color: var(--e-global-color-accent);
}

.room-description a.more-info:hover {
    color: var(--e-global-color-accent);
}


/* OFFERS */
.offers-listing-wrapper.no-offers {
    margin: 0 auto;
    text-align: center;
}

body.cat-offers .offers-listing-wrapper h2:first-child,
body.cat-offer-detail .cont-tpl-booking {
    display: none;
}

body.cat-offers .offers-listing-wrapper {
    padding: var(--small-size) 0;
}

.cat-offers .offers-listing-5 .offers-listing .offer .offer-link,
.offer-detail-5.offers-detail-wrapper .offer-wrapper {
    background-color: var(--e-global-color-secondary);
}

.cat-offers .offers-listing-5 .offers-listing .offer .offer-link:hover,
.offer-detail-5.offers-detail-wrapper .offer-wrapper:hover {
    background-color: var(--e-global-color-primary);
}

body.cat-offers .offers-listing-wrapper h3,
body.cat-offers .offer-discount {
    font-size: var(--e-global-typography-secondary-font-size);
}

body.cat-offers .offers-listing-wrapper h3,
.offer-box p {
    display: inline-block;
    font-family: var(--e-global-typography-primary-font-family);
    text-transform: none;
    font-weight: 500;
}

body.cat-offers .offers-listing-wrapper h3,
.offer-box p {}

body.cat-offers .offers-listing .offer .offer-link,
body.cat-offers .offers-listing .offer .offer-link * {
    color: var(--e-global-color-text);
    transition: all .3s ease-out;
}

body.cat-offers .offers-listing .offer .offer-link:hover,
body.cat-offers .offers-listing .offer .offer-link *:hover {
    color: var(--e-global-color-secondary);
}

.offer-button.elementor-button.secondary-btn {
    border: 1px solid var(--e-global-color-primary);
    background: var(--e-global-color-3d23203);
    padding: 16px 24px;
    font-family: var(--e-global-typography-text-font-family);
    font-size: var(--e-global-typography-f457c57-font-size);
    font-weight: var(--e-global-typography-6633ad8-font-weight);
    letter-spacing: 0.84px;
    text-transform: var(--e-global-typography-5e273b4-text-transform);
    text-decoration: none;
    color: var(--e-global-color-primary);
}

.offers-listing-1 .offer-link,
.offer-detail-1.offers-detail-wrapper .offer-wrapper {
    background-color: var(--e-global-color-4ac6f22) !important;
}

.offers-detail-wrapper .offer-wrapper.row .offer-header-content-wrapper .offer-title {
    font-family: var(--e-global-typography-primary-font-family);
    text-decoration: none;
    font-size: var(--e-global-typography-secondary-font-size);
    font-weight: var(--e-global-typography-secondary-font-weight);
    padding-inline: 0px;
    color: var(--e-global-color-text);
}

.offers-detail-wrapper .offer-features-wrapper .offer-boxes-wrapper .offer-box.main-box span {
    font-family: var(--e-global-typography-text-font-family);
    font-size: var(--e-global-typography-f457c57-font-size);
    font-weight: var(--e-global-typography-6633ad8-font-weight);
}

.offer-button.elementor-button.secondary-btn:hover {
    color: var(--e-global-color-text);
    background-color: var(--e-global-color-47eea86e);
}

body.page-template-tpl-offers-listing li.offer h3,
body.page-template-tpl-offers-listing li.offer p {
    font-size: 1em;
}

body.page-template-tpl-offers-listing li.offer p {
    padding-top: 5px;
}

body.page-template-tpl-offers-listing li.offer {
    max-width: 27%;
}

body.page-template-tpl-offers-listing  .offer-text {
    display: flex;
    flex-direction: column;
    min-height: 85px;
}

@media (max-width: 1024px) {
    body.page-template-tpl-offers-listing li.offer {
        max-width: 100%;
    }
}

/* DYNAMIC CALENDAR */

body.cat-room-detail .calendar-wrapper.calendar-type1 {
    border-top: 0px;
}

.calendar-wrapper.calendar-type1 .calendar-nights-label,
.calendar-wrapper.calendar-type1 .calendar-title {
    font-family: var(--e-global-typography-primary-font-family);
    text-decoration: none;
    font-size: var(--e-global-typography-secondary-font-size);
    font-weight: var(--e-global-typography-secondary-font-weight);
}

#calendar-wrapper .dynamic-calendar .ui-datepicker-title {
    font-family: var(--e-global-typography-25a2ba0-font-family);
    text-transform: var(--e-global-typography-6633ad8-text-transform);

}

#calendar-wrapper .dynamic-calendar .ui-datepicker-calendar ._selected-date a,
#calendar-wrapper .dynamic-calendar .ui-datepicker-calendar ._checkin-date a,
#calendar-wrapper .dynamic-calendar .ui-datepicker-calendar ._checkout-date._checkin-date a,
#calendar-wrapper .dynamic-calendar .ui-datepicker-calendar a:hover {
    background-color: var(--e-global-color-secondary);
    color: var(--e-global-color-text);
}

#calendar-wrapper .dynamic-calendar .ui-datepicker-calendar ._checkout-date a {
    background: var(--e-global-color-primary);
}

.calendar-wrapper.calendar-type1 .offer-calendar-button,
.calendar-wrapper.calendar-type1 .room-calendar-button {
    background: var(--e-global-color-primary);
    border-style: none;
    padding: 20px 30px 20px 30px;
    font-family: var(--e-global-typography-d874b9b-font-family), Sans-serif;
    font-size: var(--e-global-typography-d874b9b-font-size) !important;
    font-weight: var(--e-global-typography-d874b9b-font-weight) !important;
    line-height: var(--e-global-typography-d874b9b-line-height);
    letter-spacing: var(--e-global-typography-d874b9b-letter-spacing);
    word-spacing: var(--e-global-typography-d874b9b-word-spacing);
    fill: var(--e-global-color-47eea86e) !important;
    color: var(--e-global-color-47eea86e) !important;
    text-transform: uppercase;
}

.calendar-wrapper.calendar-type1 .offer-calendar-button:hover,
.calendar-wrapper.calendar-type1 .room-calendar-button:hover {
    color: var(--e-global-color-secondary) !important;
    background-color: var(--e-global-color-accent) !important;
}

/* Hide 'Join the club' on club pages */
.cat-mirai-club .join-club {
    display: none;
}

/* Home - Engine Container */
.cont-engine-home {}

/*STYLE FIXES */
@media (max-width:1366px) {

    .modal-menu .menu-principal .eael-advanced-menu li>a,
    .modal-menu .menu-principal .eael-advanced-menu-container .eael-advanced-menu-toggle-text {
        font-size: 1.5em !important;
        line-height: 33px;
    }


    .cont-engine-home {
        top: 45% !important;
    }
}


@media (min-width:1025px) and (max-width:1366px) {
    .elementor-3241 .elementor-element.elementor-element-5449f0d2 {
        width: 30% !important;
    }
}

/* CLUB */
body.cat-mirai-club .mi-club-signup {
    padding-top: 0px;
}



html[lang="es-ES"] .cat-room-detail .back .back-link {
    font-size: 0;
}

html[lang="es-ES"] .cat-room-detail .back .back-link:after {
    content: "Ver todas las habitaciones";
    color: #CFA791;
    display: inline-block;
    font-family: lato;
    font-size: 1rem;
    width: fit-content;
    line-height: 1.5rem;
    vertical-align: middle;
    margin-top: 1rem;

}

html[lang="es-ES"] .cat-room-detail a.back-link:before {
    vertical-align: middle;
    display: inline-block;
    font-size: .85rem;
    margin-top: 1rem;
}

html[lang="en-US"] .cat-room-detail .back .back-link {
    font-size: 0;
}

html[lang="en-US"] .cat-room-detail .back .back-link:after {
    content: "See all apartments";
    color: #CFA791;
    display: inline-block;
    font-family: lato;
    font-size: 1rem;
    width: fit-content;
    line-height: 1.5rem;
    vertical-align: middle;
    margin-top: 1rem;


}

html[lang="en-US"] .cat-room-detail a.back-link:before {
    vertical-align: middle;
    display: inline-block;
    font-size: .85rem;
    margin-top: 1rem;
}

.elementor-cta__title.elementor-cta__content-item.elementor-content-item {
    border-bottom: 1px solid #fff;
}

.environment-gastronomy>.elementor-column-wrap:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.3);

}

.services-box .elementor-row {
    gap: 1rem;
}

.elementor-element.elementor-widget.elementor-widget-social-icons a.elementor-icon.elementor-social-icon {
    display: flex;
}

.footer-logos .elementor-widget-wrap.elementor-element-populated {
    display: flex;
    gap: 1rem;
}

#developed-wrapper a {
    color: #C8000E;
}

ul.sub-menu.elementor-nav-menu--dropdown.sm-nowrap .menu-item {
    padding: .7rem 0rem;
}


@media (max-width:1200px) {.change-order-custom .elementor-row{
    display: flex;
}
.change-order-custom .elementor-row .elementor-column:nth-child(1) {
    order: 2;
}
.change-order-custom .elementor-row .elementor-column:nth-child(2) {
    order: 1;
}
}

/* OFFERS */
.offers-listing .offer .offer-link:before,
.cat-offers .offers-listing-5 .offers-listing .offer .offer-link, .offer-detail-5.offers-detail-wrapper .offer-wrapper {
    background-color: #fff!important;
}
.cat-offers ul.offers-listing .offer-link{
    outline: 2px solid #323232;
}
.cat-offers .offers-listing-5 .offers-listing .offer .offer-link:hover{
    background-color:#fff;
    outline: 2px solid var(--e-global-color-primary);
}
body.cat-offers .offers-listing .offer .offer-link *:hover {
    color: var(--e-global-color-text);
}

/* MENU */

 @media (min-width:1200px) {
ul.eael-advanced-menu.eael-advanced-menu-dropdown-animate-to-top.eael-advanced-menu-indicator {
    gap: .5rem;
    display: flex;
    flex-direction: column;
}
}
.elementor-sticky--active{
    z-index: 50!important;
}


section.elementor-section.elementor-top-section.elementor-element.elementor-element-710bcce6.elementor-section-full_width.engine-sticky.elementor-hidden-mobile.elementor-section-height-default.elementor-section-height-default.elementor-sticky.elementor-sticky--active.elementor-section--handles-inside.elementor-sticky--effects {
      top: 91px !important;
}

@media (max-width: 1000px){
.elementor-animation-rotate:active, .elementor-animation-rotate:focus, .elementor-animation-rotate:hover {
  transform: none!important;
}
}/* End custom CSS */