/* Unique tether motions for flashusdsoftware.com — shape:stone */

@keyframes tqSpinStone { 0%{transform:rotateY(0) scale(1)} 50%{transform:rotateY(180deg) scale(1.04)} 100%{transform:rotateY(360deg) scale(1)} }
@keyframes tqOrbitSage { to { transform: rotate(360deg); } }
@keyframes tqStoneFloat { 0%,100%{transform:translateY(0) rotate(0)} 50%{transform:translateY(-17px) rotate(1.5deg)} }
@keyframes tqStoneRise { from{opacity:0;transform:translateY(32px)} to{opacity:1;transform:none} }
@keyframes tqSageBreathe { 0%,100%{transform:scale(1); filter:saturate(1)} 50%{transform:scale(1.03); filter:saturate(1.15)} }
@keyframes tqTetherDrift { 0%,100%{transform:translate(0,0)} 50%{transform:translate(10px,-20px) rotate(-8deg)} }


.tq-coin, .tq-coin-stage { display:block !important; }
.tq-coin-stage { filter: drop-shadow(0 18px 36px rgba(68,64,60,.35)); }
.tq-coin { border-radius:18px !important; animation:tqSpinStone 10s ease-in-out infinite; }
.tq-coin-face { border-radius:18px !important; background:linear-gradient(145deg,#44403c,#a8a29e) !important; border:2px solid #84cc16 !important; }
.tq-coin-back { background:#1c1917 !important; }
.tq-coin-back span { color:#84cc16 !important; font-family:Georgia,serif !important; }
.tq-orbit { border-radius:22px !important; border-color:rgba(132,204,22,.4) !important; animation:tqOrbitSage 19s linear infinite; }
.tq-orbit-2 { animation-duration:12s; animation-direction:reverse; border-style:dashed !important; }
.tq-float { border-radius:18px !important; animation:tqStoneFloat 4.2s ease-in-out infinite; background:rgba(250,250,249,.92) !important; border:1px solid rgba(132,204,22,.3) !important; }
.tq-float-b { animation-delay:.6s; } .tq-float-c { animation-delay:1.2s; }


/* ---- site-wide motion (unique timing via vars) ---- */
.tq-buy, .tq-btn-dark, .primary-btn, a.tq-buy {
  animation: tqSageBreathe 3.2s ease-in-out infinite !important;
}
.pricing-card, .tq-card, .faq-item, .blog-card, .fus-card, .feature-card,
.tq-plan, .plan-card, .review-card, .team-card {
  animation: tqStoneRise .85s cubic-bezier(.22,1,.36,1) both;
  animation-timeline: view();
  animation-range: entry 0% cover 35%;
}
@supports not (animation-timeline: view()) {
  .pricing-card, .tq-card, .faq-item, .blog-card, .fus-card, .feature-card,
  .tq-plan, .plan-card, .review-card, .team-card {
    animation: tqStoneRise .85s cubic-bezier(.22,1,.36,1) both;
  }
}
@keyframes tqMarqueeShared { from{transform:translateX(0)} to{transform:translateX(-50%)} }
.logo-track {
  animation: tqMarqueeShared 28s linear infinite;
}
.tq-hero-h1, .tq-hero-line, .tq-hero-cta {
  animation: tqStoneRise .85s cubic-bezier(.22,1,.36,1) both;
}
.tq-hero-h1 { animation-delay: .05s; }
.tq-hero-line { animation-delay: .15s; }
.tq-hero-cta { animation-delay: .28s; }
.cta-band, .tq-cta, .tq-ready {
  position: relative;
  overflow: hidden;
}
.cta-band::after, .tq-cta::after, .tq-ready::after {
  content: "₮";
  position: absolute;
  right: 8%;
  top: 20%;
  font-size: clamp(3rem, 8vw, 6rem);
  opacity: .18;
  animation: tqTetherDrift 6s ease-in-out infinite;
  pointer-events: none;
  font-weight: 800;
  color: #84cc16;
}
.collaborators .client-logo {
  transition: transform .35s ease, color .35s ease;
}
.collaborators .client-logo:hover {
  transform: translateY(-4px) scale(1.05);
  color: #84cc16;
}
/* mini tether badges in multiple zones */
.tq-motion-tether {
  position: absolute;
  width: 42px; height: 42px;
  border-radius: 18px;
  background: linear-gradient(135deg, #44403c, #84cc16);
  color: #fff;
  display: grid;
  place-items: center;
  font-weight: 800;
  font-size: 1.1rem;
  animation: tqTetherDrift 5.5s ease-in-out infinite;
  box-shadow: 0 10px 28px rgba(0,0,0,.18);
  z-index: 2;
  pointer-events: none;
}
.tq-motion-tether--a { top: 12%; left: 6%; animation-delay: 0s; }
.tq-motion-tether--b { top: 28%; right: 7%; animation-delay: .8s; animation-duration: 7s; }
.tq-motion-tether--c { bottom: 18%; left: 10%; animation-delay: 1.4s; animation-duration: 6.2s; }
.tq-motion-tether--d { bottom: 22%; right: 12%; animation-delay: .4s; animation-duration: 8s; }
.section, .tq-plans, .pricing, .faq, .tq-blog, .cta-band, .tq-ready, .about, .project {
  position: relative;
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
@media (max-width: 640px) {
  .tq-motion-tether { width: 32px; height: 32px; font-size: .9rem; opacity: .85; }
  .tq-orbit { opacity: .55; }
}

