.login-page{--login-bg:#f7f7f4;--login-surface:#fff;--login-surface2:#fafaf8;--login-border:#eae8e3;--login-text:#111110;--login-text-mid:#6b6860;--login-text-dim:#9e9b93;--login-cta-bg:#111110;--login-cta-hover:#2a2a28;--login-gold:#b89a6a;--login-radius:10px;background:var(--login-bg);height:100vh;min-height:600px;font-family:var(--font-montserrat), -apple-system, BlinkMacSystemFont, sans-serif;color:var(--login-text);grid-template-columns:1fr 1fr;gap:16px;padding:16px;display:grid;overflow:hidden}.login-hero{background:#1a1a17;border-radius:20px;flex-direction:column;justify-content:flex-end;padding:48px 48px 100px;display:flex;position:relative;overflow:hidden}.login-hero-slide{width:100%;height:100%;position:absolute;inset:0}.login-hero-slide img{object-fit:cover;width:100%;height:100%}.login-hero-overlay{z-index:1;background:linear-gradient(#0000 0%,#11111026 40%,#1111108c 70%,#111110e0 100%);position:absolute;inset:0}.login-hero-logo{z-index:2;align-items:center;gap:10px;display:flex;position:absolute;top:36px;left:48px}.login-hero-logo svg{width:28px;height:28px}.login-hero-logo span{font-family:var(--font-montserrat), sans-serif;color:#fff;letter-spacing:.3px;font-size:16px;font-weight:600}.login-hero-content{z-index:2;position:relative}.login-hero-title{font-family:var(--font-cormorant), Georgia, serif;letter-spacing:-.02em;color:#fff;white-space:nowrap;margin-bottom:16px;font-size:42px;font-weight:500;line-height:1.1}.login-hero-sub{font-family:var(--font-montserrat), sans-serif;color:#ffffffa6;max-width:380px;font-size:14px;line-height:1.7}.login-hero-proof{font-family:var(--font-montserrat), sans-serif;color:#ffffff59;letter-spacing:.02em;z-index:2;margin:0;font-size:12px;font-weight:500;position:absolute;bottom:32px;left:48px}.login-form-panel{background:var(--login-surface);border:1px solid var(--login-border);border-radius:20px;place-items:center;padding:40px;display:grid;overflow-y:auto}.login-form-wrap{width:100%;max-width:380px}.login-tabs{justify-content:center;margin-bottom:12px;display:flex}.login-tab-group{background:var(--login-surface2);border:1px solid var(--login-border);border-radius:10px;gap:4px;padding:4px;display:flex}.login-tab{cursor:pointer;color:var(--login-text-dim);letter-spacing:.2px;background:0 0;border:none;border-radius:7px;padding:9px 28px;font-family:inherit;font-size:13px;font-weight:500;transition:all .2s cubic-bezier(.22,1,.36,1)}.login-tab.active{color:#fff;background:var(--login-text);box-shadow:0 2px 8px #11111033}.login-tab:not(.active):hover{color:var(--login-text-mid)}.login-form-heading{text-align:center;font-family:var(--font-cormorant), Georgia, serif;letter-spacing:-.02em;color:var(--login-text);margin-bottom:32px;font-size:26px;font-weight:500}.login-field-group{margin-bottom:20px}.login-field-group:last-child{margin-bottom:0}.login-field{position:relative}.login-field+.login-field{margin-top:12px}.login-field input{width:100%;color:var(--login-text);background:var(--login-surface2);border:1px solid var(--login-border);border-radius:var(--login-radius);outline:none;padding:13px 16px;font-family:inherit;font-size:14px;font-weight:400;transition:all .2s cubic-bezier(.22,1,.36,1)}.login-field.has-toggle input{padding-right:44px}.login-field input::placeholder{color:#0000}.login-field input:focus{border-color:var(--login-gold);background:var(--login-surface);box-shadow:0 0 0 3px #b89a6a14}.login-floating label{color:var(--login-text-dim);pointer-events:none;background:var(--login-surface2);padding:0 4px;font-size:14px;font-weight:400;transition:all .2s;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.login-floating input:focus~label,.login-floating.has-value label{color:var(--login-gold);letter-spacing:.5px;font-size:10px;font-weight:600;top:0;transform:translateY(-50%)}.login-floating input:focus~label{background:var(--login-surface)}.login-field.has-error input{border:1px solid #dc2626}.login-field.has-error input:focus{border:1px solid #dc2626;box-shadow:0 0 0 3px #dc262614}.login-field-error{color:#dc2626;margin-top:4px;font-size:12px;font-weight:500}.login-field .login-toggle{color:var(--login-text-dim);cursor:pointer;background:0 0;border:none;padding:0;display:flex;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.login-field .login-toggle svg{width:18px;height:18px}.login-field .login-toggle:hover{color:var(--login-text)}.login-pw-requirements{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.login-pw-requirements span{background:var(--login-surface2);color:var(--login-text-dim);border:1px solid var(--login-border);border-radius:6px;padding:3px 10px;font-size:11px;font-weight:500;transition:all .2s}.login-pw-requirements span.met{color:#5a8a4a;background:#6b8e5f14;border-color:#6b8e5f33}.login-pw-requirements span.unmet{background:var(--login-surface2);color:var(--login-text-dim);border-color:var(--login-border)}.login-pw-requirements span:before,.login-pw-requirements span.met:before,.login-pw-requirements span.unmet:before{content:none}.login-forgot{color:var(--login-gold);cursor:pointer;letter-spacing:.2px;background:0 0;border:none;margin-top:8px;margin-left:auto;padding:0;font-family:inherit;font-size:12px;font-weight:500;transition:color .2s;display:block}.login-forgot:hover{color:var(--login-text)}.login-forgot:disabled{opacity:.5;cursor:not-allowed}.login-consent{cursor:pointer;align-items:flex-start;gap:10px;margin-bottom:24px;display:flex}.login-consent input[type=checkbox]{width:18px;height:18px;accent-color:var(--login-text);cursor:pointer;flex-shrink:0;margin-top:1px}.login-consent span{color:var(--login-text-mid);font-size:12px;line-height:1.6}.login-consent a{color:var(--login-text);text-underline-offset:2px;font-weight:500;text-decoration:underline}.login-consent a:hover{color:var(--login-gold)}.login-error{color:#dc2626;text-align:center;margin-top:4px;margin-bottom:8px;font-size:12px}.login-cta{border-radius:var(--login-radius);cursor:pointer;background:var(--login-cta-bg);color:#fff;letter-spacing:.3px;border:none;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:4px;padding:14px;font-family:inherit;font-size:14px;font-weight:600;transition:all .25s cubic-bezier(.22,1,.36,1);display:flex}.login-cta:hover:not(:disabled){background:var(--login-cta-hover);transform:translateY(-1px);box-shadow:0 4px 16px #11111026}.login-cta:disabled{color:#9e9b93;cursor:not-allowed;box-shadow:none;opacity:1;background:#d6d3cc;transform:none}.login-divider{color:var(--login-text-dim);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:16px;margin:24px 0;font-size:11px;font-weight:500;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--login-border);flex:1;height:1px}.login-google-btn{border-radius:var(--login-radius);background:var(--login-surface);border:1px solid var(--login-border);cursor:pointer;width:100%;color:var(--login-text);letter-spacing:.2px;justify-content:center;align-items:center;gap:10px;padding:13px;font-family:inherit;font-size:13px;font-weight:500;transition:all .2s cubic-bezier(.22,1,.36,1);display:flex}.login-google-btn:hover:not(:disabled){background:var(--login-surface2);border-color:#b89a6a66;box-shadow:0 2px 8px #0000000a}.login-google-btn:disabled{opacity:.6;cursor:not-allowed}.login-google-btn svg{flex-shrink:0;width:18px;height:18px}.login-tab:focus-visible,.login-google-btn:focus-visible,.login-cta:focus-visible,.login-forgot:focus-visible,.login-back-btn:focus-visible,.login-consent input[type=checkbox]:focus-visible{outline:2px solid var(--login-gold);outline-offset:2px}@keyframes loginFadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.login-form-wrap>*{animation:.4s cubic-bezier(.22,1,.36,1) both loginFadeUp}.login-form-wrap>:first-child{animation-delay:50ms}.login-form-wrap>:nth-child(2){animation-delay:.1s}.login-form-wrap>:nth-child(3){animation-delay:.15s}.login-form-wrap>:nth-child(4){animation-delay:.2s}.login-form-wrap>:nth-child(5){animation-delay:.25s}@keyframes loginHeroSlide{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}.login-hero-content>*{animation:.5s cubic-bezier(.22,1,.36,1) both loginHeroSlide}.login-hero-content>:first-child{animation-delay:.2s}.login-hero-content>:nth-child(2){animation-delay:.35s}.login-hero-content>:nth-child(3){animation-delay:.45s}.login-confirmation{text-align:center;background:var(--login-surface);border:1px solid var(--login-border);border-radius:14px;padding:48px 32px}.login-confirmation-icon{background:#6b8e5f14;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 20px;display:flex}.login-confirmation h2{font-family:var(--font-cormorant), Georgia, serif;color:var(--login-text);margin-bottom:12px;font-size:24px;font-weight:500}.login-confirmation p{color:var(--login-text-mid);margin-bottom:24px;font-size:13px;line-height:1.6}.login-confirmation p strong{color:var(--login-text);font-weight:600}.login-back-btn{border:1px solid var(--login-border);border-radius:var(--login-radius);color:var(--login-text-mid);cursor:pointer;letter-spacing:.2px;background:0 0;padding:11px 24px;font-family:inherit;font-size:13px;font-weight:500;transition:all .2s cubic-bezier(.22,1,.36,1)}.login-back-btn:hover{border-color:var(--login-gold);color:var(--login-text)}.login-mobile-header{display:none}@media (max-width:768px){.login-page{background:var(--login-surface);grid-template-rows:auto 1fr;grid-template-columns:1fr;gap:0;padding:0;overflow-y:auto}.login-hero{display:none}.login-mobile-header{background:var(--login-text);text-align:center;padding:32px 24px 24px;display:block}.login-mobile-logo{justify-content:center;align-items:center;gap:8px;margin-bottom:16px;display:flex}.login-mobile-logo svg{width:24px;height:24px}.login-mobile-logo span{font-family:var(--font-montserrat), sans-serif;color:#fff;letter-spacing:.3px;font-size:16px;font-weight:600}.login-mobile-title{font-family:var(--font-cormorant), Georgia, serif;color:#fff;letter-spacing:-.02em;margin-bottom:8px;font-size:24px;font-weight:500}.login-mobile-sub{font-family:var(--font-montserrat), sans-serif;color:#ffffff8c;max-width:320px;margin:0 auto;font-size:13px;line-height:1.6}.login-form-panel{border:none;border-radius:0;place-items:start center;padding:28px 20px 40px}.login-form-heading{margin-bottom:24px;font-size:24px}.login-tabs{margin-bottom:10px}.login-tab{padding:8px 20px;font-size:13px}}
