:root {
  --cursor-aura-size: 26px;
  --cursor-aura-color: rgba(20, 124, 137, 0.24);
  --cursor-aura-color-strong: rgba(20, 124, 137, 0.34);
}

.cursor-aura {
  position: fixed;
  left: 0;
  top: 0;
  width: var(--cursor-aura-size);
  height: var(--cursor-aura-size);
  border-radius: 999px;
  pointer-events: none;
  z-index: 1400;
  opacity: 0;
  transform: translate3d(-100px, -100px, 0) scale(1);
  background: radial-gradient(circle at 30% 30%, rgba(255, 255, 255, 0.68), var(--cursor-aura-color));
  box-shadow: 0 0 0 1px rgba(20, 124, 137, 0.08), 0 10px 24px rgba(20, 124, 137, 0.22);
  transition: opacity 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
  will-change: transform;
}

.cursor-aura.is-visible {
  opacity: 1;
}

.cursor-aura.is-interactive {
  background: radial-gradient(circle at 30% 30%, rgba(255, 255, 255, 0.82), var(--cursor-aura-color-strong));
}

.cursor-aura.is-pressed {
  box-shadow: 0 0 0 1px rgba(20, 124, 137, 0.16), 0 8px 18px rgba(20, 124, 137, 0.2);
}

.home-v2 .section-title {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

.home-v2 .section-title::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0;
  transform: translateX(-130%) skewX(-20deg);
  background: linear-gradient(110deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.66), rgba(255, 255, 255, 0));
}

.home-v2 .section-title.is-shimmering::after {
  opacity: 0.9;
  animation: section-heading-shimmer 860ms ease-out forwards;
}

@keyframes section-heading-shimmer {
  from {
    transform: translateX(-130%) skewX(-20deg);
  }
  to {
    transform: translateX(145%) skewX(-20deg);
  }
}

html.cursor-enhanced {
  cursor: none;
}

html.cursor-enhanced a,
html.cursor-enhanced button,
html.cursor-enhanced [role="button"],
html.cursor-enhanced input,
html.cursor-enhanced textarea,
html.cursor-enhanced select,
html.cursor-enhanced label,
html.cursor-enhanced .home-card,
html.cursor-enhanced .skill-panel,
html.cursor-enhanced .partner-item,
html.cursor-enhanced .site-nav-link,
html.cursor-enhanced .site-nav-cta {
  cursor: none;
}

@media (hover: none), (pointer: coarse), (prefers-reduced-motion: reduce) {
  .cursor-aura {
    display: none !important;
  }

  html.cursor-enhanced {
    cursor: auto;
  }

  html.cursor-enhanced a,
  html.cursor-enhanced button,
  html.cursor-enhanced [role="button"],
  html.cursor-enhanced input,
  html.cursor-enhanced textarea,
  html.cursor-enhanced select,
  html.cursor-enhanced label,
  html.cursor-enhanced .home-card,
  html.cursor-enhanced .skill-panel,
  html.cursor-enhanced .partner-item,
  html.cursor-enhanced .site-nav-link,
  html.cursor-enhanced .site-nav-cta {
    cursor: auto;
  }
}
