.topbar{position:fixed;transition:transform .45s cubic-bezier(.22,1,.36,1),background .35s,backdrop-filter .35s}.topbar.scrolled{background:#121212d9;backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.topbar.is-hidden{transform:translateY(-105%)}
.hero-stage{--tilt-x:0deg;--tilt-y:0deg;--scroll-shift:0px;--scroll-rotate:0deg;transform:perspective(1200px) translateY(var(--scroll-shift)) rotate(var(--scroll-rotate)) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));transform-origin:50% 30%;transition:transform .18s ease-out}
.orbit-one{animation:orbitPulse 2.8s ease-in-out infinite}.orbit-two{animation:orbitDot 2.8s ease-in-out infinite}
.product-card{--mx:50%;--my:50%;position:relative;transition:opacity .38s,transform .55s cubic-bezier(.22,1,.36,1),filter .38s;isolation:isolate}.product-card:before{content:"";position:absolute;inset:0;border-radius:inherit;z-index:-1;background:radial-gradient(460px circle at var(--mx) var(--my),#ffffff10,transparent 42%);opacity:0;transition:opacity .3s}.product-card:hover:before{opacity:1}.product-card:hover{transform:translateY(-8px) scale(1.008)}.product-card.filtered-out{display:none}.product-card.filter-in{animation:filterIn .42s both;animation-delay:var(--filter-delay)}
.process li{transition:padding .45s cubic-bezier(.22,1,.36,1),background .3s}.process li:hover{padding-left:18px;padding-right:18px;background:#ffffff05}
.faq-list details{transition:padding .35s,background .35s}.faq-list details[open]{padding-left:18px;padding-right:18px;background:#ffffff05}.faq-list details p{animation:answerIn .4s cubic-bezier(.22,1,.36,1)}
.reveal{opacity:0;transform:translateY(30px) scale(.992);filter:blur(5px);transition:opacity .85s cubic-bezier(.22,1,.36,1),transform .85s cubic-bezier(.22,1,.36,1),filter .7s;transition-delay:var(--reveal-delay,0ms)}.reveal.visible{opacity:1;transform:none;filter:none}
@keyframes orbitPulse{50%{transform:scale(1.35);opacity:.25}}@keyframes orbitDot{50%{transform:scale(.55);opacity:.5}}@keyframes filterIn{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}@keyframes answerIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.ticker div,.orbit{animation:none}.reveal{opacity:1;transform:none;filter:none;transition:none}.pill,.product-card,.topbar,.hero-stage{transition:none}.hero-stage{transform:none}}
