.flow-trigger{position:relative;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:49px;height:49px;background:var(--surface);border:1px solid var(--border);border-radius:14px;color:var(--ink);box-shadow:0 4px 12px #00000007;cursor:pointer;transition:transform .3s,box-shadow .3s,border-color .3s;isolation:isolate}.flow-trigger>svg{width:29px;height:29px}.flow-trigger:before{content:'';position:absolute;inset:-4px;border:1px solid var(--ink);border-radius:18px;opacity:0;pointer-events:none}.flow-trigger:after{content:attr(data-tooltip);position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%,-4px);background:var(--ink);color:var(--paper);padding:6px 9px;border-radius:5px;font-size:10px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;z-index:10}.flow-trigger:hover,.flow-trigger:focus-visible{border-color:var(--ink);transform:translateY(-3px) rotate(-3deg);box-shadow:0 8px 20px #00000015}.flow-trigger:hover:before,.flow-trigger:focus-visible:before{animation:flowHalo 1.6s ease-out infinite}.flow-trigger:hover:after,.flow-trigger:focus-visible:after{opacity:1;transform:translate(-50%,0)}.flow-route{stroke-dasharray:70;stroke-dashoffset:0;animation:routeTrace 4.2s ease-in-out infinite}.flow-orb{animation:flowOrb 2.2s ease-in-out infinite}
.flow-dialog{width:min(450px,calc(100% - 34px));max-height:calc(100dvh - 32px);padding:29px 30px 27px;border:1px solid var(--border);border-radius:17px;background:var(--surface);color:var(--ink);box-shadow:0 25px 90px #0004;overflow:auto}.flow-dialog[open]{animation:flowDialogIn .36s cubic-bezier(.2,.8,.2,1) both}.flow-dialog::backdrop{background:#0008;backdrop-filter:blur(7px)}.flow-close{position:absolute;right:16px;top:12px;width:27px;height:27px;display:flex;align-items:center;justify-content:center;border:0;background:none;color:var(--muted);font-size:27px;line-height:1;cursor:pointer}.flow-dialog-eyebrow{font-size:9px;letter-spacing:1.7px;color:var(--muted);margin-bottom:20px}.flow-dialog-header{display:flex;align-items:center;gap:13px}.flow-title-icon{display:flex;align-items:center;justify-content:center;width:45px;height:45px;border-radius:12px;background:var(--soft);border:1px solid var(--line);flex-shrink:0}.flow-title-icon svg{width:26px;height:26px}.flow-dialog h2{font-size:26px;letter-spacing:-1px;line-height:1.3;margin:0}.flow-dialog-header p{font-size:11px;line-height:1.5;color:var(--muted);margin:7px 0 0}.flow-timeline{list-style:none;padding:0;margin:25px 0 25px;position:relative}.flow-timeline:before{content:'';position:absolute;left:16px;top:16px;bottom:16px;width:1px;background:var(--border);transform-origin:top;animation:flowLineIn 1.5s .15s ease-out both}.flow-timeline li{position:relative;display:flex;align-items:center;gap:14px;min-height:49px;padding:7px 0;opacity:0;animation:flowStepIn .45s calc(var(--flow-i)*.09s + .12s) ease both}.flow-number{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:33px;height:33px;border:1px solid var(--border);border-radius:50%;background:var(--surface);font-size:11px;font-weight:750;box-shadow:0 0 0 5px var(--surface);z-index:1}.flow-timeline li:last-child .flow-number{background:var(--ink);color:var(--paper);border-color:var(--ink)}.flow-timeline h3{font-size:13px;line-height:1.65;letter-spacing:0;margin:0;font-weight:650!important}.flow-cta{width:100%;justify-content:center;padding:13px 16px;font-size:13px;box-shadow:none;border-radius:9px}.steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}.step h3{font-size:15px;line-height:1.8;letter-spacing:0}.step-number{font-size:11px}.step-icon{margin-top:24px}
@keyframes flowHalo{0%{transform:scale(.9);opacity:0}25%{opacity:.2}100%{transform:scale(1.15);opacity:0}}@keyframes routeTrace{0%,100%{stroke-dashoffset:0;opacity:1}45%{stroke-dashoffset:70;opacity:.4}75%{stroke-dashoffset:0;opacity:1}}@keyframes flowOrb{0%,100%{transform:translateX(-2px);opacity:.3}50%{transform:translateX(3px);opacity:1}}@keyframes flowDialogIn{from{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes flowStepIn{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}@keyframes flowLineIn{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@media(max-width:1050px) and (min-width:761px){.steps{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.flow-trigger{width:45px;height:45px;border-radius:12px}.flow-trigger>svg{width:26px;height:26px}.hero-actions{gap:21px}.flow-dialog{padding:25px 23px 23px}.flow-dialog-eyebrow{margin-bottom:18px;font-size:8px}.flow-dialog h2{font-size:24px}.flow-dialog-header p{font-size:10px}.flow-title-icon{width:39px;height:39px}.flow-title-icon svg{width:24px;height:24px}.flow-timeline{margin:22px 0}.flow-timeline h3{font-size:12px}.flow-timeline li{min-height:46px;gap:12px}.flow-number{width:31px;height:31px;font-size:10px}.flow-timeline:before{left:15px}.steps{grid-template-columns:1fr;gap:24px}.step h3{font-size:17px}.step-icon{margin-top:0}}
@media(prefers-reduced-motion:reduce){.flow-trigger:before,.flow-route,.flow-orb,.flow-dialog[open],.flow-timeline:before,.flow-timeline li{animation:none!important}.flow-timeline li{opacity:1}}
