/* =========================================================
   Crawlina Tech, tema próprio.
   Produto no escuro, leitura no claro.
   ========================================================= */

@font-face { font-family: "Space Grotesk"; src: url("../fonts/SpaceGrotesk.woff2") format("woff2"); font-weight: 300 700; font-display: swap; }
@font-face { font-family: "Inter"; src: url("../fonts/Inter.woff2") format("woff2"); font-weight: 100 900; font-display: swap; }
@font-face { font-family: "JetBrains Mono"; src: url("../fonts/JetBrainsMono.woff2") format("woff2"); font-weight: 100 800; font-display: swap; }

:root {
	--navy: #14112B;
	--painel: #1A1636;
	--campo: #1D1940;
	--linha-escura: #2A2548;
	--borda-escura: #332D57;
	--roxo: #4B2E83;
	--violeta: #8A6FC9;
	--lavanda: #C9B8F0;
	--nevoa: #F2EFF8;
	--borda-clara: #D9D1EC;
	--texto-claro: #B9B0D4;
	--texto-apagado: #8C83A6;
	--texto-escuro-2: #453D5E;
	--texto-escuro-3: #6B6285;
	--alerta: #F2C98A;

	--fonte-titulo: "Space Grotesk", system-ui, sans-serif;
	--fonte-corpo: "Inter", system-ui, sans-serif;
	--fonte-mono: "JetBrains Mono", ui-monospace, monospace;

	--largura: 1200px;
	--margem: clamp(20px, 6vw, 120px);
	--raio: 20px;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 110px; }
body { margin: 0; background: var(--navy); color: var(--nevoa); font-family: var(--fonte-corpo); font-size: 17px; line-height: 1.6; -webkit-font-smoothing: antialiased; }
img { max-width: 100%; height: auto; display: block; }
a { color: var(--lavanda); text-underline-offset: 3px; }
a:hover { color: #fff; }
h1, h2, h3, h4 { font-family: var(--fonte-titulo); font-weight: 700; line-height: 1.1; margin: 0; }
p { margin: 0; }
:where(a, button, input, summary):focus-visible { outline: 3px solid var(--lavanda); outline-offset: 3px; border-radius: 4px; }

.visualmente-oculto { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.pular { position: absolute; left: 16px; top: -60px; z-index: 100; background: var(--lavanda); color: var(--navy); padding: 10px 16px; border-radius: 8px; font-weight: 600; }
.pular:focus { top: 16px; }

.rotulo { font-family: var(--fonte-mono); font-size: 14px; letter-spacing: 1px; text-transform: uppercase; color: var(--lavanda); }
.rotulo--literal { text-transform: none; }

.botao { display: inline-flex; align-items: center; justify-content: center; min-height: 56px; padding: 0 28px; border-radius: 12px; border: 0; background: var(--lavanda); color: var(--navy); font-family: var(--fonte-titulo); font-weight: 700; font-size: 17px; text-decoration: none; cursor: pointer; transition: background .2s ease; }
.botao:hover { background: #fff; color: var(--navy); }
.botao--pequeno { min-height: 44px; padding: 0 20px; font-size: 15px; font-family: var(--fonte-corpo); font-weight: 600; }
.botao--vazado { background: transparent; color: var(--lavanda); box-shadow: inset 0 0 0 2px var(--lavanda); }
.botao--vazado:hover { background: var(--lavanda); color: var(--navy); }

/* ---------- Topo ---------- */

.topo { position: sticky; top: 0; z-index: 50; background: rgba(20, 17, 43, .92); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-bottom: 1px solid var(--linha-escura); }
.topo__interno { max-width: calc(var(--largura) + 2 * var(--margem)); margin: 0 auto; padding: 0 var(--margem); height: 88px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.marca { display: flex; align-items: center; gap: 12px; text-decoration: none; color: var(--nevoa); }
.marca__nome { font-family: var(--fonte-titulo); font-weight: 700; font-size: 20px; color: var(--nevoa); }
.marca__nome span { color: var(--lavanda); }
.menu { display: flex; align-items: center; gap: 36px; font-size: 15px; }
.menu a:not(.botao) { text-decoration: none; }
.menu-botao { display: none; }

/* ---------- Formulário de diagnóstico ---------- */

.diagnostico { display: flex; flex-direction: column; gap: 12px; }
.diagnostico__rotulo { font-size: 14px; font-weight: 500; color: var(--lavanda); }
.diagnostico__linha { display: flex; gap: 12px; }
.diagnostico input { flex: 1; min-width: 0; height: 60px; padding: 0 20px; border-radius: 12px; border: 1px solid var(--texto-escuro-2); background: var(--campo); color: #fff; font-family: var(--fonte-mono); font-size: 17px; }
.diagnostico input::placeholder { color: var(--texto-apagado); }
.diagnostico button { height: 60px; padding: 0 28px; border: 0; border-radius: 12px; background: var(--lavanda); color: var(--navy); font-family: var(--fonte-titulo); font-weight: 700; font-size: 17px; cursor: pointer; white-space: nowrap; transition: background .2s ease; }
.diagnostico button:hover { background: #fff; }

/* ---------- Seções da home ---------- */

.hero, .evidencias, .rastreador, .investigacoes, .autora { padding-left: var(--margem); padding-right: var(--margem); }
.hero > *, .evidencias > *, .rastreador > *, .investigacoes > *, .autora > * { max-width: var(--largura); }

.secao__cabeca { display: flex; justify-content: space-between; align-items: flex-end; gap: 48px; margin: 0 auto 56px; max-width: var(--largura); }
.secao__cabeca h2 { font-size: clamp(34px, 4vw, 48px); letter-spacing: -1px; color: #fff; margin-top: 16px; }
.secao__cabeca > p { max-width: 390px; font-size: 16px; color: var(--texto-claro); }

/* Hero */
.hero { min-height: 760px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 64px; align-items: center; max-width: calc(var(--largura) + 2 * var(--margem)); margin: 0 auto; }
.hero__texto { display: flex; flex-direction: column; gap: 28px; }
.hero h1 { font-size: clamp(42px, 5vw, 64px); line-height: 1.04; letter-spacing: -1.5px; color: #fff; }
.hero__apoio { font-size: 20px; color: var(--texto-claro); max-width: 520px; }
.hero .diagnostico { margin-top: 12px; }
.hero__nota { font-size: 14px; color: var(--texto-apagado); margin-top: -12px; }
.hero__sistema { position: relative; min-height: 560px; display: flex; align-items: center; justify-content: center; }
.ondas { position: absolute; width: 620px; height: 620px; left: 50%; top: 50%; transform: translate(-50%, -50%); }
.ondas circle { fill: none; stroke: var(--violeta); stroke-width: 1.5; }
.ondas circle:nth-child(1) { stroke-opacity: .28; }
.ondas circle:nth-child(2) { stroke-opacity: .18; }
.ondas circle:nth-child(3) { stroke-opacity: .1; }

.console { position: relative; width: min(520px, 100%); background: var(--painel); border: 1px solid var(--borda-escura); border-radius: var(--raio); overflow: hidden; }
.console__topo { display: flex; align-items: center; justify-content: space-between; padding: 18px 22px; border-bottom: 1px solid var(--linha-escura); }
.console__id { display: flex; align-items: center; gap: 12px; }
.console__id strong { display: block; font-family: var(--fonte-titulo); font-size: 15px; color: #fff; }
.console__id span { display: block; font-family: var(--fonte-mono); font-size: 12px; color: var(--texto-apagado); }
.console__estado { display: flex; align-items: center; gap: 8px; font-family: var(--fonte-mono); font-size: 12px; color: var(--lavanda); }
.pulso { width: 8px; height: 8px; border-radius: 50%; background: var(--lavanda); display: inline-block; animation: pulso 1.1s ease-in-out infinite; }
.console__corpo { position: relative; padding: 20px 22px 24px; display: flex; flex-direction: column; gap: 12px; font-family: var(--fonte-mono); font-size: 14px; }
.console__corpo p { display: flex; justify-content: space-between; gap: 16px; }
.console__corpo span { color: var(--texto-claro); }
.console__corpo b { font-weight: 500; color: var(--lavanda); }
.console__corpo b.alerta { color: var(--alerta); }
.console__varredura { position: absolute; left: 0; right: 0; top: 0; height: 2px; background: var(--violeta); opacity: .35; animation: varredura 3.2s linear infinite; }
.console__cursor { justify-content: flex-start !important; align-items: center; gap: 6px !important; color: var(--texto-apagado); margin-top: 6px; }
.console__cursor i { width: 9px; height: 16px; background: var(--lavanda); display: inline-block; animation: piscar 1s step-end infinite; }

/* Evidências */
.evidencias { padding-top: 96px; padding-bottom: 110px; border-top: 1px solid var(--linha-escura); }
.evidencias__grade { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 0 auto; }
.evidencia { min-height: 300px; padding: 32px; border-radius: var(--raio); background: var(--painel); border: 1px solid var(--borda-escura); display: flex; justify-content: space-between; gap: 24px; }
.evidencia__texto { display: flex; flex-direction: column; justify-content: space-between; gap: 24px; }
.evidencia__valor { font-family: var(--fonte-titulo); font-weight: 700; font-size: clamp(44px, 4.4vw, 60px); line-height: 1; letter-spacing: -2px; color: #fff; font-variant-numeric: tabular-nums; }
.evidencia__label { font-size: 16px; color: var(--texto-claro); max-width: 220px; }
.evidencia__barras { display: flex; align-items: flex-end; gap: 10px; height: 236px; flex-shrink: 0; }
.barra { height: 100%; display: flex; flex-direction: column; justify-content: flex-end; align-items: center; gap: 8px; }
.barra i { display: block; width: 28px; height: var(--h); border-radius: 6px; background: var(--texto-escuro-2); transform-origin: bottom; }
.barra--depois i { background: var(--lavanda); }
.barra span { font-family: var(--fonte-mono); font-size: 11px; color: var(--texto-apagado); }
.barra--depois span { color: var(--lavanda); }
.animar .barra i { transform: scaleY(0); }
.animar.visivel .barra i { transform: scaleY(1); transition: transform 1.4s cubic-bezier(.2, .7, .2, 1); }

/* Rastreador */
.rastreador { min-height: 740px; padding-top: 110px; padding-bottom: 110px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 80px; align-items: center; border-top: 1px solid var(--linha-escura); max-width: calc(var(--largura) + 2 * var(--margem)); margin: 0 auto; }
.rastreador__texto { display: flex; flex-direction: column; gap: 24px; }
.rastreador h2 { font-size: clamp(34px, 4vw, 48px); letter-spacing: -1px; color: #fff; }
.rastreador__texto > p { font-size: 18px; line-height: 1.65; color: var(--texto-claro); }
.rastreador__acao { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; margin-top: 8px; }
.rastreador__acao span { font-size: 14px; color: var(--texto-apagado); }

.checagem { background: var(--painel); border: 1px solid var(--borda-escura); border-radius: var(--raio); overflow: hidden; }
.checagem__topo { display: flex; justify-content: space-between; align-items: center; padding: 20px 24px; border-bottom: 1px solid var(--linha-escura); }
.checagem__topo strong { font-family: var(--fonte-titulo); font-size: 16px; color: #fff; }
.checagem__topo span { font-family: var(--fonte-mono); font-size: 12px; color: var(--texto-apagado); }
.checagem ul { list-style: none; margin: 0; padding: 0; }
.checagem li { min-height: 64px; padding: 0 24px; display: flex; align-items: center; justify-content: space-between; gap: 16px; border-bottom: 1px solid #231F42; color: var(--texto-apagado); }
.checagem li:last-child { border-bottom: 0; }
.checagem li em { font-style: normal; font-family: var(--fonte-mono); font-size: 12px; display: flex; align-items: center; gap: 8px; color: #6B6285; }
.checagem li.feito, .checagem li.rodando { color: var(--nevoa); }
.checagem li.feito em { color: var(--lavanda); }
.checagem li.feito em::before { content: ""; width: 12px; height: 7px; border-left: 2px solid var(--lavanda); border-bottom: 2px solid var(--lavanda); transform: rotate(-45deg) translateY(-2px); }
.checagem li.rodando em { color: #B39DE8; }
.checagem li.rodando em::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--violeta); animation: pulso 1.1s ease-in-out infinite; }

/* Investigações */
.investigacoes { background: var(--nevoa); color: var(--navy); padding-top: 110px; padding-bottom: 110px; }
.investigacoes .rotulo { color: var(--roxo); }
.investigacoes .secao__cabeca h2 { color: var(--navy); }
.investigacoes .secao__cabeca > p { color: var(--texto-escuro-2); }
.cadeia { list-style: none; margin: 0 auto 56px; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px; position: relative; }
.cadeia::before { content: ""; position: absolute; left: 28px; right: 28px; top: 27px; height: 2px; background: var(--lavanda); }
.cadeia__etapa { position: relative; display: flex; flex-direction: column; gap: 6px; }
.cadeia__num { width: 56px; height: 56px; border-radius: 50%; background: var(--navy); color: var(--lavanda); display: flex; align-items: center; justify-content: center; font-family: var(--fonte-mono); font-size: 15px; font-weight: 500; margin-bottom: 14px; }
.cadeia__etapa h3 { font-size: 22px; }
.cadeia__etapa h3 a { color: var(--navy); text-decoration: none; }
.cadeia__etapa h3 a:hover { color: var(--roxo); }
.cadeia__papel { font-size: 14px; color: var(--texto-escuro-3); }
.cadeia__artigos { list-style: none; margin: 14px 0 0; padding: 16px 0 0; border-top: 1px solid var(--borda-clara); display: flex; flex-direction: column; gap: 14px; }
.cadeia__artigos a { display: flex; gap: 10px; color: var(--navy); text-decoration: none; font-size: 17px; line-height: 1.45; font-weight: 500; }
.cadeia__artigos a::before { content: ">"; font-family: var(--fonte-mono); color: var(--roxo); }
.cadeia__artigos a:hover { color: var(--roxo); text-decoration: underline; }
.cadeia__vazio { font-size: 15px; color: var(--texto-escuro-3); }
.link-forte { display: inline-block; max-width: var(--largura); color: var(--roxo); font-family: var(--fonte-titulo); font-weight: 700; font-size: 17px; text-decoration: none; border-bottom: 2px solid var(--lavanda); padding-bottom: 4px; }
.investigacoes > .link-forte { margin-left: max(0px, calc((100% - var(--largura)) / 2)); }
.link-forte:hover { color: var(--navy); }

/* Autora */
.autora { min-height: 520px; padding-top: 100px; padding-bottom: 100px; display: flex; align-items: center; gap: 80px; max-width: calc(var(--largura) + 2 * var(--margem)); margin: 0 auto; }
.autora__foto { width: 320px; height: 320px; flex-shrink: 0; border-radius: 50%; object-fit: cover; border: 4px solid var(--violeta); }
.autora__texto { display: flex; flex-direction: column; gap: 20px; max-width: 680px; }
.autora__frase { font-family: var(--fonte-titulo); font-weight: 500; font-size: clamp(26px, 3vw, 34px); line-height: 1.3; color: #fff; }
.autora__texto > p:not(.rotulo):not(.autora__frase):not(.autora__links) { color: var(--texto-claro); }
.autora__links { display: flex; gap: 28px; font-weight: 500; }

/* ---------- Rodapé ---------- */

.rodape { background: var(--navy); color: var(--nevoa); font-family: var(--fonte-corpo); border-top: 1px solid var(--linha-escura); padding: 96px var(--margem) 40px; }
.rodape__cta, .rodape__base { max-width: var(--largura); margin: 0 auto; }
.rodape__cta { display: flex; flex-direction: column; gap: 32px; }
.rodape__cta h2 { max-width: 820px; font-size: clamp(30px, 3.6vw, 44px); line-height: 1.15; letter-spacing: -1px; color: #fff; }
.rodape__cta .diagnostico { max-width: 680px; }
.rodape__base { margin-top: 72px; padding-top: 28px; border-top: 1px solid var(--linha-escura); display: flex; justify-content: space-between; align-items: center; gap: 24px; flex-wrap: wrap; font-size: 14px; }
.rodape--sem-cta { padding-top: 40px; }
.rodape--sem-cta .rodape__base { margin-top: 0; padding-top: 0; border-top: 0; }
.marca--rodape .marca__nome { font-size: 16px; }
.rodape__categorias, .rodape__links { display: flex; gap: 24px; flex-wrap: wrap; }
.rodape a { text-decoration: none; }
.rodape__links span { color: var(--texto-apagado); }

/* =========================================================
   Leitura: artigo, arquivos, páginas.
   ========================================================= */

.artigo, .arquivo, .pagina, .sobre, .continuar, .erro { background: var(--nevoa); color: var(--navy); }
.artigo a, .arquivo a, .pagina a, .sobre a:not(.botao), .continuar a { color: var(--roxo); }

.trilha ol { list-style: none; margin: 0 0 28px; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; font-size: 14px; color: var(--texto-escuro-3); }
.trilha li { display: flex; align-items: center; gap: 8px; }
.trilha li:not(:last-child)::after { content: "/"; color: #B7ADCF; }
.trilha a { color: var(--texto-escuro-3) !important; text-decoration: none; }
.trilha a:hover { color: var(--roxo) !important; text-decoration: underline; }
.trilha [aria-current="page"] { color: var(--navy); font-weight: 600; }

/* Cabeça do artigo */
.artigo__cabeca { max-width: 880px; margin: 0 auto; padding: 72px var(--margem) 40px; box-sizing: content-box; }
.artigo__tema { display: inline-block; font-family: var(--fonte-mono); font-size: 14px; text-decoration: none; margin-bottom: 18px; }
.artigo__cabeca h1 { font-size: clamp(36px, 4.6vw, 58px); letter-spacing: -1.4px; line-height: 1.06; color: var(--navy); }
.artigo__linha-fina { margin-top: 22px; font-size: 21px; line-height: 1.55; color: var(--texto-escuro-2); }
.artigo__meta { margin-top: 28px; display: flex; flex-wrap: wrap; gap: 8px 28px; font-size: 15px; color: var(--texto-escuro-3); }
.artigo__capa { max-width: 1200px; margin: 0 auto; padding: 0 var(--margem); box-sizing: content-box; }
.artigo__capa img { width: 100%; border-radius: var(--raio); }

.artigo__grade { max-width: var(--largura); margin: 0 auto; padding: 64px var(--margem) 96px; box-sizing: content-box; display: grid; grid-template-columns: 260px minmax(0, 720px); gap: 72px; justify-content: center; }
.artigo__lateral { position: relative; }

.sumario--lateral { position: sticky; top: 120px; }
.sumario__titulo { font-family: var(--fonte-titulo); font-weight: 700; font-size: 15px; color: var(--navy); margin-bottom: 14px; }
.sumario ol { list-style: none; margin: 0; padding: 0; border-left: 2px solid var(--borda-clara); }
.sumario li a { display: block; padding: 7px 0 7px 16px; margin-left: -2px; border-left: 2px solid transparent; font-size: 14px; line-height: 1.45; color: var(--texto-escuro-3) !important; text-decoration: none; }
.sumario li.sumario__nivel-3 a { padding-left: 30px; font-size: 13.5px; }
.sumario li a:hover { color: var(--navy) !important; }
.sumario li a.ativo { color: var(--roxo) !important; border-left-color: var(--roxo); font-weight: 600; }
.sumario-movel { display: none; }

/* Texto corrido do artigo, incluindo os blocos que vêm do editor */
.texto { font-size: 18px; line-height: 1.75; color: #2A2548; }
.texto > * + * { margin-top: 1.2em; }
.texto h2 { font-size: 32px; letter-spacing: -.6px; margin-top: 2.2em; color: var(--navy); }
.texto h3 { font-size: 23px; margin-top: 1.8em; color: var(--navy); }
.texto h2 + *, .texto h3 + * { margin-top: .7em; }
.texto strong { color: var(--navy); }
.texto ul, .texto ol { padding-left: 1.3em; }
.texto li + li { margin-top: .5em; }
.texto li::marker { color: var(--roxo); }
.texto img { border-radius: 14px; }
.texto figure { margin-left: 0; margin-right: 0; }
.texto figcaption { font-size: 14px; color: var(--texto-escuro-3); margin-top: 10px; }
.texto blockquote { margin-left: 0; padding: 4px 0 4px 24px; border-left: 3px solid var(--violeta); font-family: var(--fonte-titulo); font-size: 22px; line-height: 1.45; color: var(--navy); }
.texto code { font-family: var(--fonte-mono); font-size: .88em; background: #E6E0F3; color: var(--roxo); padding: .12em .4em; border-radius: 5px; }
.texto pre { background: var(--navy); color: var(--nevoa); padding: 22px; border-radius: 14px; overflow-x: auto; font-size: 15px; line-height: 1.6; }
.texto pre code { background: none; color: inherit; padding: 0; }
.texto table { width: 100%; border-collapse: collapse; font-size: 15px; display: block; overflow-x: auto; }
.texto th { background: var(--navy); color: #fff; font-family: var(--fonte-titulo); text-align: left; }
.texto th, .texto td { padding: 12px 14px; border: 1px solid var(--borda-clara); }
.texto hr, .texto .wp-block-separator { border: 0; height: 1px; background: var(--borda-clara); margin: 3em 0; }
.texto .wp-block-buttons { display: flex; flex-wrap: wrap; gap: 12px; }
.texto .wp-block-button__link { display: inline-flex; align-items: center; min-height: 52px; padding: 0 26px; border-radius: 12px; background: var(--navy); color: var(--nevoa) !important; font-family: var(--fonte-titulo); font-weight: 700; text-decoration: none; }
.texto .wp-block-button__link:hover { background: var(--roxo); }
.texto .is-style-outline .wp-block-button__link { background: transparent; color: var(--navy) !important; box-shadow: inset 0 0 0 2px var(--navy); }
.texto .wp-block-columns { display: flex; gap: 32px; flex-wrap: wrap; }
.texto .wp-block-column { flex: 1 1 240px; }
.texto .has-text-align-center { text-align: center; }

/* FAQ, tanto o componente novo quanto o formato colado antes */
.faq { margin-top: 3em !important; }
.faq__titulo { margin-bottom: 20px; }
.faq__item, .crawlina-faq-item { background: #fff; border: 1px solid var(--borda-clara); border-radius: 14px; margin-top: 12px; }
.faq__item summary, .crawlina-faq-item summary { list-style: none; cursor: pointer; padding: 20px 24px; display: flex; justify-content: space-between; align-items: center; gap: 16px; font-family: var(--fonte-titulo); font-weight: 700; font-size: 18px; line-height: 1.35; color: var(--navy); }
.faq__item summary::-webkit-details-marker, .crawlina-faq-item summary::-webkit-details-marker { display: none; }
.faq__item summary::after, .crawlina-faq-item summary::after { content: "+"; flex-shrink: 0; width: 32px; height: 32px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: var(--nevoa); color: var(--roxo); font-size: 22px; font-weight: 400; transition: transform .2s ease; }
.faq__item[open] summary::after, .crawlina-faq-item[open] summary::after { transform: rotate(45deg); }
.faq__resposta, .crawlina-faq-resposta { padding: 0 24px 22px; font-size: 16.5px; line-height: 1.7; color: var(--texto-escuro-2); }

/* Assinatura no fim do artigo */
.assinatura { margin-top: 64px; padding: 32px; background: #fff; border: 1px solid var(--borda-clara); border-radius: var(--raio); display: flex; gap: 24px; align-items: flex-start; }
.assinatura img { width: 96px; height: 96px; border-radius: 50%; object-fit: cover; flex-shrink: 0; border: 3px solid var(--lavanda); }
.assinatura__nome { font-family: var(--fonte-titulo); font-weight: 700; font-size: 19px; color: var(--navy); margin-bottom: 6px; }
.assinatura p { font-size: 15.5px; line-height: 1.6; color: var(--texto-escuro-2); }
.assinatura__links { margin-top: 12px !important; display: flex; gap: 22px; font-weight: 600; }

/* Listas editoriais: categoria, investigações, relacionados */
.arquivo__cabeca, .continuar > h2 { max-width: 880px; margin: 0 auto; }
.arquivo { padding: 72px var(--margem) 110px; }
.arquivo__cabeca { margin-bottom: 48px; }
.arquivo .rotulo { color: var(--roxo); margin-bottom: 14px; text-transform: none; letter-spacing: .3px; }
.arquivo h1 { font-size: clamp(40px, 5vw, 64px); letter-spacing: -1.5px; color: var(--navy); }
.arquivo__descricao { margin-top: 24px; font-size: 19px; line-height: 1.65; color: var(--texto-escuro-2); max-width: 720px; }
.arquivo__descricao p + p { margin-top: 1em; }
.arquivo__vazio { max-width: 880px; margin: 0 auto; font-size: 18px; color: var(--texto-escuro-2); }

.lista { list-style: none; margin: 0 auto; padding: 0; max-width: 880px; border-top: 1px solid var(--borda-clara); }
.linha { border-bottom: 1px solid var(--borda-clara); }
.linha__link { display: grid; grid-template-columns: 150px minmax(0, 1fr); column-gap: 32px; row-gap: 8px; padding: 32px 0; text-decoration: none; color: var(--navy) !important; }
.linha__tema { grid-row: 1 / span 3; font-family: var(--fonte-mono); font-size: 13.5px; color: var(--roxo); padding-top: 6px; }
.linha__titulo { font-family: var(--fonte-titulo); font-weight: 700; font-size: 25px; line-height: 1.25; letter-spacing: -.3px; transition: color .2s ease; }
.linha__resumo { font-size: 16.5px; line-height: 1.6; color: var(--texto-escuro-2); }
.linha__meta { font-size: 14px; color: var(--texto-escuro-3); display: flex; gap: 20px; }
.linha__link:hover .linha__titulo { color: var(--roxo); }

.continuar { padding: 0 var(--margem) 110px; }
.continuar > h2 { font-size: 32px; letter-spacing: -.6px; margin-bottom: 24px; }

.nav-links { max-width: 880px; margin: 40px auto 0; display: flex; gap: 10px; flex-wrap: wrap; }
.nav-links .page-numbers { min-width: 44px; height: 44px; padding: 0 14px; display: inline-flex; align-items: center; justify-content: center; border-radius: 10px; border: 1px solid var(--borda-clara); text-decoration: none; font-weight: 600; background: #fff; }
.nav-links .current { background: var(--navy); color: #fff; border-color: var(--navy); }

/* Página e Sobre */
.pagina { padding: 72px var(--margem) 110px; }
.pagina__cabeca, .pagina .texto { max-width: 720px; margin-left: auto; margin-right: auto; }
.pagina h1 { font-size: clamp(38px, 4.6vw, 56px); letter-spacing: -1.2px; margin-bottom: 32px; }
.sobre { padding: 72px var(--margem) 110px; }
.sobre > .trilha, .sobre__grade { max-width: var(--largura); margin: 0 auto; }
.sobre__grade { display: grid; grid-template-columns: 360px minmax(0, 1fr); gap: 72px; align-items: start; }
.sobre__foto { width: 360px; height: 360px; border-radius: 50%; object-fit: cover; border: 4px solid var(--violeta); }
.sobre h1 { font-size: clamp(38px, 4.6vw, 56px); letter-spacing: -1.2px; margin-bottom: 28px; }
.sobre__texto p { font-size: 18px; line-height: 1.75; color: #2A2548; max-width: 680px; }
.sobre__texto p + p { margin-top: 1.1em; }
.sobre__abertura { font-size: 21px !important; color: var(--navy) !important; }
.sobre__acoes { margin-top: 36px !important; display: flex; gap: 14px; flex-wrap: wrap; }
.sobre .botao { background: var(--navy); color: var(--nevoa); }
.sobre .botao:hover { background: var(--roxo); color: #fff; }
.sobre .botao--vazado { background: transparent; color: var(--navy); box-shadow: inset 0 0 0 2px var(--navy); }
.sobre .botao--vazado:hover { background: var(--navy); color: var(--nevoa); }

/* 404 */
.erro { padding: 120px var(--margem); text-align: center; display: flex; flex-direction: column; align-items: center; gap: 22px; }
.erro h1 { font-size: clamp(34px, 4vw, 48px); letter-spacing: -1px; }
.erro p { max-width: 520px; font-size: 18px; color: var(--texto-escuro-2); }
.erro__acoes { display: flex; gap: 14px; flex-wrap: wrap; justify-content: center; }
.erro .botao { background: var(--navy); color: var(--nevoa); }
.erro .botao--vazado { background: transparent; color: var(--navy); box-shadow: inset 0 0 0 2px var(--navy); }

/* ---------- Movimento ---------- */

@keyframes pulso { 0%, 100% { opacity: .35; } 50% { opacity: 1; } }
@keyframes piscar { 0%, 49% { opacity: 1; } 50%, 100% { opacity: 0; } }
@keyframes varredura { from { transform: translateY(0); } to { transform: translateY(300px); } }

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { animation: none !important; transition: none !important; }
	.animar .barra i { transform: none; }
}

/* ---------- Telas menores ---------- */

@media (max-width: 1100px) {
	.hero, .rastreador { grid-template-columns: 1fr; gap: 56px; }
	.hero { padding-top: 64px; padding-bottom: 80px; min-height: 0; }
	.hero__sistema { min-height: 0; }
	.ondas { display: none; }
	.evidencias__grade { grid-template-columns: 1fr; }
	.cadeia { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 48px; }
	.cadeia::before { display: none; }
	.artigo__grade { grid-template-columns: minmax(0, 720px); }
	.artigo__lateral { display: none; }
	.sumario-movel { display: block; margin-bottom: 40px; background: #fff; border: 1px solid var(--borda-clara); border-radius: 14px; }
	.sumario-movel summary { cursor: pointer; padding: 16px 20px; font-family: var(--fonte-titulo); font-weight: 700; color: var(--navy); }
	.sumario-movel .sumario { padding: 0 20px 16px; }
	.sumario-movel .sumario__titulo { display: none; }
	.sobre__grade { grid-template-columns: 1fr; gap: 40px; }
	.sobre__foto { width: 240px; height: 240px; }
}

@media (max-width: 780px) {
	body { font-size: 16px; }
	.topo__interno { height: 72px; }
	.menu-botao { display: inline-flex; width: 44px; height: 44px; border: 1px solid var(--borda-escura); border-radius: 10px; background: transparent; align-items: center; justify-content: center; cursor: pointer; }
	.menu-botao__linhas, .menu-botao__linhas::before, .menu-botao__linhas::after { display: block; width: 18px; height: 2px; background: var(--nevoa); position: relative; }
	.menu-botao__linhas::before, .menu-botao__linhas::after { content: ""; position: absolute; left: 0; }
	.menu-botao__linhas::before { top: -6px; }
	.menu-botao__linhas::after { top: 6px; }
	.menu { position: absolute; left: 0; right: 0; top: 72px; flex-direction: column; align-items: stretch; gap: 0; padding: 12px var(--margem) 24px; background: var(--navy); border-bottom: 1px solid var(--linha-escura); display: none; }
	.menu.aberto { display: flex; }
	.menu a:not(.botao) { padding: 14px 0; border-bottom: 1px solid var(--linha-escura); font-size: 17px; }
	.menu .botao { margin-top: 16px; }
	.diagnostico__linha { flex-direction: column; }
	.diagnostico input { flex: none; width: 100%; }
	.secao__cabeca { flex-direction: column; align-items: flex-start; gap: 16px; margin-bottom: 40px; }
	.evidencia { flex-direction: column; min-height: 0; }
	.evidencia__barras { height: 160px; }
	.barra i { height: calc(var(--h) * .65); }
	.cadeia { grid-template-columns: 1fr; }
	.autora { flex-direction: column; align-items: flex-start; gap: 40px; }
	.autora__foto { width: 200px; height: 200px; }
	.linha__link { grid-template-columns: 1fr; }
	.linha__tema { grid-row: auto; padding-top: 0; }
	.linha__titulo { font-size: 22px; }
	.assinatura { flex-direction: column; }
	.rodape__base { flex-direction: column; align-items: flex-start; }
	.texto h2 { font-size: 27px; }
}
