/* Motion for the resources catalogue and its guides. */
:root { --mac-motion-ease: cubic-bezier(.23, 1, .32, 1); }

/* The two legacy guides include their own body colours after the shared CSS. */
body.legacy-resource.premium-legacy { background: #fafaf8; color: #191919; }

/* Static accents are calmer and consume no resources while reading. */
:is(.fph__visual, .consultation, .guide-chapter figure, .guide-chapter aside)::after {
  animation: none !important;
}

:is(.resource-card, .button-link, .consultation-link, .mac-share, .copy-snippet,
    .filter-bar button, .mac-menu-toggle, .guide-toc a) {
  transition: transform 160ms var(--mac-motion-ease), background-color 160ms ease,
    border-color 160ms ease, color 160ms ease;
}

@media (hover: hover) and (pointer: fine) {
  .premium-catalog .resource-card:hover { transform: translateY(-3px); }
  :is(.button-link, .consultation-link, .mac-share, .copy-snippet):hover { transform: translateY(-2px); }
  .guide-toc a:hover { transform: translateX(3px); }
}
@media (hover: none) {
  .premium-catalog .resource-card:hover, .premium-catalog .resource-card:hover .resource-card__arrow { transform: none; }
}
html[data-mac-input="pointer"] :is(.resource-card, .button-link, .consultation-link, .mac-share, .copy-snippet, .filter-bar button, .mac-menu-toggle):active {
  transform: scale(.98);
  transition-duration: 100ms;
}

@media (prefers-reduced-motion: reduce) {
  :is(.resource-card, .resource-card__arrow, .button-link, .consultation-link, .mac-share,
      .copy-snippet, .filter-bar button, .mac-menu-toggle, .guide-toc a) {
    transition: none !important;
    animation: none !important;
    transform: none !important;
  }
}
