#orbit-particles-canvas {
  position: fixed; top: 0; left: 0;
  width: 100%; height: 100%;
  pointer-events: none; z-index: 0; opacity: 0.5;
}
.star-field-wrap {
  position: fixed; inset: 0;
  pointer-events: none; z-index: 0; overflow: hidden;
}
.star-dot {
  position: absolute; border-radius: 50%; background: #fff;
  animation: twinkle ease-in-out infinite;
}
@keyframes twinkle {
  0%, 100% { opacity: 0.07; transform: scale(1); }
  50%       { opacity: 0.9;  transform: scale(1.6); }
}
.shimmer-text {
  background: linear-gradient(90deg, #1C1C2E 35%, #A49CC1 50%, #7B6FAF 56%, #1C1C2E 65%);
  background-size: 250% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: text-shimmer 5s linear infinite;
}
@keyframes text-shimmer {
  from { background-position: 250% center; }
  to   { background-position: -250% center; }
}
[data-aos="orbit-pop"] {
  transform: scale(0.75) rotate(-6deg); opacity: 0;
  transition-property: transform, opacity;
}
[data-aos="orbit-pop"].aos-animate {
  transform: scale(1) rotate(0deg); opacity: 1;
}
[data-aos="float-up"] {
  transform: translateY(55px); opacity: 0;
  transition-property: transform, opacity;
}
[data-aos="float-up"].aos-animate {
  transform: translateY(0); opacity: 1;
}
.pulse-ring { display: inline-flex; align-items: center; justify-content: center; position: relative; }
.pulse-ring::before {
  content: ''; position: absolute; width: 100%; height: 100%;
  border-radius: 50%; background: rgba(164,156,193,0.2);
  animation: pulse-expand 2.8s ease-out infinite;
}
@keyframes pulse-expand {
  0%   { transform: scale(1);   opacity: 0.8; }
  100% { transform: scale(2.5); opacity: 0; }
}
/* Section floating orbit elements */
@keyframes sf-float {
  0%, 100% { transform: translateY(0px)   scale(1);    }
  35%       { transform: translateY(-20px) scale(1.06); }
  68%       { transform: translateY(9px)   scale(0.96); }
}
.section-floater { will-change: transform; }
.section-floater svg { width: 100%; height: 100%; display: block; overflow: visible; }

.hero-section, .about-section, .worlds-section, .features-section,
.stem-section, .programs-section, .testimonial-section,
.newsletter-section, .contact-section, #menu, #pricing,
.services-section, footer { position: relative; z-index: 1; }
