.elementor-426 .elementor-element.elementor-element-28534b2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:40px;--padding-bottom:40px;--padding-left:30px;--padding-right:30px;}.elementor-426 .elementor-element.elementor-element-28534b2:not(.elementor-motion-effects-element-type-background), .elementor-426 .elementor-element.elementor-element-28534b2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F7F7;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-426 .elementor-element.elementor-element-f0c6d21{width:var( --container-widget-width, 72% );max-width:72%;padding:0px 0px 10px 0px;--container-widget-width:72%;--container-widget-flex-grow:0;text-align:center;}.elementor-426 .elementor-element.elementor-element-f0c6d21.elementor-element{--align-self:center;}.elementor-426 .elementor-element.elementor-element-f0c6d21 .elementor-heading-title{font-family:"Sanchez", Sans-serif;font-size:55px;font-weight:600;line-height:1.1em;color:#352764;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-426 .elementor-element.elementor-element-31e8c1d{width:var( --container-widget-width, 60% );max-width:60%;margin:-15px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--container-widget-width:60%;--container-widget-flex-grow:0;text-align:center;font-family:"Montserrat", Sans-serif;font-size:18px;font-weight:400;color:#4B316B;}.elementor-426 .elementor-element.elementor-element-31e8c1d.elementor-element{--align-self:center;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-426 .elementor-element.elementor-element-d8af1ed .elementor-button{background-color:#B2FE0200;font-family:"Montserrat", Sans-serif;font-size:18px;font-weight:700;text-transform:uppercase;line-height:1.5em;border-radius:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-426 .elementor-element.elementor-element-d8af1ed{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:20px 50px 20px 50px;}.elementor-426 .elementor-element.elementor-element-d8af1ed.elementor-element{--align-self:center;}.elementor-426 .elementor-element.elementor-element-2fe9563 .elementor-button{background-color:#61CE7000;font-family:"Montserrat", Sans-serif;font-size:16px;font-weight:500;text-decoration:underline;fill:#352764;color:#352764;border-radius:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-426 .elementor-element.elementor-element-2fe9563{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}#elementor-popup-modal-426{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-426 .dialog-message{width:640px;height:auto;}#elementor-popup-modal-426 .dialog-close-button{display:flex;}#elementor-popup-modal-426 .dialog-widget-content{box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}@media(max-width:1024px){.elementor-426 .elementor-element.elementor-element-f0c6d21 .elementor-heading-title{font-size:28px;line-height:1.5em;}}@media(max-width:767px){.elementor-426 .elementor-element.elementor-element-f0c6d21{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}.elementor-426 .elementor-element.elementor-element-f0c6d21 .elementor-heading-title{font-size:40px;line-height:1.2em;}.elementor-426 .elementor-element.elementor-element-31e8c1d{margin:-5px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:83%;--container-widget-flex-grow:0;width:var( --container-widget-width, 83% );max-width:83%;}.elementor-426 .elementor-element.elementor-element-d8af1ed .elementor-button{font-size:18px;}}/* Start custom CSS for button, class: .elementor-element-d8af1ed *//* Personalize utilizando o Easy Coder*/
:root {
    /* Cor de fundo principal do botão */
    --shiny-cta-bg: #4B316B;
    /* Cor da borda sutil do botão */
    --shiny-cta-bg-subtle: #4B316B;
    /* Cor do texto do botão */
    --shiny-cta-fg: #4B316B;
    /* Cor do destaque/brilho principal do botão */
    --shiny-cta-highlight: #4B316B;
    /* Cor do destaque/brilho mais suave (pode ser um tom mais claro de #4B316B, se preferir) */
    --shiny-cta-highlight-subtle: white;
}

@property --gradient-angle {
    syntax: "<angle>";
    initial-value: 0deg;
    inherits: false;
}

@property --gradient-angle-offset {
    syntax: "<angle>";
    initial-value: 0deg;
    inherits: false;
}

@property --gradient-percent {
    syntax: "<percentage>";
    initial-value: 5%;
    inherits: false;
}

@property --gradient-shine {
    syntax: "<color>";
    initial-value: white;
    inherits: false;
}

/* Estilos para dispositivos móveis (largura máxima de 600px) */
@media only screen and (max-width: 600px) {
    .elementor-426 .elementor-element.elementor-element-d8af1ed {
        /* Define a animação principal para o brilho */
        --animation: rotate-glow linear infinite;
        /* Duração da animação do brilho (3 segundos para uma volta completa) */
        --duration: 3s;
        /* Tamanho da sombra interna do botão */
        --shadow-size: 2px;
        isolation: isolate;
        position: relative;
        overflow: hidden;
        cursor: pointer;
        outline-offset: 4px;
        /* Preenchimento (padding) do botão para telas menores */
        padding: 1.25rem 1.5rem;

        /* Tamanho da fonte do texto */
        font-size: 1.325rem;
        line-height: 1.2;
        border: 1px solid transparent;
        /* Bordas arredondadas do botão (formato pílula) */
        border-radius: 360px;
        color: var(--shiny-cta-fg);
        background: linear-gradient(var(--shiny-cta-bg), var(--shiny-cta-bg)) padding-box,
                    conic-gradient(
                        from calc(var(--gradient-angle) - var(--gradient-angle-offset)),
                        transparent,
                        var(--shiny-cta-highlight) var(--gradient-percent),
                        var(--gradient-shine) calc(var(--gradient-percent) * 2),
                        var(--shiny-cta-highlight) calc(var(--gradient-percent) * 3),
                        transparent calc(var(--gradient-percent) * 4)
                    ) border-box;
        box-shadow: inset 0 0 0 1px var(--shiny-cta-bg-subtle);
        /* Transição suave para propriedades do brilho */
        transition: 800ms cubic-bezier(0.25, 1, 0.5, 1);
        transition-property: --gradient-angle-offset, --gradient-percent, --gradient-shine;
    }
}

/* Estilos para desktops e tablets (largura mínima de 600px) */
@media only screen and (min-width: 600px) {
    .elementor-426 .elementor-element.elementor-element-d8af1ed {
        /* Define a animação principal para o brilho */
        --animation: rotate-glow linear infinite;
        /* Duração da animação do brilho (3 segundos para uma volta completa) */
        --duration: 3s;
        /* Tamanho da sombra interna do botão */
        --shadow-size: 2px;
        isolation: isolate;
        position: relative;
        overflow: hidden;
        cursor: pointer;
        outline-offset: 4px;
        /* Preenchimento (padding) do botão para telas maiores */
        padding: 1.125rem 4.5rem;

        line-height: 1.2;
        border: 1px solid transparent;
        /* Bordas arredondadas do botão (formato pílula) */
        border-radius: 360px;
        color: var(--shiny-cta-fg);
        background: linear-gradient(var(--shiny-cta-bg), var(--shiny-cta-bg)) padding-box,
                    conic-gradient(
                        from calc(var(--gradient-angle) - var(--gradient-angle-offset)),
                        transparent,
                        var(--shiny-cta-highlight) var(--gradient-percent),
                        var(--gradient-shine) calc(var(--gradient-percent) * 2),
                        var(--shiny-cta-highlight) calc(var(--gradient-percent) * 3),
                        transparent calc(var(--gradient-percent) * 4)
                    ) border-box;
        box-shadow: inset 0 0 0 1px var(--shiny-cta-bg-subtle);
        /* Transição suave para propriedades do brilho */
        transition: 800ms cubic-bezier(0.25, 1, 0.5, 1);
        transition-property: --gradient-angle-offset, --gradient-percent, --gradient-shine;
    }
}

.elementor-426 .elementor-element.elementor-element-d8af1ed::before,
.elementor-426 .elementor-element.elementor-element-d8af1ed::after,
.elementor-426 .elementor-element.elementor-element-d8af1ed span::before {
    content: "";
    pointer-events: none;
    position: absolute;
    inset-inline-start: 50%;
    inset-block-start: 50%;
    translate: -50% -50%;
    z-index: -1;
}

.elementor-426 .elementor-element.elementor-element-d8af1ed::before {
    /* Define o tamanho do pseudo-elemento */
    --size: calc(100% - var(--shadow-size) * 3);
    /* Posição inicial para o gradiente radial */
    --position: 2px;
    --space: calc(var(--position) * 2);
    width: var(--size);
    height: var(--size);
    background: radial-gradient(
                circle at var(--position) var(--position),
                white calc(var(--position) / 4),
                transparent 0
            ) padding-box;
    background-size: var(--space) var(--space);
    background-repeat: space;
    /* Máscara para o efeito de brilho em rotação */
    mask-image: conic-gradient(
                from calc(var(--gradient-angle) + 45deg),
                black 0%, /* Início da área preta */
                black 9%, /* Fim da área preta antes da transição */
                transparent 10%, /* Início da transição transparente */
                transparent 90%, /* Fim da transição transparente */
                black 91%, /* Início da área preta após a transição */
                black 100% /* Fim da área preta */
            );
    border-radius: inherit;
    opacity: 0.4;
}

.elementor-426 .elementor-element.elementor-element-d8af1ed::after {
    /* Define a animação de brilho secundária */
    --animation: subtle-shine linear infinite;
    width: 100%;
    aspect-ratio: 1;
    background: linear-gradient(
                -50deg,
                transparent,
                var(--shiny-cta-highlight),
                transparent
            );
    mask-image: radial-gradient(circle at bottom, transparent 40%, black);
    opacity: 0.6;
}

.elementor-426 .elementor-element.elementor-element-d8af1ed span {
    z-index: 1;
    position: relative;
}

.elementor-426 .elementor-element.elementor-element-d8af1ed span::before {
    /* Definindo largura e altura para a área de brilho interno no hover */
    width: 370px;
    height: 90px;
    /* Sombra interna que aparece no hover */
    box-shadow: inset 0 -1ex 2rem 4px var(--shiny-cta-highlight);
    opacity: 0;
    transition: opacity 1500ms cubic-bezier(0.25, 1, 0.5, 1);
}

.elementor-426 .elementor-element.elementor-element-d8af1ed:hover,
.elementor-426 .elementor-element.elementor-element-d8af1ed:focus-visible {
    /* Aumenta a largura do brilho no hover */
    --gradient-percent: 20%;
    /* Desloca o ângulo do gradiente no hover */
    --gradient-angle-offset: 95deg;
    /* Altera a cor do brilho mais intenso no hover */
    --gradient-shine: var(--shiny-cta-highlight-subtle);
}



/* Animação para a rotação do gradiente de brilho */
@keyframes rotate-glow {
    to {
        --gradient-angle: 360deg;
    }
}

/* Animação para o efeito de brilho sutil */
@keyframes subtle-shine {
    to {
        transform: rotate(360deg);
    }
}

/* Animação para o efeito de "respiração" (não está sendo usada atualmente, mas definida) */
@keyframes pulse-effect {
    50% {
        transform: scale(1.2);
    }
}

.elementor-426 .elementor-element.elementor-element-d8af1ed,
.elementor-426 .elementor-element.elementor-element-d8af1ed::before,
.elementor-426 .elementor-element.elementor-element-d8af1ed::after {
    /* Aplica as animações ao botão e seus pseudo-elementos */
    animation: var(--animation) var(--duration),
               var(--animation) calc(var(--duration) / 0.4) reverse paused;
    animation-composition: add;
}

.elementor-426 .elementor-element.elementor-element-d8af1ed:hover,
.elementor-426 .elementor-element.elementor-element-d8af1ed:hover::before,
.elementor-426 .elementor-element.elementor-element-d8af1ed:hover::after {
    /* Inicia as animações ao passar o mouse */
    animation-play-state: running;
}/* End custom CSS */