/* Origin Forward identity; existing authentication and motion logic are intact. */
:root { font-family:var(--brand-sans); color:var(--brand-ink); background:var(--brand-white); }
.login-brand { margin-left:-14px; }
.login-brand img { display:block; width:260px; height:auto; max-width:100%; }
.login-side { padding-top:30px; }
.login-panel { max-width:360px; }
.login-panel h1 { font-family:var(--brand-serif); font-size:40px; font-weight:400; line-height:1.5; letter-spacing:0; }
.login-panel h1 span { font-size:inherit; font-weight:inherit; letter-spacing:inherit; }
.login-caption { letter-spacing:.06em; }
.login-description { margin-block:20px 32px; }
.login-hero { background:var(--brand-stone); color:var(--brand-ink); border-radius:12px; }
.login-hero-image { object-position:50% 62%; }
.login-hero-shade { background:linear-gradient(180deg,rgba(246,243,237,.96),rgba(246,243,237,.88) 30%,rgba(246,243,237,0) 52%,rgba(246,243,237,0) 80%,rgba(246,243,237,.92)); }
.login-hero-copy { padding-top:58px; }
.login-hero-label { color:var(--brand-muted); font-size:11px; letter-spacing:.14em; }
.login-hero h2 { font-family:var(--brand-serif); font-size:clamp(30px,3vw,46px); font-weight:400; line-height:1.55; letter-spacing:0; }
.login-hero-description { color:var(--brand-ink); font-size:13px; }
.login-hero-foot { color:var(--brand-ink); letter-spacing:0; }
#hero-motion-toggle { color:var(--brand-ink); background:var(--brand-white); border-color:var(--brand-muted); }
#hero-motion-toggle:hover:not(:disabled) { background:var(--brand-soft); border-color:var(--brand-ink); }
#hero-motion-toggle:disabled { color:var(--brand-muted); }
#hero-motion-toggle:focus-visible { outline-color:var(--brand-focus); }
@media(min-width:901px) and (max-height:780px) {
  .login-brand img { width:240px; }
  .login-panel { padding-block:22px; }
  .login-panel h1 { font-size:34px; }
  .login-hero-copy { padding-top:34px; }
}
@media(max-width:900px), (max-aspect-ratio:4/5) {
  .login-brand { margin-left:-12px; }
  .login-brand img { width:240px; }
  .login-panel h1 { font-size:34px; }
  .login-hero-copy { padding:30px 26px; }
  .login-hero h2 { font-size:30px; }
  .login-hero-foot { flex-wrap:wrap; gap:6px; }
}
