/* Hintergrund-Animationslayer (Grid + Orbs) */
.tb-bg-anim {
  position: fixed;
  inset: 0;
  overflow: hidden;
  z-index: 0;
  pointer-events: none;
}

/* Subtiles Tech-Grid */
.tb-bg-grid {
  position: fixed;
  inset: -80px;
  background-image:
    linear-gradient(
      rgba(255, 255, 255, 0.04) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.04) 1px,
      transparent 1px
    );
  background-size: 80px 80px;
  opacity: 0.12;
  transform: translate3d(0, 0, 0);
  animation: tb-grid-drift 45s linear infinite;
  mix-blend-mode: screen;
}

@keyframes tb-grid-drift {
  0% {
    transform: translate3d(0, 0, 0) rotate(0.3deg);
  }
  50% {
    transform: translate3d(-60px, -40px, 0) rotate(0deg);
  }
  100% {
    transform: translate3d(0, 0, 0) rotate(0.3deg);
  }
}

/* Orbs – subtiler, stärker geblurt, aber animiert */
.tb-bg-orb {
  position: fixed;
  width: 320px;
  height: 320px;
  border-radius: 50%;
  filter: blur(70px);
  opacity: 0.32;
  mix-blend-mode: screen;
  pointer-events: none;
}

/* Orb 1 – Burgundy links oben */
.tb-bg-orb.orb-1 {
  background: radial-gradient(circle, var(--accent-strong) 0%, transparent 70%);
  top: 6%;
  left: 5%;
  animation: tb-orb-1 38s ease-in-out infinite alternate;
}

/* Orb 2 – kühles Blau rechts unten */
.tb-bg-orb.orb-2 {
  background: radial-gradient(circle, #1d4ed8 0%, transparent 70%);
  bottom: 6%;
  right: 4%;
  animation: tb-orb-2 46s ease-in-out infinite alternate;
  opacity: 0.26;
}

/* Orb 3 – grüner/purple Mix mittig versetzt */
.tb-bg-orb.orb-3 {
  background: radial-gradient(circle, #10b981 0%, transparent 70%);
  top: 42%;
  left: 58%;
  animation: tb-orb-3 52s ease-in-out infinite alternate;
  opacity: 0.22;
}

@keyframes tb-orb-1 {
  0% {
    transform: translate3d(0, 0, 0) scale(1);
  }
  50% {
    transform: translate3d(30px, 20px, 0) scale(1.05);
  }
  100% {
    transform: translate3d(-20px, 10px, 0) scale(0.96);
  }
}

@keyframes tb-orb-2 {
  0% {
    transform: translate3d(0, 0, 0) scale(1);
  }
  50% {
    transform: translate3d(-25px, -18px, 0) scale(1.06);
  }
  100% {
    transform: translate3d(18px, 12px, 0) scale(0.97);
  }
}

@keyframes tb-orb-3 {
  0% {
    transform: translate3d(0, 0, 0) scale(0.94);
  }
  50% {
    transform: translate3d(-18px, 30px, 0) scale(1.04);
  }
  100% {
    transform: translate3d(22px, -24px, 0) scale(0.98);
  }
}

