/* Layout: corporativo e sóbrio. Branco, grafite e um bronze contido só nos detalhes; Red Hat Display nos títulos, Red Hat Text no corpo, números alinhados. */
:root{
  --fundo:#ffffff; --painel:#f4f4f2; --texto:#1a1c1f; --suave:#5d6066; --linha:#e2e2de;
  --acento:#262a30; --acento-hover:#3a3f47; --sobre:#ffffff; --detalhe:#93650f;
  --titulo:"Red Hat Display", "Helvetica Neue", Arial, sans-serif;
  --sans:"Red Hat Text", "Helvetica Neue", Arial, sans-serif;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --fundo:#141517; --painel:#1c1d20; --texto:#ececea; --suave:#a4a6aa; --linha:#2e2f33;
  --acento:#e6e6e2; --acento-hover:#ffffff; --sobre:#141517; --detalhe:#d4a54c; color-scheme:dark}}
:root[data-theme="dark"]{--fundo:#141517; --painel:#1c1d20; --texto:#ececea; --suave:#a4a6aa; --linha:#2e2f33; --acento:#e6e6e2; --acento-hover:#ffffff; --sobre:#141517; --detalhe:#d4a54c; color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;background:var(--fundo);color:var(--texto);font:17px/1.65 var(--sans);-webkit-font-smoothing:antialiased}
.faixa{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.miolo{max-width:1100px;margin:0 auto}
h1,h2,h3{font-family:var(--titulo);font-weight:600;text-wrap:balance;margin:0;letter-spacing:-.3px}
a{color:var(--texto);text-decoration-color:var(--detalhe);text-underline-offset:3px}
a:hover{color:var(--detalhe)}
:focus-visible{outline:2px solid var(--detalhe);outline-offset:3px}
.botao{display:inline-block;background:var(--acento);color:var(--sobre);text-decoration:none;font-weight:600;font-size:16px;padding:13px 22px;border-radius:4px;transition:background .15s}
.botao:hover{background:var(--acento-hover);color:var(--sobre)}
.botao.sec{background:transparent;color:var(--texto);border:1px solid var(--linha)}
.botao.sec:hover{border-color:var(--suave);color:var(--texto)}
nav{border-bottom:1px solid var(--linha)}
nav .miolo{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:18px;flex-wrap:wrap}
.marca{font-family:var(--titulo);font-weight:700;font-size:19px;letter-spacing:-.2px}
.marca small{display:block;font-family:var(--sans);font-weight:400;font-size:12px;color:var(--suave);letter-spacing:.2px}
.menu{display:flex;gap:28px;align-items:center;flex-wrap:wrap}
.menu a{color:var(--suave);text-decoration:none;font-size:15px}
.menu a:hover{color:var(--texto)}
.menu a.botao{color:var(--sobre);font-size:15px;padding:10px 18px}
.chapeu{display:block;font-size:13px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--detalhe);margin-bottom:18px}

/* herói */
.heroi{padding-block:80px 72px}
.heroi .grade{display:grid;grid-template-columns:1.2fr .8fr;gap:64px;align-items:center}
.heroi h1{font-weight:600;font-size:clamp(34px,4.4vw,52px);line-height:1.1;letter-spacing:-1px}
.heroi p{font-size:19px;color:var(--suave);max-width:34em;margin:22px 0 32px}
.acoes{display:flex;gap:12px;flex-wrap:wrap}
.quadro{border:1px solid var(--linha);border-radius:6px;padding:28px;background:var(--fundo);min-width:0}
.quadro h3{font-family:var(--sans);font-size:13px;font-weight:600;color:var(--suave);letter-spacing:.6px;text-transform:uppercase;margin-bottom:16px}
.quadro table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.quadro td{padding:12px 0;border-bottom:1px solid var(--linha);font-size:16px}
.quadro td:last-child{text-align:right;font-weight:500;white-space:nowrap}
.quadro tr.destaque td{border-bottom:none;padding-top:18px;font-weight:600}
.quadro tr.destaque td:last-child{font-family:var(--titulo);font-size:28px;font-weight:600}
.quadro .nota{font-size:12.5px;color:var(--suave);margin:14px 0 0;line-height:1.5}
.quadro .ir{margin:16px 0 0;font-weight:600;font-size:15px}

/* números com fonte */
.fatos{border-top:1px solid var(--linha);border-bottom:1px solid var(--linha)}
.numeros{display:grid;grid-template-columns:repeat(3,1fr)}
.numero{padding:30px 28px 30px 0;min-width:0}
.numero + .numero{padding-left:28px;border-left:1px solid var(--linha)}
.numero b{display:block;font-family:var(--titulo);font-weight:600;font-size:38px;line-height:1;letter-spacing:-.8px;font-variant-numeric:tabular-nums}
.numero span{display:block;color:var(--suave);margin-top:12px;font-size:15px}
.numero small{display:block;margin-top:8px;font-size:12.5px;letter-spacing:.2px;color:var(--suave);font-weight:600}

section{padding-block:80px}
.painel{background:var(--painel)}
.cab{max-width:680px;margin-bottom:40px}
.cab h2{font-size:clamp(26px,3.2vw,36px)}
.cab p{color:var(--suave);font-size:18px;margin:14px 0 0}
.mais{margin:32px 0 0;display:flex;gap:14px 24px;align-items:center;flex-wrap:wrap;font-weight:600}
.mais a:not(.botao){text-decoration:none}

.tres{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.tres div{border-top:2px solid var(--texto);padding-top:18px;min-width:0}
.tres h3{font-size:19px;margin-bottom:8px}
.tres p{color:var(--suave);margin:0}
.etapas{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--linha);counter-reset:e}
.etapas li{counter-increment:e;padding:24px 24px 0 0;min-width:0}
.etapas li + li{padding-left:24px;border-left:1px solid var(--linha)}
.etapas li::before{content:"0" counter(e);display:block;font-family:var(--titulo);font-weight:600;font-size:15px;color:var(--detalhe);margin-bottom:10px}
.etapas strong{display:block;font-family:var(--titulo);font-weight:600;font-size:18px;margin-bottom:6px}
.etapas span{color:var(--suave);font-size:15px}
.itens{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.itens div{background:var(--fundo);border:1px solid var(--linha);border-radius:6px;padding:24px;min-width:0}
.painel .itens div{background:var(--fundo)}
.itens h3{font-size:18px;margin-bottom:6px}
.itens p{color:var(--suave);margin:0;font-size:15px}
.guias{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.guias a{display:block;border:1px solid var(--linha);border-radius:6px;background:var(--fundo);padding:24px;text-decoration:none;color:var(--texto);min-width:0;transition:border-color .15s}
.guias a:hover{border-color:var(--suave);color:var(--texto)}
.guias h3{font-size:18px;margin-bottom:6px}
.guias p{color:var(--suave);margin:0;font-size:15px}

details{border-bottom:1px solid var(--linha);padding-block:20px}
details:first-of-type{border-top:1px solid var(--linha)}
summary{cursor:pointer;font-family:var(--titulo);font-weight:600;font-size:18px;list-style:none;display:flex;justify-content:space-between;gap:16px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--suave);font-weight:400}
details[open] summary::after{content:"–"}
details p{color:var(--suave);margin:12px 0 0}

/* calculadora */
.calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:40px;align-items:start}
.calc form{display:grid;grid-template-columns:1fr 1fr;gap:18px 16px;align-content:start}
.calc label{display:grid;gap:6px;font-size:15px;font-weight:600;align-content:end;min-width:0}
.calc label small{color:var(--suave);font-weight:400}
.calc .largo{grid-column:1/-1}
.calc input,.calc select{font:inherit;font-size:16px;padding:11px 12px;border:1px solid var(--linha);border-radius:4px;background:var(--fundo);color:var(--texto);width:100%}
.calc input:focus,.calc select:focus{border-color:var(--suave);outline:none}
.calc details{grid-column:1/-1;border:none;padding:4px 0 0}
.calc details summary{font-family:var(--sans);font-size:15px;color:var(--suave)}
.ajuste{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.resultado{background:var(--fundo);border:1px solid var(--linha);border-top:3px solid var(--detalhe);border-radius:6px;padding:24px 26px;min-width:0}
.resultado h3{font-family:var(--sans);font-size:13px;font-weight:600;color:var(--suave);letter-spacing:.6px;text-transform:uppercase;margin-bottom:6px}
.passos{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:15px}
.passos td{padding:10px 0;border-bottom:1px solid var(--linha);vertical-align:top}
.passos td:first-child{color:var(--suave);font-family:var(--titulo);font-weight:600;width:28px}
.passos td small{display:block;color:var(--suave);font-size:13px}
.passos td:last-child{text-align:right;font-weight:600;white-space:nowrap;padding-left:12px}
.total-grande{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin:16px 0 0}
.total-grande span{color:var(--suave);font-size:15px;font-weight:600}
.total-grande b{font-family:var(--titulo);font-size:clamp(30px,3.6vw,38px);font-weight:600;letter-spacing:-.8px;font-variant-numeric:tabular-nums}
.resultado .nota{color:var(--suave);font-size:14px;margin:10px 0 0;line-height:1.55}
.botao.bloco{display:block;text-align:center;margin-top:18px}
.obs{max-width:62em;margin:28px 0 0;color:var(--suave);font-size:15px}
.obs strong{color:var(--texto)}

.contato{border-top:1px solid var(--linha)}
.contato .miolo{display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:center}
.contato h2{font-size:clamp(28px,3.4vw,38px)}
.contato p{color:var(--suave);margin:14px 0 0}
.aviso-contato{font-size:14px}
.canais{display:grid;gap:12px}
.canal{border:1px solid var(--linha);border-radius:6px;padding:16px 20px;display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}
.canal span{color:var(--suave);font-size:14px}
.canal strong{font-weight:600;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.canais .botao{text-align:center}

footer{background:var(--painel);padding-block:32px;font-size:13.5px;color:var(--suave)}
footer .miolo{display:grid;gap:8px}
footer a{color:var(--suave)}
footer .mapa{display:flex;flex-wrap:wrap;gap:8px 22px;margin-bottom:8px}
footer .mapa a{text-decoration:none;font-weight:600}

/* páginas de guia */
.migalhas{font-size:14px;color:var(--suave);padding-block:18px 0}
.migalhas a{color:var(--suave);text-decoration:none}
.guia-topo{padding-block:36px 40px;border-bottom:1px solid var(--linha)}
.guia-topo h1{font-size:clamp(30px,4vw,46px);line-height:1.14;letter-spacing:-.8px;max-width:22em}
.guia-topo .resumo{font-size:19px;color:var(--suave);max-width:38em;margin:18px 0 0}
.guia-topo .data{font-size:13px;color:var(--suave);margin-top:18px}
.guia{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:64px;padding-block:48px 72px}
.artigo{min-width:0;max-width:720px}
.artigo h2{font-size:26px;margin:44px 0 12px}
.artigo h2:first-child{margin-top:0}
.artigo h3{font-size:19px;margin:28px 0 8px}
.artigo ul,.artigo ol{padding-left:22px}
.artigo li{margin:6px 0}
.artigo .calc{margin:20px 0 8px;grid-template-columns:1fr}
.destaque-caixa{border-left:3px solid var(--detalhe);background:var(--painel);padding:16px 20px;margin:24px 0;border-radius:0 4px 4px 0}
.destaque-caixa p{margin:0}
.tabela{overflow-x:auto;margin:20px 0}
.tabela table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:16px}
.tabela th,.tabela td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--linha);vertical-align:top}
.tabela th{font-weight:600;color:var(--suave);font-size:14px}
.tabela .num{text-align:right}
.fontes{font-size:14px;color:var(--suave);border-top:1px solid var(--linha);margin-top:44px;padding-top:18px}
.fontes ol{padding-left:20px}
.fontes a{word-break:break-word}
.lateral{position:sticky;top:24px;align-self:start;display:grid;gap:18px}
.cartao-cta{border:1px solid var(--linha);border-top:3px solid var(--detalhe);border-radius:6px;padding:22px}
.cartao-cta h3{font-size:17px;margin-bottom:8px}
.cartao-cta p{color:var(--suave);font-size:15px;margin:0 0 16px}
.cartao-cta .botao{display:block;text-align:center}
.indice{font-size:15px}
.indice strong{display:block;font-size:12.5px;letter-spacing:1px;text-transform:uppercase;color:var(--suave);margin-bottom:8px}
.indice a{display:block;color:var(--texto);text-decoration:none;padding:6px 0;border-bottom:1px solid var(--linha)}

@media (max-width:900px){
  .heroi .grade,.calc,.contato .miolo,.guia{grid-template-columns:1fr;gap:36px}
  .lateral{position:static}
  .etapas,.itens{grid-template-columns:1fr 1fr}
  .etapas li:nth-child(3){padding-left:0;border-left:none}
  .tres,.guias,.numeros{grid-template-columns:1fr}
  .numero + .numero{padding-left:0;border-left:none;border-top:1px solid var(--linha)}
  .menu a:not(.botao){display:none}
}
@media (max-width:540px){
  .etapas,.itens,.calc form,.ajuste{grid-template-columns:1fr}
  .etapas li{padding-left:0!important;border-left:none!important}
  .etapas li + li{border-top:1px solid var(--linha);margin-top:18px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
.restaurar{margin:0;font-size:14px;color:var(--suave)}
.restaurar button{font:inherit;font-weight:600;color:var(--texto);background:none;border:none;padding:0;text-decoration:underline;text-decoration-color:var(--detalhe);text-underline-offset:3px;cursor:pointer}
.opcional{display:inline-block;font-family:var(--sans);font-style:normal;font-weight:600;font-size:11px;letter-spacing:.8px;text-transform:uppercase;color:var(--detalhe);border:1px solid var(--linha);border-radius:3px;padding:1px 6px;margin-left:6px;vertical-align:2px}
.opcoes{list-style:none;margin:0;padding:0;border-top:1px solid var(--linha);max-width:880px}
.opcoes li{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:20px 0;border-bottom:1px solid var(--linha)}
.opcoes li div{min-width:0}
.opcoes strong{display:block;font-family:var(--titulo);font-weight:600;font-size:18px;margin-bottom:4px}
.opcoes span{color:var(--suave);font-size:15.5px}
.opcoes em{flex:none;margin:3px 0 0;font-size:11.5px;padding:3px 9px}
.incluido{display:inline-block;font-style:normal;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--sobre);background:var(--acento);border-radius:3px}
.passos.duas th{font-size:12.5px;font-weight:600;color:var(--suave);text-align:right;padding:0 0 8px 12px;letter-spacing:.3px;text-transform:uppercase}
.passos.duas td:first-child{width:auto;color:var(--texto);font-family:var(--sans);font-weight:500}
.passos.duas td{text-align:right;white-space:nowrap;padding-left:12px}
.passos.duas td:first-child{text-align:left;white-space:normal;padding-left:0}
.passos.duas tr.soma td{font-weight:700;border-bottom:none;padding-top:14px}
.etapas.seis{grid-template-columns:repeat(3,1fr);row-gap:28px}
.etapas.seis li:nth-child(4){padding-left:0;border-left:none}
@media (max-width:900px){.etapas.seis{grid-template-columns:1fr 1fr}.etapas.seis li:nth-child(3),.etapas.seis li:nth-child(5){padding-left:0;border-left:none}.etapas.seis li:nth-child(4){padding-left:24px;border-left:1px solid var(--linha)}}
@media (max-width:540px){.etapas.seis{grid-template-columns:1fr}.etapas.seis li{padding-left:0!important;border-left:none!important}}
