/* =========================================================
   AlterMind Sphere — Motion
   Source-aligned decorative orbit animation
   ========================================================= */

@keyframes sphere-orbit-clockwise {
    from {
        transform: translate(-50%, -50%) rotate(0deg);
    }

    to {
        transform: translate(-50%, -50%) rotate(360deg);
    }
}

@keyframes sphere-orbit-counter {
    from {
        transform: translate(-50%, -50%) rotate(0deg);
    }

    to {
        transform: translate(-50%, -50%) rotate(-360deg);
    }
}

/*
 * These timings follow the original hero orbit system:
 * 42s / 30s / 22s.
 *
 * The fourth orbital layer from the original implementation
 * is rendered inside the canvas, so no fourth DOM element is
 * introduced into the frozen HTML structure.
 */

.orbit-1 {
    animation:
        sphere-orbit-clockwise
        42s
        linear
        infinite;
}

.orbit-2 {
    animation:
        sphere-orbit-counter
        30s
        linear
        infinite;
}

.orbit-3 {
    animation:
        sphere-orbit-clockwise
        22s
        linear
        infinite;
}


/* ---------------------------------------------------------
   Decorative orbit marker motion
   --------------------------------------------------------- */

.orbit-1::after {
    animation:
        sphere-orbit-clockwise
        42s
        linear
        infinite;
}

.orbit-2::after {
    animation:
        sphere-orbit-counter
        30s
        linear
        infinite;
}

.orbit-3::after {
    animation:
        sphere-orbit-clockwise
        22s
        linear
        infinite;
}


/* ---------------------------------------------------------
   Reduced motion
   --------------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {
    .orbit-1,
    .orbit-2,
    .orbit-3,
    .orbit-1::after,
    .orbit-2::after,
    .orbit-3::after {
        animation: none !important;
    }
}