body{
	overflow-x: hidden !important;
}

body:not(.elementor-editor-active.postid-1865) .popup-agendar{
	display: none
}

button.ver-todos-btn.elementor-button-link.elementor-button {
    background: transparent;
    border-radius: 50px;
    padding: 20px;
    min-width: 200px;
    color: #000;
    font-family: "Helvetica Neue";
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    border: 2px solid #000;
}

.ver-todos-btn-container.elementor-button-wrapper {
    text-align: center;
    margin-top: 60px;
}

.otgs-development-site-front-end {
    display: none !important;
}

.caminho-site .return-url {
    width: 46px;
    height: 46px;
    display: block;
    background-image: url(/wp-content/uploads/2025/06/00_icon_back_to.svg);
}

.close-popup-agendar{
	cursor: pointer
}

.popup-agendar{
	height: 100%;
	max-height: 100vh;
}

.video-section img {
    height: 740px;
}

@media (max-width: 1024px) {
	
	.popup-agendar > .e-con-inner > .e-con-full.e-flex.e-con.e-child {
		align-items: start;
		justify-content: start;
		overflow-y: scroll;
		flex-direction: column;
	}

	
    .video-section img {
        height: 500px;
    }
}

@media (max-width: 767px) {
    .video-section img {
        height: auto;
        max-height: 400px;
        width: 100%;
    }
}

.grid-services ul.elementor-icon-list-items {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 36px;
}

/* Estado sticky*/
.map-image-preview img {
    width: 100%;
}

.map-image-preview {
    max-width: 200px;
    width: 100%;
    position: absolute;
    top: calc(50% + 20px);
    left: -30px;
    transform: translate(-50%, -50%);
}

footer#site-footer {
    display: none
}

.image-hover-circle img {
    border-radius: 50%;
    transition: border-radius 0.8s ease-in-out;
}

.image-hover-circle img:hover {
    border-radius: 0%;
}


.map-container .elementor-widget-container svg {
    width: 100%;
}

.abs-map .e-con-inner {
    max-width: 720px;
    margin-left: 0;
}

@media screen and (min-width: 1025px){
    .servico-regiao-custom .swiper-button-prev.hotel-nav-btn {
    left: -40px;
}

.servico-regiao-custom .swiper-button-next.hotel-nav-btn {
    right: -40px;
}

body:not(.elementor-editor-active) .grid-melhores-lugares {
    --e-con-grid-template-rows: repeat(13, 1fr) !important;
	width: calc(100% + 100px);
}

body:not(.elementor-editor-active) .grid-melhores-lugares div.elementor-element.e-con:nth-of-type(1) {
    grid-area: 6 / 1 / 12 / 2;
}

body:not(.elementor-editor-active) .grid-melhores-lugares div.elementor-element.e-con:nth-of-type(2) {
    grid-area: 2 / 2 / 8 / 3;
}

body:not(.elementor-editor-active) .grid-melhores-lugares div.elementor-element.e-con:nth-of-type(3) {
    grid-area: 8 / 2 / 14 / 3;
}

body:not(.elementor-editor-active) .grid-melhores-lugares div.elementor-element.e-con:nth-of-type(4) {
    grid-area: 1 / 3 / 7 / 4;
}

body:not(.elementor-editor-active) .grid-melhores-lugares div.elementor-element.e-con:nth-of-type(5) {
    grid-area: 7 / 3 / 13 / 4;
}
}

.abs-map{
    bottom: 0;
    z-index: 99;
    width: 50%;
    right: 0;
    left: unset;
}

.map-container svg g{
    filter: none !important;
}

@media screen and (max-width: 1024px){
	
	.map-image-preview {
		max-width: 120px;
		width: 100%;
		position: absolute;
		top: calc(50% + 10px);
		left: 20px;
		transform: translate(-50%, -50%);
	}
	.servico-regiao-custom .swiper-button-prev.hotel-nav-btn {
    left: -20px;
}

.servico-regiao-custom .swiper-button-next.hotel-nav-btn {
    right: -20px;
}
}

@media screen and (max-width: 767px){
	
	
	
	.abs-map {
		bottom: 0;
		z-index: 99;
		width: 100%;
		left: unset;
		padding: 0;
		transform: translate(50%, 20%);
		right: 50% !important;
		max-width: 300px;
	}
	
	.map-image-preview {
        max-width: 100px;
	}
}

@media screen and (max-width: 500px){
	
	.abs-map {
		max-width: 65%;
	}
}

/*POPUP SERVICOS*/

.button-container {
    position: absolute;
    top: 0;
}

@media screen and (min-width: 1025px){
    

.title-servico {
    width: 330px;
}
	
}
.servico-popup-container {
	position: fixed;
	background:#000000B8;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center
}

.servico-popup-content {
	background:white;
	max-width: 1040px;
	width: 100%;
	padding: 50px;
	display: flex;
	position: relative;
}

.swiper-slide.servico-imagem {
    height: auto;
}



.hover-zoom-container {
  min-width: 100%;
min-height:100%

}

.hover-zoom-img {
  position: absolute;
  top: 0;
  left: 0;
  max-width: none; /* <- ESSENCIAL */
  max-height: none; /* <- ESSENCIAL */
  width: auto;
  height: auto;
  display: block;
  user-select: none;
  pointer-events: none; /* <- impede cliques na imagem */
}




.swiper-slide.planta-imagem img:active {
	cursor: grabbing;
}

.servico-popup-content button.fechar-popup {
    position: absolute;
}

.servico-popup-content button.fechar-popup {
    position: absolute;
    right: 50px;
    top: 50px;
    padding: 0;
    border: 0;
    color: #000 !important;
    text-align: right;
    font-family: "Helvetica Neue";
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    letter-spacing: 0.3px;
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: none;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
	background-color: transparent  !important
}

.section-content-servico,
.section-imagem-servico{
    width: 50%;
}

.section-content-servico {
    padding-left: 60px;
}

.section-content-servico .title-servico h3{
	margin: 0;
    color: #000;
    font-family: "Helvetica Neue";
    font-size: 44px;
    font-style: normal;
    font-weight: 700;
    line-height: 40px;
    margin-bottom: 40px;
}

.servico-metadados-lista ul li img {
    width: 32px;
    height: 32px;
}

.servico-metadados-lista ul li p{
    color: var(--black, #000);
    font-family: "Helvetica Neue";
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    position: relative;
    line-height: 32px;
	margin: 0;
}

.servico-metadados-lista ul li.service-item {
    display: flex;
    gap: 10px;
    align-items: center;
}

.servico-metadados-lista p.nome-area-list {
    color: var(--black, #000);
    font-family: "Helvetica Neue";
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    text-transform: uppercase;
    margin-bottom: 20px;
	margin-top: 20px;
}

.servico-metadados-lista ul li.piso-list::before {
    background-image: url(/wp-content/uploads/2025/07/05_popup_icon_piso.svg);
}

.servico-metadados-lista ul li.area-list::before {
    background-image: url(/wp-content/uploads/2025/07/05_popup_icon_area.svg);
}

.servico-metadados-lista ul li.luz-list::before {
    background-image: url(/wp-content/uploads/2025/07/05_popup_icon_luz_natural.svg);
}

.servico-metadados-lista ul li.pessoa-list::before {
    background-image: url(/wp-content/uploads/2025/07/05_popup_icon_capacidade.svg);
}

.servico-metadados-lista ul {
    padding: 0;
    list-style-type: none;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.section-imagem-servico .swiper-pagination span.swiper-pagination-bullet {
    width: 15px;
    height: 15px;
    background: transparent;
    border: 2px solid white;
    opacity: 1;
    margin: 0 12.5px !important;
}

.section-imagem-servico .swiper-pagination span.swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: white;
}

/*
.post-service-custom article:nth-child(n+7):last-child {
    grid-column: 2 / 2;
}
*/

/*SKIN*/


.servico-regiao-custom a.elementor-post__read-more {
    max-height: 0;
    display: block;
	opacity: 0;
	transition: ease-in-out 0.5s max-height,ease-in-out 0.5s opacity
}


.servico-regiao-custom article .elementor-post__thumbnail{
	scale: 1;
	transition: ease-in-out 0.5s scale, ease-in-out 0.5s transform-origin;

}

.servico-regiao-custom article:hover .elementor-post__thumbnail {
    scale: 1.04;
   
	transition: ease-in-out 0.5s scale, ease-in-out 0.5s transform-origin;
}

.servico-regiao-custom article:hover a.elementor-post__read-more{
	max-height: 100px;
	opacity: 1;
	transition: ease-in-out 0.5s max-height,ease-in-out 0.5s opacity;
	margin-top: 10px;
}

.servico-regiao-custom article:hover .elementor-post__text {
    background: linear-gradient(
        180deg, 
        rgba(0, 0, 0, 0.00) 3.8%, 
        rgba(5, 2, 8, 0.50) 86.04%
    );
    transition: background 0.3s ease;
}

.servico-regiao-custom .elementor-post {
  position: relative;
}


.servico-regiao-custom  .elementor-post__text {
  	position: absolute;
  	bottom: 0;
	padding:0 30px 50px 30px;
}

.servico-regiao-custom .elementor-post__thumbnail {
  padding-bottom: 600px !important;
}

.servico-regiao-custom .elementor-post__thumbnail{
	width: 100% !important
}

.servico-regiao-custom .elementor-post__excerpt{
    opacity:0;
    
}
.servico-regiao-custom article:hover  .elementor-post__excerpt{
    opacity:1;
    padding-top:30px;
	transition: ease-in-out 0.5s max-height,ease-in-out 0.5s opacity;
}
@media screen and (max-width: 1024px){
	.servico-regiao-custom article:hover  .elementor-post__excerpt{

    padding-top:15px;

}
	.servico-regiao-custom .elementor-post__thumbnail{
		padding-bottom: 400px !important;
	}
	
	/*.servico-regiao-custom .elementor-posts-container.elementor-posts{
		    margin-right: 20%;
	}*/
}

.agendar-reuniao-button:hover .elementor-button-icon svg path{
    fill:#000 !important;
}

.agendar-reuniao-button:active .elementor-button-icon svg path,
.agendar-reuniao-button:focus-visible .elementor-button-icon svg path {
    fill: #000 !important;
}

.agendar-reuniao-button .elementor-button.elementor-button-link:focus path {
    fill: #000 !important;
}

.agendar-reuniao-button:hover
.elementor-button{
    box-shadow: -20px 51px 15px 0 rgba(0, 0, 0, 0.00), -13px 33px 14px 0 rgba(0, 0, 0, 0.01), -7px 18px 12px 0 rgba(0, 0, 0, 0.05), -3px 8px 9px 0 rgba(0, 0, 0, 0.09), -1px 2px 5px 0 rgba(0, 0, 0, 0.10);
}

div#ui-datepicker-div {
	display: block;
	z-index: 999999999 !important;
}


.email-contact-page{
    color: #000;
    font-family: "Helvetica Neue";
    font-size: 16px;
    font-style: normal;
    font-weight: 300;
    line-height: 24px;
}

a.elementor-post__read-more,
.elementor-post__thumbnail{
    cursor: pointer !important;
}

.tipo-de-servico-quarto a.elementor-post__read-more {
    display: none;
}

.servico-popup-container {
    opacity: 0;
    animation: fadeIn 1s ease forwards;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}


.tipo-de-servico-quarto a.elementor-post__read-more,
.tipo-de-servico-quarto .elementor-post__thumbnail{
    cursor: default !important;
}



@media screen and (max-width: 767px){
    
.elementor-post__thumbnail {
    padding-bottom: 250px !important;
}

}


.elementor-234 .elementor-element.elementor-element-b0a18e2 .elementor-icon-list-item > a{
    color:#000;
}



.contact-links {

    row-gap: 16px;
    display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.contact-links .contact-item p{
    color: #000;
font-family: "Helvetica Neue";
font-size: 20px;
font-style: normal;
font-weight: 700;
line-height: 24px; /* 120% */
letter-spacing: -0.202px;
}
.contact-links .contact-item a{
    color: #000;
font-size: 16px;
font-style: normal;
font-weight: 500;
line-height: 24px; /* 150% */
}

@media (max-width:1530px) and (min-width:992px){

    .contact-item {
        width:45%;
}
.contact-links {
    column-gap: 50px;
    row-gap: 16px;
    display: flex;
        flex-wrap: wrap;
}

}

@media (max-width:991px){
    .contact-links {
    justify-content: center;
    flex-direction: column;
    align-items: flex-start;
}
    .contact-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    align-content: center;
    width:100%;
}
    
}

/* --- Navegação swiper de hotéis --- */
.servico-regiao-custom .hotel-nav-btn {
    color: #000000;
    width: 15px;
    height: 30px;
}

.servico-regiao-custom .hotel-nav-btn::after {
    font-size: 18px;
    font-weight: 700;
    color: #000000;
}

.servico-regiao-custom .swiper-button-prev.swiper-button-disabled,
.servico-regiao-custom .swiper-button-next.swiper-button-disabled {
    opacity: 0;
    pointer-events: none;
}
/* --- Corte do overflow do swiper de hotéis --- */
.servico-regiao-custom .elementor-posts-container {
    overflow: hidden;
}
/* --- Setas fora do swiper de hotéis --- */
.servico-regiao-custom .elementor-widget-container {
    position: relative;
}

.servico-regiao-custom .swiper-button-prev.hotel-nav-btn,
.servico-regiao-custom .swiper-button-next.hotel-nav-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    margin-top: 0;
}

.imagem-video {
  position: relative;
  display: inline-block; /* garante que o ::before siga o tamanho da imagem */
	background-color:#000020
}

.imagem-video::before {
    display: inline-flex;
height: 77px;
padding: 20px;
justify-content: center;
align-items: center;
gap: 10px;
border-radius: 50px;
border: 2px solid var(--White, #FFF);
  content: "Fazer visita Virtual";
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 250px;
  height: 80px;
  transform: translate(-50%, -50%);
color: var(--White, #FFF);
font-family: "Helvetica Neue";
font-size: 20px;
font-style: normal;
font-weight: 500;
line-height: 24px; /* 120% */
background-image: none;
  pointer-events: none; /* não bloqueia cliques na imagem */
}
.imagem-video:hover:before{
    background-color: #fff;
    color:#000;
}
