/* ============================================================
   SCENE 1 — Cold open: pulsing dot in the dark
   ============================================================ */
.scene-coldopen .dot{
  width: 10px; height: 10px;
  border-radius: 50%;
  background: var(--mea-accent);
  box-shadow: 0 0 0 0 rgba(59,130,246,0.6);
  animation: dot-pulse 1.6s ease-out infinite;
}

@keyframes dot-pulse{
  0%   { box-shadow: 0 0 0 0 rgba(59,130,246,0.55); transform: scale(1); }
  70%  { box-shadow: 0 0 0 28px rgba(59,130,246,0); transform: scale(1.15); }
  100% { box-shadow: 0 0 0 0 rgba(59,130,246,0); transform: scale(1); }
}

/* ============================================================
   SCENE 2 — Logo reveal: stroke draw-in, then solidify + glow
   ============================================================ */
.scene-logo .logo-svg{
  width: 200px; height: auto;
}

.scene-logo .logo-svg path,
.scene-logo .logo-svg rect{
  fill: none;
  stroke: var(--mea-accent);
  stroke-width: 8;
  stroke-dasharray: 620;
  stroke-dashoffset: 620;
}

.scene-logo.is-active .logo-svg path,
.scene-logo.is-active .logo-svg rect{
  animation: draw-stroke 1.1s cubic-bezier(0.65,0,0.35,1) forwards;
}

.scene-logo.is-active .logo-svg rect{ animation-delay: 0s; }
.scene-logo.is-active .logo-svg path{ animation-delay: 0.25s; }

@keyframes draw-stroke{
  to{ stroke-dashoffset: 0; }
}

.scene-logo.is-active .logo-svg{
  animation: logo-glow-in 0.6s ease 1.3s forwards;
  filter: drop-shadow(0 0 0 rgba(59,130,246,0));
}

@keyframes logo-glow-in{
  to{ filter: drop-shadow(0 0 22px rgba(59,130,246,0.55)); }
}
