/* Tailwind-inspired motion utilities, shipped locally to keep production weight low. */
.motion-enter{opacity:0;transform:translateY(28px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}.motion-enter.is-visible{opacity:1;transform:translateY(0)}.motion-delay-2{transition-delay:.16s}.service-card,.capability-grid article,.lab-page-card,.on-site__grid article{transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s ease,border-color .3s ease}.service-card:hover,.capability-grid article:hover,.lab-page-card:hover,.on-site__grid article:hover{transform:translateY(-7px)}.button{transition:transform .25s cubic-bezier(.22,1,.36,1),background-color .25s ease,box-shadow .25s ease}.button:hover{box-shadow:0 12px 24px #0c8cb342}.brand__mark{animation:mark-in .75s cubic-bezier(.22,1,.36,1) both}.orb--one{animation:drift 8s ease-in-out infinite}.orb--two{animation:drift 10s ease-in-out infinite reverse}.instrument{animation:instrument-in 1s .15s cubic-bezier(.22,1,.36,1) both}.floating-card{animation:float 4s 1.1s ease-in-out infinite}.status-dot{animation:pulse 2s ease-in-out infinite}.lab-page-card__icon{transition:transform .35s cubic-bezier(.22,1,.36,1),background-color .3s ease}.lab-page-card:hover .lab-page-card__icon{transform:rotate(-10deg) scale(1.12);background:#c9eeea}.industry-cloud span{transition:transform .25s ease,background-color .25s ease,color .25s ease}.industry-cloud span:hover{transform:translateY(-4px);background:var(--blue);color:#fff}@keyframes mark-in{from{opacity:0;transform:rotate(-35deg) scale(.6)}to{opacity:1;transform:rotate(0) scale(1)}}@keyframes drift{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(-14px,16px,0)}}@keyframes instrument-in{from{opacity:0;transform:translateY(35px) rotate(3deg)}to{opacity:1;transform:translateY(0) rotate(0)}}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-11px)}}@keyframes pulse{0%,100%{box-shadow:0 0 0 6px #d6f2ef}50%{box-shadow:0 0 0 11px #d6f2ef99}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.motion-enter{opacity:1;transform:none}}
