@import url('https://fonts.googleapis.com/css2?family=Public+Sans:wght@400;500;600;700;800&display=swap');

:root{
  --ink:#14161A; --ink-2:#3730A3; --paper:#F7F8FA; --surface:#FFFFFF;
  --line:#ECEEF1; --line-strong:#E2E5EB; --muted:#5B6270;
  --accent:#4F46E5; --accent-2:#4338CA; --accent-bg:#EEECFC;
  --good:#15803D; --good-bg:#EAF7EF; --zap:#128C4B;
  --radius:14px; --largura:1120px;
}
*{box-sizing:border-box;}
[hidden]{display:none !important;}
html{scroll-behavior:smooth;}
body{margin:0; font-family:'Public Sans', -apple-system, 'Segoe UI', sans-serif; color:var(--ink); background:var(--surface); line-height:1.6; font-size:17px;}
img{max-width:100%;}
a{color:var(--accent-2);}
.faixa{padding:4.5rem 1rem;}
.faixa.cinza{background:var(--paper);}
.miolo{max-width:var(--largura); margin:0 auto;}
h1,h2,h3{line-height:1.2; letter-spacing:-.015em; margin:0;}
h1{font-size:clamp(2rem, 4.2vw, 3.1rem); font-weight:800;}
h2{font-size:clamp(1.55rem, 3vw, 2.1rem); font-weight:800;}
h3{font-size:1.08rem; font-weight:700;}
.sobretitulo{font-size:.8rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--accent); margin-bottom:.6rem;}
.lead{font-size:1.15rem; color:var(--muted); max-width:640px; margin:1rem 0 0;}
.cabeca-secao{max-width:680px; margin-bottom:2.4rem;}
.cabeca-secao p{color:var(--muted); margin:.8rem 0 0;}

/* Topo */
.topo{position:sticky; top:0; z-index:10; background:rgba(255,255,255,.94); backdrop-filter:blur(8px); border-bottom:1px solid var(--line);}
.topo .miolo{display:flex; align-items:center; gap:1.5rem; padding:.8rem 1rem;}
.marca{display:flex; align-items:center; gap:.6rem; text-decoration:none; color:var(--ink); font-weight:800; font-size:1.02rem; line-height:1.15;}
.marca small{display:block; font-weight:500; font-size:.72rem; color:var(--muted);}
.selo{width:38px; height:38px; border-radius:10px; background:var(--accent); color:#fff; display:grid; place-items:center; font-weight:800; font-size:.95rem; flex-shrink:0;}
.menu{display:flex; gap:1.3rem; margin-left:auto; align-items:center;}
.menu a{color:var(--ink); text-decoration:none; font-size:.92rem; font-weight:500; white-space:nowrap;}
.menu a:hover{color:var(--accent);}
.menu .botao{color:#fff;}
@media (max-width:1000px){ .menu a:not(.botao){display:none;} }

/* Botões */
.botao{display:inline-flex; align-items:center; gap:.5rem; padding:.8rem 1.3rem; border-radius:10px; background:var(--accent); color:#fff; text-decoration:none; font-weight:700; font-size:.95rem; border:1px solid var(--accent); transition:background .15s;}
.botao:hover{background:var(--accent-2);}
.botao.pequeno{padding:.5rem .9rem; font-size:.86rem;}
.botao.zap{background:var(--zap); border-color:var(--zap);}
.botao.zap:hover{background:#0E7A40;}
.botao.claro{background:var(--surface); color:var(--ink); border-color:var(--line-strong);}
.botao.claro:hover{background:var(--paper);}
.acoes{display:flex; gap:.7rem; flex-wrap:wrap; margin-top:2rem;}

/* Hero */
.hero{padding:5.5rem 1rem 4.5rem; background:linear-gradient(180deg, var(--accent-bg) 0%, #fff 100%);}
.hero .miolo{display:grid; grid-template-columns:1.2fr .8fr; gap:3rem; align-items:center;}
.hero-cartao{background:var(--surface); border:1px solid var(--line-strong); border-radius:var(--radius); padding:1.5rem; box-shadow:0 10px 30px rgba(55,48,163,.08);}
.hero-cartao h3{margin-bottom:.9rem;}
.lista-check{list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:.65rem;}
.lista-check li{padding-left:1.7rem; position:relative; font-size:.95rem;}
.lista-check li::before{content:''; position:absolute; left:0; top:.3rem; width:1.05rem; height:1.05rem; border-radius:50%; background:var(--good-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' fill='none' stroke='%2315803D' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/80% no-repeat;}
@media (max-width:860px){ .hero .miolo{grid-template-columns:1fr;} .hero{padding-top:3.5rem;} }

/* Grades de cartões */
.grade{display:grid; grid-template-columns:repeat(3, 1fr); gap:1.1rem;}
@media (max-width:900px){ .grade{grid-template-columns:repeat(2, 1fr);} }
@media (max-width:600px){ .grade{grid-template-columns:1fr;} }
.cartao{background:var(--surface); border:1px solid var(--line-strong); border-radius:var(--radius); padding:1.4rem;}
.cartao p{color:var(--muted); font-size:.94rem; margin:.5rem 0 0;}
.icone{width:42px; height:42px; border-radius:11px; background:var(--accent-bg); color:var(--accent); display:grid; place-items:center; margin-bottom:1rem;}
.icone svg{width:22px; height:22px;}

/* Passos */
.passos{display:grid; grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)); gap:1.5rem; counter-reset:passo;}
.passo{counter-increment:passo;}
.passo::before{content:counter(passo); display:grid; place-items:center; width:36px; height:36px; border-radius:50%; background:var(--ink); color:#fff; font-weight:800; margin-bottom:.9rem;}
.passo p{color:var(--muted); font-size:.94rem; margin:.4rem 0 0;}

/* Chamada do sistema */
.chamada{background:var(--ink); color:#fff; border-radius:20px; padding:2.6rem; display:grid; grid-template-columns:1fr auto; gap:2rem; align-items:center;}
.chamada p{color:#C9CCD3; margin:.7rem 0 0; max-width:620px;}
.chamada .sobretitulo{color:#A5B4FC;}
@media (max-width:760px){ .chamada{grid-template-columns:1fr; padding:1.8rem;} }

/* Contato */
.contato{display:grid; grid-template-columns:1fr 1fr; gap:2.5rem; align-items:start;}
.dados{list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:1rem;}
.dados li{display:flex; gap:.8rem; align-items:flex-start;}
.dados .icone{margin:0; width:38px; height:38px; flex-shrink:0;}
.dados b{display:block; font-size:.8rem; color:var(--muted); font-weight:600; text-transform:uppercase; letter-spacing:.04em;}
@media (max-width:760px){ .contato{grid-template-columns:1fr;} }

/* Rodapé */
.rodape{border-top:1px solid var(--line); padding:2rem 1rem; font-size:.86rem; color:var(--muted);}
.rodape .miolo{display:flex; justify-content:space-between; gap:1rem; flex-wrap:wrap;}
.rodape a{color:var(--muted);}
.rodape nav{display:flex; gap:1.2rem; flex-wrap:wrap;}

/* Perguntas */
details.pergunta{border-bottom:1px solid var(--line-strong); padding:1rem 0;}
details.pergunta summary{cursor:pointer; font-weight:700; list-style:none; display:flex; justify-content:space-between; gap:1rem;}
details.pergunta summary::after{content:'+'; color:var(--accent); font-size:1.3rem; line-height:1;}
details.pergunta[open] summary::after{content:'−';}
details.pergunta p{color:var(--muted); margin:.7rem 0 0;}

/* Certificado digital e produtos parceiros */
.destaque{display:flex; justify-content:space-between; align-items:center; gap:2rem; background:var(--surface); border:1px solid var(--line-strong); border-left:4px solid var(--accent); border-radius:var(--radius); padding:1.6rem; margin-bottom:1.1rem;}
.destaque p{color:var(--muted); margin:.5rem 0 0; max-width:640px;}
.destaque .botao{flex-shrink:0;}
@media (max-width:760px){ .destaque{flex-direction:column; align-items:flex-start;} }
.grade.grade-4{grid-template-columns:repeat(4, 1fr);}
@media (max-width:1000px){ .grade.grade-4{grid-template-columns:repeat(2, 1fr);} }
@media (max-width:600px){ .grade.grade-4{grid-template-columns:1fr;} }
.produto{display:flex; flex-direction:column;}
.produto-sub{font-size:.8rem; font-weight:600; color:var(--accent); margin-top:.15rem;}
.produto p{flex:1;}
.link-seta{display:inline-block; margin-top:1rem; font-weight:700; font-size:.9rem; text-decoration:none;}
.link-seta:hover{text-decoration:underline;}

/* Links úteis */
.links-grade{display:grid; grid-template-columns:repeat(4, 1fr); gap:1.1rem;}
@media (max-width:1000px){ .links-grade{grid-template-columns:repeat(2, 1fr);} }
@media (max-width:600px){ .links-grade{grid-template-columns:1fr;} }
.links-grupo{background:var(--paper); border:1px solid var(--line-strong); border-radius:var(--radius); padding:1.2rem 1.3rem;}
.links-grupo h3{font-size:.8rem; text-transform:uppercase; letter-spacing:.06em; color:var(--muted); margin-bottom:.7rem;}
.links-grupo ul{list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:.55rem;}
.links-grupo a{color:var(--ink); text-decoration:none; font-size:.94rem; font-weight:500;}
.links-grupo a span{color:var(--accent); font-size:.8rem;}
.links-grupo a:hover{color:var(--accent);}
.grade.grade-2{grid-template-columns:repeat(2, 1fr);}
@media (max-width:600px){ .grade.grade-2{grid-template-columns:1fr;} }
