.elementor-2746 .elementor-element.elementor-element-adfe68b{--display:flex;}.elementor-2746 .elementor-element.elementor-element-3684520{width:100%;max-width:100%;}/* Start custom CSS for html, class: .elementor-element-3684520 *//* ============================================================
   FULL WIDTH REAL + REMOVE ESPAÇO DO TOPO (ADMIN BAR / TEMA)
   ============================================================ */

/* remove header/footer/admin bar */
header,
footer,
#masthead,
.site-header,
.site-footer,
.ast-header-separate,
.ast-footer-copyright,
#wpadminbar,
header.ast-header-break-point,
.ast-desktop,
.main-header-bar-wrap,
.main-header-bar {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    visibility: hidden !important;
    opacity: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* remove offset da admin bar e qualquer margem do tema */
html,
body {
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
    width: 100% !important;
    max-width: 100% !important;
    background: transparent !important;
}

html {
    margin-top: 0 !important;
}

body.admin-bar,
body.logged-in {
    margin-top: 0 !important;
    padding-top: 0 !important;
    position: relative !important;
    top: -32px !important;
}

@media screen and (max-width: 782px) {
    body.admin-bar,
    body.logged-in {
        top: -46px !important;
    }
}

/* remove wrappers do Astra / Elementor */
body,
#page,
.site,
.site-content,
#content,
#primary,
.ast-container,
.ast-separate-container,
.ast-separate-container #primary,
.ast-plain-container,
.ast-page-builder-template,
.entry-content,
.elementor,
.elementor-section-wrap,
.elementor-location-single,
.elementor-top-section,
.elementor-section,
.elementor-container,
.elementor-widget-wrap,
article {
    margin: 0 !important;
    padding: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
    background: transparent !important;
    box-shadow: none !important;
}

#page,
.ast-plain-container,
.ast-page-builder-template {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* ============================================================
   CORREÇÃO: REMOVE ESPAÇO BRANCO DO TOPO (padding-top do e-con-inner)
   ============================================================ */

.elementor-element-adfe68b,
.elementor-element-adfe68b > .e-con-inner,
.e-con > .e-con-inner {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* ============================================================
   SEÇÃO OCUPA A TELA TODA
   ============================================================ */

.elementor-2746 .elementor-element.elementor-element-3684520 {
    width: 100vw !important;
    max-width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* conteúdo interno com respiro */
.elementor-2746 .elementor-element.elementor-element-3684520 > .elementor-container,
.elementor-2746 .elementor-element.elementor-element-3684520 .container,
.elementor-2746 .elementor-element.elementor-element-3684520 .inner,
.elementor-2746 .elementor-element.elementor-element-3684520 .wrap {
    width: 100% !important;
    max-width: 1280px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: clamp(24px, 4vw, 56px) !important;
    padding-right: clamp(24px, 4vw, 56px) !important;
    box-sizing: border-box !important;
}

/* ============================================================
   HERO
   ============================================================ */

.elementor-2746 .elementor-element.elementor-element-3684520 .hero {
    margin-top: 0 !important;
    padding-top: clamp(96px, 9vw, 132px) !important;
    padding-bottom: clamp(72px, 7vw, 108px) !important;
    min-height: min(92vh, 980px) !important;
    display: flex !important;
    align-items: center !important;
    overflow: hidden !important;
    position: relative !important;
    background:
        radial-gradient(ellipse 80% 60% at 72% 8%, rgba(99,84,249,.58) 0%, transparent 65%),
        radial-gradient(ellipse 55% 55% at 8% 88%, rgba(0,254,202,.12) 0%, transparent 60%),
        linear-gradient(180deg, #3b1192 0%, #2d006b 52%, #2a0063 100%) !important;
}

.elementor-2746 .elementor-element.elementor-element-3684520 .hero::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(circle at 18% 18%, rgba(255,255,255,.05) 0%, transparent 26%),
        radial-gradient(circle at 82% 22%, rgba(255,255,255,.06) 0%, transparent 22%);
}

.elementor-2746 .elementor-element.elementor-element-3684520 .hero-grid {
    position: relative;
    z-index: 2;
    display: grid !important;
    grid-template-columns: minmax(0,1.02fr) minmax(420px,.98fr) !important;
    gap: clamp(36px, 5vw, 84px) !important;
    align-items: center !important;
}

.elementor-2746 .elementor-element.elementor-element-3684520 .hero-grid > div:first-child {
    max-width: 640px !important;
}

.elementor-2746 .elementor-element.elementor-element-3684520 .hero h1 {
    margin: 0 0 22px 0 !important;
    max-width: 11ch !important;
    line-height: .98 !important;
    letter-spacing: -.035em !important;
}

.elementor-2746 .elementor-element.elementor-element-3684520 .hero-sub {
    max-width: 560px !important;
    margin-bottom: 30px !important;
    color: rgba(255,255,255,.74) !important;
    line-height: 1.78 !important;
}

.elementor-2746 .elementor-element.elementor-element-3684520 .hero-visual {
    position: relative !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}

.elementor-2746 .elementor-element.elementor-element-3684520 .hero-visual::before {
    content: "";
    position: absolute;
    inset: -18px;
    border-radius: 34px;
    background: linear-gradient(135deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
    box-shadow:
        0 30px 80px rgba(14,0,48,.34),
        inset 0 1px 0 rgba(255,255,255,.08);
}

.elementor-2746 .elementor-element.elementor-element-3684520 .hero-visual img {
    position: relative;
    z-index: 1;
    width: 100% !important;
    max-width: 590px !important;
    height: auto !important;
    filter: drop-shadow(0 24px 40px rgba(0,0,0,.24));
}

/* ============================================================
   LOGOS STRIP
   ============================================================ */

.elementor-2746 .elementor-element.elementor-element-3684520 .logos-strip,
.elementor-2746 .elementor-element.elementor-element-3684520 .logos-inner,
.elementor-2746 .elementor-element.elementor-element-3684520 .logos-track-wrap {
    background: #fff !important;
}

.elementor-2746 .elementor-element.elementor-element-3684520 .logos-header {
    background: #fff !important;
}

.elementor-2746 .elementor-element.elementor-element-3684520 .logos-title {
    color: #5a5470 !important;
}

.elementor-2746 .elementor-element.elementor-element-3684520 .logos-count {
    color: #6354f9 !important;
}

.elementor-2746 .elementor-element.elementor-element-3684520 .logos-line {
    background: rgba(99, 84, 249, .15) !important;
}

.elementor-2746 .elementor-element.elementor-element-3684520 .logos-track-wrap::before {
    background: linear-gradient(90deg, #fff, transparent) !important;
}

.elementor-2746 .elementor-element.elementor-element-3684520 .logos-track-wrap::after {
    background: linear-gradient(-90deg, #fff, transparent) !important;
}

.elementor-2746 .elementor-element.elementor-element-3684520 .logos-track {
    gap: 65px !important;
}

.elementor-2746 .elementor-element.elementor-element-3684520 .logos-track img {
    height: 70px !important;
    opacity: .55 !important;
    filter: grayscale(100%) contrast(1.05) !important;
}

/* ============================================================
   VÍDEO / BOTÕES
   ============================================================ */

.elementor-2746 .elementor-element.elementor-element-3684520 .case-video,
.elementor-2746 .elementor-element.elementor-element-3684520 .case-video img,
.elementor-2746 .elementor-element.elementor-element-3684520 .case-video iframe,
.elementor-2746 .elementor-element.elementor-element-3684520 .elementor-video-wrapper {
    border-radius: 40px !important;
    overflow: hidden !important;
    box-shadow: 0 20px 50px rgba(45,0,107,.1) !important;
}

.elementor-2746 .elementor-element.elementor-element-3684520 .btn-hero,
.elementor-2746 .elementor-element.elementor-element-3684520 .elementor-button,
.elementor-2746 .elementor-element.elementor-element-3684520 button {
    transition: all .3s ease !important;
}

.elementor-2746 .elementor-element.elementor-element-3684520 .btn-hero:hover,
.elementor-2746 .elementor-element.elementor-element-3684520 .elementor-button:hover,
.elementor-2746 .elementor-element.elementor-element-3684520 button:hover {
    transform: translateY(-2px) !important;
}

/* ============================================================
   RESPONSIVO
   ============================================================ */

@media (max-width: 1024px) {
    .elementor-2746 .elementor-element.elementor-element-3684520 > .elementor-container,
    .elementor-2746 .elementor-element.elementor-element-3684520 .container,
    .elementor-2746 .elementor-element.elementor-element-3684520 .inner,
    .elementor-2746 .elementor-element.elementor-element-3684520 .wrap {
        padding-left: 32px !important;
        padding-right: 32px !important;
    }

    .elementor-2746 .elementor-element.elementor-element-3684520 .hero {
        min-height: auto !important;
        padding-top: 104px !important;
        padding-bottom: 72px !important;
    }

    .elementor-2746 .elementor-element.elementor-element-3684520 .hero-grid {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
    }

    .elementor-2746 .elementor-element.elementor-element-3684520 .hero h1,
    .elementor-2746 .elementor-element.elementor-element-3684520 .hero-sub,
    .elementor-2746 .elementor-element.elementor-element-3684520 .hero-grid > div:first-child {
        max-width: 100% !important;
    }

    .elementor-2746 .elementor-element.elementor-element-3684520 .hero-visual img {
        max-width: 540px !important;
        margin: 0 auto !important;
    }
}

@media (max-width: 767px) {
    .elementor-2746 .elementor-element.elementor-element-3684520 > .elementor-container,
    .elementor-2746 .elementor-element.elementor-element-3684520 .container,
    .elementor-2746 .elementor-element.elementor-element-3684520 .inner,
    .elementor-2746 .elementor-element.elementor-element-3684520 .wrap {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    .elementor-2746 .elementor-element.elementor-element-3684520 .hero {
        padding-top: 88px !important;
        padding-bottom: 56px !important;
    }

    .elementor-2746 .elementor-element.elementor-element-3684520 .hero h1 {
        max-width: 100% !important;
        font-size: clamp(34px, 10vw, 48px) !important;
    }

    .elementor-2746 .elementor-element.elementor-element-3684520 .hero-visual {
        display: none !important;
    }

    .elementor-2746 .elementor-element.elementor-element-3684520 .logos-track {
        gap: 40px !important;
    }

    .elementor-2746 .elementor-element.elementor-element-3684520 .logos-track img {
        height: 32px !important;
    }
}

/* ============================================================
   OCULTAR WIDGET DE CHAT (e-contact-buttons) NA PÁGINA 2746
   ============================================================ */

.page-id-2746 [class*="e-contact-button"],
.page-id-2746 [class*="e-contact-buttons"],
.page-id-2746 [id*="e-contact-button"],
.page-id-2746 .joinchat,
.page-id-2746 .joinchat__button,
.page-id-2746 .joinchat__ball,
.page-id-2746 .joinchat__chat,
.page-id-2746 #joinchat,
.page-id-2746 [id^="joinchat"],
.page-id-2746 [class^="joinchat"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    z-index: -9999 !important;
}

/* ============================================================
   BOTÃO FLUTUANTE WHATSAPP — edunext
   ============================================================ */

/* Botão: fundo teal + ícone roxo escuro */
#wpp-btn {
    background: #00feca !important;
    box-shadow: 0 6px 24px rgba(0,254,202,.45), 0 0 0 0 rgba(0,254,202,.4) !important;
}

#wpp-btn:hover {
    transform: scale(1.08) !important;
    box-shadow: 0 10px 32px rgba(0,254,202,.55), 0 0 0 10px rgba(0,254,202,.1) !important;
}

#wpp-btn svg {
    fill: #2d006b !important;
}

/* Pulso na cor teal */
@keyframes wpp-pulse {
    0%   { box-shadow: 0 6px 24px rgba(0,254,202,.45), 0 0 0 0 rgba(0,254,202,.4); }
    70%  { box-shadow: 0 6px 24px rgba(0,254,202,.45), 0 0 0 14px rgba(0,254,202,0); }
    100% { box-shadow: 0 6px 24px rgba(0,254,202,.45), 0 0 0 0 rgba(0,254,202,0); }
}

/* Balão: position relative para o X funcionar */
#wpp-balao {
    position: relative !important;
}

/* Botão X fechar */
#wpp-fechar {
    position: absolute !important;
    top: -10px !important;
    right: -10px !important;
    width: 22px !important;
    height: 22px !important;
    border-radius: 50% !important;
    background: #2d006b !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 22px !important;
    text-align: center !important;
    cursor: pointer !important;
    border: 2px solid #fff !important;
    box-shadow: 0 2px 8px rgba(45,0,107,.25) !important;
    user-select: none !important;
    transition: background .2s !important;
    z-index: 10 !important;
}

#wpp-fechar:hover {
    background: #6354f9 !important;
}

/* Mobile */
@media (max-width: 600px) {
    #wpp-float {
        bottom: 20px !important;
        right: 20px !important;
    }

    #wpp-balao {
        max-width: 200px !important;
        font-size: 13px !important;
    }

    #wpp-btn {
        width: 54px !important;
        height: 54px !important;
    }
}/* End custom CSS */