.elementor-kit-7787{--e-global-color-primary:#FFBF35;--e-global-color-secondary:#F2ECE3;--e-global-color-text:#1A1A1A;--e-global-color-accent:#756248;--e-global-color-21f8c9b7:#000;--e-global-color-47eea86e:#FFF;--e-global-color-6cb047a:#FFFFFF00;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-size:3.75rem;--e-global-typography-primary-font-weight:400;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-primary-letter-spacing:0.06em;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-size:1.625rem;--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-text-transform:uppercase;--e-global-typography-secondary-letter-spacing:0.07em;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-size:2rem;--e-global-typography-accent-font-weight:500;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 );}.elementor-kit-7787 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7787 h1{font-size:3.5em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1600px;}.e-con{--container-max-width:1600px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-7787{--e-global-typography-primary-font-size:2.3rem;font-size:var( --e-global-typography-text-font-size );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-7787{--e-global-typography-primary-font-size:2rem;font-size:var( --e-global-typography-text-font-size );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* variables */
:root {
    --padding-large:120px;
    --padding-m-large:72px;
    --padding-medium:44px;
    --padding-small:22px;
}

@media (max-width:480px) {
    :root {
    --padding-large:100px;
    --padding-m-large:60px;
    --padding-medium:38px;
    --padding-small:15px;
}
}



/* ---------------------- */ 

/*CUSTOM WIDTH CONTAINERS */
/* Set a larger container to a section -> container-xl */
.container-xl,
.container-xl.elementor-section.elementor-section-boxed > .elementor-container {
    max-width: 1920px;
    margin: 0 auto;
    box-sizing: border-box;

}

/* exclude smaller ipad landscape size*/
 @media(min-width:1181px) {
.container-xl.elementor-section.elementor-section-boxed > .elementor-container{
    padding-left: var(--padding-large);
    padding-right: var(--padding-large); 
    }
}



/* Set a larger container to a section -> container-l */
.container-l.elementor-section.elementor-section-boxed > .elementor-container {
    max-width: 1440px;
    margin: 0 auto;
    box-sizing: border-box;
}

/* Set a larger container to a section -> container-l-int */
.container-l-int {
    max-width: 1440px;
    margin: 0 auto;
    box-sizing: border-box; 
}

.container-l-int.elementor-section.elementor-section-boxed > .elementor-container {
    max-width: 1167px;
    margin: 0 auto;
    box-sizing: border-box;
}

/* Set a boxed section or container with no padding (Like a full width) -> boxed-no-pdd */
.boxed-no-pdd.elementor-section.elementor-section-boxed > .elementor-container {
    padding-left: 0;
    padding-right: 0;
}
 @media(max-width:480px) {
.boxed-no-pdd-xs.elementor-section.elementor-section-boxed > .elementor-container {
    padding-left: 0;
    padding-right: 0;
}
}


html {
    font-size:16px;
}

body {
    background-color: var(--e-global-color-secondary);
}

a.tracking-link {
    color:#fff;
}
a, .elementor-location-footer a.tracking-link, .mi-vcard-phone a, .mi-vcard-email a, #developed-wrapper a, a.back-link, .go-to-offers a, .go-to-offers-page a, body.cat-contact label a, body.cat-contact .google-policy a {
    color:var(--e-global-color-text) ;
}


a:hover, a.tracking-link:hover, .mi-vcard-phone a:hover, .mi-vcard-email a:hover,  #developed-wrapper a:hover, a.back-link:hover, .go-to-offers a:hover, .go-to-offers-page a:hover, body.cat-contact label a:hover, body.cat-contact .google-policy a:hover {
    color: var(--e-global-color-primary);
}

body.cat-contact label a, body.cat-contact .google-policy a {
    font-weight:500;
}


/**** bsmodal open fixes ****/

body.mi-bsmodal-open .modal-engine {
    z-index:1049;
}
.mi-bsmodal.show {
    backdrop-filter: blur(1px);
}
 @media(max-width:480px) {
.mi-be.mi-be-mobile {
    display:flex;
}
body.mim-modal-open .modal-engine-wrapper .elementor-widget-Mirai.Booking {
    z-index:1;
}
}

/**** affix hidden ****/
 @media(min-width:1025px) {
.elementor-sticky.elementor-sticky--active.elementor-sticky--effects .affix-hidden {
    display:none;
}
}

/* modal popup */
.modal-engine [data-elementor-type=popup] {
    height:100%;
}


/**** home page section class*/
@media (min-width:1025px) {
.full-height-section {
    min-height: calc(100vh - 90px);
}
}

/**** description scroll ****/
.text-scroll {
    max-height:300px;
    overflow-x:hidden;
    overflow-y: auto;
    padding-right:10px;
    padding-bottom:10px;
}

.text-scroll::-webkit-scrollbar
{
    width: 4px;
    background-color: #F5F5F5;
}
.text-scroll::-webkit-scrollbar-thumb
{
    background-color: var(--e-global-color-primary);
}

/**** legal page text style ****/

.cat-legal ul li {
list-style-type: disc;
list-style-position: inside;
}
 
.cat-legal h2,
.cat-cookies-policy h2 {
    font-size: var(--e-global-typography-secondary-font-size);
    font-weight: var(--e-global-typography-secondary-font-weight);
    text-transform: var(--e-global-typography-secondary-text-transform);
}
.cat-legal h3 {
    font-weight:600;
}
.cat-legal p:not(:last-child) {
    margin-bottom: 20px;
}



/**** dynamic pages' titles ****/
.mi-title2, #cookies-wrapper-content h1, #cookies-wrapper-content h2,
.rooms-listing-wrapper h2, .rooms-listing-wrapper h2, .offers-listing-wrapper h2, .blog-wrapper h2, .blog-wrapper h1, .blog-wrapper #posts_con_categoria, .mi-iata-content h2, .starter-offers .offers-mashup dl dt,
/*h3*/
.rooms-detail-wrapper h3, .offers-detail-wrapper h3, .blog-wrapper h3, .mi-iata-content h3 {
    color: var(--e-global-color-text)!important; 
    font-weight: var(--e-global-typography-primary-font-weight)!important;
    text-transform: var(--e-global-typography-primary-text-transform)!important;
}
 .rooms-detail-wrapper h2,
.rooms-listing-wrapper .room-name, .rooms-listing-wrapper h3, .offers-detail-wrapper h2, .offers-detail-wrapper h2 {
     color: var(--e-global-color-text)!important; 
    font-weight: var(--e-global-typography-primary-font-weight)!important;
    text-transform:initial!important;
}
.rooms-listing-wrapper h2 {
    display:none;
}
.mi-title2, .rooms-listing-wrapper h2, #cookies-wrapper-content h1, #cookies-wrapper-content h2, .offers-listing-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: var(--e-global-typography-primary-font-size)!important;
}
.page-template-tpl-cookies-policy .elementor-widget-heading:first-child h2.mi-title3 {
    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);
    text-align: center;
    margin-bottom: 40px;
    }

.rooms-listing-wrapper .room-name, .rooms-detail-wrapper h2, .offers-detail-wrapper h2 {
    font-size: var(--e-global-typography-accent-font-size) !important;
}

.rooms-detail-wrapper h3.offer-name {
    text-transform: initial !important;
    font-weight:500 !important;
    padding: 20px 0;
    
}

.rooms-detail-wrapper .offer-text {
    position:relative;
}

.room-box {
    background: transparent!important;
    padding: 0!important;
    margin-bottom: var(--padding-m-large) !important;
}

.room-box, .rooms-listing-wrapper .room-name a, .rooms-listing-wrapper .elementor-button.secondary-btn {
    color:#1A1A1A!important;
   
}
.rooms-listing-wrapper > h2 {
    margin-bottom:40px;

}
.rooms-listing-wrapper .room-name {
    margin-top:40px;
}

.rooms-listing-wrapper  a.secondary-btn {   padding: 0 0 5px;
    border: 0;
    letter-spacing: 2px;
    font-weight:  var(--e-global-typography-primary-font-weight);
    border-bottom: 1px solid;
}
.rooms-listing-wrapper  a.secondary-btn:hover {  
    background:transparent;
    transform: scale(0.9);
}
.room-intro {
    padding: 40px;
}
@media (max-width:1024px) {
    .room-box {
        padding:0 10px 20px 10px !important;
    }
}

@media (max-width: 979px) {
    .m-ph0 > .elementor-container {
        padding-right: 0!important;
        padding-left: 0!important;
    }
}

@media (max-width: 767px) {
    .rooms-listing-wrapper .room-name {
        margin-top: 0;
    }
    .room-box {
        margin-bottom: 30px!important;
    }
}

@media(max-width:480px) {
    .rooms-detail-wrapper {
        padding-top: 80px !important;
    }
}
.offers-listing-wrapper.no-offers {
    text-align: center;
    padding: 40px;
    margin: 90px auto 90px;
    border: solid 1px var(--e-global-color-primary);
    width: fit-content;
}
/**** dynamic pages bg color and book botton ****/
.calendar-wrapper.calendar-type2 .offer-calendar-button, .calendar-wrapper.calendar-type2 .room-calendar-button, .calendar-wrapper.calendar-type2 .calendar-nights-label, .calendar-wrapper.calendar-type2 select.calendar-nights-field {
    font-size:1.1rem !important;
}
.calendar-wrapper.calendar-type2 .calendar-title,.calendar-wrapper.calendar-type2 .calendar-nights, .calendar-wrapper.calendar-type2 select.calendar-nights-field, .room-box-offers, .calendar-wrapper.calendar-type2 .calendar-title, .calendar-wrapper.calendar-type2 .calendar-nights {
    background-color: var(--e-global-color-accent) !important;
    color: #fff;
}
.calendar-wrapper.calendar-type2 .dates-book .primary-btn:disabled, .calendar-wrapper.calendar-type2 .dates-book .primary-btn:disabled:hover {
    background: #dddddd;
    color: #bbbbbb;
}
.calendar-wrapper.calendar-type2 .dates-book .primary-btn {
    background: var(--e-global-color-primary);
    color:#000;
}
.calendar-wrapper.calendar-type2 .dates-book .primary-btn:hover {
    background-color: var(--mirai-front-buttons-hover--color);
}
/**** dynamic calendar ****/
.dynamic-calendar .ui-datepicker-calendar ._selected-date a, .dynamic-calendar .ui-datepicker-calendar ._checkout-date._checkin-date a, .dynamic-calendar .ui-datepicker-calendar a:hover {
    background:var(--mirai-ui-calendar-range-background) !important;
}
.dynamic-calendar .ui-datepicker-calendar ._selected-date a {
    font-weight: 600;
}

.dynamic-calendar .ui-datepicker-calendar ._checkin-date a {
     background: var(--e-global-color-primary) !important;
     color:#000 !important;
     font-weight:600;
 }
.dynamic-calendar .ui-datepicker-calendar ._checkout-date a {
   background: var(--e-global-color-primary)!important;
   color:#000!important;
}


/*** dynamic pages primary-btn ****/
.booking_mobile.primary-btn {
    background: var(--e-global-color-primary)!important;
    color:#fff !important;
}
.booking_mobile.primary-btn:hover {
    background: var(--e-global-color-secondary) !important;
}

/*** Image gallery ***/
@media (max-width:480px) {
.filter-slider .elementor-gallery__titles-container {
    flex-wrap: nowrap;
    justify-content: start;
    overflow-x: auto;
    padding-bottom:5px;
}
.filter-slider .elementor-gallery__titles-container a.elementor-gallery-title {
        white-space:  nowrap;
}
}
@media (max-width: 979px) {
    .detail-description, .room-dates {
        width: 100% !important;
        padding-right: 0 !important;
        padding-left: 0;
    }
}/* End custom CSS */