.archive-more{display:flex;justify-content:center;margin:28px 0 0}
.archive-more a{color:var(--cream,#241f18);padding:12px 4px;text-decoration:none;border-bottom:1px solid var(--gold,#b8893b)}
.archive-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px;margin:32px 0}
.archive-entry{min-width:0;color:inherit;text-decoration:none;display:block}
.archive-entry img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:4px;display:block}
.archive-entry h2{font-size:21px;line-height:1.65;margin:10px 0;overflow-wrap:anywhere}
.archive-entry p{font-size:14px;line-height:1.8;margin:8px 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.archive-entry small{display:block;margin-top:12px;color:var(--gold,#b8893b)}
.archive-entry:hover h2{text-decoration:underline;text-underline-offset:5px}
.archive-pagination{display:flex;justify-content:center;align-items:center;gap:24px;margin:40px 0}
.archive-pagination a{color:inherit;padding:12px 6px}
.photo-open{display:block;padding:0;border:0;background:none;width:100%;cursor:zoom-in}
.photo-open:focus-visible{outline:3px solid #b8893b;outline-offset:4px}
.photo-viewer{border:0;padding:0;width:100vw;max-width:none;height:100dvh;max-height:none;background:#151515;color:white;overflow:hidden}
.photo-viewer::backdrop{background:rgba(0,0,0,.9)}
.photo-toolbar{height:64px;display:flex;align-items:center;justify-content:center;gap:16px;padding:8px}
.photo-toolbar button{width:44px;height:44px;border:1px solid #777;background:#252525;color:#fff;border-radius:4px;font-size:24px;cursor:pointer}
.photo-toolbar button:disabled{opacity:.3;cursor:default}
.photo-count{min-width:60px;text-align:center;font:14px sans-serif}
.photo-stage{height:calc(100% - 64px);overflow:auto;display:grid;align-items:center;justify-items:center;overscroll-behavior:contain}
.photo-stage img{display:block;max-width:100vw;max-height:calc(100dvh - 64px);width:auto;height:auto;object-fit:contain;cursor:zoom-in}
.photo-stage.zoomed{display:block}
.photo-stage.zoomed img{max-width:none;max-height:none;width:200%;height:auto;cursor:zoom-out}
@media(max-width:600px){.archive-grid{grid-template-columns:1fr;gap:28px}.archive-entry h2{font-size:20px}.pg .gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.pg .gallery img{height:140px}.photo-toolbar{gap:8px}.pg h1{font-size:28px;overflow-wrap:anywhere}}
