/* MYDS — portal de tecnologia, dados e inteligência.
   Apresentação no padrão do apple.com/br com as artes dos mockups do dono: fundo branco, vitrines pretas ou cinza
   com título grande centralizado e a imagem dominando, grade de produtos com a arte em cartão e o nome embaixo,
   links "Saiba mais ›", Figtree com teto de peso 500. Sem badges, eyebrows em caixa alta, vidro ou dourado solto. */
:root{
  --texto:#1d1d1f; --texto-2:#6e6e73; --texto-3:#86868b; --linha:#d2d2d7;
  --fundo:#fff; --cinza:#f5f5f7; --preto:#000;
  --navy:#0B2252; --navy-2:#123B73; --ouro:#C58A27; --ouro-luz:#E7B957;
  --link:#0B2252; --link-escuro:#E7B957;
  --fonte:"Figtree",-apple-system,"SF Pro Text","Segoe UI",system-ui,sans-serif;
  --max:1240px; --max-t:980px; --max-txt:720px; --raio:28px; --gap:12px;
  --ease:cubic-bezier(.23,1,.32,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--fonte);font-weight:400;font-size:17px;color:var(--texto);background:var(--fundo);line-height:1.47;-webkit-font-smoothing:antialiased}
img,svg,canvas{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,a,[role=button]{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
h1,h2,h3,h4,h5,h6,b,strong,th{font-weight:500}
h1,h2,h3{letter-spacing:-.02em;line-height:1.08}
h1{font-size:clamp(40px,5.6vw,76px)}
h2{font-size:clamp(32px,4vw,56px)}
h3{font-size:clamp(22px,2.4vw,32px)}
.sr{position:absolute;left:-9999px}
:focus-visible{outline:2px solid var(--navy-2);outline-offset:3px;border-radius:6px}
.escuro :focus-visible,.escuro:focus-visible{outline-color:var(--ouro-luz)}
.wrap{width:min(var(--max-t),100% - 44px);margin-inline:auto}
.wrap-l{width:min(var(--max),100% - 44px);margin-inline:auto}
.wrap-txt{width:min(var(--max-txt),100% - 44px);margin-inline:auto}
.centro{text-align:center}
.eyebrow{font-size:17px;color:var(--texto-2);margin-bottom:10px}
.escuro .eyebrow{color:rgba(255,255,255,.62)}
.lead,.sub{font-size:clamp(19px,2vw,26px);line-height:1.28;color:var(--texto);max-width:34ch;margin-inline:auto}
.escuro .lead,.escuro .sub{color:rgba(255,255,255,.88)}
.nota{font-size:14px;color:var(--texto-2);line-height:1.45}
.escuro .nota{color:rgba(255,255,255,.6)}
.gold{color:var(--ouro-luz)}
.acoes{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:24px}
.links{display:flex;gap:28px;justify-content:center;flex-wrap:wrap;margin-top:14px;font-size:19px}
.links a,.saiba{color:var(--link);display:inline-flex;align-items:center}
.links a::after,.saiba::after{content:"›";margin-left:5px;font-size:1.1em;transition:transform .2s var(--ease)}
.escuro .links a,.escuro .saiba{color:var(--link-escuro)}
@media (hover:hover) and (pointer:fine){ .links a:hover,.saiba:hover{text-decoration:underline} .links a:hover::after,.saiba:hover::after{transform:translateX(3px)} }

/* ---------- pílulas (como os botões da Apple; marinho no claro, dourado no escuro) ---------- */
.pill{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 22px;border-radius:980px;background:var(--navy);color:#fff;font-weight:500;font-size:17px;border:1px solid var(--navy);cursor:pointer;font-family:inherit;white-space:nowrap;transition:transform .18s var(--ease),filter .2s,background .2s,color .2s}
.pill:active{transform:scale(.98)}
.pill.secundario{background:transparent;color:var(--texto);border-color:var(--texto-2)}
.escuro .pill{background:var(--ouro);color:#1d1d1f;border-color:var(--ouro)}
.escuro .pill.secundario{background:transparent;color:#fff;border-color:rgba(255,255,255,.6)}
.pill-p{min-height:32px;padding:0 14px;font-size:13px}
@media (hover:hover) and (pointer:fine){ .pill:hover{filter:brightness(1.08)} .pill.secundario:hover{background:rgba(0,0,0,.05)} .escuro .pill.secundario:hover{background:rgba(255,255,255,.1)} }

/* ---------- cabeçalho (44px, preto translúcido, itens pequenos) ---------- */
.topo{position:sticky;top:0;z-index:50;background:rgba(0,0,0,.8);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);color:#fff}
.topo .wrap-l{width:min(1360px,100% - 44px);height:44px;display:flex;align-items:center;gap:22px}
.topo .marca{display:flex;align-items:center}
.topo .marca img{height:18px;width:auto}
.topo nav.menu{display:flex;gap:clamp(14px,1.7vw,28px);margin-left:auto;font-size:12px;letter-spacing:-.01em;white-space:nowrap}
.topo nav.menu a{color:rgba(255,255,255,.8);padding:4px 0;flex:none;transition:color .2s}
.topo nav.menu a.ativo{color:#fff}
.topo .acoes-topo{display:flex;gap:18px;align-items:center;font-size:12px}
.topo .acoes-topo .entrar{background:none;border:0;color:rgba(255,255,255,.8);font:inherit;font-size:12px;cursor:pointer;padding:4px 0;transition:color .2s}
.hamb{display:none;margin-left:auto;width:44px;height:44px;border:0;background:transparent;cursor:pointer}
.hamb span{display:block;height:1.5px;width:18px;background:#fff;margin:5px auto;transition:transform .25s var(--ease),opacity .2s}
.hamb.aberto span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.hamb.aberto span:nth-child(2){opacity:0}.hamb.aberto span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
@media (hover:hover) and (pointer:fine){ .topo nav.menu a:hover,.topo .acoes-topo .entrar:hover{color:#fff} }
@media (max-width:1079px){ .topo nav.menu,.topo .acoes-topo{display:none} .hamb{display:block} }

/* menu do celular (painel irmão do cabeçalho) */
.menu-movel{position:fixed;inset:0;z-index:60;background:#000;color:#fff;padding:0 24px 28px;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .25s var(--ease),transform .25s var(--ease),visibility 0s .25s;overflow:auto}
.menu-movel.aberto{opacity:1;visibility:visible;transform:none;transition:opacity .25s var(--ease),transform .25s var(--ease)}
.menu-movel .topo-mm{height:44px;display:flex;align-items:center;justify-content:space-between}
.menu-movel .topo-mm img{height:18px;width:auto}
.menu-movel .fechar-mm{background:none;border:0;color:#fff;font-size:30px;line-height:1;width:44px;height:44px;cursor:pointer}
.menu-movel nav{display:grid;margin-top:14px}
.menu-movel nav a{font-size:26px;font-weight:500;letter-spacing:-.01em;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.menu-movel .acoes-mm{display:grid;gap:10px;margin-top:24px}
.menu-movel .acoes-mm .pill{width:100%;background:var(--ouro);color:#1d1d1f;border-color:var(--ouro)}
.menu-movel .acoes-mm .pill.secundario{background:transparent;color:#fff;border-color:rgba(255,255,255,.6)}
body.menu-aberto{overflow:hidden}
@media (min-width:1080px){ .menu-movel{display:none} }

/* mega menu de Soluções (desktop) */
.mega{position:absolute;left:0;right:0;top:100%;background:rgba(0,0,0,.92);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:#fff;visibility:hidden;opacity:0;transform:translateY(-6px);transition:opacity .2s var(--ease),transform .2s var(--ease),visibility 0s .2s}
.topo.mega-aberto .mega{visibility:visible;opacity:1;transform:none;transition:opacity .2s var(--ease),transform .2s var(--ease)}
.mega .wrap-l{width:min(var(--max),100% - 44px);height:auto;display:grid;align-items:start}
.mega-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:28px;padding:34px 0 40px}
.mega-col{display:grid;gap:6px;align-content:start;font-size:14px}
.mega-col a{color:rgba(255,255,255,.75);padding:3px 0;transition:color .2s}
.mega-col .mega-tit{color:rgba(255,255,255,.5);font-size:12px;margin-bottom:8px}
.mega-extra{border-left:1px solid rgba(255,255,255,.12);padding-left:28px}
@media (hover:hover) and (pointer:fine){ .mega-col a:hover{color:#fff} }
@media (max-width:1079px){ .mega{display:none} }

/* ---------- home: abertura (vitrine preta de largura total com a fita) ---------- */
/* [18/10/2026 — dono, 1ª dobra da home: "a imagem está muito cortada, o texto acima pode ser menor, posicionar melhor na tela";
   2ª rodada: "ainda está com muita altura" e "deve ser a mesma cor os dois fundos"]
   Vale para QUALQUER tela (a 1ª versão só valia em tela larga, e a janela do dono, ~1340x1140, caía no layout antigo):
   - texto compacto em cima (título numa linha a partir de 900 px);
   - a fita aparece inteira, como no mockup 14 do dono: a caixa da arte tem a proporção do trecho útil da imagem (a fita vai
     de 7% a 87% da altura; a caixa mostra de 4,6% a 89%) e a largura é a MENOR entre a largura da tela e o que cabe na altura
     que sobra abaixo do texto. A seção nunca passa da altura da tela e não sobra espaço vazio: ela mede texto + fita;
   - um fundo só: a seção usa o mesmo degradê diagonal do fundo da imagem (azul-marinho embaixo à esquerda, preto em cima à
     direita) e as bordas da imagem se esfumam nele, sem emenda. */
.hero-home{
  --hh-pt:clamp(22px,3.6vh,52px);
  --hh-h1:clamp(34px,min(3.1vw,5.6vh),56px);
  --hh-sub:clamp(16px,min(1.25vw,2.2vh),20px);
  --hh-g1:8px;
  --hh-g2:clamp(12px,2vh,20px);
  --hh-g3:clamp(10px,2vh,24px);
  --hh-texto:calc(var(--hh-pt) + var(--hh-h1) * 1.08 + var(--hh-g1) + var(--hh-sub) * 1.28 + var(--hh-g2) + 44px + var(--hh-g3));
  --hh-livre:calc(100svh - 44px - var(--hh-texto));
  position:relative;overflow:hidden;color:#fff;text-align:center;padding-top:var(--hh-pt);
  background:linear-gradient(28deg,#0d1328 0%,#0b1124 28%,#05080f 58%,#010103 82%,#000001 100%)}
.hero-home h1{font-size:var(--hh-h1);line-height:1.08;max-width:none;margin:0 auto var(--hh-g1)}
.hero-home .sub{font-size:var(--hh-sub);line-height:1.28;max-width:none}
.hero-home .acoes{margin-top:var(--hh-g2)}
.hero-home .arte{position:relative;width:min(100%,max(var(--hh-livre) * 2.105,420px));aspect-ratio:2.105;margin:var(--hh-g3) auto 0;overflow:hidden}
.hero-home .arte picture{position:absolute;inset:0;display:block}
.hero-home .arte img{position:absolute;left:0;top:-5.4%;width:100%;height:auto;max-width:none;max-height:none;clip-path:inset(.6%);
  -webkit-mask-image:linear-gradient(to right,transparent 1.5%,rgba(0,0,0,.55) 5%,#000 11%,#000 89%,transparent 98.5%),linear-gradient(to bottom,transparent 1.5%,#000 10%,#000 90%,transparent 98.5%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(to right,transparent 1.5%,rgba(0,0,0,.55) 5%,#000 11%,#000 89%,transparent 98.5%),linear-gradient(to bottom,transparent 1.5%,#000 10%,#000 90%,transparent 98.5%);
  mask-composite:intersect}
@media (min-width:900px){ .hero-home h1{white-space:nowrap} }
/* celular: a fita ocupa a largura toda; esfumado menor nas laterais para não sumir com as pontas */
@media (max-width:899px){
  .hero-home h1{font-size:clamp(34px,9vw,44px)}
  .hero-home .sub{font-size:clamp(17px,4.4vw,20px);max-width:30ch}
  .hero-home .arte img{
    -webkit-mask-image:linear-gradient(to right,transparent 1%,#000 9%,#000 91%,transparent 99%),linear-gradient(to bottom,transparent 1.5%,#000 22%,#000 90%,transparent 98.5%);
    mask-image:linear-gradient(to right,transparent 1%,#000 9%,#000 91%,transparent 99%),linear-gradient(to bottom,transparent 1.5%,#000 22%,#000 90%,transparent 98.5%)}
  .hero-home{background:linear-gradient(28deg,#0d1328 0%,#0b1124 40%,#04060c 72%,#000001 100%)}
}

/* seções da home com título centralizado */
.secao{width:min(var(--max-t),100% - 44px);margin:0 auto;padding:clamp(56px,7vw,96px) 0 clamp(26px,3vw,40px);text-align:center}
.secao h2{margin-bottom:10px}
.secao + .grade-tiles,.secao + .portfolio{margin-bottom:clamp(40px,5vw,72px)}

/* grade de produtos (como no mockup: arte em cartão, nome e legenda embaixo) */
.grade-tiles{display:grid;grid-template-columns:1fr 1fr;gap:28px 24px;width:min(var(--max),100% - 44px);margin:0 auto}
.grade-tiles .tile{display:block;color:inherit}
.grade-tiles .tile .arte{border-radius:20px;overflow:hidden;aspect-ratio:5/4;background:#0a0b17;display:grid;place-items:center}
.grade-tiles .tile .arte img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.grade-tiles .tile .arte.sem-arte{background:linear-gradient(135deg,#0B2252,#061631 60%,#000);color:#fff;padding:24px;text-align:center}
.grade-tiles .tile .arte.sem-arte span{font-size:clamp(26px,3vw,40px);font-weight:500;letter-spacing:-.02em;line-height:1.1;max-width:14ch}
.grade-tiles .tile h3{font-size:22px;margin:16px 0 2px}
.grade-tiles .tile p{font-size:15px;color:var(--texto-2);line-height:1.4}
.grade-tiles .tile .saiba{font-size:15px;margin-top:8px}
.grade-tiles .tile.oculto{display:none}
@media (hover:hover) and (pointer:fine){ .grade-tiles .tile:hover .arte img{transform:scale(1.03)} }
@media (max-width:700px){ .grade-tiles{grid-template-columns:1fr;gap:24px} }

/* portfólio em lista (como no mockup: miniatura à esquerda, título, descrição e nota) */
.portfolio{width:min(var(--max-t),100% - 44px);margin:0 auto}
.portfolio a{display:grid;grid-template-columns:200px 1fr;gap:28px;align-items:center;padding:30px 0;border-top:1px solid var(--linha);color:inherit}
.portfolio a:first-child{border-top:0}
.portfolio .arte{border-radius:16px;overflow:hidden;aspect-ratio:5/4;background:#0a0b17}
.portfolio .arte img{width:100%;height:100%;object-fit:cover}
.portfolio h3{font-size:24px;margin-bottom:6px}
.portfolio p{font-size:19px;line-height:1.35}
.portfolio .saiba{display:inline-flex;margin-top:8px;font-size:15px}
@media (max-width:600px){ .portfolio a{grid-template-columns:1fr;gap:14px} .portfolio .arte{max-width:280px} }

/* vitrines em grade (como os tiles da Apple: texto no alto, fundo preto ou cinza) */
.vitrines{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap);width:min(1440px,100% - 24px);margin:0 auto var(--gap)}
.vitrine{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;border-radius:var(--raio);overflow:hidden;background:var(--cinza);color:var(--texto);min-height:460px;padding:clamp(40px,5vw,64px) 24px 0}
.vitrine.largo{grid-column:1/-1}
.vitrine.escuro{background:#000;color:#fff}
.vitrine .txt{max-width:600px}
.vitrine h2{font-size:clamp(30px,3.4vw,48px);margin-bottom:8px}
.vitrine .sub{font-size:clamp(17px,1.6vw,23px);max-width:34ch}
.vitrine .saiba{display:inline-flex;margin-top:14px;font-size:19px}
.vitrine .numero{font-size:clamp(64px,8vw,112px);line-height:1;letter-spacing:-.03em;color:var(--ouro-luz)}
.vitrine .arte{width:100%;margin-top:auto;padding-top:28px;display:flex;justify-content:center;align-items:flex-end}
.vitrine .arte img{width:100%;height:auto}
.vitrine .arte-mapa{padding:28px 0 0}
.vitrine .arte-mapa svg{width:min(380px,70%);height:auto;margin:0 auto}
.vitrine .arte-mapa path{fill:var(--navy-2);stroke:#fff;stroke-width:1.2}
.vitrine .arte-mapa path.sp{fill:var(--ouro)}
@media (hover:hover) and (pointer:fine){ a.vitrine:hover .saiba{text-decoration:underline} }
@media (max-width:820px){ .vitrines{grid-template-columns:1fr} .vitrine{min-height:0;padding-bottom:40px} .vitrine .arte{padding-bottom:0} }

/* chamada final */
.cta-final{background:#000;color:#fff;text-align:center;padding:clamp(72px,9vw,120px) 0}
.cta-final h2{max-width:22ch;margin:0 auto 14px}

/* ---------- páginas internas ---------- */
.hero-pagina{padding:clamp(56px,7vw,96px) 0 0;text-align:center;background:#fff}
.hero-pagina.escuro{background:#000;color:#fff}
.hero-pagina.cinza{background:var(--cinza)}
.hero-pagina h1{max-width:16ch;margin:0 auto 12px}
.hero-pagina .badges{justify-content:center;font-size:15px;color:var(--texto-2);margin-top:14px}
.hero-pagina.escuro .badges{color:rgba(255,255,255,.6)}
.hero-pagina.sem-cena{padding-bottom:clamp(40px,5vw,72px)}
.arte-hero{width:min(1240px,100%);margin:clamp(28px,4vw,48px) auto 0}
.arte-hero img{width:100%;height:auto}
.arte-hero.pequena{width:min(640px,100% - 44px);border-radius:24px;overflow:hidden;margin-bottom:clamp(40px,5vw,72px)}
.hero-pagina .cena-grande{margin:clamp(28px,4vw,48px) auto 0}
.bloco{padding:clamp(56px,7vw,96px) 0}
.bloco.cinza{background:var(--cinza)}
.bloco.escuro{background:#000;color:#fff}
.bloco h2{margin-bottom:14px}
.bloco h3.sub-tit{font-size:22px;margin-bottom:10px;color:var(--texto-2)}
.bloco .lead{margin-inline:0;max-width:40ch}
.bloco .centro .lead,.bloco.centro .lead{margin-inline:auto}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.grid-2.alinhar-topo{align-items:start}
@media (max-width:900px){ .grid-2{grid-template-columns:1fr;gap:32px} }
.badges{display:flex;gap:8px;flex-wrap:wrap}
.badge{font-size:14px;color:var(--texto-2)}
.lista-check{list-style:none}
.lista-check li{padding:15px 0;border-top:1px solid var(--linha);font-size:19px;line-height:1.35}
.escuro .lista-check li{border-color:rgba(255,255,255,.15)}
.lista-chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.lista-chips li{padding:8px 14px;border-radius:980px;background:var(--cinza);font-size:15px}
.bloco.cinza .lista-chips li{background:#fff}
.escuro .lista-chips li{background:rgba(255,255,255,.1)}
.lista-fontes{list-style:none}
.lista-fontes li{padding:12px 0;border-top:1px solid var(--linha);font-size:16px}
.estado-pendente{border-radius:16px;background:var(--cinza);padding:20px 22px;margin:18px 0}
.bloco.cinza .estado-pendente{background:#fff}
.estado-pendente b{display:block;margin-bottom:4px}
.estado-pendente p{font-size:15px;color:var(--texto-2)}
.escuro .estado-pendente{background:rgba(255,255,255,.08)}
.escuro .estado-pendente p{color:rgba(255,255,255,.7)}
.cena-pagina{margin-top:28px}
.rel{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:8px}
.rel-card{display:block;padding:24px;border-radius:20px;background:var(--cinza);color:inherit;transition:transform .2s var(--ease)}
.bloco.cinza .rel-card{background:#fff}
.rel-card .eyebrow{font-size:14px;margin-bottom:2px}
.rel-card b{display:block;font-size:20px;margin:2px 0 6px}
.rel-card p{font-size:15px;color:var(--texto-2);line-height:1.4}
.rel-card i{font-style:normal;color:var(--link);display:inline-block;margin-top:10px;font-size:15px}
@media (hover:hover) and (pointer:fine){ .rel-card:hover{transform:translateY(-2px)} }
.passos{display:grid;gap:12px;margin-top:28px}
.passos div{padding:22px;border-radius:20px;background:#fff;font-size:15px;color:var(--texto-2);line-height:1.45}
.bloco:not(.cinza) .passos div{background:var(--cinza)}
.passos b{display:block;font-size:19px;color:var(--texto);margin-bottom:6px}
@media (max-width:900px){ .passos{grid-template-columns:1fr 1fr!important} }
@media (max-width:560px){ .passos{grid-template-columns:1fr!important} }

/* índice de grupo: filtros discretos */
.filtros{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:24px}
.filtro{border:1px solid var(--linha);background:#fff;color:var(--texto);border-radius:980px;padding:8px 14px;font:inherit;font-size:14px;cursor:pointer;transition:background .2s,color .2s}
.filtro.ativo{background:var(--texto);color:#fff;border-color:var(--texto)}

/* linha do tempo em texto (sobre) */
.tl{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.tl div{padding-top:18px;border-top:1px solid var(--linha)}
.tl b{display:block;font-size:clamp(32px,3.4vw,44px);letter-spacing:-.02em;margin-bottom:8px;color:var(--navy)}
.tl p{font-size:16px;color:var(--texto-2);line-height:1.45}
@media (max-width:820px){ .tl{grid-template-columns:1fr 1fr} }

/* formulário */
form.contato{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:8px;text-align:left}
form.contato label{display:grid;gap:6px;font-size:14px;color:var(--texto-2)}
form.contato label.full{grid-column:1/-1}
form.contato input,form.contato select,form.contato textarea{font:inherit;font-size:17px;padding:12px 14px;border:1px solid var(--linha);border-radius:12px;background:#fff;color:var(--texto);width:100%;min-width:0}
form.contato input:focus-visible,form.contato select:focus-visible,form.contato textarea:focus-visible{outline:2px solid var(--navy-2);outline-offset:0;border-color:var(--navy-2)}
form.contato textarea{min-height:120px;resize:vertical}
form.contato .aviso{grid-column:1/-1;font-size:13px;color:var(--texto-2)}
form.contato .aviso a{text-decoration:underline}
form.contato .env{grid-column:1/-1;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
form.contato .ret{font-size:15px;color:var(--texto-2)}
form.contato .ret.erro{color:#b3261e}
form.contato button[disabled]{opacity:.6;cursor:wait}
.hp{position:absolute;left:-9999px}
@media (max-width:700px){ form.contato{grid-template-columns:1fr} }

/* diálogo Entrar */
dialog{border:0;border-radius:24px;padding:28px;width:min(440px,92vw);background:#fff;color:var(--texto);box-shadow:0 30px 80px rgba(0,0,0,.3)}
dialog::backdrop{background:rgba(0,0,0,.5);backdrop-filter:blur(6px)}
dialog h3{font-size:24px;margin-bottom:4px}
dialog .fechar{position:absolute;top:14px;right:14px;width:36px;height:36px;border:0;background:var(--cinza);border-radius:50%;font-size:22px;line-height:1;cursor:pointer}
.entrar-lista{display:grid;gap:8px;margin-top:18px}
.entrar-lista a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;background:var(--cinza);font-weight:500}
.entrar-lista a span{font-size:12px;color:var(--texto-2);font-weight:400}

/* rodapé (cinza claro, texto pequeno, como o da Apple) */
.rodape{background:var(--cinza);color:var(--texto-2);font-size:12px;padding:40px 0 30px}
.rodape .wrap-l{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:28px;width:min(var(--max-t),100% - 44px)}
.rodape h4{font-size:12px;color:var(--texto);margin-bottom:10px}
.rodape ul{list-style:none;display:grid;gap:8px}
.rodape a{color:var(--texto-2);transition:color .2s}
.rodape .marca-rod img{height:18px;width:auto;margin-bottom:12px}
.rodape .marca-rod p{max-width:30ch;line-height:1.5}
.rodape .legal{grid-column:1/-1;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid var(--linha);padding-top:18px;margin-top:10px}
@media (hover:hover) and (pointer:fine){ .rodape a:hover{color:var(--texto);text-decoration:underline} }
@media (max-width:820px){ .rodape .wrap-l{grid-template-columns:1fr 1fr} }

/* revelação suave ao rolar */
.rv{opacity:0;translate:0 14px;transition:opacity .7s var(--ease),translate .7s var(--ease)}
.rv.in{opacity:1;translate:none}
html.sem-animacao *{transition:none!important;animation:none!important}
html.sem-animacao .rv{opacity:1;translate:none}
@media (prefers-reduced-motion:reduce){ .rv{opacity:1;translate:none;transition:none} html{scroll-behavior:auto} .cena-orbitas .anel,.cena-orbitas .no{animation:none} .cena-modulos .mod,.cena-bi .bar,.cena-bi .linha,.cena-bi .kpi,.cena-conversa .m,.cena-agenda .ev{transition:none;opacity:1;transform:none;stroke-dashoffset:0} }
@keyframes girar{to{transform:rotate(360deg)}}
@keyframes girar-rotulo{from{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(-360deg)}}

/* ---------- ecossistema MYDS (infográfico do dono, 16/10/2026): modelos de atuação, vertentes, mercados ---------- */
.eco{padding:clamp(56px,7vw,96px) 0 clamp(40px,5vw,72px);background:#fff}
.eco-cab{text-align:center;margin-bottom:clamp(28px,4vw,44px)}
.eco-cab h2{margin-bottom:8px}
.eco-marca{color:var(--navy)}.eco-marca em{font-style:normal;color:var(--navy-2)}
.eco-grade{display:grid;grid-template-columns:minmax(0,1fr) 280px minmax(0,1fr);gap:20px;align-items:start}
.eco-col{background:#F3F6FB;border-radius:20px;overflow:hidden}
.eco-faixa{background:var(--navy);color:#fff;font-size:19px;font-weight:500;letter-spacing:0;padding:14px 20px;margin:0}
.eco-corpo{padding:16px}
.eco-modelo{background:#fff;border-radius:16px;padding:16px;margin-bottom:12px}
.eco-modelo:last-child{margin-bottom:0}
.eco-modelo h4{font-size:19px;margin:0 0 12px;display:flex;align-items:center;gap:10px}
.eco-num{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--navy);color:#fff;font-size:15px;font-weight:500}
.eco-fluxo{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.eco-chips{list-style:none;display:grid;gap:6px;flex:1;min-width:150px}
.eco-chips li{display:flex;align-items:center;gap:8px;background:#F3F6FB;border:1px solid #E2E8F2;border-radius:10px;padding:6px 10px;font-size:14px;color:var(--texto)}
.eco-chips svg{width:16px;height:16px;color:var(--navy-2);flex:none}
.eco-seta{width:26px;height:2px;background:var(--navy-2);position:relative;flex:none}
.eco-seta::after{content:"";position:absolute;right:-1px;top:-4px;border:5px solid transparent;border-left-color:var(--navy-2)}
.eco-nucleo-mini{width:96px;height:96px;border-radius:50%;background:#fff;border:3px solid #D9E2F2;box-shadow:0 10px 28px -14px rgba(11,34,82,.5);display:grid;place-content:center;text-align:center;flex:none}
.eco-nucleo-mini b{font-size:20px;color:var(--navy);line-height:1}.eco-nucleo-mini em,.eco-nucleo b em,.eco-nucleo-mini b em{font-style:normal;color:var(--navy-2)}
.eco-nucleo-mini small{display:block;font-size:9px;color:var(--texto-2);margin-top:3px}
.eco-operacao{flex:1;min-width:140px;background:#F3F6FB;border:1px solid #E2E8F2;border-radius:12px;padding:10px 12px;text-align:center}
.eco-operacao b{display:block;font-size:14px;color:var(--navy);line-height:1.25}.eco-operacao small{display:block;font-size:12px;color:var(--texto-2);margin-top:4px;line-height:1.35}
.eco-nota{margin:12px 0 0;font-size:14px;line-height:1.45;color:var(--texto);background:#EEF3FA;border-radius:10px;padding:10px 12px}
.eco-centro{display:grid;place-items:center;align-self:center;padding:20px 0}
.eco-nucleo{width:250px;height:250px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#1E4D9E 0,#0B2252 55%,#061631 100%);color:#fff;display:grid;place-content:center;text-align:center;box-shadow:0 30px 60px -30px rgba(6,22,49,.7),0 0 0 10px #F3F6FB,0 0 0 11px #E2E8F2}
.eco-nucleo b{font-size:44px;line-height:1;letter-spacing:-.02em}.eco-nucleo b em{color:#9AD9FC}
.eco-nucleo span{font-size:15px;margin-top:4px;opacity:.9}
.eco-nucleo i{display:block;width:1px;height:16px;background:rgba(255,255,255,.4);margin:12px auto}
.eco-nucleo em{font-style:normal;font-size:13px;line-height:1.3;max-width:16ch;margin:0 auto;opacity:.9}
.eco-vertentes{list-style:none;padding:12px;display:grid;gap:8px}
.eco-vertentes a{display:flex;align-items:center;gap:12px;background:#fff;border-radius:14px;padding:10px 12px;color:inherit;transition:transform .2s var(--ease),box-shadow .2s}
.eco-vertentes b{display:block;font-size:16px;color:var(--navy);line-height:1.25}.eco-vertentes small{display:block;font-size:13px;color:var(--texto-2);margin-top:2px}
.eco-ico{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:10px;background:var(--navy);color:#fff;flex:none}
.eco-ico svg{width:20px;height:20px}
.eco-mercados{margin-top:20px;background:#F3F6FB;border-radius:20px;padding:16px 18px}
.eco-mercados-cab{display:flex;gap:16px;align-items:baseline;flex-wrap:wrap;margin-bottom:12px}
.eco-mercados-cab b{font-size:19px;color:var(--navy)}.eco-mercados-cab span{font-size:14px;color:var(--texto-2)}
.eco-mercados ul{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.eco-mercados li{display:flex;align-items:center;gap:10px;background:#fff;border-radius:14px;padding:10px 12px;font-size:15px;color:var(--navy)}
.eco-rodape{margin:20px 0 0;background:var(--navy);color:#fff;border-radius:16px;padding:16px 22px;font-size:clamp(15px,1.5vw,19px);line-height:1.4;text-align:center}
.eco-rodape b{font-weight:500}
@media (hover:hover) and (pointer:fine){ .eco-vertentes a:hover{transform:translateY(-1px);box-shadow:0 12px 24px -16px rgba(11,34,82,.5)} }
@media (max-width:1000px){ .eco-grade{grid-template-columns:1fr} .eco-centro{order:-1;padding:0 0 8px} .eco-nucleo{width:210px;height:210px} .eco-nucleo b{font-size:38px} .eco-mercados ul{grid-template-columns:repeat(2,1fr)} }
@media (max-width:560px){ .eco-fluxo{flex-direction:column;align-items:stretch} .eco-seta{width:2px;height:22px;margin:0 auto} .eco-seta::after{right:-4px;top:auto;bottom:-1px;border:5px solid transparent;border-top-color:var(--navy-2)} .eco-chips{grid-template-columns:1fr 1fr} .eco-nucleo-mini{margin:0 auto} .eco-mercados ul{grid-template-columns:1fr} }

/* ---------- demonstrações interativas (cenas em HTML/SVG; medidas em cqw/cqh) ---------- */
.cena-grande{width:min(var(--max),100% - 40px);margin:clamp(36px,4vw,56px) auto 0;padding-bottom:clamp(72px,8vw,120px)}
.cena{position:relative;aspect-ratio:16/8;border-radius:var(--raio);overflow:hidden;background:radial-gradient(circle at 70% 25%,rgba(255,255,255,.08),transparent 45%),linear-gradient(135deg,#0B2343,#122F59 55%,#8E5E14);box-shadow:0 40px 90px rgba(6,22,49,.35);color:#fff;isolation:isolate;container-type:size}
.cena[data-tema="claro"]{background:radial-gradient(circle at 65% 30%,#DFEEFF,transparent 52%),linear-gradient(135deg,#FCFCFD,#D4E0F0);color:var(--navy);box-shadow:0 40px 90px rgba(6,22,49,.16)}
.cena .rotulo{position:absolute;left:3cqw;bottom:3cqw;font-size:clamp(9px,1.1cqw,13px);letter-spacing:.2em;text-transform:uppercase;font-weight:500;opacity:.85;z-index:3;max-width:62%;line-height:1.3;text-align:left}
.cena .selo{position:absolute;right:2.4cqw;top:2.2cqw;font-size:clamp(8px,1cqw,11px);letter-spacing:.18em;text-transform:uppercase;font-weight:500;background:rgba(255,255,255,.9);color:var(--ouro-rotulo);border-radius:999px;padding:.6cqw 1.2cqw;z-index:3}
.cena[data-tema="escuro"] .selo{background:rgba(255,255,255,.12);color:var(--ouro-luz);border:1px solid rgba(255,255,255,.2)}
.cena.compacta .rotulo{display:none}
.cena svg.ceu{position:absolute;inset:0;width:100%;height:100%}
@media (max-width:700px){ .cena{aspect-ratio:4/3;border-radius:24px} }
/* componentes das cenas: medidas em cqw/cqh (fração do quadro) para caber em qualquer tamanho; .compacta = quadro baixo */
.cena-modulos .mod{position:absolute;width:11%;aspect-ratio:1;border-radius:14%;background:linear-gradient(145deg,#2D5BA8,#0B2252);box-shadow:0 12px 24px rgba(6,22,49,.35),inset 0 1px 0 rgba(255,255,255,.35);transition:transform 1.1s var(--ease),opacity .9s;opacity:0}
.cena-modulos .mod.ouro{background:linear-gradient(145deg,#F5D18C,#C58A27)}
.cena-modulos .mod.vidro{background:rgba(255,255,255,.75);box-shadow:0 12px 24px rgba(6,22,49,.18)}
.cena-modulos .janela{position:absolute;left:27%;top:14%;width:46%;height:72%;border-radius:1.4cqw;border:1.5px solid rgba(11,34,82,.35);background:rgba(255,255,255,.35);opacity:0;transition:opacity 1s var(--ease) .9s}
.cena-modulos .janela::before{content:"";position:absolute;left:0;right:0;top:0;height:9%;border-bottom:1.5px solid rgba(11,34,82,.25)}
.cena.ativa .cena-modulos .mod{opacity:1;transform:none!important}
.cena.ativa .cena-modulos .janela{opacity:1}
.cena-bi .bar{transform-origin:bottom;transform:scaleY(0);transition:transform .9s var(--ease)}
.cena-bi .linha{stroke-dasharray:1200;stroke-dashoffset:1200;transition:stroke-dashoffset 1.6s var(--ease) .4s}
.cena-bi .kpi{opacity:0;transform:translateY(8px);transition:opacity .6s,transform .6s var(--ease)}
.cena.ativa .cena-bi .bar{transform:scaleY(1)}
.cena.ativa .cena-bi .linha{stroke-dashoffset:0}
.cena.ativa .cena-bi .kpi{opacity:1;transform:none}
.cena-brasil path{fill:rgba(255,255,255,.14);stroke:rgba(231,185,87,.55);stroke-width:1;transition:fill .25s;cursor:pointer}
.cena[data-tema="claro"] .cena-brasil path{fill:#DCE6F5;stroke:#8EA4C8}
.cena-brasil path:hover,.cena-brasil path.on{fill:var(--ouro-luz);stroke:var(--ouro)}
.cena-brasil .tip{position:absolute;left:3cqw;top:3cqw;background:rgba(6,22,49,.85);color:#fff;border-radius:1.4cqw;padding:1.2cqw 1.6cqw;font-size:clamp(9px,1.3cqw,14px);pointer-events:none;z-index:3;max-width:40%;text-align:left}
.cena-brasil .tip b{display:block;font-size:clamp(11px,1.8cqw,18px)}
.cena-brasil .tip small{display:block;font-size:clamp(8px,1.1cqw,12px);opacity:.75;margin-top:.4cqw}
.cena-cresc{position:absolute;inset:0;display:grid;grid-template-rows:auto 1fr;padding:7cqw 3cqw 8cqw;text-align:left}
.cena.compacta .cena-cresc{padding-bottom:3cqw}
.cena-cresc .controles{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4cqw;font-size:clamp(8px,1.1cqw,12px);letter-spacing:.04em}
.cena-cresc .controles label{display:grid;gap:.5cqw;background:rgba(255,255,255,.12);border-radius:1.4cqw;padding:1.2cqw 1.6cqw;min-width:0}
.cena[data-tema="claro"] .cena-cresc .controles label{background:rgba(6,22,49,.06)}
.cena-cresc .controles b{font-size:clamp(10px,1.6cqw,17px);font-weight:500}
.cena-cresc input[type=range]{width:100%;accent-color:var(--ouro);min-width:0}
.cena-cresc svg{width:100%;height:100%}
.cena-cresc .res{position:absolute;right:3cqw;bottom:9cqw;text-align:right;font-size:clamp(8px,1.1cqw,12px);letter-spacing:.06em}
.cena.compacta .cena-cresc .res{bottom:3.5cqw}
.cena-cresc .res b{display:block;font-size:clamp(14px,2.6cqw,28px);font-weight:500;color:var(--ouro-luz)}
.cena[data-tema="claro"] .cena-cresc .res b{color:var(--ouro-rotulo)}
.cena-orbitas{position:absolute;inset:0;display:grid;place-items:center}
.cena-orbitas .nucleo{width:min(24cqw,40cqh);aspect-ratio:1;border-radius:50%;background:rgba(255,255,255,.95);display:grid;place-items:center;box-shadow:0 0 0 1.6cqw rgba(231,185,87,.12),0 20px 50px rgba(0,0,0,.35);z-index:2}
.cena-orbitas .nucleo img{width:62%}
.cena-orbitas .anel{position:absolute;border-radius:50%;border:1px dashed rgba(231,185,87,.5);animation:girar 36s linear infinite;aspect-ratio:1}
.cena-orbitas .anel.a1{width:min(44cqw,58cqh)}
.cena-orbitas .anel.a2{width:min(80cqw,90cqh);animation-duration:52s;animation-direction:reverse}
.cena-orbitas .no{position:absolute;left:50%;top:0;transform:translate(-50%,-50%);background:rgba(255,255,255,.95);color:var(--navy);font-size:clamp(7px,1.1cqw,12px);letter-spacing:.08em;font-weight:500;padding:.8cqw 1.4cqw;border-radius:999px;box-shadow:0 8px 20px rgba(0,0,0,.25);animation:girar-rotulo 36s linear infinite;white-space:nowrap}
.cena-orbitas .anel.a2 .no{animation-duration:52s;animation-direction:normal}
.cena-orbitas .no.n2{left:100%;top:50%}.cena-orbitas .no.n3{left:50%;top:100%}.cena-orbitas .no.n4{left:0;top:50%}
.cena-conversa{position:absolute;inset:0;padding:10cqw 3.4cqw 3.4cqw;display:flex;flex-direction:column;gap:1.2cqw;justify-content:flex-end;overflow:hidden;text-align:left}
.cena-conversa .m{max-width:62%;padding:1.2cqw 1.8cqw;border-radius:2.2cqw;font-size:clamp(10px,1.5cqw,18px);line-height:1.35;opacity:0;transform:translateY(10px);transition:opacity .5s,transform .5s var(--ease)}
.cena-conversa .m.p{align-self:flex-end;background:var(--ouro-luz);color:var(--navy);border-bottom-right-radius:.5cqw}
.cena-conversa .m.a{align-self:flex-start;background:rgba(255,255,255,.95);color:var(--navy);border-bottom-left-radius:.5cqw}
.cena-conversa .m.s{align-self:center;background:transparent;font-size:clamp(8px,1.1cqw,12px);letter-spacing:.14em;text-transform:uppercase;opacity:0;color:inherit;text-align:center;max-width:100%}
.cena.ativa .cena-conversa .m{opacity:1;transform:none}
.cena.ativa .cena-conversa .m.s{opacity:.8}
.cena.compacta .cena-conversa .m:nth-child(4),.cena.compacta .cena-conversa .m:nth-child(5){display:none}
.cena-conversa .fluxo{position:absolute;left:3.4cqw;top:2.6cqw;right:3.4cqw;display:flex;gap:1.2cqw;align-items:center;font-size:clamp(7px,1.1cqw,12px);letter-spacing:.12em;text-transform:uppercase;opacity:.9}
.cena-conversa .fluxo span{padding:.7cqw 1.3cqw;border-radius:999px;border:1px solid rgba(255,255,255,.3);white-space:nowrap}
.cena[data-tema="claro"] .cena-conversa .fluxo span{border-color:rgba(6,22,49,.25)}
.cena-conversa .fluxo i{flex:1;height:1px;background:currentColor;opacity:.4;min-width:1cqw}
.cena-agenda{position:absolute;inset:0;padding:3cqw 3.4cqw 8cqw;display:grid;grid-template-rows:auto 1fr;gap:1.4cqw;font-size:clamp(9px,1.4cqw,16px);color:var(--navy);text-align:left}
.cena.compacta .cena-agenda{padding-bottom:3.4cqw}
.cena-agenda .cab{display:flex;justify-content:space-between;align-items:center;font-weight:500}
.cena-agenda .grade{display:grid;grid-template-columns:repeat(5,1fr);gap:1cqw;background:rgba(255,255,255,.7);border-radius:2cqw;padding:1.6cqw;align-content:start;overflow:hidden}
.cena-agenda .dia{display:grid;gap:1cqw;font-size:clamp(8px,1.25cqw,14px);align-content:start}
.cena-agenda .dia b{text-align:center;color:var(--cinza);font-weight:500}
.cena-agenda .ev{background:#DCE6F5;border-left:.45cqw solid var(--azul-claro);border-radius:.9cqw;padding:.8cqw 1cqw;line-height:1.25;opacity:0;transform:translateY(6px);transition:opacity .5s,transform .5s var(--ease)}
.cena-agenda .ev.ia{background:#FFF3DA;border-left-color:var(--ouro)}
.cena.ativa .cena-agenda .ev{opacity:1;transform:none}
.cena.compacta .cena-agenda .dia .ev:nth-child(4){display:none}
.cena-trajetoria{position:absolute;inset:0;display:grid;grid-template-columns:repeat(4,1fr);align-items:center;gap:2cqw;padding:6cqw 6cqw;text-align:left}
.cena-trajetoria::before{content:"";position:absolute;left:6cqw;right:6cqw;top:50%;height:1px;background:linear-gradient(90deg,var(--ouro),rgba(197,138,39,.2))}
.cena-trajetoria div{position:relative;padding-top:3.4cqw}
.cena-trajetoria div::before{content:"";position:absolute;left:0;top:0;width:1.6cqw;height:1.6cqw;border-radius:50%;background:var(--ouro-luz);box-shadow:0 0 0 .4cqw rgba(231,185,87,.3)}
.cena-trajetoria b{display:block;font-size:clamp(22px,4.6cqw,56px);line-height:1;letter-spacing:-.03em;color:var(--ouro-luz)}
.cena[data-tema="claro"] .cena-trajetoria b{color:var(--navy)}
.cena-trajetoria span{display:block;font-size:clamp(9px,1.3cqw,15px);line-height:1.35;margin-top:1cqw;opacity:.85}
.cena.compacta .cena-trajetoria{grid-template-columns:repeat(2,1fr);row-gap:4cqw}
.cena.compacta .cena-trajetoria::before{display:none}
/* demonstração de BI em HTML (interativa) */
.cena-bi2{position:absolute;inset:0;padding:6.5cqw 3cqw 3cqw;display:grid;grid-template-rows:auto auto 1fr;gap:1.6cqw;text-align:left;color:var(--navy)}
.cena[data-tema="escuro"] .cena-bi2{color:#fff}
.cena-bi2 .cab{display:flex;justify-content:space-between;align-items:center;gap:1cqw;font-size:clamp(10px,1.6cqw,18px);font-weight:500}
.cena-bi2 .cab select{font:inherit;font-size:clamp(9px,1.2cqw,14px);font-weight:400;padding:.6cqw 1.2cqw;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.14);color:inherit;max-width:40%}
.cena[data-tema="claro"] .cena-bi2 .cab select{border-color:rgba(6,22,49,.2);background:#fff}
.cena-bi2 .kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2cqw}
.cena-bi2 .kpi{background:rgba(255,255,255,.12);border-radius:1.4cqw;padding:1.2cqw 1.4cqw;min-width:0}
.cena[data-tema="claro"] .cena-bi2 .kpi{background:#fff;box-shadow:0 .6cqw 2cqw rgba(6,22,49,.06)}
.cena-bi2 .kpi span{display:block;font-size:clamp(8px,1.1cqw,12px);opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cena-bi2 .kpi b{display:block;font-size:clamp(12px,2.1cqw,24px);font-weight:500;margin-top:.3cqw;white-space:nowrap}
.cena-bi2 .kpi i{font-style:normal;font-size:clamp(8px,1cqw,11px);color:#7BD389}
.cena-bi2 .graf{display:grid;grid-template-columns:1.7fr 1fr;gap:1.2cqw;min-height:0}
.cena-bi2 .graf>div{background:rgba(255,255,255,.12);border-radius:1.4cqw;padding:1.2cqw 1.4cqw;min-width:0;display:grid;grid-template-rows:auto 1fr;gap:.6cqw}
.cena[data-tema="claro"] .cena-bi2 .graf>div{background:#fff;box-shadow:0 .6cqw 2cqw rgba(6,22,49,.06)}
.cena-bi2 h5{font-size:clamp(9px,1.2cqw,13px);font-weight:500}
.cena-bi2 svg{width:100%;height:100%;min-height:0}
.cena-bi2 .barras{display:flex;align-items:flex-end;gap:.8cqw;height:100%}
.cena-bi2 .barras i{flex:1;background:linear-gradient(180deg,#9AD9FC,#2D5BA8);border-radius:.6cqw .6cqw 0 0;transition:height .6s var(--ease)}
.cena-bi2 .barras i.ouro{background:linear-gradient(180deg,#F0C25A,#C58A27)}
.cena.compacta .cena-bi2 .graf{grid-template-columns:1fr}
.cena.compacta .cena-bi2 .graf>div:last-child{display:none}
.cena.compacta .cena-bi2 .kpis{grid-template-columns:repeat(2,1fr)}

/* ---------- Brasil em Dados: exploradores (IPEAData, IBGE, Base dos Dados), indicadores ao vivo e busca unificada ----------
   Porte da área "Dados Externos" (kit em D:\Desenvolvimento\myds\Dados) para o visual do portal: cartões brancos com borda
   fina, cantos de 16 px, Figtree ≤ 500, marinho nos links e dourado só em destaque. Prefixo .dx = dados externos. */
.dx{font-size:15px;color:var(--texto);text-align:left}
.dx *{min-width:0}
.dx [hidden],.dx-busca [hidden],.dx-indicadores [hidden]{display:none!important}
.dx-cab{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.dx-cab h2{font-size:clamp(22px,2.4vw,28px);letter-spacing:-.02em;margin:0 0 4px}
.dx-cab p{font-size:15px;color:var(--texto-2);line-height:1.4;max-width:70ch}
.dx-cab p button{background:none;border:0;padding:0;font:inherit;color:var(--link);cursor:pointer}
.dx-barra{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.dx-campo{position:relative;flex:1 1 260px;max-width:520px}
.dx-campo svg.lupa{position:absolute;left:12px;top:50%;width:16px;height:16px;translate:0 -50%;color:var(--texto-3);pointer-events:none}
.dx-campo input{width:100%;height:42px;border:1px solid var(--linha);border-radius:12px;background:#fff;padding:0 36px 0 36px;font:inherit;font-size:15px;color:var(--texto);transition:border-color .2s,box-shadow .2s}
.dx-campo input::placeholder{color:var(--texto-3)}
.dx-campo input:focus{outline:0;border-color:var(--navy-2);box-shadow:0 0 0 3px rgba(18,59,115,.14)}
.dx-campo .limpar{position:absolute;right:6px;top:50%;translate:0 -50%;width:30px;height:30px;border:0;background:none;color:var(--texto-3);cursor:pointer;border-radius:50%;display:grid;place-items:center}
.dx-campo .limpar:hover{background:var(--cinza);color:var(--texto)}
.dx-btn{display:inline-flex;align-items:center;gap:7px;height:42px;padding:0 14px;border:1px solid var(--linha);border-radius:12px;background:#fff;color:var(--texto);font:inherit;font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .2s,border-color .2s,color .2s}
.dx-btn svg{width:16px;height:16px;flex:none}
.dx-btn:hover{background:var(--cinza)}
.dx-btn:disabled{opacity:.45;cursor:default;background:#fff}
.dx-btn.ativo{background:#EEF3FA;border-color:#B9CBE6;color:var(--navy)}
.dx-btn.fav.ativo{background:#FFF6E0;border-color:#F0D08A;color:#8a5a0a}
.dx-btn.primario{background:var(--navy);border-color:var(--navy);color:#fff}
.dx-btn.primario:hover{filter:brightness(1.1);background:var(--navy)}
.dx-btn.p{height:34px;padding:0 12px;font-size:13px}
.dx-btn .cont{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--cinza);color:var(--texto-2);font-size:11px;font-weight:500}
.dx-btn.ativo .cont{background:var(--navy);color:#fff}
.dx-btn.fav.ativo .cont{background:#F0D08A;color:#5a3a00}
.dx-spin{width:18px;height:18px;border:2px solid rgba(11,34,82,.18);border-top-color:var(--navy);border-radius:50%;animation:dx-gira .8s linear infinite;flex:none}
@keyframes dx-gira{to{transform:rotate(360deg)}}
.dx-filtros{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;padding:14px 16px;background:var(--cinza);border-radius:16px;margin-bottom:12px}
.dx-filtros label{display:grid;gap:5px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--texto-2);min-width:170px}
.dx-filtros select,.dx-select{height:36px;border:1px solid var(--linha);border-radius:10px;background:#fff;padding:0 10px;font:inherit;font-size:14px;color:var(--texto);text-transform:none;letter-spacing:0}
.dx-filtros .limpar-f{height:36px;border:0;background:none;color:#b3261e;font:inherit;font-size:14px;cursor:pointer;padding:0 8px;border-radius:8px}
.dx-filtros .limpar-f:hover{background:#fdecea}
.dx-erro{padding:12px 14px;border-radius:12px;background:#fdecea;border:1px solid #f5c2bd;color:#8a1c14;font-size:14px;margin-bottom:12px;line-height:1.4}
.dx-aviso{padding:12px 14px;border-radius:12px;background:#EEF3FA;border:1px solid #D9E2F2;color:var(--navy);font-size:14px;line-height:1.45;margin-bottom:12px}
.dx-aviso b{font-weight:500}
.dx-painel{background:#fff;border:1px solid var(--linha);border-radius:16px;overflow:hidden}
.dx-painel+.dx-painel{margin-top:12px}
.dx-painel-cab{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid #ececf0;font-size:13px;flex-wrap:wrap}
.dx-painel-cab b{font-weight:500}
.dx-painel-cab small{color:var(--texto-3);font-size:12px}
.dx-tabela{overflow:auto;-webkit-overflow-scrolling:touch}
.dx-tabela.alta{max-height:440px}
.dx-tabela table{width:100%;border-collapse:collapse;font-size:14px}
.dx-tabela th{position:sticky;top:0;background:#fafafc;text-align:left;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--texto-2);padding:10px 12px;border-bottom:1px solid #ececf0;white-space:nowrap;z-index:1}
.dx-tabela td{padding:9px 12px;border-bottom:1px solid #f2f2f5;vertical-align:top;line-height:1.35}
.dx-tabela tr:last-child td{border-bottom:0}
.dx-tabela tr.clicavel{cursor:pointer;transition:background .15s}
.dx-tabela tr.clicavel:hover{background:#f7f8fb}
.dx-tabela .c{text-align:center}.dx-tabela .d{text-align:right}
.dx-tabela .nw{white-space:nowrap}
.dx-cod{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;color:var(--navy);white-space:nowrap}
.dx-num{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
.dx-dim{color:var(--texto-2);font-size:13px}
.dx-seta{color:var(--texto-3)}
.dx-tabela tr.clicavel:hover .dx-seta{color:var(--navy)}
.dx-vazio{padding:40px 16px;text-align:center;color:var(--texto-2);font-size:14px}
.dx-mais{display:flex;justify-content:center;padding:10px;border-top:1px solid #ececf0}
.dx-mais button,.dx-link{background:none;border:0;padding:0;font:inherit;font-size:14px;color:var(--link);cursor:pointer}
.dx-mais button:hover,.dx-link:hover{text-decoration:underline}
.dx-mais span{color:var(--texto-3);margin-left:6px}
.dx-estrela{width:28px;height:28px;border:0;background:none;border-radius:8px;display:inline-grid;place-items:center;cursor:pointer;color:#c9c9ce;padding:0}
.dx-estrela svg{width:16px;height:16px}
.dx-estrela:hover{background:#FFF6E0;color:var(--ouro)}
.dx-estrela.on{color:var(--ouro)}
.dx-estrela.g{width:34px;height:34px}.dx-estrela.g svg{width:20px;height:20px}
/* detalhe (série, agregado, conjunto) */
.dx-voltar{display:inline-flex;align-items:center;gap:4px;font-size:14px;color:var(--link);background:none;border:0;padding:0;font-family:inherit;cursor:pointer;margin-bottom:8px}
.dx-voltar:hover{text-decoration:underline}
.dx-titulo{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.dx-titulo h2{font-size:clamp(20px,2.2vw,26px);letter-spacing:-.02em;margin:0;line-height:1.2}
.dx-sub{font-size:14px;color:var(--texto-2);margin-top:4px}
.dx-sub .dx-cod{font-size:13px}
.dx-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0}
.dx-meta.cinco{grid-template-columns:repeat(5,1fr)}
.dx-meta div{background:var(--cinza);border-radius:12px;padding:10px 12px}
.dx-meta span{display:block;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--texto-2)}
.dx-meta b{display:block;font-size:15px;font-weight:500;margin-top:3px;line-height:1.3;overflow-wrap:anywhere}
.dx-meta b.grande{font-size:20px}
.dx-texto{background:var(--cinza);border-radius:16px;padding:14px 16px;font-size:14px;line-height:1.5;color:var(--texto);white-space:pre-line;margin:0 0 12px}
.dx-texto span{display:block;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--texto-2);margin-bottom:4px;white-space:normal}
.dx details.dx-dobra{border:1px solid var(--linha);border-radius:16px;background:#fff;margin:0 0 12px}
.dx details.dx-dobra>summary{list-style:none;cursor:pointer;padding:12px 16px;font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px}
.dx details.dx-dobra>summary::-webkit-details-marker{display:none}
.dx details.dx-dobra>summary::after{content:"";margin-left:auto;width:8px;height:8px;border-right:1.5px solid var(--texto-2);border-bottom:1.5px solid var(--texto-2);transform:rotate(45deg);transition:transform .2s}
.dx details.dx-dobra[open]>summary::after{transform:rotate(-135deg)}
.dx details.dx-dobra>.corpo{padding:0 16px 14px;font-size:14px;line-height:1.5;color:var(--texto);white-space:pre-line}
.dx-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.dx-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:var(--cinza);font-size:12.5px;color:var(--texto)}
.dx-chip.tema{background:#EEF3FA;color:var(--navy)}
.dx-chip button{border:0;background:none;color:inherit;cursor:pointer;padding:0;font-size:14px;line-height:1;display:grid;place-items:center}
.dx-grafico{width:100%;height:120px;display:block}
.dx-grafico path.area{fill:rgba(197,138,39,.14)}
.dx-grafico path.linha{fill:none;stroke:var(--ouro);stroke-width:2;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}
.dx-grafico line{stroke:#ececf0}
.dx-grafico-leg{display:flex;justify-content:space-between;font-size:11px;color:var(--texto-3);padding:4px 2px 0}
.dx-acoes{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:0 0 12px}
.dx-sql{background:#0f172a;color:#dbe4f3;border-radius:12px;padding:12px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 12px}
.dx-sql span{display:block;font-family:var(--fonte);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:#8fa3c4;margin-bottom:6px}
.dx-pag{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;border-top:1px solid #ececf0;flex-wrap:wrap}
.dx-pag .nums{display:flex;gap:4px}
.dx-pag .nums button{width:30px;height:30px;border:0;border-radius:8px;background:none;font:inherit;font-size:13px;color:var(--texto);cursor:pointer}
.dx-pag .nums button.on{background:var(--navy);color:#fff}
.dx-pag .nums button:not(.on):hover{background:var(--cinza)}
/* Base dos Dados: filtros laterais + lista */
.dx-lado{display:grid;grid-template-columns:250px minmax(0,1fr);gap:16px;align-items:start}
.dx-lado.sem-filtros{grid-template-columns:minmax(0,1fr)}
.dx-filtros-lat{display:grid;gap:8px}
.dx-filtros-lat details{border:1px solid var(--linha);border-radius:14px;background:#fff}
.dx-filtros-lat summary{list-style:none;cursor:pointer;padding:10px 12px;font-size:13px;font-weight:500;display:flex;align-items:center;gap:8px}
.dx-filtros-lat summary::-webkit-details-marker{display:none}
.dx-filtros-lat summary svg{width:14px;height:14px;color:var(--texto-2)}
.dx-filtros-lat summary::after{content:"";margin-left:auto;width:7px;height:7px;border-right:1.5px solid var(--texto-3);border-bottom:1.5px solid var(--texto-3);transform:rotate(45deg);transition:transform .2s}
.dx-filtros-lat details[open]>summary::after{transform:rotate(-135deg)}
.dx-filtros-lat .corpo{padding:0 12px 10px;max-height:240px;overflow:auto}
.dx-filtros-lat .corpo input{width:100%;height:30px;border:1px solid var(--linha);border-radius:8px;padding:0 8px;font:inherit;font-size:12.5px;margin-bottom:6px}
.dx-check{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;cursor:pointer;color:var(--texto)}
.dx-check input{accent-color:var(--navy);width:14px;height:14px;flex:none;margin:0}
.dx-check span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dx-check small{color:var(--texto-3);font-variant-numeric:tabular-nums}
.dx-check.on span{font-weight:500}
.dx-filtros-lat .ver-mais{background:none;border:0;padding:4px 0;font:inherit;font-size:12.5px;color:var(--link);cursor:pointer}
.dx-filtros-lat .nota{font-size:11px;color:var(--texto-3);margin-top:4px}
.dx-lista>div{display:flex;gap:10px;align-items:flex-start;padding:14px 16px;border-bottom:1px solid #f2f2f5;cursor:pointer;transition:background .15s}
.dx-lista>div:last-child{border-bottom:0}
.dx-lista>div:hover{background:#f7f8fb}
.dx-lista h3{font-size:15px;font-weight:500;margin:0 0 2px;letter-spacing:0;line-height:1.3}
.dx-lista>div:hover h3{color:var(--navy)}
.dx-lista p{font-size:12.5px;color:var(--texto-2);margin:1px 0;line-height:1.35}
.dx-lista p .ok{color:#1b7f3b}
.dx-lista .tags{display:flex;gap:12px;flex-wrap:wrap;margin-top:5px;font-size:11.5px;color:var(--texto-2)}
.dx-lista .tags b{font-weight:400;color:var(--navy)}
.dx-lista .dx-seta{margin-top:4px;flex:none}
.dx-tabela-bd{border-bottom:1px solid #f2f2f5}
.dx-tabela-bd:last-child{border-bottom:0}
.dx-tabela-bd>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;padding:12px 16px}
.dx-tabela-bd>summary::-webkit-details-marker{display:none}
.dx-tabela-bd>summary:hover{background:#f7f8fb}
.dx-tabela-bd>summary svg.ico{width:16px;height:16px;color:var(--navy);flex:none}
.dx-tabela-bd>summary .n{flex:1}
.dx-tabela-bd>summary .n b{display:block;font-size:14px;font-weight:500}
.dx-tabela-bd>summary .n small{display:block;font-size:11.5px;color:var(--texto-3);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.dx-tabela-bd>summary .m{font-size:11.5px;color:var(--texto-3);white-space:nowrap}
.dx-tabela-bd>summary::after{content:"";width:7px;height:7px;border-right:1.5px solid var(--texto-3);border-bottom:1.5px solid var(--texto-3);transform:rotate(45deg);transition:transform .2s;flex:none;margin-left:4px}
.dx-tabela-bd[open]>summary::after{transform:rotate(-135deg)}
.dx-tabela-bd>.corpo{padding:0 16px 16px 44px}
.dx-tabela-bd>.corpo>p{font-size:13px;color:var(--texto-2);margin:0 0 10px;line-height:1.45}
.dx-colunas{border:1px solid var(--linha);border-radius:12px;overflow:hidden;background:var(--cinza);margin:0 0 10px}
.dx-colunas .cab{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-bottom:1px solid #e4e4e9;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--texto-2)}
.dx-colunas .cab button{background:none;border:0;padding:0;font:inherit;font-size:11px;letter-spacing:0;text-transform:none;color:var(--link);cursor:pointer}
.dx-colunas .lista{max-height:200px;overflow:auto}
.dx-colunas .lista div{display:flex;gap:10px;align-items:baseline;padding:5px 12px;border-bottom:1px solid #e9e9ee;font-size:12.5px}
.dx-colunas .lista div:last-child{border-bottom:0}
.dx-colunas code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;color:var(--navy);flex:none}
.dx-colunas .lista span{color:var(--texto-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dx-nivel{display:flex;gap:6px;align-items:center;flex-wrap:wrap;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--texto-2);margin:0 0 10px}
.dx-nivel i{font-style:normal;letter-spacing:0;text-transform:none;font-size:11.5px;padding:2px 8px;border-radius:999px;background:var(--cinza);color:var(--texto)}
@media (max-width:900px){ .dx-lado{grid-template-columns:1fr} .dx-filtros-lat{grid-template-columns:1fr 1fr} .dx-meta,.dx-meta.cinco{grid-template-columns:1fr 1fr} .dx-tabela-bd>.corpo{padding-left:16px} }
@media (max-width:560px){ .dx-filtros-lat{grid-template-columns:1fr} .dx-filtros label{min-width:0;flex:1 1 100%} .dx-cab{flex-direction:column} .dx-tabela-bd>summary .m{display:none} }

/* páginas dos exploradores */
.dx-pagina{padding:clamp(28px,4vw,48px) 0 clamp(56px,7vw,96px)}
.hero-pagina.compacto{padding:clamp(40px,5vw,64px) 0 clamp(28px,3.5vw,44px)}
.hero-pagina.compacto h1{font-size:clamp(34px,4.4vw,56px)}
.hero-pagina .dx-busca{margin-top:24px}
/* indicadores ao vivo (IBGE) */
.dx-indicadores{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.dx-ind{display:block;border-radius:18px;padding:18px 20px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:#fff;text-align:left;transition:background .2s,transform .2s var(--ease)}
a.dx-ind:hover{background:rgba(255,255,255,.13);transform:translateY(-2px)}
.dx-ind span{display:block;font-size:13px;color:rgba(255,255,255,.72);line-height:1.3}
.dx-ind b{display:block;font-size:clamp(28px,3vw,40px);font-weight:500;line-height:1.05;letter-spacing:-.02em;color:var(--ouro-luz);margin:8px 0 6px;font-variant-numeric:tabular-nums;min-height:1.05em}
.dx-ind small{display:block;font-size:11.5px;color:rgba(255,255,255,.55);line-height:1.35}
.dx-ind.carregando b{width:60%;height:.9em;border-radius:8px;background:rgba(255,255,255,.12);animation:dx-pulsa 1.4s ease-in-out infinite}
@keyframes dx-pulsa{50%{opacity:.4}}
.claro .dx-ind,.dx-indicadores.claro .dx-ind{background:#fff;border-color:var(--linha);color:var(--texto)}
.claro .dx-ind span,.dx-indicadores.claro .dx-ind span{color:var(--texto-2)}
.claro .dx-ind b,.dx-indicadores.claro .dx-ind b{color:var(--navy)}
.claro .dx-ind small,.dx-indicadores.claro .dx-ind small{color:var(--texto-3)}
.claro a.dx-ind:hover,.dx-indicadores.claro a.dx-ind:hover{background:#fff;box-shadow:0 14px 30px -18px rgba(11,34,82,.35)}
/* busca unificada (home e hub) */
.dx-busca{position:relative;width:min(760px,100%);margin:0 auto;text-align:left}
.dx-busca .campo{position:relative}
.dx-busca .campo svg.lupa{position:absolute;left:20px;top:50%;width:20px;height:20px;translate:0 -50%;color:var(--texto-3);pointer-events:none}
.dx-busca input{width:100%;height:56px;border:1px solid var(--linha);border-radius:980px;background:#fff;color:var(--texto);padding:0 52px 0 52px;font:inherit;font-size:17px;box-shadow:0 10px 30px -18px rgba(0,0,0,.35)}
.dx-busca input::placeholder{color:var(--texto-3)}
.dx-busca input:focus{outline:0;border-color:var(--navy-2);box-shadow:0 0 0 4px rgba(18,59,115,.16),0 10px 30px -18px rgba(0,0,0,.35)}
.dx-busca .limpar{position:absolute;right:10px;top:50%;translate:0 -50%;width:36px;height:36px;border:0;background:none;color:var(--texto-3);cursor:pointer;border-radius:50%;display:none;place-items:center}
.dx-busca.com-texto .limpar{display:grid}
.dx-busca .limpar:hover{background:var(--cinza);color:var(--texto)}
.dx-busca .dx-spin{position:absolute;right:52px;top:50%;translate:0 -50%;display:none}
.dx-busca.buscando .dx-spin{display:block}
.dx-busca-res{position:absolute;left:0;right:0;top:calc(100% + 8px);background:#fff;color:var(--texto);border-radius:20px;box-shadow:0 30px 80px -20px rgba(0,0,0,.45);border:1px solid var(--linha);z-index:20;max-height:min(520px,70vh);overflow:auto;display:none;text-align:left}
.dx-busca.aberta .dx-busca-res{display:block}
.dx-busca-res .grupo{padding:10px 0 6px}
.dx-busca-res .grupo+.grupo{border-top:1px solid #ececf0}
.dx-busca-res .grupo h4{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--texto-2);padding:4px 18px 6px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.dx-busca-res .grupo h4 a{font-size:12px;letter-spacing:0;text-transform:none;color:var(--link)}
.dx-busca-res a.item{display:flex;align-items:center;gap:12px;padding:8px 18px;color:inherit;font-size:14px;line-height:1.3}
.dx-busca-res a.item:hover,.dx-busca-res a.item.foco{background:#f5f7fb}
.dx-busca-res a.item b{font-weight:400;display:block}
.dx-busca-res a.item small{display:block;font-size:12px;color:var(--texto-3);margin-top:1px}
.dx-busca-res a.item .dx-cod{font-size:12px;flex:none;min-width:0}
.dx-busca-res .vazio,.dx-busca-res .dica{padding:16px 18px;font-size:14px;color:var(--texto-2)}
.dx-busca .nota{font-size:12.5px;color:rgba(255,255,255,.55);text-align:center;margin-top:10px}
.claro .dx-busca .nota,.hero-pagina:not(.escuro) .dx-busca .nota{color:var(--texto-3)}
/* cartões das fontes (home e hub) */
.bd-fontes{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.bd-fonte{display:flex;flex-direction:column;gap:8px;border-radius:20px;padding:22px 22px 20px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);color:#fff;text-align:left;transition:background .2s,transform .2s var(--ease)}
.bd-fonte:hover{background:rgba(255,255,255,.12);transform:translateY(-2px)}
.bd-fonte .ico{width:42px;height:42px;border-radius:12px;background:rgba(255,255,255,.1);display:grid;place-items:center;color:var(--ouro-luz)}
.bd-fonte .ico svg{width:22px;height:22px}
.bd-fonte .fonte{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.55);margin-top:4px}
.bd-fonte h3{font-size:21px;letter-spacing:-.01em;margin:0}
.bd-fonte p{font-size:14.5px;line-height:1.4;color:rgba(255,255,255,.75);flex:1}
.bd-fonte .saiba{font-size:15px;margin-top:4px}
.claro .bd-fonte,.bd-fontes.claro .bd-fonte{background:#fff;border-color:var(--linha);color:var(--texto)}
.claro .bd-fonte .ico,.bd-fontes.claro .bd-fonte .ico{background:#EEF3FA;color:var(--navy)}
.claro .bd-fonte .fonte,.bd-fontes.claro .bd-fonte .fonte{color:var(--texto-3)}
.claro .bd-fonte p,.bd-fontes.claro .bd-fonte p{color:var(--texto-2)}
.claro .bd-fonte:hover,.bd-fontes.claro .bd-fonte:hover{background:#fff;box-shadow:0 18px 40px -24px rgba(11,34,82,.4)}
.bd-fonte.atual{outline:2px solid var(--ouro);outline-offset:0}
/* home: seção Brasil em Dados (preta, largura total, mapa ao fundo) */
.bd-home{position:relative;overflow:hidden;background:#000;color:#fff;padding:clamp(56px,7vw,96px) 0 clamp(48px,6vw,80px);margin-bottom:var(--gap)}
.bd-home .wrap-l{position:relative;z-index:1;display:grid;gap:clamp(22px,3vw,34px)}
.bd-home .bd-cab{text-align:center}
.bd-home .bd-cab .eyebrow{color:var(--ouro-luz)}
.bd-home .bd-cab h2{margin-bottom:10px}
.bd-home .bd-cab .sub{max-width:44ch}
.bd-home .bd-mapa{position:absolute;right:-6%;bottom:-18%;width:min(520px,52vw);opacity:.14;pointer-events:none;z-index:0}
.bd-home .bd-mapa svg{width:100%;height:auto}
.bd-home .bd-mapa path{fill:#fff;stroke:#000;stroke-width:1.5}
.bd-home .bd-mapa path.sp{fill:var(--ouro-luz)}
.bd-home .bd-rodape{text-align:center;font-size:13px;color:rgba(255,255,255,.5)}
.bd-home .bd-rodape a{color:rgba(255,255,255,.75);text-decoration:underline}
/* hub /dados/brasil/ */
.bd-hub-mapa{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center}
.bd-hub-mapa svg{width:min(460px,100%);height:auto;margin:0 auto}
.bd-hub-mapa path{fill:var(--navy-2);stroke:#fff;stroke-width:1.2}
.bd-hub-mapa path.sp{fill:var(--ouro)}
@media (max-width:900px){ .dx-indicadores{grid-template-columns:1fr 1fr} .bd-fontes{grid-template-columns:1fr} .bd-hub-mapa{grid-template-columns:1fr} .bd-home .bd-mapa{width:70vw;right:-20%;bottom:-10%;opacity:.1} }
@media (max-width:480px){ .dx-indicadores{grid-template-columns:1fr 1fr;gap:8px} .dx-ind{padding:14px 14px} .dx-busca input{height:50px;font-size:16px;padding:0 44px 0 44px} .dx-busca .campo svg.lupa{left:16px} }
.mega-col a.mega-sub{padding-left:12px;font-size:13px;color:rgba(255,255,255,.58)}
