.elementor-widget-trattoria_marquee {
    --tm-heading-font: var(--theme-font-family, inherit);
}

.elementor-widget-trattoria_marquee .elementor-widget-container {
    overflow: hidden;
}

.tm-marquee {
    width: 100%;
    overflow: hidden;
    background: #b51f2e;
    color: #fff;
    padding: 16px 0;
    white-space: nowrap;
}

.tm-marquee__track {
    display: flex;
    width: max-content;
    animation-name: tm-marquee-left;
    animation-duration: 22s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    will-change: transform;
}

.tm-marquee__group {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    gap: 34px;
    padding-right: 34px;
}

.tm-marquee__text {
    color: inherit;
    font-family: var(--theme-headings-font-family, var(--theme-font-family, inherit));
    font-size: 26px;
    font-weight: inherit;
    line-height: 1.15;
}

.tm-marquee__separator {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    color: inherit;
    font-size: .65em;
    font-style: normal;
    line-height: 1;
}

.tm-marquee-direction-right .tm-marquee__track {
    animation-name: tm-marquee-right;
}

.tm-marquee-pause-yes .tm-marquee:hover .tm-marquee__track,
.tm-marquee-pause-yes .tm-marquee:focus-within .tm-marquee__track {
    animation-play-state: paused;
}

@keyframes tm-marquee-left {
    from { transform: translate3d(0, 0, 0); }
    to { transform: translate3d(-50%, 0, 0); }
}

@keyframes tm-marquee-right {
    from { transform: translate3d(-50%, 0, 0); }
    to { transform: translate3d(0, 0, 0); }
}

@media (prefers-reduced-motion: reduce) {
    .tm-marquee__track {
        animation-play-state: paused !important;
        transform: none !important;
    }
}
