:root{color-scheme:light;--paper:#fffdfa;--warm:#f3efe8;--ink:#20201e;--muted:#77716b;--line:#ded6cc;--wine:#7a2436}
*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}
button,input{font:inherit}
a{color:inherit}
[hidden]{display:none!important}
.login-layout{min-height:100vh;min-height:100svh;display:grid;grid-template-columns:1.1fr 1fr}
.intro{background:var(--warm);padding:52px clamp(32px,5.2vw,88px) 30px;display:flex;flex-direction:column;position:relative;border-right:1px solid var(--line)}
.wordmark{display:block;text-decoration:none;font-size:25px;letter-spacing:-1.2px;font-weight:800;width:max-content}
.wordmark span{display:block;font-size:10px;font-weight:600;letter-spacing:1.25px;text-transform:uppercase;color:var(--muted);margin-top:8px}
.intro-body{margin:auto 0;padding:90px 0}
.eyebrow{font-size:11px;font-weight:600;line-height:1.6;letter-spacing:1.7px;text-transform:uppercase;color:var(--wine);margin:0 0 23px}
h1{font-size:clamp(38px,4.1vw,66px);font-weight:600;line-height:1.09;letter-spacing:-2.3px;margin:0;max-width:650px}
h1 span{color:var(--wine)}
.intro-copy{font-size:18px;line-height:1.6;margin:29px 0 0;color:var(--muted)}
.intro-note{display:flex;gap:14px;align-items:center;font-size:12px;color:var(--muted);margin-top:54px}
.note-line{width:32px;height:1px;background:var(--wine)}
.intro-footer,.entry-footer{font-size:11px;line-height:1.6;color:var(--muted);margin:0}
.entry{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:65px 48px 30px}
.entry-content{width:100%;max-width:360px;margin:auto 0;padding:60px 0}
.entry .eyebrow{margin-bottom:12px}
h2{font-size:34px;line-height:1.2;letter-spacing:-1px;margin:0;font-weight:600}
.entry-copy{font-size:15px;line-height:1.6;color:var(--muted);margin:15px 0 36px}
label{display:block;font-size:13px;font-weight:600;margin:0 0 10px}
input{display:block;width:100%;height:52px;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--ink);padding:0 15px;font-size:16px;outline:none;transition:border-color .15s,box-shadow .15s}
input:focus{border-color:var(--wine);box-shadow:0 0 0 3px #7a243610}
input::placeholder{color:#9d958e;font-size:14px}
#username{margin-bottom:25px}
.password-field{position:relative}
.password-field input{padding-right:52px}
.password-field button{position:absolute;right:5px;top:4px;width:44px;height:44px;display:grid;place-items:center;border:0;background:transparent;color:var(--muted);border-radius:4px;cursor:pointer}
.password-field svg{width:21px;height:21px}
button:focus-visible,a:focus-visible{outline:2px solid var(--wine);outline-offset:4px}
.submit{display:flex;align-items:center;justify-content:space-between;width:100%;height:52px;border:0;border-radius:6px;background:var(--wine);color:white;padding:0 18px;margin-top:28px;font-weight:600;font-size:15px;cursor:pointer;transition:background .15s}
.submit:hover{background:#652031}
.submit span{font-size:23px;font-weight:400}
.submit:disabled{opacity:.65;cursor:wait}
.error{color:var(--wine);font-size:13px;line-height:1.5;margin:16px 0 0}
.help{font-size:12px;line-height:1.7;color:var(--muted);margin:28px 0 0}
.entry-footer{text-align:center;padding-top:25px}
@media(max-width:900px){.intro{padding-left:32px;padding-right:28px}h1{font-size:40px;letter-spacing:-1.5px}.entry{padding-left:32px;padding-right:32px}h2{font-size:30px}}
@media(max-width:650px){.login-layout{display:block}.intro{padding:30px 25px 28px;border-right:0;border-bottom:1px solid var(--line)}.wordmark{font-size:23px}.intro-body{padding:37px 0 0}.intro .eyebrow{font-size:9px;letter-spacing:1.4px;margin-bottom:14px}h1{font-size:34px;letter-spacing:-1.3px}.intro-copy{font-size:14px;margin-top:18px}.desktop-break{display:none}.intro-note,.intro-footer{display:none}.entry{padding:35px 25px 25px}.entry-content{max-width:420px;padding:0}.entry .eyebrow{font-size:10px}.entry-copy{margin-bottom:28px}h2{font-size:28px}.entry-footer{margin-top:36px}}
