/* Keep each reference bitmap quiet until its native image has decoded. */
body.nuweb-site #content img.nuweb-reference-image {
  opacity: 0;
}
body.nuweb-site #content img.nuweb-reference-image[data-reference-image-state="ready"] {
  opacity: 1;
}

/* A loading cover reveals the page background instead of an empty dark tile. */
body.nuweb-site #content .project-wall .project-wall-media {
  background: transparent;
}
/* Only the bitmap fades; physical Wall transforms retain their own timing. */
body.nuweb-site #content .project-wall img.project-wall-cover.nuweb-reference-image {
  transition: opacity 500ms cubic-bezier(.2,.65,.3,1);
}
@media (prefers-reduced-motion: reduce) {
  body.nuweb-site #content .project-wall img.project-wall-cover.nuweb-reference-image {
    transition: none;
  }
}
