/* نور دنبال‌کنندهٔ ماوس روی کارت‌های صفحهٔ اصلی.
   نور یک لایهٔ جداست (پشت متن، روی پس‌زمینهٔ کارت) تا با تزئین‌های خود کارت‌ها قاطی نشود. */
.fx-card{position:relative;isolation:isolate}
.fx-glow{position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:-1;opacity:0;
  transition:opacity .25s cubic-bezier(0.23,1,0.32,1);
  background:radial-gradient(circle at var(--mx,50%) var(--my,50%),color-mix(in srgb,var(--primary-2) 30%,transparent),transparent 62%)}
.fx-glow:after{content:'';position:absolute;inset:0;border-radius:inherit;padding:1.5px;
  background:radial-gradient(circle at var(--mx,50%) var(--my,50%),var(--primary-2),transparent 55%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;
  mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}
:root[data-theme="dark"] .fx-glow{background:radial-gradient(circle at var(--mx,50%) var(--my,50%),color-mix(in srgb,var(--primary-2) 24%,transparent),transparent 58%)}
/* کارت سبز تیرهٔ مشاوره: نور سفیدِ ملایم */
.nx-phone .fx-glow{background:radial-gradient(circle at var(--mx,50%) var(--my,50%),#ffffff26,transparent 60%)}
.nx-phone .fx-glow:after{background:radial-gradient(circle at var(--mx,50%) var(--my,50%),#ffffff8c,transparent 55%)}
@media (hover:hover) and (pointer:fine){.fx-card:hover > .fx-glow{opacity:1}}

/* بخش بالای صفحه (هیرو): نور خیلی ملایم‌تر و کاملاً پشت متن و عکس */
.nx-hero.fx-hero{isolation:isolate}
.fx-glow-hero{background:radial-gradient(circle 380px at var(--mx,50%) var(--my,50%),color-mix(in srgb,var(--primary-2) 17%,transparent),transparent 100%)}
.fx-glow-hero:after{display:none}
:root[data-theme="dark"] .fx-glow-hero{background:radial-gradient(circle 380px at var(--mx,50%) var(--my,50%),color-mix(in srgb,var(--primary-2) 13%,transparent),transparent 100%)}
@media (hover:hover) and (pointer:fine){.nx-hero.fx-hero:hover > .fx-glow-hero{opacity:1}}
