/* Quiet text-link hover: one eased transition in both directions, no glyph swapping. */
body a.text-link,body a.text-link h3{
 transition:color .32s cubic-bezier(.22,.61,.36,1),opacity .32s cubic-bezier(.22,.61,.36,1);
}
body a.text-link:is(:hover,:focus-visible){opacity:.4}
/* Preserve adaptive header contrast while producing grey over a white background. */
body .site-header a.text-link[href]:is(:hover,:focus-visible){opacity:.4}
@media(prefers-reduced-motion:reduce){body a.text-link,body a.text-link h3{transition:none}}

/* Huge-inspired character rolls; text shadows supply the identical incoming glyph. */
html body :is(a,.footer-unavailable).rolling-link .link-roll-label,
html body :is(a,.footer-unavailable).rolling-link .link-roll-word,
html body :is(a,.footer-unavailable).rolling-link .link-roll-char{
 font-family:inherit!important;font-size:inherit!important;font-weight:inherit!important;
 line-height:inherit!important;letter-spacing:inherit!important;color:inherit;
}
html body :is(a,.footer-unavailable).rolling-link .link-roll-word{
 display:inline-block;white-space:nowrap;clip-path:inset(0);
 padding-block:.12em;margin-block:-.12em;
}
html body :is(a,.footer-unavailable).rolling-link .link-roll-char{
 display:inline-block;position:relative;text-shadow:0 calc(1lh + .24em) currentColor;
 transform:translateY(0);
 transition:transform .6s cubic-bezier(.625,.05,0,1);
 transition-delay:var(--letter-delay,0ms);
}
@media(hover:hover) and (pointer:fine){
 html body :is(a,.footer-unavailable).rolling-link:hover .link-roll-char{transform:translateY(calc(-1lh - .24em))}
}
html body :is(a,.footer-unavailable).rolling-link:focus-visible .link-roll-char{transform:translateY(calc(-1lh - .24em))}
@media(prefers-reduced-motion:reduce){
 html body :is(a,.footer-unavailable).rolling-link .link-roll-char{
  transform:none!important;text-shadow:none;transition:none;
 }
}


/* Telegram remains a non-clickable placeholder, with the same visual hover. */
html body .footer-main-links>.footer-unavailable{
 transition:opacity .32s cubic-bezier(.22,.61,.36,1);
}
html body .footer-main-links>.footer-unavailable:hover{
 opacity:.4;
}
