.gallery-container:where(.astro-AJ3BGAEB){width:100%;max-width:1200px;margin:0 auto 100px;padding:10px}.gallery-grid:where(.astro-AJ3BGAEB){display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.gallery-item:where(.astro-AJ3BGAEB){position:relative;overflow:hidden;border-radius:8px;transition:transform .3s ease}.gallery-item:where(.astro-AJ3BGAEB):hover{transform:translateY(-5px)}.image-wrapper:where(.astro-AJ3BGAEB){position:relative;width:100%;padding-bottom:100%;overflow:hidden}.image-link:where(.astro-AJ3BGAEB){position:absolute;top:0;left:0;width:100%;height:100%;display:block}.gallery-image:where(.astro-AJ3BGAEB){position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.image-link:where(.astro-AJ3BGAEB):hover .gallery-image:where(.astro-AJ3BGAEB){transform:scale(1.1)}.caption-container:where(.astro-AJ3BGAEB){position:absolute;bottom:0;left:0;width:100%;padding:12px;background:linear-gradient(transparent,rgba(0,0,0,.7));color:#fff;opacity:0;transition:opacity .3s ease}.gallery-item:where(.astro-AJ3BGAEB):hover .caption-container:where(.astro-AJ3BGAEB){opacity:1}.caption-button:where(.astro-AJ3BGAEB){display:inline-block;padding:6px 12px;background-color:#4a7c50;color:#fff;text-decoration:none;border-radius:4px;font-size:.9rem;transition:background-color .3s ease}.caption-button:where(.astro-AJ3BGAEB):hover{background-color:#3a6040}@media (max-width: 1024px){.gallery-grid:where(.astro-AJ3BGAEB){grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.gallery-grid:where(.astro-AJ3BGAEB){grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.gallery-grid:where(.astro-AJ3BGAEB){grid-template-columns:1fr}}.animated:where(.astro-AJ3BGAEB){animation-duration:.5s;animation-fill-mode:both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fadeInUp:where(.astro-AJ3BGAEB){animation-name:fadeInUp}
