/* Shared text-link styles. */
body {
  --link-ink: #b83434;
  --link-underline-ease: 320ms cubic-bezier(.25, .46, .45, .94);
}
.site-header, .site-footer, .hero, .newsletter {
  --link-ink: #e09191;
}
.filters [aria-current], .ig-tabs [aria-current] {
  --link-ink: #fff;
}
/* Keep red links distinguishable from adjacent text without an underline. */
.seo-intro p:has(a[href]), .byline, .page-heading .navigation-next, .prose blockquote:has(a[href]) {
  color: #111;
}
body a[href]:not(.button, .btn, .brand, .card-image, .topic, .skip, .source-button, .src-btn, [role="button"], :where(#site-nav a, .cta a)):not(:has(img, picture, > .link-label)),
body a[href] > .link-label,
body a.topic h3 {
  color: var(--link-ink);
  text-decoration: none;
  background-image: linear-gradient(currentColor, currentColor);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-origin: content-box;
  background-size: var(--link-draw-width, 0%) 2px;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  transition: background-size var(--link-underline-ease);
}
body a[href]:focus-visible {
  --link-draw-width: 100%;
}
/* Touch browsers can retain :hover after tapping a link and going back. */
@media (hover: hover) {
  body a[href]:hover {
    --link-draw-width: 100%;
  }
}
body a[href]:has(> .link-label) {
  color: var(--link-ink);
  text-decoration: none;
}
body a.topic:hover h3 { text-decoration: none; }
/* Imported essays may wrap linked text in a second underline. */
body a[href] u { text-decoration: none; }
/* The standalone independence guide has an ID-scoped link color. */
body #tol1981 .source a[href] { color: var(--link-ink); }
body a[href]:focus-visible {
  outline: 2px solid var(--link-ink);
  outline-offset: 5px;
}
body #site-nav a[href] { text-decoration: none; }
#site-nav a > span {
  display: inline-block;
  padding-bottom: 4px;
  margin-bottom: -4px;
  background: linear-gradient(var(--link-ink), var(--link-ink)) no-repeat 0 100% / 0% 2px;
  transition: color 200ms ease;
}
#site-nav a[aria-current] > span {
  background-size: 100% 2px;
}
#site-nav a:not([aria-current]):is(:hover, :focus-visible) > span {
  color: var(--link-ink);
}
#site-nav a[aria-current] {
  font-weight: 600;
}
.footer-links > div { align-items: flex-start; }
.ig-card > .text-link span[aria-hidden] { transition: transform 200ms ease; }
.ig-card > .text-link:is(:hover, :focus-visible) span[aria-hidden] { transform: translateX(3px); }
@media (prefers-reduced-motion: reduce) {
  body a[href], body a[href] > .link-label, body a.topic h3, #site-nav a > span, .ig-card > .text-link span[aria-hidden] { transition: none !important; }
  .ig-card > .text-link:is(:hover, :focus-visible) span[aria-hidden] { transform: none; }
}
@media print {
  body a[href], body a[href] > .link-label, body a.topic h3 { background-image: none !important; color: inherit !important; }
}
