*{box-sizing:border-box}
:root{--navy:#0f2f4a;--gold:#c9a227;--ink:#1c1c1c;--muted:#6b7280;--line:#e3e6ea;--ok:#2f7d4f}
body{margin:0;font-family:-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:#f2f4f7;-webkit-text-size-adjust:100%}
.hdr{display:flex;align-items:center;gap:12px;background:var(--navy);color:#fff;padding:14px 18px;border-bottom:3px solid var(--ok)}
.crest{width:40px;height:40px;border:2px solid var(--ok);border-radius:8px;display:grid;place-items:center;font:700 11px/1 Georgia,serif;letter-spacing:.5px;flex:0 0 auto}
.hdr-txt{font:600 13px/1.3 -apple-system,sans-serif}
.hdr-txt span{display:block;font-weight:400;font-size:11px;opacity:.75}
.wrap{max-width:440px;margin:0 auto;padding:18px 18px 40px}
.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;margin-bottom:14px}
h1{font:700 19px/1.3 Georgia,serif;margin:0 0 10px}
h2{font:700 15px Georgia,serif;margin:0 0 10px}
.lead{font-size:15px;margin:0 0 10px}
.muted{color:var(--muted);font-size:14px;line-height:1.55}
.small{font-size:12px}
.btn{display:block;width:100%;text-align:center;text-decoration:none;background:var(--navy);color:#fff;border:0;border-radius:8px;padding:15px;font:700 14px/1 -apple-system,sans-serif;letter-spacing:.3px;margin-top:16px;cursor:pointer}
.btn:disabled{opacity:.55;cursor:not-allowed}
.btn.sm{padding:10px;font-size:12px;margin-top:8px;max-width:220px}
.foot{text-align:center;color:#9aa3ad;font-size:11px;margin:14px 0 0}
.bullets{margin:0;padding-left:18px;color:var(--muted);font-size:13px;line-height:1.9}
.lbl{display:block;font:700 12px -apple-system,sans-serif;margin:12px 0 6px}
.inp{width:100%;padding:13px;border:1px solid #ccd2d9;border-radius:8px;font:400 15px -apple-system,sans-serif;background:#fff;color:var(--ink)}
.inp:focus{outline:2px solid var(--navy);outline-offset:-1px}
.hide{display:none}
.center{text-align:center}
.ring{width:34px;height:34px;border:3px solid var(--line);border-top-color:var(--ok);border-radius:50%;margin:10px auto;animation:sp 1s linear infinite}
.ring.big{width:64px;height:64px;border-width:4px;margin:6px auto 16px}
@keyframes sp{to{transform:rotate(360deg)}}
.bar{height:6px;background:var(--line);border-radius:3px;overflow:hidden;margin:14px 0 8px}
.bar i{display:block;height:100%;width:0;background:var(--ok);transition:width .4s}
.ovl{position:fixed;inset:0;background:#fff;z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;text-align:center}
.ovl .bar{width:100%;max-width:260px}
.ovl .lead{font:700 16px Georgia,serif}
.ovl.hide{display:none}

/* bloco de confiança */
.trust{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}
.trust-item{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 6px;text-align:center;color:var(--navy)}
.trust-item svg{width:22px;height:22px;fill:none;stroke:var(--ok);stroke-width:1.7;display:block;margin:0 auto 6px}
.trust-item span{display:block;font:700 10px/1.25 -apple-system,sans-serif}
.trust-item small{display:block;font-size:9px;color:var(--muted);margin-top:3px}

/* rodapé de conformidade */
.sn-footer{margin-top:10px;text-align:center}
.sn-badges{display:flex;gap:6px;justify-content:center;margin-bottom:10px}
.badge{border:1px solid var(--line);background:#fff;border-radius:20px;padding:5px 11px;font:700 9px/1 -apple-system,sans-serif;color:var(--navy);letter-spacing:.4px}