.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:28px 0}.photo-card{margin:0;background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}.photo-link{display:block;text-decoration:none}.photo-link:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.photo-card img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#edf0ed}.photo-card figcaption{padding:12px 16px;font-size:13px;color:var(--muted)}.photo-link:hover img{filter:brightness(1.04)}.photo-viewer{border:0;padding:20px;border-radius:12px;background:#17242c;color:#fff;max-width:min(1200px,96vw);max-height:94vh;width:96vw}.photo-viewer::backdrop{background:#07121be6}.viewer-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:12px}.viewer-top p{margin:0;line-height:1.5}.viewer-top button,.viewer-controls button{background:#273b48;color:#fff;border-color:#4e626c}.viewer-image{display:block;max-width:100%;max-height:68vh;width:auto;height:auto;margin:auto;object-fit:contain}.viewer-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:16px}.viewer-controls span{min-width:60px;text-align:center}.viewer-status{font-size:12px;color:#d1e0e4;margin:10px 0 0;text-align:center}.gallery-lead{max-width:700px}@media(max-width:700px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.photo-card figcaption{padding:10px;font-size:12px}.photo-viewer{padding:14px}.viewer-controls{gap:12px}}@media(max-width:420px){.photo-grid{grid-template-columns:1fr}}@media print{.photo-grid{grid-template-columns:repeat(2,1fr)}.photo-viewer{display:none}}
