/* One illustration moves from the hero's background to its normal document position. */
.sites-reveal { position:relative; isolation:isolate; overflow:clip; background:linear-gradient(180deg,#101210 0%,#1b2018 66%); }
.sites-reveal .sites-hero { position:relative; z-index:3; min-height:calc(100svh - var(--header-height,100px)); display:flex; flex-direction:column; justify-content:center; }
.sites-reveal .sites-model-section { position:relative; background:transparent; }
.sites-reveal .site-model > figcaption { position:relative; z-index:2; }
.sites-reveal .relationship-scene { z-index:1; pointer-events:none; }
.sites-reveal.is-layered .sites-hero {
 transform:translate3d(0,var(--hero-lift,0px),0);
 opacity:var(--hero-visibility,1);
}
.sites-reveal.is-layered .relationship-scene {
 transform-origin:50% 0;
 transform:translate3d(0,var(--scene-lift,0px),0) scale(var(--scene-scale,1));
 opacity:var(--scene-visibility,1);
 filter:blur(var(--scene-softness,0px));
}
.sites-reveal.is-layered :is(.site-model > figcaption,.relationship-labels,.relationship-capabilities) {
 opacity:var(--model-visibility,1);
 transform:translate3d(0,var(--model-lift,0px),0);
}
.sites-reveal.is-transitioning .relationship-scene { will-change:transform,opacity; }
.sites-reveal.is-layered .sites-hero:focus-within { opacity:1; }
@media(max-width:760px) {
 .sites-reveal .sites-hero { justify-content:flex-start; }
}
@media(prefers-reduced-motion:reduce) {
 .sites-reveal.is-layered :is(.sites-hero,.relationship-scene,.site-model > figcaption,.relationship-labels,.relationship-capabilities) { transform:none; opacity:1; filter:none; }
}
