/* Staggered rising image wall, then a continuous push into the lead project. */
.home-v3.is-v3-loading .home-interface { opacity: 0; visibility: hidden; pointer-events: none; }
.v3-loader { position: fixed; z-index: 110; inset: 0; overflow: hidden; contain: strict; background: #111; color: #f4f4f2; }
.v3-loader[hidden] { display: none; }
.v3-loader-percent { position: absolute; z-index: 20; left: 50%; top: 50%; transform: translate(-50%, -50%); font-size: 12px; font-variant-numeric: tabular-nums; }
.v3-loader-gallery { position: absolute; inset: 0; }
.v3-loader-tile { position: absolute; left: 0; top: 0; width: 23.5vw; height: 23.5vh; overflow: hidden; opacity: 0; transform-origin: 0 0; will-change: transform; backface-visibility: hidden; }
.v3-loader-tile img { display: block; width: 100%; height: 100%; object-fit: cover; }
.v3-loader-tile--lead { z-index: 2; }
.v3-loader-skip { position: absolute; z-index: 30; bottom: max(18px, env(safe-area-inset-bottom)); right: max(18px, env(safe-area-inset-right)); min-height: 44px; padding: 10px 16px; border: 0; background: #111; color: #fff; font-size: 11px; opacity: 0; cursor: pointer; }
.v3-loader-skip:hover, .v3-loader-skip:focus-visible { opacity: 1; }
@media (prefers-reduced-motion: reduce) {
  .v3-loader { display: none !important; }
  .home-v3.is-v3-loading .home-interface { opacity: 1; visibility: visible; pointer-events: auto; }
}
