/* Motion is progressive enhancement. Content remains visible without JS. */
.motion-story{display:block!important;background:#0c0d10;padding:70px 0 60px!important;border-block:1px solid #34383f;overflow:clip}.motion-story .wrap{max-width:1200px}.motion-kicker{font-size:11px;letter-spacing:.16em;margin-bottom:35px}.motion-words,body:has(.hero-grid) .motion-words{font-size:clamp(66px,12.5vw,155px);line-height:.91;letter-spacing:-.075em}.motion-words>div{transition:none}.motion-outline{background-size:calc(var(--motion-progress,0)*100%) 100%;-webkit-text-stroke:1.3px #4866ff;background-image:linear-gradient(#2448ff,#2448ff)}.motion-business{transform:translateX(calc((1 - var(--motion-progress,0))*32px))}.motion-star{transform:rotate(calc(var(--motion-progress,0)*160deg));color:#b8ff3b}.motion-bottom{font-size:14px;margin-top:35px;color:#b9bec8}.motion-kicker>span:last-child{transform:translate(calc(var(--motion-progress,0)*7px),calc(var(--motion-progress,0)*7px));transition:none}.hero h1>span{display:block;animation:bold-enter .72s cubic-bezier(.16,1,.3,1) both}.hero h1>span:nth-child(2){animation-delay:85ms}.hero h1>span:nth-child(3){animation-delay:170ms}.hero .lead{animation:bold-enter .75s .2s cubic-bezier(.16,1,.3,1) both}.hero .btns{animation:bold-enter .7s .32s cubic-bezier(.16,1,.3,1) both}@keyframes bold-enter{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.exec-case{position:relative;transition:transform .38s cubic-bezier(.2,.8,.2,1),box-shadow .38s,opacity .65s;transform-origin:50% 100%}.exec-case.motion-pending{opacity:0;transform:translateY(26px)}.exec-case.motion-visible{opacity:1;transform:none}.exec-case summary{display:flex;align-items:center;justify-content:space-between;gap:10px;list-style:none}.exec-case summary::-webkit-details-marker{display:none}.exec-case summary::after{content:'↗';display:inline-block;transition:transform .3s;font-size:20px}.exec-case details[open] summary::after{transform:rotate(90deg)}.exec-case details{overflow:hidden}.exec-case details.is-expanding{will-change:height}.exec-case:focus-within{border-color:#b8ff3b}
@media(hover:hover) and (pointer:fine){.exec-case.motion-visible:hover{transform:translateY(-7px);box-shadow:0 18px 45px #0005;transition-delay:0ms!important}.exec-case:hover summary::after{transform:translate(3px,-3px)}.exec-case:hover details[open] summary::after{transform:rotate(90deg)}}
#tools .product .art{overflow:visible}#tools .product .bars i{transform-origin:bottom}#tools .product.motion-demo .bars i{animation:bar-lift .75s cubic-bezier(.16,1,.3,1) both}#tools .product.motion-demo .bars i:nth-child(2){animation-delay:70ms}#tools .product.motion-demo .bars i:nth-child(3){animation-delay:140ms}#tools .product.motion-demo .bars i:nth-child(4){animation-delay:210ms}#tools .product.motion-demo .bars i:nth-child(5){animation-delay:280ms}@keyframes bar-lift{from{transform:scaleY(.25)}to{transform:scaleY(1)}}#tools .product.motion-demo .chat>span{animation:bubble-in .6s cubic-bezier(.16,1,.3,1) both}#tools .product.motion-demo .chat>span:nth-child(2){animation-delay:120ms}#tools .product.motion-demo .chat>span:nth-child(3){animation-delay:240ms}@keyframes bubble-in{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}#tools .product.motion-demo .release>span{animation:portal-turn .95s cubic-bezier(.16,1,.3,1) both}@keyframes portal-turn{from{transform:rotate(-100deg) scale(.8)}to{transform:rotate(0) scale(1)}}#tools .product:focus-visible .bars i{transform:scaleY(1.08)}#tools .product:focus-visible .release>span{transform:rotate(25deg)}
@media(max-width:600px){.motion-story{padding:42px 0 38px!important}.motion-kicker{font-size:10px;letter-spacing:.1em;gap:12px;margin-bottom:28px}.motion-words,body:has(.hero-grid) .motion-words{font-size:clamp(43px,12.5vw,76px);line-height:.98}.motion-star{margin-left:12px}.motion-bottom{font-size:13px;max-width:30ch;margin-top:26px}.motion-business{transform:translateX(calc((1 - var(--motion-progress,0))*12px))}.exec-case.motion-pending{transform:translateY(16px)}}
@media(prefers-reduced-motion:reduce){.hero h1>span,.hero .lead,.hero .btns{animation:none!important;opacity:1;transform:none}.exec-case.motion-pending{opacity:1;transform:none}.exec-case,.exec-case summary::after{transition:none!important}.exec-case:hover{transform:none!important}.motion-outline{background-size:100% 100%!important}.motion-star,.motion-business,.motion-words>div,.motion-kicker>span:last-child{transform:none!important}#tools .product.motion-demo .art *{animation:none!important;opacity:1;translate:none;transform:none}.exec-case details.is-expanding{will-change:auto}}
@media print{.motion-story{display:none!important}.exec-case{opacity:1!important;transform:none!important}}

/* Negative tracking lets the last glyph paint beyond its advance width.
   Reserve ink room so the animated background reaches its rightmost edge. */
.motion-words .motion-outline{padding-inline-end:.12em;background-origin:border-box}
