@font-face{font-family:Poppins;src:url('assets/poppins-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Poppins;src:url('assets/poppins-medium.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Poppins;src:url('assets/poppins-semibold.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Poppins;src:url('assets/poppins-bold.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}

:root{--dantas-red:#7A0000;--dantas-red-soft:#9E1C1C;--ivory:#F5F0E8;--deep-black:#1A1A1A;--sand:#D4C9B2;--graphite:#3D3D3D;--ink-secondary:#6B635C;--ink-muted:#898077;--dark-muted:#AEA89D;--dark-line:rgba(212,201,178,.2);--input-bg:#EEE8DE;--input-border:rgba(61,61,61,.16);--input-hover:rgba(61,61,61,.35);--focus:rgba(122,0,0,.22);--radius:8px;--ease:cubic-bezier(.23,1,.32,1)}
*{box-sizing:border-box}
html,body{margin:0;min-width:320px;min-height:100%;background:var(--ivory)}
body{font-family:Poppins,Arial,sans-serif;color:var(--deep-black);-webkit-font-smoothing:antialiased}
button,input{font:inherit}
button{cursor:pointer}
button,input{outline:none}
button:focus-visible,input:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
button{transition:background-color .16s var(--ease),color .16s var(--ease),transform .16s var(--ease)}
button:active{transform:scale(.98)}
button:disabled{opacity:.55;cursor:not-allowed}
.access-layout{display:grid;grid-template-columns:53% 47%;min-height:100svh}
.brand-panel{min-height:1000px;background:var(--deep-black);color:var(--ivory);display:flex;flex-direction:column;padding:64px 80px 48px 88px}
.brand{display:flex;align-items:center;gap:20px}
.brand__symbol{display:block;position:relative;overflow:hidden;width:66px;height:44px;flex:none;filter:brightness(0) invert(1);opacity:.96}.brand__symbol img{position:absolute;width:104px;height:104px;max-width:none;left:-20.8px;top:-29.5px}
.brand__wordmark{display:flex;flex-direction:column;line-height:1;gap:9px;border-left:1px solid rgba(245,240,232,.3);padding-left:20px}
.brand__name{font-size:23px;font-weight:500;letter-spacing:6px}
.brand__descriptor{font-size:10px;letter-spacing:6px;color:var(--sand)}
.brand-story{margin:auto 0;transform:translateY(-4px)}
.eyebrow{font-size:14px;font-weight:500;letter-spacing:2.4px}
.brand-story__eyebrow{display:flex;gap:12px;align-items:center;color:var(--sand);margin:0 0 24px}
.brand-story__eyebrow span{display:block;width:24px;height:2px;background:var(--dantas-red-soft)}
.brand-story h2{font-size:46px;font-weight:500;line-height:1.18;letter-spacing:-1.6px;margin:0;text-wrap:balance}
.brand-story__description{font-size:18px;font-weight:400;line-height:1.9;color:var(--dark-muted);margin:24px 0 0;text-wrap:pretty}
.journey{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:64px;gap:24px}
.journey__track{display:flex;align-items:center;gap:12px;margin-bottom:20px}
.journey__number{font-size:14px;font-weight:500;letter-spacing:1px;color:var(--sand);font-variant-numeric:tabular-nums}
.journey__line{height:1px;background:var(--dark-line);flex:1}
.journey__line--last{background:var(--dantas-red-soft)}
.journey h3{font-size:19px;font-weight:500;margin:0 0 8px;letter-spacing:-.2px}
.journey p{font-size:14px;color:var(--dark-muted);line-height:1.7;margin:0}
.opportunity{display:flex;align-items:center;gap:16px;margin-top:40px;padding:24px 0;border-top:1px solid var(--dark-line);border-bottom:1px solid var(--dark-line)}
.opportunity__icon{width:40px;height:40px;display:grid;place-items:center;color:var(--sand);background:rgba(212,201,178,.065);border-radius:8px;flex:none}
.opportunity__copy{display:flex;flex-direction:column;gap:5px}
.opportunity__copy strong{font-size:14px;font-weight:500;line-height:1.5}
.opportunity__copy span{font-size:14px;color:var(--dark-muted)}
.opportunity__status{margin-left:auto;display:flex;align-items:center;gap:7px;font-size:14px;font-weight:400;white-space:nowrap;color:var(--sand)}
.opportunity__status>span{width:5px;height:5px;border-radius:50%;background:var(--sand)}
.brand-footer{display:flex;gap:16px;justify-content:space-between;align-items:center;font-size:14px;color:var(--dark-muted)}
.brand-footer__edition{font-size:14px;letter-spacing:1.2px;color:var(--sand)}
.login-panel{position:relative;display:flex;justify-content:center;align-items:center;min-height:1000px;padding:80px 72px 112px}
.login-shell{width:100%;max-width:416px}
.product-label{font-size:14px;font-weight:600;letter-spacing:3px;color:var(--dantas-red);display:flex;gap:10px;align-items:center;margin-bottom:24px}
.product-label__mark{height:12px;width:3px;background:var(--dantas-red);display:block}
.login-shell h1{font-size:48px;line-height:1.2;letter-spacing:-1.8px;font-weight:500;margin:0}
.login-intro{font-size:16px;line-height:1.9;color:var(--ink-secondary);margin:20px 0 40px}
.login-form{display:flex;flex-direction:column;gap:24px}
.field label{font-size:14px;font-weight:500;display:block;margin-bottom:8px}
.field__control{display:flex;position:relative;align-items:center;background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius);height:56px;transition:border-color .16s var(--ease)}
.field__control:hover{border-color:var(--input-hover)}
.field__control:focus-within{border-color:var(--dantas-red);outline:3px solid var(--focus);outline-offset:2px}
.field__control input{min-width:0;width:100%;height:100%;border:0;background:transparent;border-radius:var(--radius);color:var(--deep-black);font-size:14px;padding:16px 16px 16px 48px}
.field__control input::placeholder{color:var(--ink-muted);opacity:1}
.field__control input:focus-visible{outline:none}
.field__icon{color:var(--ink-muted);position:absolute;left:16px;pointer-events:none}
.field__control:has(.password-toggle) input{padding-right:52px}
.password-toggle{color:var(--ink-muted);position:absolute;right:6px;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:4px;background:transparent}
.password-toggle:hover{color:var(--dantas-red);background:rgba(122,0,0,.04)}
.password-toggle[aria-pressed=true]{color:var(--dantas-red)}
.field__error{font-size:14px;line-height:1.6;margin:8px 0 0;color:var(--dantas-red)}
.field__control:has([aria-invalid=true]){border-color:var(--dantas-red)}
.remember{display:flex;align-items:center;gap:10px;min-height:44px;align-self:flex-start;margin-top:-12px;margin-bottom:-8px;font-size:14px;color:var(--ink-secondary);cursor:pointer}
.remember input{appearance:none;width:16px;height:16px;flex:none;margin:0;border:1px solid rgba(61,61,61,.3);border-radius:3px;background:transparent;display:grid;place-items:center;cursor:pointer}
.remember input:checked{background:var(--dantas-red);border-color:var(--dantas-red)}
.remember input:checked::after{content:'';width:7px;height:4px;border-left:1.5px solid var(--ivory);border-bottom:1.5px solid var(--ivory);transform:rotate(-45deg) translateY(-1px)}
.remember:hover input{border-color:var(--dantas-red)}
.submit-button{height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:var(--dantas-red);color:var(--ivory);border:0;border-radius:var(--radius);font-size:16px;font-weight:500;letter-spacing:.1px}
.submit-button:hover{background:var(--dantas-red-soft)}
.form-message{background:rgba(122,0,0,.055);border-left:2px solid var(--dantas-red);font-size:14px;line-height:1.8;color:var(--graphite);padding:12px 16px;margin:0}
.form-message[hidden],.field__error[hidden]{display:none}
.access-help{border-top:1px solid var(--input-border);padding-top:24px;margin-top:32px;font-size:14px;line-height:1.7}
.access-help>span{font-weight:500;color:var(--graphite)}
.access-help p{color:var(--ink-secondary);margin:3px 0 0}
.demo-note{position:absolute;bottom:48px;left:32px;right:32px;display:flex;gap:8px;align-items:center;justify-content:center;font-size:14px;color:var(--ink-muted);white-space:nowrap}
.demo-note>svg{color:var(--ink-secondary)}

@media(min-width:1700px){.brand-panel{padding-left:112px;padding-right:104px}.brand-story h2{font-size:52px}.brand-story__description{font-size:19px}.journey p{font-size:14px}.opportunity__copy strong{font-size:16px}.opportunity__copy span,.opportunity__status{font-size:14px}}
@media(max-width:1350px) and (min-width:1001px){.brand-panel{padding:48px}.brand-story h2{font-size:40px;letter-spacing:-1.4px}.brand-story__description{font-size:16px}.journey{gap:16px}.journey p{font-size:14px}.opportunity{gap:12px}.opportunity__status{font-size:14px}.login-panel{padding-left:48px;padding-right:48px}.login-shell h1{font-size:44px}.brand-footer__edition{display:none}}
@media(max-width:1000px){.access-layout{grid-template-columns:44% 56%}.brand-panel{padding:40px 32px;min-height:850px}.brand-story h2{font-size:36px;letter-spacing:-1.2px}.brand-story__description{font-size:14px;line-height:1.9}.desktop-break{display:none}.journey{grid-template-columns:1fr;gap:24px;margin-top:40px}.journey__step{display:grid;grid-template-columns:24px 1fr;gap:0 16px;align-items:center}.journey__track{grid-row:span 2;margin:0;align-self:start;padding-top:4px}.journey__line{display:none}.journey h3{font-size:17px;margin:0}.journey p{font-size:14px;margin-top:4px}.opportunity{display:none}.brand-footer{font-size:14px}.brand-footer__edition{display:none}.brand__symbol{width:48px;height:32px}.brand__symbol img{width:77px;height:77px;left:-15.4px;top:-22px}.brand{gap:12px}.brand__wordmark{padding-left:12px;gap:7px}.brand__name{font-size:16px;letter-spacing:4px}.brand__descriptor{font-size:8px;letter-spacing:4px}.login-panel{min-height:850px;padding:64px 40px 112px}.login-shell h1{font-size:44px}.login-intro{font-size:14px}}
@media(max-width:700px){.access-layout{display:flex;flex-direction:column}.brand-panel{min-height:0;padding:28px 28px 32px}.brand{gap:12px}.brand__symbol{width:48px;height:32px}.brand__wordmark{gap:6px}.brand__name{font-size:16px}.brand__descriptor{font-size:7px}.brand-story{margin:32px 0 0;transform:none}.brand-story__eyebrow{font-size:14px;letter-spacing:1.5px;gap:8px;margin-bottom:16px}.brand-story__eyebrow span{width:16px}.brand-story h2{font-size:30px;line-height:1.2;letter-spacing:-.8px}.brand-story__description{font-size:14px;line-height:1.8;max-width:320px;margin-top:16px}.journey,.brand-footer{display:none}.login-panel{display:block;min-height:0;padding:40px 28px 100px}.login-shell{max-width:440px;margin:0 auto}.product-label{font-size:14px;letter-spacing:2.5px;margin-bottom:16px}.login-shell h1{font-size:35px;line-height:1.2;letter-spacing:-1px}.login-shell h1 br{display:none}.login-intro{font-size:14px;margin:16px 0 28px;max-width:340px}.login-form{gap:20px}.field__control{height:56px}.field label{font-size:14px}.field__control input{font-size:14px}.remember{font-size:14px;margin-top:-8px}.submit-button{font-size:16px}.access-help{margin-top:28px;padding-top:20px}.demo-note{bottom:32px;left:16px;right:16px;font-size:14px;gap:6px}}
@media(prefers-reduced-motion:reduce){button,.field__control{transition:none}button:active{transform:none}}

/* Estados de acesso usados pela integração e na galeria de aprovação. */
.form-message[data-state=rejected],.form-message[data-state=limited],.form-message[data-state=unavailable]{color:var(--dantas-red)}
.login-form[aria-busy=true] .submit-button{background:var(--graphite);opacity:.8}
