/*
Theme Name: Juche Digital Archive WordPress Completo
Theme URI: https://juchedigital.local
Author: OpenAI conversion from Base44 export
Description: Frontend React/Vite integrado ao WordPress CMS via REST API.
Version: 4.3.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: juche-digital-archive
*/

/* Visualizador amplo das páginas individuais de Biblioteca/Publicações. */
.ceij-publication-viewer {
  display: block;
  width: 100% !important;
  height: 88vh !important;
  min-height: 820px !important;
  border: 0;
  background: #fff;
}

@media (max-width: 767px) {
  .ceij-publication-viewer {
    height: 72vh !important;
    min-height: 560px !important;
  }
}

/* Reposiciona o vídeo em destaque para o centro visual da seção no desktop. */
@media (min-width: 1024px) {
  .ceij-featured-video-card {
    transform: translateX(-4.5rem);
  }
}
@media (min-width: 1280px) {
  .ceij-featured-video-card {
    transform: translateX(-9rem);
  }
}
@media (min-width: 1600px) {
  .ceij-featured-video-card {
    transform: translateX(-18rem);
  }
}

/* Verbete editorial e interativo do Dicionário Filosófico. */
.ceij-dictionary-entry {
  position: relative;
  box-shadow: 0 8px 28px rgba(65, 18, 18, 0.04);
  transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}
.ceij-dictionary-entry:hover {
  border-color: rgba(153, 0, 0, .28);
  box-shadow: 0 14px 36px rgba(65, 18, 18, 0.08);
  transform: translateY(-1px);
}
.ceij-dictionary-entry.is-open {
  border-color: rgba(153, 0, 0, .32);
  box-shadow: 0 18px 48px rgba(65, 18, 18, 0.1);
}
.ceij-entry-accent {
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: #990000;
  opacity: .22;
  transition: opacity .25s ease;
}
.ceij-dictionary-entry.is-open .ceij-entry-accent {
  opacity: 1;
}
.ceij-entry-initial {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: rgba(153, 0, 0, .08);
  border: 1px solid rgba(153, 0, 0, .15);
  color: #990000;
  font: 700 1.15rem/1 "Libre Baskerville", Georgia, serif;
}
.ceij-entry-original {
  color: #8b6b6b;
  font: italic .82rem/1.4 "Libre Baskerville", Georgia, serif;
}
.ceij-entry-toggle {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  flex: 0 0 auto;
  color: #990000;
  font: 600 .72rem/1 "Inter", sans-serif;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.ceij-entry-reading {
  background: linear-gradient(180deg, rgba(153, 0, 0, .025), transparent 110px);
}
.ceij-entry-content {
  max-width: 76ch;
  font-size: 1.04rem;
  line-height: 1.85;
}
.ceij-entry-content p {
  display: block;
  margin: 0 0 1.35em !important;
}
.ceij-entry-content p:last-child {
  margin-bottom: 0 !important;
}
.ceij-entry-content strong {
  color: #3c1010;
  font-weight: 700;
}
.ceij-entry-content ul,
.ceij-entry-content ol {
  margin: 0 0 1.35em 1.4em;
}
.ceij-entry-content ul {
  list-style: disc;
}
.ceij-entry-content ol {
  list-style: decimal;
}
.ceij-entry-source {
  margin-top: 1.75rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(153, 0, 0, .12);
  color: #806666;
  font: italic .78rem/1.5 "Inter", sans-serif;
}

/* Notas: preserva tamanho e alinhamento definidos no editor do WordPress. */
.ceij-note-content figure.wp-block-image,
.ceij-note-content .wp-block-image {
  max-width: 100%;
}
.ceij-note-content img {
  height: auto;
  max-width: 100%;
}
.ceij-note-content figure.aligncenter,
.ceij-note-content img.aligncenter {
  display: block;
  margin-left: auto !important;
  margin-right: auto !important;
}
.ceij-note-content figure.alignleft,
.ceij-note-content img.alignleft {
  float: left;
  margin: .4rem 1.5rem 1rem 0 !important;
}
.ceij-note-content figure.alignright,
.ceij-note-content img.alignright {
  float: right;
  margin: .4rem 0 1rem 1.5rem !important;
}
.ceij-note-content::after {
  content: "";
  display: table;
  clear: both;
}

/* Cards de livros: restringe o fallback do PDF à primeira página/capa.
   No Windows/Chrome o visualizador nativo de PDF pode desenhar barras de rolagem
   dentro do iframe mesmo com scrollbar=0. Aumentamos discretamente o iframe
   e deixamos o contêiner do card recortar as bordas direita/inferior, ocultando
   essas barras sem alterar a proporção visual da capa. */
.ceij-book-cover-frame {
  display: block;
  width: calc(100% + 24px) !important;
  height: calc(100% + 24px) !important;
  max-width: none !important;
  margin-right: -24px;
  margin-bottom: -24px;
  overflow: hidden !important;
  scrollbar-width: none;
}
.ceij-book-cover-frame::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

/* Correção consolidada: remover a faixa branca da página inicial */
body.home main.flex-1,
body.blog main.flex-1 {
  padding-top: 5rem !important;
}

/* Página individual da Biblioteca: padrão editorial das demais seções */
#ceij-library-detail {
  background: #fff;
  color: #3f2929;
}
#ceij-library-detail .ceij-library-hero {
  background: #990000;
  padding: 3rem 1.5rem;
}
#ceij-library-detail .ceij-library-hero-inner,
#ceij-library-detail .ceij-library-main {
  width: min(100% - 2rem, 1120px);
  margin-inline: auto;
}
#ceij-library-detail .ceij-library-back {
  display: inline-block;
  margin-bottom: 1.25rem;
  color: rgba(255,255,255,.72);
  text-decoration: none;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
#ceij-library-detail .ceij-library-title {
  margin: 0;
  color: #fff;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: clamp(2rem, 4vw, 3.5rem);
  line-height: 1.15;
  font-weight: 700;
}
#ceij-library-detail .ceij-library-author {
  margin-top: 1rem;
  color: rgba(255,255,255,.7);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
#ceij-library-detail .ceij-library-main {
  padding-block: 3rem 5rem;
}
#ceij-library-detail .ceij-library-cover {
  display: block;
  width: 100%;
  max-height: 560px;
  object-fit: contain;
  margin: 0 auto 2.5rem;
  border-radius: .55rem;
  background: #f5f1f1;
}
#ceij-library-detail .ceij-library-copy {
  max-width: 900px;
  margin-inline: auto;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 1.08rem;
  line-height: 1.85;
  color: #4a3535;
}
#ceij-library-detail .ceij-library-copy p {
  margin: 0 0 1.5rem !important;
  font: inherit !important;
  line-height: inherit !important;
}
#ceij-library-detail .ceij-library-copy h1,
#ceij-library-detail .ceij-library-copy h2,
#ceij-library-detail .ceij-library-copy h3 {
  font-family: "Libre Baskerville", Georgia, serif;
  line-height: 1.3;
  margin: 2.25rem 0 1rem;
}
#ceij-library-detail .ceij-library-copy img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 2rem auto;
  border-radius: .5rem;
}
#ceij-library-detail .ceij-library-viewer {
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 1px solid #e3d7d7;
}
#ceij-library-detail .ceij-library-viewer h2 {
  margin: 0 0 1.25rem;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: 1.6rem;
  color: #341c1c;
}
#ceij-library-detail .ceij-library-frame {
  width: 100%;
  height: min(78vh, 900px);
  min-height: 640px;
  border: 1px solid #d9cccc;
  border-radius: .55rem;
  background: #f3efef;
}
#ceij-library-detail .ceij-library-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .8rem;
  margin-top: 1.1rem;
}
#ceij-library-detail .ceij-library-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .8rem 1.15rem;
  border-radius: .4rem;
  border: 1px solid #990000;
  color: #990000;
  background: #fff;
  text-decoration: none;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-weight: 600;
}
#ceij-library-detail .ceij-library-button.primary {
  color: #fff;
  background: #990000;
}
@media (max-width: 767px) {
  #ceij-library-detail .ceij-library-frame {
    min-height: 520px;
    height: 70vh;
  }
  #ceij-library-detail .ceij-library-copy {
    font-size: 1rem;
  }
}

/* ==============================================================
   PÁGINA INICIAL — ÁREA DE NOTÍCIAS MAIS LARGA
   Amplia apenas os contêineres que ficam dentro de <main> na home.
   O cabeçalho, o menu e as páginas internas permanecem inalterados.
   ============================================================== */
@media (min-width: 1024px) {
  body.home #root main.flex-1 .max-w-7xl,
  body.blog #root main.flex-1 .max-w-7xl {
    width: calc(100vw - 4rem) !important;
    max-width: 96rem !important; /* 1536 px */
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* As colunas e os cards aproveitam integralmente a nova largura. */
  body.home #root main.flex-1 .grid,
  body.blog #root main.flex-1 .grid {
    width: 100% !important;
    max-width: none !important;
  }

  body.home #root main.flex-1 article,
  body.home #root main.flex-1 article img,
  body.blog #root main.flex-1 article,
  body.blog #root main.flex-1 article img {
    max-width: none !important;
  }

  body.home #root main.flex-1 article img,
  body.blog #root main.flex-1 article img {
    width: 100% !important;
  }
}

@media (min-width: 1600px) {
  body.home #root main.flex-1 .max-w-7xl,
  body.blog #root main.flex-1 .max-w-7xl {
    width: calc(100vw - 5rem) !important;
    max-width: 103rem !important; /* 1648 px */
  }
}

@media (max-width: 1023px) {
  body.home #root main.flex-1 .max-w-7xl,
  body.blog #root main.flex-1 .max-w-7xl {
    width: calc(100% - 2rem) !important;
  }
}

/* ============================================================
   CEIJ-BR — Nova arte da capa principal (v4.3.0)
   ============================================================ */
body.home main section.relative.min-h-\[75vh\],
body.blog main section.relative.min-h-\[75vh\] {
  min-height: 80vh !important;
  isolation: isolate;
}

/* Imagem e sobreposições combinadas: gradiente horizontal + vertical. */
body.home main section.relative.min-h-\[75vh\] > .absolute.inset-0 > .absolute.inset-0,
body.blog main section.relative.min-h-\[75vh\] > .absolute.inset-0 > .absolute.inset-0 {
  background:
    linear-gradient(180deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,0) 50%, rgba(0,0,0,.70) 100%),
    linear-gradient(90deg, rgba(139,26,26,.95) 0%, rgba(139,26,26,.75) 50%, rgba(139,26,26,.30) 100%) !important;
}

/* Grid da capa. */
body.home main section.relative.min-h-\[75vh\] > .relative.w-full,
body.blog main section.relative.min-h-\[75vh\] > .relative.w-full {
  padding-top: 5.5rem !important;
  padding-bottom: 5rem !important;
}
body.home main section.relative.min-h-\[75vh\] > .relative.w-full > div,
body.blog main section.relative.min-h-\[75vh\] > .relative.w-full > div {
  width: min(1180px, calc(100% - 3rem));
  margin-inline: auto;
  gap: 4rem !important;
}

/* Coluna esquerda: tudo centralizado. */
body.home main section.relative.min-h-\[75vh\] .lg\:col-span-3,
body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-3 {
  align-items: center !important;
  text-align: center !important;
}

/* Logo isolado e ampliado. */
body.home main section.relative.min-h-\[75vh\] .lg\:col-span-3 > img,
body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-3 > img {
  width: 176px !important;
  height: 176px !important;
  margin: 0 auto 2rem !important;
  filter: drop-shadow(0 22px 30px rgba(0,0,0,.45)) drop-shadow(0 7px 12px rgba(0,0,0,.35));
}

/* Descrição. */
body.home main section.relative.min-h-\[75vh\] .lg\:col-span-3 > p,
body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-3 > p {
  max-width: 36rem !important;
  margin: 0 auto 2.5rem !important;
  color: rgba(255,255,255,.75) !important;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: 1rem !important;
  line-height: 1.8 !important;
  text-align: center !important;
}

/* Botões colados, retilíneos e centralizados. */
body.home main section.relative.min-h-\[75vh\] .lg\:col-span-3 > div.flex,
body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-3 > div.flex {
  gap: 0 !important;
  justify-content: center !important;
}
body.home main section.relative.min-h-\[75vh\] .lg\:col-span-3 a[href="/sobre"],
body.home main section.relative.min-h-\[75vh\] .lg\:col-span-3 a[href="/biblioteca"],
body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-3 a[href="/sobre"],
body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-3 a[href="/biblioteca"] {
  height: 56px !important;
  border-radius: 0 !important;
  padding-inline: 24px !important;
  gap: .65rem !important;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: .78rem !important;
  font-weight: 800 !important;
  letter-spacing: .10em !important;
  text-transform: uppercase !important;
}
body.home main section.relative.min-h-\[75vh\] .lg\:col-span-3 a[href="/sobre"],
body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-3 a[href="/sobre"] {
  background: #fff !important;
  border: 1px solid #fff !important;
  color: #8b1a1a !important;
}
body.home main section.relative.min-h-\[75vh\] .lg\:col-span-3 a[href="/sobre"]:hover,
body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-3 a[href="/sobre"]:hover {
  background: rgba(255,255,255,.90) !important;
}
body.home main section.relative.min-h-\[75vh\] .lg\:col-span-3 a[href="/biblioteca"],
body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-3 a[href="/biblioteca"] {
  background: #8b1a1a !important;
  border: 1px solid rgba(255,255,255,.95) !important;
  color: #fff !important;
}
body.home main section.relative.min-h-\[75vh\] .lg\:col-span-3 a[href="/biblioteca"]:hover,
body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-3 a[href="/biblioteca"]:hover {
  background: #a31919 !important;
}

/* Card NOTAS. */
body.home main section.relative.min-h-\[75vh\] .lg\:col-span-2 > div,
body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-2 > div {
  background: rgba(0,0,0,.40) !important;
  border: 1px solid rgba(255,255,255,.30) !important;
  border-radius: 0 !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  overflow: hidden;
  padding-top: 0 !important;
}
body.home main section.relative.min-h-\[75vh\] .lg\:col-span-2 h3,
body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-2 h3 {
  min-height: 48px;
  margin: 0 -1.5rem 0 !important;
  padding: 0 1.25rem !important;
  background: #fff !important;
  color: #8b1a1a !important;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: .82rem !important;
  font-weight: 800 !important;
  letter-spacing: .12em !important;
  display: flex !important;
  align-items: center !important;
}
body.home main section.relative.min-h-\[75vh\] .lg\:col-span-2 h3 > div,
body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-2 h3 > div {
  background: #8b1a1a !important;
}
body.home main section.relative.min-h-\[75vh\] .lg\:col-span-2 h3 + div,
body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-2 h3 + div {
  margin-top: 0 !important;
  padding-top: .15rem;
}
body.home main section.relative.min-h-\[75vh\] .lg\:col-span-2 h3 + div > *,
body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-2 h3 + div > * {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
  border-color: rgba(255,255,255,.10) !important;
}
body.home main section.relative.min-h-\[75vh\] .lg\:col-span-2 p,
body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-2 p {
  color: rgba(255,255,255,.85) !important;
}
body.home main section.relative.min-h-\[75vh\] .lg\:col-span-2 .group:hover p,
body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-2 .group:hover p {
  color: #fff !important;
}
body.home main section.relative.min-h-\[75vh\] .lg\:col-span-2 span.text-xs,
body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-2 span.text-xs {
  color: rgba(255,255,255,.70) !important;
}

/* Faixa acadêmica inferior inserida logo após a capa. */
.ceij-portal-strip{background:#18181b;color:#fff;}
.ceij-portal-strip-inner{width:min(1180px,calc(100% - 3rem));min-height:96px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.25rem 0;}
.ceij-portal-identity{display:flex;align-items:center;gap:1rem;}
.ceij-portal-bar{display:block;width:4px;height:48px;background:#b91c1c;}
.ceij-portal-kicker{color:#d4d4d8;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;}
.ceij-portal-name{margin-top:.2rem;color:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1rem;font-weight:700;}
.ceij-portal-markers{display:flex;align-items:center;justify-content:flex-end;gap:1.8rem;flex-wrap:wrap;}
.ceij-portal-marker{display:inline-flex;align-items:center;gap:.55rem;color:#d4d4d8;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;}
.ceij-portal-marker i{width:6px;height:6px;background:#b91c1c;border-radius:50%;display:inline-block;}

@media (min-width:1024px){
  body.home main section.relative.min-h-\[75vh\] .lg\:col-span-3 > img,
  body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-3 > img {width:224px!important;height:224px!important;}
  body.home main section.relative.min-h-\[75vh\] .lg\:col-span-3 > p,
  body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-3 > p {font-size:1.125rem!important;}
}
@media (max-width:1023px){
  .ceij-portal-strip-inner{align-items:flex-start;flex-direction:column;}
  .ceij-portal-markers{justify-content:flex-start;gap:1rem 1.4rem;}
}
@media (max-width:640px){
  body.home main section.relative.min-h-\[75vh\] > .relative.w-full > div,
  body.blog main section.relative.min-h-\[75vh\] > .relative.w-full > div {width:min(100% - 2rem,1180px);}
  body.home main section.relative.min-h-\[75vh\] .lg\:col-span-3 > div.flex,
  body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-3 > div.flex {width:100%;}
  body.home main section.relative.min-h-\[75vh\] .lg\:col-span-3 a[href="/sobre"],
  body.home main section.relative.min-h-\[75vh\] .lg\:col-span-3 a[href="/biblioteca"],
  body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-3 a[href="/sobre"],
  body.blog main section.relative.min-h-\[75vh\] .lg\:col-span-3 a[href="/biblioteca"] {flex:1 1 100%;width:100%;}
  .ceij-portal-strip-inner{width:min(100% - 2rem,1180px);}
}

/* CEIJ-BR — capa final 2026-08 */
.ceij-final-hero .ceij-hero-gradient-h{background:linear-gradient(90deg,rgba(139,26,26,.95) 0%,rgba(139,26,26,.75) 50%,rgba(139,26,26,.30) 100%)}
.ceij-final-hero .ceij-hero-gradient-v{background:linear-gradient(180deg,rgba(0,0,0,.10) 0%,rgba(0,0,0,0) 50%,rgba(0,0,0,.70) 100%)}
.ceij-final-hero .ceij-hero-diagonal{height:.6rem;background:#fff;clip-path:polygon(0 0,100% 0,100% .32rem,0 .6rem);z-index:2;pointer-events:none}
.ceij-final-hero .ceij-hero-btn{border-radius:0!important;min-width:230px}
.ceij-final-hero .ceij-hero-btn-light{border:1px solid #fff}
.ceij-notes-card{box-shadow:0 20px 50px rgba(0,0,0,.25)}
.ceij-notes-head>div{background:#8b1a1a!important}
.ceij-notes-list>a,.ceij-notes-list>div{padding-top:1rem!important;padding-bottom:1rem!important}
.ceij-academic-strip{position:relative;z-index:10}
@media (max-width:1023px){.ceij-final-hero .ceij-hero-btn{min-width:0;flex:1 1 220px}.ceij-final-hero{min-height:80vh}}

/* CEIJ-BR — ajuste visual da capa conforme referência final */
@media (min-width:1024px){
  .ceij-final-hero{min-height:calc(100vh - 5rem)!important;}
  .ceij-final-hero > .relative.w-full{padding-top:5.5rem!important;padding-bottom:5.5rem!important;}
  .ceij-final-hero > .relative.w-full > div{max-width:1280px!important;margin-left:auto!important;margin-right:auto!important;gap:6rem!important;}
  .ceij-final-hero .lg\:col-span-3{align-items:center!important;}
  .ceij-final-hero .lg\:col-span-3 > img{width:256px!important;height:256px!important;margin-bottom:3rem!important;}
  .ceij-final-hero .lg\:col-span-2{width:100%!important;}
  .ceij-notes-card{max-width:470px!important;margin-left:auto!important;}
}
.ceij-final-hero .ceij-hero-btn{height:56px!important;}
.ceij-final-hero .ceij-hero-btn-light{min-width:290px!important;}
.ceij-final-hero .ceij-hero-btn-dark{min-width:290px!important;}

/* ============================================================
   CAPA CEIJ-BR — valores finais exatos fornecidos pelo usuário
   NÃO ALTERAR cores, tamanhos ou espaçamentos deste bloco.
   ============================================================ */
.ceij-final-hero {
  position: relative !important;
  min-height: 80vh !important;
  display: flex !important;
  align-items: center !important;
  overflow: hidden !important;
}
.ceij-final-hero > .absolute.inset-0 { position:absolute!important; inset:0!important; }
.ceij-final-hero > .absolute.inset-0 > img { width:100%!important; height:100%!important; object-fit:cover!important; }
.ceij-final-hero .ceij-hero-gradient-h {
  position:absolute!important; inset:0!important;
  background: linear-gradient(to right,
    rgba(138, 0, 0, 0.95) 0%,
    rgba(138, 0, 0, 0.75) 50%,
    rgba(138, 0, 0, 0.30) 100%) !important;
}
.ceij-final-hero .ceij-hero-gradient-v {
  position:absolute!important; inset:0!important;
  background: linear-gradient(to top,
    rgba(0,0,0,0.70) 0%,
    transparent 50%,
    rgba(0,0,0,0.10) 100%) !important;
}
.ceij-final-hero .ceij-hero-diagonal {
  position:absolute!important; top:0!important; left:0!important; right:0!important; z-index:10!important;
  pointer-events:none!important; background:#ffffff!important; height:1px!important;
  clip-path: polygon(0 0, 100% 0, 100% 5.12px, 0 9.6px) !important;
}
.ceij-final-hero > .relative.w-full {
  position:relative!important;
  width:100%!important;
  padding-top:80px!important;
  padding-bottom:80px!important;
}
.ceij-final-hero > .relative.w-full > div {
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:48px!important;
  align-items:center!important;
  justify-content:center!important;
  padding-left:16px!important;
  padding-right:16px!important;
}
@media (min-width:1024px) {
  .ceij-final-hero > .relative.w-full > div {
    display:grid!important;
    grid-template-columns:3fr 2fr!important;
    gap:48px!important;
    padding-left:24px!important;
    padding-right:24px!important;
  }
}
.ceij-final-hero .lg\:col-span-3 {
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  text-align:center!important;
}
.ceij-final-hero .lg\:col-span-3 > img {
  width:208px!important;
  height:208px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 25px 50px rgba(0,0,0,0.6))!important;
  flex-shrink:0!important;
  margin-bottom:48px!important;
}
@media (min-width:1024px) {
  .ceij-final-hero .lg\:col-span-3 > img { width:256px!important; height:256px!important; }
}
.ceij-final-hero .lg\:col-span-3 > div.flex {
  display:flex!important;
  flex-wrap:wrap!important;
  gap:0!important;
  justify-content:center!important;
}
.ceij-final-hero .ceij-hero-btn {
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  height:56px!important;
  min-width:0!important;
  padding:0 24px!important;
  font-family:'Inter',sans-serif!important;
  font-weight:700!important;
  font-size:14px!important;
  text-transform:uppercase!important;
  letter-spacing:.05em!important;
  transition:background-color .2s!important;
  text-decoration:none!important;
  border-radius:0!important;
}
.ceij-final-hero .ceij-hero-btn-light {
  background:#ffffff!important;
  color:#8A0000!important;
  border:0!important;
  box-shadow:none!important;
}
.ceij-final-hero .ceij-hero-btn-light:hover { background:rgba(255,255,255,.90)!important; }
.ceij-final-hero .ceij-hero-btn-dark {
  background:#8A0000!important;
  color:#ffffff!important;
  border:0!important;
  box-shadow:inset 0 0 0 1px #ffffff!important;
}
.ceij-final-hero .ceij-hero-btn-dark:hover { background:#B30000!important; }
.ceij-final-hero .ceij-notes-card {
  display:none!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
  background:rgba(0,0,0,.40)!important;
  border:1px solid rgba(255,255,255,.30)!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:0!important;
  overflow:hidden!important;
  max-width:none!important;
  margin-left:0!important;
}
@media (min-width:1024px) { .ceij-final-hero .ceij-notes-card { display:block!important; } }
.ceij-final-hero .ceij-notes-head {
  background:#ffffff!important;
  color:#8A0000!important;
  padding:8px 20px!important;
  min-height:0!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  font-family:'Inter',sans-serif!important;
  font-weight:700!important;
  font-size:12px!important;
  text-transform:uppercase!important;
  letter-spacing:.05em!important;
}
.ceij-final-hero .ceij-notes-head > div {
  width:6px!important; height:6px!important; border-radius:50%!important; background:#8A0000!important;
}
.ceij-final-hero .ceij-notes-list {
  padding:16px 20px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
}
.ceij-final-hero .ceij-notes-list > a,
.ceij-final-hero .ceij-notes-list > div {
  display:block!important;
  padding-top:0!important;
  padding-bottom:12px!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
  text-decoration:none!important;
  margin:0!important;
}
.ceij-final-hero .ceij-notes-list > :last-child { border-bottom:0!important; padding-bottom:0!important; }
.ceij-final-hero .ceij-notes-list p {
  font-family:'Inter',sans-serif!important;
  font-size:14px!important;
  color:rgba(255,255,255,.85)!important;
  line-height:1.3!important;
  margin:0!important;
  transition:color .2s!important;
}
.ceij-final-hero .ceij-notes-list > a:hover p,
.ceij-final-hero .ceij-notes-list > div:hover p { color:#ffffff!important; }
.ceij-final-hero .ceij-notes-list span {
  display:block!important;
  margin-top:4px!important;
  font-family:'Inter',sans-serif!important;
  font-weight:600!important;
  font-size:12px!important;
  color:rgba(255,255,255,.70)!important;
}
.ceij-final-hero > .absolute.bottom-0 {
  position:absolute!important; bottom:0!important; left:0!important; right:0!important;
  height:96px!important;
  background:linear-gradient(to top,rgba(0,0,0,.60),transparent)!important;
}
.ceij-academic-strip {
  background:#18181b!important;
  padding:24px 16px!important;
}
@media (min-width:640px) { .ceij-academic-strip { padding:24px 24px!important; } }
.ceij-academic-strip > div {
  max-width:1280px!important;
  margin:0 auto!important;
  padding:0!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
}
.ceij-academic-strip > div > div:first-child { display:flex!important; align-items:center!important; gap:12px!important; }
.ceij-academic-strip > div > div:first-child > div:first-child {
  width:4px!important; height:32px!important; background:#8A0000!important; border-radius:9999px!important;
}
.ceij-academic-strip > div > div:first-child > div:last-child > div:first-child {
  font-family:'Inter',sans-serif!important; font-size:12px!important; color:rgba(255,255,255,.50)!important;
  text-transform:uppercase!important; letter-spacing:.1em!important; margin:0!important; font-weight:400!important;
}
.ceij-academic-strip > div > div:first-child > div:last-child > div:last-child {
  font-family:'Libre Baskerville',Georgia,serif!important; font-size:14px!important; font-weight:700!important; color:#ffffff!important; margin:0!important;
}
.ceij-academic-strip > div > div:last-child {
  display:flex!important; align-items:center!important; gap:24px!important;
  font-family:'Inter',sans-serif!important; font-size:12px!important; color:rgba(255,255,255,.40)!important;
  text-transform:uppercase!important; letter-spacing:.05em!important;
}
.ceij-academic-strip > div > div:last-child > span { display:flex!important; align-items:center!important; gap:6px!important; color:rgba(255,255,255,.40)!important; }
.ceij-academic-strip > div > div:last-child > span > span {
  display:inline-block!important; width:6px!important; height:6px!important; border-radius:50%!important; background:rgba(138,0,0,.60)!important;
}

/* CEIJ-BR — correção definitiva da posição do card NOTAS (desktop)
   Mantém todos os valores visuais da capa; altera apenas o posicionamento. */
@media (min-width:1024px) {
  .ceij-final-hero > .relative.w-full {
    position: relative !important;
  }
  .ceij-final-hero > .relative.w-full > div {
    position: relative !important;
    display: block !important;
    min-height: 560px !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
  .ceij-final-hero .lg\:col-span-3 {
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 60% !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
  .ceij-final-hero .lg\:col-span-2 {
    display: block !important;
    position: absolute !important;
    right: 24px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: calc(40% - 48px) !important;
    max-width: 570px !important;
    margin: 0 !important;
  }
  .ceij-final-hero .ceij-notes-card {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
  }
}

/* CEIJ-BR — layout editorial mais contido em telas largas
   Cria margens laterais brancas maiores e reduz discretamente a escala visual
   do conteúdo, sem alterar a capa principal. */
@media (min-width: 1280px) {
  /* Contêineres principais do site */
  .max-w-7xl {
    max-width: 1180px !important;
  }

  /* Mais respiro nas laterais em desktops largos */
  .max-w-7xl.mx-auto.px-4,
  .max-w-7xl.mx-auto.px-4.sm\:px-6 {
    padding-left: 32px !important;
    padding-right: 32px !important;
  }

  /* Destaque principal de notícias da home: ligeiramente mais compacto */
  section.bg-white.py-14 .grid.lg\:grid-cols-2 {
    column-gap: 0 !important;
  }
  section.bg-white.py-14 h2.font-heading {
    font-size: 1.75rem !important;
    line-height: 1.18 !important;
  }
  section.bg-white.py-14 h4.font-heading {
    font-size: 0.95rem !important;
    line-height: 1.28 !important;
  }
  section.bg-white.py-14 .lg\:pr-10 {
    padding-right: 32px !important;
  }
  section.bg-white.py-14 .lg\:pl-10 {
    padding-left: 32px !important;
  }
}

/* Em monitores muito largos, reforça a sensação de página editorial centralizada. */
@media (min-width: 1600px) {
  .max-w-7xl {
    max-width: 1160px !important;
  }
}
