/*
Theme Name: Hotel-voramar-benidorm-2019
Theme URI: hotelvoramarbenidorm.com
Description: Hotel-voramar-benidorm-2019
Template: mirai
Author: Mirai Espana
*/


/*---------------------------------------------------------------------------*/
/*--------------------------------- FONTS -----------------------------------*/
/*---------------------------------------------------------------------------*/


/* LOCAL ICON FONT */

/*@font-face {
    font-family: 'local-icofonts';
    src: url('/files/local-icofonts.eot');
    src: url('/files/local-icofonts.eot#iefix') format('embedded-opentype'),
        url('/files/local-icofonts.woff') format('woff'),
        url('/files/local-icofonts.ttf') format('truetype'),
        url('/files/local-icofonts.svg') format('svg');
    font-weight: normal;
    font-style: normal;
}

[class^="licon-"]:before, [class*=" licon-"]:before {
    font-family: 'local-icofonts'!important;
    content: '\999';
}

[class^="licon-"]:before, [class*=" licon-"]:before,*/
.check-list li:before, .bullet-list li:before,
.carousel-control:before, i.icon-lock:before,
.offers-slide .slide .no-offers:before {
    speak: none;
    font-variant: normal;
    font-size: inherit;
    line-height: inherit;
    text-decoration: none;
    font-style: normal;
    letter-spacing: normal;
    font-weight: normal;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: block;
}

/* ICONS */

i.icon-lock:before {
    font-family: 'mirai-icofonts';
    content: '\e990';
}

.back a:before, a.fwd-link:after,
#main .go-to-calendar:after, .rooms-detail-wrapper .detail-links li a: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;
}

/* mete la clase .fwd-link a los enlaces que quieras meter una flecha hacia adelante */

a.fwd-link:after {
    content: '\e967';
}

a.fwd-link:hover:after {
    margin-left: 1em;
    margin-right: 0;
}

.back a:hover:before {
    margin-right: 1em;
    margin-left: 0;
}

/* GENERAL FONT STYLES */

body {
    font-size: 17px;
    line-height: normal;
}

body, .ui-datepicker-inline *, .wpcf7 input, #ui-datepicker-div {
    font-family: 'Lato', 'Open Sans', 'sans-serif'; /* cambialo segun boceto */
}

/* normal links */

a, #cuadroOpiniones div.hssurveys_full .noLink, #cuadroOpiniones div.hssurveys_full .noLink a, #main .offer-detail-1 .go-to-calendar {
    color: #2c3276;
}

a:hover, #cuadroOpiniones div.hssurveys_full .noLink:hover, #cuadroOpiniones div.hssurveys_full .noLink a:hover, #main .offer-detail-1 .go-to-calendar:hover {
    color:#000431;
}

/* TITLES */

/* reset Bootstrap styles */
h1, h2, h3, h4, h5, p, li {line-height: normal;}

/* reset categories title blog */
.blog-wrapper #posts_con_categoria {
    font-size: initial;
    margin: 0;
    text-align: left;
    text-decoration: none;
    text-transform: none;
}



.main-title {
    font-size: 50px;
    margin-bottom: 30px;
    display: block;
    color: #fff;
    text-shadow: 0 0 15px rgba(0, 0, 0, .5);
    /*font-family: 'Playfair Display', serif;*/
}

.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: 43px;
    font-weight: bold;
}
.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: 1.5em;
    /*font-family: 'Playfair Display', serif;*/
}
.mi-title4, .rooms-detail-wrapper h4, .offers-detail-wrapper h4 {
    font-size: 1.1em;
    /*font-family: 'Playfair Display', serif;*/
}


/*---------------------------------------------------------------------------*/
/*----------------------------- GENERAL FIXES -------------------------------*/
/*---------------------------------------------------------------------------*/


input[type="radio"], input[type="checkbox"] {margin: 0}
select, textarea, input, input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"], .uneditable-input {border-radius: initial;font-family: inherit;}
select[disabled] {cursor: not-allowed!important;}
img {width: auto}
.container {max-width: 100%;-webkit-box-sizing: border-box;box-sizing: border-box;}
.btn {-webkit-box-shadow: none;box-shadow: none;text-align:inherit;}
ul.menu a {color: inherit;}
#back-top {z-index: 200;}
.btn:focus, button:focus, input[type="button"]:focus, input[type="reset"]:focus, input[type="submit"]:focus, select:focus {outline: none;}
.mi-iata-content {padding: 80px 0;}
.mi-iata-content h2, .mi-iata-content h3 {margin-bottom: 20px;}
.mi-iata-content .mi-action .tab-content {overflow: visible;}
.collapse {overflow: hidden;}
dt, dd {line-height: 1;}
.socialmedia ul li a:before {color: inherit; display: block; font-size: inherit; padding: 0; background: transparent;}


/* ENGINE SELECTS, QTRANSLATE SELECT AND MULTIROOM BUTTON APPEARANCE RESET */

.widget_qtranslate select, .common-form select {
    border-radius: 0;
    line-height: 1;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: "";
    margin-bottom: 0;
    font-size: inherit;
}

.widget_qtranslate select::-ms-expand, .common-form select::-ms-expand {display: none;}

.widget_qtranslate select, .common-form select {width: auto;}


/*---------------------------------------------------------------------------*/
/*--------------------------- GENERIC CLASSES -------------------------------*/
/*---------------------------------------------------------------------------*/


.relative {position: relative}
.absolute {position: absolute}
.absolute.full {bottom: 0;top: 0;right: 0;left: 0;}
.full-width {width: 100%}
.full-height {height: 100%}
.block {display: block}
.inline-block {display: inline-block !important}
.align-left {text-align: left}
.align-center {text-align: center}
.align-right {text-align: right}
.vertical-align > * {vertical-align: middle}
.overflow-h {overflow: hidden}
.img-cover {height: 100%; min-width: 100%; -o-object-fit: cover; object-fit: cover;}

.center {
    position: absolute;
    top: 50%;
    right: 50%;
    -webkit-transform: translate(50%, -50%);
    transform: translate(50%,-50%);
}

/* FLEX RULES */

.flex.row:before, .flex.row:after, .flex.container:before, .flex.container:after {display:none;}

.flex {
    display: -webkit-box!important;
    display: -ms-flexbox!important;
    display: flex!important;
}

/* y axis */

.fx-align-center {
    -ms-flex-align: center;
    -webkit-box-align: center;
    align-items: center;
}

.fx-align-end {
    -ms-flex-align: end;
    -webkit-box-align: end;
    align-items: flex-end;
}

/* x axis */

.fx-justify-center {
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    justify-content: center;
}

.fx-space-between {
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    justify-content: space-between;
}

.fx-justify-end {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.fx-space-around {
    justify-content: space-around;
}

/* changing axes */
.fx-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

/* break line */
.fx-wrap {
    -ms-flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    flex-wrap: wrap;
}

.fx-reverse {
    -ms-flex-direction: row-reverse;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    flex-direction: row-reverse;
}


/* LIST */
/* agrega las clases .bullet-list o .check-list a los ul segun precises */

.check-list li, .bullet-list li {
    position: relative;
    padding-left: 1.5em;
    padding-bottom: 10px;
}

.check-list li:before, .bullet-list li:before {
    font-family: 'mirai-icofonts';
    position: absolute;
    left: 0;
    top: 0;
    line-height: 1;
}

.check-list li:before {
    color: #777;
    content: '\e983';
}

.bullet-list li:before {
    color: #777;
    content: '\eb1a';
    font-size: .5em;
    line-height: 1;
    margin-top: 1em;
}

/* MARGIN - PADDING */

.pa0 {padding: 0}

.pts {padding-top: 20px;}
.prs {padding-right: 20px;}
.pbs {padding-bottom: 20px;}
.pls {padding-left: 20px;}
.phs {padding-right: 20px; padding-left: 20px;}
.pvs {padding-top: 20px; padding-bottom: 20px;}
.pas {padding: 20px;}

.ptm {padding-top: 70px;}
.prm {padding-right: 70px;}
.pbm {padding-bottom: 70px;}
.plm {padding-left: 70px;}
.phm {padding-right: 70px; padding-left: 70px;}
.pvm {padding-top: 70px; padding-bottom: 70px;}
.pam {padding: 70px;}

.ptl {padding-top: 150px;}
.prl {padding-right: 150px;}
.pbl {padding-bottom: 150px;}
.pll {padding-left: 150px;}
.phl {padding-right: 150px; padding-left: 150px;}
.pvl {padding-top: 150px; padding-bottom: 150px;}
.pal {padding: 150px;}

.mts {margin-top: 20px;}
.mrs {margin-right: 20px;}
.mbs {margin-bottom: 20px;}
.mls {margin-left: 20px;}
.mhs {margin-right: 20px; margin-left: 20px;}
.mvs {margin-top: 20px; margin-bottom: 20px;}
.mas {margin: 20px;}

.mtm {margin-top: 70px;}
.mrm {margin-right: 70px;}
.mbm {margin-bottom: 70px;}
.mlm {margin-left: 70px;}
.mhm {margin-right: 70px; margin-left: 70px;}
.mvm {margin-top: 70px; margin-bottom: 70px;}
.mam {margin: 70px;}

.mtl {margin-top: 150px;}
.mrl {margin-right: 150px;}
.mbl {margin-bottom: 150px;}
.mll {margin-left: 150px;}
.mhl {margin-right: 150px; margin-left: 150px;}
.mvl {margin-top: 150px; margin-bottom: 150px;}
.mal {margin: 150px;}

.ma0 {margin: 0}
.m0auto {margin: 0 auto}

/* BACKGROUNDS & COLORS */

.white-text, .white-text *, .white-text a:hover, .white-text .offers-mashup * {
    color: #fff;
}

.bg-black {
    background: #131313;
}

.bg-light {
    background: #eee;
}

.bg-dark-fill {
    background: rgba(0,0,0,.3);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#33000000', endColorstr='#33000000',GradientType=0 ); /* IE6-9 */
}

.bg-dark-fill2 {
    background: rgba(0,0,0,.7);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#33000000', endColorstr='#33000000',GradientType=0 ); /* IE6-9 */
}

.bg-gradient {
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0.55+0,0+100 */ /* FF3.6-15 */ /* Chrome10-25,Safari5.1-6 */
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.55)),to(rgba(0,0,0,0)));
    background: linear-gradient(to bottom, rgba(0,0,0,0.55) 0%,rgba(0,0,0,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#8c000000', endColorstr='#00000000',GradientType=0 ); /* IE6-9 */
}

/* borders */

.white-text *, .white-text {
    border-color: #fff;
}


/*---------------------------------------------------------------------------*/
/*--------------------------- COMMON ELEMENTS -------------------------------*/
/*---------------------------------------------------------------------------*/


/* CAROUSEL CONTROLS (bootstrap & swiper ) */

.carousel-control, .flickity-prev-next-button {
    box-shadow: none!important; /*fixing flikity focus */
    height: auto;
    line-height: 1;
    font-size: 26px;
    width: 26px; /* firefox fixing - mismo que font-size */
    margin: 0; /* bootstrap fix */
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    background-image: none; /* fixing both */
    background: transparent;
    color: #fff!important;
    padding: 11px;
    opacity: .6;
    -webkit-transition: all .2s ease-out;
    transition: all .2s ease-out;
}

#rewievs .carousel-control, #rewievs .flickity-prev-next-button {
    background: transparent;
}

#intro-img .flickity-prev-next-button {
    color: #fff!important;
    opacity: 1;
}
#12razones .flickity-prev-next-button {
    color: #fff!important;
    opacity: 1;
}
.carousel-control {
    text-indent: -99999px;
    text-shadow: none;
}

.carousel-control, .flickity-prev-next-button.previous {left: 33px;}
.carousel-control.right, .flickity-prev-next-button.next {left: auto;right: 33px;}

.carousel-control:before, .flickity-prev-next-button:before {
    text-indent: 0;
    font-family: 'mirai-icofonts';
    display: block;
    float: left;
}

.carousel-control.left:before, .flickity-prev-next-button.previous:before {content: '\e96a';}
.carousel-control.right:before, .flickity-prev-next-button.next:before {content: '\e96b';}

.carousel-control:hover, .flickity-prev-next-button:hover {
    background: transparent;
    opacity: 0.7!important;
}

#rewievs .carousel-control:before {
    font-size: 2em;
    font-weight: bold;
    color: #2D307A;
    margin-top: 15px;
}

#rewievs .secundary-btn {
    margin-top: -15px;
}

.slider-box {
    padding: 0 32px;
    height: 60px;
    border-left: 1px solid #cacaca;
}

/* height */

.height-l{
    height: 500px;
}

/* SWIPER FLICKITY */

/* full screen */
.full-screen-container .flickity-enabled, .full-screen-container .flickity-viewport, .full-screen-container .carousel-cell {
    height: 100% !important;
}

.full-screen-container .carousel-cell {
    width: 100%;
}

.full-screen-container .flickity-page-dots {
    bottom: 0px;
    padding: 60px;
    text-align: right;
    -webkit-box-sizing:  border-box;
    box-sizing:  border-box;
    right: 0;
    width: auto;
}

.flickity-page-dots{
    bottom: -40px;
}

/* Galeria Servicios*/

.img-box-slider .carousel-cell {
    width: 650px;
}

.sup-img-min {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 20px;
    color: white;
    z-index: 1;
    font-weight: 600;
}

.sup-img-min h3 {
    font-size: 22px;
    font-weight: 600;
    margin-bottom: 10px;
    padding: 10px;
    background: rgba(0,0,0,.3);
}

/* arrows */
.flickity-prev-next-button {
    border-radius:  0;
    width: 48px;
    height: 48px;
}

.flickity-prev-next-button svg {
    display: none;
}


/*  dots  */

.flickity-page-dots .dot.is-selected {
    opacity: 1!important;
    border: 2px solid #53565A;
    background: #fff;
    vertical-align: bottom;
}

.flickity-page-dots .dot {
    opacity: 1;
    background: #696969;
}


/* Menu chain */

.pagination-carousel .carousel-cell:before {
    content: '';
    width: 100%;
    position: absolute;
    bottom: 0;
    left:  0;
    height: 1px;
    background-color: #d8d8d8;
    -webkit-transition:  all .25s ease-in-out;
    transition:  all .25s ease-in-out;
}

.pagination-carousel .carousel-cell.is-selected:before, .pagination-carousel .carousel-cell:hover::before {
    height: 4px;
    background-color: #8a8a8a;
    -webkit-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out;
}

.chain-carousel .flickity-prev-next-button {
    border: solid 1px #a6a6a6;
}

/* BOOTSTRAP MODAL */

.modal:focus {outline: none;}
.modal {border: none;}
body.modal-open {overflow: hidden; -ms-touch-action: none; touch-action: none;}

.modal-header .close {
    float: none;
    position: absolute;
    right: 13px;
    top: 50%;
    font-size: 20px;
    width: 20px; /* firefox fixing - mismo que font-size */;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    margin-top: -20px;
    padding: 12px;
    color: inherit;
    opacity: .75;
    text-shadow: none;
}

.modal-header .close:hover {
    opacity: 1;
}

.modal-header {
    border-bottom: none;
    padding: 15px;
    padding-right: 57px;
    position: relative;
    background: #E9E2D8;
    color: #252525;
}

/* modal title */
.modal-header .mi-title3 {
    color: inherit;
    font-weight: normal;
}


/* MIRAI MODAL */

body.mirai-modal-active #main {
    position: static;
}

.mirai-modal {
    position: fixed;
    top: 0;
    bottom: 0;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    z-index: 1050;
    background-color: rgba(0, 0, 0, 0.8);
    color: #fff;
}

.mi-modal-close {
    background: transparent;
    color: inherit;
    border: 0;
    display: inline-block;
    cursor: pointer;
    line-height: 1;
}

.mirai-modal > .mi-modal-close, .mi-modal-header > .mi-modal-close {
    position: absolute;
    right: 20px;
    top: 20px;
}

.mi-modal-header > .mi-modal-close {
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.mi-modal-header #logo {
    display: none;
}

.mi-modal-close i {
    font-size: 32px;
    display: inline-block;
    vertical-align: middle;
}

.mi-modal-close span {
    display: inline-block;
    vertical-align: middle;
    padding-right: 10px;
    padding-left: 10px;
    font-family: Gotham;
    text-transform: uppercase;
    letter-spacing: 0.1px;
}

.mi-modal-close span, .mi-modal-close i {
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out
}

.mi-modal-close:hover span {
    padding-right: 20px;
    padding-left: 0;
}

.mi-modal-close:hover i {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}

.mi-modal-header {
    text-align: center;
    position: absolute;
    padding: 30px 0;
    width:  100%;
    left:  0;
    top: 0;
    z-index: 1;
}

.mirai-modal .mi-modal-content {
    height: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    overflow: hidden;
}

.mirai-modal .mi-modal-content > div {
    max-height: 100%;
    overflow: auto;
}

/* left */

.mirai-modal[data-to="left"] {
    left: -100%;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out
}

.mirai-modal[data-to="left"].mi-active {left: 0;}

/* right */

.mirai-modal[data-to="right"] {
    right: -100%;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out
}

.mirai-modal[data-to="right"].mi-active {right: 0;}

/* fade */

.mirai-modal[data-to="fade"] {
    opacity: 0;
    left: -100%;
    -webkit-transition: opacity .3s ease-in 0s, left 0s ease-in .3s;
    transition: opacity .3s ease-in 0s, left 0s ease-in .3s;
}

.mirai-modal[data-to="fade"].mi-active {
    opacity: 1;
    left: 0;
    -webkit-transition: left 0s ease-in 0s, opacity .3s ease-in;
    transition: left 0s ease-in 0s, opacity .3s ease-in;
}

/* SHADOWBOX */

#sb-container {z-index: 1100;}

/* SIDE MODAL BUTTON */

.fixed-modal-link {
    background: #d8d8d8;
    -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
    position: fixed;
    right: 0;
    top: 30%;
    padding: 30px 10px;
    z-index: 200;
    -webkit-transition: all .2s ease-out;
    transition: all .2s ease-out;
}

.fixed-modal-link:hover {
    padding: 30px 20px 30px 10px;
}

/*MODAL VENTAJAS*/

.advantages-modal .modal-header {
    background: #2D307A;
    color: #fff;
}

.open-modal-advantages .unlinkeable {
    left: 0;
    right: 0;
    opacity: 1;
    visibility: visible;
    transition: none;
}

.unlinkeable {
    position: fixed;
    left: -100%;
    width: 100%;
    top: 0;
    height: 100vh;
    padding: 0;
    background: transparent;
    visibility: hidden;
    opacity: 0;
    transition: all 0s .3s;
    z-index: 2;
}

.open-modal-advantages .advantages-modal {
    left: 0;
    opacity: 1;
}
.advantages-modal {
    position: fixed;
    top: 0;
    background: rgba(255,255,255,.9);
    height: 100%;
    padding: 33vh 65px 5vh;
    z-index: 999;
}
.advantages-modal {
    transition: .2s;
    opacity: 0;
    left: 100%;
}

#advantages-modal {
    position: relative;
    bottom: -5px;
}

#advantages-modal i, #advantages-modal span {
    display: inline-block;
    position: relative;
    vertical-align: middle;
    cursor: pointer;
}

#advantages-modal span{
    color: #fff;
}

#advantages-modal span:hover {
    color: #5fc1b4;
}

.open-modal-advantages .advantages-modal i {
    display: inline-block;
    margin-right: 15px;
    vertical-align: initial;
}

.advantages-modal .close {
    font-size: 3em;
}

/* MODAL BUTTON ADVANTAGES */

.modal-advantages i {
    position: absolute;
    padding: 13px;
    z-index: 1;
    -webkit-animation-name: shake;
    animation-name: shake;
    animation: shake 5s ease both infinite;
    cursor: pointer;
}
.advantages-modal .modal-header i{
     -webkit-animation-name: shake;
    animation-name: shake;
    animation: shake 5s ease both infinite;
    cursor: pointer;
}

.modal-advantages i:before {
    color: #5FC1B4;
    font-size: 20px;
}

@-webkit-keyframes shake {
0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    -webkit-transform: translateX(0);
            transform: translateX(0);
}
4% {
    -webkit-transform: translateX(-10);
            transform: translateX(-10);
}
8% {
    -webkit-transform: translateX(10);
            transform: translateX(10);
}
13.2% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    -webkit-transform: translateX(0);
            transform: translateX(0);
}
16% {
    -webkit-transform: translateY(-15px);
            transform: translateY(-15px);
}
20% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
}
24% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
}
32% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
}
40% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
}
50% {
    -webkit-transform: translate(0, 0) rotate(3.5deg);
            transform: translate(0, 0) rotate(3.5deg);
}
51% {
    -webkit-transform: translate(0, 0) rotate(-0.5deg);
            transform: translate(0, 0) rotate(-0.5deg);
}
52% {
    -webkit-transform: translate(0, 0) rotate(-2.5deg);
            transform: translate(0, 0) rotate(-2.5deg);
}
53% {
    -webkit-transform: translate(0, 0) rotate(2.5deg);
            transform: translate(0, 0) rotate(2.5deg);
}
54% {
    -webkit-transform: translate(0, 0) rotate(3.5deg);
            transform: translate(0, 0) rotate(3.5deg);
}
55% {
    -webkit-transform: translate(0, 0) rotate(-0.5deg);
            transform: translate(0, 0) rotate(-0.5deg);
}
56% {
    -webkit-transform: translate(0, 0) rotate(-2.5deg);
            transform: translate(0, 0) rotate(-2.5deg);
}
57% {
    -webkit-transform: translate(0, 0) rotate(2.5deg);
            transform: translate(0, 0) rotate(2.5deg);
}
58% {
    -webkit-transform: translate(0, 0) rotate(3.5deg);
            transform: translate(0, 0) rotate(3.5deg);
}
59% {
    -webkit-transform: translate(0, 0) rotate(-0.5deg);
            transform: translate(0, 0) rotate(-0.5deg);
}
60% {
    -webkit-transform: translate(0, 0) rotate(-2.5deg);
            transform: translate(0, 0) rotate(-2.5deg);
}
61% {
    -webkit-transform: translate(0, 0) rotate(2.5deg);
            transform: translate(0, 0) rotate(2.5deg);
}
62% {
    -webkit-transform: translate(0, 0) rotate(3.5deg);
            transform: translate(0, 0) rotate(3.5deg);
}
63% {
    -webkit-transform: translate(0, 0) rotate(-0.5deg);
            transform: translate(0, 0) rotate(-0.5deg);
}
64% {
    -webkit-transform: translate(0, 0) rotate(-2.5deg);
            transform: translate(0, 0) rotate(-2.5deg);
}
65% {
    -webkit-transform: translate(0, 0) rotate(2.5deg);
            transform: translate(0, 0) rotate(2.5deg);
}
66% {
    -webkit-transform: translate(0, 0) rotate(3.5deg);
            transform: translate(0, 0) rotate(3.5deg);
}
67% {
    -webkit-transform: translate(0, 0) rotate(-0.5deg);
            transform: translate(0, 0) rotate(-0.5deg);
}
68% {
    -webkit-transform: translate(0, 0) rotate(-2.5deg);
            transform: translate(0, 0) rotate(-2.5deg);
}
69% {
    -webkit-transform: translate(0, 0) rotate(2.5deg);
            transform: translate(0, 0) rotate(2.5deg);
}
70% {
    -webkit-transform: translate(0, 0) rotate(3.5deg);
            transform: translate(0, 0) rotate(3.5deg);
}
71% {
    -webkit-transform: translate(0, 0) rotate(-0.5deg);
            transform: translate(0, 0) rotate(-0.5deg);
}
72% {
    -webkit-transform: translate(0, 0) rotate(-2.5deg);
            transform: translate(0, 0) rotate(-2.5deg);
}
73% {
    -webkit-transform: translate(0, 0) rotate(2.5deg);
            transform: translate(0, 0) rotate(2.5deg);
}
74% {
    -webkit-transform: translate(0, 0) rotate(3.5deg);
            transform: translate(0, 0) rotate(3.5deg);
}
75% {
    -webkit-transform: translate(0, 0) rotate(-0.5deg);
            transform: translate(0, 0) rotate(-0.5deg);
}
76% {
    -webkit-transform: translate(0, 0) rotate(-2.5deg);
            transform: translate(0, 0) rotate(-2.5deg);
}
77% {
    -webkit-transform: translate(0, 0) rotate(2.5deg);
            transform: translate(0, 0) rotate(2.5deg);
}
78% {
    -webkit-transform: translate(0, 0) rotate(3.5deg);
            transform: translate(0, 0) rotate(3.5deg);
}
79% {
    -webkit-transform: translate(0, 0) rotate(-0.5deg);
            transform: translate(0, 0) rotate(-0.5deg);
}
80% {
    -webkit-transform: translate(0, 0) rotate(-2.5deg);
            transform: translate(0, 0) rotate(-2.5deg);
}
41%, 49%, 81%, 100% {
    -webkit-transform: translate(0, 0) rotate(0);
            transform: translate(0, 0) rotate(0);
}
}
@keyframes shake {
0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    -webkit-transform: translateX(0);
            transform: translateX(0);
}
4% {
    -webkit-transform: translateX(-10);
            transform: translateX(-10);
}
8% {
    -webkit-transform: translateX(10);
            transform: translateX(10);
}
13.2% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    -webkit-transform: translateX(0);
            transform: translateX(0);
}
16% {
    -webkit-transform: translateY(-15px);
            transform: translateY(-15px);
}
20% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
}
24% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
}
32% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
}
40% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
}
50% {
    -webkit-transform: translate(0, 0) rotate(3.5deg);
            transform: translate(0, 0) rotate(3.5deg);
}
51% {
    -webkit-transform: translate(0, 0) rotate(-0.5deg);
            transform: translate(0, 0) rotate(-0.5deg);
}
52% {
    -webkit-transform: translate(0, 0) rotate(-2.5deg);
            transform: translate(0, 0) rotate(-2.5deg);
}
53% {
    -webkit-transform: translate(0, 0) rotate(2.5deg);
            transform: translate(0, 0) rotate(2.5deg);
}
54% {
    -webkit-transform: translate(0, 0) rotate(3.5deg);
            transform: translate(0, 0) rotate(3.5deg);
}
55% {
    -webkit-transform: translate(0, 0) rotate(-0.5deg);
            transform: translate(0, 0) rotate(-0.5deg);
}
56% {
    -webkit-transform: translate(0, 0) rotate(-2.5deg);
            transform: translate(0, 0) rotate(-2.5deg);
}
57% {
    -webkit-transform: translate(0, 0) rotate(2.5deg);
            transform: translate(0, 0) rotate(2.5deg);
}
58% {
    -webkit-transform: translate(0, 0) rotate(3.5deg);
            transform: translate(0, 0) rotate(3.5deg);
}
59% {
    -webkit-transform: translate(0, 0) rotate(-0.5deg);
            transform: translate(0, 0) rotate(-0.5deg);
}
60% {
    -webkit-transform: translate(0, 0) rotate(-2.5deg);
            transform: translate(0, 0) rotate(-2.5deg);
}
61% {
    -webkit-transform: translate(0, 0) rotate(2.5deg);
            transform: translate(0, 0) rotate(2.5deg);
}
62% {
    -webkit-transform: translate(0, 0) rotate(3.5deg);
            transform: translate(0, 0) rotate(3.5deg);
}
63% {
    -webkit-transform: translate(0, 0) rotate(-0.5deg);
            transform: translate(0, 0) rotate(-0.5deg);
}
64% {
    -webkit-transform: translate(0, 0) rotate(-2.5deg);
            transform: translate(0, 0) rotate(-2.5deg);
}
65% {
    -webkit-transform: translate(0, 0) rotate(2.5deg);
            transform: translate(0, 0) rotate(2.5deg);
}
66% {
    -webkit-transform: translate(0, 0) rotate(3.5deg);
            transform: translate(0, 0) rotate(3.5deg);
}
67% {
    -webkit-transform: translate(0, 0) rotate(-0.5deg);
            transform: translate(0, 0) rotate(-0.5deg);
}
68% {
    -webkit-transform: translate(0, 0) rotate(-2.5deg);
            transform: translate(0, 0) rotate(-2.5deg);
}
69% {
    -webkit-transform: translate(0, 0) rotate(2.5deg);
            transform: translate(0, 0) rotate(2.5deg);
}
70% {
    -webkit-transform: translate(0, 0) rotate(3.5deg);
            transform: translate(0, 0) rotate(3.5deg);
}
71% {
    -webkit-transform: translate(0, 0) rotate(-0.5deg);
            transform: translate(0, 0) rotate(-0.5deg);
}
72% {
    -webkit-transform: translate(0, 0) rotate(-2.5deg);
            transform: translate(0, 0) rotate(-2.5deg);
}
73% {
    -webkit-transform: translate(0, 0) rotate(2.5deg);
            transform: translate(0, 0) rotate(2.5deg);
}
74% {
    -webkit-transform: translate(0, 0) rotate(3.5deg);
            transform: translate(0, 0) rotate(3.5deg);
}
75% {
    -webkit-transform: translate(0, 0) rotate(-0.5deg);
            transform: translate(0, 0) rotate(-0.5deg);
}
76% {
    -webkit-transform: translate(0, 0) rotate(-2.5deg);
            transform: translate(0, 0) rotate(-2.5deg);
}
77% {
    -webkit-transform: translate(0, 0) rotate(2.5deg);
            transform: translate(0, 0) rotate(2.5deg);
}
78% {
    -webkit-transform: translate(0, 0) rotate(3.5deg);
            transform: translate(0, 0) rotate(3.5deg);
}
79% {
    -webkit-transform: translate(0, 0) rotate(-0.5deg);
            transform: translate(0, 0) rotate(-0.5deg);
}
80% {
    -webkit-transform: translate(0, 0) rotate(-2.5deg);
            transform: translate(0, 0) rotate(-2.5deg);
}
41%, 49%, 81%, 100% {
    -webkit-transform: translate(0, 0) rotate(0);
            transform: translate(0, 0) rotate(0);
}
}


/* FORMS */

.wpcf7-recaptcha > div {width: 100%!important;}

/* mete la clase .common-form al contenedor del formulario para que le afecten los estilos estandar */

.common-form {
    width: 330px;
    margin: 0 auto;
    max-width: 100%;
}

.common-form form, .common-form form > div {
    padding: 15px 0;
}

.common-form div.wpcf7-response-output {
    margin: 2em .5em 1em;
    padding: .2em 1em;
}

.common-form label {
    font-size: inherit;
    padding-bottom: 5px;
}

.common-form .wpcf7-form-control-wrap {
    width: 100%;
    display: inline-block;
}

.common-form input[type="text"], .common-form input[type="email"],
.common-form textarea, .common-form select {
    height: auto; /* fixing bootstrap styles */
    margin-bottom: 0; /* fixing bootstrap styles */
    line-height: normal; /* fixing bootstrap styles */
    width: 100%;
    max-width: 100%;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 6px;
    min-height: 35px;
    display: block;
    font-size: inherit;
    font-weight: normal;
    font-family: inherit;
    border: 1px solid #ccc;
}

/* poner de nombra 'selector' al shortcode del input-select en el formulario para que aparezca la flecha (el nombre se lo pone de clase al control-wrap) */
.common-form .wpcf7-form-control-wrap.selector:after {
    content: "\e971";
    font-family: 'mirai-icofonts';
    pointer-events: none;
    position: absolute;
    right: 8px;
    top: 50%;
    margin-top: -4px;
    font-size: 9px;
    color: inherit;
    line-height: 1;
}

.common-form .captcha input {
    width: 100px;
}

.common-form .captcha {
    padding-left: 15px;
    width: auto;
}

.common-form img.wpcf7-captchac {
    vertical-align: top;
}

.common-form .wpcf7-form-control-wrap.acceptance-700 {
    width: auto;
}

.common-form .accept-privacity a, .common-form div.wpcf7-validation-errors {
    font-size: .8em;
}

.common-form span.wpcf7-not-valid-tip {
    font-size: 12px;
    margin-top: 5px;
}

/* BACK TO TOP */

#back-top {
    background-color: #9a9a9a;
}

/* BACKGROUND IMAGE */

.bg-img {
    position: absolute;
    object-fit: cover;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
}

.bg-blue {
    background: #2D307A;
}

.bg-button {
    background: rgba(0,0,0,.3);
    padding: 15px 50px 0;
}

/* BUTTONS */
/* utiliza la clase .primary-btn para aquellos botones que quieras que se comporten como el de reservar, y .secundary-btn para los de tipo ofertas */

/* primary */

.offers-detail-wrapper .offer-calendar-wrapper .offer-button, .rooms-detail-wrapper .room-calendar-wrapper .room-button, .landing-booking-button,
.offers-detail-wrapper a.booking_mobile, .rooms-detail-wrapper a.booking_mobile, .all-calendar input[type="button"], .primary-btn {
    border: none; /* fixing booking button in details pages */
    border-radius: 0; /* fixing buttons in bookingstep */
    -webkit-box-shadow: none;
    box-shadow: none; /* fixing buttons in bookingstep */
    text-shadow: none; /* fixing buttons in bookingstep */
    text-transform: uppercase;
    letter-spacing: 0.1em;
    background: #3977c5;
    color: #fff;
    padding: 12px 25px;
    -webkit-transition: all .2s ease-out;
    transition: all .2s ease-out;
}

.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: #29558A;
    color: #fff;
}

.primary-btn, .secundary-btn {
    display: inline-block;
}

.secundary-btn:hover:before {
    top: -8px;
    right: -8px;
    bottom: -8px;
    left: -8px;
    opacity: 1;
}

.secundary-btn:before {
    pointer-events: none;
    content: '';
    position: absolute;
    border: #e1e1e1 solid 4px;
    top: -16px;
    right: -16px;
    bottom: -16px;
    left: -16px;
    opacity: 0;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: top, right, bottom, left;
    transition-property: top, right, bottom, left;
}
.secundary-btn {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    position: relative;
}

.bb {
    position: relative;
    top: 22px;
}

/* secundary */

.offers-listing-wrapper .offer .offer-button, .rooms-detail-wrapper .offer .offer-button, .mapa .formRuta input.calculaRuta, #respond .form-submit #submit,
.wpcf7 .wpcf7-form input.wpcf7-submit, .offers-mashup .more-info-link, .widget_search form input[type="submit"],
.rooms-listing-wrapper .room-box .room-book a, .mirai_opiniones #xdhsReviewSummaryContent-XdHs #hsRating .mirai_btReview,
.secundary-btn {
    background: #FFFFFF; /* fixing offers mashup button */
    border-radius: 0; /* fixing offers mashup button */
    text-shadow: none; /* fixing offers mashup button */
    -webkit-transition: all .2s ease-out;
    transition: all .2s ease-out;
    color: #2C2C2C;
    padding: 25px 40px;
    text-transform: capitalize;
    box-shadow: 0 13px 17px 0 rgba(0,0,0,0.18);
}



.white-text .secundary-btn, .white-text .offers-mashup .more-info-link {
    color: #222;
    box-shadow: 0 13px 17px 0 rgba(0,0,0,0.18);
}
.offers-listing-wrapper .offer .offer-button:hover, .rooms-detail-wrapper .offer .offer-button:hover, .mapa .formRuta input.calculaRuta:hover, #respond .form-submit #submit:hover,
.wpcf7 .wpcf7-form input.wpcf7-submit:hover, .offers-mashup .more-info-link:hover, .widget_search form input[type="submit"]:hover,
.rooms-listing-wrapper .room-box .room-book a:hover, .mirai_opiniones #xdhsReviewSummaryContent-XdHs #hsRating .mirai_btReview:hover,
.secundary-btn:hover {
    text-decoration: none;
    background: rgba(178, 178, 178, 0.1);
    color: #575757;
}

.white-text .secundary-btn:hover, .white-text .offers-mashup .more-info-link:hover {
    color: #fff;
    background: rgba(232, 232, 232, 0.1);
}

/* disabled buttons */

#main .offers-detail-wrapper .offer-calendar-wrapper .offer-button:disabled, #main .rooms-detail-wrapper .room-calendar-wrapper .room-button:disabled,
.wpcf7 .wpcf7-form input.wpcf7-submit:disabled, .wpcf7 .wpcf7-form input.wpcf7-submit:disabled:hover, .all-calendar input[type="button"]:disabled {
    background-color: #b9b9b9!important;
    border-radius: 0;
    -webkit-border-radius: 0;
}

/* fixing padding for details submit button */
.offers-detail-wrapper .offer-calendar-wrapper .offer-button, .rooms-detail-wrapper .room-calendar-wrapper .room-button {padding: 0;}


/*---------------------------------------------------------------------------*/
/*----------------------------- ENGINE CALENDAR -----------------------------*/
/*---------------------------------------------------------------------------*/


/* FIXING */

.offers-detail-wrapper .calendar-legend-offer-day a {border: 0!important;}
.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,
.offers-detail-wrapper .offer-calendar-wrapper .offer-date .ui-datepicker-inline ._checkin-date a, .rooms-detail-wrapper .room-calendar-wrapper .room-date .ui-datepicker-inline ._checkin-date a,
.offers-detail-wrapper .offer-calendar-wrapper .offer-date .ui-datepicker-inline ._checkout-date a, .rooms-detail-wrapper .room-calendar-wrapper .room-date .ui-datepicker-inline ._checkout-date a {border-radius: 0;}

/* wrapper in detail pages */
.offers-detail-wrapper .offer-calendar-wrapper .offer-date .ui-datepicker-inline, .rooms-detail-wrapper .room-calendar-wrapper .room-date .ui-datepicker-inline {
    padding: 10px;
}

/* months */
.ui-datepicker-multi .ui-datepicker-group {
    padding: 1px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

/* header */
.ui-datepicker .ui-datepicker-header {
    border: 0;
    border-radius: 0;
    padding: 6px!important;
}

/* month - year */
.ui-datepicker .ui-datepicker-title {
    font-size: 1em;
    font-weight: bold;
    margin: 0!important;
}

/* color name weekdays */
.ui-datepicker th {
    color: #999!important;
}

/* color name weekend */
.ui-datepicker th.ui-datepicker-week-end {
    color: #444!important;
}

/* days (number) */

.ui-datepicker  .ui-datepicker-calendar td.ui-datepicker-other-month {border: 0;}
.ui-datepicker .ui-datepicker-calendar td {padding: 0; border: 1px solid #e4e7e7;}

.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, #noDispo .ui-datepicker td span, #noDispo .ui-datepicker td a {
    border: 0!important;
    background: transparent!important;
    padding: 6px;
    text-align: center;
}

/* weekend (number) */
.ui-datepicker-week-end .ui-state-default, .ui-datepicker-week-end .ui-widget-content .ui-state-default, .ui-datepicker-week-end .ui-widget-header .ui-state-default {
    background: transparent!important;
}

/* arrows */

.ui-widget-header .ui-icon, .ui-widget-content .ui-icon, .ui-icon, #main #noDispo .ui-widget-header .ui-icon {display: none!important;}
.ui-dialog-titlebar-close .ui-icon-closethick {display: block!important;}

.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
    border: 1px solid #e4e7e7!important;
    top: 50%!important;
    padding: 0.3em 0.7em;
    text-decoration: none;
    width: auto!important;
    height: auto!important;
    border-radius: 3px;
    line-height: 1;
    font-size: 1em;
    margin-top: -.8em;
    font-weight: normal;
    color: #82888a;
}

.ui-datepicker .ui-datepicker-prev:hover, .ui-datepicker .ui-datepicker-next:hover {cursor: pointer;}

.ui-datepicker .ui-datepicker-prev {left: 7px!important;}
.ui-datepicker .ui-datepicker-next {right: 7px!important;}

.ui-datepicker .ui-datepicker-next:after, .ui-datepicker .ui-datepicker-prev:after {
    color: inherit;
    cursor: pointer;
    font-family: 'mirai-icofonts';
    line-height: 1;
    font-size: inherit;
    display: block;
}

.ui-datepicker .ui-datepicker-prev:after {content: "\eb28";}
.ui-datepicker .ui-datepicker-next:after {content: "\eb25";}

/* 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;
}

.all-calendar {box-shadow: none; border: 1px solid #e4e7e7;}
.all-calendar .ui-datepicker .ui-datepicker-title {text-transform: none; font-weight: bold!important;}
.all-calendar .ui-datepicker thead th {font-weight: normal; font-size: 0.9em;}

/* offers 4 and rooms 5 templates */

.detail-services-dates {max-width: 800px;margin: 0 auto;}
.offer-detail-4 .offer-dates, .offer-detail-4 .room-offer, .rooms-detail-5 .room-dates, .rooms-detail-5 .room-offer .offer-list {background: transparent;}
.offer-detail-4 .offer-dates, .rooms-detail-5 .room-dates {padding-right: 0;}
@media (max-width: 979px) { .detail-description, .offer-detail-4 .offer-dates, .rooms-detail-5 .room-dates {padding-left: 0; padding-right: 0;} }


/* ------------------------------ CHANGE THESE COLORS & BACKGROUNDS ------------------------------ */


/* 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: #D1E1F5!important;
    color: #000;
    font-weight: normal!important;
    text-decoration: none;
}

/* 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: #3978C5!important;
    color: #FFF;
    font-weight: normal!important;
    text-decoration: none;
}

/* hover arrows (engine, details and no dispo calendars) */
.ui-datepicker .ui-datepicker-prev.ui-state-hover, .ui-datepicker .ui-datepicker-next.ui-state-hover {
    border: 1px solid #c4c4c4!important;
    background: transparent!important;
}

/* ----------------------------------------------------------------------------------------------- */


/*---------------------------------------------------------------------------*/
/*------------------------------ STRUCTURE ----------------------------------*/
/*---------------------------------------------------------------------------*/


#header .content, #main .content, #footer .content {position: relative}

/* HEADER */

#header {}

#header .content {}

#pre-header, #header .qts-lang-menu, #header .qts-lang-menu option {
    background-color: transparent;
}

/* ------- */

#pre-header {
    padding: 10px 0 0;
}

#pre-header * {
    color: #000;
    vertical-align: bottom;;
}

.contact-header {
    font-size: 13px;
    margin: auto;
}

.contact-header > div:last-child {
    padding-right: 0;
    padding-left: 6px;
}

.contact-header > li, .contact-header > div {
    padding: 0 8px 0 15px;
    position: relative;
}

.contact-header > li:before, .contact-header > div:before {
    content: '';
    border-left: 5px dotted #a7a7a7;
    height: 8px;
    position: absolute;
    top: 7px;
    left: 0;
    font-size: 2em;
}


.contact-header > li:first-child, .contact-header > div:first-child {
    padding-left: 0;
}

.contact-header > li:first-child:before, .contact-header > div:first-child:before {
    display: none;
}

.contact-header i {
    display: inline-block;
    margin-right: 7px;
}

#pre-header .socialmedia a {
    font-size: 14px;
    padding: 2px;
}

#pre-header .socialmedia li {
    padding: 0 3px;
}

#fixed-header {
    padding: 10px 0;
    position: absolute;
    left: 0;
    right: 0;
    z-index: 600;
    -webkit-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out;
}

#fixed-header[data-transparent="false"] {
    background-color: white;
}

#fixed-header[data-transparent="true"] {
    background-color: transparent;
}

#fixed-header[data-transparent="true"]:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 120px;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.3)),to(rgba(0,0,0,0)));
    background: linear-gradient(to bottom, rgba(0,0,0,0.3) 0%,rgba(0,0,0,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

#fixed-header.offset-active {
    position: fixed;
    top: 0;
    -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

#fixed-header.offset-active[data-transparent="true"]:before {
    display: none;
}

#fixed-header.offset-active[data-transparent="true"] {
    background-color: white;
}

#header #navigationweb {
     -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
}

/* booking modal button */

.cat-room-detail .booking-modal-btn, .cat-offer-detail .booking-modal-btn, .cat-booking .booking-modal-btn, .cat-offer-detail .booking-modal-btn {
    display: none;
}

.booking-modal-btn {
    box-sizing: border-box;
    height: 50px;
    overflow: hidden;
    padding: 9px;
    width: 50px;
}

.booking-modal-btn:before {
    content: '\e9e2';
    font-family: 'mirai-icofonts';
    font-size: 1.9em;
    padding-right: 30px;
}

#header .modal-engine-wrapper.offset-active {
    width: auto;
    margin-left: 15px;
    opacity: 1;
}

#header .modal-engine-wrapper {
    overflow: hidden;
    margin-left: 0;
    width: 0;
    opacity: 0;
    -webkit-transition: all .3s ease-out;
    transition: all .3s ease-out;
}

#engine-modal .mi-be-datepicker-select .DateRangePickerInput > *:last-child, #engine-modal .mi-be .mi-be-promo-field label {
    border: none;
}

/* logo */

#logo {
    height: auto;
    line-height: 1;
    margin: 0;
    padding: 0;
    margin-top: -30px;
    transition: margin .3s ease-out;
    -webkit-transition: margin .3s ease-out;
}

.offset-active #logo {
    margin-top: 0px;
}

/* qtranslate */

.widget_qtranslate {
    text-align: right;
    position: relative;
    padding-left: 0px;
    font-size: 14px;
}

/*.widget_qtranslate:after, #header .widget_qtranslate:before {
    content: "\e971";
    font-family: 'mirai-icofonts';
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -4px;
    font-size: 9px;
}

#header .widget_qtranslate:before {
    content: '\e9a4';
    right: auto;
    left: 2px;
    font-size: 16px;
    margin-top: -8px;
}

.widget_qtranslate select {
    border: none;
    padding-right: 14px;
    padding-top: 0;
    padding-bottom: 1px;
    line-height: normal;
    height: auto;
}*/

.widget_qtranslate select option {
    padding: 6px 10px !important;
}

.widget_qtranslate ul {
    text-transform: uppercase;
    line-height: 1;
}

.widget_qtranslate ul li {
    float: left;
    border-right: 1px solid;
    padding: 0 8px;
    margin: 0;
}

.widget_qtranslate ul li:last-child {
    padding-right: 0;
    border-right: none;
}

.widget_qtranslate ul li a {
    display: block;
    font-weight: 300;
}

#container .widget_qtranslate ul li.active a, #container .widget_qtranslate a:hover {
    color: #000;
    text-decoration: none;
    font-weight: bolder;
}

.widget_qtranslate ul li.active a {cursor: default;}

/* menu web */

ul#menu_web {
    text-transform: uppercase;
}

ul#menu_web > li {
    font-size: 18px;
    display: inline-block;
    position: relative;
    text-transform: capitalize;
    margin-left: 20px;
}

ul#menu_web > li:first-child {
    margin-left: 0;
}

ul#menu_web > li > a {
    position: relative;
    padding: 10px 0;
    color: rgba(0,0,0,.5);
    font-weight: bold;
}

ul#menu_web > li > a:hover, ul#menu_web > li.menu-item-has-children:hover > a, ul#menu_web > li.current-menu-item > a,
ul#menu_web > li.current-menu-ancestor > a, ul#menu_web > li.current-menu-parent > a {
    color: #000;
}

/* underline hover and active */
ul#menu_web > li > a:before {
    content: '';
    display: block;
    position: absolute;
    border-bottom: 1px solid;
    bottom: 8px;
    left: 0;
    width: 0;
}

ul#menu_web > li > a:hover:before {
    -webkit-transition: all .3s ease-out;
    transition: all .3s ease-out;
}

ul#menu_web > li > a:hover:before, ul#menu_web > li.current-menu-item > a:before, ul#menu_web > li.current-menu-parent > a:before {
    width: 100%;
}

ul#menu_web li.menu-item-has-children > a:after {
    content: "\e96d";
    display: inline-block;
    font-family: 'mirai-icofonts';
    font-size: 0.4em;
    margin-left: 5px;
    vertical-align: middle;
}

ul#menu_web .sub-menu li {
    display: block;
}

.menu li {
    display: inline-block;
}

#menu_aux2 {
    padding-right: 8px;
}

#menu_aux2 li:after {
    content: '\eb1a';
    font-family: 'mirai-icofonts'!important;
    color: #a7a7a7;
    padding-right: 5px;
    padding-left: 5px;
    font-size: .35em;
    top: -1px;
    position: relative;
}

#menu_aux2 li:last-child:after {
    content: none!important;
}

/* pon a los elementos del menu que no tengan pagina propia la clase .menu-not-active */

ul#menu_web .menu-not-active > a {
    pointer-events: none;
    cursor: default;
}

ul#menu_web li.menu-not-active > ul > .duplicated-menu-item {
   display: none;
}

/* sub-menu */

ul#menu_web > li > ul.sub-menu {z-index: 800;}

ul#menu_web > li > ul.sub-menu {
    background: #535353;
}

ul#menu_web > li > ul.sub-menu li > a {
    color: #fff;
    padding: 20px;
    white-space: nowrap;
}

ul#menu_web > li ul.sub-menu li > a:hover, ul#menu_web > li ul.sub-menu li.current-menu-item > a {
    color: #ffffff;
    background-color: #7b7b7b;
}

/* FOOTER */

/* hidden old contact row and widget translate */
.home #footer .content > address.address_phone, #footer .content > .widget_qtranslate {display: none!important;}

.organization.hotelschema .address {
    display: inherit;
}

#footer {
    font-size: 14px;
}

#footer p {
    margin-bottom: 0;
}

.prefooter {
    background-color: #eee;
    padding: 30px 0;
}

.mainfooter {
    background-color: #2D307A;
    padding: 60px 0;
}

.mainfooter, .mainfooter a {
    color: #fff;
}

.mainfooter a:hover {
}

.postfooter {
    padding: 20px 0;
}

/* postfooter background */
.postfooter {
    background-color: #252525;
}

.postfooter, .postfooter a {
    color: #fff;
}

/* logos footer */

.logos {
    text-align: center;
}

.logos li {
    display: inline-block;
    margin-right: 20px;
}

.logos li:last-child {
    margin-right: 0;
}

/* newsletter */

.newsletter > * {
    display: inline-block;
    vertical-align: middle;
}

.newsletter > div {
    padding: 0 10px 0 0;
}

.newsletter .mi-title2 {
    font-weight: bold;
    font-size: 1.4em;
}

/* footer titles */

.hotelschema .name, #footer .mi-title {
    display: inline-block;
    text-transform: uppercase;
    font-weight: bold;
    margin-bottom: 20px;
    /*font-family: 'Playfair Display', serif;*/
}

.organization.hotelschema .name{
    margin-bottom: 0;
}




/* hotelschema - vcard */

.hotelschema > br {display: none;}
.hotelschema .phone-label, .hotelschema .fax-label {display: none;}

.hotelschema {
    line-height: 1.3em;
}

.hotelschema .address, .hotelschema .tel, .hotelschema .fax, .hotelschema .mail {
    display: inline-block;
}

.hotelschema .tel:before, .hotelschema .fax:before, .hotelschema .mail:before {
    vertical-align: middle;
    margin-right: 6px;
    display: inline-block;
    font-family: 'mirai-icofonts';
}

.hotelschema .tel:before {content: '\e9b3';}
.hotelschema .fax:before {content: '\e9bd';}
.hotelschema .mail:before {content: '\e9bf';}

/* featured links */

.featured-links li, .featured-links .menu li {
    display: block;
    margin-bottom: 7px;
}

/* social media */

#footer .socialmedia a {
    background-color: #fff;
    border-radius: 100%;
    font-weight: normal;
    font-size: 20px;
    padding: 10px;
    -webkit-transition: all .2s ease-out;
    transition: all .2s ease-out;
    margin-right: 10px;
    margin-bottom: 10px;
    color: #2d307a;
}

#footer .socialmedia a:hover {
    background: #252525;
    color: #fff;
}

.socialmedia {
    margin-top: 0px;
}

/* logo footer */

.logo-footer {
    text-align: center;
    padding-top: 50px;
}

/* menu postfooter (legal and contact) */

.postfooter .menu li {
    padding-left: 15px;
}

.postfooter .menu li:first-child {
    padding-left: 0;
}

/* view/cancel link */

.icon-lock {
    background: none;
    display: inline-block;
    width: auto;
    height: auto;
    line-height: 1;
}

a.tracking-link {
}

/* developed by mirai */

#developed-wrapper a {
    text-transform: lowercase;
    color: #ff001f;
    font-weight: bold;
}

/* MAIN ELEMENTS */

#content-header {
    position: relative;
}

#content-header > img {
    width: 100%;
    object-fit: cover;
    /*max-height: 600px;
    min-height: 450px;*/
}

.picbox {
    min-height: 300px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    padding: 50px 0;
}

.engine-wrapper {
    pointer-events: none;
    padding-top: 30px;
    padding-bottom: 30px;
    position: relative;
    width: 100%;
    -webkit-transition: 2s 1s;
    transition: 2s 1s;
}

.engine-wrapper-absolute {
    position: absolute;
    bottom: 10%;
}

.engine-wrapper .mi-be, .engine-wrapper a, .engine-wrapper button, .engine-wrapper *[role="button"] {
    pointer-events: all;
}

.box-slide {
    width: 740px;
    margin: 0px auto;
    padding-top: 5px;
    padding-bottom: 10px;
    background-color: rgba(44, 50, 118, .6);
}


.box-img:before {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: calc(100% - 55px);
    height: calc(100% - 55px);
    border: 1px solid #fff;
    /* box-sizing: border-box; */
    z-index: 1;
    pointer-events: none;
    box-shadow: rgba(103, 105, 157, 0.2) 0px 0 20px;
    transition: 1s;
}

.video-home {
    width: 100vw;
    height: 55.25vw;
    min-height: 100vh;
    min-width: 177.77vh;
    position: absolute;
    top: 52%;
    left: 50%;
    transform: translate(-50%, -50%) scale(1.1);
    pointer-events: none;
}


/* Advantages row */

.advantages-row .mi-title span, .advantages-row li span {
    display: block;
}

.advantages-row .mi-title span:first-child {
    font-size: 30px;
    text-transform: uppercase;
}

.advantages-row li span:first-of-type {
    text-transform: uppercase;
}

.advantages-row .mi-title {
    position: relative;
    padding-right: 50px;
    text-align: center;
}

.advantages-row ul {
    display: table;
}

.advantages-row li  {
    position: relative;
    padding-left: 50px;
    display: table-cell;
    float: none;
    vertical-align: middle;
}

.advantages-row li i, .advantages-row .mi-title i {
    display: block;
}

.advantages-row li i, .advantages-row .mi-title i {
    position: absolute;
    top: 50%;
    font-size: 30px;
    margin-top: -15px; /* poner la mitad del font-size */
    left: 10px;
}

.advantages-row .mi-title i {
    left: auto;
    right: 5px;
}

/* small screens */
@media (min-width: 768px) and (max-width: 979px) {
    .advantages-row li  {
        padding: 0;
        text-align: center;
        vertical-align: top;
    }
    .advantages-row li i {
        position: static;
        display: block;
        padding-bottom: 10px;
        font-size: 40px;
        margin-top: 0;
    }
    .advantages-row .mi-title {
        padding: 20px 0 0;
    }
    .advantages-row .mi-title i {
        display: none;
    }
    #header #navigationweb {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-align: center;
        -webkit-box-align: center;
        align-items: center;
    }
    #logo {
        margin-top: 0px;
    }
    
    
}

/* icons list */

.icons-list i {
    font-size: 50px;
    display: block;
    margin-bottom: 10px;
    color: #fff;
}

.icons-list li {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.icons-list p {
    font-size: 21px;
    font-weight: bold;
}


/*---------------------------------------------------------------------------*/
/*--------------------------------- PAGES -----------------------------------*/
/*---------------------------------------------------------------------------*/


/* HOME */

/* video slidehome */

.home #videowrap video {
    position: absolute;
    top: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: 0;
}

/* go to anchor */

#content-header .go-to-anchor {
    display: inline-block;
    vertical-align: top;
    color: #FFFFFF!important;
    text-shadow: 0 0 15px rgba(0, 0, 0, .5);
}

#content-header .go-to-anchor:hover {
    text-decoration: none;
}

#content-header .go-to-anchor i {
    display: block;
    padding: 10px;
    -webkit-transition: all .2s linear;
    transition: all .2s linear;
    font-size: 30px;
    line-height: 1;
}

#content-header .go-to-anchor:hover i {
    padding: 17px 10px 3px;
}

/* offers mashup */

.offers-mashup {max-width: 100%;}
.offers-mashup dl dd, .offers-mashup dl span {display: block;}
#carousel-no-pictures-offers {padding: 100px 0px;}

.offers-mashup dl dt, .offers-mashup dl span, .offers-mashup dd {
    min-height: 2em;
}

.offers-slide .slide .no-offers {
   padding: 20px 15px;
   font-size: 30px;
   max-width: 600px;
   margin: 0 auto;
}

.offers-slide .slide .no-offers:before {
    font-family: 'mirai-icofonts';
    content: '\ea75';
    font-size: 50px;
    line-height: 1;
    margin-bottom: 10px;
    display: block;
}

.starter-offers .offers-mashup .more-info-link {
    margin-top: 50px;
}

.starter-offers .offers-mashup dl dt {
    margin-bottom: 30px;
}

.starter-offers .offers-mashup .carousel-inner {
    width: 650px;
    max-width: 100%;
    margin: 0 auto;
    padding: 0 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

/* service list */

#list-services ul li {
    list-style-position: outside;
    list-style-type: disc;
    margin-bottom: 20px;
    text-align: left;
    padding: 0 20px 0 0;
}

.arrows {
    top: 20px;
}

@media (max-width: 768px) {
    .service-list li {width: 100%;}
}

@media (max-width: 979px) {
    .service-list li {width: 25%;}
}

.ie8 .service-list li, .ie9 .service-list li {
    display: inline-table!important;
    float: none;
}

/* LOCATION */

/* ROOMS */

/* SERVICES */

/* PHOTOS */

/* OFFERS & ROOMS TEMPLATES */

body.cat-rooms .rooms-listing-wrapper, body.cat-room-detail .rooms-detail-wrapper, body.cat-offers .offers-listing-wrapper, body.cat-offer-detail .offers-detail-wrapper {font-size: 14px;}
/* align text center when no offers */
.offers-listing-wrapper.no-offers {text-align: center;}
.offer-discount span[class*="span"] {display: inline; width: auto; float: none;}
#main .go-to-calendar:after, .rooms-detail-wrapper .detail-links li a:after {content: '\e965';}
#main .go-to-calendar:hover:after, .rooms-detail-wrapper .detail-links li a:hover:after {content: '\e965'; -webkit-transform: translateY(0.3em); transform: translateY(0.3em);}
#main .go-to-calendar {padding: 5px; width: auto; display: inline-block; background: transparent; color: inherit;}

.offers-listing-wrapper {
    padding: 80px 0px;
}

.offers-listing-wrapper .offers-listing {padding-top: 40px;}

/* template 2 offers & rooms */

.room-box .room-detail .price-box .min-price span, .rooms-detail-wrapper .room-box-image .room-box-detail .box-price span {margin: 0;}

.room-box .room-detail .price-box .min-price, .rooms-detail-wrapper .room-box-image .room-box-detail .box-price {
    background-color: #9a9a9a;
    height: auto;
}

.room-box .room-detail .room-description {
    font-size: 1.3em;
}

.rooms-listing-wrapper .common-services li {
    font-size: 1.3em;
}

.rooms-listing-wrapper .common-services li{font-size: 1.3em;}

.offer .offer-deco {
    background-color: #9a9a9a;
}

.offers-listing-wrapper.offers-listing-2 .offer .offer-intro, .offers-listing-wrapper.offers-listing-2 .offer .offer-date-range, .offers-detail-wrapper.offers-listing-2 .offer-info-wrapper {
    background-color: #8e6061;
}

.offer .offer-box, .offers-detail-wrapper .offer-features-wrapper .offer-boxes-wrapper .offer-box.main-box {
    color: #252525;
}

/* template 4 detail & rooms detail 5 */

.offer-detail-4, .rooms-detail-5 {padding-bottom: 80px;}
.rooms-detail-5 .only-one-photo > img {width: 100%;}
.offer-detail-4 .offers-room-detail, .room-detail-5 .offer-room {background: #f3f3f3;}
.room-detail-5 .offer-room {font-size: 14px;}
.offer-detail-4 .offers-room-detail h2 {padding: 0;}
.offer-detail-4 .offers-room-detail .room-offer {padding: 30px 0 0;}
.room-detail-5 .offer-discount {font-size: 1em!important;}

/* template 5 offers - gradient boxes */

.offers-listing .offer .offer-link-5, .offers-detail-wrapper.offer-detail-5 .offer-wrapper {
    background: #565656;
}

/* cada 3 cajas cambia ligeramente el tono del background */
.offers-listing .offer:nth-child(6n+4) .offer-link-5,
.offers-listing .offer:nth-child(6n+5) .offer-link-5,
.offers-listing .offer:nth-child(6n+6) .offer-link-5 {
    /* background: #ca9b4c; */  /*descomenta esta linea y borra las dos inferiores si quieres un color totalmente diferente*/
    -webkit-filter: hue-rotate(145deg) saturate(1.3);
    filter: hue-rotate(145deg) saturate(1.3);
}

/* COOKIES */

div#cookies-wrapper-content {
    padding: 80px 0;
}

#cookies-wrapper-content ul {
    overflow: hidden;
    padding: 20px 0;
}

#cookies-wrapper-content ul li {
    float: left;
    margin-bottom: 14px;
    width: 33%;
}

#cookies-wrapper-content h1, #cookies-wrapper-content h2 {
    margin: 20px 0;
}

/* LEGAL */

/* REVIEWS */

#cuadroOpiniones {
    padding: 40px 0 100px;
}

#cuadroOpiniones p {
    margin-bottom: 0!important;
}

#cuadroOpiniones .paging {
    padding: 20px 0;
}

#cuadroOpiniones .paging span a {
    border: none;
    background: none;
}

#cuadroOpiniones .paging span.current a, #cuadroOpiniones .paging span.current a:hover, #cuadroOpiniones .paging span.current a, #cuadroOpiniones .paging span.current a:hover {
    font-size: inherit;
    cursor: default;
}

#cuadroOpiniones div.hssurveys_full {
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

#cuadroOpiniones div.hssurveys_full > div.hssurveys_full {
    padding: 0;
}

#cuadroOpiniones div.hssurveys_full > div.hssurveys_full > div {
    margin-bottom: 50px;
    background: #f3f3f3;
    padding: 30px;
}

#cuadroOpiniones div.hssurveys_full div.note, #cuadroOpiniones div.hssurveys_full .comments {
    float: none;
    width: 100%;
}

#cuadroOpiniones div.hssurveys_full .comments {
    margin: 10px 0 0;
}

#cuadroOpiniones div.hssurveys_full div.note {
    background-image: none;
    font-size: 26px;
    height: auto;
    width: auto;
    display: inline-block;
    text-align: left;
    padding: 0 0 0 45px;
    position: relative;
}

#cuadroOpiniones 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;
}

#cuadroOpiniones div.hssurveys_full .ratingBarUser {
    margin-top: 5px;
    margin-left: 0;
}

#cuadroOpiniones div.hssurveys_full .comments p.commentsPerson {
    font-size: 20px!important;
    font-weight: normal;
}

#cuadroOpiniones div.hssurveys_full .comments p.commentsPerson span.date {
    font-size: 14px;
    color: #8e8e8e;
}

div.hssurveys_full ul.questions li {
    padding: 0 0 10px;
}

div.hssurveys_full ul.questions li:last-child {
    padding: 0;
}

#cuadroOpiniones div.hssurveys_full ul.questions.like li p.question {
}

#cuadroOpiniones div.hssurveys_full ul.questions.like li .answer {
    width: auto;
    overflow: hidden;
}

#cuadroOpiniones div.hssurveys_full p.more {
    padding: 10px 0;
}

#cuadroOpiniones 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';
}

#cuadroOpiniones div.hssurveys_full ul.listSubject {
    float: none;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0;
}

#cuadroOpiniones div.hssurveys_full ul.listSubject li span.subject, #cuadroOpiniones 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;
}

#cuadroOpiniones div.hssurveys_full ul.listSubject li span.note {
    float: none;
    display: inline-block;
    background: none;
    font-size: 16px;
    margin-right: 0;
    color: #76a71d;
    width: auto;
    text-align: left;
    border-radius: 2px;
    height: auto;
    line-height: normal;
    padding: 2px 0;
}

#cuadroOpiniones .ratingBarSubject {
    float: none;
    display: inline-block;
    margin-left: 5px;
    display: none;
}

#cuadroOpiniones div.hssurveys_full ul.listSubject li .reviewcomment {
    width: auto;
    margin-left: 0;
    float: none;
    display: block;
    clear: both;
}

#cuadroOpiniones div.hssurveys_full ul.listSubject.long li {
    padding: 0 0 30px;
}

#cuadroOpiniones div.hssurveys_full ul.questions {
    padding: 30px 0 0;
    margin: 00;
    border-top: 1px solid #ccc;
}

#cuadroOpiniones 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;
}

#cuadroOpiniones div.hssurveys_full ul.questions li .answer {
    float: none;
    line-height: normal;
    margin-right: 0;
    width: auto;
}

#cuadroOpiniones div.hssurveys_full .ratingBarStar, #cuadroOpiniones div.hssurveys_full div.answer p {
    float: none;
    display: inline-block;
}

/* NOT FOUND - 404 */

.not_found .modal-engine-wrapper {display: none;}

.not_found #main {
    background: url('https://cdnwp0.mirai.com/images/bg-404.png') no-repeat center center transparent;
    margin-bottom: 0;
    min-height: 570px;
    text-align: center;
}

.not_found #main h2 {
    padding-top: 100px;
}

/* BOOKINGSTEP */

.engine-wrapper-booking {
    padding: 10px 0;
    background: #ababab;
}

.bookingstep1 #fixed-header.offset-active, .chain_results  #fixed-header.offset-active {
    position: static!important;
}

/*---------------------------------------------------------------------------*/
/*---------------------------------- BLOG -----------------------------------*/
/*---------------------------------------------------------------------------*/


/* BLOG PAGE */

.blog-wrapper, .blog-sidebar {
    padding: 50px 0;
}

.blog-wrapper {
    padding-right: 60px;
    width: 70%;
    display: inline-block;
    padding-left: 15px;
}

/* blog titles */
.blog-wrapper h2, .blog-wrapper h1, .blog-wrapper h3 {
    margin-bottom: 10px;
    font-weight: bold;
}

.post h2 a {
    color: inherit;
}

/* small fonts */
.post .meta, .post .entry .categorias, .post .entry .leer_mas, .post .comment-notes, .post #gasp_p label, .post .commentmetadata, .post li.comment .reply {
    font-size: 0.8em;
}

.post .meta, .post .commentmetadata {
    border-bottom: 1px solid #CCC;
    padding-bottom: 5px;
}

.blog-wrapper .entry {
    padding-bottom: 60px;
}

.post .entry .categorias {
    border-top: 1px solid #CCC;
    padding-top: 5px;
    display: inline-block;
    margin-top: 20px;
}

.post .entry img {
    margin: 20px 0;
    max-width: 100%;
    display: block;
}

.post .entry .leer_mas {
    display: block;
    margin-top: 10px;
}

/* navigator */

.blog-wrapper p.paginaAnterior {
    float: left;
}

.blog-wrapper p.paginaSiguiente {
    float: right;
}

/* BLOG SIDEBAR */

.blog-sidebar > * {
    padding-bottom: 50px;
}

.blog-sidebar .widget_search label, .blog-sidebar .widget-title, .categories-wrapper label {
    font-weight: bold;
    margin-bottom: 15px;
    font-size: 21px;
}

.blog-sidebar .widget_search form input[type="text"] {
    border-radius: 0;
    background: #f7f7f7;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    height: 34px;
}

.blog-sidebar .widget_search form input[type="text"] {
    width: 100%;
}

.widget_postcategories li, .mirai_widget_recent_entries li {
    margin-bottom: 10px;
}

.widget_postcategories li {
    text-transform: capitalize;
}

.widget_postcategories li:last-child, .mirai_widget_recent_entries li:last-child {
    margin-bottom: 0;
}

/* SINGLE POST */

.single-post .post .entry {
    padding-top: 30px;
}

/* comments */

.single-post .comment-author {
    margin-bottom: 5px;
}

.single-post .comment-author img {
    border-radius: 100%;
}

.single-post .comment-author cite.fn {
    font-weight: bold;
    margin-left: 5px;
}

.post ol > li.comment {
    padding: 20px 0;
}

.post li.comment > div > p {
    padding-top: 20px;
}

.post li.comment .reply {
    text-align: right;
}

.post li.comment .reply a:before {
    content: '\eb19';
    font-family: 'mirai-icofonts';
    font-size: .8em;
    color: inherit;
    display: inline-block;
    margin-right: 5px;
    text-decoration: none;
}

.post ol > li.comment  li.comment {
    padding-top: 10px;
}

.post ol > li.comment > ul.children {
    padding-left: 40px;
}

.post ol > li.comment > ul.children > li.comment > ul.children {
    padding-left: 20px;
}

/* comment form */

.post #respond {
    padding: 60px 0;
}

.post #respond form .comment-form-comment textarea, .post #respond .comment-form-author input, .post #respond .comment-form-email input {
    width: 100%;
    display: block;
    margin-top: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    min-height: 40px;
    margin-bottom: 20px;
    box-shadow: none;
    -webkit-box-shadow: none;
    -webkit-appearance: none;
}

.post .comment-notes, .post #gasp_p {
    color: #8e8e8e;
    margin-bottom: 30px!important;
}

.post #respond label {
    display: inline;
}

.post #respond .comment-form-author, .post #respond .comment-form-email {
    width: 50%;
    float: left;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
}

.post #respond .comment-form-author {
    padding-right: 15px;
}

.post #respond .comment-form-email {
    padding-left: 15px;
}

.post #gasp_p {
    margin-top: 30px;
}

.post #gasp_p input {
    vertical-align: -2px;
}

/* Preload */


.loading .box-img:before {
    width: calc(100% - 6px);
    height: calc(100% - 2px);
    transition: 0s;
}

.box-img:before {
    transition: 1s ease-in-out;  
}


.loading  #content-header {
    min-height: calc(100vh - 94px)!important;
    transition: 0s;
}

#content-header {
    transition: 1s .8s ease-in-out;  
}


.loading .engine-wrapper {
    margin-bottom: -10px;
    opacity: 0;
    transition: 0s;
}

.engine-wrapper {
    transition: 1s 2s ease-in-out;  
}

.loading.home #videowrap video {
    filter: blur(8px);
    transition: 0s;
}

.home #videowrap video {
    filter: blur(0px);
    transition: 1s ease-in-out;  
}





/* SEARCH POST & CATEGORIES PAGES */

.search-results .blog-wrapper > form > fieldset > input, .search-results .blog-wrapper > form > fieldset > label,
.search-no-results .blog-wrapper > form > fieldset > input, .search-no-results .blog-wrapper > form > fieldset > label, .search-no-results #addthis-widget-2 {
    display: none!important;
}

.search-results h2#results-title, .search-no-results h2#results-title, .blog-wrapper #posts_con_categoria {
    margin: 0 0 50px!important;
    font-weight: normal;
}


/*---------------------------------------------------------------------------*/
/*----------------------------------- HACKS ---------------------------------*/
/*---------------------------------------------------------------------------*/


/* IE9 & IE 8 HACK */

/* hidding icons from after in selects */

.ie9 .widget_qtranslate:after, .ie8 .widget_qtranslate:after {
    display: none!important;
}

.ie9 .widget_qtranslate select, .ie8 .widget_qtranslate select  {
    padding-right: 0;
}

/* flex hacking */

.ie9 .flex, .ie8 .flex {
    display: table!important;
}

.ie9 .flex > *, .ie8 .flex > * {
    display: table-cell!important;
    border-collapse: collapse;
}

.ie9 .flex.fx-align-center, .ie9 .flex.fx-align-center > *, .ie8 .flex.fx-align-center, .ie8 .flex.fx-align-center > * {
    vertical-align: middle;
}

/***********************/
/* COVID SAFE PROTOCOL */
/***********************/

/* SAFE LOGO LINK */

/* logo size */
:root {
    --clean-size: 110px;
}

.csp-logo {
    display: block;
    line-height: 1;
    position: absolute;
    border-radius: 100%;
    overflow: hidden;
    width: 110px;
    width: var(--clean-size);
    z-index: 2;
    top: 5px;
}

.offset-active .csp-logo,
.bookingstep1 .csp-logo,
.chain_results .csp-logo,
.protocolo-salud-seguridad-covid19 .csp-logo {
    display: none;
}

.csp-logo svg {
    display: block;
}

.csp-logo-title {
    color: #fff;
    text-transform: uppercase;
    font-weight: normal;
    font-size: 9px;
    font-size: calc(var(--clean-size) * 0.08);
}

html[lang='ja'] .csp-logo-title {
    font-size: calc(var(--clean-size) * 0.1);
}

.csp-logo-title[data-circular-pos='down'],
html[lang='ja'] .csp-logo-title[data-circular-pos='down'] {
    font-size: 10px;
    font-size: calc(var(--clean-size) * 0.09);
}

.circular-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.circular-text span {
    height: 45%;
    position: absolute;
    left: calc(50% - 4%);
    top: 5%;
    width: 8%;
    transform-origin: bottom center;
    text-align: center;
}

.circular-text[data-circular-pos='down'] span {
    top: 50%;
    transform-origin: top center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: end;
    -webkit-box-align: end;
    align-items: flex-end;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    justify-content: center;
}

.csp-logo.csp_logo_3 .circular-text span,
.csp-logo.csp_logo_4 .circular-text span,
.csp-logo.csp_logo_6 .circular-text span {
    height: 40%;
    left: calc(50% - 5%);
    font-size: .95em;
}

.csp-logo.csp_logo_3 .csp-logo-title[data-circular-pos="down"],
.csp-logo.csp_logo_6 .csp-logo-title[data-circular-pos="down"] {
    top: 5%;
}

.csp-logo.csp_logo_4 .csp-logo-title,
.csp-logo.csp_logo_5 .csp-logo-title {
    color: #699abb;
    font-weight: bold;
}

/* MODAL WITH LINK */

#modal-safe-protocol.mirai-modal {
    background: rgba(255, 255, 255, 0.75);
}

#modal-safe-protocol.mirai-modal .mi-modal-content {
    width:100%;
}

.csp-modal-container {
    box-sizing: border-box;
    max-width: 500px;
    text-align: center;
    position: relative;
    padding: 40px;
    background: #000;
    border: 6px solid;
}

.csp-modal-container * {
    position: relative;
}

.csp-modal-container .mi-modal-close,
.csp-modal-container button.close {
    position: absolute;
    right: 10px;
    top: 10px;
}

.csp-modal-container img {
    position: absolute;
    object-fit: cover;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    opacity: .5;
}

.csp-modal-container p {
    padding: 20px;
}

@media (max-width: 768px) {
    .csp-modal-container {
        padding: 50px 10px;
    }
}

/* bootstrap modal */

#modal-safe-protocol.modal {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    margin: 0;
    border-radius: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.75);
    overflow: hidden;
}

#modal-safe-protocol.modal .csp-modal-container {
    max-height: 100%;
    overflow: auto;
}

.csp-modal-container button.close {
    opacity: 1;
}

/* COVID SAFE PROTOCOL - Page */

#covid-safe-protocol {
    padding: 70px 0 30px;
}

#covid-safe-protocol > .mi-title2 {
    text-align: center;
    margin-bottom: 40px;
}

#covid-safe-protocol .csp-inner-section {
    margin-bottom: 60px;
}

#covid-safe-protocol .csp-inner-section:last-child {
    margin-bottom: 0;
}

#covid-safe-protocol .csp-text .mi-title3 {
    margin-bottom: 0.5em;
}

#covid-safe-protocol .csp-list li {
    position: relative;
    padding-left: 1.5em;
    padding-bottom: .4em;
}

#covid-safe-protocol .csp-list li:before {
    speak: none;
    font-variant: normal;
    font-size: inherit;
    line-height: inherit;
    text-decoration: none;
    font-style: normal;
    letter-spacing: normal;
    font-weight: normal;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: block;
    font-family: 'mirai-icofonts';
    position: absolute;
    left: 0;
    top: 0;
    line-height: 1;
    color: inherit;
    content: '\eb1a';
    font-size: .4em;
    line-height: 1;
    margin-top: 1.2em;
}

#covid-safe-protocol .csp-image {
    margin-bottom: 30px;
}

#covid-safe-protocol .csp-image img {
    max-height: 320px;
    width: 100%;
    object-fit: cover;
}

#covid-safe-protocol .csp-text {
    padding: 0 30px;
}

/* [col-sm] Tablet vertical */
@media (min-width: 768px) and (max-width: 979px) {
    #covid-safe-protocol {
        width: 80%;
    }
}

/* alternate pics */

/* [col-md] Desktop */
@media (min-width: 980px) {
    #covid-safe-protocol[data-display='alternate'] .csp-inner-section {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
        flex-wrap: wrap;
        -ms-flex-align: center;
        -webkit-box-align: center;
        align-items: center;
        -ms-flex-pack: justify;
        -webkit-box-pack: justify;
        justify-content: space-between;
    }

    #covid-safe-protocol[data-display='alternate'] .csp-inner-section:nth-child(odd) {
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
    }

    #covid-safe-protocol[data-display='alternate'] .csp-image,
    #covid-safe-protocol[data-display='alternate'] .csp-text {
        width: calc(50% - 30px);
        margin-bottom: 0;
        padding: 0;
    }

    #covid-safe-protocol .csp-image img {
        max-width: none;
    }
}

/* columns */

/* [col-md] Desktop */
@media (min-width: 980px) {
    #covid-safe-protocol[data-display='column'] {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
        flex-wrap: wrap;
        -ms-flex-pack: justify;
        -webkit-box-pack: justify;
        justify-content: space-between;
    }

    #covid-safe-protocol[data-display='column'] > .mi-title2 {
        width: 100%;
    }

    #covid-safe-protocol[data-display='column'] .csp-inner-section {
        width: calc(50% - 20px);
    }

    #covid-safe-protocol[data-display='column'] .csp-inner-section:nth-child(even):last-child {
        width: 70%;
        margin-left: 15%;
    }
}

/*---------------------------------------------------------------------------*/
/*------------------------------- IMPROVEMENTS ------------------------------*/
/*---------------------------------------------------------------------------*/

.btn-carta {
    top: auto;
}

.offers-detail-wrapper .offer-calendar-wrapper .offer-date .ui-datepicker-inline .calendar-legend-offer-day span, .offers-detail-wrapper .offer-calendar-wrapper .offer-date .ui-datepicker-inline .calendar-legend-offer-day 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, .rooms-detail-wrapper .room-calendar-wrapper .room-date .ui-datepicker-inline ._checkout-date a {
    background-color: #90c137 !important;
}

.rooms-listing-wrapper > div.container p,
.room-box .room-detail .price-box .min-price {display: none;}



/*---------------------------------------------------------------------------*/
/*-------------------------------- MEDIA QUERYS -----------------------------*/
/*---------------------------------------------------------------------------*/


/* [col-lg] Medium desktop */
@media (min-width: 1200px) {
    
}

/* [col-xl] Large desktop */
@media (min-width: 1920px) {
    
}

@media (max-width: 1024px) {
    ul#menu_web {
    	max-width: 600px;
    }
    ul#menu_web > li.menu-last {
        margin-left: 0px;
    }
}

/* [col-sm] Tablet vertical */
@media (max-width: 979px) {
    #ui-datepicker-div{
        font-size: 14px !important;
        left: 10px!important;
    }
    .fx-reverse {
    -ms-flex-direction: row-reverse;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
    }
    .fx-column-md {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
    /* BLOG */
    .blog-wrapper {
        padding: 50px 30px;
    }
    .blog-sidebar .widget_search form input[type="text"] {
        width: auto;
        margin-bottom: 0;
    }
    /*home-section*/
    #intro-img .pam {
        padding: 70px 35px 0;
    }
    
    #intro-img .pbm {
        padding-bottom: 0px;
    }
    .pv2-xs{
        padding-top: 20px;
        padding-bottom: 20px;
    }
    
    #rewievs .carousel-control.right, #rewievs .flickity-prev-next-button.next {
        right: 0px;
    }

    .slide-img .flickity-viewport {
         height: 500px;
    }
    .box-img:before{
        width: calc(100% - 25px);
        height: calc(100% - 25px);
    }
    #list-services ul li {
        padding: 0 40px 0 0;
        left: 30px;
    }
    
    .arrows {
        left: -39px;
    }
    
    #rooms_offers {
        text-align: center;
    }

    #intro-img div {
        text-align: center;
    }

}

/*------------------------------------------------------------------------------*/

/* --- Mejora página de club -----*/

/* estilos comunes de tablas */
  .tg { border-collapse: collapse; border-spacing: 0; margin: 0px auto; }
  .tg td { border-color: black; border-style: solid; border-width: 1px; font-family: Arial, sans-serif; font-size: 14px; overflow: hidden; padding: 20px 20px; word-break: normal; }
  .tg th { border-color: black; border-style: solid; border-width: 1px; font-family: Arial, sans-serif; font-size: 14px; font-weight: normal; overflow: hidden; padding: 20px 20px; word-break: normal; }
  .tg .tg-8ml6 { background-color: #ffffff; border-color: #000000; font-family: inherit; font-size: 22px; position: -webkit-sticky; position: sticky; text-align: center; top: -1px; vertical-align: middle; will-change: transform; }
  .tg .tg-7hq0 { background-color: #addbda; border-color: #000000; font-family: inherit; font-size: 22px; position: -webkit-sticky; position: sticky; text-align: center; top: -1px; vertical-align: middle; will-change: transform; }
  .tg .tg-70oj { border-color: #000000; font-family: inherit; font-size: 18px; text-align: center; vertical-align: middle; }

  /* Tabla Silver */
  #silver .tg .tg-9k1m { background-color: #efefef; border-color: #000000; font-family: inherit; font-size: 22px; text-align: center; vertical-align: middle; }

  /* Tabla gold */
  #gold .tg .tg-xm23 { background-color: #ffffc7; border-color: #000000; font-family: inherit; font-size: 22px; text-align: center; vertical-align: middle; }

  /* Tabla platinum */
  #platinum .tg .tg-qoie { background-color: #b7b7b7; border-color: #000000; font-family: inherit; font-size: 22px; text-align: center; vertical-align: middle; }

  /* Responsive styles */
  @media screen and (max-width: 767px) { .tg { width: auto !important; } .tg col { width: auto !important; } .tg-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; margin: auto 0px; } }
