.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(380px,.9fr) minmax(420px,1.1fr);background:#f7f7f4;color:#171716}
.login-visual{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;padding:38px clamp(28px,5vw,74px);overflow:hidden;background:#171716;color:#f8f8f3}
.login-visual:after{position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,#ffffff08,transparent 48%),radial-gradient(circle at 75% 18%,#c7ff3d12,transparent 32%);content:""}
.login-visual-top,.login-visual-footer,.login-visual-copy{position:relative;z-index:1}
.login-visual-top{display:flex;align-items:center;gap:12px;color:#c8c8c1;font-size:10px;font-weight:700;letter-spacing:.2em}
.brand-mark{display:grid;place-items:center;width:30px;height:30px;border:1px solid #c7ff3d;border-radius:50%;color:#c7ff3d;font:700 18px/1 Georgia,serif;letter-spacing:0}
.login-visual-copy{max-width:480px;margin:12vh 0}
.login-visual-copy h1{margin:14px 0 22px;font:400 clamp(48px,6vw,86px)/.94 Georgia,serif;letter-spacing:-.045em}
.login-visual-copy h1 em{color:#c7ff3d;font-style:normal}
.login-visual-copy>p:last-child{max-width:340px;margin:0;color:#b7b7b0;font-size:15px;line-height:1.7}
.login-visual .eyebrow,.login-heading .eyebrow{font-size:10px;font-weight:700;letter-spacing:.2em}
.login-visual-footer{display:flex;gap:12px;align-items:center;color:#8d8d87;font-size:11px}
.login-visual-footer span:nth-child(2){color:#c7ff3d;font-size:9px}
.login-orbit{position:absolute;z-index:0;width:38vw;height:38vw;min-width:380px;min-height:380px;border:1px solid #ffffff12;border-radius:50%;transform:translate(20%,-22%)}
.orbit-one{right:-10%;top:16%}.orbit-two{right:3%;top:29%;width:24vw;height:24vw;min-width:250px;min-height:250px;border-color:#c7ff3d22}
.login-panel{display:grid;place-items:center;padding:42px clamp(24px,7vw,110px);background:#f7f7f4}
.login-panel-inner{width:min(100%,430px)}
.login-mobile-brand{display:none}.login-heading{margin-bottom:32px}
.login-heading h2{margin:12px 0 8px;font:400 clamp(32px,4vw,48px)/1.02 Georgia,serif;letter-spacing:-.035em}
.login-form{gap:18px}.login-form label{display:grid;gap:8px;color:#3d3d39;font-size:12px;font-weight:700;letter-spacing:.02em}
.login-form .input{width:100%;padding:14px 15px;border-color:#d8d8d0;border-radius:8px;background:#fff;color:#171716}
.login-form .input:focus{border-color:#171716;outline:0;box-shadow:0 0 0 4px #c7ff3d66}
.login-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:11px}.login-actions a{color:#555;text-underline-offset:3px}.login-actions a:hover{color:#111}
.login-security{color:#777;line-height:1.35}
.login-submit{display:flex;align-items:center;justify-content:space-between;width:100%;padding:15px 17px;border-radius:8px;font-size:13px;letter-spacing:.01em}.login-submit:hover{background:#30302d}
.login-submit:focus-visible,.login-actions a:focus-visible{outline:3px solid #c7ff3d;outline-offset:3px}
.form-status{min-height:20px;margin:0;color:#9b302b}.login-help{margin:28px 0 0;color:#777;font-size:12px}.login-legal{margin:64px 0 0;color:#aaa;font-size:9px;font-weight:700;letter-spacing:.18em}
@media(max-width:820px){.login-page{display:block}.login-visual{display:none}.login-panel{min-height:100vh;padding:28px 24px}.login-mobile-brand{display:flex;align-items:center;gap:10px;margin-bottom:18vh;font-size:11px;font-weight:700;letter-spacing:.18em}.login-mobile-brand .brand-mark{border-color:#171716;color:#171716;width:27px;height:27px;font-size:16px}.login-heading h2{font-size:38px}.login-legal{margin-top:48px}}
@media(max-width:420px){.login-panel{padding:24px 20px}.login-mobile-brand{margin-bottom:13vh}.login-actions{align-items:flex-start;flex-direction:column-reverse;gap:10px}.login-heading{margin-bottom:26px}}
