/* About-only media additions; original logo colours and artwork are preserved. */
.vp-about-intro,.vp-about-intro > p { max-width:840px; }
.vp-gallery--training { grid-template-columns:repeat(2,minmax(0,1fr)); }
.vp-gallery--training .vp-photo img { aspect-ratio:16/9; object-fit:cover; object-position:center 58%; }
.vp-client-logos { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; list-style:none; padding:0; margin:36px 0 0; }
.vp-client-logo { display:flex; align-items:center; justify-content:center; min-width:0; padding:24px; background:#fff; border:0; border-radius:0; box-shadow:none; filter:none; }
.vp-client-logo svg,.vp-client-logo img { display:block; width:100%; height:84px; max-width:200px; overflow:hidden; object-fit:contain; box-shadow:none; filter:none; }
@media(max-width:800px) { .vp-client-logos { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:480px) { .vp-client-logos { gap:10px; } .vp-client-logo { padding:16px 12px; } .vp-client-logo svg,.vp-client-logo img { height:64px; } }
@media(max-width:600px) { .vp-gallery--training { grid-template-columns:1fr; } }
