/* Full-screen existing fleet background; one responsive login card. */
:root{--navy:#071f35;--navy2:#0d3455;--gold:#c9941f;--gold2:#e3b54b;--muted:#68798a;--line:#dce5eb}
*{box-sizing:border-box}body{margin:0;font:16px 'DM Sans',sans-serif;color:var(--navy);background:var(--navy) url('hero-fleet.png') center/cover no-repeat fixed}
.page{position:relative;isolation:isolate;min-height:100vh;min-height:100svh;display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,430px);gap:clamp(32px,5vw,86px);padding:36px clamp(24px,5vw,80px)}
.page:before{content:"";position:fixed;z-index:-1;inset:0;background:linear-gradient(135deg,rgba(4,25,43,.9),rgba(5,31,52,.48),rgba(5,31,52,.18));pointer-events:none}
.visual{position:relative;min-width:0;color:#fff;display:flex;flex-direction:column;justify-content:space-between;gap:32px}
.brand{display:flex;align-items:center;gap:11px}.visual .brand{min-height:64px}.mark{width:47px;height:52px}.brand b{font:800 21px/1 'Manrope',sans-serif}.brand small{display:block;font-size:8px;letter-spacing:.08em;margin-top:5px}
.visual-copy{max-width:540px;margin:auto 0}.kicker{color:var(--gold2);font-weight:800;letter-spacing:.08em;font-size:14px}.visual h1{font:800 clamp(38px,4.5vw,65px)/1.04 'Manrope',sans-serif;margin:14px 0 18px;letter-spacing:-.04em}.visual p{font-size:18px;line-height:1.6;color:rgba(255,255,255,.82);max-width:520px}.visual-foot{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;font-weight:700;line-height:1.6}
.panel{min-width:0;display:flex;align-items:center;justify-content:center}.login-card{width:100%;max-width:430px;padding:28px 30px;background:#fff;border:1px solid rgba(255,255,255,.7);border-radius:17px;box-shadow:0 22px 70px rgba(0,13,26,.25)}
.login-company-brand{justify-content:center;min-height:64px;margin:0 0 16px}.login-company-brand img{width:auto;max-width:200px!important;height:64px!important;max-height:64px;object-fit:contain}
.login-card h2{font:800 30px/1.2 'Manrope',sans-serif;margin:0 0 7px;text-align:center}.sub{color:var(--muted);margin:0 0 22px;font-size:13px;text-align:center;line-height:1.5}.field{margin-bottom:14px}.field label{display:block;font-size:12px;font-weight:800;margin-bottom:7px}
.input{display:block;width:100%;height:46px;border:1px solid var(--line);border-radius:8px;padding:0 12px;outline:none;background:#fbfcfd;font:inherit;font-size:14px;color:var(--navy)}.input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,148,31,.12)}select.input{cursor:pointer}.password-wrap{position:relative}.password-wrap .input{padding-right:65px}.password-wrap button{position:absolute;right:9px;top:6px;height:34px;padding:0 8px;border:0;border-radius:5px;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-size:12px;font-weight:700}
.row{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;margin:4px 0 19px;flex-wrap:wrap}.check{display:flex;align-items:center;gap:7px;cursor:pointer}.check input{width:15px;height:15px;flex:0 0 15px;margin:0;accent-color:var(--navy)}
.login-btn{display:flex;justify-content:center;align-items:center;width:100%;min-height:48px;padding:11px 14px;border:0;border-radius:8px;background:var(--navy2);color:#fff;font:inherit;font-weight:800;font-size:14px;cursor:pointer;box-shadow:0 5px 14px rgba(7,31,53,.12)}.login-btn:hover{background:var(--navy)}.login-btn:disabled{opacity:.65;cursor:wait}
.back{display:block;margin:19px 0 0;color:var(--navy2);font-size:12px;font-weight:700;text-decoration:none;text-align:center;line-height:1.5}.back:hover{text-decoration:underline}.demo{margin-top:16px;padding:11px 13px;background:#f4f7f9;border-radius:8px;color:#617283;font-size:11px;line-height:1.6}.demo b{color:var(--navy)}.error{display:none;background:#fff1f1;color:#b83737;padding:10px 12px;border-radius:8px;margin-bottom:15px;font-size:12px;line-height:1.5}.copyright{text-align:center;margin-top:18px;color:#8796a3;font-size:10px;line-height:1.5}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(201,148,31,.6);outline-offset:3px}
@media(max-width:1000px){.page{padding:28px;gap:28px;grid-template-columns:minmax(0,1fr) minmax(320px,390px)}.visual h1{font-size:42px}.visual p{font-size:16px}.visual-foot{gap:8px;font-size:11px}.login-card{padding:25px}}
@media(max-width:820px),(max-device-width:820px){body{background-attachment:scroll}.page{grid-template-columns:1fr;padding:24px 18px;gap:0;align-content:center}.visual{display:none}.panel{width:100%;justify-content:center}.login-card{max-width:400px;padding:25px 24px}.login-card h2{font-size:28px}.login-company-brand{margin-bottom:14px}.copyright{font-size:10px}}
@media(max-width:360px){.page{padding:14px 10px}.login-card{padding:21px 18px}.row{font-size:11px;gap:8px}.login-card h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
