/* Cursor follower (js/cursor.js): a ring and a dot that trail the normal pointer. */

.zn-cursor { position: fixed; top: 0; left: 0; z-index: 10000; pointer-events: none; border-radius: 50%; opacity: 0; transition: opacity 0.3s ease; }
.cursor-on .zn-cursor { opacity: 1; }
.cursor-text .zn-cursor { opacity: 0; }

.zn-cursor__dot { width: 6px; height: 6px; margin: -3px 0 0 -3px; background: var(--primary); }

.zn-cursor__ring {
    width: 26px; height: 26px; margin: -13px 0 0 -13px;
    border: 1.5px solid var(--primary);
}
.zn-cursor__ring::before {
    content: ''; position: absolute; inset: -1.5px; border-radius: 50%;
    background: rgba(235, 113, 29, 0.12);
    transform: scale(0); transition: transform 0.3s ease;
}
.zn-cursor__ring.is-hot::before { transform: scale(1.5); }
.zn-cursor__ring.is-down::before { transform: scale(0.8); }
