/* Custom particle-style cursor */
@media (hover: hover) and (pointer: fine) {
  html, body { cursor: none; }
  a, button, .btn, input, textarea, select, [role="button"], .tab-btn,
  .service-card, .pillar-card, .vision-card, [data-lucide] { cursor: none !important; }

  .cursor-ring,
  .cursor-dot {
    position: fixed;
    top: 0;
    left: 0;
    pointer-events: none;
    z-index: 99999;
    will-change: transform;
    transition: width 0.2s ease, height 0.2s ease, background 0.2s ease,
                border-color 0.2s ease, opacity 0.2s ease;
  }

  .cursor-ring {
    width: 36px;
    height: 36px;
    border: 1.5px solid var(--color-primary, #00653D);
    border-radius: 50%;
    background: transparent;
    box-shadow: 0 0 12px rgba(0, 101, 61, 0.25);
  }

  .cursor-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--color-primary, #00653D);
    box-shadow: 0 0 8px rgba(0, 101, 61, 0.6);
  }

  body.cursor-hover .cursor-ring {
    width: 54px;
    height: 54px;
    border-color: var(--color-primary, #00653D);
    background: rgba(0, 101, 61, 0.08);
  }

  body.cursor-hover .cursor-dot {
    width: 4px;
    height: 4px;
    opacity: 0.6;
  }
}
