.elementor-3428 .elementor-element.elementor-element-2055606{--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;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:14%;--padding-bottom:06%;--padding-left:0%;--padding-right:0%;}.elementor-3428 .elementor-element.elementor-element-2055606:not(.elementor-motion-effects-element-type-background), .elementor-3428 .elementor-element.elementor-element-2055606 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EFF3F9;}.elementor-3428 .elementor-element.elementor-element-621f351{--display:flex;--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;--overlay-opacity:0.5;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#ECECEC;--border-color:#ECECEC;--border-radius:18px 18px 18px 18px;--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-3428 .elementor-element.elementor-element-621f351:not(.elementor-motion-effects-element-type-background), .elementor-3428 .elementor-element.elementor-element-621f351 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#3F47B5;}.elementor-3428 .elementor-element.elementor-element-621f351::before, .elementor-3428 .elementor-element.elementor-element-621f351 > .elementor-background-video-container::before, .elementor-3428 .elementor-element.elementor-element-621f351 > .e-con-inner > .elementor-background-video-container::before, .elementor-3428 .elementor-element.elementor-element-621f351 > .elementor-background-slideshow::before, .elementor-3428 .elementor-element.elementor-element-621f351 > .e-con-inner > .elementor-background-slideshow::before, .elementor-3428 .elementor-element.elementor-element-621f351 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-3428 .elementor-element.elementor-element-c7c4cae{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.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-3428 .elementor-element.elementor-element-491d7cf{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 16px) 0px;padding:0px 0px 0px 0px;}.elementor-3428 .elementor-element.elementor-element-491d7cf .elementor-button{font-family:"Space Grotesk", Sans-serif;font-size:1.4rem;font-weight:500;border-radius:34px 34px 34px 34px;padding:3px 3px 3px 3px;}.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-3428 .elementor-element.elementor-element-9e66470{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;text-align:start;}.elementor-3428 .elementor-element.elementor-element-9e66470 .elementor-heading-title{font-family:"Space Grotesk", Sans-serif;font-size:5.2rem;font-weight:400;letter-spacing:-2.5px;color:#FFFFFF;}.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-3428 .elementor-element.elementor-element-68d673c{width:var( --container-widget-width, 85% );max-width:85%;margin:17px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:85%;--container-widget-flex-grow:0;text-align:start;font-family:"Space Grotesk", Sans-serif;font-size:1.2rem;font-weight:400;line-height:25px;letter-spacing:-1px;color:var( --e-global-color-b829f9a );}.elementor-3428 .elementor-element.elementor-element-68d673c.elementor-element{--align-self:flex-start;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-3428 .elementor-element.elementor-element-98fd9fc{margin:46px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:start;}.elementor-3428 .elementor-element.elementor-element-98fd9fc img{width:48%;}.elementor-3428 .elementor-element.elementor-element-9a47c8c{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:36px;}.elementor-3428 .elementor-element.elementor-element-7df69f9{--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;}.elementor-3428 .elementor-element.elementor-element-7df69f9:not(.elementor-motion-effects-element-type-background), .elementor-3428 .elementor-element.elementor-element-7df69f9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#3F47B5;}.elementor-3428 .elementor-element.elementor-element-470363d > .elementor-widget-container{margin:5px 0px 0px 0px;}.elementor-3428 .elementor-element.elementor-element-470363d .qodef-qi-text-marquee .qodef-m-text.qodef-text--original{animation:qode-move-horizontal-reverse-text-marquee 20s linear infinite;}.elementor-3428 .elementor-element.elementor-element-470363d .qodef-qi-text-marquee .qodef-m-text.qodef-text--copy{animation:qode-move-horizontal-reverse-text-marquee-copy 20s linear infinite;}.elementor-3428 .elementor-element.elementor-element-470363d .qodef-m-text-item{color:#FFFFFF;font-family:"Space Grotesk", Sans-serif;font-size:15px;font-weight:400;text-transform:uppercase;}.elementor-3428 .elementor-element.elementor-element-470363d .qodef-e-icon-holder{color:#FFFFFF;font-size:15px;}@media(max-width:1024px){.elementor-3428 .elementor-element.elementor-element-2055606{--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-3428 .elementor-element.elementor-element-621f351{--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;}.elementor-3428 .elementor-element.elementor-element-c7c4cae{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:56px;--padding-bottom:56px;--padding-left:56px;--padding-right:56px;}.elementor-3428 .elementor-element.elementor-element-9a47c8c{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:32px;--padding-right:032px;}}@media(max-width:1024px) and (min-width:768px){.elementor-3428 .elementor-element.elementor-element-2055606{--content-width:100%;}.elementor-3428 .elementor-element.elementor-element-621f351{--width:100%;}.elementor-3428 .elementor-element.elementor-element-c7c4cae{--width:100%;}}@media(max-width:767px){.elementor-3428 .elementor-element.elementor-element-2055606{--margin-top:-22%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:44%;--padding-bottom:8%;--padding-left:8%;--padding-right:8%;}.elementor-3428 .elementor-element.elementor-element-621f351{--gap:0px 42px;--row-gap:0px;--column-gap:42px;--padding-top:12px;--padding-bottom:24px;--padding-left:0px;--padding-right:0px;}.elementor-3428 .elementor-element.elementor-element-c7c4cae{--padding-top:24px;--padding-bottom:24px;--padding-left:24px;--padding-right:24px;}.elementor-3428 .elementor-element.elementor-element-491d7cf .elementor-button{font-size:1.3rem;padding:3px 3px 3px 3px;}.elementor-3428 .elementor-element.elementor-element-9e66470{text-align:center;}.elementor-3428 .elementor-element.elementor-element-9e66470 .elementor-heading-title{font-size:1.8rem;}.elementor-3428 .elementor-element.elementor-element-68d673c{--container-widget-width:994px;--container-widget-flex-grow:0;width:var( --container-widget-width, 994px );max-width:994px;font-size:1rem;line-height:1.5em;}}/* Start custom CSS for button, class: .elementor-element-491d7cf */:root {
  --shiny-cta-bg: #e2f0ff !important;                 /* fundo do botão */ 
  --shiny-cta-bg-subtle: #5b63d3!important;          /* borda escura */
  --shiny-cta-fg: #2b3146 !important;                 /* texto */
  --shiny-cta-highlight: #5b63d3!important;          /* luz principal */
  --shiny-cta-highlight-subtle: #5b63d3!important;   /* luz suave */
}

@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: 20%;
  inherits: false;
}

@property --gradient-shine {
  syntax: "<color>";
  initial-value: white;
  inherits: false;
}

/* ---------- BTN CLASS (adicione "btn-style" ao widget/botão) ---------- */

@media only screen and (max-width: 600px) {
  .btn-style.elementor-button,
  .btn-style .elementor-button {
    --animation: gradient-angle linear infinite !important;
    --duration: 3s !important; /* tempo do giro do brilho */
    --shadow-size: 2px !important;
    isolation: isolate !important;
    position: relative !important;
    overflow: hidden !important;
    cursor: pointer !important;
    outline-offset: 4px !important;
    padding: 0.5rem 0.5rem !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: 800ms cubic-bezier(0.25, 1, 0.5, 1) !important;
    transition-property: --gradient-angle-offset, --gradient-percent, --gradient-shine !important;
  }
}

@media only screen and (min-width: 600px) {
  .btn-style.elementor-button,
  .btn-style .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;
    padding: 0.7rem 1.3rem !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: 800ms cubic-bezier(0.25, 1, 0.5, 1) !important;
    transition-property: --gradient-angle-offset, --gradient-percent, --gradient-shine !important;
  }
}

.btn-style.elementor-button::before,
.btn-style.elementor-button::after,
.btn-style.elementor-button span::before,
.btn-style .elementor-button::before,
.btn-style .elementor-button::after,
.btn-style .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;
  z-index: -1 !important;
}

.btn-style.elementor-button::before,
.btn-style .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;
}

.btn-style.elementor-button::after,
.btn-style .elementor-button::after {
  --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;
}

.btn-style.elementor-button span,
.btn-style .elementor-button span {
  z-index: 1 !important;
  position: relative !important;
}

.btn-style.elementor-button span::before,
.btn-style .elementor-button span::before {
  size: calc(100% + 1rem) !important;
  width: 1200px !important;    /* área do brilho interno */
  height: 100px !important;
  box-shadow: inset 0 -1ex 2rem 4px var(--shiny-cta-highlight) !important;
  opacity: 0 !important;
  transition: opacity 1500ms cubic-bezier(0.25, 1, 0.5, 1) !important;
}

.btn-style.elementor-button:hover,
.btn-style.elementor-button:focus-visible,
.btn-style .elementor-button:hover,
.btn-style .elementor-button:focus-visible {
  --gradient-percent: 20% !important;
  --gradient-angle-offset: 95deg !important;
  --gradient-shine: var(--shiny-cta-highlight-subtle) !important;
}

.btn-style.elementor-button:hover span::before,
.btn-style .elementor-button:hover span::before {
  opacity: 1 !important;
}

@keyframes gradient-angle {
  to { --gradient-angle: 360deg; }
}

@keyframes shimmer {
  to { transform: rotate(360deg) !important; }
}

@keyframes breathe {
  50% { transform: scale(1.2) !important; }
}

.btn-style.elementor-button,
.btn-style.elementor-button::before,
.btn-style.elementor-button::after,
.btn-style .elementor-button,
.btn-style .elementor-button::before,
.btn-style .elementor-button::after {
  animation: var(--animation) var(--duration),
             var(--animation) calc(var(--duration) / 0.4) reverse paused !important;
  animation-composition: add !important;
}

.btn-style.elementor-button:hover,
.btn-style.elementor-button:hover::before,
.btn-style.elementor-button:hover::after,
.btn-style .elementor-button:hover,
.btn-style .elementor-button:hover::before,
.btn-style .elementor-button:hover::after {
  animation-play-state: running !important;
}

/* Ícone e texto dentro do botão (compatível com Elementor) */
.btn-style .elementor-button-icon,
.btn-style.elementor-button .elementor-button-icon {
  font-size: 10px !important;
  color: inherit !important;
}

.btn-style .elementor-button-text,
.btn-style.elementor-button .elementor-button-text {
  margin: auto !important;
}

/* HOVER: ícone gira dentro do botão com a classe .btn-style */
.btn-style.elementor-button .elementor-button-icon,
.btn-style .elementor-button .elementor-button-icon {
  transition: transform .5s ease !important;
  transform-origin: 50% 50% !important;
  display: inline-flex !important;
  align-items: center !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9e66470 */.elementor-3428 .elementor-element.elementor-element-9e66470 .gradient-text {

    transition: all 1s;

    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;

    animation: move 2s ease infinite alternate;

    /* gradiente com mais cores da mesma paleta */
    background-image: linear-gradient(
        90deg,
        #6F76D8,
        #7A80E3,
        #8C92F0,
        #7A80E3,
        #3F47B5
    );

    background-size: 400% 100%;
}

@keyframes move {
    0% {
        background-position: 0% 50%;
    }
    100% {
        background-position: 100% 50%;
    }
}/* End custom CSS */