/* Sezioni Page Designer - Menu esistente */
/* =========================================================
   BLOCCO: HOME DESIGNER - SEZIONE MENU ESISTENTE
   ========================================================= */

/*
 * Il menu è una sezione di navigazione, non una sezione contenuto.
 * Quindi, se non vengono impostati padding verticali manuali in px,
 * non deve ereditare il padding grande delle sezioni normali.
 * Questo mantiene identica la distanza dalla testata tra Customizer e frontend pubblicato.
 */
.gf-section--menu[data-gf-padding-top=""] {
    padding-top: 0 !important;
}

.gf-section--menu[data-gf-padding-bottom=""] {
    padding-bottom: 0 !important;
}

.gf-section--menu {
    border-top: 0;
}


.gf-section--menu .gf-container {
    width: 100%;
}


.gf-section--menu-sticky {
    position: sticky !important;
    top: var(--gf-menu-sticky-top, 0px) !important;
    z-index: 90;
}

body.admin-bar .gf-section--menu-sticky {
    top: max(var(--gf-menu-sticky-top, 0px), 32px);
}

.gf-home-menu {
    width: 100%;
    box-sizing: border-box;
    color: var(--gf-menu-section-color, #111827);
}

.gf-home-menu--align-left {
    text-align: left;
}

.gf-home-menu--align-right {
    text-align: right;
}

.gf-home-menu__list,
.gf-home-menu .menu {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    gap: var(--gf-menu-section-gap, 24px);
    margin: 0;
    padding: 0;
    list-style: none;
}

.gf-home-menu--align-right .gf-home-menu__list,
.gf-home-menu--align-right .menu {
    justify-content: flex-end;
}

.gf-home-menu__list li,
.gf-home-menu .menu li {
    position: relative;
    margin: 0;
    padding: 0;
    list-style: none;
}

.gf-home-menu__list a,
.gf-home-menu .menu a {
    color: var(--gf-menu-section-color, #111827);
    font: inherit;
    text-decoration: none;
    transition: color .16s ease, opacity .16s ease;
}

.gf-home-menu__list a:hover,
.gf-home-menu__list a:focus,
.gf-home-menu .menu a:hover,
.gf-home-menu .menu a:focus,
.gf-home-menu .current-menu-item > a,
.gf-home-menu .current_page_item > a {
    color: var(--gf-menu-section-hover-color, #005fa3);
}

.gf-home-menu .sub-menu {
    display: none;
    position: absolute;
    z-index: 30;
    top: 100%;
    left: 0;
    min-width: 190px;
    margin: 0;
    padding: 10px;
    list-style: none;
    background: #ffffff;
    border: 1px solid #dde3ea;
    border-radius: 12px;
    box-shadow: 0 16px 35px rgba(15, 23, 42, .12);
    text-align: left;
}

.gf-home-menu--align-right .sub-menu {
    left: auto;
    right: 0;
}

.gf-home-menu li:hover > .sub-menu,
.gf-home-menu li:focus-within > .sub-menu {
    display: block;
}

.gf-home-menu .sub-menu a {
    display: block;
    padding: 8px 10px;
    white-space: nowrap;
}

.gf-home-menu__empty {
    color: #64748b;
    font-size: .95rem;
}

@media (max-width: 720px) {
    .gf-home-menu,
    .gf-home-menu--align-left,
    .gf-home-menu--align-right {
        text-align: center;
    }

    .gf-home-menu__list,
    .gf-home-menu .menu,
    .gf-home-menu--align-right .gf-home-menu__list,
    .gf-home-menu--align-right .menu {
        justify-content: center;
    }
}
