.c-steps{--n: 3;--num: 48px;list-style:none;padding:0;margin:0;display:grid;gap:var(--s-8);position:relative;counter-reset:passo}.c-steps__passo{position:relative;display:grid;grid-template-columns:var(--num) minmax(0,1fr);gap:var(--s-4);align-items:start}.c-steps__num{position:relative;z-index:1;display:inline-grid;place-items:center;width:var(--num);height:var(--num);border-radius:var(--r-full);background:#fff;color:var(--viola-700);border:2px solid var(--viola-200);font-weight:700;font-size:18px;font-variant-numeric:tabular-nums}.c-steps__num .i{width:22px;height:22px}.c-steps__corpo h3,.c-steps__corpo h4{font-size:var(--t-h4);line-height:var(--lh-h4);font-weight:600;margin-bottom:var(--s-1)}.c-steps__corpo p{color:var(--testo-2);font-size:var(--t-body-sm);line-height:var(--lh-body-sm)}.c-steps__corpo .c-badge{margin-top:var(--s-2)}.c-steps:before,.c-steps:after{content:"";position:absolute;z-index:0;left:calc(var(--num) / 2 - 1px);top:calc(var(--num) / 2);bottom:calc(var(--num) / 2);width:2px;border-radius:2px}.c-steps:before{background:var(--slate-200)}.c-steps:after{background:var(--viola-500);transform-origin:top;transform:scaleY(1)}@media(min-width:1024px){.c-steps{grid-template-columns:repeat(var(--n),minmax(0,1fr));gap:var(--s-6)}.c-steps--4{--n: 4}.c-steps--2{--n: 2}.c-steps--5{--n: 5}.c-steps__passo{grid-template-columns:minmax(0,1fr);gap:var(--s-4)}.c-steps:before,.c-steps:after{left:calc(var(--num) / 2);right:calc((100% - (var(--n) - 1) * var(--s-6)) / var(--n) - var(--num) / 2);top:calc(var(--num) / 2 - 1px);bottom:auto;width:auto;height:2px}.c-steps:after{transform-origin:left;transform:scaleX(1)}}.su-scuro .c-steps__num{background:var(--scuro-superficie);color:var(--viola-300);border-color:#ae92ff59}.su-scuro .c-steps:before{background:var(--scuro-bordo)}.su-scuro .c-steps__corpo p{color:var(--scuro-testo-2)}@media(prefers-reduced-motion:no-preference){.c-steps.is-in:after{animation:passi-linea-v 1.2s var(--ease) both}.c-steps.is-in .c-steps__num{animation:passi-num .5s var(--ease-out) both;animation-delay:calc(var(--i, 0) * .28s)}@media(min-width:1024px){.c-steps.is-in:after{animation-name:passi-linea-o}}}@keyframes passi-linea-v{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes passi-linea-o{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes passi-num{0%{transform:scale(1);background:#fff;color:var(--viola-700)}45%{transform:scale(1.12);background:var(--viola-600);color:#fff;border-color:var(--viola-600)}to{transform:scale(1)}}