:root{--purple: #7363A4;--purple-dark: #4F4380;--purple-deep: #2B2452;--purple-night: #1B1636;--orange: #F18131;--cyan: #00B4E1;--purple-soft: #ECE9F5;--orange-soft: #FDEBDD;--cyan-soft: #DDF4FB;--ink: #1F1A38;--muted: #6B6785;--line: #E3E0EE;--bg: #F8F7FC;--white: #FFFFFF;--error: #D64545;--success: #1F9D6B;--font-head: "Quicksand", "Trebuchet MS", system-ui, sans-serif;--font-body: "Nunito Sans", "Segoe UI", system-ui, sans-serif;--font-quote: "Lora", Georgia, "Times New Roman", serif;--radius-lg: 22px;--radius-md: 10px;--shadow-card: 0 30px 70px -30px rgba(43, 36, 82, .3), 0 2px 8px rgba(43, 36, 82, .05);--btn-gradient: linear-gradient(90deg, var(--purple) 0%, #4E86C9 55%, var(--cyan) 100%)}*,*:before,*:after{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:var(--font-body);font-size:16px;line-height:1.5;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:var(--purple)}:focus-visible{outline:3px solid var(--cyan);outline-offset:2px;border-radius:6px}.page{position:relative;min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:1.1fr .9fr;overflow:hidden;overflow:clip}.brand-side,.form-side{position:relative;padding:56px clamp(24px,5vw,96px)}.form-side{display:flex;flex-direction:column;align-items:center;justify-content:center}.back-link{position:absolute;top:40px;right:clamp(24px,4vw,56px);z-index:3;display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px;text-decoration:none;color:var(--purple)}.back-link img{width:18px;height:18px}.back-link:hover{color:var(--orange)}.brand-copy{position:relative;z-index:2}.logo{width:280px;height:auto}.logo-plate .logo{width:230px}.eyebrow{margin:64px 0 14px;font-family:var(--font-head);font-weight:700;font-size:15px;letter-spacing:.22em;text-transform:uppercase;color:var(--purple)}.hero-title{margin:0 0 18px;font-family:var(--font-head);font-weight:700;font-size:clamp(42px,5vw,72px);line-height:1.04;letter-spacing:-.02em}.hero-sub{max-width:28ch;margin:0 0 40px;font-size:clamp(18px,1.7vw,24px);line-height:1.4;color:var(--muted)}.features{list-style:none;margin:0;padding:0;display:grid;gap:22px}.features li{display:flex;align-items:center;gap:18px}.feature-icon{flex:0 0 58px;width:58px;height:58px;display:grid;place-items:center;border-radius:50%}.feature-icon img{width:26px;height:26px}.features strong{display:block;font-family:var(--font-head);font-weight:700;font-size:18px}.features span{font-size:15.5px;color:var(--muted)}.bg-purple{background:var(--purple-soft)}.bg-cyan{background:var(--cyan-soft)}.bg-orange{background:var(--orange-soft)}.bg-mix{background:#efe9f6}.tagline{display:flex;align-items:center;gap:18px;margin-top:64px;font-size:13.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.tagline:before{content:"";flex:0 0 38px;height:2px;background:linear-gradient(90deg,var(--orange),var(--purple))}.quote{margin:0;font-family:var(--font-quote);font-style:italic;font-size:30px;line-height:1.25;color:var(--muted)}.quote .line2{display:block;padding-left:22px}.quote cite{display:flex;align-items:center;gap:12px;margin-top:16px;padding-left:22px;font-family:var(--font-body);font-style:normal;font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.quote cite:before{content:"";width:16px;height:1px;background:currentColor}.login-card{position:relative;z-index:2;width:100%;max-width:540px;padding:60px 56px 40px;background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.card-kicker{margin:0 0 10px;font-size:15px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.card-title{margin:0 0 14px;font-family:var(--font-head);font-weight:700;font-size:46px;line-height:1.05;letter-spacing:-.01em}.card-sub{max-width:34ch;margin:0 0 34px;font-size:18px;color:var(--muted)}.field{margin-bottom:22px}.field label{display:block;margin-bottom:9px;font-weight:700;font-size:16px}.input-wrap{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:16px;width:22px;height:22px;pointer-events:none}.input-wrap input{width:100%;height:56px;padding:0 52px;font:inherit;color:var(--ink);background:var(--white);border:1.5px solid var(--line);border-radius:var(--radius-md);transition:border-color .2s,box-shadow .2s}.input-wrap input::placeholder{color:#9a96af}.input-wrap input:focus{outline:none;border-color:var(--purple);box-shadow:0 0 0 4px #7363a426}.field.has-error input{border-color:var(--error)}.error-text{display:none;margin:6px 0 0;font-size:13.5px;color:var(--error)}.field.has-error .error-text{display:block}.toggle-pass{position:absolute;right:8px;width:40px;height:40px;display:grid;place-items:center;padding:0;border:0;border-radius:8px;background:transparent;cursor:pointer}.toggle-pass:hover{background:var(--purple-soft)}.toggle-pass img{width:22px;height:22px}.toggle-pass .eye-off,.toggle-pass[aria-pressed=true] .eye{display:none}.toggle-pass[aria-pressed=true] .eye-off{display:block}.row-between{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 28px;font-size:16px}.check,.link-forgot{white-space:nowrap}.check{display:inline-flex;align-items:center;gap:10px;cursor:pointer}.check input{width:19px;height:19px;accent-color:var(--purple);cursor:pointer}.link-forgot{font-weight:600;color:var(--purple)}.link-forgot:hover{color:var(--orange)}.btn-login{width:100%;height:60px;display:inline-flex;align-items:center;justify-content:center;gap:12px;border:0;border-radius:12px;font-family:var(--font-head);font-size:20px;font-weight:700;color:var(--white);background:var(--btn-gradient);background-size:150% 100%;cursor:pointer;box-shadow:0 14px 28px -14px #7363a4b3;transition:background-position .4s ease,transform .15s ease}.btn-login:hover{background-position:100% 0}.btn-login:active{transform:scale(.99)}.btn-login .btn-arrow{width:22px;height:22px}.btn-login[disabled]{opacity:.85;cursor:progress}.btn-login .spinner{display:none;width:20px;height:20px;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.btn-login.is-loading .spinner{display:block}.btn-login.is-loading .btn-arrow{display:none}@keyframes spin{to{transform:rotate(360deg)}}.form-message{display:none;margin:16px 0 0;padding:12px 14px;border-radius:10px;font-size:14.5px}.form-message.is-error{display:block;background:#fbeaea;color:var(--error)}.form-message.is-success{display:block;background:#e5f6ef;color:var(--success)}.card-help{margin:32px 0 0;padding-top:26px;border-top:1px solid var(--line);text-align:center;font-size:16px;color:var(--muted)}.card-help a{font-weight:700;text-decoration:none}.card-help a:hover{color:var(--orange)}.page--cms{background:radial-gradient(45% 55% at 48% 40%,#F0ECFA 0%,transparent 70%),radial-gradient(35% 40% at 95% 95%,#E4F6FC 0%,transparent 70%),var(--bg)}.cms-feather{position:absolute;z-index:1;top:8%;right:-40px;width:auto;height:84%;max-width:none;pointer-events:none}.page--cms .quote{position:absolute;z-index:2;right:0;bottom:18%}.page--pms .brand-side{color:var(--white);background-color:var(--purple-night);background-image:url(/images/login/team-office.png);background-size:cover;background-position:right center;background-repeat:no-repeat}.page--pms .brand-side:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(27,22,54,.55) 0%,rgba(27,22,54,.15) 60%,transparent 100%),linear-gradient(180deg,rgba(115,99,164,.18) 0%,transparent 60%);pointer-events:none}.page--pms .eyebrow{color:var(--white);margin-top:44px}.page--pms .hero-sub{color:#d6d0ee;max-width:32ch}.page--pms .features strong{color:var(--white)}.page--pms .features span{color:#c3bce0}.page--pms .feature-icon{border-radius:14px;box-shadow:0 10px 22px -10px #0009}.page--pms .bg-purple{background:linear-gradient(135deg,#8A7AC0,var(--purple))}.page--pms .bg-cyan{background:linear-gradient(135deg,#3fcbee,#0099c4)}.page--pms .bg-orange{background:linear-gradient(135deg,#F7A060,var(--orange))}.page--pms .bg-mix{background:linear-gradient(135deg,var(--orange),var(--purple))}.page--pms .tagline{color:#d6d0ee}.page--pms .form-side{background:var(--bg)}.pms-wave{position:absolute;z-index:0;right:0;bottom:0;width:46%;max-width:460px;pointer-events:none}.page--pms .quote{position:relative;z-index:2;align-self:center;width:100%;max-width:540px;margin-top:44px;padding-left:24px;font-size:27px}@media(min-width:1001px){.brand-side,.form-side{padding-top:clamp(22px,5.2vh,56px);padding-bottom:clamp(22px,5.2vh,56px)}.back-link{top:clamp(14px,3.7vh,40px)}.logo{width:clamp(170px,26vh,280px)}.logo-plate .logo{width:clamp(150px,21vh,230px)}.eyebrow{margin:clamp(16px,5.9vh,64px) 0 clamp(8px,1.3vh,14px);font-size:clamp(13px,1.4vh,15px)}.page--pms .eyebrow{margin-top:clamp(14px,4vh,44px)}.hero-title{font-size:clamp(34px,min(5vw,6.8vh),72px);margin-bottom:clamp(10px,1.7vh,18px)}.hero-sub{font-size:clamp(16px,min(1.7vw,2.3vh),24px);margin-bottom:clamp(16px,3.7vh,40px)}.features{gap:clamp(10px,2vh,22px)}.feature-icon{flex-basis:clamp(40px,5.4vh,58px);width:clamp(40px,5.4vh,58px);height:clamp(40px,5.4vh,58px)}.feature-icon img{width:clamp(20px,2.4vh,26px);height:clamp(20px,2.4vh,26px)}.features strong{font-size:clamp(15.5px,1.7vh,18px)}.features span{font-size:clamp(13.5px,1.45vh,15.5px)}.tagline{margin-top:clamp(18px,5.9vh,64px)}.login-card{padding:clamp(26px,5.5vh,60px) clamp(32px,4vw,56px) clamp(22px,3.7vh,40px)}.card-kicker{font-size:clamp(13px,1.4vh,15px);margin-bottom:clamp(4px,.9vh,10px)}.card-title{font-size:clamp(32px,4.3vh,46px);margin-bottom:clamp(8px,1.3vh,14px)}.card-sub{font-size:clamp(15.5px,1.7vh,18px);margin-bottom:clamp(16px,3.1vh,34px)}.field{margin-bottom:clamp(12px,2vh,22px)}.field label{margin-bottom:clamp(5px,.8vh,9px);font-size:clamp(14.5px,1.5vh,16px)}.input-wrap input{height:clamp(44px,5.2vh,56px)}.row-between{margin-bottom:clamp(16px,2.6vh,28px);font-size:clamp(14.5px,1.5vh,16px)}.btn-login{height:clamp(46px,5.6vh,60px);font-size:clamp(17px,1.85vh,20px)}.card-help{margin-top:clamp(14px,3vh,32px);padding-top:clamp(12px,2.4vh,26px);font-size:clamp(14.5px,1.5vh,16px)}.page--pms .quote{margin-top:clamp(16px,4vh,44px);font-size:clamp(20px,2.5vh,27px)}}@media(min-width:1001px)and (max-width:1200px){.form-side{padding-left:28px;padding-right:28px}.login-card{padding-left:32px;padding-right:32px}}@media(min-width:1001px)and (max-height:820px){.page--pms .quote,.page--cms .quote{display:none}}@media(max-width:1280px){.cms-feather{right:-120px;opacity:.8}.page--cms .quote{display:none}}@media(max-width:1000px){.page{grid-template-columns:1fr}.brand-side{padding-bottom:36px}.eyebrow{margin-top:40px}.features{grid-template-columns:1fr 1fr;gap:18px 24px}.tagline{margin-top:36px}.form-side{padding-top:24px;padding-bottom:64px}.back-link{position:static;align-self:flex-end;margin-bottom:20px}.cms-feather{top:auto;bottom:-40px;right:-80px;height:70%;opacity:.35}}@media(min-width:601px)and (max-width:1000px){.page{grid-template-rows:auto 1fr}.brand-side{padding:clamp(22px,3vh,40px) 40px clamp(16px,2vh,24px)}.form-side{padding:0 40px clamp(16px,2.4vh,40px);justify-content:center}.logo{width:clamp(160px,17vh,220px)}.logo-plate .logo{width:clamp(140px,14vh,190px)}.eyebrow{margin:clamp(12px,2vh,24px) 0 6px;font-size:13px}.hero-title{font-size:clamp(32px,4vh,46px);margin-bottom:8px}.hero-sub{max-width:none;font-size:17px;margin-bottom:clamp(14px,2vh,24px)}.page--pms .hero-sub{max-width:none}.features{gap:10px 24px}.feature-icon{flex-basis:42px;width:42px;height:42px}.feature-icon img{width:20px;height:20px}.features li{gap:12px}.features strong{font-size:15.5px}.features span{font-size:13.5px}.tagline{display:none}.back-link{position:static;align-self:flex-end;margin:0 0 8px}.login-card{max-width:560px;padding:clamp(26px,3.4vh,44px) 40px clamp(22px,2.6vh,32px)}.card-kicker{font-size:13px;margin-bottom:4px}.card-title{font-size:clamp(30px,3.6vh,40px);margin-bottom:8px}.card-sub{font-size:16px;margin-bottom:clamp(16px,2.4vh,28px)}.field{margin-bottom:12px}.field label{margin-bottom:5px;font-size:15px}.input-wrap input{height:48px}.row-between{margin-bottom:18px;font-size:15px}.btn-login{height:50px;font-size:18px}.card-help{margin-top:14px;padding-top:14px;font-size:15px}.page--pms .quote{display:none}.pms-wave{width:38%}}@media(max-width:600px){.brand-side,.form-side{padding-left:18px;padding-right:18px}.logo{width:210px}.logo-plate .logo{width:180px}.features{grid-template-columns:1fr}.login-card{padding:36px 22px 28px}.card-title{font-size:34px}.card-kicker{font-size:13px}.card-sub{font-size:16px}.row-between{font-size:14.5px}.page--pms .quote{font-size:22px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
