*{box-sizing:border-box}
:root{--bg:#050505;--gold:#dfc374;--txt:#f4f0e7;--mut:rgba(255,255,255,.56);--line:rgba(215,186,103,.22)}
html,body{margin:0;min-height:100%;background:#050505;color:var(--txt);font-family:Montserrat,-apple-system,sans-serif}
body{min-height:100vh;background:radial-gradient(circle at 50% 22%,rgba(177,139,48,.10),transparent 30%),#050505}
.topbar{height:82px;display:flex;align-items:center;justify-content:center;position:relative;border-bottom:1px solid rgba(255,255,255,.05)}
.back{position:absolute;left:22px;width:46px;height:46px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;color:var(--gold);text-decoration:none;font-size:20px}
.brand{font:600 32px/1 "Cormorant Garamond",Georgia,serif;letter-spacing:.22em;color:var(--gold)}
.login-shell{width:min(620px,calc(100% - 34px));margin:0 auto;padding:74px 0 70px}
.kicker{color:var(--gold);font-size:10px;font-weight:700;letter-spacing:.42em;margin-bottom:18px}
h1{font:500 clamp(60px,13vw,92px)/.88 "Cormorant Garamond",Georgia,serif;letter-spacing:-.025em;margin:0}
h1 em{font-weight:500;color:var(--gold)}
.intro{max-width:470px;color:var(--mut);font-size:16px;line-height:1.65;margin:26px 0 42px}
.field{position:relative;margin:0 0 14px}
.field label{display:block;color:rgba(255,255,255,.42);font-size:9px;font-weight:700;letter-spacing:.22em;margin:0 0 9px 4px}
.field input{width:100%;height:66px;border:1px solid rgba(215,186,103,.18);border-radius:22px;background:#0b0b0d;color:#fff;padding:0 20px;font-size:17px;outline:0}
.field input:focus{border-color:rgba(215,186,103,.52);box-shadow:0 0 0 3px rgba(215,186,103,.05)}
.password-field input{padding-right:82px}
.password-toggle{position:absolute;right:16px;bottom:20px;border:0;background:none;color:var(--gold);font-size:9px;font-weight:700;letter-spacing:.16em;padding:5px;cursor:pointer}
.message{min-height:22px;margin:8px 2px 0;color:#d9b86a;font-size:13px;line-height:1.45}
.message.error{color:#e59a9a}
.submit{width:100%;height:62px;margin-top:16px;border:1px solid rgba(215,186,103,.42);border-radius:999px;background:linear-gradient(180deg,rgba(215,186,103,.09),rgba(215,186,103,.025));color:var(--gold);font-size:11px;font-weight:800;letter-spacing:.28em;cursor:pointer}
.submit:disabled{opacity:.45;cursor:wait}
.new-account{text-align:center;margin-top:28px;color:rgba(255,255,255,.42);font-size:13px}
.new-account a{color:var(--gold);text-decoration:none;margin-left:6px}
@media(max-width:520px){.login-shell{padding-top:58px}.topbar{height:76px}.brand{font-size:30px}.back{left:16px;width:44px;height:44px}h1{font-size:67px}}
