/* Motion and density layer — restrained scientific movement */
.science-rail{height:66px;overflow:hidden;border-block:1px solid rgba(157,218,211,.12);background:#031116;display:flex;align-items:center;position:relative;z-index:6}
.science-rail:before,.science-rail:after{content:"";position:absolute;z-index:2;top:0;bottom:0;width:90px;pointer-events:none}.science-rail:before{left:0;background:linear-gradient(90deg,#031116,transparent)}.science-rail:after{right:0;background:linear-gradient(-90deg,#031116,transparent)}
.science-track{width:max-content;display:flex;animation:scienceScroll 34s linear infinite;will-change:transform}.science-set{display:flex;align-items:center;white-space:nowrap;padding-right:42px}.science-set span{font-size:8px;letter-spacing:.17em;text-transform:uppercase;color:#718a88;padding:0 25px}.science-set b{color:#5fd4c8;font-weight:500;margin-right:10px}.science-set i{width:5px;height:5px;border:1px solid #4bc8bd;border-radius:50%;box-shadow:0 0 12px rgba(68,207,194,.55)}
@keyframes scienceScroll{to{transform:translateX(-50%)}}

.hero-visual img{animation:heroFloat 8s ease-in-out infinite;will-change:transform}
.dna-motion{position:absolute;z-index:3;width:min(650px,46vw);height:auto;aspect-ratio:650/590;transform:translate(8px,20px);pointer-events:none;overflow:visible;mix-blend-mode:screen;animation:heroFloat 8s ease-in-out infinite;will-change:transform}
.dna-trace{fill:none;stroke:#58f1e5;stroke-width:1.25;stroke-linecap:round;stroke-dasharray:6 22;opacity:.34;filter:drop-shadow(0 0 5px rgba(71,232,219,.85));animation:dnaCurrent 4.8s linear infinite}.dna-trace-b{stroke:#d6fffb;stroke-width:.75;stroke-dasharray:3 28;opacity:.25;animation-duration:6.2s;animation-direction:reverse}.dna-photons circle{fill:#dffffb;stroke:#40e2d5;stroke-width:1;opacity:.95}
.orbit-one{animation:orbitBreathe 10s ease-in-out infinite}.orbit-two{animation:orbitSpin 34s linear infinite}
.label-one{animation:labelDrift 6s ease-in-out infinite}.label-two{animation:labelDrift 6s ease-in-out -3s infinite}
.pulse{animation:pulseHalo 2.5s ease-out infinite}
@keyframes heroFloat{0%,100%{transform:translate(8px,20px)}50%{transform:translate(8px,8px)}}
@keyframes dnaCurrent{to{stroke-dashoffset:-112}}
@keyframes orbitBreathe{0%,100%{transform:rotate(-18deg) scale(1);opacity:.7}50%{transform:rotate(-14deg) scale(1.035);opacity:1}}
@keyframes orbitSpin{to{transform:rotate(342deg)}}
@keyframes labelDrift{0%,100%{translate:0 0}50%{translate:0 -7px}}
@keyframes pulseHalo{0%{box-shadow:0 0 0 3px rgba(70,215,198,.14),0 0 10px rgba(70,215,198,.55)}70%{box-shadow:0 0 0 12px rgba(70,215,198,0),0 0 20px rgba(70,215,198,.22)}100%{box-shadow:0 0 0 3px rgba(70,215,198,.08),0 0 10px rgba(70,215,198,.45)}}

.capability-card{--mx:50%;--my:50%}
.capability-card:after{background:radial-gradient(circle at var(--mx) var(--my),rgba(77,215,202,.13),rgba(53,209,196,.035) 36%,transparent 68%);width:100%;height:100%;inset:0;border-radius:0;filter:none;opacity:.45;transition:opacity .3s}
.capability-card:hover:after{opacity:1}
.sequence-chain i{animation:nodePulse 3s ease-in-out infinite}.sequence-chain i:nth-child(2){animation-delay:.35s}.sequence-chain i:nth-child(3){animation-delay:.7s}.sequence-chain i:nth-child(4){animation-delay:1.05s}.sequence-chain i:nth-child(5){animation-delay:1.4s}.sequence-chain i:nth-child(6){animation-delay:1.75s}
@keyframes nodePulse{0%,100%{scale:1;box-shadow:0 0 0 5px rgba(64,210,198,.025)}50%{scale:1.35;box-shadow:0 0 0 9px rgba(64,210,198,.065),0 0 16px rgba(72,215,203,.35)}}
.mini-vial i{animation:powderBreathe 4.2s ease-in-out infinite}.freeze-field i{animation:particleFloat 3.6s ease-in-out infinite}.freeze-field i:nth-child(2n){animation-delay:-1.3s}.freeze-field i:nth-child(3n){animation-delay:-2.1s}
@keyframes powderBreathe{0%,100%{transform:scaleX(.94);filter:blur(.3px)}50%{transform:scaleX(1.08) translateY(-2px);filter:blur(.7px)}}
@keyframes particleFloat{0%,100%{translate:0 0;opacity:.35}50%{translate:0 -9px;opacity:1}}
.motion-ready .analytics-visual .visual-line{stroke-dasharray:780;stroke-dashoffset:780}.motion-ready .capability-card.motion-active .analytics-visual .visual-line{animation:drawSignal 2.2s cubic-bezier(.2,.75,.3,1) forwards}
@keyframes drawSignal{to{stroke-dashoffset:0}}
.label-stack i{animation:labelHover 5s ease-in-out infinite}.label-stack i:nth-child(2){animation-delay:-1.5s}.label-stack i:nth-child(3){animation-delay:-3s}
@keyframes labelHover{0%,100%{translate:0 0}50%{translate:0 -7px}}

.motion-ready .coa-card .chart-card .line{stroke-dasharray:780;stroke-dashoffset:780}.motion-ready .coa-card.motion-active .chart-card .line{animation:drawSignal 2.4s cubic-bezier(.2,.75,.3,1) .15s forwards}.motion-ready .coa-card .chart-card .area{opacity:0}.motion-ready .coa-card.motion-active .chart-card .area{animation:areaFade 1.2s ease 1.35s forwards}
@keyframes areaFade{to{opacity:1}}
.coa-metrics>div{transition:background .3s,border-color .3s}.coa-metrics>div:hover{background:rgba(57,205,192,.055);border-color:rgba(73,218,204,.22)}

.process-list.motion-active:after{content:"";position:absolute;left:7%;right:7%;top:47px;height:1px;background:linear-gradient(90deg,transparent,#52d7ca 12%,#52d7ca 88%,transparent);transform-origin:left;animation:pathGrow 2s cubic-bezier(.2,.75,.3,1) forwards}.process-dot{position:relative;z-index:2;animation:dotIdle 3.4s ease-in-out infinite}.process-list li:nth-child(2) .process-dot{animation-delay:.35s}.process-list li:nth-child(3) .process-dot{animation-delay:.7s}.process-list li:nth-child(4) .process-dot{animation-delay:1.05s}.process-list li:nth-child(5) .process-dot{animation-delay:1.4s}
@keyframes pathGrow{from{scale:0 1}to{scale:1 1}}@keyframes dotIdle{0%,100%{box-shadow:0 0 0 5px rgba(32,221,206,.06)}50%{box-shadow:0 0 0 10px rgba(32,221,206,.015),0 0 18px rgba(32,221,206,.23)}}

.research-card{--mx:75%;--my:20%;transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}.research-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--mx) var(--my),rgba(62,208,195,.12),transparent 36%);opacity:0;transition:opacity .35s;pointer-events:none}.research-card:hover{transform:translateY(-5px);border-color:rgba(102,219,208,.24);box-shadow:0 26px 60px rgba(0,0,0,.18)}.research-card:hover:before{opacity:1}
.molecule{animation:moleculeOrbit 15s linear infinite}.research-card:nth-child(2) .molecule{animation-duration:19s;animation-direction:reverse}.research-card:nth-child(3) .molecule{animation-duration:22s}.research-card:nth-child(4) .molecule{animation-duration:17s;animation-direction:reverse}
@keyframes moleculeOrbit{to{rotate:360deg}}
.company-visual .ring{animation:ringPulse 8s ease-in-out infinite}.company-visual img{animation:markFloat 7s ease-in-out infinite}
@keyframes ringPulse{0%,100%{scale:.96;opacity:.55}50%{scale:1.025;opacity:1}}@keyframes markFloat{0%,100%{transform:translateY(-4%)}50%{transform:translateY(-7%)}}

.scroll-meter{position:fixed;z-index:80;left:0;top:0;height:2px;width:calc(var(--scroll-progress,0) * 100%);background:linear-gradient(90deg,#178b85,#6ae2d7);box-shadow:0 0 12px rgba(79,217,205,.5);pointer-events:none}

@media(max-width:1100px){.process-list.motion-active:after{display:none}.hero-visual img,.dna-motion{animation-name:heroFloatTablet}.dna-motion{width:min(620px,86vw);max-height:580px;transform:translate(0,12px)}@keyframes heroFloatTablet{0%,100%{transform:translate(0,12px)}50%{transform:translate(0,3px)}}}
@media(max-width:760px){.science-rail{height:54px}.science-set span{padding:0 18px}.hero-visual img,.dna-motion{animation-name:heroFloatMobile}.dna-motion{width:min(440px,120vw);max-height:390px;transform:translate(0,10px)}@keyframes heroFloatMobile{0%,100%{transform:translate(0,10px)}50%{transform:translate(0,3px)}}.research-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.science-track,.hero-visual img,.dna-motion,.dna-trace,.orbit-one,.orbit-two,.label-one,.label-two,.pulse,.sequence-chain i,.mini-vial i,.freeze-field i,.label-stack i,.process-dot,.molecule,.company-visual .ring,.company-visual img{animation:none!important}.dna-photons{display:none}.analytics-visual .visual-line,.coa-card .chart-card .line{stroke-dashoffset:0}.coa-card .chart-card .area{opacity:1}.process-list.motion-active:after{animation:none;scale:1 1}.capability-card:hover,.research-card:hover{transform:none}}
