.portfolio{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:var(--portfolio-gap-size)}.portfolio.portfolio-cols-2{grid-template-columns:repeat(2,1fr);grid-auto-rows:30vw}.portfolio.portfolio-cols-3{grid-template-columns:repeat(3,1fr);grid-auto-rows:20vw}.portfolio.portfolio-cols-4{grid-template-columns:repeat(4,1fr);grid-auto-rows:calc(25vw - var(--portfolio-gap-size))}div[class*=max-width-section] .portfolio.portfolio-cols-3{grid-auto-rows:calc(320px - var(--portfolio-gap-size)/2)}@media (min-width:1140px){.portfolio.portfolio-cols-2{grid-auto-rows:380px}div[class*=force-full-width] .portfolio.portfolio-cols-2{grid-auto-rows:30vw}}@media (min-width:768px) and (max-width:1139px){.portfolio.portfolio-cols-3{grid-template-columns:repeat(2,1fr);grid-auto-rows:30vw}.portfolio.portfolio-cols-4{grid-template-columns:repeat(2,1fr);grid-auto-rows:calc(50vw - var(--portfolio-gap-size))}div[class*=max-width-section] .portfolio.portfolio-cols-3{grid-auto-rows:calc(50vw - var(--portfolio-gap-size)/2 - 40px)}}@media (max-width:767px){.portfolio.portfolio-cols-2,.portfolio.portfolio-cols-3{grid-template-columns:repeat(1,1fr);grid-auto-rows:60vw}.portfolio.portfolio-cols-4{grid-template-columns:repeat(1,1fr);grid-auto-rows:100vw}div[class*=max-width-section] .portfolio.portfolio-cols-3{grid-auto-rows:calc(100vw - var(--portfolio-gap-size) - 40px)}}@media (min-width:1920px){div[class*=force-full-width] .portfolio.portfolio-cols-2{grid-template-columns:repeat(3,1fr);grid-auto-rows:20vw}}.portfolio__img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.05,.2,.1,1)}.portfolio__item:hover .portfolio__img{transform:scale(1.08)}.portfolio__item{position:relative;overflow:hidden}.portfolio__item a{position:absolute;top:0;left:0;width:100%;height:100%;z-index:30}.portfolio__title{margin-bottom:5px;line-height:1.2}.portfolio__desc{font-size:16px}.portfolio__item .portfolio__caption{position:absolute;opacity:0;background:#fff;z-index:10;overflow:hidden;max-height:calc(100% - 60px);max-width:calc(100% - 60px);transition:all .4s cubic-bezier(.05,.2,.1,1)}.portfolio__item .portfolio__caption:last-child{margin-bottom:0}.portfolio.animation-hover .portfolio__item .portfolio__caption{bottom:30px;left:30px;padding:25px 30px 20px;transform:scale(.8)}.portfolio.animation-hover .portfolio__item:hover .portfolio__caption{opacity:1;transform:scale(1)}.portfolio.animation-slide_in_left .portfolio__item .portfolio__caption{bottom:30px;left:30px;padding:25px 30px 20px;transform:translateX(-100%)}.portfolio.animation-slide_in_left .portfolio__item:hover .portfolio__caption{opacity:1;transform:translateX(0)}.portfolio.animation-slide_in_up .portfolio__item .portfolio__caption{margin:0 auto;left:0;right:0;bottom:30px;width:80%;padding:25px 30px 20px;text-align:center;transform:translateY(100%)}.portfolio.animation-slide_in_up .portfolio__item:hover .portfolio__caption{opacity:1;transform:translateY(0)}.portfolio.animation-overlay .portfolio__item .portfolio__caption{max-width:unset;max-height:unset;display:flex;flex-direction:column;justify-content:center;text-align:center;bottom:0;left:0;right:0;top:0;padding:20px}.portfolio.animation-overlay .portfolio__item:hover .portfolio__caption{opacity:1}.portfolio.animation-overlay .portfolio__item .portfolio__caption *{transform:scale(.6);opacity:0;transition:all .4s cubic-bezier(.05,.2,.1,1)}.portfolio.animation-overlay .portfolio__item:hover .portfolio__caption *{transform:scale(1);opacity:1}.portfolio.animation-overlay .portfolio__item .portfolio__caption .portfolio__title{font-size:30px}.portfolio.animation-overlay.colorful .portfolio__item .portfolio__caption *{color:#fff}.portfolio.animation-overlay.colorful .portfolio__item:hover .portfolio__caption{opacity:1}.portfolio.animation-overlay.colorful .portfolio__item:hover:nth-child(9n-8) .portfolio__caption{background-color:#275ddc}.portfolio.animation-overlay.colorful .portfolio__item:hover:nth-child(9n-7) .portfolio__caption{background-color:#afbf28}.portfolio.animation-overlay.colorful .portfolio__item:hover:nth-child(9n-6) .portfolio__caption{background-color:#d93663}.portfolio.animation-overlay.colorful .portfolio__item:hover:nth-child(9n-5) .portfolio__caption{background-color:#5c0bb7}.portfolio.animation-overlay.colorful .portfolio__item:hover:nth-child(9n-4) .portfolio__caption{background-color:#ffc43a}.portfolio.animation-overlay.colorful .portfolio__item:hover:nth-child(9n-3) .portfolio__caption{background-color:#ab81cd}.portfolio.animation-overlay.colorful .portfolio__item:hover:nth-child(9n-2) .portfolio__caption{background-color:#0bb5b7}.portfolio.animation-overlay.colorful .portfolio__item:hover:nth-child(9n-1) .portfolio__caption{background-color:#3c3744}.portfolio.animation-overlay.colorful .portfolio__item:hover:nth-child(9n) .portfolio__caption{background-color:#ea7f07}.portfolio.animation-default .portfolio__item .portfolio__caption{opacity:1;bottom:0;left:0;right:0;padding:25px 30px;max-width:100%;background:transparent}.portfolio.animation-default .portfolio__item:after{content:"";display:block;opacity:1;position:absolute;bottom:0;left:0;width:100%;height:120px;background:linear-gradient(180deg,transparent 0,rgba(15,15,15,.5));transition:all .65s cubic-bezier(.05,.2,.1,1)}.portfolio.animation-default .portfolio__item:hover:after{opacity:0}.portfolio.animation-default .portfolio__item:before{content:"";display:block;position:absolute;opacity:0;top:0;left:0;width:100%;height:100%;background:#000;z-index:10;transition:all .65s cubic-bezier(.05,.2,.1,1)}.portfolio.animation-default .portfolio__item:hover:before{opacity:.5}.portfolio.animation-default .portfolio__item .portfolio__caption *{color:#fff}.portfolio.animation-defaul .portfolio__item:hover .portfolio__caption{transform:translateX(0)}