.ecom-steps{--steps-badge:var(--steps-badge-size,2.25rem);--steps-gap:var(--steps-item-gap,2rem)}.ecom-steps .ecom-steps__heading{margin-bottom:var(--steps-heading-mb,2rem);text-wrap:balance}.ecom-steps .ecom-steps__heading--lg{font-size:var(--steps-heading-lg,var(--heading-h1,3rem));line-height:var(--heading-h1-lh,1.1)}.ecom-steps__list{display:flex;flex-direction:column;gap:var(--steps-gap);list-style:none;margin:0 auto;max-width:var(--steps-max-w,60rem);padding:0}.ecom-steps__item{align-items:flex-start;display:flex;gap:var(--steps-badge-gap,1rem);position:relative}.ecom-steps__item:not(:last-child):before{background:repeating-linear-gradient(to bottom,var(--steps-line,#cfd8fe) 0 6px,transparent 6px 12px);content:"";height:calc(100% + var(--steps-gap));left:calc(var(--steps-badge)/2 - 1px);position:absolute;top:calc(var(--steps-badge)/2);width:2px}.ecom-steps__badge{align-items:center;background:var(--steps-badge-bg,#dee7f6);border-radius:50%;color:var(--color-accent);display:flex;flex-shrink:0;font-size:var(--steps-badge-font,1.125rem);font-variant-numeric:tabular-nums;font-weight:700;height:var(--steps-badge);justify-content:center;line-height:1;position:relative;width:var(--steps-badge);z-index:1}.ecom-steps__copy{display:flex;flex:1;flex-direction:column;gap:var(--steps-copy-gap,.75rem);min-width:0}.ecom-steps .ecom-steps__title{color:var(--text,var(--text-light));font-family:var(--font-body,inherit);font-size:var(--steps-title,1.125rem);font-weight:700;line-height:1.3;margin:0}.ecom-steps__desc{color:var(--text,var(--text-light));font-size:var(--steps-desc,.875rem);line-height:var(--steps-desc-lh,1.45)}.ecom-steps__desc a{color:var(--color-accent);text-decoration:underline}.ecom-steps__item--active .ecom-steps__badge{background:var(--color-accent);color:#fff}.ecom-steps__item--active .ecom-steps__copy{background:var(--steps-active-bg,#e1e8fc);border-radius:var(--radius-lg,.75rem);padding:var(--steps-active-p,1rem)}.ecom-steps .ecom-steps__item--active .ecom-steps__title{color:var(--color-accent)}.ecom-steps__item--active .ecom-steps__desc{font-weight:500}@media (min-width:768px){.ecom-steps .ecom-steps__heading{text-align:center}}@media (min-width:1024px){.ecom-steps{--steps-badge:var(--steps-badge-size,4.5rem);--steps-gap:var(--steps-item-gap,2rem);--steps-heading-mb:5rem;--steps-badge-gap:2.5rem;--steps-badge-font:2.0625rem;--steps-copy-gap:1rem;--steps-title:1.5rem;--steps-desc:1.125rem;--steps-desc-lh:1.4;--steps-active-p:1.5rem}}