.course-manifesto { position: relative; background: var(--accent); }
.manifesto-panel { position: relative; height: 180svh; color: var(--black); }
.manifesto-stage { position: sticky; top: 68px; height: calc(100svh - 68px); overflow: hidden; }
.manifesto-plate { position: absolute; inset: 0; background: var(--accent); transform-origin: center; }
.manifesto-word { margin: 0; width: 100%; text-align: center; white-space: nowrap; font: normal 21vw/.85 var(--font-heading); letter-spacing: -.065em; transform-origin: center top; }
.manifesto-panel--dark { background: var(--black); color: var(--accent); }
.manifesto-panel--dark .manifesto-plate { background: var(--black); }
.manifesto-panel--dark .manifesto-word { font-family: var(--font-serif); font-style: italic; font-size: 28vw; }
.manifesto-panel--final { height: 280svh; background: var(--black); color: var(--accent); }
.manifesto-panel--final .manifesto-plate { background: var(--black); }
.manifesto-image { width: 100%; height: 100%; object-fit: cover; object-position: center 42%; filter: brightness(.55); }
.manifesto-finale { position: absolute; inset: 0; display: flex; flex-wrap: wrap; align-content: center; justify-content: center; gap: 0 .22em; padding: 6vw; text-align: center; color: #fff; font: normal clamp(42px,7vw,100px)/1.05 var(--font-heading); letter-spacing: -.035em; }
.manifesto-finale em { font-family: var(--font-serif); font-weight: normal; }
.course-manifesto.is-animated .manifesto-finale > * { opacity: 0; }
@media (prefers-reduced-motion: reduce) {
  .manifesto-panel, .manifesto-panel--final { height: auto; }
  .manifesto-stage { position: relative; top: auto; height: 42svh; min-height: 220px; }
  .manifesto-plate { display: flex; align-items: center; }
  .manifesto-panel--final .manifesto-plate { display: none; }
}

.home-manifesto .manifesto-panel--dark,
.home-manifesto .manifesto-panel--dark .manifesto-plate { background: var(--signal); color: var(--signal-ink); }
.home-manifesto .manifesto-finale em { color: var(--signal); }
