.wall{perspective:1400px;perspective-origin:50% 0;max-width:1100px;margin:0 auto;padding:10px 20px 0;position:relative;overflow-x:clip}.wall-grid{transform-origin:50% 0;transform-style:preserve-3d;flex-direction:column;align-items:center;gap:16px;margin-top:-40px;padding:72px 24px 56px;display:flex;transform:rotateX(38deg);-webkit-mask-image:linear-gradient(90deg,#0000,#000 18% 82%,#0000),linear-gradient(#000 85%,#0000 100%);mask-image:linear-gradient(90deg,#0000,#000 18% 82%,#0000),linear-gradient(#000 85%,#0000 100%);-webkit-mask-composite:source-in;mask-composite:intersect}.wall-row{--wall-gap:16px;align-self:stretch}.wall-track{width:max-content;transform-style:preserve-3d;animation:70s linear infinite wall-scroll;display:flex}.wall-row[data-row="1"] .wall-track{animation-duration:80s;animation-direction:reverse}.wall-row[data-row="2"] .wall-track{animation-duration:90s}.wall-row:hover .wall-track,.wall-row:focus-within .wall-track{animation-play-state:paused}@keyframes wall-scroll{0%{transform:translate(0)}to{transform:translate(-33.3333%)}}.wall-track>ul{gap:var(--wall-gap);padding-right:var(--wall-gap);transform-style:preserve-3d;display:flex}.wall-row[data-row="1"]{margin-left:60px}.wall-tile{aspect-ratio:1/.82;color:#111;width:clamp(64px,9vw,112px);transition:transform .35s var(--spring), box-shadow .35s ease;cursor:default;background:#fff;border-radius:22px;outline:none;place-items:center;display:grid;position:relative;box-shadow:inset 0 1px #ffffffe6,0 0 0 1px #0000000f,0 18px 28px -18px #00000073}.wall-tile[data-dark]{color:#fff;background:linear-gradient(#2b2b30,#111114)}.wall-tile>svg{width:42%;height:42%}.wall-tile:hover,.wall-tile:focus-visible{z-index:2;transform:translateZ(60px)translateY(-6px)scale(1.08);box-shadow:0 0 0 1px #00000014,0 30px 40px -20px #0000008c}.wall-tile:focus-visible{box-shadow:0 0 0 2px var(--button), 0 30px 40px -20px #0000008c}.wall-name{color:#fff;font:500 12px / 1.2 var(--sans);white-space:nowrap;opacity:0;pointer-events:none;background:#1d1d1f;border-radius:6px;padding:4px 8px;transition:opacity .2s,transform .2s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,4px)}.wall-tile:hover .wall-name,.wall-tile:focus-visible .wall-name{opacity:1;transform:translate(-50%)}@media (max-width:700px){.wall-grid{gap:10px;transform:rotateX(28deg)}.wall-row{--wall-gap:10px}.wall-row[data-row="1"]{margin-left:30px}.wall-tile{border-radius:14px}}@media (prefers-reduced-motion:reduce){.wall-track{animation:none}.wall-tile,.wall-name{transition:none}}
