.glow-sub { color: rgba(255,255,255,0.92); }

.electric-soft { position: relative; }
.electric-soft::before,
.electric-soft::after {
  content: attr(data-text);
  position: absolute; inset: 0;
  color: var(--accent-sub);
  pointer-events: none;
  mix-blend-mode: screen;
  opacity: 0.7;
}
.electric { position: relative; }
.electric::before,
.electric::after {
  content: attr(data-text);
  position: absolute; inset: 0;
  color: var(--accent);
  pointer-events: none;
  mix-blend-mode: screen;
  opacity: 0.9;
}

.glow-text { animation: mat-glow 7s ease-in-out infinite; }

/* Reveal */
.reveal { opacity: 0; transform: translateY(14px); transition: opacity 0.6s ease, transform 0.6s ease; }
.reveal.is-visible { opacity: 1; transform: translateY(0); }
.delay-1 { transition-delay: 120ms; }
.delay-2 { transition-delay: 240ms; }

/* Floating */
.float-slow { animation: float 10s ease-in-out infinite; }

/* Popover */
.has-pop { position: relative; }
.pop {
  position: absolute;
  top: 20px;
  right: -16px;
  width: 240px;
  background: #ffffff;
  border: 1px solid var(--border);
  border-radius: 12px;
  box-shadow: 0 14px 36px rgba(0,0,0,0.12);
  padding: 12px;
  opacity: 0;
  transform: translateY(6px) scale(0.98);
  transition: opacity 0.2s ease, transform 0.2s ease;
  pointer-events: none;
  z-index: 5;
}
.has-pop:hover .pop { opacity: 1; transform: translateY(0) scale(1); }

/* Misc */
.hero-glow { display: none; }


