.gallery-content{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.gallery-content img{display:block;width:100%;height:clamp(150px,16vw,220px);object-fit:cover;border-radius:10px;cursor:zoom-in;transition:transform .25s ease,box-shadow .25s ease}
.gallery-content img:focus-visible{outline:3px solid var(--sea);outline-offset:3px}
@media (hover:hover){.gallery-content img:hover{z-index:1;transform:scale(1.04);box-shadow:0 14px 30px rgba(18,59,60,.22)}}
.gallery-lightbox{position:fixed;z-index:100;inset:0;display:grid;grid-template-columns:minmax(42px,8vw) minmax(0,1fr) minmax(42px,8vw);align-items:center;justify-items:center;padding:30px;background:rgba(6,27,28,.92)}.gallery-lightbox figure{display:grid;max-width:88vw;max-height:90vh;place-items:center;margin:0}.gallery-lightbox img{display:block;max-width:82vw;max-height:82vh;object-fit:contain;border-radius:10px;box-shadow:0 20px 70px rgba(0,0,0,.35)}.gallery-lightbox button{width:42px;height:42px;color:#fff;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.45);border-radius:50%;font-size:32px;line-height:1}.gallery-lightbox button:hover{background:var(--sea)}.gallery-lightbox-close{position:absolute;top:18px;right:18px}.gallery-lightbox-counter{margin-top:10px;color:#fff;font-size:12px}.gallery-lightbox-prev{grid-column:1}.gallery-lightbox-next{grid-column:3}
@media (max-width:620px){#gallery.section{height:auto;min-height:100svh;overflow:visible;scroll-snap-align:start}.gallery-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;overflow:visible}.gallery-content img{width:100%;height:145px;object-fit:contain;background:#fff;border-radius:7px}}
