/*MODAL BUTTONS*/
.rooms-detail-wrapper .galleria.elementor {
    position: relative;
}

.rooms-detail-wrapper .galleria.elementor .elementor-element-mirai-carousel {
    z-index: 0;
}

.rooms-detail-wrapper .mi-gallerymedia {
    position: absolute;
    top: 15px;
    right: 15px;
    display: flex;
}

.rooms-detail-wrapper .button-insert-iframe {
    color: #eee;
    background-color: rgba(0,0,0,.5);
    border-radius: 100%;
    font-size: 40px ;
    padding: 10px ;
    display: block;
    margin-right: 16px;
}

.rooms-detail-wrapper .button-insert-iframe:last-child {
    margin-right: 0;
}

.rooms-detail-wrapper .button-insert-iframe:hover {
    background-color: rgba(0,0,0,.8);
    transition: .2s;
    color: #fff;
}

.rooms-detail-wrapper .mi-gallerymedia [class*="mi-ico-"] {
    display: block;
}

.rooms-detail-wrapper .mi-gallerymedia-firstview-btn [class*="mi-ico-"] {
    transform: translateY(0.05em);
}

#video3dModal.modal {
    right: 50%;
    left: auto;
    transform: translate(50%, -50%);
    width: 100%;
    max-width: 850px;
    margin: 0;
    top: -50%;
    pointer-events: none;
}

#video3dModal.modal.fade.in {
    top: 50%;
    pointer-events: all;
}

#video3dModal.modal .iframe-close {
    font-size: 50px;
    font-weight: normal;
    margin: 15px;
    position: absolute;
    top: 0;
    right: 0;
}

#video3dModal.modal .modal-body {
    padding-top: 50px;
    max-height: calc(100vh - 30px);
    display: flex;
}

#video3dModal.modal .modal-body iframe {
    width: 100%;
    height: 600px;
    max-height: 100%;
}

@media (max-width: 880px) {
    #video3dModal.modal {
        max-width: calc(100% - 30px);
    }    
}

@media (max-width: 768px) {
    #video3dModal.modal {
        max-width: 100%;
        max-height: 100%;
        width: 100%;
        height: 100%;
    }    

    #video3dModal.modal .modal-body {
        max-height: none;
    }
}

/*END MODAL BUTTONS*/

/* ROOM DETAIL */

.rooms-detail-wrapper {
    padding-top: 60px;
}

.rooms-detail-wrapper, .rooms-detail-wrapper * {
    box-sizing: border-box;
}

.detail-description {
    width: 41.666667%;
    padding-right: 60px;
}

.room-dates {
    width: 58.333333%;
    padding-left: 60px;
}

.detail-description, .room-dates, .detail-rooms-intro > .detail-rooms-services {
    padding-bottom: 60px;
}

.detail-rooms-intro, .detail-room-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    flex-wrap: wrap;
}

.detail-rooms-intro {
    width: 100%;
}

.back {
    margin-bottom: 20px;
}

.detail-rooms-intro .detail-description > h2 {
    word-break: break-word;
    margin-bottom: 6px;
}

.rooms-detail-wrapper h2 {
    font-size: 2.4em;
}

.box-price {
    font-size: 1.5em;
    color: #4e4e4e;
}

.room-description {
    padding: 10px 0;
}

/* detail rooms services */

.detail-rooms-services h3 {
    font-size: 1.4em;
    padding-bottom: 12px;
}

.detail-room-list li.item-service:before {
    content: "\e983";
    font-family: 'mirai-icofonts';
    margin-right: 10px;
    position: absolute;
    top: 0;
    left: 0;
}

.detail-room-list li.item-service {
    padding: 0px 5px 5px 25px;
    list-style: none;
    margin-left: 0;
    position: relative;
}

.detail-description li.item-service {
    width: 50%;
}

.detail-rooms-intro > .detail-rooms-services .detail-room-list li.item-service {
    width: 25%;
}

/* CALENDAR SECTION */

.rooms-detail-wrapper .detail-services-dates .go-to-offers {
    padding-bottom: 20px;
    text-align: right;
}

.detail-services-dates {
    max-width: 800px;
    margin: 0 auto;
}

/* SWIPER */

.elementor-thumbnails-swiper {
    margin-top: 10px;
    height: 100px
}

.only-one-photo, .no-photo, .galleria {
    width: 100%;
}

/* offers for the room */

.room-box-offers {
    margin-top: 10px;
    background: #ebebeb;
    padding: 60px 0;
}

.offer-list-wrapper {
    width: 100%;
}

.offer-list-wrapper .room-offer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: end;
    -webkit-box-align: end;
    align-items: flex-end;
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    justify-content: space-between;
    margin-bottom: 30px;
}

/* offert tpl 1 */

.offers-listing.offers-listing-1 .offer {
    width: 100%;
}

.offers-listing.offers-listing-1 .offer a {
    background: #e2e2e2;
}

/* NOT large screens */
@media (max-width: 1199px) {

    .offer-list .detail-offer-room-list li.item-service, .detail-description li.item-service {
        width: 100%;
    }

}

/* small screens */
@media (max-width: 979px) {


    .detail-description, .detail-rooms-intro > .detail-rooms-services {
        padding-bottom: 0;
    }

    .detail-rooms-intro > .detail-rooms-services {order: 2;}
    .room-dates {
        order: 3;
        padding-top: 60px;
    }

    .detail-rooms-services {
        padding-top: 20px;
    }

    .detail-description, .room-dates {
        width: 100%;
        padding-right: 0;
        padding-left: 0;
    }

}

/* small screens (not phone) */
@media (min-width: 768px) and (max-width: 979px) {

    .detail-rooms-intro .detail-rooms-services .detail-room-list li.item-service {
        width: 33%;
    }

}

/* iphone portrait & landscape - galaxy portrait & lanscape */
@media (max-width: 767px) {

    .rooms-detail-wrapper {
        padding-top: 50px;
    }

    .room-dates {
        padding-top: 40px;
        padding-bottom: 20px;
        text-align: center;
    }

    .offer-list-wrapper .room-offer {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .rooms-detail-wrapper h2 {
        margin-bottom: 20px;
    }

    .detail-rooms-intro .detail-rooms-services .detail-room-list li.item-service {
        width: 100%;
    }

}
