*{box-sizing:border-box}body{margin:0;font-family:Inter,"Segoe UI",Arial,sans-serif;color:#182c43;background:#f8fafc}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr}.login-brand{background:radial-gradient(ellipse at 20% 60%,#143b55,transparent 65%),#0c1b2c;color:#fff;display:flex;flex-direction:column;padding:52px 9%;position:relative;overflow:hidden}.login-brand:after{content:"";position:absolute;width:420px;height:420px;border:1px solid #70b2cc20;border-radius:50%;right:-240px;top:25%;box-shadow:0 0 0 60px #70b2cc08,0 0 0 120px #70b2cc05;pointer-events:none}.brand-lockup{display:flex;align-items:center;gap:14px;font-size:16px;letter-spacing:.12em;font-weight:700}.brand-lockup small{display:block;font-size:9px;letter-spacing:.2em;color:#9bafc2;margin-top:6px}.brand-symbol{display:grid;place-items:center;width:44px;height:48px;background:#137a92;clip-path:polygon(0 0,100% 0,100% 72%,50% 100%,0 72%);font-size:24px}.brand-message{margin:auto 0;padding:80px 0;position:relative;z-index:1}.eyebrow{font-size:11px;font-weight:750;letter-spacing:.17em;color:#377589;margin:0 0 18px}.brand-message .eyebrow{color:#80c9d9}.brand-message h1{font-size:clamp(32px,3.5vw,52px);font-weight:650;letter-spacing:-.035em;line-height:1.15;margin:0 0 26px}.brand-message>p:not(.eyebrow){font-size:16px;line-height:1.8;color:#adbfce;max-width:400px}.brand-capabilities{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}.brand-capabilities span{border:1px solid #395269;border-radius:5px;padding:9px 12px;font-size:11px;color:#c7d9e5}.brand-footer{font-size:11px;color:#90a6ba}.login-panel{display:flex;flex-direction:column;justify-content:center;padding:60px 12%;background:#fff}.login-form-wrap{width:100%;max-width:410px;margin:auto}.login-panel h2{font-size:29px;letter-spacing:-.03em;margin:0 0 12px;font-weight:700}.login-description{font-size:14px;color:#65788b;line-height:1.7;margin-bottom:36px}.login-field{margin-bottom:23px}.login-field label{display:block;font-size:13px;font-weight:650;margin-bottom:9px}.login-field input{width:100%;border:1px solid #ccd7e2;border-radius:7px;background:#fafcfe;padding:14px;font:inherit;font-size:14px;color:#182c43;min-height:49px}.login-field input:focus{outline:3px solid #dcecf5;border-color:#397999;background:#fff}.field-heading{display:flex;justify-content:space-between;gap:12px}.field-heading a{font-size:11px;color:#286786;text-decoration:none}.password-field{position:relative}.password-field input{padding-right:86px}.password-field button{position:absolute;right:6px;top:6px;height:37px;border:0;background:transparent;color:#396c86;font-size:12px;cursor:pointer}.remember{display:flex;align-items:center;gap:10px;font-size:12px;color:#596e81;margin:4px 0 28px}.remember input{accent-color:#226b8a;width:16px;height:16px}.login-submit{width:100%;display:flex;align-items:center;justify-content:space-between;background:#195c7c;color:white;border:0;border-radius:7px;padding:16px 20px;font-size:14px;font-weight:650;cursor:pointer}.login-submit:hover{background:#124962}.login-help{border-top:1px solid #e8edf2;margin-top:30px;padding-top:22px;font-size:11px;color:#718295;line-height:1.8}.login-panel footer{font-size:11px;color:#7b8c9d;text-align:center;padding-top:36px}.field-validation-error,.validation-summary-errors{color:#ad303e;font-size:12px;line-height:1.6}.validation-summary-errors{background:#fff2f3;padding:12px;border-radius:6px;margin-bottom:20px}.validation-summary-valid{display:none}a:hover{text-decoration:underline}button:focus-visible,a:focus-visible{outline:3px solid #7ab8d3;outline-offset:3px}@media(max-width:800px){.login-shell{grid-template-columns:1fr}.login-brand{padding:25px 28px}.brand-message{padding:35px 0 10px}.brand-message h1{font-size:30px}.brand-message>p:not(.eyebrow),.brand-capabilities,.brand-footer{display:none}.login-panel{padding:38px 26px}.login-panel h2{font-size:25px}}
.mobile-password{margin-top:15px;border-top:1px solid #e5ebf1;padding-top:13px}.mobile-password summary{color:#35657e;font-size:13px;font-weight:650;cursor:pointer;padding:6px 0}.mobile-password .login-field{margin:15px 0}.mobile-password .remember{margin:4px 0 16px}.mobile-password .login-submit{padding:14px 18px}.mobile-password[open] summary{margin-bottom:10px}#passkey-status{min-height:0;margin:12px 0 0;font-size:12px}.login-submit:disabled{opacity:.65;cursor:wait}
@media(max-width:800px){.login-brand{padding:18px 22px}.brand-message{display:none}.login-panel{padding:24px 22px}.login-form-wrap{max-width:520px}.login-panel h2{font-size:23px}.login-description{margin-bottom:20px}}
