/* Wspólna galeria i natywny modal. Limit czterech miniatur jest w szablonie. */
.c-gallery { display: flex; flex-direction: column; gap: var(--space-2); }
.c-gallery__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-2); }
.c-gallery__item { display: block; min-inline-size: 0; }
.c-gallery [hidden] { display: none; }
.c-gallery__item:nth-child(-n+2) { grid-column: 1 / -1; }
.c-gallery__item img { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; aspect-ratio: 1920 / 1281; }
.c-gallery__item:nth-child(3) img, .c-gallery__item:nth-child(4) img { aspect-ratio: 1366 / 2048; }
.c-lightbox { --color-action: var(--color-text-inverse); --color-action-hover: var(--c-white-muted); --color-on-action: var(--color-surface-inverse); --color-link: var(--color-text-inverse); --color-focus: var(--color-text-inverse); inline-size: min(75rem, calc(100vw - var(--space-6))); max-block-size: calc(100dvh - var(--space-6)); margin: auto; padding: var(--space-4); border: 0; border-radius: var(--radius-md); background: var(--color-surface-inverse); color: var(--color-text-inverse); }
.c-lightbox::backdrop { background: var(--color-backdrop-strong); }
.c-lightbox[open] { display: flex; flex-direction: column; gap: var(--space-4); }
.c-lightbox__toolbar, .c-lightbox__actions { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); }
.c-lightbox__actions { flex-wrap: wrap; }
.c-lightbox .c-button { padding: var(--space-2) var(--space-3); }
.c-lightbox__figure { min-block-size: 0; display: flex; flex-direction: column; align-items: center; gap: var(--space-3); }
.c-lightbox__image { display: block; inline-size: 100%; block-size: min(65dvh, 50rem); object-fit: contain; }
.c-lightbox.is-loading .c-lightbox__figure { opacity: 0.5; }
html.has-open-lightbox { overflow: hidden; }
@media (min-width: 70rem) {
 .c-gallery, .c-gallery__grid { gap: var(--space-4); }
 .c-gallery__item:nth-child(-n+2) { grid-column: auto; }
}
