.text-reveal-container {
    position: relative;
    height: 80vh;
    z-index: 0;
}

.text-reveal-sticky {
    position: sticky;
    top: 0;
    height: 50vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: transparent;
}

.text-reveal-text {
    display: flex;
    flex-wrap: wrap;
    max-width: 75vw;
    margin: 0;
    padding: 1.25rem;
    font-size: clamp(1.5rem, 3vw, 3rem);
    font-weight: 700;
    line-height: 1.4;
    color: rgba(0, 0, 0, 0.2);
}

@media (min-width: 768px) {
    .text-reveal-text {
        padding: 2rem;
    }
}

@media (min-width: 1024px) {
    .text-reveal-text {
        padding: 2.5rem;
    }
}

.tr-word {
    position: relative;
    margin: 0 0.2em 0.15em;
}

.tr-word-ghost {
    display: inline-block;
    opacity: 0.5;
    user-select: none;
}

.tr-word-reveal {
    position: absolute;
    inset: 0;
    opacity: 0;
    color: #1c4da1;
    white-space: nowrap;
}
