/* Page-owned choreography. Scrollcraft remains unchanged. */
.motion-enabled .hero-enter{animation:hero-enter .9s cubic-bezier(.2,.75,.2,1) both;animation-delay:var(--enter-delay,0ms)}
@keyframes hero-enter{from{opacity:0;transform:translateY(28px);filter:blur(5px)}to{opacity:1;transform:none;filter:blur(0)}}
.motion-enabled .motion-reveal{opacity:0;transform:translateY(35px);transition:opacity .85s ease,transform .95s cubic-bezier(.19,1,.22,1)}
.motion-enabled .motion-reveal.motion-visible{opacity:1;transform:none}
.motion-enabled .problem-grid article:nth-child(2),.motion-enabled .process-grid article:nth-child(2){transition-delay:120ms}
.motion-enabled .problem-grid article:nth-child(3),.motion-enabled .process-grid article:nth-child(3){transition-delay:240ms}
.motion-enabled .logo-grid .tool-logo{opacity:0;transform:translateY(65px) scale(.72) rotate(var(--logo-turn));transition:opacity .65s ease var(--logo-delay),transform 1s cubic-bezier(.16,1,.3,1) var(--logo-delay),box-shadow .25s}
.motion-enabled .logo-grid .tool-logo.motion-visible{opacity:1;transform:translateY(0) scale(1) rotate(0deg)}
.logo-grid .tool-logo img{transition:transform .35s,opacity .35s}
.logo-grid .tool-logo img{opacity:1}.hero-tool-strip .tool-logo img{filter:grayscale(1)}
.logo-grid .tool-logo:hover img{transform:scale(1.15) rotate(-6deg);opacity:1}
.integration-section{position:relative;overflow:hidden;isolation:isolate}
.integration-section:before,.integration-section:after{content:'';position:absolute;width:120%;height:380px;left:-10%;bottom:-220px;border:1px solid #dbe1fb;border-radius:50%;z-index:-1;transform:rotate(-8deg);box-shadow:0 -12px 0 -11px #dde3fb,0 -26px 0 -25px #e1e6fb,0 -42px 0 -41px #e4e9fc}
.integration-section:after{transform:rotate(8deg);bottom:-250px}
.motion-enabled .integration-section.is-animating:before{animation:integration-wave 9s ease-in-out infinite alternate}
.motion-enabled .integration-section.is-animating:after{animation:integration-wave 12s ease-in-out infinite alternate-reverse}
@keyframes integration-wave{to{transform:translateY(-30px) rotate(3deg)}}
.hero-fact strong .capability-count{font-size:25px;color:var(--text);font-weight:600;display:inline-block;min-width:18px;font-variant-numeric:tabular-nums}
.motion-enabled .hero.is-animating .hero-symbol{animation:symbol-bob 5s ease-in-out infinite}
@keyframes symbol-bob{0%,100%{transform:translateY(0) rotate(-9deg)}50%{transform:translateY(-7px) rotate(-3deg)}}
.motion-enabled .hero.is-animating .node{animation:node-light 3.6s ease-in-out infinite}
.motion-enabled .hero.is-animating .node:nth-of-type(3){animation-delay:1.2s}
.motion-enabled .hero.is-animating .node:nth-of-type(5){animation-delay:2.4s}
@keyframes node-light{0%,65%,100%{transform:scale(1);box-shadow:0 2px 5px #5365e808}25%{transform:scale(1.12);box-shadow:0 5px 15px #5365e824;border-color:#b5c0f6}}
.motion-enabled .hero.is-animating .chat-meta>[data-icon]{animation:check-pop 3.6s ease-in-out infinite}
@keyframes check-pop{0%,70%,100%{transform:scale(1)}80%{transform:scale(1.45)}}
.motion-enabled .solution-system.is-animating .system-pill{animation:pill-float 5s ease-in-out infinite alternate}
.motion-enabled .solution-system.is-animating .pill-process{animation-delay:-1.7s}
.motion-enabled .solution-system.is-animating .pill-tools{animation-delay:-3.2s}
@keyframes pill-float{to{translate:0 -13px}}
.motion-enabled .solution-system.is-animating .orbit-two{animation:orbit-spin 70s linear infinite}
@keyframes orbit-spin{to{rotate:360deg}}
/* Each incoming full panel rises over the previous panel, which recedes behind it. */
.scroll-services .service-scenes{height:480px;min-height:480px;overflow:clip;border-radius:18px;margin-inline:-22px;padding:0 22px}
.scroll-services .service-scene,.scroll-services .service-scene.is-active,.scroll-services .service-scene:not(.is-active){inset:0;opacity:1;visibility:visible;transition:none;transform-origin:50% 0;background:linear-gradient(125deg,#fff,#f9faff);border:1px solid #e1e6f5;border-radius:17px;padding:28px;box-shadow:0 -9px 26px #465b9210;will-change:transform}
.scroll-services .service-scene:not(.is-active){pointer-events:none}
.scroll-services .service-copy h3{font-size:29px;margin-bottom:15px}
.scroll-services .service-copy>p{font-size:15px}
.scroll-services .check-list{margin:15px 0}
.scroll-services .service-visual{box-shadow:0 10px 30px #5d6eac08}
.scroll-services .visual-inner{padding:18px 22px;min-height:235px}
.scroll-services .service-kicker{margin-bottom:13px}
.scroll-services .chat-head{margin-bottom:12px}.scroll-services .chat-bubble{padding:10px 13px;margin-bottom:9px}
.scroll-services .success-line{margin-top:12px}
.motion-enabled .service-scene.is-active .chat-bubble,.motion-enabled .service-scene.is-active .success-line{animation:detail-enter .65s ease both}
.motion-enabled .service-scene.is-active .chat-bubble.agent{animation-delay:.18s}
.motion-enabled .service-scene.is-active .success-line{animation-delay:.35s}
@keyframes detail-enter{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:none}}
.motion-enabled .service-visual.is-animating .typing b{animation:typing-dot 1.2s ease-in-out infinite}.motion-enabled .typing b:nth-child(2){animation-delay:.15s}.motion-enabled .typing b:nth-child(3){animation-delay:.3s}
@keyframes typing-dot{50%{transform:translateY(-4px);opacity:.4}}
.v-line,.branch-line,.map-connect{position:relative;overflow:hidden}
.motion-enabled .service-visual.is-animating .v-line:after,.motion-enabled .service-visual.is-animating .map-connect:after{content:'';position:absolute;top:-10px;left:0;width:100%;height:10px;background:linear-gradient(transparent,#7489ec,transparent);animation:flow-down 2.3s linear infinite}
@keyframes flow-down{to{transform:translateY(55px)}}
.motion-enabled .service-visual.is-animating .accent-node{animation:workflow-pulse 3s ease-in-out infinite}
@keyframes workflow-pulse{50%{border-color:#8c9fed;background:#e9eeff}}
.motion-enabled .case-art.is-animating .sheet-chart i{transform-origin:bottom;animation:bar-grow 1.1s cubic-bezier(.16,1,.3,1) both}.motion-enabled .sheet-chart i:nth-child(2){animation-delay:.1s}.motion-enabled .sheet-chart i:nth-child(3){animation-delay:.2s}.motion-enabled .sheet-chart i:nth-child(4){animation-delay:.3s}.motion-enabled .sheet-chart i:nth-child(5){animation-delay:.4s}
@keyframes bar-grow{from{transform:scaleY(.05)}to{transform:scaleY(1)}}
@media(min-width:801px) and (max-height:850px){.scroll-services .services-stage>.wrap{padding-top:95px;padding-bottom:10px}.scroll-services .services-heading{margin-bottom:14px}.scroll-services .services-heading h2{font-size:30px}.scroll-services .service-tabs{margin-bottom:18px}.scroll-services .service-tabs a{padding-block:10px}.scroll-services .service-scenes{height:420px;min-height:420px}.scroll-services .service-scene{padding:20px;gap:28px}.scroll-services .service-copy h3{font-size:25px}.scroll-services .service-copy>p{font-size:14px;line-height:1.65}.scroll-services .service-kicker{margin-bottom:9px}.scroll-services .check-list{font-size:13px;margin:10px 0}.scroll-services .visual-inner{min-height:195px;padding:12px 18px}.scroll-services .visual-caption{padding:8px 13px}.scroll-services .journey-track{margin-top:16px;padding-top:8px}.scroll-services .chat-bubble{font-size:13px;padding:8px 11px}.scroll-services .workflow-node{padding:10px;font-size:13px}.scroll-services .v-line{height:20px}.scroll-services .branch-line{height:19px;margin-top:15px}.scroll-services .map-connect{height:18px}.scroll-services .map-hub img{width:43px;height:43px}.scroll-services .workspace-body{padding-top:10px}.scroll-services .workspace-content h4{margin:5px 0 8px}.scroll-services .task-row{padding:6px 0}}
@media(min-width:801px) and (max-height:700px){.scroll-services .services-heading>.eyebrow,.scroll-services .services-heading .eyebrow{display:none}.scroll-services .services-heading h2{font-size:26px}.scroll-services .service-scenes{height:370px;min-height:370px}.scroll-services .service-copy h3{font-size:23px}.scroll-services .service-kicker{display:none}.scroll-services .services-heading>p{display:none}.scroll-services .service-scene{padding:15px}.scroll-services .visual-inner{min-height:180px}.scroll-services .visual-toolbar{padding:8px 12px}.scroll-services .workspace-side{gap:15px}}
@media(prefers-reduced-motion:reduce){.motion-reveal,.logo-grid .tool-logo,.hero-enter{opacity:1!important;transform:none!important;filter:none!important;transition:none!important;animation:none!important}}
