  /* ===== Masonry - JS balanced columns ===== */
.gallery-section{ max-width:1200px; margin:0 auto; padding:1.5rem }
.gallery-section h2{ margin:0 0 1rem; font-size:1.1rem }

.masonry-columns-js{ display:flex; gap:1rem; align-items:flex-start }
.masonry-col{ flex:1; display:flex; flex-direction:column; gap:1rem }

.m-item{ background:#fff; border-radius:3px; overflow:hidden; box-shadow:0 1px 6px rgba(0,0,0,.06) }
.m-item img{ display:block; width:100%; height:auto; object-fit:cover; }