:root{--login-ink:#17231d;--login-green:#294f3d;--login-sage:#a9b6a5;--login-paper:#f4f2ed;--login-line:#d8d5cd;--login-muted:#6f746f}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body.oso-login{font-family:Cairo,Tahoma,sans-serif;background:var(--login-paper);color:var(--login-ink)}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(380px,.85fr) minmax(520px,1.15fr)}.login-panel{display:flex;flex-direction:column;padding:clamp(28px,5vw,72px);background:#fff}.login-brand{display:flex;align-items:center;justify-content:space-between}.login-brand img{width:145px;max-height:70px;object-fit:contain;mix-blend-mode:multiply}.login-brand span{font:700 11px Manrope,Arial;letter-spacing:.19em;color:#7a807b}.login-card{width:min(100%,500px);margin:auto}.login-eyebrow{display:block;font:700 11px Manrope,Arial;letter-spacing:.2em;color:#727a73;margin-bottom:15px}.login-card h1{font-size:clamp(36px,4vw,56px);line-height:1.15;letter-spacing:-.04em;margin:0 0 12px}.login-card>p{font-size:16px;line-height:1.8;color:var(--login-muted);margin:0 0 34px}.login-errors{padding:13px 15px;background:#f9e7e5;border-right:3px solid #a94b43;color:#853c36;margin-bottom:20px;font-size:14px}.login-form{display:grid;gap:18px}.login-field label{display:block;font-size:13px;font-weight:700;margin-bottom:8px}.input-wrap{position:relative}.input-wrap svg{position:absolute;inset-inline-start:15px;top:50%;width:20px;transform:translateY(-50%);fill:none;stroke:#778079;stroke-width:1.8}.input-wrap input{width:100%;min-height:58px;border:1px solid var(--login-line);border-radius:9px;background:#fafaf8;color:var(--login-ink);padding:13px 48px 13px 15px;font:500 16px Cairo,sans-serif;outline:none;transition:.2s}.input-wrap input:focus{border-color:var(--login-green);box-shadow:0 0 0 4px #294f3d12;background:#fff}.login-submit{min-height:58px;border:0;border-radius:9px;background:var(--login-ink);color:#fff;font:700 15px Cairo,sans-serif;cursor:pointer;margin-top:3px;transition:.2s}.login-submit:hover{background:var(--login-green);transform:translateY(-1px)}.login-hint{display:flex;justify-content:space-between;gap:20px;margin-top:25px;padding-top:20px;border-top:1px solid var(--login-line);font-size:12px;color:var(--login-muted)}.login-hint a{color:var(--login-green);font-weight:700;text-decoration:none}.login-visual{position:relative;overflow:hidden;background:#1a2921;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(34px,6vw,82px);color:#fff}.login-visual:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#17231d30,#17231de8),url('/media/brand/website-hero-banner.png') center/cover no-repeat;opacity:.72}.login-visual>*{position:relative}.login-visual-top{font:700 12px Manrope,Arial;letter-spacing:.22em}.login-visual-copy{max-width:620px}.login-visual h2{font-size:clamp(42px,6vw,86px);line-height:1.08;letter-spacing:-.055em;margin:0 0 24px}.login-visual p{font-size:17px;line-height:2;color:#e2e8e3;max-width:520px}.login-features{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ffffff25;border:1px solid #ffffff25;margin-top:38px}.login-features div{background:#17231db8;padding:17px}.login-features b,.login-features span{display:block}.login-features b{font-size:15px}.login-features span{font-size:11px;color:#acbbb1;margin-top:4px}.login-footer{font-size:11px;color:#aebbb3}
@media(max-width:900px){.login-shell{grid-template-columns:1fr}.login-visual{display:none}.login-panel{min-height:100vh}.login-card{margin-block:auto}.login-brand img{width:125px}}
@media(max-width:480px){.login-panel{padding:24px 20px}.login-brand span{font-size:9px}.login-card h1{font-size:38px}.login-card>p{font-size:14px}.login-hint{flex-direction:column;gap:8px}}
