/* ==========================================================================
   cursor — custom cursor dot + trailing ring, and the warm spotlight glow.
   Desktop with a precise pointer only.
   ========================================================================== */

@media (hover: hover) and (pointer: fine) {
  body.custom-cursor-active, body.custom-cursor-active a, body.custom-cursor-active button,
  body.custom-cursor-active .photo-tile, body.custom-cursor-active .map-marker {
    cursor: none;
  }
  .cursor-dot, .cursor-ring {
    position: fixed;
    top: 0;
    left: 0;
    pointer-events: none;
    z-index: 400;
    border-radius: 50%;
    opacity: 0;
    transition: opacity 0.25s ease;
  }
  .cursor-dot {
    width: 6px;
    height: 6px;
    background: var(--rust);
    transform: translate(-50%, -50%);
  }
  .cursor-ring {
    width: 34px;
    height: 34px;
    border: 1px solid rgba(230, 223, 200, 0.5);
    transform: translate(-50%, -50%);
    transition: opacity 0.25s ease, width 0.25s ease, height 0.25s ease, border-color 0.25s ease;
  }
  body.cursor-visible .cursor-dot,
  body.cursor-visible .cursor-ring {
    opacity: 1;
  }
  .cursor-ring.hovering {
    width: 54px;
    height: 54px;
    border-color: var(--rust);
  }
}

/* Cursor spotlight — soft warm glow following the pointer, desktop only */
.spotlight-layer {
  position: fixed;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.4s ease;
  background: radial-gradient(circle 260px at var(--mx, 50%) var(--my, 50%), rgba(168, 98, 45, 0.06), transparent 70%);
}
body.cursor-visible .spotlight-layer {
  opacity: 1;
}
