:root{
  --azul:#185FA5; --azul-bg:#E6F1FB; --azul-txt:#0C447C;
  --tinta:#1c1b18; --secund:#56544e; --muted:#8a8880;
  --borda:#e4e2d9; --surface:#f7f6f1; --papel:#fefdfb;
  --danger:#A32D2D; --radius:10px;
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'Outfit',-apple-system,BlinkMacSystemFont,sans-serif; color:var(--tinta); background:var(--papel); line-height:1.65; font-size:16px;}
.wrap{max-width:760px; margin:0 auto; padding:0 20px;}

.topo{position:sticky; top:0; z-index:50; background:rgba(254,253,251,0.85); backdrop-filter:blur(12px); border-bottom:1px solid var(--borda);}
.topo-inner{display:flex; align-items:center; justify-content:space-between; height:60px;}
.logo{font-size:18px; color:var(--tinta); text-decoration:none; letter-spacing:-0.02em; display:flex; align-items:center;}
.logo img{display:block; height:30px; width:auto;}
.logo strong{color:var(--azul); font-weight:600;}
.nav{display:flex; gap:22px;}
.nav a{font-size:14px; color:var(--secund); text-decoration:none;}
.nav a:hover{color:var(--azul);}

.hero{padding:54px 0 36px; text-align:center;}
.eyebrow{display:inline-block; font-size:13px; font-weight:500; color:var(--azul-txt); background:var(--azul-bg); padding:5px 14px; border-radius:100px; margin-bottom:18px;}
h1{font-family:'Fraunces',Georgia,serif; font-size:clamp(34px,7vw,52px); font-weight:600; line-height:1.05; letter-spacing:-0.02em; margin-bottom:18px;}
h1 em{font-style:italic; color:var(--azul);}
.hero-sub{font-size:17px; color:var(--secund); max-width:560px; margin:0 auto;}

.calc-section{padding:8px 0 20px;}
.calc-card{background:var(--papel); border:1px solid var(--borda); border-radius:16px; padding:26px;}
.grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:15px; margin-bottom:18px;}
.field{font-size:13px; color:var(--secund); display:block; margin-bottom:6px;}
input,select{width:100%; height:42px; padding:0 12px; font-size:15px; font-family:inherit; border:1px solid var(--borda); border-radius:var(--radius); background:#fff; color:var(--tinta);}
input:focus,select:focus{outline:none; border-color:var(--azul); box-shadow:0 0 0 3px var(--azul-bg);}
input[type=checkbox]{width:auto; height:auto;}
.checks{display:flex; flex-direction:column; gap:11px; margin-bottom:18px;}
.checks label{font-size:14px; color:var(--secund); display:flex; align-items:center; gap:9px; cursor:pointer;}
#fgts_wrap{display:none; margin-bottom:18px;}
#fgts_wrap input{max-width:280px;}
.hint{font-size:12px; color:var(--muted); margin-top:6px;}
.btn-calc{width:100%; height:50px; font-size:16px; font-weight:600; font-family:inherit; background:var(--azul); color:#fff; border:none; border-radius:var(--radius); cursor:pointer; transition:transform .1s, background .2s;}
.btn-calc:hover{background:var(--azul-txt);}
.btn-calc:active{transform:scale(0.99);}

#resultado{display:none; margin-top:24px;}
.res-top{border-top:1px solid var(--borda); padding-top:22px;}
.destaque{background:var(--azul-bg); border-radius:14px; padding:20px 22px; margin-bottom:20px;}
.destaque .rotulo{font-size:13px; color:var(--azul-txt);}
.destaque .valor{font-family:'Fraunces',serif; font-size:clamp(28px,7vw,36px); font-weight:600; color:var(--azul-txt); margin-top:4px; line-height:1.1;}
.linhas{width:100%;}
.sec-titulo{font-size:13px; color:var(--secund); margin:6px 0 10px; font-weight:500;}
.linha{display:flex; justify-content:space-between; align-items:baseline; gap:12px; padding:7px 0;}
.linha .nome{color:var(--tinta); font-size:14px;}
.linha .tag{color:var(--muted); font-size:12px;}
.linha .valor-l{font-size:14px; white-space:nowrap; font-variant-numeric:tabular-nums;}
.linha.total{border-top:1px solid var(--borda); margin-top:4px; padding-top:11px; font-weight:600;}
.linha.total .nome{font-weight:600;}
.desc-val{color:var(--danger);}
.bloco-descontos{margin-top:16px;}
.nota-saque{background:var(--surface); border-radius:var(--radius); padding:13px 15px; margin-top:18px; font-size:13px; color:var(--secund);}
.aviso-legal{font-size:12px; color:var(--muted); margin-top:16px; line-height:1.6;}

.ad-slot{min-height:1px; margin:8px auto;}

.conteudo{padding:34px 0;}
.conteudo h2{font-family:'Fraunces',serif; font-size:clamp(24px,5vw,32px); font-weight:600; letter-spacing:-0.01em; margin-bottom:16px; line-height:1.15;}
.conteudo h3{font-size:18px; font-weight:600; margin:22px 0 7px; color:var(--tinta);}
.conteudo p{color:var(--secund); margin-bottom:12px;}

.rodape{border-top:1px solid var(--borda); padding:28px 0 40px; margin-top:20px;}
.rodape p{font-size:13px; color:var(--muted); line-height:1.6; margin-bottom:10px;}
.copyright{font-size:12px;}

@media(max-width:600px){
  .nav{display:none;}
  .hero{padding:36px 0 24px;}
  .calc-card{padding:18px;}
  .grid{grid-template-columns:1fr; gap:13px;}
  .linha .nome{font-size:13px;}
  .linha .valor-l{font-size:13px;}
}
