/* CV content only; contact header and research siblings are outside this scope. */
:root:root .cv-document .cv-layout{--cv-spatial:var(--motion-ease-spatial);--cv-fast:var(--motion-ease-icon,var(--cv-spatial));--cv-effects:var(--motion-ease-effects)}
:root:root .cv-layout .cv-section-nav::before{transition:transform 420ms var(--cv-spatial),width 420ms var(--cv-spatial),height 420ms var(--cv-spatial),opacity 160ms var(--cv-effects)}
:root:root .cv-layout :is(.cv-filters,.citation-tabs)::before{transition:transform 420ms var(--cv-fast),width 420ms var(--cv-fast)}
:root:root .cv-layout summary svg{transition:transform 420ms var(--cv-fast)}
:root:root .cv-layout :is(button,summary,.cv-section-nav a){transition:background-color 160ms var(--cv-effects),color 160ms var(--cv-effects),border-color 160ms var(--cv-effects),filter 160ms var(--cv-effects)}
:root:root .cv-layout .cv-section-nav.cv-rail-initializing::before{transition:none!important}
@media(prefers-reduced-motion:reduce){:root:root .cv-layout *,:root:root .cv-layout *::before{transition:none!important}}
html[data-motion=reduce] .cv-layout *,html[data-motion=reduce] .cv-layout *::before{transition:none!important}
