@import url('assets/fonts/fonts.css');
:root{--navy:#14263d;--blue:#315e83;--champagne:#c6a66b;--canvas:#f7f5f0;--ink:#202a35;--muted:#64707a;--border:#d7dbdc;--error:#a02f32;--green:#28715f;--font-body:'DM Sans',sans-serif;--font-heading:'Manrope',sans-serif;color-scheme:light;font-family:var(--font-body);color:var(--ink);background:var(--canvas);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input,summary{touch-action:manipulation}button,summary{cursor:pointer}button:disabled{cursor:wait}a{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible,input[type=checkbox]:focus-visible{outline:3px solid var(--champagne);outline-offset:5px}::selection{background:#e9d8b4;color:var(--navy)}input{caret-color:var(--blue)}[hidden]{display:none!important}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:fixed;left:12px;top:12px;transform:translateY(-200%);background:var(--canvas);padding:10px 16px;z-index:3;border-radius:5px}.skip-link:focus{transform:translateY(0)}
.login-layout{display:grid;grid-template-columns:minmax(0,48%) minmax(0,52%);min-height:100svh}.brand-panel{background:var(--navy);color:#fff;padding:46px clamp(30px,5vw,84px) 34px;display:flex;flex-direction:column;min-height:820px}.wordmark{display:flex;align-items:center;gap:13px;text-decoration:none;width:fit-content}.brand-symbol{font-family:Georgia,serif;font-style:italic;font-size:56px;line-height:1;color:var(--champagne);margin-top:-5px}.wordmark strong{font-family:var(--font-heading);font-size:32px;font-weight:700;letter-spacing:-1px;line-height:1;display:block}.wordmark small{font-size:12px;color:#bdcbdc;display:block;margin-top:7px}.brand-story{margin:auto 0;padding:68px 0 62px}.brand-story h1{font-family:var(--font-heading);font-size:clamp(35px,3.7vw,58px);font-weight:500;letter-spacing:-.035em;line-height:1.22;margin:0 0 23px}.brand-story>p{font-size:15px;color:#c3d0df;line-height:1.85;margin:0;max-width:43ch}.journey{display:grid;gap:32px;margin-top:49px;position:relative}.journey:before{content:'';position:absolute;left:14px;top:23px;bottom:23px;width:1px;background:#3d4c5e}.journey-step{display:flex;gap:17px;align-items:center;position:relative;font-size:14px;color:#f0f3f7}.journey-step small{display:block;font-size:12px;color:#aebfd3;margin-top:5px}.journey-mark{width:29px;height:29px;border:1px solid #57687a;border-radius:50%;background:var(--navy);display:grid;place-items:center;flex-shrink:0}.journey-mark.completed{background:var(--champagne);border-color:var(--champagne);color:var(--navy)}.journey-mark svg{width:15px;height:15px;stroke-width:2}.journey-mark.current{border-color:var(--champagne)}.journey-mark.current span{width:7px;height:7px;background:var(--champagne);border-radius:50%}.brand-footer{display:flex;align-items:center;gap:13px;color:#aebfd3;font-size:12px}.footer-line{height:1px;width:28px;background:var(--champagne)}
.access-panel{display:flex;flex-direction:column;align-items:center;position:relative;padding:39px clamp(24px,5vw,80px) 26px;min-width:0}.demo-label{align-self:flex-end;display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px;white-space:nowrap}.demo-label>span{width:5px;height:5px;background:var(--champagne);border-radius:50%}.access-content{width:100%;max-width:374px;margin:auto 0;padding:60px 0 55px}.access-heading{margin-bottom:34px}.access-heading h2{font-family:var(--font-heading);font-size:32px;font-weight:600;letter-spacing:-.035em;line-height:1.3;margin:0 0 10px}.access-heading p{font-size:14px;line-height:1.7;color:var(--muted);margin:0}.field-group{margin-bottom:24px}label:not(.remember-control){display:block;font-size:13px;font-weight:500;margin-bottom:9px}.input-wrap{display:flex;align-items:center;position:relative;background:#fff;border:1px solid var(--border);border-radius:7px;transition:border-color .15s,box-shadow .15s}.input-wrap:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #315e8312}.input-wrap:has([aria-invalid=true]){border-color:var(--error)}.input-wrap>svg{margin-left:15px;color:#7b8792;width:17px;height:17px}.input-wrap input{width:100%;min-width:0;padding:15px 13px;border:0;background:transparent;outline:none;font-size:14px;line-height:22px;color:var(--ink);border-radius:7px}.input-wrap input::placeholder{color:#697580}.input-wrap input:-webkit-autofill{-webkit-text-fill-color:var(--ink);box-shadow:0 0 0 1000px #fff inset}.password-toggle{display:grid;place-items:center;align-self:stretch;width:48px;flex-shrink:0;border:0;background:transparent;color:#6e7a85;border-radius:0 7px 7px 0}.password-toggle:hover{background:#f3f5f6;color:var(--navy)}.password-toggle:focus-visible{outline:2px solid var(--blue);outline-offset:-5px}.password-toggle svg{width:18px;height:18px}.field-error{font-size:12px;color:var(--error);margin:8px 0 0;line-height:1.5}.remember-control{display:flex;align-items:center;gap:9px;font-size:13px;color:#55616e;width:fit-content;min-height:28px;margin-top:-4px;margin-bottom:26px;cursor:pointer}.remember-control input{accent-color:var(--blue);width:16px;height:16px;margin:0;cursor:pointer}.sign-in-button{display:flex;align-items:center;justify-content:center;gap:12px;min-height:52px;width:100%;border:0;border-radius:7px;background:var(--navy);color:#fff;font-size:14px;font-weight:500;padding:13px 18px;transition:background .15s}.sign-in-button:hover{background:#25445f}.sign-in-button:active{background:#0e1d2f}.sign-in-button:disabled{background:#53647a}.sign-in-button svg{width:18px;height:18px}.spinner{width:16px;height:16px;border:2px solid #ffffff55;border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.form-error{background:#fff0ef;border:1px solid #ebccca;padding:12px 14px;border-radius:6px;font-size:13px;line-height:1.6;color:var(--error);margin:0 0 17px}.demo-details{margin-top:26px;border-top:1px solid #e0e1dc;padding-top:20px;color:var(--muted);font-size:12px}.demo-details summary{width:fit-content;line-height:1.8;list-style-position:inside}.demo-details summary:hover{color:var(--navy)}.demo-credentials{margin-top:15px;padding:15px;background:#eeeee8;border-radius:6px}.demo-credentials p{margin:0 0 12px}.demo-credentials dl{margin:0}.demo-credentials dt{font-size:12px;font-weight:500;margin-top:11px;color:var(--ink)}.demo-credentials dd{margin:4px 0 0;font-size:13px;overflow-wrap:anywhere;color:#465564;user-select:all}.demo-credentials .demo-note{margin:14px 0 0;font-size:12px}.access-footer{display:flex;gap:12px;justify-content:space-between;width:100%;font-size:12px;color:var(--muted);line-height:1.7}.access-footer span:last-child{text-align:right}.success-mark{width:52px;height:52px;border-radius:50%;background:#e1eee7;display:grid;place-items:center;color:var(--green);margin-bottom:24px}.success-mark svg{width:25px;height:25px;stroke-width:2}.success-view .access-heading{margin-bottom:26px}.success-view h2:focus{outline:none}.account-summary{margin:0;border-top:1px solid #dfe1da}.account-summary>div{padding:16px 0;border-bottom:1px solid #dfe1da}.account-summary dt{font-size:12px;color:var(--muted);margin-bottom:5px}.account-summary dd{margin:0;font-size:14px;overflow-wrap:anywhere}.success-note{font-size:13px;color:var(--muted);line-height:1.8;margin:23px 0}.login-layout.reveal .brand-story{animation:arrive .5s cubic-bezier(.16,1,.3,1) both}@keyframes spin{to{transform:rotate(360deg)}}@keyframes arrive{from{transform:translateY(7px)}to{transform:translateY(0)}}
@media(min-width:1500px){.brand-panel{padding-left:max(80px,calc((100vw - 1360px)/2))}.access-panel{padding-right:max(80px,calc((100vw - 1360px)/2))}}
@media(max-width:1000px){.brand-panel{padding:37px 35px 30px}.brand-story h1{font-size:39px}.desktop-break{display:none}.access-panel{padding:32px 35px 25px}.access-footer{flex-direction:column;gap:2px}.access-footer span:last-child{text-align:left}}
@media(max-width:700px){.login-layout{grid-template-columns:1fr}.brand-panel{min-height:0;padding:25px 27px 31px}.wordmark strong{font-size:27px}.brand-symbol{font-size:46px}.wordmark small{font-size:12px;margin-top:4px}.brand-story{margin:0;padding:30px 0 0}.brand-story h1{font-size:32px;line-height:1.2;margin-bottom:13px}.brand-story>p{font-size:13px;line-height:1.7;max-width:40ch}.journey,.brand-footer{display:none}.access-panel{padding:23px 27px 24px;min-height:590px;align-items:center}.demo-label{align-self:flex-start;font-size:12px}.access-content{padding:37px 0 40px;margin:0;max-width:420px}.access-heading{margin-bottom:27px}.access-heading h2{font-size:28px}.field-group{margin-bottom:22px}.access-footer{max-width:420px;flex-direction:row;flex-wrap:wrap;gap:7px;font-size:12px}.access-footer span:last-child{text-align:left}.input-wrap input{font-size:16px}.remember-control{min-height:36px}.demo-details summary{min-height:35px;display:list-item;padding:5px 0}.success-view{margin:auto 0}.login-layout:has(.success-view:not([hidden])) .brand-story{display:none}.login-layout:has(.success-view:not([hidden])) .brand-panel{padding-bottom:25px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.spinner{border-top-color:#fff}}
