.mta-container {
    line-height: 1.4em;
    display: block;
    width: 100%;
    margin-bottom: 20px;
    /* Font weight is now handled inline by PHP */
}

/* --- TYPEWRITER STYLES --- */
.mta-cursor {
    border-right: 3px solid currentColor;
    padding-right: 5px;
    animation: mta-blink 0.7s infinite;
}

@keyframes mta-blink {
    0%, 100% { border-color: transparent; }
    50% { border-color: inherit; }
}

/* --- SLIDE UP STYLES --- */
.mta-slide-wrapper {
    display: inline-block;
    position: relative;
    vertical-align: bottom;
    overflow: hidden; /* Hides the text when it slides out */
    height: 1.2em; /* Adjust based on line height to fit one line */
    white-space: nowrap;
}

.mta-slide-text {
    display: inline-block;
    position: absolute;
    left: 0;
    transition: transform 0.5s cubic-bezier(0.2, 1, 0.3, 1), opacity 0.5s ease;
    width: 100%;
}

/* State 1: Visible (Active) */
.mta-slide-text.visible {
    transform: translateY(0%);
    opacity: 1;
    position: relative; /* Keeps the wrapper width correct */
}

/* State 2: Incoming (Waiting below) */
.mta-slide-text.incoming {
    transform: translateY(100%);
    opacity: 0;
    position: absolute;
}

/* State 3: Outgoing (Sliding up and away) */
.mta-slide-text.outgoing {
    transform: translateY(-100%);
    opacity: 0;
    position: absolute;
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
    .mta-container {
        word-wrap: break-word;
    }
}