.elementor-kit-1397{--e-global-color-primary:#3F5367;--e-global-color-secondary:#939393;--e-global-color-text:#666666;--e-global-color-accent:#3F5367;--e-global-color-13f4851a:#FFFFFF00;--e-global-color-21f8c9b7:#EBECEE;--e-global-color-47eea86e:#FFF;--e-global-color-6cb047a:#FFFFFF00;--e-global-color-467c5c9:#666666;--e-global-color-5d42dd9:#667385;--e-global-typography-primary-font-family:"Cousine";--e-global-typography-primary-font-size:clamp(32px, calc(32px + (35 - 32) * ((100vw - 320px) / (1920 - 320))), 35px);--e-global-typography-primary-font-weight:400;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-secondary-font-family:"Cousine";--e-global-typography-secondary-font-size:clamp(30px, calc(30px + (25 - 30) * ((100vw - 320px) / (1920 - 320))), 25px);--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-text-transform:uppercase;--e-global-typography-text-font-family:"Cousine";--e-global-typography-text-font-size:15px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.6em;--e-global-typography-text-letter-spacing:1.27px;--e-global-typography-accent-font-family:"Cousine";--e-global-typography-accent-font-weight:500;--e-global-typography-d2a3505-font-family:"Cousine";--e-global-typography-d2a3505-font-size:17px;--e-global-typography-ea087f8-font-family:"Cousine";--e-global-typography-ea087f8-font-size:15px;--e-global-typography-ea087f8-text-transform:uppercase;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 );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-kit-1397 e-page-transition{background-color:#FFBC7D;}.elementor-kit-1397 p{margin-block-end:15px;}.elementor-kit-1397 h1{font-size:3.5em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:0;--container-default-padding-right:var(--mft-space-s);--container-default-padding-bottom:0;--container-default-padding-left:var(--mft-space-s);}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-1397{--e-global-typography-text-font-size:15px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:0;--container-default-padding-right:var(--mft-space-s);--container-default-padding-bottom:0;--container-default-padding-left:var(--mft-space-s);}}@media(max-width:767px){.elementor-kit-1397{--e-global-typography-text-font-size:14px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:0;--container-default-padding-right:var(--mft-space-s);--container-default-padding-bottom:0;--container-default-padding-left:var(--mft-space-s);}}/* Start custom CSS *//*************************/
/***** fixed general *****/

/* so that loading does not appear in bookingstep1 */
body.elementor-editor-active .mi-rs.loading {
	display: none;
}

/* to make the language .elementor-kit-1397 visible in modal */
.wpml-ls-legacy-dropdown-click:hover .wpml-ls-sub-menu {
	visibility: visible;
}

.elementor-lightbox .swiper .elementor-swiper-button-next{
    background: none !important;
}
.elementor-lightbox .swiper .elementor-swiper-button-prev{
    background: none !important;
}

.white-text .offers-mashup .more-info-link{
    z-index: auto !important;
}

/*************************************/
/********** general styles **********/
body {

	/*********** color & hover ***********/
	--mft-cta: var(--e-global-color-accent);
	--mft-cta-hover: var(--e-global-color-846ad98);
	--mft-btn-primary: var(--e-global-color-primary);
	--mft-btn-primary-hover: var(--e-global-color-secondary);
	--mft-highlight-color: var(--e-global-color-primary);
	--mft-link-hover: var(--e-global-color-primary);
	--mft-background-ligh: var(--e-global-color-21f8c9b7);
	--mft-background-dark: var(--e-global-color-1015657);     
	
	/*********** container  ***********/
	--width-s: 600px;
	--width-m: 1440px;
	--width-sm:1200px;
	
	/*********** min-height img ***********/
	--min-height-s: 200px;
	--min-height-m: 400px;
	--min-height-l: 800px;
	
	/********** spaces **********/
	--mft-space-base: 16px;
	--mft-section-space-v: var(--mft-space-3xl);
	--mft-space-5xs: 4px;
	--mft-space-4xs: 8px;
	--mft-space-3xs: 12px;
	--mft-space-2xs: var(--mft-space-base); /*16*/
	--mft-space-xs: calc(var(--mft-space-base) * 1.5); /*24*/
	--mft-space-s: calc(var(--mft-space-base) * 2); /*32*/
	--mft-space-m: calc(var(--mft-space-base) * 2.5); /*40*/
	--mft-space-l: calc(var(--mft-space-base) * 3); /*48*/
	--mft-space-xl: calc(var(--mft-space-base) * 3.5); /*56*/
	--mft-space-2xl: calc(var(--mft-space-base) * 4); /*64*/
	--mft-space-3xl: calc(var(--mft-space-base) * 5); /*80*/
	--mft-space-4xl: calc(var(--mft-space-base) * 6); /*96*/
	--mft-space-5xl: calc(var(--mft-space-base) * 10); /*160*/
}
.offers-home .elementor-widget-heading .elementor-heading-title {
    font-size: 24px !important;
    text-align: left;
}

.offers-home .carousel-inner {
    padding: 0px !important;
}

.elementor-widget-heading .elementor-heading-title {
    color: #fff;
    font-size: 32px;
    text-align: center;
    text-transform: uppercase;
}
.elementor-1614 .elementor-element.elementor-element-32ae9eb{
    min-height: 500px
}
body.cat-rooms .room-box .room-detail .price-box .last-booking {
    color: #ffffff;
    font-size: .9em;
    line-height: normal;
    margin-bottom: 0 !important;
    position: absolute;
    top: 10px;
    left: 10px;
    background-color: #3F5367;
    padding: 10px 5px;
}
body.cat-rooms .room-box .room-detail .price-box {
    position: static;
    text-align: left;
    width: auto;
    display: inline-block;
}
/***** contanier *****/
.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;
}

/***** paddings vertical sections *****/
.mft-section-pt {
	padding-top: var(--mft-section-space-v);
	padding-top: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-section-space-v) / 2), var(--mft-section-space-v));
}

.mft-section-pb {
	padding-bottom: var(--mft-section-space-v);
	padding-bottom: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-section-space-v) / 2), var(--mft-section-space-v));
}

.mft-section-mt {
	margin-top: var(--mft-section-space-v);
	margin-top: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-section-space-v) / 2), var(--mft-section-space-v));
}

.mft-section-mb {
	margin-bottom: var(--mft-section-space-v);
	margin-bottom: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-section-space-v) / 2), var(--mft-section-space-v));
}

/***** paddings *****/
.mft-pt5xs {padding-top: var(--mft-space-5xs);}
.mft-pr5xs {padding-right: var(--mft-space-5xs);}
.mft-pb5xs {padding-bottom: var(--mft-space-5xs);}
.mft-pl5xs {padding-left: var(--mft-space-5xs);}
.mft-ph5xs {padding-inline: var(--mft-space-5xs);}
.mft-pv5xs {padding-block: var(--mft-space-5xs);}
.mft-pa5xs {padding: var(--mft-space-5xs);}
.mft-pt4xs {padding-top: var(--mft-space-4xs);}
.mft-pr4xs {padding-right: var(--mft-space-4xs);}
.mft-pb4xs {padding-bottom: var(--mft-space-4xs);}
.mft-pl4xs {padding-left: var(--mft-space-4xs);}
.mft-ph4xs {padding-inline: var(--mft-space-4xs);}
.mft-pv4xs {padding-block: var(--mft-space-4xs);}
.mft-pa4xs {padding: var(--mft-space-4xs);}
.mft-pt3xs {padding-top: var(--mft-space-3xs);}
.mft-pr3xs {padding-right: var(--mft-space-3xs);}
.mft-pb3xs {padding-bottom: var(--mft-space-3xs);}
.mft-pl3xs {padding-left: var(--mft-space-3xs);}
.mft-ph3xs {padding-inline: var(--mft-space-3xs);}
.mft-pv3xs {padding-block: var(--mft-space-3xs);}
.mft-pa3xs {padding: var(--mft-space-3xs);}
.mft-pt2xs {padding-top: var(--mft-space-2xs);}
.mft-pr2xs {padding-right: var(--mft-space-2xs);}
.mft-pb2xs {padding-bottom: var(--mft-space-2xs);}
.mft-pl2xs {padding-left: var(--mft-space-2xs);}
.mft-ph2xs {padding-inline: var(--mft-space-2xs);}
.mft-pv2xs {padding-block: var(--mft-space-2xs);}
.mft-pa2xs {padding: var(--mft-space-2xs)}
.mft-ptxs {padding-top: var(--mft-space-xs);}
.mft-prxs {padding-right: var(--mft-space-xs);}
.mft-pbxs {padding-bottom: var(--mft-space-xs);}
.mft-plxs {padding-left: var(--mft-space-xs);}
.mft-phxs {padding-inline: var(--mft-space-xs);}
.mft-pvxs {padding-block: var(--mft-space-xs);}
.mft-paxs {padding: var(--mft-space-xs);}
.mft-pts {padding-top: var(--mft-space-s);}
.mft-prs {padding-right: var(--mft-space-s);}
.mft-pbs {padding-bottom: var(--mft-space-s);}
.mft-pls {padding-left: var(--mft-space-s);}
.mft-phs {padding-inline: var(--mft-space-s);}
.mft-pvs {padding-block: var(--mft-space-s);}
.mft-pas {padding: var(--mft-space-s);}
.mft-ptm {padding-top: var(--mft-space-m); padding-top: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-m) / 2), var(--mft-space-m));}
.mft-prm {padding-right: var(--mft-space-m); padding-right: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-m) / 2), var(--mft-space-m));}
.mft-pbm {padding-bottom: var(--mft-space-m); padding-bottom: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-m) / 2), var(--mft-space-m));}
.mft-plm {padding-left: var(--mft-space-m); padding-left: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-m) / 2), var(--mft-space-m));}
.mft-phm {padding-inline: var(--mft-space-m); padding-inline: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-m) / 2), var(--mft-space-m));}
.mft-pvm {padding-block: var(--mft-space-m); padding-block: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-m) / 2), var(--mft-space-m));}
.mft-pam {padding: var(--mft-space-m); padding: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-m) / 2), var(--mft-space-m));}
.mft-ptl {padding-top: var(--mft-space-l); padding-top: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-l) / 2), var(--mft-space-l));}
.mft-prl {padding-right: var(--mft-space-l); padding-right: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-l) / 2), var(--mft-space-l));}
.mft-pbl {padding-bottom: var(--mft-space-l); padding-bottom: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-l) / 2), var(--mft-space-l));}
.mft-pll {padding-left: var(--mft-space-l); padding-left: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-l) / 2), var(--mft-space-l));}
.mft-phl {padding-inline: var(--mft-space-l); padding-inline: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-l) / 2), var(--mft-space-l));}
.mft-pvl {padding-block: var(--mft-space-l); padding-block: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-l) / 2), var(--mft-space-l));}
.mft-pal {padding: var(--mft-space-l); padding: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-l) / 2), var(--mft-space-l));}
.mft-ptxl {padding-top: var(--mft-space-xl); padding-top: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-xl) / 2), var(--mft-space-xl));}
.mft-prxl {padding-right: var(--mft-space-xl); padding-right: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-xl) / 2), var(--mft-space-xl));}
.mft-pbxl {padding-bottom: var(--mft-space-xl); padding-bottom: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-xl) / 2), var(--mft-space-xl));}
.mft-plxl {padding-left: var(--mft-space-xl); padding-left: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-xl) / 2), var(--mft-space-xl));}
.mft-phxl {padding-inline: var(--mft-space-xl); padding-inline: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-xl) / 2), var(--mft-space-xl));}
.mft-pvxl {padding-block: var(--mft-space-xl); padding-block: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-xl) / 2), var(--mft-space-xl));}
.mft-paxl {padding: var(--mft-space-xl); padding: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-xl) / 2), var(--mft-space-xl));}
.mft-pt2xl {padding-top: var(--mft-space-2xl); padding-top: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-2xl) / 2), var(--mft-space-2xl));}
.mft-pr2xl {padding-right: var(--mft-space-2xl); padding-right: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-2xl) / 2), var(--mft-space-2xl));}
.mft-pb2xl {padding-bottom: var(--mft-space-2xl); padding-bottom: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-2xl) / 2), var(--mft-space-2xl));}
.mft-pl2xl {padding-left: var(--mft-space-2xl); padding-left: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-2xl) / 2), var(--mft-space-2xl));}
.mft-ph2xl {padding-inline: var(--mft-space-2xl); padding-inline: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-2xl) / 2), var(--mft-space-2xl));}
.mft-pv2xl {padding-block: var(--mft-space-2xl); padding-block: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-2xl) / 2), var(--mft-space-2xl));}
.mft-pa2xl {padding: var(--mft-space-2xl); padding: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-2xl) / 2), var(--mft-space-2xl));}
.mft-pt3xl {padding-top: var(--mft-space-3xl); padding-top: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-3xl) / 2), var(--mft-space-3xl));}
.mft-pr3xl {padding-right: var(--mft-space-3xl); padding-right: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-3xl) / 2), var(--mft-space-3xl));}
.mft-pb3xl {padding-bottom: var(--mft-space-3xl); padding-bottom: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-3xl) / 2), var(--mft-space-3xl));}
.mft-pl3xl {padding-left: var(--mft-space-3xl); padding-left: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-3xl) / 2), var(--mft-space-3xl));}
.mft-ph3xl {padding-inline: var(--mft-space-3xl); padding-inline: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-3xl) / 2), var(--mft-space-3xl));}
.mft-pv3xl {padding-block: var(--mft-space-3xl); padding-block: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-3xl) / 2), var(--mft-space-3xl));}
.mft-pa3xl {padding: var(--mft-space-3xl); padding: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-3xl) / 2), var(--mft-space-3xl));}
.mft-pt4xl {padding-top: var(--mft-space-4xl); padding-top: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-4xl) / 2), var(--mft-space-4xl));}
.mft-pr4xl {padding-right: var(--mft-space-4xl); padding-right: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-4xl) / 2), var(--mft-space-4xl));}
.mft-pb4xl {padding-bottom: var(--mft-space-4xl); padding-bottom: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-4xl) / 2), var(--mft-space-4xl));}
.mft-pl4xl {padding-left: var(--mft-space-4xl); padding-left: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-4xl) / 2), var(--mft-space-4xl));}
.mft-ph4xl {padding-inline: var(--mft-space-4xl); padding-inline: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-4xl) / 2), var(--mft-space-4xl));}
.mft-pv4xl {padding-block: var(--mft-space-4xl); padding-block: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-4xl) / 2), var(--mft-space-4xl));}
.mft-pa4xl {padding: var(--mft-space-4xl); padding: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-4xl) / 2), var(--mft-space-4xl));}
.mft-pt5xl {padding-top: var(--mft-space-5xl); padding-top: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-5xl) / 2), var(--mft-space-5xl));}
.mft-pr5xl {padding-right: var(--mft-space-5xl); padding-right: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-5xl) / 2), var(--mft-space-5xl));}
.mft-pb5xl {padding-bottom: var(--mft-space-5xl); padding-bottom: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-5xl) / 2), var(--mft-space-5xl));}
.mft-pl5xl {padding-left: var(--mft-space-5xl); padding-left: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-5xl) / 2), var(--mft-space-5xl));}
.mft-ph5xl {padding-inline: var(--mft-space-5xl); padding-inline: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-5xl) / 2), var(--mft-space-5xl));}
.mft-pv5xl {padding-block: var(--mft-space-5xl); padding-block: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-5xl) / 2), var(--mft-space-5xl));}
.mft-pa5xl {padding: var(--mft-space-5xl); padding: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-5xl) / 2), var(--mft-space-5xl));}

/***** margins *****/
.mft-mt5xs {margin-top: var(--mft-space-5xs);}
.mft-mr5xs {margin-right: var(--mft-space-5xs);}
.mft-mb5xs {margin-bottom: var(--mft-space-5xs);}
.mft-ml5xs {margin-left: var(--mft-space-5xs);}
.mft-mh5xs {margin-inline: var(--mft-space-5xs);}
.mft-mv5xs {margin-block: var(--mft-space-5xs);}
.mft-ma5xs {margin: var(--mft-space-5xs);}
.mft-mt4xs {margin-top: var(--mft-space-4xs);}
.mft-mr4xs {margin-right: var(--mft-space-4xs);}
.mft-mb4xs {margin-bottom: var(--mft-space-4xs);}
.mft-ml4xs {margin-left: var(--mft-space-4xs);}
.mft-mh4xs {margin-inline: var(--mft-space-4xs);}
.mft-mv4xs {margin-block: var(--mft-space-4xs);}
.mft-ma4xs {margin: var(--mft-space-4xs);}
.mft-mt3xs {margin-top: var(--mft-space-3xs);}
.mft-mr3xs {margin-right: var(--mft-space-3xs);}
.mft-mb3xs {margin-bottom: var(--mft-space-3xs);}
.mft-ml3xs {margin-left: var(--mft-space-3xs);}
.mft-mh3xs {margin-inline: var(--mft-space-3xs);}
.mft-mv3xs {margin-block: var(--mft-space-3xs);}
.mft-ma3xs {margin: var(--mft-space-3xs);}
.mft-mt2xs {margin-top: var(--mft-space-2xs);}
.mft-mr2xs {margin-right: var(--mft-space-2xs);}
.mft-mb2xs {margin-bottom: var(--mft-space-2xs);}
.mft-ml2xs {margin-left: var(--mft-space-2xs);}
.mft-mh2xs {margin-inline: var(--mft-space-2xs);}
.mft-mv2xs {margin-block: var(--mft-space-2xs);}
.mft-ma2xs {margin: var(--mft-space-2xs);}
.mft-mtxs {margin-top: var(--mft-space-xs);}
.mft-mrxs {margin-right: var(--mft-space-xs);}
.mft-mbxs {margin-bottom: var(--mft-space-xs);}
.mft-mlxs {margin-left: var(--mft-space-xs);}
.mft-mhxs {margin-inline: var(--mft-space-xs);}
.mft-mvxs {margin-block: var(--mft-space-xs);}
.mft-maxs {margin: var(--mft-space-xs);}
.mft-mts {margin-top: var(--mft-space-s);}
.mft-mrs {margin-right: var(--mft-space-s);}
.mft-mbs {margin-bottom: var(--mft-space-s);}
.mft-mls {margin-left: var(--mft-space-s);}
.mft-mhs {margin-inline: var(--mft-space-s);}
.mft-mvs {margin-block: var(--mft-space-s);}
.mft-mas {margin: var(--mft-space-s);}
.mft-mtm {margin-top: var(--mft-space-m); margin-top: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-m) / 2), var(--mft-space-m));}
.mft-mrm {margin-right: var(--mft-space-m); margin-right: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-m) / 2), var(--mft-space-m));}
.mft-mbm {margin-bottom: var(--mft-space-m); margin-bottom: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-m) / 2), var(--mft-space-m));}
.mft-mlm {margin-left: var(--mft-space-m); margin-left: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-m) / 2), var(--mft-space-m));}
.mft-mhm {margin-inline: var(--mft-space-m); margin-inline: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-m) / 2), var(--mft-space-m));}
.mft-mvm {margin-block: var(--mft-space-m); margin-block: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-m) / 2), var(--mft-space-m));}
.mft-mam {margin: var(--mft-space-m); margin: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-m) / 2), var(--mft-space-m));}
.mft-mtl {margin-top: var(--mft-space-l); margin-top: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-l) / 2), var(--mft-space-l));}
.mft-mrl {margin-right: var(--mft-space-l); margin-right: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-l) / 2), var(--mft-space-l));}
.mft-mbl {margin-bottom: var(--mft-space-l); margin-bottom: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-l) / 2), var(--mft-space-l));}
.mft-mll {margin-left: var(--mft-space-l); margin-left: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-l) / 2), var(--mft-space-l));}
.mft-mhl {margin-inline: var(--mft-space-l); margin-inline: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-l) / 2), var(--mft-space-l));}
.mft-mvl {margin-block: var(--mft-space-l); margin-block: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-l) / 2), var(--mft-space-l));}
.mft-mal {margin: var(--mft-space-l); margin: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-l) / 2), var(--mft-space-l));}
.mft-mtxl {margin-top: var(--mft-space-xl); margin-top: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-xl) / 2), var(--mft-space-xl));}
.mft-mrxl {margin-right: var(--mft-space-xl); margin-right: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-xl) / 2), var(--mft-space-xl));}
.mft-mbxl {margin-bottom: var(--mft-space-xl); margin-bottom: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-xl) / 2), var(--mft-space-xl));}
.mft-mlxl {margin-left: var(--mft-space-xl); margin-left: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-xl) / 2), var(--mft-space-xl));}
.mft-mhxl {margin-inline: var(--mft-space-xl); margin-inline: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-xl) / 2), var(--mft-space-xl));}
.mft-mvxl {margin-block: var(--mft-space-xl); margin-block: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-xl) / 2), var(--mft-space-xl));}
.mft-maxl {margin: var(--mft-space-xl); margin: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-xl) / 2), var(--mft-space-xl));}
.mft-mt2xl {margin-top: var(--mft-space-2xl); margin-top: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-2xl) / 2), var(--mft-space-2xl));}
.mft-mr2xl {margin-right: var(--mft-space-2xl); margin-right: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-2xl) / 2), var(--mft-space-2xl));}
.mft-mb2xl {margin-bottom: var(--mft-space-2xl); margin-bottom: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-2xl) / 2), var(--mft-space-2xl));}
.mft-ml2xl {margin-left: var(--mft-space-2xl); margin-left: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-2xl) / 2), var(--mft-space-2xl));}
.mft-mh2xl {margin-inline: var(--mft-space-2xl); margin-inline: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-2xl) / 2), var(--mft-space-2xl));}
.mft-mv2xl {margin-block: var(--mft-space-2xl); margin-block: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-2xl) / 2), var(--mft-space-2xl));}
.mft-ma2xl {margin: var(--mft-space-2xl); margin: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-2xl) / 2), var(--mft-space-2xl));}
.mft-mt3xl {margin-top: var(--mft-space-3xl); margin-top: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-3xl) / 2), var(--mft-space-3xl));}
.mft-mr3xl {margin-right: var(--mft-space-3xl); margin-right: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-3xl) / 2), var(--mft-space-3xl));}
.mft-mb3xl {margin-bottom: var(--mft-space-3xl); margin-bottom: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-3xl) / 2), var(--mft-space-3xl));}
.mft-ml3xl {margin-left: var(--mft-space-3xl); margin-left: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-3xl) / 2), var(--mft-space-3xl));}
.mft-mh3xl {margin-inline: var(--mft-space-3xl); margin-inline: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-3xl) / 2), var(--mft-space-3xl));}
.mft-mv3xl {margin-block: var(--mft-space-3xl); margin-block: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-3xl) / 2), var(--mft-space-3xl));}
.mft-ma3xl {margin: var(--mft-space-3xl); margin: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-3xl) / 2), var(--mft-space-3xl));}
.mft-mt4xl {margin-top: var(--mft-space-4xl); margin-top: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-4xl) / 2), var(--mft-space-4xl));}
.mft-mr4xl {margin-right: var(--mft-space-4xl); margin-right: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-4xl) / 2), var(--mft-space-4xl));}
.mft-mb4xl {margin-bottom: var(--mft-space-4xl); margin-bottom: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-4xl) / 2), var(--mft-space-4xl));}
.mft-ml4xl {margin-left: var(--mft-space-4xl); margin-left: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-4xl) / 2), var(--mft-space-4xl));}
.mft-mh4xl {margin-inline: var(--mft-space-4xl); margin-inline: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-4xl) / 2), var(--mft-space-4xl));}
.mft-mv4xl {margin-block: var(--mft-space-4xl); margin-block: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-4xl) / 2), var(--mft-space-4xl));}
.mft-ma4xl {margin: var(--mft-space-4xl); margin: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-4xl) / 2), var(--mft-space-4xl));}
.mft-mt5xl {margin-top: var(--mft-space-5xl); margin-top: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-5xl) / 2), var(--mft-space-5xl));}
.mft-mr5xl {margin-right: var(--mft-space-5xl); margin-right: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-5xl) / 2), var(--mft-space-5xl));}
.mft-mb5xl {margin-bottom: var(--mft-space-5xl); margin-bottom: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-5xl) / 2), var(--mft-space-5xl));}
.mft-ml5xl {margin-left: var(--mft-space-5xl); margin-left: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-5xl) / 2), var(--mft-space-5xl));}
.mft-mh5xl {margin-inline: var(--mft-space-5xl); margin-inline: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-5xl) / 2), var(--mft-space-5xl));}
.mft-mv5xl {margin-block: var(--mft-space-5xl); margin-block: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-5xl) / 2), var(--mft-space-5xl));}
.mft-ma5xl {margin: var(--mft-space-5xl); margin: clamp(var(--mft-space-5xs), 4vw + calc(var(--mft-space-5xl) / 2), var(--mft-space-5xl));}

/*********** widget img responsive ***********/
.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); /*200px*/
}

.mft-minh-m {
	min-height: var(--min-height-m); /*400px*/
}

.mft-minh-l {
	min-height: var(--min-height-l); /*800px*/
}

@media(max-width:1024px) {
	.mft-minh-l {
		min-height: var(--min-height-m);
	}

	.mft-minh-m {
		min-height: var(--min-height-s);
	}

}

/* Header and Finder */
body[data-mirai-modal="true"] #header,
body[data-mirai-modal="true"] #hero-home .elementor-widget-template {
    z-index: 6;

}
.hero-home{
    max-height: 500px !important;
}

#template-finder {
    width: auto;
    bottom: 35%;
    z-index: 9;
    transition: bottom 0.5s ease;
}
.cat-home #template-finder {
    bottom: 25%;
}
.single-post #template-finder,
.archive #template-finder {
    bottom: 50%;
}
#template-finder.template-finder-active,
.cat-home #template-finder.template-finder-active,
.single-post #template-finder.template-finder-active,
.archive #template-finder.template-finder-active {
    bottom: 0px;
    position: fixed;
    width: 100%;
    /*background: #AEAEAE;*/
    backdrop-filter: blur(10px);
    display: flex;
    padding: 10px;
    justify-content: center;
}
/*********** separator line between title and text ***********/
.mft-divider.elementor-element {
	width: 70px !important;
	border-top: 3px solid var(--mft-highlight-color);
}

.mft-divider-white.elementor-element {
	border-top: 3px solid var(--e-global-color-47eea86e);
}

/*********** widget social icons / centre the icons in the background ***********/
.elementor-widget-social-icons .elementor-icon.elementor-social-icon {
	display: flex;
}

/********** arrows & dots carousel styles **********/

/***** arrows *****/
.mft-arrows-carousel-styles .elementor-swiper-button i {
	font-family: 'mirai-icofonts';
	font-size: var(--e-global-typography-text-font-size);
	font-weight: var(--e-global-typography-text-font-weight);
	color: var(--e-global-color-primary);
	border: 1px solid;
	border-radius: 50%;
	padding: 10px;
	box-shadow: 0px 0px 7px 3px #0000002b;
	transition: all .3s ease-out;
}

.mft-arrows-carousel-styles .elementor-swiper-button:hover i {
	color: var(--mft-link-hover);
}

.mft-arrows-carousel-styles .elementor-swiper-button-prev i:before {
	content: "\e962";
}

.mft-arrows-carousel-styles .elementor-swiper-button-next i:before {
	content: "\e963";
}

.mft-carousel-styles-white .elementor-swiper-button i {
	color: var(--e-global-color-47eea86e);
}

/***** dots *****/
.mft-dots-carousel-styles .swiper-pagination .swiper-pagination-bullet {
	background: var(--e-global-color-primary);
	width: 10px;
	height: 10px;
	margin: 5px;
	transition: all .3s ease-out;
}

.mft-dots-carousel-styles .swiper-pagination .swiper-pagination-bullet:hover {
	background: var(--e-global-color-primary);
}

.mft-dots-carousel-styles .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
	width: 20px;
	border-radius: 30px;
}

.mft-carousel-styles-white .swiper-pagination .swiper-pagination-bullet {
	background: var(--e-global-color-47eea86e);
}

/********** fix mobile icon box **********/
@media (max-width: 767px) {
	.elementor-widget-icon-box.elementor-position-left.elementor-vertical-align-middle:not(.elementor-mobile-position-top) .elementor-icon-box-wrapper,
	.elementor-widget-icon-box.elementor-position-right.elementor-vertical-align-middle:not(.elementor-mobile-position-top) .elementor-icon-box-wrapper,
	.elementor-widget-icon-box.elementor-position-left.elementor-vertical-align-middle .elementor-icon-box-icon,
	.elementor-widget-icon-box.elementor-position-right.elementor-vertical-align-middle .elementor-icon-box-icon {
	  display: flex;
	  align-items: center;
	}
}

/********** autoscroll Y on popups **********/
.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-primary);
	border-radius: 2px;
}

.mft-modal-scroll::-webkit-scrollbar-thumb {
	background-color: var(--e-global-color-primary);
	border-radius: 2px;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.mft-modal-scroll::-webkit-scrollbar-thumb:hover {
	background: var(--e-global-color-primary);
}


/***************************************/
/********** language .elementor-kit-1397 **********/
.wpml-ls-legacy-dropdown-click a.js-wpml-ls-item-toggle.wpml-ls-item-toggle,
.wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu {
	font-family: var(--e-global-typography-text-font-family), Sans-serif;
	font-weight: var(--e-global-typography-text-font-weight);
	letter-spacing: var(--e-global-typography-text-letter-spacing);
	word-spacing: var(--e-global-typography-text-word-spacing);     
	/*color: var(--e-global-color-primary);*/
	background: transparent;
	border: 0;
	padding-left: 18px;
    padding-right: 17px;
	transition: .3s ease-in-out;
}

.wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle:after {
	content: '\e961';
	font-family: 'mirai-icofonts';
	vertical-align: middle;
	display: inline-block;
	border: 0;
	border-top: 0;
	position: absolute;
	right: 0px;
	top: 9px;
	font-size: 12px;
}

.wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle:before {
    content: "\e9a1";
    font-family: 'mirai-icofonts' !important;
    position: absolute;
    height: 16px;
    width: 16px;
    left: 0px;
}

/**************************/
/********** club **********/

/***** Login club *****/
.mi-club-login__access.club-login__access,
.mim-club-login__access.club-login__access {
	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);  
	/*color: var(--mft-cta);*/
	padding: 0;
	transition: .3s ease-in-out;
}

.mi-club-login__access-icon,
.mim-club-login__access-icon {
	font-size: 17px;
}

.mi-club-login__access.club-login__access:hover,
.mim-club-login__access.club-login__access:hover {
	color: var(--mft-cta);
}

.mim-club-login__access-text {
	display: none;
}

.mim-club-login__access {
	width: auto;
}

/***** modal club & page *****/
.mi-bsmodal-body .mi-s-color-link,
.mi-club-signup .mi-s-color-link,
.mim-modal-body .mi-s-color-link {
	color: var(--mft-cta);
}

.mi-bsmodal-body .mi-s-color-link:hover,
.mi-club-signup .mi-s-color-link:hover,
.mim-modal-body .mi-s-color-link:hover {
	color: var(--mft-cta-hover);
}

.mi-bsmodal-body .mi-s-color-button,
.mi-clubarea .mi-s-color-button,
.mi-club-signup .mi-s-color-button,
.mim-modal-body .mi-s-color-button {
	background-color: var(--mft-cta);
	transition: .3s ease-in-out;
}

.mi-bsmodal-body .mi-s-color-button:hover,
.mi-clubarea .mi-s-color-button:hover,
.mi-club-signup .mi-s-color-button:hover,
.mim-modal-body .mi-s-color-button:hover {
	background-color: var(--mft-cta-hover);
}

/*****************************/
/********** buttons **********/

/***** btn 1 *****/
.elementor-button.mft-btn-1 {
	font-size: var(--e-global-typography-ea087f8-font-size);
	font-weight: var(--e-global-typography-ea087f8-font-weight);
	line-height: var(--e-global-typography-ea087f8-line-height);
	letter-spacing: var(--e-global-typography-ea087f8-letter-spacing);
	word-spacing: var(--e-global-typography-ea087f8-word-spacing);
	color: var(--e-global-color-47eea86e);
	background-color: var(--mft-cta);
	padding: var(--mft-space-2xs) var(--mft-space-xs);
	border-radius: var(--mft-space-5xs);
	transition: all .3s ease;
}

.elementor-button.mft-btn-1:hover {
	background-color: var(--mft-cta-hover);
}

/***** btn 2 *****/
.elementor-button.mft-btn-2 {
	font-size: var(--e-global-typography-ea087f8-font-size);
	font-weight: var(--e-global-typography-ea087f8-font-weight);
	letter-spacing: var(--e-global-typography-ea087f8-letter-spacing);
	word-spacing: var(--e-global-typography-ea087f8-word-spacing);
	text-transform: var(--e-global-typography-ea087f8-text-transform);
	color: var(--mft-btn-primary);
	background-color: transparent;
	padding: 12px 30px;
	border: 1px solid;
	border-radius: 0; /* fixing offers mashup button */
    text-shadow: none; /* fixing offers mashup button */
	transition: all .3s ease;
}

.elementor-button.mft-btn-2:hover {
    text-decoration: none;
    color: #334a5d;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    
}

.elementor-button.mft-btn-2:before, .elementor-button.mft-btn-2:after {
  width: 100%;
  height:100%;
  content:'';
  position: absolute;
  top:-1px;
  left:-1px;
  -webkit-transform: scale(0);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.elementor-button.mft-btn-2:before:before {
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  -webkit-transform-origin: 0 100%;
}

.elementor-button.mft-btn-2:before:after {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform-origin: 100% 0%;
}

/****** btn 3 ******/
.elementor-button.mft-btn-3 {
	font-size: var(--e-global-typography-ea087f8-font-size);
	font-weight: var(--e-global-typography-ea087f8-font-weight);
	line-height: var(--e-global-typography-ea087f8-line-height);
	letter-spacing: var(--e-global-typography-ea087f8-letter-spacing);
	word-spacing: var(--e-global-typography-ea087f8-word-spacing);
	color: var(--mft-btn-primary-hover);
	background-color: var(--mft-btn-primary);
	padding: var(--mft-space-2xs) var(--mft-space-xs);
	border-radius: var(--mft-space-5xs);
	transition: all .3s ease;
}

.elementor-button.mft-btn-3:hover {
	color: var(--e-global-color-47eea86e);
	background-color: var(--mft-btn-primary-hover);
}

/***** btn 4 *****/
.elementor-button.mft-btn-4 {
	font-size: var(--e-global-typography-ea087f8-font-size);
	font-weight: var(--e-global-typography-ea087f8-font-weight);
	line-height: var(--e-global-typography-ea087f8-line-height);
	letter-spacing: var(--e-global-typography-ea087f8-letter-spacing);
	word-spacing: var(--e-global-typography-ea087f8-word-spacing);
	color: var(--mft-btn-primary);
	background-color: transparent;
	padding: 0 0 var(--mft-space-5xs);
	border-bottom: 2px solid;
	border-radius: 0;
	transition: all .3s ease;
}

.elementor-button.mft-btn-4:hover {
	color: var(--mft-btn-primary-hover);
}

/***** btn 5 *****/
.elementor-button.mft-btn-5 {
	font-size: var(--e-global-typography-ea087f8-font-size);
	font-weight: var(--e-global-typography-ea087f8-font-weight);
	line-height: var(--e-global-typography-ea087f8-line-height);
	letter-spacing: var(--e-global-typography-ea087f8-letter-spacing);
	word-spacing: var(--e-global-typography-ea087f8-word-spacing);
	color: var(--mft-btn-primary);
	background-color: transparent;
	padding: var(--mft-space-5xs);
	transition: all .3s ease;
}

.elementor-button.mft-btn-5:hover {
	color: var(--mft-btn-primary-hover);
}

/***** link btn *****/
.elementor-button.mft-link-btn {
	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);
	color: inherit;
	background-color: transparent;
	padding: 0;
	text-align: left;
	transition: all .3s ease;
}

.elementor-button.mft-link-btn:hover {
	color: var(--mft-link-hover);
}

.elementor-button.mft-link-btn:hover .elementor-button-icon svg path {
	fill: var(--mft-link-hover);
}

/***** link btn - icon color *****/
.mft-link-icon-color i {
	color: var(--mft-highlight-color);
	font-size: 20px;
}

.mft-link-icon-color .elementor-button-icon svg path {
	fill: var(--mft-highlight-color);
}

/***** link icon-list - icon color & hover *****/
.mft-link-btn-list-icon-color .elementor-icon-list-item .elementor-icon-list-icon i,
.mft-link-btn-list .elementor-icon-list-item:hover,
.mft-link-btn-list .elementor-icon-list-item:hover .elementor-icon-list-icon i {
	color: var(--mft-highlight-color);
}

.mft-link-btn-list-icon-color .elementor-icon-list-item .elementor-icon-list-icon svg path,
.mft-link-btn-list .elementor-icon-list-item:hover .elementor-icon-list-icon svg path {
	fill: var(--mft-highlight-color);
}

/***** transition svg *****/
.elementor-button.mft-link-btn .elementor-button-icon svg path,
.mft-link-btn-list .elementor-icon-list-icon svg path {
	transition: var(--e-a-transition-hover);
}

/********** change of text colour on coloured background **********/
.mft-light-text,
.mft-light-text .elementor-button {
	color: var(--e-global-color-47eea86e);
}

.mft-dark-text,
.mft-dark-text .elementor-button {
	color: var(--e-global-color-824cd36);
}

/************************************/
/********** flight + hotel **********/
.mft-flight-hotel ul.elementor-icon-list-items li span,
.mft-flight-hotel ul.elementor-icon-list-items li span i {
	transition: none !important;
}

.mft-flight-hotel ul.elementor-icon-list-items li {
	color: var(--e-global-color-f8ea714);
	transition: .2s linear;
}

.mft-flight-hotel ul.elementor-icon-list-items li:first-child,
.mft-flight-hotel ul.elementor-icon-list-items li:hover {
	color: var(--mft-cta);
}

.mft-flight-hotel ul.elementor-icon-list-items li {
	border-bottom: 2px solid;
	padding-bottom: 3px;
}

.mft-flight-hotel ul.elementor-icon-list-items li:first-child {
	border-bottom: 2px solid var(--mft-cta);
}

/****************************/
/********** HEROS ***********/

/***** hero img slider *****/
.mft-slider-hero .e-n-carousel.swiper:after {
	content: "";
	background: linear-gradient(0deg, #00000080, transparent);
	position: absolute;
	width: 100%;
	height: 100%;
}

/***** hero - max-height *****/
.mft-hero-height {
	height: 100vh;
	max-height: 1080px;
}

/***** dinamic hero images on details *****/
.dynamic-detail-image {
	transition: .5s ease !important;
	background-size: cover !important;
	background-repeat: no-repeat !important;
}

.dynamic-detail-image:not(.dynamic-detail-image-ready) {
	opacity: 0;
}

/***********************************/
/********** dynamic pages **********/

/********** general styles **********/

/***** hide mft-book-btn in room detail & offer detail *****/
.cat-room-detail .mft-book-btn,
.cat-offer-detail .mft-book-btn {
	display: none !important;
}

/***** calendar colors (detail rooms) *****/

/* selected and hover dates */
.dynamic-calendar .ui-datepicker-calendar ._selected-date a,
.dynamic-calendar .ui-datepicker-calendar ._checkin-date a,
.dynamic-calendar .ui-datepicker-calendar ._checkout-date._checkin-date a,
.dynamic-calendar .ui-datepicker-calendar a:hover {
	background: var(--e-global-color-21f8c9b7) !important;
	color: #555 !important;
}

/* last day selected */
.dynamic-calendar .ui-datepicker-calendar ._checkout-date a {
	background: var(--mft-cta) !important;
	color: var(--e-global-color-47eea86e) !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 h2,
.rooms-detail-wrapper h3 {
	font-family: var(--e-global-typography-d2a3505-font-family), Sans-serif;
	font-size: var(--e-global-typography-d2a3505-font-size);
	font-weight: var(--e-global-typography-d2a3505-font-weight) !important;
	font-style: var(--e-global-typography-d2a3505-font-style);
	line-height: var(--e-global-typography-d2a3505-line-height);
	letter-spacing: var(--e-global-typography-d2a3505-letter-spacing);
	word-spacing: var(--e-global-typography-d2a3505-word-spacing);
	text-decoration: none;
	text-transform: none;
	transition: .3s ease-in-out;
	
}

/* hover title room */
.rooms-listing-wrapper .room-box h3 a:hover {
	color: var(--mft-btn-primary-hover) !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-d2a3505-font-family), Sans-serif, !important;
	font-size: var(--e-global-typography-d2a3505-font-size) !important;
	font-weight: var(--e-global-typography-d2a3505-font-weight) !important;
	text-transform: var(--e-global-typography-d2a3505-text-transform);
	line-height: var(--e-global-typography-d2a3505-line-height);
	letter-spacing: var(--e-global-typography-d2a3505-letter-spacing);
	word-spacing: var(--e-global-typography-d2a3505-word-spacing);
}

/* decoration title */
.offers-listing .offer .offer-title:after,
.offers-detail-wrapper .offer-header-content-wrapper .offer-title:after {
	content: "";
	width: 70px;
	height: 3px;
	background: var(--mft-highlight-color);
	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,
input.room-calendar-button:not(.room-calendar-button[disabled])

/* button calendar room detail tpl 5 */ {
	font-size: var(--e-global-typography-ea087f8-font-size);
	font-weight: var(--e-global-typography-ea087f8-font-weight);
	line-height: var(--e-global-typography-ea087f8-line-height);
	letter-spacing: var(--e-global-typography-ea087f8-letter-spacing);
	word-spacing: var(--e-global-typography-ea087f8-word-spacing);
	color: var(--mft-btn-primary-hover);
	background-color: var(--mft-btn-primary);
	padding: var(--mft-space-2xs) var(--mft-space-xs);
	border-radius: var(--mft-space-5xs);
	transition: all .3s ease;
}

/* hover btn - more information & button */
.rooms-listing-wrapper .room-box a.more-info:hover,
.rooms-listing-wrapper .room-box .room-intro a:hover,
.offers-listing .offer .offer-button:hover,
input.room-calendar-button:not(.room-calendar-button[disabled]):hover {
	color: #3F5367;
	background-color: transparent;
}

/* 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;
}

/* btn -  offer-button */
.offers-listing .offer .offer-button {
	position: relative !important;
	bottom: 0;
	right: 0;
	display: inline-block;
	margin: 10px 35px;
}

/* hover button disabled calendar room detail tpl 5 */
input.room-calendar-button[disabled]:hover {
	color: #b9b9b9;
}

input.room-calendar-button {
	font-size: 24px !important;
	font-weight: normal !important;
	letter-spacing: normal !important;
}

/* 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(--mft-highlight-color);
}

.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";
}

/* ------ Modificación sección ofertas ------ */

/* === CONTENEDOR GENERAL DE LAS OFERTAS === */
.offers-listing-wrapper {
    width: 100%;
    max-width: 1200px;
    margin: auto;
    padding: 2rem 1rem; 
}

/* === CONTENEDOR FLEXIBLE DE LAS OFERTAS === */
.offers-listing {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    list-style: none;
    padding: 0;
    margin: 0;
}

/* === ESTILO DE CADA OFERTA === */

.offers-listing .offer {
    flex: 1 1 calc(48% - 1rem) !important;
    /* 2 columnas */
    background: #fff;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
    margin: 0px !important;
    height: 350px;
    
}

.offers-listing .offer:hover {
    transform: translateY(-5px);
}

.offers-listing .offer .offer-title:after {
    display: none !important;
}

.offers-listing .offer-special{
    margin-left: 0px !important;
}

/* -- Primera oferta -- */

.offers-listing .offer-wrapper-featured .offer-box {
    text-align: center !important;
    background-color: transparent !important;
    right: 0 !important;
    left: 0 !important;
    color: var(--e-global-color-47eea86e) !important;
    top: 9% !important;
    width: 100% !important;
    position: absolute;
    transform: translateX(0%) !important;
}

.offers-listing .offer-wrapper-featured .offer-box .offer-title{
    margin-bottom:24px !important;
    line-height: 30px !important;
    width: 70%;
    text-align: center;
    margin:0 auto;
}

.offers-listing .offer-wrapper-featured .bg-light-black{
    background: #0000009e !important;
}

/* -- Resto de ofertas -- */

.offers-listing .offer-wrapper-special .offer-title {
    padding-top: 0px !important;
    position: absolute;
    top: 35px;
    color: var(--e-global-color-47eea86e) !important;
    left: 50%;
    transform: translateX(-50%);
    text-align: center !important;
    padding-bottom: 24px;
    width: 70%;
}

.offers-listing .offer-wrapper-special .offer-box {
    text-align: center !important;
    background-color: transparent !important;
    right: 0 !important;
    left: 0 !important;
    color: var(--e-global-color-47eea86e) !important;
    top: 68% !important;
    width: 100% !important;
}

.offer-box span {
    font-size: 32px;
    line-height: 40px !important;
}

.offers-listing .offer-wrapper-featured .offer-box .offer-data {
    margin-bottom:5px !important;
}

.offers-listing .offer-wrapper-special .bg-light-black {
    background: #0000009e !important;
}

/* === ENLACE QUE ENVUELVE LA OFERTA === */
.offer a.offer-link {
    display: block;
    color: inherit;
    text-decoration: none;
    height: 100%;
}

/* === FOTO DE LA OFERTA === */
.offer .offer-photo {
    position: relative;
    width: 100%;
    overflow: hidden;
    display: contents;
}

.offer .offer-photo img {
    height: 100%;
    left: 50%;
    margin-left: -50%;
    position: absolute;
    top: 0;
    width: 100%;
}

.offers-listing .offer-special.offer-odd{
    margin-right: 0px;
}

/* === CONTENIDO DE LA OFERTA === */

.offer .offer-box {
    padding: 1.2rem;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* === BOTÓN BASE === */
.offer .offer-btn {
    background: transparent;
    border-radius: 0;
    text-shadow: none;
    color: var(--e-global-color-47eea86e);
    border: 1px solid var(--e-global-color-47eea86e) !important;
    padding: 12px 30px !important;
    text-transform: uppercase;
    font-size: 15px;
    line-height: 15px;
    letter-spacing: 0.61px;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    width: 40%;
    margin: 0 auto;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.offers-listing-3 .offers-listing .offer-link:hover .offer-btn {
    color: var(--e-global-color-primary) !important;
    background: #ffffffbe !important;
}

.offer .offer-btn:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
    color: #ffffff88;
    font-weight: 600;
}


/* === RESPONSIVE: 1 COLUMNA EN MÓVILES === */

@media (max-width: 766px) {
    .offers-listing .offer {
        flex: 1 1 100% !important;
    }
}
@media (max-width: 973px){
    .offers-listing .offer-wrapper-featured .offer-box {
    top: 50% !important ;
    transform: translateY(-50%) !important;
}

.offers-listing .offer-wrapper-featured .offer-box .offer-title{
    margin-bottom:0px !important;
    line-height: 30px !important;
    width: 90% !important;
  
}
}

@media (max-width: 766px){
    .offers-listing .offer-wrapper-featured .offer-box {
    top: 50% !important;
    transform: translateY(-50%) !important;
    
}

body.cat-offers .offer-featured .offer-box-3 .offer-box{
        transform: translateY(-50%) !important;
    }

.offers-listing .offer-wrapper-featured .offer-box .offer-data {
    font-size:2.5rem !important;
    display:flex;
    align-items: center;
    flex-direction: column;
    margin-top:32px;
    gap: 14px;
}

.offers-listing .offer-wrapper-featured .offer-box .offer-data span {
    line-height: 40px !important;
}

body.cat-offers .offer-featured .offer-box-3 .offer-box .offer-btn{
    padding: 12px 30px !important;
}

body.cat-offers .offer-featured .offer-box-3 .offer-box .offer-btn:after{
    content: ">";
    display: inline-block;
    font-size: 1.4em;
    margin-left: 6px;
    vertical-align: -2px;
}
}

@media (min-width: 767px) and (max-width: 979px){
     
    .offers-listing .offer-wrapper-featured .offer-box {
        padding-left:20px !important;
    }
}

/* ------ FIN Modificación sección ofertas ------ */


/*  ----- Detalle de oferta ----- */

.offers-detail-wrapper{
    max-width: none !important;
   
}
.offer .offer-intro .offer-photo img{
    max-width: none;
}

.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;
}
@media (min-width: 1920px) {
    .offer .offer-intro .offer-photo .absolute-full {
        margin-left: 0 !important; 
        width: 100%;
    }
}

@media (max-width: 1024px) {
   .offers-detail-wrapper{
      margin-top: 190px;
}

}

@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;
}
}


/*  ----- FIN Detalle de oferta ----- */


/********** templates rooms **********/

/***** room template 2 *****/


.rooms-listing .room-item:nth-child(even) {
    background-color: #EBECEE;
    margin-bottom: 120px !important;
    padding-top: 90px;
} 

body.cat-rooms .elementor-section.elementor-section-boxed > .elementor-container{
    padding-left: 0px !important;
    padding-right: 0px !important;
    margin: 0 !important;
    max-width: 100%;
}

body.cat-rooms .elementor-section.elementor-section-boxed > .elementor-container{
    max-width: 100% !important;
}

body.cat-rooms .elementor-section.elementor-section-boxed > .elementor-container{
    padding: 0;
    max-width: 100vw;
}

body.cat-rooms .rooms-listing-wrapper, .rooms-detail-wrapper, .offers-listing-wrapper, .offers-detail-wrapper {
    max-width: 100%;
    margin: 0;
    box-sizing: border-box;
}
body.cat-rooms .rooms-listing-wrapper{
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
body.cat-rooms .rooms-listing-wrapper .rooms-listing .room-item {
    display: flex;
    justify-content: center;
    
}

body.cat-rooms .room-box{
    background-color: transparent !important;
    width: 1200px;
}

body.cat-rooms .elementor-section .elementor-container {
    display: flex;
    margin-left: 0;
    margin-right: 0;
    position: relative;
}

.rooms-listing-wrapper {
    width: 1200px;
}


body.cat-rooms .rooms-listing-wrapper>.row:first-child{
    background-color: #3F5367;
    padding: 50px 0;
    color: #fff;
    width: 1200px;
    align-self: center;
    margin-top: 60px;
    margin-bottom: 120px;
}
body.cat-rooms .rooms-listing-wrapper > .row:first-child p:nth-child(2) {
    color: #fff;
    font-size: 28px;
    font-weight: 400;
    line-height: 20px;
    margin-bottom: 0 !important;
}
body.cat-rooms .rooms-listing-wrapper > .row:first-child h2{
    font-size: 28px;
    line-height: 30px;
    margin-bottom: 0;
    text-transform: uppercase;
}
body.cat-rooms .rooms-listing-wrapper > .row:first-child p{
    color: #fff;
    font-size: 28px;
    line-height: 30px !important;
    margin-bottom: 0 !important;
    text-transform: uppercase;
}

body.cat-rooms .rooms-listing-wrapper h3 {
    position: absolute;
    top: -50px;
    left: 0;
    width: 100%;
}

#main .rooms-listing-wrapper.one-column .rooms-listing .room-item .room-box .room-detail .room-description{
    text-transform: none;
    margin-bottom: 0px !important;
}


#main .rooms-listing-wrapper .common-services li {
    font-size: 17px;
    width: 30%;
    float: left;
    line-height: 25px;
    padding: 5px 10px;
    list-style-type: none;
    text-align: left;
}

#main .rooms-listing-2 .room-box {
	border: none;
}


#main .rooms-listing-2 .room-box .room-detail {
	padding-left: 0px;
	display: flex;
	align-items: flex-start;
	margin-bottom: 100px !important;
}

.room-box .room-image-link img, .room-box .room-image-link span.no-photo {
    max-height: 400px;
    -o-object-fit: cover;
    object-fit: cover;
}

.room-box .room-image-link img, .room-box .room-image-link span.no-photo {
    min-height: 220px;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

body.cat-rooms .room-box .room-detail h3 a {
    text-decoration: none;
    color: var(--e-global-color-text) !important;
    font-size: 28px !important;
    letter-spacing: 1.27px;
    line-height: 30px;
    text-align: center;
    text-transform: uppercase;
}


body.cat-rooms .room-box .room-detail ul {
    position: static;
    text-align: left;
    width: 30%;
    display: inline-block;
    border-right: 1px solid var(--e-global-color-text);
    padding: 10px 20px;
}

.room-box .rom-detail {
    float: left;
    width: 100%;
    padding: 15px 0;
}

body.cat-rooms .room-box .room-detail .room-description {
    margin-bottom: 0 !important;
    color:  var(--e-global-color-text);
    font-size: 14px;
    letter-spacing: 1.27px;
    line-height: 20px;
    width: 50%;
    text-align: left;
    display: inline-block;
    padding: 10px 20px 10px 0px;
    border-right: 1px solid;
}
.room-box .room-detail .price-box{
    position: static;
    right: auto;
    display: inline-block;
    width: auto;
}

body.cat-rooms .room-box .room-detail .price-box .min-price {
    background-color: transparent !important;
    color: var(--e-global-color-text) !important;
    display: inline-block;
    font-size: 15px;
    line-height: 25px;
    margin: 0 auto !important;
    padding: 15px;
    text-align: left;
}
.more-info {
    background-color: transparent !important;
    padding: 0px !important;
}


body.cat-rooms .room-box .room-detail .room-description .more-info {
    display: block;
    margin-top: 15px;
    text-decoration: underline !important;
    text-transform: none;
    color: #3F5367;
}

/*iconos*/
.rooms-listing-wrapper .room-box .room-detail ul li span.occupancies-ico:before {
    display:none;
}

.rooms-listing-wrapper .room-box .room-detail ul li span.size-ico:before
 {
    display: none;
}
.rooms-listing-wrapper .room-box .room-detail ul li span.distibution-ico:before {
    display: none;
}

body.cat-rooms .room-box .room-detail ul li {
    display: flex ;
    flex-direction: column;
    border-right: 0px;
    list-style: none;
    color: var(--e-global-color-text) ;
}

@media (min-width:979px) {
	.rooms-listing-2 .room-box .room-image,
	.rooms-listing-2 .room-box .room-detail {
		width: 25%;
	}

	.rooms-listing-2 .room-box .room-detail ul {
		width: 25% !important;
		left: auto;
	}
}

@media (min-width:768px) and (max-width:1024px) {
    
    .rooms-listing-wrapper .common-services{
    padding: 0px !important;
    padding-left: 0px !important;
    text-align: center !important;
    }
    #main .rooms-listing-wrapper .common-services li{
       text-align: center 
    }
    /*.elementor-section.elementor-section-boxed > .elementor-container{
        padding-left:30px !important;
    }*/
    #main .rooms-listing-2 .room-box .room-detail{
        padding:0% 2%;
    }
    body.cat-rooms .room-box .room-detail h3 a{
        padding-left:2%;
    }
    body.cat-rooms .rooms-listing-wrapper>.row:first-child{
        width:100%;
    }
}

@media (max-width:768px) {
    .infochat_floatmain{
    bottom: 82px !important;
    }
	.rooms-listing-2 .room-detail h3 {
		padding-top: var(--mft-space-s);
	}
	.rooms-listing-wrapper .common-services{
	    display:flex;
	    flex-direction:column;
	    align-items: center;
	    text-align:center;
	    gap:10px;
	}
	body.cat-rooms .rooms-listing-wrapper .common-services li{
	    padding:0px !important;
	    text-align:center !important;
	    margin-left:0px !important;
	    width:90% !important;
	}
	body.cat-rooms .rooms-listing-wrapper h3{
	    position: relative;
	    top: 0px;
	    margin-top:0px !important;
	}
	body.cat-rooms .room-box .room-detail .room-description{
	    width:100%;
	    border-right:none;
	}
	body.cat-rooms .room-box .room-detail ul{
	    width:100%;
	    border-right:none;
	}
	body.cat-rooms .room-box .room-detail .price-box .last-booking{
	    position:relative;
	    top:0px;
	    left:0px;
	}
	body.cat-rooms .rooms-listing-wrapper.one-column .rooms-listing .room-item .room-box .room-detail .room-description{
	    margin-bottom:20px !important;
	}
	body.cat-rooms .rooms-listing-2 .room-box .room-detail{
	    padding:0px;
	}
	.rooms-listing-wrapper .rooms-listing .room-item .room-box .room-detail, .rooms-listing-wrapper.alternate .rooms-listing .room-item.odd .room-detail{
	    padding:0% 5% !important;
	}
	body.cat-rooms .room-box .room-image-link img, .room-box .room-image-link span.no-photo{
	    max-height:220px;
	    object-position: bottom;
	}
	body.cat-rooms .room-box .room-detail .room-description{
	    padding: 20px 0px 20px 0px;
	}
	.rooms-listing-wrapper .rooms-listing .room-item{
	    border-bottom:none !important;
	}
	#main .rooms-listing-2 .room-box .room-detail 
	{
	padding-left: 0px;
	display: flex;
	flex-direction:column;
	align-items:flex-start;
	margin-bottom: 0px !important;
    }
    .rooms-listing-wrapper .rooms-listing .room-item .room-box .room-detail ul, .rooms-listing-wrapper.alternate .rooms-listing .room-item.odd .room-box .room-detail ul{
        margin-top:20px;
        margin-bottom:10px !important;
    }
    body.cat-rooms .rooms-listing-wrapper>.row:first-child{
        margin-bottom:80px;
    }
}

/* descomentar cuando pidan el contenido centrado - para todos los 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;
}*/

/* centrado para el template 2 y 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;
}*/

/* centrado check-list template 5 */

/*.rooms-listing-5 .room-services-list {
padding-left: var(--mft-space-l);
}*/

/********** templates offer **********/



/***** detalle habitacion *****/

body.cat-room-detail .elementor-skin-slideshow .elementor-thumbnails-swiper{
    height: 80px;
}

body.cat-room-detail .rooms-detail-wrapper .room{
    margin-top: 30px;
}
body.cat-room-detail h2{
    font-family: 'Cousine', monospace;
    font-size: 30px;
    letter-spacing: 1.27px;
    line-height: 40px;
    text-align: center;
    text-transform: uppercase;
    color: var(--e-global-color-text);
}
body.cat-room-detail .rooms-detail-wrapper a{
    text-decoration: underline;
    color: var(--e-global-color-accent);
    font-size: 14px;
}
body.cat-room-detail .rooms-detail-wrapper .room-box-detail, .rooms-detail-wrapper .room-box-price{
    background-color: transparent !important;
}
body.cat-room-detail .rooms-listing-2 .room-box .room-detail .price-box .min-price, .rooms-detail-2.rooms-detail-wrapper .room-box-image .room-box-detail .box-price{
    background-color: #9a9a9a !important;
}
body.cat-room-detail .mi-title3, .rooms-listing-wrapper h3, .rooms-detail-wrapper h3, .offers-listing-wrapper h3, .offers-detail-wrapper h3, .blog-wrapper h3, .mi-iata-content h3{
    font-size: 26px !important;
    line-height: 34px;
    text-transform: uppercase;
    font-weight: normal;
}
body.cat-room-detail .rooms-detail-wrapper .room-box-offers > h3{
    font-size: 26px;
    line-height: 34px;
    text-transform: uppercase;
    font-weight: normal;
}
body.cat-room-detail .rooms-detail-wrapper .room-box-image .room-box-description p{
    font-size: 14px;
    font-family: 'Cousine', monospace;
    color: #333333;
    line-height: normal;
}
body.cat-room-detail{
    font-size: 14px;
    font-family: 'Cousine', monospace;
    color: #333333;
    line-height: normal;
}
body.cat-room-detail .rooms-detail-wrapper .room-box-image .room-box-detail ul{
    text-align: center;
}

body.cat-room-detail .rooms-detail-wrapper .room-box-extras h4{
    font-size: 1.4em;
    line-height: normal;
    margin-bottom: 10px;
    text-align: center;
    color: var(--e-global-color-text);
    text-transform: uppercase !important;
    font-weight: normal;
}

body.cat-room-detail .elementor-element .swiper .elementor-swiper-button, .elementor-element .swiper~.elementor-swiper-button, .elementor-lightbox .swiper .elementor-swiper-button, .elementor-lightbox .swiper~.elementor-swiper-button{
    color: var(--e-global-color-primary);
    background-color: rgb(255 255 255 / 50%);
    padding: 10px;
    border-radius: 30px;
}

.rooms-detail-wrapper h4 {
	font-family: var(--e-global-typography-d2a3505-font-family), Sans-serif;
	font-size: var(--e-global-typography-d2a3505-font-size);
	font-weight: var(--e-global-typography-d2a3505-font-weight);
	line-height: var(--e-global-typography-d2a3505-line-height);
	letter-spacing: var(--e-global-typography-d2a3505-letter-spacing);
	word-spacing: var(--e-global-typography-d2a3505-word-spacing);
}

.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(--mft-background-ligh) !important;
}

@media (min-width:1025px) {
	.rooms-detail-wrapper .room-box-services,
	.rooms-detail-wrapper .room-box-common-services {
		width: 50% !important;
		display: inline-block;
		margin-bottom: var(--mft-space-m);
	}

	.rooms-detail-wrapper .room-box-services {
		float: none;
	}

	.rooms-detail-wrapper .room-box-common-services {
		border-right: 2px solid var(--mft-background-ligh);
	}

	.rooms-detail-wrapper .room-box-offers h3:not(.offer-link h3) {
		text-align: center;
	}

	.rooms-detail-wrapper .room-box-services ul,
	.rooms-detail-wrapper .room-box-common-services ul {
		width: 50%;
	}
}



.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 {
	background: var(--mft-background-ligh);
}

/***** detail offer *****/
.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;
}

@media (max-width: 767px) {
    .room-box .room-detail .room-description{
        width:100%;
        border-right: none;
        border-bottom: 1px solid;
    }
}

/************************************/
/********** 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 dt {
	font-family: var(--e-global-typography-d2a3505-font-family), Sans-serif;
	font-size: var(--e-global-typography-d2a3505-font-size);
	font-weight: var(--e-global-typography-d2a3505-font-weight);
	font-style: var(--e-global-typography-d2a3505-font-style);
	line-height: var(--e-global-typography-d2a3505-line-height);
	letter-spacing: var(--e-global-typography-d2a3505-letter-spacing);
	word-spacing: var(--e-global-typography-d2a3505-word-spacing);
}

.offers-mashup dl dd {
	font-family: var(--e-global-typography-0f1dc60-font-family), Sans-serif;
	font-size: var(--e-global-typography-0f1dc60-font-size);
	font-weight: var(--e-global-typography-0f1dc60-font-weight);
	line-height: var(--e-global-typography-0f1dc60-line-height);
	letter-spacing: var(--e-global-typography-0f1dc60-letter-spacing);
	word-spacing: var(--e-global-typography-0f1dc60-word-spacing);
}

.offers-mashup dl .more-info-link {
	font-size: var(--e-global-typography-ea087f8-font-size);
	font-weight: var(--e-global-typography-ea087f8-font-weight);
	line-height: var(--e-global-typography-ea087f8-line-height);
	letter-spacing: var(--e-global-typography-ea087f8-letter-spacing);
	word-spacing: var(--e-global-typography-ea087f8-word-spacing);
	color: var(--mft-btn-primary-hover);
	background-color: var(--mft-btn-primary);
	padding: var(--mft-space-2xs) var(--mft-space-xs);
	border-radius: var(--mft-space-5xs);
	transition: all .3s ease;
}

.offers-mashup dl .more-info-link:hover {
	color: var(--e-global-color-47eea86e);
	background-color: var(--mft-btn-primary-hover);
}

/***** mashup 1 --- 2 ofertas fijas, con foto y sin carrusel *****/
.mashup-1 .offers-mashup-slide dl {
	background: var(--mft-background-ligh);
}

.mashup-1 .offers-mashup-slide dl img {
	width: 100%;
	height: 250px;
	object-fit: cover;
}

.mashup-1 .offers-mashup dl dt {
	padding: var(--mft-space-2xs);
}

.mashup-1 .offers-mashup dl dd {
	padding: 0 var(--mft-space-2xs) var(--mft-space-2xs);
}

/***** mashup 2 --- 2 ofertas fijas, sin foto y sin carrusel *****/
.mashup-2 .offers-mashup-slide dl {
	background-color: var(--mft-background-ligh);
	padding: var(--mft-space-l);
}

.mashup-2 .offers-mashup dl dt {
	border-bottom: 2px solid var(--mft-highlight-color);
	padding: 0 35px 24px;
	margin-bottom: 24px;
	position: relative;
}

.mashup-2 .offers-mashup dl dt:before {
	content: "\e997";
	font-family: 'mirai-icofonts';
	color: var(--mft-highlight-color);
	position: absolute;
	left: 0;
}

/***** mashup 3 --- con foto y carrusel (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);
}

[data-custom-flickity-params] {
	padding-bottom: 50px;
}

[data-custom-flickity-params] .carousell-cell {
	width: 33%;
	padding: 0 var(--mft-space-3xs);
	margin-top: 0;
}

[data-custom-flickity-params] .offers-mashup-inner img {
	width: 100%;
	height: 250px;
	object-fit: cover;
}

@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%;
	}

}

/****************************************/
/***** START LEGAL PAGE TEXT WIDGET *****/

/* .mft-legal-text */
section.cookies-section {
	max-width: var(--width-m);
	margin: 0 auto;
	box-sizing: border-box;
	
}

.cookies-section a {
	font-weight: bold;
	transition: .3s ease-in-out;
}

.cookies-section a:hover {
	color: var(--mft-link-hover);
}

/* Heading H1 */
.mft-legal-text h1 {
	font-family: var(--e-global-typography-primary-font-family), Sans-serif;
	font-size: var(--e-global-typography-primary-font-size);
	font-weight: var(--e-global-typography-primary-font-weight);
	text-transform: var(--e-global-typography-primary-text-transform);
	font-style: var(--e-global-typography-primary-font-style);
	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), Sans-serif;
	font-size: var(--e-global-typography-secondary-font-size);
	font-weight: var(--e-global-typography-secondary-font-weight);
	font-style: var(--e-global-typography-secondary-font-style);
	line-height: var(--e-global-typography-secondary-line-height);
	padding-bottom: 20px;
}

/* Heading H3*/
.mft-legal-text h3,
.cookies-section .mi-title3 {
	font-family: var(--e-global-typography-d2a3505-font-family), Sans-serif;
	font-size: var(--e-global-typography-d2a3505-font-size);
	font-weight: var(--e-global-typography-d2a3505-font-weight);
	font-style: var(--e-global-typography-d2a3505-font-style);
	line-height: var(--e-global-typography-d2a3505-line-height);
	letter-spacing: var(--e-global-typography-d2a3505-letter-spacing);
	word-spacing: var(--e-global-typography-d2a3505-word-spacing);
	padding-bottom: 20px;
}

/* Heading H4*/
.mft-legal-text h4 {
	font-family: var(--e-global-typography-0f1dc60-font-family), Sans-serif;
	font-size: var(--e-global-typography-0f1dc60-font-size);
	font-weight: var(--e-global-typography-0f1dc60-font-weight);
	line-height: var(--e-global-typography-0f1dc60-line-height);
	letter-spacing: var(--e-global-typography-0f1dc60-letter-spacing);
	word-spacing: var(--e-global-typography-0f1dc60-word-spacing);
	padding-bottom: 20px;
}

.mft-legal-text h2:not(:first-of-type),.mft-legal-text h3,.mft-legal-text h4,.cookies-section .mi-title3 {
	margin-top: 25px;
}

/* LINKS */
.mft-legal-text a {
	text-wrap: wrap;
	overflow-wrap: break-word;
	text-decoration: none;
	color: var(--mft-btn-primary);
	transition: .3s ease-in-out;
}

.mft-legal-text a:hover {
	color: var(--mft-btn-primary-hover);
}

.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(--mft-btn-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-f8ea714);
	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;
}
/*botones*/




/*Botones*/

/*Boton-2 fondo gris*/
.mft-btn-2-grey {
    background: transparent !important; 
    border-radius: 0; 
    text-shadow: none;
    color: var(--e-global-color-secondary);
    border: 1px solid #666666;
    text-transform: uppercase;
    font-size: 15px;
    line-height: 15px;
    letter-spacing: 0.61px;
    position:relative;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    padding: 12px 30px 12px 30px;
    z-index: 0;
}
.mft-btn-2-grey:hover a{
    color: var(--e-global-color-accent)  !important;
    pointer-events: auto;
    z-index: 99;
}

.mft-btn-2-grey:hover {
    text-decoration: none;
    color: var(--e-global-color-accent)  !important;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    cursor: pointer;
    
}
.mft-btn-2-grey:before, .mft-btn-2-grey:after {
  width: 101%;
  height:104%;
  content:'';
  position: absolute;
  top:-1px;
  left:-1px;
  -webkit-transform: scale(0);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.mft-btn-2-grey:before {
  border-bottom: 2px solid #ebecee;
  border-left: 2px solid #ebecee;
  -webkit-transform-origin: 0 100%;
  color: var(--e-global-color-accent) !important;
  cursor: pointer;
}

.mft-btn-2-grey:after {
  border-top: 2px solid #ebecee;
  border-right: 2px solid #ebecee;
  -webkit-transform-origin: 100% 0%;
  color: var(--e-global-color-accent)!important;
  cursor: pointer;
}


.mft-btn-2-grey:hover:after, .mft-btn-2-grey:hover:before {
  -webkit-transform: scale(1);
}

.white-text .mft-btn-2-grey:hover, .white-text .offers-mashup .more-info-link:hover {
    color: #fff;
    background: rgba(232, 232, 232, 0.1);
    border: 1px solid transparent;
}
/*Boton-2 fondo blanco*/


.mft-btn-2-white {
    background: transparent !important; 
    border-radius: 0; 
    text-shadow: none;
    color: var(--e-global-color-secondary);
    border: 1px solid #666666;
    text-transform: uppercase;
    font-size: 15px;
    line-height: 15px;
    letter-spacing: 0.61px;
    position:relative;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    padding: 12px 30px 12px 30px;
    z-index: 0;
}
.mft-btn-2-white:hover a{
    color: #3F5367  !important;
}
.elementor-button-wrapper a{
    z-index: 1;
}

.mft-btn-2-white:hover span{
    color: #3F5367  !important;

}
.mft-btn-2-white:hover {
    text-decoration: none;
    color: var(--e-global-color-accent)  !important;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    cursor: pointer;
    
}
.mft-btn-2-white:before, .mft-btn-2-white:after {
  width: 101%;
  height:105%;
  position: absolute;
  top:-1px;
  left:-1px;
  -webkit-transform: scale(0);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.mft-btn-2-white:before {
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  -webkit-transform-origin: 0 100%;
    color: var(--e-global-color-accent)  !important;
  cursor: pointer;
}

.mft-btn-2-white:after {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform-origin: 100% 0%;
    color: var(--e-global-color-accent)  !important;
  cursor: pointer;
}


.mft-btn-2-white:hover:after, .mft-btn-2-white:hover:before {
  -webkit-transform: scale(1);
}

.white-text .mft-btn-2-white:hover, .white-text .offers-mashup .more-info-link:hover {
    color: #fff;
    background: rgba(232, 232, 232, 0.1);
    border: 1px solid transparent;
}

/*boton 2 fondo azul*/

.mft-btn-2-blue {
    background: transparent !important; 
    border-radius: 0; 
    text-shadow: none;
    color: var(--e-global-color-47eea86e) ;
    border: 1px solid var(--e-global-color-47eea86e);
    text-transform: uppercase;
    font-size: 15px;
    line-height: 15px;
    letter-spacing: 0.61px;
    position:relative;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    padding: 12px 30px 12px 30px;
    z-index: 0;
}
.mft-btn-2-blue:hover span{
    color: var(--e-global-color-47eea86e)  !important;
    pointer-events: auto;
    border: none !important;
}

.mft-btn-2-blue:hover a{
    border: noe !important;
}

.mft-btn-2-blue:hover {
    text-decoration: none;
    color: white  !important;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    cursor: pointer;
    background: rgb(255 255 255 / 0.2) !important;
    
}
.mft-btn-2-blue:before, .mft-btn-2-blue:after {
  width: 101%;
  height:105%;
  content:'';
  position: absolute;
  top:-1px;
  left:-1px;
  -webkit-transform: scale(0);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.mft-btn-2-blue:before {
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  -webkit-transform-origin: 0 100%;
    color: var(--e-global-color-accent)  !important;
  cursor: pointer;
}

.mft-btn-2-blue:after {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform-origin: 100% 0%;
    color: var(--e-global-color-accent)  !important;
  cursor: pointer;
}


.mft-btn-2-blue:hover:after, .mft-btn-2-blue:hover:before {
  -webkit-transform: scale(1);
}

.white-text .mft-btn-2-blue:hover, .white-text .offers-mashup .more-info-link:hover {
    color: #fff;
    background: rgba(232, 232, 232, 0.1);
}


/* MODAL position */
#elementor-popup-modal-3346{
    z-index: 9990 !important;
}
/* end *//* End custom CSS */