.gallery-bento{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:9rem;grid-auto-flow:dense;gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}@media (width>=640px){.gallery-bento{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:10rem}}@media (width>=1100px){.gallery-bento{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:11rem}}.bento-tile.is-wide{grid-column:span 2}.bento-tile.is-tall{grid-row:span 2}.bento-open{border-radius:var(--radius-lg);background:var(--color-peach);width:100%;height:100%;box-shadow:var(--shadow);cursor:zoom-in;isolation:isolate;border:0;padding:0;display:block;position:relative;overflow:hidden}.bento-open img{z-index:-2;object-fit:cover;width:100%;height:100%;transition:transform .4s;position:absolute;inset:0}.bento-open:hover img,.bento-open:focus-visible img{transform:scale(1.05)}.bento-caption{padding:var(--space-5) var(--space-3) var(--space-2);color:#fff;text-align:left;background:linear-gradient(#1e120e00 0%,#1e120eb8 100%);gap:2px;display:grid;position:absolute;bottom:0;left:0;right:0}.bento-title{-webkit-line-clamp:2;font-size:var(--font-sm);text-shadow:0 1px 2px #00000080;-webkit-box-orient:vertical;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.bento-category{padding:1px var(--space-2);border-radius:var(--radius-pill);color:var(--color-link);font-size:var(--font-xs);text-shadow:none;background:#ffffffe6;justify-self:start;font-weight:500;display:inline-block}.bento-play{border-radius:var(--radius-pill);width:3.25rem;height:3.25rem;color:var(--color-primary);background:#ffffffeb;justify-content:center;align-items:center;padding-left:3px;transition:transform .2s;display:inline-flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 4px 14px #00000040}.bento-open:hover .bento-play{transform:translate(-50%,-50%)scale(1.08)}@media (prefers-reduced-motion:reduce){.bento-open img,.bento-play{transition:none}.bento-open:hover img,.bento-open:focus-visible img{transform:none}}.popup.lightbox{width:min(60rem, calc(100% - 2 * var(--space-3)))}.lightbox-body{gap:var(--space-3);display:grid}.lightbox-stage{border-radius:var(--radius);background:#1e1612;justify-content:center;display:flex;overflow:hidden}.lightbox-media{object-fit:contain;width:auto;max-width:100%;max-height:min(70vh,40rem);display:block}.lightbox-frame{aspect-ratio:16/9;border:0;width:100%;max-height:none}.lightbox-text{color:var(--color-text-muted);margin:0}.lightbox-text .bento-category{background:var(--color-pink)}.lightbox-nav{justify-content:space-between;align-items:center;gap:var(--space-3);font-size:var(--font-sm);color:var(--color-text-muted);display:flex}.gallery-filters{justify-content:center;gap:var(--space-2);margin:0 0 var(--space-5);flex-wrap:wrap;padding:0;list-style:none;display:flex}.gallery-filters a{min-height:var(--tap-min);padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font-size:var(--font-sm);align-items:center;font-weight:500;display:inline-flex}.gallery-filters a:hover{border-color:var(--color-primary);color:var(--color-link)}.gallery-filters a[aria-current=page]{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}
