/* afterimage / residual impression: a deliberate arrival, not an ambient loop */
.wordmark{touch-action:manipulation;cursor:pointer;position:relative;display:inline-block;width:max-content;isolation:isolate;line-height:1;overflow:visible}
.wordmark-main{position:relative;z-index:2;display:block}
.wordmark-echo{position:absolute;inset:0;display:block;z-index:1;white-space:nowrap;pointer-events:none;color:var(--ink);opacity:0;will-change:auto}
.wordmark.is-arriving .echo-near{animation:impression-near 1.5s cubic-bezier(.23,.66,.28,1) .12s both}
.wordmark.is-arriving .echo-far{animation:impression-far 1.6s cubic-bezier(.23,.66,.28,1) .20s both}
@keyframes impression-near{
  0%,5%{opacity:0;transform:translate3d(-17px,0,0)}
  22%{opacity:.43;transform:translate3d(-12px,1px,0)}
  48%{opacity:.35;transform:translate3d(12px,1px,0)}
  70%{opacity:.20;transform:translate3d(8px,0,0)}
  100%{opacity:0;transform:translate3d(0,0,0)}
}
@keyframes impression-far{
  0%,9%{opacity:0;transform:translate3d(22px,1px,0)}
  28%{opacity:.24;transform:translate3d(21px,2px,0)}
  55%{opacity:.19;transform:translate3d(-15px,1px,0)}
  78%{opacity:.08;transform:translate3d(-6px,0,0)}
  100%{opacity:0;transform:translate3d(0,0,0)}
}
@media(hover:hover) and (pointer:fine){
 .masthead:not(.has-scrolled) .wordmark:not(.is-arriving):hover .echo-near{animation:impression-near 1.18s ease-out both}
 .masthead:not(.has-scrolled) .wordmark:not(.is-arriving):hover .echo-far{animation:impression-far 1.27s ease-out .07s both}
}
.masthead:not(.has-scrolled) .wordmark:not(.is-arriving):focus-visible .echo-near{animation:impression-near 1.18s ease-out both}
.masthead:not(.has-scrolled) .wordmark:not(.is-arriving):focus-visible .echo-far{animation:impression-far 1.27s ease-out .07s both}
.masthead.has-scrolled .wordmark-echo{animation:none!important;opacity:0!important}
@media(prefers-reduced-motion:reduce){
 .wordmark-echo,.wordmark.is-arriving .wordmark-echo,.wordmark:hover .wordmark-echo,.wordmark:focus-visible .wordmark-echo{animation:none!important;opacity:0!important;transform:none!important}
}
