/* Atelier grain, scoped to dark backgrounds. Keep text and controls above it. */
.section-dark,
.capability-band,
.slide-signature {
  position: relative;
  isolation: isolate;
}
.section-dark::before,
.capability-band::before,
.slide-signature::before,
.journey-art::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  pointer-events: none;
  background-image: url('assets/atelier-grain.svg');
  background-size: 180px 180px;
  background-repeat: repeat;
  opacity: .06;
}
.journey-art::before {
  opacity: 0;
  transition: opacity 1s ease;
}
.journey-art[data-journey-stage="3"]::before { opacity: .06; }
