.elementor-kit-5{--e-global-color-primary:#1E2A3B;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#E12E3F;--e-global-color-a44a757:#E12E3F;--e-global-color-1805ca2:#1E2A3B;--e-global-color-cf1f8fa:#EEEEEE;--e-global-typography-primary-font-family:"DM Sans";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"DM Sans";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"DM Sans";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"DM Sans";--e-global-typography-accent-font-weight:500;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-lightbox{background-color:#0E1015F2;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */.texto-com-scroll {
  max-height: 300px; /* Ajuste a altura conforme necessário */
  overflow-y: auto;
  padding-right: 10px; /* Evita corte do texto pelo scroll */
}

.texto-com-scroll::-webkit-scrollbar {
  width: 6px;
}

.texto-com-scroll::-webkit-scrollbar-thumb {
  background-color: #aaa;
  border-radius: 4px;
}










.carrossel-de-imagens .elementor-swiper-button {
  background-color: rgba(255, 255, 255, 0.7); /* Branco com 80% de opacidade */
  border-radius: 35px;
  padding: 14px;
  border: 1px solid #FFFFFF;
  transition: background-color 0s ease, border-color 0s ease;
}

.carrossel-de-imagens .elementor-swiper-button:hover {
  background-color: rgba(255, 255, 255, 1); /* Branco sólido no hover */
}

.carrossel-de-imagens .elementor-swiper-button-prev,
.carrossel-de-imagens .elementor-swiper-button-next {
  color: #000; /* Cor da seta */
  font-size: 20px;
}





/* Setas padrão */
.elementor-lightbox-prevent-close.elementor-swiper-button {
  background-color: rgba(255, 255, 255, 0.7) !important;
  border: 1px solid #FFFFFF !important;
  border-radius: 35px !important;
  padding: 14px !important;
  width: auto !important;
  height: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  transition: background-color 0s ease !important;
  z-index: 9999 !important;
}

.elementor-lightbox-prevent-close.elementor-swiper-button:hover {
  background-color: rgba(255, 255, 255, 1) !important;
}

.elementor-lightbox-prevent-close.elementor-swiper-button svg {
  fill: #7A7A7A !important;
  width: 20px !important;
  height: 20px !important;
}

.dialog-lightbox-navigation {
  background: transparent !important;
  width: auto !important;
  padding: 0 !important;
}

/* POSICIONAMENTO PRECISO DAS SETAS NO DESKTOP */
@media (min-width: 1025px) {
  .elementor-lightbox-prevent-close.elementor-swiper-button-prev {
    left: calc(50% - 500px) !important;
  }

  .elementor-lightbox-prevent-close.elementor-swiper-button-next {
    right: calc(50% - 500px) !important;
  }
}
































.titulo-card {
  display: -webkit-box;
  -webkit-line-clamp: 3; /* ou 3 se preferir */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}





.efeito-desfoque-fundo{
  -webkit-backdrop-filter: blur(4px); /* suporte para Safari */
  backdrop-filter: blur(4px); /* desfoque leve */
  transition: background 0.3s ease, backdrop-filter 0.3s ease;    
}






.efeito-cabecalho {
  position: fixed !important;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999 !important;
  background: rgba(30, 42, 59, 0) !important; /* fundo totalmente transparente */
  -webkit-backdrop-filter: blur(0.8px); /* suporte para Safari */
  backdrop-filter: blur(0.8px); /* desfoque leve */
  transition: background 0.3s ease, backdrop-filter 0.3s ease;
}

.efeito-cabecalho.scrolled {
  background: rgba(30, 42, 59, 1) !important; /* fundo visível ao rolar */
  -webkit-backdrop-filter: blur(0px);
  backdrop-filter: blur(0px); /* mantém o desfoque */
}

.elementor-location-header {
  margin-bottom: 0 !important;
}

.topo-pagina {
  padding-top: 100px; /* para telas maiores (desktop) */
}

/* Para telas com largura até 767px (celulares) */
@media (max-width: 767px) {
  .topo-pagina {
    padding-top: 60px; /* menor margem no topo para celulares */
  }
}




























/* Adiciona espaço interno para sombra sem ultrapassar limites */
.swiper-slide {
  padding: 12px;
  box-sizing: border-box;
}

.loop-apartamento {
    border: 1px solid #000000;
}





/* Elementos ocultos por padrão */
#opcoes-contato-lead,
#opcoes-contato-parceria,
#form-contato-lead,
#form-contato-parceria {
  display: none;
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
  scroll-margin-top: 120px;
}

/* Classe para exibir os elementos com transição */
.visible {
  opacity: 1;
}

/* Garante a visibilidade com maior especificidade */
#opcoes-contato-lead.visible,
#opcoes-contato-parceria.visible,
#form-contato-lead.visible,
#form-contato-parceria.visible {
  opacity: 1;
}






.botao-contato-hover:hover {
  border-color: #EEEEEE !important;
  background-color: #EEEEEE !important;
    transition: 0.0s;
}

.botao-contato-hover:hover i,
.botao-contato-hover:hover svg {
  color: #E12E3F !important;
  fill: #E12E3F !important;
}






/* Estilo para botão ativo (aplica fundo e borda) */
.botao-contato-ativo {
  border-color: #EEEEEE !important;
  background-color: #EEEEEE !important;
}

/* Ícones com destaque quando botão está ativo */
.botao-contato-ativo i,
.botao-contato-ativo svg {
  color: #E12E3F !important;
  fill: #E12E3F !important;
}

/* Garantindo alta especificidade em casos específicos */
#botao-contato-parceria.botao-contato-ativo i,
#botao-contato-form-lead.botao-contato-ativo i,
#botao-contato-form-parceria.botao-contato-ativo i,
#botao-contato-parceria.botao-contato-ativo svg,
#botao-contato-form-lead.botao-contato-ativo svg,
#botao-contato-form-parceria.botao-contato-ativo svg {
  color: #E12E3F !important;
  fill: #E12E3F !important;
}






.elemento-clicavel {
  cursor: pointer;
}











.icones-redes-sociais {
  transition: none !important;
}

.icones-redes-sociais svg,
.icones-redes-sociais img,
.icones-redes-sociais a {
  transition: none !important;
}













.icone-dos-botoes svg {
  width: 20px;
  height: 20px;
  
}

.icone-dos-botoes i {
  font-size: 20px;
}







/* Container da imagem */
.e-loop-item .elementor-widget-image {
  position: relative;
  overflow: hidden;
  height: 100%;
  line-height: 0;
}

/* Imagem */
.e-loop-item .elementor-widget-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

/* Overlay invisível inicialmente */
.e-loop-item .elementor-widget-image::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3); /* escurecimento leve */
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
  z-index: 1;
}

/* Hover: zoom + overlay */
.e-loop-item:hover .elementor-widget-image img {
  transform: scale(1.05);
}

.e-loop-item:hover .elementor-widget-image::after {
  opacity: 1;
}

























@keyframes brilho-passando {
  0% {
    transform: translateX(-100%) rotate(25deg);
    opacity: 0;
  }
  50% {
    opacity: 0.5;
  }
  100% {
    transform: translateX(200%) rotate(25deg);
    opacity: 0;
  }
}

.efeito-botao-reflexo {
  position: relative;
  overflow: hidden;
  background-color: #E12E3F;
  border: 1px solid #E12E3F;
  border-radius: 5px;
  /* Transição removida */
}

/* brilho que passa de tempos em tempos */
.efeito-botao-reflexo::after {
  content: '';
  position: absolute;
  top: -50%;
  left: -60%;
  width: 150%;
  height: 300%;
  background: radial-gradient(
    ellipse at center,
    rgba(255, 255, 255, 0.5) 0%,
    rgba(255, 255, 255, 0.3) 30%,
    rgba(255, 255, 255, 0) 70%
  );
  transform: translateY(-50%) translateX(-100%) rotate(25deg);
  animation: brilho-passando 3.5s ease-in-out infinite;
  pointer-events: none;
  filter: blur(4px);
  will-change: transform, opacity;
}



/* no hover: desativa o brilho e muda o fundo */
.efeito-botao-reflexo:hover {
  background-color: #BB2432;
  border-color: #BB2432;
}

.efeito-botao-reflexo:hover::after {
  animation: none;
  opacity: 0;
}








/* Reflexo cabeçalho */

.efeito-cabecalho {
  position: relative;
  overflow: hidden;
}

.efeito-cabecalho::after {
  content: '';
  position: absolute;
  top: -50%;
  left: -60%;
  width: 150%;
  height: 300%;
  background: radial-gradient(
    ellipse at center,
    rgba(255, 255, 255, 0.5) 0%,
    rgba(255, 255, 255, 0.3) 30%,
    rgba(255, 255, 255, 0) 70%
  );
  transform: translateY(-50%) translateX(-100%) rotate(25deg);
  pointer-events: none;
  filter: blur(4px);
  opacity: 0;
  will-change: transform, opacity;
}

.efeito-cabecalho.ativar-reflexo::after {
  animation: brilho-passando 1.8s ease-in-out 1;
}


















@keyframes tremor {
  0% { transform: translate(0, 0); }
  10% { transform: translate(-1px, -1px); }
  20% { transform: translate(1px, 1px); }
  30% { transform: translate(-1px, 1px); }
  40% { transform: translate(1px, -1px); }
  50% { transform: translate(0, 0); }
}

.efeito-botao-tremor {
  animation: tremor 0.6s ease infinite;
  background-color: #E12E3F;
  border: 1px solid #E12E3F;
  border-radius: 5px;
}

.efeito-botao-tremor:hover {
  animation: none;
  background-color: #BB2432;
  border-color: #BB2432;
}

























.estrelas-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0; /* atrás do conteúdo */
  background-image: url('https://diretorianoturno.com.br/wp-content/uploads/2025/05/apartamentos-a-venda-em-sao-paulo-diretoria-noturno-topo02.png');
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center bottom;
  pointer-events: none;
}

#topo-estrelas {
  position: relative;
  overflow: hidden;

}



.destaque-mente-fria-coracao-quente {
  font-weight: 400;
  font-style: italic;
  font-size: 18px;
  position: relative;
  top: -8px;
}




.destaque-vermelho {
  color: #E12E3F;
}

.destaque-branco {
  color: #FFFFFF;
}


/* -------WP FORMS-------*/

.wpforms-field-medium, .wpforms-field-large{
    border-radius: 5px !important;
    
}

.wpforms-field {
     padding: 5px 0px !important;
}

.wpforms-submit {
background-image: linear-gradient(to bottom, #E12E3F, #E12E3F)!important;
   border-color: #E12E3F !important;
   border-radius: 5px !important;
   font-size: 16px !important;
  font-weight: 500 !important;
  font-style: normal !important;
  text-decoration: none !important;
  color: #ffffff !important;
   text-transform: uppercase !important;
  width: 100% !important;
  height: 48px !important;
}

.wpforms-submit:hover{
  background-image: linear-gradient(to bottom, #BB2432, #BB2432)!important;
  border-color: #BB2432 !important;
  transition: none !important;
}

.wpforms-page-button {
    background-color: #E12E3F !important;
    border-radius: 10px !important;
    font-family: Poppins !important; 
  font-size: 13px !important;
  font-weight: 500 !important;
  font-style: normal !important;
  text-decoration: none !important;
  color: #ffffff !important;
  line-height: 1.5 !important;
  text-transform: uppercase !important;
}

.wpforms-page-button:hover {
  text-decoration: underline !important;
  background-color: #E12E3F !important;
}

.wpforms-error {
  font-size: 13px !important;
  color: #BB2432 !important;
}

input.wpforms-error {
  font-size: 16px !important;
  color: #1E2A3B !important;
}

.wpforms-required-label {
  color: #E12E3F !important;
}

.wpforms-confirmation-container-full {
      background-color: #ffffff !important;
      color: #282A29 !important;
      border: none !important;
        font-size: 14px !important;
  font-weight: 400 !important;
}

.wpforms-field-label {
      font-weight: 500 !important;
      color: #282A29 !important;
}

.wpforms-icon-choices-label {
    font-size: 13px !important;
    font-weight: 400 !important;
     color: #282A29 !important;
     line-height: 0.5 !important;
}

.wpforms-field-description {
    font-size: 13px !important;
    font-weight: 400 !important;
     color: #6B6B6B !important;    
}

.wpforms-form input,
.wpforms-form select,
.wpforms-form textarea {
    box-shadow: none !important;
}

input,
textarea,
select {
  transition: border-color 0.3s ease !important;;
}

input:focus,
textarea:focus,
select:focus {
  border-color: #BB2432 !important;;
  outline: none !important;;
}





/* -------WP FORMS-------*//* End custom CSS */