/*
Theme Name: Hotel-santos-porta-fira-2020
Theme URI: hotelbarcelonaportafira.com
Description: Hotel-santos-porta-fira-2020
Template: mirai
Author: Mirai Espana
*/


/* Entrada suavita del slider */
.home #content-header {
  min-height: 100vh;
}
.home #content-header .carousel-inner {
  -webkit-animation: holaCarousel 2s;
  animation: holaCarousel 2s;
}
-webkit-@keyframes holaCarousel {
  from { opacity: 0; }
  to { opacity: 1; }
}
@keyframes holaCarousel {
  from { opacity: 0; }
  to { opacity: 1; }
}

/*---------------------------------------------------------------------------*/
/*--------------------------------- 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,*/
.carousel-control:before, i.icon-lock:before {
    speak: none;
    font-variant: normal;
    font-size: inherit;
    line-height: inherit;
    text-decoration: none;
    font-style: normal;
    font-weight: normal;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: block;
}

/* ICONS */

i.icon-lock:before {
    font-family: 'mirai-icofonts';
    content: '\e992';
}

.back a:before, a.fwd-link:after {
    content: '\e966';
    font-family: 'mirai-icofonts';
    font-size: .85em;
    line-height: .85em;
    font-weight: normal;
    margin: 0 .5em;
    vertical-align: middle;
    display: inline-block;
    text-decoration: none;
    -webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    -ms-transition: all .2s ease-out;
    -o-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, html body.bookingstep1 {
  font-size: 15px;
  line-height: normal;
}

body, .bookingstep1 #header *, .bookingstep1 #footer *, .ui-datepicker-inline *, .wpcf7 input, #ui-datepicker-div {
    font-family: 'Open Sans', sans-serif;
}

/* Mete el mismo font family anterior para el motor pero con important */
.bookingstep1 #motor_reservas #mirai_be0 #mirai_be7 input, .bookingstep1 #motor_reservas #mirai_be0 input, .bookingstep1 #motor_reservas #mirai_be0 span,
.bookingstep1 #motor_reservas #mirai_be0 select, .bookingstep1 .engine_mashup, .widget_qtranslate select {
    font-family: 'Open Sans', sans-serif!important;
}

/* normal links */

a, .bookingstep1 #mirai_rootTable a, .bookingstep1 #currencyDropdownTop a span, .bookingstep1 #mirai_selectionSummary a,
#cuadroOpiniones div.hssurveys_full .noLink, #cuadroOpiniones div.hssurveys_full .noLink a {
    color: #a48b52;
}

a:hover, .bookingstep1 #mirai_rootTable a:hover, .bookingstep1 #currencyDropdownTop a:hover span, .bookingstep1 #mirai_selectionSummary a:hover,
#cuadroOpiniones div.hssurveys_full .noLink:hover, #cuadroOpiniones div.hssurveys_full .noLink a:hover {
    color:#d0be90;
}

/*EFECTO LÍNEA PARA LOS LINKS*/

#footer a,
.text-box p a {
  position: relative;
  padding: 2px 0;
  text-decoration: none!important;
}
#footer a:not(.fwd-link)::after,
.menu-links a span::after,
#tour-virtual-modal a::after,
.text-box p a::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 100%;
  border-top: 1px solid;
  transition: .5s;
}
#footer a:hover::after,
.menu-links a:hover span::after,
#tour-virtual-modal a:hover::after,
.text-box p a:hover::after {
  right: 0;
  transition: .2s;
}
/* anular efecto */
#footer .image-link-footer::after,
#footer .socialmedia ul li a::after {
  display: none;
}



/* TITLES */

/* reset Bootstrap styles */
h1, h2, h3, h4 {line-height: normal;}

p, li {
  line-height: 1.75;
  color: #666;
}
#header p, #header li,
#footer p, #footer li {
  line-height: 1.5;
}

p:not(:last-child) {
  padding-bottom: 22px;
}

p:last-child {
  margin-bottom: 0!important;
}
p:empty {
  display: none;
}


/* 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: 30px;
    margin-bottom: 20px;
    display: block;
}*/

.title2,
.cat-cookies-policy h1,
.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,
.woocommerce-page .page-title {
  font-family: 'Playfair Display', serif;
  font-size: 2.5em;
  text-transform: uppercase;
  letter-spacing: .03em;
  line-height: 1.1;
  margin-bottom: 24px;
  word-break: break-word;
}
.title3,
.rooms-listing-wrapper h3,
.cat-cookies-policy h2,
.rooms-detail-wrapper h3,
.offers-listing-wrapper h3,
.offers-detail-wrapper h3,
.blog-wrapper h3,
#modal-engine .modal-header h3,
.chain_results div#mirai_chainHotelsContainer h1 a,
.mi-iata-content h3,
.offers-mashup dt,
.woocommerce-checkout #main > .container-big h3 {
  font-family: 'Playfair Display', serif;
  font-size: 1.8em;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: .03em;
  line-height: 1.1;
  margin-bottom: 24px;
  word-break: break-word;
}

.title4,
.rooms-detail-wrapper h4,
.offers-detail-wrapper h4 {
  font-size: 0.8em;
  text-transform: uppercase;
  letter-spacing: .1em;
  line-height: 1;
  padding: 0 1px 16px;
}

.title5, p.title5 {
  text-transform: uppercase;
  font-weight: bolder;
  padding: 0;
}

.titleunderline {
  display: inline-block;
  border-bottom: 1px solid;
  padding-bottom: 20px;
}

/*---------------------------------------------------------------------------*/
/*----------------------------- GENERAL FIXES -------------------------------*/
/*---------------------------------------------------------------------------*/

.show-phone {
  display: none;
}

input[type="radio"], input[type="checkbox"] {margin: 0}
select[disabled] {cursor: not-allowed!important;}
img {width: auto}
.container {max-width: 100%}
.btn {box-shadow: none;text-align:inherit;}
ul.menu a {color: inherit;}
.bookingstep1 div#noDispo .selectRoom, .bookingstep1 div#noDispo .selectRoom:visited {text-shadow: none;box-shadow: none;background-image: none;}
.bookingstep1 div.mirai_button.selectRoom, .bookingstep1 div.mirai_button.selectRoom:visited {background-image: none;}
#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;}

/* ENGINE SELECTS, QTRANSLATE SELECT AND MULTIROOM BUTTON APPEARANCE RESET */

.control-group > select.selector, .control-group.nights-control-group select, .widget_qtranslate select, #modal-engine .control-group > select, button#multiroom-button, .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;
}

.control-group > select.selector::-ms-expand, .control-group.nights-control-group select::-ms-expand, .widget_qtranslate select::-ms-expand, #modal-engine .control-group > select::-ms-expand, .common-form select::-ms-expand {display: none;}

.control-group > select.selector, .control-group.nights-control-group select, .widget_qtranslate select, #modal-engine .control-group select, .common-form select {width: auto;}

/* CHAIN RESULTS */

.chain_results div#mirai_chainHotelsContainer .bt_book {
    border-radius: initial;
    -moz-border-radius: initial;
    -webkit-border-radius: initial;
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    text-shadow: none;
    background-image: none;
}

.chain_results div#mirai_chainHotelsContainer .descriptionHotel {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}

.center {
    position: absolute;
    top: 50%;
    right: 50%;
    -webkit-transform: translate(50%, -50%);
    -moz-transform: translate(50%, -50%);
    -ms-transform: translate(50%, -50%);
    transform: translate(50%,-50%);
}

/* FLEX RULES */

.flex {
    display: -webkit-box!important;
    display: -ms-flexbox!important;
    display: -webkit-flex!important;
    display: flex!important;
}

.fx-wrap {
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
}

/* y axis */

.fx-align-center {
    -ms-flex-align: center;
    -ms-flex-pack: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -webkit-box-pack: center;
    align-items: center;
}

.fx-align-end {
    -ms-flex-align: end;
    -webkit-align-items: flex-end;
    -webkit-box-align: end;
    align-items: flex-end;
}

.fx-align-start {
    -ms-flex-align: start;
    -webkit-align-items: flex-start;
    -webkit-box-align: start;
    align-items: flex-start;
}

/* x axis */

.fx-justify-center {
    -webkit-justify-content:  center;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    justify-content: center;
}

.fx-space-between {
    -webkit-justify-content:  space-between;
    justify-content: space-between;
}

.fx-justify-end {
    -webkit-justify-content: flex-end;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.fx-space-evenly {
	 justify-content: space-evenly;
}

/* changing axes */
.fx-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column;
}

.row.flex::before, .row.flex::after {
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
}

/* AFFIX */

/* LIST */
/* agrega las clases .bullets o .check-list a los ul segun precises */

.bullets li {
    list-style-position: outside;
    list-style-type: disc;
    margin-left: 20px;
    margin-bottom: 10px;
}


.check-list:not(:last-child) {
  padding-bottom: 32px;
}
.check-list li {
  position: relative;
  padding: 0.3em 0 0.3em 1.8em;
  font-size: 0.9em;
}
.check-list li.not-checked {
  position: relative;
  padding: 0.3em 0 0;
}
.check-list li.not-checked::before {
  content: '';
}
.check-list li:before {
    font-family: 'mirai-icofonts';
    content: '\e983';
    position: absolute;
    font-weight: normal;
    font-style: normal;
    text-decoration: none;
    text-transform: none;
    left: 0;
    top: 0.3em;
    color: #a48b52;
}
.check-list li ul li:before {
  content: '\eb1a';
  font-size: 4px;
  top: 11px;
}

/* ºmargin ºpadding --------------------------------------- MARGINes - PADDINGes */

.pa0 {padding: 0}

.pts {padding-top: 16px;}
.prs {padding-right: 16px;}
.pbs {padding-bottom: 16px;}
.pls {padding-left: 16px;}
.phs {padding-right: 16px; padding-left: 16px;}
.pvs {padding-top: 16px; padding-bottom: 16px;}
.pas {padding: 16px;}

.ptm {padding-top: 32px;}
.prm {padding-right: 32px;}
.pbm {padding-bottom: 32px;}
.plm {padding-left: 32px;}
.phm {padding-right: 32px; padding-left: 32px;}
.pvm {padding-top: 32px; padding-bottom: 32px;}
.pam {padding: 32px;}

.ptl {padding-top: 64px;}
.prl {padding-right: 64px;}
.pbl {padding-bottom: 64px;}
.pll {padding-left: 64px;}
.phl {padding-right: 64px; padding-left: 64px;}
.pvl {padding-top: 64px; padding-bottom: 64px;}
.pal {padding: 64px;}

.ptxl {padding-top: 128px;}
.prxl {padding-right: 128px;}
.pbxl {padding-bottom: 128px;}
.plxl {padding-left: 128px;}
.phxl {padding-right: 128px; padding-left: 128px;}
.pvxl {padding-top: 128px; padding-bottom: 128px;}
.paxl {padding: 128px;}

/*.pbxl {padding-bottom: 10em; padding-bottom: 13vh;}
.ptxl {padding-top: 10em; padding-top: 13vh;}
.pvxl { padding-top: 10em; padding-bottom: 10em; padding-top: 13vh; padding-bottom: 13vh;}*/


body .pt0 { padding-top: 0 }
body .pl0 { padding-left: 0 }
body .pb0 { padding-bottom: 0}


.ma0 {margin: 0}
.m0auto {margin: 0 auto}

.mvs { margin-top: 10px; margin-bottom: 10px; }

/* BACKGROUNDS & COLORS */

.white-text,
.white-text *,
#main .white-text * {
  color: #fff;
}

.white-text .carousel-control::after {
  background: #fff;
}


.bg-black {
  background: #131313;
}
.bg-black .scrollme {
  overflow: hidden;
}

/* borders */

.white-text *, .white-text {
    border-color: #fff;
}


/*---------------------------------------------------------------------------*/
/*--------------------------- COMMON ELEMENTS -------------------------------*/
/*---------------------------------------------------------------------------*/


/* CAROUSEL CONTROLS */

.carousel-control {
    text-indent: -99999px;
    height: auto;
    line-height: 1;
    font-size: 40px;
    color: inherit;
    width: 80px;/* firefox fixing - mismo que font-size */
    height: 40px;
    margin-top: -20px; /* poner la mitad de font-size */
    opacity: 1;
    background: none;
}
.carousel-control:hover {
    color: inherit;
}

.carousel-control:before {
    text-indent: 0;
    font-family: 'mirai-icofonts';
}
.carousel-control::after {
    content: "";
    position: absolute;
    top: 50%;
    height: 3px;
    transform: translateY(-50%);
    background: #333;
    width: 50%;
    border-radius: 2px;
    -webkit-transition: .25s cubic-bezier(0.485, 0.610, 0.570, 1.370);
    -moz-transition: .25s cubic-bezier(0.485, 0.610, 0.570, 1.370);
    -o-transition: .25s cubic-bezier(0.485, 0.610, 0.570, 1.370);
    transition: .25s cubic-bezier(0.485, 0.610, 0.570, 1.370);
}
.carousel-control.left:before {content: '\e962'; float: left;}
.carousel-control.right:before {content: '\e963'; float: right;}
.carousel-control.left:after {
 left: 10px;
}
.carousel-control.right:after {
 right: 10px;
}
.carousel-control.left:hover::after {
 width: 90%;
}
.carousel-control.right:hover::after {
 width: 90%;
}

.swiper-container-horizontal {
  height: 100%;
}
.swiper-container-horizontal img {
  min-height: 100%;
  object-fit: cover;
}
#main .swiper-container-horizontal > .swiper-pagination {
  bottom: 64px;
}
.swiper-container-horizontal .swiper-pagination-bullet {
  background: none;
  border: 1px solid #fff;
  opacity: 1;
  width: 12px;
  height: 12px;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.3);
}
.swiper-container-horizontal .swiper-pagination-bullet-active {
  background: #fff;
}

/* ºmodal----------------------------------------------------------------- MODAL */

/* MODAL FULL */

.modal.full {
  border-radius: 0;
  top: 0!important;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
  width: auto;
  background: transparent;
}

.modal.full .modal-body {
  max-height: none;
}
.modal-dialog {
  max-width: 600px;
  margin: 0 auto 100px;
  position: relative;
  top: 20%;
  background: #fff;
}
.modal-big .modal-dialog {
  max-width: 850px;
}

body.modal-open .modal.full {
  overflow-x: hidden;
  overflow-y: auto;
}

/* animacion modal */

.modal.full .modal-dialog {
  animation-name: modal-fade;
  animation-duration: .4s;
}
@keyframes modal-fade {
    from {opacity: 0; top: 18%;}
    to {opacity: 1; top: 20%;}
}

@media (min-device-width: 0) and (max-device-width: 1024px) {
  body.modal-open {
    margin-right: 0;
  }
  body.modal-open .affix {
    right: 0;
  }
}

/* movil */

@media (max-width: 767px) {
  .modal-dialog {
    margin: 0 auto;
    top: 0;
    min-height: 100vh;
    animation: none!important;
  }
}
/* fin modal full */

.modal:focus {outline: none;}
.modal {border: none;}

.modal-header .close {
    float: none;
    position: absolute;
    right: 13px;
    top: 50%;
    font-size: 20px;
    width: 20px; /* firefox fixing - mismo que font-size */;
    box-sizing: content-box;
    margin-top: -20px;
    padding: 10px;
    color: inherit;
    opacity: .75;
}

.modal-header .close:hover {
    opacity: 1;
}

.modal-header {
  border-bottom: none;
  padding: 25px;
  padding-right: 57px;
  position: relative;
  background: #f7f7f7;
  color: #131313;
  border-bottom: 1px dashed #dedede;
}

/* modal title */
.modal-header .title3, #modal-engine .modal-header h3 {
    color: inherit;
}

/* 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-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;
}


#live-cam-modal iframe {
  border: none;
  width: 100%;
  height: 470px;
}
.webcam{text-align: center;}
.webcam img{
    width: 644px;
    height: 490px;
    object-fit: cover;
}
#tour-virtual-modal .row,
#bodas-modal .row {
  padding: 16px 16px 24px;
}
#tour-virtual-modal .col-xs-12 {
  padding: 0 8px 8px;
}
#tour-virtual-modal .title4 {
  padding: 0;
}
#tour-virtual-modal a {
  position: relative;
  padding: 4px 0 2px;
  margin-bottom: 8px;
  text-decoration: none;
  display: inline-block;
}


/* SHADOWBOX */

/*#sb-container {z-index: 1100;}*/

/* SIDE MODAL BUTTON */

/*.fixed-modal-link {
    background: #d8d8d8;
    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;
    -moz-transition: all .2s ease-out;
    -ms-transition: all .2s ease-out;
    -o-transition: all .2s ease-out;
    transition: all .2s ease-out;
}*/

/*.fixed-modal-link:hover {
    padding: 30px 20px 30px 10px;
}*/

/* ºform------------------------------------------------------------------ FORMS */
.common-form br {
  display: none;
}
.common-form {
  margin: 0 auto;
  max-width: 1000px;
}
.common-form .row:not(:nth-child(2)) {
  margin-top: 1em;
  padding-top: 1em;
  border-top: 1px dashed #dcdcdc;
}
.common-form div[class^="col-"] {
  position: relative;
  padding: 24px 16px 16px;
}
.common-form input[type="text"],
.common-form input[type="email"],
.common-form input[type="number"],
.common-form select,
.common-form textarea {
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  height: 50px;
  border: none;
  border-bottom: 1px solid;
  border-radius: 0;
  box-shadow: none;
  font-weight: bold;
  font-size: 1.2em;
  transition: .5s;
  box-shadow: 0 0 0 #000;
  background: rgba(240,240,240,.2);
}
.common-form .inputComplete input,
.common-form .inputComplete textarea {
  border-color: #d0be90;
  box-shadow: 0 2px 0 #d0be90;
  transition: .2s;
}
.common-form textarea {
  line-height: 35px;
  height: 150px;
  font-weight: 400;
  padding: 10px 0;
}
.common-form label {
  position: absolute;
  pointer-events: none;
  text-transform: uppercase;
  line-height: 50px;
  top: 24px;
  left: 16px;
  font-size: 80%;
  letter-spacing: 0.1em;
  color: #666;
  transition: .5s;
}
.common-form .inputComplete label {
  top: -15px;
  transition: .2s;
}
.common-form .wpcf7-captcha-captcha {
  position: absolute;
  top: 38px;
  right: 25px;
}
.common-form div.accept-privacity {
  padding-top: 38px;
}
.common-form input[type="radio"], .common-form input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin-right: 12px;
}
.common-form .wpcf7-submit {
  width: 40%;
  min-width: 240px;
}

.common-form .wpcf7-not-valid-tip {
  color: #e26464;
  font-size: 80%;
  text-align: left;
  padding-top: 3px;
}
.common-form .wpcf7-response-output {
  padding: 1.5em;
  margin: 16px;
  border: none;
  background: #efefef;
}
.common-form .wpcf7-validation-errors {
  background:#f7c9c9;
}
.common-form .wpcf7-mail-sent-ok {
  background: #f4ffdb;
}


/* 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 .selector,
.common-form .your-recipient,
.common-form .needs {
  display: block;
}
.common-form .wpcf7-form-control-wrap.selector::after,
.common-form .wpcf7-form-control-wrap.your-recipient:after,
.common-form .needs:after {
    content: "\e961";
    font-family: 'mirai-icofonts';
    pointer-events: none;
    position: absolute;
    right: 8px;
    top: 50%;
    margin-top: -4px;
    font-size: 9px;
    color: inherit;
    line-height: 1;
}


/* 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 */

button {
  background: transparent;
  border: none;
}

/* ºprimary */

.engine_mashup > div form .button-group input[type="submit"], .bookingstep1 #motor_reservas #mirai_bookentrance #mirai_be7 input,
.btn-modal-engine, #modal-engine .button-group input[type="submit"], .offers-detail-wrapper .offer-calendar-wrapper .offer-button,
.rooms-detail-wrapper .room-calendar-wrapper .room-button, .bookingstep1 div#noDispo .selectRoom, .bookingstep1 div.mirai_button.selectRoom,
.bookingstep1 #mirai_roomSelectionContainer #mirai_roomSelection .selectExtra, .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 */
    box-shadow: none; /* fixing buttons in bookingstep */
    text-shadow: none; /* fixing buttons in bookingstep */
    font-size: 1.4em;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    line-height: 1;
    padding: 15px 40px;
    color: #d0be90;
    border: 2px solid;
    /* efecto */
    transition: all 0.6s ease-out;
    background: -webkit-linear-gradient(left, rgba(164, 139, 82,0.9), rgba(208, 190, 144,0.6), rgba(34,34,34,0), rgba(34,34,34,0));
    background: -o-linear-gradient(left, rgba(164, 139, 82,0.9), rgba(208, 190, 144,0.6), rgba(34,34,34,0), rgba(34,34,34,0));
    background: linear-gradient(to right, rgba(164, 139, 82,0.9), rgba(208, 190, 144,0.6), rgba(34,34,34,0), rgba(34,34,34,0));
    background-position: 99% 50%;
    background-size: 300% 300%;
}

.engine_mashup > div form .button-group input[type="submit"]:hover, .bookingstep1 #motor_reservas #mirai_bookentrance #mirai_be7 input:hover,
.btn-modal-engine:hover, #modal-engine .button-group input[type="submit"]:hover, .offers-detail-wrapper .offer-calendar-wrapper .offer-button:hover,
.rooms-detail-wrapper .room-calendar-wrapper .room-button:hover, .bookingstep1 div#noDispo .selectRoom:hover, .bookingstep1 div.mirai_button.selectRoom:hover,
.bookingstep1 #mirai_roomSelectionContainer #mirai_roomSelection .selectExtra: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-position: 1% 50%;
  border-color: transparent;
  color: #fff;
  transition: all 0.6s ease-out;
}

.primary-btn, .btn-modal-engine, .secundary-btn {
    display: inline-block;
}

/* º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, .widget_search form input[type="submit"], #main .go-to-calendar,
.rooms-listing-wrapper .room-box .room-book a, .chain_results div#mirai_chainHotelsContainer .bt_book, .chain_results div#mirai_chainHotelsContainer .bt_book:visited,
.mirai_opiniones #xdhsReviewSummaryContent-XdHs #hsRating .mirai_btReview, .room-box .room-content .more-info, .woocommerce-read-more-link, .secundary-btn {
    background: transparent; /* fixing offers mashup button */
    border-radius: 0; /* fixing offers mashup button */
    text-shadow: none; /* fixing offers mashup button */
    text-decoration: none;
    color: #131313;
    text-transform: uppercase;
    letter-spacing: 0.01em;
    line-height: 1;
    padding: 20px 40px;
    border: 1px solid;
    /* efecto */
    transition: all 0.3s ease-out;
    background: -webkit-linear-gradient(left, rgba(0,0,0,1), rgba(0,0,0,0.6), rgba(34,34,34,0), rgba(34,34,34,0));
    background: -o-linear-gradient(left, rgba(0,0,0,1), rgba(0,0,0,0.6), rgba(34,34,34,0), rgba(34,34,34,0));
    background: linear-gradient(to right, rgba(0,0,0,1), rgba(0,0,0,0.6), rgba(34,34,34,0), rgba(34,34,34,0));
    background-position: 99% 50%;
    background-size: 300% 300%;

}

.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, .widget_search form input[type="submit"]:hover, #main .go-to-calendar:hover,
.rooms-listing-wrapper .room-box .room-book a:hover, .chain_results div#mirai_chainHotelsContainer .bt_book:hover,
.mirai_opiniones #xdhsReviewSummaryContent-XdHs #hsRating .mirai_btReview:hover, .room-box .room-content .more-info:hover, .woocommerce-read-more-link:hover, .secundary-btn:hover {
  text-decoration: none;
  background-position: 1% 50%;
  border-color: transparent;
  color: #fff;
  transition: all 0.6s ease-out;
}

/* 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-color: #b9b9b9!important;
    color: #fff;
    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;}



/* SECUNDARY BUTTON PDF */

.secundary-btn.pdf-btn {
  position: relative;
  overflow: hidden;
}
.secundary-btn.pdf-btn:hover {
  padding: 20px 30px 20px 50px;
}
.secundary-btn.pdf-btn i {
  position: absolute;
  opacity: 0;
  color: #fff;
  font-size: 60px;
  top: 4px;
  left: 1px;
}
.secundary-btn.pdf-btn:hover i {
  opacity: .2;
  transition: .5s;
}

/* SECUNDARY BUTTON CON FONDO NEGRO */

#main .white-text .secundary-btn {
  color: #fff;
  background: -webkit-linear-gradient(left, rgba(255,255,255,1), rgba(255,255,255,0.6), rgba(34,34,34,0), rgba(34,34,34,0));
  background: -o-linear-gradient(left, rgba(255,255,255,1), rgba(255,255,255,0.6), rgba(34,34,34,0), rgba(34,34,34,0));
  background: linear-gradient(to right, rgba(255,255,255,1), rgba(255,255,255,0.6), rgba(34,34,34,0), rgba(34,34,34,0));
  background-position: 99% 50%;
  background-size: 300% 300%;
}
#main .white-text .secundary-btn:hover {
  color: #131313;
  background-position: 1% 50%;
}

#main .white-text .secundary-btn.pdf-btn i {
  color: #000;
}
#main .white-text .secundary-btn.pdf-btn:hover i {
  opacity: .1;
}



/*---------------------------------------------------------------------------*/
/*ºmotor--------------------------- ENGINE ----------------------------------*/
/*---------------------------------------------------------------------------*/

/* --------------------------- MODAL DEL MOTOR*/

.booking-header .title3 {
  display: block;
  padding-bottom: 10px;
  border-bottom: 1px solid #999;
  margin-bottom: 13px;
}
.booking-header .title4 {
  font-size: 10px;
  line-height: 1.4;
  padding-bottom: 35px;
}

/* efectos del botón */
.booking-button-box .booking-btn,
.booking-button-box a {
  max-width: 250px;
  height: 55px;
  padding: 0 40px;
  overflow: hidden;
}
body.menu-open.booking-mode .booking-btn {
  color: #000;
  max-width: 55px;
  padding: 0;
  background: rgba(0,0,0,0);
  transition: all .4s;
}
body.menu-open.booking-mode .booking-btn:hover {
  color: #fff;
  background: #131313;
  border-color: #131313;
}

body.menu-open.booking-mode .booking-btn::before {
  content: "\e95e";
  font-family: 'mirai-icofonts';
  display: block;
  font-size: 20px;
  line-height: 52px;
}
body.menu-open.booking-mode .booking-button-box p {
  display: none;
}



/* FIXING STYLES */

.engine_mashup > div form .button-group input[type=submit] {margin-bottom: 0;}
.engine_mashup.inline > div form, .engine_mashup.square > div form {padding: 0;}
.engine_mashup.inline > div form .button-group {margin-right: 0;}
.engine_mashup > div form .control-group span.help-inline._nights {display: none !important;}
.engine_mashup.square.two-columns > div form .control-group label.label-code {font-size: inherit;}
.engine_mashup.inline > div form .control-group, .engine_mashup.inline > div form .button-group {display:block;float:left;}
.engine_mashup>div ._activeDatePicker label {text-shadow: none!important;}
.engine_mashup>div ._inactiveDatePicker {opacity: initial;}




/* APPEARANCE */

.engine_mashup {
  box-sizing: border-box;
  position: relative;
}

/* general background */
/*.engine_mashup, #mirai_bookentrance, #modal-engine .modal-body {
    background: #ccc;
}*/

/* control group */
.engine_mashup > div form .control-group, #modal-engine .control-group {
  position: relative;
  padding: 0;
  border: 1px solid #131313;
  box-sizing: border-box;
}

/* engine icons */

.engine_mashup > div form .checkin-control-group:after, .engine_mashup > div form .checkout-control-group:after, .chain-selector-control-group:after, .nights-control-group:after, #modal-engine .control-group:after, .multiroom-control-group:after {
    font-family: 'mirai-icofonts';
    position: absolute;
    pointer-events: none;
    font-size: 15px;
    color: inherit;
    right: 17px;
    top: 17px;
    line-height: 1;
}

.engine_mashup > div form .checkin-control-group:after, .engine_mashup > div form .checkout-control-group:after, #modal-engine .date-group:after {
    content: "\e9e2";
}

.chain-selector-control-group:after, .nights-control-group:after, #modal-engine .control-group.chain-group:after, #modal-engine .control-group.nights-group:after, .multiroom-control-group:after {
    content: "\e965";
}

/* labels groups */
.engine_mashup > div form .control-group > label, #mirai_bookentrance #mirai_be0 span, #modal-engine .control-group > label,
.engine_mashup.square.two-columns > div form .control-group label.label-code, .engine_mashup > div form .chain-selector-control-group:before, #modal-engine .chain-group:before {
    line-height: 47px;
    color: #131313;
    font-size: 13px !important;
    text-transform: uppercase;
    font-family: inherit;
    padding: 15px 25px 0 0;
    text-align: center;
}

#mirai_bookentrance #mirai_be0 span {line-height: normal;}


/* INPUTS & SELECTS */

.engine_mashup > div form .control-group input[type=text], #mirai_bookentrance #mirai_be0 input[type=text], #modal-engine .control-group input[type=text],
.engine_mashup > div form .control-group > select, .bookingstep1 #mirai_be0 select, #modal-engine .control-group > select, button#multiroom-button {
    background-image: none;
    background: transparent;
    border: 1px solid #e1e1e1; /* para que se vean en bookingstep ponemos border */
    color: #131313;
    margin-bottom: 0;
    padding: 0 22px 0 8px;
    box-shadow: none;
    font-family: inherit;
    font-size: 14px !important;
    height: 47px;
    line-height: 47px; /* mismo que height */
    box-sizing: border-box;
}

.engine_mashup > div form .control-group select option, #modal-engine .control-group select option {
    color: #131313;
}

/* fixing border for inputs in control-group (not old bookingstep) */
.engine_mashup > div form .control-group input[type=text], #modal-engine .control-group input[type=text], .engine_mashup > div form .control-group > select, #modal-engine .control-group > select, button#multiroom-button {border: none!important;}

/* input date */
.engine_mashup > div input.date,
#mirai_bookentrance #mirai_be0 input#mirai_be2,
#modal-engine .control-group input[type=text].checkin-field,
#modal-engine .control-group input[type=text].checkout-field {
    cursor: pointer;
    /*width: 8.3em !important;*/
}

/* promo code*/
.engine_mashup > div form .control-group input[type=text].code, #mirai_bookentrance input#mirai_be6, #modal-engine .control-group input[type=text].code-field {
    /*width: 6em !important;*/
    padding-right: 0;
}

/* chain selector */
.engine_mashup > div form .chain-selector-control-group #chainSelector {
    padding-right: 25px;
    max-width: 200px; /* modificar este max-width en funcion de la web a maquetar */
}

/* submit button */
.engine_mashup > div form .button-group input[type="submit"],
.bookingstep1 #motor_reservas #mirai_bookentrance #mirai_be7 input,
#modal-engine .button-group input[type="submit"] {
    background: #131313;
    border: 0 none; /*mantener para fixear de skeleton */
    border-radius: 0px; /*mantener para fixear de skeleton */
    color: #FFF;
    height: 70px;
    width: 100%;
    text-align: center;
    text-shadow: none; /*mantener para fixear de skeleton */
    text-transform: uppercase;
    padding: 0;
    background: linear-gradient(to right, rgba(208, 190, 144,0.8), rgba(164, 139, 82,0.9), rgba(34,34,34,1), rgba(34,34,34,1));
    background-position: 99% 50%;
    background-size: 300% 300%;
}
.engine_mashup > div form .button-group input[type="submit"]:hover,
.bookingstep1 #motor_reservas #mirai_bookentrance #mirai_be7 input:hover,
#modal-engine .button-group input[type="submit"]:hover {
    background-position: 1% 50%;
}


/* INLINE TWO ROWS */
/* descomenta esta parte para que los label estén encima de los input */

.engine_mashup.inline.one-row>div form .control-group label, .engine_mashup > div form .chain-selector-control-group:before {
    display: block;
    line-height: 20px;
}

/*.engine_mashup > div form .control-group input[type=text], .engine_mashup > div form .control-group > select {
    padding-left: 0;
    height: 35px;
    line-height: 35px;
}*/

/*.engine_mashup > div form .button-group input[type="submit"] {
    height: 55px;
}*/

.engine_mashup > div form .checkin-control-group:after, .engine_mashup > div form .checkout-control-group:after, .chain-selector-control-group:after, .nights-control-group:after, #modal-engine .control-group:after, .multiroom-control-group:after {
    bottom: 9px;
}

/* MULTIROOM */

.multiroom-control-group .multiroom-dropdown {margin-top: 8px;z-index: 400;}

.engine_mashup.showMultiroomFilter.inline button#multiroom-button {
  width: 9.6em;
}

.engine_mashup.showMultiroomFilter.inline > div form .control-group > label {
    line-height: 20px;
}

.engine_mashup.showMultiroomFilter.inline > div form .control-group input[type=text],
.engine_mashup.showMultiroomFilter.inline button#multiroom-button {
  height: 60px;
  line-height: 60px;
  padding: 0;
  width: 100%;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.5px;
}
.engine_mashup.showMultiroomFilter.inline button#multiroom-button {
  line-height: 20px;
}
.engine_mashup.showMultiroomFilter.inline button#multiroom-button span {
  padding: 0 5px;
}
.multiroom-control-group .multiroom-dropdown-filter .multiroom-button {
  font-size: 0.8em;
  letter-spacing: 0.02em;
}

/*.engine_mashup.showMultiroomFilter.inline > div form .button-group input[type="submit"] {
    height: 55px;
}*/

/* icons position */
.engine_mashup.showMultiroomFilter.inline > div form .checkin-control-group:after, .engine_mashup.showMultiroomFilter.inline > div form .checkout-control-group:after, .engine_mashup.showMultiroomFilter.inline > div form .multiroom-control-group:after {
    bottom: 9px;
}



/* ºmotorengine------------------------ estilos de motor particulares */

.engine_mashup.inline > div form .control-group {
  width: 31%;
  margin: 0 0 3.3% 3.3%;
}
.engine_mashup.inline > div form .control-group:first-child {
  margin-left: 0;
}

/* excepción CÓDIGO PROMOCIONAL */

.engine_mashup.inline > div form .control-group.promo-code-control-group {
  width: 100%;
  margin: 0;
  border: none;
  border-bottom: 1px solid;
  margin-bottom: 30px;
}
.engine_mashup.inline > div form .control-group.promo-code-control-group label {
  position: absolute;
  padding: 0;
  line-height: 60px;
}
.engine_mashup.inline > div form .control-group.promo-code-control-group input {
  width: 100%;
  text-indent: 180px;
  font-size: 1.5em!important;
}
.engine_mashup.inline > div form .button-group {
  width: 48.5%;
  float: right;
  position: absolute;
  top: 100%;
  right: 0;
}
.bookingstep1 .engine_mashup.inline>div form .button-group input[type="submit"] {
  height: 96px;
}


.advantages {
  width: 48.5%;
  border: 1px solid;
  font-size: 0.9em;
  line-height: 18px;
  text-align: center;
  padding: 7px;
  text-decoration: none!important;
  text-transform: uppercase;
  box-sizing: border-box;
  min-height: 70px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.advantages span {
  font-weight: bold;
  display: block;
  transition: color .4s;
}
.advantages:hover span {
  color: #fff;
}

.mi-be-square .advantages {
  width: calc(50% - 14px);
  margin-top: -76px;
  min-height: 76px;
  position: relative;
}

/*---------------------------------------------------------------------------*/
/*----------------------------- ENGINE CALENDAR -----------------------------*/
/*---------------------------------------------------------------------------*/


/* FIXING */

#ui-datepicker-div {z-index: 400 !important;}
body.modal-open #ui-datepicker-div {z-index: 1060 !important;}

/* wrapper */
#ui-datepicker-div, #noDispo .ui-widget-content {
    border: 0!important;
    border-radius: 0!important;
    box-shadow: 0 0 5px #666!important;
    font-size: 15px !important;
    padding: 10px!important;
}

/* wrapper in detail pages */

.rooms-detail-wrapper .room-box-detail,
.rooms-detail-wrapper .room-box-price {
  background: #f3f3f3;
}
.room-box-price p {
  padding-bottom: 0;
}
.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;
    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-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: #F2F2F2!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: #DDD!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: 0!important;
    top: 50%!important;
    padding: .3em;
    text-decoration: none;
    width: auto!important;
    height: auto!important;
    line-height: 1;
    font-size: 1em;
    margin-top: -.8em;
}
.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: #868686;
    cursor: pointer;
    font-family: 'mirai-icofonts';
    line-height: 1;
    font-size: inherit;
    display: block;
}

.ui-datepicker .ui-datepicker-prev:after {content: "\e966";}
.ui-datepicker .ui-datepicker-next:after {content: "\e967";}

/* offers 4 and rooms 5 templates */
.detail-services-dates {max-width: 800px;margin: 0 auto;}


/* ------------------------------ CHANGE THESE COLORS & BACKGROUNDS ------------------------------ */


/* header (month&year) and old calendar buttons */
.bookingstep1 #noDispo .ui-widget-header, .bookingstep1 #noDispo .ui-datepicker .ui-datepicker-title, .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;
}

/* 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,
.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._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._checkout-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 ._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,
.rooms-detail-wrapper .room-calendar-wrapper .room-date .ui-datepicker-inline ._checkout-date a,
.ui-datepicker td:hover a,
.bookingstep1 #noDispo .selected a.ui-state-default.ui-state-active,
.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 ._checkout-date span,
.all-calendar .ui-datepicker-calendar ._checkout-date a,
.all-calendar .ui-datepicker-calendar a:hover
{
    background: #131313!important;
    color: #FFF!important;
    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,
.ui-datepicker .ui-datepicker-prev.ui-state-hover:after, .ui-datepicker .ui-datepicker-next.ui-state-hover:after {
    background: transparent!important;
    color: #131313;
}


/* ----------------------------------------------------------------------------------------------- */


/* FIX BOOKINGSTEP CALENDAR */

.bookingstep1 .ui-datepicker {width: 19em;}

/* calendar days */
.bookingstep1 .ui-state-default, .bookingstep1 .ui-widget-content .ui-state-default, .bookingstep1 .ui-widget-header .ui-state-default {padding: 6px;}

/* no dispo fix */

.bookingstep1 div#noDispo #noDispoContents1 {padding: 60px 183px 60px 100px!important;}
.bookingstep1 div#noDispo .nightSelect select {margin-bottom: 0 !important;}
.bookingstep1 #noDispo .price0 .ui-state-default {border: 0!important;}
.bookingstep1 #noDispo .ui-datepicker-unselectable.ui-state-disabled.price0 {background: rgba(0, 0, 0, 0)!important;}
.bookingstep1 #noDispo a:hover {text-decoration: none;}
.bookingstep1 div#noDispo .selectRoom, .bookingstep1 div#noDispo .selectRoom:visited {padding: 20px; font-size: 14px; right: auto!important; position: absolute; left: 11em;}

/* no dispo - day price1 */
.bookingstep1 #mirai_roomSelectionContainer #noDispo .price1:hover .ui-state-default,
.bookingstep1 #mirai_roomSelectionContainer #noDispo .ui-widget-content .price1:hover .ui-state-default,
.bookingstep1 #mirai_roomSelectionContainer #noDispo .price1 .ui-state-default,
.bookingstep1 #mirai_roomSelectionContainer #noDispo .ui-widget-content .price1 .ui-state-default,
.bookingstep1 #mirai_roomSelectionContainer #noDispo .ui-widget-content .price1 .ui-state-hover,
.bookingstep1 #mirai_roomSelectionContainer #noDispo #legend .price1,
.offers-detail-wrapper .offer-calendar-wrapper .offer-date .ui-datepicker-inline .calendar-legend-offer-day a {
    background: #90C137!important;
    border:0!important;
    color: #fff;
}

/* no dispo - day price2 */
.bookingstep1 #mirai_roomSelectionContainer #noDispo .price2 .ui-state-default,
.bookingstep1 #mirai_roomSelectionContainer #noDispo .ui-widget-content .price2 .ui-state-default,
.bookingstep1 #mirai_roomSelectionContainer #noDispo .ui-widget-content .price2 .ui-state-hover,
.bookingstep1 #mirai_roomSelectionContainer #noDispo #legend .price2 {
    background: #73B07B!important;
    border:0!important;
    color: #fff;
}


/*---------------------------------------------------------------------------*/
/*------------------------------ STRUCTURE ------- --------------------------*/
/*---------------------------------------------------------------------------*/

.container-big,
.cat-rooms .container {
  max-width: 1600px;
  margin: 0 auto;
  box-sizing: border-box;
  width: auto;
}

.cat-rooms .container {
  padding: 0 64px;
}

.semi-container {
  max-width: 800px;
  box-sizing: border-box;
}

.text-box {
  max-width: 590px;
  box-sizing: border-box;
  display: inline-block;
  padding: 64px;
}
.text-box-big {
  max-width: 660px;
  box-sizing: border-box;
  display: inline-block;
  padding: 64px;
}

.text-box span {
	font-weight: 600;
}

/*#header .content, #main .content, #footer .content {position: relative}*/

/*POSITIONS Y Z-INDEX*/

#header {
  position: absolute;
  width: 100%;
  z-index: 2;
}
#main,
#footer {
  z-index: 1;
  position:relative
}
.bookingstep1 #header,
.bookingstep1 #main,
.bookingstep1 #footer {
  position: static;z-index: auto;
}
body.modal-open #main {
  position: static;
}


/* ºHEADER---------------------------------------------------------------------- HEADER */

/* +++++++++++++++++++++++++ PREHEADER*/

.preheader {
  min-height: 48px;
  line-height: 48px;
  color: #fff;
}

/* +++++++++++++++++++++++++ HEADER*/

#header {
  color: #fff;
}

.affix-wrapper > div {
  padding: 16px 60px;
  text-align: center;
}


/* +++++++++++++++++++++++++ HAMBURGER */

.hamburger {
  position: relative;
  height: 55px;
  width: 64px;
  border: none;
  background: rgba(0,0,0,0);
  text-align: center;
  cursor: pointer;
}
.hamburger span {
  display: block;
  position: absolute;
  left: 3px;
  right: 3px;
  height: 3px;
  margin-top: -1.5px;
  background: #fff;
  border-radius: 2px;
  opacity: 1;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .25s cubic-bezier(0.485, 0.610, 0.570, 1.370);
  -moz-transition: .25s cubic-bezier(0.485, 0.610, 0.570, 1.370);
  -o-transition: .25s cubic-bezier(0.485, 0.610, 0.570, 1.370);
  transition: .25s cubic-bezier(0.485, 0.610, 0.570, 1.370);
}
.hamburger span:nth-child(1) {
  top: 25%;
}
.hamburger span:nth-child(2), .hamburger span:nth-child(3) {
  top: 50%;
}
.hamburger span:nth-child(3) {
  opacity: 0;
}
.hamburger span:nth-child(4) {
  top: 75%;
}

/* Open menu */

.menu-open:not(.booking-mode) .hamburger span:nth-child(1) {
  top: 50%;
  right: 50%;
  left: 50%;
}
.menu-open:not(.booking-mode) .hamburger span:nth-child(2) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
.menu-open:not(.booking-mode) .hamburger span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  opacity: 1;
}
.menu-open:not(.booking-mode) .hamburger span:nth-child(4) {
  top: 50%;
  right: 50%;
  left: 50%;
}
.open-dialog, .close-dialog {
  position: absolute;
  visibility: hidden;
  opacity: 0;
  top: 50%;
  left: 130%;
  color: #fff;
  transform: translateY(-50%);
  pointer-events: none;
  transition: .3s;
  font-size: 0.8em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.hamburger-box {
  position: relative;
  float: left;
}
.hamburger-box:hover .open-dialog,
.menu-open .hamburger-box:hover .close-dialog {
  visibility: visible;
  opacity: 1;
  left: 120%;
  color: #fff;
}
.menu-open .hamburger-box:hover .open-dialog {
  visibility: hidden;
  opacity: 0;
  top: 70%;
}


/* +++++++++++++++++++++++++ BOOKING BUTTON */

.booking-btn {
  color: #fff;
}

#header .booking-button-box {
  float: right;
  position: relative;
  display: flex;
  justify-content: flex-end;
}

.bookingstep1 .booking-button-box,
.cat-offer-detail .booking-button-box,
.cat-room-detail .booking-button-box {
  display: none;
}
.bookingstep1 #menu-wrapper .col-md-6,
.cat-offer-detail #menu-wrapper .col-md-6,
.cat-room-detail #menu-wrapper .col-md-6 {
  width: 100%;
}




.logo-box p, .booking-button-box p {
  position: absolute;
  top: 120%;
  right: 50%;
  color: #fff;
  white-space: nowrap;
  transform: translateX(50%);
  text-transform: uppercase;
  font-size: 11px;
  transition: .3s cubic-bezier(0.485, 0.610, 0.570, 1.370);
}
.booking-button-box p::before, .booking-button-box p::after {
  content: "";
  display: inline-block;
  width: 0;
  margin: 0 8px 3px;
  border-top: 1px solid #fff;
  transition: .3s .3s cubic-bezier(0.485, 0.610, 0.570, 1.370);
}
.affix-top .booking-button-box p::before, .affix-top .booking-button-box p::after {
  width: 16px;
}

/* +++++++++++++++++++++++++ LOGO */

.logo-box {
  position: relative;
  display: block;
  max-width: 300px;
  margin: 1px auto;
  transition: .3s;
}

/* +++++++++++++++++++++++++ EFECTOS AFFIX */
/* +++++++++++++++++++++++++ EFECTOS AFFIX */


.affix-wrapper > .affix {
  background: #131313;
  background: rgba(0,0,0,.8);
  transition: .6s background .2s;
}
.affix {
  left: 0;
  top: 0;
  right: 0;
  box-sizing: border-box;
  z-index: 600 !important;
}
.affix .logo-box p, .affix .booking-button-box p {
  visibility: hidden;
  opacity: 0;
  margin-top: 30px;
}

.affix .logo-box {
  max-width: 250px;
  transition: .5s;
}


/* ºMENU----------------------------------------------------------------------- MENU */

/* +++++++++++++++++++++++++ COMPORTAMIENTO BODY CON MODALES */

/* margin */
body.menu-open,
body.modal-open {
  overflow: hidden;
  position: relative;
  background: #f1f1f1;
  margin-right: 17px;
}
body.menu-open #content-header .carousel-inner,
body.menu-open .affix,
body.modal-open .affix {
  margin-right: 17px;
}
body.menu-open #menu-wrapper {
  overflow-y: scroll;
}
body.menu-open .menu-backdrop {
  right: 17px;
}

body.menu-open.modal-open #main section {
  position: relative;
  z-index: 1;
}

body.modal-open.home #content-header .carousel-inner {
  right: 17px;
}


/* z-index dentro del affix para controlar los elementos que aparecen */
.affix {
  z-index: auto!important;
}
body.menu-open .hamburger-box,
body.menu-open.booking-mode .booking-button-box {
  z-index: 3;
  opacity: 1;
}
#menu-wrapper {
  z-index: 2;
}
body.menu-open.booking-mode .hamburger-box,
body.menu-open .logo-box,
body.menu-open .booking-button-box {
  z-index: 1;
  opacity: .4;
}
body.booking-mode .menu-box {
  display: none!important;
}
body.booking-mode .booking-box {
  width: 100%;
}

/*  estructura de la modal */
#menu-wrapper {
  overflow-x: hidden;
  overflow-y: hidden;
  position: fixed;
  display: none;
  opacity: 1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  transition: background 1s;
}
#menu-wrapper .row.flex {
  min-height: 100vh;
}
#menu-wrapper .menu-box,
#menu-wrapper .booking-box {
  min-height: 100%;
  min-height: 100vh;
  padding: 75px 0 30px;
}

#menu-wrapper .booking-box{ padding:0;}

#menu-wrapper .menu-box {
  background: #000;
  background: rgba(0,0,0,.9);
}
#menu-wrapper .booking-box {
  background: #fff;
  background: rgba(255,255,255,.9);
}

/* cortinilla para la modal menú */
.menu-backdrop {
  position: fixed;
  z-index: 1;
  display: none;
  opacity: 1;
  top: 0;
  left: 0;
  right: 0;
  height: 150%;
}
.menu-backdrop .b-black {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 50%;
  background: #000;
  background: rgba(0,0,0,.8);
}
.menu-backdrop .b-white {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 50%;
  background: #fff;
  background: rgba(255,255,255,.8);
}
body.booking-mode .menu-backdrop .b-black,
body.booking-mode .menu-backdrop .b-white {
  left: 0;
}


.booking-box {
  color: #131313;
}
.booking-box > div {
  max-width: 550px;
  box-sizing: border-box;
}

/* +++++++++++++++++++++++++ MENU */

.menu-box > div,
.booking-box > div {
  display: inline-block;
  padding: 32px;
  box-sizing: border-box;
  text-align: left;
}
ul#menu_aux2 {
  padding-bottom: 32px;
}
ul#menu_aux2 li {

}
ul#menu_aux2 li a {
  color: #fff;
  text-transform: uppercase;
  font-size: 1.7em;
  letter-spacing: 0.03em;
  padding: 0.4em 0;
  text-decoration: none;
  display: inline-block;
  font-weight: 300;
  letter-spacing: 1.3px;
}
ul#menu_aux2 a::before {
  content: '';
  display: inline-block;
  border-bottom: 1px solid;
  margin-bottom: 0.3em;
  width: 0;
  transition: all .4s;
}

/* hover */

ul#menu_aux2 a:hover::before {
  width: 1em;
  margin-right: 0.5em;
}
ul#menu_aux2 li.current-menu-item > a {
  color: #d0be90!important;
}
ul#menu_aux2 li.current-menu-item > a::before {
  display: none;
}

/* pon a los elementos del menu que no tengan pagina propia la clase .menu-not-active */

/*ul#menu_aux2 .menu-not-active > a {
  pointer-events: none;
  cursor: default;
}
ul#menu_aux2 li.menu-not-active > ul > .duplicated-menu-item {
 display: none;
}*/

/* sub-menu */

ul#menu_aux2 > li > ul.sub-menu {
  display: block;
  position: static!important;
}
ul#menu_aux2 > li > ul.sub-menu li > a {
  font-size: 1.2em;
  padding: 0.2em 0;
  /*color: #8e8e8e;*/
}


/* +++++++++++++++++++++++++ MENU LINKS */

.menu-links {
  padding: 32px 0;
  border-top: 1px solid #949494;
}
.menu-links a {
  color: #fff;
  text-transform: uppercase;
  line-height: 40px;
  vertical-align: bottom;
  text-decoration: none;
}
.menu-links a span {
  padding: 2px 0 4px;
  position: relative;
  font-weight: 300;
}
.menu-links li:not(:first-child) {
  padding-left: 32px;
}
.menu-links i {
  font-size: 20px;
  display: inline-block;
  padding-right: 11px;
}



/* +++++++++++++++++++++++++  Q TRANSLATE */

.widget_qtranslate ul li {
  float: left;
  border: 1px solid;
  margin-right: -1px;
  color: #fff;
}
.widget_qtranslate ul li a {
  width: 35px;
  line-height: 35px;
  display: inline-block;
  font-size: 0.8em;
  text-transform: uppercase;
  text-align: center;
  text-decoration: none;
}
.widget_qtranslate ul li.active a {
  background: rgba(208, 190, 144, 0.35) !important;
  pointer-events: none;
  cursor: default;
}
.widget_qtranslate ul li a:hover {
  background: rgba(208, 190, 144, 0.2);
}




/* ---------------------- EFECTOS */

.menu-open #menu_aux2 li {
  animation: entrada_izquierda;
}

.menu-open #menu_aux2 > li:first-child {
  animation-duration: .1s;
}
.menu-open #menu_aux2 > li:first-child .sub-menu li:first-child {
  animation-duration: .2s;
}
.menu-open #menu_aux2 > li:first-child .sub-menu li:nth-child(2) {
  animation-duration: .3s;
}
.menu-open #menu_aux2 > li:first-child .sub-menu li:nth-child(3) {
  animation-duration: .4s;
}
.menu-open #menu_aux2 > li:first-child .sub-menu li:nth-child(4) {
  animation-duration: .5s;
}
.menu-open #menu_aux2 > li:nth-child(2) {
  animation-duration: .6s;
}
.menu-open #menu_aux2 > li:nth-child(3) {
  animation-duration: .7s;
}
.menu-open #menu_aux2 > li:nth-child(4) {
  animation-duration: .8s;
}
.menu-open #menu_aux2 > li:nth-child(4) .sub-menu li:first-child {
  animation-duration: .9s;
}
.menu-open #menu_aux2 > li:nth-child(4) .sub-menu li:nth-child(2) {
  animation-duration: 1s;
}
.menu-open #menu_aux2 > li:nth-child(4) .sub-menu li:nth-child(3) {
  animation-duration: 1s;
}
.menu-open #menu_aux2 > li:nth-child(5) {
  animation-duration: 1.2s;
}
.menu-open #menu_aux2 > li:nth-child(6) {
  animation-duration: 1.3;
}
@keyframes entrada_izquierda {
  0% { transform: translateX(100px); }
  100% { transform: translateX(0); }
}

.menu-open .menu-links {
  animation: entrada_border 1s;
}
@keyframes entrada_border {
  0% { border-color: transparent;}
  50% {border-color: transparent;}
  100% { border-color: #949494; }
}
.menu-open .menu-links li {
  animation: entrada_abajo .9s;
}
.menu-open .widget_qtranslate {
  animation: entrada_abajo 1.2s;
}
@keyframes entrada_abajo {
  0% { transform: translateY(30px); opacity: 0;}
  60% {transform: translateY(30px); opacity: 0;}
  100% {transform: translateY(0); opacity: 1;}
}






/* ºfooter--------------------------------------------------------------- FOOTER */


#footer p {
    margin-bottom: 0!important;
}
#footer a {
  display: inline-block;
}

#footer .logo-footer {
  max-width: 250px;
}



/* ºprefooter------------------------------- PRE FOOTER */

.prefooter {
    background-color: #131313;
    color: #fff;
}
.prefooter a {
  color: #fff;
}
.hotelschema br {
  content: "";
  display: block;
  padding: 8px 0;
}
.hotelschema .phone-label, .hotelschema .fax-label {
    display: none;
}
.prefooter div .row:last-child {
  border-top: 1px solid #bbb;
}

.footer-links ul {
  display: inline-block;
}
.footer-links li {
  float: left;
  text-transform: uppercase;
}
.footer-links li:not(:first-child)::before {
  content: "";
  display: inline-block;
  height: 13px;
  margin: 0 16px;
  border-left: 1px solid;
}

.newsletter {
  display: inline-block;
  text-align: left;
}
.newsletter-modal .common-form .accept-privacity {
  padding: 0 16px;
}

.newsletter .title4 {
	padding-bottom: 10px;
}

.newsletter .title3 {
	margin-bottom: 10px;
}

.newsletter a {
	text-transform: uppercase;
}

/* view/cancel link */
.icon-lock {
  background: none;
  display: inline-block;
  width: auto;
  height: auto;
  line-height: 1;
}

/* ºmainfooter------------------------------- MAIN FOOTER */

.mainfooter {
    background-color: #fff;
}
.border-right {
  padding-right: 32px;
  border-right: 1px solid #ddd;
}
.app {
  position: relative;
  padding-left: 80px;
  color: #9f9f9f;
  text-transform: uppercase;
}
.app i {
  font-size: 68px;
  margin-top: -32px;
  position: absolute;
  left: 0;
  top: 50%;
}
.app h4 {
  font-size: 1.3em;
}
#footer .app a {
  font-size: 0.8em;
  display: inline-block;
  white-space: nowrap;
  color: #9f9f9f;
  padding: 3px 0 2px;
  box-shadow: inset 0 -1px #888;
}
#footer .app a::after {
  background: #d0be90;
}
#footer .app a:hover {
  color: #d0be90;
}

/* HOTEL LIST */

.hotels-list > div {
  padding-top: 14px;
  border-top: 1px solid #ddd;
}
.hotels-list h4 {
  padding: 20px 0 5px;
  font-weight: bold;
  text-transform: uppercase;
}
#footer .hotels-list a, .hotels-list span {
  padding: 4px 0 2px;
  display: inline-block;
  color: #131313;
  border-bottom: 1px solid transparent;
}
.hotels-list span {
  color: #a48b52;
}

/* postfooter------------------------------- POST FOOTER */

.postfooter {
  font-size: 0.8em;
  padding: 32px 0 28px;
}
.postfooter .menu li {
  float: left;
  color: #aaa;
}
.postfooter .menu li:not(:first-child) {
  padding-left: 15px;
}

/* developed by mirai */

#developed-wrapper a {
  text-transform: lowercase;
  color: #fff;
  font-weight: bold;
}

/* postfooter background (with mobile contact row in footer for responsive design) */
.postfooter, .home #footer .content address.address_phone, #footer .widget_qtranslate, #footer .widget_qtranslate select, #footer .widget_qtranslate select option {
    background-color: #131313;
}

.postfooter, .postfooter a, .home #footer .widget_qtranslate:after, #footer .widget_qtranslate, #footer .widget_qtranslate select {
    color: #fff;
}



/* ºsocialmedia ---------------------------------------------------- social media */

.socialmedia ul li a:before {
  background-color: #9f9f9f;
  color: #fff;
  border-radius: 50%;
  font-weight: normal;
  font-size: 13px;
  padding: 7px;
  -webkit-transition: all .4s ease-out;
  -moz-transition: all .4s ease-out;
  -ms-transition: all .4s ease-out;
  -o-transition: all .4s ease-out;
  transition: all .4s ease-out;
}
.socialmedia ul li a:hover:before {
    background: #d0be90;
}
#footer .socialmedia ul li a {
  padding: 0 5px;
}







/* ºcosasºestructura --------------------------------------------- MAIN ELEMENTS */

.mh5 {
  min-height: 500px;
}
#content-header {
  position: relative;
  margin: 0!important;
  overflow: hidden;
}
.not-home #content-header {
  background: #131313;
}
.home #content-header {
  overflow: visible;
}

#content-header .image-box img {
  width: 100%;
  object-fit: cover;
  height: 80vh;
  min-height: 700px;
  opacity: 0.6;
}
.cat-rooms #content-header .image-box img {
  opacity: 0.8;
}

#content-header .title-box-fixed {
  position: fixed;
  left: 0;
  right: 0;
  text-align: center;
  top: 150px;
  padding-top: 18vh;
}
#content-header .title-box {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 10vh 0;
  text-align: center;
}
#content-header .title-box p {
  font-size: 1.1em;
  letter-spacing: 0.025em;
  line-height: 1.7;
}

#intro {
  position: relative;
}
.white-cover {
  background: #fff;
  position: relative;
  overflow: hidden;
}
#main section {
  margin-top: 64px;
  margin-bottom: 64px;
}

#main .flex img {
  width: 100%;

}
.pull-bottom {
  align-self: flex-end;
}

.christmas-img {
  position: relative;
  overflow: hidden;
}

.christmas-img img {
  min-width: 100%;
  min-height: 100%;
}
.christmas-img > img {
  position: absolute;
  left: 0;
  top: 0;
}
.christmas-img > div {
  position: relative;
  z-index: 2;
}

.christmas-img .text-box {
    width: 100%;
    max-width: 100%;
    text-align: center;
}
    
    

.grayscale-img  {
  background: #131313;
  position: relative;
  overflow: hidden;
}
.grayscale-img img {
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
  opacity: .5;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
  transition: .8s;
}
.grayscale-img.colored img {
  -webkit-filter: grayscale(0%);
  filter: grayscale(0%);
  opacity: .8;
}
.grayscale-img > img {
  position: absolute;
  left: 0;
  top: 0;
}
.grayscale-img > div {
  position: relative;
  z-index: 2;
}

/* TIPOS DE SWIPER*/

/* absolute */
.absolute-swiper {
  position: absolute!important;
  z-index: 1!important;
  top: 0;
  left: 0;
  right: 0;
}
/* absolute solo la imagen */
.absolute-img-swiper img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
}
.absolute-img-swiper .swiper-slide {
  padding-top: 64px;
  padding-bottom: 64px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 600px;
  box-sizing: border-box;
}
.absolute-img-swiper .swiper-slide > div {
  position: relative;
  z-index: 2;
}

/* GRID TWO ROW */

.grid-two-row .container-big > .flex:last-child:not(:only-child) {
  margin-top: -128px;
  flex-direction: row-reverse;
}
.grid-two-row .container-big > .flex:not(:only-child) .col-md-6:last-child {
  padding-bottom: 128px;
}
.grid-two-row .container-big > .flex:last-child:not(:only-child) .col-md-6:last-child {
  padding: 128px 0 0;
}
.grid-two-row .row img {
  min-height: 100%;
  object-fit: cover;
}
.grid-two-row .fx-align-center {
  justify-content: flex-end;
}
.grid-two-row .fx-align-center .text-box {
  padding-right: 0;
}

/* GRID ONE ROW */

.grid-one-row > .flex:not(:first-child) {
  margin-top: -64px;
}
.grid-one-row .row img {
  min-height: 100%;
  object-fit: cover;
}
.grid-one-row .pull-bottom {
  padding-top: 64px;
}
/* BUTTON GROUP */

.button-group a {
  box-sizing: border-box;
  font-size: 0.8em;
  margin-bottom: -1px;
  margin-left: -1px;
}


/*---------------------------------------------------------------------------*/
/*--------------------------------- PAGES -----------------------------------*/
/*---------------------------------------------------------------------------*/

/* ºhome -------------------------------------- HOME */

.home #main {
  background: #131313;
  overflow: hidden;
}

.home #content-header .carousel-inner {
  position: fixed;
  width: auto;
  left: 0;
  right: 0;
}

#content-header .go-to-anchor {
  position: absolute;
  left: 50%;
  bottom: -120px;
  height: 270px;
  width: 150px;
  text-align: center;
  margin-left: -75px;
  padding: 40px 0;
  box-sizing: border-box;
  color: #fff;
  font-size: 0.7em;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  text-decoration: none!important;
}
#content-header .go-to-anchor::after {
  content: "";
  position: absolute;
  top: 60px;
  left: 50%;
  height: 60%;
  border-left: 1px solid;
  transition: .3s cubic-bezier(0.485, 0.610, 0.570, 1.370);
}
#content-header .go-to-anchor:hover::after {
  top: 90px;
}

.offers-mashup .carousel-inner {
  max-width: 550px;
  display: flex;
  min-height: 200px;
  align-items: flex-end;
}
.carousel .next,.carousel .prev {
  top: auto;
  bottom: 0;
}
.offers-mashup .more-info-link {
  background: transparent; /* fixing offers mashup button */
  border-radius: 0; /* fixing offers mashup button */
  text-shadow: none; /* fixing offers mashup button */
  padding: 3px 0;
  display: inline-block;
  border-bottom: 1px solid transparent;
}
.offers-mashup .more-info-link::before {
  content: "+";
  display: inline-block;
  padding: 0 8px 0 0;
  font-size: 0.9em;
  letter-spacing: 0.05em;
}
.offers-mashup dd span {
  display: block;
  padding-bottom: 24px;
}
.offers-mashup .more-info-link:hover {
  border-color: #d0be90;
}
.corner-arrows .offers-mashup .carousel-control {
  top: auto;
  bottom: 0;
  right: 0;
  left: auto;
  font-size: 28px;
  margin-top: 0;
  width: 50px;
  height: 28px;
}
.corner-arrows .carousel-control::after {
  top: 14px;
  height: 2px;
}
.corner-arrows .offers-mashup .carousel-control.left {
  right: 52px;
}
.corner-arrows .offers-mashup .carousel-control.left::after {
  left: 8px;
}
.corner-arrows .offers-mashup .carousel-control.right::after {
  right: 8px;
}
#main section#home-offers {
  margin-bottom: 5px;
}

/* ºlocation --------------------------------------------------------  LOCATION */
#map-wrapper {
  min-height: 60vh;
}
#map-wrapper #calculate-route-button {
  border-radius: 0;
  background: #555;
}
#map-wrapper #calculate-route-button:hover {
  background: #131313;
}
#map-wrapper #show-route-detail-link {
  color: #a48b52;
  box-sizing: border-box;
  text-decoration: underline;
}
#modal-map-results .modal-header {
  background: #131313!important;
}
.cat-location #search-form {
  border: 2px solid;
  border-radius: 0;
  border-left: none;
}

.triangle-box {
  position: relative;
  overflow: hidden;
  height: 100%;
}
.triangle-box > div {
  position: absolute;
  height: 160px;
  width: 160px;
  transform: rotate(45deg);
  background: rgba(255, 255, 255, 0.8);
  top: 33px;
  right: -80px;
}
.triangle-box span {
  transform: rotate(-45deg);
  transform-origin: 0 -10px;
  display: block;
  position: absolute;
  bottom: 0;
  width: 105%;
  font-size: 1.3em;
  font-weight: bold;
  color: #383838;
}
.flex:last-child:not(:only-child) .triangle-box > div {
  right: auto;
  left: -80px;
  top: auto;
  bottom: 33px;
}
.flex:last-child:not(:only-child) .triangle-box span {
  text-align: right;
}

/* ºROOMS ºhabitaciones ------------------------------------------------- ROOMS */

.offers-listing-wrapper > h2,
.rooms-listing-wrapper .container > h2 {
  display: none;
}
.rooms-listing-wrapper {
  padding: 64px 0;
}
.rooms-listing-wrapper .container > p {
  font-size: 1.2em;
  font-weight: 800;
}
.rooms-listing-wrapper .container > .common-services {
  margin-bottom: 54px;
}

.rooms-listing-wrapper h3 a {
  text-decoration: none;
  line-height: 1.3;
  padding-bottom: 1px;
  border-bottom: 1px solid #d0be90;
  color: #000;
}
.room-box .room-detail ul {
  background: none;
  margin-bottom: 0;
  padding: 0;
}
.rooms-listing-wrapper .room-box .room-detail ul li {
  width: auto;
  display: block;
  text-align: left;
  font-size: 0.8em;
  line-height: 2;
  color: #a48b52;
}
.rooms-listing-wrapper .room-box .room-detail ul li span:first-child {
  display: none;
}
.room-box .room-content .more-info {
  display: inline-block;
}
.rooms-listing-wrapper.default-left .rooms-listing .room-item .room-detail, .rooms-listing-wrapper.default-left .rooms-listing .room-item .room-content {
  padding-left: 64px;
}
.room-box .room-content .room-description {
  padding: 10px 0 14px;
}
.room-box .room-content .room-price {
  border-top: none;
  width: auto;
  margin-top: 0;
  background: #efefef;
  padding: 16px;
  float: right;
  font-size: 80%;
}
.room-box .room-content .room-price p {
  padding: 0;
}


.room-box .room-content .room-price .box-button .goto-booking {
  background-color: #000;
  text-decoration: none;
}
.room-box .room-content .room-price .box-button {
  display: block;
  float: none;
  margin-top: 0;
  text-align: center;
}
.room-box .room-content .room-price .box-button .goto-booking:hover {
    background-color: #a48b52;
}


/* ºgastronomiaºrestaurante ---------------------------------------- GASTRONOMIA */


/* ºsalones --------------------------------------------------- SERVICES SALONES */

.small-arrow .carousel-control {
  font-size: 36px;
  height: 36px;
  margin-top: -14px;
}
.small-arrow .carousel-control::after {
  height: 2px;
}

.tables .swiper-container-horizontal .swiper-pagination-bullet {
  border-color: #131313;
}
.tables .swiper-container-horizontal .swiper-pagination-bullet-active {
  background: #131313;
}
#main .tables .swiper-container-horizontal > .swiper-pagination {
  position: static;
}
.tables .title4 {
  margin: 0 0 10px 3px;
}
.tables a {
  display: block;
}
.tables a i {
  font-size: 1.1em;
}
.tables .image-box .carousel-control {
  color: #fff;
}
.tables .image-box .carousel-control::after {
  background: #fff;
}
.tables .image-box figcaption {
  display: block;
  padding: 5px 0 5px 40px;
  font-size: 0.8em;
  font-style: italic;
  opacity: 0;
  transition: .4s ease-out;
}
.tables .image-box .item.active figcaption {
  padding-left: 0;
  opacity: 1;
}


/* SERVICES */

/* PHOTOS */

/* SOURCE CONTENT */

.box-gd {
    background: rgba(254,254,254,0.8);
    border: 15px solid;
}

/* OFFERS & ROOMS TEMPLATES */

.rooms-listing-wrapper>div>p{display: none;}

.offer-link {
    background-color: #F1F1F1;
}
.offers-listing-wrapper {
    padding: 80px 20px;
}
.offers-listing-wrapper .offers-listing {
    padding-top: 40px;
}
#main .offer-date-range {
  padding: 4px;
  color: #bbb;
  margin-top: 10px;
}

/* Align text when no offers */
.offers-listing-wrapper.no-offers {
    text-align: center;
}

/* 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: #EF6772;
    height: auto;
}
.offers-detail-wrapper .offer-info-wrapper {
  background: #fff;
}
.offers-detail-wrapper .offer-info-wrapper h2 {
  color: #333;
  padding-bottom: 30px;
}

.offer .offer-deco {
    background-color: #a48b52;
}

.offer .offer-intro, .offer .offer-date-range {
    background-color: #131313;
}

.offer .offer-box, .offers-detail-wrapper .offer-features-wrapper .offer-boxes-wrapper .offer-box.main-box {
    color: #a48b52;
}

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;
}

/* COOKIES */

div#cookies-wrapper-content {
    padding: 80px 0;
}

div#cookies-wrapper-content {
  padding-bottom: 25px;
}

#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%;
    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%;
    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 #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;
    padding-top: 200px;
}
.not_found #main h2 {
    padding-top: 100px;
}

.not_found .affix-top,
.not_found .affix,
.not_found .preheader {
  background: #000;
  background: rgba(0,0,0,.8);
}
.not_found .affix-top{
  box-shadow: 0 40px 0 rgba(0,0,0,.8);
}

/* BOOKINGSTEP */

.bookingstep1 .affix-wrapper {
  min-height: 99px;
}

.mirai_alert {
  display: inline-block;
}
.bookingstep1 #mirai_roomSelection tr.roomrate td.col5 span.arrowSymbol, .bookingstep1 #mirai_roomSelection tr.roomrate td.col5 span.btSeparator {
  display: none;
}

.bookingstep1 .modal {
  display: none;
}
.bookingstep1 #header {
  background: rgba(19, 19, 19, 0.8);
  position: relative;
}
.bookingstep1 #header > .content {
  padding-bottom: 38px;
}
.bookingstep1 #header::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  opacity: 0.2;
  background: url('/files/bookingstep-header.jpg') no-repeat center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}


.bookingstep1 #mirai_roomSelection tr.roomrate td.col5 span.btSeparator {
  border-color: #fff;
}

.bookingstep1 #header .content > *, .bookingstep1 #logo, .bookingstep1 ul#menu_aux2, .bookingstep1 #footer {display: block !important;}
.bookingstep1 .widget_qtranslate, .bookingstep1 #social-media, .bookingstep1 .booking_mobile, .bookingstep1 #header #menu_phone {display: none !important;}
.bookingstep1 #motor_reservas #mirai_bookentrance {padding: 10px 0;filter: none;}
#mirai_bookentrance #mirai_be0 input[type=text], .bookingstep1 #mirai_be0 select, #mirai_bookentrance #mirai_be0 span {float: none;display: inline-block;vertical-align: middle;padding-left: 5px;padding-right: 5px;}
.bookingstep1 #mirai_be0 select {padding-right: 0;}
#mirai_bookentrance #mirai_be0 input#mirai_be2 {width: 7em!important;}
#mirai_bookentrance #mirai_be0 span#mirai_be10 {display:none;}
.bookingstep1 #motor_reservas #mirai_bookentrance #mirai_be7 input {padding: 15px;height: auto;}
.bookingstep1 div.mirai_button.selectRoom, .bookingstep1 div.mirai_button.selectRoom:visited {padding: 8px;}
/*.bookingstep1 .engine_mashup > div {display: inline-block; vertical-align: top;}*/
.bookingstep1 .engine_mashup {text-align: center;}

/* para que los desplegables del motor queden por encima de los elementos del room selection */
.bookingstep1 .engine_mashup {z-index: 1;position:relative;}
html body.bookingstep1 #motor_reservas #mirai_roomSelectionContainer {z-index: 0;position:relative;padding-top: 40px;font-size: 14px!important;}

/* menu en bookingstep y submit */
.bookingstep1 ul#menu_aux2 li a, .bookingstep1 #motor_reservas #mirai_bookentrance #mirai_be7 input:hover {
    text-decoration: none !important;
}

/* ocultar fondo blanco en la caja de seleccion de habitaciones */
.bookingstep1 div#mirai_roomSelectionContainer {
    background-color: transparent !important;
    border-radius: 0 !important ;
    border: 0;
    box-shadow: none !important;
    margin-top: 0;
}

div#hotelName {
    text-align: center;
    padding: 50px 0;
}

/*ºbookingstep ------------------------------- BOOKINGSTEP ENGINE*/

.bookingstep1 .engine_mashup > div {
  display: block;
  max-width: 1500px;
  padding: 16px;
  margin: 0 auto;
}
.bookingstep1 .engine_mashup.inline > div form .control-group,
.bookingstep1 .engine_mashup.inline > div form .control-group.promo-code-control-group,
.bookingstep1 .engine_mashup.inline > div form .button-group {
  width: 19%;
  margin: 0 1% 0 0;
  height: 97px;
}
.bookingstep1 .engine_mashup.inline > div form .button-group {
  position: static;
  float: left;
}
.bookingstep1 .engine_mashup.inline > div form .button-group input[type="submit"] {
  height: 100%;
}
.bookingstep1 .engine_mashup.inline.one-row>div form .control-group label.label-code {
  position: static;
  line-height: 20px;
  padding-top: 16px;
  margin: 0;
}
.bookingstep1 .engine_mashup.inline > div form .control-group.promo-code-control-group input {
  text-indent: 0;
}
#availableRoomList tr.roomtype, #availableRoomList tr.roomrate td.col1, #availableRoomList tr.roomrate td.col2, #availableRoomList tr.roomrate td.col4, #availableRoomList td.tdRatesTable {
  background-color: #fbfbfb!important;
}

 #availableRoomList tr.roomrate td.col3, #availableRoomList tr.roomrate td.col5 {
  background-color: #fff!important;
}
div.mirai_button.selectRoom:hover, input.mirai_button.selectExtra:hover {
  background-color: #ffffff!important;
}




/**************************************************/
/************ WOOCOMMERCE  tienda *****************/
/**************************************************/

.woocommerce-page #main .container-big, .woocommerce-page #main .container-big {
  padding: 0 64px;
  position: relative;
  z-index: 1;
}
.woocommerce-page #main > .container-big, .woocommerce-page #main > .container-big {
  padding-bottom: 32px;
}
.woocommerce-checkout #main > .container-big {
  padding-top: 32px;
}

.woocommerce-page #content-page, .woocommerce-page #main, .woocommerce-page #container #content {
  width: auto!important;
  position: static;
}
.woocommerce #main .content, .woocommerce-page #main .content {
  margin: 0;
}
.woocommerce-page .product_meta a, .woocommerce-page nav.cart_list .cart-contents .contents, #tab-description a, .woocommerce-page td.product-name a {
  color: #a48b52!important;
}
.posted_in, .tagged_as {
  display: block;
  font-size: 0.85em;
  padding: 4px 0;
}
.shopping-bar {
  background: #efefef;
  padding: 32px 0 16px;
}
.shopping-bar .flex > div {
  padding-bottom: 16px;
}
.woocommerce-page ul.products {
  margin: 0 -2.2% 32px;
}

.woocommerce-page .page-title {
  margin: 64px 0;
}

/*.woocommerce-page .quantity input[type="number"] {
  height: 44px;
  margin-top: -3px;
  border-radius: 0;
}*/

/* Title & Checkout Page */
.woocommerce-page .page-title, .woocommerce-checkout .woocommerce > p:first-child, .woocommerce-page ul.products li.product a:hover h3, .woocommerce .product-type-simple #tab-description em {
    color: #000 !important;
}

/* icon cart background */
.cart-icon {
    background: #111 !important;
}

/* BASIC buttons */
.woocommerce .summary .cart .woocommerce-continue-shopping-button, .woocommerce-page .widget_shopping_cart_content .cart-contents .button, .woocommerce-page .woocommerce .return-to-shop .wc-backward {
    background: #a68141 !important;
    color: #fff!important;
    transition: .6s ease-in-out!important;
}

/* hover basic buttons */
.woocommerce .summary .cart .woocommerce-continue-shopping-button:hover, .woocommerce-page .widget_shopping_cart_content .cart-contents .button:hover, .woocommerce-page .woocommerce .return-to-shop .wc-backward:hover {
    box-shadow: inset 300px 0 #946a22;
}

/*Botón en negro*/
.woocommerce-page .cart .button {
  background: #444;
  color: #fff!important;
  border-radius: 0;
}
.woocommerce-page .cart .button:hover {
  background: #000
}

/* CUSTOM buttons */
.woocommerce .summary .cart .single_add_to_cart_button,
.woocommerce-page .cart .checkout-button,
.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order,
.woocommerce-checkout #main .woocommerce .order-again a.button,
.woocommerce a.button.alt {
    background: #d0be90 !important;
    color: #fff;
    transition: .2s;
    border-radius: 0;
    padding: 15px;
}
/* hover custom buttons */
.woocommerce .summary .cart .single_add_to_cart_button:hover,
 .woocommerce-page .cart .checkout-button:hover,
 .woocommerce #payment #place_order:hover,
 .woocommerce-page #payment #place_order:hover,
 .woocommerce-checkout #main .woocommerce .order-again a.button:hover,
 .woocommerce a.button.alt:hover {
    background: #a48b52 !important;
}

/* buttons shop read more to category page */
.woocommerce ul.products li a.woocommerce-read-more-link {
  border: 1px solid!important;
  transition: all 0.3s ease-out;
}
.woocommerce ul.products li a.woocommerce-read-more-link:hover {
  transition: all 0.6s ease-out;
}
div.product p.price, .woocommerce-page ul.products li.product .price {
  font-size: 21px;
  color: #a48b52!important;
}
.woocommerce #respond input#submit, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button {
  border-radius: 0;
  background: #131313;
  color: #fff;
}
.woocommerce #respond input#submit:hover, .woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover {
  background: #a48b52;
  color: #fff;
}
/* price color - default #42b2da */
.woocommerce-page ul.products li.product .price .amount, .woocommerce-page .product-type-simple .summary .price .amount {}

.woocommerce-page .widget_product_categories {
  position: static;
  font-size: 14px;
  float: left;
}
.woocommerce-page .widget_product_categories select {
  margin: 0 0 0 12px;
}
.woocommerce-page .widget_product_categories ul,
.woocommerce-page .widget_product_categories h3 {
  float: none;
  display: inline-block;
  font-size: 1em;
}
.woocommerce-page .widget_shopping_cart {
  position: static;
  float: right;
  padding: 0 1.8em;
}
.woocommerce-page nav.cart_list {
    padding: 23px 0;
}
.woocommerce ul.cart_list li img, .woocommerce ul.product_list_widget li img {
  display: none;
}
.woocommerce-cart table.cart td.actions .coupon .input-text {
  min-height: 35px;
}
.woocommerce-page .quantity input[type="number"] {
  height: 43px;
  padding: 0;
}
.woocommerce-checkout .woocommerce h2,
.woocommerce-checkout .woocommerce>h3 {
  margin: 0;
}
.woocommerce-info {
  border-top-color: #d0be90;
}
.woocommerce-info:before {
  color: #d0be90;
}
.woocommerce-checkout #customer_details .col-2 {
  margin: 0 auto 30px;
  width: 70%;
  float: none;
}
/**************************************************/
/**************************************************/
/**************************************************/

/*---------------------------------------------------------------------------*/
/*----------------------------------- HACKS ---------------------------------*/
/*---------------------------------------------------------------------------*/


/* IE9 & IE 8 HACK */

/* hidding icons from after in selects */

.ie9 .chain-selector-control-group:after, .ie9 .control-group.nights-control-group:after, .ie9 .widget_qtranslate:after, .ie9 #modal-engine .control-group:after,
.ie8 .chain-selector-control-group:after, .ie8 .control-group.nights-control-group:after, .ie8 .widget_qtranslate:after, .ie8 #modal-engine .control-group:after {
    display: none!important;
}

.ie9 .engine_mashup > div form .chain-selector-control-group .nights-control-group, .ie8 .engine_mashup > div form .chain-selector-control-group #chainSelector,
.ie9 .widget_qtranslate select, .ie8 .widget_qtranslate select, .ie9 .engine_mashup > div form .control-group > select,
.ie8 .engine_mashup > div form .control-group > select, .ie9 #modal-engine .control-group>  select, .ie8 #modal-engine .control-group > 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;
}

.ie9 .offers-listing-wrapper .offer .offer-button:hover,
.ie8 .offers-listing-wrapper .offer .offer-button:hover,
.ie9 .rooms-detail-wrapper .offer .offer-button:hover,
.ie8 .rooms-detail-wrapper .offer .offer-button:hover,
.ie9 .mapa .formRuta input.calculaRuta:hover,
.ie8 .mapa .formRuta input.calculaRuta:hover,
.ie9 #respond .form-submit #submit:hover,
.ie8 #respond .form-submit #submit:hover,
.ie9 .wpcf7 .wpcf7-form input.wpcf7-submit:hover,
.ie8 .wpcf7 .wpcf7-form input.wpcf7-submit:hover,
.ie9 #main .go-to-calendar:hover,
.ie8 #main .go-to-calendar:hover,
.ie9 .rooms-listing-wrapper .room-box .room-book a:hover,
.ie8 .rooms-listing-wrapper .room-box .room-book a:hover,
.ie9 .room-box .room-content .more-info:hover,
.ie8 .room-box .room-content .more-info:hover,
.ie9 .secundary-btn:hover,
.ie8 .secundary-btn:hover {
  background: #131313;
}
.ie8 .white-text .secundary-btn:hover,
.ie9 .white-text .secundary-btn:hover {
  background: #fff;
  color: #131313;
}

.ie9 .engine_mashup > div form .button-group input[type="submit"]:hover,
.ie8 .engine_mashup > div form .button-group input[type="submit"]:hover,
.ie9 .bookingstep1 #motor_reservas #mirai_bookentrance #mirai_be7 input:hover,
.ie8 .bookingstep1 #motor_reservas #mirai_bookentrance #mirai_be7 input:hover,
.ie9 .offers-detail-wrapper .offer-calendar-wrapper .offer-button:hover,
.ie8 .offers-detail-wrapper .offer-calendar-wrapper .offer-button:hover,
.ie9 .rooms-detail-wrapper .room-calendar-wrapper .room-button:hover,
.ie8 .rooms-detail-wrapper .room-calendar-wrapper .room-button:hover,
.ie9 .bookingstep1 div#noDispo .selectRoom:hover,
.ie8 .bookingstep1 div#noDispo .selectRoom:hover,
.ie9 .bookingstep1 div.mirai_button.selectRoom:hover,
.ie8 .bookingstep1 div.mirai_button.selectRoom:hover,
.ie9 .bookingstep1 #mirai_roomSelectionContainer #mirai_roomSelection .selectExtra:hover,
.ie8 .bookingstep1 #mirai_roomSelectionContainer #mirai_roomSelection .selectExtra:hover,
.ie9 .landing-booking-button:hover,
.ie8 .landing-booking-button:hover,
.ie9 .offers-detail-wrapper a.booking_mobile:hover,
.ie8 .offers-detail-wrapper a.booking_mobile:hover,
.ie9 .rooms-detail-wrapper a.booking_mobile:hover,
.ie8 .rooms-detail-wrapper a.booking_mobile:hover,
.ie9 .all-calendar input[type="button"]:hover,
.ie8 .all-calendar input[type="button"]:hover,
.ie9 .primary-btn:hover,
.ie8 .primary-btn:hover {
  background: #d0be90;
}

.ie9 .primary-btn:hover,
.ie8 .primary-btn:hover {
  background: #d0be90;
}
.ie9 .swiper-wrapper .swiper-slide,
.ie8 .swiper-wrapper .swiper-slide {
  display: none;
}
.ie8 .cat-events .swiper-wrapper .swiper-slide,
.ie9 .cat-events .swiper-wrapper .swiper-slide,
.ie9 .swiper-wrapper .swiper-slide:first-child,
.ie8 .swiper-wrapper .swiper-slide:first-child {
  display: block;
}
.ie9 .animateme,
.ie8 .animateme {
  opacity: 1!important;
  filter: none!important;
}
.ie9 .footer-links,
.ie8 .footer-links {
  display: block!important;
}
.ie9 #engine-tracking-link-wrapper,
.ie8 #engine-tracking-link-wrapper {
  display: inline-block!important;
  margin: 20px auto 0;
}
.ie9 #content-header img,
.ie8 #content-header img,
.ie8 .grayscale-img img {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";
  filter: alpha(opacity=40)!important;
  opacity: 0.4;
}
.ie9 #menu-wrapper .fx-justify-center > div,
.ie8 #menu-wrapper .fx-justify-center > div {
  display: inline-block!important;
  margin: 0 auto;
}
.ie9 .menu-links li,
.ie8 .menu-links li {
   padding: 16px 8px;
 }
.ie9 .button-group a,
.ie8 .button-group a {
   display: inline-block!important;
   float: left;
 }
 .ie8 .footer-links li {
   padding: 0 8px;
 }
 .ie8 .booking-button-box p,
 .ie8 .logo-box p {
   right: 0;
   left: 0;
 }
 .ie8 .pdf-btn i {
   -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)";
   filter: alpha(opacity=10)!important;
 }
 .ie8 .triangle-box span {
   display: none;
 }
 .ie8 .hamburger {
   border-top: 3px solid #fff;
   border-bottom: 3px solid #fff;
 }
 .ie8 .hamburger span {
   top: 50%;
   left: 0;
   right: 0;
 }
 .ie8 .hamburger span:first-child {
   top: 0;
   bottom: 0;
   height: auto;
   filter: alpha(opacity=1);
 }
 .ie8 #main .button-group {
   margin-top: 20px;
 }
 .ie8 #menu-wrapper .booking-box,
 .ie8 #menu-wrapper .menu-box {
   min-height: 1120px;
 }
 .ie8 .common-form label {
   z-index: 1;
 }

/*-------- ----------------WIDGET TRIPTEASE --------------------------*/

#eighty_hotel_reviews_widget {
    z-index:1!important;
}


/*---------------------------------------------------------------------------*/
/*------------------------------- IMPROVEMENTS ------------------------------*/
/*---------------------------------------------------------------------------*/

  


.text-red {
           color: #FF0000;
}

body.signup .table_levels table {
	border-collapse: separate;
	border-spacing: 8px !important;
	background-color: #f9f9f9;
}

body.signup .table_levels th,
.table_levels td {
	border: none;
	background-color: #fff;
	padding: 10px;
}

.table_levels table caption {
	caption-side: bottom;
}

.table_levels {
	overflow-x: auto;
        width: 100%;
}
.club-signup .table_levels tbody .check, .club-signup .table_levels tbody .uncheck{
    color: transparent;
} 
.club-signup .table_levels tbody .check::before {
    content: '';
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 15 15"><path fill="none" stroke="%23BF9F80" d="M4 7.5L7 10l4-5m-3.5 9.5a7 7 0 1 1 0-14a7 7 0 0 1 0 14Z"/></svg>');
    display: inline-block;
    width: 24px;
    height: 24px;
}
.club-signup .table_levels img {
    object-fit: scale-down;
}

.dots-line .flickity-page-dots {
    height: 30px;
    bottom: -60px;
}

.dots-line .flickity-page-dots .dot {
    width: 6%;
    height: 2px;
    margin: 0;
    position: relative;
    border-radius: 0;
}

.dots-line .flickity-page-dots .dot::before {
    content: "";
    position: absolute;
    top: -15px;
    left: 0;
    width: 100%;
    height: 30px;
}

.dots-line .flickity-page-dots .dot.is-selected {
    opacity: 1;
    height: 6px;
    margin-bottom: -2px;
}

.dots-line .flickity-page-dots .dot {
    width: 6%;
    height: 2px;
    margin: 0;
    position: relative;
    border-radius: 0;
}

.title-hotel {
    color: var(--primary-color);
    font-size: 2rem;
    line-height: 1.2;
    font-family: 'Canela Light', sans-serif;
}

.bg-gray {
    background: rgba(216, 216, 216, 0.3);
}

.carousel-cell {
    min-height: 100%;
}

.mrs {
	margin-right: 24px;
}

.mi-icon-vertical {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.mi-icon-vertical li {
	width: 33.3%;
	margin-bottom: 24px;
	font-family: 'FoundryContext Demi', sans-serif;
}

.mi-icon-vertical li:nth-child(3n-1) {
	text-align: center;
}

.mi-icon-vertical li:nth-child(3n) {
	text-align: right;
}

.mi-icon-vertical li > div {
	position: relative;
	display: inline-block;
	text-align: center;
}

.mi-icon-vertical i {
	display: block;
	margin-bottom: 12px;
	font-size: 3em;
	color: var(--primary-color);
}

.no-meeting {
	pointer-events: none;
	opacity: 0.6;
	color: #bbb;
}

.mi-icon-vertical .no-meeting i {
	color: #bbb;
}

.pop {
	position: absolute;
	color: #fff;
	white-space: nowrap;
	bottom: calc(100% + 25px);
	left: 50%;
	line-height: 20px;
	background: #000;
	-webkit-box-shadow: 0 0 0 2px #fff;
	box-shadow: 0 0 0 2px #fff;
	padding: 4px 10px;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-size: 10px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	opacity: 0;
	visibility: hidden;
}

li:hover .pop {
	bottom: calc(100% + 10px);
	opacity: 1;
	visibility: visible;
	-webkit-transition: .3s;
	transition: .3s;
}

.pop::before {
	content: "";
	position: absolute;
	display: block;
	width: 10px;
	height: 10px;
	background: black;
	top: calc(100% - 5px);
	left: calc(50% - 4px);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-box-shadow: 3px 3px 0 -1px #fff;
	box-shadow: 3px 3px 0 -1px #fff;
}

.carousel-cell {
    min-height: 100%;
}

#hotel-event-rooms .carousel-cell {
    width: 27%;
    min-width: 250px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

#hotel-events .carousel-cell {
    width: 27%;
    min-width: 250px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

#hotel-events2 .carousel-cell {
    width: 27%;
    min-width: 250px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

/*tablas alturas*/

 .table-container {
            margin: 0 auto; /* Centra horizontalmente */
            width: fit-content; /* Ajusta el ancho al contenido */
        }


/* Temporal banner added */

.overlayMirai {
    background: #fff;
    bottom: 0;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 100000;
    opacity: .6;
}

.popupMirai {
    /* background: transparent url(/files/best-price.jpg) no-repeat center; */
    background-size: cover;
    padding: 38px;
    position: fixed;
    margin-left: -315px;
    left: 50%;
    top: 25%;
    width: 630px;
    z-index: 100001;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    left: 50%;
}

a.closepopup {
    color: #484848;
    font-weight: 600;
    position: absolute;
    top: 10px;
    right: 10px;
    font-size: 33px;
    opacity: 1;
    cursor: pointer;
    display: inline-block;
}

.popupMirai .row {
    background: rgba(0, 0, 0, 0.75);
    padding: 30px;
}

.popupMirai h3 {
    font-family: 'Playfair Display', serif;
    font-size: 2.5em;
    text-transform: uppercase;
    letter-spacing: .03em;
    line-height: 1.1;
    margin-bottom: 24px;
    word-break: break-word;
}

.content-popup {
    padding-bottom: 15px;
    text-align: center;
}

.popupMirai p {
    font-size: 2em;
    font-weight: 100;
    color: #fff;
    line-height: 45px;
    padding-bottom: 5px;
    text-align: center;
}

.title-banner em {
    font-size: 0.5em;
}

.popupMirai .content-popup a {
    text-transform: uppercase;
    color: #fff;
    font-size: 1.3em;
    letter-spacing: 2px;
    border: 2px solid #fff;
    padding: 20px;
    font-weight: 400;
    transition: all .2s linear;
}

/* MEJORA POPUP */
/*
#popup-modal .modal-dialog {
  max-width: 600px;
  margin: 0 auto 100px;
  position: relative;
  top: 20%;
  background: transparent;
}
body.modal-open #popup-modal {
  overflow-x: hidden;
  overflow-y: auto;
}
#popup-modal .popup-wrapper {
  display: flex;
  align-items: center;
  position: relative;
  text-align: center;
  min-height: 330px;
  padding: 30px;
  background: #0e4c81;
  width: 100%;
  box-sizing: border-box;
}
#popup-modal .popup-wrapper img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.7;
}
#popup-modal a {
  text-decoration: none;
}
#popup-modal .popup-wrapper a:hover img {
  opacity: 0.55;
  transition: .4s;
}
#popup-modal .popup-text-line,
#popup-modal .popup-text {
  position: relative;
  z-index: 2;
  font-size: 1.7em;
  display: block;
  line-height: 1.3;
  font-weight: bold;
  color: #fff;
  padding-bottom: 0;
  text-shadow: 0 2px 2px rgba(0, 0, 0, 0.31);
}
#popup-modal .popup-text-line {
  font-size: 1.3em;
  padding: 20px;
  display: inline-block;
  margin-bottom: 20px!important;
  border-top: 1px solid;
  border-bottom: 1px solid;
}
#popup-modal .close {
  opacity: .8;
  color: #fff!important;
  text-shadow: 0 1px 0 #000;
  padding: 12px 0 12px 12px;
  outline: 0;
}
#popup-modal .offer-more-btn {
  margin-top: 20px;
  display: inline-block;
  padding: 10px 30px;
  border: 1px solid;
  color: #fff;
  position: relative;
  z-index: 2;
  border-radius: 4px;
}

.popup-summer {
  background: rgba(58, 58, 58, 0.8);
  margin-top: 10px;
  padding: 30px;
  text-align: center;
}
.popup-summer:hover {
  background: rgba(70, 70, 70, 0.8);
}
.popup-summer small {
  color: #eee;
    display: block;
}
#popup-modal .new-offer-date {
  position: absolute;
  font-size: 18px;
  background: #ea705a;
  padding: 7px;
  text-shadow: none;
  bottom: 70px;
  right: -80px;
  transform: rotate(12deg);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.29);
} */

.bookingstep1.menu-open .mi-rs-results {
  position: relative;
  z-index: 1;
}
.bookingstep1 .affix {
    position: relative;
}

/* CLUB BUTTON */

/*.club-home{display: none;}*/

.small-club{
    background: rgba(0, 0, 0, 0.8);
    text-align: center;
    text-transform: uppercase;
    display: none;
}

/*.home .small-club{display: block;}*/

.small-club span{
  font-weight: bold;
    padding-left: 10px;
}

.small-club a{
  color: #fff;
  transition: all 0.4s ease-out;
}

.small-club a:hover{
  color: #d0be90;
  text-decoration: none;
}

.preheader{line-height: 25px;}


p.offer-pdf-link a {
    color: #a48b52!important;
}


#modal-rrhh .acept-privacity {
    margin-bottom: 20px;
}

span.wpcf7-form-control-wrap.file-cv {
    padding: 10px;
    background: #eee;
    text-align: center;
}

#modal-rrhh .modal-body {
    padding-left: 28%;
}

.cookies-clas i {
    display: inline-block;
    padding-right: 10px;
}

.cookies-clas a {
    font-size: 18px;
}

.cookies-clas {
    margin-bottom: 80px;
}

.banner-warning .animateme {
    width: 100%;
    background-color: #06080b;
    color: white;
    padding: 30px;
    text-align: center;
}

.banner-warning .animateme p {
    padding: 0;
    color: white;
}

/* popup-modal */
.bg-img {
  position: relative;
}
.bg-img img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.bg-img > div {
  position: relative;
}
#popup-modal .close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  box-sizing: border-box;
  padding-right: 12px;
  background: rgba(0, 0, 0, 0.41);
  padding: 12px;
  opacity: 1;
  color: #fff;
}
#popup-modal .modal-body {
  min-height: 400px;
}
.is-mobile #popup-modal .modal-dialog {
  min-height: 0;
  top: 15%;
}

#banner-christmas {
  overflow: hidden;
}
#banner-christmas .flex img {
  height: 100%!important;
}


ul.sublist {
    padding-left: 1.5%;
}

.woocommerce #main .product-type-simple #tab-description .sublist li {
    list-style-position: inside;
    list-style-type: circle;
}



.spa-luxury-label {
  align-items: flex-start;
  flex-wrap: wrap;
}
.spa-luxury-label ul {
  flex: 1 1 220px;
}
.spa-luxury-img {
  max-width: 150px;
}
.spa-luxury-img img {
  height: auto!important;
}


/* Mensaje aviso finalizar compra */

#content-message {
    background-color: #f2f1f2;
    border: none;
    border-radius: 5px;
    padding: 20px;
    box-sizing: border-box;
    position: relative;
    overflow: visible;
}

#content-message .mi-title3 {
    font-size: 29px;
    margin: 0;
    margin-bottom: -20px;
    padding: 0;
}

#content-message img {
    width: 100%;
}

#content-message strong {
    color: black;
    font-size: 18px
}

#content-message .icon {
    position: absolute;
    right: 55px;
    top: -15px;
    width: 50px;
    height: 50px;
    background: #f2f1f2;
    border-radius: 5px;
    transform: rotate(45deg);
    z-index: -1;
}



/* Wedding popup */
.wedding-wrapper {
  text-align: center;
}

.wedding-wrapper img {
  width: auto!important;
}

/* hidding cart form in  a product */
.product.post-7522 form.cart {
    display: none!important;
}

/* Mapa bg */
#map-wrapper {
    background-image: url('/files/mapa.jpg');
    background-position: center;
    background-size: cover;
}

/* Christmas */
section#christmas .text-box {
    max-width: 768px;
}

#christmas img {
    object-fit: cover;
}

#christmas a {
    display: block;
    margin: 5px 0;
}

/* Periodicos */

.media-img img {
	height: auto !important;
    opacity: 0.8;
    transition: all .2s ease-in;
}

.media-img:hover img {
	opacity: 1;
}

/* QUOTES */
.quotation-mark {
	margin: -50px 0 -60px 0;
    padding: 0 !important;
    font-size: 70px;
    font-family: serif;
}

.quote-text {
	font-style: italic;
    margin-left: 15px;
}

img.plano {
    max-width: 300px;
    width: 100% !important;
    height: auto !important;
}

  /* BLOG MASHUP */

 #home-blog ul.rpwe-ul {
        display: flex;
        justify-content: space-between;
    }

    #home-blog h3.rpwe-title a, #home-blog a.more-link, #home-blog li.rpwe-li {
        color: #535353;
    }

    #home-blog h3.rpwe-title {
        font-size: 24px;
        text-transform: uppercase;
        letter-spacing: .03em;
        margin-bottom: 15px;
        margin-top: 15px;
    }

    .rpwe-summary {
        font-size: 16px;
    }

    #home-blog a.more-link {
        display: block;
        margin-top: 15px;
        text-decoration: underline;
        font-size: 16px;
        text-transform: uppercase;
    }

    #home-blog h2.widgettitle {
        display: none;
    }

    #home-blog li.rpwe-li {
        padding: 0 25px;
        height: 100%;
        width: 33%;
        overflow: hidden;
    }

    #home-blog a.rpwe-img {
        display: block;
        overflow: hidden;
    }

    #home-blog img.rpwe-thumb {
        height: 250px;
        width: 100%;
        object-fit: cover;
    }

    .the-post-thumbnail {
        object-fit: cover;
        width: 100%;
        height: 100%;
    }


/* BLOG PAGE */

.blog-wrapper, .blog-sidebar {
    padding: 50px 0;
}

.blog-wrapper {
    padding-right: 60px;
}

/* 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: 10px 0 !important;
    max-width: 100%;
    width: 100%;
    max-height: 200px;
    object-fit: cover;
}

.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;
}

.post h2 {
	font-family: 'Playfair Display', serif;
    font-size: 2.5em;
    text-transform: uppercase;
    letter-spacing: .03em;
    line-height: 1.1;
    margin-bottom: 24px;
    word-break: break-word;
}



.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;
}

/* 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;
}

/* CHRISTMAS 2023*/

.button-group-christmas a {
  box-sizing: border-box;
  font-size: 0.8em;
  margin-bottom: -1px;
  margin-left: -1px;
  height: fit-content;  
}

.button-group-christmas {
    justify-content: center;
    background: #840010;
}

.box-christmas-2023 {
   height: 70px;
    display: flex;
}

.secundary-btn-christmas {
    background: transparent;
    border-radius: 0;
    text-shadow: none;
    text-decoration: none;
    color: #ce9a37;
    text-transform: uppercase;
    letter-spacing: 0.01em;
    line-height: 1;
    padding: 20px 40px;
    border: 1px solid;
    transition: all 0.3s ease-out;
    background: -webkit-linear-gradient(left, rgba(0,0,0,1), rgba(0,0,0,0.6), rgba(34,34,34,0), rgba(34,34,34,0));
    background: -o-linear-gradient(left, rgba(0,0,0,1), rgba(0,0,0,0.6), rgba(34,34,34,0), rgba(34,34,34,0));
    background: linear-gradient(to right, rgba(0,0,0,1), rgba(0,0,0,0.6), rgba(34,34,34,0), rgba(34,34,34,0));
    background-position: 99% 50%;
    background-size: 300% 300%;
}

.secundary-btn-christmas:hover {
    text-decoration: none;
    background-position: 1% 50%;
    border-color: transparent;
    color: #fff;
    transition: all 0.6s ease-out;
}

.ie9 .secundary-btn-christmas:hover,
.ie8 .secundary-btn-christmas::hover {
  background: #131313;
}
.ie8 .white-text .secundary-btn-christmas::hover,
.ie9 .white-text .secundary-btn-christmas::hover {
  background: #fff;
  color: #131313;
}

.secundary-btn-christmas.pdf-btn {
  position: relative;
  overflow: hidden;
}
.secundary-btn-christmas.pdf-btn:hover {
  padding: 20px 30px 20px 50px;
}
.secundary-btn-christmas.pdf-btn i {
  position: absolute;
  opacity: 0;
  color: #fff;
  font-size: 60px;
  top: 4px;
  left: 1px;
}
.secundary-btn-christmas.pdf-btn:hover i {
  opacity: .2;
  transition: .5s;
}

@media (max-width: 767px) {
	.box-christmas-2023 {
    	flex-direction: column-reverse;       
    }
}

/*---------------------------------------------------------------------------*/
/*-------------------------------- MEDIA QUERYS -----------------------------*/
/*---------------------------------------------------------------------------*/


/* Large desktop */
@media (min-width: 1200px) {
  .hamburger:hover span:nth-child(1) {
    top: 5%;
  }
  .hamburger:hover span:nth-child(4) {
    top: 95%;
  }
  .club-home{
    max-width: 250px;
    padding: 10px 20px;
    /*overflow: hidden;*/
    color: #ffF;
    height: 33px;
    /*display: none;*/
  }

  .home .club-home {
      display: block;
      height: 33px;
      width: 150px;
      display: block;
      padding: 10px;
      margin-right: 10px;
  }

  .secundary-btn:hover.club-home {
    border-color: #fff;
}

  .club-home span{
    font-weight: bold;
    display: block;
    transition: color .4s;
    padding-top: 5px;
  }

  .secundary-btn:hover.club-home {
    border-color: #fff;
    background: #fff;
    color: #000;
  }

  .home .small-club{display: none;}

  html[lang="es"] .booking-button-box p{right: 107px;}
  html[lang="en"] .booking-button-box p{right: 76px;}
  html[lang="fr"] .booking-button-box p{right: 110px;}
  html[lang="de"] .booking-button-box p{right: 94px;}
  html[lang="it"] .booking-button-box p{right: 118px;}
}

/* XLarge desktop */
@media (min-width: 1920px) {
    /* biggers designs */
    /*.container, .navbar-static-top .container, .navbar-fixed-top .container, .navbar-fixed-bottom .container {
        width: 1800px;
    }*/
}

/* Small screens */
/*@media (min-width: 768px) and (max-width: 979px) {*/
@media (max-width: 979px) {
    .bookingstep1 #mirai_roomSelectionContainer {
        width: 98%;
    }
    .bookingstep1 #header .content {
        width: 100%;
    }
    .offers-detail-wrapper .section {
        padding: 0 !important;
    }
    #ui-datepicker-div{
        font-size: 14px !important;
        left: 10px!important;
    }
    /* MULTIROOM */
    /* para poner el botón reservar debajo del resto de control groups descomentar estas líneas */
    /*.engine_mashup.showMultiroomFilter > div form .control-group {
        margin-bottom: 10px;
    }
    .engine_mashup.showMultiroomFilter > div form .control-group.promo-code-control-group {
        margin-right: 0;
    }
    .engine_mashup.showMultiroomFilter > div form .button-group {
        display: block;
        float: none;
    }
    .engine_mashup.showMultiroomFilter > div form .button-group input {
        width: 100%;
    }*/
    /* -------------------- */
    .logos {
        padding: 30px 0 60px;
    }
    /* BLOG */
    .blog-wrapper {
        padding: 50px 30px;
    }
    .blog-sidebar .widget_search form input[type="text"] {
        width: auto;
        margin-bottom: 0;
    }

  

    /* HEADER */
    
     /*club*/
    
    .booking-button-box  .mi-club-login__logged .mi-club-login__logged-links a {
    width:auto;
    color: #4a4a4a;
    max-width:100%;    

    }
    
    .booking-button-box p {
      display: none;
    }
    .booking-button-box .booking-btn,
    .booking-button-box a {
      max-width: 85px;
      padding: 0;
      box-sizing: border-box;
    }
    /*.booking-button-box .booking-btn::before,
    .booking-button-box a::before {
      content: '\e9e2';
      font-family: 'mirai-icofonts';
      font-size: 30px;
      display: block;
      line-height: 51px;
    }*/
    
     .booking-button-box .booking-btn.primary-btn::before {
      content: '\e9e2';
      font-family: 'mirai-icofonts';
      font-size: 30px;
      display: block;
      line-height: 51px;
    }
    
  .cat-room-detail .booking-button-box {
    	display: none !important;
    }

    /* HOME */
    #home-events .text-box {
      max-width: 450px;
      padding-left: 16px;
      padding-right: 16px;
    }
    #home-rooms .flex .col-sm-12 {
      padding: 0;
    }
    #home-offers .pl0 {
      padding-top: 0;
    }
    /* imágenes */
    #main .flex img {
      height: 500px;
      min-height: 0;

    }
    /* grid 1 row*/
    .grid-one-row .prl, .grid-one-row .pbxl, .grid-one-row .pull-bottom {
      padding: 0;
    }
    .grid-one-row > .flex:not(:first-child) {
      margin-top: 0;
    }
    /* grid 2 imágenes*/
    .grid-two-row .container-big > .flex:last-child:not(.only-child),
    .grid-two-row .container-big > .flex:not(.only-child) .col-md-6:last-child,
    .grid-two-row .container-big > .flex:last-child:not(.only-child) .col-md-6:last-child {
      margin: 0;
      padding: 0;
    }
    .grid-two-row .container-big > .flex:first-child .col-md-6:first-child {
      padding: 0 32px;
    }
    .grid-two-row .pll {
      padding-right: 32px;
    }
    /*.grid-two-row img {
      max-height: 700px;
    }*/
    .grid-two-row .fx-align-center .text-box {
      padding: 64px 32px;
    }
    .text-box {
      padding: 64px 32px;
    }
    /* márgines y pádines generales */
    .text-box {
      max-width: none;
      width: 100%;
    }
    body .pt0 { padding-top: 32px }
    body .pl0, .pll { padding-left: 32px }
    body .pb0, .pbl { padding-bottom: 32px }
    .plr { padding-right: 32px }
    .pvxl {
      padding-top: 80px;
      padding-bottom: 80px;
    }

    /* FOOTER */
    #footer,
    #footer .align-right,
    #footer .align-left {
      text-align: center;
    }
    /* pages */
    .menu-open #menu-wrapper .booking-box {
      display: none!important;
    }
    .menu-open.booking-mode #menu-wrapper .booking-box {
      display: flex!important;
    }
    .rooms-listing-wrapper .room-box .room-detail ul li {
      display: inline-block;
      padding: 0 10px 10px;
    }
    .cat-events .grid-one-row .pull-bottom img {
      display: none;
    }
    .tables .image-box {
      position: absolute;
      top: 0;
      left: 0;
      padding: 0;
      opacity: 0.1;
    }
    .tables .relative {
      overflow: hidden;
    }
    .tables .pl0 {
      padding-left: 64px;
    }
    .carousel-control {
      left: 5px;
    }
    .carousel-control.right {
      left: auto;
      right: 5px;
    }
    .modal-big .modal-dialog {
      top: 0;
      animation: none!important;
      margin: 0;
      min-height: 100vh;
    }
    .bookingstep1 #mirai_roomSelection a.moreinfo,
    .bookingstep1 #mirai_roomSelection a.moreinfo:hover,
    .bookingstep1 #mirai_roomSelection tr.roomrate td.col2 a,
    .bookingstep1 #mirai_roomSelection tr.roomrate td.col2 p a {
      border-radius: 0;
      background: #131313;
    }
    .bookingstep1 .engine_mashup.inline.one-row>div form .control-group label.label-code {
      padding-top: 0;
    }
    .room-box .room-detail h3 {
      text-align: center;
    }

}

/* Screen touch devices */
@media (min-device-width: 0) and (max-device-width: 1024px) {

  body:not(.home) #content-header .animateme {
    transform: none!important;
  }
  #main section .animateme {
    transform: none!important;
  }
  /*Cancelamos los márgenes en las modales*/
  body.menu-open,
  body.modal-open,
  body.menu-open #content-header .carousel-inner,
  body.menu-open .affix,
  body.modal-open .affix {
    margin-right: 0;
  }
  body.menu-open .menu-backdrop, body.modal-open.home #content-header .carousel-inner {
    right: 0;
  }
  .phl {
    padding-left: 32px;
    padding-right: 32px;
  }
  /* header */
  .affix-wrapper > div {
    padding: 16px;
  }
  .booking-btn.primary-btn:hover {
    border-color: #fff;
    background-position: 99% 50%;
  }
  /* rooms */
  .cat-rooms .container {
    padding-left: 32px;
    padding-right: 32px;
  }
  .rooms-listing-wrapper.default-left .rooms-listing .room-item .room-detail, .rooms-listing-wrapper.default-left .rooms-listing .room-item .room-content {
    padding-left: 10px;
  }
  .rooms-listing-wrapper .container > .common-services {
      margin-bottom: 14px;
  }
  .room-box .room-content .more-info {
    padding: 20px;
  }
  .rooms-listing-wrapper .rooms-listing .room-item {
    margin: 0;
    padding: 26px 0 32px 0;
    border-top: 1px dashed #ccc;
  }

  .secundary-btn:not(.advantages) {
    padding: 20px 30px;
  }
  #intro .common-form {
    padding-left: 16px;
    padding-right: 16px;
  }

}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px)  { 
    #content-header .image-box img {
    	height: auto !important;
        min-height: 600px;
    }
}

@media(max-width: 768px){
  #main #christmas section{
      margin-top: 0px;
      margin-bottom: 0px;
    }
}


/*------------------------------------------------------------------------------*/

/* CHAT QUICKTEXT */
iframe#qt-button-frame {
    display: block;
    overflow: hidden !important;
    animation = qt-scale-up-bottom .3s cubic-bezier(.39,.575,.565,1.000) both: ;
    user-select: none !important;
    border: none !important;
    position: fixed !important;
    margin: 20px !important;
    width: 60px !important;
    height: 60px !important;
    border-radius: 50% !important;
    bottom: 0% !important;
    right: 0 !important;
    left: null !important;
    box-shadow: rgba(0,0,0,0.4) 0 0 30px 0 !important;
    animation: qt-scale-up-bottom .3s cubic-bezier(.39,.575,.565,1.000) both !important;
    z-index: 1049 !important; /* --- 1 menos que las modales --- */
}
 
div[id="eighty_hotel_Reviews.prototype"] {
    z-index: 1048 !important; /* --- 2 menos que las modales --- */
}
/* FIN CHAT QUICKTEXT */

/* Home Rewards */
.home-rewards__wrapper {
    /*display: none!important;*/
    margin-top: 0px!important;
    background: #ede8dc;
}

.home-rewards__txt img {
    max-width: 180px;
    backface-visibility: hidden;
}

.home-rewards__adv-item {
    flex: 1;
}

.home-rewards__adv-item i {
    font-size: 2.5rem;
    padding-right: 10px;
}

.home-rewards__adv-item p {
    margin-bottom: 0;
}
.home-rewards__link a {
    color: #987e52;
}
.home-rewards__wrapper .fwd-link, .back a {text-transform: uppercase;}

@media (max-width: 767px) {
  .home-rewards__wrapper {
    margin-top: 0;
    text-align: center;
  }
  .home-rewards__txt img {
    margin-top: 10px;
    max-width: 180px;
      height: auto!important;
  }
  .home-rewards__adv-list {
    flex-wrap: wrap;
  }
  .home-rewards__adv-item {
    flex-wrap: wrap;
    flex: initial;
    justify-content: center;
    width: 100%;
  }
  .home-rewards__adv-item:first-child {
    padding-top: 0;
  }
  .home-rewards__adv-item i {
    margin-bottom: 10px;
    padding-right: 0;
    width: 100%;
  }

}


/*Reward Fixes*/
.home-rewards__txt h3{
    text-transform: uppercase;
    font-size: 20px;
    font-family: 'Playfair Display', serif;
    text-transform: uppercase;
    font-weight: normal;
    color: #535353;
    line-height: 1.5em;
    letter-spacing: 0;
    margin-bottom: 20px;
}
.home-rewards__adv-item i,
.home-rewards__adv-item p {
	color: #535353
}

.home-rewards__adv-item p {
	font-size: 15px;
}


.home-rewards__link a {
        font-family: 'Open Sans', 'sans-serif';
    	color: #987e52;
        text-transform: uppercase;
        font-size: 17px;
}
.red-color-text{
    color: #A20003;
}

@media (max-width: 425px) {
	.logo-box {
		max-height: 60px;
    	overflow: hidden;
	}
}