@media (pointer: fine) and (hover: hover) and (prefers-reduced-motion: no-preference) {
  :root {
    --dw-cursor-color: #ff3b3b;
  }

  .dw-cursor {
    position: fixed;
    inset: 0;
    z-index: 10010;
    pointer-events: none;
    mix-blend-mode: normal;
  }

  .dw-cursor__inner {
    border-radius: 100%;
  }

  .dw-cursor__inner,
  .dw-cursor__outer {
    position: fixed;
    top: 0;
    left: 0;
    transform: translate3d(-9999px, -9999px, 0);
    pointer-events: none;
    opacity: 0;
    will-change: transform, opacity;
    transition: opacity 180ms ease, border-color 220ms ease,
      background-color 220ms ease;
    backface-visibility: hidden;
  }

  .dw-cursor.is-active .dw-cursor__inner,
  .dw-cursor.is-active .dw-cursor__outer {
    opacity: 1;
  }

  .dw-cursor__inner {
    display: none;
    width: 8px;
    height: 8px;
    margin-left: 0;
    margin-top: 0;
    background: var(--dw-cursor-color);
    box-shadow: none;
    transition: transform 180ms cubic-bezier(0.22, 1, 0.36, 1),
      opacity 140ms ease;
  }

  .dw-cursor__outer {
    width: 48px;
    height: 48px;
    margin-left: 0;
    margin-top: 0;
    background: transparent;
    display: block;
    filter: none;
    image-rendering: auto;
    transition: opacity 160ms ease, border-color 220ms ease,
      background-color 220ms ease;
  }

  .dw-cursor.is-hover-link .dw-cursor__inner {
    opacity: 0.08;
  }

  .dw-cursor.is-hover-link .dw-cursor__outer {
    background: none;
  }

  body.dw-cursor-hide-native {
    cursor: none;
  }

  body.dw-cursor-hide-native a,
  body.dw-cursor-hide-native button,
  body.dw-cursor-hide-native [role='button'],
  body.dw-cursor-hide-native summary,
  body.dw-cursor-hide-native label,
  body.dw-cursor-hide-native input[type='button'],
  body.dw-cursor-hide-native input[type='submit'],
  body.dw-cursor-hide-native input[type='reset'] {
    cursor: none;
  }

  /* Restore native cursor inside Elementor editor/preview contexts. */
  body.elementor-editor-active,
  body.elementor-editor-active a,
  body.elementor-editor-active button,
  body.elementor-editor-active [role='button'],
  body.elementor-editor-active summary,
  body.elementor-editor-active label,
  body.elementor-editor-active input[type='button'],
  body.elementor-editor-active input[type='submit'],
  body.elementor-editor-active input[type='reset'] {
    cursor: auto !important;
  }
}
