.project-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;columns:auto;align-items:start}.project-photos a,.project-photos a:first-child{margin:0;overflow:hidden}.project-photos img,.project-photos a:first-child img{display:block;width:100%;height:100%;max-height:none;object-fit:cover;aspect-ratio:1}.project-photos a:first-child{grid-column:1/-1;margin-bottom:12px}.project-photos a:first-child img{aspect-ratio:3/2;object-fit:contain}.project-photos a:focus-visible{outline:2px solid #111;outline-offset:4px}.photo-viewer img{object-fit:contain}@media(max-width:760px){.project-photos{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.project-photos a:first-child{margin-bottom:4px}}
.photo-viewer{border:0;background:#292929;color:#fff;width:100vw;height:100dvh;max-width:none;max-height:none;padding:50px 55px;margin:0}.photo-viewer::backdrop{background:#292929}.photo-viewer img{width:100%;height:100%;object-fit:contain}.photo-viewer button{position:absolute;background:transparent;border:0;color:#fff;cursor:pointer;padding:12px;font-size:28px;min-width:44px;min-height:44px}.photo-close{right:12px;top:5px}.photo-prev{left:5px;top:48%}.photo-next{right:5px;top:48%}.photo-count{position:absolute;bottom:10px;left:0;text-align:center;width:100%;font-size:12px}.photo-viewer button:focus-visible{outline:2px solid white;outline-offset:-3px}@media(max-width:600px){.photo-viewer{padding:48px 38px}}