.register-page{height:auto;min-height:100vh;flex-shrink:0}
/* Long registration forms must expand the page rather than shrink inside flex. */
.register-page .login-main{display:block;flex:1 0 auto;height:auto;min-height:0;overflow-x:clip;overflow-y:visible}
.register-page .login-header,.register-page .login-footer{flex-shrink:0}
.register-page .login-layout{height:auto;min-height:0;align-items:start;grid-template-columns:minmax(0,1fr) minmax(0,500px);gap:clamp(28px,6vw,100px)}
.register-page .login-card{height:auto;min-width:0;max-width:100%;align-self:start}
.register-page .login-intro{min-width:0;padding-top:24px}
.register-form-wrapper,.register-form-wrapper form,.register-form-wrapper fieldset{min-width:0;max-width:100%}
.register-form-wrapper input[type=file]{width:100%;min-width:0;max-width:100%;height:auto;padding:10px;font-size:12px}
.register-form-wrapper .form-check{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:start;column-gap:8px;row-gap:5px;padding-left:0}
.register-form-wrapper .form-check input{flex:0 0 auto;float:none;margin:3px 0 0}
.register-form-wrapper .form-check label{margin:0;min-width:0}
.register-form-wrapper .form-check .description,.register-form-wrapper .form-check .form-text{grid-column:2;display:block;width:auto;margin:0;float:none;line-height:1.7}
.register-form-wrapper .form-check label{line-height:1.6;overflow-wrap:anywhere}
.register-form-wrapper .form-check input[type=checkbox]{width:15px;height:15px;padding:0}
.register-form-wrapper .description{overflow-wrap:anywhere}
.register-page .login-intro h1{font-size:clamp(32px,3.6vw,48px);line-height:1.18}
.register-page .login-intro h1 em{display:inline-block;margin-top:12px;font-size:.8em}
.register-steps{display:grid;gap:22px;list-style:none;padding:0;margin:32px 0}
.register-steps li{display:flex;align-items:flex-start;gap:15px}
.register-steps li>span{flex-shrink:0;width:35px;height:35px;border:1px solid #425168;background:#ffffff08;color:#f6a26c;border-radius:9px;font-size:11px;font-weight:700;display:grid;place-items:center}
.register-steps strong{color:#edf2f8;font-size:14px;font-weight:600}
.register-steps p{color:#a9bad2;font-size:12px;margin:5px 0 0;line-height:1.7}
.register-page .register-membership-note{max-width:490px;padding-top:18px;border-top:1px solid #344157;font-size:12px;line-height:1.8;color:#a9bad2}
.register-membership-note a{color:#f6a26c;text-decoration:underline;text-underline-offset:3px}
.register-form-wrapper .description,.register-form-wrapper .form-text{color:#687386;font-size:11px;line-height:1.65;margin-top:7px}
.register-form-wrapper .form-required:after{background:none;content:' *';color:#b74719}
.register-form-wrapper .form-control{max-width:100%}
.register-notice{display:flex;gap:10px;padding:13px 14px;border:1px solid #dce8dd;border-radius:9px;background:#f2f7f2;margin-top:18px;color:#397246}
.register-notice>i{font-size:18px}.register-notice p{margin:0;font-size:11px;line-height:1.7;color:#526958}
.register-page a:focus-visible{outline:3px solid var(--orange);outline-offset:4px}
@media(max-width:991px){.register-page .login-layout{grid-template-columns:minmax(0,1fr);gap:32px}.register-page .login-intro{padding-top:0}.register-page .login-card{width:min(100%,540px)}.register-steps{max-width:480px;margin:28px auto;text-align:left}.register-page .register-membership-note{margin-right:auto;margin-left:auto}}
@media(max-width:575px){.register-steps{gap:15px}.register-page .login-card{padding:28px 22px}.register-page .login-intro h1{font-size:32px}}
