/* PM MEDIA — first paint + logo entrance. Same neon, just alive. */
html{background:#06060c}
.pm-presence{
  position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;
  background:
    radial-gradient(ellipse 70% 60% at 38% 48%,rgba(0,212,238,.22),transparent 58%),
    radial-gradient(ellipse 60% 55% at 68% 52%,rgba(232,50,138,.2),transparent 56%),
    #06060c;
  pointer-events:none;opacity:1;
  transition:opacity .7s cubic-bezier(.22,1,.36,1);
}
.pm-presence.is-out{opacity:0}
.pm-presence-orb{
  position:absolute;border-radius:50%;filter:blur(40px);opacity:.55;
  animation:pmOrb 4.2s ease-in-out infinite;
}
.pm-presence-orb.c{width:42vw;height:42vw;max-width:420px;max-height:420px;left:12%;top:18%;background:#00d4ee}
.pm-presence-orb.m{width:36vw;height:36vw;max-width:360px;max-height:360px;right:10%;bottom:16%;background:#e8328a;animation-delay:-1.6s}
.pm-presence-mark{
  position:relative;z-index:1;width:min(78vw,560px);height:auto;
  animation:pmFloat 2.4s ease-in-out infinite;
  filter:drop-shadow(0 0 18px rgba(0,212,238,.55)) drop-shadow(0 0 42px rgba(232,50,138,.4));
}
@keyframes pmFloat{
  0%,100%{transform:translateY(0) scale(1);filter:drop-shadow(0 0 16px rgba(0,212,238,.45)) drop-shadow(0 0 36px rgba(232,50,138,.32))}
  50%{transform:translateY(-14px) scale(1.045);filter:drop-shadow(0 0 34px rgba(0,212,238,.85)) drop-shadow(0 0 64px rgba(232,50,138,.62))}
}
@keyframes pmOrb{
  0%,100%{transform:translate(0,0) scale(1);opacity:.4}
  50%{transform:translate(4%,-3%) scale(1.12);opacity:.7}
}
@media (prefers-reduced-motion:reduce){
  .pm-presence-mark,.pm-presence-orb{animation:none}
}
