/*
    Theme Name: Emperadorhotel2024-2024
    Theme URI: emperadorhotel2024-2024
    Description: Emperadorhotel2024-2024
    Author:       Mirai Dev Team
    Author URI:   http://mirai.com
    Template:     mirai-ma
    Version:      1.0.0
    License:      GNU General Public License v2 or later
    License URI:  http://www.gnu.org/licenses/gpl-2.0.html
    Text Domain:  mirai-maai
*/


/* ch fonts */

@import url('https://fonts.googleapis.com/css2?family=Josefin+Sans:ital,wght@0,100..700;1,100..700&family=Kode+Mono:wght@400..700&family=Raleway:ital,wght@0,100..900;1,100..900&display=swap')

/* ELEMENTOR FIXES */

i.eci {
    speak: none;
    font-variant: normal;
    font-size: inherit;
    line-height: inherit;
    text-decoration: none;
    font-style: normal;
    font-weight: normal;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: block; /* same width than height icons */
}

i.eci:before {
    display: block;
}


/* GENERAL SETTINGS (not in Elementor) */

body {
	font-size: 17px;
	font-family: "Raleway", sans-serif;
}
@media (min-width: 1400px) {
	body{
		font-size: 20px;
	}
}
@media (min-width: 768px) and (max-width: 979px) {
	body{
			font-size: 15px;
	}

}
@media (max-width: 767px) {
	body{
		font-size: 16px;
	}
}

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


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

a {
	color: #002855;
}

a:hover {
	color: #003B80;
}



/* ICONS */

a.back-link:before, a.fwd-link:after,
a.down-link:after {
    content: '\e966';
    font-family: 'mirai-icofonts';
    font-size: .85em;
    line-height: .85em;
    font-weight: normal;
    margin: 0 .5em;
    vertical-align: middle;
    display: inline-block;
    text-decoration: none;
    -webkit-transition: all .2s ease-out;
    transition: all .2s ease-out;
}

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

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

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

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

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

/* REVIEWS MASHUP */

.elementor-widget-wp-widget-mirai_opiniones > div #xdhsReviewSummaryContent-XdHs #hsRating {
    font-family: inherit;
    font-size: inherit;
    color: inherit;
    margin: 0 auto;
    padding: 0;
    width: 200px;
}

.elementor-widget-wp-widget-mirai_opiniones > div #xdhsReviewSummaryContent-XdHs #hsRating #scoreTop {
    height:auto;
}

.elementor-widget-wp-widget-mirai_opiniones > div #xdhsReviewSummaryContent-XdHs #hsRating #scoreTop #score {
    line-height: normal;
    float:none;
    display: inline-block;
    margin-right: 5px;
    margin-left: 0;
    font-size: 3.4em;
    vertical-align: middle;
}

.elementor-widget-wp-widget-mirai_opiniones > div #xdhsReviewSummaryContent-XdHs #hsRating #scoreTop #ratingBar {
    float: none;
    display: inline-block;
    margin: 0;
    vertical-align: middle;
}

.elementor-widget-wp-widget-mirai_opiniones > div #xdhsReviewSummaryContent-XdHs #hsRating #mirai_recommend {
    border: 0px;
    background: transparent;
}

.elementor-widget-wp-widget-mirai_opiniones > div #xdhsReviewSummaryContent-XdHs #hsRating #mirai_recommend h3 {
    font-size:inherit;
    color:inherit;
    border: 0;
    line-height: normal;
}

.elementor-widget-wp-widget-mirai_opiniones > div #xdhsReviewSummaryContent-XdHs #hsRating #mirai_recommend .jqplot-series-canvas {
    background: transparent;
}

.elementor-widget-wp-widget-mirai_opiniones > div #xdhsReviewSummaryContent-XdHs #hsRating #mirai_reviewSouce {
    padding: 15px 0;
    line-height:normal;
}

.elementor-widget-wp-widget-mirai_opiniones > div #xdhsReviewSummaryContent-XdHs #hsRating .mirai_btReview {
    display: inline-block;
    width: auto;
    height: auto;
    margin: 0px auto;
    text-decoration: none;
    line-height: normal;
    background-color: #666;
    color: #fff;
    padding: 15px 20px;
    font-size: inherit;
}

.elementor-widget-wp-widget-mirai_opiniones > div #xdhsReviewSummaryContent-XdHs #hsRating #writeReviews {display:none;}
.elementor-widget-wp-widget-mirai_opiniones > div > p {display: none;} /* link hotelsearch.com */
#xdhsReviewsDialogContainer-dialogContainer .hssurveys {height: 100% !important;}

/* REVIEWS PAGE HOTELSEARCH */

.elementor-widget-wp-widget-mirai_opiniones {
}

.elementor-widget-wp-widget-mirai_opiniones p {
}

.elementor-widget-wp-widget-mirai_opiniones .paging {
    padding: 20px 0;
}

.elementor-widget-wp-widget-mirai_opiniones .paging span a {
    border: none;
    background: none;
}

.elementor-widget-wp-widget-mirai_opiniones .paging span.current a,
.elementor-widget-wp-widget-mirai_opiniones .paging span.current a:hover,
.elementor-widget-wp-widget-mirai_opiniones .paging span.current a,
.elementor-widget-wp-widget-mirai_opiniones .paging span.current a:hover {
    font-size: inherit;
    cursor: default;
    border: none;
    background: none;
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full {
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.elementor-widget-wp-widget-mirai_opiniones  div.hssurveys_full > div.hssurveys_full {
    padding: 0;
}

.elementor-widget-wp-widget-mirai_opiniones  div.hssurveys_full > div.hssurveys_full > div {
    margin-bottom: 50px;
    background: #f3f3f3;
    padding: 30px;
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full div.note,
.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full .comments {
    float: none;
    width: 100%;
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full .comments {
    margin: 10px 0 0;
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full div.note {
    background-image: none;
    font-size: 1.7em;
    height: auto;
    width: auto;
    display: inline-block;
    text-align: left;
    padding: 0 0 0 45px;
    position: relative;
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full div.note:before {
    content: '\ea44';
    font-size: 38px;
    font-weight: normal;
    display: inline-block;
    position: absolute;
    line-height: 1;
    left: 0;
    bottom: 0;
    font-family: 'mirai-icofonts';
    color: #888;
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full .ratingBarUser {
    margin-top: 5px;
    margin-left: 0;
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full .comments p.commentsPerson {
    font-size: 1.3em!important;
    font-weight: normal;
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full .comments p.commentsPerson span.date {
    font-size: .8em;
    color: #8e8e8e;
}

div.hssurveys_full ul.questions li {
    padding: 0 0 10px;
}

div.hssurveys_full ul.questions li:last-child {
    padding: 0;
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full ul.questions.like li p.question {
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full ul.questions.like li .answer {
    width: auto;
    overflow: hidden;
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full p.more {
    padding: 10px 0;
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full p.more a {
    background: none;
    padding-right: 0;
    white-space: nowrap;
}

div.hssurveys_full p.more a:after {
    font-family: 'mirai-icofonts';
    content: '\e961';
    display: inline-block;
    margin-left: 5px;
    vertical-align: middle;
}

div.hssurveys_full p.more a.opened:after {
    content: '\e964';
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full ul.listSubject {
    float: none;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0;
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full ul.listSubject li span.subject,
.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full ul.questions li p.question {
    display: block;
    float: none;
    width: 100%;
    font-weight: bold;
    text-align: left;
    padding: 0;
    line-height: normal;
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full ul.listSubject li span.note {
    float: none;
    display: inline-block;
    background: none;
    font-size: 1em;
    margin-right: 0;
    color: #76a71d;
    width: auto;
    text-align: left;
    border-radius: 2px;
    height: auto;
    line-height: normal;
    padding: 2px 0;
}

.elementor-widget-wp-widget-mirai_opiniones .ratingBarSubject {
    float: none;
    /*display: inline-block;*/
    margin-left: 5px;
    display: none;
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full ul.listSubject li .reviewcomment {
    width: auto;
    margin-left: 0;
    float: none;
    display: block;
    clear: both;
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full ul.listSubject.long li {
    padding: 0 0 30px;
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full ul.questions {
    padding: 30px 0 0;
    margin: 00;
    border-top: 1px solid #ccc;
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full ul.questions.like {
    padding: 0;
    margin: 10px 0 0;
    border-top: none;
}

.reviewsOn .questions li .yesText, .reviewsOn .questions li .noText {
    background: none;
    text-align: left;
    padding-left: 0!important;
    margin-left: 0!important;
    color: inherit!important;
    font-weight: normal!important;
    padding: 0!important;
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full ul.questions li .answer {
    float: none;
    line-height: normal;
    margin-right: 0;
    width: auto;
}

.elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full .ratingBarStar, .elementor-widget-wp-widget-mirai_opiniones div.hssurveys_full div.answer p {
    float: none;
    display: inline-block;
}






/* SITE SETTINGS (standar) */



/* BUTTONS */
/* utiliza la clase .primary-btn para aquellos botones que quieras que se comporten como el de reservar, y .secondary-btn para los de tipo ofertas */

/* primary */

.elementor-button.primary-btn {
	border: none;
    border-radius: 0;
    box-shadow: none;
    text-shadow: none;
    background: #bfc130;
    color: #fff;
    padding: 20px 15px;
    -webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    -ms-transition: all .2s ease-out;
    -o-transition: all .2s ease-out;
    transition: all .2s ease-out;
    letter-spacing: .03em;
	position: relative;
    overflow: hidden;
}

.elementor-button.primary-btn:hover {
    text-decoration: none;
    background: #f3a847;
    color: #fff;
}

/* secondary */

#respond .form-submit #submit,
.offers-mashup .more-info-link,
.widget_search form input[type="submit"],
.elementor-widget-wp-widget-mirai_opiniones > div #xdhsReviewSummaryContent-XdHs #hsRating .mirai_btReview,
.elementor-button.secondary-btn {
	background: transparent;
    border-radius: 0;
    text-shadow: none;
    -webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    -ms-transition: all .2s ease-out;
    -o-transition: all .2s ease-out;
    transition: all .2s ease-out;
    color: #fff;
    border: 1px solid #fff;
    padding: 11px 30px;
    letter-spacing: .07em;
    border-radius: 35px;
}

#respond .form-submit #submit:hover,
.offers-mashup .more-info-link:hover,
.widget_search form input[type="submit"]:hover,
.elementor-widget-wp-widget-mirai_opiniones > div #xdhsReviewSummaryContent-XdHs #hsRating .mirai_btReview:hover,
.elementor-button.secondary-btn:hover {
   
}

/* disabled buttons */
.elementor-button.primary-btn:disabled,
.elementor-button.primary-btn:disabled:hover,
.elementor-button.secondary-btn:disabled,
.elementor-button.secondary-btn:disabled:hover {
    background-color: #b9b9b9;
    background-image: none;
    color: #ddd;
    border-color: #b9b9b9;
    cursor: default;
    filter: none;
    text-shadow: none;
    box-shadow: none;
}

/* TITLES */

.mi-title2, #cookies-wrapper-content h1, #cookies-wrapper-content h2, .rooms-listing-wrapper h2, .rooms-detail-wrapper h2, .offers-listing-wrapper h2, .offers-detail-wrapper h2, .blog-wrapper h2, .blog-wrapper h1, .blog-wrapper #posts_con_categoria, .mi-iata-content h2, .starter-offers .offers-mashup dl dt {
    font-size: 25px;
    font-weight: bold;
    color: #3a145b;
}
.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: 17px;
    font-weight: bold;
    text-transform: uppercase;
}
.mi-title4, .rooms-detail-wrapper h4, .offers-detail-wrapper h4 {
    font-size: 1.1em;
    font-weight: bold;
}


/* margin p */
.p-text p {
    margin-bottom: 10px;
	word-break: break-word;
}

.p-text li {
	word-break: break-word;
}


/* DYNAMIC PAGES (OFFER & ROOMS) */

/* ROOMS 1 - occupation box & box price */
.rooms-listing-1 .room-box .room-detail ul,
.rooms-detail-1.rooms-detail-wrapper .room-box-detail,
.rooms-detail-1.rooms-detail-wrapper .room-box-price {
    background: #e9e8e6; /* light color */
}

/* ROOMS 2 (and room detail 2-3-4) - box price */
.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: #444; /* dark color */
}

/* ROOMS 3 - box price */
.rooms-listing-4 .room-item .min-price {
    background: #f9c400; /* light color */
}

/* ROOMS 5 - room box && offers in room */
.rooms-listing-5 .room-box,
.rooms-detail-5 .room-box-offers {
    background: #ebebeb;  /* light color */
}

/* OFFERS 1 - offer box && offer description */
.offers-listing-1 .offer-link,
.offer-detail-1.offers-detail-wrapper .offer-wrapper {
    background-color: #F1F1F1; /* light color */
}

/* OFFERS 2 - title, date range & info box */
.offers-listing-2 .offer .offer-intro,
.offers-listing-2 .offer .offer-date-range,
.offer-detail-2.offers-detail-wrapper .offer-info-wrapper {
    background: #444; /* dark color */
}

/* OFFERS 2 - offer icon && social icons */
.offers-listing-2 .offer .offer-deco,
.offer-detail-2.offers-detail-wrapper .socialmedia-share ul li a {
    background-color: #777; /* dark color */
}

/* OFFERS 3 - button and link */
.offers-listing-3 .offers-listing .offer-special:hover .offer-title,
.offers-listing-3 .offers-listing .offer-standard:hover .offer-title,
.offers-listing-3 .offers-listing .offer-link:hover .offer-btn {
    color: #B09555; /* light color */
}

/* OFFERS 4 - room in offer */
.offers-listing-4 .offers-room-detail {
    background: #ebebeb;  /* light color */
}

/* OFFERS 5 - offer box & offer description */
.offers-listing-5 .offers-listing .offer .offer-link,
.offer-detail-5.offers-detail-wrapper .offer-wrapper {
    background: #868686; /* dark color */
}

/* OFFER DETAIL 5 - room in offer */
.offer-detail-5.offers-detail-wrapper .offer-room-wrapper {
    background: #F1F1F1;  /* light color */
}


/* Room detail & Offer detail modal-engine-btn*/
.cat-room-detail a.modal-engine-btn,
.cat-offer-detail a.modal-engine-btn{display: none!important;}


/* CALENDAR COLORS (dynamic pages) */

/* 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: #D1E1F5;
    color: #56595b;
}

.dynamic-calendar .ui-datepicker-calendar ._checkout-date a {
    background: #3978C5;
    color: #FFF;
}


/* selected and hover dates with offer */
/*
.dynamic-calendar .ui-datepicker-calendar ._selected-date.calendar-legend-offer-day a,
.dynamic-calendar .ui-datepicker-calendar ._checkin-date.calendar-legend-offer-day a,
.dynamic-calendar .ui-datepicker-calendar ._checkin-date._checkout-date.calendar-legend-offer-day a,
.dynamic-calendar .ui-datepicker-calendar .calendar-legend-offer-day a:hover {
    color: #90c137;
}

.dynamic-calendar .ui-datepicker-calendar ._checkout-date.calendar-legend-offer-day a {
    color: #cdf08c;
}
*/

/* 404 page */

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

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

/* COOKIES POLICY */

.page-template-tpl-cookies-policy .cookies-section {
    padding: 60px 0;
}

/* BOOKINGSTEP */

.page-template-bookingstep1 .elementor-sticky:not(.elementor-sticky__spacer) {
    position: relative!important;
    -webkit-box-shadow: none!important;
    box-shadow: none!important;
}

.page-template-bookingstep1 .elementor-sticky__spacer,
.page-template-bookingstep1 a.modal-engine-btn {
    display: none!important;
}


/* COMMON FORM */

.mi-common-form {
    text-align: center;
}

.mi-common-form br {
    display:  none;
}

.mi-common-form .wpcf7-form-control-wrap:not([class*=" acceptance"]) {
    margin-bottom: 1.3em;
    display: block;
}

.mi-common-form .wpcf7-submit {
    margin-top: 2em;
}

.mi-common-form input[type="text"],
.mi-common-form input[type="email"],
.mi-common-form textarea,
.mi-common-form select {
    width: 100%;
    max-width: 100%;
    padding: 6px;
    display: block;
    text-align: left;
}

.mi-common-form .wpcf7-form-control-wrap .wpcf7-acceptance .wpcf7-list-item {
    margin: 0;
}

.mi-common-form div.wpcf7 .ajax-loader {
    display: none !important;
}

.mi-common-form div.wpcf7-validation-errors {
    font-size: .8em;
}

.mi-common-form span.wpcf7-not-valid-tip {
    font-size: .8em;
    margin-top: .5em;
    text-align: left;
}

.mi-common-form div.wpcf7-response-output {
    margin: 2em .5em 1em;
    padding: 1em 1em;
}

.room-box-common-services h3 {
    margin-bottom: 15px;
}

.form-send-button {
    display: block;
    margin: auto;
}

span.wpcf7-spinner {
    display: block;
    text-align: center;
    margin: 10px auto;
}

/*Hiding recaptcha badge*/
.grecaptcha-badge { visibility: hidden; }

/* Custom CH */

body .btn-primary,
body .btn-primary:hover {
	background: none;
	background-color: transparent !important;
}

.elementor-column-gap-default>.elementor-column>.elementor-element-populated {
    padding: 0px;
}

@media (max-width: 767px) {
	.bannercolor, .bannercolor .elementor-icon-box-title, .bannercolor .elementor-icon {
		color: black !important;
	}
}

@media (max-width: 767px) {
    .banner-bg {
        background-image: none !important;
		background: none !important;
        background: white !important;
    }
}

@media (max-width: 767px) {
    .s-banner-mobilefix {
  		clip-path: none;
		margin-top: 0px;
	}
}

.effect-link .elementor-icon-box-icon i,
.effect-link .elementor-icon-box-content a {
    transition: transform 0.3s;
}

.effect-link .elementor-icon-box-wrapper:hover .elementor-icon-box-icon i,
.effect-link .elementor-icon-box-wrapper:hover .elementor-icon-box-content a {
    transform: translateX(5px);
}

.s-polygon {
	clip-path: polygon(0 100px, 100% 0%, 100% 100%, 0% 100%);
    margin-top: -100px;
    position: relative;
}

@media (max-width: 767px) {
	.s-polygon {
		clip-path: polygon(0 50px, 100% 0%, 100% 100%, 0% 100%);
		margin-top: -50px;
	}
}

@media (max-width: 767px) {
	.s-polygon2 {
		-webkit-clip-path: polygon(0 50px, 100% 0%, 100% 100%, 0% 100%) !important;
	}
}

.c-slidershadow {
	text-shadow: #000 1px 4px 16px;
}

@media (min-width: 768px) {
	.clip-path-fix {
		clip-path: none !important;
		left: 0 !important;
        /*		border-right: 1px solid rgb(255 255 255 / 50%)*/
	}
}

.clip-path-fix.is-selected:after {
	left: 0 !important;
}

@media (max-width: 767px) {
	.s-hfix {
		height: 750px !important;
	}

    .slope.slope-flag.slope-position-top.slope-blur .c-card-blur.s-hfix,
    .slider-blur.s-hfix.s-polygon2 {
        height: auto !important;
    }    
}

@media (min-width: 768px) {
	.s-hfix {
		height: 708px !important;
	}
}

@media (min-width: 768px) and (max-width: 979px) {
    .s-fix {
        height: 768px !important;
	}
}

/* ¿? */
.wborder:after {
    content: '';
    background: #fff;
    position: absolute;
    height: 105px;
    width: 100%;
    top: 0px;
    clip-path: polygon(0 0, 100% 0%, 100% 5px, 0% 100%);
}

@media (max-width: 767px) {
    .wborder:after {
        height: 55px;
        clip-path: polygon(0 0, 100% 0%, 100% 5px, 0% 100%);
    }
}

/* CAROUSEL DOTS */
@media (max-width: 375px) {
    .carousel-dots .flickity-page-dots {
        flex-direction: row !important;
        width: 100% !important;
		display: flex !important;
    	flex-wrap: wrap !important;
    	justify-content: center;
		gap: 5px;
    }
	
	.carousel-dots .flickity-page-dots .dot {
        width: 40px !important;
		margin-top: 40px;
    }
	.carousel-dots .dot::after {
		font-size: 20px !important;
	}

}

.carousel-dots .dot {
    position: relative;
    display: inline-block;
    width: 60px !important;
    height: 2px !important;
    background-color: #a9a9a9 !important;
    margin: 0 5px;
    padding: 0 18px !important;
    opacity: 0.5;
    border-radius: 0;
    transition: all 0.2s ease-out;
}

.carousel-dots .dot.is-selected, 
.carousel-dots .dot:hover {
    background-color: #fff !important;
    opacity: 1;
	height: 5px !important;
    border-radius: 0;
	bottom: 10px;
	transition: all .2s ease-out;
}

.carousel-dots .dot::after {
    content: attr(data-number);
    position: absolute;
    top: -30px;
    left: 50%;
	padding: 0 18px !important;
    transform: translateX(-50%);
    color: #000;
    font-size: 23px;
    opacity: 0;
    transition: opacity 0.2s ease-out;
}

.carousel-dots .dot.is-selected::after, 
.carousel-dots .dot:hover::after {
    opacity: 1;
}

.carousel-dots .dot:nth-child(1)::after {
    content: "01";
}
.carousel-dots .dot:nth-child(2)::after {
    content: "02";
}
.carousel-dots .dot:nth-child(3)::after {
    content: "03";
}
.carousel-dots .dot:nth-child(4)::after {
    content: "04";
}
.carousel-dots .dot:nth-child(5)::after {
    content: "05";
}
.carousel-dots .dot:nth-child(6)::after {
    content: "06";
}
.carousel-dots .dot:nth-child(7)::after {
    content: "07";
}
.carousel-dots .dot:nth-child(8)::after {
    content: "08";
}

.bg-blur {
	backdrop-filter: blur(5px);
}

/*.c-form .elementor-field-option {
	text-align:center;
	color: #a8ab02;
	font-size: .8em !important;
}

.c-form .elementor-field-option:hover {
	text-align:center;
	color: #636513;
	font-size: .8em !important;
	text-decoration: underline;
}*/

@media (min-width: 768px) {
	.scroll-block-height {
		max-height: 423px;
	}
}

@media (min-width: 768px) and (max-width: 979px) {
    .scroll-block-height {
        max-height: 400px;
	}
}

@media (min-width: 768px) {
	.scroll-block {
		max-height: 321px;
		overflow: auto;
		overflow-y: scroll;
    	box-sizing: border-box;
		direction: rtl;
	}
}

@media (min-width: 768px) and (max-width: 979px) {
    .scroll-block {
        max-height: 310px;
	}
}

.scroll-block > * {
    direction: ltr;
}

.scroll-block::-webkit-scrollbar {width: 6px;}

.scroll-block::-webkit-scrollbar-track {background: transparent;border-left: 1px solid #3f3539;}

.scroll-block::-webkit-scrollbar-thumb {background: #3f3539;}

.scroll-block::-webkit-scrollbar-thumb:hover {background: #555;}

.scroll-block::-webkit-scrollbar {padding-left: 10px !important;}


@media (min-width: 768px) {
	.scroll-block2-height {
		max-height: 591px;
	}
}

@media (min-width: 768px) and (max-width: 979px) {
    .scroll-block2-height {
        max-height: 600px;
	}
}

@media (min-width: 768px) {
	.scroll-block2 {
		max-height: 400px;
		overflow: auto;
		overflow-y: scroll;
    	box-sizing: border-box;
		direction: rtl;
	}
}

@media (min-width: 768px) and (max-width: 979px) {
    .scroll-block2 {
        max-height: 420px;
	}
}

.scroll-block2 > * {
    direction: ltr;
}

.scroll-block2::-webkit-scrollbar {width: 6px;}

.scroll-block2::-webkit-scrollbar-track {background: transparent;border-left: 1px solid #3f3539;}

.scroll-block2::-webkit-scrollbar-thumb {background: #3f3539;}

.scroll-block2::-webkit-scrollbar-thumb:hover {background: #555;}

.scroll-block2::-webkit-scrollbar {padding-left: 10px !important;}

.nav-button i:before {
	border-radius: 50%;
    background: hsla(0, 0%, 100%, .75);
    border: none;
    padding: 5px;
	text-shadow: none;
}

.nav-button i:hover:before {
	border-radius: 50%;
    background: white;
    border: none;
    padding: 5px;
	text-shadow: none;
}

body.open-menu:after {
    z-index: 1;
}

@media (max-width: 767px) {
	.hero-hfix {
		height: 560px !important;
	}
}

/* Habitaciones */

.rooms-listing-wrapper {
	margin-top: 40px;
	margin-bottom: 40px;
}

.rooms-listing-wrapper .common-features {
	display: none;
}

.rooms-listing-wrapper .rooms-listing .room-item {
	margin-bottom: 0px;
}

.room-box {
    overflow: hidden;
    padding-top: 40px;
	padding-bottom: 40px;
	border-bottom: 1px solid #3f3539;
}

.rooms-listing-wrapper a {
	font-size: 40px;
    font-family: PlayfairDisplay;
    text-transform: none;
    font-weight: normal;
	text-decoration: none;
	color: #444;
}

.rooms-listing-wrapper a:hover {
	font-size: 40px;
    font-family: PlayfairDisplay;
    text-transform: none;
    font-weight: normal;
	text-decoration: underline;
	color: #444;
}

.rooms-listing-wrapper.alternate .rooms-listing .room-item.odd .room-detail {
	padding-left: 50px !important;
}

.rooms-listing-wrapper.alternate .rooms-listing .room-item.odd .room-content {
	padding-left: 50px !important;
}

.rooms-listing-wrapper.alternate .rooms-listing .room-item .room-detail {
	padding-right: 50px !important;
}

.rooms-listing-wrapper.alternate .rooms-listing .room-item .room-content {
	padding-right: 50px !important;
}

.room-box .room-detail ul {
	display: none;
}

.room-box .room-detail h3 {
    padding-top: 15px;
    padding-bottom: 15px;
}

.room-description {
    font-size: .9em;
    line-height: 1.4;
	font-family: 'Raleway', sans-serif;
	color: #3f3539;
	font-weight: 500;
}

.room-box .room-content .more-info {
    background: transparent;
    color: #000;
    border: 1px solid #000;
    padding: 11px 30px;
    letter-spacing: .07em;
    border-radius: 30px;
	margin-top: 25px;
    font-size: 18px;
	font-family: 'Raleway', sans-serif;
	color: #3f3539;
	font-weight: 500;
}

.room-box .room-content .more-info:hover {
    background: black;
    color: white !important;
    border: 1px solid #000;
    padding: 11px 30px;
    letter-spacing: .07em;
    border-radius: 30px;
	margin-top: 25px;
    font-size: 18px;
	font-family: 'Raleway', sans-serif;
	color: #3f3539;
	font-weight: 500;
	transition: all .25s ease-out;
	text-decoration: none;
}

.room-box p {
    margin-bottom: 40px;
}


@media (min-width: 768px) and (max-width: 979px) {
    .room-box .room-image-link img {
        max-height: 300px;
        object-fit: cover;
		padding-left: 40px;
		padding-right: 40px;
    }
}


@media (min-width: 768px) and (max-width: 979px) {
	.rooms-listing-wrapper.alternate .rooms-listing .room-item.odd .room-detail {
		padding-left: 40px !important;
	}
}

@media (min-width: 768px) and (max-width: 979px) {
	.rooms-listing-wrapper.alternate .rooms-listing .room-item.odd .room-content {
		padding-left: 40px !important;
	}
}

@media (min-width: 768px) and (max-width: 979px) {
	.rooms-listing-wrapper.alternate .rooms-listing .room-item .room-detail {
		padding-left: 40px !important;
	}
}

@media (min-width: 768px) and (max-width: 979px) {
	.rooms-listing-wrapper.alternate .rooms-listing .room-item .room-content {
		padding-left: 40px !important;
	}
}

@media (max-width: 979px) {
	.room-description {
    	font-size: 1em;
		font-weight: 500;
	}
}

@media (min-width: 768px) and (max-width: 979px) {
	.room-box {
    	padding-bottom: 60px;
	}
}

@media (max-width: 767px) {
	.rooms-listing-wrapper.alternate .rooms-listing .room-item.odd .room-detail {
		padding-left: 15px !important;
		padding-right: 15px !important;	
	}
}

@media (max-width: 767px) {
	.rooms-listing-wrapper.alternate .rooms-listing .room-item.odd .room-content {
		padding-left: 15px !important;
		padding-right: 15px !important;	
	}
}

@media (max-width: 767px) {
	.rooms-listing-wrapper.alternate .rooms-listing .room-item .room-detail {
		padding-left: 15px !important;
		padding-right: 15px !important;	
	}
}

@media (max-width: 767px) {
	.rooms-listing-wrapper.alternate .rooms-listing .room-item .room-content {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
}

@media (max-width: 767px) {
    .room-box .room-image-link img {
        max-height: 210px;
        object-fit: cover;
		padding-left: 15px;
		padding-right: 15px;
    }
}

@media (max-width: 767px) {
	.room-box {
    	padding-top: 20px;
    	padding-bottom: 35px;
	}
}

/* Detalle de habitación */

.rooms-detail-wrapper a {
    color: #a8ab02;
	font-weight: 500;
	font-size: 16px;
}

.rooms-detail-wrapper h2 {
	font-size: 2.8em;
    font-family: 'Playfair Display', serif;
	color: #3f3539;
	font-weight: normal;
}

.rooms-detail-wrapper .room-box-description p {
	font-size: 1em;
    line-height: 1.4;
	font-weight: 500;
}

.rooms-detail-wrapper .room-box-services ul li {
	font-size: 1em;
    line-height: 1.4;
	font-weight: 500;
}

.rooms-detail-wrapper h3 {
	font-size: 2.8em;
    font-family: 'Playfair Display', serif;
	font-weight: normal;
	text-transform: none;
	padding: 30px 20px;
}

.rooms-detail-wrapper .room-box-services {
    margin-top: 0px;
    padding: 0px;
}

.rooms-detail-wrapper .room-box-services ul {
	padding: 0px 20px;
}

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

.rooms-detail-wrapper .room-box-services h3 {
	font-size: 1.2em;
    font-weight: bold;
    text-transform: uppercase;
	font-family: 'Raleway', serif;
	margin-bottom: 0px;
}

.rooms-detail-wrapper .room-box-common-services h3 {
	font-size: 1.2em;
    font-weight: bold;
    text-transform: uppercase;	
	font-family: 'Raleway', serif;
	margin-bottom: 0px;
}

.rooms-detail-wrapper .room-box-common-services ul {
	padding: 0px 20px;
	width: 100%;
}

.offer-name {
	color: #4e4e4e !important;
    font-size: 1.3em !important;
    font-weight: normal !important;
    line-height: normal;
	font-weight: 500 !important;
    text-transform: uppercase !important;
	font-family: 'Raleway', serif !important;
	padding: 0px !important;
}

.offer img {
	width: 375px;
	height: 375px;
}

.offer-text {
    width: 348px;
}

@media (min-width: 768px) and (max-width: 979px) {
	.offer img {
		width: 100%;
		height: 100%;
	}
}

@media (min-width: 768px) and (max-width: 979px) {
	.offer-text {
		width: 100%;
	}
}

@media (min-width: 1200px) {
    .rooms-detail-wrapper .room .room-box-offers .offers-listing .offer.only-one {
		 width: auto;
	}
}

.offers-listing {
	background: #f3f3f3;
    padding: 30px;
}

.rooms-detail-wrapper .go-to-offers-page a {
    display: inline-block;
    font-size: 16px;
    font-weight: 500;
    margin: 10px 0;
	color: #a8ab02;
	padding-top: 20px;
}

.rooms-detail-wrapper .room-box-detail ul li.occupancies-list {
    width: 30%;
}

.dynamic-calendar .ui-datepicker-calendar a:hover {
	transition: all .3s ease;
    background: #bfc130 !important;
    color: #FFF;
}

.dynamic-calendar .ui-datepicker-calendar ._checkin-date a {
	background: #bfc130 !important;
    color: #FFF;
}

.calendar-wrapper.calendar-type1 {
	margin-top: 20px;
}



@media (max-width: 767px) {
    .rooms-detail-wrapper .room-box-detail ul li.occupancies-list  {
    	width: 100%;
    }
}

@media (max-width: 767px) {
    .rooms-detail-wrapper .room {
    	padding: 0px;
    }
}

@media (max-width: 767px) {
    .rooms-detail-wrapper h3 {
    	font-size: 2em;
    }
}

@media (max-width: 767px) {
    .rooms-detail-wrapper h2 {
    	font-size: 2em;
    }
}

@media (max-width: 767px) {
	.offer img {
		width: 290px;
		height: 290px;
	}
}

@media (max-width: 767px) {
	.offer-text {
		width: 280px;
	}
}

@media (max-width: 767px) {
	.offer-name {
		font-size: 18px !important;
	}
}


/* Ofertas */

.offers-listing-wrapper h2 {
	display: none;
}

.offers-detail-wrapper a {
    color: #002855;
	font-weight: 500;
	font-size: 16px;
	text-decoration: none;
}

.offers-detail-wrapper h2 {
	font-size: 2.8em;
    font-family: 'Playfair Display', serif;
	color: #3f3539;
	font-weight: normal;
}

.offers-detail-wrapper h3 {
	padding-bottom: 10px;
}

@media (max-width: 767px) {
    .offers-detail-wrapper {
        padding-top: 20px;
    }
}

@media (max-width: 767px) {
    .offers-detail-wrapper h2 {
        font-size: 2em;
    }
}

.offer-description {
    font-size: .9em;
    line-height: 1.4;
	font-family: 'Raleway', sans-serif;
	color: #3f3539;
	font-weight: 500;
}

.offers-mashup .more-info-link {
	color: #3f3539;
	text-transform: uppercase;
	font-weight: 500;
}

.offers-mashup .more-info-link:hover {
    background-color: #bfc130a1;
    color: #3f3539;
	text-transform: uppercase;
	font-weight: 500;
    transition: all .2s ease-out;
}


/* Elementor section boxed */

@media (max-width: 979px) {
    .elementor-section.elementor-section-boxed > .elementor-container {
    	width: auto;
    }
}

/* ----------------------- */

.c-bold a {
	font-weight: 700 !important;
}

.c-bold a:hover{
	font-weight: 700 !important;
	color: #3f3539 !important;
}

.flk-active h2 {
	color:#bfc130 !important;
}

.scroll-block2 h2:hover {
	color:#bfc130 !important;
	transition: color .3s ease-out;
	cursor: pointer;
}

#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-title .moove-gdpr-company-logo-holder img {
    filter: brightness(0) invert(0);
}

/* template 5 rooms */

.rooms-listing-5.rooms-listing-wrapper {
    padding-top: 40px;
    padding-bottom: 40px;
    margin-top: 0px;
    margin-bottom: 0px;
    position: relative;
    background: #fff;
}

.rooms-listing-5 > h2 {
    display: none;
}

.rooms-listing-5 .room-box {
    background: transparent;
    margin-bottom: 0;
    border-bottom: 1px solid #3f3539;
}

.rooms-listing-5 h3 a {
    font-size: 40px;
    font-family: PlayfairDisplay;
    text-transform: none;
    font-weight: normal;
}

.rooms-listing-5 h3 {
    padding-top: 15px;
}

.rooms-listing-5 .price-box {
    background-color: #3f3539;
    font-size: 16px;
    top: 0;
    bottom: auto;
    color: #fff;
    padding: 15px;
}

.rooms-listing-5 .price-box span {
    font-weight: bold;
    display: block;
}

.rooms-listing-5 .room-box:last-child {
    border-bottom: none;
}

.rooms-listing-5 .elementor-button.secondary-btn {
	font-family: "Raleway", sans-serif;
    margin-top: 10px;
    font-size: 18px;
}

.rooms-listing-5 .room-services-list {
    display: none;
}

.rooms-listing-5 .room-name, .rooms-listing-5 .room-intro {
    padding-right: 50px;
    padding-left: 0;
}

.rooms-listing-5 .room-box:nth-child(odd) .room-name, .rooms-listing-5 .room-box:nth-child(odd) .room-intro {
    padding-right: 0;
    padding-left: 50px;
}
.rooms-listing-5 .elementor-button.secondary-btn{
	color:#000;
	border-color:#000;
	position: relative;
    overflow: hidden;
    z-index: 0;
	text-decoration:none;
}
.rooms-listing-5 .elementor-button.secondary-btn:hover{
	color:white;
	background:#000;
}
.rooms-listing-5 .elementor-button.secondary-btn:before {
    content: '';
    background: #000;
    height: 0;
    width: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    border-radius: 100%;
    z-index: -1;
}

.rooms-listing-5 .elementor-button.secondary-btn:hover:before{
	height: 400%;
    width: 200%;
	-webkit-transition: all .25s ease-out;
    transition: all .25s ease-out;
}
/* last selected day */
.ui-datepicker-calendar ._checkout-date span,
.ui-datepicker-calendar ._checkout-date a,
.offers-detail-wrapper .offer-calendar-wrapper .offer-date .ui-datepicker-inline .calendar-legend-offer-day._checkout-date a,
.rooms-detail-wrapper .room-calendar-wrapper .room-date .ui-datepicker-inline ._checkout-date a,
.all-calendar .ui-datepicker-calendar ._checkout-date span,
.all-calendar .ui-datepicker-calendar ._checkout-date a {
    background: #cdce95!important;
    color: #FFF;
    font-weight: normal!important;
    text-decoration: none;
}
.all-calendar .calendar-nights {
    background: #cdce95;
    color: #fff;
}
/* selected and hover days */
.ui-datepicker-calendar ._selected-date span,
.ui-datepicker-calendar ._selected-date a,
.ui-datepicker-calendar ._checkin-date span,
.ui-datepicker-calendar ._checkin-date a,
.offers-detail-wrapper .offer-calendar-wrapper .offer-date .ui-datepicker-inline .calendar-legend-offer-day._checkin-date a,
.offers-detail-wrapper .offer-calendar-wrapper .offer-date .ui-datepicker-inline .calendar-legend-offer-day._selected-date a,
.offers-detail-wrapper .offer-calendar-wrapper .offer-date .ui-datepicker-inline .calendar-legend-offer-day a:hover,
.offers-detail-wrapper .offer-calendar-wrapper .offer-date .ui-datepicker-inline .calendar-legend-offer-day._checkin-date._checkout-date a,
.offers-detail-wrapper .offer-calendar-wrapper .offer-date .ui-datepicker-inline ._checkin-date._checkout-date a,
.rooms-detail-wrapper .room-calendar-wrapper .room-date .ui-datepicker-inline ._checkin-date._checkout-date a,
.rooms-detail-wrapper .room-calendar-wrapper .room-date .ui-datepicker-inline ._checkin-date a,
.rooms-detail-wrapper .room-calendar-wrapper .room-date .ui-datepicker-inline ._selected-date a,
.ui-datepicker td:hover a,
.all-calendar .ui-datepicker-calendar ._selected-date span,
.all-calendar .ui-datepicker-calendar ._selected-date a,
.all-calendar .ui-datepicker-calendar ._checkin-date span,
.all-calendar .ui-datepicker-calendar ._checkin-date a,
.all-calendar .ui-datepicker-calendar a:hover {
    -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    -ms-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
    background: #bfc130!important;
    color: #FFF!important;
    font-weight: normal!important;
    text-decoration: none;
}
.offers-detail-wrapper .offer-calendar-wrapper .offer-button:hover, .rooms-detail-wrapper .room-calendar-wrapper .room-button:hover, .landing-booking-button:hover,
.offers-detail-wrapper a.booking_mobile:hover, .rooms-detail-wrapper a.booking_mobile:hover, .all-calendar input[type="button"]:hover, .primary-btn:hover {
    text-decoration: none;
    background: #003B80;
    color: #fff;
}
.mi-title4, .rooms-detail-wrapper h4, .offers-detail-wrapper h4 {
    font-size: 1em;
    text-transform: uppercase;
    letter-spacing: .05em;
    font-weight: 300;
    /*font-family: 'Playfair Display', serif;*/
}
/* header (month&year) and old calendar buttons */
.ui-datepicker .ui-datepicker-header, .ui-datepicker .ui-datepicker-buttonpane button, .offers-detail-wrapper .offer-calendar-wrapper .offer-date .ui-datepicker-inline .ui-datepicker-header {
    background: #fff!important;
    color: #666!important;
}

/* offers 4 and rooms 5 templates */
.detail-services-dates {max-width: 800px;margin: 0 auto;}

@media(max-width:765px){
	/* ROOMS LISTING 5 */
    .rooms-listing-5 .room-name, .rooms-listing-5 .room-intro, .rooms-listing-5 .room-box:nth-child(odd) .room-name, .rooms-listing-5 .room-box:nth-child(odd) .room-intro {
        padding-left: 0;
        padding-right: 0;
    }
    
    /* ROOMS DETAIL 5  */
    .rooms-listing-5 .price-box {
        position: static;
        text-align: center;
        padding: 5px 10px;
    }
    .rooms-listing-5 .price-box span {
        display: inline;
    }
    
    /* OFFERS LISTING */
    .offers-listing-wrapper .offers-listing {
        padding-top: 0;
    }
    
    /* OFFERS DETAIL 6 */
    .offer-detail-4 .detail-services-dates {
        text-align: center;
    }
    .offers-detail-wrapper.offer-detail-4 a.booking_mobile {
        margin: 10px 0 40px;
        padding: 20px!important;
    }
}

.offers-detail-wrapper a {
    font-weight: 700;
}

/* ----- */



.c-mireserva .l5vG4W_paragraph {
    color: #fff;
}

.z3V4JG_header,.z3V4JG_title,.l5vG4W_headline-3,.xzMBSq_description,.I2Uiuq_input,.Uta_jq_input,.Uta_jq_withLabel,.Uta_jq_text {
	color: #484848 !important;
}

@media(max-width:767px){
	.mim-club-login__access {
		width: 5em !important;
	}
}

@media(min-width:768px)and (max-width:1200px) {
	body .mi-be {
    	font-size: 13px;
	}
}
 
.mim-club-login__access {
	width: 5em !important;
}

.not-found-page {
    min-height: 770px !important;
}

.not-found-page .mi-title2 {
    color: #3f3539 !important;
	font-size: 17px !important;
}

.not-found-page span {
    color: #3f3539 !important;
	font-size: 17px !important;
}

body.open-menu:after {
    z-index: 4;
}

.mi-club-signup__title {
    font-size: 1.3em !important;
	font-weight: 700;
}

.page-template-mirai-club-template .mi-club-signup {
    display: none;
}

.miclubdisplay .mi-club-signup {
    display: block !important;
}


body.-template-tpl-rooms-detail .header-hide,
body.-template-tpl-offers-detail .header-hide,
body.page-template-bookingstep1 .header-hide {
    display: none;
}


@media(min-width:768px)and (max-width:1023px) {
	.rooms-listing-5 .room-box:nth-child(odd) .room-name, .rooms-listing-5 .room-box:nth-child(odd) .room-intro {
			padding-left: 0px;
	}
}

.rooms-listing-5 .elementor-button.secondary-btn {
    font-size: 18px !important;
    font-weight: 500 !important;
}

.rooms-detail-wrapper .go-to-offers-page a {
    width: 100px;
}

.mi-club-login__popup .mi-club-login__logged-link {
	color:var(--text-color) !important;
	font-weight: 600;
}

.mi-club-login__logged-link:hover {
	color: #bfc130 !important;
	font-weight: 600;
	text-decoration: underline;
}

.mi-club-login__logged-name {
    font-weight: 600;
}

.mi-club-login__logged-logout {
    border: 1px solid #a8ab02 !important;
    border-radius: 0px !important;
}

.mi-club-login__logged-logout: hover {
    border: 1px solid black !important;
}
button.mim-button.mim-button--secundary {
    border-style: solid;
}

button.mim-rs-rate-header__plus {
    font-weight: 700;
}

@media (min-width: 768px) {
	.open-menu.top-scroll .s-header-brand-image {
    	height: auto;
    	opacity: 1;
    	display: block;
    	transition: height 0.5s ease-in-out;
	}
	.top-scroll.open-menu .s-header-brand .elementor-widget-wrap {
    	position: absolute;
    	top: 0;
	}
	.open-menu.top-scroll .s-header-actions {
		padding-top: 20px;
	}
	.open-menu.top-scroll .s-header-booking {
		padding-top: 20px;
	}
}

.offer-name {
    font-size: 1.1em !important;
    font-weight: 700 !important;
}

.offer-text {
    width: 358px;
}

}