/* Decorative marketing motion only. Account workspaces do not load this file. */
.marketing-motion-ready .job-studio::before{content:"";position:absolute;inset:-20%;z-index:-2;pointer-events:none;background:radial-gradient(ellipse at 20% 25%,#527cbd55,transparent 45%),radial-gradient(ellipse at 85% 75%,#345d8a66,transparent 40%);animation:studio-light 12s ease-in-out infinite alternate}
.marketing-motion-ready .studio-flow{stroke-dasharray:75 2240;animation:studio-flow 7s linear infinite;filter:drop-shadow(0 0 4px #91b9f5aa)}
.marketing-motion-ready .studio-contours{animation:contour-breathe 8s ease-in-out infinite alternate}
.marketing-motion-ready .tester-copy h1 em:after{transform-origin:left;animation:underline-reveal .95s .15s cubic-bezier(.2,.8,.2,1) both}
.marketing-motion-ready .job-studio[data-stage=work]::before{background:radial-gradient(ellipse at 15% 30%,#496fb655,transparent 48%),radial-gradient(ellipse at 85% 70%,#3c829366,transparent 45%)}
.marketing-motion-ready .sample-tabs button{position:relative;overflow:hidden}.marketing-motion-ready .sample-tabs button[aria-pressed=true]:after{content:"";position:absolute;bottom:3px;left:12px;right:12px;height:2px;background:#537bb3;transform-origin:left;animation:tab-line .5s ease-out both}
.marketing-motion-ready .sample-extra{transition:background .25s,border-color .25s,box-shadow .25s}.marketing-motion-ready .sample-extra:has(input:checked){background:#e3edf9;border-color:#89a7d0;box-shadow:0 0 0 3px #4473b30a}
.number-change{animation:number-swap .36s cubic-bezier(.16,1,.3,1) both}
.marketing-motion-ready .panel-in .comparison-track i{transform-origin:left;animation:bar-reveal .65s cubic-bezier(.16,1,.3,1) both}.marketing-motion-ready .panel-in .comparison-line.actual i{animation-delay:.12s}
.marketing-motion-ready .shop-picker button[aria-pressed=true] svg{animation:service-draw .65s ease-out both;stroke-dasharray:160;stroke-dashoffset:0}
.marketing-motion-ready .motion-item{opacity:0;transform:translateY(19px);transition:opacity .65s cubic-bezier(.16,1,.3,1),transform .65s cubic-bezier(.16,1,.3,1)}.marketing-motion-ready .motion-item.motion-seen{opacity:1;transform:none}.marketing-motion-ready .motion-item:nth-of-type(2){transition-delay:.08s}.marketing-motion-ready .motion-item:nth-of-type(3){transition-delay:.16s}
/* Homepage workflow: a connected route, drawing document, timer dial and chart. */
.marketing-motion-ready .workflow-cards{position:relative}.workflow-route{position:absolute;top:-30px;left:4%;width:92%;height:22px;overflow:visible;pointer-events:none;fill:none;stroke:#8b9eb9;stroke-width:1;opacity:.6}.workflow-route .route-travel{stroke:#345f9f;stroke-width:2;stroke-dasharray:70 930;animation:workflow-route 6s linear infinite}.workflow-route circle{fill:#f6f5f1;stroke:#5579aa;stroke-width:1.5}
.marketing-motion-ready .workflow .visual{position:relative;overflow:hidden;isolation:isolate}.marketing-motion-ready .workflow .visual-one:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 20%,#8db2d02b 45%,transparent 70%);transform:translateX(-130%);animation:document-sweep 6.5s 1s ease-in-out infinite}
.marketing-motion-ready .workflow .mini-document i{transform-origin:left;animation:document-line .75s .1s ease-out both}.marketing-motion-ready .workflow .mini-document i:nth-child(2){animation-delay:.24s}.marketing-motion-ready .workflow .mini-document i:nth-child(3){animation-delay:.38s}
.workflow-clock{position:absolute;width:160px;height:160px;top:50%;left:50%;transform:translate(-50%,-50%);fill:none;stroke:#6485ac;stroke-opacity:.24;stroke-width:1;z-index:-1;pointer-events:none}.workflow-clock .clock-sweep{stroke:#446c9c;stroke-opacity:.6;stroke-width:2;stroke-dasharray:48 330;transform-origin:center;animation:clock-sweep 12s linear infinite}
.marketing-motion-ready .workflow .chart i{transform-origin:bottom;animation:chart-rise .9s cubic-bezier(.2,.8,.2,1) both}.marketing-motion-ready .workflow .chart i:nth-child(2){animation-delay:.1s}.marketing-motion-ready .workflow .chart i:nth-child(3){animation-delay:.2s}.marketing-motion-ready .workflow .chart i:nth-child(4){animation-delay:.3s}.marketing-motion-ready .workflow .chart i:nth-child(5){animation-delay:.4s}
.marketing-motion-ready .workflow:not(.scene-on) .visual:after,.marketing-motion-ready .workflow:not(.scene-on) :is(.mini-document i,.chart i,.route-travel,.clock-sweep){animation-play-state:paused}
.marketing-motion-ready .job-studio:not(.scene-on)::before,.marketing-motion-ready .job-studio:not(.scene-on) :is(.studio-flow,.studio-contours){animation-play-state:paused}
@keyframes studio-flow{from{stroke-dashoffset:0}to{stroke-dashoffset:-2315}}
@keyframes studio-light{from{transform:translate(-3%,-3%) scale(1)}to{transform:translate(4%,3%) scale(1.08)}}
@keyframes contour-breathe{from{opacity:.4}to{opacity:1}}
@keyframes underline-reveal{from{transform:scaleX(0) rotate(-1deg)}to{transform:scaleX(1) rotate(-1deg)}}
@keyframes tab-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes number-swap{from{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:none}}
@keyframes bar-reveal{from{transform:scaleX(.05)}to{transform:scaleX(1)}}
@keyframes service-draw{from{stroke-dashoffset:160}to{stroke-dashoffset:0}}
@keyframes workflow-route{from{stroke-dashoffset:0}to{stroke-dashoffset:-1000}}
@keyframes document-sweep{0%,35%{transform:translateX(-130%)}75%,100%{transform:translateX(130%)}}
@keyframes document-line{from{transform:scaleX(0);opacity:.2}to{transform:scaleX(1);opacity:1}}
@keyframes clock-sweep{to{transform:rotate(360deg)}}
@keyframes chart-rise{from{transform:scaleY(.08);opacity:.3}to{transform:scaleY(1);opacity:1}}
.marketing-idle :is(.studio-flow,.studio-contours,.route-travel,.clock-sweep,.mini-document i,.chart i),.marketing-idle .job-studio::before,.marketing-idle .workflow .visual:after{animation-play-state:paused!important}
.motion-paused .motion-item{opacity:1!important;transform:none!important}.motion-paused :is(.studio-flow,.studio-contours,.route-travel,.clock-sweep,.number-change,.mini-document i,.chart i),.motion-paused .job-studio::before,.motion-paused .workflow .visual:after{animation:none!important;transition:none!important}
@media(max-width:800px){.workflow-route{display:none}}
@media(prefers-reduced-motion:reduce){.marketing-motion-ready *,.marketing-motion-ready :before,.marketing-motion-ready :after{animation:none!important;transition:none!important}.marketing-motion-ready .motion-item{opacity:1;transform:none}}
.marketing-motion-ready .motion-toggle{min-height:44px}
