@font-face{font-family:Montserrat;src:url('/fonts/montserrat-400.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url('/fonts/montserrat-600.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url('/fonts/montserrat-700.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url('/fonts/montserrat-800.ttf') format('truetype');font-weight:800;font-style:normal;font-display:swap}
*{box-sizing:border-box} :root{--navy:#000836;--blue:#003366;--mid:#193166;--gold:#ffff00;--gray:#808080;--ink:#000836;--muted:#808080}
body{margin:0;font-family:Montserrat,"Segoe UI",sans-serif;color:var(--ink);background:#f5f7fa}
.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.05fr) minmax(460px,.95fr)}
.brand-panel{position:relative;overflow:hidden;display:flex;align-items:center;padding:65px max(55px,8vw);color:#fff;background:linear-gradient(140deg,#000836 0%,#003366 55%,#193166 100%)}
.brand-panel:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 60%,rgba(242,204,24,.09)),radial-gradient(circle at 15% 85%,rgba(33,98,172,.42),transparent 35%)}
.light-orbit{position:absolute;width:430px;height:430px;border:1px solid rgba(242,204,24,.18);border-radius:50%;right:-230px;top:-135px;box-shadow:0 0 0 65px rgba(255,255,255,.018),0 0 0 130px rgba(255,255,255,.012)}
.brand-content{position:relative;z-index:1;max-width:570px}.ce-logo-login{display:block;width:138px;height:138px;object-fit:contain;border-radius:50%;filter:drop-shadow(0 18px 28px rgba(0,0,0,.28))}
.ce-seal strong{font-family:Georgia,serif;font-size:38px;line-height:1}.ce-seal span{font-size:8px;color:var(--gold);letter-spacing:1.4px;margin-top:6px}
.eyebrow{margin:30px 0 12px;color:var(--gold);font-size:11px;font-weight:800;letter-spacing:2.4px}.brand-panel h1{margin:0;font-family:Montserrat,sans-serif;font-size:52px;line-height:1.08;font-weight:700}.brand-panel h1 em{color:var(--gold);font-style:normal}.lead{max-width:520px;margin:22px 0 32px;color:#d8e2ef;font-size:16px;line-height:1.7}
.benefits{display:grid;gap:13px}.benefits>div{display:flex;gap:14px;align-items:center;padding:12px 0;border-top:1px solid rgba(255,255,255,.1)}.benefits>div>span{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(242,204,24,.55);border-radius:50%;color:var(--gold);font-size:10px}.benefits p{margin:0;display:flex;flex-direction:column}.benefits b{font-size:13px}.benefits small{margin-top:3px;color:#9fb1c9}
.form-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:45px;background:radial-gradient(circle at 100% 0,#eaf0f8,transparent 32%),#f7f8fa}.login-card{width:min(100%,440px);padding:42px;background:#fff;border:1px solid #e4e9f0;border-radius:20px;box-shadow:0 24px 70px rgba(16,34,68,.13)}
.secure-label{color:#003366;font-size:10px;font-weight:800;letter-spacing:1.6px;display:flex;align-items:center;gap:8px}.secure-label i{width:8px;height:8px;border-radius:50%;background:#ffff00;box-shadow:0 0 0 5px rgba(255,255,0,.18)}.login-card h2{margin:18px 0 7px;font-family:Montserrat,sans-serif;font-weight:700;color:var(--navy);font-size:34px}.intro{margin:0 0 28px;color:var(--muted);line-height:1.6;font-size:14px}
label{display:block;margin:15px 0 7px;font-size:12px;font-weight:750;color:#344054}.input-wrap{position:relative}.input-wrap input{width:100%;height:50px;border:1px solid #d6dde7;border-radius:10px;padding:0 48px 0 43px;font:inherit;color:var(--ink);background:#fbfcfe;transition:.2s}.input-wrap input:focus{outline:none;border-color:#486f9f;box-shadow:0 0 0 4px rgba(13,63,126,.1);background:#fff}.user-icon,.lock-icon{position:absolute;left:16px;top:17px;width:15px;height:15px;border:2px solid #7d8da5;z-index:1}.user-icon{border-radius:50%;height:10px}.user-icon:after{content:"";position:absolute;left:-4px;top:10px;width:19px;height:9px;border:2px solid #7d8da5;border-bottom:0;border-radius:12px 12px 0 0}.lock-icon{top:21px;height:12px;border-radius:3px}.lock-icon:before{content:"";position:absolute;left:2px;top:-9px;width:7px;height:8px;border:2px solid #7d8da5;border-bottom:0;border-radius:8px 8px 0 0}
#toggle-password{position:absolute;right:9px;top:9px;height:32px;border:0;background:transparent;color:#52647e;font-weight:700;cursor:pointer}.error{min-height:20px;margin:10px 0 0;color:#b42318;font-size:12px}.login-button{width:100%;height:52px;margin-top:8px;border:0;border-radius:10px;background:linear-gradient(120deg,var(--navy),var(--blue));color:#fff;font-weight:750;font-size:14px;display:flex;justify-content:center;align-items:center;gap:15px;cursor:pointer;box-shadow:0 10px 24px rgba(6,27,67,.2);transition:.2s}.login-button:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(6,27,67,.25)}.login-button b{color:var(--gold);font-size:20px}.login-button:disabled{opacity:.65;cursor:wait}
.trust{display:flex;gap:11px;margin-top:25px;padding-top:20px;border-top:1px solid #edf0f4}.trust p{margin:0;display:flex;flex-direction:column;font-size:12px}.trust small{margin-top:3px;color:#7d8da5}.form-panel footer{text-align:center;margin-top:25px;color:#53647b;font-size:11px;line-height:1.6}.form-panel footer small{color:#b29412}
@media(max-width:850px){.login-shell{grid-template-columns:1fr}.brand-panel{min-height:auto;padding:38px 25px}.brand-panel h1{font-size:36px}.benefits{display:none}.ce-logo-login{width:94px;height:94px}.eyebrow{margin-top:20px}.lead{margin-bottom:0}.form-panel{padding:30px 18px}.login-card{padding:30px 24px}}
