/* =============================================
   conteudos.css — a página de Conteúdos em telas
   =============================================
   A página usa o mesmo motor de telas da home (css/home.css: palco, slides,
   barra e deslize; js/paginas-publicas.js). A primeira tela tem a busca e os
   temas; cada tela seguinte lista cinco títulos; a consultoria e o rodapé
   fecham a sequência. Os títulos aparecem em linhas, sem os cartões antigos. */

/* Telas que a busca esconde (sem artigos) não entram na navegação nem na tela. */
body.home-deslize #conteudo > [data-vazia] {
    display: none !important;
}

/* A coluna da tela não cresce além da largura da tela: o conteúdo quebra ou rola dentro, nunca passa do lado. */
body.home-deslize #conteudo > .ct-tela {
    grid-template-columns: minmax(0, 1fr);
}

body.home-deslize #conteudo > .ct-tela > .ct-hero {
    min-width: 0;
}

/* Cada tela centraliza o seu conteúdo na altura disponível. */
body.home-deslize #conteudo > .ct-tela > .ct-hero,
body.home-deslize #conteudo > .ct-tela > .ct-wrap {
    align-self: center;
    width: 100%;
    min-height: 0;
    margin: 0 auto;
}

body.home-deslize #conteudo > .ct-tela > .ct-wrap {
    max-width: 920px;
    padding: 0;
}

/* Primeira tela: título, busca e temas numa tela só. */
body.home-deslize #conteudo .ct-tela-inicio .ct-hero {
    padding: 0;
    background: none;
    border: 0;
}

body.home-deslize #conteudo .ct-tela-inicio .ct-hero .ct-wrap {
    max-width: 920px;
    margin: 0 auto;
    padding: 0;
}

body.home-deslize #conteudo .ct-tela-inicio h1 {
    margin: 0 0 clamp(4px, 1vh, 10px);
    font-size: clamp(2rem, 5vh, 3.4rem);
    line-height: 1.05;
}

body.home-deslize #conteudo .ct-tela-inicio .ct-hero > .ct-wrap > p:first-of-type {
    margin: 0 0 clamp(12px, 2.6vh, 22px);
    font-size: clamp(0.98rem, 2vh, 1.15rem);
}

body.home-deslize #conteudo .ct-tela-inicio .ct-filtros-titulo {
    margin: clamp(14px, 3vh, 26px) 0 clamp(6px, 1.2vh, 10px);
}

/* Temas em linhas que quebram (o blog.css deixava uma linha só, cortada). Alinhado à esquerda, como o título. */
body.home-deslize #conteudo .ct-tela-inicio .ct-filtros {
    flex-wrap: wrap;
    width: 100%;
    gap: clamp(5px, 1vh, 8px);
}

body.home-deslize #conteudo .ct-tela-inicio .ct-busca {
    margin: clamp(12px, 2.6vh, 20px) 0 0;
}

body.home-deslize #conteudo .ct-tela-inicio .ct-hero p {
    margin-left: 0;
    margin-right: 0;
}

body.home-deslize #conteudo .ct-tela-inicio .ct-resultado {
    margin: clamp(10px, 2vh, 16px) 0 0;
}

@media (max-height: 720px) {
    body.home-deslize #conteudo .ct-tela-inicio h1 {
        font-size: clamp(1.8rem, 4.4vh, 2.4rem);
    }

    body.home-deslize #conteudo .ct-tela-inicio .ct-filtro {
        padding: 5px 10px;
        font-size: 0.82rem;
    }
}

/* Telas de títulos: uma linha por artigo. */
body.home-deslize #conteudo .ct-itens {
    display: grid;
    list-style: none;
    margin: 0;
    padding: 0;
    border-top: 1px solid var(--line);
}

body.home-deslize #conteudo .ct-item {
    margin: 0;
    border-bottom: 1px solid var(--line);
}

body.home-deslize #conteudo .ct-item-link {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    column-gap: 16px;
    row-gap: 4px;
    align-items: center;
    padding: clamp(10px, 2.2vh, 18px) 4px;
    color: inherit;
    text-decoration: none;
}

body.home-deslize #conteudo .ct-item-temas {
    grid-column: 1 / -1;
    font-size: 0.78rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: var(--blue-800);
}

body.home-deslize #conteudo .ct-item-titulo {
    grid-column: 1;
    font-size: clamp(1.02rem, 2.4vh, 1.32rem);
    font-weight: 600;
    line-height: 1.25;
    color: var(--blue-950);
    text-wrap: balance;
}

body.home-deslize #conteudo .ct-item-meta {
    grid-column: 1;
    font-size: 0.8rem;
    color: var(--muted);
}

body.home-deslize #conteudo .ct-item-seta {
    grid-column: 2;
    grid-row: 2 / span 2;
    color: var(--blue-800);
    font-size: 1.1rem;
}

body.home-deslize #conteudo .ct-item-link:is(:hover, :focus-visible) .ct-item-titulo {
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 3px;
}

/* Consultoria e rodapé: as partes que já existiam, centradas na tela. */
body.home-deslize #conteudo .ct-tela-cta .ct-cta {
    margin: 0 auto;
    max-width: 680px;
    text-align: center;
}

body.home-deslize #conteudo .ct-tela-rodape .footer-wrap {
    align-self: center;
    width: 100%;
    margin: 0;
    padding: 0;
}

/* Celulares: os temas rolam numa linha só, sem barra à vista. */
@media (max-width: 820px) {
    body.home-deslize #conteudo .ct-tela-inicio .ct-filtros {
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        padding-bottom: 2px;
    }

    body.home-deslize #conteudo .ct-tela-inicio .ct-filtros::-webkit-scrollbar {
        display: none;
    }

    body.home-deslize #conteudo .ct-item-link {
        padding-block: 12px;
    }
}
