/* ====== BLINDAGEM DE CARREGAMENTO (FADE-IN DO CARROSSEL) ====== */

/* Esconde os carrosséis enquanto o Slick Slider não for inicializado pelo JS */
.projetos-recentes-slider,
.projetos-emalta-slider,
.projetos-colecoes-slider,
.projetos-temas-slider,
.projetos-orgaos-slider,
.projetos-tipos-slider,
.projetos-origens-slider {
    opacity: 0;
    visibility: hidden;
    height: 380px; /* Evita que o layout "suba" enquanto carrega (coloque a altura média do seu card) */
    transition: opacity 0.4s ease-in-out;
}

/* A classe '.slick-initialized' é injetada automaticamente pelo plugin quando o carrossel fica pronto.
   Quando ela aparecer, revelamos o bloco com suavidade! */
.slick-initialized.projetos-recentes-slider,
.slick-initialized.projetos-emalta-slider,
.slick-initialized.projetos-colecoes-slider,
.slick-initialized.projetos-temas-slider,
.slick-initialized.projetos-orgaos-slider,
.slick-initialized.projetos-tipos-slider,
.slick-initialized.projetos-origens-slider {
    opacity: 1;
    visibility: visible;
    height: auto; /* Devolve o controle de altura para o carrossel original */
}

/* ====== EFEITO DE DESTAQUE DOS PROJETOS (HOVER) UNIFICADO ====== */

/* 1. Estado Inicial do Card Interativo */
.card-recente-interativo {
    position: relative;
    z-index: 1;
    border: 15px solid transparent; 
    border-width: 15px 5px; 
    border-width: 15px 6px; 
    border-radius: 20px; 
    background-clip: padding-box; 
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0);
    /* Adicionamos uma sombra invisível em repouso que ajuda a estabilizar os subpixels */
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0), inset 0 0 0 0px transparent;
    overflow: hidden; 
    /* Espaço inferior reservado estaticamente para evitar o "empurrão" */
    margin-bottom: 15px; 

    /* Estabilizadores para GPU (Evita distorção do border-radius) */
    will-change: transform, border-color, background-color, box-shadow, margin-bottom;
    transform: translateZ(0); /* Força renderização 3D estática */
    transform-style: preserve-3d;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    
    /* --- ALTERAÇÃO AQUI: Nova curva de transição amortecida (ease-out elástico sutil) --- */
    transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), 
                border-color 0.4s ease, 
                background-color 0.4s ease, 
                box-shadow 0.4s ease,
                margin-bottom 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
    /* MÁGICA 1: Força o navegador a suavizar as bordas do elemento inteiro durante a animação */
    clip-path: inset(0% round 20px); 
}
@media (max-width: 480px) {
.card-recente-interativo {
    border-width: 10px 5px; 
}
}

/* 2. Estado de Hover Geral */
.card-recente-interativo:hover {
    z-index: 100; 
    /*border-color: #00508A; */
    /* Mantém as bordas físicas idênticas para não quebrar a animação de volta */
    border: 15px solid #00508A !important; 
    border-width: 15px 5px !important; 

    background-color: #00508A;
    box-shadow: 0px 10px 25px 0px rgba(0, 0, 0, 0.35); 
    box-shadow: 0px 0px 10px 1px rgba(0, 0, 0, 0.25); 
    /* Trava o ponteiro do mouse e aplica a escala */
    transform: scale(1.07) translateZ(0); 
    transform-origin: center top;
    transform-origin: center center;
    overflow: visible !important;
    background-clip: border-box;
    /* Mantém o clip-path expandido para a sombra projetada aparecer */
    clip-path: none; 
}
@media (max-width: 480px) {
.card-recente-interativo:hover {
    border-width: 10px 5px !important; 
}
.archive.post-type-archive.post-type-archive-projetos .card-recente-interativo:hover {
    padding-bottom: 10px;
}
}
.card-recente-interativo:hover .ImagemProjetoRelacionado:before {
    content: "";
    position: absolute;
    top: -15px;
    left: 0;
    width: 100%;
    height: 158px;
    background: linear-gradient(360deg, rgba(0, 74, 128, 0) 0%, #004A80 100%);
    pointer-events: none;
    z-index: 1;
    border-radius: 16px;
}

/* Exceção específica para quando o card interativo estiver na página de Busca */
.search #search-container .card-recente-interativo:hover {
    transform: scale(1.07); 
    padding-left: 15px;
    padding-right: 15px;
}

/* ====== CONTROLE DOS TEXTOS INTERNOS E EXIBIÇÃO VERTICAL ====== */

/* 1. Força os textos (Título, Ano, Grande Tema) a ficarem UM ABAIXO DO OUTRO */
.card-recente-interativo .wrapper-categories-relacionado {
    display: flex !important;
    flex-direction: column !important; /* CORRIGIDO: Alinha os blocos em cascata vertical */
    justify-content: flex-start !important;
    align-items: flex-start !important; /* Garante que todos os textos comecem à esquerda */
    position: relative !important;
    width: 100% !important;
}

/* Garante que o título do projeto ocupe sua própria linha inteira */
.card-recente-interativo .titulo-projeto {
    width: 100%;
    display: block;
}

/* Garante que o ano ocupe sua própria linha inteira */
.card-recente-interativo .Ano-archive {
    width: 100%;
    display: block;
}

/* 3. Controle de Exibição do Grande Tema */
.archive.tax-colecoes .card-recente-interativo .Ano-archive, 
.single.single-projetos .card-recente-interativo .Ano-archive, 
.card-recente-interativo .GrandeTema-archive {
    display: block !important; 
    width: 100%; /* Ocupa a linha inteira abaixo do ano */
    /* Estado visual: invisível e recolhido */
    max-height: 0;
    max-height: fit-content;
    /* MÁGICA: O espaço físico dele existe, mas o texto fica invisível */
    opacity: 0;
    visibility: hidden;
    /* Controla a altura de forma travada para o card não esticar no hover */
    height: 24px; 
    line-height: 24px;
    margin-top: 0;
    padding-bottom: 0;
    overflow: hidden;
    order: 3;    
    transition: max-height 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94),
                opacity 0.25s ease-in-out,
                margin-top 0.35s ease,
                padding-bottom 0.35s ease;
/*    margin-bottom: 12px!important;*/
    /*margin-bottom: 12px;*/
}
.archive.tax-colecoes .card-recente-interativo .Ano-archive, 
.single.single-projetos .card-recente-interativo .Ano-archive, 
.home #page #primary .card-recente-interativo .GrandeTema-archive, 
.archive #page #primary .card-recente-interativo .GrandeTema-archive {
    margin-bottom: 12px;
}
@media (max-width: 767px) {
.archive.tax-colecoes .card-recente-interativo .Ano-archive, 
.single.single-projetos .card-recente-interativo .Ano-archive, 
.home #page #primary .card-recente-interativo .GrandeTema-archive, 
.archive #page #primary .card-recente-interativo .GrandeTema-archive {
    margin-bottom: 22px;
}
}
.archive.tax-colecoes #page #primary .card-recente-interativo .GrandeTema-archive {
    opacity: 0;
    visibility: hidden;
    margin: 0px !important;
    height: 0px;
    min-height: 0px;
}

.archive.tax-colecoes .card-recente-interativo .Ano-archive, 
.single.single-projetos .card-recente-interativo .Ano-archive {
    transition: none;
    height: 32px;
    line-height: 32px;
    min-height: 32px;
    height: 20px;
    line-height: 20px;
    min-height: 20px;
}
.archive.tax-colecoes .card-recente-interativo .GrandeTema-archive, 
.single.single-projetos .card-recente-interativo .GrandeTema-archive {
    transition: none;
    height: 32px;
    line-height: 32px;
    min-height: 32px;
    height: 20px;
    line-height: 20px;
    min-height: 20px;
}

.archive.tax-colecoes .card-recente-interativo .wrapper-categories-relacionado .content, 
.single.single-projetos .card-recente-interativo .wrapper-categories-relacionado .content {
    display: inline-flex !important;
    flex-direction: row !important; /* CORRIGIDO: Alinha os blocos em cascata vertical */
    justify-content: flex-start !important;
    align-items: flex-start !important; /* Garante que todos os textos comecem à esquerda */
    position: relative !important;
    /*width: 100% !important;*/
    height: 32px;
    line-height: 32px;
    min-height: 32px;
    height: 20px;
    line-height: 20px;
    min-height: 20px;
}
.archive.tax-colecoes .projetos-relacionados .card-recente-interativo .wrapper-categories-relacionado .content, 
.single.single-projetos .projetos-relacionados .card-recente-interativo .wrapper-categories-relacionado .content {
    margin-bottom: 12px;
}
@media (max-width: 767px) {
.archive.tax-colecoes .projetos-relacionados .card-recente-interativo .wrapper-categories-relacionado .content, 
.single.single-projetos .projetos-relacionados .card-recente-interativo .wrapper-categories-relacionado .content {
    /*margin-bottom: 22px;*/
}   
}

/* Estado de Hover dos Textos */
.archive.tax-colecoes .card-recente-interativo:hover .content, 
.archive.tax-colecoes .card-recente-interativo:hover .Ano-archive, 
.single.single-projetos .card-recente-interativo:hover .content, 
.single.single-projetos .card-recente-interativo:hover .Ano-archive, 
.card-recente-interativo:hover .GrandeTema-archive {
    display: block;
    opacity: 1;
    visibility: visible;
    color: #ECF1F4; /* Mantém a cor clara padrão do seu tema */
    margin-top: 8px;      /* Distanciamento elegante do bloco do ano */
    padding-bottom: 5px;  /* Respiro na base da caixa azul do card */
    max-height: 60px;     /* Altura máxima segura para o texto deslizar */
    order: 0;
/*    margin-bottom: 8px!important;*/
    /*margin-bottom: 8px;*/
}
.archive.tax-colecoes .card-recente-interativo:hover .content, 
.archive.tax-colecoes .card-recente-interativo:hover .Ano-archive, 
.single.single-projetos .card-recente-interativo:hover .content, 
.single.single-projetos .card-recente-interativo:hover .Ano-archive, 
.home #page #primary .card-recente-interativo:hover .GrandeTema-archive, 
.archive #page #primary .card-recente-interativo:hover .GrandeTema-archive {
    margin-bottom: 8px;
}
.archive.tax-colecoes .projetos-relacionados .card-recente-interativo:hover .content, 
.archive.tax-colecoes .projetos-relacionados .card-recente-interativo:hover .Ano-archive, 
.single.single-projetos .projetos-relacionados .card-recente-interativo:hover .content, 
.single.single-projetos .projetos-relacionados .card-recente-interativo:hover .Ano-archive, 
.projetos-relacionados .card-recente-interativo:hover .GrandeTema-archive {
/*    margin-bottom: 0px!important;*/
    margin-bottom: 0px;
}

.archive.tax-colecoes .card-recente-interativo:hover .content, 
.single.single-projetos .card-recente-interativo:hover .content {
    margin-top: 0px;
    padding-bottom: 0px;
}
.archive.tax-colecoes .projetos-relacionados .card-recente-interativo:hover .content, 
.single.single-projetos .projetos-relacionados .card-recente-interativo:hover .content {
    margin-top: 8px;
}

.archive.tax-colecoes .card-recente-interativo:hover .wrapper-categories-relacionado .ordem-efeito-destaque, 
.single.single-projetos .card-recente-interativo:hover .wrapper-categories-relacionado .ordem-efeito-destaque {
    order: 2;
}
.archive.tax-colecoes .card-recente-interativo:hover .wrapper-categories-relacionado .Objetivo-archive-relacionado, 
.single.single-projetos .card-recente-interativo:hover .wrapper-categories-relacionado .Objetivo-archive-relacionado {
    order: 3;
}
.archive.tax-colecoes .card-recente-interativo:hover .wrapper-categories-relacionado .content, 
.single.single-projetos .card-recente-interativo:hover .wrapper-categories-relacionado .content {
    gap: 8px;
    order: 1;
}
.archive.tax-colecoes .card-recente-interativo:hover .wrapper-categories-relacionado .content .GrandeTema-archive, 
.archive.tax-colecoes .card-recente-interativo:hover .wrapper-categories-relacionado .content .Ano-archive, 
.single.single-projetos .card-recente-interativo:hover .wrapper-categories-relacionado .content .GrandeTema-archive, 
.single.single-projetos .card-recente-interativo:hover .wrapper-categories-relacionado .content .Ano-archive {
    width: fit-content;
}
.archive.tax-colecoes .projetos-relacionados .card-recente-interativo:hover .wrapper-categories-relacionado .content .GrandeTema-archive, 
.archive.tax-colecoes .projetos-relacionados .card-recente-interativo:hover .wrapper-categories-relacionado .content .Ano-archive, 
.single.single-projetos .projetos-relacionados .card-recente-interativo:hover .wrapper-categories-relacionado .content .GrandeTema-archive, 
.single.single-projetos .projetos-relacionados .card-recente-interativo:hover .wrapper-categories-relacionado .content .Ano-archive {
/*    margin-bottom: 0px!important;*/
    margin-bottom: 0px;
}
.archive.tax-colecoes .card-recente-interativo:hover .wrapper-categories-relacionado .content .GrandeTema-archive p, 
.single.single-projetos .card-recente-interativo:hover .wrapper-categories-relacionado .content .GrandeTema-archive p {
    width: min-content;
}

/* ====== MARCADOR PERSONALIZADO (DISC) COM DISTÂNCIA DE 8PX ====== */

/* 1. Removemos as propriedades de lista nativas que tentamos antes */
.archive.tax-colecoes .card-recente-interativo:hover .wrapper-categories-relacionado .content .Ano-archive p, 
.single.single-projetos .card-recente-interativo:hover .wrapper-categories-relacionado .content .Ano-archive p {
    display: flex !important; /* Transforma em flex para alinhar a bolinha perfeitamente no meio vertical */
    align-items: center !important;  /* Centraliza a bolinha com a altura do texto do ano */
    list-style: none !important;     /* Garante que nenhuma lista nativa apareça */
}

/* 2. Criamos a bolinha customizada ANTES do texto do Ano */
.archive.tax-colecoes .card-recente-interativo:hover .wrapper-categories-relacionado .content .Ano-archive p::before, 
.single.single-projetos .card-recente-interativo:hover .wrapper-categories-relacionado .content .Ano-archive p::before {
    content: "" !important;          /* Necessário para o CSS renderizar o elemento vazio */
    display: inline-block !important;
    
    /* Tamanho da bolinha (ajuste se achar muito grande ou pequena) */
    width: 6px !important;
    height: 6px !important;
    
    /* Transforma o quadrado em um círculo perfeito */
    border-radius: 50% !important;
    
    /* Define a cor da bolinha idêntica à do texto */
    background-color: #ECF1F4 !important;
    
    /* A MÁGICA ESTÁ AQUI: Exatamente 8px de distância do texto do ano */
    margin-right: 8px !important;
    
    /* Pequeno ajuste para garantir alinhamento vertical óptico perfeito */
    flex-shrink: 0;

    margin-top: 1.5px;
}

/* ====== MÁSCARA DE CORTE DO SLICK SLIDER (PROJETOS RELACIONADOS) ====== */

/* 1. Alvo: A div interna do Slick Slider que corta o conteúdo (slick-list) */
.archive.tax-colecoes #page .projetos-relacionados .slick-list,
.single.single-projetos #page .projetos-relacionados .slick-list,
#container-central-projetos .slick-list,
.secao-banco-projetos .slick-list {
    /* Aumentamos o padding vertical de 25px para 40px para o card de 1.08 não cortar no topo */
    padding: 40px 15px !important; 
    /* Compensamos exatamente o espaço extra para o layout do site não se mover */
    margin: -40px -15px !important; 
    overflow-x: hidden !important; 
    overflow-y: visible !important; 
    z-index: 2;
}
@media (max-width: 480px) {
.archive.tax-colecoes #page .projetos-relacionados .slick-list,
.single.single-projetos #page .projetos-relacionados .slick-list,
#container-central-projetos .slick-list,
.secao-banco-projetos .slick-list {
    padding: 40px 10px !important; 
    margin: -40px -10px !important;
}
}
.archive.tax-colecoes #page .projetos-relacionados .projetos-emalta-background .slick-list,
.single.single-projetos #page .projetos-relacionados .projetos-emalta-background .slick-list,
#container-central-projetos .projetos-emalta-background .slick-list,
.projetos-emalta-background .secao-banco-projetos .slick-list {
    padding: 56px 15px !important; 
    margin: -56px -15px !important;     
}
@media (max-width: 480px) {
.archive.tax-colecoes #page .projetos-relacionados .projetos-emalta-background .slick-list,
.single.single-projetos #page .projetos-relacionados .projetos-emalta-background .slick-list,
#container-central-projetos .projetos-emalta-background .slick-list,
.projetos-emalta-background .secao-banco-projetos .slick-list {
    padding: 56px 10px !important; 
    margin: -56px -10px !important;  *
}
}

/* Garante que o container do título não tente cortar ou ficar por cima do card em hover */
.titulo-secao {
    position: relative;
    z-index: 1;
}

/* Quando o carrossel estiver em hover, jogamos o título ligeiramente para trás */
.secao-banco-projetos:hover .titulo-secao {
    z-index: 0;
}

/* 2. Alvo: O container principal do slider (caso o anterior não seja suficiente) */
.archive.tax-colecoes #page .projetos-relacionados .slick-slider, 
.single.single-projetos #page .projetos-relacionados .slick-slider, 
#container-central-projetos .slick-slider {
    /* Ajuda a garantir que nada além do slick-list corte o conteúdo */
    overflow: visible !important;
}

/* Faz com que o slide do Slick permita que seus filhos fiquem por cima de elementos absolutos externos */
.archive.tax-colecoes #page .projetos-relacionados .slick-slide, 
.single.single-projetos #page .projetos-relacionados .slick-slide, 
#container-central-projetos .slick-slide {
    position: relative;
    z-index: 1;
}

.archive.tax-colecoes #page .projetos-relacionados .slick-slide:hover, 
.single.single-projetos #page .projetos-relacionados .slick-slide:hover, 
#container-central-projetos .slick-slide:hover {
    z-index: 999 !important; /* Força o slide atual a ficar acima do degradê (que tem z-index: 1) */
}

/* ====== AJUSTES DE CONTORNO PARA OS GRIDS EXPANDIDOS (TODAS AS TAXONOMIAS) ====== */

/* 1. Evita o corte superior e inferior nos blocos individuais de cada seção */
.bloco-colecao-individual-colecoes,
.bloco-tema-individual-temas,
.bloco-orgao-individual-orgaos,
.bloco-tipo-individual-tipos,
.bloco-origem-individual-origens {
    overflow: visible !important;
}

/* 2. Cria a área de escape nas laterais e base de QUALQUER Grid Expandido */
.projetos-colecoes-expandido,
.projetos-temas-expandido,
.projetos-orgaos-expandido,
.projetos-tipos-expandido,
.projetos-origens-expandido {
    padding: 20px 15px !important; /* Espaço de segurança para o scale(1.03) respirar */
    padding: 20px 0px !important;
    margin: -20px -15px 0px -15px !important; /* Neutraliza o impacto estrutural no layout horizontal */
    margin: -20px 0px 0px 0px !important;
    overflow: visible !important;
}

/* 3. Ajuste do comportamento do Primeiro Item de cada linha no Grid Expandido */
/* Como no grid não usamos .slick-current, identificamos o primeiro item da linha pelo transform-origin padrão */
.projetos-colecoes-expandido .card-recente-interativo:hover, 
.projetos-temas-expandido .card-recente-interativo:hover, 
.projetos-orgaos-expandido .card-recente-interativo:hover, 
.projetos-tipos-expandido .card-recente-interativo:hover, 
.projetos-origens-expandido .card-recente-interativo:hover {
    z-index: 100;
    z-index: 10;
    transform: scale(1.07);
}

.achive.tax-colecoes #page .projetos-relacionados .projetos-temas-expandido .projeto-slide-item, 
.single.single-projetos #page .projetos-relacionados .projetos-temas-expandido .projeto-slide-item, 
#container-central-projetos .projetos-temas-expandido .projeto-slide-item {
    padding-bottom: 0px;
}