/* One-time logo entrance animation — homepage only */
.logo-animated {
  display: block;
  height: 36px;
  width: auto;
  overflow: visible;
}

.logo-animated .logo-shield {
  opacity: 0;
  transform: scale(0.92);
  transform-origin: 32px 36px;
  animation: logoShieldIn 0.7s var(--ease-lux) forwards;
}

.logo-animated .logo-pulse {
  stroke-dasharray: 68;
  stroke-dashoffset: 68;
  opacity: 0.4;
  animation: logoPulseDraw 1.1s var(--ease-lux) 0.25s forwards;
}

.logo-animated .logo-live {
  opacity: 0;
  transform: scale(0);
  transform-origin: 58px 36px;
  animation: logoLivePop 0.45s var(--ease-lux) 1.15s forwards;
}

@keyframes logoShieldIn {
  to {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes logoPulseDraw {
  to {
    stroke-dashoffset: 0;
    opacity: 1;
  }
}

@keyframes logoLivePop {
  0% {
    opacity: 0;
    transform: scale(0);
  }
  70% {
    opacity: 1;
    transform: scale(1.35);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .logo-animated .logo-shield,
  .logo-animated .logo-pulse,
  .logo-animated .logo-live {
    animation: none;
    opacity: 1;
    transform: none;
    stroke-dashoffset: 0;
  }
}
