.tm-marquee-wrapper-3b88f7a2 {
    display: flex;
    flex-direction: column;
    gap: 30px;
    overflow: hidden;
    width: 100vw;
    margin-left: calc(-50vw + 50%);
    padding: 40px 0;
    
    /* Fading effect on the edges */
    -webkit-mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
    mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
}
.tm-marquee-row {
    display: flex;
    overflow: hidden;
    width: 100%;
}
.tm-marquee-track {
    display: flex;
    gap: 30px;
    width: max-content;
}

/* Loop half of the width since we quadrupled the items, 
   translating -50% gives a seamless loop across the duplicate set */
.tm-marquee-left .tm-marquee-track {
    animation: marqueeLeft 40s linear infinite;
}
.tm-marquee-right .tm-marquee-track {
    animation: marqueeRight 40s linear infinite;
}

.tm-card {
    background-color: #def989;
    padding: 30px;
    border-radius: 12px;
    width: 350px;
    flex-shrink: 0;
    color: #113311;
}
.tm-card h4 {
    margin: 0 0 15px 0;
    font-size: 18px;
    color: #000;
}
.tm-card p {
    margin: 0;
    font-size: 15px;
    line-height: 1.5;
}

@keyframes marqueeLeft {
    0% { transform: translateX(0); }
    100% { transform: translateX(calc(-50% - 15px)); } /* 15px accounts for half the gap */
}
@keyframes marqueeRight {
    0% { transform: translateX(calc(-50% - 15px)); }
    100% { transform: translateX(0); }
}