/* Senior-Pattern Interactions — liegt in public/, weil Astro/Vite-Pipeline
   Attribut-Selektoren in global.css purged (siehe LEARNINGS.md). */

/* Magnetic-Hover: Element folgt Cursor leicht an, smooth zurück. */
[data-magnetic] {
  transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
}

/* Parallax: smooth transform-update via JS, keine CSS-transition (sonst lagging). */
[data-parallax] {
  will-change: transform;
}

/* CTA-Signature-Hover: konsistenter Hover-State für alle Bold-CTAs.
   Element opt-in via [data-cta-signature].
   WCAG-Fix 2026-05-20: vorher Sunset-Orange #FF8C42 = 2.31:1 White-on-Orange
   (AA-Verstoß). Jetzt Burgundy-Hover #5C0017 = 14.31:1 (AA Body ✓).
   Touch-Fix 2026-05-20: Hover-Pseudo nur im @media (hover: hover)-Block, damit
   auf Touch-Devices kein „stuck hover" nach Tap erscheint. :focus-visible
   bleibt separat für Keyboard-Navigation. */
[data-cta-signature] {
  transition:
    background-color 0.2s ease,
    color 0.2s ease,
    box-shadow 0.2s ease,
    transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}
@media (hover: hover) {
  [data-cta-signature]:hover {
    background-color: #5C0017 !important;
    color: #FFFFFF !important;
    box-shadow: 0 8px 24px rgba(128, 0, 32, 0.35);
  }
}
[data-cta-signature]:focus-visible {
  background-color: #5C0017 !important;
  color: #FFFFFF !important;
  box-shadow: 0 8px 24px rgba(128, 0, 32, 0.35);
}
[data-cta-signature]:active {
  background-color: #3D000F !important;
}

/* Reduced-Motion-Override: alle Senior-Interactions deaktivieren. */
@media (prefers-reduced-motion: reduce) {
  [data-magnetic],
  [data-parallax],
  [data-cta-signature] {
    transition: none !important;
    transform: none !important;
  }
}
