:root{--blue:#193578;--turq:#00D2C7;--turq-dark:#00a9a0;--bg:#f4f7fb;--paper:#ffffff;--text:#193578;--muted:#66738a;--line:#dfe6f0;--line-hover:rgba(0,210,199,.75)}
*{box-sizing:border-box}
html,body{min-height:100%;margin:0}
body{font-family:Arial,Helvetica,sans-serif;background:linear-gradient(180deg,#f7f9fc 0%,#eef3f9 100%);color:var(--text)}
.form-shell{width:min(800px,100%);min-height:100vh;margin:auto;padding:26px;display:flex;flex-direction:column}
.top{display:flex;justify-content:flex-start;align-items:center;font-size:.78rem;color:var(--blue);min-height:22px}
.brand{letter-spacing:.18em;font-size:.78rem;font-weight:800;color:var(--blue);text-transform:uppercase}
.progress{height:4px;background:#dfe5ee;margin:20px 0 0;border-radius:8px;overflow:hidden}
.progress i{display:block;height:100%;width:0;background:var(--turq);transition:width .3s}
.step{flex:1;display:flex;flex-direction:column;justify-content:center;max-width:700px;margin:auto;width:100%;padding:55px 0}
.step h1{font-size:clamp(1.8rem,4.7vw,3.25rem);line-height:1.1;margin:0 0 36px;color:var(--blue);font-weight:700}
.option{width:100%;text-align:left;padding:18px 20px;margin:8px 0;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:#1e2b42;box-shadow:0 3px 12px rgba(25,53,120,.04);font:inherit;font-size:1.04rem;line-height:1.35;cursor:pointer;transition:.18s}
.option:hover,.option:focus{border-color:var(--turq);background:#f8fffe;box-shadow:0 6px 18px rgba(0,210,199,.12);outline:none;transform:translateY(-1px)}
.option b{display:inline-grid;place-items:center;width:26px;height:26px;border:1px solid var(--turq);border-radius:50%;margin-right:13px;color:var(--blue);font-size:.82rem;background:#fff}
.field{width:100%;padding:17px 16px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#1e2b42;font-size:1.25rem;outline:none;box-shadow:0 3px 12px rgba(25,53,120,.04)}
.field::placeholder{color:#8a96a8}.field:focus{border-color:var(--turq);box-shadow:0 0 0 3px rgba(0,210,199,.12)}
.button{display:inline-flex;justify-content:center;align-items:center;gap:10px;width:auto;align-self:flex-start;min-height:58px;margin-top:18px;border:0;border-radius:8px;padding:0 32px;background:var(--blue);color:#fff;font-weight:800;font-size:1rem;text-decoration:none;text-transform:uppercase;letter-spacing:.02em;cursor:pointer}
.button:hover{background:#142b63;filter:brightness(1.05)}.button.loading,.button:disabled{opacity:.85;cursor:not-allowed;pointer-events:none}
.hint{color:var(--muted);font-size:.9rem;line-height:1.5;margin-top:15px}.phone-error{margin:10px 0 0;color:#c62828;font-size:.92rem;line-height:1.4}.field[aria-invalid='true']{border-color:#e25555}.phone-error[hidden]{display:none}
.spinner{display:inline-block;width:18px;height:18px;border:2.5px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:600px){.form-shell{padding:18px}.step{padding:38px 0}.option{padding:16px}.step h1{margin-bottom:24px}.button{width:100%}}
