/* TurboChat — site institucional. CSS único, sem fontes ou libs externas:
   a Meta reprova página que demora a carregar, então tudo é local. */
*{margin:0;padding:0;box-sizing:border-box}
:root{
  --azul:#1e3a8a;--azul-claro:#1d4ed8;--azul-escuro:#172554;
  --tinta:#0f172a;--tinta2:#475569;--tinta3:#64748b;
  --borda:#e2e8f0;--fundo:#ffffff;--fundo2:#f8fafc;
  --verde:#16a34a;--raio:12px;
}
html{scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  color:var(--tinta);background:var(--fundo);line-height:1.65;font-size:16px;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--azul-claro);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
.wrap-txt{max-width:800px;margin:0 auto;padding:0 24px}

/* topo */
header{border-bottom:1px solid var(--borda);background:#fff;position:sticky;top:0;z-index:50}
.nav{display:flex;align-items:center;justify-content:space-between;height:66px;gap:16px}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:19px;color:var(--tinta)}
.logo:hover{text-decoration:none}
.logo-mark{width:34px;height:34px;border-radius:9px;background:var(--azul);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:800;flex-shrink:0}
.nav-links{display:flex;align-items:center;gap:26px;font-size:14.5px}
.nav-links a{color:var(--tinta2);font-weight:500}
.btn{display:inline-block;padding:11px 22px;border-radius:9px;font-weight:700;font-size:14.5px;
  background:var(--azul);color:#fff;border:1px solid var(--azul);transition:.15s}
.btn:hover{background:var(--azul-escuro);text-decoration:none}
.btn-ghost{background:transparent;color:var(--azul);border-color:var(--borda)}
.btn-ghost:hover{background:var(--fundo2);color:var(--azul)}

/* hero */
.hero{padding:76px 0 62px;background:linear-gradient(180deg,#f8fafc,#fff)}
.hero h1{font-size:44px;line-height:1.15;letter-spacing:-.8px;font-weight:800;max-width:20ch}
.hero p.lead{font-size:18.5px;color:var(--tinta2);margin-top:20px;max-width:56ch}
.hero-cta{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}
.chips{display:flex;gap:9px;flex-wrap:wrap;margin-top:34px}
.chip{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;border:1px solid var(--borda);
  border-radius:30px;font-size:13.5px;color:var(--tinta2);background:#fff;font-weight:500}
.dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}

/* seções */
section{padding:64px 0}
section.alt{background:var(--fundo2);border-top:1px solid var(--borda);border-bottom:1px solid var(--borda)}
h2{font-size:29px;font-weight:800;letter-spacing:-.4px}
.sub{color:var(--tinta2);margin-top:12px;font-size:16.5px;max-width:62ch}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:38px}
.card{background:#fff;border:1px solid var(--borda);border-radius:var(--raio);padding:24px}
.card h3{font-size:16.5px;font-weight:700;margin-bottom:8px}
.card p{font-size:14.5px;color:var(--tinta2)}
.ico{width:40px;height:40px;border-radius:10px;background:rgba(30,58,138,.09);color:var(--azul);
  display:flex;align-items:center;justify-content:center;margin-bottom:14px;font-size:19px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:38px;counter-reset:p}
.step{position:relative;padding-top:44px}
.step::before{counter-increment:p;content:counter(p);position:absolute;top:0;left:0;width:32px;height:32px;
  border-radius:50%;background:var(--azul);color:#fff;display:flex;align-items:center;justify-content:center;
  font-weight:800;font-size:14px}
.step h3{font-size:16.5px;font-weight:700;margin-bottom:7px}
.step p{font-size:14.5px;color:var(--tinta2)}

/* rodapé */
footer{background:var(--tinta);color:#cbd5e1;padding:52px 0 30px;font-size:14px}
footer a{color:#cbd5e1}
footer a:hover{color:#fff}
.fgrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:36px}
.fgrid h4{color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:.6px;margin-bottom:14px}
.fgrid ul{list-style:none}
.fgrid li{margin-bottom:9px}
.fbottom{border-top:1px solid #1e293b;margin-top:38px;padding-top:22px;display:flex;
  justify-content:space-between;gap:16px;flex-wrap:wrap;color:#94a3b8;font-size:13px}
.flogo{display:flex;align-items:center;gap:10px;color:#fff;font-weight:800;font-size:18px;margin-bottom:14px}

/* documentos legais */
.doc{padding:52px 0 72px}
.doc h1{font-size:33px;font-weight:800;letter-spacing:-.5px}
.doc .meta{color:var(--tinta3);font-size:14px;margin-top:10px;padding-bottom:26px;border-bottom:1px solid var(--borda)}
.doc h2{font-size:20px;margin:38px 0 12px;letter-spacing:-.2px}
.doc h3{font-size:16.5px;margin:24px 0 8px;font-weight:700}
.doc p{margin-bottom:14px;color:var(--tinta2)}
.doc ul,.doc ol{margin:0 0 16px 22px;color:var(--tinta2)}
.doc li{margin-bottom:8px}
.doc strong{color:var(--tinta)}
.toc{background:var(--fundo2);border:1px solid var(--borda);border-radius:var(--raio);padding:20px 24px;margin:26px 0}
.toc ol{margin:10px 0 0 20px}
.toc li{margin-bottom:5px;font-size:14.5px}
table{width:100%;border-collapse:collapse;margin:16px 0 22px;font-size:14.5px}
th,td{border:1px solid var(--borda);padding:11px 13px;text-align:left;vertical-align:top}
th{background:var(--fundo2);font-weight:700;font-size:13.5px}
td{color:var(--tinta2)}
.aviso{background:#fffbeb;border:1px solid #fde68a;border-left:4px solid #d97706;
  border-radius:9px;padding:16px 18px;margin:22px 0;font-size:14.5px;color:#78350f}
.destaque{background:rgba(30,58,138,.05);border:1px solid rgba(30,58,138,.16);border-left:4px solid var(--azul);
  border-radius:9px;padding:16px 18px;margin:22px 0;font-size:14.5px}
.contato-box{background:var(--fundo2);border:1px solid var(--borda);border-radius:var(--raio);padding:22px 24px;margin:24px 0}
.contato-box p{margin-bottom:7px}

@media(max-width:860px){
  .grid,.steps,.fgrid{grid-template-columns:1fr}
  .hero h1{font-size:33px;max-width:100%}
  .hero{padding:52px 0 44px}
  .nav-links{display:none}
  section{padding:48px 0}
  h2{font-size:24px}
  .doc h1{font-size:27px}
}
