/* Custom cursor: ring + center dot + particle trail */

body.heoc-cursor-enabled,
body.heoc-cursor-enabled a,
body.heoc-cursor-enabled button,
body.heoc-cursor-enabled input,
body.heoc-cursor-enabled textarea,
body.heoc-cursor-enabled select,
body.heoc-cursor-enabled [role="button"] {
	cursor: none !important;
}

#heoc-cursor-ring {
	position: fixed;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	border: 2px solid #8D7156;
	pointer-events: none;
	transform: translate(-50%, -50%);
	left: 0;
	top: 0;
	z-index: 999999;
	transition: width 0.18s, height 0.18s, border-color 0.18s;
	opacity: 0;
}

#heoc-cursor-dot {
	position: fixed;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #755e47;
	pointer-events: none;
	transform: translate(-50%, -50%);
	left: 0;
	top: 0;
	z-index: 999999;
	opacity: 0;
}

.heoc-cursor-trail {
	position: fixed;
	border-radius: 50%;
	background: #8D7156;
	pointer-events: none;
	transform: translate(-50%, -50%);
	left: 0;
	top: 0;
	z-index: 999998;
	opacity: 0;
}

/* Hover state over links and buttons */
#heoc-cursor-ring.heoc-cursor-hover {
	width: 52px;
	height: 52px;
	border-color: #755e47;
}

/* Disable the custom cursor on touch devices */
@media (hover: none) {
	#heoc-cursor-ring,
	#heoc-cursor-dot,
	.heoc-cursor-trail {
		display: none !important;
	}
	body.heoc-cursor-enabled,
	body.heoc-cursor-enabled a,
	body.heoc-cursor-enabled button {
		cursor: auto !important;
	}
}
