/* Homepage motion is progressive enhancement; the static page stays readable. */
.hero-title-line { display: block; }
.home-motion .hero h1 em { position: relative; width: fit-content; }
.home-motion .hero h1 em::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -3px;
  height: 2px;
  background: currentColor;
  opacity: .65;
  transform-origin: left;
  animation: home-title-line 700ms cubic-bezier(.22, 1, .36, 1) 740ms both;
}
@keyframes home-title-line {
  from { transform: scaleX(0); }
  to { transform: scaleX(1); }
}
.home-editorial .hero-film {
  position: absolute;
  z-index: 1;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 60%;
  opacity: 0;
  transition: opacity 450ms ease;
}
.home-editorial .hero-film.is-ready { opacity: 1; }
.home-editorial .hero-visual:has(.hero-film.is-ready) .hero-art { visibility: hidden; }
.hero-film-controls { position: absolute; z-index: 3; right: 28px; bottom: 20px; }
.hero-film-toggle {
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 8px;
  width: 44px;
  height: 44px;
  font-size: 16px;
  color: #fff;
  background: #0e213bd9;
}
.hero-film-toggle:hover { background: #294968; }
.hero-film-toggle:focus-visible { outline-offset: 3px; }
.home-motion .news-row, .home-motion .council-row { transition: background-color 180ms ease; }
.home-motion .row-open,
.home-motion a > .icon,
.home-motion .text-link .icon,
.home-motion .feature-series-read .icon { transition: transform 230ms cubic-bezier(.22, 1, .36, 1); }
.home-motion .popular-card,
.home-motion .market-card,
.home-motion .feature-series-link,
.home-motion .home-weekly-link {
  transition: box-shadow 230ms ease, transform 230ms cubic-bezier(.22, 1, .36, 1), border-color 230ms ease;
}
.home-motion .market-details summary .icon { transition: transform 300ms cubic-bezier(.22, 1, .36, 1); }
.home-motion .news-row:focus-within,
.home-motion .council-row:focus-visible { background: #f1f6ff; }
.home-motion .news-row:focus-within .row-open,
.home-motion .council-row:focus-visible > .icon { transform: translateX(5px); }
@media (hover: hover) {
  .home-motion .news-row:hover,
  .home-motion .council-row:hover { background: #f1f6ff; }
  .home-motion .news-row:hover .row-open,
  .home-motion .council-row:hover > .icon,
  .home-motion .text-link:hover .icon,
  .home-motion .feature-series-link:hover .feature-series-read .icon { transform: translateX(5px); }
  .home-motion .popular-card:hover,
  .home-motion .market-card:hover,
  .home-motion .feature-series-link:hover,
  .home-motion .home-weekly-link:hover { transform: translateY(-3px); box-shadow: 0 9px 25px #193e7f10; }
}
@media (max-width: 700px) {
  .home-editorial .hero-film,
  .home-editorial .hero-art { object-position: 84% 60%; }
  .hero-film-controls { right: 16px; bottom: 14px; }
}
@media (prefers-reduced-motion: reduce) {
  .home-editorial *, .home-editorial *::before, .home-editorial *::after {
    animation: none !important;
    transition: none !important;
  }
  .home-editorial .hero-film, .hero-film-controls { display: none; }
  .home-editorial .hero-visual .hero-art { visibility: visible; }
  .home-editorial .market-card:hover { transform: none; }
}
