/* ============================================
   animations.css – Alle CSS-Animationen
   ============================================ */

@keyframes riseIn    { from { opacity:0; transform:translateY(22px); } to { opacity:1; transform:none; } }
@keyframes fadeIn    { from { opacity:0; } to { opacity:1; } }
@keyframes floatLogo { 0%,100% { transform:translateY(0) rotate(-1deg); } 50% { transform:translateY(-14px) rotate(1deg); } }
@keyframes shimmer   { 0% { background-position: -200% center; } 100% { background-position: 200% center; } }
@keyframes blink     { 0%,100% { opacity:1; } 50% { opacity:.3; } }
@keyframes spin      { to { transform:rotate(360deg); } }

/* Gold-Shimmer-Effekt für besondere Elemente */
.fbe-shimmer {
  background: linear-gradient(90deg, var(--gold-dark) 25%, var(--gold-light) 50%, var(--gold-dark) 75%);
  background-size: 200% auto;
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  animation: shimmer 3s linear infinite;
}

/* Pulsierender Dot (z.B. "Verfügbar") */
.fbe-pulse-dot {
  display: inline-block; width: 8px; height: 8px;
  border-radius: 50%; background: var(--green);
  animation: blink 2s ease-in-out infinite;
}

/* Loading-Spinner */
.fbe-spinner {
  width: 20px; height: 20px;
  border: 2px solid rgba(201,168,76,.2);
  border-top-color: var(--gold);
  border-radius: 50%;
  animation: spin .8s linear infinite;
}

/* Staggered Reveal Delays */
.reveal-d1 { transition-delay: .1s !important; }
.reveal-d2 { transition-delay: .2s !important; }
.reveal-d3 { transition-delay: .3s !important; }
.reveal-d4 { transition-delay: .4s !important; }

/* Hero-Animationen */
.fbe-hero__eyebrow { opacity:0; animation: riseIn .9s ease .2s forwards; }
.fbe-hero__title   { opacity:0; animation: riseIn .9s ease .4s forwards; }
.fbe-hero__body    { opacity:0; animation: riseIn .9s ease .6s forwards; }
.fbe-hero__actions { opacity:0; animation: riseIn .9s ease .8s forwards; }
.fbe-hero__logo-wrap { opacity:0; animation: riseIn 1s ease 1.1s forwards; }

/* Hover-Glow für Gold-Buttons */
.fbe-btn-gold { position: relative; overflow: hidden; }
.fbe-btn-gold::after {
  content: '';
  position: absolute; top: 0; left: -100%; width: 100%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.2), transparent);
  transition: left .5s;
}
.fbe-btn-gold:hover::after { left: 100%; }

/* Page transition */
.fbe-page-enter { animation: fadeIn .4s ease forwards; }
