*{box-sizing:border-box}body{margin:0;min-height:100vh;min-height:100svh;color:#17333c;font-family:Inter,"Segoe UI",Arial,sans-serif;background:#18392e url('/assets/login-farm.png') center center/cover no-repeat fixed}body:before{content:"";position:fixed;inset:0;background:linear-gradient(90deg,rgba(6,28,24,.78),rgba(6,28,24,.27) 65%,rgba(6,28,24,.2));z-index:-1}.login-layout{min-height:100vh;min-height:100svh;max-width:1440px;margin:auto;padding:44px 6vw;display:grid;grid-template-columns:1fr 440px;align-items:center;gap:70px}.intro{color:white;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;padding:8px 0}.brand{display:flex;gap:13px;align-items:center;color:white;text-decoration:none;font-size:21px;letter-spacing:1px}.brand-icon{font-size:27px;border:1px solid #ffffff70;border-radius:12px;padding:10px;letter-spacing:-3px}.brand b{font-weight:750}.brand small{display:block;font-size:9px;letter-spacing:2.8px;margin-top:6px;color:#d3e5db}.intro-copy{padding:65px 0}.eyebrow{font-size:11px;letter-spacing:2.2px;color:#cfe7d6}.intro h1{font-size:clamp(40px,4.8vw,68px);line-height:1.12;letter-spacing:-2px;margin:20px 0;font-weight:650}.intro p{font-size:17px;line-height:1.8;color:#e3eee5}.sectors{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.sectors span{border:1px solid #ffffff50;padding:8px 13px;border-radius:30px;font-size:10px;letter-spacing:1.6px;background:#ffffff0b}.intro-foot{color:#d6e2dc;font-size:11px;letter-spacing:.8px}.login-card{background:rgba(255,255,255,.97);padding:38px;border:1px solid #ffffffa0;border-radius:22px;box-shadow:0 25px 80px #001b2450;width:100%;backdrop-filter:blur(16px)}.step-line{display:flex;gap:12px;align-items:center;color:#8b999d;font-size:11px;font-weight:650;margin-bottom:32px}.step-line i{flex:1;height:1px;background:#dce5e3}.step-line .current{color:#166448}.step-line .done{color:#587967}.login-card h2{font-size:27px;letter-spacing:-.8px;margin:0 0 12px;line-height:1.2}.subtitle{font-size:14px;line-height:1.7;color:#677a80;margin:0 0 25px}.main-form label{display:block;font-size:12px;font-weight:650;margin-bottom:9px}.main-form input{display:block;width:100%;font:inherit;font-size:15px;border:1px solid #d2ddda;border-radius:10px;background:white;color:#17333c;padding:14px 15px;min-height:51px;outline:none}.main-form input:focus{border-color:#2d8060;box-shadow:0 0 0 3px #28744e18}.primary{display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;border-radius:10px;padding:16px 17px;background:#174d3b;color:white;font-size:14px;font-weight:650;cursor:pointer;width:100%;margin-top:20px;min-height:51px}.primary:hover{background:#103d2e}button:focus-visible,a:focus-visible{outline:3px solid #589c7d;outline-offset:3px}button:disabled{opacity:.65;cursor:wait}.hint{font-size:11px;line-height:1.7;color:#7a898c;margin:16px 0 0}.card-footer{border-top:1px solid #e3eae7;margin-top:28px;padding-top:21px;font-size:10px;color:#7c8c8e;display:flex;align-items:center;gap:8px}.lock{color:#367c5e;font-size:13px}.message{padding:12px 14px;border-radius:9px;font-size:12px;line-height:1.6;margin-bottom:20px;overflow-wrap:anywhere}.error{background:#fff0ec;color:#a83226;border:1px solid #f1d1c7}.success{background:#edf6ef;color:#286443;border:1px solid #d1e5d7}.email-summary{padding:13px 15px;border:1px solid #e0e8e4;border-radius:10px;background:#f5f8f6;margin-bottom:23px}.email-summary span{display:block;font-size:10px;color:#778984;margin-bottom:5px}.email-summary strong{font-size:13px;overflow-wrap:anywhere}.text-button{border:0;background:none;padding:0;color:#246e50;font-size:12px;font-weight:650;cursor:pointer;min-height:32px}.email-summary form{margin:4px 0 0}.otp-input{letter-spacing:12px;text-align:center;font-size:25px!important;font-variant-numeric:tabular-nums;padding-left:26px!important}.main-form small{display:block;color:#7a898c;font-size:11px;margin-top:9px;line-height:1.6}.resend-form{margin-top:20px;font-size:12px;color:#6e7f81;display:flex;align-items:center;gap:7px;flex-wrap:wrap}@media(max-width:900px){.login-layout{gap:30px;padding:32px;grid-template-columns:1fr 410px}.intro h1{font-size:44px}.intro p{font-size:14px}}@media(max-width:700px){body{background-attachment:scroll}.login-layout{grid-template-columns:1fr;gap:24px;padding:24px 20px;max-width:500px}.intro-copy,.intro-foot{display:none}.intro{padding:0}.brand{font-size:18px}.brand-icon{font-size:22px;padding:8px}.login-card{padding:28px 24px;border-radius:17px}.login-card h2{font-size:25px}.step-line{margin-bottom:25px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
