/**
 * RSC – Estilos Globais da Área de Conteúdo das Páginas Internas
 * Aplicados a: body.page .entry-content, .rsc-conteudo
 */

/* === Variables === */
:root {
    --rsc-terracota:    #b5451b;
    --rsc-verde-escuro: #4a5e1a;
    --rsc-verde-claro:  #d9dfa8;
    --rsc-creme:        #f5f0e1;
    --rsc-texto:        #2d2d2d;
    --rsc-subtitulo:    #3d3d2e;
    --rsc-fonte:        'Vollkorn', Georgia, 'Times New Roman', serif;
}

/* === Área de conteúdo principal === */
body.page .entry-content{    
    padding:     40px 16px 4rem;    
}

/* === Subtítulo de seção (h2 em itálico) === */
/* body.page .entry-content h2,
.rsc-conteudo h2 {
    font-size:   1.25rem;
    font-style:  italic;
    font-weight: 400;
    color:       var(--rsc-subtitulo);
    margin:      0 0 2rem;
    line-height: 1.4;
    /* Reset do text-transform do theme.json para h2 nas páginas internas */
    text-transform: none;
} */

/* === H3 — título de subseção === */
body.page .entry-content h3,
.rsc-conteudo h3 {
    font-size:   1.1rem;
    font-weight: 700;
    color:       var(--rsc-terracota);
    margin:      1.5rem 0 0.75rem;
    line-height: 1.4;
}


/* === Negrito inline === */
body.page .entry-content strong,
body.page .entry-content b,
.rsc-conteudo strong,
.rsc-conteudo b {
    font-weight: 700;
}

/* === Itálico === */
body.page .entry-content em,
body.page .entry-content i,
.rsc-conteudo em,
.rsc-conteudo i {
    font-style: italic;
}

/* === Listas === */
body.page .entry-content ul,
body.page .entry-content ol,
.rsc-conteudo ul,
.rsc-conteudo ol {
    font-family:  'Titillium Web', sans-serif;
    font-style:   normal;
    font-weight:  700;
    font-size:    16px;
    line-height:  1.5;
    color:        #000000;
    margin:       0 0 1.25rem;
    padding-left: 1.5rem;
}

body.page .entry-content li,
.rsc-conteudo li {
    margin-bottom: 0.4rem;
    font-weight: normal;
}

/* === Blockquote === */
body.page .entry-content blockquote,
.rsc-conteudo blockquote {
    border-left:  4px solid var(--rsc-terracota);
    margin:       2rem 0;
    padding:      1rem 1.5rem;
    background:   var(--rsc-creme);
    border-radius: 0 6px 6px 0;
    font-style:   italic;
    color:        var(--rsc-subtitulo);
}

/* === Separador === */
body.page .entry-content hr,
.rsc-conteudo hr {
    border:        none;
    border-top:    2px solid var(--rsc-verde-claro);
    margin:        2.5rem 0;
}

/* === Tabelas === */
body.page .entry-content table,
.rsc-conteudo table {
    width:           100%;
    border-collapse: collapse;
    font-size:       0.9rem;
    margin:          1.5rem 0;
}

body.page .entry-content th,
body.page .entry-content td,
.rsc-conteudo th,
.rsc-conteudo td {
    padding:      0.6rem 0.8rem;
    text-align:   left;
    border-bottom: 1px solid var(--rsc-verde-claro);
}

body.page .entry-content th,
.rsc-conteudo th {
    font-weight:      700;
    color:            var(--rsc-terracota);
    background-color: var(--rsc-creme);
}

/* === Responsivo === */
@media (max-width: 640px) {
    body.page .entry-content{
        padding: 40px 16px 3rem;
    }
}

/* === Subtítulo de seção (itálico leve, usado em Políticas Públicas etc.) === */
.rsc-subtitulo-secao {
    font-family:    'Vollkorn', Georgia, 'Times New Roman', serif;
    font-size:      24px;
    font-weight:    400;
    font-style:     italic;
    color:          #3d3d2e;
    margin:         2.5rem 0 1.5rem;
    line-height:    1.4;
    border:         none;
    padding:        0;
    /* Anular text-transform herdado do theme.json h2 */
    text-transform: none;
}

/* === Lista de resultados (todos os itens em negrito) === */
.rsc-conteudo ul.rsc-lista-resultados,
.rsc-post-conteudo ul.rsc-lista-resultados {
    list-style:     disc;
    padding-left:   1.5rem;
    margin:         0 0 1.5rem;
    display:        flex;
    flex-direction: column;
    gap:            0.6rem;
}

.rsc-conteudo ul.rsc-lista-resultados li,
.rsc-post-conteudo ul.rsc-lista-resultados li {
    font-family: 'Vollkorn', Georgia, 'Times New Roman', serif;
    font-size:   1rem;
    line-height: 1.65;
    color:       var(--rsc-texto);
    font-weight: 700;
}

/* === Imagem de conteúdo (full-width dentro do container) === */
.rsc-imagem-conteudo {
    margin: 2rem 0;
}

.rsc-imagem-conteudo img {
    width:           100%;
    height:          auto;
    max-height:      460px;
    object-fit:      cover;
    object-position: center top;
    border-radius:   6px;
    display:         block;
}

/* === Título de seção COLEÇÕES (maiúsculas, terracota, sem itálico) === */
.rsc-titulo-colecoes {
    font-family:    'Vollkorn', Georgia, 'Times New Roman', serif;
    font-size:      clamp(1.3rem, 2.5vw, 1.6rem);
    font-weight:    700;
    font-style:     normal;
    color:          #b5451b;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin:         2.5rem 0 1.75rem;
    line-height:    1.15;
    border:         none;
    padding:        0;
}

/* === Parágrafo de destaque editorial (inteiramente em negrito) === */
.rsc-post-conteudo p.rsc-paragrafo-destaque,
.rsc-post-conteudo .rsc-paragrafo-destaque p {
    font-family: 'Vollkorn', Georgia, 'Times New Roman', serif;
    font-size:   1rem;
    font-weight: 700;
    color:       #2d2d2d;
    line-height: 1.75;
    margin:      0 0 1.25rem;
}

/* === Acessibilidade === */
@media (prefers-reduced-motion: reduce) {
    body.page .entry-content a,
    .rsc-conteudo a {
        transition: none;
    }
}

/* ============================================================
   Página Quem Somos — componentes específicos
   ============================================================ */

/* === Missão / Visão de futuro === */
.rsc-missao-visao-cols {
    gap:    1.25rem;
    margin: 2rem 0;
}

.rsc-box-missao,
.rsc-box-visao {
    background-color: var(--rsc-creme);
    border-left:      4px solid var(--rsc-terracota);
    padding:          1.25rem 1.25rem 1.25rem 1.5rem;
    border-radius:    0 6px 6px 0;
    margin:           0;
}

.rsc-box-missao h3,
.rsc-box-visao h3 {
    color:          var(--rsc-terracota) !important;
    font-size:      0.85rem;
    font-weight:    700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    margin:         0 0 0.6rem;
    line-height:    1.3;
}

.rsc-box-missao p,
.rsc-box-visao p {
    font-size:   0.92rem;
    line-height: 1.65;
    margin:      0;
    color:       var(--rsc-texto);
}

/* === Lista de Valores === */
.rsc-valores-cols {
    gap:    1rem;
    margin: 1.5rem 0 2rem;
}

.rsc-valores-lista {
    list-style:   none !important;
    padding-left: 0 !important;
    margin:       0 !important;
}

.rsc-valores-lista li {
    padding:          0.45rem 0.75rem;
    margin-bottom:    0.45rem;
    background-color: var(--rsc-creme);
    border-left:      3px solid var(--rsc-terracota);
    border-radius:    0 4px 4px 0;
    font-size:        0.92rem;
    line-height:      1.4;
    font-weight:      500;
    color:            var(--rsc-texto);
}

.rsc-valores-lista--alt li {
    border-left-color: var(--rsc-verde-escuro);
}

/* === Princípios === */
.rsc-principios-cols {
    gap:    1.25rem;
    margin: 1rem 0 2.5rem;
}

.rsc-principio-card {
    border-top:  2px solid var(--rsc-terracota);
    padding-top: 0.9rem;
}

.rsc-principio-titulo {
    font-size:   0.88rem !important;
    font-weight: 700 !important;
    color:       var(--rsc-terracota) !important;
    margin:      0 0 0.35rem !important;
    line-height: 1.3 !important;
}

.rsc-principio-descricao {
    font-size:   0.85rem !important;
    line-height: 1.55 !important;
    color:       var(--rsc-texto) !important;
    margin:      0 !important;
}

/* === Breakout full-width para secao-parcerias dentro de .rsc-conteudo === */
.rsc-conteudo .wp-block-rsc-theme-secao-parcerias {
    margin-left:  calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    width:        100vw;
    max-width:    100vw;
}
.bp-conteudo{
    padding-left: 0;
}
@media (max-width: 640px) {
    .rsc-missao-visao-cols {
        flex-direction: column;
    }

    .rsc-principios-cols {
        flex-wrap: wrap;
    }

    .rsc-principio-card {
        flex-basis: calc(50% - 0.625rem);
    }
}

@media (max-width: 640px) {
    .bp-titulo {
        font-size: 32px !important;
        padding-left: 45px;
    }
}