/* ============ Página de cadastro ============ */
.cad-body{background:radial-gradient(ellipse at 50% -10%,#131a2e 0%,var(--bg) 55%)}
.cad-main{padding:104px 24px 70px;min-height:70vh}
.cad-wrap{max-width:1060px;margin:0 auto}

.cad-card{background:var(--card);border:1px solid var(--line);border-radius:26px;
  box-shadow:0 30px 80px rgba(0,0,0,.5);overflow:hidden;
  display:grid;grid-template-columns:.82fr 1.18fr}

/* ----- painel esquerdo (argumento) ----- */
.cad-pitch{position:relative;padding:44px 36px;background:
  radial-gradient(ellipse at 20% 0%,rgba(249,115,22,.13),transparent 60%),
  linear-gradient(165deg,#161f33,#0e1422);border-right:1px solid var(--line-soft)}
.pitch-mascote{width:126px;height:auto;margin-bottom:18px;filter:drop-shadow(0 12px 26px rgba(0,0,0,.5))}
.cad-pitch h1{font-size:1.62rem;line-height:1.2;margin-bottom:10px}
.pitch-sub{color:var(--muted);font-size:.95rem;margin-bottom:26px}
.pitch-lista{display:flex;flex-direction:column;gap:11px}
.pitch-lista li{position:relative;padding-left:28px;font-size:.92rem;color:#c9d2e4;line-height:1.45}
.pitch-lista li::before{content:"✓";position:absolute;left:0;top:0;color:#fbbf24;font-weight:700}
.pitch-rodape{margin-top:28px;padding-top:20px;border-top:1px solid var(--line-soft);font-size:.86rem;color:var(--muted)}
.pitch-rodape a{color:#fbbf24;text-decoration:underline}

/* ----- painel direito (formulário) ----- */
.cad-form-col{padding:44px 40px}

/* indicador de passos */
.passos-ind{display:flex;gap:10px;margin-bottom:24px}
.passos-ind li{display:flex;align-items:center;gap:8px;font-size:.82rem;font-weight:600;color:var(--muted);
  background:rgba(255,255,255,.03);border:1px solid var(--line-soft);border-radius:999px;padding:6px 16px 6px 6px}
.passos-ind span{width:22px;height:22px;border-radius:50%;background:#26324e;color:#9aa6bf;
  display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}
.passos-ind .atual{color:var(--text);border-color:rgba(245,158,11,.45);background:rgba(245,158,11,.08)}
.passos-ind .atual span{background:var(--grad);color:#221302}
.passos-ind .feito span{background:#34d399;color:#06281c}
.passos-ind .feito span::after{content:"✓"}
.passos-ind .feito span{font-size:.7rem}

.passo-titulo{font-family:var(--font-head);font-size:1.32rem;font-weight:700;margin-bottom:6px;letter-spacing:-.01em}
.passo-sub{color:var(--muted);font-size:.92rem;margin-bottom:22px}
.secao-contato{font-family:var(--font-head);font-size:.82rem;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:#fbbf24;margin:26px 0 14px;padding-top:20px;border-top:1px solid var(--line-soft)}
.aviso-busca{background:rgba(245,158,11,.09);border:1px solid rgba(245,158,11,.32);color:#fcd34d;
  border-radius:12px;padding:11px 15px;font-size:.86rem;margin-bottom:18px}
.btn-link{display:block;width:100%;background:none;border:0;color:var(--muted);font-family:var(--font-body);
  font-size:.86rem;text-decoration:underline;cursor:pointer;padding:14px 0 0;text-align:center}
.btn-link:hover{color:var(--text)}

.campo{margin-bottom:17px}
.linha2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.linha3{display:grid;grid-template-columns:.9fr 1.4fr .55fr;gap:16px}
.campo label{display:block;font-size:.85rem;font-weight:600;color:#c9d2e4;margin-bottom:6px}
.campo input,.campo select{width:100%;background:#0c111e;border:1px solid var(--line);border-radius:12px;
  color:var(--text);font-family:var(--font-body);font-size:.97rem;padding:12px 15px;outline:none;
  transition:border-color .15s,box-shadow .15s}
.campo input::placeholder{color:#5d6982}
.campo input:focus,.campo select:focus{border-color:#f59e0b;box-shadow:0 0 0 3px rgba(245,158,11,.12)}
.campo input.invalido{border-color:#f87171}
.campo-erro{display:block;color:#f87171;font-size:.78rem;margin-top:5px}
.campo-dica{display:block;color:var(--muted);font-size:.76rem;margin-top:5px}
.campo-info{display:block;font-size:.8rem;margin-top:6px;color:#34d399;line-height:1.4}
.campo-info.aviso{color:#fbbf24}
.campo-info:empty{margin:0}

/* CNPJ com spinner de busca */
.campo-cnpj{position:relative}
.campo-cnpj input{padding-right:42px;letter-spacing:.02em}
.cnpj-spin{position:absolute;right:14px;top:50%;margin-top:-9px;width:18px;height:18px;
  border:2.5px solid rgba(245,158,11,.25);border-top-color:#f59e0b;border-radius:50%;
  animation:spin .7s linear infinite}

.hp-campo{position:absolute;left:-9999px;top:-9999px;height:0;overflow:hidden}
.cf-turnstile{margin:20px 0 4px;min-height:65px}

.cad-aviso{color:var(--muted);font-size:.85rem;margin:14px 0 18px;line-height:1.55}
.cad-aviso b{color:#34d399}
.form-erro{background:rgba(248,113,113,.1);border:1px solid rgba(248,113,113,.4);color:#fca5a5;
  border-radius:12px;padding:12px 16px;font-size:.9rem;margin-bottom:16px}
.cad-enviar{width:100%}
.cad-enviar[disabled]{opacity:.7;cursor:wait}
.btn-spinner{width:18px;height:18px;border:2.5px solid rgba(34,19,2,.3);border-top-color:#221302;
  border-radius:50%;animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* ----- tela de sucesso (coluna única) ----- */
.cad-sucesso{display:block;position:relative;padding:44px 40px;max-width:680px;margin:0 auto}
.cad-mascote{position:absolute;top:-52px;right:28px;width:110px;height:auto;
  filter:drop-shadow(0 12px 26px rgba(0,0,0,.5))}
.cad-sucesso h1{font-size:1.75rem;margin-bottom:8px;padding-right:120px}
.cad-sub{color:var(--muted);margin-bottom:6px}
.suc-box{background:#0c111e;border:1px solid var(--line);border-radius:16px;padding:8px 20px;margin:22px 0}
.suc-linha{display:flex;justify-content:space-between;gap:14px;align-items:baseline;padding:12px 0;
  border-bottom:1px solid var(--line-soft);font-size:.92rem}
.suc-linha:last-child{border-bottom:0}
.suc-linha span{color:var(--muted);flex:none}
.suc-linha b{text-align:right;font-weight:600}
.suc-linha a{color:#fbbf24;text-decoration:underline}
.footer-inner a{color:var(--muted);text-decoration:underline}

/* ----- responsivo ----- */
@media (max-width:900px){
  .cad-card{grid-template-columns:1fr}
  .cad-pitch{border-right:0;border-bottom:1px solid var(--line-soft);padding:34px 28px;text-align:center}
  .pitch-mascote{margin:0 auto 14px;width:104px}
  .pitch-lista{text-align:left;max-width:380px;margin:0 auto}
  .cad-form-col{padding:34px 28px}
  .cad-main{padding-top:92px}
}
@media (max-width:620px){
  .linha2,.linha3{grid-template-columns:1fr;gap:0}
  .passos-ind li{padding:5px 12px 5px 5px;font-size:.76rem}
  .cad-main{padding-left:16px;padding-right:16px}
  .cad-pitch,.cad-form-col{padding:28px 20px}
  .cad-sucesso{padding:28px 20px}
  .cad-sucesso h1{padding-right:0;margin-top:54px}
  .cad-mascote{top:-40px;right:16px;width:86px}
  .suc-linha{flex-direction:column;gap:2px}
  .suc-linha b{text-align:left}
}
