.login{background:radial-gradient(at 20% 20%,#06b6d424,#0000 55%),radial-gradient(at 80% 90%,#ff2b6d1a,#0000 55%),linear-gradient(#050612 0%,#0a0e1a 100%);place-items:center;min-height:100dvh;padding:96px 24px 48px;display:grid;position:relative;overflow:hidden}.login.login-front{align-content:center;place-items:stretch stretch;min-height:100dvh;padding:clamp(72px,10vw,120px) clamp(20px,5vw,72px) clamp(56px,8vw,96px)}.login-scene{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.login-halo-bloom{filter:blur(60px);opacity:.7;background:radial-gradient(circle,#06b6d447,#0000 60%),radial-gradient(circle at 40% 60%,#ff2b6d2e,#0000 65%);width:70%;height:90%;position:absolute;top:-10%;left:-12%}.login-hero-image{filter:drop-shadow(0 60px 100px #000000b3)drop-shadow(0 0 60px #06b6d426);z-index:1;-webkit-user-select:none;user-select:none;pointer-events:none;width:min(720px,62vw);height:auto;animation:9s ease-in-out infinite login-float;position:absolute;top:50%;left:-8%;transform:translateY(-50%)rotate(-4deg)}@keyframes login-float{0%,to{transform:translateY(calc(-50% - 6px))rotate(-4deg)}50%{transform:translateY(calc(10px - 50%))rotate(-3deg)}}@media (prefers-reduced-motion:reduce){.login-hero-image{animation:none}}.login-front-grid{z-index:2;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);align-items:center;gap:clamp(40px,6vw,90px);width:100%;max-width:1440px;margin:0 auto;display:grid;position:relative}.login-front-copy{align-content:center;gap:18px;padding-inline-start:min(38vw,380px);display:grid}.login-front-copy .readout{align-self:start}.login-front-copy .eyebrow{color:var(--gold-hi);margin:0}.login-front-copy h1{font-family:var(--font-cinzel);letter-spacing:-.02em;color:var(--ivory);text-wrap:balance;margin:4px 0 8px;font-size:clamp(2.4rem,5.4vw,4.4rem);font-weight:400;line-height:1.02}.login-front-copy .lede{color:var(--text);max-width:44ch;margin:0;line-height:1.6}@media (max-width:1080px){.login-front-copy{padding-inline-start:0}.login-hero-image{opacity:.45;width:min(560px,78vw);top:-8%;left:50%;transform:translate(-50%)rotate(-3deg)}@keyframes login-float{0%,to{transform:translate(-50%)rotate(-3deg)}50%{transform:translate(-50%,14px)rotate(-2deg)}}.login-front-grid{grid-template-columns:1fr;gap:48px;padding-top:min(46vw,380px)}}.login-reading{z-index:2;background:linear-gradient(#06b6d408,#0000 40%);border-top:1px solid #06b6d41f;padding:clamp(72px,10vw,120px) clamp(20px,5vw,72px) clamp(96px,12vw,160px);position:relative}.login-reading .wrap{max-width:1320px;margin-inline:auto}.login-reading-head{gap:14px;max-width:680px;margin-bottom:32px;display:grid}.login-reading-head .readout{align-self:start}.login-reading-head h2{font-family:var(--font-cinzel);letter-spacing:-.01em;color:var(--ivory);text-wrap:balance;margin:0;font-weight:400}.login-reading-head .lede{color:var(--text);margin:0;line-height:1.6}.login-reading-cta{text-align:center;justify-items:center;gap:12px;margin-top:40px;display:grid}.login-reading-cta .muted{color:var(--muted);max-width:600px;font-size:14px}.login:before{content:"";pointer-events:none;background-image:linear-gradient(#06b6d40d 1px,#0000 1px),linear-gradient(90deg,#06b6d40d 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(at 50% 40%,#000 20%,#0000 85%);mask-image:radial-gradient(at 50% 40%,#000 20%,#0000 85%)}.login-halo{opacity:.35;pointer-events:none;filter:hue-rotate(150deg)saturate(1.6);width:640px;max-width:90vw;position:absolute;top:6vh;left:50%;transform:translate(-50%)}.login-in{text-align:center;-webkit-backdrop-filter:blur(14px)saturate(140%);background:#0a0e1a8c;border:1px solid #06b6d424;justify-items:center;gap:20px;width:100%;max-width:480px;padding:40px 32px;display:grid;position:relative;box-shadow:0 40px 80px #0000008c,inset 0 1px #ffffff0a}.login-in .readout{margin:0 0 4px}.login-in .mark{width:68px;height:68px;margin-bottom:12px}.login-in .eyebrow{font-family:var(--font-mono);letter-spacing:.28em;text-transform:uppercase;color:var(--gold-hi);margin:0;font-size:11px}.login-in h1{font-family:var(--font-cinzel);letter-spacing:-.02em;color:#f4ecdd;margin:4px 0 8px;font-size:clamp(2rem,5vw,2.75rem);font-weight:400;line-height:1.05}.login-in .lede{color:#c9c0b3;max-width:420px;margin:0 0 12px;line-height:1.6}.login-methods{gap:14px;width:100%;max-width:440px;margin:8px 0 4px;display:grid}.google-form{display:grid}.google-btn{color:#1a1815;font:500 15px/1 var(--font-hanken), system-ui, sans-serif;cursor:pointer;background:#f4ecdd;border:1px solid #f4ecdd;justify-content:center;align-items:center;gap:12px;padding:12px 18px;transition:background .16s,transform .16s;display:inline-flex}.google-btn:hover{background:#fff}.google-btn:active{transform:translateY(1px)}.google-btn:disabled{opacity:.6;cursor:default}.or{color:#6f6a5f;font:500 11px/1 var(--font-mono);letter-spacing:.24em;text-transform:uppercase;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;display:grid}.or:before,.or:after{content:"";background:#c9a24a40;height:1px}.login-form{grid-template-columns:1fr auto;gap:10px;width:100%;display:grid}.login-form input[type=email]{color:var(--ivory);font:inherit;background:#050812d9;border:1px solid #06b6d459;outline:none;padding:14px 16px;transition:border-color .16s,box-shadow .16s}.login-form input[type=email]:focus{border-color:var(--cyan-hi);box-shadow:0 0 0 3px #06b6d438,0 0 20px #06b6d440}.login-form input[type=email]::placeholder{color:#556069}.login-form .btn{white-space:nowrap}.login-form .btn:disabled{opacity:.6;cursor:default}.login-in .state{text-align:left;border:1px solid;width:100%;max-width:440px;margin:4px 0 0;padding:12px 16px;font-size:14px;line-height:1.5}.login-in .state.ok{color:#b8ecf5;background:#06b6d414;border-color:#06b6d480}.login-in .state.err{color:#ffbdcd;background:#ff2b6d14;border-color:#ff5b8f80}.login-in .fine{color:#8e897f;max-width:440px;margin:12px 0 0;font-size:12.5px;line-height:1.6}.login-in .fine a{color:#c9a24a}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:520px){.login-form{grid-template-columns:1fr}}
