.elementor-kit-7{--e-global-color-primary:#900033;--e-global-color-secondary:#0077B8;--e-global-color-text:#000000;--e-global-color-accent:#A80532;--e-global-color-a76efbb:#737578;--e-global-color-45bc0c5:#939597;--e-global-color-c5d15b8:#EDEDED;--e-global-color-d7dc300:#D8D8D8;--e-global-color-d1406fe:#F5B7C8;--e-global-color-f92b77c:#FFFFFF;--e-global-typography-primary-font-family:"Poppins";--e-global-typography-primary-font-size:48px;--e-global-typography-primary-font-weight:700;--e-global-typography-primary-line-height:1.25em;--e-global-typography-secondary-font-family:"Poppins";--e-global-typography-secondary-font-size:36px;--e-global-typography-secondary-font-weight:700;--e-global-typography-text-font-family:"Literata";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.5em;--e-global-typography-accent-font-family:"Poppins";--e-global-typography-accent-font-size:13px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-9760210-font-family:"Literata";--e-global-typography-9760210-font-size:48px;--e-global-typography-9760210-font-weight:700;--e-global-typography-8c9fe41-font-family:"Poppins";--e-global-typography-8c9fe41-font-size:32px;--e-global-typography-8c9fe41-font-weight:700;--e-global-typography-d0d4191-font-family:"Poppins";--e-global-typography-d0d4191-font-size:24px;--e-global-typography-d0d4191-font-weight:700;--e-global-typography-41155d1-font-family:"Poppins";--e-global-typography-41155d1-font-size:12px;--e-global-typography-41155d1-font-weight:700;--e-global-typography-41155d1-text-transform:uppercase;--e-global-typography-dfda13f-font-family:"Literata";--e-global-typography-dfda13f-font-size:16px;--e-global-typography-dfda13f-font-weight:600;--e-global-typography-dfda13f-line-height:1.5em;--e-global-typography-24872d5-font-family:"Literata";--e-global-typography-24872d5-font-size:18px;--e-global-typography-24872d5-font-style:italic;color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{background-color:var( --e-global-color-text );font-family:"Poppins", Sans-serif;font-size:12px;letter-spacing:0.72px;color:var( --e-global-color-f92b77c );border-radius:6px 6px 6px 6px;padding:12px 32px 12px 32px;}.elementor-kit-7 button:hover,.elementor-kit-7 button:focus,.elementor-kit-7 input[type="button"]:hover,.elementor-kit-7 input[type="button"]:focus,.elementor-kit-7 input[type="submit"]:hover,.elementor-kit-7 input[type="submit"]:focus,.elementor-kit-7 .elementor-button:hover,.elementor-kit-7 .elementor-button:focus{background-color:#333333;color:var( --e-global-color-f92b77c );}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 a{color:var( --e-global-color-text );}.elementor-kit-7 h2{font-family:"Poppins", Sans-serif;font-size:24px;font-weight:700;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1344px;}.e-con{--container-max-width:1344px;--container-default-padding-top:0px;--container-default-padding-right:48px;--container-default-padding-bottom:0px;--container-default-padding-left:48px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1023px){.elementor-kit-7{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:0px;--container-default-padding-right:32px;--container-default-padding-bottom:0px;--container-default-padding-left:32px;}}@media(max-width:767px){.elementor-kit-7{--e-global-typography-primary-font-size:36px;--e-global-typography-9760210-font-size:36px;--e-global-typography-8c9fe41-font-size:28px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:0px;--container-default-padding-right:16px;--container-default-padding-bottom:0px;--container-default-padding-left:16px;}}
/* Start custom CSS *//* ===== CSS global do site (Site Settings → Custom CSS) =====
   Os cards ficam aqui, e não no CSS de cada Item do Loop, porque o Elementor imprime o CSS do card
   dentro da página com as aspas escapadas (&quot;), o que quebra regras como content: "Por ". */

/* Cards da revista (protótipo: ArticleCard, FeatureRow, PostList) */
.rje-card .elementor-widget:not(:last-child) { margin-block-end: 0; }
/* Imagem 5:4 com fundo cinza enquanto carrega e zoom leve no hover */
.rje-card-img a, .rje-card-img .elementor-widget-container { display: block; overflow: hidden; background: #EDEDED; }
/* A proporção vai no widget (e não só na imagem): com lazy-load, antes de a imagem carregar o Chrome calculava altura 0
   e o título subia por cima da imagem (visto entre 640 e 767 px) */
.rje-card-img { aspect-ratio: 5 / 4; width: 100%; }
.rje-card-img img { display: block; width: 100%; height: 100% !important; aspect-ratio: 5 / 4; object-fit: cover; transition: transform .3s; }
.rje-card:hover .rje-card-img img { transform: scale(1.02); }
/* Etiqueta: rótulo editorial quando existe; a categoria só onde o Loop Grid tiver a classe rje-mostra-categoria */
.rje-tag-cat { display: none; }
.rje-mostra-categoria .rje-tag-cat, .rje-card-lista .rje-tag-cat { display: block; }
.rje-tag-kicker + .rje-tag-cat { display: none !important; }
.rje-tag a { color: inherit; } .rje-tag a:hover { text-decoration: underline; }
/* Data só onde o Loop Grid tiver a classe rje-mostra-data (Últimas) */
.rje-data { display: none; }
.rje-mostra-data .rje-data, .rje-card-lista .rje-data { display: block; }
/* Título: hover bordô; byline: "Por" em itálico antes dos nomes */
.rje-titulo a { color: inherit; } .rje-titulo a:hover, .rje-byline a:hover { color: #A80532; }
.rje-titulo .elementor-heading-title { text-wrap: balance; }
.rje-byline a { color: inherit; }
.rje-byline .elementor-heading-title::before { content: "Por "; font-style: italic; text-transform: none; }
@media (prefers-reduced-motion: reduce) { .rje-card-img img { transition: none; } }
.rje-tag-kicker + .rje-tag-cat { display: none !important; }

/* Chamada horizontal: imagem com 74% da coluna, alinhada à direita e ao topo (destaque: coluna inteira) */
.rje-chamada-img .rje-card-img { width: 74%; }
.rje-card-chamada-destaque .rje-chamada-img .rje-card-img { width: 100%; }
@media (max-width: 767px) { .rje-chamada-img .rje-card-img { width: 100%; } }

/* Lista: coluna de texto encolhe (o Elementor dá 100% a containers internos); linha fina some no celular; fio embaixo do último item */
.rje-card-lista > .e-con:first-child { --width: auto; flex: 1 1 0; min-width: 0; }
@media (max-width: 767px) { .rje-dek-lista { display: none; } }
.e-loop-item:last-child > .rje-card-lista { border-bottom: 1px solid rgba(147,149,151,0.6); }

/* ===== Busca (template Resultados da busca) ===== */
.rje-busca-pagina form, .rje-busca-pagina .e-search-form { display: flex; align-items: stretch; border-bottom: 2px solid #000; }
.rje-busca-pagina input[type="search"] { flex: 1; min-width: 0; border: 0 !important; border-radius: 0; background: transparent !important; box-shadow: none !important;
  padding: 12px 0; font-family: "Poppins", sans-serif; font-size: 24px; color: #000; outline: none; }
@media (max-width: 767px) { .rje-busca-pagina input[type="search"] { font-size: 20px; } }
.rje-busca-pagina input[type="search"]::placeholder { color: #737578; }
.rje-busca-pagina button, .rje-busca-pagina [type="submit"] { background: none !important; border: 0 !important; border-radius: 0; padding: 0 8px; color: #000 !important;
  font-family: "Poppins", sans-serif; font-size: 13px; font-weight: 600; letter-spacing: .78px; text-transform: uppercase; }
.rje-busca-pagina button:hover, .rje-busca-pagina [type="submit"]:hover { color: #A80532 !important; }

/* ===== Páginas institucionais (template Página institucional; protótipo: TextPage) ===== */
.rje-intro p { margin: 0; }
.rje-texto { font-family: "Literata", serif; font-size: 16px; line-height: 1.5; color: #000; }
.rje-texto p { margin: 0; } .rje-texto p + p { margin-top: 20px; }
.rje-texto h2 { margin: 48px 0 16px; font-family: "Poppins", sans-serif; font-size: 24px; line-height: 1.25; font-weight: 700; }
.rje-texto > h2:first-child, .rje-texto > .rje-aviso + h2 { margin-top: 0; }
.rje-texto ul { margin: 16px 0 0; padding-left: 20px; list-style: disc; } .rje-texto li + li { margin-top: 8px; }
.rje-texto a { color: inherit; text-decoration: underline; text-decoration-color: #0077B8; text-underline-offset: 2px; } .rje-texto a:hover { color: #A80532; }
/* Aviso de texto provisório */
.rje-texto .rje-aviso { margin: 0 0 40px; padding: 12px 16px; border-left: 4px solid #900033; background: #EDEDED; font-family: "Poppins", sans-serif; font-size: 14px; }
/* Expediente */
.rje-expediente { display: grid; gap: 24px 32px; margin: 0; }
@media (min-width: 640px) { .rje-expediente { grid-template-columns: 1fr 1fr; } }
.rje-expediente dt { font-family: "Poppins", sans-serif; font-size: 12px; font-weight: 700; letter-spacing: .72px; text-transform: uppercase; color: #0077B8; }
.rje-expediente dd { margin: 4px 0 0; font-family: "Literata", serif; font-size: 18px; }
.rje-texto .rje-nota { margin-top: 24px; color: #737578; }
/* Lista de autores (shortcode [rje_lista_autores]) */
.rje-autores { display: grid; margin: 0 !important; padding: 0 !important; list-style: none !important; border-top: 1px solid #939597; }
@media (min-width: 640px) { .rje-autores { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1024px) { .rje-autores { grid-template-columns: 1fr 1fr 1fr; } }
.rje-autores li { margin: 0 !important; padding: 24px 24px 24px 0; border-bottom: 1px solid #939597; }
.rje-autores a { display: block; text-decoration: none !important; }
.rje-autores-nome { font-family: "Poppins", sans-serif; font-size: 20px; font-weight: 700; } .rje-autores a:hover .rje-autores-nome { color: #A80532; }
.rje-autores-qtd { display: block; margin-top: 4px; font-size: 14px; color: #737578; }
/* A página Autores ocupa a largura toda (1116), sem a margem esquerda do texto */
.rje-texto:has(.rje-autores) { width: 100% !important; max-width: none; }
.rje-institucional:has(.rje-autores) .e-con { --padding-left: 0px; }

/* ===== Formulários (Contato e Newsletter) ===== */
.rje-form .elementor-field-label { font-family: "Poppins", sans-serif; font-size: 12px; font-weight: 700; letter-spacing: .72px; text-transform: uppercase; color: #000; }
.rje-form .elementor-field-textual, .rje-form select { border: 1px solid #939597 !important; border-radius: 6px !important; background: #fff !important;
  padding: 10px 16px !important; font-family: "Poppins", sans-serif; font-size: 14px; color: #000; }
.rje-form .elementor-field-textual:focus, .rje-form select:focus { border-color: #0077B8 !important; box-shadow: none; }
.rje-form .elementor-field-type-acceptance label { font-family: "Literata", serif; font-size: 14px; text-transform: none; letter-spacing: 0; font-weight: 400; }
.rje-form .elementor-button { height: 44px; padding: 0 32px; border-radius: 6px; background: #000 !important; color: #fff !important;
  font-family: "Poppins", sans-serif; font-size: 12px; font-weight: 700; letter-spacing: .72px; text-transform: uppercase; }
.rje-form .elementor-button:hover { background: #333 !important; }
.rje-form .elementor-message-success { padding: 24px; background: #EDEDED; font-family: "Literata", serif; font-size: 18px; }
/* Newsletter: caixa azul, campos sem borda, botão preto */
.rje-form-newsletter .elementor-field-textual { border: 0 !important; height: 40px; }
.rje-form-newsletter .elementor-button { height: 40px; width: 100%; }
.rje-newsletter-nota p { margin: 16px 0 0; font-family: "Poppins", sans-serif; font-size: 12px; color: rgba(255,255,255,.9); }
.rje-newsletter-nota a { color: #fff; text-decoration: underline; }

/* ===== Utilitários ===== */
.rje-sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

/* ===== Banners de divulgação (shortcode [rje_banner]) ===== */
.rje-banner img { display: block; width: 100%; height: auto; }
.rje-banner-topo-da-home { max-width: 970px; margin: 0 auto; }
.rje-banner-topo-home:not(:has(.rje-banner)) { display: none; }

/* ===== Home (protótipo: src/app/page.tsx) ===== */
/* Destaques: celular = capa, esquerda, direita empilhadas; tablet = capa larga + 2 colunas; desktop = esquerda · capa · direita */
.e-con.rje-destaques { display: grid !important; grid-template-columns: minmax(0, 1fr); gap: 40px; }
@media (min-width: 768px) { .e-con.rje-destaques { grid-template-columns: repeat(2, minmax(0, 1fr)); } .e-con.rje-destaques > .rje-capa { grid-column: 1 / -1; } }
@media (min-width: 1024px) {
  .e-con.rje-destaques { grid-template-columns: minmax(0, 1fr) minmax(0, 2.08fr) minmax(0, 1fr); gap: 24px; }
  .e-con.rje-destaques > .rje-capa { grid-column: 2; grid-row: 1; }
  .e-con.rje-destaques > .rje-col-esq { grid-column: 1; grid-row: 1; }
  .e-con.rje-destaques > .rje-col-dir { grid-column: 3; grid-row: 1; }
}
.e-con.rje-destaques > .e-con { --width: auto; width: auto; min-width: 0; }
/* Colunas laterais: fio entre o card com imagem e o card só texto */
.rje-coluna-lateral .e-loop-item ~ .e-loop-item { border-top: 1px solid #939597; margin-top: 40px; padding-top: 40px; }
@media (min-width: 1024px) { .rje-coluna-lateral .e-loop-item ~ .e-loop-item { margin-top: 48px; padding-top: 48px; } }
/* Fios entre as seções, na largura do conteúdo */
.rje-home .rje-secao, .rje-home .rje-continuacao { border-top: 1px solid #939597; }
.rje-veja-todos a { color: inherit; } .rje-veja-todos a:hover { text-decoration: underline; }
/* Newsletter da home: caixa de 660 px centralizada */
.rje-home-newsletter .rje-newsletter-box { max-width: 660px; margin: 0 auto; text-align: center; }
.rje-home-newsletter .rje-newsletter-nota { display: none; }
/* Continuação: o primeiro fio já vem da seção */
.rje-continuacao .rje-loop-chamadas .e-loop-item:first-of-type { border-top: 0; }


/* ===== Listagens e chamadas horizontais (categoria, Últimas, home) ===== */
/* Fio entre os itens das chamadas horizontais */
.rje-loop-chamadas .e-loop-item { border-top: 1px solid #939597; padding-block: 48px; }
@media (min-width: 1024px) { .rje-loop-chamadas .e-loop-item { padding-block: 72px; } }
/* Páginas 2+ (body.paged): o primeiro item deixa de ser destaque e fica igual aos demais */
.paged .rje-card-chamada-destaque .rje-chamada-img .rje-card-img { width: 74%; }
.paged .rje-card-chamada-destaque .rje-titulo .elementor-heading-title { font-size: 24px; line-height: 1.25; }
.paged .rje-card-chamada-destaque .rje-dek .elementor-heading-title { font-size: 16px; }
/* Paginação: números em círculo, atual em preto; anterior/próxima nas pontas */
.rje-loop .elementor-pagination { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 12px;
  margin-top: 48px; padding-top: 0; font-family: "Poppins", sans-serif; font-size: 13px; font-weight: 600; letter-spacing: .78px; text-transform: uppercase; }
.rje-loop .elementor-pagination .page-numbers { display: inline-grid; place-items: center; min-width: 36px; height: 36px; border-radius: 999px; color: #000; text-decoration: none; }
.rje-loop .elementor-pagination .page-numbers:hover { background: #EDEDED; }
.rje-loop .elementor-pagination .page-numbers.current { background: #000; color: #fff; }
.rje-loop .elementor-pagination .prev, .rje-loop .elementor-pagination .next { padding: 0 8px; border-radius: 0; }
.rje-loop .elementor-pagination .prev:hover, .rje-loop .elementor-pagination .next:hover { background: none; color: #A80532; }
.rje-loop .elementor-pagination .prev { margin-right: auto; } .rje-loop .elementor-pagination .next { margin-left: auto; }
/* Mensagem de nada encontrado */
.rje-loop .e-loop-nothing-found-message { font-family: "Literata", serif; font-size: 18px; }
/* Nenhum bloco da home pode alargar a página (evita rolagem lateral e o menu deslocado no celular) */
.rje-home, .rje-home .e-con { min-width: 0; }
body { overflow-x: clip; }

/* ===== Larguras fixas que não podem estourar a tela =====
   Linhas finas e títulos com largura "Personalizada" (ex.: 544 px na capa) viram largura máxima:
   no celular encolhem até caber. Grade dos Loop Grids com colunas que podem encolher. */
.rje-card .elementor-widget__width-initial, .rje-artigo .elementor-widget__width-initial,
.rje-listagem .elementor-widget__width-initial, .rje-institucional .elementor-widget__width-initial {
  width: auto !important; max-width: min(100%, var(--container-widget-width, 100%)) !important; }
.rje-loop .elementor-loop-container { grid-template-columns: repeat(var(--grid-columns, 1), minmax(0, 1fr)); }
.e-loop-item { min-width: 0; }

/* ===== Especiais na home: carrossel (passo 12; protótipo SpecialCarousel + Carousel) ===== */
/* Fundo cinza de ponta a ponta, saindo do container de 1344 px da home */
/* O Elementor fixa a largura do container em 100% do pai (--width): aqui ele passa a ter a largura da tela */
.rje-especial-home { background: #EDEDED; padding: 64px max(48px, calc(50vw - 672px)); }
.e-con.rje-especial-home { --width: 100vw; width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); margin-right: 0; }
@media (max-width: 1023px) { .rje-especial-home { padding: 56px 32px; } }
@media (max-width: 767px) { .rje-especial-home { padding: 56px 16px; } }
/* Sem especial na posição o shortcode não imprime nada: a seção inteira some */
.rje-especial-home:not(:has(.rje-especial-cab)) { display: none; }
.rje-especial-home:has(.rje-especial-cab) + .rje-secao, .rje-especial-home:has(.rje-especial-cab) + .rje-continuacao { border-top: 0; }
.rje-especial-nome { margin: 0 0 12px; font: 700 12px/1.33 Poppins, sans-serif; letter-spacing: .72px; text-transform: uppercase; }
.rje-especial-nome a { color: #0077B8; } .rje-especial-nome a:hover { text-decoration: underline; }
.rje-especial-titulo { margin: 0; font: 700 36px/1.25 Poppins, sans-serif; text-wrap: balance; }
.rje-especial-titulo a { color: #000; } .rje-especial-titulo a:hover { color: #A80532; }
.rje-especial-resumo { margin: 16px 0 0; max-width: 672px; font: 400 18px/1.6 Literata, serif; }
/* Setas: círculo bordô com a seta branca (icone-seta.svg), centralizadas na imagem 5:4 do card.
   Largura do card = (largura do carrossel − espaços) ÷ cards por tela; centro da imagem = largura × 0,4.
   Largura do carrossel = tela menos as margens laterais (48/32/16), no máximo 1344 */
.rje-carrossel { --cards: 4; --largura: min(1344px, 100vw - 96px); }
@media (max-width: 1023px) { .rje-carrossel { --cards: 3; --largura: calc(100vw - 64px); } }
@media (max-width: 767px) { .rje-carrossel { --cards: 1; --largura: calc(100vw - 32px); } }
.rje-carrossel .elementor-swiper-button {
  top: calc((var(--largura) - (var(--cards) - 1) * 24px) / var(--cards) * 0.4) !important; transform: translateY(-50%);
  width: 64px; height: 64px; border-radius: 50%; background: #900033; color: #fff;
  display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 12px rgba(0,0,0,.15); transition: background-color .2s, opacity .2s;
}
.rje-carrossel .elementor-swiper-button:hover { background: #A80532; }
.rje-carrossel .elementor-swiper-button svg { width: 32px; height: 32px; fill: currentColor; }
.rje-carrossel .elementor-swiper-button-prev { left: 0; margin-left: -32px; }
.rje-carrossel .elementor-swiper-button-next { right: 0; margin-right: -32px; }
@media (max-width: 1023px) {
  .rje-carrossel .elementor-swiper-button { width: 48px; height: 48px; }
  .rje-carrossel .elementor-swiper-button svg { width: 24px; height: 24px; }
  .rje-carrossel .elementor-swiper-button-prev { margin-left: 12px; }
  .rje-carrossel .elementor-swiper-button-next { margin-right: 12px; }
}
/* Voltar só depois da primeira rolagem; avançar some no fim */
.rje-carrossel .elementor-swiper-button.swiper-button-disabled { opacity: 0 !important; visibility: hidden; pointer-events: none; }
@media (prefers-reduced-motion: reduce) { .rje-carrossel .elementor-swiper-button { transition: none; } }
/* Card · compacto: imagem, título 20 px e autores */
.rje-card-compacto .rje-titulo .elementor-heading-title { font-size: 20px; }

/* ===== Página do especial (Arquivo da taxonomia rotulo; protótipo src/app/especial/[slug]) ===== */
/* Fundo escuro #212121, texto branco; etiqueta azul-claro e cinza-claro para manter o contraste (7:1 e 6,8:1) */
.rje-especial-pagina { background: #212121; color: #fff; }
body:has(.rje-especial-pagina) { background: #212121; } /* cobre a margem acima do rodapé */
.rje-esp-capa { margin: 0; }
.rje-esp-capa img { display: block; width: 100%; height: min(75vh, 768px); object-fit: cover; background: #2e2e2e; }
.rje-esp-capa figcaption { padding: 8px 48px 0; font: 400 12px/1.5 Poppins, sans-serif; color: #A7A9AC; }
@media (max-width: 1023px) { .rje-esp-capa figcaption { padding-inline: 32px; } }
@media (max-width: 767px) { .rje-esp-capa figcaption { padding-inline: 16px; } }
.rje-esp-topo { max-width: 1116px; margin: 0 auto; padding: 64px 48px 0; text-align: center; }
@media (max-width: 767px) { .rje-esp-topo { padding: 48px 16px 0; } }
.rje-esp-nome { margin: 0 0 16px; font: 700 12px/1.33 Poppins, sans-serif; letter-spacing: .72px; text-transform: uppercase; color: #5DB4EA; }
.rje-esp-titulo { margin: 0; font: 700 60px/1.15 Poppins, sans-serif; color: #fff; text-wrap: balance; }
@media (max-width: 767px) { .rje-esp-titulo { font-size: 36px; } }
.rje-esp-abertura { max-width: 576px; margin: 56px auto 0; text-align: left; font: 400 18px/1.6 Literata, serif; color: #fff; }
.rje-esp-abertura p { margin: 0; } .rje-esp-abertura p + p { margin-top: 24px; }
.rje-esp-abertura p:first-child::first-letter { float: left; margin: 6px 12px 0 0; font: 900 88px/.75 Poppins, sans-serif; }
/* Lista: fio claro em cima; 1 post em coluna inteira, 2 lado a lado, 1, 2... (no celular, uma coluna) */
.rje-especial-posts { border-top: 1px solid rgba(255,255,255,.25); margin-top: 72px; }
.rje-especial-lista .elementor-loop-container { gap: 56px 48px; }
.rje-especial-lista .e-loop-item:nth-child(3n+1 of .e-loop-item) { grid-column: 1 / -1; }
.rje-especial-lista .e-loop-item:nth-child(3n+1 of .e-loop-item) .rje-titulo .elementor-heading-title { font-size: 32px; line-height: 1.2; }
.rje-especial-lista .rje-dek { max-width: 544px; }
@media (max-width: 767px) {
  .rje-especial-lista .elementor-loop-container { grid-template-columns: minmax(0, 1fr); }
  .rje-especial-lista .e-loop-item:nth-child(3n+1 of .e-loop-item) .rje-titulo .elementor-heading-title { font-size: 28px; }
}
/* Cards no fundo escuro */
.rje-tema-escuro .rje-titulo .elementor-heading-title, .rje-tema-escuro .rje-dek .elementor-heading-title { color: #fff !important; }
.rje-tema-escuro .rje-byline .elementor-heading-title, .rje-tema-escuro .rje-data .elementor-heading-title { color: #A7A9AC !important; }
.rje-tema-escuro .rje-tag .elementor-heading-title { color: #5DB4EA !important; }
.rje-tema-escuro .rje-titulo a:hover, .rje-tema-escuro .rje-byline a:hover { color: #F5B7C8 !important; }
.rje-tema-escuro .rje-card-img a, .rje-tema-escuro .rje-card-img .elementor-widget-container { background: #2e2e2e; }
.rje-tema-escuro :focus-visible { outline-color: #5DB4EA; }

/* Header escuro só na página do especial (logo branco no lugar do preto; faixa bordô e menu ☰ não mudam) */
.rje-logo-escuro { display: none; }
body:has(.rje-especial-pagina) .rje-logo-claro { display: none; }
body:has(.rje-especial-pagina) .rje-logo-escuro { display: block; }
body:has(.rje-especial-pagina) .e-con.rje-header, body:has(.rje-especial-pagina) .rje-barra { background-color: #212121 !important; }
body:has(.rje-especial-pagina) .rje-barra > .e-con-inner { border-bottom-color: #fff; }
body:has(.rje-especial-pagina) .rje-barra .elementor-nav-menu--main .elementor-item { color: #fff !important; }
body:has(.rje-especial-pagina) .rje-barra .elementor-nav-menu--main .elementor-item:hover,
body:has(.rje-especial-pagina) .rje-barra .elementor-nav-menu--main .elementor-item.elementor-item-active { color: #F5B7C8 !important; }
body:has(.rje-especial-pagina) .rje-barra .elementor-nav-menu--main .elementor-item::after { background-color: #F5B7C8 !important; }
body:has(.rje-especial-pagina) .rje-barra .elementor-icon { color: #fff !important; fill: #fff !important; }
body:has(.rje-especial-pagina) .rje-barra .elementor-icon svg { fill: #fff !important; }
body:has(.rje-especial-pagina) .rje-barra .elementor-icon:hover, body:has(.rje-especial-pagina) .rje-barra .elementor-icon:hover svg { color: #F5B7C8 !important; fill: #F5B7C8 !important; }
/* Paginação: na primeira página o Elementor mostra "← Página anterior" como texto sem link (span), e na última o mesmo com "Próxima página →".
   Esconde sem tirar o espaço, para os números não mudarem de lugar (protótipo: Pagination.tsx) */
.rje-loop .elementor-pagination span.prev, .rje-loop .elementor-pagination span.next { visibility: hidden; }/* End custom CSS */