@media(max-width:760px),(max-height:500px) and (max-width:960px){
 html{height:100%;min-height:0}body{height:100svh;height:var(--login-height,100dvh);min-height:0;overflow:hidden;display:flex;flex-direction:column}
 .brand{flex:0 0 auto;padding:18px 22px 10px;gap:10px;font-size:21px}.brand-mark{width:38px;height:38px;border-radius:10px;font-size:28px}.brand small{font-size:8px;letter-spacing:2px;margin-top:3px}
 .login-layout{flex:1 1 auto;min-height:0;width:min(400px,calc(100% - 32px));display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:16px;margin:0 auto;padding:8px 0 12px}
 .project-intro{flex:0 0 auto;padding:0;text-align:center}.project-intro .eyebrow,.intro-note{display:none}.project-intro h1{font-size:21px;line-height:1.45;letter-spacing:.5px}.project-intro h1 br{display:none}.intro-caption{font-size:11px;line-height:1.4;margin:5px 0 0;letter-spacing:1px}
 .card{flex:0 0 auto;padding:22px 24px;border-radius:16px;width:100%;margin:0}.card-heading{display:none}#login-title{font-size:25px;line-height:1.25;letter-spacing:1px;margin:0 0 18px}
 #login-form>label{font-size:13px;line-height:18px;margin:12px 0 6px}#login-form>label:first-child{margin-top:0}#login-form>input{font-size:16px;line-height:22px;height:46px;min-height:46px;padding:10px 12px}
 .login-options{margin-top:10px;gap:10px;min-height:30px}.remember-option{font-size:12px}.forgot-link{font-size:12px;min-height:30px}.error{min-height:0;margin:0;font-size:12px;line-height:1.5}.error:empty{display:none}.error:not(:empty){margin:6px 0;max-height:36px;overflow:auto}
 #submit{height:46px;min-height:46px;margin-top:12px;font-size:15px}.card>a{margin-top:8px}footer{flex:0 0 auto;padding:6px 12px max(8px,env(safe-area-inset-bottom));font-size:9px;line-height:1.3;justify-content:center}footer span:last-child{display:none}
 body.login-keyboard .brand,body.login-keyboard .project-intro,body.login-keyboard footer{display:none}body.login-keyboard .login-layout{justify-content:center;padding:8px 0;gap:0}body.login-keyboard .card{padding:12px 20px}body.login-keyboard #login-title{font-size:20px;margin-bottom:10px}body.login-keyboard #login-form>label{margin:7px 0 4px}body.login-keyboard #login-form>input{height:42px;min-height:42px;padding:8px 12px}body.login-keyboard .login-options{margin-top:5px}body.login-keyboard #submit{height:42px;min-height:42px;margin-top:7px}
}
@media(max-width:760px) and (max-height:650px){.brand{padding:12px 20px 6px;font-size:19px}.brand-mark{width:34px;height:34px;font-size:25px}.login-layout{gap:10px;padding:4px 0 8px}.project-intro h1{font-size:18px;line-height:1.35}.intro-caption{display:none}.card{padding:18px 22px}#login-title{font-size:23px;margin-bottom:14px}#login-form>input{height:44px;min-height:44px}#submit{height:44px;min-height:44px}footer{padding-top:3px;padding-bottom:6px}}
@media(max-height:480px) and (max-width:960px){.brand,.project-intro,footer{display:none}.login-layout{justify-content:center;padding:6px 0;gap:0}.card{padding:12px 20px}#login-title{font-size:21px;margin-bottom:10px}#login-form>label{margin:7px 0 4px}#login-form>input{height:42px;min-height:42px}.login-options{margin-top:5px}#submit{margin-top:7px;height:42px;min-height:42px}}
@media(max-height:320px) and (max-width:960px){body{overflow-y:auto}.login-layout{flex:none;min-height:100%;justify-content:flex-start}#login-title{display:none}}
