/* Shared line icons, independent of operating-system emoji fonts. */
.np5-link-icon {
  display: inline-block;
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  vertical-align: -0.16em;
  overflow: visible;
  color: inherit;
  pointer-events: none;
}

/* The native anchor's real box covers only a verified single-purpose article.
   A separate nonfocusable span retains the original visible CTA/layout. */
.np5-click-card {
  position: relative;
  isolation: isolate;
}
.np5-click-card a.np5-card-action {
  position: absolute !important;
  display: block;
  inset: 0;
  width: auto;
  height: auto;
  min-width: 0;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  z-index: 2;
  cursor: pointer;
}
.np5-click-card:focus-within {
  outline: 3px solid #164c85;
  outline-offset: 3px;
}
.np5-click-card a.np5-card-action:focus-visible {
  outline: none;
}
.np5-card-title-link {
  color: inherit;
  text-decoration: none;
}
.np5-card-title-link:hover { text-decoration: underline; }
.np5-card-title-link:focus-visible {
  outline: 3px solid #164c85;
  outline-offset: 3px;
}

/* Keep the original link and its accessible name, not its circular decoration. */
html body a.circle-link,
html body [data-np5-link-decoration].circle-link {
  display: inline-grid;
  place-items: center;
  flex: 0 0 44px;
  min-width: 44px;
  min-height: 44px;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #0a2449;
  transition: color 160ms ease;
}

html body a.circle-link:hover { color: #315a83; }
html body a.circle-link:focus-visible {
  outline: 3px solid #91b5e8;
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  html body a.circle-link { transition: none; }
}
