.finale_wrap {
  --paper: #ece6da; --ink: #1c1915; --ink2: rgba(28, 25, 21, 0.66); --ink3: rgba(28, 25, 21, 0.42); --rule: rgba(28, 25, 21, 0.16); --accent: #b0472b;
  --m: clamp(16px, 2.2vw, 36px); --top: clamp(78px, 11vh, 112px);
  --sans: 'EL Sans', 'Archivo', system-ui, sans-serif; --serif: 'EL Serif', 'Instrument Serif', Georgia, serif; --mono: 'EL Mono', 'JetBrains Mono', ui-monospace, monospace;
  position: relative; z-index: 1; color: var(--ink); font-family: var(--sans); -webkit-font-smoothing: antialiased;
}
.finale_wrap * { box-sizing: border-box; }
.finale_wrap p, .finale_wrap h2 { margin: 0; font: inherit; }
.finale_wrap .finale_contain { position: relative; }
.finale_wrap .finale_part { position: relative; height: 420vh; pointer-events: none; }
.finale_wrap .finale_pin { position: sticky; top: 0; height: 100vh; height: 100svh; overflow: hidden; }
.finale_wrap .finale_pin > * { pointer-events: auto; }
.finale_wrap .finale_line { position: absolute; left: var(--m); top: var(--top); font: 400 italic clamp(26px, 2.6vw, 44px)/1.1 var(--serif); max-width: 14em; opacity: 0; }

@media (prefers-reduced-motion: reduce) {
  .finale_wrap *, .finale_wrap *::before, .finale_wrap *::after { animation: none !important; transition-duration: 0.01ms !important; }
}
