.elementor-kit-4884{--e-global-color-primary:#5D5B50;--e-global-color-secondary:#CCA35C;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-13f4851a:#787878;--e-global-color-21f8c9b7:#000;--e-global-color-47eea86e:#FFF;--e-global-color-6cb047a:#FFFFFF00;--e-global-typography-primary-font-family:"the-seasons";--e-global-typography-primary-font-size:clamp(1.5rem, 0.29303rem + 5.082vw, 5.375rem);--e-global-typography-primary-font-weight:400;--e-global-typography-primary-line-height:120%;--e-global-typography-secondary-font-family:"the-seasons";--e-global-typography-secondary-font-size:4.5em;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-line-height:79px;--e-global-typography-text-font-family:"mr-eaves-modern";--e-global-typography-text-font-size:21px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:24px;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;--e-global-typography-fcce242-font-family:"the-seasons";--e-global-typography-fcce242-font-size:3.188em;--e-global-typography-fcce242-font-weight:700;--e-global-typography-fcce242-line-height:56px;--e-global-typography-013566d-font-family:"mr-eaves-modern";--e-global-typography-013566d-font-size:17px;--e-global-typography-013566d-font-weight:400;--e-global-typography-013566d-line-height:18.87px;--e-global-typography-013566d-letter-spacing:0.6px;--e-global-typography-962030d-font-family:"the-seasons";--e-global-typography-962030d-font-size:1.563em;--e-global-typography-962030d-font-weight:700;--e-global-typography-962030d-line-height:37px;--e-global-typography-4d3a7db-font-family:"mr-eaves-modern";--e-global-typography-4d3a7db-font-size:1.188em;--e-global-typography-4d3a7db-font-weight:400;--e-global-typography-4d3a7db-line-height:21%;--e-global-typography-adfa3ce-font-family:"the-seasons";--e-global-typography-adfa3ce-font-size:2.5em;--e-global-typography-adfa3ce-font-weight:700;--e-global-typography-adfa3ce-line-height:48px;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 );}.elementor-kit-4884 e-page-transition{background-color:#FFBC7D;}.elementor-kit-4884 h1{font-size:3.5em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1440px;}.e-con{--container-max-width:1440px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-4884{--e-global-typography-primary-line-height:48px;--e-global-typography-secondary-font-size:1.563em;--e-global-typography-secondary-line-height:31.25px;--e-global-typography-text-font-size:18px;--e-global-typography-text-line-height:24px;--e-global-typography-fcce242-font-size:1.563em;--e-global-typography-fcce242-line-height:31.25px;--e-global-typography-013566d-font-size:17px;--e-global-typography-013566d-line-height:18.87px;--e-global-typography-013566d-letter-spacing:0.6px;--e-global-typography-962030d-font-size:1.5em;--e-global-typography-962030d-line-height:31px;--e-global-typography-4d3a7db-font-size:1.063em;--e-global-typography-4d3a7db-line-height:21%;--e-global-typography-adfa3ce-font-size:1.25em;--e-global-typography-adfa3ce-line-height:33px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-4884{--e-global-typography-primary-line-height:48px;--e-global-typography-secondary-font-size:1.563em;--e-global-typography-text-font-size:18px;--e-global-typography-text-line-height:24px;--e-global-typography-013566d-font-size:17px;--e-global-typography-013566d-line-height:18.87px;--e-global-typography-013566d-letter-spacing:0.6px;--e-global-typography-962030d-font-size:1.25em;--e-global-typography-962030d-line-height:31px;--e-global-typography-4d3a7db-font-size:1.063em;--e-global-typography-4d3a7db-line-height:21px;--e-global-typography-adfa3ce-font-size:1.25em;--e-global-typography-adfa3ce-line-height:48px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//*Custom Cyan Cancun */
/*general settings*/

:root{

    --size-xl: 120px;
    --size-l: 80px;
    --size-m: 40px;
    --size-s: 24px;
    --size-xs: 20px;

}

/*Font*/

html {
    font-size: 16px;
}

.elementor-column-gap-default>.elementor-column>.elementor-element-populated {
    padding: 0px;
}

/*Prevent horizontal scroll*/
html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

/* 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;
}

.boxed-no-pdd.elementor-section.elementor-section-boxed > .elementor-container {
    padding-left: 0;
    padding-right: 0;
}

/* Lateral padding to sections on desktop and tablets */


@media (min-width: 768px) {
    body .elementor-section.elementor-section-boxed>.elementor-container {
        padding-left: 70px;
        padding-right: 70px;
    }
}

/* PADDING - AND - MARGINS | to sections */

.ptxl { padding-top: var(--size-xl);}
.pbxl { padding-bottom: var(--size-xl);}
.pvxl { padding-top: var(--size-xl); padding-bottom: var(--size-xl);}


.ptl { padding-top: var(--size-l);}
.pbl { padding-bottom: var(--size-l);}
.pvl { padding-top: var(--size-l); padding-bottom: var(--size-l);}



.ptm { padding-top: var(--size-m);}
.pbm { padding-bottom: var(--size-m);}
.pvm { padding-top: var(--size-m); padding-bottom: var(--size-m);}


.pts { padding-top: var(--size-s);}
.pbs { padding-bottom: var(--size-s);}
.pvs { padding-top: var(--size-s); padding-bottom: var(--size-s);}



/*HEADER*/

/* STICKY EFFECTS HEADER */

.first-header .main-header.elementor-sticky.elementor-sticky--effects {
    background-color: #fff;
}

.affix-engine-section{
    
    position:fixed;
    bottom:20px;
    top:auto!important;
    height:auto!important;
    width: 100%!important;
}


/*PAGES*/

/*Services*/

.ico-fill path{
    fill:var(--e-global-color-secondary)
    
}

/*Details*/

/*Show only on home*/
body.page-template-bookingstep1 .cta-book, body.cat-room-detail .cta-book, body.cat-offer-detail .cta-book {
    display: none;
}

/*Offers*/

body.cat-offers .offers-listing-wrapper.no-offers{
    text-align: center;
}

/*Destinations*/

.title-hotel{
    color:var( --e-global-color-21f8c9b7);
}

body.cat-destination .title-hotel{
    color:var(--e-global-color-47eea86e);
}


/*Home*/

/*Arrow Hero Home*/

.ico-intro:hover {
    transform: translateY(0px);
}

.ico-intro:hover .elementor-icon{
    transform: translateY(0px);
    outline: 1px solid #ffffff;
}

.ico-intro svg {
    transition: all .3s ease-out;
    transform: translateY(0px);
}

.ico-intro:hover svg{
    transition: all .3s ease-out;
    transform: translateY(-15px);
}

/* Arrow Icons and images Area Hover*/

/* Image */
.area img {
    transition: all .5s ease-out;
    outline: 15px solid transparent;
    outline-offset: -15px;
    
}

.area:hover img {
    outline: 15px solid #F1C9A4;
}

/*image:hover*/

.img-area{
    position:relative;
}
.img-hover{
    position:absolute;
    top:0;
    left:0;
    opacity:0;
    transition: opacity 0.5s ease;
    
}

.area:hover .img-hover{
    opacity:1;
   
    
}

.area .ico-area .elementor-icon-box-icon {
    cursor: pointer;
}

.area .ico-area .elementor-icon {
    transition: all .5s ease-in-out;
    opacity: 0;
    background: #F1C9A4;
}
.area:hover .ico-area .elementor-icon {
    opacity: 1;

}

.area svg {
    transition: all .3s ease-out;
    transform: translateX(0px);
}

.area:hover svg {

    transform: translateX(-10px);
}

/*Flickity  HOTELS Even and odd*/
.col-flickity .carousel-cell:nth-child(odd){
    margin-top: 60px!important;
    margin-bottom: 20px!important;
}

/*Flikickity (SERVICES) */

/*Vertical navigation*/

.fl-check-list .flickity-viewport{
    height: 100%!important;
}
.fl-check-list .flickity-slider{
    transform: none!important;
}
.fl-check-list .carousel-cell{
    position: relative!important;
    left:unset!important;
    transform: none!important;
    cursor: pointer;
}

/*Icons*/
.ico-area p.elementor-icon-box-description{
    margin-right: 37px;
}

.fl-check-list .ico-area .fas{
    display:none;
}

.fl-check-list .carousel-cell.is-selected.is-nav-selected .ico-area .fas{
    display: block;
}

.scroll-change-background .elementor-icon svg path {
    color: var(--e-global-color-secondary);
    fill: var(--e-global-color-secondary);
}

/*Cell-nav*/

.fl-check-list .carousel-cell{
    padding-left: 0px;
    transition: 0.5s ease !important;
}

.fl-check-list .carousel-cell.is-selected.is-nav-selected{
    padding-left: 9px;
}

.fl-check-list .carousel-cell.is-selected.is-nav-selected .ico-area .elementor-icon-box-title,.fl-check-list .carousel-cell.is-selected.is-nav-selected .ico-area span {
    color: var(--e-global-color-47eea86e);
}

.fl-check-list .carousel-cell.is-selected.is-nav-selected .ico-area .elementor-icon-box-title,.fl-check-list .carousel-cell .ico-area span {
    color: var(--e-global-color-1d35c50);
}

/* TOGGLE BLACK BACKGROUND ON SCROLL (SERVICES)*/
body.scroll-change-background-enabled #main .elementor-top-section {
	transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s, background-color .5s;
}

body.scroll-change-background-active #main .elementor-top-section {
	background-color: #5D5B50;
	color: #fff;
}
body.scroll-change-background-active #main .elementor-top-section .text-scroll {
	color: #BDBDBD;
}
body.scroll-change-background-active #main .elementor-top-section .text-white {
	color: #fff;
}

body.scroll-change-background-active #main .elementor-top-section .btn-white {
	fill: var(--e-global-color-47eea86e);
    color: var(--e-global-color-47eea86e);
}
body.scroll-change-background-active #main .elementor-top-section .btn-white:hover .elementor-button-icon{
    outline: 1px solid #ffffff;
    color:#fff;
    fill: #fff;
   
    
}

body.scroll-change-background-active .scroll-change-background svg path {
	fill: #CCA35C;
}

body.scroll-change-background-active .scroll-change-background .btn-white svg path {
	fill: #ffffff;
}


/*Slider*/

.swiper-pagination-bullet {
    border-radius: 0%;
}

/*Arrow*/

.eicon-chevron-right:before {
    content:  url("https://static-resources-elementor.mirai.com/wp-content/uploads/sites/876/button-arrow.png");
}
.eicon-chevron-left:before {
    content:  url("https://static-resources-elementor.mirai.com/wp-content/uploads/sites/876/button-arrow2.png");
}


/*About us*/

/*Image column*/

.img-hgt1{
    min-height: 500px;
}

.img-hgt2{
    min-height: 400px;
}

@media (max-width: 1024px) {
    .img-hgt1{
        min-height: 400px;
    }
    
    .img-hgt2{
        min-height: 300px;
    }
}

@media (max-width: 767px) {
    .img-hgt1{
        min-height: 400px;
    }
    
    .img-hgt2{
        min-height: 300px;
    }
}

@media (max-width: 580px ) {
    .img-hgt1{
        min-height: 200px;
    }
    
    .img-hgt2{
        min-height: 200px;
    }
}
/*----------*/


/*Images of destination boxes and hotels*/

.sect-hvr img{
    transform:scale(1.1);
    transition: all 2s;
}

.sect-hvr{
    overflow: hidden;
   
}

.sect-hvr:hover img{
    transform:scale(1);
}

.box-hover:hover {
    background: #111111;
}
.box-hover:hover .box-hover__img{
   opacity: 0.16;
}



/*-------------------Media Queries---------------*/

@media (max-width: 1024px) {

    .ptxl { padding-top: var(--size-m);}
    .pbxl { padding-bottom: var(--size-m);}
    .pvxl { padding-top: var(--size-m); padding-bottom: var(--size-m);}


    .ptl { padding-top: var(--size-m);}
    .pbl { padding-bottom: var(--size-m);}
    .pvl { padding-top: var(--size-m); padding-bottom: var(--size-m);}



    .ptm { padding-top: var(--size-s);}
    .pbm { padding-bottom: var(--size-s);}
    .pvm { padding-top: var(--size-s); padding-bottom: var(--size-s);}


    .pts { padding-top: var(--size-xs);}
    .pbs { padding-bottom: var(--size-xs);}
    .pvs { padding-top: var(--size-xs); padding-bottom: var(--size-xs);}

}

@media (max-width: 767px) {

    .ptxl { padding-top: var(--size-m);}
    .pbxl { padding-bottom: var(--size-m);}
    .pvxl { padding-top: var(--size-m); padding-bottom: var(--size-m);}
    
    
    .ptl { padding-top: var(--size-s);}
    .pbl { padding-bottom: var(--size-s);}
    .pvl { padding-top: var(--size-s); padding-bottom: var(--size-s);}
    
    
    
    .ptm { padding-top: var(--size-s);}
    .pbm { padding-bottom: var(--size-s);}
    .pvm { padding-top: var(--size-s); padding-bottom: var(--size-s);}

    
    
    .pts { padding-top: var(--size-xs);}
    .pbs { padding-bottom: var(--size-xs);}
    .pvs { padding-top: var(--size-xs); padding-bottom: var(--size-xs);}


}

@media (max-width: 768px) {

    .ico-intro{
        transform: translateY(0px);
        outline: 1px solid #ffffff;
    }
    .ico-intro svg{
    transform: translateY(-15px);
    }

    .area .ico-area .elementor-icon {
        transition: all .5s ease-in-out;
        opacity: 1;
        background: #F1C9A4;
    }
    .area svg {

        transform: translateX(-10px);
    }
    .ico-area p.elementor-icon-box-description{
        margin-right: 0;
     } 

}



@media (max-width: 767px) { 

    /* Icon Box - Fix Middle Position in Mobile */
    .elementor-widget-icon-box.elementor-vertical-align-middle .elementor-icon-box-wrapper {
        align-items: center;
    }
}

/*BUTTONS*/

/*Button Play*/

.btn-play{
    opacity:0;
}
.area-video:hover .btn-play{
    opacity:1;
}


/*Buttons Main*/

/*Button Black-------------*/

.btn-first{
    font-family: "mr-eaves-modern", Sans-serif;
    text-transform: uppercase;
    font-size: 17px!important;
    letter-spacing: 2px;
    font-weight: 400;
    line-height: 18px;
     
}
.btn-first .elementor-button-icon{
    outline: 1px solid transparent;
    height: 29px;
    width: 29px;
    display:flex;
    align-items: center;
    transform: translateX(0px);
    
}


.btn-first:hover .elementor-button-icon{
    transition: all .8s ease-out;
    transform: translateX(-15px);
    outline: 1px solid #111111;
}

.btn-first svg {
    font-size: 24px!important;
    transition: all .3s ease-out;
    transform: translateX(0px);
}

.btn-first:hover svg{
    transition: all .3s ease-out;
    transform: translateX(-5px);
}

.btn-first .elementor-button-text {
    display:flex;
    align-items: center;
}

.btn-first span{
    transform: translateX(0px);
}

.btn-first:hover span{
    transition: all .3s ease-out;
    transform: translateX(-5px);
}
.btn-first:hover path{
    fill:#111111;
}

@media (max-width: 768px) {
    
.btn-first .elementor-button-icon{
    outline: 1px solid #787878;
}
.btn-first svg{
    transform: translateX(-5px);
}
}

/*Button White----------- */


.btn-white{
    font-family: "mr-eaves-modern", Sans-serif;
    text-transform: uppercase;
    font-size: 17px!important;
    letter-spacing: 2px;
    font-weight: 400;
    line-height: 18px;
    color:var(--e-global-color-primary);
    fill: var(--e-global-color-primary);
    background-color: transparent;
}
.elementor-button:focus, .elementor-button:hover, .elementor-button:visited{
    color: var( --e-global-color-21f8c9b7 );
}
.btn-white .elementor-button-icon{
    
    outline: 1px solid transparent;
    height: 29px;
    width: 29px;
    display:flex;
    align-items: center;
    transform: translateX(0px);
    
}


.btn-white:hover .elementor-button-icon{
    transition: all .8s ease-out;
    transform: translateX(-15px);
    outline: 1px solid var( --e-global-color-47eea86e);
    color:var(--e-global-color-47eea86e);
    fill: var(--e-global-color-47eea86e);
   
    
}

.btn-white svg {
   
    font-size: 24px!important;
    transition: all .3s ease-out;
    transform: translateX(0px);
}

.btn-white:hover svg{
    transform: translateX(-5px);
}
.btn-white span{
    transition: all .3s ease-out;
    transform: translateX(0px);
}

.btn-white:hover span{
    
    transform: translateX(-5px);
}

.btn-white svg path{
    fill:var( --e-global-color-47eea86e);
}
.btn-white:hover  svg path{
    fill:var( --e-global-color-47eea86e);
}


.btn-white .elementor-button-text {
    display:flex;
    align-items: center;
}

@media (max-width: 768px) {
    
    .btn-white .elementor-button-icon{
        outline: 1px solid #ffffff;
    }
    .btn-white svg{
        transform: translateX(-5px);
    }
}

/* Button-hvr----------- */


.btn-hvr{
    transition: all .8s ease-in-out;
    opacity: 0;
}
.sect-hvr .btn-hvr path  {

   fill:#ffffff;
}

.sect-hvr:hover  .btn-hvr {
    transform: translateX(-10px);
    opacity: 1;
}
.btn-hvr .elementor-button-text {
     display:flex;
    align-items: center;
}

.sect-hvr:hover .btn-hvr path {
   fill:#ffffff;
}

.sect-hvr .btn-hvr {
    font-family: "mr-eaves-modern", Sans-serif;
    text-transform: uppercase;
    font-size: 17px!important;
    letter-spacing: 2px;
    font-weight: 400;
    line-height: 18px;
    
}

.sect-hvr:hover .btn-hvr .elementor-button-icon{
    outline: 1px solid #ffffff;
    height: 28px;
    width: 28px;
    
}

.sect-hvr .btn-hvr svg{
    transition: all .3s ease-out;
    transform: translateX(15px);
}

.sect-hvr:hover .btn-hvr svg{
    width: 32px;
    position: relative;
    top: 6px;
    transform: translateX(-18px);
}

@media (max-width: 768px) {
    .btn-hvr{
         opacity: 1;
    }
}

/*Button CTA*/

.cta-book{
    font-family: "mr-eaves-modern", Sans-serif;
    text-transform: uppercase;
    font-size: 17px!important;
    letter-spacing: 2px;
    font-weight: 400;
    line-height: 18px;
     
}
.cta-book .elementor-button-icon{
    opacity:0;
    outline: 1px solid transparent;
    height: 29px;
    width: 29px;
    display:flex;
    align-items: center;
    transform: translateX(0px);
    
}


body.cat-home .cta-book:hover .elementor-button-icon{
    opacity:1;
    transition: all .8s ease-out;
    transform: translateX(-15px);
    outline: 1px solid #ffffff;
}

body.cat-home .main-header.elementor-sticky--effects .cta-book:hover .elementor-button-icon{
    opacity:1;
    transition: all .8s ease-out;
    transform: translateX(-15px);
    outline: 1px solid #315169;
}

.cta-book:hover .elementor-button-icon{
    opacity:1;
    transition: all .8s ease-out;
    transform: translateX(-15px);
    outline: 1px solid #315169;
}

.cta-book svg {
   
    font-size: 24px!important;
    transition: all .3s ease-out;
    transform: translateX(0px);
}

.cta-book:hover svg{
    transition: all .3s ease-out;
    transform: translateX(-5px);
}
.cta-book span{
    transform: translateX(0px);
}

.cta-book:hover span{
    transition: all .3s ease-out;
    transform: translateX(-5px);
}

body.cat-home .cta-book svg path{
    fill:#ffffff;
}
body.cat-home .main-header.elementor-sticky--effects .cta-book svg path{
    fill:#315169;
}

.cta-book svg path{
    fill:#315169;
}


.cta-book .elementor-button-content-wrapper{
    align-items: center;
}

@media (max-width: 768px) {
    
.cta-book .elementor-button-icon{
    opacity:1;
}
body.cat-home .cta-book .elementor-button-icon{
    outline: 1px solid #ffffff;
}

.cta-book svg{
    transform: translateX(-5px);
}
}

/*Button Destinos*/

.btn-places{
    font-family: "mr-eaves-modern", Sans-serif;
    text-transform: uppercase;
    font-size: 17px!important;
    letter-spacing: 2px;
    font-weight: 400;
    line-height: 18px;
     
}
.btn-places .elementor-button-icon{
    outline: 1px solid transparent;
    height: 29px;
    width: 29px;
    display:flex;
    align-items: center;
    transform: translateX(0px);
    
}


.btn-places:hover .elementor-button-icon{
    transition: all .8s ease-out;
    transform: translateX(1px);
    outline: 1px solid #111111;
}

.btn-places svg {
    font-size: 24px!important;
    transition: all .3s ease-out;
    transform: translateX(0px);
}

.btn-places:hover svg{
    transition: all .3s ease-out;
    transform: translateX(11px);
}

.btn-places .elementor-button-text {
    display:flex;
    align-items: center;
}

.btn-places span{
    transform: translateX(0px);
}

.btn-places:hover span{
    transition: all .3s ease-out;
    transform: translateX(5px);
}
@media (max-width: 768px) {
    
.btn-places .elementor-button-icon{
    outline: 1px solid #111111;
}
.btn-places svg{
    transform: translateX(-5px);
}
}


/*Form contact and Newsletter button*/


.form-cont button{
    font-family: "mr-eaves-modern", Sans-serif;
    text-transform: uppercase;
    font-size: 17px!important;
    letter-spacing: 2px;
    font-weight: 400;
    line-height: 18px;
     
}
.form-cont button .elementor-button-icon{
    outline: 1px solid transparent;
    height: 29px;
    width: 29px;
    display:flex;
    align-items: center;
    transform: translateX(0px);
    
}


.form-cont button:hover .elementor-button-icon{
    transition: all .3s ease-out;
    transform: translateX(6px);
    outline: 1px solid #ffffff;
}

.form-cont button svg {
    font-size: 24px!important;
    transition: all .3s ease-out;
    transform: translateX(0px);
}

.form-cont button:hover svg{
    transition: all .3s ease-out;
    transform: translateX(-9px);
}

.form-cont button .elementor-button-text {
    display:flex;
    align-items: center;
}

/* CLUB BS Modal Open Interaction with Popups (Hamburguer popup) */
body.mi-bsmodal-open .dialog-widget {
    z-index: 3;
}



body.mi-bsmodal-open .elementor-location-header  {
    z-index: 1;
    position: relative;
}


/* ocultar botón reserva en páginas bs, detalles*/
body.page-template-bookingstep1 #reserva-header, body.cat-room-detail #reserva-header, body.cat-offer-detail #reserva-header {
    display: none;
}

/* custom letter size in bookingstep page */
.cat-booking .mi-rs p, 
.cat-booking  .mi-rs-rooms-listing {
  font-size: 1.275em !important;
}
 
.cat-booking p.mi-rs-taxes {
  font-size: 0.75em !important;
}/* End custom CSS */