.elementor-3533 .elementor-element.elementor-element-56ee6b4{--display:flex;--min-height:523px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:none;--border-style:none;--padding-top:50px;--padding-bottom:10px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-3533 .elementor-element.elementor-element-56ee6b4:not(.elementor-motion-effects-element-type-background), .elementor-3533 .elementor-element.elementor-element-56ee6b4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-638d055 );}.elementor-3533 .elementor-element.elementor-element-05794ad{--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;--justify-content:center;--gap:20px 20px;--row-gap:20px;--column-gap:20px;overflow:visible;}.elementor-3533 .elementor-element.elementor-element-f815618{margin:-15px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-3533 .elementor-element.elementor-element-f815618 .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:27px;font-weight:500;line-height:1.2em;color:var( --e-global-color-secondary );}.elementor-3533 .elementor-element.elementor-element-3475ef9{text-align:center;font-family:"Rubik", Sans-serif;font-size:16px;font-weight:300;color:var( --e-global-color-text );}.elementor-3533 .elementor-element.elementor-element-0d0efb8 .elementor-field-group{padding-right:calc( 20px/2 );padding-left:calc( 20px/2 );margin-bottom:20px;}.elementor-3533 .elementor-element.elementor-element-0d0efb8 .elementor-form-fields-wrapper{margin-left:calc( -20px/2 );margin-right:calc( -20px/2 );margin-bottom:-20px;}.elementor-3533 .elementor-element.elementor-element-0d0efb8 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-3533 .elementor-element.elementor-element-0d0efb8 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-3533 .elementor-element.elementor-element-0d0efb8 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-3533 .elementor-element.elementor-element-0d0efb8 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-3533 .elementor-element.elementor-element-0d0efb8 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-3533 .elementor-element.elementor-element-0d0efb8 .elementor-field-type-html{padding-bottom:0px;}.elementor-3533 .elementor-element.elementor-element-0d0efb8 .elementor-field-group .elementor-field{color:#000000;}.elementor-3533 .elementor-element.elementor-element-0d0efb8 .elementor-field-group .elementor-field, .elementor-3533 .elementor-element.elementor-element-0d0efb8 .elementor-field-subgroup label{font-family:"Rubik", Sans-serif;font-size:15px;font-weight:300;}.elementor-3533 .elementor-element.elementor-element-0d0efb8 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;border-color:#e2e2e2;border-width:1px 1px 1px 1px;border-radius:14px 14px 14px 14px;}.elementor-3533 .elementor-element.elementor-element-0d0efb8 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;border-color:#e2e2e2;border-width:1px 1px 1px 1px;border-radius:14px 14px 14px 14px;}.elementor-3533 .elementor-element.elementor-element-0d0efb8 .elementor-field-group .elementor-select-wrapper::before{color:#e2e2e2;}.elementor-3533 .elementor-element.elementor-element-0d0efb8 .elementor-button{font-family:"Rubik", Sans-serif;font-size:15px;font-weight:400;text-transform:uppercase;line-height:1.6em;letter-spacing:1px;border-radius:14px 14px 14px 14px;}.elementor-3533 .elementor-element.elementor-element-0d0efb8{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-3533 .elementor-element.elementor-element-ed73de5{text-align:center;font-size:13px;}#elementor-popup-modal-3533{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-3533 .dialog-message{width:640px;height:auto;}#elementor-popup-modal-3533 .dialog-close-button{display:flex;font-size:26px;}#elementor-popup-modal-3533 .dialog-widget-content{border-radius:24px 24px 24px 24px;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-3533 .dialog-close-button i{color:var( --e-global-color-d49ac81 );}#elementor-popup-modal-3533 .dialog-close-button svg{fill:var( --e-global-color-d49ac81 );}@media(min-width:768px){.elementor-3533 .elementor-element.elementor-element-56ee6b4{--content-width:81%;}.elementor-3533 .elementor-element.elementor-element-05794ad{--width:100%;}}@media(max-width:1024px){.elementor-3533 .elementor-element.elementor-element-56ee6b4{--min-height:430px;}.elementor-3533 .elementor-element.elementor-element-f815618 .elementor-heading-title{font-size:27px;}.elementor-3533 .elementor-element.elementor-element-0d0efb8 .elementor-field-group .elementor-field, .elementor-3533 .elementor-element.elementor-element-0d0efb8 .elementor-field-subgroup label{font-size:15px;}}@media(max-width:767px){.elementor-3533 .elementor-element.elementor-element-56ee6b4{--min-height:69vh;--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;--padding-top:40px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3533 .elementor-element.elementor-element-05794ad{--min-height:55vh;}.elementor-3533 .elementor-element.elementor-element-f815618{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-3533 .elementor-element.elementor-element-f815618 .elementor-heading-title{font-size:24px;}.elementor-3533 .elementor-element.elementor-element-3475ef9{font-size:14px;}.elementor-3533 .elementor-element.elementor-element-0d0efb8 .elementor-field-group .elementor-field, .elementor-3533 .elementor-element.elementor-element-0d0efb8 .elementor-field-subgroup label{font-size:15px;}#elementor-popup-modal-3533 .dialog-close-button{top:3%;font-size:23px;}body:not(.rtl) #elementor-popup-modal-3533 .dialog-close-button{right:6%;}body.rtl #elementor-popup-modal-3533 .dialog-close-button{left:6%;}}/* Start custom CSS for form, class: .elementor-element-0d0efb8 *//* Importando a fonte Inter */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;600&display=swap');

/* Ocultar barra de rolagem */
::-webkit-scrollbar {
    display: none;
}

/* Classes utilitárias */
.esconder {
    display: none;
    opacity: 0;
    transition: 1s;
}
.esconder.ativo {
    display: flex;
}

/* Definição de Variáveis */
:root {
    --shiny-cta-bg: #000000 !important; /* Fundo preto puro */
    --shiny-cta-bg-subtle: #1a1818 !important; /* Borda sutil */
    --shiny-cta-fg: #ffffff !important; /* Texto branco (repouso) */
    --shiny-cta-fg-hover: #000000 !important; /* Texto PRETO (hover) */
    --shiny-cta-highlight: #71ECB6 !important; /* Cor da marca (Verde/Ciano) */
    --shiny-cta-highlight-subtle: #ffffff !important; 
}

/* Definição das Propriedades de Animação */
@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 GERAIS DO BOTÃO */
.elementor-button {
    --animation: gradient-angle linear infinite !important;
    --duration: 3s !important;
    --shadow-size: 2px !important;
    isolation: isolate !important;
    position: relative !important;
    overflow: hidden !important;
    cursor: pointer !important;
    outline-offset: 4px !important;
    font-family: "Inter", sans-serif !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    border: 1px solid transparent !important;
    border-radius: 360px !important;
    color: var(--shiny-cta-fg) !important;
    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 !important;
    box-shadow: inset 0 0 0 1px var(--shiny-cta-bg-subtle) !important;
    transition: all 400ms cubic-bezier(0.25, 1, 0.5, 1) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    z-index: 1 !important;
}

/* Ajustes Mobile */
@media only screen and (max-width: 600px) {
    .elementor-button {
        padding: 0.8rem 1.2rem !important;
        font-size: 1rem !important;
    }
}

/* Ajustes Desktop */
@media only screen and (min-width: 600px) {
    .elementor-button {
        padding: 1.25rem 2.5rem !important;
        font-size: 1.125rem !important;
    }
}

/* Pseudo-elementos estruturais */
.elementor-button::before,
.elementor-button::after,
.elementor-button span::before {
    content: "" !important;
    pointer-events: none !important;
    position: absolute !important;
    inset-inline-start: 50% !important;
    inset-block-start: 50% !important;
    translate: -50% -50% !important;
}

/* 1. Fundo animado (partículas) - Mantido */
.elementor-button::before {
    --size: calc(100% - var(--shadow-size) * 3) !important;
    --position: 2px !important;
    --space: calc(var(--position) * 2) !important;
    width: var(--size) !important;
    height: var(--size) !important;
    background: radial-gradient(
            circle at var(--position) var(--position),
            white calc(var(--position) / 4),
            transparent 0
        ) padding-box !important;
    background-size: var(--space) var(--space) !important;
    background-repeat: space !important;
    mask-image: conic-gradient(
        from calc(var(--gradient-angle) + 45deg),
        black,
        transparent 10% 90%,
        black
    ) !important;
    border-radius: inherit !important;
    opacity: 0.4 !important;
    z-index: -2 !important; /* Bem no fundo */
}

/* 2. Camada Híbrida: Brilho (Repouso) e FUNDO VERDE (Hover) */
.elementor-button::after {
    /* Estado Repouso (Brilho girando) */
    --animation: shimmer linear infinite !important;
    width: 100% !important;
    aspect-ratio: 1 !important;
    background: linear-gradient(
        -50deg,
        transparent,
        var(--shiny-cta-highlight),
        transparent
    ) !important;
    mask-image: radial-gradient(circle at bottom, transparent 40%, black) !important;
    opacity: 0.6 !important;
    z-index: -1 !important; /* Atrás do texto */
    transition: all 0.4s ease !important;
}

/* Garantia do Texto */
.elementor-button span {
    position: relative !important;
    z-index: 10 !important;
    display: block !important;
}

/* --- HOVER CORRIGIDO (Onde a mágica acontece) --- */

.elementor-button:hover,
.elementor-button:focus-visible {
    color: var(--shiny-cta-fg-hover) !important; /* Texto Preto */
    transform: scale(1.02);
}

/* Ao passar o mouse, o ::after vira o bloco verde sólido */
.elementor-button:hover::after {
    opacity: 1 !important;
    background: var(--shiny-cta-highlight) !important; /* Verde Sólido */
    mask-image: none !important; /* Remove a máscara do brilho para preencher tudo */
    width: 150% !important; /* Garante cobertura total mesmo se girar */
    height: 150% !important;
}

/* Keyframes de Animação */
@keyframes gradient-angle {
    to { --gradient-angle: 360deg; }
}

@keyframes shimmer {
    to { transform: rotate(360deg) !important; }
}

.elementor-button,
.elementor-button::before,
.elementor-button::after {
    animation: var(--animation) var(--duration),
        var(--animation) calc(var(--duration) / 0.4) reverse paused !important;
    animation-composition: add !important;
}

.elementor-button:hover,
.elementor-button:hover::before,
.elementor-button:hover::after {
    animation-play-state: running !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-56ee6b4 */.elementor-3533 .elementor-element.elementor-element-56ee6b4 {
    /* --- FUNDO TÉCNICO --- */
    background-color: #050505 !important;
    
    /* Grid Sutil + Glow Verde no Canto Superior Direito */
    background-image: 
        linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px),
        radial-gradient(circle at top right, rgba(113, 236, 182, 0.15), transparent 50%);
    
    background-size: 30px 30px, 30px 30px, 100% 100%;
    background-position: center center, center center, top right;
    background-repeat: repeat, repeat, no-repeat;
    
    /* --- BORDAS E SOMBRAS --- */
    border: 1px solid rgba(113, 236, 182, 0.1) !important; /* Borda Verde Tech */
    box-shadow: 0 10px 40px rgba(0,0,0, 0.9) !important;
}

/* --- AJUSTES RESPONSIVOS (MOBILE) --- */
@media (max-width: 767px) {
    .elementor-3533 .elementor-element.elementor-element-56ee6b4 {
        /* Reduz o espaçamento interno para ganhar área útil */
        padding: 25px 20px !important; 
        
        /* Arredondamento menor para telas pequenas */
        border-radius: 16px !important;
        
        /* Ajusta o brilho para não ofuscar o texto em telas estreitas */
        background-image: 
            linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px),
            linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px),
            radial-gradient(circle at top right, rgba(113, 236, 182, 0.12), transparent 60%); /* Mais suave */
    }
}

/* --- AJUSTES DESKTOP --- */
@media (min-width: 768px) {
    .elementor-3533 .elementor-element.elementor-element-56ee6b4 {
        padding: 20px !important; /* Mais respiro e elegância no PC */
        border-radius: 24px !important;
    }
}/* End custom CSS */