.masonry-gallery{--masonry-gap: 14px;--viewer-control-size: 44px;width:100%;color:var(--page-fg)}.masonry-gallery__inner{width:min(var(--container-width),100%);margin:0 auto}.masonry-gallery__header{display:grid;max-width:760px;gap:var(--spacing-3xs);margin-bottom:var(--spacing-md)}.masonry-gallery__title{color:var(--page-fg);font-size:calc(var(--fs-48) * 1.5);font-weight:300;line-height:calc(var(--lh-56) * 1.6);letter-spacing:1.5px}.masonry-gallery__subtitle{color:var(--muted);font-size:var(--fs-18);line-height:var(--lh-28)}.masonry-gallery__grid{column-count:4;column-gap:var(--masonry-gap)}.masonry-gallery__item-wrap{display:block;break-inside:avoid;margin:0 0 var(--masonry-gap)}.masonry-gallery__item{position:relative;display:block;width:100%;padding:0;overflow:hidden;border:0;border-radius:var(--radius-sm);background:var(--panel);color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}.masonry-gallery__item img{display:block;width:100%;height:auto;border-radius:inherit;transition:opacity var(--transition-base),transform .42s ease;transform-origin:center}.masonry-gallery__item:focus-visible{outline:2px solid var(--focus);outline-offset:5px}.masonry-gallery__item:hover img,.masonry-gallery__item:focus-visible img{transform:scale(1.035)}.masonry-gallery__image-overlay{position:absolute;inset:0;display:block;opacity:0;pointer-events:none;background:linear-gradient(0deg,#000000b8,#00000038 42%,#0000 72%),#0000001a;transition:opacity var(--transition-base)}.masonry-gallery__item:hover .masonry-gallery__image-overlay,.masonry-gallery__item:focus-visible .masonry-gallery__image-overlay{opacity:1}.masonry-gallery__corner{position:absolute;width:28px;height:28px;border-color:#f6f4efeb;border-style:solid;border-width:0}.masonry-gallery__corner--top-left{top:12px;left:12px;border-top-width:2px;border-left-width:2px}.masonry-gallery__corner--top-right{top:12px;right:12px;border-top-width:2px;border-right-width:2px}.masonry-gallery__corner--bottom-left{bottom:12px;left:12px;border-bottom-width:2px;border-left-width:2px}.masonry-gallery__corner--bottom-right{right:12px;bottom:12px;border-right-width:2px;border-bottom-width:2px}.masonry-gallery__caption{position:absolute;right:var(--spacing-xs);bottom:calc(var(--spacing-xs) * 1.2);left:calc(var(--spacing-xs) * 1.6);display:grid;gap:2px;color:var(--page-fg);opacity:.8;text-align:left;letter-spacing:.5px;text-shadow:0 2px 16px rgba(0,0,0,.72)}.masonry-gallery__caption-title{font-size:var(--fs-16);font-weight:400;line-height:var(--lh-24)}.masonry-gallery__caption-subtitle{color:#f6f4efc7;font-size:var(--fs-12);font-weight:500;line-height:var(--lh-16)}.masonry-gallery__actions{display:flex;justify-content:center;margin-top:var(--spacing-lg)}.masonry-gallery__button{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-3xs);min-height:64px;padding:0 var(--spacing-lg);border:1px solid var(--hairline);border-radius:var(--radius-pill);background:#f6f4ef14;color:var(--page-fg);font-size:var(--fs-24);font-weight:500;line-height:var(--lh-28);letter-spacing:.8px;transition:border-color var(--transition-base),background var(--transition-base),transform var(--transition-base)}.masonry-gallery__button:hover,.masonry-gallery__button:focus-visible{border-color:#f6f4ef94;background:#f6f4ef24;transform:translateY(-2px)}.masonry-gallery__button:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.masonry-gallery__button-icon{font-size:var(--fs-24);line-height:1}.masonry-gallery__empty{padding:var(--spacing-sm);border:1px solid var(--hairline);border-radius:var(--radius-sm);color:var(--muted)}.masonry-gallery__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.masonry-viewer{position:fixed;inset:0;z-index:5000;display:flex;width:100%;min-height:100dvh;color:var(--page-fg);background:#000000e0}.masonry-viewer__backdrop{position:absolute;inset:0;background:#00000075;backdrop-filter:blur(14px)}.masonry-viewer__thumbnails{position:relative;z-index:2;display:grid;align-content:start;width:min(220px,24vw);min-width:144px;max-height:100dvh;gap:var(--spacing-2xs);padding:var(--spacing-sm) var(--spacing-2xs);overflow-y:auto;border-right:1px solid rgba(246,244,239,.14);background:#00000061}.masonry-viewer__thumbnail{display:block;width:100%;padding:0;border:1px solid transparent;border-radius:0;background:transparent;cursor:pointer;opacity:.66;transition:border-color var(--transition-base),opacity var(--transition-base)}.masonry-viewer__thumbnail img{display:block;width:100%;height:auto;border-radius:0}.masonry-viewer__thumbnail:hover,.masonry-viewer__thumbnail:focus-visible,.masonry-viewer__thumbnail.is-active{border-color:#f6f4efb8;opacity:1}.masonry-viewer__thumbnail:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.masonry-viewer__stage{position:relative;z-index:1;display:grid;flex:1;min-width:0;min-height:100dvh;place-items:center;padding:76px 92px 64px}.masonry-viewer__toolbar{position:absolute;top:var(--spacing-xs);right:var(--spacing-xs);z-index:3;display:flex;gap:var(--spacing-3xs)}.masonry-viewer__icon-button,.masonry-viewer__nav{display:grid;width:var(--viewer-control-size);height:var(--viewer-control-size);padding:0;place-items:center;border:1px solid rgba(246,244,239,.22);border-radius:var(--radius-circle);background:#00000061;color:var(--page-fg);cursor:pointer;backdrop-filter:blur(12px);transition:border-color var(--transition-base),background var(--transition-base),transform var(--transition-base)}.masonry-viewer__icon-button:hover,.masonry-viewer__icon-button:focus-visible,.masonry-viewer__icon-button.is-active,.masonry-viewer__nav:hover,.masonry-viewer__nav:focus-visible{border-color:#f6f4efad;background:#f6f4ef24;transform:translateY(-1px)}.masonry-viewer__icon-button:focus-visible,.masonry-viewer__nav:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.masonry-viewer__nav{position:absolute;top:50%;z-index:3;transform:translateY(-50%)}.masonry-viewer__nav:hover,.masonry-viewer__nav:focus-visible{transform:translateY(calc(-50% - 1px))}.masonry-viewer__nav--previous{left:var(--spacing-xs)}.masonry-viewer__nav--next{right:var(--spacing-xs)}.masonry-viewer__figure{display:grid;max-width:100%;max-height:100%;gap:var(--spacing-2xs);place-items:center;margin:0;touch-action:none;cursor:grab;user-select:none}.masonry-viewer__figure:active{cursor:grabbing}.masonry-viewer__figure img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 156px);border-radius:0;object-fit:contain;box-shadow:0 28px 80px #0000006b;transition:opacity var(--transition-base),transform var(--transition-base);will-change:transform}.masonry-viewer__caption{display:grid;gap:2px;max-width:min(680px,100%);color:var(--page-fg);text-align:center}.masonry-viewer__caption span{font-size:var(--fs-16);font-weight:700;line-height:var(--lh-24)}.masonry-viewer__caption small{color:#f6f4efad;font-size:var(--fs-12);line-height:var(--lh-16)}@media(max-width:1024px){.masonry-gallery__grid{column-count:3}}@media(max-width:768px){.masonry-gallery{--masonry-gap: 12px}.masonry-gallery__grid{column-count:2}.masonry-viewer__thumbnails{width:96px;min-width:88px;max-height:100dvh;overflow-y:auto}.masonry-viewer__stage{min-height:0;padding:72px 58px 46px}.masonry-viewer__figure img{max-height:calc(100dvh - 180px)}}@media(max-width:576px){.masonry-gallery__grid{column-count:1}.masonry-gallery__title{font-size:var(--fs-40);line-height:var(--lh-48)}.masonry-gallery__button{width:100%}.masonry-viewer{--viewer-control-size: 40px}.masonry-viewer__stage{padding:68px 14px 88px}.masonry-viewer__nav{top:auto;bottom:var(--spacing-xs);transform:none}.masonry-viewer__nav:hover,.masonry-viewer__nav:focus-visible{transform:translateY(-1px)}.masonry-viewer__nav--previous{left:calc(50% - 52px)}.masonry-viewer__nav--next{right:calc(50% - 52px)}.masonry-viewer__figure img{max-height:calc(100dvh - 190px)}}@media(prefers-reduced-motion:reduce){.masonry-gallery__item img,.masonry-gallery__image-overlay,.masonry-gallery__button,.masonry-viewer__icon-button,.masonry-viewer__nav,.masonry-viewer__figure img,.masonry-viewer__thumbnail{transition:none}.masonry-gallery__item:hover img,.masonry-gallery__item:focus-visible img{transform:none}}
