.enrollment-section{background:linear-gradient(#f7f7f5,#fff)}.enrollment-layout{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(340px,1fr);align-items:start;gap:32px}.enrollment-card,.enrollment-form,.enrollment-summary,.payment-brick-card{background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:24px}.enrollment-summary{min-width:0;padding:28px;position:sticky;top:92px}.enrollment-card h1,.enrollment-summary h1{color:var(--color-primary);overflow-wrap:break-word;hyphens:auto;margin-top:0;font-size:clamp(1.1rem,2.2vw,1.55rem);line-height:1.18}.enrollment-form h2{color:var(--color-primary);margin-top:0;font-size:clamp(1rem,1.8vw,1.35rem)}.enrollment-summary p{color:var(--color-muted);font-size:.88rem;line-height:1.42}.enrollment-note{border-left:4px solid var(--color-brand);padding-left:14px;font-weight:700}.enrollment-form{display:grid;gap:16px;padding:28px}.enrollment-form fieldset,.enrollment-form label{color:var(--color-primary);display:grid;gap:8px;font-weight:800}.enrollment-form input,.enrollment-form select{width:100%;color:var(--color-primary);background:#fff;border:1px solid rgb(38 38 38/.16);border-radius:14px;padding:12px 14px;font-weight:500}.enrollment-form fieldset{border:1px solid rgb(38 38 38/.12);border-radius:18px;padding:18px}.enrollment-form legend{color:var(--color-brand);padding:0 8px;font-weight:900}.enrollment-form .checkbox-field{color:var(--color-muted);grid-template-columns:auto 1fr;align-items:flex-start;font-style:normal;font-weight:600}.enrollment-form .checkbox-field input{width:auto;margin-top:3px}.enrollment-card{text-align:center;padding:34px}.enrollment-status-card{display:grid;gap:14px}.form-message{font-size:.875rem;line-height:1.4}.form-message--error{color:#b42318}.cpf-lookup-message--success{color:var(--color-accent)}.cpf-lookup-message--error{color:#b42318}.cpf-lookup-message--loading{color:var(--color-muted)}.enrollment-progress-panel{text-align:left;background:linear-gradient(#fff,#f7f7f5);border:1px solid rgb(38 38 38/.08);border-radius:18px;display:grid;gap:16px;padding:18px}.enrollment-progress-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0;padding:0;list-style:none}.enrollment-progress-step{display:grid;gap:6px;padding:14px;color:#6b747b;background:#fff;border:1px solid rgb(38 38 38/.1);border-radius:16px}.enrollment-progress-step span{width:28px;height:28px;color:var(--color-primary);background:#e8eef1;border-radius:999px;place-items:center;font-weight:900;display:inline-grid}.enrollment-progress-step strong{color:var(--color-primary)}.enrollment-progress-step small{color:var(--color-muted);line-height:1.35}.enrollment-progress-step--done{background:#effaf5;border-color:rgb(19 144 91/.25)}.enrollment-progress-step--done span{color:#fff;background:#13905b}.enrollment-progress-step--active{background:#fff7f0;border-color:rgb(229 228 0/.38);box-shadow:0 10px 28px rgb(229 228 0/.12)}.enrollment-progress-step--active span{background:var(--color-brand);color:#fff}.payment-brick-card{padding:28px;position:relative}.payment-processing-overlay{position:absolute;inset:0;display:grid;place-items:center;background:rgb(255 255 255/.88);border-radius:24px;padding:24px}.payment-processing-card{display:grid;gap:8px;text-align:center;max-width:320px}.payment-processing-spinner{width:28px;height:28px;margin:0 auto;border:3px solid rgb(38 38 38/.12);border-top:3px solid var(--color-brand);border-radius:999px;animation:enrollment-spin .8s linear infinite}@keyframes enrollment-spin{to{transform:rotate(1turn)}}@media (max-width:960px){.enrollment-layout,.enrollment-progress-steps{grid-template-columns:1fr}.enrollment-summary{position:static}}