:root{--bg:#F4F5F7;--sf:#fff;--ink:#17181E;--mudo:#5E6270;--linha:#E1E3E8;--red:#D0202F;--rosa:#FCEEEF;--f:"DM Sans",system-ui,Segoe UI,Arial,sans-serif}
*{box-sizing:border-box}
html,body{margin:0}
body.ca{background:var(--bg);color:var(--ink);font:16px/1.55 var(--f);min-height:100vh;display:flex;flex-direction:column}
a{color:var(--red)}
.ca-topo{display:flex;align-items:center;gap:12px;padding:14px max(16px,4vw);background:var(--sf);border-bottom:1px solid var(--linha)}
.ca-topo nav{margin-left:auto;display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.ca-logo{display:flex;align-items:center;gap:9px;font-weight:700;font-size:18px;color:var(--ink);text-decoration:none}
.ca-btn{display:inline-block;border-radius:9px;padding:9px 14px;font-weight:700;font-size:14px;border:2px solid var(--red);color:var(--red);text-decoration:none;background:var(--sf);cursor:pointer;font-family:inherit;line-height:1.2}
.ca-btn.ca-p{background:var(--red);color:#fff}
.ca-btn.ca-off{border-color:var(--linha);color:var(--mudo);background:transparent;cursor:default}
.ca-btn.ca-cheio{width:100%;padding:12px;font-size:16px;margin-top:6px}
.ca-lnk{color:var(--mudo);text-decoration:none;font-size:14px;padding:9px 6px}
.ca-corpo{flex:1;width:100%;max-width:1060px;margin:0 auto;padding:28px max(16px,4vw) 48px}
.ca-hero h1{font-size:clamp(26px,3.6vw,38px);line-height:1.15;margin:0 0 10px;text-wrap:balance;max-width:22ch}
.ca-hero p{color:var(--mudo);max-width:64ch;margin:0 0 26px}
.ca-trio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
@media(max-width:900px){.ca-trio{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.ca-trio{grid-template-columns:1fr}}
.ca-card{background:var(--sf);border:1px solid var(--linha);border-top:5px solid var(--c,#999);border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:8px;min-width:0}
.ca-card .ca-k{font:700 11px/1 var(--f);letter-spacing:.1em;text-transform:uppercase;color:var(--c)}
.ca-card h2{font-size:19px;margin:0;line-height:1.2}
.ca-card p{margin:0;color:var(--mudo);font-size:14.5px;flex:1}
.ca-card small{font-size:13px}
.ca-card b{font-variant-numeric:tabular-nums}
.ca-card .ca-btn{align-self:flex-start;margin-top:4px}
.ca-nota{margin-top:26px;background:var(--rosa);border-radius:12px;padding:12px 16px;font-size:14.5px}
.ca-nota p{margin:0}
.ca-simples{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:28px max(16px,4vw) 48px}
.ca-cartao{background:var(--sf);border:1px solid var(--linha);border-radius:16px;padding:26px;width:100%;max-width:440px}
.ca-cartao.ca-largo{max-width:620px}
.ca-cartao h1{font-size:22px;margin:0 0 6px;line-height:1.2}
.ca-h2{font-size:15px;margin:22px 0 8px;color:var(--mudo);font-weight:700}
.ca-mudo{color:var(--mudo);font-size:14.5px;margin:0 0 14px}
label{display:block;font-size:13.5px;color:var(--mudo);margin:12px 0 5px}
input[type=text],input[type=password],input[type=email]{width:100%;border:1px solid var(--linha);border-radius:9px;padding:11px 12px;font:16px var(--f);background:var(--bg);color:var(--ink)}
input:focus{outline:2px solid var(--red);outline-offset:1px;background:var(--sf)}
.ca-senha{display:flex;gap:6px;align-items:stretch}
.ca-senha input{flex:1}
.ca-olho{border:1px solid var(--linha);background:var(--sf);border-radius:9px;padding:0 12px;font:14px var(--f);color:var(--mudo);cursor:pointer}
.ca-check{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--ink);margin:14px 0 8px}
.ca-erro{background:var(--rosa);color:#8E1420;border-radius:9px;padding:10px 12px;font-size:14px;margin-bottom:6px}
.ca-portas{display:grid;gap:10px;margin:14px 0}
.ca-porta{display:flex;gap:14px;align-items:center;border:1px solid var(--linha);border-radius:14px;padding:13px 16px;color:var(--ink);text-decoration:none;background:var(--sf);min-width:0}
a.ca-porta:hover,a.ca-porta:focus-visible{border-color:var(--red);outline:none}
.ca-porta.ca-off{opacity:.6}
.ca-porta div{min-width:0;flex:1}
.ca-porta b{display:block;font-size:15.5px;overflow-wrap:anywhere}
.ca-porta small{color:var(--mudo);font-size:13px}
.ca-ic{flex:none;width:42px;height:42px;border-radius:11px;display:grid;place-items:center;color:#fff;font-weight:700;font-size:17px}
.ca-ic svg{width:100%;height:100%;display:block;border-radius:inherit;box-shadow:0 2px 6px rgba(20,24,29,.12)}
.ca-porta small i,.ca-card h2 i{font-style:normal;color:var(--red)}
.ca-porta.ca-fora small{color:var(--mudo)}
.ca-card-cab{display:flex;gap:12px;align-items:center}
.ca-card-cab .ca-ic{width:44px;height:44px}
.ca-card .ca-btn small{font-weight:400;opacity:.7;margin-left:4px}
.ca-go{margin-left:auto;font-weight:700;font-size:22px;color:var(--mudo)}
.ca-mini .ca-porta{padding:9px 14px}
.ca-mini .ca-ic{width:36px;height:36px;font-size:14px;border-radius:9px}
.ca-rodape{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:16px max(16px,4vw);font-size:13px;color:var(--mudo);border-top:1px solid var(--linha);background:var(--sf)}
.ca-rodape a{color:var(--mudo)}
