.ancr-p-grid {
    position: relative;
    display: inline-block;
    width: 100%;
    vertical-align: top;
}

.ancr-p-grid.ancr-p-masonry-on .ancr-grid-inner {
    visibility: hidden;
}

.ancr-p-grid.ancr-p-masonry-on .ancr-grid-inner.ancr--masonry-init {
    visibility: visible;
}

.ancr-p-grid.ancr-p-masonry-on .ancr-grid-masonry-sizer {
    width: 100%;
    padding: 0;
    margin: 0;
}

.ancr-p-grid.ancr-p-masonry-on .ancr-grid-masonry-gutter {
    width: 0;
    padding: 0;
    margin: 0;
}

/* ---------------------------------------------------------------------------------------------------------------------- */
.grid-item {
    display: flex;
    align-items: center;
}

.ancr-portfolio-standard .ancr-portfolio-wrap {
    position: relative;
}

.ancr-portfolio-standard .ancr-portfolio-content {
    position: relative;
    z-index: 1;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    transform: translateY(0px);
}

.ancr-portfolio-standard .ancr-portfolio-image {
    overflow: hidden;
    position: relative;
}

.ancr-portfolio-c-width-auto .ancr-portfolio-standard .ancr-portfolio-content,
.ancr-portfolio-c-width-custom .ancr-portfolio-standard .ancr-portfolio-content {
    display: inline-block;
}

.ancr-portfolio-standard .ancr-portfolio-subtitle span {
    display: inline-block;
    margin: 0 8px;
}

.ancr-portfolio-standard .ancr-portfolio-hover-icons {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease-in-out;
}

.ancr-portfolio-standard .ancr-portfolio-wrap:hover .ancr-portfolio-hover-icons {
    visibility: visible;
    opacity: 1;
}

.ancr-portfolio-standard .ancr-portfolio-hover-icons a {
    position: relative;
    display: inline-block;
    text-align: center;
    margin: 5px;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease-in-out;
}

.ancr-portfolio-standard a.ancr-portfolio-hover-zoom-icon {
    margin-bottom: -120px;
}

.ancr-portfolio-standard a.ancr-portfolio-hover-link-icon {
    margin-top: -120px;
}

.ancr-portfolio-standard .ancr-portfolio-wrap:hover a.ancr-portfolio-hover-zoom-icon {
    margin-bottom: 5px;
}

.ancr-portfolio-standard .ancr-portfolio-wrap:hover a.ancr-portfolio-hover-link-icon {
    margin-top: 5px;
}

.ancr-portfolio-standard .ancr-portfolio-wrap:hover .ancr-portfolio-hover-icons a {
    visibility: visible;
    opacity: 1;
}

.ancr-portfolio-standard .ancr-portfolio-hover-icons a i,
.ancr-portfolio-standard .ancr-portfolio-hover-icons a svg {
    transition: all 0.3s ease-in-out;
}

.ancr-portfolio-standard .ancr-portfolio-hover-icons a:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    display: block;
    border-radius: 100%;
    box-sizing: border-box;
    transition: all 0.3s ease-in-out;
}

.ancr-portfolio-standard.ancr-p-grid article.ancr-load-anim--fade.ancr-grid--load .ancr-portfolio-content,
.ancr-portfolio-standard.ancr-p-grid article.ancr-load-anim--reveal.ancr-grid--load .ancr-portfolio-content,
.ancr-portfolio-standard.ancr-p-grid article.ancr-load-anim--fade.ancr-grid--load .ancr-post-grid-image {
    opacity: 0;
    transition: opacity .6s ease-out;
}

.ancr-portfolio-standard.ancr-p-grid article.ancr-load-anim--fade.ancr-grid--load.ancr-grid--loaded .ancr-portfolio-content,
.ancr-portfolio-standard.ancr-p-grid article.ancr-load-anim--reveal.ancr-grid--load.ancr-grid--loaded .ancr-portfolio-content,
.ancr-portfolio-standard.ancr-p-grid article.ancr-load-anim--fade.ancr-grid--load.ancr-grid--loaded .ancr-post-grid-image {
    opacity: 1;
}

.ancr-portfolio-standard.ancr-p-grid article.ancr-load-anim--reveal .ancr-post-grid-image img {
    width: 100%;
    max-width: 100%;
    height: auto;
    dispay: block;
    will-change: transform;
    transition: all .8s cubic-bezier(.25, .46, .45, .94);
    -o-transition: all .8s cubic-bezier(.25, .46, .45, .94);
    -webkit-transition: all .8s cubic-bezier(.25, .46, .45, .94);
}

.ancr-portfolio-standard.ancr-p-grid article.ancr-load-anim--reveal.ancr-grid--load .ancr-post-grid-image {
    overflow: hidden;
    vertical-align: middle;
    width: 100%;
    position: relative;
    display: inline-block;
    clip-path: inset(0 100% 0 0);
    -webkit-clip-path: inset(0 100% 0 0);
    transform: translateX(0);
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transition: all .8s cubic-bezier(.4, 0, .2, 1);
    -o-transition: all .8s cubic-bezier(.4, 0, .2, 1);
    -webkit-transition: all .8s cubic-bezier(.4, 0, .2, 1);
}

.ancr-portfolio-standard.ancr-p-grid article.ancr-load-anim--reveal.ancr-grid--load.ancr-grid--loaded .ancr-post-grid-image {
    clip-path: inset(0 0 0 0);
    -webkit-clip-path: inset(0 0 0 0);
    transition: all .8s cubic-bezier(.25, .46, .45, .94);
    -o-transition: all .8s cubic-bezier(.25, .46, .45, .94);
    -webkit-transition: all .8s cubic-bezier(.25, .46, .45, .94);
}

.ancr-portfolio-image a.ancr-post-grid-image {
    width: 100%;
    transform: scale(1);
    transition: transform 1.4s cubic-bezier(.25, .1, .14, .91);
    transform-origin: center;
    position: relative;
    display: block;
}

.ancr-portfolio-standard .ancr-portfolio-image {
    overflow: hidden;
    position: relative;
    transition: all 0.3s ease-in-out;
}

.ancr-portfolio-standard.ancr-parallax-scroll-on a.ancr-post-grid-image {
    transform: scale(1.22);
}

.ancr-portfolio-standard .ancr-portfolio-image img {
    transform: scale(1);
    transition: all .8s cubic-bezier(.25, .46, .45, .94);
    -o-transition: all .8s cubic-bezier(.25, .46, .45, .94);
    -webkit-transition: all .8s cubic-bezier(.25, .46, .45, .94);
}

/* Hover Image Animation */
.ancr-portfolio-image-move-left-yes .ancr-portfolio-wrap .ancr-portfolio-image img {
    margin-left: 0;
    transform: scale(1.1);
    transition: all .5s cubic-bezier(.785, .135, .15, .860) 0ms;
}

.ancr-portfolio-image-move-left-yes .ancr-portfolio-wrap:hover .ancr-portfolio-image img {
    margin-left: -15px;
}

.ancr-portfolio-image-shrink-yes .ancr-portfolio-standard.ancr-p-grid article .ancr-portfolio-image {
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
    transition: all .8s cubic-bezier(.25, .46, .45, .94);
    -o-transition: all .8s cubic-bezier(.25, .46, .45, .94);
    -webkit-transition: all .8s cubic-bezier(.25, .46, .45, .94);
    height: 100%;
    display: block;
    width: 100%;
}

.ancr-portfolio-image-shrink-yes .ancr-portfolio-standard.ancr-p-grid article:hover .ancr-portfolio-image {
    -webkit-clip-path: inset(12px 12px 12px 12px);
    clip-path: inset(12px 12px 12px 12px);
}

/* Styling */
.ancr-portfolio-standard .ancr-portfolio-title,
.ancr-portfolio-standard .ancr-portfolio-title a {
    color: var(--swm-color-headings);
}

.ancr-portfolio-standard .ancr-portfolio-title a:hover {
    color: var(--swm-color-dark-1);
}

.ancr-portfolio-standard .ancr-portfolio-subtitle,
.ancr-portfolio-standard .ancr-portfolio-hover-icons a i {
    color: var(--swm-color-text);
}

.ancr-portfolio-standard .ancr-portfolio-hover-icons a svg {
    fill: var(--swm-color-text);
}

.ancr-portfolio-standard .ancr-portfolio-title,
.ancr-portfolio-standard .ancr-portfolio-title a {
    font-size: 22px;
    line-height: 1.4;
}

.ancr-portfolio-standard .ancr-portfolio-subtitle {
    font-size: 15px;
    line-height: 1.5;
}

.ancr-portfolio-standard .ancr-portfolio-content {
    padding-top: 20px;
}

.ancr-portfolio-standard .ancr-portfolio-hover-icons a i {
    color: var(--swm-color-light-1);
}

.ancr-portfolio-standard .ancr-portfolio-hover-icons a:before {
    background: var(--swm-color-headings);
}

.ancr-portfolio-standard .ancr-portfolio-hover-icons {
    background: var(--swm-color-light-2);
}