/* Carteira de Ativos — Nova Marca
   Figma: Site Update Nova Marca — node 7833:4388 (desk) / 7833:5242 (mobo)

   Reconstruído com classes .nm-carteira__* que não existem em css.css. A
   listagem de imóveis também é nova (fundos-template-parts/imoveis.php roda
   a WP_Query direto, sem passar pelo shortcode [imoveis_desktop_nova] —
   mesmos campos ACF de sempre, só o HTML de saída mudou) e o carrossel de
   fotos de cada card é um script novo (src/nova-marca/js/carteira.js), sem
   nenhuma dependência do carrossel antigo (.TodoGaleriaFundo/.ControlesGaleriaImoveis).

   .itemAcordeonFundo/.headerItem continuam no <section>/título só pelo menu
   fixo lateral (scripts-fundos-comum.js monta a navegação varrendo
   ".itemAcordeonFundo .headerItem h2"). Essa classe carrega regras genéricas
   pra QUALQUER h2 dentro dela (".itemAcordeonFundo .headerItem h2{font-size:28px}")
   com mais especificidade que uma classe nova sozinha — por isso os
   seletores que tocam elementos dentro do <section> são prefixados com
   #Carteira (o id da seção), que sempre vence classe+elemento sem precisar
   de !important. */

#Carteira.nm-carteira {
  padding: 48px 0;
}

#Carteira .headerItem {
  border-bottom: none !important;
  margin: 0 !important;
  padding: 0 !important;
  cursor: default !important;
  position: static !important;
}

#Carteira .nm-carteira__title {
  width: auto;
  max-width: 870px;
  margin: 0;
  font-family: var(--nm-font-family);
  font-weight: var(--nm-font-weight-medium);
  font-size: var(--nm-font-size-lg); /* 24px */
  line-height: var(--nm-line-height-lg); /* 32px */
  color: var(--nm-color-deep-blue);
}

#Carteira .nm-carteira__description {
  margin: var(--nm-space-5) 0 0; /* 24px do título, sem margin-bottom */
  font-family: var(--nm-font-family);
  font-weight: var(--nm-font-weight-regular);
  font-size: var(--nm-font-size-base);
  line-height: var(--nm-line-height-base);
  color: var(--nm-color-text-muted);
  max-width: 870px;
}

#Carteira .nm-carteira__description p {
  margin: 0;
}

#Carteira .nm-carteira__grid {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  margin-top: var(--nm-space-7); /* 40px, mesmo ritmo das outras seções novas */
}

#Carteira .nm-carteira__card {
  flex: 0 0 370px;
  max-width: 100%;
  box-sizing: border-box;
  background: var(--nm-color-white);
  border: 1px solid var(--nm-color-border);
  border-radius: var(--nm-radius-md);
  overflow: hidden;
}

#Carteira .nm-carteira__card[hidden] {
  display: none;
}

#Carteira .nm-carteira__gallery {
  position: relative;
  height: 207px;
  background: var(--nm-color-placeholder);
}

#Carteira .nm-carteira__gallery-slide {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 0.2s ease;
}

#Carteira .nm-carteira__gallery-slide.is-active {
  opacity: 1;
}

#Carteira .nm-carteira__dots {
  position: absolute;
  left: 0;
  right: 0;
  bottom: var(--nm-space-3); /* 12px */
  display: flex;
  justify-content: center;
  gap: var(--nm-space-1); /* 4px */
}

#Carteira .nm-carteira__dot {
  width: 6px;
  height: 6px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.6);
  cursor: pointer;
}

#Carteira .nm-carteira__dot.is-active {
  background: var(--nm-color-white);
}

#Carteira .nm-carteira__body {
  padding: var(--nm-space-4); /* 16px */
}

#Carteira .nm-carteira__card-title {
  margin: 0 0 var(--nm-space-1); /* 4px */
  font-family: var(--nm-font-family);
  font-weight: var(--nm-font-weight-regular);
  font-size: var(--nm-font-size-md); /* 20px */
  line-height: var(--nm-line-height-md); /* 28px */
  color: var(--nm-color-deep-blue);
}

#Carteira .nm-carteira__address {
  margin: 0 0 var(--nm-space-4); /* 16px */
  font-family: var(--nm-font-family);
  font-weight: var(--nm-font-weight-regular);
  font-size: var(--nm-font-size-base);
  line-height: var(--nm-line-height-base);
  color: var(--nm-color-text-muted);
}

#Carteira .nm-carteira__meta {
  margin: 0;
  font-family: var(--nm-font-family);
  font-weight: var(--nm-font-weight-regular);
  font-size: var(--nm-font-size-base);
  line-height: var(--nm-line-height-base);
  color: var(--nm-color-text-muted);
}

#Carteira .nm-carteira__meta strong {
  font-weight: var(--nm-font-weight-semibold);
}

#Carteira .nm-carteira__empty {
  margin: var(--nm-space-7) 0 0;
  font-family: var(--nm-font-family);
  font-size: var(--nm-font-size-base);
  color: var(--nm-color-text-muted);
}

#Carteira .nm-carteira__more {
  display: flex;
  width: 369px;
  max-width: 100%;
  margin: var(--nm-space-7) auto 0; /* 40px */
  padding: var(--nm-space-3) var(--nm-space-5); /* 12px 24px */
  align-items: center;
  justify-content: center;
  background: transparent;
  border: 2px solid var(--nm-color-blue);
  border-radius: var(--nm-radius-pill);
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  transition: background-color 0.15s ease;
}

#Carteira .nm-carteira__more[hidden] {
  display: none;
}

#Carteira .nm-carteira__more span {
  font-family: var(--nm-font-family);
  font-weight: var(--nm-font-weight-medium);
  font-size: var(--nm-font-size-base);
  line-height: 16px;
  color: var(--nm-color-blue);
}

#Carteira .nm-carteira__more:hover {
  background: var(--nm-color-blue);
}

#Carteira .nm-carteira__more:hover span {
  color: var(--nm-color-white);
}

@media (max-width: 768px) {
  #Carteira .headerItem,
  #Carteira .nm-carteira__description {
    padding: 0;
  }

  #Carteira .nm-carteira__grid {

    justify-content: center;
  }

  #Carteira .nm-carteira__card {
    flex-basis: 100%;
  }

#Carteira.nm-carteira {
  padding: 0;

}
}
