body.ws-ux-cursor-active,
body.ws-ux-cursor-active * {
	cursor: none !important;
}

.ws-ux-cursor,
.ws-ux-cursor-dot {
	position: fixed;
	top: 0;
	left: 0;
	pointer-events: none;
	z-index: 9999;
	opacity: 0;
	visibility: hidden;
	transform: translate3d(-9999px, -9999px, 0);
	transition: opacity 0.22s ease, transform 0.18s ease;
	will-change: transform, opacity;
}

.ws-ux-cursor-dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--ws-cursor-dot-color, #1a1a1a);
}

.ws-ux-cursor {
	width: var(--ws-cursor-circle-size, 36px);
	height: var(--ws-cursor-circle-size, 36px);
	border: 1px solid var(--ws-cursor-circle-color, #1a1a1a);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--ws-cursor-circle-color, #1a1a1a);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	background: rgba(255, 255, 255, 0.02);
	--ws-cursor-scale: 1;
}

.ws-ux-cursor.is-blend,
.ws-ux-cursor-dot.is-blend {
	mix-blend-mode: difference;
}

.ws-ux-cursor.is-visible,
.ws-ux-cursor-dot.is-visible {
	opacity: 1;
	visibility: visible;
}

.ws-ux-cursor.is-hover {
	--ws-cursor-scale: 1.2;
	background: rgba(255, 255, 255, 0.08);
}

.ws-ux-cursor.is-view {
	--ws-cursor-scale: 2.4;
}

.ws-ux-cursor-label {
	opacity: 0;
	transition: opacity 0.18s ease;
	white-space: nowrap;
}

.ws-ux-cursor.is-view .ws-ux-cursor-label {
	opacity: 1;
}

.ws-reveal-item,
.ws-reveal-auto {
	position: relative;
	overflow: hidden;
}

.ws-reveal-mask {
	position: absolute;
	inset: 0;
	z-index: 2;
	background: var(--ws-reveal-color, #faf8f5);
	will-change: transform;
	transform: translate3d(0, 0, 0);
}

.ws-reveal-item > img,
.ws-reveal-item picture img,
.ws-reveal-auto > img,
.ws-reveal-auto picture img,
.ws-reveal-item .wp-block-image img,
.ws-reveal-auto .wp-block-image img,
.ws-reveal-img {
	transform: scale(1.1);
	transition: transform var(--ws-reveal-duration, 1000ms) var(--ws-reveal-easing, cubic-bezier(0.22, 1, 0.36, 1));
	will-change: transform;
}

.ws-reveal-item.is-revealed > img,
.ws-reveal-item.is-revealed picture img,
.ws-reveal-auto.is-revealed > img,
.ws-reveal-auto.is-revealed picture img,
.ws-reveal-item.is-revealed .wp-block-image img,
.ws-reveal-auto.is-revealed .wp-block-image img,
.ws-reveal-item.is-revealed .ws-reveal-img,
.ws-reveal-auto.is-revealed .ws-reveal-img {
	transform: scale(1);
}

.ws-magnetic-wrap {
	display: inline-flex;
	will-change: transform;
}

.ws-magnetic-wrap > .ws-magnetic-inner {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	will-change: transform;
}

.ws-magnetic-wrap.is-idle,
.ws-magnetic-wrap.is-idle > .ws-magnetic-inner {
	transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.ws-parallax-active-item {
	will-change: transform;
	transform: translate3d(0, 0, 0);
}

html.ws-ux-smooth-running {
	scroll-behavior: auto !important;
}
