﻿/* Gallery additions — uses site.css variables */
.page-head { max-width: var(--max); margin: 1.5rem auto 0; padding: 0 1.25rem; }
.gallery { list-style: none; margin: 1rem auto 2rem; padding: 0 1.25rem; max-width: var(--max);
  display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 1rem; }
.gallery-item { background: var(--bg-card); border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; margin: 0; }
.gallery-item img, .gallery-item video { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; background: #1c1c1e; }
.gallery-item video { object-fit: contain; }
.gallery-item .cap { padding: 0.6rem 0.8rem; font-size: 0.95rem; color: var(--text-muted); }
.gallery-item .cap strong { color: var(--text); display: block; }
.gallery-item a.embed { display: block; padding: 0.8rem; }
.gallery-empty { grid-column: 1 / -1; color: var(--text-muted); }
[data-theme="dark"] .gallery-item { background: var(--charcoal-soft); }
.gallery-item a.embed-card { display: block; position: relative; text-decoration: none; }
.gallery-item a.embed-card img { aspect-ratio: 4 / 5; }
.gallery-item .embed-play { position: absolute; left: 0; right: 0; bottom: 0; padding: 0.6rem 0.8rem; background: rgba(28,28,30,0.82); color: #fff; font-weight: 600; text-align: center; }
