/* Antigravity Navigation — Нулевая гравитация */
/* Orbital indicator that floats between nav links */

.section-rail {
    --nav-glow: 0;
    --nav-float: 0;
    transition: box-shadow 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

/* Rail gets subtle aura when interacted with */
.section-rail.is-magnetic {
    box-shadow:
        0 4px 24px rgba(214, 174, 86, calc(0.06 + var(--nav-glow) * 0.12)),
        0 0 0 1px rgba(214, 174, 86, calc(0.08 + var(--nav-glow) * 0.14));
}

/* Orbital dot — floats between links, marks active */
.orbital-indicator {
    position: absolute;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--gold);
    pointer-events: none;
    z-index: 29;
    box-shadow:
        0 0 8px rgba(214, 174, 86, 0.6),
        0 0 18px rgba(214, 174, 86, 0.25),
        0 0 32px rgba(214, 174, 86, 0.12);
    will-change: transform, opacity;
    transition: none;
    opacity: 0;
}

.orbital-indicator.is-visible {
    opacity: 1;
    transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1),
                opacity 0.35s ease;
}

/* Hover levitation — anti-gravity */
.section-rail a {
    transition: color 0.2s ease,
                opacity 0.2s ease,
                transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1),
                text-shadow 0.3s ease;
    position: relative;
    z-index: 2;
}

.section-rail a:hover,
.section-rail a:focus-visible {
    color: var(--gold);
    opacity: 1;
    transform: translate3d(0, -4px, 0);
    text-shadow:
        0 0 20px rgba(214, 174, 86, 0.3),
        0 0 40px rgba(214, 174, 86, 0.1);
}

/* Active section — floats slightly above baseline even when not hovered */
.section-rail a[aria-current="location"] {
    color: var(--gold);
    opacity: 1;
    transform: translate3d(0, -1.5px, 0);
    text-shadow:
        0 0 18px rgba(214, 174, 86, 0.18),
        0 0 36px rgba(214, 174, 86, 0.08);
}

.section-rail a[aria-current="location"]:hover {
    transform: translate3d(0, -4px, 0);
}

/* Scroll parallax — links drift slightly against scroll direction */
.section-rail a[data-scroll-offset] {
    transition: color 0.2s ease,
                opacity 0.2s ease,
                transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1),
                text-shadow 0.3s ease;
}

/* Magnetic dust particles on hover */
.nav-dust {
    position: fixed;
    pointer-events: none;
    z-index: 30;
    width: 2px;
    height: 2px;
    border-radius: 50%;
    background: var(--gold);
    opacity: 0;
    will-change: transform, opacity;
}

/* Reduced motion: disable all antigravity effects */
@media (prefers-reduced-motion: reduce) {
    .section-rail a:hover,
    .section-rail a:focus-visible,
    .section-rail a[aria-current="location"] {
        transform: none;
    }
    .orbital-indicator {
        display: none;
    }
    .nav-dust {
        display: none;
    }
}
