.gallery-intro[data-v-f63d8b5e]{text-align:center;max-width:900px;margin:40px auto 48px}.gallery-intro h1[data-v-f63d8b5e]{margin-bottom:20px;font-size:clamp(32px,5vw,56px);line-height:1.2}.gallery-intro p[data-v-f63d8b5e]{color:var(--text-secondary);font-size:16px;line-height:1.7}a.masonry-item[data-v-f63d8b5e]{display:block}a.masonry-item[data-v-f63d8b5e]:focus-visible{outline-offset:4px;outline:2px solid #fff}.gallery-container[data-v-f63d8b5e]{background:var(--bg-page);box-sizing:border-box;min-height:100vh;color:var(--text-primary);padding:24px}.masonry-grid[data-v-f63d8b5e]{align-items:flex-start;gap:18px;margin-top:10vh;display:flex}.masonry-column[data-v-f63d8b5e]{flex-direction:column;flex:1;gap:18px;display:flex}.masonry-item[data-v-f63d8b5e]{break-inside:avoid;cursor:pointer;background:var(--bg-surface-1);border-radius:16px;margin-bottom:18px;transition:transform .25s,box-shadow .25s;overflow:hidden;transform:translateZ(0);box-shadow:0 6px 24px #0009}.masonry-item[data-v-f63d8b5e]:hover{transform:translateY(-6px)scale(1.02);box-shadow:0 12px 40px #ffffff14}.image-wrapper[data-v-f63d8b5e]{border-radius:16px;width:100%;position:relative;overflow:hidden}.image-wrapper img[data-v-f63d8b5e]{filter:contrast(1.05)saturate(1.05);border-radius:16px;width:100%;height:auto;transition:transform .35s,filter .35s;display:block}.masonry-item:hover img[data-v-f63d8b5e]{filter:contrast(1.1)saturate(1.2);transform:scale(1.05)}.lightbox[data-v-f63d8b5e]{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;background:#000000eb;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lightbox-content[data-v-f63d8b5e]{border-radius:18px;max-width:92vw;max-height:92vh;overflow:hidden;box-shadow:0 20px 80px #ffffff14}.lightbox-image[data-v-f63d8b5e]{border-radius:18px;max-width:100%;max-height:92vh;display:block}.masonry-item[data-v-f63d8b5e]{opacity:.95}.loaded[data-v-f63d8b5e]{animation:.4s forwards fadeInImg-f63d8b5e}@keyframes fadeInImg-f63d8b5e{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}
