/* Добродетел — cross-page View Transitions (wave 2, 2026-11-01).
   Loaded on every page so both sides of a navigation opt in. Same-origin MPA only;
   unsupported browsers ignore it. Motion is gated behind prefers-reduced-motion: no-preference. */
@media (prefers-reduced-motion: no-preference) {
  @view-transition { navigation: auto; }

  /* The family bar and the glass header stay put while the page body glides. */
  .cs-brandbar { view-transition-name: cs-bar; }
  .nav, .ex-top { view-transition-name: site-head; }

  ::view-transition-group(*) { animation-duration: .45s; animation-timing-function: cubic-bezier(.2, .8, .2, 1); }
  ::view-transition-old(root) { animation: vt-out .22s cubic-bezier(.4, 0, 1, 1) both; }
  ::view-transition-new(root) { animation: vt-in .5s cubic-bezier(.2, .8, .2, 1) .06s both; }
  ::view-transition-old(cs-bar), ::view-transition-new(cs-bar) { animation: none; mix-blend-mode: normal; }
}
@keyframes vt-out { to { opacity: 0; transform: translateY(-6px); } }
@keyframes vt-in { from { opacity: 0; transform: translateY(14px); } }
