.login-page { min-height: 100vh; display: grid; place-items: center; padding: 40px; background: #fff9eb; }
.login-shell { display: grid; grid-template-columns: 1fr 1fr; width: min(1050px, 100%); min-height: 650px; border: 1px solid var(--line); border-radius: 22px; overflow: hidden; box-shadow: 0 20px 70px #6a4d0a0c; }
.login-story { background: var(--gold-900); color: var(--gold-100); padding: 48px 56px; position: relative; overflow: hidden; }
.login-logo { width: 130px; height: auto; display: block; margin-bottom: 65px; }
.login-eyebrow { font-size: 10px; letter-spacing: 3px; font-weight: 600; }
.login-story h1 { color: #fff9eb; font-size: clamp(44px, 5vw, 62px); line-height: 1.1; letter-spacing: -2px; margin: 20px 0; }
.login-description { max-width: 290px; line-height: 1.8; color: #ead79d; font-size: 14px; }
.login-carriers { display: flex; gap: 12px; margin-top: 28px; }
.login-carriers span { padding: 8px 16px; border: 1px solid #f6e7b54a; border-radius: 30px; font-size: 11px; }
.login-road { position: absolute; width: 280px; height: 280px; right: -145px; bottom: -60px; border: 1px solid #f6e7b530; border-radius: 50%; box-shadow: 0 0 0 40px #f6e7b508,0 0 0 80px #f6e7b508; }
.login-signature { margin: 70px 0 0; font-size: 10px; letter-spacing: 1px; color: #ead79d; }
.login-access { background: var(--surface); padding: 80px 58px 24px; display: flex; flex-direction: column; justify-content: center; }
.login-form-wrap { margin: auto 0; }
.login-access h2 { font-size: 29px; letter-spacing: -.8px; margin: 12px 0; }
.login-intro { color: var(--muted); font-size: 13px; line-height: 1.7; margin-bottom: 30px; }
.login-access label { display: block; font-weight: 600; font-size: 12px; margin: 20px 0 9px; }
.login-access input:not([type=hidden]) { width: 100%; height: 47px; padding: 12px; border: 1px solid var(--line); border-radius: 8px; font: inherit; color: var(--ink); background: #fff; }
.login-submit { display: flex; justify-content: space-between; align-items: center; width: 100%; margin-top: 28px; padding: 14px 18px; border: 0; border-radius: 8px; background: var(--gold-900); color: #fff9eb; font-weight: 600; cursor: pointer; }
.login-submit:hover { background: var(--gold-700); }
.login-help { margin-top: 25px; font-size: 11px; line-height: 1.8; color: var(--muted); }
.login-access footer { margin-top: 45px; color: var(--muted); font-size: 10px; }
.login-error { padding: 12px; background: #fff0e8; border: 1px solid #ecc3a8; border-radius: 8px; font-size: 12px; line-height: 1.6; }
@media(max-width: 760px) { .login-page { padding: 20px; } .login-shell { grid-template-columns: 1fr; min-height: auto; max-width: 470px; } .login-story { padding: 30px; } .login-logo { width: 90px; margin-bottom: 25px; } .login-story h1 { font-size: 38px; } .login-description,.login-carriers,.login-signature,.login-road { display: none; } .login-access { padding: 35px 30px 22px; } }
