/* 3D Website Factory runtime styles. MIT licence. Pairs with factory.js. */
.f-3d { position: relative; overflow: hidden; }
.f-3d iframe { position: absolute; inset: -100px; width: calc(100% + 200px); height: calc(100% + 200px); border: 0; /* oversized: hides the viewer's corner buttons */ opacity: 0; transition: opacity 1.2s ease; }
.f-3d.f-on iframe { opacity: 1; }
.f-shield { position: absolute; inset: 0; } /* sits over the scene so the wheel scrolls the page */

[data-reveal] { opacity: 0; transform: translateY(18px); filter: blur(4px); transition: opacity .8s cubic-bezier(.16,1,.3,1), transform .8s cubic-bezier(.16,1,.3,1), filter .8s; }
[data-reveal].f-in { opacity: 1; transform: none; filter: none; }

.f-still [data-reveal], .f-still .f-3d iframe { opacity: 1; transform: none; filter: none; transition: none; }
@media (scripting: none) { [data-reveal] { opacity: 1; transform: none; filter: none; } }
