:root{--navy:#00334d;--blue:#087eae;--line:#dce8ee;--ink:#173b4d;--muted:#647f8e}body{background:#f3f8fb;color:var(--ink)}.application{padding:42px 0 86px}.application-layout{display:grid;grid-template-columns:minmax(250px,350px) minmax(0,780px);gap:clamp(28px,4vw,72px);align-items:start}.intro{position:sticky;top:100px;padding:10px 0}.back-link{display:inline-flex;color:#147aa6;font-size:.85rem;font-weight:700;margin-bottom:39px}.eyebrow{font-size:.75rem;font-weight:800;color:#1689b5;letter-spacing:.12em}.intro h1,.panel-heading h2{font-family:'Be Vietnam Pro',sans-serif!important;font-style:normal!important;letter-spacing:-.035em!important}.intro h1{font-size:clamp(2rem,3.1vw,3.15rem)!important;line-height:1.22;margin:13px 0 15px}.intro>p:not(.eyebrow):not(.support){color:var(--muted);font-size:1rem;line-height:1.75;margin:0}.intro-note{display:grid;gap:6px;background:#e5f4fa;border-left:3px solid #148bb8;border-radius:0 11px 11px 0;padding:17px 19px;margin:29px 0 30px;color:#315c70;font-size:.84rem;line-height:1.6}.intro-note span{color:#698b9b}.steps{display:grid;gap:0;border-left:1px solid #d4e3ea;margin-left:16px}.step{display:flex;align-items:center;gap:13px;padding:0 0 26px;transform:translateX(-16px);color:#8299a5;font-weight:700;font-size:.85rem}.step:last-child{padding-bottom:0}.step i{display:grid;place-items:center;flex:0 0 33px;height:33px;border-radius:50%;background:#fff;border:1px solid #d6e4eb;font-style:normal;font-size:.78rem}.step.active{color:#086f9c}.step.active i,.step.done i{background:#087da9;color:#fff;border-color:#087da9}.support{margin-top:38px;color:#718c9a;font-size:.78rem;line-height:1.7}.support a{color:#087ca9;font-weight:700}.form-card{background:#fff;border:1px solid #dce8ee;border-radius:18px;box-shadow:0 22px 55px rgba(0,51,77,.07);padding:clamp(24px,3.5vw,46px);min-width:0}.form-progress{display:flex;align-items:center;gap:16px;color:#217fa5;font-size:.78rem;font-weight:800;margin-bottom:30px}.progress-track{height:6px;border-radius:30px;flex:1;background:#e6eff3;overflow:hidden}.progress-track span{display:block;width:33.33%;height:100%;background:#0a8ab7;border-radius:30px;transition:width .25s}.panel-heading{border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:26px}.panel-heading>span{font-size:.72rem;color:#087ea9;letter-spacing:.12em;font-weight:800}.panel-heading h2{color:var(--navy);font-size:1.65rem!important;line-height:1.35;margin:9px 0 5px}.panel-heading p{color:var(--muted);font-size:.88rem;line-height:1.6;margin:0}.fields{display:grid;gap:19px;margin-bottom:25px}.fields.two{grid-template-columns:repeat(2,minmax(0,1fr))}.span-two{grid-column:1/-1}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field>span,.question legend{font-size:.9rem;font-weight:700;line-height:1.5;color:#264b5e}.field b,.question b,.consent b{color:#c24a38}.field small,.question>small{font-size:.78rem;color:#708b99;line-height:1.6}.field input{width:100%;min-width:0;height:48px;border:1px solid #d4e2e9;border-radius:10px;background:#fbfdfe;padding:10px 13px;font:inherit;font-size:.9rem;color:var(--ink)}.field input[type=file]{height:auto;padding:11px}.field input:focus{outline:0;border-color:#3ba5cb;box-shadow:0 0 0 3px #e3f4fa;background:#fff}.question{border:0;padding:0;margin:0 0 27px;min-width:0}.question legend{margin:0 0 4px}.question>small{display:block;margin:0 0 12px}.options{display:grid;gap:9px;margin-top:13px}.options.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.options label{display:flex;gap:10px;align-items:flex-start;border:1px solid #dce8ee;border-radius:10px;padding:12px 13px;cursor:pointer;font-size:.85rem;line-height:1.55;color:#3c6071;transition:.15s}.options label:hover{border-color:#87c9df;background:#f7fcfe}.options label:has(input:checked){border-color:#59b4d4;background:#eef9fc;color:#155473}.options input,.consent input{accent-color:#087eae;flex:0 0 17px;width:17px;height:17px;margin:2px 0 0}.consent{display:flex;gap:12px;border:1px solid #cfe6ee;background:#f3fafc;border-radius:12px;padding:18px;cursor:pointer;font-size:.92rem;line-height:1.65}.review{border:1px solid #e0eaf0;border-radius:12px;padding:20px 22px;margin-bottom:23px;background:#fbfdfe}.review dl{display:grid;grid-template-columns:150px 1fr;gap:9px 14px;margin:0;font-size:.85rem;line-height:1.55}.review dt{color:#718d99}.review dd{margin:0;font-weight:700;overflow-wrap:anywhere}.form-actions{border-top:1px solid var(--line);padding-top:23px;margin-top:22px;display:flex;gap:12px;justify-content:flex-end}.form-actions .btn{min-height:47px;padding:0 22px}.btn-back{background:#eff6f9;color:#23637e}.form-error{padding:12px 14px;border-radius:9px;background:#fff0ec;color:#ae4434;font-size:.82rem;line-height:1.5}.form-card [hidden]{display:none!important}@media(max-width:930px){.application-layout{grid-template-columns:1fr}.intro{position:static;padding:0}.back-link{margin-bottom:20px}.intro h1{font-size:2.2rem!important}.intro-note{margin:18px 0}.steps{display:flex;border:0;margin:0;gap:15px;flex-wrap:wrap}.step{padding:0;transform:none}.support{margin:18px 0 0}}@media(max-width:640px){.application{padding:24px 0 55px}.intro h1{font-size:1.9rem!important}.intro>p:not(.eyebrow):not(.support){font-size:.9rem}.step span{display:none}.step{gap:0}.steps{gap:8px}.form-card{padding:22px 17px;border-radius:14px}.fields.two,.options.compact{grid-template-columns:1fr}.panel-heading h2{font-size:1.38rem!important}.review dl{grid-template-columns:1fr;gap:2px}.review dd{margin-bottom:8px}.form-actions{justify-content:stretch}.form-actions .btn{flex:1;padding:0 12px}}
.success-view{text-align:center;padding:56px 20px}.success-view[hidden]{display:none}.success-icon{display:grid;place-items:center;width:62px;height:62px;background:#e4f6ee;color:#0c845f;border-radius:50%;font-size:1.7rem;font-weight:800;margin:0 auto 18px}.success-view h2{font-family:'Be Vietnam Pro',sans-serif!important;font-size:1.65rem!important;font-style:normal!important;color:#00334d}.success-view p{font-size:.9rem;color:#637f8d;line-height:1.7}.success-view .btn{margin-top:16px}
.preview-notice{display:grid;gap:4px;padding:16px 18px;margin-bottom:27px;background:#e9f5fa;border:1px solid #c4e2ed;border-radius:11px;color:#225a72;font-size:.82rem;line-height:1.55}.preview-notice strong{color:#07506f;font-size:.86rem}.pending-note{margin:16px 0 0;color:#687f8b;font-size:.84rem;line-height:1.6}.form-actions .btn:disabled{opacity:.55;cursor:not-allowed}.file-preview{display:flex;align-items:center;gap:14px;border:1px solid #d8e7ed;border-radius:10px;padding:10px;background:#f8fcfd}.file-preview img{width:70px;height:70px;object-fit:cover;border-radius:7px}.file-preview div{display:grid;gap:3px;min-width:0;font-size:.8rem}.file-preview strong{overflow-wrap:anywhere}.file-preview span{color:#738e9b}.file-preview button{border:0;background:none;text-align:left;padding:4px 0;color:#0b7fa9;font:inherit;font-weight:700;cursor:pointer}
/* Keep the registration introduction compact and fully reachable on shorter screens. */
.application{padding:30px 0 64px}.intro{position:static;padding:0}.back-link{margin-bottom:20px}.intro h1{font-size:clamp(1.85rem,2.3vw,2.45rem)!important;line-height:1.17;margin:9px 0 12px}.intro>p:not(.eyebrow):not(.support){font-size:.88rem;line-height:1.6}.intro-note{padding:12px 14px;margin:18px 0 20px;font-size:.8rem;line-height:1.5}.step{padding-bottom:14px;font-size:.8rem}.step i{flex-basis:29px;width:29px;height:29px}.support{margin-top:19px}
@media(max-width:930px){.intro h1{font-size:2rem!important}.back-link{margin-bottom:17px}.intro-note{margin:15px 0}}
@media(max-width:640px){.intro h1{font-size:1.75rem!important}.application{padding:22px 0 50px}}
/* Keep paired inputs level when only one field has supporting text. */
.fields.two>.field:not(.span-two)>small{order:3}
.field select{width:100%;min-width:0;height:48px;border:1px solid #d4e2e9;border-radius:10px;background:#fbfdfe;padding:10px 13px;font:inherit;font-size:.9rem;color:var(--ink);appearance:auto}.field select:disabled{color:#7f939d;background:#f1f5f7;cursor:not-allowed}.field select:focus{outline:0;border-color:#3ba5cb;box-shadow:0 0 0 3px #e3f4fa;background:#fff}.address-status{min-height:20px;margin:-8px 0 0;color:#64818f;font-size:.78rem}.address-status.is-error{color:#ae4434}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.field.has-error input,.field.has-error select{border-color:#d75c4d;background:#fff8f6}.field.has-error input:focus,.field.has-error select:focus{border-color:#c44638;box-shadow:0 0 0 3px #fde4df}.field-error,.question-error{display:block;color:#b33d31;font-size:.76rem;font-weight:700;line-height:1.45}.question.has-error .options{padding:8px;border:1px solid #e8a197;border-radius:12px;background:#fff8f6}.consent.has-error{border-color:#d75c4d;background:#fff8f6}

.otp-view .fields{margin:22px 0 18px}
.otp-resend{margin-top:16px;text-align:center;font-size:.84rem;color:#637f8d}
.link-button{padding:0;border:0;background:none;color:#0274ab;font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}
.link-button:disabled{color:#8aa1ad;text-decoration:none;cursor:not-allowed}

.otp-boxes{display:flex;gap:12px;margin-top:4px}
.otp-field .otp-box{flex:1 1 0;min-width:0;max-width:78px;width:auto;height:64px;padding:0;border:1.5px solid #d4e2e9;border-radius:12px;background:#fbfdfe;text-align:center;font:inherit;font-size:1.6rem;font-weight:800;color:#00334d;caret-color:#0274ab;text-transform:uppercase}
.otp-field .otp-box.filled{border-color:#7fc3de;background:#fff}
.otp-field .otp-box:focus{outline:0;border-color:#0274ab;box-shadow:0 0 0 3px #d9eef7;background:#fff}
.otp-field .otp-box:disabled{opacity:.6}
.password-wrap{position:relative;display:block;font-size:inherit;font-weight:400;color:inherit}
.field .password-wrap input{padding-right:50px}
.password-toggle{position:absolute;top:50%;right:6px;width:38px;height:38px;display:grid;place-items:center;transform:translateY(-50%);border:0;border-radius:9px;background:transparent;color:#5b7a8a;cursor:pointer}
.password-toggle:hover{background:#eaf3f7;color:#00334d}
.password-toggle:focus-visible{outline:2px solid #0274ab;outline-offset:1px}
.password-toggle svg{width:21px;height:21px;fill:currentColor}
.password-toggle .icon-eye-off,.password-toggle[aria-pressed="true"] .icon-eye{display:none}
.password-toggle[aria-pressed="true"] .icon-eye-off{display:block}
@media(max-width:420px){.otp-boxes{gap:6px}.otp-field .otp-box{height:52px;font-size:1.25rem;border-radius:10px}}

.field .field-error,.question .question-error,.consent .field-error{color:#c62828;font-size:.82rem;font-weight:700;line-height:1.5}
.field.has-error .field-error::before{content:"⚠ ";font-weight:800}
.notice-dialog{width:min(440px,calc(100% - 32px));padding:30px 28px 26px;border:0;border-radius:18px;background:#fff;color:#00334d;text-align:center;box-shadow:0 30px 80px rgba(0,34,51,.35)}
.notice-dialog::backdrop{background:rgba(0,30,45,.6);backdrop-filter:blur(3px)}
.notice-icon{width:54px;height:54px;margin:0 auto 14px;display:grid;place-items:center;border-radius:50%;background:#fdecea;color:#c62828;font-size:1.7rem;font-weight:800}
.notice-dialog h2{margin:0 0 10px;font-family:'Be Vietnam Pro',sans-serif!important;font-size:1.3rem!important;font-style:normal!important;color:#00334d}
.notice-dialog p{margin:0;font-size:.92rem;line-height:1.65;color:#41637a}
.notice-dialog p strong{color:#00334d;white-space:nowrap}
.notice-dialog p a{color:#0274ab;font-weight:700}
.notice-actions{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}
.notice-actions .btn{flex:1 1 180px;margin-top:0;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
@media(prefers-reduced-motion:no-preference){.notice-dialog[open]{animation:noticeIn .18s ease-out}@keyframes noticeIn{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}}
.success-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:16px}
.success-actions .btn{flex:0 1 190px;margin-top:0;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
