/* ===== O ARQUIVO · sistema visual do portal =====
   Herdado dos carrosseis: fundo #0E1418, terracota, ambar, selo vermelho.
   Archivo Black (manchete) / Lora (corpo) / JetBrains Mono (ficha tecnica). */

/* ===== FONTES, hospedadas aqui mesmo =====
   Antes vinham do fonts.googleapis.com: 24 KB de folha render-blocking, duas
   conexoes novas (DNS, TCP e TLS em googleapis e em gstatic) e 44 declaracoes
   para usar 6. Agora sao 5 arquivos no proprio dominio, subset latin, variaveis.
   As faixas de peso reproduzem exatamente o que o Google servia. */
@font-face{font-family:'Archivo Black'; font-style:normal; font-weight:400; font-display:swap;
  src:url('/assets/fontes/archivo-black.woff2') format('woff2')}
@font-face{font-family:'Archivo'; font-style:normal; font-weight:400 700; font-display:swap;
  src:url('/assets/fontes/archivo-var.woff2') format('woff2')}
@font-face{font-family:'Lora'; font-style:normal; font-weight:400 600; font-display:swap;
  src:url('/assets/fontes/lora-var.woff2') format('woff2')}
@font-face{font-family:'Lora'; font-style:italic; font-weight:400; font-display:swap;
  src:url('/assets/fontes/lora-italic-var.woff2') format('woff2')}
@font-face{font-family:'JetBrains Mono'; font-style:normal; font-weight:400 700; font-display:swap;
  src:url('/assets/fontes/jetbrains-mono-var.woff2') format('woff2')}

:root{
  --tinta:#0E1418;        --tinta-2:#141C21;      --tinta-3:#1B252B;
  --papel:#F7F5F0;        --papel-2:#E4E0D6;      --papel-3:#9AA4A9;
  --terra:#C25B3C;        --terra-clara:#EDA98C;  --selo:#B03A2E;
  --ambar:#E8B44A;        --verde:#6E9E82;        --azul:#6E8A9C;
  --linha:rgba(247,245,240,.13);
  --med:68ch;
  --display:'Archivo Black',Impact,'Haettenschweiler',sans-serif;
  --sans:'Archivo','Helvetica Neue',Arial,sans-serif;
  --serif:'Lora',Georgia,'Times New Roman',serif;
  --mono:'JetBrains Mono','SF Mono',Menlo,Consolas,monospace;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--tinta); color:var(--papel);
  font-family:var(--serif); font-size:19px; line-height:1.72;
  font-synthesis-weight:none; text-rendering:optimizeLegibility;
}
/* grao: textura para o fundo nao ficar chapado */
body::before{
  content:''; position:fixed; inset:0; z-index:0; pointer-events:none; opacity:.5;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='.045'/%3E%3C/svg%3E");
}
main,header,footer,nav{position:relative; z-index:1}
img{max-width:100%; height:auto; display:block}
a{color:inherit}

/* ---------- primitivos ---------- */
.env{width:min(1180px,92vw); margin-inline:auto}
.ficha{font-family:var(--mono); font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--papel-3)}
.selo{
  display:inline-block; font-family:var(--mono); font-size:10.5px; font-weight:700;
  letter-spacing:.2em; text-transform:uppercase; background:var(--selo); color:#fff;
  padding:5px 9px 4px; line-height:1;
}
.selo--utilidade{background:var(--verde)} .selo--linha{background:var(--azul)}
.selo--dado{background:var(--ambar); color:var(--tinta)} .selo--plano{background:var(--terra)}

/* ---------- cabecalho ---------- */
.topo{border-bottom:1px solid var(--linha); background:rgba(14,20,24,.93); backdrop-filter:blur(9px);
  position:sticky; top:0; z-index:50}
.topo__in{display:flex; align-items:center; gap:26px; padding:14px 0; justify-content:space-between}
.marca{font-family:var(--display); font-size:20px; letter-spacing:-.02em; text-transform:uppercase;
  text-decoration:none; line-height:1; display:flex; align-items:baseline; gap:9px}
.marca b{color:var(--terra); font-weight:inherit}
.menu{display:flex; gap:22px; list-style:none; margin:0; padding:0}
.menu a{font-family:var(--mono); font-size:11.5px; letter-spacing:.14em; text-transform:uppercase;
  text-decoration:none; color:var(--papel-3); padding:4px 0; border-bottom:1.5px solid transparent; transition:.18s}
.menu a:hover{color:var(--papel); border-color:var(--terra)}
.btn-grupo{font-family:var(--mono); font-size:11.5px; font-weight:700; letter-spacing:.12em;
  text-transform:uppercase; text-decoration:none; background:var(--papel); color:var(--tinta);
  padding:9px 15px; transition:.18s; white-space:nowrap}
.btn-grupo:hover{background:var(--ambar)}
.so-estreito{display:none}

/* ---------- manchete de capa ---------- */
.capa{padding:44px 0 30px; border-bottom:1px solid var(--linha)}
.capa__grid{display:grid; grid-template-columns:1.35fr .85fr; gap:46px; align-items:start}
.lead{display:block; text-decoration:none}
.lead__foto{position:relative; aspect-ratio:16/9; overflow:hidden; background:var(--tinta-3)}
.lead__foto img{width:100%; height:100%; object-fit:cover; filter:saturate(.88) contrast(1.05);
  transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.lead:hover .lead__foto img{transform:scale(1.035)}
.lead__foto::after{content:''; position:absolute; inset:0;
  background:linear-gradient(180deg,rgba(14,20,24,0) 42%,rgba(14,20,24,.86) 100%)}
.lead__selo{position:absolute; top:14px; left:14px; z-index:2}
.lead h1{
  font-family:var(--display); font-size:clamp(30px,4.1vw,54px); line-height:1.03;
  letter-spacing:-.022em; text-transform:uppercase; margin:18px 0 12px; text-wrap:balance;
}
.lead h1 em{font-style:normal; color:var(--terra)}
.lead p{margin:0; color:var(--papel-2); font-size:19px; max-width:56ch}
.lead:hover h1{color:var(--terra-clara)}

/* coluna lateral: a fila */
.fila{border-left:1px solid var(--linha); padding-left:26px}
.fila__tit{font-family:var(--mono); font-size:11px; letter-spacing:.2em; text-transform:uppercase;
  color:var(--terra); margin:0 0 18px; padding-bottom:10px; border-bottom:1px solid var(--linha)}
.fila ol{list-style:none; margin:0; padding:0; counter-reset:f}
.fila li{counter-increment:f; border-bottom:1px solid var(--linha)}
.fila li:last-child{border-bottom:0}
.fila a{display:grid; grid-template-columns:auto 1fr; gap:14px; text-decoration:none; padding:15px 0; transition:.18s}
.fila a::before{content:counter(f,decimal-leading-zero); font-family:var(--mono); font-size:12px;
  color:var(--papel-3); padding-top:3px}
.fila h3{font-family:var(--sans); font-weight:700; font-size:16.5px; line-height:1.28;
  margin:0 0 5px; letter-spacing:-.005em}
.fila a:hover h3{color:var(--terra-clara)}
.fila time{font-family:var(--mono); font-size:10.5px; letter-spacing:.12em; color:var(--papel-3);
  text-transform:uppercase}

/* ---------- grade de materias ---------- */
.secao{padding:46px 0; border-bottom:1px solid var(--linha)}
.secao__cab{display:flex; align-items:baseline; justify-content:space-between; gap:20px;
  margin-bottom:28px; padding-bottom:12px; border-bottom:2px solid var(--terra)}
.secao__cab h2{font-family:var(--display); font-size:22px; text-transform:uppercase;
  letter-spacing:-.01em; margin:0}
.grade{display:grid; grid-template-columns:repeat(3,1fr); gap:34px 30px}
.cartao{display:block; text-decoration:none}
.cartao__foto{position:relative; aspect-ratio:4/3; overflow:hidden; background:var(--tinta-3); margin-bottom:14px}
.cartao__foto img{width:100%; height:100%; object-fit:cover; filter:saturate(.85) contrast(1.04);
  transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.cartao:hover .cartao__foto img{transform:scale(1.045)}
.cartao__selo{position:absolute; top:11px; left:11px; z-index:2}
.cartao h3{font-family:var(--sans); font-weight:700; font-size:20px; line-height:1.22;
  letter-spacing:-.012em; margin:0 0 9px; text-wrap:balance}
.cartao:hover h3{color:var(--terra-clara)}
.cartao p{margin:0 0 10px; font-size:16px; line-height:1.6; color:var(--papel-3)}
.cartao .ficha{display:block}

/* ---------- materia ---------- */
.materia{padding:40px 0 0}
.materia__cab{max-width:var(--med); margin-inline:auto}
.trilha{font-family:var(--mono); font-size:11px; letter-spacing:.15em; text-transform:uppercase;
  color:var(--papel-3); margin-bottom:20px}
.trilha a{text-decoration:none; color:var(--terra)}
.materia h1{
  font-family:var(--display); font-size:clamp(30px,4.4vw,52px); line-height:1.04;
  letter-spacing:-.024em; text-transform:uppercase; margin:14px 0 18px; text-wrap:balance;
}
.materia h1 em{font-style:normal; color:var(--terra)}
.chamada{font-size:22px; line-height:1.55; color:var(--papel-2); margin:0 0 26px; text-wrap:pretty}

/* ficha tecnica: a marca do portal */
.apuracao{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); gap:2px;
  background:var(--linha); border-top:2px solid var(--terra); border-bottom:1px solid var(--linha);
  margin:0 0 34px;
}
.apuracao div{background:var(--tinta); padding:13px 15px}
.apuracao dt{font-family:var(--mono); font-size:9.5px; letter-spacing:.18em; text-transform:uppercase;
  color:var(--papel-3); margin:0 0 5px}
.apuracao dd{font-family:var(--sans); font-size:14px; font-weight:600; margin:0; letter-spacing:.01em}

.materia__foto{margin:0 0 12px}
.materia__foto img{width:100%}
.materia__foto figcaption{font-family:var(--mono); font-size:10.5px; letter-spacing:.1em;
  text-transform:uppercase; color:var(--papel-3); padding-top:9px; border-top:1px solid var(--linha); margin-top:9px}

.corpo{max-width:var(--med); margin-inline:auto; padding-bottom:20px}
.corpo p{margin:0 0 21px; text-wrap:pretty}
.corpo h2{font-family:var(--sans); font-weight:700; font-size:27px; line-height:1.22;
  letter-spacing:-.015em; margin:42px 0 16px}
.corpo h3{font-family:var(--sans); font-weight:700; font-size:20px; margin:32px 0 12px}
.corpo strong{color:#fff; font-weight:700}
.corpo em{color:var(--terra-clara); font-style:italic}
.corpo a{color:var(--terra-clara); text-decoration:underline; text-underline-offset:3px;
  text-decoration-thickness:1px; text-decoration-color:rgba(237,169,140,.42)}
.corpo a:hover{text-decoration-color:var(--terra-clara)}
.corpo ul,.corpo ol{margin:0 0 22px; padding-left:22px}
.corpo li{margin-bottom:9px}
.corpo blockquote{
  margin:30px 0; padding:4px 0 4px 24px; border-left:3px solid var(--terra);
  font-size:23px; line-height:1.45; color:var(--papel); font-style:italic;
}
.corpo blockquote cite{display:block; font-family:var(--mono); font-size:11px; font-style:normal;
  letter-spacing:.13em; text-transform:uppercase; color:var(--papel-3); margin-top:12px}

/* o bloco A CONTA: onde mora o numero que fecha a materia */
.conta{
  margin:36px 0; padding:26px 28px; background:var(--tinta-2);
  border-left:4px solid var(--ambar); font-family:var(--sans);
}
.conta__rot{font-family:var(--mono); font-size:10px; letter-spacing:.22em; text-transform:uppercase;
  color:var(--ambar); margin:0 0 12px}
.conta p{margin:0 0 12px; font-size:17.5px; line-height:1.6}
.conta p:last-child{margin-bottom:0}
.conta .num{font-family:var(--display); font-size:clamp(30px,5vw,46px); line-height:1;
  color:var(--ambar); display:block; margin-bottom:6px; letter-spacing:-.02em}

/* tabela de dados */
.corpo table{width:100%; border-collapse:collapse; margin:28px 0; font-family:var(--sans); font-size:15.5px}
.corpo th{font-family:var(--mono); font-size:10px; letter-spacing:.15em; text-transform:uppercase;
  text-align:left; color:var(--papel-3); padding:10px 12px; border-bottom:2px solid var(--terra)}
.corpo td{padding:11px 12px; border-bottom:1px solid var(--linha)}
.corpo tbody tr:hover{background:var(--tinta-2)}
.tab-rolo{overflow-x:auto; -webkit-overflow-scrolling:touch}

/* fontes ao pe */
.fontes{max-width:var(--med); margin:44px auto 0; padding:26px 0 0; border-top:2px solid var(--terra)}
.fontes h2{font-family:var(--mono); font-size:11px; letter-spacing:.2em; text-transform:uppercase;
  color:var(--terra); margin:0 0 16px}
.fontes ol{margin:0; padding-left:20px; font-size:15.5px; font-family:var(--sans); color:var(--papel-2)}
.fontes li{margin-bottom:9px}
.fontes a{color:var(--terra-clara)}

/* captura */
.captura{
  max-width:var(--med); margin:44px auto; padding:30px 32px; background:var(--tinta-2);
  border:1px solid var(--linha); border-top:3px solid var(--terra);
}
.captura h2{font-family:var(--display); font-size:26px; text-transform:uppercase; line-height:1.1;
  letter-spacing:-.02em; margin:0 0 12px}
.captura p{font-family:var(--sans); font-size:16.5px; color:var(--papel-2); margin:0 0 20px; line-height:1.55}
.captura__cta{display:inline-block; font-family:var(--mono); font-size:12.5px; font-weight:700;
  letter-spacing:.12em; text-transform:uppercase; background:var(--verde); color:#0B1410;
  padding:14px 24px; text-decoration:none; transition:.18s}
.captura__cta:hover{background:var(--ambar)}
.captura small{display:block; font-family:var(--mono); font-size:10.5px; letter-spacing:.1em;
  color:var(--papel-3); margin-top:13px; text-transform:uppercase}

/* rodape */
.rodape{padding:46px 0 34px; border-top:1px solid var(--linha); margin-top:20px}
.rodape__grid{display:grid; grid-template-columns:1.5fr 1fr 1fr; gap:34px; margin-bottom:34px}
.rodape h4{font-family:var(--mono); font-size:10.5px; letter-spacing:.2em; text-transform:uppercase;
  color:var(--terra); margin:0 0 14px}
.rodape ul{list-style:none; margin:0; padding:0}
.rodape li{margin-bottom:9px}
.rodape a{font-family:var(--sans); font-size:14.5px; color:var(--papel-2); text-decoration:none}
.rodape a:hover{color:var(--terra-clara)}
.rodape__nota{font-family:var(--sans); font-size:14px; color:var(--papel-3); line-height:1.65; max-width:46ch}
.rodape__base{border-top:1px solid var(--linha); padding-top:20px; display:flex; gap:18px;
  justify-content:space-between; flex-wrap:wrap}

@media (max-width:900px){
  .capa__grid{grid-template-columns:1fr; gap:34px}
  .fila{border-left:0; padding-left:0; border-top:1px solid var(--linha); padding-top:22px}
  .grade{grid-template-columns:repeat(2,1fr)}
  .rodape__grid{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  .topo__in{gap:12px}
  .marca{font-size:17px}
  .so-largo{display:none} .so-estreito{display:inline}
  .btn-grupo{padding:8px 12px; font-size:11px}
}
@media (max-width:620px){
  body{font-size:18px}
  .grade{grid-template-columns:1fr; gap:30px}
  .menu{display:none}
  .rodape__grid{grid-template-columns:1fr}
  .corpo blockquote{font-size:20px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important; transition:none!important}}

/* assinatura do autor (E-E-A-T) */
.assina{
  max-width:var(--med); margin:40px auto 0; padding:20px 0; display:flex; gap:16px;
  align-items:center; border-top:1px solid var(--linha); border-bottom:1px solid var(--linha);
}
.assina img{width:64px; height:64px; border-radius:50%; object-fit:cover; flex:0 0 auto; filter:saturate(.9)}
.assina__nome{font-family:var(--sans); font-weight:700; font-size:16px; margin:0 0 4px; letter-spacing:-.01em}
.assina__cargo{font-family:var(--sans); font-size:14px; line-height:1.5; color:var(--papel-3); margin:0}
.assina__cargo a{color:var(--terra-clara)}

/* ===== os dois blocos que diferenciam o portal ===== */

/* O QUE JOGA CONTRA: o que enfraquece a propria tese, em toda materia */
.contra{
  margin:36px 0; padding:24px 26px; background:rgba(176,58,46,.07);
  border:1px solid rgba(176,58,46,.34); border-left:4px solid var(--selo);
  font-family:var(--sans);
}
.contra__rot{
  font-family:var(--mono); font-size:10px; letter-spacing:.22em; text-transform:uppercase;
  color:#E8836F; margin:0 0 14px; display:flex; align-items:center; gap:9px;
}
.contra__rot::before{
  content:''; width:14px; height:14px; flex:0 0 auto; border-radius:50%;
  border:1.5px solid #E8836F; background:
    linear-gradient(#E8836F,#E8836F) center/1.5px 7px no-repeat;
}
.contra p{margin:0 0 12px; font-size:16.5px; line-height:1.62; color:var(--papel-2)}
.contra p:last-child{margin-bottom:0}
.contra ul{margin:0; padding-left:20px; font-size:16.5px; line-height:1.6; color:var(--papel-2)}
.contra li{margin-bottom:9px}
.contra li:last-child{margin-bottom:0}
.contra strong{color:#fff}

/* CONFIRA VOCE MESMO: o caminho ate a fonte primaria */
.conferir{
  margin:36px 0; padding:22px 26px; background:var(--tinta-2);
  border:1px dashed rgba(110,158,130,.5); font-family:var(--sans);
}
.conferir__rot{
  font-family:var(--mono); font-size:10px; letter-spacing:.22em; text-transform:uppercase;
  color:var(--verde); margin:0 0 12px;
}
.conferir p{margin:0 0 10px; font-size:16px; line-height:1.6; color:var(--papel-2)}
.conferir p:last-child{margin-bottom:0}
.conferir ol,.conferir ul{margin:0; padding-left:20px; font-size:16px; line-height:1.6; color:var(--papel-2)}
.conferir li{margin-bottom:8px}
.conferir a{color:var(--terra-clara)}

/* ===== grafico de barras, sem biblioteca ===== */
.graf{
  margin:36px 0; padding:22px 24px; background:var(--tinta-2);
  border:1px solid var(--linha); border-top:2px solid var(--terra);
}
.graf__tit{
  font-family:var(--sans); font-weight:700; font-size:16px; letter-spacing:-.01em;
  margin:0 0 18px; color:#fff;
}
.graf__corpo{display:flex; flex-direction:column; gap:12px}
.graf__linha{
  display:grid; grid-template-columns:minmax(88px,26%) 1fr auto; gap:14px; align-items:center;
}
.graf__rot{
  font-family:var(--sans); font-size:14px; line-height:1.25; color:var(--papel-2);
}
.graf__barra{
  display:block; height:26px; background:rgba(247,245,240,.06); position:relative; overflow:hidden;
}
.graf__barra i{
  display:block; height:100%; border-radius:0 2px 2px 0;
  animation:graf-cresce .9s cubic-bezier(.2,.8,.2,1) both;
}
@keyframes graf-cresce{from{transform:scaleX(0); transform-origin:left}to{transform:scaleX(1)}}
.graf__val{
  font-family:var(--display); font-size:17px; color:var(--papel); letter-spacing:-.01em;
  white-space:nowrap;
}
.graf__val--d{color:var(--ambar)}
.graf__fonte{
  font-family:var(--mono); font-size:10px; letter-spacing:.13em; text-transform:uppercase;
  color:var(--papel-3); margin:18px 0 0; padding-top:12px; border-top:1px solid var(--linha);
}
@media (max-width:620px){
  .graf__linha{grid-template-columns:1fr auto; grid-template-areas:"rot val" "bar bar"; gap:6px 10px}
  .graf__rot{grid-area:rot} .graf__val{grid-area:val} .graf__barra{grid-area:bar; height:20px}
}

/* ===== enquadramento padrao da imagem de destaque =====
   Retrato vertical virava parede de foto antes do texto e cortava rosto no cartao.
   Toda foto de destaque passa a ocupar a mesma faixa, com o corte no terco superior. */
.materia__foto img{
  width:100%; aspect-ratio:16/9; object-fit:cover; object-position:center 28%;
  max-height:60vh; background:var(--tinta-3);
}
.lead__foto img,.cartao__foto img{object-position:center 28%}
@media (max-width:620px){
  .materia__foto img{aspect-ratio:4/3; max-height:52vh}
}

/* foto de destaque em retrato: mostra inteira, em coluna estreita */
.materia__foto--alta{max-width:none; display:flex; flex-direction:column; align-items:center}
.materia__foto--alta img{
  aspect-ratio:auto; width:auto; height:auto; max-height:430px; max-width:100%;
  object-fit:contain;
}
.materia__foto--alta figcaption{text-align:center; max-width:560px; width:100%}
@media (max-width:620px){.materia__foto--alta img{max-height:340px}}

/* ===== nenhuma foto cortada: retrato aparece inteiro no cartao ===== */
.cartao__foto--alta,.lead__foto--alta{
  background:linear-gradient(160deg,#131b21,#0c1216);
}
.cartao__foto--alta img,.lead__foto--alta img{
  object-fit:contain; object-position:center; padding:6px;
}
/* o veu escuro da manchete atrapalha quando a foto aparece inteira */
.lead__foto--alta::after{
  background:linear-gradient(180deg,rgba(14,20,24,0) 70%,rgba(14,20,24,.55) 100%);
}
.cartao:hover .cartao__foto--alta img,.lead:hover .lead__foto--alta img{transform:none}

/* ---------- pagina de venda ---------- */
.venda .materia__cab{border-bottom:1px solid var(--linha); padding-bottom:26px}
.venda__aviso{
  font-family:var(--mono); font-size:11.5px; line-height:1.7; letter-spacing:.04em;
  color:var(--papel-3); margin:16px 0 0; max-width:62ch}
.venda .corpo h2{margin-top:2.4em}
.venda .corpo>p:first-child{font-size:22px; color:var(--papel-2)}

.numeros{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:2px; background:var(--linha); border:1px solid var(--linha); margin:34px 0 8px}
.numeros__c{background:var(--tinta-2); padding:26px 22px 24px; display:flex; flex-direction:column; gap:7px}
.numeros__v{
  font-family:var(--display); font-size:clamp(34px,5.4vw,46px); line-height:.98;
  letter-spacing:-.015em; color:var(--ambar)}
.numeros__r{font-family:var(--sans); font-size:15px; line-height:1.35; color:var(--papel)}
.numeros__d{font-family:var(--mono); font-size:10.5px; letter-spacing:.14em;
  text-transform:uppercase; color:var(--papel-3)}
.numeros__fonte{
  font-family:var(--mono); font-size:11px; letter-spacing:.09em; color:var(--papel-3);
  margin:0 0 34px}

.zap{margin:38px 0; text-align:center}
.corpo .zap__btn,.zap__btn{
  display:inline-block; font-family:var(--sans); font-weight:700; font-size:18px;
  letter-spacing:.01em; text-decoration:none; background:var(--verde); color:#0B120E; text-decoration:none; border:0;
  padding:19px 34px; border-radius:3px; line-height:1.25; max-width:100%;
  box-shadow:0 10px 30px rgba(110,158,130,.22); transition:.18s}
.corpo .zap__btn:hover,.zap__btn:hover{background:#83B396; color:#0B120E; transform:translateY(-1px)}
.zap__sub{
  display:block; margin-top:13px; font-family:var(--mono); font-size:11px;
  letter-spacing:.07em; color:var(--papel-3)}

/* faixa da home que leva para a pagina de venda */
.oferta{
  display:flex; gap:22px; align-items:center; flex-wrap:wrap; justify-content:space-between;
  border:1px solid var(--linha); border-left:4px solid var(--terra);
  background:var(--tinta-2); padding:26px 28px; text-decoration:none}
.oferta:hover{background:var(--tinta-3)}
.oferta__txt{flex:1 1 380px; min-width:0}
.oferta__txt .ficha{display:block; margin-bottom:9px; color:var(--terra)}
.oferta__txt h3{
  font-family:var(--display); font-size:clamp(21px,2.5vw,27px); line-height:1.16;
  margin:0 0 8px; letter-spacing:-.01em}
.oferta__txt p{margin:0; color:var(--papel-2); font-size:16.5px; line-height:1.55}
.oferta__cta{
  font-family:var(--sans); font-weight:700; font-size:15px; background:var(--papel);
  color:var(--tinta); padding:15px 24px; border-radius:3px; white-space:nowrap; flex:0 0 auto}
.oferta:hover .oferta__cta{background:var(--ambar)}
@media(max-width:560px){
  .oferta{padding:22px 20px}
  .zap__btn{width:100%; padding:19px 18px; font-size:16.5px}
}

/* ---------- publieditorial dentro da grade ---------- */
.selo--serv{background:var(--ambar); color:var(--tinta)}
.cartao--serv .quadro{outline:1px solid rgba(232,180,74,.32); outline-offset:-1px}
.cartao--serv .quadro::before{display:none}
.cartao--serv .quadro__foto{object-fit:cover}
.cartao--serv:hover .quadro__foto{transform:none}
.cartao--serv .ficha{color:var(--ambar)}
.cartao--serv:hover h3{color:var(--ambar)}

/* ===== QUADRO: nenhuma foto cortada, em lugar nenhum =====
   Regra do Thiago (04/09/2026). A foto aparece inteira e o vazio do quadro
   e preenchido por uma copia borrada dela mesma, entao nada e recortado e o
   cartao continua cheio. Vale para cartao, manchete e relacionadas. */
.quadro{
  position:relative; overflow:hidden; background-color:var(--tinta-3); isolation:isolate;
  background-size:cover; background-position:center; background-repeat:no-repeat;
}
/* o fundo desfocado e um pseudo-elemento, nao uma segunda foto no HTML */
.quadro::before{
  content:''; position:absolute; inset:-8%; z-index:0;
  background:inherit; background-size:cover; background-position:center;
  filter:blur(26px) saturate(.55) brightness(.42);
}
.quadro__foto{
  position:relative; z-index:1; width:100%; height:100%;
  object-fit:contain; object-position:center;
  transition:transform .6s cubic-bezier(.2,.7,.2,1);
}
.quadro--cartao{aspect-ratio:4/3; margin-bottom:14px}
.quadro--lead{aspect-ratio:16/9}
.cartao:hover .quadro__foto,.lead:hover .quadro__foto{transform:scale(1.03)}
.quadro .cartao__selo,.quadro .lead__selo{position:absolute; top:11px; left:11px; z-index:2}
.quadro--lead .lead__selo{top:14px; left:14px}
@media(max-width:700px){ .quadro::before{filter:blur(18px) saturate(.55) brightness(.42)} }

/* foto de abertura da materia: inteira, sem recorte, ate 62vh de altura */
.quadro--materia{aspect-ratio:16/9; max-height:62vh; width:100%}
@media (max-width:620px){ .quadro--materia{aspect-ratio:4/3; max-height:56vh} }
.materia__foto .quadro__foto{filter:none}

/* perguntas frequentes */
.faq{margin:2.2rem 0;padding:1.4rem 1.5rem;border:1px solid var(--linha,#ddd);border-radius:6px}
.faq__rot{font-family:'JetBrains Mono',monospace;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--terra,#C25B3C);margin:0 0 .8rem}
.faq__item{border-top:1px solid var(--linha,#e6e6e6);padding:.7rem 0}
.faq__item:first-of-type{border-top:0}
.faq__item summary{cursor:pointer;font-weight:700;font-size:1.05rem;line-height:1.4}
.faq__item p{margin:.6rem 0 0;line-height:1.6}
