.vertical-flow-container{position:relative;max-width:768px;margin-left:auto;margin-right:auto}.flow-step{display:grid;grid-template-columns:3fr 32px 2fr;gap:1rem;align-items:center;padding:2.5rem 0}@media (min-width:640px){.flow-step{gap:2rem}}.flow-step:nth-child(2n) .step-icon-wrapper{grid-column-start:3}.flow-step:nth-child(2n) .step-content{grid-column-start:1;grid-row-start:1;text-align:right}.flow-step:nth-child(2n) .step-line{grid-column-start:2}.step-icon-wrapper{grid-column-start:1;grid-row-start:1;display:flex;justify-content:center;align-items:center}.step-content{grid-column-start:3;grid-row-start:1}.step-node{width:64px;height:64px;border-radius:50%;display:flex;justify-content:center;align-items:center;border:2px solid;transition:transform .6s ease,box-shadow .6s ease}.step-node svg{width:32px;height:32px}.step-line-wrapper{grid-column-start:2;grid-row-start:1;height:100%;display:flex;justify-content:center;transform:translateY(32px)}.step-line{width:2px;height:calc(100% - 64px);background-color:var(--color-gray-200);transform:scaleY(0);transform-origin:top;transition:transform .8s ease}.dark .step-line{background-color:var(--color-gray-800)}.flow-step:last-child .step-line-wrapper{display:none}.flow-step.is-active .step-node{transform:scale(1.1);box-shadow:0 0 40px -5px currentColor}.flow-step.is-active .step-line{transform:scaleY(1)}.confetti-container{position:absolute;top:50%;left:50%;width:1px;height:1px;overflow:visible;z-index:100}.confetti{position:absolute;width:8px;height:8px;border-radius:2px;opacity:0;animation:explode-confetti 1.5s ease-out forwards}@keyframes explode-confetti{0%{transform:translate(0) rotate(0deg) scale(1);opacity:1}to{transform:translate(var(--x-end),var(--y-end)) rotate(1turn) scale(0);opacity:0}}@media (max-width:639px){.flow-step{grid-template-columns:64px 1fr;gap:1rem;padding:1.5rem 0}.flow-step:nth-child(2n) .step-icon-wrapper,.step-icon-wrapper{grid-column-start:1}.flow-step:nth-child(2n) .step-content,.step-content{grid-column-start:2;text-align:left}.step-line-wrapper{display:none}}@media (prefers-reduced-motion:reduce){.flow-step.is-active .step-node{transform:none;box-shadow:0 0 20px -10px currentColor}.flow-step.is-active .step-line{transform:none}.confetti{display:none}}.how-it-works-visual{display:flex;justify-content:space-around;align-items:center;padding:2rem 0;position:relative;min-height:150px;margin:2rem 0}.call-icon,.funnel-icon,.sorted-icon{opacity:0;color:var(--color-primary-500)}.how-it-works-visual.is-visible .call-icon{animation:fade-in 1s ease-out .5s forwards}.how-it-works-visual.is-visible .funnel-icon{animation:fade-in 1s ease-out 1s forwards}.how-it-works-visual.is-visible .sorted-icon{animation:fade-in 1s ease-out 1.5s forwards}.funnel-line{position:absolute;top:50%;left:0;width:100%;height:2px}.funnel-line path{stroke:var(--color-primary-300);stroke-dasharray:1000;stroke-dashoffset:1000}.how-it-works-visual.is-visible .funnel-line path{animation:draw-full-line 1.5s ease-out .8s forwards}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes draw-full-line{to{stroke-dashoffset:0}}.feature-icon-container{transition:transform .3s ease}.feature-card:hover .feature-icon-container{transform:scale(1.15)}.faq-accordion{max-width:768px;margin:0 auto;border-top:1px solid #e5e7eb}.dark .faq-accordion{border-top:1px solid #374151}.faq-item{border-bottom:1px solid #e5e7eb}.dark .faq-item{border-bottom:1px solid #374151}.faq-question{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;padding:1.5rem 0;font-size:1.125rem;font-weight:600;background:none;border:none;cursor:pointer;color:#111827}.dark .faq-question{color:#f9fafb}.faq-icon{transition:transform .3s ease;flex-shrink:0;margin-left:1rem}.faq-icon.open{transform:rotate(180deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .5s ease-in-out,padding .5s ease-in-out;color:#4b5563;padding:0 1rem}.dark .faq-answer{color:#d1d5db}.faq-answer.open{max-height:500px;padding:0 1rem 1.5rem 0}