/* Global motion layer, loaded on every page.
   Uses :where() (zero specificity) so any element that already defines its own transition keeps it;
   the press-scale itself is applied by ui-motion.js through the separate `scale` property, so it never
   overrides an element's existing transform or transition. */
html { scroll-behavior: smooth; -webkit-tap-highlight-color: transparent; }

:where(a, button, [role="button"], summary, input[type="submit"], input[type="button"], [class*="card"]) {
  transition: color .2s cubic-bezier(0.4, 0, 0.2, 1), background-color .2s cubic-bezier(0.4, 0, 0.2, 1),
    border-color .2s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .2s cubic-bezier(0.4, 0, 0.2, 1),
    opacity .2s cubic-bezier(0.4, 0, 0.2, 1);
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

/* Hide Netlify Badge Injection */
#netlify-badge,
[data-netlify-badge],
.netlify-badge,
iframe[src*="netlify"],
div[style*="position: fixed"][style*="bottom"][style*="right"]:has(a[href*="netlify.com"]) {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
