/**
 * Estilos do Mega Menu (Max Mega Menu)
 * @package Blocksy Child
 */

/* Header: centralizar verticalmente os itens primÃ¡rios (menus, carrinho, conta) */
/* Linha do header que contÃ©m primary â€“ forÃ§ar alinhamento vertical ao centro */
div:has(> [data-items="primary"]) {
    display: flex !important;
    align-items: center !important;
}

[data-items="primary"] {
    display: flex !important;
    align-items: center !important;
    align-self: center !important;
    min-height: 100%;
}

[data-items="primary"] .ct-header-text,
[data-items="primary"] .ct-header-text .entry-content {
    display: flex !important;
    align-items: center !important;
    align-self: center !important;
    min-height: 100%;
    flex: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
}

/* Remover margens dos <p> vazios do entry-content que deslocam o menu */
[data-items="primary"] .ct-header-text .entry-content > p {
    margin: 0 !important;
}

[data-items="primary"] .mega-menu-wrap {
    display: flex !important;
    align-items: center !important;
    flex: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

/* Menu horizontal ocupa toda a largura; cada item divide o espaÃ§o igualmente (2 = 50%, 4 = 25%, etc.) */
[data-items="primary"] .mega-menu.mega-menu-horizontal {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    flex-wrap: nowrap !important;
}

[data-items="primary"] .mega-menu.mega-menu-horizontal > li,
[data-items="primary"] #mega-menu-menu_1 > li {
    display: flex !important;
    align-items: center !important;
    flex: 1 1 0% !important;
    min-width: 0 !important;
    max-width: none !important;
    width: auto !important;
}

[data-items="primary"] .mega-menu.mega-menu-horizontal > li > a.mega-menu-link {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    text-align: center !important;
}

/* Esconder seta/indicator nos itens do menu */
.mega-menu .mega-indicator {
    display: none !important;
}

/* Mega menu dropdown - largura total do site */
.mega-menu .mega-sub-menu:has(> .mega-menu-row),
.mega-menu > li > .mega-sub-menu,
ul.mega-sub-menu:has(> .mega-menu-row) {
    width: 100vw !important;
    max-width: 100vw !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%);
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box;
}

/* Painel do mega menu (Max Mega Menu) */
.mega-menu .mega-menu-panel {
    width: 100vw !important;
    max-width: 100vw !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%);
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box;
}

/* Coluna FormaÃ§Ã£o: NotÃ­cias, Estrutura, Fotos, VÃ­deos, Imprensa â€“ usa classe .formacao-subtitle na coluna (dinÃ¢mico) */
.mega-formacao-subtitle .mega-menu-link,
.formacao-subtitle .mega-menu-link {
    font-weight: 400 !important;
    font-size: 14px !important;
}

.mega-formacao-subtitle .mega-sub-menu,
.mega-formacao-subtitle .mega-menu-item,
.mega-formacao-subtitle .mega-menu-link,
.formacao-subtitle .mega-sub-menu,
.formacao-subtitle .mega-menu-item,
.formacao-subtitle .mega-menu-link {
    padding: 0px 0px 0px 5px !important;
}

.mega-formacao-subtitle,
.formacao-subtitle {
    padding-top: 15px !important;
}

#mega-menu-wrap-menu_2 #mega-menu-menu_2 > li.mega-menu-item > a.mega-menu-link {
    font-weight: 500 !important;
    font-size: 14px;
}

/* Linha amarela por baixo do tÃ­tulo â€“ usa classe .formacao-title na coluna (dinÃ¢mico) */
#mega-menu-wrap-menu_1 h4.mega-block-title,
.mega-formacao-title h4.mega-block-title,
.formacao-title h4.mega-block-title,
.mega-formacao-title .mega-block-title,
.formacao-title .mega-block-title {
    border-bottom: none !important;
    padding-bottom: 12px !important;
    font-weight: 900 !important;
    margin-bottom: 0 !important;
    position: relative;
}

#mega-menu-wrap-menu_1 h4.mega-block-title::after,
.mega-formacao-title h4.mega-block-title::after,
.formacao-title h4.mega-block-title::after,
.mega-formacao-title .mega-block-title::after,
.formacao-title .mega-block-title::after {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 50px;
    height: 5px;
    background: #F5C400;
}

/* Dropdown principal do mega menu */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 > li.mega-menu-megamenu > ul.mega-sub-menu {
    z-index: 999;
    border-radius: 0px;
    background-color: #fff;
    border: 0;
    top: 58px;
    z-index: 10;
    margin-left: 1vw !important;
    padding: 50px 75px 75px;
    position: absolute;
    width: 98vw !important;
    max-width: none !important;
    left: -30px !important;
}

#mega-menu-wrap-menu_1 #mega-menu-menu_1 li.mega-menu-item {
    margin-top: 10px;
}

#mega-menu-wrap-menu_1 #mega-menu-menu_1 > li.mega-menu-item > a.mega-menu-link {
    font-weight: 500 !important;
    font-size: 14px;
}

#mega-menu-wrap-menu_1 #mega-menu-menu_1 > li.mega-menu-item.mega-toggle-on > a.mega-menu-link {
    font-weight: 500 !important;
}

/* Overlay escuro + blur â€“ aplicado ao dropdown (sÃ³ visÃ­vel quando o submenu estÃ¡ aberto) */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 > li.mega-menu-megamenu > ul.mega-sub-menu::before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    z-index: 99998;
    pointer-events: none;
}

/* ConteÃºdo do dropdown por cima do overlay (o ul jÃ¡ tem position: absolute noutra regra) */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 > li.mega-menu-megamenu > ul.mega-sub-menu {
    z-index: 99999;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row {
    position: relative;
    z-index: 99999;
}

/* Logo por cima do submenu */
.site-branding,
.site-branding .site-logo-container,
.site-branding .default-logo {
    position: relative;
    z-index: 100001;
}

#mega-menu-wrap-menu_1 #mega-menu-menu_1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {
    font-weight: 600 !important;
    font-size: 14px;
}

/* Sub-menu Equipa sÃ©nior: 14px, weight 600 â€“ classes "mega-menu-equipa-senior" / "menu-equipa-senior" na row (dinÃ¢mico) */
.mega-menu-row.mega-menu-equipa-senior .mega-menu-link,
.mega-menu-row.menu-equipa-senior .mega-menu-link,
.mega-menu-equipa-senior .mega-menu-link,
.menu-equipa-senior .mega-menu-link {
    font-size: 14px !important;
    font-weight: 600 !important;
}

/* Sub-menu Clube: 14px, weight 500 â€“ classes "mega-menu-clube" / "menu-clube" na row (dinÃ¢mico) */
.mega-menu-row.mega-menu-clube .mega-menu-link,
.mega-menu-row.menu-clube .mega-menu-link,
.mega-menu-clube .mega-menu-link,
.menu-clube .mega-menu-link {
    font-size: 14px !important;
    font-weight: 600 !important;
}