/*
 * Interactions — hand-written replacements for what Framer's JS runtime did.
 * Values (durations, easing, targets) are taken from the original Framer
 * bundle, so behaviour matches the old site.
 *
 * The class names (.framer-xxxx) are just the ones the exported markup
 * already uses; they have nothing to do with Framer at runtime.
 *
 * Framer's easing curve, used everywhere below.
 */
/* Declared on body, not :root: the colour tokens in site.css live on body,
   and a custom property referencing them must be resolved there. */
body {
  --pk-ease: cubic-bezier(.44, 0, .56, 1);
  /* Approximates Framer's spring {duration:.4, bounce:.2} for hover states */
  --pk-spring: .4s cubic-bezier(.34, 1.25, .64, 1);
  /* Brand yellow token from site.css (#ffd100) */
  --pk-yellow: var(--token-b1780348-28db-4285-9c39-501957fad799, #ffd100);
}

/* Anchor links (#features, #contact…) — Framer scrolled smoothly via JS */
html { scroll-behavior: smooth; }

/* ---------- Looping animations (Framer "loop" effect, repeat: mirror) ---------- */

/* Parcel Scan Simulator — Glowing Scan Line (the barcode scan):
   y 0 -> 78px, opacity 1 -> .45, 1.6s, back and forth */
.framer-13q91m5 {
  animation: pk-scan 1.6s var(--pk-ease) infinite alternate;
}
@keyframes pk-scan {
  to { transform: translateY(78px); opacity: .45; }
}

/* "ACTIVE" pill — Live Dot pulse: scale 1 -> 1.35, opacity 1 -> .45, 1.3s */
.framer-16v8y7t {
  animation: pk-pulse 1.3s var(--pk-ease) infinite alternate;
}
@keyframes pk-pulse {
  to { transform: scale(1.35); opacity: .45; }
}

/* ---------- Appear effect (simulator card fades in on load) ---------- */
.pk-appear {
  animation: pk-appear .55s var(--pk-ease) both;
}
@keyframes pk-appear {
  from { opacity: .001; transform: translateY(20px); }
  to   { opacity: 1;    transform: none; }
}

/* ---------- Hover / pressed variants ----------
   !important: the exported markup sets these properties as inline styles. */

/* Primary (red) button — "Talk to an Expert", email button */
.framer-14kbczy { transition: opacity var(--pk-spring); }
.framer-14kbczy:hover  { opacity: .9 !important; }
.framer-14kbczy:active { opacity: .8 !important; }

/* Secondary (light) button — "Explore Technology", website button */
.framer-sgbi8o { transition: background-color var(--pk-spring), opacity var(--pk-spring); }
.framer-sgbi8o:hover  { background-color: var(--pk-yellow) !important; }
.framer-sgbi8o:active { background-color: var(--pk-yellow) !important; opacity: .8 !important; }

/* Compliance Engine feature cards */
.framer-16zs3n5 { transition: background-color var(--pk-spring); }
.framer-16zs3n5:hover { background-color: var(--pk-yellow) !important; }

/* Framer only played these when the user allows motion */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .framer-13q91m5, .framer-16v8y7t, .pk-appear { animation: none; }
}
