/* Visionair OS 4.16.20: styles apply only while the sign-in layout is present. */
body:has(.login-layout){background:#071a36;color:#f8f8f3;background-image:radial-gradient(ellipse at 8% 20%,#174f9766,transparent 55%)}
body:has(.login-layout) .portal-header{position:relative;height:92px;background:transparent;backdrop-filter:none;border-color:#ffffff15;padding:0 max(calc((100vw - 1340px)/2),5vw)}
body:has(.login-layout) .portal-header img{width:177px;max-height:42px}
body:has(.login-layout) .portal-header span{color:#9aadb5;letter-spacing:.2em;font-size:10px}
#clientPortal:has(.login-layout){width:min(1340px,90vw);margin:66px auto 0}
.login-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(350px,1fr);column-gap:80px;align-items:start}
.login-kicker{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.19em;color:#a5cfff;font-weight:600;margin:0 0 22px}
.login-kicker>span{width:6px;height:6px;border-radius:100%;background:#5aa8ff}
.login-story h1{font:500 clamp(42px,4.1vw,64px)/1.08 Georgia,serif;letter-spacing:-.045em;margin:0 0 24px}
.login-story h1 em{font-style:normal;color:#79b7ff}
.login-lead{font-size:15px;line-height:1.8;color:#afbdc3;margin:0 0 28px;max-width:570px}
.welcome-film{margin:0;border:1px solid #ffffff26;border-radius:14px;overflow:hidden;background:#0d2850;box-shadow:0 18px 60px #0002}
.welcome-film video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#111;cursor:pointer}
.welcome-film figcaption{padding:16px 19px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;color:#e0e9e8}
.welcome-film figcaption>span:first-child{display:flex;align-items:center;gap:11px}.welcome-film figcaption i{font-style:normal;font-size:9px;color:#79b7ff}
.welcome-film figcaption>span:last-child{font-size:8px;letter-spacing:.13em;color:#92a7ad}
.login-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:29px 0 15px}
.login-benefits div>span{display:block;font-size:10px;color:#779bcc;margin-bottom:10px;letter-spacing:.12em}.login-benefits strong{display:block;font-size:12px;font-weight:600}.login-benefits p{font-size:11px;line-height:1.6;color:#94a9b1;margin:7px 0 0}
.video-transcript{color:#91a5ad;font-size:11px;line-height:1.8;margin:0 0 25px}.video-transcript summary{cursor:pointer;width:fit-content}.video-transcript p{max-width:620px}
.login-panel{padding-top:12px}
.login-layout .signin-card{width:100%;margin:0;padding:42px 39px 30px;border:1px solid #fff9;border-radius:18px;background:#f6f8fc;color:#102646;box-shadow:0 28px 65px #0003}
.login-lock{display:grid;place-items:center;width:40px;height:40px;border:1px solid #c6d8f2;border-radius:12px;background:#e7f0ff;margin-bottom:27px;color:#2361ad}.login-lock svg{width:22px;height:22px}
.login-layout .signin-card .eyebrow{color:#607997;font-size:9px;font-weight:600;letter-spacing:.15em;margin:0 0 14px}
.login-layout .signin-card h2{font:400 38px/1.12 Georgia,serif;letter-spacing:-.045em;margin:0 0 15px}
.login-layout .signin-card>p:not(.eyebrow){font-size:13px;line-height:1.7;color:#61748e;margin:0}
.login-layout .signin-card form{margin-top:31px;gap:20px}
.login-layout .signin-card label{color:#243c5e;font-size:11px;font-weight:600;gap:9px}
.login-layout .signin-card input{background:#fff;border:1px solid #c7d3e4;border-radius:7px;color:#182a30;min-height:49px;padding:13px 14px;font:14px "Segoe UI",sans-serif;box-shadow:0 1px 2px #00000004}
.login-layout .signin-card input::placeholder{color:#8a979a;font-size:12px;font-weight:400}
.login-layout .signin-card input:focus{outline:3px solid #3876c628;border-color:#3876c6}
.login-layout .signin-card form>button{margin-top:4px;min-height:51px;background:#175bb2;border:1px solid #175bb2;border-radius:7px;color:#fff;font-size:12px;display:flex;align-items:center;justify-content:space-between;transition:background .15s}
.login-layout .signin-card form>button:hover{background:#124889}.login-layout .signin-card form>button span{font-size:20px;font-weight:400}
.login-layout .form-error{color:#a92d35;font-size:12px;margin:0;min-height:0}.login-layout .form-error:empty{display:none}
.login-help{border-top:1px solid #dbe2ec;margin-top:29px;padding-top:22px}.login-help strong{font-size:11px}.login-help p{font-size:11px;line-height:1.8;color:#65758d;margin:7px 0 0}.login-help a{color:#1557a1;text-underline-offset:3px}
.login-layout .signin-card .login-secure{margin-top:28px;font-size:9px;color:#70819a;display:flex;align-items:center;gap:7px}
.login-signoff{font:italic 24px/1.4 Georgia,serif;text-align:center;color:#7997bd;margin:32px 0}.login-signoff span{color:#bad7ff}
.login-footer{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:25px 0 30px;border-top:1px solid #ffffff17;color:#7d929a;font-size:9px;letter-spacing:.13em}.login-footer b{margin:0 10px}.login-footer a{color:#b6cce8;text-decoration:none;letter-spacing:0;font-size:11px}
.login-layout a:focus-visible,.login-layout button:focus-visible,.login-layout summary:focus-visible,.login-layout video:focus-visible{outline:3px solid #64a7bc;outline-offset:5px}
@media(min-width:1500px){#clientPortal:has(.login-layout){margin-top:80px}.login-layout{column-gap:105px}.login-panel{padding-top:30px}.login-layout .signin-card{padding:48px}}
@media(max-width:1100px){.login-layout{column-gap:38px;grid-template-columns:minmax(0,1.2fr) minmax(320px,1fr)}.login-layout .signin-card{padding:30px 26px}.login-story h1{font-size:46px}.login-benefits{gap:12px}}
@media(max-width:760px){body:has(.login-layout) .portal-header{height:74px;padding:0 6vw}body:has(.login-layout) .portal-header img{width:145px}#clientPortal:has(.login-layout){width:88vw;margin-top:24px}.login-layout{grid-template-columns:1fr;gap:0}.login-panel{grid-row:1;padding:0}.login-layout .signin-card{padding:30px 27px}.login-lock{margin-bottom:20px}.login-signoff{display:none}.login-story{margin-top:44px}.login-story h1{font-size:42px}.login-lead{font-size:13px}.login-kicker{font-size:9px}.login-benefits{gap:14px}.welcome-film figcaption{padding:13px;font-size:10px}.welcome-film figcaption>span:last-child{font-size:7px}.login-footer{margin-top:15px;font-size:7px;letter-spacing:.06em}.login-footer a{font-size:10px}.login-footer b{margin:0 4px}}
@media(prefers-reduced-motion:reduce){.login-layout *{transition:none!important}}

/* Palette sampled from the live Visionair website: logo #2b4e74, white, charcoal and coral. */
body:has(.login-layout){background:#2b4e74;background-image:linear-gradient(120deg,#2b4e74 0%,#203d5d 100%)}
body:has(.login-layout) .portal-header{background:#fff;border-bottom:1px solid #e6e9ed}
body:has(.login-layout) .portal-header span{color:#2b4e74}
.login-story h1 em{color:#dae7f5}.login-kicker{color:#dbe7f6}.login-kicker>span{background:#ef6f49}
.login-lead{color:#d0ddec}.login-benefits p{color:#c7d6e6}.login-benefits div>span{color:#efb09c}
.welcome-film{background:#203d5d}.welcome-film figcaption>span:last-child{color:#c0d1e3}.welcome-film figcaption i{color:#ef9f86}
.login-layout .signin-card{background:#fff;color:#2b4e74}.login-layout .signin-card form>button{background:#2b4e74;border-color:#2b4e74}.login-layout .signin-card form>button:hover{background:#203d5d}
.login-signoff{color:#a9c1dc}.login-signoff span{color:#e1ebf6}.video-transcript{color:#c1d3e6}.login-footer{color:#bccfe4}.login-footer a{color:#e2ecf8}

/* Approved cinematic dark treatment of the Visionair logo blue. */
body:has(.login-layout){background-color:#091522;background-image:radial-gradient(ellipse at 15% 15%,#23466d55 0%,transparent 60%),linear-gradient(125deg,#132c47 0%,#0d2035 45%,#08121f 100%);min-height:100vh}
body:has(.login-layout) .portal-header{background:#0a1829;border-bottom:1px solid #9abde326}
body:has(.login-layout) .portal-header span{color:#a5bdd8}
.welcome-film{background:#11273e;border-color:#7295bd40}.welcome-film figcaption{color:#e1ebf7}.welcome-film figcaption>span:last-child{color:#9eb4cf}
.login-layout .signin-card{box-shadow:0 32px 90px #0005}.login-footer{border-top-color:#8aafd52b}
