.photo-page{max-width:1600px;margin:0 auto;padding:0 5% 65px}.photo-filters{display:flex;gap:26px;margin:0 0 35px;font:10px/1.6 "Courier New",monospace}.photo-filters button{font:inherit;letter-spacing:.025em;padding:5px 0;border:0;border-bottom:1px solid transparent;background:none;color:#7b8075;cursor:pointer}.photo-filters button[aria-pressed=true]{color:#deded8;border-bottom-color:#77796f}.photo-filters button:hover{color:#deded8}.photo-filters button:focus-visible,.photo-controls button:focus-visible,.photo-bar button:focus-visible{outline:1px solid #deded8;outline-offset:5px}.photo-grid{columns:3;column-gap:7px}.photo-tile{display:block;break-inside:avoid;margin:0 0 7px;cursor:zoom-in;overflow:hidden}.photo-tile[hidden]{display:none}.photo-tile img{width:100%;height:auto;display:block;transition:filter .25s ease}.photo-tile:hover img{filter:brightness(.9)}.photo-status{font:9px/1.6 "Courier New",monospace;letter-spacing:.025em;color:#777e70;margin:28px 0 0}.photo-dialog{width:100vw;height:100svh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#080808f5;color:#deded8;overflow:hidden;box-sizing:border-box}.photo-dialog::backdrop{background:#080808}.photo-dialog[open]{display:flex;flex-direction:column}.photo-bar{display:flex;justify-content:space-between;align-items:center;padding:20px 4%;font:10px/1.6 "Courier New",monospace;color:#aaa}.photo-bar button,.photo-controls button{font:inherit;color:#deded8;background:none;border:0;cursor:pointer;padding:8px}.photo-dialog figure{display:flex;flex:1;min-height:0;align-items:center;justify-content:center;margin:0;padding:0 4%}.photo-dialog figure img{width:100%;height:100%;max-height:calc(100svh - 150px);object-fit:contain}.photo-controls{display:flex;justify-content:center;gap:35px;padding:8px 0 20px}.photo-controls button{min-width:44px;font-size:23px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@media(max-width:600px){.photo-page{padding:0 6% 40px}.photo-filters{gap:23px;font-size:9px;margin-bottom:25px}.photo-grid{column-gap:5px}.photo-tile{margin-bottom:5px}.photo-bar{padding:14px 5%;font-size:9px}.photo-dialog figure{padding:0 3%}.photo-controls{padding-bottom:20px}}@media(prefers-reduced-motion:reduce){.photo-tile img{transition:none}}

@media(max-width:900px){.photo-grid{columns:2}}

@media(max-width:600px){.photo-grid{columns:1}}
