.pib-92be709d {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    text-decoration: none !important;
}

.pib-92be709d-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    transition-property: all;
}

.pib-92be709d-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    transition-property: all;
    background-color: rgba(0,0,0,0);
}

.pib-92be709d-text-wrapper {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100%;
    pointer-events: none;
    transition-property: all;
}

.pib-92be709d-text-layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: inherit;
    align-items: inherit;
    text-align: inherit;
    padding: inherit;
    transition-property: opacity, transform;
}

.pib-92be709d-title-normal,
.pib-92be709d-subtitle-normal,
.pib-92be709d-title-hover,
.pib-92be709d-subtitle-hover {
    margin: 0;
    width: 100%;
}

/* Base Hover Toggles */
.pib-92be709d-text-normal { opacity: 1; }
.pib-92be709d-text-hover { opacity: 0; }

.pib-92be709d:hover .pib-92be709d-text-normal { opacity: 0; }
.pib-92be709d:hover .pib-92be709d-text-hover { opacity: 1; }

/* -------------------------------------
 * Split Text Feature Overrides 
 * ------------------------------------- */
.pib-92be709d-is-split {
    --pib-char-duration: 300ms;
    --pib-char-delay: 50ms;
    --pib-char-easing: ease-in-out;
}

/* Prevent the entire layer from fading when split is active */
.pib-92be709d-is-split .pib-92be709d-text-normal,
.pib-92be709d-is-split .pib-92be709d-text-hover {
    opacity: 1 !important;
    transition: none !important;
}
.pib-92be709d-is-split:hover .pib-92be709d-text-normal,
.pib-92be709d-is-split:hover .pib-92be709d-text-hover {
    opacity: 1 !important;
}

/* Transition individual characters instead */
.pib-92be709d-char {
    display: inline-block;
    transition: opacity var(--pib-char-duration) var(--pib-char-easing);
    transition-delay: calc(var(--char-index, 0) * var(--pib-char-delay));
}

.pib-92be709d-text-normal .pib-92be709d-char { opacity: 1; }
.pib-92be709d-text-hover .pib-92be709d-char { opacity: 0; }

.pib-92be709d-is-split:hover .pib-92be709d-text-normal .pib-92be709d-char { opacity: 0; }
.pib-92be709d-is-split:hover .pib-92be709d-text-hover .pib-92be709d-char { opacity: 1; }

/* Visibility Control Styles */

/* Hover Only */
.pib-92be709d-text-hover-only .pib-92be709d-text-wrapper {
    opacity: 0;
}
.pib-92be709d-text-hover-only:hover .pib-92be709d-text-wrapper {
    opacity: 1;
}

/* Fade */
.pib-92be709d-text-fade .pib-92be709d-text-wrapper {
    opacity: 0;
}
.pib-92be709d-text-fade:hover .pib-92be709d-text-wrapper {
    opacity: 1;
}

/* Slide Up */
.pib-92be709d-text-slide-up .pib-92be709d-text-wrapper {
    opacity: 0;
    transform: translateY(20px);
}
.pib-92be709d-text-slide-up:hover .pib-92be709d-text-wrapper {
    opacity: 1;
    transform: translateY(0);
}

/* Scale */
.pib-92be709d-text-scale .pib-92be709d-text-wrapper {
    opacity: 0;
    transform: scale(0.9);
}
.pib-92be709d-text-scale:hover .pib-92be709d-text-wrapper {
    opacity: 1;
    transform: scale(1);
}