main { width: min(1040px, calc(100% - 56px)); margin-top: 80px; }
.gallery-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px 32px; align-items: start; }
.gallery-grid figure { margin: 0; }
.gallery-grid a { display: block; }
.gallery-grid img { display: block; width: 100%; height: auto; border-radius: 6px; }
.gallery-grid figcaption { margin-top: 16px; font-size: .95rem; line-height: 1.7; color: #d6dae5; }
@media (max-width: 640px) {
 main { width: calc(100% - 40px); margin-top: 48px; }
 .gallery-grid { grid-template-columns: 1fr; gap: 36px; }
}
