/* Login page – Commercial Assessment Portal */
*{box-sizing:border-box}
:root{--navy:#0b2447;--navy-2:#0f2a55;--ink:#13254a;--muted:#5d6b82;--line:#d6deea;--gold:#f5b82e;--blue:#2563eb}
html,body{margin:0;min-height:100%}
.lg-body{font:15px/1.5 Inter,system-ui,sans-serif;color:#fff;background:#0b2447;min-height:100vh;position:relative;overflow-x:hidden}

/* Background: real photo if present, otherwise sunset gradient */
.lg-bg{position:fixed;inset:0;z-index:0;
  background:
    radial-gradient(ellipse at 58% 62%,rgba(255,170,60,.95) 0,rgba(240,130,50,.55) 18%,rgba(30,70,140,0) 45%),
    linear-gradient(180deg,#0d2b5c 0%,#1d4a8a 35%,#3d6aa8 55%,#c8803f 72%,#1a2c4c 100%)}
.has-photo .lg-bg{background:url("../images/login-bg.jpg") center/cover no-repeat}
.lg-bg:after{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(8,26,56,.94) 0%,rgba(8,26,56,.78) 35%,rgba(8,26,56,.15) 62%,rgba(8,26,56,0) 75%),
             linear-gradient(0deg,rgba(8,26,56,.85) 0%,rgba(8,26,56,0) 40%)}

.lg-wrap{position:relative;z-index:1;min-height:100vh;max-width:1320px;margin:0 auto;padding:40px 56px;
  display:grid;grid-template-columns:minmax(0,1fr) 410px;gap:56px;align-items:center}

/* Left panel */
.lg-rule{display:block;width:64px;height:3px;background:var(--gold);border-radius:2px;margin-bottom:18px}
.lg-kicker{margin:0 0 20px;font-size:17px;color:#e6edf8}
.lg-intro h1{font:800 clamp(32px,3.6vw,50px)/1.08 "Plus Jakarta Sans",Inter,sans-serif;margin:0 0 22px;max-width:620px;letter-spacing:-.01em}
.lg-intro h1 em{font-style:normal;color:var(--gold);display:block}
.lg-lead{font-size:clamp(15px,1.25vw,18px);line-height:1.6;color:#e6edf8;max-width:580px;margin:0 0 26px}

.lg-features{list-style:none;padding:24px 0 30px;margin:0;border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18);
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;max-width:820px}
.lg-features b{display:block;font-size:14.5px;font-weight:600;margin:12px 0 4px;line-height:1.35}
.lg-features small{display:block;font-size:13px;color:#cfd9ea;line-height:1.5}
.lg-ico{display:grid;place-items:center;width:52px;height:52px;border-radius:10px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(4px)}
.lg-ico svg,.lg-trust svg{width:26px;height:26px;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

.lg-trust{list-style:none;padding:28px 0 0;margin:0;display:flex;flex-wrap:wrap;gap:0}
.lg-trust li{display:flex;align-items:center;gap:14px;padding-right:30px;margin-right:30px;border-right:1px solid rgba(255,255,255,.22);font-size:15px;color:#e6edf8;line-height:1.4}
.lg-trust li:last-child{border:0;margin:0;padding:0}
.lg-trust svg{width:34px;height:34px}

/* Card */
.lg-card{background:#fff;color:var(--ink);border-radius:14px;padding:36px 36px 22px;box-shadow:0 30px 70px rgba(4,16,40,.45)}
.lg-card h2{font:800 28px/1.2 "Plus Jakarta Sans",Inter,sans-serif;color:var(--navy);margin:0 0 6px;letter-spacing:-.015em}
.lg-sub{color:var(--muted);font-size:14.5px;line-height:1.55;margin:0 0 22px}
.lg-card label[for]{display:block;font-weight:600;font-size:14px;color:var(--ink);margin:0 0 7px}
.lg-alert{background:#fff1f1;border:1px solid #f3c3c3;color:#a52222;border-radius:8px;padding:10px 14px;font-size:14px;margin-bottom:18px}

.lg-field{position:relative;display:flex;align-items:center;margin-bottom:18px}
.lg-field>svg{position:absolute;left:14px;width:18px;height:18px;fill:none;stroke:#7a879c;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.lg-field input{width:100%;height:46px;border:1px solid var(--line);border-radius:8px;padding:0 44px 0 42px;font:inherit;font-size:14.5px;color:var(--ink);background:#fff;transition:border-color .15s,box-shadow .15s}
.lg-field input::placeholder{color:#8792a5}
.lg-field input:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 3px rgba(37,99,235,.15)}
.lg-field.is-bad input{border-color:#e05252}
.lg-eye{position:absolute;right:6px;width:34px;height:34px;border:0;background:none;border-radius:6px;cursor:pointer;display:grid;place-items:center}
.lg-eye svg{width:19px;height:19px;fill:none;stroke:#5d6b82;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.lg-eye .eye-on,.lg-eye.on .eye-off{display:none}.lg-eye.on .eye-on{display:block}
.lg-eye:focus-visible{outline:2px solid var(--blue)}

.lg-row{display:flex;justify-content:space-between;align-items:center;margin:-2px 0 20px;font-size:14px}
.lg-row a{color:var(--blue);text-decoration:none;font-weight:500}.lg-row a:hover{text-decoration:underline}
.lg-check{display:flex;align-items:center;gap:9px;cursor:pointer;color:var(--ink)}
.lg-check input{position:absolute;opacity:0;width:1px;height:1px}
.lg-check span{width:18px;height:18px;border:1.5px solid #42506a;border-radius:4px;display:grid;place-items:center;transition:.15s}
.lg-check input:checked+span{background:var(--navy);border-color:var(--navy)}
.lg-check input:checked+span:after{content:"";width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg) translate(-1px,-1px)}
.lg-check input:focus-visible+span{outline:2px solid var(--blue);outline-offset:2px}

.lg-btn{width:100%;height:48px;border:0;border-radius:6px;background:var(--navy);color:#fff;font:600 16px Inter,sans-serif;cursor:pointer;
  display:flex;align-items:center;justify-content:center;gap:12px;transition:background .15s,transform .05s}
.lg-btn svg{width:18px;height:18px;fill:none;stroke:#fff;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .15s}
.lg-btn:hover{background:#12336a}.lg-btn:hover svg{transform:translateX(3px)}.lg-btn:active{transform:translateY(1px)}

.lg-help{display:flex;align-items:center;gap:14px;margin:28px 0 0;padding:14px 18px;background:#eaf3fd;border-radius:8px;text-decoration:none;color:var(--ink)}
.lg-help b{display:block;font-size:14.5px;font-weight:600}
.lg-help small{display:block;font-size:12.5px;color:var(--muted)}
.lg-help span{flex:1}
.lg-help-ico{width:30px;height:30px;fill:none;stroke:var(--navy);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.lg-help-arrow{width:20px;height:20px;fill:none;stroke:var(--blue);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .15s}
.lg-help:hover .lg-help-arrow{transform:translateX(3px)}

.lg-legal{margin-top:20px;padding-top:16px;border-top:1px solid #e3e8f0;display:flex;justify-content:center;gap:14px;font-size:12.5px;color:#9aa5b8}
.lg-legal a{color:#4c5a72;text-decoration:none}.lg-legal a:hover{color:var(--blue)}

/* Short viewports (e.g. 1080p laptops at 125-150% scaling) */
@media (min-width:961px) and (max-height:760px){
  .lg-wrap{padding-top:24px;padding-bottom:24px}
  .lg-card{padding:28px 32px 18px}
  .lg-sub{margin-bottom:18px}
  .lg-field{margin-bottom:14px}
  .lg-field input{height:42px}
  .lg-btn{height:44px}
  .lg-help{margin-top:20px;padding:12px 16px}
  .lg-legal{margin-top:14px;padding-top:12px}
}

/* Responsive */
@media (max-width:1200px){
  .lg-wrap{grid-template-columns:minmax(0,1fr) 390px;padding:32px 40px;gap:40px}
  .lg-features{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lg-card{padding:32px 30px 20px}
}
@media (max-width:960px){
  .lg-wrap{grid-template-columns:1fr;padding:32px 20px;gap:32px}
  .lg-card{order:-1;max-width:520px;width:100%;margin:0 auto}
  .lg-bg:after{background:linear-gradient(180deg,rgba(8,26,56,.6),rgba(8,26,56,.92))}
  .lg-features{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:520px){
  .lg-wrap{padding:16px}
  .lg-card{padding:32px 22px 22px}
  .lg-card h2{font-size:26px}
  .lg-sub{font-size:14px}
  .lg-help{margin:24px 0 0;padding:14px}
  .lg-features{grid-template-columns:1fr}
  .lg-trust li{border:0;margin:0 0 14px;padding:0;width:100%}
}
