.bfe_main-nav-container {
    min-height: 50px;

    @media screen and (max-width: 1201px) {
        min-height: 0;
    }
    
    .bfe_page-cover {
        position: fixed;
        top: 120px;
        left:0;
        z-index: 50;
        width: 100vw;
        height: 100vh;
        visibility: hidden;
        pointer-events: none;
        background: var(--theme-color-navy);
        opacity: 0;
        transition-duration: .1s;
        transition-property: opacity, visibility;
        transition-delay: 0.2s;

        &.open { 
            visibility: visible;
            opacity: .4;
            transition-delay: 0;

            @media screen and (max-width: 1201px) {
                top: 71px;
            }
        }
    }
    .bfe_main-nav {
        display: flex;
        justify-content: flex-end;
        list-style-type: none;
        color: var(--theme-color-navy);
        position: relative;
        z-index: 100;
        margin: 0;
        top: 0;
        height: auto;
        opacity: 1;
        transition: all .25s ease-out;

        @media screen and (max-width: 1201px) {
            display: none;
        }

        .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
            color: var(--theme-color-white) !important;
        }

        &.search-open {
            top: 10px;
            opacity: 0;
            height: 0;
            
            * {
                display: none;
            }
        }

        > li {
            position: relative;
            z-index: 75;
            display: flex;
            white-space: nowrap;
            font-weight: 500;
            cursor: default;
            padding: 0 20px 0 30px;

            > a {
                color: var(--theme-color-navy);
                text-decoration: none;
                display: block;
                position: relative;

                .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                    color: var(--theme-color-white) !important;
                }

                &.bfe_nav-button {
                    padding: 13px 25px;
                    border: 1.5px solid var(--theme-color-navy);
                    font-weight: 600;

                    .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                        border-color: var(--theme-color-white) !important;
                    }

                    &:hover, &:focus {
                        background: var(--theme-color-lavender) !important;
                        color: var(--theme-color-white);
                        border-color: var(--theme-color-lavender) !important;

                        .bfe_page-header-navy &, .bfe_page-header.scrolled &, .bfe_page-header-brown & {
                            background: var(--theme-color-lavender) !important;
                            color: var(--theme-color-white) !important;
                            border-color: var(--theme-color-lavender) !important;
                        }
                    }

                }
            }
            &::before {
                content: '';
                position: absolute;
                width: 0; 
                height: 1.5px; 
                display: block;
                margin-top: 5px;
                background: var(--theme-color-navy); 
                transition: width 0.25s ease-out;
                bottom: 10px;
                left: 30px;
            }
            &.open::before,
            &:hover::before,
            &:focus::before,
            &.current-section::before {
                width: calc(100% - 30px);
            }

            .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                &::before {
                    background: var(--theme-color-white) !important;
                }
            }
            &.bfe_mega {
                padding: 0;
                button {
                    position: relative;
                    z-index: 100;
                    border: none;
                    background: none;
                    font-family: var(--theme-font-sans-serif);
                    font-weight: 500;
                    font-size: var(--wp--preset--font-size--body-default);
                    color: var(--theme-color-navy);
                    padding: 0 20px 0 30px;
                    cursor: pointer;

                    .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                        color: var(--theme-color-white) !important;
                    }
                    &::after {
                        content: url('../../assets/images/chevron-down.svg');
                        position: absolute;
                        font-size: 0;
                        top: 50%;
                        margin-top: -2px;
                        right: 0;
                        transition: transform .25s ease-out;
                        transform-origin: center;
                    }
                    &.open::after,
                    &:hover::after,
                    &:focus::after {
                        transform: rotate(-180deg);
                    }

                    .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                        &::after {
                            content: url('../../assets/images/chevron-down-white.svg');
                        }
                    }
                }
            }
            &:has(a.bfe_nav-button) {
                &::before {
                    display: none;
                }
            }
            &.bfe_search-link {
                padding: 0;

                &:hover::before,
                &:focus::before {
                    width: 0;
                }

                button {
                    border: 0;
                    padding: 0;
                    background: transparent;
                    cursor: pointer;
                }

                .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                    path, circle {
                        stroke: var(--theme-color-white) !important;
                    }
                }

            }
        }
    }
    .bfe_mega-menu {
        background: var(--theme-color-beige);
        position: fixed;
        top: 90px;
        left: 0;
        z-index: 98;
        width: 100vw;
        padding: 0 0 75px;
        margin: 0 !important;
        opacity: 0;
        visibility: hidden;
        transition: all .25s ease-in-out;
        transition-property: visibility, opacity, padding;
        transition-delay: 0.1s;
        pointer-events: auto;
        white-space: normal;

        &[hidden] {
            display: none;

            a {
                pointer-events: none;
            }
        }

        .bfe_page-header-navy & {
            background: var(--theme-color-navy) !important;
        }

        .bfe_page-header-brown & {
            background: #815C3B;
        }

        .bfe_page-header.scrolled & {
            background: var(--theme-color-navy) !important;
        }

        &.open {
            z-index: 99;
            opacity: 1;
            visibility: visible;
            padding: 50px 0 75px;
            transition-delay: 0s;
            pointer-events: auto;
        }

        .bfe_mega-col-container {
            display: flex;
            align-items: flex-start;
            gap: 10rem;
            flex-wrap: nowrap;
        }

        .bfe_mega-col {
            max-width: 750px;

            .bfe_column-link {
                margin: 0 0 4rem 0;
                &:has(+ .bfe_sublabel), &:has(+ .bfe_sublink-container) {
                    margin: 0 0 1rem 0;
                }
                a {
                    display: inline-block;
                    font-size: clamp(1.75rem, 1.625rem + 0.625vw, 2.25rem);
                    font-family: var(--theme-font-serif);
                    text-decoration: none;
                    color: var(--theme-color-navy);
                    margin-bottom: 1rem;
                    position: relative;

                    &::after {
                        content: '';
                        position: absolute;
                        width: 0; 
                        height: 1px; 
                        display: block;
                        margin-top: 5px;
                        background: var(--theme-color-navy); 
                        transition: width 0.25s ease-out;
                        bottom: -5px;
                        left: 0;
                    }

                    &:hover::after,
                    &:focus::after,
                    &.current-page::after {
                        width: 100%;
                    }

                    .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                        color: var(--theme-color-white) !important;

                        &::after {
                            background: var(--theme-color-white); 
                        }
                    }
                }
                .bfe_description {
                    color: var(--theme-color-navy);
                    line-height: 1.5;

                    .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                        color: var(--theme-color-white) !important;
                    }

                }
            }

            .bfe_column-label {
                margin-bottom: 1.5rem;
                color: var(--theme-color-navy);

                span {
                    font-size: clamp(1.75rem, 1.625rem + 0.625vw, 2.25rem);
                    font-family: var(--theme-font-serif);
                    color: var(--theme-color-navy);
                    margin-bottom: 1rem;

                    .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                        color: var(--theme-color-white) !important;
                    }
                }

                .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                    color: var(--theme-color-white) !important;
                }
            }

            .bfe_sublabel {
                font-family: var(--theme-font-serif);
                font-style: italic;
                font-size: 17px;
                color: var(--theme-color-navy);
                display: block;
                padding-bottom: .5rem;
                border-bottom: 1px solid rgba(28, 43, 69, 0.4);
                margin-bottom: 1rem;

                .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                    color: var(--theme-color-white) !important;
                    border-color: rgba(255, 255, 255, 0.4);
                }
            }

            .bfe_sublink-container {
                display: flex !important;
                gap: 0 2rem;
                flex-wrap: wrap;
            }

            .bfe_sublink {
                margin: 0 0 2rem 0;
                a {
                    display: inline-block;
                    text-decoration: none;
                    color: var(--theme-color-navy);
                    margin-bottom: .5rem;
                    font-weight: 500; 
                    font-size: 18px;
                    position: relative;
                    font-weight:600;
                    
                    &::after {
                        content: '';
                        position: absolute;
                        width: 0; 
                        height: 1px; 
                        display: block;
                        margin-top: 5px;
                        background: var(--theme-color-navy); 
                        transition: width 0.25s ease-out;
                        bottom: -5px;
                        left: 0;
                    }

                    &:hover::after,
                    &:focus::after,
                    &.current-page::after {
                        width: 100%;
                    }
                    &:has(+ .bfe_description) {
                        font-size: 20px;
                    }

                    .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                        color: var(--theme-color-white) !important;

                        &::after {
                            background: var(--theme-color-white); 
                        }
                    }
                }
                .bfe_description {
                    color: var(--theme-color-navy);
                    font-size: 17px;
                    line-height: 1.5;

                    .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                        color: var(--theme-color-white) !important;
                    }
                }
                &.bfe_full-width {
                    width: 100%;
                    margin-bottom: 1.5rem;

                    a {
                        font-size: 20px;
                    }
                }
            }
        }
    }

    /* SEARCH */
    .bfe_search-box {
        position: absolute;
        top: 26px;
        right: 0;
        transition: all .25s ease-out;
        color: var(--theme-color-navy);
        display: flex;
        gap: 1rem;
        align-items: center;
        pointer-events: none;
        opacity: 0;
        visibility: hidden;
        transition: all .25s ease-out;
        transition-property: visibility, opacity, top;

        .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
            color: var(--theme-color-white) !important;
        }

        &.open {
            pointer-events: all;
            top:36px;
            visibility: visible;
            opacity: 1;
        }

        .search-form {
            display: flex;
            align-items: center;

            .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                color: var(--theme-color-white) !important;
            }
        }

        input[type='search'] {
            width: 400px;
            height: 50px;
            padding: 10px 5px;
            font-size: 18px;
            font-family: var(--theme-font-sans-serif);
            border: 0;
            border-bottom: 1px solid var(--theme-color-navy);
            background: transparent;
            outline: none;

            .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                color: var(--theme-color-white) !important;
                border-color: var(--theme-color-white) !important;

                &::placeholder {
                    color: color-mix(in srgb, var(--theme-color-white) 80%, transparent) !important;
                }
            }
        }
        input[type='image'] {
            background: transparent;
            border: none;
            border-bottom: 1px solid var(--theme-color-navy);
            text-align:center;
            padding: 10px;
            font-size: 14px;
            font-family: var(--theme-font-sans-serif);
            height: 28px;
            transition: all .25s ease-out;
            position: relative;

            &:hover {
                cursor: pointer;
                background: var(--theme-color-navy);
                color: var(--theme-color-white);

                .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                    color: var(--theme-color-navy) !important;
                    background: var(--theme-color-white);
                }
            }

            .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                color: var(--theme-color-white) !important;
                border-color: var(--theme-color-white) !important;
            }
        }
        .bfe_close-search {
            cursor: pointer;
            font-size: 30px;
            color: var(--theme-color-gold);
            background: transparent;
            border: none;
            padding: 0;

            &::before {
                content: "\2715";
            }

            .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                color: var(--theme-color-white) !important;
            }
        }
    }

    /* MOBILE MENU */

    .bfe_nav-mobile {
        position: relative;

        @media screen and (min-width: 1201px) {
            display: none;
        }
        .bfe_menu-switch {
            text-align: right;
            cursor: pointer;

            .bar1, .bar2, .bar3 {
                width: 35px;
                height: 3px;
                background-color: var(--theme-color-navy);
                margin: 6px 0 6px auto;
                transition: 0.25s;
                border-radius: 10px;

                .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                    background-color: var(--theme-color-white);
                }
            }

            &.change .bar1 {
                transform: translate(0, 9px) rotate(-45deg);
            }
            &.change .bar2 {
                opacity: 0;
                visibility: hidden;
            }
            &.change .bar3 {
                transform: translate(0, -9px) rotate(45deg);
            }
        }
        .bfe_mobile-main {
            position: fixed;
            top: 60px;
            left: 0;
            width: 100vw;
            z-index: 100;
            visibility: hidden;
            opacity: 0;
            background: var(--theme-color-beige);
            transition: all .25s ease-out;
            transition-property: top, visibility, opacity;

            &.open {
                visibility: visible;
                opacity: 1;
                top: 70px;
            }

            .bfe_page-header-navy & {
                background: var(--theme-color-navy) !important;
            }

            .bfe_page-header-brown & {
                background: #815C3B;
            }

            .bfe_page-header.scrolled & {
                background: var(--theme-color-navy) !important;
            }

            ul {
                margin: 0 auto;
                list-style-type: none;
                max-width: var(--wp--style--global--wide-size);
            }

            > ul {
                padding: 15px 0;

                > li {
                    position: relative;
                    padding: 20px 0;
                    color: var(--theme-color-navy);
                    width: auto;
                    font-size: 17px;
                    border-bottom: 1px solid rgba(28, 43, 69, 0.4);

                    a {
                        color: var(--theme-color-navy);
                        text-decoration: none;

                        .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                            color: var(--theme-color-white);
                        }

                        &.bfe_nav-button {
                            padding: 10px 20px;
                            border: 1px solid var(--theme-color-navy);

                            .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                                border-color: var(--theme-color-white) !important;
                            }

                            &:hover {
                                background: var(--theme-color-indigo);
                                color: var(--theme-color-white);

                                .bfe_page-header-navy &, .bfe_page-header.scrolled & {
                                    background: var(--theme-color-white) !important;
                                    color: var(--theme-color-navy) !important;
                                }

                                .bfe_page-header-brown & {
                                    background: var(--theme-color-white) !important;
                                    color: var(--theme-color-brown) !important;
                                }
                            }

                        }
                    }

                    .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                        color: var(--theme-color-white);
                        border-color: rgba(255, 255, 255, 0.4);
                    }

                    &.bfe_mega {
                        &::after {
                            content: url('../../assets/images/chevron-down.svg');
                            position: absolute;
                            top: 20px;
                            right: 10px;
                            transition: all .25s ease-out;
                        }

                        .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                            &::after {
                                content: url('../../assets/images/chevron-down-white.svg');
                            }
                        }

                        &.active {
                            &::after {
                                transform:rotate(-180deg);
                            }
                        }
                    }
                    &:has(a.bfe_nav-button) {
                        border-bottom: 0;
                        padding: 30px 0;
                    }
                    &.bfe_search-field {
                        border-bottom: 0;

                        /* SEARCH */
                        .bfe_mobile-search-box {
                            color: var(--theme-color-navy);
                            display: flex;
                            gap: 1rem;
                            align-items: center;

                            .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                                color: var(--theme-color-white) !important;
                            }

                            .search-form {
                                display: flex;
                                align-items: center;
                                width: 100%;

                                .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                                    color: var(--theme-color-white) !important;
                                }
                            }

                            label {
                                width: 100%;
                            }

                            input[type='search'] {
                                width: 100%;
                                padding: 10px 5px;
                                font-size: 16px;
                                font-family: var(--theme-font-sans-serif);
                                border: 0;
                                border-bottom: 1px solid var(--theme-color-navy);
                                background: transparent;
                                outline: none;
                                line-height: 1;

                                .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                                    color: var(--theme-color-white) !important;
                                    border-color: var(--theme-color-white) !important;
                                }
                            }
                            input[type='image'] {
                                background: transparent;
                                border: none;
                                border-bottom: 1px solid var(--theme-color-navy);
                                text-align:center;
                                padding: 10px;
                                font-size: 14px;
                                font-family: var(--theme-font-sans-serif);
                                position: relative;
                                height: 21px;

                                .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                                    color: var(--theme-color-white) !important;
                                    border-color: var(--theme-color-white) !important;
                                }
                            }
                        }

                    }

                    > ul {
                        display: none;
                        height: 0;
                        opacity: 0;
                        padding: 0;

                        &.open {
                            display: block;
                            height: auto;
                            opacity: 1;
                            padding: 10px 0 0;
                        }
                        > li {
                            font-size: 16px;
                            border-bottom: none;
                            padding: 10px;
                            font-family: var(--theme-font-serif);

                            .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                                color: var(--theme-color-periwinkle) !important;
                            }

                            a {
                                font-family: var(--theme-font-serif);

                                .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                                    color: var(--theme-color-periwinkle) !important;
                                }
                            }

                            &.current-page {
                                background: var(--theme-color-periwinkle);

                                a {
                                    color: var(--theme-color-navy) !important;

                                    .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                                        color: var(--theme-color-navy) !important;
                                    }
                                }

                                .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                                    color: var(--theme-color-navy) !important;
                                }
                            }

                            .bfe_sublabel {
                                font-family: var(--theme-font-serif);
                                font-style: italic;
                                font-size: 14px;
                                padding-bottom: 5px;
                                border-bottom: 1px solid rgba(28, 43, 69, 0.4);

                                .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                                    border-color: rgba(255, 255, 255, 0.4);
                                }
                            }

                            > ul {
                                padding: 10px 10px 0;

                                > li {
                                    font-family: var(--theme-font-sans-serif);
                                    font-size: 14px;
                                    padding: 10px 0;

                                    a {
                                        font-family: var(--theme-font-sans-serif);

                                        .bfe_page-header-navy &, .bfe_page-header-brown &, .bfe_page-header.scrolled & {
                                            color: var(--theme-color-periwinkle) !important;
                                        }
                                    }
                                }
                            }

                            &.bfe_no-title {
                                padding: 0;
                                
                                > ul {
                                    padding: 0 10px 0;
                                }
                            }
                        }
                    }
                }
            }
        }
                
    }
}