/* ═══════════════════════════════════════════════════════════════════
   Banco de profissionais — escopo: body.p-prof
   ───────────────────────────────────────────────────────────────────
   Arquivo separado do site.css de propósito. As páginas da Imersão são
   um funil de venda; estas são uma ficha de RH. Separar significa que
   um ajuste no formulário de babás não tem como quebrar a página que
   recebe inscrição paga.

   Os tokens de cor, o reset e a tipografia vêm do site.css, que é
   carregado antes — aqui só entram as regras desta área.
   ═══════════════════════════════════════════════════════════════════ */

body.p-prof{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
  background:var(--cream); color:var(--tx);
  font-size:16px; line-height:1.65; overflow-x:hidden;
}
body.p-prof h1, body.p-prof h2, body.p-prof h3{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-weight:400; line-height:1.14; letter-spacing:-.01em;
}
body.p-prof .wrap{width:100%;max-width:940px;margin:0 auto;padding:0 22px}
body.p-prof .narrow{max-width:680px;margin-left:auto;margin-right:auto}
body.p-prof section{padding:56px 0}
body.p-prof .center{text-align:center}
body.p-prof .lead{font-size:17px;color:var(--tx2);line-height:1.72}
body.p-prof a{color:var(--gold)}

body.p-prof .eyebrow{
  font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;
  color:var(--gold);margin-bottom:14px;
}
body.p-prof h1{font-size:clamp(38px,10vw,64px);margin-bottom:16px}
body.p-prof h2{font-size:clamp(27px,6.4vw,38px);margin-bottom:16px}
body.p-prof h2 em{font-style:italic;color:var(--gold)}
body.p-prof h3{font-size:20px;margin-bottom:6px}

/* ── Cabeçalho enxuto ── */
body.p-prof .topo{
  border-bottom:1px solid var(--line);background:var(--cream);
  position:sticky;top:0;z-index:20;
}
body.p-prof .topo .wrap{display:flex;align-items:center;justify-content:space-between;
  gap:14px;padding-top:14px;padding-bottom:14px}
body.p-prof .marca{
  font-family:'Cormorant Garamond',Georgia,serif;font-size:21px;
  color:var(--ink);text-decoration:none;letter-spacing:.02em;
}
body.p-prof .marca small{
  display:block;font-family:'Inter',sans-serif;font-size:9.5px;font-weight:600;
  letter-spacing:.22em;text-transform:uppercase;color:var(--gold);
}

/* ── Botões ── */
body.p-prof .btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  background:var(--ink);color:var(--cream);border:1px solid var(--ink);
  font-family:'Inter',sans-serif;font-size:14px;font-weight:600;
  letter-spacing:.04em;text-transform:uppercase;text-decoration:none;
  padding:15px 30px;border-radius:999px;cursor:pointer;
  transition:background .18s ease,color .18s ease,transform .12s ease;
}
body.p-prof .btn:hover{background:var(--gold);border-color:var(--gold)}
body.p-prof .btn:active{transform:translateY(1px)}
body.p-prof .btn.grande{padding:18px 38px;font-size:15px}
body.p-prof .btn.ghost{background:transparent;color:var(--ink);border-color:var(--line)}
body.p-prof .btn.ghost:hover{background:var(--cream2);color:var(--ink)}
body.p-prof .btn.mini{padding:9px 16px;font-size:12px;text-transform:none;letter-spacing:0}
body.p-prof .btn[disabled]{opacity:.45;pointer-events:none}

/* ── Abertura ── */
body.p-prof .hero{
  background:var(--ink);color:#EDE4D8;padding:74px 0 66px;text-align:center;
}
body.p-prof .hero h1{color:#F6EFE4}
body.p-prof .hero .eyebrow{color:var(--gold3)}
body.p-prof .hero .lead{color:#C4B6A5;max-width:520px;margin:0 auto 30px}
body.p-prof .hero .sob{margin-top:18px;font-size:13px;color:#9A8C7F}

/* ── Cartões de perfil ── */
body.p-prof .perfis{display:grid;gap:16px;grid-template-columns:1fr}
body.p-prof .perfil{
  background:#fff;border:1px solid var(--line);border-radius:var(--r);
  padding:24px;box-shadow:var(--shadow);
}
body.p-prof .perfil p{color:var(--tx2);font-size:15px}

/* ── Passos ── */
body.p-prof .passos{list-style:none;counter-reset:passo;display:grid;gap:18px}
body.p-prof .passos li{
  counter-increment:passo;display:grid;grid-template-columns:auto 1fr;
  gap:16px;align-items:start;
}
body.p-prof .passos li::before{
  content:counter(passo);
  font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;
  width:42px;height:42px;border-radius:50%;border:1px solid var(--gold3);
  color:var(--gold);display:flex;align-items:center;justify-content:center;
}
body.p-prof .passos b{display:block;font-size:16px;color:var(--ink);margin-bottom:2px}
body.p-prof .passos span{font-size:15px;color:var(--tx2)}

body.p-prof .aviso{
  background:var(--cream2);border:1px solid var(--line);border-radius:var(--r);
  padding:26px;margin-bottom:28px;
}
body.p-prof .aviso p{font-size:15px;color:var(--tx2)}

/* ── Formulário ── */
body.p-prof .form-topo{padding:40px 0 8px}
body.p-prof .bloco{
  background:#fff;border:1px solid var(--line);border-radius:var(--r);
  padding:24px 22px;margin-bottom:18px;box-shadow:var(--shadow);
}
body.p-prof .bloco > h2{
  font-size:23px;margin-bottom:18px;padding-bottom:12px;
  border-bottom:1px solid var(--line);
}
body.p-prof .campos{display:grid;gap:16px;grid-template-columns:1fr}
body.p-prof .campo.meio{grid-column:span 1}
body.p-prof label{
  display:block;font-size:11px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--tx3);margin-bottom:7px;
}
body.p-prof label .obg{color:var(--gold);margin-left:3px}
body.p-prof input[type=text],
body.p-prof input[type=email],
body.p-prof input[type=tel],
body.p-prof input[type=url],
body.p-prof input[type=number],
body.p-prof input[type=date],
body.p-prof select,
body.p-prof textarea{
  width:100%;font:inherit;font-size:15.5px;color:var(--tx);
  background:var(--cream);border:1px solid var(--line);border-radius:var(--r-s);
  padding:13px 14px;min-height:50px;-webkit-appearance:none;appearance:none;
}
body.p-prof textarea{min-height:110px;resize:vertical;line-height:1.6}
body.p-prof select{
  padding-right:40px;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B0813F' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;background-size:18px;
}
body.p-prof input:focus,body.p-prof select:focus,body.p-prof textarea:focus{
  outline:none;border-color:var(--gold2);background:#fff;
  box-shadow:0 0 0 3px rgba(176,129,63,.12);
}
body.p-prof input[type=file]{
  width:100%;font:inherit;font-size:13.5px;color:var(--tx2);cursor:pointer;
  background:var(--cream);border:1px dashed var(--line);border-radius:var(--r-s);
  padding:12px 14px;min-height:50px;
}
body.p-prof input[type=file]::file-selector-button{
  font:inherit;font-size:12px;font-weight:600;letter-spacing:.04em;
  text-transform:uppercase;border:0;border-radius:999px;cursor:pointer;
  padding:9px 16px;margin-right:12px;background:var(--cream3);color:var(--ink);
}
body.p-prof input[type=file]::file-selector-button:hover{background:var(--gold3)}
body.p-prof .ajuda{font-size:12.5px;color:var(--tx3);margin-top:6px;line-height:1.5}
body.p-prof .erro{font-size:13px;color:#A33A2B;margin-top:6px;font-weight:500}
body.p-prof .campo.tem-erro input,
body.p-prof .campo.tem-erro select,
body.p-prof .campo.tem-erro textarea{border-color:#C86B5A;background:#FDF4F2}
body.p-prof .ja-enviado{
  display:inline-flex;align-items:center;gap:7px;font-size:12.5px;
  color:var(--tx2);margin-top:8px;
}
body.p-prof .ja-enviado::before{content:"✓";color:var(--gold);font-weight:700}

/* ── Consentimento ── */
body.p-prof .consent{
  display:flex;gap:13px;align-items:flex-start;
  background:var(--cream2);border:1px solid var(--line);
  border-radius:var(--r-s);padding:18px;margin-bottom:18px;
}
body.p-prof .consent input[type=checkbox]{
  width:22px;height:22px;flex:none;margin-top:1px;
  accent-color:var(--gold);-webkit-appearance:auto;appearance:auto;cursor:pointer;
}
body.p-prof .consent label{
  text-transform:none;letter-spacing:0;font-size:14.5px;font-weight:400;
  color:var(--tx2);margin:0;line-height:1.6;cursor:pointer;
}

/* ── Referências ── */
body.p-prof .refs{display:grid;gap:10px;margin-bottom:18px}
body.p-prof .ref{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  background:var(--cream);border:1px solid var(--line);
  border-radius:var(--r-s);padding:13px 15px;
}
body.p-prof .ref b{font-size:15px;color:var(--ink);font-weight:600}
body.p-prof .ref span{display:block;font-size:13px;color:var(--tx3)}
body.p-prof .ref button{
  background:none;border:0;color:var(--tx3);font:inherit;font-size:13px;
  cursor:pointer;text-decoration:underline;padding:4px;
}
body.p-prof .ref button:hover{color:#A33A2B}
body.p-prof .vazio{
  text-align:center;color:var(--tx3);font-size:14.5px;
  padding:22px;border:1px dashed var(--line);border-radius:var(--r-s);
  margin-bottom:18px;
}

/* ── Barra de envio ── */
body.p-prof .barra{
  position:sticky;bottom:0;background:rgba(253,250,246,.94);
  backdrop-filter:blur(10px);border-top:1px solid var(--line);
  padding:14px 0;margin-top:26px;z-index:15;
}
body.p-prof .barra .wrap{display:flex;align-items:center;justify-content:space-between;gap:14px}
body.p-prof .barra .obs{font-size:13px;color:var(--tx3)}

/* ── Mensagens ── */
body.p-prof .msgs{margin:20px 0}
body.p-prof .msg{
  border-radius:var(--r-s);padding:14px 17px;font-size:14.5px;
  margin-bottom:10px;border:1px solid var(--line);background:#fff;
}
body.p-prof .msg.success{background:#F1F7F2;border-color:#C6DFCB;color:#2F6B41}
body.p-prof .msg.error{background:#FDF2EF;border-color:#E8C7BE;color:#A33A2B}

/* ── Conclusão ── */
body.p-prof .pronto{text-align:center;padding:66px 0}
body.p-prof .carteirinha{
  background:var(--ink);color:#F6EFE4;border-radius:var(--r);
  padding:34px 26px;margin:26px auto 22px;max-width:420px;
}
body.p-prof .carteirinha .rot{
  font-size:10.5px;font-weight:600;letter-spacing:.24em;
  text-transform:uppercase;color:var(--gold3);margin-bottom:12px;
}
body.p-prof .carteirinha .cod{
  font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(34px,9vw,46px);
  letter-spacing:.08em;color:#F6EFE4;
}
body.p-prof .link-pessoal{
  display:flex;gap:8px;align-items:center;max-width:520px;margin:0 auto 12px;
}
body.p-prof .link-pessoal input{font-size:13.5px;text-align:center}

@media (min-width:720px){
  body.p-prof .perfis{grid-template-columns:repeat(3,1fr)}
  body.p-prof .campos{grid-template-columns:1fr 1fr}
  body.p-prof .campo.inteiro{grid-column:1 / -1}
  body.p-prof section{padding:66px 0}
}
