/* Login page – no site header/footer */
.login-page{background:#0a1110;overflow:hidden}
.login{display:grid;grid-template-columns:43% 57%;min-height:100vh;min-height:100dvh}
.lp{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:48px 6% 40px;background:radial-gradient(ellipse 80% 50% at 10% 100%,rgba(63,224,165,.08),transparent 70%),#091213;overflow:hidden}
.lp::after{content:"";position:absolute;right:-120px;bottom:-120px;width:520px;height:520px;border-radius:50%;pointer-events:none;background:repeating-radial-gradient(circle,transparent 0 18px,rgba(63,224,165,.07) 18px 19px);animation:ring 14s ease-in-out infinite alternate}
.lp-logo img{width:210px;display:block}
.lp-body{position:relative;z-index:1;max-width:560px;animation:rise .9s ease both}
.lp h1{font-size:clamp(34px,3.6vw,56px);font-weight:400;margin-bottom:14px}
.lp-sub{font-size:clamp(16px,1.4vw,20px);color:#b9c7c2;font-weight:400;margin-bottom:40px}
.sso{display:flex;align-items:center;gap:26px;padding:16px 28px;margin-bottom:20px;border:1px solid rgba(255,255,255,.25);border-radius:16px;background:rgba(255,255,255,.02);font-size:19px;font-weight:400;transition:.3s}
.sso span{flex:1}
.sso .arr{width:24px;height:24px;transition:transform .3s}
.sso:hover,.sso:focus-visible{border-color:var(--g);background:rgba(63,224,165,.07);box-shadow:0 0 26px rgba(63,224,165,.22);transform:translateY(-2px)}
.sso:hover .arr{transform:translateX(5px);color:var(--g)}
.lp-up{margin-top:38px;font-size:18px;font-weight:400}
.lp-up a{color:var(--g);margin-left:4px}.lp-up a:hover{text-decoration:underline}
.lp-foot{position:relative;z-index:1;font-size:14px;font-weight:400}
.lp-links{display:flex;flex-wrap:wrap;gap:12px 26px;margin-bottom:18px}
.lp-foot a:hover{color:var(--g)}
.lp-foot p{color:#c5d0cc}
.rp{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:44px 6%;color:#1b2420}
.rp-bg{position:absolute;inset:0;background:url(../assets/images/login-landscape.webp) center bottom/cover no-repeat;animation:zoom 22s ease-in-out infinite alternate}
.rp::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(6,14,12,.62) 0,rgba(6,14,12,.38) 45%,rgba(6,14,12,.1) 70%,rgba(6,14,12,.45) 100%)}
.rp>*:not(.rp-bg){position:relative;z-index:2}
.rp-top,.rp-bot{display:flex;align-items:center;gap:20px;justify-content:flex-end;font-size:13px;letter-spacing:.25em;font-weight:500}
.rp-top{color:#fff}.rp-bot{color:#e8f1ee}
.rp-top i,.rp-bot i{width:52px;height:1px;background:var(--g)}
.rp-mid{text-align:center;margin-top:-6%;animation:rise 1.1s .2s ease both}
.rp-mid img{width:min(52%,420px);display:block;margin:0 auto 22px;filter:drop-shadow(0 4px 24px rgba(0,0,0,.35))}
.rp-mid p{font-size:clamp(16px,1.7vw,24px);font-weight:500;color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.4)}
@keyframes rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes zoom{to{transform:scale(1.07)}}
@keyframes ring{to{transform:scale(1.15) rotate(8deg)}}
@media(max-width:900px){.login-page{overflow:auto}.login{grid-template-columns:1fr}.rp{display:none}.lp{padding:36px 24px;gap:48px;min-height:100dvh}.lp::after{opacity:.6}}
