/* ============================================================
   数字永生 · 全动效高科技增强层  fx.css
   —— 在 styles.css 之后加载，只做「加法」：不覆盖原有视觉，
      统一注入扫描光、全息微光、能量边框、数据流、解密文字等动效。
   ============================================================ */

@property --fx-a { syntax: '<angle>'; inherits: false; initial-value: 0deg; }

:root{
  --fx-cyan:#6ff2ff;
  --fx-blue:#3b82f6;
  --fx-mint:#5ef0c8;
  --fx-line:rgba(111,242,255,.35);
}

/* ---------- 0. 全局动效开关 & 减速适配 ---------- */
.fx-on .fx-tilt{ transition: transform .25s cubic-bezier(.22,.61,.36,1), box-shadow .35s; }

/* reveal 增强：模糊显影（保留原有错峰延迟） */
.fx-on .reveal{
  transition-property: opacity, transform, filter;
  transition-duration: .88s;
  transition-timing-function: cubic-bezier(.22,.61,.36,1);
}
.fx-on .reveal.fx-blur{ filter: blur(9px); }
.fx-on .reveal.fx-blur.in{ filter: none; }
@media (prefers-reduced-motion: reduce){
  .fx-on .reveal.fx-blur{ filter: none; }
}

@keyframes fxKenBurns{
  0%   { transform: scale(1.04) translate3d(0,0,0); }
  100% { transform: scale(1.15) translate3d(-1.6%,-2.2%,0); }
}
@keyframes fxKenBurnsSoft{
  0%   { transform: scale(1.02) translate3d(0,0,0); }
  100% { transform: scale(1.09) translate3d(1.2%,-1.4%,0); }
}
@keyframes fxScanSweep{
  0%   { transform: translateY(-120%); opacity:0; }
  8%   { opacity:1; }
  92%  { opacity:1; }
  100% { transform: translateY(320%); opacity:0; }
}
@keyframes fxHoloSlide{
  0%   { transform: translate3d(-70%,0,0) rotate(8deg); }
  100% { transform: translate3d(70%,0,0) rotate(8deg); }
}
@keyframes fxGradFlow{
  0%,100%{ background-position: 0% 50%; }
  50%    { background-position: 100% 50%; }
}
@keyframes fxSpin{ to { --fx-a: 360deg; } }
@keyframes fxPulseGlow{
  0%,100%{ box-shadow: 0 0 0 0 rgba(111,242,255,0), 0 0 16px rgba(111,242,255,.30); }
  50%    { box-shadow: 0 0 0 9px rgba(111,242,255,0), 0 0 34px rgba(111,242,255,.72); }
}
@keyframes fxDataDot{
  0%   { left:-24%; opacity:0; }
  12%  { opacity:1; }
  88%  { opacity:1; }
  100% { left:112%; opacity:0; }
}
@keyframes fxDashMarch{ to { background-position: -220px 0; } }
@keyframes fxGlitch{
  0%   { opacity:.20; filter: blur(2px) hue-rotate(28deg); transform: translate3d(-5px,0,0) skewX(-4deg); }
  20%  { opacity:.65; filter: blur(1px) hue-rotate(-18deg); transform: translate3d(4px,0,0) skewX(3deg); }
  40%  { opacity:.35; filter: blur(1.6px); transform: translate3d(-3px,1px,0); }
  60%  { opacity:.85; filter: blur(.7px) hue-rotate(12deg); transform: translate3d(2px,-1px,0) skewX(-2deg); }
  80%  { opacity:.6;  filter: blur(.4px); transform: translate3d(-1px,0,0); }
  100% { opacity:1;   filter:none; transform:none; }
}
@keyframes fxFlicker{
  0%,100%{ opacity:1; }
  48%    { opacity:1; }
  50%    { opacity:.45; }
  52%    { opacity:1; }
  78%    { opacity:.7; }
  80%    { opacity:1; }
}
@keyframes fxTick{
  0%   { opacity:0; transform: translateY(6px) scale(.86); }
  100% { opacity:1; transform: none; }
}
@keyframes fxTicker{
  0%   { transform: translate3d(0,0,0); }
  100% { transform: translate3d(-50%,0,0); }
}
@keyframes fxFloat{
  0%,100%{ transform: translate3d(0,0,0); }
  50%    { transform: translate3d(0,-14px,0); }
}
@keyframes fxRipple{
  0%   { transform: scale(.55); opacity:.85; }
  100% { transform: scale(1.9); opacity:0; }
}
@keyframes fxBreath{
  0%,100%{ opacity:.42; }
  50%    { opacity:.9; }
}
@keyframes fxFadeUp{
  0%   { opacity:0; transform: translate3d(0,26px,0); filter: blur(7px); }
  100% { opacity:1; transform:none; filter:none; }
}

/* ---------- 1. 媒体层：呼吸式运镜 ---------- */
.fx-kb .hero-media img{ animation: fxKenBurns 26s ease-in-out infinite alternate; }
.fx-kb .family-media img,
.fx-kb .vp-media img{ animation: fxKenBurnsSoft 30s ease-in-out infinite alternate; }
.fx-kb .call-main > img{ animation: fxKenBurnsSoft 22s ease-in-out infinite alternate; }
.fx-kb .voice-aura img{ animation: fxKenBurns 34s ease-in-out infinite alternate; }
.fx-kb .orb-photo{ animation: fxKenBurnsSoft 28s ease-in-out infinite alternate; }

/* ---------- 2. 图片包装 + 扫描光 / 全息微光 / 网格 ---------- */
.fx-imgwrap{ position:relative; overflow:hidden; }
.fx-scan{ position:absolute; inset:0; pointer-events:none; z-index:4; overflow:hidden; }
.fx-scan::before{
  content:""; position:absolute; left:-6%; right:-6%; height:34%; top:0;
  background:linear-gradient(180deg,
    transparent 0%,
    rgba(111,242,255,.10) 38%,
    rgba(111,242,255,.34) 50%,
    rgba(111,242,255,.10) 62%,
    transparent 100%);
  animation: fxScanSweep 6.2s cubic-bezier(.45,0,.55,1) infinite;
  mix-blend-mode: screen;
}
.fx-scan::after{
  content:""; position:absolute; inset:0;
  background-image:
    linear-gradient(rgba(111,242,255,.075) 1px, transparent 1px),
    linear-gradient(90deg, rgba(111,242,255,.075) 1px, transparent 1px);
  background-size: 36px 36px;
  mix-blend-mode: screen; opacity:.45;
  animation: fxBreath 7s ease-in-out infinite;
}
.fx-holo{ position:absolute; inset:0; pointer-events:none; z-index:5; overflow:hidden; }
.fx-holo::before{
  content:""; position:absolute; top:-25%; bottom:-25%; left:0; width:52%;
  background:linear-gradient(105deg,
    transparent 0%,
    rgba(111,242,255,.10) 38%,
    rgba(180,225,255,.26) 50%,
    rgba(111,242,255,.10) 62%,
    transparent 100%);
  mix-blend-mode: screen;
  animation: fxHoloSlide 8.5s linear infinite;
}
.fx-holo::after{
  content:""; position:absolute; inset:0;
  background:
    repeating-linear-gradient(0deg, rgba(4,12,26,.16) 0 1px, transparent 1px 3px),
    radial-gradient(120% 90% at 50% 0%, transparent 55%, rgba(4,10,22,.42) 100%);
  mix-blend-mode: multiply;
  opacity:.55;
}

/* ---------- 3. 标题：流光渐变 + 解密闪烁 + 下划线扫光 ---------- */
.fx-on .hero-title .grad,
.fx-on .sec-title .grad,
.fx-on .cta-title .grad{
  background-size: 240% 100%;
  animation: fxGradFlow 7s ease-in-out infinite;
}
.fx-on .sec-kicker span,
.fx-on .hero-tags b{ position:relative; }

.fx-decrypt{ display:inline-block; }
.fx-glitching{ animation: fxGlitch .82s steps(2,end) 1 both; }

.sec-title{ position:relative; }
.sec-title::after{
  content:""; position:absolute; left:0; bottom:-14px; width:100%; height:1px;
  background:linear-gradient(90deg, var(--fx-cyan), rgba(59,130,246,.6) 42%, transparent 88%);
  transform: scaleX(0); transform-origin:left center;
  transition: transform 1.15s cubic-bezier(.22,.61,.36,1) .18s;
  opacity:.85;
}
.sec-title.in::after, .sec-title.reveal.in::after{ transform: scaleX(1); }
.sec-head.center .sec-title::after{
  left:50%; transform: translateX(-50%) scaleX(0); transform-origin:center;
}
.sec-head.center .sec-title.reveal.in::after{ transform: translateX(-50%) scaleX(1); }

/* 章节编号（kicker）入场：数字闪烁 */
.fx-on .sec-kicker.reveal.in{ animation: fxFlicker 1.1s ease-out 1; }

/* ---------- 4. 能量边框：卡片旋转光边 + 掠光 ---------- */
.fx-on .price-card,
.fx-on .presence-card,
.fx-on .growth-card,
.fx-on .gen-card,
.fx-on .trust-item,
.fx-on .vault,
.fx-on .flow,
.fx-on .stack,
.fx-on .wave-card,
.fx-on .version-panel{ position:relative; isolation:isolate; }

.fx-energy{ transition: box-shadow .45s ease, border-color .45s ease; }
.fx-energy::before{
  content:""; position:absolute; top:0; left:0; right:0; height:2px; z-index:3;
  border-radius:inherit;
  background:linear-gradient(90deg,
    transparent 0%,
    rgba(111,242,255,.95) 42%,
    rgba(94,240,200,.9) 52%,
    transparent 100%);
  background-size: 240% 100%;
  animation: fxGradFlow 3.8s linear infinite;
  opacity:0; transition: opacity .45s ease; pointer-events:none;
}
.fx-energy:hover::before{ opacity:1; }
.fx-energy.fx-energy-on::before{ opacity:1; }
.fx-energy:hover{
  box-shadow: 0 0 0 1px rgba(111,242,255,.42), 0 18px 44px rgba(0,0,0,.42), 0 0 34px rgba(111,242,255,.16);
}

/* 卡片掠光（hover 时一道高光扫过） */
.fx-on .price-card::after,
.fx-on .presence-card::after,
.fx-on .growth-card::after,
.fx-on .gen-card::after{
  content:""; position:absolute; top:0; bottom:0; left:-40%; width:38%; z-index:2;
  background:linear-gradient(100deg, transparent, rgba(180,225,255,.18), transparent);
  transform: skewX(-18deg); opacity:0; pointer-events:none;
}
.fx-on .price-card:hover::after,
.fx-on .presence-card:hover::after,
.fx-on .growth-card:hover::after,
.fx-on .gen-card:hover::after{
  animation: fxHoloSlide 1.15s ease-out 1;
  opacity:1;
}

/* 卡片鼠标跟随光斑 */
.fx-spot{ position:relative; }
.fx-spot.fx-spot-clip{ overflow:hidden; }
.fx-spot > .fx-spot-dot{
  position:absolute; width:220px; height:220px; border-radius:50%; pointer-events:none;
  background:radial-gradient(circle, rgba(111,242,255,.16), transparent 68%);
  transform: translate3d(-50%,-50%,0); opacity:0; transition: opacity .3s; z-index:2;
  mix-blend-mode: screen;
}
.fx-spot:hover > .fx-spot-dot{ opacity:1; }

/* ---------- 5. 数据流：链路 / 箭头 / 节点 ---------- */
.fx-on .stack-link{ position:relative; overflow:hidden; }
.fx-on .stack-link::after{
  content:""; position:absolute; top:50%; left:-24%; width:22%; height:2px;
  transform: translateY(-50%);
  background: linear-gradient(90deg, transparent, var(--fx-cyan));
  filter: drop-shadow(0 0 6px var(--fx-cyan));
  animation: fxDataDot 2.4s linear infinite;
}
.fx-on .stack-link::after{ animation-delay:.35s; }
.fx-on .stack-row.mid .stack-link:last-of-type::after{ animation-delay:1.05s; }

.fx-on .flow-arrow span,
.fx-on .flow-arrow::after{
  background-image: linear-gradient(90deg, rgba(111,242,255,.9) 0 8px, transparent 8px 18px);
  background-size: 220px 2px; background-repeat: repeat-x;
  animation: fxDashMarch 3.2s linear infinite;
}

.fx-on .stack-node.core{
  animation: fxPulseGlow 3s ease-in-out infinite;
}
.fx-on .flow-node.accent,
.fx-on .stack-node.core{ animation: fxPulseGlow 3.4s ease-in-out infinite; }

/* 节点入场：逐个点亮 */
.fx-on .stack-node,
.fx-on .fc-node,
.fx-on .fc-item{ transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease; }
.fx-on .stack-node:hover,
.fx-on .fc-item:hover{ transform: translateY(-3px); border-color: var(--fx-line); }

/* ---------- 6. 章节 HUD 角框 ---------- */
.fx-hud{ position:absolute; inset:0; pointer-events:none; z-index:1; opacity:0; transition:opacity .8s ease; }
.fx-hud.on{ opacity:1; }
.fx-hud i{
  position:absolute; width:30px; height:30px; border:1px solid rgba(111,242,255,.42);
  opacity:.75;
}
.fx-hud i:nth-child(1){ top:26px; left:26px; border-right:0; border-bottom:0; }
.fx-hud i:nth-child(2){ top:26px; right:26px; border-left:0; border-bottom:0; }
.fx-hud i:nth-child(3){ bottom:26px; left:26px; border-right:0; border-top:0; }
.fx-hud i:nth-child(4){ bottom:26px; right:26px; border-left:0; border-top:0; }
.fx-hud i::after{
  content:""; position:absolute; width:6px; height:6px; border-radius:50%;
  background: var(--fx-cyan); box-shadow: 0 0 10px var(--fx-cyan);
  animation: fxBreath 2.6s ease-in-out infinite;
}
.fx-hud i:nth-child(1)::after{ top:-3px; left:-3px; }
.fx-hud i:nth-child(2)::after{ top:-3px; right:-3px; }
.fx-hud i:nth-child(3)::after{ bottom:-3px; left:-3px; }
.fx-hud i:nth-child(4)::after{ bottom:-3px; right:-3px; }

/* ---------- 7. 数据滚动条（Ticker） ---------- */
.fx-ticker{
  position:relative; overflow:hidden; border-top:1px solid rgba(111,242,255,.16);
  border-bottom:1px solid rgba(111,242,255,.16);
  background: linear-gradient(90deg, rgba(6,16,32,.72), rgba(6,20,40,.42), rgba(6,16,32,.72));
  backdrop-filter: blur(6px);
  padding: 12px 0;
}
.fx-ticker-track{
  display:flex; width:max-content; gap:0;
  animation: fxTicker 34s linear infinite;
}
.fx-ticker:hover .fx-ticker-track{ animation-play-state: paused; }
.fx-ticker-item{
  display:inline-flex; align-items:center; gap:10px; padding:0 26px;
  font-size:12px; letter-spacing:.24em; color:rgba(196,224,255,.78);
  white-space:nowrap; text-transform:uppercase;
}
.fx-ticker-item::before{
  content:""; width:6px; height:6px; border-radius:50%;
  background: var(--fx-cyan); box-shadow: 0 0 10px var(--fx-cyan);
  animation: fxBreath 2s ease-in-out infinite;
}
.fx-ticker-item b{ color: var(--fx-cyan); font-weight:600; letter-spacing:.18em; }

/* ---------- 8. 幻灯片网格：入场 + 悬停 ---------- */
.fx-on .deck-item{ opacity:0; }
.fx-on .deck-item.fx-in{ animation: fxFadeUp .85s cubic-bezier(.22,.61,.36,1) both; }
.fx-on .deck-item{ transition: transform .4s cubic-bezier(.22,.61,.36,1), box-shadow .4s, border-color .4s; }
.fx-on .deck-item:hover{ transform: translateY(-6px) scale(1.015); border-color: rgba(111,242,255,.5); box-shadow: 0 18px 42px rgba(0,0,0,.5), 0 0 28px rgba(111,242,255,.18); }

/* 灯箱：入场动效 */
.fx-on .lightbox img{ transition: opacity .35s ease, transform .45s cubic-bezier(.22,.61,.36,1); }
.fx-on .lightbox.open img{ animation: fxFadeUp .5s cubic-bezier(.22,.61,.36,1); }

/* ---------- 9. 时间轴 / 版本面板 ---------- */
.fx-on .tl-node{ transition: transform .35s ease, color .35s ease; }
.fx-on .tl-node:hover{ transform: translateY(-4px); }
.fx-on .tl-node.is-active em{ animation: fxGradFlow 5s ease-in-out infinite; }
.fx-on .tl-track span{ box-shadow: 0 0 14px rgba(111,242,255,.6); }
.fx-on .vp-age{ animation: fxFloat 7s ease-in-out infinite; }

/* 版本切换时的故障切换动画 */
.fx-on .version-panel.fx-swap .vp-q,
.fx-on .version-panel.fx-swap .vp-age,
.fx-on .version-panel.fx-swap .vp-desc{ animation: fxGlitch .7s steps(2,end) 1; }

/* ---------- 10. 声纹 / 通话 ---------- */
.fx-on .wave-card canvas{ filter: drop-shadow(0 0 12px rgba(111,242,255,.28)); }
.fx-on .quote{ position:relative; }
.fx-on .quote::after{
  content:""; position:absolute; inset:-2px; border-radius:inherit;
  background: radial-gradient(60% 100% at 12% 50%, rgba(111,242,255,.14), transparent 70%);
  opacity:0; animation: fxBreath 4.4s ease-in-out infinite; pointer-events:none;
}
.fx-on .badge.live i{ animation: fxBreath 1.6s ease-in-out infinite; }
.fx-on .call-scan{ animation: fxScanSweep 5.4s cubic-bezier(.45,0,.55,1) infinite; }
.fx-on .pip{ animation: fxFloat 6.5s ease-in-out infinite; }

/* ---------- 11. 指纹水晶球 / 二维码 ---------- */
.fx-on .orb-ring{ animation: fxRipple 4.4s ease-out infinite; }
.fx-on .orb-ring.r2{ animation-delay: 2.2s; }
.fx-on .orb{ animation: fxFloat 9s ease-in-out infinite; }
.fx-on .qr-card{ position:relative; overflow:hidden; }
.fx-on .qr-card::after{
  content:""; position:absolute; top:0; bottom:0; left:-45%; width:40%;
  background:linear-gradient(100deg, transparent, rgba(111,242,255,.28), transparent);
  animation: fxHoloSlide 5.4s linear infinite; mix-blend-mode: screen;
}

/* ---------- 12. 按钮 / 芯片 / 标签动效 ---------- */
.fx-on .btn{ position:relative; overflow:hidden; }
.fx-on .btn::after{
  content:""; position:absolute; top:0; bottom:0; left:-50%; width:45%;
  background:linear-gradient(100deg, transparent, rgba(255,255,255,.28), transparent);
  transform: skewX(-20deg); opacity:0; pointer-events:none;
}
.fx-on .btn:hover::after{ animation: fxHoloSlide 1s ease-out 1; opacity:1; }
.fx-on .btn-primary{ animation: fxPulseGlow 4.6s ease-in-out infinite; }

.fx-on .hero-tags li,
.fx-on .trust-chips li,
.fx-on .cta-tags li,
.fx-on .sf-tags li,
.fx-on .price-badge{
  transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease;
}
.fx-on .hero-tags li:hover,
.fx-on .trust-chips li:hover,
.fx-on .cta-tags li:hover,
.fx-on .sf-tags li:hover{ transform: translateY(-3px); border-color: var(--fx-line); box-shadow: 0 8px 22px rgba(0,0,0,.35); }
.fx-on .price-badge{ animation: fxPulseGlow 3.6s ease-in-out infinite; }

/* 统计数字 / 价格：滚动到位时轻微弹入 */
.fx-on .stat b, .fx-on .price b{ transition: text-shadow .4s ease; }
.fx-on .stat:hover b, .fx-on .price-card:hover .price b{ text-shadow: 0 0 18px rgba(111,242,255,.55); }

/* 壁垒列表：左侧能量条 */
.fx-on .barrier-list li{ position:relative; transition: transform .35s ease, background .35s ease; }
.fx-on .barrier-list li::before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:2px;
  background:linear-gradient(180deg, var(--fx-cyan), rgba(59,130,246,.2));
  transform: scaleY(0); transform-origin: top center;
  transition: transform .5s cubic-bezier(.22,.61,.36,1);
  box-shadow: 0 0 12px rgba(111,242,255,.5);
}
.fx-on .barrier-list li.in::before{ transform: scaleY(1); }
.fx-on .barrier-list li:hover{ transform: translateX(6px); }

/* 成长卡片序号：描边流光 */
.fx-on .growth-card em,
.fx-on .presence-card .pc-num{
  background: linear-gradient(100deg, rgba(111,242,255,.95), rgba(59,130,246,.85), rgba(111,242,255,.95));
  background-size: 220% 100%;
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: fxGradFlow 5.5s ease-in-out infinite;
}

/* 流水线（CORE PIPELINE）逐条点亮 */
.fx-on .pipe li{ transition: transform .35s ease, background .35s ease; }
.fx-on .pipe li:hover{ transform: translateX(6px); }
.fx-on .pipe li em{ animation: fxFlicker 3.6s ease-in-out infinite; }

/* 导航：hover 时文字微微发光（下划线沿用 styles.css 的 .active 规则，不覆盖） */
.fx-on .nav-links a:hover,
.fx-on .nav-links a.active{ text-shadow: 0 0 14px rgba(111,242,255,.5); }

/* 品牌标记旋转 */
.fx-on .brand-mark svg{ animation: fxFloat 8s ease-in-out infinite; }
.fx-on .nav-live i{ animation: fxBreath 1.8s ease-in-out infinite; }

/* 滚动进度条：呼吸光 */
.fx-on .scroll-progress span{ box-shadow: 0 0 14px rgba(111,242,255,.85); }

/* ---------- 12.5 常驻遥测 HUD（左下角） ---------- */
.fx-hudbar{
  position:fixed; left:18px; bottom:18px; z-index:60;
  display:flex; align-items:center; gap:14px;
  padding:8px 14px 8px 12px;
  border:1px solid rgba(111,242,255,.22);
  border-radius:10px;
  background:linear-gradient(135deg, rgba(6,16,32,.78), rgba(4,10,22,.62));
  backdrop-filter:blur(10px);
  font-family:var(--mono, ui-monospace, monospace);
  font-size:10.5px; letter-spacing:.14em; color:rgba(196,224,255,.82);
  opacity:0; transform:translateY(10px);
  transition:opacity .9s ease, transform .9s cubic-bezier(.22,.61,.36,1);
  pointer-events:none; user-select:none;
}
.fx-live .fx-hudbar{ opacity:.92; transform:none; }
.fx-hudbar .hb-cell{ display:flex; align-items:center; gap:6px; white-space:nowrap; }
.fx-hudbar .hb-k{ color:rgba(140,178,214,.7); }
.fx-hudbar .hb-v{ color:var(--fx-cyan); min-width:34px; display:inline-block; text-align:right; }
.fx-hudbar .hb-dot{
  width:6px; height:6px; border-radius:50%; background:var(--fx-mint);
  box-shadow:0 0 10px var(--fx-mint); animation:fxBreath 1.5s ease-in-out infinite;
}
.fx-hudbar .hb-sep{ width:1px; height:14px; background:rgba(111,242,255,.22); }
.fx-hudbar .hb-bar{ width:30px; height:3px; border-radius:2px; background:rgba(111,242,255,.16); overflow:hidden; }
.fx-hudbar .hb-bar i{
  display:block; height:100%; width:40%; border-radius:2px;
  background:linear-gradient(90deg, var(--fx-blue), var(--fx-cyan));
  animation:fxHudLoad 2.6s ease-in-out infinite;
}
@keyframes fxHudLoad{
  0%,100%{ width:18%; opacity:.6; }
  50%    { width:96%; opacity:1; }
}
@media (max-width: 860px){ .fx-hudbar{ display:none; } }

/* ---------- 13. 减速适配：全部降级为静态 ---------- */
@media (prefers-reduced-motion: reduce){
  .fx-kb .hero-media img,
  .fx-kb .family-media img,
  .fx-kb .vp-media img,
  .fx-kb .call-main > img,
  .fx-kb .voice-aura img,
  .fx-kb .orb-photo,
  .fx-scan::before,
  .fx-scan::after,
  .fx-holo::before,
  .fx-ticker-track,
  .fx-hud i::after,
  .fx-on .orb-ring,
  .fx-on .orb,
  .fx-on .pip,
  .fx-on .vp-age,
  .fx-on .brand-mark svg,
  .fx-on .nav-live i,
  .fx-on .btn-primary,
  .fx-on .price-badge,
  .fx-on .stack-node.core,
  .fx-on .flow-node.accent,
  .fx-on .tl-node.is-active em,
  .fx-on .growth-card em,
  .fx-on .presence-card .pc-num,
  .fx-on .pipe li em,
  .fx-on .badge.live i,
  .fx-on .call-scan,
  .fx-on .hero-title .grad,
  .fx-on .sec-title .grad,
  .fx-on .cta-title .grad,
  .fx-on .qr-card::after,
  .fx-on .stack-link::after,
  .fx-on .flow-arrow span,
  .fx-on .flow-arrow::after,
  .fx-energy::before{
    animation: none !important;
  }
  .fx-scan::before{ opacity:.25; transform: translateY(40%); }
}
