/* REELEITO · site público · caminho "Mapa vivo"
   Tokens primeiro; tudo deriva daqui. Sem framework, sem build. */
:root{
  --azul:#062B50; --azul-esc:#041E3A; --azul-2:#0A3B6E; --azul-claro:#1D5A9A;
  --amb:#F59B0B; --amb-claro:#FFC266; --amb-esc:#B86E00; --amb-fundo:#FFF3DC;
  --branco:#FFFFFF; --nevoa:#F4F6FA; --papel:#FFFFFF; --borda:#DCE3EE; --borda-esc:rgba(255,255,255,.14);
  --tinta:#0E1A2B; --cinza:#5A6A82; --cinza-claro:#9FB2CC;
  --ok:#1F7A3D; --ok-fundo:#E6F5EA;
  --fonte:'IBM Plex Sans',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --display:'Archivo','IBM Plex Sans',system-ui,sans-serif;
  --l:min(1180px,100% - 2rem); --l-estreito:min(780px,100% - 2rem);
  --raio:6px; --raio-p:4px;
  --sombra:0 1px 2px rgb(6 43 80/.06),0 12px 32px -14px rgb(6 43 80/.22);
  --t:.18s cubic-bezier(.4,0,.2,1);
  --grad-azul:linear-gradient(135deg,#041E3A 0%,#062B50 55%,#0A3B6E 100%);
  --brilho:radial-gradient(80% 100% at 85% 10%,rgb(245 155 11/.18) 0%,transparent 60%);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--fonte);font-size:1rem;line-height:1.55;color:var(--tinta);background:var(--branco)}
img,svg,canvas,video{max-width:100%;height:auto}
h1,h2,h3,h4{margin:0;font-family:var(--display);font-weight:900;letter-spacing:-.025em;line-height:1.05;text-wrap:balance}
h1{font-variation-settings:'wdth' 82;text-transform:uppercase}
h2{font-variation-settings:'wdth' 85;text-transform:uppercase;font-size:clamp(1.7rem,3.4vw,2.8rem)}
h3{font-family:var(--fonte);font-weight:600;letter-spacing:-.01em;line-height:1.25;font-size:1.1rem}
p{margin:0}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--amb);outline-offset:2px}
.wrap{width:var(--l);margin-inline:auto}
.wrap--estreito{width:var(--l-estreito);margin-inline:auto}
.pular{position:absolute;left:-999px;top:0;background:var(--amb);color:#111;padding:.6rem 1rem;z-index:999}
.pular:focus{left:1rem;top:1rem}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ---------- componentes ---------- */
.chapeu{display:inline-flex;gap:.6rem;align-items:center;font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--amb-esc);font-weight:600;margin-bottom:.9rem}
.chapeu::before{content:"";width:28px;height:2px;background:var(--amb)}
.escuro .chapeu{color:var(--amb-claro)}
.lead{font-size:clamp(1.05rem,1.4vw,1.2rem);color:var(--cinza);max-width:58ch}
.escuro .lead{color:var(--cinza-claro)}
.pill{display:inline-flex;align-items:center;gap:.5rem;border-radius:999px;padding:.78rem 1.25rem;font-weight:700;text-decoration:none;border:1.5px solid transparent;font-size:.95rem;line-height:1;cursor:pointer;transition:transform var(--t),background var(--t),color var(--t);white-space:nowrap}
.pill:hover{transform:translateY(-1px)}
.pill--amb{background:var(--amb);color:#111}
.pill--amb:hover{background:var(--amb-claro)}
.pill--azul{background:var(--azul);color:#fff}
.pill--azul:hover{background:var(--azul-2)}
.pill--out{border-color:rgba(255,255,255,.4);color:#fff}
.pill--out:hover{background:rgba(255,255,255,.1)}
.pill--linha{border-color:var(--borda);color:var(--tinta);background:var(--branco)}
.pill--linha:hover{border-color:var(--azul)}
.pill--p{padding:.55rem .95rem;font-size:.85rem}
.acoes{display:flex;gap:.75rem;flex-wrap:wrap}
.link-mais{font-weight:700;text-transform:uppercase;font-size:.78rem;letter-spacing:.1em;color:var(--azul);text-decoration:none;display:inline-flex;gap:.4rem;align-items:center}
.link-mais::after{content:"→";transition:transform var(--t)}
.link-mais:hover::after{transform:translateX(3px)}
.escuro .link-mais{color:var(--amb-claro)}
.sec{padding-block:clamp(3rem,6vw,5.5rem)}
.sec--nevoa{background:var(--nevoa)}
.escuro{background:var(--azul-esc);color:#fff}
.escuro h2,.escuro h3{color:#fff}
.sec-cab{max-width:62ch;margin-bottom:clamp(1.5rem,3vw,2.5rem)}
.sec-cab p{margin-top:.8rem}
.grade{display:grid;gap:1px;background:var(--borda);border:1px solid var(--borda)}
.escuro .grade{background:var(--borda-esc);border-color:var(--borda-esc)}
.grade--3{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
.grade--4{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
.cel{background:var(--branco);padding:1.6rem}
.escuro .cel{background:var(--azul)}
.cel b{display:block;font-family:var(--display);font-size:2.2rem;font-weight:800;letter-spacing:-.03em;color:var(--azul);font-variant-numeric:tabular-nums;line-height:1}
.escuro .cel b{color:var(--amb)}
.cel h3{margin:.6rem 0 .35rem}
.cel p{font-size:.93rem;color:var(--cinza)}
.escuro .cel p{color:var(--cinza-claro)}
.cartao{background:var(--papel);border:1px solid var(--borda);border-radius:var(--raio);padding:1.4rem;box-shadow:var(--sombra)}
.tabela-wrap{overflow-x:auto;border:1px solid var(--borda);border-radius:var(--raio);background:var(--branco)}
table{border-collapse:collapse;width:100%;font-size:.92rem}
th,td{text-align:left;padding:.65rem .75rem;border-bottom:1px solid var(--borda);vertical-align:top}
th{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cinza);font-weight:700;background:var(--nevoa);white-space:nowrap}
td.num,th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
tr:last-child td{border-bottom:0}
.selo{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.18rem .5rem;border-radius:999px;background:var(--ok-fundo);color:var(--ok);white-space:nowrap}
.selo--amb{background:var(--amb-fundo);color:var(--amb-esc)}
.selo--cinza{background:var(--nevoa);color:var(--cinza)}
.fonte{display:inline-flex;gap:.4rem;align-items:center;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--azul);border:1px solid var(--borda);padding:.3rem .55rem;border-radius:var(--raio-p);background:var(--branco)}
.fonte::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--amb)}
.migalhas{font-size:.82rem;color:var(--cinza);margin-bottom:1rem}
.migalhas ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}
.migalhas li+li::before{content:"/";margin-right:.4rem;color:var(--borda)}
.migalhas a{color:var(--cinza);text-decoration:none}
.migalhas a:hover{color:var(--azul)}
.campo{display:flex;gap:.5rem;flex-wrap:wrap}
.campo input,.campo select{flex:1 1 220px;min-width:0;padding:.85rem 1rem;border-radius:999px;border:1px solid var(--borda);background:var(--branco);font-size:1rem}
.campo input:focus{border-color:var(--azul)}
.form{display:grid;gap:1rem}
.form label{display:grid;gap:.35rem;font-size:.9rem;font-weight:600}
.form input,.form select,.form textarea{padding:.8rem .95rem;border:1px solid var(--borda);border-radius:var(--raio);background:var(--branco);font-weight:400}
.form .check{display:flex;gap:.6rem;align-items:start;font-weight:400;font-size:.88rem;color:var(--cinza)}
.form .check input{margin-top:.25rem}
.aviso{background:var(--amb-fundo);border-left:4px solid var(--amb);padding:1rem 1.2rem;border-radius:var(--raio-p);font-size:.95rem}
.aviso--ok{background:var(--ok-fundo);border-color:var(--ok)}
.prosa{max-width:68ch}
.prosa h2{font-size:1.45rem;margin:2rem 0 .6rem;text-transform:none;font-variation-settings:'wdth' 92;letter-spacing:-.02em}
.prosa h3{margin:1.4rem 0 .4rem}
.prosa p,.prosa li{font-size:1.04rem;line-height:1.7;color:#243247}
.prosa p+p{margin-top:1rem}
.prosa ul{padding-left:1.2rem;margin:.8rem 0}
.prosa a{color:var(--azul);text-decoration:underline;text-underline-offset:2px}

/* ---------- topo ---------- */
.topo{position:sticky;top:0;z-index:100;background:var(--azul-esc);color:#fff;border-bottom:1px solid var(--borda-esc)}
.topo__interno{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:64px}
.logo{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--display);font-weight:900;font-size:1.3rem;letter-spacing:-.02em;text-decoration:none;color:inherit}
.topo__nav{display:flex;align-items:center;gap:1.4rem;font-size:.9rem}
.topo__nav a{text-decoration:none;color:var(--cinza-claro);transition:color var(--t)}
.topo__nav a:hover,.topo__nav a[aria-current="page"]{color:#fff}
.topo__entrar{font-weight:600;color:#fff!important}
.topo__cta{color:#111!important}
.topo__menu-botao{display:none;background:none;border:0;width:44px;height:44px;flex-direction:column;justify-content:center;gap:5px;align-items:center;cursor:pointer}
.topo__menu-botao span{display:block;width:22px;height:2px;background:#fff;transition:transform var(--t),opacity var(--t)}
@media (max-width:980px){
  .topo__menu-botao{display:flex}
  .topo__nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--azul-esc);flex-direction:column;align-items:stretch;padding:1rem;gap:.2rem;border-bottom:1px solid var(--borda-esc)}
  .topo__nav.aberto{display:flex}
  .topo__nav a{padding:.75rem .5rem;font-size:1rem}
  .topo__cta{justify-content:center;margin-top:.5rem}
  .topo__menu-botao[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .topo__menu-botao[aria-expanded="true"] span:nth-child(2){opacity:0}
  .topo__menu-botao[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
}

/* ---------- faixa de informação: contagem e cidade ---------- */
.faixa-info{background:var(--azul);color:#fff;border-bottom:1px solid var(--borda-esc);font-size:.86rem}
.faixa-info__interno{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:36px;flex-wrap:wrap;padding-block:.2rem}
.faixa-info__conta{text-decoration:none;color:var(--cinza-claro);display:inline-flex;gap:.4rem;align-items:center}
.faixa-info__conta b{font-family:var(--display);font-weight:800;color:var(--amb);font-size:1.05rem;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.faixa-info__conta small{color:var(--cinza-claro);opacity:.8}
.cidade-sel{position:relative}
.cidade-sel summary{list-style:none;cursor:pointer;display:inline-flex;gap:.45rem;align-items:center;padding:.35rem .6rem;border-radius:999px;border:1px solid rgba(255,255,255,.25)}
.cidade-sel summary::-webkit-details-marker{display:none}
.cidade-sel summary:hover{border-color:rgba(255,255,255,.6)}
.cidade-sel__rotulo{color:var(--cinza-claro)}
.cidade-sel__trocar{color:var(--amb-claro);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.cidade-sel__painel{position:absolute;right:0;top:calc(100% + .5rem);width:min(360px,calc(100vw - 32px));background:var(--branco);color:var(--tinta);border:1px solid var(--borda);border-radius:var(--raio);box-shadow:var(--sombra);padding:1rem;z-index:200}
.cidade-sel__painel .campo input{flex:1 1 100%}
.cidade-sel__nota{font-size:.75rem;color:var(--cinza);margin-top:.7rem}
@media (max-width:640px){.faixa-info__interno{justify-content:center;text-align:center}.cidade-sel__painel{right:auto;left:50%;transform:translateX(-50%)}}

/* ---------- herói ---------- */
.heroi{position:relative;overflow:hidden;background:var(--azul-esc);color:#fff;isolation:isolate}
.heroi canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-2}
.heroi::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(4,30,58,.97) 0%,rgba(4,30,58,.8) 45%,rgba(4,30,58,.2) 100%)}
.heroi__interno{padding-block:clamp(3rem,7vw,6.5rem) clamp(2.5rem,5vw,4.5rem);display:grid;gap:1.5rem;max-width:740px}
.heroi h1{font-size:clamp(2.5rem,6.2vw,5.2rem);line-height:.98}
.heroi h1 em{font-style:normal;color:var(--amb)}
.heroi__provas{display:flex;gap:2rem;flex-wrap:wrap;padding-top:1.2rem;border-top:1px solid var(--borda-esc)}
.prova b{display:block;font-family:var(--display);font-weight:800;font-size:1.7rem;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.1}
.prova span{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--cinza-claro)}
.heroi__grade{display:grid;grid-template-columns:minmax(0,740px) minmax(0,1fr);gap:2rem;align-items:center}
.heroi__grade .heroi__interno{max-width:none}
.heroi__conta{justify-self:end;text-align:right;display:grid;justify-items:end;gap:.1rem;padding:1.2rem 0;color:#fff}
.heroi__conta-rotulo{font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;color:var(--cinza-claro);font-weight:600}
.heroi__conta-num{font-family:var(--display);font-variation-settings:'wdth' 85;font-weight:900;font-size:clamp(5rem,12vw,11rem);line-height:.9;letter-spacing:-.05em;color:var(--amb);font-variant-numeric:tabular-nums;text-shadow:0 0 60px rgb(245 155 11/.35)}
.heroi__conta-dias{font-family:var(--display);font-weight:800;font-size:clamp(1.3rem,2.4vw,2rem);text-transform:uppercase;letter-spacing:.06em;margin-top:.2rem}
.heroi__conta-nome{font-size:1rem;color:var(--cinza-claro);max-width:22ch;margin-top:.4rem}
.heroi__conta-data{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--amb-claro);font-weight:600}
@media (max-width:980px){.heroi__grade{grid-template-columns:1fr}.heroi__conta{justify-self:start;text-align:left;justify-items:start;padding-top:0;border-top:1px solid var(--borda-esc);padding-top:1.5rem}}
.faixa-info__texto{color:var(--cinza-claro);font-size:.82rem}
.heroi--pagina .heroi__interno{padding-block:clamp(2.5rem,5vw,4rem)}
.heroi--pagina h1{font-size:clamp(2rem,4.6vw,3.6rem)}
.heroi--pagina::after{background:linear-gradient(90deg,rgba(4,30,58,.97) 0%,rgba(4,30,58,.85) 60%,rgba(4,30,58,.5) 100%)}

/* ---------- faixa rolante ---------- */
.faixa{background:var(--amb);color:#111;overflow:hidden;white-space:nowrap;font-family:var(--display);font-weight:700;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}
.faixa__trilho{display:inline-block;padding:.6rem 0;animation:rola 40s linear infinite}
.faixa span{padding-inline:1.4rem}
@keyframes rola{to{transform:translateX(-50%)}}

/* ---------- busca de cidade ---------- */
.busca{position:relative}
.busca__lista{position:absolute;left:0;right:0;top:calc(100% + .4rem);background:var(--branco);border:1px solid var(--borda);border-radius:var(--raio);box-shadow:var(--sombra);list-style:none;margin:0;padding:.3rem;z-index:20;max-height:320px;overflow:auto;display:none;color:var(--tinta)}
.busca__lista.aberta{display:block}
.busca__lista a{display:flex;justify-content:space-between;gap:1rem;padding:.6rem .8rem;text-decoration:none;border-radius:var(--raio-p);font-size:.95rem}
.busca__lista a:hover,.busca__lista a:focus{background:var(--nevoa)}
.busca__lista small{color:var(--cinza)}

/* ---------- mapa ---------- */
.mapa{position:relative;width:100%;aspect-ratio:16/10;min-height:360px;border:1px solid var(--borda);border-radius:var(--raio);overflow:hidden;background:#E9EEF5}
.mapa .leaflet-container{width:100%;height:100%;font:inherit}
.mapa__legenda{position:absolute;left:.8rem;bottom:.8rem;z-index:500;background:rgba(255,255,255,.94);padding:.55rem .8rem;font-size:.78rem;border:1px solid var(--borda);border-radius:var(--raio-p);color:var(--tinta);max-width:min(320px,calc(100% - 1.6rem))}
.mapa__legenda b{display:block;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--cinza);margin-bottom:.2rem}
.controles{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center;margin-bottom:1rem}
.controles select{padding:.6rem .9rem;border:1px solid var(--borda);border-radius:999px;background:var(--branco)}
.abas{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:1.2rem}
.abas a{text-decoration:none;border:1px solid var(--borda);border-radius:999px;padding:.45rem .9rem;font-size:.85rem;font-weight:600;color:var(--tinta);background:var(--branco)}
.abas a[aria-current="page"]{background:var(--azul);color:#fff;border-color:var(--azul)}

/* ---------- razão / livro de prova ---------- */
.razao{border-top:1px solid var(--tinta)}
.razao__linha{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:2rem;padding-block:2rem;border-bottom:1px solid var(--borda);align-items:start}
.razao__n{font-family:var(--display);font-size:clamp(2.6rem,6vw,4.6rem);font-weight:800;letter-spacing:-.04em;line-height:.95;font-variant-numeric:tabular-nums;color:var(--azul)}
.razao__n small{display:block;font-family:var(--fonte);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:var(--cinza);font-weight:600;margin-top:.6rem}
.razao__linha p{color:var(--cinza);margin:.4rem 0 .8rem;max-width:58ch}
@media (max-width:760px){.razao__linha{grid-template-columns:1fr;gap:.8rem}}

/* ---------- listas de candidatos / bairros ---------- */
.barra{height:6px;background:var(--nevoa);border-radius:999px;overflow:hidden;min-width:80px}
.barra i{display:block;height:100%;background:var(--amb)}
.foto{width:44px;height:44px;min-width:44px;object-fit:cover;object-position:center top;border-radius:50%;background:var(--nevoa);display:block;flex:none;border:2px solid #fff;box-shadow:0 0 0 1px rgb(6 43 80/.12),0 2px 6px rgb(6 43 80/.18)}
.foto--sem{visibility:hidden}
.foto--g{width:80px;height:80px;min-width:80px;border-width:3px}
.ranking td.col-foto{width:52px;min-width:52px;padding-right:.2rem}
.ranking .nome{min-width:150px}
.ranking td.num{white-space:nowrap}
.ranking .nome .barra{margin-top:.4rem;max-width:160px;min-width:0}
.ranking td:first-child{font-variant-numeric:tabular-nums;color:var(--cinza);width:2.5rem}
.ranking .nome{font-weight:600}
.ranking .nome small{display:block;font-weight:400;color:var(--cinza);font-size:.8rem}

/* ---------- notícias ---------- */
.noticias-grade{display:grid;grid-template-columns:1.4fr 1fr;gap:1.5rem}
.noticia-destaque{display:grid;gap:.8rem;text-decoration:none;color:inherit}
.noticia-destaque img,.noticia-destaque .capa-vazia{aspect-ratio:16/9;width:100%;object-fit:cover;border-radius:var(--raio);background:var(--grad-azul)}
.noticia-destaque h3{font-family:var(--display);font-weight:900;text-transform:uppercase;font-variation-settings:'wdth' 85;font-size:clamp(1.3rem,2.4vw,1.9rem);letter-spacing:-.02em;line-height:1.05}
.noticia-lista{display:grid;gap:.75rem}
.noticia-lista a{display:grid;gap:.3rem;padding:1rem 1.1rem;background:var(--branco);border:1px solid var(--borda);border-radius:var(--raio);text-decoration:none;color:inherit}
.noticia-lista a:hover{border-color:var(--azul)}
.data{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--cinza);font-weight:600}
@media (max-width:860px){.noticias-grade{grid-template-columns:1fr}}

/* ---------- planos ---------- */
.planos{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1rem;align-items:stretch}
.plano{background:var(--branco);border:1px solid var(--borda);border-radius:var(--raio);padding:1.6rem;display:grid;gap:.6rem;align-content:start}
.plano--dest{border:2px solid var(--amb);position:relative}
.plano--dest::after{content:"Mais escolhido";position:absolute;top:-.8rem;right:1rem;background:var(--amb);color:#111;font-size:.7rem;font-weight:800;padding:.25rem .6rem;border-radius:999px;letter-spacing:.04em;text-transform:uppercase}
.plano span.rotulo{font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:var(--cinza);font-weight:700}
.plano .preco{font-family:var(--display);font-size:2.3rem;font-weight:800;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.plano .preco small{font-family:var(--fonte);font-size:.9rem;color:var(--cinza);font-weight:500;letter-spacing:0}
.plano ul{margin:.4rem 0 .8rem;padding-left:1.1rem;color:var(--cinza);font-size:.93rem;display:grid;gap:.3rem}

/* ---------- FAQ ---------- */
.faq details{border-bottom:1px solid var(--borda);padding:.2rem 0}
.faq summary{cursor:pointer;padding:1rem 0;font-weight:600;font-size:1.05rem;list-style:none;display:flex;justify-content:space-between;gap:1rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--display);font-size:1.4rem;color:var(--amb-esc);line-height:1}
.faq details[open] summary::after{content:"×"}
.faq .resposta{padding:0 0 1.2rem;color:#243247;max-width:68ch;line-height:1.65}

/* ---------- rodapé ---------- */
.rodape{background:var(--azul-esc);color:var(--cinza-claro);padding-top:clamp(2.5rem,5vw,4rem);border-top:3px solid var(--amb)}
.rodape__grade{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:2rem;padding-bottom:2rem}
.rodape h2{font-family:var(--fonte);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:#fff;margin-bottom:.8rem;font-weight:700}
.rodape__grade a{display:block;text-decoration:none;color:var(--cinza-claro);padding:.25rem 0;font-size:.92rem}
.rodape__grade a:hover{color:#fff}
.rodape__marca .logo{color:#fff;margin-bottom:.8rem}
.rodape__marca p{font-size:.92rem;max-width:40ch}
.rodape__mini{font-size:.8rem!important;margin-top:.8rem;opacity:.8}
.rodape__base{border-top:1px solid var(--borda-esc);padding-block:1.2rem 2rem;font-size:.8rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
@media (max-width:860px){.rodape__grade{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.rodape__grade{grid-template-columns:1fr}}

/* ---------- revelar ao rolar ---------- */
/* Só o que está abaixo da dobra no carregamento anima; o resto nasce visível (bom para leitores e robôs). */
.revelar{opacity:1;transform:none}
@media (prefers-reduced-motion:no-preference){
  .js .revelar--pre{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease}
  .js .revelar--pre.visto{opacity:1;transform:none}
}
@media (prefers-reduced-motion:reduce){.faixa__trilho{animation:none}}
@media print{.topo,.faixa,.rodape,.pill{display:none!important}}
