html {
    font-size: 10px;
}

html,
body {
    margin: 0;
    padding: 0;
}

body {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

* {
    box-sizing: border-box;
}

.mainWrapIfloorplan {
    width: 100vw;
    height: 100vh;
    background: white;
    box-sizing: border-box;
    overflow: hidden;
    position: relative;
    margin: 0 auto 0 auto;
}

/* ---------------------------------------------------------------------------
   Embed (iframe) fallback
   The player is usually shown inside an <iframe> on real-estate sites. Inside
   a cross-origin iframe, viewport units (vh/dvh) resolve inconsistently (dvh
   can collapse or overflow), and the mobile image strip derives its height
   from the slide images' vh-based max-height, which can collapse to a sliver.
   When embedded we switch the height chain to 100% (reliable fill of the
   iframe) and give the portrait image strip a definite height.
   Triggered by: the page living inside an iframe, or ?embed in the URL.
--------------------------------------------------------------------------- */
html.embedded,
html.embedded body {
    height: 100% !important;
}

.mainWrapIfloorplan.embedded {
    height: 100% !important;
    width: 100% !important;
}

/* The hamburger is top-right in the normal mobile player (position: fixed);
   the phone-portrait/landscape media blocks drop it to position: relative
   (left). Force it back to top-right inside the embed so it matches. */
.mainWrapIfloorplan.embedded .more {
    position: fixed !important;
    top: 5px;
    right: 0;
}

/* The hamburger is fixed top-right in the embed; the in-flow Agent button
   needs a right margin so it doesn't sit underneath it. iPad blocks already
   do this (calc(4.2% + 15px)); the phone-portrait block did not. */
.mainWrapIfloorplan.embedded .agentButton {
    margin-right: calc(9% + 12px) !important;
}

/* Portrait phones/tablets: give the images strip a real height (the slide
   images no longer supply it via vh) so the slider shows; the floor plan
   fills the rest. */
@media (orientation: portrait) and (max-width: 1024px) {
    .mainWrapIfloorplan.embedded .images {
        height: 58% !important;
        min-height: 120px;
    }

    /* Force the slick height chain to 100% so the image's max-height:100%
       resolves against the strip height (slick leaves these auto, which made
       max-height:100% a no-op and clipped the image bottom). */
    .mainWrapIfloorplan.embedded .images .ifloorPlanSlider,
    .mainWrapIfloorplan.embedded .images .ifloorPlanSlider .slick-list,
    .mainWrapIfloorplan.embedded .images .ifloorPlanSlider .slick-track,
    .mainWrapIfloorplan.embedded .images .ifloorPlanSlider .slick-slide,
    .mainWrapIfloorplan.embedded .images .ifloorPlanSlider .slick-slide > div,
    .mainWrapIfloorplan.embedded .images .ifloorPlanSlider .slick-slide > div > div {
        height: 100% !important;
    }

    .mainWrapIfloorplan.embedded .images .ifloorPlanSlider img {
        max-height: 100% !important;
        width: auto !important;
        max-width: 100% !important;
        object-fit: contain !important;
    }

    /* Floor-plan height was calc(100vh - 410px); that fixed offset is tuned for
       a tall real phone, so in a shorter iframe it shrinks far more than the
       rest of the layout. Size it off the viewport instead (scales with the
       iframe). 42vh matches the 58% image strip (floor-plan area below it). */
    .mainWrapIfloorplan.embedded .my_plan_img {
        height: 42vh !important;
    }

    /* The address caption is positioned bottom:% of the full player height,
       which in embed lands over the 58% image strip. Anchor it to the bottom
       of the floor-plan area instead so it reads as part of the plan. */
    .mainWrapIfloorplan.embedded .addressBlock {
        top: auto !important;
        bottom: 6vh !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        text-align: center !important;
        color: #fff !important;
        background: #000 !important;
        z-index: 999 !important;
    }
}

.pnlm-container {
    box-shadow: 10px 10px 5px 0px rgba(0, 0, 0, 0.36);
}

.more {
    width: 2.5%;
    height: 2.5%;
    position: fixed;
    top: 5px;
    right: 0;
    margin: 7px;
    cursor: pointer;
    z-index: 200;
}

.more svg {
    width: 100%;
}

.moreMenu {
    position: absolute;
    top: 35px;
    right: 0;
}

.moreMenu .share-icons {
    color: white;
    font-size: 2.5vh;
    background: #595959;
    cursor: pointer;
    width: 265px;
    outline: 1px solid #fff;
}

.moreMenu .moreMenu-share {
    display: flex;
    width: auto;
    padding: 0;
}

.moreMenu .moreMenu-share-label {
    display: inline-block;
    width: 27vh;
    padding: 10px
}

.more button {
    /*border: none;*/
    /*width: 235px;*/
    /*text-align: center;*/
    /*padding: 10px;*/
    /*color: white;*/
    /*font-size: 18px;*/
    /*margin-bottom: 2px;*/
    /*background: #595959;*/
    /*cursor: pointer;*/
    border: none;
    /*width: 235px;*/
    text-align: center;
    padding: 10px;
    color: white;
    font-size: 1.1vw;
    margin-bottom: 2px;
    background: #404040;
    cursor: pointer;
    width: 9vw;
    align-self: flex-end;
    border-radius: 4px;
    /* border-radius: 10px; */
}

.moreMenu .shareMenuDesktop {
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 6px;
    margin: 2px 0 4px 0;
    padding: 4px 0;
    align-self: flex-end;
    width: 9vw;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.moreMenu .shareMenuItem {
    display: block;
    width: 100%;
    text-align: left;
    padding: 8px 14px;
    font-size: 1.1vw;
    color: #333;
    background: none;
    border: none;
    border-radius: 0;
    cursor: pointer;
    text-decoration: none;
}

.moreMenu .shareMenuItem:hover {
    background: #f0f0f0;
}

.moreMenu .shareMenuItem.shareCopyLink {
    font-weight: 600;
    border-bottom: 1px solid #eee;
    margin-bottom: 2px;
}

.moreMenu {
    display: flex;
    flex-direction: column;
    justify-content: center;
}


/* .markerWrap.active {
    z-index: 122 !important;
} */

a {
    font-size: 20px;
}

.images img,
.plan img {
    /*max-height: 760px;*/
    max-height: 100vh;
}

.images iframe {
    width: 100%;
    height: 480px;
}

.images,
.plan {
    position: relative;
}

.images {
    z-index: 122;
}

.plan {
    /* line-height: 1.6;
    z-index: 118; */
}

.start {
    position: relative;
    margin: auto;
}

.ifloorCam {
    z-index: 100;
}

.addressBlock {
    padding: 0 1rem;
    z-index: 123;
    /*left: 0px !important;*/
    /*bottom: 10px !important;*/
}

.tabs {
    display: flex;
    position: fixed;
    justify-content: center;
    z-index: 126;
}

.client_wrap_main {
    z-index: 119;
    line-height: 1.6;
}

.tabs .tab {
    background: #EEEEEE;
    padding: 0px 1vh;
    font-size: 1.0vw;
    flex-shrink: 0;
}

.imageWrap,
.interior-image {
    box-shadow: 10px 10px 5px 0 rgba(0, 0, 0, 0.36);
    z-index: 1;
}

.tab.active_tab {
    background: #404040 !important;
    color: #fff !important;
}

.agentButton {
    background: #F9F9F9;
    border: 1px solid #A6A4A4;
    border-radius: 10px 10px 0 0;
    padding: 0px 1vh;
    font-size: 1.0vw;
    flex-shrink: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

.agentButton.active {
    background: #404040 !important;
    color: #fff !important;
}

* {
    margin: 0;
    padding: 0;
}

.client_wrap {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}

.logo-wrapper p,
.logo-wrapper img {
    position: absolute;
    margin: 0;
    color: #4a4a4a;
}

p {
    z-index: 1;
}

/* p {} */

.logo-wrapper .client_name {
    font-size: 2.5vw;
}

.contact_name,
.contact_phone,
.contact_email {
    position: absolute;
}

.contact_email a {
    color: #1276EB
}

.client-logo {
    position: absolute;
}

.video_popup .popup-content {
    width: 85% !important;
    height: 86%;
}

.video_popup .popup-content iframe {
    width: 100%;
}

.list_video {
    display: flex;
    justify-content: center;
}

.video_item {
    margin: 0 3px;
    background: #5e9cff;
    padding: 3px 20px;
    border-radius: 5px;
    cursor: pointer;
}

.video_item.active {
    background: #e49f46;
}

.map_wrap_popup .popup-content {
    width: 85% !important;
    height: 80%;
    position: relative;
}

.map_wrap_popup .modal {
    position: absolute;
    width: calc(100% - 20px);
    height: calc(100% - 20px);
}

.brandWrap {
    z-index: 121;
}

.brandWrap:hover {
    opacity: 1 !important;
}

.workPlace .dnd-wrapper .tabs .tab {
    cursor: pointer;
}

.mainWrapIfloorplan .start .tabs .tab {
    /*border: 1px solid #e0e0e0;*/
    border-radius: 10px 10px 0 0;
    /*font-size: 1.6rem;*/
    font-weight: 500;
    color: #000;
    background: #F9F9F9;
    /* box-shadow: 0 2.5px 4px #80808082; */
    /*margin-top: 5px;*/
    cursor: pointer;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    line-height: 1.2;
    border: 1px solid #A6A4A4;
    padding: 8px 20px 8px 20px;
}

.mainWrapIfloorplan .start .tabs .tab:hover {
    background: #D7D7D7;
}

.slide_tools {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
}

.slide_tools_wrap {
    position: relative;
    width: 100%;
    height: 100%;
}

.play_next_prev {
    position: absolute;
    width: 100%;
    height: 17%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.play_next_prev .prev,
.play_next_prev .play,
.play_next_prev .next {
    width: 12%;
    height: 100%;
}

.play_next_prev .prev svg,
.play_next_prev .next svg {
    width: 50%;
}

.play_next_prev .play svg {
    width: 100%;
}

.zoom {
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 0%);
}

.prev,
.play,
.next,
.zoom div {
    cursor: pointer;
}

.image_animation {
    animation-name: example;
    animation-duration: 1s;
}

@keyframes example {
    0% {
        opacity: 0.4;
    }

    25% {
        opacity: 0.6;
    }

    50% {
        opacity: 0.8;
    }

    100% {
        opacity: 1;
    }
}

.none {
    display: none;
}

.zoomWrap,
.media_wrap {
    position: fixed;
    z-index: 125;
    height: calc(100vh - 85px);
    width: calc((100vh - 85px) * 1.7777);
    margin-left: 6%;
    margin-top: 3%;
}

.media {
    /* width: auto; */
    /* height: inherit; */
    z-index: 3;
    padding: 3% calc(50% - 16 / 9 * (50vh - 42px));
    position: fixed;
    left: 0;
    top: 0;
    overflow: auto;
    background-color: rgb(0 0 0 / 70%);
}

.media iframe {
    width: calc((100vh - 85px) * 1.7777);
    height: calc(100vh - 85px);
}

@media only screen and (max-width: 767px) {
    .media {
        width: 100%;
    }

    .media iframe {
        width: 100%;
        height: calc(100vh - 85px);
    }
}

.zoomWrap .image_wrap {
    width: 100%;
    overflow: hidden;
    height: calc(100vh - 85px);
    position: relative;
}

.image_zoom {
    width: 100%;
    /*margin: auto;*/
    /*padding: 20px;*/
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.zoomWrap img {
    width: 100%;
}

.slide_zoom_tools_bottom {
    width: 100%;
    height: 10%;
    position: absolute;
    bottom: 0;
}

.slide_zoom_tools_top {
    width: 100%;
    height: 10%;
    position: absolute;
    top: 0;
}

.slide_zoom_tools_bototm .slide_tools,
.slide_zoom_tools_top.slide_tools {
    position: absolute;
    bottom: 0 !important;
    width: 100% !important;
    top: unset;
    display: flex !important;
    left: unset;
    transform: none;
    background: #00000070;
}

.slide_zoom_tools_top .slide_tools .play_next_prev,
.slide_zoom_tools_bottom .slide_tools .play_next_prev {
    display: flex;
    justify-content: space-between;
    width: 70%;
    height: 40%;
}

.slide_zoom_tools_top .slide_tools .play_next_prev div,
.slide_zoom_tools_bottom .slide_tools .play_next_prev div {
    margin-right: 10%;
}

.slide_zoom_tools_top .slide_tools .zoom,
.slide_zoom_tools_bottom .slide_tools .zoom {
    position: absolute;
    width: 10%;
    height: 35%;
    display: flex;
    justify-content: center;
    top: 50%;
    left: 90%;
    transform: translateY(-50%);
}

.slide_zoom_tools_top .slide_tools .zoom div,
.slide_zoom_tools_bottom .slide_tools .zoom div {
    margin-right: 5%;
}

.address_slide_wrap {
    position: absolute;
    top: -3%;
    left: 3%;
}

.splash_screen {
    position: fixed;
    z-index: 130;
    background-size: contain;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-color: white;
    transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
    transition-duration: 300ms;
    background-size: 100%;
}

.splash_img {
    position: relative;
    width: 100%;
    height: fit-content;
}

.splash_screen img {
    width: 100%;
    /* height: inherit; */
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.addressInfo {
    font-size: 20px;
    font-weight: 400;
    line-height: 23.44px;
    padding: 15px 0;
    /* position: absolute; */
    /* top: 40%; */
    text-align: center !important;
    justify-content: center !important;
    /* font-family: 'Roboto'; */
}

/*.img_box {*/
/*    margin-top: 10%;*/
/*}*/

.splash_img_big {
    width: 100%;
    /* height: inherit; */
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.splash_screen .loading-icon-big {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/*.splash_screen img {*/
/*    width: 100%;*/
/*    !* height: inherit; *!*/
/*    position: absolute;*/
/*    top: 50%;*/
/*    left: 50%;*/
/*    transform: translate(-50%, -50%);*/
/*}*/

.splash_screen .loading-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.splash_screen .loader-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    z-index: 5;
}

.loader-txt {
    color: #fff;
    font-size: 16px;
    font-weight: 300;
    margin-top: 12px;
}


/*  Spineer Css */
.lds-ring,
.lds-ring div {
    box-sizing: border-box;
}

.lds-ring {
    display: inline-block;
    position: relative;
    width: 50px;
    height: 50px;
}

.spiner-txt {
    color: #000;
    font-size: 18px;
    font-weight: 300;
    line-height: 23px;
    letter-spacing: -0.44px;
}

.lds-ring div {
    box-sizing: border-box;
    display: block;
    position: absolute;
    width: 44px;
    height: 44px;
    margin: 8px;
    border: 2px solid orange;
    border-radius: 50%;
    animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
    border-color: orange transparent transparent transparent;
}

.lds-ring div:nth-child(1) {
    animation-delay: -0.45s;
}

.lds-ring div:nth-child(2) {
    animation-delay: -0.3s;
}

.lds-ring div:nth-child(3) {
    animation-delay: -0.15s;
}

@keyframes lds-ring {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}


.splash_screen.fade {
    opacity: 0;
    transition: 0.5s;
}

.info_for_ifloorplan {
    position: absolute;
    top: 17%;
    left: 50%;
    width: 100%;
    color: white;
    transform: translate(-50%, -50%);
    font-size: 5vw;
    background: #d6d6d636;
    padding: 2.5vw;
}


/* Slider */
.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
    height: 100%;
}

.slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    width: 100%;
    height: 100%;
}

.slick-list:focus {
    outline: none;
}

.slick-list.dragging {
    cursor: pointer;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: block;
    margin-left: auto;
    margin-right: auto;
    height: 100%;
}

.slick-track:before,
.slick-track:after {
    display: table;

    content: '';
}

.slick-track:after {
    clear: both;
}

.slick-loading .slick-track {
    visibility: hidden;
}

.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px;
    /* overflow: hidden; */
}

[dir='rtl'] .slick-slide {
    float: right;
}

.slick-slide img {
    display: block;
}

.slick-slide.slick-loading img {
    display: none;
}

.slick-slide.dragging img {
    pointer-events: none;
}

.slick-initialized .slick-slide {
    display: block;
}

.slick-loading .slick-slide {
    visibility: hidden;
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
    display: none;
}

/* Slider */
.slick-loading .slick-list {
    background: #fff url('./ajax-loader.gif') center center no-repeat;
}

/* Icons */
@font-face {
    font-family: 'slick';
    font-weight: normal;
    font-style: normal;
    src: url('./fonts/slick.eot');
    src: url('./fonts/slick.eot?#iefix') format('embedded-opentype'), url('./fonts/slick.woff') format('woff'), url('./fonts/slick.ttf') format('truetype'), url('./fonts/slick.svg#slick') format('svg');
}

/* Arrows */
.slick-prev,
.slick-next {
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 50%;

    display: block;

    width: 20px;
    height: 20px;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);

    cursor: pointer;

    color: transparent;
    border: none;
    outline: none;
    background: transparent;
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
    color: transparent;
    outline: none;
    background: transparent;
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
    opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
    opacity: .25;
}

.slick-prev:before,
.slick-next:before {
    font-family: 'slick';
    font-size: 20px;
    line-height: 1;

    opacity: .75;
    color: white;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
    left: -25px;
}

[dir='rtl'] .slick-prev {
    right: -25px;
    left: auto;
}

.slick-prev:before {
    content: '←';
}

[dir='rtl'] .slick-prev:before {
    content: '→';
}

.slick-next {
    right: -25px;
}

[dir='rtl'] .slick-next {
    right: auto;
    left: -25px;
}

.slick-next:before {
    content: '→';
}

[dir='rtl'] .slick-next:before {
    content: '←';
}

/* Dots */
.slick-dotted.slick-slider {
    margin-bottom: 30px;
}

.slick-dots {
    position: absolute;
    bottom: -25px;

    display: block;

    width: 100%;
    padding: 0;
    margin: 0;

    list-style: none;

    text-align: center;
}

.slick-dots li {
    position: relative;

    display: inline-block;

    width: 20px;
    height: 20px;
    margin: 0 5px;
    padding: 0;

    cursor: pointer;
}

.slick-dots li button {
    font-size: 0;
    line-height: 0;

    display: block;

    width: 20px;
    height: 20px;
    padding: 5px;

    cursor: pointer;

    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
    outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
    opacity: 1;
}

.slick-dots li button:before {
    font-family: 'slick';
    font-size: 6px;
    line-height: 20px;

    position: absolute;
    top: 0;
    left: 0;

    width: 20px;
    height: 20px;

    content: '•';
    text-align: center;

    opacity: .25;
    color: black;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
    opacity: .75;
    color: black;
}

/*My STYLE for Slider*/

.ifloorPlanSlider {
    /* position: absolute;
    width: 100%; */
    height: 100%;
    /* left: 0;
    font-size: 0; */
}

.ifloorPlanSlider .sliderPanel .zoom__btn {
    position: absolute;
    left: 0;
    bottom: 15%;
    width: calc(100% - 10px);
    transition: .2s;
}

.ifloorPlanSlider .sliderPanel .zoom__btn svg {
    cursor: pointer;
    width: 10%;
    position: relative;
}

.ifloorPlanSlider .slick-slider .slick-list .slick-track .slick-slide div div img {
    width: 100%;
}

.ifloorPlanSlider {
    /* position: absolute;
    top: 0;
    left: 0;
    width: calc(100% - 10px); */
    height: 100%;
    /* display: flex;
    align-items: center;
    justify-content: space-between; */
    opacity: 0;
    transition: .2s;
}

.ifloorPlanSlider .sliderPanel onClick {
    opacity: 0;
}

.ifloorPlanSlider .sliderPanel:hover {
    opacity: 1;
}

.ifloorPlanSlider .sliderPanel svg {
    cursor: pointer;
    position: absolute;
}

.start .images .ifloorPlanSlider {
    z-index: 1;
}

.start .images .ifloorPlanSlider img {
    width: 100%;
}

/* Player image shadow: NONE at the top, subtle on the bottom.
   Must live on the .ifloorPlanSlider container, NOT the img: the img sits
   inside .slick-list which has overflow:hidden, and that wrapper's bottom
   edge is at the same height as the slider — a shadow on the img gets
   clipped before it can paint below the images (this looked like "no
   shadow at all"). Use drop-shadow (not box-shadow) so it follows the PHOTO
   shape (handles the object-fit letterbox) instead of the geometric box,
   which read as a harsh band on white. Desktop (and iPad landscape) value.
   Mobile portrait/landscape blocks override it with 0px 2px 3px. :not(.zoom)
   clears it during fullscreen zoom. */
.start .images .ifloorPlanSlider:not(.zoom) {
    filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.6));
}

/* The 360 pano wrapper gets the same subtle drop-shadow as the still-image
   slider instead of the heavy .pnlm-container / .imageWrap box-shadow. */
.start .images .imageWrap {
    box-shadow: none;
    filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.6));
}

.ifloorPlanSlider .slick-slider .slick-list .slick-track .slick-slide > div > div {
    display: block !important;
}

@media (min-width: 991px) {
    .ifloorPlanSlider .slick-slider .slick-list .slick-track .slick-slide div div {
        padding: 0 10px 10px 0;
    }
}

.ifloorPlanSlider.zoom .slick-slider .slick-list .slick-track .slick-slide div div {
    padding: 0 0 10px 0;
}

.ifloorPlanSlider.zoom {
    position: fixed;
    width: 100%;
    top: 50%;
    height: 100%;
    overflow: hidden;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: 0.2s;
}

.ifloorPlanSlider.zoom .sliderPanel {
    position: absolute;
    height: 6% !important;
    background: #0008;
    top: 94% !important;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    width: 100% !important;
    transform: unset !important;
}

.ifloorPlanSlider.zoom .sliderPanel svg,
.ifloorPlanSlider.zoom .sliderPanelTop svg {
    width: 1%;
}

.ifloorPlanSlider.zoom .sliderPanel svg:nth-child(2),
.ifloorPlanSlider.zoom .sliderPanelTop svg:nth-child(2) {
    width: 2%;
}

.ifloorPlanSlider.zoom .zoom__btn {
    left: 92%;
    bottom: 1%;
    width: 10%;
    height: 92%;
}

.ifloorPlanSlider.zoom .zoom__btn svg {
    width: 100% !important;
    height: 100%;
}

.ifloorPlanSlider.zoom .slick-slider .slick-list .slick-track .slick-slide div div img {
    width: 100% !important;
    height: 100vh !important;
    max-height: none !important;
    object-fit: contain;
}

/* Mobile scroll-snap strip: replaces react-slick on mobile so
   pinch-to-zoom can be added without react-slick eating touch events. */
.ifloorPlanSlider--mobile {
    opacity: 1 !important;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -ms-overflow-style: none;
    scrollbar-width: none;
    height: 100%;
    touch-action: pan-x;
}
.ifloorPlanSlider--mobile::-webkit-scrollbar {
    display: none;
}
.ifloorPlanSlider--mobile .ifloorPlanSlider--track {
    display: flex;
    flex-direction: row;
    height: 100%;
    min-height: 100%;
}
.ifloorPlanSlider--mobile .ifloorPlanSlider--slide {
    flex-shrink: 0;
    width: 100%;
    scroll-snap-align: start;
    height: 100%;
}

/*styles for previewing the plan with markers and buttons (for buttons)*/
.mainWrapIfloorplan .start .markerWrap button {
    border: none;
    font-size: 2rem;
    outline: none;
    cursor: pointer;
}

.my_plan {
    position: relative;
    /* overflow: hidden; */
}

/*Styles for PopUp with text info*/

.popup-content {
    width: 30% !important;
    padding: 10px !important;
    height: 80%;
    border-radius: 10px !important;
    min-height: 200px;
    transition: 0.5s;
}

.contentTextInfo-content {
    width: 60% !important;
    position: relative;
}

.shareWrap-content {
    width: 30% !important;
}

.popup-content:hover {
    /* box-shadow: 0 0 5px 0px white; */
    filter: drop-shadow(0 0 30px #333);
    /* filter: drop-shadow(0 0 0.75rem white); */
}

.media:hover {
    filter: drop-shadow(0 0 30px #333);
}

.contentTextInfo {
    align-items: center;
    justify-content: center;
    flex-direction: column;
    width: 100%;
    height: 100%;
    overflow: auto;
    font: 16px/1.3 "Helvetica Neue", Helvetica, Arial, sans-serif;
    text-align: left;
}

.closePopup {
    position: absolute;
    top: 10px;
    right: 15px;
    font-size: 2.2rem;
    line-height: 1;
    cursor: pointer;
    color: #999;
    font-weight: 400;
    background: none;
    border: none;
    padding: 0;
    z-index: 10;
}

.closePopup:hover {
    color: #666;
}

.shareWrap {
    width: 100%;
    top: 50%;
    position: absolute;
    transform: translate(0, -50%);
}

.zoom__prev {
    width: 25%;
    height: 85%;
    top: 5%;
    left: 0%;
    position: absolute;
}

.zoom__next {
    width: 25%;
    height: 95%;
    top: 5%;
    right: 0%;
    position: absolute;
}

.dummy {
    height: 95%;
    width: 50%;
    position: absolute;
    top: 0%;
    left: 25%;
}

.mobileMoreTab {
    flex-shrink: 0;
    cursor: pointer;
}

.moreTabsDropdown {
    position: absolute;
    top: 100%;
    right: 0;
    background: #fff;
    border: 1px solid #A6A4A4;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    z-index: 131;
    min-width: 150px;
    display: flex;
    flex-direction: column;
}

.mainWrapIfloorplan .moreTabsDropdown .tab {
    border-radius: 0 !important;
    border: none !important;
    border-bottom: 1px solid #eee !important;
    padding: 10px 16px !important;
    margin: 0 !important;
    white-space: nowrap !important;
    font-size: 14px !important;
    transform: none !important;
}

.mainWrapIfloorplan .moreTabsDropdown .tab:last-child {
    border-bottom: none !important;
}

.mainWrapIfloorplan .moreTabsDropdown .tab.active_tab {
    background: #404040 !important;
    color: #fff !important;
}

.mainWrapIfloorplan .moreTabsDropdown .tab:hover {
    background: #D7D7D7 !important;
}

.pnlm-load-box {
    display: none !important
}

.space {
    flex: 1;
}

.hint-modal.not {
    visibility: hidden;
    opacity: 0;
    transition: visibility 0.5s, opacity 0.5s linear;
}

.layout_image {
    display: flex;
    height: calc(100vh - 50px);
    width: 100%;
    gap: 20px;
    align-items: center;
    justify-content: space-between;
}

/* .images {
    width: calc(100% - 360px);
}

.plan {
    max-width: 360px;
} */
.images.img_show,
.images {
    width: 45%;
}

.plan {
    width: 45%;

}

.plan.my_plan {
    /*display: flex;*/
    justify-content: center;
}

.react-transform-wrapper,
.react-transform-component {
    height: 100% !important;
}

.react-transform-wrapper {
    /* Hand all touch gestures (pan + pinch-zoom) to react-zoom-pan-pinch;
       override the global `* { touch-action: pan-x pan-y }` so the browser
       does not steal vertical drags as native page scroll (that caused the
       plan image to scroll up out of the screen and rubber-band back). */
    touch-action: none;
}

.position-relative {
    position: relative;
}


.notice {
    margin-top: 3%;
    display: flex;
    flex-direction: column;
    width: 50%;
    /* min-width: 380px; */
    padding: 1%;
    margin: 3% auto;
    height: 70%;
    justify-content: space-evenly;
}

.notice p {
    padding: 1%;
    margin-top: 0%;
    font-size: 18px;
}

.notice span {
    padding: 0%;
    cursor: pointer;
    color: blue;
}

.WarningUnpublished {
    align-self: center
}

.WarningUnpublisedReload {
    width: 10%;
    min-width: 100px;
    align-self: flex-end;
}

.share {
    width: 100%;
    display: grid;
    grid-template-columns: auto auto auto;
    padding: 10px;
}

.grid-item {
    padding: 20px;
    font-size: 30px;
    text-align: center;
}

input#myInput {
    padding: 10px;
    width: 90%;
    background: #e4e4e4;
    border: none;
    font-size: 13px;
}

.pannellum-controls {
    position: absolute;
    z-index: 2;
    width: 50px;
    margin: 10px 0 0 10px;
}

.pnlm-about-msg {
    visibility: hidden;
}

.pnlm-about-msg a {
    visibility: hidden;
}

.previewWarning {
    background-color: skyblue;
    overflow: hidden;

    height: 6%;
    position: fixed;
    align-items: center;
    width: 100%;
    display: flex;
    align-content: flex-start;
}

.previewLevelWarning {
    background: yellow;
    border: black solid 1px;
    border-radius: 15px;
    height: 81%;
    font-size: small;
    padding: .6%;
    margin: .3% 36% .3% 0;
    position: absolute;
    right: 0;
    top: 0;
}

.previewInfo {
    font-size: large;
    margin-left: 1%;
}

.PublishModal,
.UpdatedModal {
    position: absolute;
    background-color: #fefefe;
    width: auto;
    min-width: 280px;
    height: 280px;
    box-shadow: 0 4px 8px 0 rgb(0 0 0 / 20%), 0 6px 20px 0 rgb(0 0 0 / 19%);
    -webkit-animation-name: animatefade;
    -webkit-animation-duration: 0.4s;
    animation-name: animatefade;
    animation-duration: 0.4s;
    right: 15px;
    z-index: 201;
    top: 40px;
    border-radius: 10px;
    flex-direction: column;
    justify-content: space-evenly;
    color: #000;
}

.publishBtn {
    border-radius: 5px;
    padding: 4px 25px;
    background-color: #FF9300;
    color: #fff;
    font-weight: 600;
    position: absolute;
    right: 1%;
    text-decoration: none;
    font-size: 13px;
}

.UpdateModal-label.not,
.PublishModal-label.not {
    opacity: 0.5;
}

.levelWarning {
    background-color: yellow;
    border: black solid 1px;
    border-radius: 6px;
    margin: -15% 3%;
    font-size: 13px;
    padding: 1%;
}

.PublishModal-header {
    font-size: 1.3rem;
    font-weight: 600;
    color: #000;
}

.PublishModal-close {
    cursor: pointer;
    font-size: 1.3rem;
    font-weight: 600;
    color: #000;
}

/* The Close Button */
.close {
    color: white;
    float: right;
    font-size: 28px;
    font-weight: bold;
}

.close:hover,
.close:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
}

.PublishModal-header {
    font-size: 1.3rem;
    font-weight: 600;
    color: #000;
}

.PublishModal h5 {
    font-size: 1.3rem;
    font-weight: 700;
    color: #000;
}

.PublishModal-close {
    cursor: pointer;
    font-size: 1.3rem;
    font-weight: 600;
    color: #000;
}

a.UpdateModal-btn .UpdateModal-label,
a.PublishModal-btn .PublishModal-label {
    border-radius: 5px;
    font-weight: 600;
    padding: 3px 25px;
    color: white;
    cursor: pointer;
    background-color: #FF9300;
    font-size: 1.3rem;
    width: 80%;
    margin-left: 10%;
}

.UpdatedModal {
    flex-direction: column;
    justify-content: space-evenly;
    width: 20%;
    padding: 10px;
}

.UpdatedModal h1 {
    font-weight: 600;
    padding: 6%;
    color: #000;
}

.UpdatedModal div {
    font-size: 1.3rem;
    font-weight: 600;
    cursor: pointer;
    color: #000;
}

.UpdatedModal .UpdatedModal-url {
    background: #dbdbdb;
    /* width: 90%; */
    overflow: hidden;
    font-weight: 500;
    /* margin-left: 5%; */
    font-size: 1.2rem;
    padding: 2%;
}

.UpdatedModal .UpdatedModal-buttons {
    display: flex;
    justify-content: space-around;
}

.UpdatedModal .UpdatedModal-buttons div {
    background: rgb(18, 118, 235);
    color: white;
    width: 40%;
    padding: 2%;
    border-radius: 5px;
}

.UpdatedModal .UpdatedModal-shareIcons {
    height: 30px;
}

.previewIframe {
    width: 100%;
    border: 0;
    height: 94%;
    position: fixed;
    bottom: 0;
    left: 0;
}

.out-of-credit-alert {
    width: 100%;
    height: 100%;
    position: fixed;
    padding: 20% 30%;
    background-color: rgba(0, 0, 0, 0.5);
    top: 0%;
    left: 0%;
    z-index: 2;

}

.out-of-credit-alert .alert-wrap {
    background-color: #fff;
    width: 100%;
    height: 100%;
    border-radius: 15px;
}

.out-of-credit-alert .alert-wrap h2 {
    text-align: center;
    font-size: 2.5vh;
    padding: 8% 0;
}

.out-of-credit-alert .alert-wrap div {
    display: flex;
    justify-content: space-around;
}

.out-of-credit-alert .alert-wrap div button {
    border-radius: 5px;
    background-color: #1276EB;
    color: #fff;
    cursor: pointer;
    user-select: none;
    font-size: 1.2rem;
    font-weight: 600;
    margin: 2% 5% 0 0;
    padding: 0.5% 3%;
    border: none;
}

.out-of-credit-alert .alert-wrap div button a {
    color: #fff;
    text-decoration: none;
}

.warning-wrap {
    position: absolute;
    z-index: 999;
    width: 100%;
    display: flex;
    justify-content: space-evenly;
    background: rgb(18, 118, 235);
    opacity: 0.9;
}

.warning-wrap h3 {
    width: 20%;
    color: #fff;
    align-self: center;
    margin: 10px;
}

.warning-wrap > button {
    width: 10%;
    height: fit-content;
    align-self: center;
    border: none;
    border-radius: 10px;
    background: #fff;
    font-weight: 600;
}

.warning-wrap svg {
    width: 18%;
}

.warning-wrap > div {
    width: 30%;
    display: flex;
    justify-content: space-between;
}

.warning-wrap > div > h3 {
    width: 60%;
}

.warning-out-of-credit {
    font-family: system-ui;
    display: flex;
    justify-content: space-between;
    background: #FF0;
    padding: 8px 15px 8px 15px;
    font-size: small;
    margin: -30px 6px 6px 6px;
    border: 1px solid;
    border-radius: 3px;
}

.warning-out-of-credit > p {
    font-weight: 400;
}

.warning-out-of-credit > a {
    font-weight: 400;
    color: #1276EB;
    font-size: inherit;
    text-decoration: none;
}

h5.outofCreditsCancel {
    border-radius: 5px;
    background-color: rgb(215, 215, 215);
    padding: 6px;
    color: black;
    font-size: 1.3rem;
    width: 80%;
    margin-left: 10%;
}


.slick-slide.slick-active.slick-current {
    z-index: 1;
}

.d-none {
    display: none;
}

.d-block {
    display: block;
    width: 100%;
    height: 100%;
}

.pointer {
    cursor: pointer;
}

.slider_btn_previos {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: space-between;
    z-index: 9;
    height: 60px;
}

.plan.my_plan img {
    width: 100%;
}

.slider_btn_next {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: space-between;
    z-index: 9;
    height: 60px;
}

.slider_btn_previos svg,
.slider_btn_next svg {
    width: 26px;
    height: 26px;
}

.reset_btn {
    display: none;
}

@media screen and (min-height: 200px) and (max-height: 450px) and (orientation: landscape) {

    .contentTextInfo-content {
        width: 85% !important;
    }

    .contentTextInfo {
        font-size: 15px;
    }

    html,
    body {
        height: 100%;
        overflow: hidden;
        overscroll-behavior: none;
    }

    .start .images .ifloorPlanSlider:not(.zoom) {
        filter: drop-shadow(0px 2px 3px rgba(0, 0, 0, 0.6));
    }

    .start .images .imageWrap {
        box-shadow: none;
        filter: drop-shadow(0px 2px 3px rgba(0, 0, 0, 0.6));
    }

    .splash_img_big, .splash_img {
        height: 100% !important;
        object-fit: contain !important;
    }

    .sport_card img {
        max-height: 350px;
    }

    .center_image {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
    }

    .sport_card {
        display: inline-block;
    }

    .react-transform-wrapper,
    .react-transform-component {
        width: 100% !important;
        justify-content: center !important;
    }

    .layout_image {
        height: 100dvh;
        margin: 0;
    }

    .start {
        /*margin-top: 35px;*/
    }

    .slick-list {
        width: 100% !important;
        height: 100% !important;
    }

    .addressBlock {
        top: 96% !important;
        z-index: 123;
        display: none !important;
        width: 100vw;
        background: #3A3A3A;
        color: white !important;
        position: fixed !important;
        left: 0% !important;
        height: 20px;
        margin-left: 50%;
        transform: translateX(-50%);
    }

    .start {
        /* display: flex;
        align-items: center;
        justify-content: center; */
        flex-grow: 0;
        flex-shrink: 0;
        width: 100% !important;
        padding: 0px;
        /*max-width: 1024px;*/
    }

    .mainWrapIfloorplan {
        width: 100vw;
        height: 100vh;
        height: 100dvh;
        margin: 0;
        overflow: hidden;
        overscroll-behavior: none;
        display: flex !important;
        flex-direction: column;
        justify-content: stretch;
    }

    .ifloorPlanSlider.zoom {
        width: 100vw;
    }

    .mainWrapIfloorplan::-webkit-scrollbar {
        background: transparent;
        width: 1px;
    }

    .client_wrap_main {
        position: absolute !important;
        bottom: 6vh !important;
        background-color: white !important;
        width: 60vw !important;
        left: 20vw !important;
        height: 15vw !important;
        z-index: 125 !important;
    }

    .more {
        width: 9% !important;
        /* position: relative !important; so that it has fix position */
    }

    /* .tabs {
        position: relative; // so that it has fixed position
    } */
    .tabs .tab {
        font-size: 4vh !important;
        flex-shrink: 0;
        padding: 6px 8px 6px 8px !important;
    }

    .agentButton {
        font-size: 4vh !important;
        padding: 6px 8px 6px 8px !important;
    }

    .tabLevel .tab {
        width: 100vw;
        border-radius: 0px !important;
        background: #595959 !important;
        color: #fff !important;
        transform: none !important;
    }

    .tabLevel {
        margin-top: 10px;
    }

    .tab-arrow {
        width: 10px;
        height: 10px;
        background: #595959;
        margin-top: 5px;
        position: fixed;
        transform: rotate(45deg);
        margin-left: 10px;
    }

    .tab-arrow {
        width: 10px;
        height: 10px;
        background: #595959;
        margin-top: 5px;
        position: fixed;
        transform: rotate(45deg);
        margin-left: 10px;
    }

    .mobilePlayerHeader {
        width: 100vw;
        position: fixed;
        top: 0;
        left: 0;
        display: none;
        justify-content: space-between;
        align-items: baseline;
        z-index: 130;
    }

    .mobilePlayerHeader.sticky {
        position: fixed;
        top: 0;
        left: 0;
    }

    .images.img_show,
    .images {
        width: 100%;
    }

    .images {
        width: 100% !important;
        height: unset !important;
        top: unset !important;
        left: unset !important;
        display: block !important;
    }

    .closeImage {
        position: absolute;
        right: 0;
        top: 0;
        color: white;
        z-Index: 2;
        font-size: 20;
        font-Weight: bold;
        width: 30px;
        height: 30px;
        border-Radius: 50%;
        background-Color: black;
        opacity: 0.6;
        border-color: black;
    }

    .slick-list {
        overflow: hidden;
    }

    .ifloorPlanSlider.zoom .zoom__btn {
        left: 85%;
    }

    .brandWrap {
        width: 40%;
        top: 100vh;
        position: absolute;
        left: 30%;
        padding-bottom: 3vh;
    }

    .slick-vertical .slick-slide {
        height: 95vh;
    }

    .info_for_ifloorplan {
        color: #3A3A3A;
        background: #A6A4A4A4;
    }

    .hint-modal {
        top: 40%;
        position: absolute;
        z-index: 126;
        width: 100%;
        background-color: #f28e4be4;
        color: #fff;
        font-size: 3vw;
        padding: 2% 0;
        visibility: visible;
        opacity: 1;
    }

    .hint-modal.not {
        visibility: hidden;
        opacity: 0;
        transition: visibility 0.5s, opacity 0.5s linear;
    }

    .plan.my_plan {
        height: 100%;
        align-items: center;
        display: none;
    }
}

@media screen and (min-width: 200px) and (max-width: 850px) and (orientation: portrait) {

    .contentTextInfo-content {
        width: 85% !important;
    }

    .contentTextInfo {
        font-size: 15px;
    }

    html,
    body {
        height: 100%;
        overflow: hidden;
        overscroll-behavior: none;
    }

    .start .images .ifloorPlanSlider:not(.zoom) {
        filter: drop-shadow(0px 2px 3px rgba(0, 0, 0, 0.6));
    }

    .start .images .imageWrap {
        box-shadow: none;
        filter: drop-shadow(0px 2px 3px rgba(0, 0, 0, 0.6));
    }

    .images img {
        width: auto !important;
        height: auto !important;
        object-fit: contain !important;
        max-width: 100% !important;
        max-height: calc(40vh - 20px) !important;
        margin: auto !important;
    }

    .my_plan_img {
        height: calc(100vh - 410px);
    }

    .plan.my_plan img {
        width: auto;
    }

    .react-transform-wrapper,
    .react-transform-component {
        justify-content: center;
        text-align: center;
    }

    .layout_image {
        flex-direction: column;
        justify-content: start;
        gap: 0;
        height: calc(100vh - 50px);
        margin-top: 10px;
    }

    .react-transform-wrapper {
        width: 100% !important;
    }

    .images {
        width: 100% !important;
        display: block;
        position: relative !important;
        height: unset !important;
        top: unset !important;
        left: unset !important;
    }

    .my_plan {
        width: 100% !important;
        display: block;
        position: relative !important;
        /* height: unset !important; */
        top: unset !important;
        left: unset !important;
        /* margin-top: 15px; */
    }

    button.reset_btn svg {
        width: 24px;
    }

    .reset_btn {
        display: flex;
        position: absolute;
        right: 10px;
        top: 10px;
        height: 30px;
        width: 30px;
        align-items: center;
        justify-content: center;
        background-color: #000;
        border: none !important;
        border-radius: 25px;
        padding: 8px;
        z-index: 2;
    }

    .images.img_show,
    .images {
        width: 100%;
    }

    .plan {
        width: 100%;
        height: 100%;
    }

    .start {
        margin-top: 40px;
    }

    .notice {
        width: 90% !important;
        height: 90% !important;
    }

    .slick-list {
        width: 100% !important;
        height: 100% !important;
    }

    .mainWrapIfloorplan {
        height: 100vh;
        height: 100dvh;
        max-height: 100vh;
        max-height: 100dvh;
        margin: 0px auto 0px auto;
        overflow: hidden;
        overscroll-behavior: none;
        display: flex !important;
        flex-direction: column;
        justify-content: stretch;
    }

    .start {
        width: 100%;
        height: 100%;
        flex-grow: 0;
        flex-shrink: 0
    }

    .mobilePlayerHeader {
        height: 50px;
        background-color: #f7f7f7;
        width: 100vw;
        /* position: sticky; */
        position: fixed;
        top: 0;
        left: 0;
        display: flex;
        justify-content: space-between;
        align-items: center;
        z-index: 130;
    }

    .screenOverlay {
        background: black;
        overflow: hidden;
        height: 100vh;
        width: 100vw;
        /* margin-top: 22px; */
        margin-left: 0px;
        opacity: 0.7;
        position: absolute;
        z-index: 123;
    }

    .screenOverlay .plan {
        opacity: 0.5;
    }

    .addressBlock {
        top: auto !important;
        bottom: 0 !important;
        height: 3vh !important;
        font-size: 14px !important;
        z-index: 123;
        width: 100%;
        background: #3A3A3A;
        color: white !important;
        position: fixed !important;
        left: 0% !important;
    }

    .addressInfo {
        font-size: 22px;
        font-weight: 600;
        line-height: 20px;
        padding: 15px 0;
        display: block;
    }

    .imageOverlay {
        background: black;
        overflow: hidden;
        height: 100vh;
        /* width: 100vh; */
        /* margin-top: 22px; */
        margin-left: 0px;
        opacity: 0.8;
    }

    .imageOverlay img {
        opacity: 0.5;
    }

    .client_wrap_main {
        position: absolute !important;
        bottom: 50vh !important;
        background-color: white !important;
        width: 100vw !important;
        left: 0 !important;
        height: 25vw !important;
        z-index: 125;
    }

    .closeImage {
        position: absolute;
        right: 0;
        top: 0;
        color: white;
        z-Index: 2;
        font-size: 20px;
        font-Weight: bold;
        width: 30px;
        height: 30px;
        border-Radius: 50%;
        background-Color: black;
        border-color: black;
        opacity: 0.6;
    }

    .ifloorPlanSlider.zoom {
        height: 100%;
    }

    .ifloorPlanSlider.zoom .slick-slider {
        top: 50%;
        transform: translateY(-50%);
    }

    .mainWrapIfloorplan::-webkit-scrollbar {
        background: transparent;
        width: 1px;
    }

    .tabs {
        position: relative;
    }

    .tabs .tab {
        font-size: 2vh !important;
        flex-shrink: 0;
    }

    .mobilePlayerHeader .tabs .tab {
        padding: 6px 8px 6px 8px !important;
        font-size: 1.8vh !important;
    }

    .agentButton {
        padding: 6px 8px 6px 8px !important;
        font-size: 1.8vh !important;
    }

    .mobilePlayerHeader .tabs {
        overflow: hidden;
        flex: 1;
    }

    .more {
        width: 9% !important;
        height: auto !important;
        position: relative;
    }

    .ifloorPlanSlider.zoom .sliderPanel svg {
        width: 3%;
    }

    .ifloorPlanSlider.zoom .sliderPanel svg:nth-child(2) {
        width: 6%;
    }

    .ifloorPlanSlider.zoom .zoom__btn {
        left: 88%;
    }

    .brandWrap {
        width: 80%;
        margin: 7vh 10% 3vh 10%;
    }

    .tabLevel .tab {
        width: 100vw;
        border-radius: 0px !important;
        background: #595959 !important;
        color: #fff !important;
        transform: none !important;
    }

    .tabLevel {
        margin-top: 10px;
    }

    .tab-arrow {
        width: 10px;
        height: 10px;
        background: #595959;
        margin-top: 5px;
        position: fixed;
        transform: rotate(45deg);
        margin-left: 10px;
    }

    .tabs {
        position: relative !important;
    }

    .more {
        height: auto !important;
        position: relative;
    }

    .info_for_ifloorplan {
        color: #3A3A3A;
        background: #A6A4A4A4;
    }

    .hint-modal {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 40%;
        padding: 5%;
        background-color: #f28e4be4;
        color: #fff;
        font-size: 3vh;
        visibility: visible;
        opacity: 1;
        position: absolute;
        left: 50%;
        top: 70%;
        transform: translate(-50%, -50%);
        z-index: 999;
        border-radius: 15px;
    }

    .hint-modal img {
        margin: 10px;
    }

    .hint-modal span {
        margin-top: 3%;
        color: #fff;
    }

    .hint-modal.not {
        visibility: hidden;
        opacity: 0;
        transition: visibility 0.5s, opacity 0.5s linear;
    }

    .more button {
        font-size: 2vh;
        width: 15vh;
    }

    .moreMenu .moreMenu-share-label {
        width: 15vh;
    }

    .prev,
    .play,
    .next,
    .zoom div {
        cursor: none;
    }

    .splash_screen img {
        transform: unset;
        position: unset;
    }

    .splash_screen .loading-icon {
        position: absolute;
        top: 90%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .img_box {
        margin-top: 10%;
    }

    .img_box img {
        width: 100%;
        object-fit: cover;
        height: calc(100vh - 280px);
    }

    .lds-ring {
        margin: 10px;
    }

    .pnlm-container {
        box-shadow: none;
    }
}

/* iPads (portrait and landscape) ----------- */
@media all and (min-device-width: 768px) and (max-device-height: 1024px) and (orientation: portrait) {

    .contentTextInfo-content {
        width: 85% !important;
    }

    .contentTextInfo {
        font-size: 16px;
    }

    html,
    body {
        height: 100%;
        overflow: hidden;
        overscroll-behavior: none;
    }

    .start .images .ifloorPlanSlider:not(.zoom) {
        filter: drop-shadow(0px 2px 3px rgba(0, 0, 0, 0.6));
    }

    .start .images .imageWrap {
        box-shadow: none;
        filter: drop-shadow(0px 2px 3px rgba(0, 0, 0, 0.6));
    }

    .images img {
        width: auto !important;
        height: auto !important;
        object-fit: contain !important;
        max-width: 100% !important;
        max-height: calc(40vh - 20px) !important;
    }

    .my_plan_img {
        height: calc(100vh - 410px);
    }

    .plan.my_plan img {
        width: auto;
    }

    .react-transform-wrapper,
    .react-transform-component {
        justify-content: center;
        text-align: center;
        /* width: auto !important; */
        /* width: 100% !important; */
    }

    .layout_image {
        flex-direction: column;
        justify-content: start;
        gap: 0;
        height: calc(100vh - 50px);
        /* overflow: hidden; */
        margin-top: 3;
    }

    .react-transform-wrapper {
        width: 100% !important;
    }

    .images {
        width: 100% !important;
        display: block;
        position: relative !important;
        height: unset !important;
        top: unset !important;
        left: unset !important;
    }

    .my_plan {
        width: 100% !important;
        display: block;
        position: relative !important;
        /* height: unset !important; */
        top: unset !important;
        left: unset !important;
        /* margin-top: 15px; */
    }

    /*.images.img_show {*/
    /*    display: block;*/
    /*    position: relative;*/
    /*}*/
    button.reset_btn svg {
        width: 24px;
    }

    .reset_btn {
        display: flex;
        position: absolute;
        right: 10px;
        top: 10px;
        height: 30px;
        width: 30px;
        align-items: center;
        justify-content: center;
        background-color: #000;
        border: none !important;
        border-radius: 25px;
        padding: 8px;
        z-index: 2;
    }

    .images.img_show,
    .images {
        width: 100%;
    }

    .plan {
        width: 100%;
        height: 100%;
    }

    .start {
        margin-top: 40px;
    }

    .notice {
        width: 90% !important;
        height: 90% !important;
    }

    .slick-list {
        width: 100% !important;
        height: 100% !important;
    }

    .mainWrapIfloorplan {
        height: 100vh;
        height: 100dvh;
        max-height: 100vh;
        max-height: 100dvh;
        margin: 0px auto 0px auto;
        overflow: hidden;
        overscroll-behavior: none;
        display: flex !important;
        flex-direction: column;
        justify-content: stretch;
    }

    .start {
        width: 100%;
        height: 100%;
        flex-grow: 0;
        flex-shrink: 0
    }

    .mobilePlayerHeader {
        height: 50px;
        background-color: #f7f7f7;
        width: 100vw;
        /* position: sticky; */
        position: fixed;
        top: 0;
        left: 0;
        display: flex;
        justify-content: space-between;
        align-items: center;
        z-index: 130;
    }

    .screenOverlay {
        background: black;
        overflow: hidden;
        height: 100vh;
        width: 100vw;
        /* margin-top: 22px; */
        margin-left: 0px;
        opacity: 0.7;
        position: absolute;
        z-index: 123;
    }

    .screenOverlay .plan {
        opacity: 0.5;
    }

    .addressBlock {
        top: auto !important;
        bottom: 0 !important;
        height: 3vh !important;
        font-size: 14px !important;
        z-index: 123;
        width: 100%;
        background: #3A3A3A;
        color: white !important;
        position: fixed !important;
        left: 0% !important;
    }

    .addressInfo {
        font-size: 22px;
        font-weight: 600;
        line-height: 20px;
        padding: 15px 0;
        display: block;
    }

    .imageOverlay {
        background: black;
        overflow: hidden;
        height: 100vh;
        /* width: 100vh; */
        /* margin-top: 22px; */
        margin-left: 0px;
        opacity: 0.8;
    }

    .imageOverlay img {
        opacity: 0.5;
    }

    .client_wrap_main {
        position: absolute !important;
        bottom: 50vh !important;
        background-color: white !important;
        width: 100vw !important;
        left: 0 !important;
        height: 25vw !important;
        z-index: 125;
    }

    /* .images{
        width: 96vw !important;
        height: 45vh !important;
        left: 7.5px !important;
    } */
    .closeImage {
        position: absolute;
        right: 0;
        top: 0;
        color: white;
        z-Index: 2;
        font-size: 20;
        font-Weight: bold;
        width: 30px;
        height: 30px;
        border-Radius: 50%;
        background-Color: black;
        border-color: black;
        opacity: 0.6;
    }

    .ifloorPlanSlider.zoom {
        height: 100%;
    }

    .ifloorPlanSlider.zoom .slick-slider {
        top: 50%;
        transform: translateY(-50%);
    }

    .mainWrapIfloorplan::-webkit-scrollbar {
        background: transparent;
        width: 1px;
    }

    .tabs {
        position: relative;
    }

    .mobilePlayerHeader .tabs {
        overflow: hidden;
        flex: 1;
    }

    .tabs .tab {
        font-size: 2vh !important;
        flex-shrink: 0;
    }

    .mobilePlayerHeader .tabs .tab {
        padding: 6px 8px 6px 8px !important;
        font-size: 1.8vh !important;
    }

    .agentButton {
        padding: 6px 8px 6px 8px !important;
        font-size: 1.8vh !important;
        margin-right: calc(4.2% + 15px);
    }

    .more {
        width: 4.2% !important;
        height: auto !important;
        position: fixed;
        top: 5px;
        right: 0;
    }

    .ifloorPlanSlider.zoom .sliderPanel svg {
        width: 3%;
    }

    .ifloorPlanSlider.zoom .sliderPanel svg:nth-child(2) {
        width: 6%;
    }

    .ifloorPlanSlider.zoom .zoom__btn {
        left: 88%;
    }

    .brandWrap {
        width: 80%;
        margin: 7vh 10% 3vh 10%;
    }

    .tabLevel .tab {
        width: 100vw;
        border-radius: 0px !important;
        background: #595959 !important;
        color: #fff !important;
        transform: none !important;
    }

    .tabLevel {
        margin-top: 10px;
    }

    .tab-arrow {
        width: 10px;
        height: 10px;
        background: #595959;
        margin-top: 5px;
        position: fixed;
        transform: rotate(45deg);
        margin-left: 10px;
    }

    .info_for_ifloorplan {
        color: #3A3A3A;
        background: #A6A4A4A4;
    }

    .hint-modal {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 40%;
        background-color: #f28e4be4;
        color: #fff;
        font-size: 3vh;
        padding: 5%;
        visibility: visible;
        opacity: 1;
        position: absolute;
        left: 50%;
        top: 70%;
        transform: translate(-50%, -50%);
        z-index: 999;
        border-radius: 15px;
    }

    .hint-modal img {
        margin: 10px;
    }

    .hint-modal span {
        margin-top: 3%;
        color: #fff;
    }

    .hint-modal.not {
        visibility: hidden;
        opacity: 0;
        transition: visibility 0.5s, opacity 0.5s linear;
    }

    .more button {
        font-size: 2vh;
        width: 15vh;
    }

    .moreMenu .moreMenu-share-label {
        width: 15vh;
    }

    .prev,
    .play,
    .next,
    .zoom div {
        cursor: none;
    }

    .splash_screen img {
        transform: unset;
        position: unset;
    }

    .splash_screen .loading-icon {
        position: absolute;
        top: 90%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .img_box {
        margin-top: 10%;
    }

    .img_box img {
        width: 100%;
        object-fit: cover;
        height: calc(100vh - 280px);
    }

    .lds-ring {
        margin: 10px;
    }

    .pnlm-container {
        box-shadow: none;
    }
}

@media (orientation: portrait) and (min-width: 744px) and (max-width: 1024px) {

    .contentTextInfo-content {
        width: 85% !important;
    }

    .contentTextInfo {
        font-size: 16px;
    }

    .more {
        width: 4.2% !important;
        height: auto !important;
        position: fixed;
        top: 5px;
        right: 0;
    }

    .start .images .ifloorPlanSlider:not(.zoom) {
        filter: drop-shadow(0px 2px 3px rgba(0, 0, 0, 0.6));
    }

    .start .images .imageWrap {
        box-shadow: none;
        filter: drop-shadow(0px 2px 3px rgba(0, 0, 0, 0.6));
    }

    .tabs .tab {
        font-size: 1.5vw !important;
    }

    .mobilePlayerHeader .tabs .tab {
        padding: 8px 20px 8px 20px !important;
        font-size: 1.5vw !important;
    }

    .agentButton {
        padding: 8px 20px 8px 20px !important;
        font-size: 1.5vw !important;
        margin-right: calc(4.2% + 15px);
    }
}

@media (min-width: 991px) {
    .more {
        height: auto !important;
        position: fixed;
        top: 5px;
        right: 0;
    }

    .tabs {
        display: flex;
        justify-content: center;
        z-index: 126;
    }
}

/* Feedback Form */
.feedbackTab {
    position: fixed;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 125;
    background: #1276EB;
    color: #fff;
    padding: 15px 8px;
    cursor: pointer;
    border-radius: 8px 0 0 8px;
    font-size: 1.4rem;
    font-weight: 500;
    writing-mode: vertical-lr;
    text-orientation: mixed;
}

.feedbackTab-top {
    top: 0;
    right: calc(2.5% + 200px);
    transform: none;
    writing-mode: horizontal-tb;
    padding: 8px 15px;
    border-radius: 0 0 8px 8px;
}

.feedbackModal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.5);
    z-index: 200;
}

.feedbackModal-content {
    background: #fff !important;
    border-radius: 12px !important;
    padding: 30px !important;
    max-width: 500px !important;
    width: 90% !important;
    max-height: 90vh;
    overflow-y: auto;
    position: relative;
    height: auto !important;
    min-height: auto !important;
    margin: auto;
}

.playerModal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.5);
    z-index: 201;
    display: flex;
    align-items: center;
    justify-content: center;
}

.playerModal-content {
    background: #fff;
    border-radius: 12px;
    padding: 30px;
    max-width: 400px;
    width: 90%;
    position: relative;
    box-shadow: 0 8px 30px rgba(0,0,0,0.25);
    text-align: center;
}

.playerModal-close {
    position: absolute;
    top: 10px;
    right: 15px;
    font-size: 2.2rem;
    line-height: 1;
    cursor: pointer;
    color: #999;
    font-weight: 400;
}

.playerModal-agent-logo,
.playerModal-brand-logo {
    max-width: 100%;
    max-height: 120px;
    object-fit: contain;
    margin: 0 auto 15px;
    display: block;
}

.playerModal-agent-name {
    font-size: 1.7rem;
    font-weight: 600;
    color: #333;
    margin: 0 0 8px;
}

.playerModal-agent-phone,
.playerModal-agent-email {
    display: block;
    font-size: 1.4rem;
    color: #666;
    margin: 4px 0;
    text-decoration: none;
}

.playerModal-agent-email {
    color: #1276EB;
}

.playerModal-brand-title {
    font-size: 1.3rem;
    color: #999;
    margin: 0 0 15px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.feedbackClose {
    position: absolute;
    top: 10px;
    right: 15px;
    font-size: 2rem;
    cursor: pointer;
    color: #999;
}

.feedbackForm {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.feedbackForm h3 {
    margin: 0;
    font-size: 1.8rem;
    color: #333;
}

.feedbackHeader {
    margin-bottom: 10px;
}

.feedbackSub {
    color: #666;
    font-size: 1.3rem;
    margin-top: 5px;
}

.feedbackQuestion {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.feedbackQ {
    font-size: 1.4rem;
    font-weight: 500;
    color: #333;
}

.feedbackForm textarea {
    width: 100%;
    padding: 10px;
    border: 2px solid #ddd;
    border-radius: 8px;
    font-family: inherit;
    font-size: 1.3rem;
    resize: vertical;
}

.feedbackForm input[type="text"],
.feedbackForm input[type="email"] {
    width: 100%;
    padding: 10px;
    border: 2px solid #ddd;
    border-radius: 8px;
    font-size: 1.3rem;
    margin-bottom: 10px;
}

.feedbackForm input:focus,
.feedbackForm textarea:focus {
    border-color: #1276EB;
    outline: none;
}

.feedbackYesNo {
    display: flex;
    gap: 10px;
}

.feedbackYesNo button {
    flex: 1;
    padding: 10px;
    border: 2px solid #ddd;
    border-radius: 8px;
    background: #fff;
    cursor: pointer;
    font-size: 1.4rem;
    transition: all 0.2s;
}

.feedbackYesNo button.active {
    border-color: #1276EB;
    background: #EBF3FF;
    color: #1276EB;
}

.feedbackRoleGroup {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
}

.feedbackRoleGroup button {
    padding: 8px 16px;
    border: 2px solid #ddd;
    border-radius: 6px;
    background: #fff;
    cursor: pointer;
    font-size: 1.3rem;
    transition: all 0.2s;
    flex: 1;
    min-width: 120px;
}

.feedbackRoleGroup button.active {
    border-color: #1276EB;
    background: #EBF3FF;
    color: #1276EB;
}

.feedbackStars {
    display: flex;
    gap: 5px;
    justify-content: center;
    font-size: 2.5rem;
}

.feedbackStars span {
    font-size: 2.5rem;
    cursor: pointer;
    color: #ddd;
    transition: color 0.2s;
}

.feedbackStars span.filled {
    color: #FFB400;
}

.feedbackSubmit {
    padding: 12px;
    background: #1276EB;
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 1.6rem;
    cursor: pointer;
    font-weight: 500;
    transition: background 0.2s;
}

.feedbackSubmit:hover {
    background: #0F5EBC;
}

.feedbackSubmit:disabled {
    background: #ccc;
    cursor: not-allowed;
}

.feedbackThankYou {
    text-align: center;
    padding: 40px 20px;
}

.feedbackThankYou h3 {
    color: #1276EB;
    margin-bottom: 10px;
}

.feedbackThankYou p {
    color: #666;
    font-size: 1.4rem;
}

@media (max-width: 768px) {
    .feedbackTab {
        display: none;
    }
}

@media (max-width: 991px) {
    .feedbackTab {
        display: none;
    }
}
