.photo-gallery{max-width:1200px;margin:auto;padding:56px 20px 72px}.photo-intro{max-width:760px;margin-bottom:40px}.photo-eyebrow{letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;font-weight:700}.photo-intro h1{letter-spacing:-.04em;margin:16px 0 24px;font-size:clamp(2.35rem,6vw,4.5rem);line-height:1.08}.photo-intro p{line-height:1.65}.photo-note{margin-top:20px;font-size:.9rem;line-height:1.65}.photo-intro nav{flex-wrap:wrap;gap:12px 24px;margin-top:20px;display:flex}.photo-intro nav a{text-underline-offset:4px;align-items:center;min-height:44px;text-decoration:underline;display:inline-flex}.photo-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:24px;display:grid}.photo-grid figure{background:#f5f3ed;border:1px solid #c9c9bd;border-radius:16px;min-width:0;margin:0;overflow:hidden}.photo-grid figure a{display:block}.photo-grid figure a:focus-visible{outline-offset:-4px;outline:4px solid #344e41}.photo-grid img{object-fit:contain;width:100%;height:auto;display:block}.photo-grid figcaption{gap:12px;padding:18px;font-weight:600;line-height:1.5;display:flex}.photo-grid figcaption span{padding-top:3px;font-size:.8rem}@media (min-width:640px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
