.card-hover{cursor:pointer;transition:transform .15s,box-shadow .15s}.card-hover:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.scroll-progress{background:var(--indigo-9);z-index:100;transform-origin:0;width:100%;height:2px;animation:linear scroll-progress;animation-timeline:scroll();position:fixed;top:0;left:0}@keyframes scroll-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.gradient-text{background:linear-gradient(135deg,var(--indigo-9),var(--indigo-11));-webkit-text-fill-color:transparent;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:6s ease-in-out infinite shimmer}@keyframes shimmer{0%,to{background-position:0%}50%{background-position:100%}}.hero-bg{background:radial-gradient(ellipse 80% 60% at 50% 0%,var(--indigo-a2)0%,transparent 70%);position:relative;overflow:hidden}.hero-bg:before{content:"";background:repeating-linear-gradient(90deg,var(--gray-a2)0px,var(--gray-a2)1px,transparent 1px,transparent 60px),repeating-linear-gradient(0deg,var(--gray-a2)0px,var(--gray-a2)1px,transparent 1px,transparent 60px);pointer-events:none;position:absolute;inset:0;-webkit-mask-image:radial-gradient(60% 50% at 50% 40%,#000,#0000);mask-image:radial-gradient(60% 50% at 50% 40%,#000,#0000)}.pulse-rings{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow:hidden}.pulse-rings span{border:1px solid var(--indigo-a3);border-radius:50%;animation:4s ease-out infinite pulse-ring;position:absolute}.pulse-rings span:first-child{width:200px;height:200px;animation-delay:0s}.pulse-rings span:nth-child(2){width:400px;height:400px;animation-delay:1s}.pulse-rings span:nth-child(3){width:600px;height:600px;animation-delay:2s}@keyframes pulse-ring{0%{opacity:.4;transform:scale(.8)}to{opacity:0;transform:scale(1.2)}}.trajectory-line{background:linear-gradient(90deg,transparent,var(--indigo-9),transparent);transform-origin:0;width:100%;max-width:480px;height:2px;animation:1.5s ease-out forwards trace-line}@keyframes trace-line{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}.floating-badges{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.floating-badge{border-radius:var(--radius-2);border:1px solid var(--gray-a4);background:var(--color-surface);font-size:13px;font-family:var(--font-mono,monospace);color:var(--gray-11);letter-spacing:-.01em;padding:6px 14px;animation:3s ease-in-out infinite badge-float}.floating-badge:nth-child(2){animation-delay:.5s}.floating-badge:nth-child(3){animation-delay:1s}.floating-badge:nth-child(4){animation-delay:1.5s}@keyframes badge-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.heartbeat{animation:2.5s ease-in-out infinite heartbeat}@keyframes heartbeat{0%,to{transform:scale(1)}14%{transform:scale(1.15)}28%{transform:scale(1)}42%{transform:scale(1.1)}56%{transform:scale(1)}}.cta-button{transition:transform .15s,box-shadow .15s}.cta-button:hover{box-shadow:0 4px 16px var(--indigo-a4);transform:translateY(-1px)}.cta-button:active{transform:scale(.98)}.cta-banner{background:linear-gradient(180deg,transparent 0%,var(--indigo-a2)100%)}.scroll-reveal{opacity:0;transition:opacity .6s ease-out,transform .6s ease-out;transform:translateY(20px)}.scroll-reveal[data-visible=true]{opacity:1;transform:translateY(0)}.step-card{border-radius:var(--radius-3);border:1px solid var(--gray-a3);background:var(--color-surface);transition:transform .2s,border-color .2s,box-shadow .2s}.step-card:hover{border-color:var(--indigo-a6);box-shadow:0 0 20px var(--indigo-a3),inset 0 0 20px var(--indigo-a2);transform:translateY(-3px)}.feature-card{border-radius:var(--radius-3);border:1px solid var(--gray-a3);background:var(--color-surface);transition:transform .2s,border-color .2s,box-shadow .2s}.feature-card:hover{border-color:var(--indigo-a6);box-shadow:0 0 20px var(--indigo-a3),inset 0 0 20px var(--indigo-a2);transform:translateY(-3px)}.steps-grid{position:relative}@media (min-width:768px){.steps-grid:before{content:"";border-top:2px dashed var(--gray-a5);pointer-events:none;z-index:0;height:0;position:absolute;top:42px;left:18%;right:18%}.steps-grid>*{z-index:1;position:relative}}.research-card{border-radius:var(--radius-3);border:1px solid var(--gray-a3);background:var(--color-surface);transition:border-color .2s}.research-card:hover{border-color:var(--indigo-a5)}
