/* Floating Cursor Effect - Point with chasing circle */

* {
    cursor: none !important; /* Hide default cursor */
}

._hj-widget-container * {
	cursor: unset !important;
}

.floating-cursor {
	--transition-curve: cubic-bezier(0.25, 0.46, 0.45, 0.94);
	position: fixed;
	top: 0;
	left: 0;
	pointer-events: none;
	mix-blend-mode: plus-lighter;
	transform-origin: top left;
	transition: opacity 1s ease;
}

.floating-cursor, .floating-cursor *
{
	z-index: 2147483647;
}

.floating-cursor.hidden {
	opacity: 0 !important;
}

.cursor-point {
    position: absolute;
    width: .25rem;
    height: .25rem;
    background-color: white;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    transition: width 0.15s var(--transition-curve), height 0.15s var(--transition-curve), background-color 0.15s var(--transition-curve);
}

.cursor-circle {
    position: absolute;
    width: 2rem;
    height: 2rem;
    border: 1px solid white;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    transition: border-width 0.15s var(--transition-curve), border-color 0.15s var(--transition-curve);
    opacity: 1;
}

/* Special state when hovering over interactive elements */
.floating-cursor.hover .cursor-point {
    width: .5rem;
    height: .5rem;
	background-color: var(--accent-color-average);
}

/* Special state when hovering over interactive elements */
.floating-cursor.hover .cursor-circle {
    border-width: .1875rem;
	border-color: var(--accent-color-average);
}
