.gallery{gap:clamp(.4rem,.8vw,.85rem);display:grid}.tile a{aspect-ratio:3/2;background:var(--coal);display:block;position:relative;overflow:hidden}.tile img{object-fit:cover;width:100%;height:100%;transition:transform 1.1s var(--ease-out)}.tile a:hover img,.tile a:focus-visible img{transform:scale(1.06)}.tile a:after{content:"";--l:1.1rem;background:linear-gradient(var(--neon), var(--neon)) 0 0 / var(--l) 2px, linear-gradient(var(--neon), var(--neon)) 0 0 / 2px var(--l), linear-gradient(var(--neon), var(--neon)) 100% 0 / var(--l) 2px, linear-gradient(var(--neon), var(--neon)) 100% 0 / 2px var(--l), linear-gradient(var(--neon), var(--neon)) 0 100% / var(--l) 2px, linear-gradient(var(--neon), var(--neon)) 0 100% / 2px var(--l), linear-gradient(var(--neon), var(--neon)) 100% 100% / var(--l) 2px, linear-gradient(var(--neon), var(--neon)) 100% 100% / 2px var(--l);opacity:0;transition:opacity var(--normal), transform var(--normal) var(--ease-out);pointer-events:none;background-repeat:no-repeat;position:absolute;inset:.9rem;transform:scale(1.08)}.tile a:hover:after,.tile a:focus-visible:after{opacity:1;transform:none}.tile-caption{color:var(--white);opacity:0;transition:opacity var(--normal), transform var(--normal) var(--ease-out);background:linear-gradient(#0000,#000c);justify-content:space-between;gap:1rem;padding:2.5rem 1.6rem 1.5rem;display:flex;position:absolute;bottom:0;left:0;right:0;transform:translateY(.6rem)}.tile a:hover .tile-caption,.tile a:focus-visible .tile-caption{opacity:1;transform:none}@media (min-width:40rem) and (max-width:63.99rem){.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.tile:last-child:nth-child(odd){grid-column:span 2}}@media (min-width:64rem){.gallery{grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-flow:dense}.tile{grid-column:span 2}.tile--big-left{grid-area:span 2/1/auto/span 4}.tile--big-right{grid-area:span 2/3/auto/span 4}.tile--side-right{grid-column:5/span 2}.tile--side-left{grid-column:1/span 2}.tile--half{grid-column:span 3}.tile--full{grid-column:1/-1}.tile--big-left a,.tile--big-right a{aspect-ratio:auto;height:100%}.tile--full a{aspect-ratio:21/9}}.lightbox{width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--white);opacity:0;transition:opacity var(--normal), display var(--normal) allow-discrete, overlay var(--normal) allow-discrete;background:#050505f7;border:0;margin:0;padding:clamp(.75rem,2vw,2rem)}.lightbox[open]{opacity:1;grid-template-rows:minmax(0,1fr) auto;gap:1rem;display:grid}@starting-style{.lightbox[open]{opacity:0}}.lightbox::backdrop{background:var(--black)}.lightbox-figure{pointer-events:none;grid-template-rows:minmax(0,1fr) auto;gap:.9rem;min-height:0;display:grid}.lightbox-image{object-fit:contain;width:100%;height:100%;min-height:0;animation:lightbox-in .7s var(--ease-out) both}@keyframes lightbox-in{0%{opacity:0;transform:scale(.97)}}.lightbox-caption{color:#fffc;flex-wrap:wrap;justify-content:center;gap:.3rem 1.5rem;display:flex}.lightbox-caption b,.lightbox-exif{color:var(--neon);font-weight:500}.lightbox-controls{justify-content:center;align-items:center;gap:.6rem;display:flex}.lightbox-controls button{border:1.5px solid var(--line);min-width:3rem;min-height:3rem;transition:border-color var(--fast), color var(--fast), background-color var(--fast);background:0 0;padding:0 1rem;font-size:1.1rem}.lightbox-controls button.mono{font-size:var(--text-xs)}.lightbox-controls button:hover,.lightbox-controls button:focus-visible{border-color:var(--neon);background:var(--neon);color:var(--black)}
