/*MODAL BUTTONS*/
.rooms-listing-wrapper .room-image-link {
    position: relative;
}

.rooms-listing-wrapper .mi-gallerymedia {
    position: absolute;
    top: 50%;
    right: 50%;
    transform: translate(50%, -50%);
    display: flex;
}

.rooms-listing-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-listing-wrapper .button-insert-iframe:last-child {
    margin-right: 0;
}

.rooms-listing-wrapper .button-insert-iframe:hover {
    background-color: rgba(0,0,0,.8);
    transition: .2s;
}

.rooms-listing-wrapper .mi-gallerymedia [class*="mi-ico-"] {
    display: block;
}

.rooms-listing-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*/

/* ROOMS */

.rooms-listing-wrapper {
    margin-top: 40px;
}

.rooms-listing-wrapper * {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.rooms-listing-wrapper > h2 {
    margin-bottom: 10px;
}

.room-box {
    background: #f5f5f5;
    margin-bottom: 10px;
    padding: 40px 0;
}

.rooms-listing-wrapper .room-name {
    font-size: 1.5em;
    padding-bottom: 15px;
    color: #444;
    float: left;
    width: 50%;
}

.rooms-listing-wrapper .room-name a {
    color: inherit;
}

.room-box .room-image {
    float: left;
    width: 50%;
    position: relative;
}

.room-image img {
    width: 100%;
}

.room-image > a {
    display: block;
}

.room-image .price-box {
    background-color: rgba(0,0,0,0.8);
    color: #fff;
    padding: 15px;
    position: absolute;
    top: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.room-image .price-box span {
    display: block;
    font-size: 2em;
    line-height: normal;
}

.room-intro {
    float: left;
    width: 50%;
}

.room-description {
    margin-bottom: 20px;
}

li.item-service {
    padding: 0px 5px 5px 25px;
    width: 100%;
    float: left;
    position: relative;
}

li.item-service:before {
    content: "\e983";
    font-family: 'mirai-icofonts';
    margin-right: 10px;
    position: absolute;
    top: 0;
    left: 0;
}

.room-intro a {
    margin-top: 30px;
    padding: 15px;
    text-decoration: none;
    background: #333;
    color: #fff;
    display: inline-block;
}

.room-intro a:hover {
    background: #000;
}


/* normal screens (not < 1024) */

@media (min-width: 979px) {

    .room-box:nth-child(even) .room-image {
        float: right;
    }

    .room-name, .room-intro {
        padding-right: 20px;
        padding-left: 40px;
    }

    .room-box:nth-child(odd) .room-name, .room-box:nth-child(odd) .room-intro {
        float: right;
        padding-left: 20px;
        padding-right: 40px;
    }

}

/* large screens */
@media (min-width: 1200px) {

    li.item-service {
        width: 50%;
    }

    li.item-service:nth-child(even) {
        float: right;
    }

}

/* small screens */
@media (max-width: 979px) {

    .room-box {
        padding: 40px;
    }

    .rooms-listing-wrapper .room-name,
    .room-box .room-image,
    .room-intro {
        width: 100%;
    }

    .room-image .price-box {
        background: none;
        color: inherit;
        bottom: 100%;
        top: auto;
        right: 0;
        padding: 0;
    }

    .room-image .price-box, .rooms-listing-wrapper .room-name, .room-image {
        padding-bottom: 25px;
    }

    .room-image .price-box span {
        display: inline-block;
        padding: 0 5px;
    }

    li.item-service {
        width: 50%;
    }

    li.item-service:nth-child(even) {
        float: right;
    }

}

/* iphone portrait & landscape - galaxy portrait & lanscape */
@media (max-width: 767px) {

    .room-box {
        padding: 20px;
    }

    .room-image .price-box {
        position: static;
        display: block;
    }

    .room-image .price-box, .rooms-listing-wrapper .room-name {
        padding-bottom: 10px;
    }

    li.item-service {
        width: 100%;
    }

}
