/* ===== ANIMATED LOGO (bounce dot) ===== */
.animated-logo {
  position: relative;
  display: inline-flex;
  align-items: center;
}

.animated-logo__dot {
  position: absolute;
  left: 82.1%;
  top: 2%;
  width: 4.2%;
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle at 38% 38%, #6DE0EF, #35C5DC 55%, #2BAFC4 100%);
  box-shadow: 0 0 6px 1px rgba(53, 197, 220, 0.4);
  animation: logo-bounce 1.8s cubic-bezier(0.25, 0, 0.5, 1) infinite;
  pointer-events: none;
}

.animated-logo--footer {
  display: inline-flex;
  margin-bottom: 16px;
}

@keyframes logo-bounce {
  0%   { transform: translateY(-120%) scale(1.1, 0.9); }
  4%   { transform: translateY(-100%) scale(0.98, 1.06); }
  10%  { transform: translateY(-60%) scale(0.94, 1.16); }
  16%  { transform: translateY(10%) scale(0.9, 1.35); }
  20%  { transform: translateY(55%) scale(0.94, 1.1); }
  22%  { transform: translateY(75%) scale(1.12, 0.7); }
  23%  { transform: translateY(80%) scale(1.25, 0.45); }
  25%  { transform: translateY(60%) scale(1.15, 0.6); }
  29%  { transform: translateY(30%) scale(1.05, 0.88); }
  36%  { transform: translateY(0%) scaleY(1.08); }
  44%  { transform: translateY(-35%) scale(0.96, 1.14); }
  53%  { transform: translateY(-65%) scale(0.97, 1.08); }
  64%  { transform: translateY(-90%) scale(0.99, 1.03); }
  78%  { transform: translateY(-110%) scale(1.04, 0.96); }
  92%  { transform: translateY(-118%) scale(1.08, 0.92); }
  100% { transform: translateY(-120%) scale(1.1, 0.9); }
}

@media (prefers-reduced-motion: reduce) {
  .animated-logo__dot { animation: none; }
}
