.reading-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:20;background:linear-gradient(90deg,#8dbd48,var(--lime),#b9e9ff);transform:scaleX(0);transform-origin:left;box-shadow:0 0 10px #d6f98655;pointer-events:none}.hero{isolation:isolate}.signal-field{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;opacity:.7}.hero-copy{animation:hero-arrive 1.1s cubic-bezier(.2,.7,.2,1) both}.network{animation:hub-arrive 1.6s ease both}.signal-chip{position:absolute;font:7px monospace;letter-spacing:.7px;padding:7px 9px;border:1px solid #6a8e3844;border-radius:4px;color:#c9e79e;background:#172012cc;box-shadow:0 0 20px #b2e75b08;pointer-events:none;z-index:2}.chip-in{top:4%;left:13%;animation:chip-drift 9s ease-in-out infinite}.chip-out{bottom:6%;right:8%;color:#baddeb;border-color:#6da4b233;animation:chip-drift 11s ease-in-out -4s infinite}.core-ripple{position:absolute;left:50%;top:50%;width:120px;height:120px;border:1px solid #cafa7260;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:-1;animation:signal-ripple 7s ease-out infinite}.ripple-two{animation-delay:-3.5s}.network .orbit-two{border-style:dashed;border-color:#90ac5725;animation:orbit-spin 80s linear infinite}.core:before{content:'';position:absolute;inset:-7px;border:1px solid #a9ce6b40;border-radius:29px;clip-path:polygon(0 0,28% 0,28% 2%,2% 2%,2% 28%,0 28%,0 0,100% 0,100% 28%,98% 28%,98% 2%,72% 2%,72% 0,100% 0,100% 100%,72% 100%,72% 98%,98% 98%,98% 72%,100% 72%,100% 100%,0 100%,0 72%,2% 72%,2% 98%,28% 98%,28% 100%,0 100%);animation:core-brackets 6s ease-in-out infinite}.motion-reveal{opacity:.35;transform:translateY(25px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}.motion-reveal.is-revealed,.motion-reveal:focus-within{opacity:1;transform:none}.service-card{--pointer-x:50%;--pointer-y:50%;transform-style:preserve-3d}.service-card:after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(250px circle at var(--pointer-x) var(--pointer-y),#d5ff8720,transparent 70%);opacity:0;transition:opacity .3s;border-radius:inherit}.service-card:hover:after{opacity:1}.service-card.is-revealed:hover{transform:perspective(800px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(-3px);transition:transform .15s ease,border-color .2s}.card-top svg{animation:icon-drift 7s ease-in-out infinite}.service-card:nth-child(2) .card-top svg{animation-delay:-2.3s}.service-card:nth-child(3) .card-top svg{animation-delay:-4.6s}.button-lime,.button-dark{position:relative;overflow:hidden}.button-lime:after,.button-dark:after{content:'';position:absolute;top:-50%;bottom:-50%;width:35%;left:-70%;transform:skewX(-22deg);background:linear-gradient(90deg,transparent,#ffffff40,transparent);animation:button-sweep 9s ease-in-out infinite;pointer-events:none}.button-dark:after{background:linear-gradient(90deg,transparent,#d6f98620,transparent);animation-delay:-4s}.button>svg,.text-link>svg{transition:transform .25s}.button:hover>svg,.text-link:hover>svg{transform:translateX(4px)}.pipeline-console{background-image:radial-gradient(ellipse at 50% 0,#c9f87610,transparent 65%),linear-gradient(120deg,#1b2218,#10170f)}.unit-brain:after{content:'';position:absolute;left:14px;right:14px;top:0;height:1px;background:linear-gradient(90deg,transparent,#d6f986,transparent);box-shadow:0 0 14px #d6f98666;animation:brain-scan 6s ease-in-out infinite;pointer-events:none}.pipeline-link:before{content:'{ }';position:absolute;left:0;top:8px;font:7px monospace;white-space:nowrap;color:#bce18c;opacity:0;animation:packet-label 4s linear infinite}.pipeline-link:nth-of-type(4):before{content:'✓';animation-delay:-2s;color:#a4d6e8}.unit-brain .unit-symbol{position:relative}.unit-brain .unit-symbol:after{content:'';position:absolute;inset:-4px;border:1px dashed #b8d96b60;border-radius:10px;animation:icon-orbit 16s linear infinite}.log-updated{animation:log-arrive .5s ease both}.workflow-step.is-active:before{content:'';position:absolute;top:29px;left:0;width:43px;height:43px;border-radius:9px;border:1px solid #c8ef79;animation:step-signal 1.8s ease-out infinite;pointer-events:none}.workflow-step.is-done .step-count{color:#c8deae}.approach-steps article{position:relative}.approach-steps article:after{content:'';position:absolute;bottom:-1px;height:1px;width:30%;left:0;background:linear-gradient(90deg,transparent,#d6f98666,transparent);animation:approach-signal 10s linear infinite;pointer-events:none}.approach-steps article:nth-child(2):after{animation-delay:-3.3s}.approach-steps article:nth-child(3):after{animation-delay:-6.6s}.contact-star{filter:drop-shadow(0 0 10px #42582018)}.contact .button{z-index:1}.scene-paused *,.scene-paused *:before,.scene-paused *:after{animation-play-state:paused!important}.motion-paused .motion-reveal{opacity:1;transform:none;transition:none}.motion-paused .service-card:hover{transform:none}.motion-paused .service-card:after{opacity:0}.motion-paused .button>svg,.motion-paused .text-link>svg{transition:none;transform:none}
@keyframes hero-arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes hub-arrive{from{opacity:0;filter:blur(4px)}to{opacity:1;filter:blur(0)}}
@keyframes chip-drift{0%,100%{transform:translate(0,0);opacity:.65}50%{transform:translate(10px,-9px);opacity:1}}
@keyframes signal-ripple{0%{transform:translate(-50%,-50%) scale(.9);opacity:0}15%{opacity:.55}100%{transform:translate(-50%,-50%) scale(2.7);opacity:0}}
@keyframes core-brackets{0%,100%{opacity:.35;transform:scale(1)}50%{opacity:.9;transform:scale(1.04)}}
@keyframes icon-drift{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes button-sweep{0%,65%{left:-70%}85%,100%{left:150%}}
@keyframes brain-scan{0%,100%{transform:translateY(0);opacity:.15}50%{transform:translateY(195px);opacity:.7}}
@keyframes packet-label{0%{left:0;opacity:0}20%,75%{opacity:.6}100%{left:75%;opacity:0}}
@keyframes icon-orbit{to{transform:rotate(360deg)}}
@keyframes log-arrive{from{opacity:.25;transform:translateY(3px)}to{opacity:1;transform:none}}
@keyframes step-signal{from{transform:scale(1);opacity:.5}to{transform:scale(1.45);opacity:0}}
@keyframes approach-signal{from{left:0;opacity:0}25%,75%{opacity:1}to{left:70%;opacity:0}}
@media(max-width:620px){.signal-field{opacity:.45}.signal-chip{font-size:5.5px;padding:5px 6px}.chip-in{left:8%;top:3%}.chip-out{bottom:5%;right:3%}.core-ripple{width:90px;height:90px}.workflow-step.is-active:before{width:40px;height:40px;top:4px}.pipeline-link:before{top:0;left:-24px;animation-name:packet-label-down}.unit-brain:after{animation-name:brain-scan-small}.motion-reveal{transform:translateY(15px)}.unit-brain .unit-symbol:after{inset:-3px}}
@keyframes brain-scan-small{0%,100%{transform:translateY(0);opacity:.15}50%{transform:translateY(120px);opacity:.7}}
.unit-brain{overflow:hidden}
@media(max-width:620px){.unit-brain .unit-symbol{position:absolute}}
@keyframes packet-label-down{0%{top:0;opacity:0}20%,75%{opacity:.6}100%{top:85%;opacity:0}}
@media(prefers-reduced-motion:reduce){.motion-reveal{opacity:1;transform:none;transition:none}.hero-copy,.network{opacity:1;filter:none;transform:none}.signal-field{opacity:.25}.core-ripple{display:none}.service-card.is-revealed:hover{transform:none}.button:hover>svg,.text-link:hover>svg{transform:none}.unit-brain:after,.pipeline-link:before{display:none}}
