/* Public presentation only. Content remains visible without JavaScript. */
[data-motion-page] .hero{position:relative;isolation:isolate}
[data-motion-page] .hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 78% 42%,rgba(170,131,255,.13),transparent 58%);transform-origin:75% 45%}
[data-motion-page] .hero-speed{position:relative;width:fit-content}
[data-motion-page] .hero-speed::after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:2px;background:linear-gradient(90deg,var(--accent),transparent);transform-origin:left;opacity:.65}
[data-motion-page] :is(.button,.capability,.project-card,.segment-grid>a){transition:transform .3s cubic-bezier(.2,.7,.2,1),border-color .3s,background-color .3s,box-shadow .3s}
[data-motion-page] :is(.button,.card-link) span[aria-hidden], [data-motion-page] .card-top b{display:inline-block;transition:transform .3s cubic-bezier(.2,.7,.2,1)}
[data-motion-page] .theme-toggle svg{transition:transform .35s cubic-bezier(.2,.7,.2,1)}
[data-motion-page] .motion-ticker{padding-left:0;padding-right:0;justify-content:flex-start}
.motion-ticker-track{display:flex;width:max-content;flex:none}
.motion-ticker-group{display:flex;align-items:center;justify-content:space-around;gap:38px;padding-right:38px;min-width:100vw;flex:none}
/* Loops are opt-in, only while their region is visible and the tab is active. */
[data-motion-state="running"] .hero[data-motion-visible]::before{animation:rd-aura 9s ease-in-out infinite alternate}
[data-motion-state="running"] .hero[data-motion-visible] .art-window{animation:rd-float 5s ease-in-out infinite}
[data-motion-state="running"] .hero[data-motion-visible] .art-dashboard{animation:rd-float 5s ease-in-out -2.5s infinite}
[data-motion-state="running"] .hero[data-motion-visible] .connection b{animation:rd-flow 2.6s ease-in-out infinite}
[data-motion-state="running"] .hero[data-motion-visible] .art-row b{animation:rd-signal 3.6s ease-in-out infinite}
[data-motion-state="running"] .hero[data-motion-visible] .art-row:nth-of-type(2) b{animation-delay:.45s}
[data-motion-state="running"] .hero[data-motion-visible] .art-row:nth-of-type(3) b{animation-delay:.9s}
[data-motion-state="running"] .hero[data-motion-visible] .signal{animation:rd-signal 3.6s ease-in-out infinite}
[data-motion-state="running"] .hero[data-motion-visible] .hero-speed::after{animation:rd-line .8s cubic-bezier(.2,.7,.2,1) both}
.motion-ticker-track{animation:rd-marquee 32s linear infinite;animation-play-state:paused}
[data-motion-state="running"] .ticker[data-motion-visible] .motion-ticker-track{animation-play-state:running}
@media(hover:hover) and (pointer:fine){
 [data-motion-state="running"] :is(.project-card,.segment-grid>a):hover{transform:translateY(-6px);box-shadow:0 12px 30px rgba(13,5,26,.12)}
 [data-motion-state="running"] :is(.capability,.project-card,.segment-grid>a):hover .card-top b{transform:rotate(-12deg) scale(1.12)}
 [data-motion-state="running"] .button:hover span[aria-hidden]{transform:translate(3px,-3px)}
 [data-motion-state="running"] .theme-toggle:hover svg{transform:rotate(-16deg)}
 [data-motion-state="running"] .system-art{transition:transform .65s cubic-bezier(.2,.7,.2,1)}
 [data-motion-state="running"] .system-art:hover{transform:rotate(0deg) translateY(-4px)}
}
[data-motion-state="running"] .button:active:not(:disabled){transform:translateY(1px) scale(.98)}
[data-motion-state="paused"] *,[data-motion-state="paused"] *::before,[data-motion-state="paused"] *::after{transition:none!important;animation-play-state:paused!important}
[data-motion-state="paused"] :is(.capability,.project-card,.button):hover{transform:none}
@keyframes rd-aura{from{opacity:.5;transform:scale(.94)}to{opacity:1;transform:scale(1)}}
@keyframes rd-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes rd-flow{0%,100%{transform:translateY(-2px);opacity:.55}50%{transform:translateY(3px);opacity:1}}
@keyframes rd-signal{0%,100%{opacity:.55}50%{opacity:1}}
@keyframes rd-line{from{transform:scaleX(.15);opacity:0}to{transform:scaleX(1);opacity:.65}}
@keyframes rd-marquee{to{transform:translateX(-50%)}}
@media(max-width:680px){.motion-ticker-group{gap:23px;padding-right:23px}}
@media(prefers-reduced-motion:reduce){
 [data-motion-page] *,[data-motion-page] *::before,[data-motion-page] *::after{animation:none!important;transition:none!important}
 [data-motion-page] :is(.capability,.project-card,.button):hover{transform:none}
}
@media print{[data-motion-page] *,[data-motion-page] *::before,[data-motion-page] *::after{animation:none!important;transition:none!important}.motion-toggle{display:none!important}}
