/* gallery.css — Gallery page only. base.css handles nav, footer, page-hero. */

section{padding:56px 24px 90px;}
.wrap{max-width:1080px; margin:0 auto;}

.grid{display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:14px; margin-top:36px;}
.tile{position:relative; border-radius:6px; overflow:hidden; cursor:pointer; background:var(--paper); border:1px solid var(--line);}
.tile img{height:200px; width:100%; object-fit:cover; transition:transform 0.4s ease;}
.tile:hover img{transform:scale(1.06);}
.tile .dl{position:absolute; bottom:8px; right:8px; background:rgba(18,33,26,0.8); color:#fff; border-radius:16px; padding:6px 12px; font-size:11px; font-weight:700; text-decoration:none;}
.tile .dl:hover{background:var(--rust);}
.empty{text-align:center; color:#8A7B65; padding:60px 20px;}

.lightbox{display:none; position:fixed; inset:0; background:rgba(18,33,26,0.92); z-index:100; align-items:center; justify-content:center; padding:24px;}
.lightbox.open{display:flex;}
.lightbox img{max-width:90vw; max-height:78vh; border-radius:6px;}
.lightbox-bar{position:absolute; top:20px; right:20px; display:flex; gap:10px;}
.lightbox-bar a, .lightbox-bar button{background:rgba(255,255,255,0.12); color:#fff; border:none; border-radius:20px; padding:9px 16px; font-size:13px; font-weight:600; cursor:pointer; text-decoration:none;}
.lightbox-bar a:hover, .lightbox-bar button:hover{background:var(--rust);}
.lightbox-nav{position:absolute; top:50%; transform:translateY(-50%); background:rgba(255,255,255,0.12); color:#fff; border:none; width:44px; height:44px; border-radius:50%; font-size:20px; cursor:pointer;}
.lightbox-nav.prev{left:20px;}
.lightbox-nav.next{right:20px;}
