/* A quiet motion layer. Content remains visible without JavaScript or WebGL. */
:root{--motion-play-state:running;--page-progress:0%}
html[data-motion="paused"]{--motion-play-state:paused}
.hero-art{isolation:auto;overflow:visible}
.hero-art .desktop-window{display:none}
.glass-anchor{position:absolute;inset:-28px -12px 14px -24px;pointer-events:none}
.glass-halo{position:absolute;inset:2% 2% 5%;background:radial-gradient(ellipse at 33% 49%,#80ddff30,transparent 53%),radial-gradient(ellipse at 67% 55%,#a397ed35,transparent 59%);filter:blur(11px);transform:rotate(-12deg)}
.glass-halo:after{content:"";position:absolute;width:68%;height:9%;left:17%;bottom:13%;background:#778cbb25;border-radius:50%;filter:blur(16px)}
.glass-canvas{position:fixed;left:0;top:0;display:block;pointer-events:none;z-index:2;opacity:0;transition:opacity .9s ease;will-change:transform;contain:strict}
.glass-canvas.is-ready{opacity:1}
.glass-fallback{position:absolute;inset:0;transition:opacity .4s ease}
.glass-fallback i{position:absolute;width:45%;height:48%;top:21%;left:14%;border:24px solid #98d9f98a;box-shadow:inset 3px 5px 7px #ffffffd9,inset -5px -5px 12px #517ebb30,2px 8px 25px #719fd52e;border-radius:45%;transform:rotate(-34deg);background:linear-gradient(135deg,#ffffff20,#b6e5f310);backdrop-filter:blur(4px)}
.glass-fallback i:last-child{left:40%;top:34%;border-color:#a594e88a;transform:rotate(-34deg);box-shadow:inset 3px 5px 7px #ffffffd9,inset -5px -5px 12px #7268ab30,2px 8px 25px #7c71aa25}
.glass-fallback i{animation:fallback-float 11s ease-in-out infinite;animation-play-state:var(--motion-play-state)}
.glass-fallback i:last-child{animation-delay:-5.5s}
html[data-glass="ready"] .glass-fallback{opacity:0}
.hero-art .orbit{border-color:#aebfe32e;z-index:0}
.hero-art .orbit-one{inset:31px 20px 47px 5px;transform:rotate(-26deg);animation:orbit-drift 18s ease-in-out infinite alternate;animation-play-state:var(--motion-play-state)}
.hero-art .orbit-two{inset:77px 6px 78px -10px;transform:rotate(17deg)}
.hero-art .orbit-two:after{content:"";position:absolute;top:21%;left:7%;width:4px;height:4px;border-radius:50%;background:#78b6ee;box-shadow:0 0 12px #77a9e980}
.hero-art .label-top{top:-13px;right:36px;font-size:9px;z-index:3}
.hero-art .companion-card{top:auto;bottom:-4px;right:-9px;transform:scale(.69) rotate(-3deg);transform-origin:bottom right;z-index:3;box-shadow:0 16px 55px #293e7020;background:#fffffff2;backdrop-filter:blur(18px);animation:companion-float 8s ease-in-out infinite;animation-play-state:var(--motion-play-state)}
.hero-art .notification-pill{bottom:34px;left:4px;z-index:3;transform:rotate(-2deg);animation:notification-float 8s ease-in-out -4s infinite;animation-play-state:var(--motion-play-state)}
.hero-art .art-caption{bottom:-33px;right:0;display:flex;align-items:center;gap:18px;font-size:7px;letter-spacing:.12em;z-index:4}
#motion-toggle{display:inline-flex;align-items:center;gap:5px;border:1px solid #dce4f1;border-radius:20px;background:#f7f9fdc9;color:#7182a0;padding:5px 8px;min-height:28px;font-size:8px;letter-spacing:0;line-height:1.3;backdrop-filter:blur(8px)}
#motion-toggle:hover{border-color:#aabbdf;color:#3658ab}
.motion-button-icon{font-size:8px;display:inline-block;width:9px;text-align:center}
.signal-rail{position:fixed;right:15px;top:112px;bottom:55px;width:1px;background:linear-gradient(180deg,transparent,#95b7e530 25%,#aa9cd52b 75%,transparent);z-index:1;pointer-events:none;overflow:visible}
.signal-progress{position:absolute;top:0;width:1px;height:var(--page-progress);background:linear-gradient(180deg,transparent,#6ebce7a6,#9478d696);transition:height .12s linear}
.signal-progress:after{content:"";position:absolute;bottom:0;left:-2px;width:5px;height:5px;border-radius:50%;background:#8a9eda80;box-shadow:0 0 14px #83c6e98a}
.signal-packet{position:absolute;top:0;left:-1px;width:3px;height:54px;border-radius:100%;background:linear-gradient(180deg,transparent,#6ed8f9ad);animation:packet-run 7s linear infinite;animation-play-state:var(--motion-play-state);opacity:0}
.packet-two{animation-delay:-2.7s;height:31px;background:linear-gradient(180deg,transparent,#a48ce7a8)}
.packet-three{animation-delay:-4.8s;height:21px}
.connection-strip{position:relative;overflow:hidden}
.connection-strip:after{content:"";position:absolute;top:0;left:0;width:15%;height:1px;background:linear-gradient(90deg,transparent,#87baf1,transparent);animation:connection-sweep 9s linear infinite;animation-play-state:var(--motion-play-state)}
.connection-strip>div{transition:transform .35s ease}.connection-strip>div:hover{transform:translateY(-3px)}
.teams-section,.platform-section,.closing-section{position:relative;isolation:isolate;overflow:hidden}
.teams-section:before,.platform-section:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 90% 75%,#748ce517,transparent 55%)}
.teams-section:after{content:"";position:absolute;top:0;left:-20%;width:35%;height:1px;background:linear-gradient(90deg,transparent,#8dd6ff88,transparent);animation:connection-sweep 11s linear infinite;animation-play-state:var(--motion-play-state);pointer-events:none}
.closing-glow{animation:closing-breathe 14s ease-in-out infinite alternate;animation-play-state:var(--motion-play-state)}
.button>span,.inline-link>span,.text-button>span{transition:transform .25s ease}
.button:hover>span,.text-button:hover>span{transform:translate(3px,-2px)}.inline-link:hover>span{transform:translate(2px,2px)}
html.motion-enhanced [data-reveal]{transition:opacity .75s ease,transform .75s cubic-bezier(.2,.6,.2,1);transition-delay:var(--reveal-delay,0ms)}
html.motion-enhanced [data-reveal]:not(.is-visible){opacity:0;transform:translateY(15px)}
html[data-motion="paused"] [data-reveal]{opacity:1!important;transform:none!important;transition:none!important}
html[data-motion="paused"] .signal-packet{opacity:0!important}
html[data-motion="paused"] .signal-progress{transition:none}
@keyframes packet-run{0%{top:0;opacity:0;transform:scaleY(.6)}8%{opacity:.75}85%{opacity:.6}100%{top:95%;opacity:0;transform:scaleY(1.3)}}
@keyframes connection-sweep{0%{transform:translateX(-150%);opacity:0}15%{opacity:.7}80%{opacity:.7}100%{transform:translateX(850%);opacity:0}}
@keyframes companion-float{0%,100%{transform:scale(.69) rotate(-3deg) translateY(0)}50%{transform:scale(.69) rotate(-2deg) translateY(-7px)}}
@keyframes notification-float{0%,100%{transform:rotate(-2deg) translateY(0)}50%{transform:rotate(-1deg) translateY(-4px)}}
@keyframes orbit-drift{to{transform:rotate(-18deg) translateY(-5px)}}
@keyframes closing-breathe{to{transform:translate(-17px,10px) rotate(7deg);opacity:.65}}
@keyframes fallback-float{0%,100%{transform:rotate(-34deg) translateY(0)}50%{transform:rotate(-30deg) translateY(-6px)}}
@media(max-width:1100px){.glass-anchor{inset:-12px -8px 0 -25px}.hero-art .companion-card{right:-7px;bottom:-13px}.hero-art .notification-pill{bottom:11px}.hero-art .label-top{right:15px;top:-7px}.signal-rail{right:8px}}
@media(max-width:850px){.hero-art .companion-card{bottom:-4px}.hero-art .notification-pill{bottom:24px}.glass-anchor{inset:-20px -10px 18px -20px}.hero-art .label-top{top:-8px}}
@media(max-width:600px){.glass-anchor{inset:-28px -7px 20px -15px}.hero-art .label-top{font-size:7px;right:8px;top:-5px}.hero-art .companion-card{bottom:1px;right:0;transform:scale(.76) rotate(-3deg);animation-name:companion-float-mobile}.hero-art .notification-pill{bottom:18px;left:-3px}.hero-art .art-caption{bottom:-24px;font-size:5px;gap:12px}#motion-toggle{font-size:7px;padding:5px 7px}.signal-rail{right:7px;top:91px;bottom:24px}.glass-fallback i{border-width:18px}.hero-art .orbit-one{inset:16px 4px 40px -5px}.hero-art .orbit-two{inset:48px 0 60px -7px}}
@keyframes companion-float-mobile{0%,100%{transform:scale(.76) rotate(-3deg) translateY(0)}50%{transform:scale(.76) rotate(-2deg) translateY(-5px)}}
@media(prefers-reduced-motion:reduce){:root{--motion-play-state:paused}.glass-canvas,.glass-fallback{transition:none}.signal-packet{display:none}.signal-progress{transition:none}html.motion-enhanced [data-reveal]{opacity:1!important;transform:none!important;transition:none!important}}
