#currentIdea {
    position: absolute;
    transition: transform 0.5s ease-in-out, opacity 0.5s ease-in-out;
}
/* Font sizes for text-3xl and text-5xl */
.text-3xl {
    font-size: 1.875rem; /* 30px */
    line-height: 2.25rem; /* 36px */
}

.text-5xl {
    font-size: 3rem; /* 48px */
    line-height: 1;
}

.z-50 {
    z-index: 50;
}
.share-menu-container {
    transition: opacity 0.2s ease;
}

.lightbox-img {
    cursor: zoom-in;
    transition: transform 0.2s;
}

.lightbox-img:hover {
    transform: scale(1.02);
}

.red-gradient h2 {
    padding-top:22px;
}

.JoyTits {
    position: relative;
    display: inline-block;
    vertical-align: baseline;
    width: 80px; /* Width of the longest word */
    height: 1em; /* Fixed height to prevent shifting */
}
.JoyTits span {
    position: absolute;
    top: 5px;
    left: 0;
    opacity: 0;
    transition: opacity 0.5s ease;
    line-height: inherit;
    vertical-align: baseline;
}
.JoyTits .joy {
    opacity: 1;
}
.JoyTits .tits {
    opacity: 0;
}