#floorplanContainer {
    width:100%;
    height:100%;
    max-width:0;
    transition:all 400ms;
    position:absolute;
    user-select:none;
    display:none;
    padding:0;
    margin:0;
}

.inPlayer #floorplanContainer {
    display:unset;
}

body.introScene #floorplanContainer {
    display:none;
}

#floorplanContainer.pullout.colorGrey, #floorplanContainer.splitscreen.colorGrey {
    background-color:#333333;
}

#floorplanContainer.pullout.colorBlack, #floorplanContainer.splitscreen.colorBlack {
    background-color:#000000;
}

#floorplanContainer.pullout.colorWhite, #floorplanContainer.splitscreen.colorWhite {
    background-color:#ffffff;
}

.colorWhite {
    background-color:#ffffff;
}

.colorBlack {
    background-color:#000000;
}

.colorGrey {
    background-color:#333333;
}

#floorplanContainer > div.innerContainer {
    position:relative;
    width:100%;
    height:90%;
    overflow:hidden;
    transition:all 400ms;
    opacity:0;
    text-align: center;
}
#floorplanContainer.active > div.innerContainer {
    opacity:1;
}

/* image container */
#floorplanContainer div.imageContainer {
    position:relative;
    left: 50%;
    top: 60%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 80%;
}

#floorplanContainer .aspect {
    display: none;
}

/* image */
#floorplanContainer .imageContainer img {
    object-fit: contain;
    width:100%;
    height:100%;
    pointer-events: none;
    transition:opacity 400ms;
    display:none;
}
#floorplanContainer .imageContainer img.hiding {
    opacity:0;
    display:inline-block;
}
#floorplanContainer .imageContainer img.active {
    opacity:1;
    pointer-events: all;
    display:inline-block;
}

/* spots container */
#floorplanContainer .spotsContainer {
    opacity:0;
    pointer-events: none;
    /*overflow:hidden;*/
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}
#floorplanContainer.active .spotsContainer {
    opacity:1;
    pointer-events: all;
    transition:opacity 400ms;
}

/* spot */
#floorplanContainer .spotsContainer > span {
    position:absolute;
    cursor:pointer;
    color:#000;
    opacity:0;
    pointer-events: none;
    transition:opacity 400ms;
}
#floorplanContainer .spotsContainer > span.show {
    opacity:1;
    pointer-events: all;
    z-index: 10;
}

#floorplanContainer.iconTarget .spotsContainer > span {
    background-image:url('/static/images/greytarget.png');
    background-position:center;
    background-repeat: no-repeat;
    background-size: contain;
}
#floorplanContainer.iconDot .spotsContainer > span {
    background-image:url('/static/images/greydot.png');
    background-position:center;
    background-repeat: no-repeat;
    background-size: contain;
}

#floorplanContainer.iconTarget .spotsContainer > span.active {
    background-image:url('/static/images/bluetarget.png');
}
#floorplanContainer.iconDot .spotsContainer > span.active {
    background-image:url('/static/images/reddot.png');
}
#floorplanContainer .spotsContainer > span i {
    pointer-events: none;
}
#floorplanContainer .spotsContainer > span.active {
    color:#0f6fb2;
    z-index: -1;
}

#floorplanContainer.spotTiny .spotsContainer > span i {
    font-size:15px;
}
#floorplanContainer.spotSmall .spotsContainer > span i {
    font-size:20px;
}
#floorplanContainer.spotNormal .spotsContainer > span i {
    font-size:25px;
}
#floorplanContainer.spotMedium .spotsContainer > span i {
    font-size:30px;
}
#floorplanContainer.spotLarge .spotsContainer > span i {
    font-size:40px;
}

#floorplanContainer.iconTarget.spotTiny .spotsContainer > span {
    width:15px;
    height:15px;
}
#floorplanContainer.iconTarget.spotSmall .spotsContainer > span {
    width:20px;
    height:20px;
}
#floorplanContainer.iconTarget.spotNormal .spotsContainer > span {
    width:25px;
    height:25px;
}
#floorplanContainer.iconTarget.spotMedium .spotsContainer > span {
    width:30px;
    height:30px;
}
#floorplanContainer.iconTarget.spotLarge .spotsContainer > span {
    width:40px;
    height:40px;
}

#floorplanContainer.iconDot.spotTiny .spotsContainer > span {
    width:15px;
    height:15px;
}
#floorplanContainer.iconDot.spotSmall .spotsContainer > span {
    width:20px;
    height:20px;
}
#floorplanContainer.iconDot.spotNormal .spotsContainer > span {
    width:25px;
    height:25px;
}
#floorplanContainer.iconDot.spotMedium .spotsContainer > span {
    width:30px;
    height:30px;
}
#floorplanContainer.iconDot.spotLarge .spotsContainer > span {
    width:40px;
    height:40px;
}

/* current spot */
#floorplanContainer .spotsContainer .active {
}

/* radar */
#floorplanContainer .spotsContainer > div.radar {
    position:absolute;
    display:none;
    z-index:1;
    transform:translate(-50%, -47%);
}

/* dropdown */
#floorplanDropDown {
    width:100%;
    position: absolute;
    border-radius:8px;
    background-color: #262626;
    border:1px solid #000;
    pointer-events: all;
    left:0;
    z-index: 2;
    display:none;
    transition:all 400ms;
    top:9%;
}
#floorplanContainer.active #floorplanDropDown {
    display:unset;
}

/* dropdown list container */
#floorplanDropDown > div:nth-child(1){
    height:0px;
    width:100%;
    overflow:hidden;
    max-height:0px;
    transition: all 750ms;
    display: flex;
    flex-direction: column;
    opacity:0;
}
#floorplanDropDown.active > div:nth-child(1) {
    opacity: 1;
    height: 100%;
    max-height: none;
}

/* dropdown list heading */
#floorplanDropDown > div:nth-child(1) > div{
    margin:16px 8px;
    font-size:24px;
    color:#fff;
    font-weight: bold;
    text-align:center;
    position: relative;
}

#floorplanDropDown.active > div:nth-child(1) > div::after {
    content:'';
    position: absolute;
    left:8px;
    right:8px;
    top:100%;
    margin-top:10px;
    height:1px;
    background-color:#707070;
}


/* dropdown list list */
#floorplanDropDown > div:nth-child(1) > ul{
    margin:20px 0 0 0;
    padding:0;
    display:block;
    text-align:center;
    max-height:54vh;
    overflow:auto;
    margin-bottom:50px;
}

/* dropdown list list item */
#floorplanDropDown > div:nth-child(1) > ul li{
    margin:0;
    padding:0;
    display:block;
    color:#989898;
    font-size:18px;
    margin-bottom:26px;
    cursor:pointer;
}
#floorplanDropDown > div:nth-child(1) > ul li.active {
    color:#fff;
    font-weight:bold;
}

/* dropdown btn container*/
#floorplanDropDown > div:nth-child(2){
    padding:8px;
    text-align:center;
    cursor:pointer;
}

#floorplanDropDown.active > div:nth-child(2)::before {
    content:'';
    display:block;
    margin:10px 0;
    height:1px;
    background-color:#707070;
    z-index: 2;
}

/* dropdown btn container span*/
#floorplanDropDown > div:nth-child(2) span:nth-child(1) {
    color:#fff;
    font-size:18px;
    font-weight:bold;
}

/* dropdown btn container icon*/
#floorplanDropDown > div:nth-child(2) span:nth-child(2) {
    float:right;
    color:#fff;
}

/* dropdown btn container icon up*/
#floorplanDropDown > div:nth-child(2) span:nth-child(2) i.fa-caret-up {
    display:none;
    color:#fff;
    font-size:18px;
}

/* dropdown btn container icon down*/
#floorplanDropDown > div:nth-child(2) span:nth-child(2) i.fa-caret-down {
    font-size:18px;
    color:#fff;
}
#floorplanDropDown.active > div:nth-child(2) span:nth-child(2) i.fa-caret-up {
    display:unset;
}
#floorplanDropDown.active > div:nth-child(2) span:nth-child(2) i.fa-caret-down {
    display:none;
}

#floorplanContainer.active {
    max-width:50%;
    padding:40px;
}

#floorplanBtnToggle .fa-map {
    opacity: 1;
    transition: all 750ms;
    pointer-events: all;
    color:#fff;
    font-size:30px;
    position: absolute;
    background-color: #333;
    padding: 25px 10px;
    cursor:pointer;
}

#floorplanBtnToggle .fa-times {
    opacity: 0;
    transition: all 750ms;
    pointer-events: none;
    color:#fff;
    font-size:30px;
    position: absolute;
    background-color: #333;
    padding: 18px 10px;
    cursor:pointer;
}

#floorplanContainer.active #floorplanBtnToggle .fa-map {
    pointer-events: none;
    opacity:0;
}

#floorplanContainer.active #floorplanBtnToggle .fa-times {
    pointer-events: all;
    opacity:1;
}


.colorGrey #floorplanBtnToggle .fa-times {
    background-color: #333333;
    color:#fff;
}

.colorBlack #floorplanBtnToggle .fa-times {
    background-color: #000000;
    color:#fff;
}

.colorWhite #floorplanBtnToggle .fa-times {
    background-color: #ffffff;
    color: #333333;
}

.colorGrey #floorplanBtnToggle {
    background-color: #333333;
}

.colorBlack #floorplanBtnToggle {
    background-color: #000000;
}

.colorWhite #floorplanBtnToggle {
    background-color: #ffffff;
}

#floorplanBtnToggle {
    position:relative;
    position:absolute;
    top:20%;
    color:#fff;
    display:none;
    left: -50vw;
    transition:opacity 400ms;
    opacity:1;
}
.hideToggle #floorplanBtnToggle {
    opacity:0;
    pointer-events:none;
}
#floorplanContainer.active #floorplanBtnToggle {
    left: -41px;
}

.inPlayer #floorplanBtnToggle {
    display:unset;
}

#floorplanContainer > div.innerContainer {
    padding: 0 0 60px 0;
}

@media (max-width: 1067px) {
    #floorplanContainer {
        left:50%;
        transform:translate(-50%, 0);
    }
}

@media (max-height: 1024px) {
    .floorplanOpen #tourCarousel {
        display:none !important;
    }

    .floorplanOpen #affiliatesContainer {
        display:none !important;
    }
}

@media (max-width: 1067px) {
    .experience.mouseEnabled #floorplanBtnToggle {
        transition:margin 750ms;
    }
    .experience.mouseEnabled #panoObject:hover #floorplanBtnToggle {
        margin-left:22px;
    }
}

@media (max-width: 1067px) and (orientation: portrait) {

    #floorplanContainer.active {
        max-width: 100%;
        padding: 0;
        height: 50%;
        top: 50%;
    }

    #floorplanContainer {
        width:100%;
        height:50%;
        max-width:0;
        top: 50%;
        transition:all 400ms;
        position:absolute;
        user-select:none;
        display:none;
        padding:0;
        margin:0;
    }

    #floorplanContainer.active #floorplanBtnToggle {
        left: 85%;
        top: -10%;
    }
}


@media (max-width: 1067px) and (orientation: landscape) {

    #floorplanContainer.left {
        left:25% !important;
    }
}

@media (min-width: 896px) {

    #floorplanBtnToggle {
        left:unset;
    }

    #floorplanContainer.left {
        left:0;

    }

    #floorplanContainer.left #floorplanBtnToggle {
        left:100%;
    }

    #floorplanContainer.right {
        right:0;
    }

    #floorplanContainer.right #floorplanBtnToggle {
        right:100%;
    }

    #floorplanContainer.right #floorplanBtnToggle .fa-times {
        margin-left: 0;
    }

    #floorplanContainer.right #floorplanBtnToggle .fa-map {
        margin-left: -50px;
    }

    #floorplanContainer.pullout.active {
        max-width:33%;
    }

    #floorplanContainer.layover.active {
        max-width:33%;
    }

    #floorplanContainer.splitscreen.active {
        max-width:50%;
    }

    .floorplanOpen.floorplanleft.floorplanpullout #affiliatesContainer {
        left:34%;
        transition: all 400ms;
    }

    .floorplanOpen.floorplanleft.floorplanlayover #affiliatesContainer {
        left:34%;
        transition: all 400ms;
    }

    .floorplanOpen.floorplanleft.floorplansplitscreen #affiliatesContainer {
        left:52%;
        transition: all 400ms;
    }

    .experience.mouseEnabled.floorplanOpen.floorplanleft.floorplanpullout #tourcontainer:hover #affiliatesContainer {
        bottom:70px;
    }

    .experience.mouseEnabled.floorplanOpen.floorplanleft.floorplanlayover #tourcontainer:hover #affiliatesContainer {
        bottom:70px;
    }

    .experience.mouseEnabled.floorplanOpen.floorplanleft.floorplansplitscreen #tourcontainer:hover #affiliatesContainer {
    }
}