/* Cadastro empresarial: progressao funcional, sem decoracao generica. */
.signup-page{--signup-dark:#11131a;--signup-dark-soft:#1b1e28;--signup-paper:#f5f3ed;--signup-accent:#7255df;--signup-accent-soft:#e7e0ff;background:var(--signup-paper)}
.signup-topbar{background:var(--signup-paper);border-bottom:1px solid #d7d4cb}.signup-topbar .brand{font-size:1.18rem}.signup-login{min-height:44px;padding:8px 14px}
.signup-layout{grid-template-columns:minmax(350px,.82fr) minmax(520px,1.18fr);min-height:calc(100vh - 85px)}
.signup-story{position:relative;display:flex;flex-direction:column;overflow:hidden;padding:clamp(50px,6vw,88px) clamp(36px,5vw,78px);background:var(--signup-dark);color:#f8f6ff}
.signup-story:after{content:"";position:absolute;right:-86px;bottom:88px;width:150px;height:150px;border:1px solid #343847;border-radius:42px;transform:rotate(18deg);pointer-events:none}
.signup-story-copy{position:relative;z-index:1;max-width:540px}.signup-story .eyebrow{margin:0 0 20px;color:#bdaeff;font-size:.7rem;letter-spacing:.16em}.signup-story h1{max-width:10ch;margin-bottom:22px;font-size:clamp(3.1rem,5.5vw,5.35rem);line-height:.94;letter-spacing:-.062em}.signup-story-copy>p{max-width:38ch;margin:0;color:#c8cbd6;font-size:1.04rem;line-height:1.65}
.signup-rail{position:relative;z-index:1;display:grid;gap:0;max-width:510px;margin:clamp(42px,6vh,76px) 0 0;padding:0;list-style:none}.signup-rail:before{content:"";position:absolute;left:24px;top:25px;bottom:25px;width:1px;background:#393d4b}
.signup-stage{position:relative;display:grid;grid-template-columns:50px minmax(0,1fr);gap:17px;align-items:center;min-height:86px;color:#898e9d}.stage-number{z-index:1;width:50px;height:50px;display:grid;place-items:center;border:1px solid #484d5d;border-radius:15px;background:var(--signup-dark);font-size:.78rem;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;transition:background-color 180ms cubic-bezier(.16,1,.3,1),border-color 180ms cubic-bezier(.16,1,.3,1),color 180ms cubic-bezier(.16,1,.3,1),transform 180ms cubic-bezier(.16,1,.3,1)}
.stage-copy{display:grid;gap:3px}.stage-copy strong{color:#a7abb7;font-size:1rem;line-height:1.2}.stage-copy small{font-size:.82rem;line-height:1.4}.signup-stage[aria-current="step"] .stage-number{border-color:#9d86f4;background:var(--signup-accent);color:#fff;transform:scale(1.04)}.signup-stage[aria-current="step"] .stage-copy strong{color:#fff}.signup-stage[aria-current="step"] .stage-copy small{color:#d7d0ef}.signup-stage[data-state="complete"] .stage-number{border-color:#686f82;background:var(--signup-dark-soft);color:#fff}.signup-stage[data-state="complete"] .stage-copy strong{color:#d5d7df}
.signup-boundary{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:auto 0 0;padding-top:34px;border-top:1px solid #303441}.signup-boundary div{padding:0 16px;border-left:1px solid #303441}.signup-boundary div:first-child{padding-left:0;border-left:0}.signup-boundary dt{margin-bottom:4px;color:#7f8492;font-size:.66rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.signup-boundary dd{margin:0;color:#e3e5eb;font-size:.78rem;font-weight:680;line-height:1.35}
.signup-form-wrap{display:flex;align-items:flex-start;padding:clamp(38px,5vw,68px) clamp(28px,6vw,96px);background:var(--signup-paper)}.signup-panel{width:min(100%,760px);max-width:none;margin:0;padding:0;border:0;background:transparent;box-shadow:none}.signup-panel .eyebrow{margin-top:28px;color:#6c50ce}.signup-title{max-width:none;margin:8px 0 10px;font-size:clamp(2.3rem,4vw,3.55rem);line-height:1;letter-spacing:-.055em}.signup-intro{max-width:55ch;margin-bottom:32px;color:#5a5c57;font-size:1rem;line-height:1.55}
.signup-progress{display:grid;grid-template-columns:auto minmax(100px,1fr);gap:18px;align-items:center;color:#555852;font-size:.76rem;font-weight:760;letter-spacing:.04em;text-transform:uppercase}.signup-progress-track{height:4px;overflow:hidden;border-radius:999px;background:#dcd8ce}.signup-progress-fill{display:block;width:100%;height:100%;border-radius:inherit;background:var(--signup-accent);transform:scaleX(.3333);transform-origin:left center;transition:transform 220ms cubic-bezier(.16,1,.3,1)}
.signup-step{min-width:0;margin:0;padding:0;border:0}.signup-step legend{width:100%;margin:0 0 20px;padding:0 0 13px;border-bottom:1px solid #d8d4cb;color:#1d1e1a;font-size:1.05rem;font-weight:790;letter-spacing:-.01em}.signup-panel .form-grid{gap:0 18px}.signup-panel .field{margin-bottom:19px}.signup-panel .field-wide{grid-column:1/-1}.signup-panel .field label{font-size:.9rem}.signup-panel .field input,.signup-panel .field select{min-height:55px;border:1px solid #878a83;border-radius:10px;background:#fffefa;box-shadow:0 1px 0 #ffffff inset}.signup-panel .field input:hover,.signup-panel .field select:hover{border-color:#555951}.signup-panel .field input:focus,.signup-panel .field select:focus{border-color:#6548c8;outline:3px solid #765ce02c}.signup-panel .field small{font-size:.78rem;line-height:1.45}
.signup-actions{display:flex;justify-content:space-between;gap:12px;margin-top:14px;padding-top:22px;border-top:1px solid #d8d4cb}.signup-actions-end{justify-content:flex-end}.signup-actions button{min-width:190px}.signup-actions .secondary{border-color:#8d8f88;background:transparent}.signup-actions .secondary:hover{background:#e9e6dd}.signup-actions button:not(.secondary){box-shadow:0 8px 20px #4430941c}.signup-actions button:not(.secondary):active{transform:translateY(1px) scale(.99)}
.operation-grid{display:grid;grid-template-columns:minmax(190px,.58fr) minmax(280px,1.42fr);gap:24px;align-items:start}.signup-review{margin:0;border:1px solid #d2cec5;border-radius:13px;background:#fffefa}.signup-review div{display:grid;grid-template-columns:115px minmax(0,1fr);gap:15px;padding:13px 15px;border-top:1px solid #e3dfd6}.signup-review div:first-child{border-top:0}.signup-review dt{color:#6a6d66;font-size:.74rem;font-weight:710}.signup-review dd{overflow-wrap:anywhere;margin:0;color:#1f211d;font-size:.82rem;font-weight:730}.signup-consent{margin:22px 0 0;padding:17px;border:1px solid #d2cec5;border-radius:13px;background:#fffefa;font-size:.83rem;line-height:1.5}.signup-consent a{color:#5439b4;font-weight:720}.signup-panel .form-footnote{margin:22px 0 0;color:#62655f;font-size:.84rem;text-align:center}.signup-panel .form-footnote a{font-weight:730}
.signup-step.is-entering{animation:signup-step-in 210ms cubic-bezier(.16,1,.3,1) both}@keyframes signup-step-in{from{opacity:0;filter:blur(3px);transform:translateY(8px)}to{opacity:1;filter:blur(0);transform:none}}
@media(max-width:980px){.signup-layout{grid-template-columns:1fr}.signup-story{min-height:auto;padding:34px 28px}.signup-story:after,.signup-boundary{display:none}.signup-story h1{max-width:16ch;font-size:2.7rem}.signup-story-copy>p{max-width:60ch}.signup-rail{grid-template-columns:repeat(3,1fr);max-width:none;margin:30px 0 0}.signup-rail:before{left:25px;right:calc(33.333% - 25px);top:25px;bottom:auto;width:auto;height:1px}.signup-stage{grid-template-columns:50px minmax(0,1fr);min-height:62px}.stage-copy small{display:none}.signup-form-wrap{padding:36px 28px 58px}.signup-panel{margin:auto}}
@media(max-width:680px){.signup-topbar .signup-login{display:none}.signup-story{padding:28px 18px}.signup-story h1{font-size:2.45rem}.signup-story-copy>p{font-size:.94rem}.signup-rail{gap:6px;margin-top:26px}.signup-rail:before{display:none}.signup-stage{display:grid;grid-template-columns:1fr;justify-items:center;gap:7px;min-width:0;min-height:74px;text-align:center}.stage-number{width:42px;height:42px;border-radius:12px}.stage-copy{display:block;min-width:0}.stage-copy strong{font-size:.78rem;white-space:nowrap}.signup-form-wrap{padding:28px 16px 48px}.signup-title{font-size:2.25rem}.signup-panel .form-grid,.operation-grid{grid-template-columns:1fr}.signup-actions{display:grid;grid-template-columns:1fr}.signup-actions button{width:100%;min-width:0}.signup-actions .secondary{order:2}.signup-review{margin-top:2px}.signup-progress{gap:12px}.signup-consent{padding:14px}.signup-panel .field-wide{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.signup-step.is-entering{animation:none!important}.stage-number,.signup-progress-fill{transition:none!important}}
