/* Restrained cold halo for site controls. Floating contact widgets keep their
   own interaction language and are deliberately excluded. */
@media (hover: hover) and (pointer: fine) {
  body :where(button, .btn, a[class*="btn"], a[class*="button"]):not(.stalkon-contact-widget *, .stalkon-widget-modal *),
  body.stalkon-force-motion :is(main, .Header, .Menu, footer) :where(button, .btn, a[class*="btn"], a[class*="button"]):not(.stalkon-contact-widget *, .stalkon-widget-modal *) {
    transition:
      color .92s cubic-bezier(.22, .61, .36, 1),
      background-color 1.02s cubic-bezier(.22, .61, .36, 1),
      border-color .96s cubic-bezier(.22, .61, .36, 1),
      box-shadow 1.18s cubic-bezier(.16, 1, .3, 1),
      filter 1.04s cubic-bezier(.22, .61, .36, 1) !important;
  }

  body :where(button, .btn, a[class*="btn"], a[class*="button"]):not(.stalkon-contact-widget *, .stalkon-widget-modal *):hover {
    border-color: rgba(126, 202, 255, .88);
    box-shadow:
      0 0 0 1px rgba(131, 207, 255, .22) inset,
      0 8px 24px rgba(0, 90, 185, .16),
      0 0 22px rgba(68, 164, 244, .18) !important;
    filter: brightness(1.025) saturate(1.025);
  }

  body :where(button, .btn, a[class*="btn"], a[class*="button"]):not(.stalkon-contact-widget *, .stalkon-widget-modal *):focus-visible {
    outline: 1px solid rgba(155, 218, 255, .92);
    outline-offset: 3px;
    box-shadow:
      0 0 0 1px rgba(131, 207, 255, .22) inset,
      0 0 24px rgba(68, 164, 244, .2) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body :where(button, .btn, a[class*="btn"], a[class*="button"]):not(.stalkon-contact-widget *, .stalkon-widget-modal *) {
    transition-duration: .01ms !important;
  }
}
