
*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
:root{
  --navy:#0E2342; --navy2:#14325C; --ink:#13243D; --muted:#5A6B82;
  --gold:#C9992B; --gold2:#E0B544; --line:#E3E8EF; --ok:#15803D; --bg:#F6F8FB;
}
html,body{height:100%}
body{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
  background:linear-gradient(170deg,#0B1D38 0%,#14325C 55%,#0B1D38 100%);
  color:var(--ink);min-height:100%;display:flex;flex-direction:column;align-items:center;
  padding:14px 14px 28px;-webkit-font-smoothing:antialiased}
.wrap{width:100%;max-width:520px;display:flex;flex-direction:column;gap:12px;flex:1}
.card{background:#fff;border-radius:16px;box-shadow:0 18px 50px rgba(0,0,0,.28);overflow:hidden}
.brand{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--line)}
.brand b{font-size:12.5px;letter-spacing:.06em;white-space:nowrap;color:var(--navy);font-weight:800;line-height:1.25;display:block}
.brand span{font-size:9px;letter-spacing:.13em;white-space:nowrap;color:var(--gold);font-weight:700;display:block}
.oab{margin-left:auto;font-size:9.5px;color:var(--muted);text-align:right;line-height:1.3}
.bar{height:5px;background:var(--line)}
.bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--gold),var(--gold2));
  transition:width .35s cubic-bezier(.4,0,.2,1)}
.pad{padding:20px 18px 22px}
.step{display:none;animation:in .28s ease}
.step.on{display:block}
@keyframes in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.kicker{font-size:10.5px;letter-spacing:.16em;font-weight:700;color:var(--gold);text-transform:uppercase;margin-bottom:8px}
h1{font-size:21px;line-height:1.28;color:var(--navy);font-weight:800;margin-bottom:6px;letter-spacing:-.01em}
h2{font-size:19px;line-height:1.3;color:var(--navy);font-weight:800;margin-bottom:14px;letter-spacing:-.01em}
.sub{font-size:14px;color:var(--muted);line-height:1.5;margin-bottom:16px}
.opts{display:flex;flex-direction:column;gap:9px}
.opt{display:flex;align-items:center;gap:11px;width:100%;min-height:58px;padding:13px 15px;
  background:#fff;border:1.5px solid var(--line);border-radius:12px;font-size:15.5px;line-height:1.3;
  color:var(--ink);text-align:left;cursor:pointer;font-family:inherit;font-weight:500;transition:.15s}
.opt:hover{border-color:var(--gold);background:#FFFCF4}
.opt:active{transform:scale(.985)}
.opt.sel{border-color:var(--gold);background:#FFF8E8;font-weight:600}
.opt em{font-style:normal;display:block;font-size:12.5px;color:var(--muted);font-weight:400;margin-top:2px}
.dot{width:19px;height:19px;border-radius:50%;border:2px solid #C8D2E0;flex:0 0 19px}
.opt.sel .dot{border-color:var(--gold);background:var(--gold);box-shadow:inset 0 0 0 3.5px #fff}
label{display:block;font-size:13px;font-weight:600;color:var(--navy);margin:14px 0 6px}
input{width:100%;height:54px;padding:0 15px;border:1.5px solid var(--line);border-radius:12px;
  font-size:16px;font-family:inherit;color:var(--ink);background:#fff}
input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,153,43,.14)}
.err{font-size:12.5px;color:#B91C1C;margin-top:6px;display:none}
.err.on{display:block}
.cta{width:100%;min-height:56px;margin-top:18px;border:0;border-radius:12px;cursor:pointer;
  background:linear-gradient(180deg,var(--gold2),var(--gold));color:#231A02;font-size:16.5px;
  font-weight:800;font-family:inherit;letter-spacing:-.01em;box-shadow:0 6px 18px rgba(201,153,43,.35)}
.cta:active{transform:translateY(1px)}
.cta.wa{background:linear-gradient(180deg,#2BD467,#15A94C);color:#03230F;box-shadow:0 6px 18px rgba(21,169,76,.35)}
.safe{display:flex;gap:7px;align-items:flex-start;font-size:11.5px;color:var(--muted);margin-top:11px;line-height:1.45}
.back{background:none;border:0;color:var(--muted);font-size:13px;cursor:pointer;font-family:inherit;
  margin-top:14px;padding:6px 0;text-decoration:underline}
.good{width:56px;height:56px;border-radius:50%;background:#DCFCE7;display:flex;align-items:center;
  justify-content:center;margin:0 auto 14px;font-size:27px}
.center{text-align:center}
.foot{font-size:10.5px;color:#9FB2CC;text-align:center;line-height:1.6;padding:2px 6px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{padding:11px 14px;border:1.5px solid var(--line);border-radius:999px;background:#fff;
  font-size:14px;cursor:pointer;font-family:inherit;color:var(--ink);font-weight:500}
.chip.sel{border-color:var(--gold);background:#FFF8E8;font-weight:600}
.skip{display:block;margin:12px auto 0;background:none;border:0;color:var(--muted);font-size:13px;
  text-decoration:underline;cursor:pointer;font-family:inherit}
@media(max-width:380px){h1{font-size:19px}h2{font-size:17.5px}.opt{font-size:14.5px;min-height:54px}}

.faixa{background:#F4F7FC;border-bottom:1px solid var(--line);padding:10px 14px;
  font-size:12.5px;color:var(--muted);font-weight:500;line-height:1.45;text-align:center}
.faixa b{display:block;color:var(--navy);font-weight:800;font-size:14px;margin-bottom:2px}
.pad.lock .opts{pointer-events:none}
.result{display:flex;gap:10px;align-items:flex-start;background:#ECFDF3;border:1px solid #BBF7D0;
  border-radius:12px;padding:13px 14px;margin-bottom:4px}
.result .tick{width:22px;height:22px;flex:0 0 22px;border-radius:50%;background:#15803D;color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800}
.result p{font-size:13.5px;line-height:1.45;color:#14532D;font-weight:500}

.nojs{padding:22px 18px;text-align:center}
.nojs a{color:#15A94C;font-weight:700}
.telbtn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:52px;
  margin-top:10px;border:1.5px solid var(--line);border-radius:12px;background:#fff;color:var(--navy);
  font-size:15.5px;font-weight:700;text-decoration:none;font-family:inherit}

@media(max-height:700px){
  body{padding:8px 10px 16px}
  .brand{padding:9px 14px}
  .brand b{font-size:11.5px}
  .faixa{padding:7px 12px;font-size:11.5px}
  .faixa b{font-size:12.5px}
  .pad{padding:14px 14px 16px}
  h1{font-size:19px}
  h2{font-size:17.5px;margin-bottom:10px}
  .sub{font-size:13px;margin-bottom:11px}
  .opt{min-height:52px;padding:11px 14px;font-size:14.5px}
  .opts{gap:7px}
  input{height:48px}
  .cta{min-height:52px;font-size:15.5px;margin-top:13px}
  label{margin:9px 0 4px}
  .foot{display:none}
  #reprovado .result{padding:9px 10px;margin-bottom:9px}
  #reprovado .result p{font-size:12.5px}
  #reprovado #motivoOut{font-size:12.5px;margin-bottom:9px}
  #reprovado h2{font-size:16.5px;margin-bottom:6px}
  #reprovado label{margin:6px 0 3px}
  #reprovado input{height:46px}
  #reprovado .cta{margin-top:11px}
}

