/*
Theme Name: Mirai Theme Child
Theme URI: http://www.miraiespana.com
Description: Tema hijo desarrollado por Mirai Espana para hoteles.
Template: mirai
Author: Mirai Espana
*/



/*-------------------------------- MEDIA QUERYS --------------------------------*/

/* iphone portrait & landscape - galaxy portrait & lanscape */
@media (max-device-width: 767px) {

    body {
      font-size: 13.8px;
    }
    .container {
        padding-left: 10px;
        padding-right: 10px;
        overflow: hidden;
    }
    .modal.fade.in {
        top: 0px;
        bottom: 0px;
        left: 0px;
        right: 0px;
        border-radius: 0;
    }
    .modal-header,
    .modal-body {
      padding: 20px 30px;
    }
    .modal-header {
      padding-right: 45px;
    }

    /* hide on mobile */
    body .menu li.booking-button,
    body #menu_web li.menu-item.booking-button,
    html body.home #menu_web li.booking-button,
    #logo a span.visible-phone,
    .footer-logo,
    #home-tabs .tabs-btn span,
    .rooms-listing-wrapper .common-services {
        display: none !important;
    }

    .ph0-xs {padding-left: 0;padding-right: 0;}
    .fx-column-md, .fx-column-xs,
    .flex.child-divisor {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        -webkit-flex-direction: column;
        flex-direction: column;
    }
    .pam {
      padding: 18px;
    }
    .t-underline {
      margin-bottom: 18px;
    }

    /*-------- HEADER --------*/

    /* logo */
    #header #logo {
      height: 58px;
      transform: scale(.8);
      top: 6px;
      left: 6px;
    }
    #header #logo a {
      max-width: 58px;
      height: 58px;
    }
    #logo a img {
      display: block;
      margin-left: -37px;
    }

    /* botón de reserva */
    .modal-engine-wrapper {
      transform: scale(.8);
      top: 6px;
      left: 47px;
      right: auto;
      display: flex;
    }
    #header .booking-modal-btn::before,
    .booking-link::before {
      content: "\e9e2";
      font-family: "mirai-icofonts";
      font-size: 24px;
      padding-right: 10px;
      vertical-align: middle;
      margin-top: -4px;
      display: inline-block;
    }
    #header .booking-modal-btn,
    .booking-link {
      transform: none!important;
      display: flex!important;
      align-items: center;
      width: auto;
      padding: 0 10px;
      text-align: center;
      height: 58px;
      line-height: 54px;
      box-sizing: border-box;
      background: rgba(255, 255, 255, 0.3);
      border: 2px solid #987e52;
      color: #987e52;
    }
    .booking-link {display: none!important}

    #header-info {
      padding-top: 30px;
    }
    /* efectos affix */
    #header .content > .affix-top,
    #header .content > .affix {
      padding: 0;
      height: 70px;
      background: rgba(255,255,255,.94)!important;
    }
    .hotel-menu {
      min-height: 0;
      height: 0!important;
    }
    .hotel-menu > div,
    .hotel-menu .affix {
      top: 70px;
      position: fixed;
      z-index: 10;
      width: 100%;
    }

    .tel-mobile {
      width: 40px;
      border: 2px solid;
      margin-left: 8px;
      font-size: 24px;
      line-height: 51px;
    }
    .tel-mobile i {
      display: inline-block;
      padding: 0 8px;
    }

    /* clases generales */
    #content-header {
      overflow: hidden;
    }
    #content-header > img {
      height: 520px;
    }

    .m-text .align-center p,
    .m-text.align-center p {
      text-align: left;
      text-align-last: left;
    }
    .button-group:not(#engine-tracking-link-wrapper) a {
      display: block;
    }
    .minh-60 {min-height: 350px;}

    .table-box {
      overflow-x: auto;
      padding-top: 64px;
    }
    .table-box table {
      min-width: 750px;
    }
    .table-box::before,
    .table-box::after {
      content: "\e977";
      font-family: 'mirai-icofonts';
      position: absolute;
      top: 20px;
      left: 49.8%;
      font-size: 24px;
    }
    .table-box::after {
      content: "\e976";
      left: auto;
      right: 49.8%;
    }
    .child-divisor > * + * {
      padding-left: 0;
      margin-left: 0;
      border-left: 0;
      padding-top: 18px;
      margin-top: 22px;
      border-top: 2px solid #987e52;
    }
    .child-divisor .secundary-btn {
      white-space: normal;
    }

    .txt-engine-adv .exclusive-discount {
      display: none;
    }

    .logos-slider {
        top: 150px;
    }

    .csp-logo, .csp-logo img {
        width: 70px;
    }

    .logos-slider > img {
        max-width: 70px;
    }
    .logos-slider.andalucia {
      top:312px;
    }
    .logos-slider.insurance {
        top:230px;
    }

    .logos-slider.insurance  img {
        max-width: 70px;
    }
    .cat-hotel-casa-fuster .logos-slider.insurance {
    top:306px;
    }

    /*-------- MAIN --------*/

    .home section#main {display: block;}


    /* home */
    #home-tabs .swiper-wrapper .text-box {
      padding-right: 0;
    }
    #home-tabs .tabs-btn li {
      flex: 1;
    }
    #home-tabs .tabs-btn li a,
    #home-tabs .tabs-btn li i {
      padding: 8px 0;
      font-size: 28px;
    }
    #home-tabs .mi-title2 {
      font-size: 1.6em;
    }
    #home-tabs .mi-title2::before {
      content: attr(data-place);
      display: block;
      font-size: 14px;
      padding-bottom: 8px;
      text-transform: uppercase;
    }
    #home-tabs .over-img > div {
      margin-top: 86px;
    }
    #home-tabs .minh-70 {
      min-height: calc( 100vh - 134px );
    }
    #home-tabs.mi-tabs .control-box {
      top: 0px;
      bottom: auto;
    }
    #home-tabs .swiper-button-prev, #home-tabs .swiper-button-next {
      background: rgba(255, 255, 255, 0.25);
    }

    /* Menú */

    #main-menu-wrapper #menu_web > li.menu-item {
      border-bottom: 1px solid rgba(152, 126, 82, 0.24);
    }


    /* Individual */
    .hotel-contact .mi-title5 {
      max-width: none;
    }
    .hotel-contact > .flex {
      display: block!important;
      text-align: center;
    }
    .hotel-contact .hotelschema > div > div {
      text-align: center;
    }
    .hotel-contact .hotelschema {
      flex: 1;
      flex-wrap: wrap;
    }
    .hover-icon-list li {
      flex: 1 0 80px;
      text-align: center;
      padding-top: 16px;
    }
    .hover-icon-list {
      flex-wrap: wrap;
      padding-top: 16px;
    }
    .hover-icon-list .m-popover {
      width: 100px;
    }
    .hover-icon-list a .m-popover {
      display: none;
    }
    .hover-icon-list .m-popover span {
      padding: 8px;
    }
    .hover-icon-list li:last-child .m-popover,
    .hover-icon-list li:first-child .m-popover {
      right: 50%;
      transform: translateX(50%);
      left: auto;
      text-align: center;
    }
    .hover-icon-list li:last-child .m-popover span::before,
    .hover-icon-list li:first-child .m-popover span::before {
      left: calc(50% - 7px);
      right: auto;
    }
    .offers-mashup dl dd span {
      font-size: 1.5em;
      padding: 20px 0 40px 0;
    }

    /* habitaciones */
    .room-box {
      padding: 40px 10px;
    }
    .room-box .room-content .more-info {
      margin: 0;
    }
    .rooms-listing-wrapper .rooms-listing .room-item .room-content .room-price {
      text-align: center;
      margin-top: 24px;
    }
    /* detalle */
    .back {
      margin: 30px 0;
    }
    .rooms-detail-wrapper .room-box-offers .offers-listing .offer,
    .offers-listing-5 .offers-listing .offer {
      padding: 10px 30px;
      margin: 0!important
    }
    .rooms-detail-wrapper .room-box-offers > h3 {
      padding: 30px 0;
    }
    .offers-detail-wrapper .offer-calendar-wrapper, .rooms-detail-wrapper .room-calendar-wrapper {
      border: 0;
      margin: 40px 0 0;
    }
    .rooms-detail-wrapper .room-calendar-wrapper {
      margin-bottom: 60px;
    }
    .rooms-detail-wrapper .room a.booking_mobile,
    .offers-detail-wrapper a.booking_mobile {
      min-width: 60%;
      padding: 20px;
      background: #987e52;
    }



    /*-------- FOOTER --------*/
    #footer {height: auto;}
    #footer .content {
        display: block!important;
    }
    .home #footer .content > * {
        display: inherit;
    }
    #footer,
    #footer .align-right,
    #footer .align-left,
    .footer-menu .menu-column:nth-child(3),
    #footer .row > div.col-md-4:nth-child(3),
    .mi-menu *,
    .footer-menu .menu-column .sub-menu {
        text-align: center;
    }
    #footer .container > .row > * {
        padding: 20px 0;
    }
    .footer-menu .menu-column {
      width: 100%;
    }
    .footer-menu .menu > li + li .sub-menu li.menu-item-has-children > a {
      margin-top: 10px;
    }
    .all-hotels-menu {
      width: auto;
  }

    /* carousel controls */
    .carousel-control,
    .swiper-container .swiper-button-prev,
    .swiper-container .swiper-button-next {
      height: 50px;
      line-height: 50px;
      font-size: 20px;
      width: 50px;
    }
    .carousel-control.left,
    .swiper-container .swiper-button-prev {
      right: 49px;
    }

    .gastro-navigation li {
      width: 75px;
    }
    .gastro-navigation ul::before {
      left: 35px;
      right: 35px;
    }
    #fuster-club-prices small {
      text-align: left;
      display: block;
      line-height: 1.6;
    }
    .destination-tabs .over-img {
      display: none;
    }
    .destination-tabs.mi-tabs .control-box {
      top: 23px;
      right: 10px;
    }
    .destination-tabs img {
      padding-bottom: 12px;
    }
    .destination-tabs .swiper-container .mi-title2 {
      padding-right: 113px;
    }
    .destination-tabs .mi-title2 {
      font-size: 1.6em;
    }
    .destination-tabs .tabs-cont {
      padding-top: 32px;
      padding-bottom: 32px;
    }
    .destination-tabs .fx-self-center.pbm {
      padding-bottom: 0;
    }

    .footer-logos li {
      border: 0;
      /*padding: 12px 15px;*/
    }

    
    .cat-hotel-home #content-header {
        height: 515px; /* que se lea el title */
    }

     /*.cat-hotel-home .full-video-wrapper {
        height: calc(100% + 62px); que no se vea el player */
       /*  padding-right: 270%;
     } ratio aspecto */
   
    
    .cat-hotel-home .full-video-wrapper iframe {
        left: 18.51%; /* 50% mitad de pantalla / 270% aspecto ratio --> para centrar */
    }
    
    .title-popup-covid {
    font-size: 16px;
  }
    
    .content-popup-covid .mi-modal-close {
        border: 1px solid #fff;
      padding: 9px 12px;
        border-radius: 100%;
        margin-top: 5px;
  }
    
    .title-popup-covid {
      padding: 5px;
    }
    
    .content-popup-covid .mi-modal-close i {
      font-size: 19px;
    }
    
    .cancelation-free {
      top: 70px;
    }
    
    .banner-black-friday {
      top: 30%;
    }
    .banner-black-friday img {
      max-width: 200px;
    }
    .bf-n {
      font-size: 60px;
    }
    .bf-dto {
      font-size: 30px;
    }
    .bf-txt.white-text.align-left p {
        font-size: 20px;
        text-align: center;
    }
    .bf-code{
      font-size: 21px !important;
        display: block;
    }
    .wrapper-bf-txt {
        margin-top: 0px;
    }
    
    #main-menu-wrapper {
        margin-top: 0;
    }
    
    .widget_qtranslate {
        margin-top: 20px;
    }
    .megamenu.meganewhotels {
        background: transparent!important;
    }
  /* EMPRESA PAGE */
  .company-discount img {
      object-position: -130px center;
  }
  .company-discount > span {
    right:10px;
    font-size:1.6em;
  }
  .company-discount span strong {
    font-size:85px;
  }
  #company-advantages .advantages-list li{
    width:100%;
  }
  .contact_menu {
    margin-top:40px;
    margin-bottom:20px;
  }
    
    .mute-control {
        display: none;
    }
    
    #info-salones li {
        width: 33%;
    }
    

    


}

/*-------------------