.elementor-6232 .elementor-element.elementor-element-753b4197{--display:flex;--min-height:120px;--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;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:-120px;--margin-left:0px;--margin-right:0px;--padding-top:19px;--padding-bottom:18px;--padding-left:130px;--padding-right:0px;--z-index:110;}.elementor-widget-theme-site-logo .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-6232 .elementor-element.elementor-element-45014aa4{text-align:center;}.elementor-6232 .elementor-element.elementor-element-45014aa4 img{width:85%;max-width:100%;height:48px;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-6232 .elementor-element.elementor-element-7ab686b9 .elementor-icon-wrapper{text-align:center;}.elementor-6232 .elementor-element.elementor-element-7ab686b9.elementor-view-stacked .elementor-icon{background-color:#02392B;}.elementor-6232 .elementor-element.elementor-element-7ab686b9.elementor-view-framed .elementor-icon, .elementor-6232 .elementor-element.elementor-element-7ab686b9.elementor-view-default .elementor-icon{color:#02392B;border-color:#02392B;}.elementor-6232 .elementor-element.elementor-element-7ab686b9.elementor-view-framed .elementor-icon, .elementor-6232 .elementor-element.elementor-element-7ab686b9.elementor-view-default .elementor-icon svg{fill:#02392B;}.elementor-6232 .elementor-element.elementor-element-6263f1c2 .jet-mega-menu.jet-mega-menu--layout-horizontal .jet-mega-menu-item__link--top-level,
							.elementor-6232 .elementor-element.elementor-element-6263f1c2 .jet-mega-menu.jet-mega-menu--layout-vertical .jet-mega-menu-item__link--top-level{font-family:"DM Sans", Sans-serif;font-size:16px;font-weight:400;}.elementor-6232 .elementor-element.elementor-element-6263f1c2{--jmm-top-items-hor-align:flex-start;--jmm-top-item-title-color:#000000;--jmm-top-hover-item-title-color:#026B46;--jmm-top-active-item-title-color:#026B46;--jmm-dropdown-container-width:100px;--jmm-dropdown-top-items-icon-size:0px;--jmm-dropdown-top-items-hor-padding:0px;--jmm-dropdown-toggle-size:0px;}.elementor-6232 .elementor-element.elementor-element-5fbd213f{--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;--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-6232 .elementor-element.elementor-element-5fbd213f.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-6232 .elementor-element.elementor-element-70a715f7 .elementor-icon-wrapper{text-align:center;}.elementor-6232 .elementor-element.elementor-element-70a715f7 .elementor-icon{font-size:12px;}.elementor-6232 .elementor-element.elementor-element-70a715f7 .elementor-icon svg{height:12px;}.elementor-6232 .elementor-element.elementor-element-27715565{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 20px;}.elementor-6232 .elementor-element.elementor-element-27715565 .elementor-icon-wrapper{text-align:center;}.elementor-6232 .elementor-element.elementor-element-27715565.elementor-view-stacked .elementor-icon{background-color:#026B4600;}.elementor-6232 .elementor-element.elementor-element-27715565.elementor-view-framed .elementor-icon, .elementor-6232 .elementor-element.elementor-element-27715565.elementor-view-default .elementor-icon{color:#026B4600;border-color:#026B4600;}.elementor-6232 .elementor-element.elementor-element-27715565.elementor-view-framed .elementor-icon, .elementor-6232 .elementor-element.elementor-element-27715565.elementor-view-default .elementor-icon svg{fill:#026B4600;}.elementor-6232 .elementor-element.elementor-element-27715565 .elementor-icon{font-size:12px;}.elementor-6232 .elementor-element.elementor-element-27715565 .elementor-icon svg{height:12px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-6232 .elementor-element.elementor-element-5d556055 .elementor-button{background-color:var( --e-global-color-2c81bf9 );font-family:"DM Sans", Sans-serif;font-weight:500;fill:#FFFFFF;color:#FFFFFF;border-radius:48px 48px 48px 48px;padding:16px 32px 16px 32px;}.elementor-6232 .elementor-element.elementor-element-5d556055 .elementor-button:hover, .elementor-6232 .elementor-element.elementor-element-5d556055 .elementor-button:focus{background-color:var( --e-global-color-f9137df );color:var( --e-global-color-primary );}.elementor-6232 .elementor-element.elementor-element-5d556055{width:var( --container-widget-width, 13% );max-width:13%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 84px;--container-widget-width:13%;--container-widget-flex-grow:0;}.elementor-6232 .elementor-element.elementor-element-5d556055 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-6232 .elementor-element.elementor-element-5d556055 .elementor-button:hover svg, .elementor-6232 .elementor-element.elementor-element-5d556055 .elementor-button:focus svg{fill:var( --e-global-color-primary );}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1366px) and (min-width:768px){.elementor-6232 .elementor-element.elementor-element-5fbd213f{--width:0%;}}@media(max-width:1366px){.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-6232 .elementor-element.elementor-element-6263f1c2{width:var( --container-widget-width, 84% );max-width:84%;--container-widget-width:84%;--container-widget-flex-grow:0;}.elementor-6232 .elementor-element.elementor-element-5fbd213f{--gap:15px 15px;--row-gap:15px;--column-gap:15px;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}.elementor-6232 .elementor-element.elementor-element-5d556055{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:43%;--container-widget-flex-grow:0;width:var( --container-widget-width, 43% );max-width:43%;}}@media(max-width:1200px){.elementor-6232 .elementor-element.elementor-element-753b4197{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6232 .elementor-element.elementor-element-45014aa4{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 30px;}.elementor-6232 .elementor-element.elementor-element-45014aa4 img{width:388px;}.elementor-6232 .elementor-element.elementor-element-70a715f7{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-6232 .elementor-element.elementor-element-27715565{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-6232 .elementor-element.elementor-element-5d556055{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 55px;--container-widget-width:32%;--container-widget-flex-grow:0;width:var( --container-widget-width, 32% );max-width:32%;}.elementor-6232 .elementor-element.elementor-element-5d556055 .elementor-button{font-size:15px;}}@media(max-width:1024px){.elementor-6232 .elementor-element.elementor-element-753b4197{--justify-content:space-between;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-6232 .elementor-element.elementor-element-45014aa4{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 5px;}.elementor-6232 .elementor-element.elementor-element-45014aa4 img{width:90%;}.elementor-6232 .elementor-element.elementor-element-7ab686b9{margin:0px 30px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-6232 .elementor-element.elementor-element-7ab686b9 .elementor-icon{font-size:25px;}.elementor-6232 .elementor-element.elementor-element-7ab686b9 .elementor-icon svg{height:25px;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}}@media(max-width:767px){.elementor-6232 .elementor-element.elementor-element-753b4197{--justify-content:space-between;}.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-6232 .elementor-element.elementor-element-45014aa4{width:var( --container-widget-width, 171px );max-width:171px;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 10px;--container-widget-width:171px;--container-widget-flex-grow:0;}.elementor-6232 .elementor-element.elementor-element-45014aa4 img{width:100%;}.elementor-6232 .elementor-element.elementor-element-7ab686b9{margin:0px 30px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}}@media(min-width:768px){.elementor-6232 .elementor-element.elementor-element-5fbd213f{--width:4.152%;}}@media(min-width:2400px){.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}}/* Start custom CSS for button, class: .elementor-element-5d556055 *//* --- Ajuste Fino de Centralização --- */

/* 1. Reseta o Wrapper interno do Elementor */
/* Esse span wrapper muitas vezes é flex e tem gap padrão */
.elementor-6232 .elementor-element.elementor-element-5d556055 .elementor-button-content-wrapper {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important; /* Importante: Remove qualquer gap nativo */
}

/* 2. O Botão em si */
.elementor-6232 .elementor-element.elementor-element-5d556055 .elementor-button {
    padding-left: 32px !important; /* Força padronização se necessário, ou deixe o padrão do tema  */
    padding-right: 32px !important; /* Se estava 37, force igual a esquerda */
    transition: all 0.3s ease-in-out;
}

/* 3. O Ícone (Correção dos 5px fantasmas) */
.elementor-6232 .elementor-element.elementor-element-5d556055 .elementor-button-icon {
    /* Zera TUDO */
    width: 0 !important;
    max-width: 0 !important;
    flex: 0 0 0 !important; /* Não deixa o flexbox reservar espaço */
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    
    opacity: 0;
    transform: translateX(-10px); 
    transition: all 0.3s ease-in-out;
    overflow: hidden;

    /* Config da Máscara (Mantém igual) */
    -webkit-mask-image: url('https://intellectus.sanzza.eu/wp-content/uploads/2026/01/arrow-button.svg');
    mask-image: url('https://intellectus.sanzza.eu/wp-content/uploads/2026/01/arrow-button.svg');
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    background-color: #026B46 !important; 
    height: 11px; 
}

/* 4. HOVER: Agora sim abrimos espaço */
.elementor-6232 .elementor-element.elementor-element-5d556055 .elementor-button:hover .elementor-button-icon {
    width: 15px !important; /* Largura real */
    max-width: 15px !important;
    flex: 0 0 15px !important; /* Agora ocupa espaço flex */
    
    opacity: 1;
    margin-left: 8px !important; /* Espaço para o texto */
    transform: translateX(0); 
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-753b4197 *//* =========================================
   ESTADO 1: INICIAL (Topo da Página)
   ========================================= */

/* =========================================
   CORRECÇÃO DE ÂNCORA (Sticky Header Offset)
   Header: 120px normal | -120px margin inferior | 80px sticky
   ========================================= */
#inscricaoformacoes {
    /* 80px sticky header + 120px margem negativa do header + 10px conforto = 210px */
    scroll-margin-top: 350px;
}

@media (max-width: 767px) {
    #inscricaoformacoes {
        scroll-margin-top: 120px;
    }
}

.custom-header-container {
    /* MANTIDO ORIGINAL: Não altera padding nem altura aqui.
       O Elementor controla o layout normal (120px) */
    background-color: transparent !important;
    transition: all 0.4s ease;
}

/* =========================================
   ESTADO 2: STICKY (Rolando - Fundo Branco)
   ========================================= */
.custom-header-container.elementor-sticky--effects {
    background-color: #FFFFFF !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);

    /* Altura Reduzida (80px final - FORÇADO) */
    height: 80px !important;
    min-height: 80px !important;
    max-height: 80px !important;

    /* RESOLVE A QUEBRA NO REDIMENSIONAMENTO */
    width: 100% !important;
    left: 0 !important;
    right: 0 !important;

    padding-top: 0 !important;
    padding-bottom: 0 !important;

    /* AQUI ativamos o Layout Flex para poder mover as coisas */
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* Garante que os itens não embrulham e colapsem o menu */
.custom-header-container.elementor-sticky--effects>.elementor-widget {
    flex-wrap: nowrap !important;
}

/* --- NOVO SISTEMA RESPONSIVO (SEM OVERLAPS NA LUPA E USER) --- */
/* Esta lógica utiliza flexbox nativo orgânico. Ao abolirmos o 'transform' manual, as peças adaptam-se aos pixeis reais da máquina e nunca se atravessam umas sobre as outras! */

.custom-header-container,
.custom-header-container.elementor-sticky--effects {
    gap: 15px !important;
    /* Espaço elástico de segurança inquebrável entre Menu, Lupa, User e Botão */
    justify-content: flex-start !important;
}

/* 1. O Menu respeita dinâmicas diferentes (Normal vs Scroll) */

/* ESTADO NORMAL: O Menu agrupa-se à esquerda, mais próximo do logotipo */
.custom-header-container:not(.elementor-sticky--effects) .custom-header-menu,
.custom-header-container:not(.elementor-sticky--effects) .elementor-widget-jet-mega-menu {
    margin-left: 20px !important;
    /* Espaçamento próximo do logotipo */
    margin-right: 15px !important;
    /* Espaço de respiro para a Lupa não tocar */
}

/* ESTADO SCROLL (STICKY): O Menu empurra-se para o Centro */
.custom-header-container.elementor-sticky--effects .custom-header-menu,
.custom-header-container.elementor-sticky--effects .elementor-widget-jet-mega-menu {
    margin-left: auto !important;
    /* Centra em conjunto com a margem do botão */
    margin-right: 15px !important;
}

/* 2. Comportamento do Botão (Normal vs Scroll) */

/* ESTADO NORMAL: O botão acompanha a família do Menu e ícones, separando-se apenas 40px do User */
.custom-header-container:not(.elementor-sticky--effects) .botao-sticky-custom {
    margin-left: 40px !important;
}

/* ESTADO SCROLL (STICKY): O botão desloca-se para a berma direita absoluta, ajudando a centralizar o Menu */
.custom-header-container.elementor-sticky--effects .botao-sticky-custom {
    margin-left: auto !important;
}

/* OBRIGATÓRIO: Anular totalmente o uso de translateX (era isto que fazia a lupa cravar-se no texto do menu!) */
.lupa-pesquisa,
.custom-header-container.elementor-sticky--effects .lupa-pesquisa,
.user-menu,
.custom-header-container.elementor-sticky--effects .user-menu,
.botao-sticky-custom,
.custom-header-container.elementor-sticky--effects .botao-sticky-custom {
    transform: none !important;
}


/* --- ESTILIZAÇÃO DO BOTÃO NO SCROLL (STICKY) --- */
.custom-header-container.elementor-sticky--effects .elementor-button {
    background-color: #026B46 !important;
    transition: all 0.3s ease;
}

.custom-header-container.elementor-sticky--effects .elementor-button:hover {
    background-color: #02392B !important;
    color: #FFFFFF !important;
}

.custom-header-container.elementor-sticky--effects .elementor-button:hover .elementor-button-text {
    color: #FFFFFF !important;
}

.custom-header-container.elementor-sticky--effects .elementor-button:hover .elementor-button-icon {
    background-color: #FFFFFF !important;
}

/* --- ESPAÇAMENTO DO BOTÃO (GAP DO ÍCONE NO HOVER) --- */
.custom-header-container .elementor-button .elementor-button-icon,
.custom-header-container.elementor-sticky--effects .elementor-button .elementor-button-icon {
    max-width: 0px !important;
    margin: 0 !important;
    padding: 0 !important;
    transition: all 0.3s ease-in-out;
}

.custom-header-container .elementor-button:hover .elementor-button-icon,
.custom-header-container.elementor-sticky--effects .elementor-button:hover .elementor-button-icon {
    max-width: 25px !important;
    margin-left: 5px !important;
}

/* --- LIMPEZA DE ÍCONES SOBREPOSTOS --- */
.custom-header-container .elementor-button-icon svg,
.custom-header-container .elementor-button-icon i,
.custom-header-container.elementor-sticky--effects .elementor-button-icon svg,
.custom-header-container.elementor-sticky--effects .elementor-button-icon i {
    display: none !important;
}

/* --- COMPORTAMENTO DA LUPA E USER --- */
.custom-header-container .lupa-pesquisa,
.custom-header-container.elementor-sticky--effects .lupa-pesquisa,
.custom-header-container .user-menu,
.custom-header-container.elementor-sticky--effects .user-menu {
    transition: none !important;
}

/* No desktop, garantir que não colapsa */
@media (min-width: 1025px) {

    .custom-header-container .user-menu,
    .custom-header-container.elementor-sticky--effects .user-menu {
        display: block !important;
        z-index: 100 !important;
    }
}

/* --- FIDELIDADE AO FIGMA (DESKTOP GIGANTE 1920PX+) --- */
/* A distância entre links (24px totais) agora é aplicada ao Contentor e não ao texto, para podermos usar Gap interno na seta */
.custom-header-menu .elementor-item,
.jet-mega-menu-item__inner {
    padding-left: 12px !important;
    padding-right: 12px !important;
}

/* Zeramos o padding do link em si. Deste modo a Seta do dropdown não sofre com este afastamento fantasma! */
.jet-mega-menu-item__link {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* --- CALIBRAGENS PROPORCIONAIS DE FLUXO (NOTEBOOKS E TABLETS LARGOS) --- */
@media (min-width: 1025px) and (max-width: 1399px) {
    .custom-header-container {
        width: 100% !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    .custom-header-logo {
        padding-left: 0px !important;
        width: auto !important;
        max-width: 200px !important;
        /* Ajuda a ceder espaço */
    }

    /* 1. O Menu respira sozinho - Largura orgânica e FlexShrink off */
    .custom-header-menu,
    .elementor-widget-jet-mega-menu {
        width: auto !important;
        --container-widget-width: auto !important;
        flex-shrink: 0 !important;
    }

    /* 2. Correção Mágica: Somente no NO-SCROLL é que anulamos as margens no portátil */
    .custom-header-container:not(.elementor-sticky--effects) .custom-header-menu,
    .custom-header-container:not(.elementor-sticky--effects) .elementor-widget-jet-mega-menu {
        margin-left: 10px !important;
        /* Logo mais encostado em portáteis */
    }

    /* 3. Escalonamento Fluido: Redução de 24px para 16px entre itens (8px cada lado) para caber nos 1366px */
    .custom-header-menu .elementor-item,
    .jet-mega-menu-item__inner {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

    .custom-header-menu .elementor-item,
    .jet-mega-menu-item__link {
        font-size: 13px !important;
    }

    .custom-header-btn,
    .botao-sticky-custom {
        width: auto !important;
        --container-widget-width: auto !important;
        flex-shrink: 0 !important;
    }

    /* Reduz um pouco o espaçamento de folga do Botão no modo NORMAL (ecrã portátil) */
    .custom-header-container:not(.elementor-sticky--effects) .botao-sticky-custom {
        margin-left: 20px !important;
    }
}

@media (min-width: 1400px) and (max-width: 1550px) {

    /* Só no topo da página é que se encosta ligeiramente à esq, permitindo a Centralização no Scroll */
    .custom-header-container:not(.elementor-sticky--effects) .custom-header-menu,
    .custom-header-container:not(.elementor-sticky--effects) .elementor-widget-jet-mega-menu {
        margin-left: 10px !important;
    }

    .custom-header-menu,
    .elementor-widget-jet-mega-menu {
        width: auto !important;
    }

    /* Escalonamento Fluido (1400px - 1550px): Gaps a 20px (10px cada lado) */
    .custom-header-menu .elementor-item,
    .jet-mega-menu-item__inner {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    .custom-header-container,
    .custom-header-logo {
        padding-left: 0px !important;
        --padding-left: 0px !important;
    }
}

/* ========================================================
   REPARAÇÃO REDIMENSIONAMENTO STICKY & JETMENU ALIGNMENT
   ======================================================== */

/* 1. Previne quebra do header sticky ao redimensionar */
.elementor-sticky__spacer,
.custom-header-container.elementor-sticky--effects {
    width: 100% !important;
    max-width: 100vw !important;
    left: 0 !important;
    right: 0 !important;
}

/* 2. SUPER CSS FIX PARA O MEGA MENU "FORA DA TELA" */

/* Destranca as âncoras nativas do JetMenu e do Elementor (para que não se baseie na palavra "Formações") */
.elementor-widget-jet-mega-menu,
.elementor-widget-jet-mega-menu .elementor-widget-container,
.jet-mega-menu,
.jet-mega-menu-list,
.jet-mega-menu-item {
    position: static !important;
}

/* Obriga a "caixa verde" a esticar desde as bordas do cabeçalho e ignora o Javascript */
.jet-mega-menu-mega-container {
    position: absolute !important;
    left: 0 !important;
    /* Alinha estritamente pelo lado esquerdo do Header (junto à logo) */
    right: 0 !important;
    /* Alinha pelo lado direito (junto ao botão) */
    width: auto !important;
    /* Preenche do left ao right automaticamente */
    max-width: 100% !important;
    /* Garante que não ultrapassa as margens em telas pequenas */
    transform: none !important;
    /* Mata o cálculo JS que atirava o menu 800px+ pra fora */
    margin: 0 auto !important;
}

/* Mantém as proporções da grelha dentro da caixa verde seguras */
.jet-mega-menu-mega-container__inner {
    width: 100% !important;
}

/* ========================================================
   AFINAÇÃO MILIMÉTRICA DO INDICADOR DROPDOWN E INNER
   ======================================================== */

/* Proteção de Flexbox absoluto no Contentor Interno (texto + seta) */
.jet-mega-menu-item__inner {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    /* <--- O PEDIDO DO MÁXIMO DE 8PX: A distância está selada e blindada aqui! */
}

/* Ocultar e limpar margens e fixações absolutas do JetMenu antigo na seta */
.jet-mega-menu-item__dropdown {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    margin: 0 !important;
    padding: 0 !important;
}

.jet-mega-menu-item__dropdown svg,
.jet-mega-menu-item__dropdown i {
    width: 8px !important;
    height: 4px !important;
    transition: all 0.3s ease;
}

/* ========================================================
   "GHOST BUSTER" - CORREÇÃO DA DUPLICAÇÃO NO SCROLL
   ======================================================== */

/* 1. O Elementor por vezes cria um clone de segurança no fundo transparente. Isso causa duplicação no ecrã. Destruímos o clone aqui: */
.elementor-sticky__spacer .jet-mega-menu-mega-container {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

/* 2. Z-Index Absoluto: Garante que o menu ativo (o que desce contigo no ecrã) flutua acima do fantasma abandonado. */
.custom-header-container.elementor-sticky--effects .jet-mega-menu-mega-container {
    z-index: 999999 !important;
}

/* ========================================================
   ALINHAMENTO PERFEITO MOBILE E TABLET VERTICAL
   Separa o Logo para a esquerda e ícones para a direita
   ======================================================== */
@media (max-width: 1024px) {

    /* 1. Troca o agrupamento à esquerda do Desktop por Força Repulsiva (Space-Between) */
    .custom-header-container {
        justify-content: space-between !important;
    }

    /* 2. Garante magnéticamente que o Menu Hambúrguer cola à extrema direita (Blindado contra Overwrites) */
    .custom-header-container > .elementor-widget-icon,
    .elementor-element-4358a2f3 {
        margin-left: auto !important;
    }

    /* 3. Esculpe a grossura da barriga branca do menu Sticky (Scroll) para um visual Premium de telemóvel */
    .custom-header-container.elementor-sticky--effects {
        height: 65px !important;
        min-height: 65px !important;
        align-items: center !important;
        /* Mantém logo e hambúrguer perfeitamente centrados na vertical */
    }
}/* End custom CSS */