/* ========================================================
   Amour Spa — Custom Cursor (anillo + punto con efecto de arrastre)
   Inspirado en el cursor dinámico del template bixola:
   el punto sigue al mouse al instante, el anillo lo persigue
   con una transición suave (efecto elástico al moverse).
   Solo se activa con mouse real (hover: hover / pointer: fine).
   ======================================================== */

@media (hover: hover) and (pointer: fine) {
  .custom-cursor {
    cursor: none;
  }

  .custom-cursor a,
  .custom-cursor button,
  .custom-cursor .toggle-menu,
  .custom-cursor .search-popup-btn {
    cursor: none;
  }

  .custom-cursor__cursor {
    width: 26px;
    height: 26px;
    border-radius: 100%;
    border: 1px solid var(--pp-accent, #fca9a9);
    transition: transform 200ms ease-out, width 250ms ease, height 250ms ease,
      opacity 250ms ease, background-color 250ms ease;
    position: fixed;
    pointer-events: none;
    left: 0;
    top: 0;
    transform: translate3d(calc(-50%), calc(-50%), 0);
    z-index: 999991;
    opacity: 0;
  }

  .custom-cursor__cursor-two {
    width: 6px;
    height: 6px;
    border-radius: 100%;
    background-color: var(--pp-accent, #fca9a9);
    opacity: 0;
    position: fixed;
    transform: translate(-50%, -50%);
    pointer-events: none;
    transition: width 0.3s, height 0.3s, opacity 0.3s;
    z-index: 999991;
  }

  .custom-cursor__cursor.is-active,
  .custom-cursor__cursor-two.is-active {
    opacity: 1;
  }

  .custom-cursor__cursor.is-hover {
    background-color: var(--pp-accent, #fca9a9);
    opacity: 0.4;
    width: 46px;
    height: 46px;
  }

  .custom-cursor__cursor-two.is-click {
    width: 14px;
    height: 14px;
    opacity: 0.6;
  }
}

/* En touch/tablet no se muestra nada extra: cursor nativo de siempre */
@media not all and (hover: hover), not all and (pointer: fine) {
  .custom-cursor__cursor,
  .custom-cursor__cursor-two {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .custom-cursor__cursor {
    transition: opacity 250ms ease, background-color 250ms ease;
  }
}
