/* Motion stays decorative: copy, navigation, and sample values remain stable. */
.nav-wrap{gap:20px}.header nav{margin-left:auto}
.page-motion-control{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1px solid currentColor;border-radius:50%;opacity:.8;order:2;position:relative}
.page-motion-control:hover,.page-motion-control:focus-visible{opacity:1;background:#a9d9ff;color:#101113}
.page-motion-control svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5}
.page-motion-control .motion-play{display:none}.page-motion-control[aria-pressed=true] .motion-play{display:block}.page-motion-control[aria-pressed=true] .motion-pause{display:none}
.page-motion-control:after{content:attr(data-label);position:absolute;top:45px;right:0;background:#101113;color:#fff;white-space:nowrap;font-size:10px;padding:8px 12px;border-radius:4px;opacity:0;pointer-events:none}
.page-motion-control:hover:after,.page-motion-control:focus-visible:after{opacity:1}
.page-progress{position:fixed;inset:0 0 auto;height:2px;background:#a9d9ff;transform:scaleX(0);transform-origin:left;z-index:60;pointer-events:none}
.motion-loop,.motion-loop:before,.motion-loop:after{animation-play-state:paused!important}
body[data-motion=running] .motion-visible .motion-loop,body[data-motion=running] .motion-visible .motion-loop:before,body[data-motion=running] .motion-visible .motion-loop:after{animation-play-state:running!important}
body[data-motion=paused] .page-progress{visibility:hidden}
body[data-motion=paused] *,body[data-motion=paused] *:before,body[data-motion=paused] *:after{animation-play-state:paused!important;transition:none!important}
html:has(body[data-motion=paused]){scroll-behavior:auto}

.capability-strip{position:relative;overflow:hidden}.capability-strip:after{content:'';position:absolute;height:2px;width:25%;left:0;bottom:0;background:linear-gradient(90deg,transparent,#a9d9ff,transparent);animation:strip-flow 8s linear infinite;animation-play-state:paused}
body[data-motion=running] .capability-strip.motion-visible:after{animation-play-state:running}
.capability-strip i{display:inline-block;animation:arrow-flow 4s ease-in-out infinite}
.capability-strip .container>div:nth-child(3) i{animation-delay:-1s}.capability-strip .container>div:nth-child(4) i{animation-delay:-2s}.capability-strip .container>div:nth-child(5) i{animation-delay:-3s}

.solution{position:relative;isolation:isolate}.solution-top .line-icon{color:#364a5b}.solution-top>span:last-child{color:#68727d}
.service-visual{height:96px;position:relative;margin:15px 0 0;border-radius:5px;overflow:hidden;background:linear-gradient(120deg,#f5faff,#eef7fe);border:1px solid #e2eff8}
.service-visual svg{height:100%;width:100%;display:block;fill:none;stroke:#7b9ab2;stroke-width:1.2}
.service-visual .visual-grid{stroke:#d9eaf7;stroke-width:.7}.service-visual .visual-fill{fill:#cbe8ff;stroke:#a9d9ff}.service-visual .visual-dark{fill:#253546;stroke:none}.service-visual .visual-light{fill:#fff;stroke:#94bddc}
.service-visual .data-packet{fill:#a9d9ff;stroke:#5b86a7;animation:packet-travel 4.8s ease-in-out infinite}
.service-visual .packet-two{animation-delay:-1.6s}.service-visual .packet-three{animation-delay:-3.2s}
.service-visual .scan-line{stroke:#6caada;stroke-width:1.8;animation:scan-line 4.5s ease-in-out infinite}
.service-visual .scan-box{stroke:#4f83a9;stroke-dasharray:14 5;animation:trace-line 9s linear infinite}
.service-visual .mask-cell{fill:#a9d9ff;stroke:#fff;animation:mask-build 5s ease-in-out infinite;animation-delay:calc(var(--cell)*-.25s)}
.service-visual .wave-line{stroke:#79b7e6;stroke-width:2;stroke-dasharray:130 280;animation:wave-flow 6s linear infinite}
.service-visual .visual-node{fill:#a9d9ff;stroke:#6994b5;transform-box:fill-box;transform-origin:center;animation:node-breathe 4s ease-in-out infinite}
.service-visual .review-bar{fill:#a9d9ff;stroke:none;transform-box:fill-box;transform-origin:left;animation:review-flow 5s ease-in-out infinite;animation-delay:calc(var(--cell)*-.6s)}
.service-visual .network-path{stroke:#8fbde0;stroke-dasharray:4 10;animation:trace-line 5s linear infinite}
.service-visual .network-node{animation-delay:calc(var(--cell)*-.7s)}
.video-site .solution h3{margin-top:20px}
.solution:after{content:'';position:absolute;inset:0;pointer-events:none;border:1px solid #a9d9ff;opacity:0;transition:opacity .3s}.solution:hover:after,.solution:focus-within:after{opacity:1}

.platform-section{position:relative;isolation:isolate;overflow:hidden}.platform-section>.container{position:relative;z-index:1}
.platform-orbit{position:absolute;right:-180px;top:55px;width:680px;height:680px;border:1px solid #cce5f7;border-radius:50%;pointer-events:none;animation:orbit-turn 55s linear infinite}
.platform-orbit:before,.platform-orbit:after{content:'';position:absolute;border:1px solid #dceefa;border-radius:50%;inset:80px}.platform-orbit:after{inset:170px}
.platform-orbit>i{position:absolute;left:95px;top:95px;width:12px;height:12px;border:3px solid #eef8ff;border-radius:50%;background:#a9d9ff;box-shadow:0 0 0 8px #a9d9ff20}
.platform-shell{position:relative;transition:box-shadow .4s}.platform-shell:hover{box-shadow:0 20px 60px #0b172a18}
.workspace-signal{display:flex;align-items:center;gap:3px;height:18px;margin-left:auto}.workspace-signal i{display:block;width:3px;height:12px;border-radius:2px;background:#a9d9ff;transform-origin:center;animation:signal-wave 1.8s ease-in-out infinite;animation-delay:calc(var(--bar)*-.23s)}
.workspace-signal+.sample-badge{margin-left:4px}
.workspace-sidebar [role=tab]{position:relative;overflow:hidden;transition:background .25s,color .25s}
.workspace-sidebar [aria-selected=true]:after{content:'';position:absolute;bottom:0;left:0;width:100%;height:2px;background:#8bc6f4;transform-origin:left;animation:stage-flow 7s ease-in-out infinite;animation-play-state:paused}
body[data-motion=running] .platform-section.motion-visible .workspace-sidebar [aria-selected=true]:after{animation-play-state:running}
.data-table tbody tr{background:transparent;animation:row-signal 9s ease-in-out infinite;animation-delay:calc(var(--row)*-3s)}
.workspace-status>i{background:#75a9d0;animation:node-breathe 3s ease-in-out infinite}
.bar-fill{transform-origin:left;position:relative;overflow:hidden}.bar-fill:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,#ffffffb3,transparent);animation:bar-shine 4s linear infinite}
.expert-card .expert-icon,.delivery-icon{animation:icon-float 6s ease-in-out infinite;animation-delay:calc(var(--row)*-1.5s)}

.expertise-board{position:relative;overflow:hidden}.board-title>span:last-child{display:inline-block;color:#6396bd;animation:orbit-turn 24s linear infinite}
.role-row{position:relative;isolation:isolate}.role-row:before{content:'';position:absolute;inset:4px -10px;border-radius:6px;background:#d5ecff;opacity:0;z-index:-1;animation:talent-signal 18s ease-in-out infinite;animation-delay:calc(var(--role) * 3s - 18s)}
.expertise-symbol{animation:icon-float 6s ease-in-out infinite;animation-delay:calc(var(--role)*-.7s)}
.role-row:hover .expertise-symbol,.role-row:focus-visible .expertise-symbol{background:#a9d9ff}
.board-bottom .status-dot{background:#75a9d0;animation:node-breathe 3s ease-in-out infinite}

.step-number{position:relative;overflow:hidden}.step-number:after{content:'';position:absolute;left:0;top:-1px;height:2px;width:100%;background:linear-gradient(90deg,transparent,#a9d9ff,transparent);animation:process-flow 12s ease-in-out infinite;animation-delay:calc(var(--step) * 3s - 12s)}
.step-number>i{display:inline-block;color:#a9d9ff;animation:arrow-flow 4s ease-in-out infinite;animation-delay:calc(var(--step)*-.8s)}
.faq-list summary>span{transition:transform .3s}.faq-list summary{transition:color .25s}.faq-list summary:hover{color:#426680}
.closing-inner>.closing-flower{animation:orbit-turn 60s linear infinite;transform-origin:center;opacity:.13}
.closing-rings{position:absolute;right:110px;top:-150px;width:510px;height:510px;pointer-events:none;border:1px solid #10111312;border-radius:50%;animation:ring-breathe 12s ease-in-out infinite}
.closing-rings:before,.closing-rings:after{content:'';position:absolute;inset:45px;border:1px solid #10111312;border-radius:50%}.closing-rings:after{inset:90px}
.closing-inner>div:not(.closing-rings){position:relative;z-index:1}
.button>span,.solution-link>span,.text-link>span:last-child,.role-row>span:last-child,.closing-talent>span{display:inline-block;transition:transform .25s}
.button:hover>span,.solution-link:hover>span,.text-link:hover>span:last-child,.role-row:hover>span:last-child,.closing-talent:hover>span{transform:translate(3px,-3px)}
.button:hover{transform:translateY(-2px)}.button:active{transform:translateY(0)}
.footer .brand img{transition:transform .6s}.footer .brand:hover img{transform:rotate(90deg)}
:focus-visible{outline:2px solid #79b7e6;outline-offset:5px}

@keyframes strip-flow{from{transform:translateX(-100%)}to{transform:translateX(500%)}}
@keyframes arrow-flow{0%,75%,100%{transform:translate(0,0)}40%{transform:translate(4px,-4px)}}
@keyframes packet-travel{0%,12%{transform:translateX(0);opacity:.3}45%,65%{opacity:1}88%,100%{transform:translateX(138px);opacity:.1}}
@keyframes scan-line{0%,100%{transform:translateY(-22px);opacity:.3}50%{transform:translateY(22px);opacity:1}}
@keyframes trace-line{to{stroke-dashoffset:-114}}
@keyframes mask-build{0%,100%{opacity:.25}35%,70%{opacity:1}}
@keyframes wave-flow{to{stroke-dashoffset:-410}}
@keyframes node-breathe{0%,100%{transform:scale(.85);opacity:.6}50%{transform:scale(1.12);opacity:1}}
@keyframes review-flow{0%,100%{transform:scaleX(.55)}50%,75%{transform:scaleX(1)}}
@keyframes orbit-turn{to{transform:rotate(360deg)}}
@keyframes signal-wave{0%,100%{transform:scaleY(.3)}50%{transform:scaleY(1)}}
@keyframes stage-flow{0%,100%{transform:scaleX(.05);opacity:0}10%{opacity:1}85%{transform:scaleX(1);opacity:1}95%{transform:scaleX(1);opacity:0}}
@keyframes row-signal{0%,40%,100%{background:transparent}12%,24%{background:#edf7ff}}
@keyframes bar-shine{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
@keyframes icon-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes talent-signal{0%,23%,100%{opacity:0}4%,14%{opacity:.8}}
@keyframes process-flow{0%{transform:translateX(-100%);opacity:0}3%{opacity:1}23%{transform:translateX(100%);opacity:1}26%,100%{transform:translateX(100%);opacity:0}}
@keyframes ring-breathe{0%,100%{transform:scale(.88);opacity:.5}50%{transform:scale(1.1);opacity:1}}
@media(max-width:1100px){.nav-wrap{gap:14px}.header nav{gap:18px}.header .nav-talent{display:none}}
@media(max-width:800px) and (min-width:651px){.header nav{gap:12px;font-size:10px}.header .nav-cta{gap:12px}.page-motion-control{flex-basis:30px;width:30px;height:30px}}
@media(max-width:650px){.header .brand{margin-right:auto}.menu-toggle{order:3}.page-motion-control{flex-basis:32px;width:32px;height:32px}.header .nav-talent{display:block}.header nav{margin-left:0}.service-visual{height:108px}.platform-orbit{width:460px;height:460px;right:-290px;top:100px}.workspace-signal{gap:2px}.workspace-signal i{width:2px}.closing-rings{right:-200px;top:-45px}.page-motion-control:after{right:-50px}}
@media(prefers-reduced-motion:reduce){body:not([data-motion=running]) .page-progress{display:none}body:not([data-motion=running]) .motion-loop,body:not([data-motion=running]) .capability-strip:after,body:not([data-motion=running]) .workspace-sidebar [aria-selected=true]:after{animation:none!important}body:not([data-motion=running]) .service-visual .mask-cell{opacity:1}body:not([data-motion=running]) .service-visual .wave-line{stroke-dasharray:none}body:not([data-motion=running]) .role-row:before{opacity:0}}
