.elementor-11 .elementor-element.elementor-element-cde82c2{--display:flex;--overflow:hidden;--padding-top:110px;--padding-bottom:90px;--padding-left:0px;--padding-right:0px;}.elementor-11 .elementor-element.elementor-element-7cb7ad8{--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;--align-items:center;--gap:48px 60px;--row-gap:48px;--column-gap:60px;--padding-top:0px;--padding-bottom:0px;--padding-left:64px;--padding-right:64px;}.elementor-11 .elementor-element.elementor-element-0802945{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-11 .elementor-element.elementor-element-0802945.e-con{--flex-grow:0;--flex-shrink:0;}.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-11 .elementor-element.elementor-element-35ca3d5{background-color:rgba(255, 255, 255, 0.045);margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 20px) 0px;padding:9px 14px 9px 14px;border-style:solid;border-width:1px 1px 1px 1px;border-color:rgba(148, 184, 236, 0.28);border-radius:999px 999px 999px 999px;font-family:"Poppins", Sans-serif;font-size:0.78rem;font-weight:500;color:rgba(255,255,255,.78);}.elementor-11 .elementor-element.elementor-element-ae1c410{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 18px) 0px;text-align:center;font-family:"Poppins", Sans-serif;font-size:3.6rem;font-weight:400;line-height:1.15em;letter-spacing:0px;color:#ffffff;}.elementor-11 .elementor-element.elementor-element-7000065{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 30px) 0px;text-align:center;font-family:"Poppins", Sans-serif;font-size:1.1rem;font-weight:300;line-height:1.5em;color:rgba(255,255,255,.75);}.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-11 .elementor-element.elementor-element-bfea249 .elementor-button{background-color:rgba(255,255,255,.06);font-family:"Poppins", Sans-serif;font-size:1rem;font-weight:400;fill:#ffffff;color:#ffffff;transition-duration:0.3s;border-style:solid;border-width:1px 1px 1px 1px;border-color:rgba(255,255,255,.3);border-radius:14px 14px 14px 14px;padding:14px 28px 14px 28px;}.elementor-11 .elementor-element.elementor-element-bfea249 .elementor-button:hover, .elementor-11 .elementor-element.elementor-element-bfea249 .elementor-button:focus{background-color:rgba(255,255,255,.12);border-color:rgba(255,255,255,.8);}.elementor-11 .elementor-element.elementor-element-f3b3f87{margin:24px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;font-family:"Poppins", Sans-serif;font-size:0.82rem;color:rgba(255,255,255,.68);}.elementor-11 .elementor-element.elementor-element-1f4e469{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-11 .elementor-element.elementor-element-1f4e469.e-con{--flex-grow:0;--flex-shrink:0;}.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-11 .elementor-element.elementor-element-8821b1e.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-11 .elementor-element.elementor-element-8821b1e{border-radius:12px 12px 12px 12px;}.elementor-11 .elementor-element.elementor-element-8821b1e img{width:100%;}.elementor-11 .elementor-element.elementor-element-6aa9a17{--display:flex;--min-height:90vh;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--overflow:hidden;--padding-top:110px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-11 .elementor-element.elementor-element-4c320ff{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:60px 60px;--row-gap:60px;--column-gap:60px;--padding-top:0px;--padding-bottom:0px;--padding-left:64px;--padding-right:64px;}.elementor-11 .elementor-element.elementor-element-faf3fb8{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-11 .elementor-element.elementor-element-faf3fb8.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-11 .elementor-element.elementor-element-899f7d0{background-color:rgba(255, 255, 255, 0.045);margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 20px) 0px;padding:9px 14px 9px 14px;border-style:solid;border-width:1px 1px 1px 1px;border-color:rgba(148, 184, 236, 0.28);border-radius:999px 999px 999px 999px;font-family:"Poppins", Sans-serif;font-size:0.78rem;font-weight:500;color:rgba(255,255,255,.78);}.elementor-11 .elementor-element.elementor-element-57a914a{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 18px) 0px;font-family:"Poppins", Sans-serif;font-size:3.6rem;font-weight:400;line-height:1.15em;letter-spacing:0px;color:#ffffff;}.elementor-11 .elementor-element.elementor-element-4afebaa{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 30px) 0px;font-family:"Poppins", Sans-serif;font-size:1.1rem;font-weight:300;line-height:1.5em;color:rgba(255,255,255,.75);}.elementor-11 .elementor-element.elementor-element-474e077 .elementor-button{background-color:rgba(255,255,255,.06);font-family:"Poppins", Sans-serif;font-size:1rem;font-weight:400;fill:#ffffff;color:#ffffff;transition-duration:0.3s;border-style:solid;border-width:1px 1px 1px 1px;border-color:rgba(255,255,255,.3);border-radius:14px 14px 14px 14px;padding:14px 28px 14px 28px;}.elementor-11 .elementor-element.elementor-element-474e077 .elementor-button:hover, .elementor-11 .elementor-element.elementor-element-474e077 .elementor-button:focus{background-color:rgba(255,255,255,.12);border-color:rgba(255,255,255,.8);}.elementor-11 .elementor-element.elementor-element-12a1341{margin:24px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;font-family:"Poppins", Sans-serif;font-size:0.82rem;color:rgba(255,255,255,.68);}.elementor-11 .elementor-element.elementor-element-08588f7{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-11 .elementor-element.elementor-element-08588f7.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-11 .elementor-element.elementor-element-e828a7f.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-11 .elementor-element.elementor-element-e828a7f img{width:100%;}.elementor-11 .elementor-element.elementor-element-31fdbfd{--display:flex;}.elementor-11 .elementor-element.elementor-element-b41b6ab{--display:flex;}.elementor-11 .elementor-element.elementor-element-94dd9e1{--display:flex;}.elementor-11 .elementor-element.elementor-element-96c1b2e{--display:flex;}.elementor-11 .elementor-element.elementor-element-cd5b98a{--display:flex;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-11 .elementor-element.elementor-element-ae1c410{font-size:2.8rem;}.elementor-11 .elementor-element.elementor-element-7000065{font-size:1.05rem;}.elementor-11 .elementor-element.elementor-element-57a914a{font-size:2.8rem;}.elementor-11 .elementor-element.elementor-element-4afebaa{font-size:1.05rem;}}@media(max-width:767px){.elementor-11 .elementor-element.elementor-element-7cb7ad8{--gap:36px 36px;--row-gap:36px;--column-gap:36px;--padding-top:0px;--padding-bottom:0px;--padding-left:28px;--padding-right:28px;}.elementor-11 .elementor-element.elementor-element-0802945{--width:100%;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-11 .elementor-element.elementor-element-35ca3d5{text-align:center;}.elementor-11 .elementor-element.elementor-element-ae1c410{text-align:center;font-size:2rem;}.elementor-11 .elementor-element.elementor-element-7000065{text-align:center;font-size:1rem;}.elementor-11 .elementor-element.elementor-element-1f4e469{--width:100%;}.elementor-11 .elementor-element.elementor-element-4c320ff{--gap:36px 36px;--row-gap:36px;--column-gap:36px;--padding-top:0px;--padding-bottom:0px;--padding-left:28px;--padding-right:28px;}.elementor-11 .elementor-element.elementor-element-faf3fb8{--width:100%;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-11 .elementor-element.elementor-element-899f7d0{text-align:center;}.elementor-11 .elementor-element.elementor-element-57a914a{text-align:center;font-size:2rem;}.elementor-11 .elementor-element.elementor-element-4afebaa{text-align:center;font-size:1rem;}}@media(min-width:768px){.elementor-11 .elementor-element.elementor-element-0802945{--width:60%;}.elementor-11 .elementor-element.elementor-element-1f4e469{--width:100%;}.elementor-11 .elementor-element.elementor-element-faf3fb8{--width:60%;}.elementor-11 .elementor-element.elementor-element-08588f7{--width:38%;}}/* Start custom CSS for text-editor, class: .elementor-element-35ca3d5 */.elementor-11 .elementor-element.elementor-element-35ca3d5 {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    gap: 10px;
}
.elementor-11 .elementor-element.elementor-element-35ca3d5 p { margin: 0; display: inline; }
.elementor-11 .elementor-element.elementor-element-35ca3d5::before {
    content: '';
    width: 8px; height: 8px; border-radius: 50%;
    background: #4ade80;
    box-shadow: 0 0 0 6px rgba(74, 222, 128, 0.12);
    flex-shrink: 0;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-ae1c410 */.elementor-11 .elementor-element.elementor-element-ae1c410 { max-width: 640px; margin-left: auto; margin-right: auto; }
.elementor-11 .elementor-element.elementor-element-ae1c410 p { margin: 0; display: inline; }
.elementor-11 .elementor-element.elementor-element-ae1c410 .jo-headline-gradient {
    font-weight: 700;
    background: linear-gradient(135deg, #2f5fe0 0%, #6fa8ff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
    display: inline-block;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-7000065 */.elementor-11 .elementor-element.elementor-element-7000065 {
    max-width: 46ch;
}
@media (max-width: 900px) {
    .elementor-11 .elementor-element.elementor-element-7000065 { max-width: 90%; margin-left: auto; margin-right: auto; }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-bfea249 */@property --jo-cta-ang { syntax: '<angle>'; initial-value: 0deg; inherits: false; }

/* ===== Botao "orbita" (cor/brilho/animacao) -- MESMO tamanho/posicao/peso de sempre ===== */
.elementor-11 .elementor-element.elementor-element-bfea249 .elementor-button {
    position: relative;
    overflow: hidden;
    --jo-a: #2f5fe0;
    --jo-b: #6fa8ff;
    --jo-deep: #1c3fae;
    background-color: transparent !important;
    background-image:
        linear-gradient(180deg, rgba(255,255,255,.22), rgba(255,255,255,.05) 40%, transparent 60%),
        linear-gradient(135deg, rgba(255,255,255,.10), transparent 50%, rgba(0,0,0,.10)),
        linear-gradient(135deg, var(--jo-b), var(--jo-deep), var(--jo-b)) !important;
    background-size: 100% 100%, 100% 100%, 220% 220% !important;
    background-position: 0% 0%, 0% 0%, 0% 50%;
    border-color: transparent !important;
    box-shadow:
        inset 0 1px 1px rgba(255,255,255,.30), inset 0 -1px 1px rgba(0,0,0,.16),
        0 6px 18px rgba(47,95,224,.30), 0 16px 40px rgba(47,95,224,.22);
    transition: filter .35s cubic-bezier(.22,1,.36,1), transform .35s cubic-bezier(.22,1,.36,1);
    animation: jo-cta-bg 6s ease-in-out infinite, jo-cta-glow 3.4s ease-in-out infinite;
}
@keyframes jo-cta-bg {
    0%, 100% { background-position: 0% 0%, 0% 0%, 0% 50%; }
    50%      { background-position: 0% 0%, 0% 0%, 100% 50%; }
}
@keyframes jo-cta-glow {
    0%, 100% {
        box-shadow:
            inset 0 1px 1px rgba(255,255,255,.30), inset 0 -1px 1px rgba(0,0,0,.16),
            0 6px 18px rgba(47,95,224,.30), 0 16px 40px rgba(47,95,224,.22);
    }
    50% {
        box-shadow:
            inset 0 1px 1px rgba(255,255,255,.30), inset 0 -1px 1px rgba(0,0,0,.16),
            0 8px 22px rgba(47,95,224,.40), 0 20px 50px rgba(47,95,224,.32);
    }
}
.elementor-11 .elementor-element.elementor-element-bfea249:hover .elementor-button {
    transform: translateY(-2px) scale(1.02);
    filter: brightness(1.06);
}
.elementor-11 .elementor-element.elementor-element-bfea249:active .elementor-button {
    transform: translateY(1px) scale(.99);
    transition-duration: .15s;
}

/* borda com gradiente conico girando, presa exatamente na borda do botao (sem vazar, sem redimensionar nada) */
.elementor-11 .elementor-element.elementor-element-bfea249 .elementor-button::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: 14px;
    padding: 2px;
    background: conic-gradient(from var(--jo-cta-ang, 0deg),
        var(--jo-b), var(--jo-a), rgba(47,95,224,.06), rgba(111,168,255,.05),
        rgba(47,95,224,.06), var(--jo-a), var(--jo-b));
    animation: jo-cta-spin 3s linear infinite;
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
            mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
            mask-composite: exclude;
    opacity: .7;
    transition: opacity .5s cubic-bezier(.22,1,.36,1);
    pointer-events: none;
}
.elementor-11 .elementor-element.elementor-element-bfea249:hover .elementor-button::before { opacity: 1; }
@keyframes jo-cta-spin { to { --jo-cta-ang: 360deg; } }

/* brilho que atravessa o botao (sweep), preso dentro da pilula existente */
.elementor-11 .elementor-element.elementor-element-bfea249 .elementor-button::after {
    content: '';
    position: absolute;
    top: 0;
    left: -170%;
    z-index: 2;
    width: 70%;
    height: 100%;
    pointer-events: none;
    background: linear-gradient(105deg, transparent 28%, rgba(255,255,255,.16) 46%,
        rgba(255,255,255,.30) 50%, rgba(255,255,255,.16) 54%, transparent 72%);
    transform: skewX(-18deg);
    animation: jo-cta-sweep 3.6s ease-in-out infinite;
}
@keyframes jo-cta-sweep {
    0%   { left: -170%; opacity: 0; }
    8%   { opacity: 1; }
    46%  { left: 170%; opacity: 1; }
    47%  { opacity: 0; }
    100% { left: -170%; opacity: 0; }
}

.elementor-11 .elementor-element.elementor-element-bfea249 .elementor-button-content-wrapper,
.elementor-11 .elementor-element.elementor-element-bfea249 .elementor-button-text {
    position: relative;
    z-index: 3;
}

@media (prefers-reduced-motion: reduce) {
    .elementor-11 .elementor-element.elementor-element-bfea249 .elementor-button,
    .elementor-11 .elementor-element.elementor-element-bfea249 .elementor-button::before,
    .elementor-11 .elementor-element.elementor-element-bfea249 .elementor-button::after {
        animation: none !important;
    }
    .elementor-11 .elementor-element.elementor-element-bfea249 .elementor-button::after { opacity: 0; }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-f3b3f87 */@media (min-width: 768px) {
    .elementor-11 .elementor-element.elementor-element-f3b3f87 {
        display: flex;
        flex-wrap: wrap;
        gap: 10px 18px;
        justify-content: center;
    }
}
.elementor-11 .elementor-element.elementor-element-f3b3f87 span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}
.elementor-11 .elementor-element.elementor-element-f3b3f87 span::before {
    content: '';
    width: 6px; height: 6px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2f5fe0 0%, #6fa8ff 100%);
    flex-shrink: 0;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0802945 */.elementor-11 .elementor-element.elementor-element-0802945 {
    max-width: 760px;
    min-width: 0;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1f4e469 */.elementor-11 .elementor-element.elementor-element-1f4e469 {
    max-width: 960px;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-cde82c2 */.elementor-11 .elementor-element.elementor-element-cde82c2 {
    background:
        radial-gradient(ellipse 40% 80% at -5% 40%, rgba(36, 42, 68, 0.35) 0%, rgba(36, 42, 68, 0) 70%),
        radial-gradient(ellipse 50% 90% at 105% 70%, rgba(31, 55, 98, 0.32) 0%, rgba(31, 55, 98, 0) 70%),
        #05070d;
}
.elementor-11 .elementor-element.elementor-element-cde82c2::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.05) 0%, transparent 34%),
        repeating-linear-gradient(90deg, rgba(255,255,255,0.035) 0 1px, transparent 1px 110px);
    -webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,0.9), transparent 46%);
    mask-image: linear-gradient(180deg, rgba(0,0,0,0.9), transparent 46%);
    opacity: 0.5;
}
html, body { background-color: #05070d !important; }/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-899f7d0 */.elementor-11 .elementor-element.elementor-element-899f7d0 {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    gap: 10px;
}
.elementor-11 .elementor-element.elementor-element-899f7d0 p { margin: 0; display: inline; }
.elementor-11 .elementor-element.elementor-element-899f7d0::before {
    content: '';
    width: 8px; height: 8px; border-radius: 50%;
    background: #4ade80;
    box-shadow: 0 0 0 6px rgba(74, 222, 128, 0.12);
    flex-shrink: 0;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-57a914a */.elementor-11 .elementor-element.elementor-element-57a914a p { margin: 0; display: inline; }
.elementor-11 .elementor-element.elementor-element-57a914a .jo-headline-gradient {
    font-weight: 700;
    background: linear-gradient(135deg, #2f5fe0 0%, #6fa8ff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
    display: inline-block;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-4afebaa */.elementor-11 .elementor-element.elementor-element-4afebaa {
    max-width: 46ch;
}
@media (max-width: 900px) {
    .elementor-11 .elementor-element.elementor-element-4afebaa { max-width: 90%; margin-left: auto; margin-right: auto; }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-474e077 */@property --jo-cta-ang { syntax: '<angle>'; initial-value: 0deg; inherits: false; }

/* ===== Botao "orbita" (cor/brilho/animacao) -- MESMO tamanho/posicao/peso de sempre ===== */
.elementor-11 .elementor-element.elementor-element-474e077 .elementor-button {
    position: relative;
    overflow: hidden;
    --jo-a: #2f5fe0;
    --jo-b: #6fa8ff;
    --jo-deep: #1c3fae;
    background-color: transparent !important;
    background-image:
        linear-gradient(180deg, rgba(255,255,255,.22), rgba(255,255,255,.05) 40%, transparent 60%),
        linear-gradient(135deg, rgba(255,255,255,.10), transparent 50%, rgba(0,0,0,.10)),
        linear-gradient(135deg, var(--jo-b), var(--jo-deep), var(--jo-b)) !important;
    background-size: 100% 100%, 100% 100%, 220% 220% !important;
    background-position: 0% 0%, 0% 0%, 0% 50%;
    border-color: transparent !important;
    box-shadow:
        inset 0 1px 1px rgba(255,255,255,.30), inset 0 -1px 1px rgba(0,0,0,.16),
        0 6px 18px rgba(47,95,224,.30), 0 16px 40px rgba(47,95,224,.22);
    transition: filter .35s cubic-bezier(.22,1,.36,1), transform .35s cubic-bezier(.22,1,.36,1);
    animation: jo-cta-bg 6s ease-in-out infinite, jo-cta-glow 3.4s ease-in-out infinite;
}
@keyframes jo-cta-bg {
    0%, 100% { background-position: 0% 0%, 0% 0%, 0% 50%; }
    50%      { background-position: 0% 0%, 0% 0%, 100% 50%; }
}
@keyframes jo-cta-glow {
    0%, 100% {
        box-shadow:
            inset 0 1px 1px rgba(255,255,255,.30), inset 0 -1px 1px rgba(0,0,0,.16),
            0 6px 18px rgba(47,95,224,.30), 0 16px 40px rgba(47,95,224,.22);
    }
    50% {
        box-shadow:
            inset 0 1px 1px rgba(255,255,255,.30), inset 0 -1px 1px rgba(0,0,0,.16),
            0 8px 22px rgba(47,95,224,.40), 0 20px 50px rgba(47,95,224,.32);
    }
}
.elementor-11 .elementor-element.elementor-element-474e077:hover .elementor-button {
    transform: translateY(-2px) scale(1.02);
    filter: brightness(1.06);
}
.elementor-11 .elementor-element.elementor-element-474e077:active .elementor-button {
    transform: translateY(1px) scale(.99);
    transition-duration: .15s;
}

/* borda com gradiente conico girando, presa exatamente na borda do botao (sem vazar, sem redimensionar nada) */
.elementor-11 .elementor-element.elementor-element-474e077 .elementor-button::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: 14px;
    padding: 2px;
    background: conic-gradient(from var(--jo-cta-ang, 0deg),
        var(--jo-b), var(--jo-a), rgba(47,95,224,.06), rgba(111,168,255,.05),
        rgba(47,95,224,.06), var(--jo-a), var(--jo-b));
    animation: jo-cta-spin 3s linear infinite;
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
            mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
            mask-composite: exclude;
    opacity: .7;
    transition: opacity .5s cubic-bezier(.22,1,.36,1);
    pointer-events: none;
}
.elementor-11 .elementor-element.elementor-element-474e077:hover .elementor-button::before { opacity: 1; }
@keyframes jo-cta-spin { to { --jo-cta-ang: 360deg; } }

/* brilho que atravessa o botao (sweep), preso dentro da pilula existente */
.elementor-11 .elementor-element.elementor-element-474e077 .elementor-button::after {
    content: '';
    position: absolute;
    top: 0;
    left: -170%;
    z-index: 2;
    width: 70%;
    height: 100%;
    pointer-events: none;
    background: linear-gradient(105deg, transparent 28%, rgba(255,255,255,.16) 46%,
        rgba(255,255,255,.30) 50%, rgba(255,255,255,.16) 54%, transparent 72%);
    transform: skewX(-18deg);
    animation: jo-cta-sweep 3.6s ease-in-out infinite;
}
@keyframes jo-cta-sweep {
    0%   { left: -170%; opacity: 0; }
    8%   { opacity: 1; }
    46%  { left: 170%; opacity: 1; }
    47%  { opacity: 0; }
    100% { left: -170%; opacity: 0; }
}

.elementor-11 .elementor-element.elementor-element-474e077 .elementor-button-content-wrapper,
.elementor-11 .elementor-element.elementor-element-474e077 .elementor-button-text {
    position: relative;
    z-index: 3;
}

@media (prefers-reduced-motion: reduce) {
    .elementor-11 .elementor-element.elementor-element-474e077 .elementor-button,
    .elementor-11 .elementor-element.elementor-element-474e077 .elementor-button::before,
    .elementor-11 .elementor-element.elementor-element-474e077 .elementor-button::after {
        animation: none !important;
    }
    .elementor-11 .elementor-element.elementor-element-474e077 .elementor-button::after { opacity: 0; }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-12a1341 */@media (min-width: 768px) {
    .elementor-11 .elementor-element.elementor-element-12a1341 {
        display: flex;
        flex-wrap: wrap;
        gap: 10px 18px;
    }
}
.elementor-11 .elementor-element.elementor-element-12a1341 span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}
.elementor-11 .elementor-element.elementor-element-12a1341 span::before {
    content: '';
    width: 6px; height: 6px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2f5fe0 0%, #6fa8ff 100%);
    flex-shrink: 0;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-faf3fb8 */.elementor-11 .elementor-element.elementor-element-faf3fb8 {
    max-width: 640px;
    min-width: 0;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-08588f7 */.elementor-11 .elementor-element.elementor-element-08588f7::before {
    content: '';
    position: absolute;
    z-index: 0;
    width: 520px; height: 520px;
    top: 4%; left: 50%;
    transform: translateX(-50%);
    border-radius: 50%;
    background: radial-gradient(circle at 42% 38%, rgba(61,90,143,.35) 0%, rgba(61,90,143,0) 55%);
    filter: blur(34px);
    pointer-events: none;
}
@media (max-width: 900px) {
    .elementor-11 .elementor-element.elementor-element-08588f7::before { width: 300px; height: 300px; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6aa9a17 */.elementor-11 .elementor-element.elementor-element-6aa9a17 {
    background:
        radial-gradient(ellipse 40% 80% at -5% 40%, rgba(36, 42, 68, 0.35) 0%, rgba(36, 42, 68, 0) 70%),
        radial-gradient(ellipse 50% 90% at 105% 70%, rgba(31, 55, 98, 0.32) 0%, rgba(31, 55, 98, 0) 70%),
        radial-gradient(ellipse 60% 60% at 50% 90%, rgba(61, 90, 153, 0.14) 0%, transparent 70%),
        #05070d;
}
.elementor-11 .elementor-element.elementor-element-6aa9a17::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.05) 0%, transparent 34%),
        repeating-linear-gradient(90deg, rgba(255,255,255,0.035) 0 1px, transparent 1px 110px);
    -webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,0.9), transparent 86%);
    mask-image: linear-gradient(180deg, rgba(0,0,0,0.9), transparent 86%);
    opacity: 0.5;
}
html, body { background-color: #05070d !important; }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-31fdbfd */.elementor-11 .elementor-element.elementor-element-31fdbfd {
    width: 100%;
    background-color: #05070d;
    padding: 16px 0;
    overflow: hidden;
    position: relative;
    border-top: 1px solid rgba(255,255,255,.05);
    border-bottom: 1px solid rgba(255,255,255,.05);
}
.elementor-11 .elementor-element.elementor-element-31fdbfd::before, .elementor-11 .elementor-element.elementor-element-31fdbfd::after {
    content: '';
    position: absolute;
    top: 0;
    width: 12vw;
    height: 100%;
    z-index: 2;
    pointer-events: none;
}
.elementor-11 .elementor-element.elementor-element-31fdbfd::before { left: 0; background: linear-gradient(to right, #05070d 10%, transparent 100%); }
.elementor-11 .elementor-element.elementor-element-31fdbfd::after  { right: 0; background: linear-gradient(to left, #05070d 10%, transparent 100%); }

.elementor-11 .elementor-element.elementor-element-31fdbfd .jo-marquee-content {
    display: inline-flex;
    align-items: center;
    gap: 48px;
    padding-left: 48px;
    white-space: nowrap;
    animation: jo-scroll-marquee 30s linear infinite;
    font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
}
.elementor-11 .elementor-element.elementor-element-31fdbfd .jo-marquee-item {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    font-size: .95rem;
    font-weight: 500;
    color: rgba(255,255,255,.55);
    letter-spacing: .3px;
}
.elementor-11 .elementor-element.elementor-element-31fdbfd .jo-marquee-item svg {
    color: #fff;
    flex-shrink: 0;
}
@keyframes jo-scroll-marquee {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce) {
    .elementor-11 .elementor-element.elementor-element-31fdbfd .jo-marquee-content { animation: none; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b41b6ab */.elementor-11 .elementor-element.elementor-element-b41b6ab {
    width: 100%;
    padding: 90px 64px;
    position: relative;
    overflow: hidden;
    background-color: #E8EAEF;
}

/* transição suave do escuro (banner/faixa) pro cinza claro desta seção */
.elementor-11 .elementor-element.elementor-element-b41b6ab::before {
    content: '';
    position: absolute;
    top: -80px;
    left: 0; right: 0;
    height: 80px;
    background: linear-gradient(to bottom, #05070d 0%, #05070d 30%, #E8EAEF 100%);
    pointer-events: none;
    z-index: 1;
}

/* glow azul suave de ambientação */
.elementor-11 .elementor-element.elementor-element-b41b6ab::after {
    content: '';
    position: absolute;
    top: 0; right: -10%;
    width: 55%; height: 100%;
    background: radial-gradient(ellipse 50% 60% at 80% 20%, rgba(47, 95, 224, 0.06) 0%, transparent 70%);
    pointer-events: none;
    z-index: 0;
}

.elementor-11 .elementor-element.elementor-element-b41b6ab .jo-feature-container {
    position: relative;
    z-index: 2;
    max-width: 1200px;
    margin: 0 auto;
    width: 100%;
}
.elementor-11 .elementor-element.elementor-element-b41b6ab .jo-feature-container > .e-con-inner {
    display: grid !important;
    grid-template-columns: 1.2fr 1fr !important;
    gap: 60px !important;
    align-items: center !important;
}

/* ---- coluna de texto: cartão branco sobre o cinza ---- */
.elementor-11 .elementor-element.elementor-element-b41b6ab .jo-feature-text {
    background-color: #FFFFFF !important;
    padding: 52px 56px !important;
    border-radius: 28px !important;
    border: 1px solid rgba(0,0,0,.04) !important;
}
.elementor-11 .elementor-element.elementor-element-b41b6ab .jo-feature-text > .e-con-inner {
    gap: 0 !important;
}

.elementor-11 .elementor-element.elementor-element-b41b6ab .jo-feature-badge {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 16px;
    border-radius: 100px;
    background: linear-gradient(135deg, #2f5fe0 0%, #6fa8ff 100%);
    color: #fff;
    font-size: .75rem;
    font-weight: 600;
    letter-spacing: .04em;
    width: fit-content;
    margin: 0 0 28px;
}
.elementor-11 .elementor-element.elementor-element-b41b6ab .jo-feature-badge svg { flex-shrink: 0; }
.elementor-11 .elementor-element.elementor-element-b41b6ab .jo-feature-badge p { margin: 0; display: contents; }

.elementor-11 .elementor-element.elementor-element-b41b6ab .jo-feature-title {
    font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    font-size: 2.3rem;
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -.02em;
    color: #12172a;
    margin: 0 0 18px;
}
.elementor-11 .elementor-element.elementor-element-b41b6ab .jo-feature-title p { margin: 0; }

.elementor-11 .elementor-element.elementor-element-b41b6ab .jo-feature-desc {
    font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    font-size: .95rem;
    color: #6b6b80;
    line-height: 1.75;
    margin: 0 0 32px;
}
.elementor-11 .elementor-element.elementor-element-b41b6ab .jo-feature-desc p { margin: 0; }

.elementor-11 .elementor-element.elementor-element-b41b6ab .jo-feature-pills {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.elementor-11 .elementor-element.elementor-element-b41b6ab .jo-feature-pills span {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 20px;
    border-radius: 100px;
    border: 1.5px solid rgba(0,0,0,.12);
    background: rgba(232,234,239,.5);
    color: #2d2d4e;
    font-size: .85rem;
    font-weight: 500;
    width: fit-content;
    position: relative;
    padding-left: 44px;
}
.elementor-11 .elementor-element.elementor-element-b41b6ab .jo-feature-pills span::before {
    content: '';
    position: absolute;
    left: 20px; top: 50%;
    transform: translateY(-50%);
    width: 18px; height: 18px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2f5fe0 0%, #6fa8ff 100%);
    flex-shrink: 0;
}
.elementor-11 .elementor-element.elementor-element-b41b6ab .jo-feature-pills span::after {
    content: '';
    position: absolute;
    left: 26.5px; top: 50%;
    width: 5px; height: 8px;
    border: solid #fff;
    border-width: 0 1.5px 1.5px 0;
    transform: translateY(-65%) rotate(45deg);
    pointer-events: none;
}

/* ---- coluna de mídia: placeholder pontilhado ---- */
.elementor-11 .elementor-element.elementor-element-b41b6ab .jo-feature-media { display: flex; align-items: center; justify-content: center; }
.elementor-11 .elementor-element.elementor-element-b41b6ab .jo-feature-media-placeholder {
    width: 100%;
    aspect-ratio: 4 / 3;
    border-radius: 24px;
    border: 1.5px dashed rgba(47, 95, 224, .3);
    background: rgba(255,255,255,.5);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 24px;
    color: rgba(0,0,0,.4);
    font-size: .85rem;
    font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    line-height: 1.5;
}

@media (max-width: 900px) {
    .elementor-11 .elementor-element.elementor-element-b41b6ab { padding: 60px 28px; }
    .elementor-11 .elementor-element.elementor-element-b41b6ab .jo-feature-container > .e-con-inner {
        grid-template-columns: 1fr !important;
        gap: 36px !important;
    }
    .elementor-11 .elementor-element.elementor-element-b41b6ab .jo-feature-text {
        padding: 36px 28px !important;
    }
    .elementor-11 .elementor-element.elementor-element-b41b6ab .jo-feature-title { font-size: 1.7rem; }
}/* End custom CSS */