/* Motion follows the existing composition and three-step delivery sequence. */
.flow-ready{--flow-ease:cubic-bezier(.16,1,.3,1)}
.flow-ready .studio-hero .service-flow{flex:1;min-width:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 2%,#000 97%,transparent)}
.flow-ready .studio-hero .service-belt{display:flex;width:max-content;animation:service-flow 24s linear infinite;animation-play-state:paused}
.flow-ready .studio-hero[data-motion=playing] .service-belt{animation-play-state:running}
.flow-ready .studio-hero .service-group{display:flex;align-items:center;justify-content:space-around;gap:42px;min-width:var(--service-span);padding-inline:20px 42px;direction:ltr}
.flow-ready .studio-hero .service-group span{border:0;padding:0;white-space:nowrap;display:flex;align-items:center;gap:42px}
.flow-ready .studio-hero .service-group span::after{content:"";width:4px;height:4px;border-radius:50%;background:#79628e}
@keyframes service-flow{to{transform:translateX(-50%)}}
@media(max-width:780px){.flow-ready .studio-hero .service-flow{flex-basis:100%}.flow-ready .studio-hero .service-group{gap:22px;padding-inline:8px 22px}.flow-ready .studio-hero .service-group span{gap:22px}}
.flow-ready .studio-hero .showcase{translate:0 var(--showcase-drift,0px)}
.flow-ready .studio-hero .hero-copy{translate:0 var(--copy-drift,0px)}
.flow-ready .shot .frame img{transform:translateY(var(--image-drift,0%)) scale(1.06);transition:transform 180ms linear}
.flow-ready .simple-steps{position:relative;isolation:isolate}
.flow-ready .process-track{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:-1;fill:none;stroke-linecap:round}
.flow-ready .process-track .track-base{stroke:#c7bdce;stroke-width:1.5}
.flow-ready .process-track .track-fill{stroke:#765a92;stroke-width:2.5}
.flow-ready .process-track circle{fill:#765a92;stroke:#f4efe6;stroke-width:3}
.flow-ready .step-number{transition:color 220ms,background-color 220ms}
.flow-ready .flow-step-passed .step-number{color:#65477f}
.flow-ready .hero-actions a,.flow-ready .btn,.flow-ready .more{transition:background-color 220ms,color 220ms,transform 300ms var(--flow-ease)}
.flow-ready .hero-actions a svg,.flow-ready .header-contact svg,.flow-ready .current-demo svg{transition:transform 300ms var(--flow-ease)}
@media(hover:hover){.flow-ready .hero-actions a:hover svg,.flow-ready .header-contact:hover svg,.flow-ready .current-demo:hover svg{transform:translateX(4px)}.flow-ready .btn:hover{transform:translateY(-3px)}}
.flow-ready .studio-primary-nav a{position:relative}
.flow-ready .studio-primary-nav a::after{content:"";position:absolute;bottom:5px;left:0;right:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform 280ms var(--flow-ease)}
.flow-ready .studio-primary-nav a:hover::after,.flow-ready .studio-primary-nav a:focus-visible::after{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){.flow-ready .studio-hero .showcase,.flow-ready .studio-hero .hero-copy{translate:none}.flow-ready .shot .frame img{transform:none;transition:none}.flow-ready .process-track{display:none}.flow-ready .btn:hover{transform:none}.flow-ready .studio-hero .service-belt{animation:none;width:auto}.flow-ready .studio-hero .service-group{min-width:0;flex-wrap:wrap;gap:12px;padding:0;justify-content:flex-start}.flow-ready .studio-hero .service-group[aria-hidden]{display:none}.flow-ready .studio-hero .service-flow{mask-image:none}}
@media print{.flow-ready .process-track{display:none}.flow-ready .studio-hero .showcase,.flow-ready .studio-hero .hero-copy{translate:none}.flow-ready .shot .frame img{transform:none}}
