/* The original editorial-card edge and soft glow, shared across the website. */
:root {
  --site-hover-edge: rgba(42,233,253,.4);
  --site-hover-glow: 0 12px 36px rgba(109,0,228,.14);
}
html[data-brand="secondary"] {
  --site-hover-edge: var(--b2b-ice);
  --site-hover-glow: 0 12px 36px color-mix(in srgb, var(--b2b-primary) 14%, transparent);
}
html body :is(
  .editorial-card, .product-card, .info-card, .faq-item,
  .studio-panel:not(.editorial-card > *, .product-card > *, .info-card > *),
  .media-frame, .beat-store-embed, .full-art, .page-banner,
  .contact-glass > .shell > img,
  a, button
) {
  transition: border-color .25s ease, box-shadow .25s ease, outline-color .25s ease,
    background-color .25s ease, color .25s ease, transform .25s ease;
}
/* Inline links get an edge without changing their size or line wrapping. */
html body :is(.desktop-nav a, .mobile-menu a, .footer-links a,
  .footer-brand a, .contact-alternatives a, p a, .kit-selector a) {
  outline: 1px solid transparent;
  outline-offset: 3px;
  border-radius: 4px;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}
@media (hover: hover) and (pointer: fine) {
  html body :is(
    .editorial-card, .product-card, .info-card, .faq-item,
    .studio-panel:not(.editorial-card > *, .product-card > *, .info-card > *),
    .media-frame, .beat-store-embed, .full-art, .page-banner,
    .contact-glass > .shell > img,
    a, button
  ):hover {
    border-color: var(--site-hover-edge);
    box-shadow: var(--site-hover-glow);
  }
  html body :is(.desktop-nav a, .mobile-menu a, .footer-links a,
    .footer-brand a, .contact-alternatives a, p a, .kit-selector a):hover {
    outline-color: var(--site-hover-edge);
  }
}
/* Equivalent feedback when navigating by keyboard. Existing focus rings remain. */
html body :is(a, button, summary):focus-visible,
html body :is(.editorial-card, .product-card, .info-card, .faq-item,
  .studio-panel:not(.editorial-card > *, .product-card > *, .info-card > *),
  .beat-store-embed):focus-within {
  border-color: var(--site-hover-edge);
  box-shadow: var(--site-hover-glow);
}
@media (prefers-reduced-motion: reduce) {
  html body :is(.editorial-card, .product-card, .info-card, .faq-item,
    .studio-panel, .media-frame, .beat-store-embed, .full-art, .page-banner,
    .contact-glass > .shell > img, a, button) { transition: none; }
}
