*{box-sizing:border-box}body{margin:0;background:#f7f9f8;color:#213c3c;font-family:Arial,Helvetica,sans-serif}.login-layout{display:grid;grid-template-columns:1.12fr 1fr;min-height:100vh}.intro{background:#163e3c;color:#fff;padding:55px 64px 35px;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;background-image:radial-gradient(ellipse at 0% 100%,#28534d,transparent 60%)}.brand{font-weight:800;letter-spacing:2.5px;font-size:23px;text-decoration:none;color:#fff;display:flex;gap:16px;align-items:center}.brand span{border-left:1px solid #597570;padding-left:16px;font-size:12px;letter-spacing:3px;color:#c7d7d1}.eyebrow{font-size:11px;letter-spacing:1.8px;font-weight:700;margin:0 0 23px}.intro .eyebrow{color:#a9d1ba}h1{font-size:clamp(28px,3.1vw,46px);line-height:1.14;letter-spacing:-1.8px;margin:0 0 24px;font-weight:500}.intro-footer{font-size:11px;color:#9bb7ad}.login-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 35px;position:relative}.login-card{width:100%;max-width:350px}h2{font-size:31px;letter-spacing:-.9px;margin:0 0 13px}form{margin-top:34px}label{display:block;font-size:12px;font-weight:600;margin:0 0 9px}input{width:100%;height:46px;border:1px solid #cfd9d2;background:#fff;border-radius:6px;padding:0 13px;font-size:15px;outline:none;margin-bottom:23px;color:#23443d}input:focus{border-color:#4a7760;box-shadow:0 0 0 3px #e5ede7}.password-label{display:flex;justify-content:space-between;align-items:start}button{font-family:inherit;cursor:pointer}#show-password{border:0;background:none;color:#55715e;font-size:11px;padding:0}#login-submit{width:100%;background:#284e40;color:#fff;border:0;padding:15px 18px;font-size:13px;font-weight:600;border-radius:6px;text-align:left}#login-submit span{float:right}#login-submit:disabled{opacity:.6;cursor:wait}#login-error{font-size:12px;color:#a53d34;background:#fff0eb;padding:12px;border-radius:5px;line-height:1.5;margin-top:0}.login-footer{position:absolute;bottom:26px;font-size:11px;color:#8a978d}@media(min-width:761px) and (max-width:1100px){.intro{padding-left:35px;padding-right:35px}}@media(max-width:760px){.login-layout{grid-template-columns:1fr}.intro{min-height:0;padding:25px 28px 34px}.intro h1{font-size:32px;margin-top:18px}.intro .brand{margin-bottom:27px}.intro .lead,.intro-footer,.intro .eyebrow{margin-bottom:10px}.login-panel{padding:45px 25px 75px}.login-footer{bottom:10px}}
