.login-page{display:grid;grid-template-columns:1.1fr 1fr;min-height:100dvh;background:#fff}.login-story{background:radial-gradient(ellipse at 90% 80%,#177f80,transparent 65%),linear-gradient(145deg,#063e4a,#076f66);color:#fff;padding:42px 8%;display:flex;flex-direction:column;overflow:hidden}.login-brand{display:flex;align-items:center;gap:10px;font-size:27px;font-weight:750;flex-wrap:wrap}.login-brand>span:last-child{font-size:9px;letter-spacing:1.7px;width:100%;padding-left:48px;color:#a0d7cf;margin-top:-8px}.login-logo{display:grid;place-items:center;border:1px solid #74c8b6;background:#ffffff15;border-radius:12px;width:39px;height:39px;font-size:28px}.login-story-copy{margin-top:64px}.login-kicker{font-size:11px;letter-spacing:2px;font-weight:750;color:#238172}.login-story .login-kicker{color:#a0e5cf}.login-story h1{font-size:clamp(37px,4.5vw,65px);line-height:1.1;letter-spacing:-2px;margin:18px 0}.login-story h1 em{font-style:normal;color:#9ce5ce}.login-story-copy p{color:#c7e4e1;max-width:400px;font-size:16px;line-height:1.7}.login-art{width:100%;max-width:560px;height:auto;align-self:center;margin:0 -25px}.login-benefits{display:flex;flex-wrap:wrap;gap:13px;margin-top:auto;padding-top:16px;color:#d4eeea;font-size:12px}.login-benefits span{background:#ffffff0d;border:1px solid #ffffff24;border-radius:22px;padding:8px 11px}.login-panel{display:flex;flex-direction:column;justify-content:center;padding:55px clamp(28px,6vw,90px) 25px;min-width:0;background:radial-gradient(ellipse at top right,#eef8f5,transparent 55%)}.login-form-wrap{width:100%;max-width:420px;margin:auto}.login-form-wrap h2{font-size:32px;line-height:1.2;letter-spacing:-1px;color:#143f48;margin:16px 0 13px}.login-form-wrap>p{margin-bottom:32px}.login-form-wrap form{display:grid;gap:16px}.login-form-wrap label{margin:0;font-size:13px;font-weight:600;color:#32565d}.login-form-wrap input{margin-top:8px;background:white;min-height:49px;border:1px solid #cddfdf;border-radius:10px}.login-form-wrap input:focus{outline:2px solid #218d7b;outline-offset:2px}.login-form-wrap .form-error:empty{display:none}.login-verification{font-size:13px;color:#496a70;border:1px solid #e1ece9;border-radius:9px;padding:12px}.login-verification summary{cursor:pointer}.login-verification[open] summary{margin-bottom:15px}.login-submit.primary{display:flex;justify-content:space-between;align-items:center;background:#078363;border-color:#078363;min-height:51px;border-radius:11px;box-shadow:0 7px 16px #07836320;color:#fff}.login-submit.primary:hover{background:#066c53}.login-footnote{text-align:center;border-top:1px solid #e5eeeb;padding-top:22px;margin-top:29px;color:#70868b;font-size:12px}.login-footer{display:flex;justify-content:space-between;gap:15px;color:#829599;font-size:11px;margin-top:60px}.login-form-wrap .small{margin:0;line-height:1.6}@media(max-width:850px){.login-story{padding:30px}.login-story-copy{margin-top:45px}.login-story h1{font-size:42px}.login-panel{padding:40px 28px 20px}.login-benefits{font-size:10px}}@media(max-width:650px){.login-page{grid-template-columns:1fr}.login-story{padding:25px}.login-story-copy,.login-art,.login-benefits{display:none}.login-brand{font-size:24px}.login-panel{padding:36px 24px 20px;min-height:calc(100dvh - 105px)}.login-form-wrap h2{font-size:28px}.login-footer{margin-top:35px}}

/* Compact authentication layout: fit ordinary laptop screens without clipping controls. */
.login-story{padding:28px 8%;min-width:0;gap:12px}
.login-story-copy{margin-top:clamp(12px,3vh,32px)}
.login-story h1{font-size:clamp(32px,5.6vh,52px);margin:12px 0;line-height:1.08}
.login-story-copy p{font-size:14px;line-height:1.5;margin-bottom:0}
.login-art{max-height:28vh;object-fit:contain;margin:0;min-height:0}
.login-benefits{gap:8px;padding-top:8px;font-size:11px}
.login-panel{padding:24px clamp(24px,5vw,72px) 18px}
.login-form-wrap h2{font-size:28px;margin:10px 0}
.login-form-wrap>p{margin-bottom:18px;font-size:14px;line-height:1.5}
.login-form-wrap form{gap:10px}
.login-form-wrap .field{margin:0}
.login-form-wrap input{margin-top:5px;min-height:42px;padding:9px 12px}
.login-submit.primary{min-height:44px;padding:10px 16px}
.login-footnote{padding-top:12px;margin-top:16px;font-size:11px}
.login-footer{margin-top:20px}
@media(min-width:900px){
 .login-form-wrap:has(form[data-form="setup"]){max-width:480px}
 .login-form-wrap form[data-form="setup"]{grid-template-columns:1fr 1fr;column-gap:16px}
 .login-form-wrap form[data-form="setup"]>.form-error,
 .login-form-wrap form[data-form="setup"]>.field:has([name="setupToken"]),
 .login-form-wrap form[data-form="setup"]>.field:has([name="location"]),
 .login-form-wrap form[data-form="setup"]>.login-submit{grid-column:1/-1}
}
@media(max-width:650px){
 .login-story{padding:16px 24px;gap:0}
 .login-page{grid-template-rows:auto 1fr}
 .login-panel{padding:22px 24px 16px;min-height:0}
 .login-form-wrap h2{font-size:25px}
 .login-footer{margin-top:20px;font-size:10px}
}
