/* =====================================================================
 * GSAP for WPBakery — frontend styles
 * ===================================================================== */

.gjc-wrap {
	position: relative;
}

/* Entrance — initially hidden by inline style until GSAP takes over */
.gjc-entrance {
	will-change: transform, opacity;
}

/* ScrollTrigger wrappers */
.gjc-st {
	will-change: transform, opacity;
}

/* Stagger — children hidden via inline <style> block injected by shortcode */
.gjc-stagger {
	display: block;
}

/* MotionPath */
.gjc-motionpath {
	position: relative;
	width: 100%;
	overflow: visible;
}

.gjc-mp-svg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 0;
}

.gjc-mp-mover-wrap {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	will-change: transform;
}

.gjc-mp-default-mover {
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: linear-gradient(135deg, #7c5cff, #21d4fd);
	box-shadow: 0 0 12px rgba(124, 92, 255, 0.6);
}

/* Timeline */
.gjc-timeline {
	display: block;
}
.gjc-tl-step {
	will-change: transform, opacity;
}

/* SplitText */
.gjc-splittext {
	will-change: transform, opacity;
}
.gjc-splittext span {
	display: inline-block;
	white-space: pre;
}

/* Reduced motion: respect user preference */
@media (prefers-reduced-motion: reduce) {
	.gjc-entrance,
	.gjc-st,
	.gjc-tl-step,
	.gjc-splittext span,
	.gjc-stagger > * {
		opacity: 1 !important;
		transform: none !important;
		animation: none !important;
		transition: none !important;
	}
}
