/* Shared motion tokens. Source content is always visible without JavaScript. */
:root {
 --cl-motion-fast: 260ms;
 --cl-motion-intro-duration: 1000ms;
 --cl-motion-text-duration: 850ms;
 --cl-motion-image-duration: 1000ms;
 --cl-motion-card-duration: 950ms;
 --cl-motion-leave-duration: 650ms;
 --cl-motion-stagger: 70ms;
 --cl-motion-ease: cubic-bezier(.2,.65,.25,1);
}
.cl-motion-near[data-cl-motion-target] { will-change: translate, opacity; }
@keyframes cl-title-arrive { from { translate:0 18px; opacity:.82; } to { translate:0 0; opacity:1; } }

/* Hover feedback is a pointer enhancement; keyboard focus remains fixed and readable. */
@media (prefers-reduced-motion: no-preference) {
 /* Begin with the first styled paint, never jump a painted heading in footer JS. */
 body:not(.wp-admin) main h1 { animation:cl-title-arrive var(--cl-motion-intro-duration) var(--cl-motion-ease) backwards; }
 main :is(form,table,.cl-tool,[data-cl-motion="none"]) h1,
 body:not(.wp-admin) main h1:is(.cl-motion-intro-done,:target,:focus) { animation:none; }
 :is(.cl-article-card,.cl-articles-card,.cl-discovery-card,.cl-pilot-related-card,.cl-route-card,.cl-path-card) {
  transition: transform var(--cl-motion-fast) var(--cl-motion-ease), border-color var(--cl-motion-fast), box-shadow var(--cl-motion-fast);
 }
 :is(.wp-block-button__link,.cl-pilot-button,.cl-inline-assistance,.cl-mobile-contact a,.wp-block-navigation a) {
  transition: transform var(--cl-motion-fast) var(--cl-motion-ease), color var(--cl-motion-fast), background-color var(--cl-motion-fast), border-color var(--cl-motion-fast);
 }
}
@media (prefers-reduced-motion: no-preference) and (hover: hover) and (pointer: fine) {
 :is(.cl-article-card,.cl-articles-card,.cl-discovery-card,.cl-pilot-related-card,.cl-route-card,.cl-path-card):hover {
  transform: translateY(-3px);
 }
 :is(.wp-block-button__link,.cl-pilot-button,.cl-inline-assistance,.cl-mobile-contact a):hover {
  transform: translateY(-2px);
 }
 :is(.wp-block-button__link,.cl-pilot-button,.cl-inline-assistance,.cl-mobile-contact a):active {
  transform: translateY(0) scale(.985);
 }
}
@media (prefers-reduced-motion: reduce), print {
 main h1 { animation:none!important; translate:none!important; opacity:1!important; }
 [data-cl-motion-target] {
  animation: none !important;
  transition: none !important;
  translate: none !important;
  clip-path: none !important;
  opacity: 1 !important;
  will-change: auto !important;
 }
 :is(.cl-article-card,.cl-articles-card,.cl-discovery-card,.cl-pilot-related-card,.cl-route-card,.cl-path-card,.wp-block-button__link,.cl-pilot-button,.cl-inline-assistance,.cl-mobile-contact a,.wp-block-navigation a) {
  transition: none !important;
  transform: none !important;
 }
}
.editor-styles-wrapper main h1,
.editor-styles-wrapper [data-cl-motion-target] {
 animation: none !important;
 transition: none !important;
 translate: none !important;
 clip-path: none !important;
 opacity: 1 !important;
 will-change: auto !important;
}
