/* Progressive enhancement: the normal page stays visible without JavaScript. */
@media (prefers-reduced-motion: no-preference) {
  .header-navigation a {
    position: relative;
    border-bottom-color: transparent;
    transition: color 180ms ease;
  }
  .header-navigation a:hover,
  .header-navigation a[aria-current="page"] { border-bottom-color: transparent; }
  .header-navigation a::after {
    content: '';
    position: absolute;
    inset: auto 0 -2px;
    height: 2px;
    background: currentColor;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 260ms cubic-bezier(.22, 1, .36, 1);
  }
  .header-navigation a:hover::after,
  .header-navigation a:focus-visible::after,
  .header-navigation a[aria-current="page"]::after { transform: scaleX(1); }
  .editorial-button,
  .article-submission-details > summary {
    transition: background-color 180ms ease, box-shadow 220ms ease, transform 220ms ease;
  }
  .story-card-link { transition: transform 320ms cubic-bezier(.22, 1, .36, 1); }
  .story-image img,
  .home-lead-image img,
  .magazine-feature-image img { transition: transform 650ms cubic-bezier(.22, 1, .36, 1); }
  .hamburger i { transition: width 220ms ease; }
  .menu-toggle[aria-expanded="true"] .hamburger i:nth-child(2) { width: 27px; }
  .restaurant-locations summary::after,
  .article-submission-details > summary::after { transition: transform 220ms ease; }
  .article-submission-details[open] > .article-submission-form,
  .restaurant-locations[open] > .restaurant-locations-list {
    animation: mjm-panel-in 260ms cubic-bezier(.22, 1, .36, 1) both;
  }
  dialog.navigation-dialog[open] { animation: mjm-menu-in 320ms cubic-bezier(.22, 1, .36, 1); }
  dialog.navigation-dialog[open]::backdrop { animation: mjm-backdrop-in 240ms ease; }
  .navigation-dialog[open] .menu-navigation a { animation: mjm-panel-in 360ms both; }
  .navigation-dialog[open] .menu-navigation a:nth-child(2) { animation-delay: 45ms; }
  .navigation-dialog[open] .menu-navigation a:nth-child(3) { animation-delay: 90ms; }
  .navigation-dialog[open] .menu-navigation a:nth-child(4) { animation-delay: 135ms; }
  #media-dialog[open], .profile-thanks-dialog[open] { animation: mjm-panel-in 240ms ease; }
  @media (hover: hover) and (pointer: fine) {
    .editorial-button:not(:disabled):hover,
    .article-submission-details > summary:hover {
      transform: translateY(-2px);
      box-shadow: 0 6px 16px #15559118;
    }
    .story-card-link:hover { transform: translateY(-4px); }
    .story-card-link:hover .story-image img,
    .home-lead-image:hover img,
    .magazine-feature-image:hover img { transform: scale(1.035); }
    .menu-toggle:hover .hamburger i:nth-child(2) { width: 27px; }
  }
}
@keyframes mjm-panel-in {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: none; }
}
@keyframes mjm-menu-in {
  from { opacity: 0; transform: translateX(24px); }
  to { opacity: 1; transform: none; }
}
@keyframes mjm-backdrop-in {
  from { opacity: 0; }
  to { opacity: 1; }
}
