/* Visual Portfolio - public styles */
.visual-portfolio-grid{display:grid;grid-gap:24px;margin:20px auto;padding:20px;list-style:none;}
.visual-portfolio-grid.cols-1{grid-template-columns:repeat(1,1fr);}
.visual-portfolio-grid.cols-2{grid-template-columns:repeat(2,1fr);}
.visual-portfolio-grid.cols-3{grid-template-columns:repeat(3,1fr);}
.visual-portfolio-grid.cols-4{grid-template-columns:repeat(4,1fr);}
.visual-portfolio-item{overflow:hidden;border-radius:8px;opacity:0;transform:translateY(20px);animation:fadeIn 1s ease forwards;}
.vp-thumb-link img{width:100%;height:auto;display:block;border-radius:8px;}
@keyframes fadeIn{to{opacity:1;transform:translateY(0);}}
