.photo-gallery-page .intro-bottom p{max-width:600px}
.photo-collection{padding:32px 0 52px}
.photo-grid{columns:3;column-gap:24px}
.photo-tile{break-inside:avoid;margin:0 0 26px;display:inline-block;width:100%;vertical-align:top}
.photo-open{display:block;position:relative;background:var(--soft);overflow:hidden}
.photo-open img{display:block;width:100%;height:auto;transition:filter .2s}
.photo-open:hover img{filter:brightness(1.06)}
.photo-enlarge{position:absolute;right:10px;bottom:10px;background:#252729dc;color:#f1f2ef;display:grid;place-items:center;width:30px;height:30px;font-size:21px;opacity:0;transition:opacity .2s}
.photo-open:is(:hover,:focus-visible) .photo-enlarge{opacity:1}
.photo-tile figcaption{display:flex;justify-content:space-between;gap:15px;font-size:10px;line-height:1.7;color:var(--muted);padding-top:9px}
.photo-tile figcaption a{color:var(--red);white-space:nowrap}
.photo-dialog{width:min(1180px,calc(100% - 40px));max-width:none;max-height:calc(100dvh - 28px);border:1px solid #4a5152;padding:18px 24px 20px;background:#252a2c;color:#f1f3ee;overflow:auto}
.photo-dialog::backdrop{background:#111517ec}
.photo-dialog-top,.photo-dialog-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px}
.photo-counter{font-size:12px;font-variant-numeric:tabular-nums;letter-spacing:.08em;color:#e7aa94}
.photo-close{border:0;background:transparent;padding:8px 0 8px 14px;color:inherit;font-size:12px;min-height:40px}
.photo-viewer{position:relative;display:flex;align-items:center;justify-content:center;margin:14px 0 18px;height:min(70dvh,800px)}
.photo-full{display:block;max-height:100%;max-width:100%;width:auto;height:auto;object-fit:contain}
.photo-previous,.photo-next{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:44px;height:52px;border:1px solid #848d8c;background:#202627df;color:#fff;font-size:25px}
.photo-previous{left:0}.photo-next{right:0}
.photo-dialog-bottom{font-size:12px;align-items:flex-start;flex-wrap:wrap}
.photo-credit{color:#d5dcda}
.photo-dialog-actions,.photo-sources{display:flex;flex-wrap:wrap;gap:12px 22px}
.photo-dialog-actions a{color:#efa78e;text-decoration:underline;text-underline-offset:4px}
.photo-dialog :focus-visible{outline-color:#efa78e}
@media(max-width:1150px){.header-controls{gap:16px}.main-nav{gap:19px}}
@media(max-width:1000px){.photo-grid{columns:2;column-gap:18px}}
@media(max-width:600px){.photo-grid{columns:1}.photo-collection{padding-top:24px}.photo-tile{margin-bottom:22px}.photo-enlarge{opacity:1}.photo-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px);padding:10px 12px 16px}.photo-viewer{height:66dvh;margin-block:10px 15px}.photo-previous,.photo-next{width:40px;height:48px}.photo-dialog-bottom{gap:12px}.photo-dialog-actions{gap:12px}.photo-dialog-actions a{font-size:11px}}

.album-photo-gallery{margin-top:24px}
.album-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.album-photo-grid .photo-open{align-self:start}
.album-photo-grid .photo-enlarge{width:23px;height:23px;font-size:17px;right:5px;bottom:5px}
@media(max-width:600px){.album-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
