body:has(.portal-login){background:#edf4fc;color:#080e2e}
.portal-login{box-sizing:border-box;min-height:100vh;min-height:100svh;position:relative;isolation:isolate;padding:28px 5% 40px;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(360px,1fr);grid-template-rows:auto 1fr;gap:24px 5%;font-family:Arial,sans-serif;background:#d8e9f8 url('/images/portal-rca-background.png') center center/cover no-repeat}
.portal-brand{grid-column:1/-1;display:flex;justify-content:space-between;align-items:start;gap:24px}
.portal-brand img{width:220px;height:80px;object-fit:contain;object-position:left center}
.portal-brand p{font-size:13px;line-height:1.3;margin:0;padding-top:3px;color:#173455}.portal-brand p:after{content:'';display:block;width:40px;height:3px;background:#ff9b00;margin-top:8px}
.portal-message{align-self:start;padding-top:14px;max-width:610px}
.portal-message h1{font-size:clamp(32px,3vw,50px);letter-spacing:-1.5px;line-height:1.13;margin:0 0 16px;font-weight:750;color:#070e2d}
.portal-message h1 span{color:#005eff}.portal-message>p{font-size:clamp(14px,1.2vw,19px);line-height:1.5;color:#4e6c91;margin:0;text-shadow:0 1px 8px #fff}
.portal-features{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:28px;max-width:560px}
.portal-features>div>span{background:#ffffffde;border-radius:13px;width:48px;height:48px;display:grid;place-items:center;color:#0060ff}
.portal-features svg{width:26px;height:26px}.portal-features p{font-size:14px;line-height:1.45;margin:10px 0 0;color:#0b1534}
.portal-access{align-self:center;width:100%;max-width:560px;justify-self:end;background:linear-gradient(145deg,#fffffff5,#f4f7fbed);border:1px solid #ffffffc9;border-radius:26px;padding:38px clamp(24px,2.7vw,46px);box-shadow:0 24px 70px #102b5030;backdrop-filter:blur(14px)}
.portal-form{display:flex;flex-direction:column;gap:0;margin:0;padding:0;color:#090e2b;background:none;border:0;box-shadow:none;width:100%;max-width:none}
.portal-form-icon{display:grid;place-items:center;color:#fff;background:#005cff;border-radius:15px;width:60px;height:60px;margin:0 auto 18px}.portal-form-icon svg{width:32px;height:32px}
.portal-form h2{text-align:center;margin:0 0 10px;font-size:34px;line-height:1.2;letter-spacing:-1px;color:#080d2c}
.portal-description{text-align:center;color:#506a8f;font-size:16px;line-height:1.5;margin:0 0 30px}
.portal-form>label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600;color:#11182e;margin:0 0 18px}
.portal-form input:not([type=checkbox]){box-sizing:border-box;width:100%;min-width:0;height:52px;border:1px solid #c9d4e6;border-radius:12px;padding:0 16px;background:#ffffffbf!important;color:#17233e!important;font-size:15px;box-shadow:none}
.portal-form input::placeholder{color:#879abb}.portal-form input:focus{outline:3px solid #0060ff24;border-color:#0060ff}
.portal-password{position:relative}.portal-password input{padding-right:79px!important}.portal-password button{position:absolute;right:9px;top:12px;border:0;background:transparent;box-shadow:none;color:#45658c;padding:5px 7px;font-size:12px;min-height:0}
.portal-options{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;font-size:12px}.portal-options label{display:flex;align-items:center;gap:7px;margin:0;color:#1a2741;font-weight:400}
.portal-options input[type=checkbox]{width:18px;height:18px;accent-color:#0060ff;margin:0}
.portal-form .portal-text-button{border:0;background:none;color:#005cee;padding:4px 0;font-size:12px;box-shadow:none}
.portal-form .error{min-height:18px;font-size:12px;color:#b42318;margin:12px 0;line-height:1.5;overflow-wrap:anywhere}
.portal-form .portal-submit{display:flex;justify-content:center;align-items:center;gap:16px;background:linear-gradient(110deg,#0066f5,#004bd1);color:white;border:0;border-radius:12px;height:54px;font-size:18px;font-weight:600;box-shadow:0 14px 30px #0047c620;width:100%}.portal-submit svg{width:22px;height:22px}
.portal-divider{display:flex;align-items:center;gap:14px;color:#607998;font-size:13px;margin:28px 0}.portal-divider:before,.portal-divider:after{content:'';height:1px;background:#cbd5e3;flex:1}
.portal-help{display:flex;justify-content:center;gap:24px}.portal-help button{border:0;background:none;box-shadow:none;color:#3c5b81;padding:2px 12px;font-size:14px;border-radius:0}.portal-help button+button{border-left:1px solid #c1cfe0;padding-left:28px}
.portal-form .mfa-links{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.portal-form .mfa-links button{flex:1;background:#fff;color:#23528d;border:1px solid #c9d4e6}.portal-form>small{color:#506a8f;text-align:center}
@media(min-width:1600px){.portal-login{grid-template-columns:minmax(0,1.6fr) minmax(440px,1fr)}.portal-access{padding-top:44px;padding-bottom:44px}.portal-message{padding-top:26px}}
@media(max-width:1000px){.portal-login{grid-template-columns:minmax(0,1fr) minmax(340px,1fr);gap:24px 24px;padding:24px 4% 36px}.portal-brand img{width:180px;height:65px}.portal-features{grid-template-columns:repeat(2,1fr);max-width:300px}.portal-wide-break{display:none}.portal-message h1{font-size:34px}.portal-access{padding:28px 24px}.portal-form h2{font-size:30px}}
@media(max-width:740px){.portal-login{display:flex;flex-direction:column;gap:20px;padding:20px 18px 36px;background-position:25% center}.portal-brand{width:100%;align-items:center}.portal-brand img{width:155px;height:58px}.portal-brand p{font-size:10px}.portal-message{display:none}.portal-access{align-self:center;max-width:460px;padding:28px 24px}.portal-description{font-size:15px;margin-bottom:25px}.portal-options{gap:12px}.portal-form h2{font-size:30px}.portal-form .portal-submit{height:52px}}
@media(prefers-reduced-transparency:reduce){.portal-access{background:#f8fafc;backdrop-filter:none}}
