/* Standing interaction standard: visible feedback, no content/layout changes. */
body { --interaction-accent: #f4ca76; --interaction-ink: #10202c; }
body.agency-bowie { --interaction-accent: #e8b83f; --interaction-ink: #081c37; }
body :is(a,button,summary,input,select,textarea) {
  transition: background-color 160ms ease, color 160ms ease, box-shadow 160ms ease, filter 160ms ease, transform 160ms ease;
}
body :is(a,button,summary,input,select,textarea):focus-visible {
  outline: 3px solid var(--interaction-ink) !important;
  outline-offset: 4px !important;
  box-shadow: 0 0 0 4px #fff, 0 0 0 8px var(--interaction-accent) !important;
}
body .social-icons a:is(:hover,:focus-visible,:active) > span:first-child {
  background: var(--interaction-accent);
  color: var(--interaction-ink);
  border-color: var(--interaction-accent);
}
body .social-icons a > span:first-child { transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease; }
body :is(a,button,summary):active {
  box-shadow: inset 0 0 0 2px currentColor;
}
body :is(input,select,textarea):hover { border-color: var(--interaction-ink); box-shadow: inset 0 0 0 1px var(--interaction-ink); }
@media (hover:hover) {
  body a:not(.btn):not(.brand):hover { text-decoration: underline; text-underline-offset: .22em; text-decoration-thickness: 2px; }
  body .social-icons a:hover { text-decoration: none; }
  body :is(button,summary,.btn,.shortcut-row a):hover { box-shadow: inset 0 0 0 2px currentColor; }
  body :is(.btn,.shortcut-row a):hover { transform: translateY(-2px); }
  body :is(a:has(img),[data-lightbox],[data-video]):hover { outline: 3px solid var(--interaction-accent); outline-offset: 3px; }
  body :is(a:has(img),[data-lightbox],[data-video]):hover img { filter: brightness(.88); }
}
@media (prefers-reduced-motion:reduce) {
  body :is(a,button,summary,input,select,textarea),body .social-icons a > span:first-child { transition: none !important; }
  body :is(a,button,summary):is(:hover,:active,:focus-visible) { transform: none !important; }
}
