/*!
 * Cursor Follower for Elementor v0.1.0
 * https://artemsemkin.com
 * https://github.com/artkrsk/cursor-follower-for-elementor
 * © 2026 Artem Semkin
 * License: GPL-3.0
 */
.arts-cursor{--arts-cursor-text-color: transparent;--arts-cursor-loading-color: transparent;--arts-cursor-background-color: transparent;--arts-cursor-opacity: 1;--arts-cursor-border-width: 2px;--arts-cursor-border-color: transparent;--arts-cursor-label-visible: 0;--arts-cursor-icon-visible: 0;--arts-cursor-icon-offset-hidden: -20px;--arts-cursor-label-offset-hidden: 20px;--arts-cursor-arrows-horizontal-visible: 0;--arts-cursor-arrows-vertical-visible: 0;--arts-cursor-arrows-size: 24px;--arts-cursor-arrows-offset: calc(var(--arts-cursor-arrows-size) * var(--arts-cursor-scale, 1));--arts-cursor-size: 60px;--arts-cursor-scale: 1;--arts-cursor-scale-pressed: 1;--arts-cursor-loading-animation-visible: 0;position:fixed;top:0;left:0;transform:scale(0);user-select:none;pointer-events:none;z-index:100001;color:var(--arts-cursor-text-color, black);border:none}.arts-cursor *{user-select:none;pointer-events:none}.no-native-cursor{cursor:none !important}.no-native-cursor *{cursor:none !important}.has-cursor-progress{cursor:progress !important}.has-cursor-progress *{cursor:progress !important}.has-cursor-loading-animation .arts-cursor{--arts-cursor-loading-animation-visible: 1}.has-cursor-follower .arts-cursor.uses-css-vars{transform:translate(calc(var(--arts-cursor-translateX, 0px) - 50%), calc(var(--arts-cursor-translateY, 0px) - 50%)) rotate(var(--arts-cursor-rotate, 0deg)) scale(var(--arts-cursor-scaleX, 0), var(--arts-cursor-scaleY, 0));scale:var(--arts-cursor-scaleX, 0),var(--arts-cursor-scaleY, 0)}.has-cursor-follower .arts-cursor.uses-css-vars *{--arts-cursor-translateX: initial;--arts-cursor-translateY: initial;--arts-cursor-rotate: initial;--arts-cursor-scaleX: initial;--arts-cursor-scaleY: initial}.has-cursor-follower .arts-cursor.uses-css-vars .arts-cursor__follower{transform:scale(calc(var(--arts-cursor-scale, 1) * var(--arts-cursor-scale-pressed, 1)))}.has-cursor-follower .arts-cursor.uses-css-vars .arts-cursor__follower *{--arts-cursor-scale: initial;--arts-cursor-scale-pressed: initial}.arts-cursor__follower{position:relative;width:var(--arts-cursor-size, 60px);height:var(--arts-cursor-size, 60px);border-radius:100%;box-shadow:inset 0 0 0 var(--arts-cursor-border-width, 1px) var(--arts-cursor-border-color, currentColor);background-color:var(--arts-cursor-background-color, transparent);opacity:var(--arts-cursor-opacity, 1)}.arts-is-dragging{cursor:none !important}.arts-is-dragging *{cursor:none !important}.arts-is-dragging .arts-is-dragging__blocker{visibility:visible;opacity:1;z-index:100}.arts-is-dragging__blocker{position:absolute;top:0;left:0;width:100%;height:100%;z-index:100;opacity:0;visibility:hidden;transition-delay:.2s}.arts-cursor__arrow{position:absolute;margin:auto;font-size:24px !important;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.arts-cursor__arrow svg{fill:var(--arts-cursor-text-color, black)}.arts-cursor__arrow_horizontal{opacity:var(--arts-cursor-arrows-horizontal-visible, 0)}.arts-cursor__arrow_vertical{opacity:var(--arts-cursor-arrows-vertical-visible, 0)}.arts-cursor__arrow_left{top:0;bottom:0;left:0;transform:translateX(calc(-1 * var(--arts-cursor-arrows-offset, 24px) * var(--arts-cursor-arrows-horizontal-visible, 0)))}.arts-cursor__arrow_right{top:0;bottom:0;right:0;transform:translateX(calc(var(--arts-cursor-arrows-offset, 24px) * var(--arts-cursor-arrows-horizontal-visible, 0)))}.arts-cursor__arrow_up{top:0;left:0;right:0;transform:translateY(calc(-1 * var(--arts-cursor-arrows-offset, 24px) * var(--arts-cursor-arrows-vertical-visible, 0)))}.arts-cursor__arrow_down{bottom:0;left:0;right:0;transform:translateY(calc(var(--arts-cursor-arrows-offset, 24px) * var(--arts-cursor-arrows-vertical-visible, 0)))}.arts-cursor__wrapper{position:relative;width:100%;height:100%}.has-cursor-follower .arts-cursor.uses-css-vars .arts-cursor__wrapper{transform:rotate(var(--arts-cursor-rotate, 0deg))}.has-cursor-follower .arts-cursor.uses-css-vars .arts-cursor__wrapper *{--arts-cursor-rotate: initial}.arts-cursor__wrapper-label,.arts-cursor__wrapper-icon,.arts-cursor__wrapper-loading{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);text-align:center}.arts-cursor__label{display:block;opacity:var(--arts-cursor-label-visible, 0);transform:translateY(calc(var(--arts-cursor-label-offset-hidden, 20px) - var(--arts-cursor-label-offset-hidden, 20px) * var(--arts-cursor-label-visible, 0)));white-space:nowrap;font-size:14px;line-height:1.2;font-weight:bold;letter-spacing:0;color:var(--arts-cursor-text-color, black)}.arts-cursor__icon{display:inline-block;opacity:var(--arts-cursor-icon-visible, 0);transform:translateY(calc(var(--arts-cursor-icon-offset-hidden, -20px) - var(--arts-cursor-icon-offset-hidden, -20px) * var(--arts-cursor-icon-visible, 0)));font-size:28px !important;width:28px;height:28px;vertical-align:middle}.arts-cursor__icon:before{margin:0;vertical-align:top}.arts-cursor__wrapper-loading{transform:translate(-50%, -50%) scale(var(--arts-cursor-scale, 1));width:100%;height:100%;opacity:var(--arts-cursor-loading-animation-visible, 0);display:flex;align-items:center;justify-content:center}.arts-cursor__wrapper-loading svg{animation:rotate 2s linear infinite;transform-origin:center center;width:100%;height:100%;top:0;left:0;margin:auto}.arts-cursor__wrapper-loading svg circle{stroke:var(--arts-cursor-loading-color, blue);stroke-width:var(--arts-cursor-border-width, 1px);stroke-dasharray:150,200;stroke-dashoffset:-150;animation:dash 1.5s ease-in-out infinite;stroke-linecap:round}@keyframes rotate{100%{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,200;stroke-dashoffset:-1}50%{stroke-dasharray:75,200;stroke-dashoffset:-75}100%{stroke-dasharray:150,200;stroke-dashoffset:-150}}