.pagina-formulario{min-height:100vh;background:var(--cinza-claro);display:flex;flex-direction:column}
.candidatura{flex:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,540px);align-items:center;gap:clamp(48px,7vw,112px);width:100%;max-width:1120px;margin:0 auto;padding:clamp(40px,7vh,84px) 24px}
.apresentacao{max-width:530px}
.marca-formulario{margin-bottom:clamp(44px,8vh,80px)}
.marca-formulario img{height:54px;width:auto}
.marca-formulario span{font-size:14px}
.apresentacao .selo{margin-bottom:22px}
.apresentacao h1{font-size:clamp(2.75rem,5.5vw,4.7rem);line-height:1.02;color:var(--grafite);max-width:680px}
.resumo{max-width:560px;margin-top:22px;color:var(--cinza);font-size:1.1rem;line-height:1.65}
.ganchos{list-style:none;display:grid;gap:12px;margin-top:30px}
.ganchos li{display:flex;align-items:center;gap:11px;color:var(--grafite);font-weight:600}
.ganchos li span{display:grid;place-items:center;flex:0 0 24px;height:24px;border-radius:50%;background:var(--amarelo);color:var(--vermelho-escuro);font-size:13px;font-weight:800}
.formulario-direto{border-radius:16px;padding:34px 36px;border-top-width:6px}
.cabecalho-formulario{padding-bottom:4px}
.cabecalho-formulario .etapa{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--vermelho);font-weight:700;margin-bottom:7px}
.cabecalho-formulario h2{font-size:1.8rem;color:var(--grafite)}
.cabecalho-formulario>p:last-child{color:var(--cinza);font-size:.92rem;margin-top:7px}
.formulario-direto .erro-box{margin:18px 0 2px}
.campo-enviar{margin-top:24px}
.btn:disabled{cursor:wait;opacity:.75;transform:none}
.rodape-formulario{padding:20px 24px;text-align:center;border-top:1px solid var(--cinza-borda);background:var(--branco);color:var(--cinza);font-size:.8rem}
@media (max-width:860px){
  .candidatura{grid-template-columns:1fr;max-width:600px;gap:32px;padding-top:32px;padding-bottom:48px}
  .apresentacao{text-align:center;margin:0 auto}
  .marca-formulario{justify-content:center;margin-bottom:34px}
  .apresentacao h1{font-size:clamp(2.25rem,9vw,3.35rem)}
  .resumo{font-size:1rem}
  .ganchos{display:inline-grid;text-align:left;margin-top:24px}
}
@media (max-width:520px){
  .candidatura{padding:22px 16px 32px;gap:26px}
  .marca-formulario{margin-bottom:26px}
  .marca-formulario img{height:46px}
  .marca-formulario span{display:block}
  .apresentacao .selo{margin-bottom:16px}
  .apresentacao h1{font-size:2.35rem}
  .resumo{margin-top:16px;line-height:1.55}
  .ganchos{margin-top:20px;gap:9px;font-size:.92rem}
  .formulario-direto{padding:26px 20px;border-radius:12px}
  .cabecalho-formulario h2{font-size:1.55rem}
  .campo{margin-top:15px}
  .rodape-formulario{padding:18px 16px}
}
