body,
html {
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: rgba(246, 240, 218, 1)
}

/* Botao Fechar */
.btn-fechar {
    position: absolute;
    top: 8.5%;
    right: 5.5%;

    width: 2.3%;
    height: 4.5%;
    transition: transform 0.3s ease;
    cursor: pointer;
    z-index: 2;
}

.btn-fechar-vistas {
    position: absolute;
    top: 2.3%;
    right: 1.2%;
    width: 2%;
    height: 4%;
    transition: transform 0.3s;
    cursor: pointer;
    z-index: 2;
}

.btn-fechar:hover {
    transform: scale(1.05);
}

.btn-fechar:active {
    transform: scale(0.95);
}

/* Descanso */

#tela-descanso {
    position: relative;
    width: 100vw;
    height: 100vh;
    background-color: rgba(168, 56, 62, 1);
}

.logo-e-botao {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    z-index: 1;
    gap: 7vh;
}

.logo {
    width: 30vw;
    height: auto;
}

.botao {
    width: 20vw;
    height: auto;
    cursor: pointer;
    transition: transform 0.3s ease;
}

.botao:hover {
    transform: scale(1.05);
}

.botao:active {
    transform: scale(0.95);
}

/* MENU */

.tela-menu {
    position: relative;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}

.imagem-menu {
    position: absolute;
    width: 74%;
    height: 100.5%;
    object-fit: fill;
    z-index: 1;
    pointer-events: none;
    bottom: 0;
}

.borda-menu {
    position: absolute;
    width: 72%;
    height: 100%;
    z-index: 1;
    pointer-events: none;
    bottom: 0;
    right: -1%;
}

.logo-menu {
    position: absolute;
    width: 14%;
    height: 24%;
    z-index: 1;
    pointer-events: none;
    top: 4%;
    right: 6%;
}

.projeto-btn {
    position: absolute;
    width: 19%;
    height: 9.7%;
    top: 31%;
    right: 3.5%;
    z-index: 2;
    opacity: 0;
    animation: rightSlide 1.2s ease-out 0s forwards;
}

.projeto-img {
    display: block;
    width: 100%;
    height: 100%;
    cursor: pointer;
    transition: transform 0.3s ease;
    transform-origin: center center;
    image-rendering: auto;
}

.projeto-img:hover,
.vistas-img:hover,
.galeria-img:hover,
.localizacao-img:hover,
.tour-img:hover,
.filme-img:hover {
    transform: scale(1.05);
}

.projeto-img:active,
.vistas-img:active,
.galeria-img:active,
.localizacao-img:active,
.tour-img:active,
.filme-img:active {
    transform: scale(0.95);
}


.vistas-btn {
    position: absolute;
    width: 19%;
    height: 9.7%;
    top: 41.5%;
    right: 3.5%;
    z-index: 2;

    opacity: 0;
    animation: rightSlide 1.2s ease-out 0.2s forwards;
}

.vistas-img {
    display: block;
    width: 100%;
    height: 100%;
    cursor: pointer;
    transition: transform 0.3s ease;
    transform-origin: center center;
    image-rendering: auto;
}


.galeria-btn {
    position: absolute;
    width: 19%;
    height: 9.7%;
    top: 52%;
    right: 3.5%;
    z-index: 2;

    opacity: 0;
    animation: rightSlide 1.2s ease-out 0.4s forwards;
}

.galeria-img {
    display: block;
    width: 100%;
    height: 100%;
    cursor: pointer;
    transition: transform 0.3s ease;
    transform-origin: center center;
    image-rendering: auto;
}

.localizacao-btn {
    position: absolute;
    width: 19%;
    height: 9.7%;
    top: 62.5%;
    right: 3.5%;
    z-index: 2;

    opacity: 0;
    animation: rightSlide 1.2s ease-out 0.6s forwards;
}

.localizacao-img {
    display: block;
    width: 100%;
    height: 100%;
    cursor: pointer;
    transition: transform 0.3s ease;
    transform-origin: center center;
    image-rendering: auto;
}

.tour-btn {
    position: absolute;
    width: 19%;
    height: 9.7%;
    top: 73%;
    right: 3.5%;
    z-index: 2;

    opacity: 0;
    animation: rightSlide 1.2s ease-out 0.8s forwards;
}

.tour-img {
    display: block;
    width: 100%;
    height: 100%;
    cursor: pointer;
    transition: transform 0.3s ease;
    transform-origin: center center;
    image-rendering: auto;
}


.filme-btn {
    position: absolute;
    width: 19%;
    height: 9.7%;
    top: 83.5%;
    right: 3.5%;
    z-index: 2;

    opacity: 0;
    animation: rightSlide 1.2s ease-out 1s forwards;
}

.filme-img {
    display: block;
    width: 100%;
    height: 100%;
    cursor: pointer;
    transition: transform 0.3s ease;
    transform-origin: center center;
    image-rendering: auto;
}


/* IMPLANTACAO */

.tela-implantacao {
    position: relative;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}

.fundo-implantacao {
    position: absolute;
    width: 94%;
    height: 91.5%;
    z-index: 1;
    pointer-events: none;
    top: 5%;
    left: 3%;
}

.cabecalho-implantacao {
    position: absolute;
    width: 69.5%;
    height: 24.5%;
    z-index: 1;
    pointer-events: none;
    top: 11%;
    left: 7%;
}

.img-implantacao {
    position: absolute;
    width: 74.5%;
    height: 56%;
    z-index: 1;
    top: 32%;
    left: 7%;
    cursor: pointer;
}

.seta-esquerda-implantacao {
    position: absolute;
    width: 6.4%;
    height: 11.3%;
    z-index: 1;
    bottom: 10%;
    right: 13%;
    cursor: pointer;
    transition: transform 0.3s ease;
}

.seta-esquerda-implantacao:hover,
.seta-direita-implantacao:hover {
    transform: scale(1.05);
}

.seta-esquerda-implantacao:active,
.seta-direita-implantacao:active {
    transform: scale(0.95);
}

.seta-direita-implantacao {
    position: absolute;
    width: 6.4%;
    height: 11.3%;
    z-index: 1;
    bottom: 10%;
    right: 6%;
    cursor: pointer;
    transition: transform 0.3s ease;
}

.implantacao-btn,
.unidades-btn,
.ficha-btn,
.institucional-btn {
    position: absolute;
    z-index: 2;
}

.implantacao-btn-selecionado,
.unidades-btn-selecionado,
.ficha-btn-selecionado,
.institucional-btn-selecionado {
    position: absolute;
    z-index: 2;
}

.implantacao-img,
.unidades-img,
.ficha-img,
.institucional-img {
    display: block;
    width: 100%;
    height: 100%;
    cursor: pointer;
    transition: transform 0.3s ease;
    transform-origin: center center;
    image-rendering: auto;
}

.implantacao-img:hover {
    transform: scale(1.05);
}

.implantacao-img:active {
    transform: scale(0.95);
}

.unidades-img:hover {
    transform: scale(1.05);
}

.unidades-img:active {
    transform: scale(0.95);
}

.ficha-img:hover {
    transform: scale(1.05);
}

.ficha-img:active {
    transform: scale(0.95);
}

.institucional-img:hover {
    transform: scale(1.05);
}

.institucional-img:active {
    transform: scale(0.95);
}

.implantacao-btn {
    width: 12.1%;
    height: 8.8%;
    top: 22%;
    right: 5%;
}

.unidades-btn {
    width: 12.1%;
    height: 8.8%;
    top: 31.5%;
    right: 5%;
}

.ficha-btn {
    width: 12.1%;
    height: 8.8%;
    top: 40.5%;
    right: 5%;
}

.institucional-btn {
    width: 12.1%;
    height: 8.8%;
    top: 49.5%;
    right: 5%;
}

.implantacao-btn-selecionado {
    width: 13.4%;
    height: 9.5%;
    right: 5%;
    top: 22%;
}

.unidades-btn-selecionado {
    width: 13.4%;
    height: 9.5%;
    right: 5%;
    top: 30.5%;
}

.ficha-btn-selecionado {
    width: 13.4%;
    height: 9.5%;
    right: 5%;
    top: 40.5%;
}

.institucional-btn-selecionado {
    width: 13.4%;
    height: 9.5%;
    right: 5%;
    top: 49.5%;
}

@keyframes rightSlide {
    from {
        opacity: 0;
        transform: translate(70%, 0%);
    }

    to {
        opacity: 1;
        transform: translate(0%, 0%);
    }
}

#tela-implantacao.rightslide-on .implantacao-btn-selecionado {
    opacity: 0;
    animation: rightSlide 1.2s ease-out 0s forwards;
}

#tela-implantacao.rightslide-on .unidades-btn {
    opacity: 0;
    animation: rightSlide 1.2s ease-out 0.2s forwards;
}

#tela-implantacao.rightslide-on .ficha-btn {
    opacity: 0;
    animation: rightSlide 1.2s ease-out 0.4s forwards;
}

#tela-implantacao.rightslide-on .institucional-btn {
    opacity: 0;
    animation: rightSlide 1.2s ease-out 0.6s forwards;
}


/* UNIDADES */

.tela-unidades {
    position: relative;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}

.fundo-unidades {
    position: absolute;
    width: 94%;
    height: 91.5%;
    z-index: 1;
    pointer-events: none;
    top: 5%;
    left: 3%;
}

.barra-cima {
    position: absolute;
    width: 70.3%;
    height: 4.5%;
    z-index: 2;
    pointer-events: none;
    top: 5.1%;
    left: 3.1%;
}

.barra-baixo {
    position: absolute;
    width: 70.3%;
    height: 4.5%;
    z-index: 2;
    pointer-events: none;
    bottom: 5.1%;
    right: 2.4%;
}

.titulo-unidades {
    position: absolute;
    width: 19.3%;
    height: 23.5%;
    z-index: 1;
    pointer-events: none;
    top: 5.1%;
    left: 5.5%;
}

.texto-titulo-unidades {
    position: absolute;
    width: 24.8%;
    height: 6.5%;
    z-index: 1;
    pointer-events: none;
    top: 17%;
    left: 27.5%;
}

.detalhes-unidades {
    position: absolute;
    width: 15.8%;
    height: 16.8%;
    z-index: 1;
    pointer-events: none;
    bottom: 11%;
    left: 6.5%;
}

.img-unidades {
    position: absolute;
    width: 64.2%;
    height: 69%;
    z-index: 1;
    top: 15%;
    left: 17%;
    cursor: pointer;
}

/* FICHA */

.tela-ficha {
    position: relative;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}

.fundo-ficha {
    position: absolute;
    width: 94%;
    height: 91.5%;
    z-index: 1;
    pointer-events: none;
    top: 5%;
    left: 3%;
}

.titulo-ficha {
    position: absolute;
    width: 76.1%;
    height: 12.8%;
    z-index: 1;
    pointer-events: none;
    top: 13%;
    left: 7.5%;
}

.rodape-ficha {
    position: absolute;
    width: 42.6%;
    height: 7%;
    z-index: 1;
    pointer-events: none;
    bottom: 13%;
    left: 7.5%;
}

.card-vagas {
    position: absolute;
    width: 31.7%;
    height: 10.5%;
    z-index: 1;
    top: 31%;
    left: 7%;
    cursor: pointer;
}

.card-areas-lazer {
    position: absolute;
    width: 31.7%;
    height: 10.5%;
    z-index: 999 !important;
    top: 31%;
    left: 43%;
    cursor: pointer;
}

.card-seguranca {
    position: absolute;
    width: 31.7%;
    height: 10.5%;
    z-index: 1;
    top: 46%;
    left: 7%;
    cursor: pointer;
}

.card-infraestrutura {
    position: absolute;
    width: 31.7%;
    height: 10.5%;
    z-index: 1;
    top: 46%;
    left: 43%;
    cursor: pointer;
}

.card-areas-tecnicas {
    position: absolute;
    width: 31.7%;
    height: 10.5%;
    z-index: 1;
    top: 61%;
    left: 7%;
    cursor: pointer;
}

.card-sustentabilidade {
    position: absolute;
    width: 31.7%;
    height: 10.5%;
    z-index: 1;
    top: 61%;
    left: 43%;
    cursor: pointer;
}

.card-interativa {
    position: absolute;
    cursor: pointer;
    z-index: 1;
}

.card-open-overlay {
    position: absolute;
    opacity: 0;
    transition: opacity .28s ease;
    transform-origin: top left;
    z-index: 1;
    filter: drop-shadow(0 8px 16px rgba(0, 0, 0, .25));
    will-change: opacity;
}

.card-open-overlay.scrollable {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    border-radius: 8%;
    overflow: hidden auto;
    background: transparent;
}

.card-open-overlay.scrollable::-webkit-scrollbar {
    display: none;
}

.card-open-overlay img {
    display: block;
    width: 100%;
    height: auto;
    user-select: none;
    -webkit-user-drag: none;
    pointer-events: none;
}

.card-open-overlay.visivel {
    opacity: 1;
}

/* INSTITUCIONAL */

.tela-institucional {
    position: relative;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}

.fundo-institucional {
    position: absolute;
    width: 94%;
    height: 91.5%;
    z-index: 1;
    pointer-events: none;
    top: 5%;
    left: 3%;
}

.logo-institucional {
    position: absolute;
    width: 35.7%;
    height: 15%;
    z-index: 1;
    top: 12%;
    left: 7%;
    pointer-events: none;
}

.texto-institucional {
    position: absolute;
    width: 76%;
    height: 30%;
    z-index: 1;
    top: 33%;
    left: 7%;
    pointer-events: none;
}

.img-01-inst {
    position: absolute;
    width: 25.2%;
    height: 20%;
    z-index: 1;
    top: 65%;
    left: 7%;
    pointer-events: none;
}

.img-02-inst {
    position: absolute;
    width: 18%;
    height: 20%;
    z-index: 1;
    top: 65%;
    left: 36%;
    pointer-events: none;
}

.img-03-inst {
    position: absolute;
    width: 18%;
    height: 20%;
    z-index: 1;
    top: 65%;
    left: 58%;
    pointer-events: none;
}

.img-04-inst {
    position: absolute;
    width: 17%;
    height: 21.5%;
    z-index: 1;
    top: 65%;
    left: 64%;
    pointer-events: none;
}

/* GALERIA */

.tela-galeria {
    position: relative;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}

.img-galeria {
    position: absolute;
    width: 91%;
    height: 87.5%;
    z-index: 1;
    cursor: pointer;
    top: 5.6%;
    left: 5%;
}

/* AEREO */

.tela-aereo {
    position: relative;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}

.fundo-aereo {
    position: absolute;
    width: 94%;
    height: 91.5%;
    z-index: 1;
    pointer-events: none;
    top: 5%;
    left: 3%;
}

.texto-aereo {
    position: absolute;
    width: 44.8%;
    height: 16%;
    z-index: 1;
    pointer-events: none;
    bottom: 15%;
    left: 0%;
}

.aereo-btn,
.mapa-btn {
    position: absolute;
    z-index: 2;
}

.aereo-btn-selecionado,
.mapa-btn-selecionado {
    position: absolute;
    z-index: 2;
}

.aereo-img,
.mapa-img {
    display: block;
    width: 100%;
    height: 100%;
    cursor: pointer;
    transition: transform 0.3s ease;
    transform-origin: center center;
    image-rendering: auto;
}

.aereo-img:hover {
    transform: scale(1.05);
}

.aereo-img:active {
    transform: scale(0.95);
}

.mapa-img:hover {
    transform: scale(1.05);
}

.mapa-img:active {
    transform: scale(0.95);
}

/* medidas normais */
.aereo-btn {
    width: 12.1%;
    height: 8.8%;
    top: 22%;
    right: 5%;
}

/* quando selecionado */
.aereo-btn-selecionado {
    width: 13.4%;
    height: 9.5%;
    right: 5%;
    top: 22%;
}

/* medidas normais */
.mapa-btn {
    width: 12.1%;
    height: 8.8%;
    top: 31.5%;
    right: 5%;
}

/* quando selecionado */
.mapa-btn-selecionado {
    width: 13.4%;
    height: 9.5%;
    right: 5%;
    top: 30.5%;
}

/* Modo “rightslide ativado” apenas quando vier do menu */
#tela-aereo.rightslide-on .aereo-btn-selecionado {
    opacity: 0;
    animation: rightSlide 1.2s ease-out 0s forwards;
}

/* Modo “rightslide ativado” apenas quando vier do menu */
#tela-aereo.rightslide-on .mapa-btn {
    opacity: 0;
    animation: rightSlide 1.2s ease-out 0.2s forwards;
}

.pin-solaris {
    position: absolute;
    width: 18%;
    height: 32%;
    transition: transform 0.3s ease;
    z-index: 2;
    bottom: 25%;
    left: 51.5%;
    pointer-events: none !important;
    cursor: auto !important;
}

.pin-mercado {
    position: absolute;
    width: 3.6%;
    height: 17.2%;
    transition: transform 0.3s ease;
    z-index: 2;
    bottom: 45%;
    left: 42.6%;
}

.pin-farmacia {
    position: absolute;
    width: 3.6%;
    height: 17.2%;
    transition: transform 0.3s ease;
    z-index: 3;
    bottom: 54.7%;
    left: 46.6%;
}

.pin-prefeitura {
    position: absolute;
    width: 3.6%;
    height: 12.2%;
    transition: transform 0.3s ease;
    z-index: 3;
    bottom: 61.7%;
    left: 50.6%;
}

.pin-clube {
    position: absolute;
    width: 3.6%;
    height: 17.2%;
    transition: transform 0.3s ease;
    z-index: 2;
    bottom: 52.7%;
    left: 22.6%;
}

.pin-entrada {
    position: absolute;
    width: 3.6%;
    height: 17.2%;
    transition: transform 0.3s ease;
    z-index: 2;
    bottom: 64.7%;
    left: 10.6%;
}

.pin-universidade {
    position: absolute;
    width: 3.6%;
    height: 17.2%;
    transition: transform 0.3s ease;
    z-index: 2;
    bottom: 71.7%;
    left: 27.6%;
}

.pin-lago {
    position: absolute;
    width: 3.6%;
    height: 24.2%;
    transition: transform 0.3s ease;
    z-index: 2;
    bottom: 65.3%;
    left: 48.3%;
}

.pin-mall {
    position: absolute;
    width: 3.6%;
    height: 9.2%;
    transition: transform 0.3s ease;
    z-index: 4;
    bottom: 73.3%;
    left: 60.3%;
}

.pin-arena {
    position: absolute;
    width: 3.6%;
    height: 23.5%;
    transition: transform 0.3s ease;
    z-index: 2;
    bottom: 65.8%;
    left: 64.5%;
}

/* todos os pins clicáveis (sobrescreve seu pointer-events: none) */
#tela-aereo [class^="pin-"],
#tela-aereo [class*=" pin-"] {
    pointer-events: auto !important;
    cursor: pointer;
}

#tela-aereo {
    position: relative;
}

#pinCard {
    position: absolute;
    display: none;
    will-change: transform, opacity;
    filter: drop-shadow(0 6px 12px rgba(0, 0, 0, .25));
}

#pinCard>img {
    display: block;
    width: 100%;
    height: 100%;
}

/* AEREO */

.tela-filme {
    position: relative;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}

.barras-filme {
    position: absolute;
    width: 93.9%;
    height: 95.3%;
    z-index: 2;
    pointer-events: none;
    top: 3.1%;
    left: 3.1%;
}

.fundo-filme {
    position: absolute;
    width: 90.5%;
    height: 90.8%;
    z-index: 1;
    cursor: pointer;
    top: 4.5%;
    left: 4.8%;
    object-fit: fill;
}

/* Mapa */

.tela-mapa {
    position: relative;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}

#tela-mapa {
    position: relative;
}

.map-normal {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.map-normal {
    position: absolute;
    top: 5.6% !important;
    left: 4.5% !important;
    width: 91% !important;
    height: 88% !important;
    z-index: 0;
}

.aereo-btn,
.mapa-btn-selecionado,
.btn-fechar,
.barras-filme {
    position: absolute;
    z-index: 5;
}

#tela-mapa {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
}

#mapNormal {
    position: absolute;
    inset: 0;
}

/* pin DOM em % do container */
.pin-dom {
    position: absolute;
    left: 48%;
    top: 35%;
    width: 9%;
    height: 16%;
    pointer-events: none;
    transform: translate(-50%, -100%);
}

.texto-mapa {
    position: absolute;
    width: 29.9%;
    height: 17%;
    z-index: 2;
    pointer-events: none;
    top: 10.1%;
    left: 0;
}

.img-galeria {
    transition: opacity 0.4s ease;
}

.fade {
    opacity: 0;
    animation: fadeIn 2s forwards;
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.galeria-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.85);
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
    z-index: 9999;
    touch-action: pinch-zoom;
}

.galeria-overlay.is-open {
    opacity: 1;
    pointer-events: all;
}

.galeria-overlay.is-closing {
    opacity: 0;
    pointer-events: none;
}

/* Imagem ampliada */
.galeria-zoom {
    max-width: 90%;
    max-height: 90%;
    transition: transform 0.25s ease;
    touch-action: pinch-zoom;
}

/* Overlay de zoom da Implantação */
.overlay-zoom {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.8);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    opacity: 0;
    transition: opacity 0.3s ease;
    touch-action: pinch-zoom;
}

.overlay-zoom.mostrar {
    opacity: 1;
}

/* Imagem ampliada */
.overlay-zoom img {
    width: 90%;
    height: auto;
    transition: transform 0.2s ease;
    touch-action: pinch-zoom;
}

/* transição suave ao trocar */
.img-unidades,
.detalhes-unidades,
.texto-titulo-unidades,
.titulo-unidades {
    transition: opacity .25s ease;
}

.fadeUnidades {
    opacity: 0;
    animation: unidadesFade .25s forwards;
}

@keyframes unidadesFade {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.unidades-overlay {
    position: fixed;
    inset: 0;
    background: rgba(255, 255, 255, 0.85);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    opacity: 0;
    pointer-events: none;
    transition: opacity .3s ease;
}

.unidades-overlay.is-open {
    opacity: 1;
    pointer-events: auto;
}

.unidades-overlay.is-closing {
    opacity: 0;
    pointer-events: none;
}

.unidades-zoom {
    max-width: 90vw;
    max-height: 90vh;
    width: auto;
    height: auto;
    user-select: none;
    touch-action: none;
    transition: transform .2s ease;
}


/* BREVE */

.tela-breve {
    position: relative;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}

.fundo-breve {
    position: absolute;
    width: 94%;
    height: 91.5%;
    z-index: 1;
    pointer-events: none;
    top: 5%;
    left: 3%;
}


/* Vistas */

/* área geral */
.tela-vistas {
    position: relative;
    width: 100vw;
    height: 100vh;
    background: #efe7d2;
    overflow: hidden;
}

/* caixa do panorama com cantos arredondados */
.vistas-wrapper {
    position: absolute;
    inset: 7.2vh 4.7vw;
    z-index: 1;
    left: 5%;
    right: 4%;
}

.panorama-box {
    position: absolute;
    inset: 0;
    overflow: hidden;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .25);
}

#panorama360-vistas {
    width: 100%;
    height: 100%;
}

/* torres = pílulas com borda branca (igual ao print) */
.torre-btn {
    position: absolute;
    width: 13%;
    height: 9.8%;
    cursor: pointer;

}

.t1 {
    top: 9%;
    right: 0%;
}

.t2 {
    top: 17.5%;
    right: 0%;
}


.pav-btn {
    position: absolute;
    width: 13%;
    height: 7.5%;
    cursor: pointer;
}

.pav-20 {
    top: 32%;
    right: 0%;
}

.pav-18 {
    top: 37.5%;
    right: 0%;
}

.pav-16 {
    top: 43%;
    right: 0%;
}

.pav-14 {
    top: 48.5%;
    right: 0%;
}

.pav-12 {
    top: 54%;
    right: 0%;
}

.pav-10 {
    top: 59.5%;
    right: 0%;
}

.pav-08 {
    top: 65%;
    right: 0%;
}

.pav-06 {
    top: 70.5%;
    right: 0%;
}

.pav-04 {
    top: 76%;
    right: 0%;
}
.pav-02 {
    top: 81.5%;
    right: 0%;
}

.pav-btn:active {
    transform: scale(.98);
}

/* spinner do pannellum */
.pnlm-load-box {
    display: none !important;
}

.wave {
    position: absolute;
    width: 54.5%;
    height: 86.5%;
    z-index: 1;
    pointer-events: none;
    bottom: 0%;
    left: 0%;
}

/* área geral */
.tela-360 {
    position: relative;
    width: 100vw;
    height: 100vh;
    background: #efe7d2;
    overflow: hidden;
}

/* Ajuste aqui posição e tamanho do “quadrado” onde o 360 aparece */
.vr-container {
    position: absolute;
    top: 7%;
    left: 5%;
    width: 91%;
    height: 85%;
    overflow: hidden;
}

/* Iframe sempre ocupando todo o container */
.vr-frame {
    width: 100%;
    height: 100%;
    border: none;
}
