/* Runtime-generated elements use shared classes, independent of Elementor's saved ID CSS. */
.cie-site-header--figma-navbar { --cie-product-menu-row-gap: 20px; --cie-product-menu-child-gap: 10px; }
.elementor-location-header .elementor-element.cie-site-header--figma-navbar .cie-header-mega--products .cie-product-menu-dynamic .cie-products-panel__column,
.elementor-location-header .elementor-element.cie-site-header--figma-navbar .cie-header-mega--products .cie-product-menu-dynamic .cie-products-panel__group {
    padding: 0 !important;
    margin: 0 !important;
    gap: 0 !important;
    align-items: flex-start;
    min-width: 0;
}
.elementor-location-header .elementor-element.cie-site-header--figma-navbar .cie-header-mega--products .cie-product-menu-dynamic .cie-products-panel__column { flex: 1 1 0; }
.elementor-location-header .elementor-element.cie-site-header--figma-navbar .cie-header-mega--products .cie-product-menu-dynamic .cie-products-panel__group {
    width: 100%;
    gap: var(--cie-product-menu-child-gap) !important;
    margin-bottom: var(--cie-product-menu-row-gap) !important;
}
.cie-site-header--figma-navbar .cie-product-menu-dynamic .cie-product-menu-link { width: 100%; margin: 0 !important; }
.cie-site-header--figma-navbar .cie-product-menu-dynamic .cie-product-menu-link .elementor-button {
    display: block !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 0 !important;
    color: #000 !important;
    text-align: left !important;
    font-family: "Source Sans Pro", sans-serif !important;
    font-size: clamp(15px, 1.05vw, 20px) !important;
    line-height: 1.45 !important;
    font-weight: 600 !important;
}
.cie-site-header--figma-navbar .cie-product-menu-dynamic .elementor-button-content-wrapper { justify-content: flex-start !important; }
.cie-site-header--figma-navbar .cie-product-menu-dynamic .cie-product-menu-child .elementor-button { font-weight: 400 !important; }
.cie-site-header--figma-navbar .cie-product-menu-dynamic .elementor-button:focus-visible { outline: 2px solid #465961; outline-offset: 2px; }

/* Preserve hierarchy weights over the shared mega-menu typography defaults. */
body .elementor-location-header.elementor-7030 .elementor-element.elementor-element-68aba0fe.cie-site-header.cie-site-header--figma-navbar .cie-header-mega--products .cie-product-menu-dynamic .cie-product-menu-link.cie-product-menu-depth-1 .elementor-button {
    font-weight: 600 !important;
}
body .elementor-location-header.elementor-7030 .elementor-element.elementor-element-68aba0fe.cie-site-header.cie-site-header--figma-navbar .cie-header-mega--products .cie-product-menu-dynamic .cie-product-menu-child .elementor-button {
    font-weight: 400 !important;
}

/* Distinguish the deeper WooCommerce branch within its existing child group. */
.cie-site-header--figma-navbar .cie-product-menu-dynamic .cie-product-menu-link.cie-product-menu-depth-3 .elementor-button {
    padding-inline-start: 12px !important;
    box-sizing: border-box;
}

/* Mobile links come from the same hierarchy; retain its group and depth cues. */
@media (max-width: 1024px) {
    body .elementor-location-header .cie-site-header--figma-navbar .cie-mobile-product-child-link.cie-product-menu-depth-1 {
        font-weight: 600 !important;
        margin-top: 6px !important;
    }
    body .elementor-location-header .cie-site-header--figma-navbar .cie-mobile-product-child-link.cie-product-menu-depth-2 {
        padding-inline-start: 12px !important;
        box-sizing: border-box;
    }
    body .elementor-location-header .cie-site-header--figma-navbar .cie-mobile-product-child-link.cie-product-menu-depth-3 {
        padding-inline-start: 24px !important;
        box-sizing: border-box;
    }
}

/* Keep the centre links inside the existing desktop dropdown height. */
@media (min-width: 1025px) {
    .cie-site-header--figma-navbar {
        --cie-product-menu-column-gap: 32px;
    }
    /* Keep long parent labels inside the rail, clear of its divider. */
    body .elementor-location-header.elementor-7030 .elementor-element.elementor-element-68aba0fe.cie-site-header.cie-site-header--figma-navbar .cie-header-mega--products .cie-mega-figma__product-rail {
        box-sizing: border-box;
        padding-inline-end: clamp(16px, 1.5vw, 28px) !important;
    }
    body .elementor-location-header.elementor-7030 .elementor-element.elementor-element-68aba0fe.cie-site-header.cie-site-header--figma-navbar .cie-header-mega--products :is(.cie-mega-figma__product-rail-links, .cie-mega-figma__rail-link) {
        min-width: 0 !important;
        max-width: 100% !important;
    }
    body .elementor-location-header.elementor-7030 .elementor-element.elementor-element-68aba0fe.cie-site-header.cie-site-header--figma-navbar .cie-header-mega--products .cie-mega-figma__rail-link :is(.elementor-button, .elementor-button-text) {
        min-width: 0 !important;
        max-width: 100% !important;
        white-space: normal !important;
        overflow-wrap: normal;
    }
    /* Desktop category rail: exact spacing and shared type across all eight labels. */
    body .elementor-location-header .elementor-element.cie-site-header--figma-navbar .cie-header-mega--products .cie-mega-figma__product-rail-links {
        gap: 15px !important;
        justify-content: flex-start !important;
    }
    body .elementor-location-header .elementor-element.cie-site-header--figma-navbar .cie-header-mega--products .cie-mega-figma__product-rail-links > .cie-mega-figma__rail-link {
        margin: 0 !important;
        padding: 0 !important;
    }
    body .elementor-location-header .elementor-element.cie-site-header--figma-navbar .cie-header-mega--products .cie-mega-figma__product-rail-links > .cie-mega-figma__rail-link .elementor-button {
        padding-block: 0 !important;
        color: var(--Black, #000) !important;
        font-family: "Source Sans Pro", sans-serif !important;
        font-size: clamp(15px, 1.05vw, 20px) !important;
        font-style: normal !important;
        font-weight: 600 !important;
        line-height: 1.45 !important;
    }
    /* Keep the same tracks even when a category only fills one or two columns. */
    .elementor-location-header .elementor-element.cie-site-header--figma-navbar .cie-header-mega--products .cie-mega-figma__inner--products > .cie-product-menu-dynamic.cie-products-panel--active:not([hidden]) {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        column-gap: var(--cie-product-menu-column-gap) !important;
        align-items: start !important;
    }
    .elementor-location-header .elementor-element.cie-site-header--figma-navbar .cie-header-mega--products .cie-mega-figma__inner--products > .cie-product-menu-dynamic > .cie-products-panel__column {
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
    }
    /* Promotions links share the first track, stacked vertically. */
    .elementor-location-header .elementor-element.cie-site-header--figma-navbar .cie-header-mega--products .cie-mega-figma__inner--products > .cie-product-menu-dynamic.cie-products-panel--promotions.cie-products-panel--active:not([hidden]) {
        align-content: start !important;
        row-gap: 0 !important;
    }
    .cie-site-header--figma-navbar .cie-product-menu-dynamic.cie-products-panel--promotions > .cie-products-panel__column {
        grid-column: 1;
    }
    .elementor-location-header .elementor-element.cie-site-header--figma-navbar .cie-header-mega--products .cie-mega-figma__inner--products {
        height: 100% !important;
    }
    .cie-site-header--figma-navbar .cie-mega-figma__inner--products > .cie-products-panel:not(.cie-products-panel--scroll),
    .elementor-location-header .elementor-element.cie-site-header--figma-navbar .cie-header-mega--products .cie-mega-figma__inner--products > .cie-product-menu-dynamic.cie-products-panel--scroll {
        min-height: 0;
        max-height: 100%;
        overflow-y: auto;
        overflow-x: hidden;
        overscroll-behavior-y: contain;
        scrollbar-gutter: stable;
        scrollbar-width: thin;
        scrollbar-color: #8599a5 #f4f6f6;
    }
    /* Populated Audio branches can exceed the dropdown height in any column. */
    body .elementor-location-header.elementor-7030 .elementor-element.elementor-element-68aba0fe.cie-site-header--figma-navbar .cie-header-mega--products .cie-mega-figma__inner--products > .cie-product-menu-dynamic.cie-products-panel--scroll.cie-products-panel--active {
        min-height: 0 !important;
        max-height: 100% !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        scroll-snap-type: none !important;
    }
}

/* Highlight the two commercial navigation links. */
@media (min-width: 1025px) {
    body .elementor-location-header .elementor-element.cie-site-header--figma-navbar .cie-header-mega--products .cie-mega-figma__product-rail-links > .cie-mega-figma__rail-link:is(.cie-products-tab--promotions, .cie-products-tab--brands) .elementor-button {
        color: var(--CIE-Green, #A6CE39) !important;
    }
}
