/* Galeria de fotos: colunas que respeitam a proporção de cada foto */
.galeria__grid { column-count: 1; column-gap: 16px; }
@media (min-width: 640px) { .galeria__grid { column-count: 2; } }
@media (min-width: 1000px) { .galeria__grid { column-count: 3; column-gap: 20px; } }

.galeria__item { display: block; width: 100%; margin: 0 0 16px; padding: 0; border: 1px solid var(--cor-linha); border-top: 4px solid var(--cor-destaque); background: var(--cor-branco); cursor: zoom-in; break-inside: avoid; overflow: hidden; }
@media (min-width: 1000px) { .galeria__item { margin-bottom: 20px; } }
.galeria__item img { display: block; width: 100%; height: auto; transition: transform 0.25s ease; }
.galeria__item:hover img, .galeria__item:focus-visible img { transform: scale(1.03); }
.galeria__item:focus-visible { outline: 3px solid var(--cor-destaque); outline-offset: 2px; }

.galeria-lightbox { position: fixed; inset: 0; z-index: 1000; display: flex; align-items: center; justify-content: center; background: rgba(0, 0, 0, 0.9); padding: 24px; }
.galeria-lightbox[hidden] { display: none; }
.galeria-lightbox__imagem { max-width: min(100%, 1100px); max-height: 90vh; width: auto; height: auto; }
.galeria-lightbox__fechar { position: absolute; top: 16px; right: 20px; background: transparent; border: 0; color: #fff; font-size: 40px; line-height: 1; cursor: pointer; padding: 8px; }
