.wall{--wall-brass:color-mix(in oklab,var(--color-cream) 72%,var(--color-ember));--wall-rule:color-mix(in oklab,var(--wall-brass) 16%,transparent);position:relative;display:flex;flex:1 1 auto;min-height:0;margin:-2rem -1.25rem}@media (width >= 64rem){.wall{margin:-2.6vh -7vh -2.6vh -3vh}}.wall-stage{position:relative;flex:1 1 auto;min-height:70svh;overflow:hidden;perspective:1100px;perspective-origin:50% 50%;background:radial-gradient(80% 70% at 50% 50%,color-mix(in oklab,var(--color-forest) 70%,var(--color-forest-deep)),var(--color-forest-deep));cursor:grab;touch-action:none;user-select:none;outline:none}@media (width >= 64rem){.wall-stage{min-height:0}}.wall-scroll-cue{display:none}@media (width < 64rem){.wall{flex-direction:column}.wall-stage{min-height:62svh}.wall-scroll-cue{display:flex;align-items:center;justify-content:center;gap:.45rem;min-height:3.25rem;margin:0;border-top:1px solid var(--wall-rule);background:var(--color-forest-deep);font-family:var(--font-mono);font-size:.62rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--color-cream-muted);touch-action:pan-y;user-select:none}}.wall-stage[data-grabbing],.wall-stage[data-grabbing] .wall-tile__inner{cursor:grabbing}.wall-stage:focus-visible{box-shadow:inset 0 0 0 2px var(--color-ember)}.wall-proxy{position:absolute;width:0;height:0;visibility:hidden}.wall-plane{position:absolute;inset:0;transform-style:preserve-3d;pointer-events:none}.wall-tile{position:absolute;top:0;left:0;width:var(--tile-w,300px);height:var(--tile-h,260px);border-right:1px solid var(--wall-rule);border-bottom:1px solid var(--wall-rule);backface-visibility:hidden;will-change:transform;pointer-events:auto}.wall-tile__inner{position:absolute;inset:0;display:block;width:100%;cursor:pointer;transition:background-color .3s ease}.wall-tile__inner:focus-visible{outline:none}.wall-tile__inner:before{content:"";position:absolute;inset:0;background:radial-gradient(85% 85% at var(--light-x,50%) var(--light-y,50%),color-mix(in oklab,var(--color-ember) 14%,transparent),transparent 70%);opacity:0;transition:opacity .3s ease;pointer-events:none}.wall-tile__inner:focus-visible:before,.wall-tile__inner:hover:before{opacity:1}.wall-tile__shot{position:absolute;inset:20% 14% 20%;display:grid;place-items:center}.wall-tile__shot img{width:100%;height:100%;object-fit:contain;transition:transform .5s cubic-bezier(.22,1,.36,1)}.wall-tile__inner:focus-visible .wall-tile__shot img,.wall-tile__inner:hover .wall-tile__shot img{transform:scale(1.06)}.wall-tile__view{position:absolute;left:0;right:0;bottom:-.4rem;width:max-content;margin-inline:auto;display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .85rem;border-radius:999px;background:var(--color-ember);color:var(--color-forest-deep);font-family:var(--font-mono);font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;box-shadow:0 10px 24px -10px rgb(0 0 0/.8);opacity:0;transition:opacity .22s ease;pointer-events:none}.wall-tile__inner:focus-visible .wall-tile__view{opacity:1}.wall-stage[data-grabbing] .wall-tile__view{opacity:0!important}.wall-tile__none{font-size:clamp(2rem,6vh,3.5rem);color:color-mix(in oklab,var(--color-cream) 20%,transparent)}.wall-tile__label{position:absolute;display:flex;flex-wrap:wrap;gap:.3rem;max-width:62%;font-family:var(--font-mono);font-size:clamp(.5rem,1vh,.62rem);font-weight:600;letter-spacing:.12em;line-height:1.3;text-transform:uppercase;color:color-mix(in oklab,var(--color-cream-muted) 75%,transparent);transition:color .3s ease}.wall-tile__label--tr{top:.75rem;right:.9rem;justify-content:flex-end}.wall-tile__label--bl{bottom:.9rem;left:.9rem}.wall-tile__label--br{right:.9rem;bottom:.9rem;justify-content:flex-end;text-align:right;color:var(--color-cream)}.wall-tile__inner:focus-visible .wall-tile__label--br,.wall-tile__inner:hover .wall-tile__label--br{color:var(--color-ember)}.wall-chip{padding:.15rem .45rem;border:1px solid color-mix(in oklab,var(--wall-brass) 25%,transparent);border-radius:999px}.wall-vignette{position:absolute;inset:0;background:radial-gradient(85% 80% at 50% 50%,transparent 55%,color-mix(in oklab,var(--color-forest-deep) 85%,black));pointer-events:none}.wall-plate{position:absolute;left:clamp(1rem,2.4vw,2rem);bottom:clamp(1rem,2.6vh,2rem);z-index:2;display:flex;align-items:center;gap:.9rem;max-width:min(36rem,calc(100% - 2rem));padding:.55rem .55rem .55rem 1.4rem;border:1px solid color-mix(in oklab,var(--wall-brass) 30%,transparent);border-radius:999px;background:color-mix(in oklab,var(--color-forest-deep) 78%,transparent);box-shadow:0 18px 40px -20px rgb(0 0 0/.9);backdrop-filter:blur(12px)}.wall-plate__title{min-width:0;overflow:hidden;font-family:var(--font-display);font-size:clamp(1.15rem,3.4vh,1.9rem);font-weight:800;letter-spacing:-.02em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;color:var(--color-cream)}.wall-plate__go{display:grid;flex:none;place-items:center;width:3rem;height:3rem;border-radius:50%;background:var(--color-ember);color:var(--color-forest-deep);cursor:pointer;transition:background-color .2s ease,transform .2s ease}.wall-plate__go:hover{background:var(--color-ember-soft)}.wall-plate__go:active{transform:scale(.95)}.wall-plate__go:focus-visible{outline:2px solid var(--color-cream);outline-offset:3px}.wall-hint{position:absolute;left:50%;bottom:clamp(1rem,2.6vh,2rem);z-index:2;display:flex;align-items:center;gap:.5rem;translate:-50% 0;padding:.6rem 1rem;border:1px solid color-mix(in oklab,var(--wall-brass) 25%,transparent);border-radius:999px;background:color-mix(in oklab,var(--color-forest-deep) 70%,transparent);font-family:var(--font-mono);font-size:.68rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-cream-muted);pointer-events:none;transition:opacity .5s ease}.wall-hint[data-gone]{opacity:0}@media (width < 64rem){.wall-hint{display:none}}@media (prefers-reduced-motion:reduce){.wall-hint,.wall-plate__go,.wall-tile__inner,.wall-tile__label,.wall-tile__shot img,.wall-tile__view{transition:none}}@media (width < 64rem){.wall-plate{bottom:calc(3.25rem + 1rem);gap:.6rem;padding-left:1.1rem}.wall-plate__title{font-size:clamp(1rem,4.6vw,1.3rem)}.wall-plate__go{width:2.75rem;height:2.75rem}}