:root{--jc-blue:#1557ff;--jc-blue-dark:#0e3db7;--jc-navy:#102048;--jc-ink:#17213a;--jc-muted:#68748b;--jc-line:#dbe3f1;--jc-soft:#edf3ff;--jc-danger:#bd2c3f;--jc-success:#168765}
*{box-sizing:border-box}html,body{min-height:100%}body{min-height:100vh;margin:0;color:var(--jc-ink);background:#f7f9fc;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}
.reg-shell{min-height:100vh;background:#f7f9fc}.reg-story{height:96px;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:18px clamp(26px,5vw,72px);border-bottom:1px solid var(--jc-line);background:rgba(255,255,255,.97)}
.brand,.mobile-brand{display:inline-flex;align-items:center;gap:12px;color:var(--jc-navy);text-decoration:none}.brand-mark{width:42px;height:42px;display:grid;place-content:center;gap:4px;border-radius:13px;background:var(--jc-blue);box-shadow:0 7px 16px rgba(21,87,255,.18)}.brand-mark i{display:block;width:22px;height:3px;border-radius:99px;background:#fff}.brand-mark i:nth-child(2){width:16px}.brand-name{font-family:Manrope,Inter,sans-serif;font-size:22px;font-weight:800;letter-spacing:-.035em}
.journey{width:min(100%,600px);display:flex;justify-content:flex-end;gap:clamp(14px,2vw,30px);margin:0;padding:0;list-style:none}.journey li{min-width:0}.journey button{display:grid;grid-template-columns:28px minmax(0,auto);align-items:center;gap:9px;padding:8px 2px;border:0;color:#7b879c;text-align:left;background:transparent;cursor:pointer}.journey button:hover{color:var(--jc-ink)}.journey button[aria-current="step"]{color:var(--jc-blue-dark)}.step-number{width:28px;height:28px;display:grid;place-items:center;border:1px solid #d7dfec;border-radius:50%;background:#fff;font-size:11px;font-weight:800}.journey button[aria-current="step"] .step-number{color:#fff;border-color:var(--jc-blue);background:var(--jc-blue)}.step-name{display:block;font-size:12px;font-weight:800;white-space:nowrap}.step-note,.step-check{display:none}
.reg-main{min-height:calc(100vh - 96px);display:grid;align-items:start;justify-items:center;padding:clamp(40px,6vh,68px) 24px 72px}.form-wrap{width:min(100%,720px)}.mobile-brand{display:none}.form-topline{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.form-kicker{display:block;margin-bottom:8px;color:var(--jc-blue);font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.form-topline h2{margin:0;font-family:Manrope,Inter,sans-serif;font-size:clamp(30px,3vw,38px);letter-spacing:-.045em}.progress-copy{color:var(--jc-muted);font-size:12px;font-weight:700}.progress-copy strong{color:var(--jc-ink)}.progress-track{height:4px;margin:0 0 18px;overflow:hidden;border-radius:999px;background:#dfe7f5}.progress-bar{width:33.333%;height:100%;border-radius:inherit;background:var(--jc-blue);transition:width .25s ease}
.form-card{padding:clamp(26px,4vw,38px);border:1px solid #e0e6ef;border-radius:18px;background:#fff;box-shadow:0 12px 36px rgba(16,32,72,.06)}.form-step[hidden]{display:none}.step-heading{margin-bottom:24px}.step-heading h3{margin:0;font-family:Manrope,Inter,sans-serif;font-size:19px;letter-spacing:-.02em}.step-heading p{max-width:590px;margin:7px 0 0;color:var(--jc-muted);font-size:13px;line-height:1.55}
.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field{min-width:0}.field.full{grid-column:1/-1}.field label,.field-label{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;color:#29344d;font-size:12px;font-weight:800}.optional{color:#8a95a9;font-size:10px;font-weight:700}.required-mark{margin-left:auto;color:var(--jc-danger);font-weight:800}.control,.select-control{width:100%;min-height:49px;padding:0 14px;border:1px solid #d7dfec;border-radius:12px;outline:none;color:var(--jc-ink);background:#fff;transition:border-color .18s ease,box-shadow .18s ease}.select-control{padding-right:36px}.select-control[multiple]{min-height:118px;padding:8px 10px}.control::placeholder{color:#9aa5b6}.control:focus,.select-control:focus{border-color:var(--jc-blue);box-shadow:0 0 0 4px rgba(21,87,255,.09)}.phone-row{display:grid;grid-template-columns:118px 1fr;gap:9px}.field-hint{margin:7px 0 0;color:#8994a7;font-size:11px;line-height:1.45}.field-error{margin-top:7px;color:var(--jc-danger);font-size:11px;font-weight:700}.field-error p{margin:0;color:inherit}
.password-wrap{position:relative}.password-wrap .control{padding-right:78px}.reveal{position:absolute;top:50%;right:10px;transform:translateY(-50%);padding:6px 7px;border:0;color:var(--jc-blue-dark);background:transparent;font-size:10px;font-weight:800;cursor:pointer}.upload-box{position:relative;min-height:112px;display:grid!important;place-items:center!important;padding:18px;border:1px dashed #bdc9dc;border-radius:14px;color:var(--jc-muted)!important;text-align:center;background:#f8faff;cursor:pointer}.upload-box:hover{border-color:var(--jc-blue);background:var(--jc-soft)}.upload-box strong{display:block;color:var(--jc-ink);font-size:12px}.upload-box span span{display:block;margin-top:4px;font-size:11px}.upload-box input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.info-strip{display:flex;align-items:flex-start;gap:10px;margin-top:20px;padding:13px 14px;border-radius:12px;color:#43516b;background:var(--jc-soft);font-size:11px;line-height:1.5}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:28px;padding-top:22px;border-top:1px solid #e6ebf3}.btn{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 19px;border:1px solid transparent;border-radius:12px;font-size:12px;font-weight:800;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.6;cursor:wait;transform:none}.btn-primary{color:#fff;background:var(--jc-blue);box-shadow:0 8px 20px rgba(21,87,255,.22)}.btn-primary:hover{background:#064af2}.btn-secondary,.btn-google{color:var(--jc-ink);border-color:#d7dfec;background:#fff}.btn-secondary:hover,.btn-google:hover{border-color:#b8c5d9;background:#f8faff}.btn-google{width:100%;margin-top:13px}.divider{display:flex;align-items:center;gap:12px;margin:18px 0 0;color:#939daf;font-size:10px;font-weight:700}.divider:before,.divider:after{height:1px;flex:1;background:#e2e7ef;content:""}.form-footer{margin:18px 0 0;color:var(--jc-muted);text-align:center;font-size:12px}.form-footer a{color:var(--jc-blue-dark);font-weight:800;text-decoration:none}.form-footer a:hover{text-decoration:underline}.status{min-height:18px;margin:12px 0;color:var(--jc-success);text-align:center;font-size:11px;font-weight:800}.status--error{color:var(--jc-danger)}
@media(max-width:820px){.reg-story{display:none}.reg-main{min-height:100vh;padding:24px}.mobile-brand{display:inline-flex;margin-bottom:34px}}
@media(max-width:580px){.reg-main{padding:20px 16px 32px}.mobile-brand{margin-bottom:28px}.form-topline{align-items:flex-start}.form-topline h2{font-size:29px}.progress-copy{padding-top:6px}.form-card{padding:23px 18px}.field-grid{grid-template-columns:1fr;gap:15px}.field.full{grid-column:auto}.form-actions{justify-content:stretch}.form-actions .btn{flex:1}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
