*{box-sizing:border-box}body{margin:0;font-family:system-ui,Segoe UI,Arial,sans-serif;background:#eef1f6;color:#1d2433}
.card{max-width:760px;margin:24px auto;background:#fff;padding:28px;border-radius:14px;box-shadow:0 4px 20px rgba(0,0,0,.08)}
.card.narrow{max-width:460px;margin-top:10vh}
h1{margin:0;color:#1a4fa0;font-size:1.4rem}h2{color:#1a4fa0;margin-top:0}h3{margin:18px 0 6px}.sub{color:#5b6577;font-size:.92rem}
.f{display:block;margin:14px 0}.f>span,.f{font-weight:600;font-size:.92rem}
input[type=text],input[type=email],input[type=tel],input[type=date],input[type=number],textarea{width:100%;padding:10px;margin-top:5px;border:1px solid #c5ccd8;border-radius:8px;font:inherit;font-weight:400}
input:focus,textarea:focus{outline:2px solid #1a4fa0;border-color:transparent}
.opts{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:6px}.o{font-weight:400;display:flex;gap:6px;align-items:center}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}@media(max-width:600px){.grid{grid-template-columns:1fr}.card{margin:0;border-radius:0}}
fieldset{border:1px solid #d5dbe6;border-radius:10px;margin:14px 0;padding:6px 16px 14px}legend{font-weight:700;color:#1a4fa0;padding:0 6px}
.step{display:none}.step.active{display:block}[hidden]{display:none!important}
.bar{height:8px;background:#e1e6ef;border-radius:8px;overflow:hidden;margin-top:14px}#bar{height:100%;background:#1a4fa0;transition:width .3s}
.btn{background:#1a4fa0;color:#fff;border:0;padding:11px 22px;border-radius:8px;font:inherit;font-weight:600;cursor:pointer;margin-top:10px}
.btn.ghost{background:#e6ebf4;color:#1a4fa0}.btn:disabled{opacity:.6}.nav{display:flex;justify-content:space-between;margin-top:22px}
.msg{padding:10px 14px;border-radius:8px;margin:12px 0}.msg.ok{background:#e3f6e8;color:#14612b}.msg.err{background:#fde8e8;color:#9b1c1c}
.hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.top{display:flex;justify-content:space-between;align-items:center}.top a{font-size:.85rem;color:#5b6577}
