/* ==== Advanced Image ==== */
.pea-advanced-image-wrapper {
    position: relative;
    display: inline-block;
}

.pea-image-container {
    position: relative;
    width: 100%;
    height: 100%;
}

.pea-image-wrapper {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100%;
}

.pea-advanced-image {
    display: block;
    height: inherit !important;
    max-height: 100%;
    width: 100%;
    max-width: 100% !important;
    transition: all 0.4s ease;
}

.pea-image-link {
    display: block;
    text-decoration: none;
}

/* Auto Height */
.pea-advanced-image-wrapper.auto-height .pea-advanced-image {
    height: auto;
}

/* Auto Fit */
.pea-advanced-image-wrapper.auto-fit-contain .pea-advanced-image {
    -o-object-fit: contain;
    object-fit: contain;
}

.pea-advanced-image-wrapper.auto-fit-cover .pea-advanced-image {
    -o-object-fit: cover;
    object-fit: cover;
}

.pea-advanced-image-wrapper.auto-fit-fill .pea-advanced-image {
    -o-object-fit: fill;
    object-fit: fill;
}

/* Image Styles / Shapes */
.pea-advanced-image-wrapper.image-style-octogon .pea-image-wrapper {
    clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
}

.pea-advanced-image-wrapper.image-style-rhombus .pea-image-wrapper {
    clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
}

.pea-advanced-image-wrapper.image-style-hexagon .pea-image-wrapper {
    clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
}

.pea-advanced-image-wrapper.image-style-bevel .pea-image-wrapper {
    clip-path: polygon(20% 0%, 80% 0%, 100% 20%, 100% 80%, 80% 100%, 20% 100%, 0% 80%, 0% 20%);
}

/* Overlay */
.pea-image-overlay .pea-image-wrapper::before {
    background: linear-gradient(rgba(0,0,0,.5),rgba(0,0,0,.1));
    bottom: 0;
    content: "";
    left: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0;
    transition: all .3s ease-in-out;
    z-index: 1;
}

/* Title */
.pea-image-title-wrapper {
    position: absolute;
    z-index: 10;
    transition: all 0.4s ease;
}

.pea-image-title {
    margin: 0;
    padding: 0;
    transition: all 0.4s ease;
}

/* Title Positions */
.title-position-center .pea-image-title-wrapper {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.title-position-center-left .pea-image-title-wrapper {
    top: 50%;
    left: 20px;
    transform: translateY(-50%);
}

.title-position-center-right .pea-image-title-wrapper {
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
}

.title-position-top-left .pea-image-title-wrapper {
    top: 20px;
    left: 20px;
}

.title-position-top-center .pea-image-title-wrapper {
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
}

.title-position-top-right .pea-image-title-wrapper {
    top: 20px;
    right: 20px;
}

.title-position-bottom-left .pea-image-title-wrapper {
    bottom: 20px;
    left: 20px;
}

.title-position-bottom-center .pea-image-title-wrapper {
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
}

.title-position-bottom-right .pea-image-title-wrapper {
    bottom: 20px;
    right: 20px;
}

.title-position-verticaly-center .pea-image-title-wrapper {
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%) rotate(-90deg);
}

/* Hover Effects */
.hover-effect-zoom-in .pea-advanced-image {
    transform: scale(1);
    transition: transform .3s ease;
}
.hover-effect-zoom-in:hover .pea-advanced-image {
    transform: scale(1.3);
}
.hover-effect-zoom-out .pea-advanced-image {
    transform: scale(1.3);
    transition: transform .3s ease;
}
.hover-effect-zoom-out:hover .pea-advanced-image {
    transform: scale(1);
}

.hover-effect-slide-left .pea-advanced-image {
    margin-left: 30px;
    transform: scale(1.3);
    transition: all .3s ease-in-out;
}

.hover-effect-slide-left:hover .pea-advanced-image {
    margin-left: 0px;
}

.hover-effect-slide-top .pea-advanced-image {
    transform: scale(1.3);
    transition: all .3s ease-in-out;
}
.hover-effect-slide-top:hover .pea-advanced-image {
    transform: scale(1.3) translatey(50px);
}

.hover-effect-blur .pea-advanced-image {
    filter: blur(10px);
}

.hover-effect-blur:hover .pea-advanced-image {
    filter: blur(0px);
}
.hover-effect-overlay .pea-image-wrapper:before {
    background: rgba(0,0,0,.5);
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 9999px;
    top: 0;
    transition: all .3s ease;
    z-index: 999;
}
.hover-effect-overlay .pea-image-wrapper:hover:before {
    right: 0;
}

.hover-effect-tilt .pea-image-wrapper {
    transition: all .3s ease;
}

.hover-effect-tilt .pea-image-wrapper:hover {
    transform: rotateY(30deg) rotateX(30deg);
}
.hover-effect-skew .pea-image-wrapper {
    transition: all .3s ease;
}
.hover-effect-skew .pea-image-wrapper:hover {
    transform: skewY(10deg) skewX(10deg);
}