.gallery-grid.svelte-10x6wl6{gap:var(--space-md);grid-template-columns:repeat(3,1fr);display:grid}@media (width<=900px){.gallery-grid.svelte-10x6wl6{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.gallery-grid.svelte-10x6wl6{grid-template-columns:1fr}}.gallery-item.svelte-10x6wl6{border-radius:var(--radius-md);cursor:pointer;aspect-ratio:4/3;background:var(--color-bg-subtle);border:none;padding:0;position:relative;overflow:hidden}.gallery-img.svelte-10x6wl6{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-base)}.gallery-item.svelte-10x6wl6:hover .gallery-img:where(.svelte-10x6wl6){transform:scale(1.04)}.gallery-caption.svelte-10x6wl6{color:#fff;padding:var(--space-md) var(--space-sm) var(--space-sm);font-size:var(--font-size-sm);opacity:0;transition:opacity var(--transition-fast);background:linear-gradient(#0000,#000000b3);position:absolute;bottom:0;left:0;right:0}.gallery-item.svelte-10x6wl6:hover .gallery-caption:where(.svelte-10x6wl6){opacity:1}.lightbox-overlay.svelte-10x6wl6{z-index:1000;justify-content:center;align-items:center;gap:var(--space-lg);padding:var(--space-lg);background:#000000eb;display:flex;position:fixed;inset:0}.lightbox-content.svelte-10x6wl6{align-items:center;gap:var(--space-md);flex-direction:column;max-width:min(90vw,1000px);display:flex}.lightbox-img.svelte-10x6wl6{object-fit:contain;border-radius:var(--radius-md);max-width:100%;max-height:80vh}.lightbox-caption.svelte-10x6wl6{color:#ffffffd9;font-size:var(--font-size-sm);text-align:center;max-width:none}.lightbox-close.svelte-10x6wl6{top:var(--space-lg);right:var(--space-lg);color:#fff;cursor:pointer;width:40px;height:40px;transition:background-color var(--transition-fast);background:#ffffff1a;border:1px solid #fff3;border-radius:50%;font-size:1.25rem;position:absolute}.lightbox-close.svelte-10x6wl6:hover{background:#fff3}.lightbox-prev.svelte-10x6wl6,.lightbox-next.svelte-10x6wl6{color:#fff;cursor:pointer;width:48px;height:48px;transition:background-color var(--transition-fast);background:#ffffff1a;border:1px solid #fff3;border-radius:50%;flex-shrink:0;font-size:1.75rem;line-height:1}.lightbox-prev.svelte-10x6wl6:hover,.lightbox-next.svelte-10x6wl6:hover{background:#ffffff40}.page-hero.svelte-16h6p05{background:linear-gradient(135deg, var(--color-bg) 0%, var(--color-bg-subtle) 100%);padding-block:var(--space-2xl);border-bottom:1px solid var(--color-border)}.page-hero.svelte-16h6p05 h1:where(.svelte-16h6p05){font-size:clamp(var(--font-size-3xl), 4vw, var(--font-size-4xl))}.filter-bar.svelte-16h6p05{gap:var(--space-sm);margin-bottom:var(--space-xl);flex-wrap:wrap;display:flex}.filter-bar.svelte-16h6p05 button:where(.svelte-16h6p05){padding:var(--space-xs) var(--space-md);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);font-weight:600}.filter-bar.svelte-16h6p05 button:where(.svelte-16h6p05):hover,.filter-bar.svelte-16h6p05 button.active:where(.svelte-16h6p05){background-color:var(--color-accent);color:#fff;border-color:var(--color-accent)}
