:root{font-family:Segoe UI,Arial,sans-serif;color:#142f2a;background:#edf1ec;font-synthesis:none}*{box-sizing:border-box}body{margin:0;padding:28px}a{color:inherit}.auth-shell{max-width:1440px;margin:auto;min-height:calc(100vh - 56px);display:grid;grid-template-columns:1fr 1fr;border:1px solid #dce4db;border-radius:24px;overflow:hidden;background:#fafbf8;box-shadow:0 22px 70px #123d3510}.brand-panel{padding:44px;display:flex;flex-direction:column;background:radial-gradient(ellipse at 0 0,#286454,transparent 65%),#102e28;color:#fff}.brand-lockup{display:flex;gap:16px;align-items:center}.brand-lockup img{width:66px;height:66px;object-fit:contain;background:white;padding:6px;border-radius:15px}.brand-lockup strong{font-size:22px}.brand-lockup small{display:block;font-size:9px;letter-spacing:2px;margin-top:7px;color:#c3d5ca}.brand-story{margin:auto 0;padding:65px 0}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#9a7941}.brand-panel .eyebrow{color:#d7bd89}h1{font-size:clamp(34px,4.3vw,60px);line-height:1.13;letter-spacing:-2px;margin:23px 0}h1 em{font-style:normal;color:#e4c486}.brand-story p{max-width:380px;color:#b9cdc3;line-height:1.8;font-size:14px}.journey{display:flex;margin-top:38px;border-top:1px solid #ffffff25;padding-top:22px;gap:30px;color:#c7ac7c;font-size:11px}.journey b{display:block;color:#e4eee8;font-size:12px;font-weight:500;margin-top:8px}.brand-foot{color:#9ab5a8;font-size:11px;line-height:1.6}.form-panel{padding:32px 48px;display:flex;flex-direction:column}.secure-label{color:#647a6e;font-size:9px;letter-spacing:1.8px;text-align:right}.auth-card{width:100%;max-width:390px;margin:auto; padding:42px 0}h2{font-size:32px;letter-spacing:-1px;margin:12px 0}.intro{color:#728078;font-size:14px;line-height:1.7;margin:0 0 24px}.auth-tabs{display:flex;border-bottom:1px solid #dde4db;gap:28px;margin-bottom:25px}.auth-tabs a{text-decoration:none;padding:0 0 12px;font-size:13px;color:#758277}.auth-tabs .selected{border-bottom:2px solid #195b49;color:#195b49;font-weight:700}label{display:block;font-size:12px;font-weight:600;margin-bottom:17px}label small{font-weight:400;color:#849087}input{display:block;width:100%;padding:13px 12px;margin-top:8px;border:1px solid #dce4da;background:white;border-radius:9px;font:inherit;font-weight:400;color:#142f2a;min-width:0}input:focus{outline:3px solid #195b4915;border-color:#438571}.password-field{position:relative}.password-field input{padding-right:58px}.password-field button{position:absolute;right:10px;top:0;height:100%;border:0;background:none;color:#557466;font-size:11px;cursor:pointer}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.submit{display:flex;justify-content:space-between;align-items:center;width:100%;padding:15px 18px;border:0;border-radius:9px;background:#195b49;color:white;font:600 13px Segoe UI,Arial;text-decoration:none;cursor:pointer;box-shadow:0 7px 16px #195b4920}.submit:hover{background:#104c3b}.approval-note{padding:12px 14px;background:#f4eedf;border:1px solid #e9ddc2;border-radius:9px;color:#7d663e;font-size:11px;line-height:1.7;margin-bottom:20px}.access-help{text-align:center;font-size:11px;color:#7a887f;margin-top:22px}.alert{padding:12px;background:#fff0ec;border:1px solid #f0c5b8;border-radius:8px;color:#a23a24;font-size:13px;margin-bottom:20px}footer{text-align:center;color:#829085;font-size:10px;line-height:1.9}footer a{text-decoration:none}footer strong{color:#596f60}a:focus-visible,button:focus-visible{outline:3px solid #be9c60;outline-offset:4px}@media(max-width:900px){body{padding:16px}.brand-panel{padding:30px}.form-panel{padding:28px}.brand-lockup strong{font-size:18px}.journey{gap:20px}}@media(max-width:700px){body{padding:0}.auth-shell{display:block;min-height:100vh;border:0;border-radius:0}.brand-panel{padding:22px 26px}.brand-story,.brand-foot{display:none}.brand-lockup img{width:52px;height:52px}.form-panel{padding:24px}.auth-card{padding:30px 0}.secure-label{text-align:center}.contact-fields{grid-template-columns:1fr;gap:0}footer{padding-top:12px}h2{font-size:29px}}
.brand-panel .brand-lockup{flex-direction:column;text-align:center;align-items:center}.brand-panel .brand-lockup img{width:100%;height:130px;object-fit:contain}.brand-panel .brand-lockup>div{width:100%}@media(max-width:700px){.brand-panel .brand-lockup img{height:90px}}

/* Fit the login to the available viewport without clipping fields or errors. */
body{padding:clamp(10px,2vh,24px)}
.auth-shell{min-height:calc(100vh - clamp(20px,4vh,48px));min-height:calc(100dvh - clamp(20px,4dvh,48px))}
.brand-panel,.form-panel{min-width:0;padding:clamp(20px,3.5vh,38px) clamp(22px,3.5vw,44px)}
.brand-panel .brand-lockup img{height:clamp(76px,16vh,130px)}
.brand-lockup{gap:clamp(8px,1.8vh,16px)}
.brand-story{padding:clamp(16px,3vh,36px) 0}
h1{font-size:clamp(28px,min(4vw,6vh),52px);margin:clamp(12px,2.5vh,23px) 0;letter-spacing:-1.4px}
.brand-story p{margin:10px 0;line-height:1.6}
.auth-card{padding:clamp(16px,3vh,32px) 0}
h2{font-size:clamp(26px,4.5vh,32px);margin:10px 0}
.intro{margin-bottom:clamp(12px,2.5vh,24px)}
label{margin-bottom:clamp(10px,2vh,17px)}
input{padding:clamp(10px,1.8vh,13px) 12px}
.access-help{margin-top:clamp(12px,2.5vh,22px)}
@media(max-width:700px){
 body{padding:0}.auth-shell{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;border-radius:0}
 .brand-panel{padding:14px 22px;flex:none}.brand-panel .brand-lockup{gap:7px}
 .brand-panel .brand-lockup img{height:clamp(55px,12vh,90px);max-width:340px}
 .brand-lockup strong{font-size:17px}.brand-lockup small{margin-top:4px;font-size:8px}
 .form-panel{padding:16px 24px;flex:1}.auth-card{padding:16px 0}.secure-label{font-size:8px}
 footer{padding-top:8px;line-height:1.6}.intro{font-size:13px}.submit{padding:13px 16px}
}
@media(max-height:550px){
 .brand-story{padding:12px 0}.brand-story p,.brand-foot,.secure-label,.auth-card>.eyebrow{display:none}
 .auth-card{padding:10px 0}.form-panel{padding-top:16px;padding-bottom:16px}h2{font-size:25px}
 .access-help{margin-top:10px}.intro{margin-bottom:12px}.brand-panel .brand-lockup img{height:70px}
}
@media(max-width:700px) and (max-height:600px){
 .brand-panel{padding:9px 20px}.brand-panel .brand-lockup img{height:50px}
 .brand-lockup small,.secure-label,.auth-card>.eyebrow{display:none}
 .form-panel{padding:10px 22px}.auth-card{padding:8px 0}footer{font-size:9px}
}
