/* Keep native line wrapping; each measured line owns a separate reveal band. */
h2.heading-lines-ready .heading-line-text {
  display:block;
  position:relative;
  min-width:0;
  max-width:100%;
  overflow:visible;
  color:transparent;
  animation:none;
  white-space:normal;
}
h2.heading-lines-ready .heading-line-text::after { content:none; animation:none; }
h2.heading-lines-ready .heading-line-band {
  position:absolute;
  display:block;
  overflow:hidden;
  pointer-events:none;
}
.heading-line-band > i { display:block; width:100%; height:100%; background:#201e1e; transform:translateX(-101%); }
h2.heading-lines-visible .heading-line-text { animation:headingLineText .01s linear .36s forwards; }
h2.heading-lines-visible .heading-line-band > i { animation:headingLineWipe .62s cubic-bezier(.87,0,.13,1) both; }
@keyframes headingLineText { to { color:#201e1e; } }
@keyframes headingLineWipe { 0% { transform:translateX(-101%); } 58% { transform:translateX(0); } 100% { transform:translateX(101%); } }
@media(prefers-reduced-motion:reduce) {
  h2.heading-lines-ready .heading-line-text { color:#201e1e; animation:none; }
  h2.heading-lines-ready .heading-line-band { display:none; }
}
