	/* Lightbox overlay */
			#lb-overlay {
				display:none;position:fixed;inset:0;z-index:9999;
				background:rgba(7,5,3,0.96);
				align-items:center;justify-content:center;
			}
			#lb-overlay.open { display:flex; }
			#lb-img {
				max-width:90vw;max-height:85vh;
				object-fit:contain;
				border:0.5px solid rgba(201,168,76,0.25);
			}
			#lb-caption {
				position:absolute;bottom:28px;left:0;right:0;
				text-align:center;font-size:12px;letter-spacing:.15em;
				text-transform:uppercase;color:var(--muted);
			}
			#lb-close {
				position:absolute;top:24px;right:28px;
				font-size:28px;line-height:1;cursor:pointer;
				color:var(--gold);background:none;border:none;
			}
			#lb-prev, #lb-next {
				position:absolute;top:50%;transform:translateY(-50%);
				font-size:28px;cursor:pointer;
				color:var(--gold);background:none;border:none;
				padding:0 20px;
			}
			#lb-prev { left:0; }
			#lb-next { right:0; }

			/* Masonry-style grid */
			.gallery-grid {
				columns: 2;
				column-gap: 8px;
			}
			@media(min-width:640px)  { .gallery-grid { columns: 3; } }
			@media(min-width:1024px) { .gallery-grid { columns: 4; } }

			.gallery-item {
				break-inside: avoid;
				margin-bottom: 8px;
				overflow: hidden;
				border: 0.5px solid rgba(201,168,76,0.15);
				cursor: pointer;
				position: relative;
			}
			.gallery-item img {
				width:100%;display:block;
				filter:brightness(0.82) saturate(0.78);
				transition: transform .5s ease, filter .35s ease;
			}
			.gallery-item:hover img {
				transform:scale(1.04);
				filter:brightness(0.95) saturate(0.9);
			}
			.gallery-item .overlay {
				position:absolute;inset:0;
				background:linear-gradient(to top, rgba(13,11,8,0.75) 0%, transparent 55%);
				opacity:0;transition:opacity .3s;
				display:flex;align-items:flex-end;padding:14px;
			}
			.gallery-item:hover .overlay { opacity:1; }
			.gallery-item .overlay span {
				font-size:9px;letter-spacing:.2em;text-transform:uppercase;
				color:var(--gold);
			}

			/* Filter buttons */
			.filter-btn {
				font-size:9px;letter-spacing:.2em;text-transform:uppercase;
				padding:7px 18px;border:0.5px solid rgba(201,168,76,0.25);
				color:var(--muted);background:none;cursor:pointer;
				transition:all .2s;font-family:'Tenor Sans',sans-serif;
			}
			.filter-btn:hover, .filter-btn.active {
				border-color:var(--gold);color:var(--dark-1);
				background:var(--gold);
			}
