/* Pointer-following spotlight adapted from the supplied GlowCard component. */
.violet-spotlight{position:relative;isolation:isolate;--spot-x:50%;--spot-y:50%;--spot-radius:240px;--spot-visible:0}
.violet-spotlight::before,.violet-spotlight::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:var(--spot-visible);transition:opacity .22s ease;z-index:1}
.violet-spotlight::before{background:radial-gradient(circle var(--spot-radius) at var(--spot-x) var(--spot-y),#4d44e633,transparent 72%)}
.violet-spotlight::after{padding:2px;background:radial-gradient(circle var(--spot-radius) at var(--spot-x) var(--spot-y),#e5e1ff 0%,#9389ff 18%,#4d44e6 40%,transparent 75%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude}
.violet-spotlight:focus-visible,.violet-spotlight:focus-within{--spot-visible:1}
.violet-spotlight:focus-visible{outline:2px solid #b9b1ff;outline-offset:5px}
.process-step.violet-spotlight,.pillar.violet-spotlight{border-radius:12px}
.site-header nav a.violet-spotlight,.footer-links a.violet-spotlight,.contact-inline a.violet-spotlight,.text-link.violet-spotlight,.service-link.violet-spotlight{border-radius:6px;--spot-radius:110px}
.btn.violet-spotlight,.header-cta.violet-spotlight{--spot-radius:140px}
.violet-spotlight.is-spotlit{--spot-visible:1}
@media(hover:hover) and (pointer:fine){.violet-spotlight:hover{--spot-visible:1}}
@media(prefers-reduced-motion:reduce){.violet-spotlight::before,.violet-spotlight::after{transition:none}}
@media(forced-colors:active){.violet-spotlight::before,.violet-spotlight::after{display:none}}
