/**
 * Product-first marketing motion styles
 */

@keyframes qn-fade-up {
  from {
    opacity: 0;
    transform: translateY(14px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes qn-slide-in-right {
  from {
    opacity: 0;
    transform: translateX(14px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes qn-highlight-pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(37, 99, 235, 0.32);
    background-color: #f8fbff;
  }
  70% {
    box-shadow: 0 0 0 14px rgba(37, 99, 235, 0);
    background-color: #eff6ff;
  }
  100% {
    box-shadow: 0 0 0 0 rgba(37, 99, 235, 0);
    background-color: #ffffff;
  }
}

@keyframes qn-toast-in {
  from {
    opacity: 0;
    transform: translateY(-6px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.qn-enter {
  animation: qn-fade-up 0.45s ease-out forwards;
}

.qn-row-enter {
  animation: qn-slide-in-right 0.35s ease-out forwards;
}

.qn-highlight {
  animation: qn-highlight-pulse 0.9s ease-out 1;
}

.qn-toast-in {
  animation: qn-toast-in 0.3s ease-out forwards;
}

@keyframes qn-hero-call-loop {
  0%, 100% {
    transform: translateY(0);
    box-shadow: 0 0 0 0 rgba(37, 99, 235, 0);
  }
  12% {
    transform: translateY(-1px);
    box-shadow: 0 0 0 8px rgba(37, 99, 235, 0.14);
  }
  24% {
    transform: translateY(0);
    box-shadow: 0 0 0 0 rgba(37, 99, 235, 0);
  }
}

@keyframes qn-hero-row-loop {
  0%, 100% {
    opacity: 0.72;
    transform: translateX(0);
    background-color: #ffffff;
  }
  20%, 40% {
    opacity: 1;
    transform: translateX(2px);
    background-color: #eff6ff;
  }
}

@keyframes qn-hero-toast-loop {
  0%, 100% {
    opacity: 0.45;
    transform: translateY(0) scale(1);
  }
  30%, 55% {
    opacity: 1;
    transform: translateY(-2px) scale(1.01);
  }
}

.qn-hero-call {
  animation: qn-hero-call-loop 4.8s ease-in-out infinite;
}

.qn-hero-row-1 {
  animation: qn-hero-row-loop 4.8s ease-in-out infinite;
  animation-delay: 1.2s;
}

.qn-hero-row-2 {
  animation: qn-hero-row-loop 4.8s ease-in-out infinite;
  animation-delay: 2.1s;
}

.qn-hero-toast {
  animation: qn-hero-toast-loop 4.8s ease-in-out infinite;
  animation-delay: 3s;
}

.qn-status-new {
  background: #eff6ff;
  color: #1d4ed8;
}

.qn-status-contacted {
  background: #f1f5f9;
  color: #334155;
}

.qn-status-booked {
  background: #ecfdf5;
  color: #047857;
}

@media (prefers-reduced-motion: reduce) {
  .qn-enter,
  .qn-row-enter,
  .qn-highlight,
  .qn-toast-in,
  .qn-hero-call,
  .qn-hero-row-1,
  .qn-hero-row-2,
  .qn-hero-toast {
    animation: none !important;
  }
}

/* Disable marketing motion site-wide (no reveal/loading effects) */
.qn-enter,
.qn-row-enter,
.qn-highlight,
.qn-toast-in,
.qn-hero-call,
.qn-hero-row-1,
.qn-hero-row-2,
.qn-hero-toast {
  animation: none !important;
}
