:root{font-family:Inter,system-ui,-apple-system,sans-serif;color:#182539;background:#f3f5f8;font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:#28568d;text-underline-offset:4px}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #4b80cb;outline-offset:3px}.skip-link{position:fixed;top:8px;left:16px;transform:translateY(-160%);background:white;padding:12px;z-index:10}.skip-link:focus{transform:none}.login-header{max-width:1120px;margin:auto;padding:20px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px}.login-header>a:last-child{font-size:.9rem}.login-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#182539;font-weight:750}.login-brand img{width:48px;height:58px;object-fit:contain}main{max-width:960px;margin:24px auto 56px;padding:0 24px}.portal-login-shell{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);background:#fff;border:1px solid #d7dfe9;border-radius:20px;overflow:hidden;box-shadow:0 12px 40px #14223808}.portal-login-intro{background:#142238;color:#fff;padding:36px 30px}.portal-login-kicker{font-size:.72rem;letter-spacing:.12em;font-weight:800;color:#ff8190;margin:0 0 18px}.portal-login-intro h1{font-size:clamp(2rem,3.5vw,2.6rem);line-height:1.1;letter-spacing:-.04em;margin:0 0 18px}.portal-login-intro>p:last-child{color:#cbd5e2;line-height:1.65;font-size:1rem;margin:0}.llc-login .portal-login-intro{background:#1c416d}.llc-login .portal-login-kicker{color:#bad8ff}.portal-login-form{padding:30px 32px;min-width:0}.login-options{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:#eff3f8;padding:4px;border-radius:10px;margin-bottom:24px}.login-options a{min-height:44px;display:flex;align-items:center;justify-content:center;text-align:center;border-radius:7px;padding:8px;font-size:.9rem;font-weight:750;text-decoration:none;color:#47566b}.login-options a[aria-current]{background:#fff;color:#214d8d;box-shadow:0 1px 4px #14223817}.portal-login-form h2{font-size:1.8rem;letter-spacing:-.03em;margin:0}.portal-login-context{font-size:.95rem;line-height:1.5;color:#5d6a7c;margin:10px 0 22px}.portal-login-form form p{margin:0 0 18px}.portal-login-form label{display:block;font-size:.92rem;font-weight:700;margin-bottom:8px}.portal-login-form input:not([type=hidden]){width:100%;min-height:48px;font:inherit;padding:11px 13px;border:1px solid #b7c4d5;border-radius:8px;background:white;color:#182539}.portal-login-form button{display:block;width:100%;min-height:48px;padding:12px 16px;border:0;border-radius:8px;background:#dc1234;color:#fff;font:750 1rem/1.4 Inter,system-ui,sans-serif;cursor:pointer;white-space:normal;word-break:normal}.llc-login button{background:#214d8d}.portal-login-form>p{font-size:.9rem;line-height:1.5;margin:18px 0 0}.portal-switch{border-top:1px solid #e0e5ec;padding-top:18px;color:#5d6a7c}.errorlist,.login-message{background:#fff1f2;border:1px solid #f5c9cf;color:#9e1830;border-radius:8px;line-height:1.5;padding:12px 16px;font-size:.92rem}.errorlist{list-style:none}.login-message{margin-bottom:16px}input,button,a{touch-action:manipulation}@media(max-width:640px){.login-header{padding:16px 20px;gap:12px}.login-brand{gap:8px;font-size:.85rem}.login-brand img{width:36px;height:44px}.login-header>a:last-child{font-size:.8rem}main{margin:12px auto 32px;padding:0 16px}.portal-login-shell{grid-template-columns:1fr;border-radius:16px}.portal-login-intro{padding:24px}.portal-login-kicker{margin-bottom:10px}.portal-login-intro h1{font-size:2rem;margin-bottom:12px}.portal-login-intro>p:last-child{font-size:.9rem;line-height:1.5}.portal-login-form{padding:24px}.login-options{margin-bottom:20px}}

/* Keep introductory guidance separate from the first field in both portals. */
.portal-login-context + form{padding-top:18px}
/* Shared password recovery screens use the same focused authentication shell. */
.recovery-card{max-width:560px;margin:12px auto;background:#fff;border:1px solid #d7dfe9;border-radius:18px;padding:32px;box-shadow:0 12px 40px #14223808;overflow-wrap:anywhere}.recovery-kicker{font-size:.72rem;letter-spacing:.12em;font-weight:800;color:#60718a;margin:0 0 14px}.recovery-card h1{font-size:clamp(1.65rem,3vw,2rem);line-height:1.2;letter-spacing:-.035em;margin:0 0 16px}.recovery-card>p:not(.recovery-kicker){color:#5d6a7c;font-size:.95rem;line-height:1.6;margin:16px 0}.recovery-card form{margin-top:24px;display:grid;gap:20px}.recovery-card label{display:block;font-size:.92rem;font-weight:700;margin-bottom:8px}.recovery-card input{width:100%;min-height:48px;border:1px solid #b7c4d5;border-radius:8px;padding:11px 13px;font:inherit;color:#182539;background:#fff}.recovery-card .command-primary{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:12px 16px;border:0;border-radius:8px;background:#dc1234;color:#fff;font:750 1rem/1.4 Inter,system-ui,sans-serif;text-decoration:none;text-align:center;word-break:normal;cursor:pointer}.recovery-card>a.command-primary{margin-top:24px}.recovery-card .command-error{color:#a51e35;line-height:1.5;font-size:.9rem;margin:8px 0 0}.command-success-icon{display:grid;place-items:center;width:40px;height:40px;background:#e5f4eb;color:#187447;border-radius:50%;font-size:1.4rem;font-weight:800;margin-bottom:18px}.command-password-requirements{padding:16px;background:#f3f6fa;border-radius:10px;color:#526078;font-size:.88rem;line-height:1.5}.command-password-requirements h2{font-size:1rem;color:#182539;margin:0 0 10px}.command-password-requirements ul,.command-field-help ul{padding-left:20px;margin:8px 0}.command-password-requirements p{margin:10px 0 0}.command-field-help{font-size:.85rem;line-height:1.5;color:#60718a;margin-top:8px}@media(max-width:640px){.recovery-card{padding:24px;margin:0 auto;border-radius:16px}}
