/*
Theme Name: GPCIn
Theme URI: https://gpcin.org
Author: José Ubiratan da Rosa Filho
Description: Tema próprio do Núcleo de Estudos e Pesquisas sobre Competência em Informação.
Version: 5.3
Requires at least: 6.0
Requires PHP: 8.0
License: GNU General Public License v2 or later
Text Domain: gpcin
*/

:root {
  color-scheme: light only;
  --roxo: #4A2BD0;
  --roxo-escuro: #33199F;
  --ciano: #1391AC;
  --ambar: #B87708;
  --coral: #C1355A;
  --tinta: #1B1730;
  --tinta-media: #56506E;
  --tinta-fraca: #8B85A2;
  --papel: #FFFFFF;
  --papel-2: #F6F4FC;
  --linha: #E5E1F0;
  --gradiente: linear-gradient(100deg, #6B3BE8 0%, #3F6FE0 48%, #29C2DD 100%);
  --largura: 72rem;
  --prosa: 40rem;
}

*, *::before, *::after { box-sizing: border-box; }

html { scroll-padding-top: 6rem; }

body {
  margin: 0;
  background-color: #FFFFFF;
  background: var(--papel);
  color: var(--tinta);
  font-family: "Inter", system-ui, sans-serif;
  font-size: 1rem;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3 {
  font-family: "Newsreader", Georgia, serif;
  font-weight: 500;
  line-height: 1.15;
  margin: 0 0 0.6em;
  letter-spacing: -0.015em;
}

h1 { font-size: clamp(2.2rem, 5vw, 3.6rem); }
h2 { font-size: clamp(1.6rem, 3.2vw, 2.3rem); }
h3 { font-size: 1.2rem; }

p { margin: 0 0 1.1em; }
img { max-width: 100%; height: auto; display: block; }
a { color: var(--roxo); text-underline-offset: 0.18em; }
a:hover { color: var(--roxo-escuro); }
:focus-visible { outline: 3px solid var(--ciano); outline-offset: 3px; }

.envelope { width: 100%; max-width: var(--largura); margin-inline: auto; padding-inline: 1.5rem; }

.pular { position: absolute; left: -9999px; }
.pular:focus { left: 1rem; top: 1rem; z-index: 99; background: #fff; color: var(--roxo); padding: .6rem 1rem; border-radius: 6px; }

/* ---------- topo ---------- */

.topo { position: sticky; top: 0; z-index: 20; background: var(--gradiente); color: #fff; }
.admin-bar .topo { top: 32px; }
@media (max-width: 782px) { .admin-bar .topo { top: 46px; } }


.topo__interno { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; padding-block: 1rem; flex-wrap: wrap; }

.marca { display: flex; align-items: center; gap: .8rem; text-decoration: none; color: #fff; }
.marca img { width: 52px; height: 52px; flex: none; }
.marca__texto { display: block; padding-left: .8rem; border-left: 1px solid currentColor; opacity: 1; }
.marca__nome { display: block; font-family: "Newsreader", serif; font-size: 1.5rem; line-height: 1.05; font-weight: 500; }
.marca__linha { display: block; font-size: .72rem; letter-spacing: .01em; opacity: .68; margin-top: .15rem; line-height: 1.2; }

.menu-abrir { display: none; align-items: center; gap: .5rem; background: none; border: 1px solid rgba(255,255,255,.6); border-radius: 999px; padding: .45rem .9rem; font: inherit; font-size: .9rem; color: #fff; cursor: pointer; }
.menu-abrir__barras { width: 1rem; height: 2px; background: currentColor; box-shadow: 0 -5px 0 currentColor, 0 5px 0 currentColor; display: block; }
.navegacao ul { list-style: none; display: flex; gap: .35rem; margin: 0; padding: 0; flex-wrap: wrap; }
.navegacao a { text-decoration: none; color: rgba(255,255,255,.92); font-size: .95rem; padding: .45rem .9rem; border-radius: 999px; display: block; }
.navegacao a:hover, .navegacao .current-menu-item > a, .navegacao .current_page_item > a { background: rgba(255,255,255,.2); color: #fff; }
.topo__redes{display:flex;gap:.35rem}.topo__redes a{align-items:center;border:1px solid rgba(255,255,255,.38);border-radius:50%;color:#fff;display:flex;font-family:Arial,sans-serif;font-size:.78rem;font-weight:bold;height:1.8rem;justify-content:center;text-decoration:none;width:1.8rem}.topo__redes a:hover{background:rgba(255,255,255,.17)}
.topo__pesquisa { border-top:1px solid rgba(255,255,255,.16); background:rgba(15,18,65,.12); padding:.7rem 0; }
.busca--topo { max-width:34rem; margin-left:auto; }
.busca--topo input { background:rgba(255,255,255,.96); border:0; }
.busca--topo button { background:#fff; color:var(--roxo); font-weight:700; }
.busca--topo button:hover { background:#f0ecff; color:var(--roxo-escuro); }

/* ---------- capa ---------- */

.capa { background: var(--gradiente); }
.capa { color: #fff; padding-block: clamp(3rem, 8vw, 5.5rem) clamp(4rem, 9vw, 7rem); text-align: center; }
.capa h1 { color: #fff; max-width: 18ch; margin-inline: auto; margin-bottom: 1.1rem; }
.capa p { font-size: clamp(1rem, 1.6vw, 1.15rem); max-width: 50ch; margin-inline: auto; margin-bottom: 2rem; color: rgba(255,255,255,.95); }
.capa__redes { display:flex; gap:.65rem; justify-content:center; margin-top:-.6rem; }
.capa__redes a { align-items:center; border:1px solid rgba(255,255,255,.55); border-radius:50%; color:#fff; display:flex; font-family:Arial,sans-serif; font-size:.85rem; font-weight:bold; height:2.15rem; justify-content:center; text-decoration:none; transition:background .2s ease; width:2.15rem; }
.capa__redes a:hover { background:rgba(255,255,255,.18); }
.capa__redes svg { height:1.15rem; width:1.15rem; }
.capa__redes .icone-lattes { font-family:"Newsreader",Georgia,serif; font-size:1.25rem; }

.botoes { display: flex; gap: .7rem; justify-content: center; flex-wrap: wrap; }
.botao { display: inline-block; text-decoration: none; font-size: .95rem; font-weight: 500; padding: .8rem 1.6rem; border-radius: 999px; }
.botao--cheio { background: #fff; color: var(--roxo); }
.botao--cheio:hover { background: #F0ECFF; color: var(--roxo-escuro); }
.botao--vazado { border: 1px solid rgba(255,255,255,.6); color: #fff; }
.botao--vazado:hover { background: rgba(255,255,255,.14); color: #fff; }

/* ---------- secoes ---------- */

.secao { padding-block: clamp(3rem, 7vw, 5rem); }
.secao--clara { background: var(--papel-2); }
.secao--dimensoes { background: #9bbdf4; }
.secao__cabeca { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin-bottom: 2rem; flex-wrap: wrap; }
.secao__cabeca h2 { margin: 0; }
.secao__cabeca a { font-size: .95rem; }

/* ---------- o nucleo ---------- */

.nucleo { display: grid; gap: 2rem; align-items: start; }
@media (min-width: 52rem) { .nucleo { grid-template-columns: minmax(0,1.35fr) minmax(16rem,.65fr); gap: clamp(3rem,7vw,7rem); } }
.nucleo__selo { color: var(--roxo)!important; font-size:.75rem!important; font-weight:700; letter-spacing:.14em; margin-bottom:1rem!important; text-transform:uppercase; }
.nucleo__texto h2 { font-size:clamp(2rem,4vw,3.35rem); max-width:15ch; margin-bottom:.7rem; }
.nucleo__abertura { color:var(--roxo)!important; font-family:"Newsreader",Georgia,serif; font-size:clamp(1.22rem,2.1vw,1.55rem)!important; line-height:1.35!important; max-width:38rem; margin-bottom:1.7rem!important; }
.nucleo p { font-size: 1.1rem; color: var(--tinta-media); line-height: 1.75; }
.nucleo p:last-child { margin-bottom: 0; }
.nucleo__simbolo { background:linear-gradient(145deg,#27185e,#172c62); border-radius:18px; color:#fff; padding:2rem; position:relative; overflow:hidden; }
.nucleo__simbolo::before { content:""; position:absolute; width:13rem; height:13rem; right:-6rem; top:-7rem; border:1px solid rgba(255,255,255,.15); border-radius:50%; }
.nucleo__simbolo img { width:100%; max-width:9rem; margin:0 0 1.5rem; position:relative; }
.nucleo__simbolo h3 { color:#fff; font-size:1.45rem; margin-bottom:.55rem; }
.nucleo__simbolo p { color:rgba(255,255,255,.78); font-size:.94rem; line-height:1.65; margin:0; }

/* ---------- dimensoes ---------- */

.dimensoes { display: grid; grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr)); gap: 1rem; }
.dimensao { border-radius: 14px; padding: 1.6rem 1.45rem; box-shadow: 0 8px 20px rgba(40,53,110,.08); }
.dimensao__bolha { width: 2rem; height: 2rem; border-radius: 50%; margin-bottom: 1rem; }
.dimensao h3 { margin-bottom: .4rem; font-size: 1.2rem; }
.dimensao p { margin: 0; font-size: .96rem; line-height: 1.6; }

.dimensao--tecnica { background: #EFEBFE; }
.dimensao--tecnica .dimensao__bolha { background: #7F60EC; }
.dimensao--tecnica h3 { color: #2E1B84; }
.dimensao--tecnica p { color: #4A2BD0; }

.dimensao--estetica { background: #FDF1DD; }
.dimensao--estetica .dimensao__bolha { background: #EDA22B; }
.dimensao--estetica h3 { color: #5E3A05; }
.dimensao--estetica p { color: #8C5906; }

.dimensao--etica { background: #FCEAF0; }
.dimensao--etica .dimensao__bolha { background: #E16087; }
.dimensao--etica h3 { color: #6E1E39; }
.dimensao--etica p { color: #9C2F52; }

.dimensao--politica { background: #E1F4F8; }
.dimensao--politica .dimensao__bolha { background: #2CB4CE; }
.dimensao--politica h3 { color: #0A4D5B; }
.dimensao--politica p { color: #0F7288; }

/* ---------- trajetoria ---------- */

.trajetoria { position: relative; margin-top: 1rem; max-width: 60rem; margin-inline: auto; }
.trajetoria::before { content: ""; position: absolute; left: 1rem; top: 0; bottom: 0; width: 2px; background: var(--linha); }

.momento { position: relative; padding-left: 3.2rem; padding-bottom: 3.5rem; display: grid; gap: 1.5rem; }
.momento::before { content: ""; position: absolute; left: .55rem; top: .45rem; width: 1rem; height: 1rem; border-radius: 50%; background: var(--gradiente); border: 3px solid var(--papel); }
.secao--clara .momento::before { border-color: var(--papel-2); }

@media (min-width: 52rem) {
  .trajetoria::before { left: 50%; transform: translateX(-1px); }
  .momento { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: clamp(2.5rem,6vw,4.5rem); padding-left: 0; align-items: center; }
  .momento::before { left: 50%; transform: translateX(-50%); top: 2rem; }
  .momento:nth-child(even) .momento__foto { order: 2; }
}

.momento__ano { font-family: "Newsreader", serif; font-size: 2.4rem; line-height: 1; color: var(--roxo); margin: 0 0 .2rem; }
.momento__idade { font-size: .85rem; color: var(--tinta-fraca); margin: 0 0 .8rem; }
.momento__texto p { font-size: 1.05rem; line-height: 1.7; color: var(--tinta-media); margin: 0; }
.momento__foto img { border-radius: 14px; width: 100%; aspect-ratio: 4/3; object-fit: contain; object-position: center; background: #fff; box-shadow: 0 8px 22px rgba(40,30,80,.06); }
.secao--clara .momento__foto img { background: #fff; }
.momento__vazio { aspect-ratio: 4/3; border-radius: 14px; background: var(--papel-2); border: 1px dashed var(--linha); }
.secao--clara .momento__vazio { background: #fff; }

/* ---------- destaque ---------- */

.destaque { border-radius: 16px; overflow: hidden; background: #fff; border: 1px solid var(--linha); display: grid; }
@media (min-width: 52rem) { .destaque { grid-template-columns: 1.15fr 1fr; align-items: stretch; } }
.destaque__imagem { min-height: 15rem; background: var(--papel-2); }
.destaque__imagem img { width: 100%; height: 100%; object-fit: cover; }
.destaque__corpo { padding: 2rem; align-self: center; }
.destaque h2 { font-size: clamp(1.3rem, 2.2vw, 1.7rem); margin-bottom: .6rem; }
.destaque h2 a { color: var(--tinta); text-decoration: none; }
.destaque h2 a:hover { text-decoration: underline; }
.destaque p { color: var(--tinta-media); font-size: .95rem; margin-bottom: 0; }

/* ---------- numeros ---------- */

.numeros { display: grid; grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr)); gap: 1rem; margin-bottom: 2.5rem; }
.numero { background: #fff; border: 1px solid var(--linha); border-radius: 14px; padding: 1.4rem 1.3rem; }
.numero strong { display: block; font-family: "Newsreader", serif; font-size: 2.4rem; line-height: 1; font-weight: 500; margin-bottom: .3rem; }
.numero span { display: block; font-size: .95rem; font-weight: 500; }
.numero small { display: block; font-size: .82rem; color: var(--tinta-fraca); margin-top: .2rem; }
.numero--artigo strong { color: var(--roxo); }
.numero--livro strong { color: var(--ambar); }
.numero--capitulo strong { color: var(--coral); }
.numero--evento strong { color: var(--ciano); }
.numero--premio strong { color: #8C5906; }

/* ---------- lista ---------- */

.producao { border-top: 1px solid var(--linha); }
.item { display: grid; grid-template-columns: 3.4rem 1fr; gap: 0 1rem; padding-block: 1.3rem; border-bottom: 1px solid var(--linha); align-items: start; }
.item__ano { font-size: .82rem; color: var(--tinta-fraca); padding-top: .3rem; font-variant-numeric: tabular-nums; }
.item__titulo { font-family: "Newsreader", serif; font-size: 1.12rem; font-weight: 500; line-height: 1.35; margin: 0 0 .3rem; }
.item__titulo a { color: var(--tinta); text-decoration: none; }
.item__titulo a:hover { text-decoration: underline; }
.item__meta { font-size: .82rem; margin: 0; }
.tipo { display: inline-flex; align-items: center; gap: .45rem; padding: .15rem .7rem .15rem .5rem; border-radius: 999px; font-size: .78rem; }
.tipo::before { content: ""; width: .5rem; height: .5rem; border-radius: 50%; background: currentColor; }
.tipo--artigo { background: #EFEBFE; color: #4A2BD0; }
.tipo--livro { background: #FDF1DD; color: #8C5906; }
.tipo--capitulo { background: #FCEAF0; color: #9C2F52; }
.tipo--evento { background: #E1F4F8; color: #0F7288; }
.tipo--nota { background: #F1EFF6; color: #56506E; }
.tipo--premio { background: #FDF1DD; color: #8C5906; }

/* ---------- conteudo ---------- */

.conteudo { padding-block: clamp(2.5rem, 6vw, 4rem); }
.conteudo__cabeca { max-width: var(--prosa); margin-bottom: 2rem; }
.conteudo__meta { font-size: .88rem; color: var(--tinta-media); margin-bottom: .8rem; }
.prosa { max-width: var(--prosa); font-size: 1.08rem; line-height: 1.75; }
.prosa img { margin-block: 1.5rem; border-radius: 12px; }
.prosa blockquote { margin: 1.6rem 0; padding-left: 1.2rem; border-left: 3px solid var(--roxo); color: var(--tinta-media); }

/* ---------- busca / paginacao ---------- */

.busca { display: flex; gap: .5rem; max-width: 28rem; }
.busca input[type="search"] { flex: 1; font: inherit; font-size: .95rem; padding: .6rem .9rem; border: 1px solid var(--linha); border-radius: 8px; }
.busca button { font: inherit; font-size: .95rem; padding: .6rem 1.2rem; border: none; background: var(--roxo); color: #fff; border-radius: 8px; cursor: pointer; }
.busca button:hover { background: var(--roxo-escuro); }
.busca-destaque { max-width:38rem; margin:0 auto 2.5rem; padding:1rem; background:#fff; border:1px solid var(--linha); border-radius:14px; box-shadow:0 8px 24px rgba(37,22,84,.06); }
.busca-destaque .busca { max-width:none; }
.busca-menu{position:relative;margin-left:auto}.busca-menu__abrir{align-items:center;border:1px solid rgba(255,255,255,.42);border-radius:50%;background:transparent;color:#fff;display:inline-flex;height:2.35rem;justify-content:center;padding:0;width:2.35rem;cursor:pointer}.busca-menu__abrir svg{fill:none;height:1.1rem;stroke:currentColor;stroke-linecap:round;stroke-width:2;width:1.1rem}.busca-menu__painel{display:none;position:absolute;right:0;top:calc(100% + .8rem);width:min(25rem,calc(100vw - 2rem));padding:1rem;background:#fff;border-radius:14px;box-shadow:0 16px 35px rgba(20,15,45,.22);z-index:50}.busca-menu.aberto .busca-menu__painel{display:block}.busca-menu__fechar{position:absolute;right:.45rem;top:.35rem;border:0;background:transparent;color:var(--tinta-media);font-size:1.5rem;cursor:pointer}.busca-menu .busca{max-width:none;padding-right:1.5rem}.busca-sugestoes{max-height:22rem;overflow:auto;margin-top:.7rem}.busca-sugestoes a{display:block;padding:.7rem;border-top:1px solid var(--linha);text-decoration:none}.busca-sugestoes strong,.busca-sugestoes small{display:block}.busca-sugestoes strong{color:var(--tinta);font-family:"Newsreader",Georgia,serif}.busca-sugestoes small{color:var(--roxo);font-size:.75rem;margin-top:.15rem}.busca-sugestoes p{color:var(--tinta-media);font-size:.9rem;margin:.7rem 0}

.paginacao { display: flex; gap: .5rem; padding-block: 2rem; flex-wrap: wrap; }
.paginacao .page-numbers { padding: .4rem .8rem; border: 1px solid var(--linha); border-radius: 8px; text-decoration: none; font-size: .95rem; }
.paginacao .current { background: var(--roxo); color: #fff; border-color: var(--roxo); }

/* ---------- rodape ---------- */

.rodape { background: #171233; color: rgba(255,255,255,.7); padding-block: clamp(3.5rem,7vw,5.5rem) 1.4rem; margin-top: 0; font-size: .94rem; }
.rodape__interno { display: grid; gap: 2.5rem; }
@media (min-width: 46rem) { .rodape__interno { grid-template-columns: minmax(16rem,1.55fr) minmax(10rem,.8fr) minmax(12rem,1fr); gap: clamp(2rem,5vw,5rem); } }
.rodape__marca { display: flex; align-items: flex-start; gap: 1rem; max-width: 27rem; }
.rodape__marca img { width: 3.5rem; height: 3.5rem; flex: none; }
.rodape__marca strong { display: block; color: #fff; font-family: "Newsreader", Georgia, serif; font-size: 1.4rem; font-weight: 500; line-height: 1; margin-bottom: .55rem; }
.rodape__marca p { margin: 0; line-height: 1.55; }
.rodape__origem { color: rgba(255,255,255,.5); margin-top: .55rem !important; font-size: .84rem; }
.rodape__redes { display:flex; gap:.65rem; margin-top:1.15rem; }
.rodape__redes a { align-items:center; border:1px solid rgba(255,255,255,.3); border-radius:50%; color:#fff; display:flex; height:2.2rem; justify-content:center; transition:background .2s ease,border-color .2s ease; width:2.2rem; }
.rodape__redes a:hover { background:rgba(255,255,255,.14); border-color:#fff; text-decoration:none; }
.rodape__redes svg { height:1.15rem; width:1.15rem; }
.rodape__redes .icone-lattes { font-family:"Newsreader",Georgia,serif; font-size:1.25rem; font-weight:bold; }
.rodape__coluna h2 { color: #fff; font-family: "Inter", system-ui, sans-serif; font-size: .78rem; font-weight: 700; letter-spacing: .11em; line-height: 1; margin: .25rem 0 1rem; text-transform: uppercase; }
.rodape a { color: rgba(255,255,255,.72); text-decoration: none; }
.rodape a:hover { color: #fff; text-decoration: underline; }
.rodape ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .65rem; }
.rodape .sub-menu { display: none; }
.rodape__fim { border-top: 1px solid rgba(255,255,255,.14); margin-top: clamp(2.5rem,5vw,4rem); padding-top: 1.25rem; font-size: .78rem; color: rgba(255,255,255,.48); display: flex; gap: 1rem; justify-content: space-between; flex-wrap: wrap; }

.vazio { max-width: var(--prosa); padding-block: 3rem; }

/* ---------- movimento ---------- */

.surge { transition: opacity .7s ease, transform .7s ease; }
.tem-js .surge { opacity: 0; transform: translateY(18px); }
.tem-js .surge.visivel { opacity: 1; transform: none; }

@media (max-width: 52rem) {
	.topo__interno { gap:.45rem; flex-wrap:wrap; }
	.marca { gap:.5rem; }
	.marca img { width:42px; height:42px; }
	.marca__texto { padding-left:.55rem; }
	.marca__nome { font-size:1.28rem; }
	.marca__linha { font-size:.62rem; max-width:8rem; }
	.marca { flex:1; order:1; min-width:0; }
	.menu-abrir { display: flex; margin-left:auto; order:2; padding:.55rem .9rem; font-weight:700; }
	.busca-menu { margin-left:0; order:3; }
	.idiomas { order:4; }
	.acesso-menu--topo { display:none; }
  .navegacao { display: none; order:5; width: 100%; }
  .navegacao.aberto { display: block; }
  .navegacao ul { flex-direction: column; gap: 0; }
  .navegacao li { border-top: 1px solid rgba(128,128,128,.25); }
  .navegacao a { padding-block: .75rem; border-bottom: none; }
	.busca--topo { max-width:none; margin:0; }
}

@media (prefers-reduced-motion: reduce) {
  .surge, .tem-js .surge { opacity: 1; transform: none; transition: none; }
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

/* ---------- topo de secao ---------- */

.topo-secao { background: var(--papel-2); padding-block: clamp(1.8rem, 4vw, 2.6rem); margin-bottom: 2.5rem; }
.topo-secao h1 { margin: 0 0 .3rem; font-size: clamp(1.7rem, 3.2vw, 2.4rem); }
.topo-secao__conta { margin: 0; color: var(--tinta-media); font-size: .95rem; }
.topo-publicacoes { background:linear-gradient(115deg,#f0ecff,#e4f5fb); padding-block:clamp(3.2rem,7vw,5.5rem); text-align:center; }
.topo-publicacoes h1 { font-size:clamp(2.3rem,5vw,4rem); margin-inline:auto; max-width:18ch; }
.topo-publicacoes .topo-secao__conta { max-width:42rem; margin-inline:auto; font-size:1.06rem; }
.topo-publicacoes__selo,.artigo__selo { color:var(--roxo); font-size:.72rem; font-weight:700; letter-spacing:.13em; margin:0 0 .85rem; text-transform:uppercase; }

/* ---------- filtros ---------- */

.filtros { display: flex; gap: .5rem; flex-wrap: wrap; margin-bottom: 2rem; }
.filtro { text-decoration: none; font-size: .92rem; padding: .45rem 1rem; border-radius: 999px; border: 1px solid var(--linha); color: var(--tinta-media); background: #fff; }
.filtro span { opacity: .6; font-size: .82rem; margin-left: .15rem; }
.filtro:hover { border-color: var(--tinta-fraca); color: var(--tinta); }
.filtro--ativo { background: var(--tinta); border-color: var(--tinta); color: #fff; }
.filtro--ativo:hover { color: #fff; }
.filtro--artigo.filtro--ativo { background: var(--roxo); border-color: var(--roxo); }
.filtro--livro.filtro--ativo { background: var(--ambar); border-color: var(--ambar); }
.filtro--capitulo.filtro--ativo { background: var(--coral); border-color: var(--coral); }
.filtro--evento.filtro--ativo { background: var(--ciano); border-color: var(--ciano); }

/* ---------- catalogo ---------- */

.catalogo { display: grid; grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr)); gap: 1.5rem; }

.cartao { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--linha); border-radius: 16px; overflow: hidden; transition: border-color .2s ease, transform .2s ease; }
.cartao:hover { border-color: var(--tinta-fraca); transform: translateY(-2px); }
.cartao__capa { display: block; aspect-ratio: 3/2; background: var(--papel-2); overflow: hidden; }
.cartao__capa img { width: 100%; height: 100%; object-fit: cover; }
.cartao__sem-capa { display:grid; place-items:center; width:100%; height:100%; background:linear-gradient(135deg,#4a2bd0,#29c2dd); }
.cartao__sem-capa::after { content:"GPCIn\A publicação"; color:rgba(255,255,255,.9); font-family:"Newsreader",Georgia,serif; font-size:1.35rem; line-height:1.2; text-align:center; white-space:pre; }
.cartao__corpo { padding: 1.1rem 1.2rem 1.3rem; display: flex; flex-direction: column; gap: .5rem; flex: 1; }
.cartao__meta { display: flex; align-items: center; justify-content: space-between; gap: .5rem; margin: 0; }
.cartao__ano { font-size: .8rem; color: var(--tinta-fraca); font-variant-numeric: tabular-nums; }
.cartao__titulo { font-family: "Newsreader", serif; font-size: 1.1rem; font-weight: 500; line-height: 1.3; margin: 0; }
.cartao__titulo a { color: var(--tinta); text-decoration: none; }
.cartao__titulo a:hover { text-decoration: underline; }
.cartao__resumo { font-size: .88rem; color: var(--tinta-media); margin: 0; line-height: 1.55; }
.catalogo__cabeca { border-top:1px solid var(--linha); margin-top:3rem; padding-top:2.5rem; }
.catalogo__cabeca h2 { margin-bottom:.3rem; }
.catalogo__cabeca p { color:var(--tinta-media); margin:0 0 1.4rem; }

@media (prefers-reduced-motion: reduce) { .cartao:hover { transform: none; } }

/* ---------- marca na capa ---------- */

.capa__marca { width: clamp(112px, 15vw, 168px); height: auto; margin: 0 auto 1.6rem; }

/* ---------- submenu ---------- */

.navegacao li { position: relative; }
.navegacao .sub-menu { display: none; position: absolute; left: 0; top: 100%; margin-top: .5rem; min-width: 11rem; background: #fff; border: 1px solid var(--linha); border-radius: 12px; padding: .4rem; box-shadow: 0 12px 28px rgba(27,23,48,.12); z-index: 30; flex-direction: column; gap: .1rem; }
.navegacao li:hover > .sub-menu, .navegacao li:focus-within > .sub-menu { display: flex; }
.navegacao .sub-menu::before { content: ""; position: absolute; left: 0; right: 0; top: -.9rem; height: 1rem; }
.navegacao .tem-filhos, .navegacao .menu-item-has-children { padding-bottom: .35rem; }
.navegacao .sub-menu a { color: var(--tinta-media); padding: .5rem .8rem; border-radius: 8px; white-space: nowrap; }
.navegacao .sub-menu a:hover { background: var(--papel-2); color: var(--tinta); }

.navegacao .tem-filhos > a::after, .navegacao .menu-item-has-children > a::after { content: "⌄"; margin-left: .35rem; font-size: .8em; opacity: .7; }

.secao__cabeca--centro { justify-content: center; text-align: center; }

/* ---------- carrossel ---------- */

.carrossel { position: relative; }
.carrossel__trilho { display: flex; gap: 1.5rem; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding-bottom: .5rem; }
.carrossel__trilho::-webkit-scrollbar { display: none; }

.slide { flex: 0 0 100%; scroll-snap-align: start; background: #fff; border: 1px solid var(--linha); border-radius: 18px; overflow: hidden; display: grid; }
@media (min-width: 52rem) { .slide { grid-template-columns: 1fr 1.15fr; align-items: stretch; } .slide__capa { max-height: 17rem; } }

.slide__capa { display: block; min-height: 11rem; max-height: 20rem; background: var(--papel-2); }
.slide__capa img { width: 100%; height: 100%; object-fit: cover; }
.slide__sem-capa { display: block; width: 100%; height: 100%; min-height: 14rem; background: var(--gradiente); opacity: .2; }
.slide__corpo { padding: 1.4rem 1.6rem; align-self: center; display: flex; flex-direction: column; gap: .6rem; }
.slide__titulo { font-family: "Newsreader", serif; font-size: clamp(1.1rem, 1.6vw, 1.35rem); font-weight: 500; line-height: 1.3; margin: 0; }
.slide__titulo a { color: var(--tinta); text-decoration: none; }
.slide__titulo a:hover { text-decoration: underline; }
.slide__resumo { font-size: .9rem; color: var(--tinta-media); margin: 0; line-height: 1.6; }

.carrossel__controles { display: flex; align-items: center; justify-content: center; gap: 1rem; margin-top: 1.2rem; }
.carrossel__seta { width: 2.5rem; height: 2.5rem; border-radius: 50%; border: 1px solid var(--linha); background: #fff; color: var(--tinta-media); font-size: 1rem; cursor: pointer; line-height: 1; }
.carrossel__seta:hover { border-color: var(--tinta-fraca); color: var(--tinta); }
.carrossel__pontos { display: flex; gap: .45rem; }
.carrossel__ponto { width: .55rem; height: .55rem; padding: 0; border-radius: 50%; border: none; background: var(--linha); cursor: pointer; }
.carrossel__ponto--ativo { background: var(--roxo); width: 1.5rem; border-radius: 999px; }

@media (max-width: 52rem) {
  .navegacao .sub-menu,
  .navegacao li:hover > .sub-menu,
  .navegacao li:focus-within > .sub-menu { display: none; }
  .navegacao li.sub-menu-aberto > .sub-menu { display:flex; position:static; margin:0; padding:0 0 .45rem 1rem; min-width:0; background:transparent; border:0; border-radius:0; box-shadow:none; }
  .navegacao li.sub-menu-aberto > .sub-menu a { color:rgba(255,255,255,.82); font-size:.86rem; padding:.5rem .7rem; }
  .navegacao .sub-menu a { color: rgba(255,255,255,.85); }
  .navegacao .sub-menu a:hover { background: rgba(255,255,255,.18); color: #fff; }
  .navegacao .sub-menu::before { display: none; }
}

/* ---------- faixa de reconhecimento ---------- */

.reconhecimento {
  background: #171233;
  color: #fff;
  padding-block: clamp(3rem, 7vw, 4.5rem);
  position: relative;
  border-block: 1px solid rgba(240,178,60,.35);
}
.reconhecimento::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(60% 90% at 50% 0%, rgba(240,178,60,.16), transparent 70%);
  pointer-events: none;
}
.reconhecimento__interno { max-width: 44rem; text-align: center; position: relative; }
.reconhecimento__selo { width: 2.6rem; height: 2.6rem; margin: 0 auto 1.1rem; color: #F0B23C; }
.reconhecimento__selo svg { width: 100%; height: 100%; }
.reconhecimento__rotulo {
  font-size: .74rem; letter-spacing: .16em; text-transform: uppercase;
  color: #F0B23C; margin: 0 0 1rem;
}
.reconhecimento__frase {
  font-family: "Newsreader", serif;
  font-size: clamp(1.5rem, 3.4vw, 2.4rem);
  line-height: 1.2; margin: 0 0 .8rem; font-weight: 500; color: #fff;
}
.reconhecimento__periodo {
  font-family: "Newsreader", serif; font-size: 1.05rem; letter-spacing: .1em;
  color: #F0B23C; margin: 0 0 1.4rem;
}
.reconhecimento__periodo::before,
.reconhecimento__periodo::after {
  content: ""; display: inline-block; width: 2.2rem; height: 1px;
  background: rgba(240,178,60,.5); vertical-align: middle; margin-inline: .8rem;
}
.reconhecimento__fonte { font-size: .88rem; line-height: 1.65; margin: 0; color: rgba(255,255,255,.7); }

/* ---------- nota dos numeros ---------- */

.numeros__nota { font-size: .85rem; color: var(--tinta-fraca); margin: 1.2rem 0 0; }
.numeros__nota a { color: var(--tinta-media); }

/* ---------- miudos e obras ---------- */

.miudos { list-style: none; margin: 1.5rem 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr)); gap: 1px; background: var(--linha); border: 1px solid var(--linha); border-radius: 14px; overflow: hidden; }
.miudos li { background: #fff; padding: 1.2rem 1.2rem; }
.miudos strong { display: block; font-family: "Newsreader", serif; font-size: 1.9rem; line-height: 1; font-weight: 500; color: var(--roxo); margin-bottom: .3rem; }
.miudos span { font-size: .88rem; color: var(--tinta-media); }

.obras { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--linha); }
.obras li { padding: 1.1rem 0; border-bottom: 1px solid var(--linha); display: flex; flex-direction: column; gap: .2rem; }
.obras__titulo { font-family: "Newsreader", serif; font-size: 1.1rem; line-height: 1.35; }
.obras__nota { font-size: .82rem; color: var(--tinta-fraca); }

/* ---------- premios ---------- */

.topo-premios { background: linear-gradient(115deg,#f0ebff,#e3f6fb); text-align: center; padding-block: clamp(3.5rem,8vw,6rem); margin-bottom: clamp(2.5rem,6vw,4rem); }
.topo-premios h1 { font-size: clamp(2.3rem,5vw,4.2rem); margin-inline:auto; max-width: 16ch; }
.topo-premios .topo-secao__conta { max-width: 42rem; margin: 1rem auto 0; font-size: 1.08rem; }
.topo-premios__selo,.topo-premios__periodo { color: var(--roxo); font-size:.75rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.topo-premios__periodo { color:var(--tinta-fraca); margin:1.3rem 0 0; }
.premios { list-style: none; margin: 0; padding: 0; counter-reset: none; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.4rem; }
.premio {
  display: grid; grid-template-columns: 7rem 1fr; gap: .9rem 1.1rem;
  padding: 1rem; border: 1px solid var(--linha); border-radius:16px; background:#fff; align-items:start;
}
.premio__imagem { grid-column:1/-1; width:100%; aspect-ratio:16/9; object-fit:cover; border-radius:10px; background:var(--papel-2); }
.premio:first-child { border-top: 1px solid var(--linha); }
.premio__ano {
  font-family: "Newsreader", serif; font-size: 1.15rem; color: var(--tinta-fraca);
  font-variant-numeric: tabular-nums; padding-top: .1rem;
}
.premio__corpo::before { content:"Reconhecimento"; display:block; color:var(--roxo); font-size:.68rem; font-weight:700; letter-spacing:.1em; margin-bottom:.35rem; text-transform:uppercase; }
.premio__titulo { display: block; font-family: "Newsreader", serif; font-size: 1.32rem; line-height: 1.18; margin-bottom: .45rem; }
.premio__nota { display: block; font-size: .93rem; color: var(--tinta-media); line-height: 1.6; }

.premio--forte {
  background: #FFF9EC;
  border: 1px solid rgba(240,178,60,.5);
  border-radius: 14px;
  padding: 1.4rem 1.5rem;
  margin-bottom: .6rem;
}
.premio--forte:first-child { border-top: 1px solid rgba(240,178,60,.5); }
.premio--forte .premio__ano { color: #8C5906; }
.premio--forte .premio__titulo { color: #5E3A05; font-size: 1.25rem; }
.premio--forte .premio__nota { color: #8C5906; }
@media (max-width: 42rem) { .premios { grid-template-columns:1fr; } .premio { grid-template-columns:5rem 1fr; } }

/* ---------- pagina do artigo ---------- */

.artigo { --medida: 38rem; --largo: 50rem; background: #fff; }

.artigo__faixa,
.artigo__corpo,
.artigo__pe { width: 100%; max-width: var(--medida); margin-inline: auto; padding-inline: 1.5rem; }

.artigo__cabeca { padding-block: clamp(3rem, 7vw, 4.5rem) clamp(1.8rem, 4vw, 2.5rem); text-align: center; }

.artigo__meta {
  display: flex; align-items: center; justify-content: center; gap: .7rem;
  flex-wrap: wrap; margin: 0 0 1.4rem; font-size: .82rem; color: var(--tinta-media);
}
.artigo__ponto { width: 3px; height: 3px; border-radius: 50%; background: var(--tinta-fraca); }

.artigo__titulo {
  font-size: clamp(2rem, 4.4vw, 3.1rem); line-height: 1.12; margin: 0 auto 1.2rem;
  max-width: 20ch; letter-spacing: -0.02em;
}

.artigo__linha-fina {
  font-size: 1.08rem; line-height: 1.6; color: var(--tinta-media);
  margin: 0 auto; max-width: 34rem;
}

.artigo__capa { margin: 0 auto clamp(2rem, 5vw, 3rem); width: 100%; max-width: var(--largo); padding-inline: 1.5rem; }
.artigo__moldura { border-radius: 18px; overflow: hidden; background: var(--papel-2); }
.artigo__moldura img { width: 100%; height: auto; display: block; }
.artigo__capa figcaption { font-size: .8rem; color: var(--tinta-fraca); margin-top: .8rem; text-align: center; }

.artigo__pe { padding-block: 1rem 3.5rem; border-top: 1px solid var(--linha); margin-top: 3rem; }
.leitor-pdf { margin-top:2rem; }.leitor-pdf details{border:1px solid var(--linha);border-radius:14px;background:#fff;overflow:hidden}.leitor-pdf summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.15rem 1.3rem;list-style:none}.leitor-pdf summary::-webkit-details-marker{display:none}.leitor-pdf summary strong{display:block;color:var(--tinta);font-family:"Newsreader",Georgia,serif;font-size:1.25rem}.leitor-pdf summary small{display:block;color:var(--tinta-media);margin-top:.15rem}.leitor-pdf__barra{display:flex;justify-content:space-between;gap:1rem;align-items:center;border-top:1px solid var(--linha);padding:.8rem 1.3rem;color:var(--tinta-media);font-size:.84rem}.leitor-pdf__barra a{font-weight:700;white-space:nowrap}.leitor-pdf iframe{display:block;width:100%;height:min(78vh,58rem);border:0;border-top:1px solid var(--linha);background:var(--papel-2)}
.artigo__voltar { display: inline-block; margin-top: 1.5rem; font-size: .92rem; text-decoration: none; }
.artigo__voltar::before { content: "← "; }
.artigo__voltar:hover { text-decoration: underline; }

/* ---------- conteudo do artigo ---------- */

.prosa { max-width: none; font-size: 1.125rem; line-height: 1.75; color: var(--tinta); }

.artigo .prosa > p:first-of-type { font-size: 1.28rem; line-height: 1.6; color: var(--tinta); }

.prosa p, .prosa li, .prosa span, .prosa div, .prosa td {
  text-align: left !important;
  color: var(--tinta) !important;
  background: transparent !important;
  font-family: inherit !important;
}
.prosa p { margin: 0 0 1.35em; }

.prosa h1, .prosa h2, .prosa h3, .prosa h4 {
  text-align: left !important;
  color: var(--tinta) !important;
  background: transparent !important;
  font-family: "Newsreader", Georgia, serif !important;
  font-weight: 500; line-height: 1.2; letter-spacing: -0.01em;
}
.prosa h2 {
  font-size: 1.55rem; margin: 2.8rem 0 1rem; padding-top: 1.6rem;
  border-top: 1px solid var(--linha);
}
.prosa h3 { font-size: 1.22rem; margin: 2rem 0 .6rem; }

.prosa a { color: var(--roxo) !important; text-decoration: underline; text-underline-offset: .18em; }
.prosa strong, .prosa b { color: inherit !important; font-weight: 600; }
.prosa em, .prosa i { color: inherit !important; }
.prosa ul, .prosa ol { padding-left: 1.3rem; margin: 0 0 1.35em; }
.prosa li { margin-bottom: .4em; }

.prosa blockquote {
  margin: 2rem 0; padding: 0 0 0 1.4rem; border-left: 3px solid var(--roxo);
  font-family: "Newsreader", serif; font-size: 1.25rem; line-height: 1.5;
}
.prosa blockquote p { color: var(--tinta-media) !important; }

/* imagens mais largas que a coluna de texto */
.prosa img { border-radius: 12px; display: block; margin-inline: auto; height: auto; }
.prosa figure, .prosa .wp-block-image {
  margin: 2.2rem auto; width: 100%; max-width: 46rem;
  margin-left: 50%; transform: translateX(-50%);
}
.prosa figcaption, .prosa .gallery-caption, .prosa .wp-caption-text {
  font-size: .8rem; color: var(--tinta-fraca) !important; text-align: center !important;
  margin-top: .6rem; line-height: 1.5;
}
.prosa iframe, .prosa video { max-width: 100%; border-radius: 12px; }

/* galerias */
.prosa .gallery, .prosa .wp-block-gallery {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
  gap: 1rem;
  margin: 2.4rem auto;
  width: 100%; max-width: 50rem;
  margin-left: 50%; transform: translateX(-50%);
}
.prosa .gallery-item, .prosa .wp-block-gallery .wp-block-image {
  margin: 0 !important; width: auto !important; max-width: none !important;
  transform: none; margin-left: 0;
}
.prosa .gallery img, .prosa .wp-block-gallery img {
  width: 100%; height: 100%; object-fit: cover; aspect-ratio: 4/3; border-radius: 10px;
}

/* ---------- botao de acesso no fim do post ---------- */

.prosa .elementor-button,
.prosa .elementor-button-link,
.prosa .wp-block-button__link,
.prosa .wp-block-button {
  display: flex !important;
  align-items: center;
  gap: 1rem;
  width: 100%;
  max-width: 100%;
  margin: 2.5rem 0 1rem;
  padding: 1.15rem 1.3rem;
  background: linear-gradient(100deg, #4A2BD0 0%, #3F6FE0 60%, #29C2DD 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 14px;
  text-decoration: none !important;
  font-family: inherit !important;
  font-size: 1rem !important;
  font-weight: 500;
  line-height: 1.35;
  box-shadow: 0 10px 24px rgba(74,43,208,.22);
  transition: transform .18s ease, box-shadow .18s ease;
}

.prosa .elementor-button *,
.prosa .wp-block-button__link * {
  color: #fff !important;
  background: transparent !important;
  font-family: inherit !important;
  text-align: left !important;
}

.prosa .elementor-button::before,
.prosa .wp-block-button__link::before {
  content: "";
  flex: none;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 10px;
  background-color: rgba(255,255,255,.18);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 19.5A2.5 2.5 0 0 1 6.5 17H20'/%3E%3Cpath d='M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.3rem;
}

.prosa .elementor-button::after,
.prosa .wp-block-button__link::after {
  content: "→";
  margin-left: auto;
  font-size: 1.2rem;
  opacity: .85;
  flex: none;
}

.prosa .elementor-button:hover,
.prosa .wp-block-button__link:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(74,43,208,.3);
}

@media (prefers-reduced-motion: reduce) {
  .prosa .elementor-button:hover, .prosa .wp-block-button__link:hover { transform: none; }
}

/* linha de fonte que costuma vir depois do botao */
.prosa p:last-of-type a[href^="http"] {
  word-break: break-word;
}

@media (max-width: 56rem) {
  .prosa figure, .prosa .wp-block-image,
  .prosa .gallery, .prosa .wp-block-gallery { margin-left: 0; transform: none; max-width: 100%; }
}

/* Origem do GPCIn */
.topo__interno { position:relative; }
.idiomas { position:absolute; z-index:5; right:0; top:calc(100% + .55rem); display:flex; align-items:center; margin:0; }
.idiomas .gtranslate_wrapper { display:flex; align-items:center; gap:.35rem; line-height:1; }
.idiomas .glink:not([data-gt-lang="pt"]):not([data-gt-lang="es"]):not([data-gt-lang="en"]) { display:none !important; }
.idiomas .glink { display:inline-flex; align-items:center; gap:.32rem; padding:.38rem .5rem; border:1px solid rgba(255,255,255,.32); border-radius:999px; color:#fff !important; background:rgba(17,12,51,.14); font:500 .72rem/1 inherit; text-decoration:none; transition:background .18s ease; }
.idiomas .glink:hover { background:rgba(17,12,51,.30); }
.idiomas .glink img { width:1rem !important; height:1rem !important; border-radius:50%; object-fit:cover; }
/* Português representa o Brasil, origem do GPCIn. */
.idiomas .glink[data-gt-lang="pt"] { position:relative; }
.idiomas .glink[data-gt-lang="pt"] img { opacity:0; }
.idiomas .glink[data-gt-lang="pt"]::before { content:""; position:absolute; left:.48rem; top:50%; width:1rem; height:.72rem; transform:translateY(-50%); background:url("assets/bandeira-brasil.svg") center/contain no-repeat; }

.secao--origem { overflow:hidden; background:linear-gradient(115deg,#f1edff 0%,#e8f8fb 100%); }
.origem { display:grid; grid-template-columns:minmax(16rem,.85fr) minmax(0,1.15fr); align-items:center; gap:clamp(2rem,6vw,6rem); padding-top:clamp(3.5rem,7vw,6rem); padding-bottom:clamp(3.5rem,7vw,6rem); }
.origem__mapa { color:var(--roxo); padding:1.5rem; border-radius:1.5rem; background:rgba(255,255,255,.62); box-shadow:0 1rem 3rem rgba(63,111,224,.1); }
.origem__mapa img { display:block; width:100%; max-height:29rem; object-fit:contain; }
.origem__texto { max-width:40rem; }
.origem__texto h2 { margin:.35rem 0 1rem; font-size:clamp(2rem,4vw,3.3rem); line-height:1.02; }
.origem__texto > p:not(.nucleo__selo) { max-width:38rem; color:var(--tinta-media); line-height:1.75; }
.origem__nota { display:inline-flex; align-items:center; gap:.45rem; margin-top:.8rem; padding:.6rem .9rem; border-radius:999px; background:#fff; color:var(--roxo) !important; font-size:.9rem; font-weight:700; box-shadow:0 .5rem 1.5rem rgba(74,43,208,.1); }
.rodape__localizacao { color:rgba(255,255,255,.72) !important; font-size:.78rem; margin-top:.55rem; }

/* ---------- páginas institucionais ---------- */
.pagina-institucional__capa { background:linear-gradient(115deg,#f0edff 0%,#e4f8fb 100%); padding:clamp(4rem,9vw,7rem) 0 clamp(3rem,6vw,5rem); text-align:center; }
.pagina-institucional__capa h1 { font-size:clamp(2.5rem,6vw,4.8rem); margin:.35rem auto .8rem; max-width:17ch; }
.pagina-institucional__capa p:not(.pagina-institucional__selo) { color:var(--tinta-media); font-size:clamp(1.05rem,2vw,1.25rem); margin:auto; max-width:52ch; }
.pagina-institucional__selo { color:var(--roxo) !important; font-size:.73rem; font-weight:700; letter-spacing:.13em; margin:0; text-transform:uppercase; }
.pagina-institucional__corpo, .contato { padding-block:clamp(3.5rem,7vw,6rem); }
.perfil-apresentacao { align-items:center; display:grid; gap:clamp(2rem,7vw,6rem); grid-template-columns:minmax(0,1.35fr) minmax(14rem,.65fr); }
.perfil-apresentacao h2, .contato h2 { font-size:clamp(2rem,4vw,3rem); margin:.4rem 0 1rem; }
.perfil-apresentacao p, .contato__intro > p { color:var(--tinta-media); font-size:1.06rem; line-height:1.75; }
.perfil-apresentacao__destaque { background:linear-gradient(145deg,#27185e,#172c62); border-radius:1.25rem; color:#fff; padding:2rem; }
.perfil-apresentacao__destaque strong { display:block; font-family:"Newsreader",Georgia,serif; font-size:2.4rem; font-weight:500; margin-bottom:.7rem; }
.perfil-apresentacao__destaque span { color:rgba(255,255,255,.76); line-height:1.6; }
.perfil-galeria { align-items:end; display:grid; gap:1rem; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); margin:clamp(2.5rem,6vw,4.5rem) 0; }
.perfil-galeria figure { margin:0; }
.perfil-galeria img { background:var(--papel-2); border-radius:1.1rem; box-shadow:0 1rem 2.5rem rgba(37,22,84,.12); display:block; object-fit:cover; width:100%; }
.perfil-galeria__retrato img { aspect-ratio:1.08; object-position:center; }
.perfil-galeria__premio img { aspect-ratio:1.28; object-position:center; }
.perfil-galeria figcaption { color:var(--tinta-fraca); font-size:.78rem; line-height:1.45; margin-top:.65rem; }
.perfil-marcos { display:grid; gap:1rem; grid-template-columns:repeat(3,1fr); margin:clamp(3rem,7vw,5rem) 0; }
.perfil-marcos > div { background:#fff; border:1px solid var(--linha); border-radius:1rem; padding:1.35rem; }
.perfil-marcos span { color:var(--roxo); display:block; font-size:.75rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.perfil-marcos strong { display:block; font-family:"Newsreader",Georgia,serif; font-size:1.2rem; line-height:1.25; margin:.55rem 0; }
.perfil-marcos p { color:var(--tinta-media); font-size:.9rem; line-height:1.55; margin:0; }
.pagina-institucional__secao { border-top:1px solid var(--linha); padding-top:clamp(3rem,6vw,5rem); }
.pagina-institucional__secao h2 { font-size:clamp(2rem,4vw,3rem); margin:.35rem 0 1rem; }
.pagina-institucional__secao > p:not(.pagina-institucional__selo) { color:var(--tinta-media); font-size:1.06rem; line-height:1.75; max-width:48rem; }
.dimensoes-resumo { display:grid; gap:1rem; grid-template-columns:repeat(4,1fr); margin-top:2rem; }
.dimensoes-resumo span { background:var(--papel-2); border-radius:1rem; color:var(--tinta-media); font-size:.9rem; line-height:1.5; padding:1.1rem; }
.dimensoes-resumo b { color:var(--tinta); display:block; margin-bottom:.4rem; }
.pagina-institucional__acoes { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:3rem; }
.botao--secundario { background:#fff; border:1px solid var(--roxo); color:var(--roxo); }
.contato { align-items:start; display:grid; gap:clamp(2rem,7vw,6rem); grid-template-columns:minmax(0,.85fr) minmax(18rem,1.15fr); }
.contato__links { display:grid; gap:.7rem; margin:1.5rem 0; }
.contato__links a { font-weight:600; text-decoration:none; }
.contato__local { font-size:.9rem !important; }
.contato__formulario { background:#fff; border:1px solid var(--linha); border-radius:1.25rem; box-shadow:0 1rem 3rem rgba(37,22,84,.08); padding:clamp(1.3rem,4vw,2.2rem); }
.contato__formulario form { display:grid; gap:1rem; }
.contato__formulario label { color:var(--tinta); display:grid; font-size:.88rem; font-weight:700; gap:.4rem; }
.contato__formulario input, .contato__formulario textarea { border:1px solid var(--linha); border-radius:.55rem; color:var(--tinta); font:inherit; font-weight:400; padding:.7rem .8rem; resize:vertical; }
.formulario__campo-escondido { display:none; }
.formulario__aviso { border-radius:.6rem; font-size:.9rem; margin:0 0 1rem; padding:.8rem 1rem; }
.formulario__aviso--sucesso { background:#e9f8f3; color:#176a55; }
.formulario__aviso--erro { background:#fff0f1; color:#9a3344; }

/* ---------- privacidade e cookies ---------- */
.politica { max-width:52rem; }
.politica__abertura { border-bottom:1px solid var(--linha); margin-bottom:2.8rem; padding-bottom:2.2rem; }
.politica__abertura > p:first-child { color:var(--tinta-media); font-family:"Newsreader",Georgia,serif; font-size:clamp(1.3rem,2.5vw,1.65rem); line-height:1.5; margin:0; }
.politica__atualizacao { color:var(--tinta-fraca); font-size:.85rem; margin:.9rem 0 0; }
.politica__secao { margin-top:2.6rem; }
.politica__secao h2 { font-size:clamp(1.55rem,3vw,2.15rem); margin:0 0 .8rem; }
.politica__secao p, .politica__secao li { color:var(--tinta-media); line-height:1.75; }
.politica__secao ul { padding-left:1.3rem; }
.politica__secao a { color:var(--roxo); font-weight:700; }
.equipe__apresentacao { align-items:center; display:grid; gap:clamp(2rem,7vw,6rem); grid-template-columns:minmax(0,1.35fr) minmax(14rem,.65fr); }
.equipe__apresentacao h2, .equipe__cartoes h2 { font-size:clamp(2rem,4vw,3rem); margin:.4rem 0 1rem; }
.equipe__apresentacao p { color:var(--tinta-media); font-size:1.06rem; line-height:1.75; }
.equipe__destaque { background:linear-gradient(145deg,#4a2bd0,#2aaed4); border-radius:1.25rem; box-shadow:0 1rem 2.5rem rgba(74,43,208,.2); color:#fff; padding:2rem; }
.equipe__destaque span { display:block; font-size:.76rem; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
.equipe__destaque strong { display:block; font-family:"Newsreader",Georgia,serif; font-size:2.3rem; font-weight:500; line-height:1; margin:.65rem 0; }
.equipe__destaque p { color:rgba(255,255,255,.82); font-size:.9rem; margin:0; }
.equipe__cartoes { display:grid; gap:1rem; grid-template-columns:repeat(3,1fr); margin:clamp(3rem,7vw,5rem) 0; }
.equipe__cartoes section { background:#fff; border:1px solid var(--linha); border-radius:1.1rem; display:flex; flex-direction:column; min-height:18rem; padding:1.45rem; }
.equipe__numero { color:var(--roxo); font-size:.78rem; font-weight:700; letter-spacing:.12em; }
.equipe__cartoes h2 { font-size:1.5rem; line-height:1.08; }
.equipe__cartoes p { color:var(--tinta-media); font-size:.93rem; line-height:1.65; margin:0; }
.equipe__cartoes a { color:var(--roxo); font-size:.9rem; font-weight:700; margin-top:auto; padding-top:1.3rem; text-decoration:none; }
.equipe__cartoes a span { margin-left:.25rem; }
.equipe__desenvolvedor { align-items:center; background:linear-gradient(120deg,#f2efff 0%,#e6f8fb 100%); border-radius:1.35rem; display:grid; gap:clamp(1.5rem,5vw,4rem); grid-template-columns:10rem minmax(0,1fr); margin:clamp(3rem,7vw,5rem) 0 0; overflow:hidden; padding:clamp(1.2rem,3vw,2rem); }
.equipe__desenvolvedor img { aspect-ratio:1; border:4px solid #fff; border-radius:50%; box-shadow:0 .8rem 2rem rgba(37,22,84,.16); object-fit:cover; object-position:center top; width:100%; }
.equipe__desenvolvedor h2 { font-size:clamp(1.7rem,3vw,2.45rem); margin:.35rem 0 .75rem; }
.equipe__desenvolvedor p:not(.pagina-institucional__selo) { color:var(--tinta-media); line-height:1.7; margin:0; max-width:48rem; }
.equipe__desenvolvedor span { color:var(--roxo); display:block; font-size:.85rem; font-weight:700; margin-top:1rem; }
.equipe__convite .botao { display:inline-block; margin-top:1.5rem; }

/* ---------- agenda anual ---------- */
.agenda__capa { background:linear-gradient(115deg,#ede9ff 0%,#e2f8fb 100%); }
.agenda__introducao { align-items:end; display:flex; gap:2rem; justify-content:space-between; padding-block:clamp(3rem,6vw,5rem) 2rem; }
.agenda__introducao h2 { font-size:clamp(2rem,4vw,3rem); margin:.35rem 0 .7rem; }
.agenda__introducao p:not(.pagina-institucional__selo) { color:var(--tinta-media); line-height:1.7; margin:0; max-width:40rem; }
.agenda__contador { background:var(--tinta); border-radius:1rem; color:rgba(255,255,255,.78) !important; flex:none; font-size:.85rem; line-height:1.35 !important; max-width:13rem; padding:1rem 1.1rem; }
.agenda__contador strong { color:#fff; display:block; font-family:"Newsreader",Georgia,serif; font-size:2.4rem; font-weight:500; line-height:1; margin-bottom:.35rem; }
.agenda__anos { display:flex; gap:.5rem; justify-content:center; margin-top:-1.2rem; position:relative; z-index:2; }
.agenda__anos a { background:#fff; border:1px solid var(--linha); border-radius:999px; color:var(--tinta-media); font-size:.85rem; font-weight:700; padding:.55rem .9rem; text-decoration:none; }
.agenda__anos a.agenda__ano--ativo { background:var(--roxo); border-color:var(--roxo); color:#fff; }
.agenda__calendario { display:grid; gap:1rem; grid-template-columns:repeat(3,1fr); padding-bottom:clamp(3.5rem,7vw,6rem); }
.agenda__mes { background:#fff; border:1px solid var(--linha); border-radius:1rem; min-width:0; padding:1rem; }
.agenda__mes h2 { font-family:"Newsreader",Georgia,serif; font-size:1.35rem; font-weight:500; margin:0 0 .85rem; }
.agenda__dias, .agenda__grade { display:grid; grid-template-columns:repeat(7,1fr); text-align:center; }
.agenda__dias { color:var(--tinta-fraca); font-size:.62rem; font-weight:700; margin-bottom:.35rem; }
.agenda__dia { align-items:center; color:var(--tinta-media); display:flex; font-size:.76rem; height:1.75rem; justify-content:center; position:relative; text-decoration:none; }
.agenda__dia--evento { background:#ece7ff; border-radius:50%; color:var(--roxo); cursor:default; font-weight:700; }
.agenda__dia--evento { cursor:pointer; transition:background .18s ease, transform .18s ease; }
.agenda__dia--evento:hover, .agenda__dia--evento:focus { background:#dcd3ff; outline:none; transform:scale(1.09); }
.agenda__ponto { background:#2abdd4; border-radius:50%; bottom:.18rem; height:.22rem; position:absolute; width:.22rem; }
.agenda__detalhe { background:var(--tinta); border-radius:.5rem; bottom:calc(100% + .35rem); color:#fff; display:none; font-size:.68rem; left:50%; line-height:1.35; max-width:11rem; padding:.45rem .55rem; position:absolute; transform:translateX(-50%); width:max-content; z-index:10; }
.agenda__detalhe b { display:block; font-weight:500; }
.agenda__dia--evento:hover .agenda__detalhe, .agenda__dia--evento:focus .agenda__detalhe { display:block; }
.agenda__eventos { padding-bottom:clamp(4rem,8vw,7rem); }
.agenda__eventos h2 { font-size:clamp(2rem,4vw,3rem); margin:.35rem 0 1.6rem; }
.agenda__lista { display:grid; gap:1rem; }
.agenda__evento { align-items:flex-start; background:#fff; border:1px solid var(--linha); border-radius:1rem; display:grid; gap:1.25rem; grid-template-columns:4.5rem minmax(0,1fr); padding:1.25rem; scroll-margin-top:7rem; }
.agenda__evento time { background:linear-gradient(145deg,#4a2bd0,#2cbbd8); border-radius:.8rem; color:#fff; display:flex; flex-direction:column; justify-content:center; min-height:4.5rem; text-align:center; }
.agenda__evento time strong { font-family:"Newsreader",Georgia,serif; font-size:2rem; font-weight:500; line-height:1; }
.agenda__evento time span { font-size:.68rem; font-weight:700; letter-spacing:.08em; margin-top:.22rem; }
.agenda__evento h3 { font-size:1.25rem; margin:0 0 .35rem; }
.agenda__evento p { color:var(--tinta-media); font-size:.92rem; line-height:1.55; margin:.35rem 0; }
.agenda__evento .agenda__local { color:var(--roxo); font-size:.82rem; font-weight:700; }
.agenda__evento a { color:var(--roxo); display:inline-block; font-size:.88rem; font-weight:700; margin-top:.35rem; text-decoration:none; }
.agenda__vazia { background:var(--papel-2); border-radius:1rem; color:var(--tinta-media); padding:1.5rem; }
.agenda__vazia strong { color:var(--tinta); font-family:"Newsreader",Georgia,serif; font-size:1.35rem; font-weight:500; }
.agenda__vazia p { margin:.35rem 0 0; }
.agenda__pendentes { background:#fff8e8; border:1px solid #f1daa1; border-radius:.85rem; color:#765814; margin-top:1rem; padding:1rem 1.2rem; }
.agenda__pendentes strong { display:block; font-size:.95rem; }
.agenda__pendentes p { font-size:.88rem; line-height:1.5; margin:.35rem 0 0; }
.cookies { background:rgba(20,14,54,.82); bottom:1rem; box-shadow:0 1rem 3rem rgba(15,10,42,.28); color:#fff; left:1rem; position:fixed; right:1rem; z-index:100; backdrop-filter:blur(12px); border:1px solid rgba(255,255,255,.16); border-radius:1rem; }
.cookies[hidden] { display:none; }
.cookies__conteudo { align-items:center; display:flex; gap:1.5rem; justify-content:space-between; margin:auto; max-width:76rem; padding:1rem 1.25rem; }
.cookies strong { display:block; font-family:"Newsreader",Georgia,serif; font-size:1.2rem; font-weight:500; }
.cookies p { color:rgba(255,255,255,.78); font-size:.86rem; line-height:1.45; margin:.25rem 0 0; max-width:42rem; }
.cookies__acoes { align-items:center; display:flex; flex:none; flex-wrap:wrap; gap:.65rem; justify-content:flex-end; }
.cookies__acoes a, .cookies__recusar { background:transparent; border:0; color:#fff; cursor:pointer; font:600 .82rem/1 inherit; padding:.55rem .35rem; text-decoration:underline; text-underline-offset:.18rem; }
.cookies .botao { border-radius:.55rem; font-size:.84rem; padding:.65rem .95rem; }

/* ---------- página 404 ---------- */
.erro-404 { background:linear-gradient(135deg,#f0edff 0%,#e8f9fb 100%); min-height:calc(100vh - 12rem); padding:clamp(4rem,10vw,8rem) 0; text-align:center; }
.erro-404__interno { max-width:48rem; }
.erro-404__marca { align-items:center; display:flex; gap:1.2rem; justify-content:center; margin-bottom:1.4rem; }
.erro-404__marca img { height:4.2rem; width:4.2rem; }
.erro-404__marca span { color:var(--roxo); font-family:"Newsreader",Georgia,serif; font-size:clamp(4rem,10vw,6.5rem); line-height:.8; }
.erro-404 h1 { font-size:clamp(2.3rem,5vw,4rem); margin:.45rem auto 1rem; max-width:16ch; }
.erro-404__texto { color:var(--tinta-media); font-size:1.1rem; line-height:1.7; margin:0 auto; max-width:48ch; }
.erro-404__acoes { display:flex; flex-wrap:wrap; gap:.8rem; justify-content:center; margin:2rem 0 2.8rem; }
.erro-404__busca { background:rgba(255,255,255,.75); border:1px solid rgba(74,43,208,.13); border-radius:1rem; padding:1.25rem; text-align:left; }
.erro-404__busca strong { color:var(--tinta); display:block; font-family:"Newsreader",Georgia,serif; font-size:1.2rem; margin-bottom:.8rem; }
.erro-404__busca .busca { max-width:none; }

@media (max-width:48rem) { .origem { grid-template-columns:1fr; gap:2rem; } .origem__mapa { max-width:27rem; margin:auto; width:100%; } .idiomas { right:.8rem; top:calc(100% + .35rem); } .idiomas .glink span { display:none; } }
@media (max-width:48rem) { .perfil-apresentacao, .contato, .equipe__apresentacao, .perfil-galeria { grid-template-columns:1fr; } .perfil-marcos, .dimensoes-resumo, .equipe__cartoes { grid-template-columns:1fr; } }
@media (max-width:48rem) { .equipe__desenvolvedor { grid-template-columns:6.5rem minmax(0,1fr); gap:1.1rem; } }
@media (max-width:56rem) { .agenda__calendario { grid-template-columns:repeat(2,1fr); } }
@media (max-width:48rem) { .agenda__introducao { align-items:flex-start; flex-direction:column; } .agenda__calendario { grid-template-columns:1fr; } .agenda__mes { padding:1.1rem; } .agenda__dia { height:2rem; font-size:.84rem; } }
@media (max-width:48rem) { .cookies { bottom:.65rem; left:.65rem; right:.65rem; } .cookies__conteudo { align-items:flex-start; flex-direction:column; gap:.85rem; padding:1rem; } .cookies__acoes { justify-content:flex-start; } }

/* ---------- área editorial e acesso aprovado ---------- */
.navegacao__editorial { display:none !important; margin-left:.35rem !important; }
.acesso-menu--topo { margin-left:auto; }
.topo__interno > .busca-menu { margin-left:0; }
.acesso-menu { border:1px solid rgba(255,255,255,.45); border-radius:999px; color:#fff; font-size:.76rem !important; font-weight:700; padding:.5rem .8rem !important; text-decoration:none; white-space:nowrap; }
.acesso-menu:hover { background:rgba(255,255,255,.15); color:#fff; }
.acesso { background:linear-gradient(125deg,#f0edff 0%,#e7f9fb 100%); min-height:calc(100vh - 12rem); padding:clamp(3rem,8vw,6rem) 0; }
.acesso__grade { align-items:center; display:grid; gap:clamp(2rem,7vw,7rem); grid-template-columns:minmax(0,1.05fr) minmax(20rem,.75fr); }
.acesso__apresentacao { max-width:40rem; }
.acesso__apresentacao h1 { font-size:clamp(2.5rem,5.5vw,4.5rem); line-height:.98; margin:.4rem 0 1.25rem; }
.acesso__apresentacao > p:not(.pagina-institucional__selo), .acesso__apresentacao li { color:var(--tinta-media); font-size:1.04rem; line-height:1.75; }
.acesso__apresentacao ul { display:grid; gap:.55rem; list-style:none; margin:1.8rem 0 0; padding:0; }
.acesso__apresentacao li { align-items:center; display:flex; gap:.55rem; }
.acesso__apresentacao li::before { background:#2abdd4; border-radius:50%; content:""; height:.48rem; width:.48rem; }
.acesso__cartao { background:rgba(255,255,255,.9); border:1px solid rgba(74,43,208,.14); border-radius:1.35rem; box-shadow:0 1.25rem 3rem rgba(37,22,84,.14); padding:clamp(1.5rem,4vw,2.4rem); }
.acesso__cartao h2 { font-size:clamp(1.9rem,3vw,2.6rem); margin:.35rem 0 1.2rem; }
.acesso__cartao form { display:grid; gap:1rem; }
.acesso__cartao label { color:var(--tinta); display:grid; font-size:.87rem; font-weight:700; gap:.42rem; }
.acesso__cartao input:not([type="checkbox"]), .acesso__cartao textarea { background:#fff; border:1px solid var(--linha); border-radius:.6rem; color:var(--tinta); font:inherit; font-weight:400; padding:.75rem .85rem; resize:vertical; }
.acesso__cartao input:focus, .acesso__cartao textarea:focus { border-color:var(--roxo); box-shadow:0 0 0 3px rgba(74,43,208,.11); outline:none; }
.acesso__cartao button.botao { border:0; cursor:pointer; font:500 .95rem/1 "Inter",sans-serif; justify-self:start; }
.acesso__lembrar { align-items:center; color:var(--tinta-media) !important; display:flex !important; font-size:.82rem !important; font-weight:500 !important; gap:.45rem !important; }
.acesso__lembrar input { accent-color:var(--roxo); }
.acesso__links { border-top:1px solid var(--linha); display:grid; gap:.55rem; margin-top:1.45rem; padding-top:1.25rem; }
.acesso__links a { color:var(--roxo); font-size:.88rem; font-weight:700; text-decoration:none; }
.acesso__links a:hover { text-decoration:underline; }
.acesso__nota { background:rgba(255,255,255,.68); border-left:3px solid #2abdd4; border-radius:.5rem; margin-top:1.5rem !important; padding:1rem 1.15rem; }
@media (max-width:60rem) { .acesso__grade { grid-template-columns:1fr; } .acesso__cartao { max-width:34rem; } }
@media (max-width:52rem) { .navegacao__editorial { display:flex !important; margin:.25rem 0 0 !important; } .navegacao__editorial li { border-top:1px solid rgba(255,255,255,.25); } .acesso-menu { border-color:transparent; border-radius:.5rem; font-size:.9rem !important; padding:.75rem .9rem !important; } }

/* ---------- painel de publicação pelo site ---------- */
.painel-editorial { background:linear-gradient(135deg,#f0edff,#e5f8fb); min-height:calc(100vh - 12rem); padding:clamp(2.5rem,6vw,5rem) 0; }
.painel-editorial__topo { align-items:flex-end; display:flex; gap:1rem; justify-content:space-between; margin-bottom:2rem; }
.painel-editorial__topo h1 { font-size:clamp(2.1rem,4vw,3.5rem); margin:.35rem 0 .5rem; }
.painel-editorial__topo p:not(.pagina-institucional__selo) { color:var(--tinta-media); margin:0; max-width:44rem; }
.painel-editorial__sair { color:var(--tinta-media); font-size:.86rem; font-weight:700; text-decoration:none; white-space:nowrap; }
.painel-editorial__sair:hover { color:var(--roxo); text-decoration:underline; }
.painel-editorial__sucesso { background:#e9f8f3; border:1px solid #bde4d7; border-radius:.9rem; color:#176a55; margin-bottom:1.25rem; padding:1rem 1.2rem; }
.painel-editorial__sucesso a { color:#176a55; font-weight:700; }
.painel-editorial__atalhos { display:flex; flex-wrap:wrap; gap:.7rem; margin:0 0 1.4rem; }
.painel-editorial__atalhos a { background:#fff; border:1px solid var(--linha); border-radius:99px; color:var(--tinta); font-size:.84rem; font-weight:700; padding:.62rem .9rem; text-decoration:none; }
.painel-editorial__atalhos a:hover { border-color:var(--roxo); color:var(--roxo); }
.painel-editorial__atalhos span { background:#eeeaff; border-radius:99px; color:var(--roxo); font-size:.72rem; margin-left:.25rem; padding:.1rem .4rem; }
.editorial-form { background:#fff; border:1px solid var(--linha); border-radius:1.25rem; box-shadow:0 1rem 3rem rgba(37,22,84,.09); overflow:hidden; }
.editorial-form__cabecalho { align-items:center; background:linear-gradient(110deg,#251654,#4932bf); color:#fff; display:flex; justify-content:space-between; padding:1.35rem clamp(1.2rem,3vw,2rem); }
.editorial-form__cabecalho span { color:#d9d0ff; font-size:.76rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.editorial-form__cabecalho h2 { font-family:"Newsreader",Georgia,serif; font-size:1.7rem; font-weight:500; margin:.18rem 0 0; }
.editorial-form__cabecalho a { color:#fff; font-size:.84rem; font-weight:700; text-decoration:underline; }
.editorial-form__tipos { border:0; border-bottom:1px solid var(--linha); margin:0; padding:clamp(1.2rem,3vw,2rem); }
.editorial-form__tipos legend { color:var(--tinta); font-family:"Newsreader",Georgia,serif; font-size:1.45rem; font-weight:500; margin-bottom:1rem; padding:0; }
.editorial-form__tipos > div { display:grid; gap:.75rem; grid-template-columns:repeat(4,1fr); }
.editorial-form__tipos label { cursor:pointer; position:relative; }
.editorial-form__tipos input { opacity:0; position:absolute; }
.editorial-form__tipos span { background:var(--papel-2); border:1px solid transparent; border-radius:.85rem; display:block; min-height:5.8rem; padding:1rem; transition:.18s ease; }
.editorial-form__tipos b { color:var(--tinta); display:block; font-family:"Newsreader",Georgia,serif; font-size:1.18rem; font-weight:500; margin-bottom:.3rem; }
.editorial-form__tipos small { color:var(--tinta-media); font-size:.75rem; line-height:1.35; }
.editorial-form__tipos input:checked + span { background:#eeeaff; border-color:var(--roxo); box-shadow:0 .35rem 1rem rgba(74,43,208,.13); }
.editorial-form__campos { display:grid; gap:1rem; grid-template-columns:repeat(2,minmax(0,1fr)); padding:clamp(1.2rem,3vw,2rem); }
.editorial-form label { color:var(--tinta); display:grid; font-size:.87rem; font-weight:700; gap:.4rem; }
.editorial-form input, .editorial-form textarea { background:#fff; border:1px solid var(--linha); border-radius:.55rem; color:var(--tinta); font:inherit; font-weight:400; padding:.72rem .8rem; resize:vertical; }
.editorial-form input:focus, .editorial-form textarea:focus { border-color:var(--roxo); box-shadow:0 0 0 3px rgba(74,43,208,.1); outline:none; }
.editorial-form small { color:var(--tinta-fraca); font-size:.74rem; font-weight:400; }
.editorial-form__largo { grid-column:1 / -1; }
.editorial-form__evento { display:contents; }
.editorial-form__evento[hidden], .editorial-form__video[hidden] { display:none; }
.editorial-form__rodape { align-items:center; background:var(--papel-2); border-top:1px solid var(--linha); display:flex; gap:1.5rem; justify-content:space-between; padding:1rem clamp(1.2rem,3vw,2rem); }
.editorial-form__rodape p { color:var(--tinta-media); font-size:.82rem; line-height:1.45; margin:0; max-width:38rem; }
.editorial-form__rodape .botao { border:0; cursor:pointer; flex:none; font:500 .95rem/1 "Inter",sans-serif; }
.editorial-form__rodape > div { display:flex; flex-wrap:wrap; gap:.6rem; }
.botao--claro { background:#fff; border:1px solid var(--roxo) !important; color:var(--roxo); }
.minhas-publicacoes { margin-top:2rem; }
.minhas-publicacoes__titulo { align-items:end; display:flex; justify-content:space-between; margin-bottom:1rem; }
.minhas-publicacoes__titulo h2 { font-family:"Newsreader",Georgia,serif; font-size:2rem; font-weight:500; margin:.2rem 0 0; }
.minhas-publicacoes__titulo > span { color:var(--tinta-media); font-size:.82rem; font-weight:700; }
.minhas-publicacoes__lista { background:#fff; border:1px solid var(--linha); border-radius:1rem; overflow:hidden; }
.minha-publicacao { align-items:center; border-bottom:1px solid var(--linha); display:flex; gap:1rem; justify-content:space-between; padding:1.1rem 1.2rem; }
.minha-publicacao:last-child { border-bottom:0; }
.minha-publicacao__tipo { color:var(--roxo); font-size:.72rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.minha-publicacao h3 { color:var(--tinta); font-family:"Newsreader",Georgia,serif; font-size:1.25rem; font-weight:500; margin:.18rem 0; }
.minha-publicacao p { color:var(--tinta-media); font-size:.78rem; margin:0; }
.minha-publicacao__acoes { align-items:center; display:flex; flex-wrap:wrap; gap:.55rem; }
.minha-publicacao__acoes a, .minha-publicacao__acoes button { background:#fff; border:1px solid var(--linha); border-radius:.55rem; color:var(--tinta); cursor:pointer; font:700 .78rem/1 "Inter",sans-serif; padding:.55rem .68rem; text-decoration:none; }
.minha-publicacao__acoes button { border-color:#f0c8c8; color:#ae3131; }
.minha-publicacao__acoes form { margin:0; }
.minhas-publicacoes__vazio { background:#fff; border:1px dashed var(--linha); border-radius:1rem; color:var(--tinta-media); padding:1.2rem; }
.pedidos-acesso { display:grid; gap:1rem; }
.pedido-acesso { align-items:center; background:#fff; border:1px solid var(--linha); border-radius:1rem; box-shadow:0 .6rem 1.6rem rgba(37,22,84,.06); display:flex; gap:1.5rem; justify-content:space-between; padding:1.35rem; }
.pedido-acesso h2 { font-family:"Newsreader",Georgia,serif; font-size:1.55rem; font-weight:500; margin:.2rem 0; }
.pedido-acesso a { font-size:.9rem; font-weight:700; }
.pedido-acesso p { color:var(--tinta-media); line-height:1.55; margin:1rem 0 .5rem; max-width:48rem; }
.pedido-acesso small { color:var(--tinta-fraca); }
.pedido-acesso .botao { border:0; cursor:pointer; font:500 .92rem/1 "Inter",sans-serif; white-space:nowrap; }
@media (max-width:48rem) {
	.painel-editorial { padding:1.5rem 0 2.5rem; }
	.painel-editorial__topo, .editorial-form__cabecalho, .minhas-publicacoes__titulo, .minha-publicacao { align-items:flex-start; flex-direction:column; }
	.painel-editorial__topo { margin-bottom:1.25rem; }
	.painel-editorial__topo h1 { font-size:2rem; }
	.painel-editorial__atalhos { display:grid; grid-template-columns:1fr 1fr; gap:.55rem; }
	.painel-editorial__atalhos a { align-items:center; display:flex; justify-content:center; min-height:2.8rem; padding:.55rem; text-align:center; }
	.painel-editorial__atalhos a:last-child { grid-column:1 / -1; }
	.editorial-form { border-radius:1rem; }
	.editorial-form__cabecalho { gap:.6rem; padding:1.1rem 1rem; }
	.editorial-form__cabecalho h2 { font-size:1.45rem; }
	.editorial-form__tipos, .editorial-form__campos { padding:1rem; }
	.editorial-form__tipos > div, .editorial-form__campos { grid-template-columns:1fr; }
	.editorial-form__tipos span { min-height:4.8rem; padding:.85rem; }
	.editorial-form input, .editorial-form textarea { font-size:16px; min-height:2.85rem; }
	.editorial-form textarea { min-height:12rem; }
	.editorial-form__rodape { align-items:flex-start; flex-direction:column; gap:1rem; padding:1rem; }
	.editorial-form__rodape > div { flex-direction:column; width:100%; }
	.editorial-form__rodape .botao { min-height:3rem; width:100%; }
	.minhas-publicacoes { margin-top:1.5rem; }
	.minhas-publicacoes__titulo h2 { font-size:1.7rem; }
	.minha-publicacao { gap:.8rem; padding:1rem; }
	.minha-publicacao__acoes { display:grid; grid-template-columns:1fr 1fr; width:100%; }
	.minha-publicacao__acoes a, .minha-publicacao__acoes button { align-items:center; display:flex; justify-content:center; min-height:2.8rem; text-align:center; }
	.minha-publicacao__acoes form { grid-column:1 / -1; }
	.minha-publicacao__acoes form button { width:100%; }
	.pedido-acesso { align-items:flex-start; flex-direction:column; gap:1rem; padding:1.1rem; }
	.pedido-acesso .botao { min-height:3rem; width:100%; }
}
