/* Ensure gallery media fit their grid cells */
.vtp-gallery-grid{ contain: layout paint; display:grid; gap:var(--wp--preset--spacing--30); }
.formation-gallery{ margin-top:2rem; }
.vtp-gallery--cols-1{ grid-template-columns:repeat(1,minmax(0,1fr)); }
.vtp-gallery--cols-2{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.vtp-gallery--cols-3{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.vtp-gallery--cols-4{ grid-template-columns:repeat(4,minmax(0,1fr)); }
.vtp-gallery--cols-5{ grid-template-columns:repeat(5,minmax(0,1fr)); }
.vtp-gallery--cols-6{ grid-template-columns:repeat(6,minmax(0,1fr)); }
.vtp-gallery-grid figure{ margin:0; }
.vtp-gallery-grid a{ display:block; }
.vtp-gallery-grid img{ display:block; width:100%; height:auto; max-width:100%; object-fit:cover; }
.vtp-gallery-grid video{ display:block; width:100%; height:auto; }

/* Force 16/9 tiles in the grid; media inside will cover */
.vtp-16x9{ position:relative; width:100%; aspect-ratio:16/9; overflow:hidden; }
.vtp-16x9 > img,
.vtp-16x9 > video,
.vtp-16x9 a img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }


