/* A shared motion layer. All content remains visible without JavaScript. */
.editorial-image-window { display:block; overflow:hidden; }
.editorial-image-window > img { display:block; }
@media (prefers-reduced-motion: no-preference) {
  html { scroll-behavior:smooth; }
  .editorial-image-window > img {
    transition:transform 900ms cubic-bezier(.2,.65,.3,1);
  }
  :is(.primary-link,.secondary-link,.text-link,.dates) {
    transition:background-color 220ms ease,color 220ms ease,border-color 220ms ease;
  }
  :is(.primary-link,.secondary-link,.text-link,.dates,.course-links a) > [aria-hidden="true"] {
    display:inline-block;
    transition:transform 350ms cubic-bezier(.2,.65,.3,1);
  }
  :is(.primary-link,.secondary-link,.text-link,.dates,.course-links a):is(:hover,:focus-visible) > [aria-hidden="true"] {
    transform:translate(3px,-2px);
  }
  .header-inner nav a:not(.dates) { position:relative; }
  .header-inner nav a:not(.dates)::after {
    content:""; position:absolute; left:0; right:0; bottom:-5px; height:1px;
    background:currentColor; transform:scaleX(0); transform-origin:left;
    transition:transform 300ms ease;
  }
  .header-inner nav a:not(.dates):is(:hover,:focus-visible) { text-decoration:none; }
  .header-inner nav a:not(.dates):is(:hover,:focus-visible)::after { transform:scaleX(1); }
}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion: no-preference) {
  .editorial-image-window:hover > img { transform:scale(1.025); }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto !important; }
  .editorial-image-window > img { transform:none !important; transition:none !important; }
}
