/* ============================================================
   PEM — Texto Scroll v1.3.1
   ============================================================ */

.et_pb_pem_text_scroll,
.et_pb_pem_text_scroll .et_pb_module_inner {
    overflow: visible !important;
}

.pem-text-scroll {
    width: 100%;
    max-width: var(--pemts-max-width, 640px);
    overflow: visible;
}

.pem-text-scroll__content {
    margin: 0 !important;
    padding: 0 !important;
    max-width: 100%;
    /* A cor real fica no span interno para não ser sobrescrita pelos H1/H2/H3 globais do Divi no Theme Builder. */
    color: inherit !important;
    font-family: "Manrope", sans-serif !important;
    font-size: var(--pemts-size-d, 64px) !important;
    font-weight: var(--pemts-weight, 700) !important;
    line-height: var(--pemts-lh, 1.02em) !important;
    letter-spacing: var(--pemts-tracking-d, -1.9px) !important;
    text-align: var(--pemts-align, left) !important;

    /* O ponto-chave do módulo: a escala pode ficar ancorada à esquerda. */
    transform-origin: var(--pemts-origin, left top) !important;
    transform: scale(var(--pemts-scale, 1));
    opacity: var(--pemts-opacity, 1);

    /*
     * Canais RGB separados tornam a sombra estável também dentro do
     * iframe / render parcial do Visual Builder.
     */
    text-shadow:
        var(--pemts-shadow-x, 0em)
        var(--pemts-shadow-y, .83em)
        var(--pemts-shadow-blur, .64em)
        rgba(
            var(--pemts-shadow-r, 0),
            var(--pemts-shadow-g, 0),
            var(--pemts-shadow-b, 0),
            var(--pemts-shadow-alpha, 0)
        ) !important;

    will-change: transform, opacity, text-shadow;
}

.pem-text-scroll__text {
    color: var(--pemts-color, #0A0A0A) !important;
}

/*
 * Visual Builder / Theme Builder:
 * não executamos o movimento de scroll, mas mostramos o ESTADO DO MEIO.
 * Isso permite editar cor, blur, deslocamento e a opacidade do meio vendo
 * a sombra imediatamente, mesmo quando o JS do front-end não está ativo.
 */
body.et-fb .pem-text-scroll__content,
.et-fb .pem-text-scroll__content {
    --pemts-opacity: 1;
    --pemts-scale: 1;
    --pemts-shadow-alpha: var(--pemts-shadow-builder-alpha, .20);
    opacity: 1 !important;
    transform: scale(1) !important;
}

@media (max-width: 980px) {
    .pem-text-scroll__content {
        font-size: var(--pemts-size-t, 45px) !important;
        letter-spacing: var(--pemts-tracking-t, -1.3px) !important;
    }
}

@media (max-width: 767px) {
    .pem-text-scroll__content {
        font-size: var(--pemts-size-m, 36px) !important;
        letter-spacing: var(--pemts-tracking-m, -1.1px) !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .pem-text-scroll__content {
        opacity: 1 !important;
        transform: none !important;
        text-shadow: none !important;
    }
}
