/* PLAS Tech Menu - frontend-safe, isolated styles */
nav.plas-tech-menu {
    --plas-menu-bg: #ffffff;
    --plas-menu-text: #0f172a;
    --plas-menu-muted: #64748b;
    --plas-menu-blue: #0b5cab;
    --plas-menu-border: #dfe8f2;
    --plas-menu-soft: #f1f7fd;
    --plas-menu-inner-padding-x: 28px;
    --plas-menu-mega-header-padding: 20px;
    --plas-menu-mega-grid-padding: 28px;
    position: relative !important;
    z-index: 1000 !important;
    display: block !important;
    width: 100% !important;
    clear: both !important;
    background: var(--plas-menu-bg) !important;
    border-bottom: 1px solid var(--plas-menu-border, #dfe8f2) !important;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06) !important;
    font-family: inherit !important;
    line-height: 1.3 !important;
    overflow: visible !important;
    isolation: isolate;
}

nav.plas-tech-menu,
nav.plas-tech-menu * {
    box-sizing: border-box !important;
}

nav.plas-tech-menu a,
nav.plas-tech-menu a:hover,
nav.plas-tech-menu a:focus {
    text-decoration: none !important;
}

nav.plas-tech-menu ul,
nav.plas-tech-menu li {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

nav.plas-tech-menu img {
    float: none !important;
    border: 0 !important;
    vertical-align: middle !important;
}

nav.plas-tech-menu .plas-tech-menu__inner {
    max-width: var(--plas-menu-inner-width, 1440px) !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding-left: var(--plas-menu-inner-padding-x, 28px) !important;
    padding-right: var(--plas-menu-inner-padding-x, 28px) !important;
    overflow: visible !important;
}

nav.plas-tech-menu .plas-tech-menu__list {
    display: flex !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    flex-wrap: nowrap !important;
    gap: 4px !important;
    min-height: var(--plas-menu-height, 60px) !important;
    overflow: visible !important;
}

nav.plas-tech-menu .plas-tech-menu__item {
    position: static !important;
    display: block !important;
    flex: 0 0 auto !important;
    overflow: visible !important;
}

nav.plas-tech-menu .plas-tech-menu__link {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 9px !important;
    min-height: var(--plas-menu-height, 60px) !important;
    height: var(--plas-menu-height, 60px) !important;
    max-height: var(--plas-menu-height, 60px) !important;
    padding: 0 var(--plas-menu-link-padding-x, 15px) !important;
    color: var(--plas-menu-text) !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: var(--plas-menu-radius-link, 14px) !important;
    font-size: var(--plas-menu-link-font-size, 15px) !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    transition: background .18s ease, color .18s ease !important;
}

nav.plas-tech-menu .plas-tech-menu__link:hover,
nav.plas-tech-menu .plas-tech-menu__item:hover > .plas-tech-menu__link,
nav.plas-tech-menu .plas-tech-menu__item:focus-within > .plas-tech-menu__link {
    color: var(--plas-menu-blue) !important;
    background: var(--plas-menu-soft) !important;
}


nav.plas-tech-menu .plas-tech-menu__thumb,
nav.plas-tech-menu .plas-tech-menu__mega-image,
nav.plas-tech-menu .plas-tech-menu__submenu-image {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    overflow: hidden !important;
    line-height: 0 !important;
}

nav.plas-tech-menu .plas-tech-menu__thumb {
    width: var(--plas-menu-thumb-main, 30px) !important;
    height: var(--plas-menu-thumb-main, 30px) !important;
    min-width: var(--plas-menu-thumb-main, 30px) !important;
    max-width: var(--plas-menu-thumb-main, 30px) !important;
    max-height: var(--plas-menu-thumb-main, 30px) !important;
    border-radius: var(--plas-menu-radius-thumb, 10px) !important;
    background: var(--plas-menu-soft, #f1f7fd) !important;
    border: 1px solid var(--plas-menu-border) !important;
}

nav.plas-tech-menu .plas-tech-menu__mega-image {
    width: var(--plas-menu-thumb-mega, 54px) !important;
    height: var(--plas-menu-thumb-mega, 54px) !important;
    min-width: var(--plas-menu-thumb-mega, 54px) !important;
    max-width: var(--plas-menu-thumb-mega, 54px) !important;
    max-height: var(--plas-menu-thumb-mega, 54px) !important;
    border-radius: var(--plas-menu-radius-thumb, 10px) !important;
    background: var(--plas-menu-mega-bg, #ffffff) !important;
    border: 1px solid var(--plas-menu-border) !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .08) !important;
}

nav.plas-tech-menu .plas-tech-menu__submenu-image {
    width: var(--plas-menu-thumb-sub, 34px) !important;
    height: var(--plas-menu-thumb-sub, 34px) !important;
    min-width: var(--plas-menu-thumb-sub, 34px) !important;
    max-width: var(--plas-menu-thumb-sub, 34px) !important;
    max-height: var(--plas-menu-thumb-sub, 34px) !important;
    border-radius: var(--plas-menu-radius-thumb, 10px) !important;
    background: var(--plas-menu-soft) !important;
    border: 1px solid var(--plas-menu-border) !important;
}

nav.plas-tech-menu .plas-tech-menu__thumb > img,
nav.plas-tech-menu .plas-tech-menu__mega-image > img,
nav.plas-tech-menu .plas-tech-menu__submenu-image > img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: var(--plas-menu-thumb-fit, contain) !important;
    object-position: center center !important;
}

nav.plas-tech-menu .plas-tech-menu__arrow {
    width: 7px !important;
    height: 7px !important;
    flex: 0 0 7px !important;
    border-right: 2px solid currentColor !important;
    border-bottom: 2px solid currentColor !important;
    transform: rotate(45deg) translateY(-2px) !important;
    opacity: .75 !important;
}

nav.plas-tech-menu .plas-tech-menu__mega {
    position: absolute !important;
    left: 50% !important;
    top: 100% !important;
    width: min(var(--plas-menu-mega-width, 1320px), calc(100vw - 48px)) !important;
    max-height: calc(100vh - 140px) !important;
    overflow: auto !important;
    transform: translateX(-50%) translateY(12px) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    background: var(--plas-menu-mega-bg, #ffffff) !important;
    border: 1px solid var(--plas-menu-border) !important;
    border-radius: var(--plas-menu-radius-mega, 24px) !important;
    box-shadow: 0 28px 80px rgba(15, 23, 42, .18) !important;
    transition: opacity .18s ease, transform .18s ease, visibility .18s ease !important;
}

nav.plas-tech-menu .plas-tech-menu__item:hover > .plas-tech-menu__mega,
nav.plas-tech-menu .plas-tech-menu__item:focus-within > .plas-tech-menu__mega {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateX(-50%) translateY(0) !important;
}

nav.plas-tech-menu .plas-tech-menu__mega-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 24px !important;
    padding: var(--plas-menu-mega-header-padding, 20px) !important;
    background: var(--plas-menu-header-bg, #eef6ff) !important;
    border-bottom: 1px solid var(--plas-menu-border) !important;
}

nav.plas-tech-menu .plas-tech-menu__mega-title-wrap {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    min-width: 0 !important;
}

nav.plas-tech-menu .plas-tech-menu__mega-header strong {
    display: block !important;
    color: var(--plas-menu-text) !important;
    font-size: 20px !important;
    font-weight: 900 !important;
    line-height: 1.25 !important;
}

nav.plas-tech-menu .plas-tech-menu__mega-header span {
    display: block !important;
    margin-top: 4px !important;
    color: var(--plas-menu-muted) !important;
    font-size: var(--plas-menu-submenu-font-size, 14px) !important;
    font-weight: 500 !important;
}

nav.plas-tech-menu .plas-tech-menu__all-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 38px !important;
    padding: 0 16px !important;
    color: #ffffff !important;
    background: var(--plas-menu-blue) !important;
    border-radius: 999px !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
}

nav.plas-tech-menu .plas-tech-menu__grid {
    display: grid !important;
    grid-template-columns: repeat(var(--plas-menu-grid-columns, 4), minmax(0, 1fr)) !important;
    gap: 26px 34px !important;
    padding: var(--plas-menu-mega-grid-padding, 28px) !important;
}

nav.plas-tech-menu .plas-tech-menu__group {
    min-width: 0 !important;
}

nav.plas-tech-menu .plas-tech-menu__heading {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 0 12px !important;
    padding: 0 0 9px !important;
    color: var(--plas-menu-text) !important;
    border-bottom: 1px solid var(--plas-menu-border, #dfe8f2) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1.25 !important;
    text-transform: uppercase !important;
    letter-spacing: .025em !important;
}

nav.plas-tech-menu .plas-tech-menu__heading:hover {
    color: var(--plas-menu-blue) !important;
}

nav.plas-tech-menu .plas-tech-menu__sublist {
    display: grid !important;
    gap: 2px !important;
}

nav.plas-tech-menu .plas-tech-menu__sublist a {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-width: 0 !important;
    padding: 7px 10px 7px 14px !important;
    color: var(--plas-menu-text, #0f172a) !important;
    background: transparent !important;
    border-radius: var(--plas-menu-radius-thumb, 10px) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    white-space: normal !important;
}

nav.plas-tech-menu .plas-tech-menu__sublist a::before {
    content: "" !important;
    position: absolute !important;
    left: 2px !important;
    top: 50% !important;
    width: 5px !important;
    height: 5px !important;
    border-radius: 999px !important;
    background: var(--plas-menu-blue) !important;
    opacity: 0 !important;
    transform: translateY(-50%) scale(.5) !important;
}

nav.plas-tech-menu .plas-tech-menu__sublist a:hover {
    color: var(--plas-menu-blue) !important;
    background: var(--plas-menu-soft) !important;
    padding-left: 18px !important;
}

nav.plas-tech-menu .plas-tech-menu__subitem-title {
    display: block !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
}

nav.plas-tech-menu .plas-tech-menu__sublist a:hover::before {
    opacity: 1 !important;
    transform: translateY(-50%) scale(1) !important;
}

nav.plas-tech-menu .plas-tech-menu__toggle {
    display: none !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    min-height: 54px !important;
    padding: 0 !important;
    color: var(--plas-menu-text) !important;
    background: transparent !important;
    border: 0 !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    cursor: pointer !important;
}

nav.plas-tech-menu .plas-tech-menu__toggle-icon,
nav.plas-tech-menu .plas-tech-menu__toggle-icon::before,
nav.plas-tech-menu .plas-tech-menu__toggle-icon::after {
    display: block !important;
    width: 22px !important;
    height: 2px !important;
    background: currentColor !important;
    border-radius: 999px !important;
}

nav.plas-tech-menu .plas-tech-menu__toggle-icon {
    position: relative !important;
}

nav.plas-tech-menu .plas-tech-menu__toggle-icon::before,
nav.plas-tech-menu .plas-tech-menu__toggle-icon::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
}

nav.plas-tech-menu .plas-tech-menu__toggle-icon::before { top: -7px !important; }
nav.plas-tech-menu .plas-tech-menu__toggle-icon::after { top: 7px !important; }

@media (max-width: 1199px) {
    nav.plas-tech-menu .plas-tech-menu__grid {
        grid-template-columns: repeat(var(--plas-menu-grid-columns, 4), minmax(0, 1fr)) !important;
    }
}

@media (max-width: 991px) {
    nav.plas-tech-menu .plas-tech-menu__inner {
        padding: 0 18px !important;
    }

    nav.plas-tech-menu .plas-tech-menu__toggle {
        display: flex !important;
    }

    nav.plas-tech-menu .plas-tech-menu__list {
        display: none !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0 !important;
        min-height: 0 !important;
        padding: 0 0 16px !important;
    }

    nav.plas-tech-menu.is-open .plas-tech-menu__list {
        display: flex !important;
    }

    nav.plas-tech-menu .plas-tech-menu__item {
        position: relative !important;
        border-top: 1px solid var(--plas-menu-border, #dfe8f2) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__link {
        justify-content: space-between !important;
        min-height: 54px !important;
        height: auto !important;
        max-height: none !important;
        padding: 0 4px !important;
        border-radius: 0 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega {
        position: static !important;
        width: 100% !important;
        max-height: none !important;
        overflow: visible !important;
        transform: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        display: none !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        background: var(--plas-menu-mega-bg, #ffffff) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__item.is-mobile-open > .plas-tech-menu__mega {
        display: block !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega-header {
        position: static !important;
        padding: 16px !important;
        border-radius: var(--plas-menu-radius-link, 14px) !important;
        margin: 0 0 12px !important;
    }

    nav.plas-tech-menu .plas-tech-menu__grid {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
        padding: 16px 0 20px !important;
    }

    nav.plas-tech-menu .plas-tech-menu__group {
        padding: 0 8px !important;
    }
}

@media (max-width: 575px) {
    nav.plas-tech-menu .plas-tech-menu__inner {
        padding: 0 14px !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega-header,
    nav.plas-tech-menu .plas-tech-menu__mega-title-wrap {
        align-items: flex-start !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega-header {
        flex-direction: column !important;
    }

    nav.plas-tech-menu .plas-tech-menu__all-link {
        width: 100% !important;
    }
}


/* v1.2.8 fixed-pixel lock for submenu thumbnails */
nav.plas-tech-menu .plas-tech-menu__submenu-image {
    width: var(--plas-menu-thumb-sub, 34px) !important;
    height: var(--plas-menu-thumb-sub, 34px) !important;
    min-width: var(--plas-menu-thumb-sub, 34px) !important;
    max-width: var(--plas-menu-thumb-sub, 34px) !important;
    min-height: var(--plas-menu-thumb-sub, 34px) !important;
    max-height: var(--plas-menu-thumb-sub, 34px) !important;
    flex: 0 0 var(--plas-menu-thumb-sub, 34px) !important;
}

nav.plas-tech-menu .plas-tech-menu__submenu-image img {
    display: block !important;
    width: var(--plas-menu-thumb-sub, 34px) !important;
    height: var(--plas-menu-thumb-sub, 34px) !important;
    min-width: var(--plas-menu-thumb-sub, 34px) !important;
    min-height: var(--plas-menu-thumb-sub, 34px) !important;
    max-width: var(--plas-menu-thumb-sub, 34px) !important;
    max-height: var(--plas-menu-thumb-sub, 34px) !important;
    object-fit: var(--plas-menu-thumb-fit, contain) !important;
}


/* v1.2.8 fixed-pixel lock for all thumbnail image tags */
nav.plas-tech-menu .plas-tech-menu__thumb img {
    display: block !important;
    width: var(--plas-menu-thumb-main, 30px) !important;
    height: var(--plas-menu-thumb-main, 30px) !important;
    min-width: var(--plas-menu-thumb-main, 30px) !important;
    min-height: var(--plas-menu-thumb-main, 30px) !important;
    max-width: var(--plas-menu-thumb-main, 30px) !important;
    max-height: var(--plas-menu-thumb-main, 30px) !important;
    object-fit: var(--plas-menu-thumb-fit, contain) !important;
}

nav.plas-tech-menu .plas-tech-menu__mega-image img {
    display: block !important;
    width: var(--plas-menu-thumb-mega, 54px) !important;
    height: var(--plas-menu-thumb-mega, 54px) !important;
    min-width: var(--plas-menu-thumb-mega, 54px) !important;
    min-height: var(--plas-menu-thumb-mega, 54px) !important;
    max-width: var(--plas-menu-thumb-mega, 54px) !important;
    max-height: var(--plas-menu-thumb-mega, 54px) !important;
    object-fit: var(--plas-menu-thumb-fit, contain) !important;
}

/* v1.3.0 backend design settings */
nav.plas-tech-menu {
    background: var(--plas-menu-bg, #ffffff) !important;
    border-bottom-color: var(--plas-menu-border, #dfe8f2) !important;
}

nav.plas-tech-menu .plas-tech-menu__inner {
    max-width: var(--plas-menu-inner-width, 1440px) !important;
}

nav.plas-tech-menu .plas-tech-menu__link {
    border-radius: var(--plas-menu-radius-link, 14px) !important;
}

nav.plas-tech-menu .plas-tech-menu__mega {
    width: min(var(--plas-menu-mega-width, 1320px), calc(100vw - 48px)) !important;
    background: var(--plas-menu-mega-bg, #ffffff) !important;
    border-color: var(--plas-menu-border, #dfe8f2) !important;
    border-radius: var(--plas-menu-radius-mega, 24px) !important;
}

nav.plas-tech-menu .plas-tech-menu__mega-header {
    background: var(--plas-menu-header-bg, #eef6ff) !important;
    border-bottom-color: var(--plas-menu-border, #dfe8f2) !important;
    padding: var(--plas-menu-mega-header-padding, 20px) !important;
}

nav.plas-tech-menu .plas-tech-menu__grid {
    grid-template-columns: repeat(var(--plas-menu-grid-columns, 4), minmax(0, 1fr)) !important;
    padding: var(--plas-menu-mega-grid-padding, 28px) !important;
}

nav.plas-tech-menu .plas-tech-menu__thumb,
nav.plas-tech-menu .plas-tech-menu__mega-image,
nav.plas-tech-menu .plas-tech-menu__submenu-image {
    border-radius: var(--plas-menu-radius-thumb, 10px) !important;
}

nav.plas-tech-menu.plas-tech-menu--no-uppercase .plas-tech-menu__heading {
    text-transform: none !important;
    letter-spacing: 0 !important;
}

nav.plas-tech-menu.plas-tech-menu--groups-card .plas-tech-menu__group {
    padding: 16px !important;
    background: color-mix(in srgb, var(--plas-menu-soft, #f1f7fd) 45%, #ffffff) !important;
    border: 1px solid var(--plas-menu-border, #dfe8f2) !important;
    border-radius: calc(var(--plas-menu-radius-link, 14px) + 2px) !important;
}

nav.plas-tech-menu.plas-tech-menu--groups-card .plas-tech-menu__heading {
    margin-bottom: 12px !important;
}

nav.plas-tech-menu.plas-tech-menu--groups-compact .plas-tech-menu__grid {
    gap: 14px 18px !important;
}

nav.plas-tech-menu.plas-tech-menu--groups-compact .plas-tech-menu__heading {
    margin-bottom: 6px !important;
    padding-bottom: 6px !important;
}

nav.plas-tech-menu.plas-tech-menu--groups-compact .plas-tech-menu__sublist a {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
}

@media (max-width: 1199px) {
    nav.plas-tech-menu .plas-tech-menu__grid {
        grid-template-columns: repeat(min(var(--plas-menu-grid-columns, 4), 3), minmax(0, 1fr)) !important;
    }
}

@media (max-width: 991px) {
    nav.plas-tech-menu .plas-tech-menu__mega,
    nav.plas-tech-menu .plas-tech-menu__grid {
        width: 100% !important;
    }

    nav.plas-tech-menu .plas-tech-menu__grid {
        grid-template-columns: 1fr !important;
        padding: 16px 0 20px !important;
    }
}


/* v1.3.1 forced frontend design application */
nav.plas-tech-menu {
    background: var(--plas-menu-bg, #ffffff) !important;
    border-color: var(--plas-menu-border, #dfe8f2) !important;
}
nav.plas-tech-menu .plas-tech-menu__inner { max-width: var(--plas-menu-inner-width, 1440px) !important; }
nav.plas-tech-menu .plas-tech-menu__link { color: var(--plas-menu-text, #0f172a) !important; border-radius: var(--plas-menu-radius-link, 14px) !important; }
nav.plas-tech-menu .plas-tech-menu__link:hover,
nav.plas-tech-menu .plas-tech-menu__item:hover > .plas-tech-menu__link,
nav.plas-tech-menu .plas-tech-menu__item:focus-within > .plas-tech-menu__link { color: var(--plas-menu-blue, #0b5cab) !important; background: var(--plas-menu-soft, #f1f7fd) !important; }
nav.plas-tech-menu .plas-tech-menu__mega { width: min(var(--plas-menu-mega-width, 1320px), calc(100vw - 48px)) !important; background: var(--plas-menu-mega-bg, #ffffff) !important; border-color: var(--plas-menu-border, #dfe8f2) !important; border-radius: var(--plas-menu-radius-mega, 24px) !important; }
nav.plas-tech-menu .plas-tech-menu__mega-header { background: var(--plas-menu-header-bg, #eef6ff) !important; border-color: var(--plas-menu-border, #dfe8f2) !important; padding: var(--plas-menu-mega-header-padding, 20px) !important; }
nav.plas-tech-menu .plas-tech-menu__grid { grid-template-columns: repeat(var(--plas-menu-grid-columns, 4), minmax(0, 1fr)) !important; padding: var(--plas-menu-mega-grid-padding, 28px) !important; }
nav.plas-tech-menu .plas-tech-menu__heading { color: var(--plas-menu-text, #0f172a) !important; border-color: var(--plas-menu-border, #dfe8f2) !important; }
nav.plas-tech-menu .plas-tech-menu__mega-header strong { color: var(--plas-menu-text, #0f172a) !important; }
nav.plas-tech-menu .plas-tech-menu__mega-header span { color: var(--plas-menu-muted, #64748b) !important; }
nav.plas-tech-menu .plas-tech-menu__sublist a { color: var(--plas-menu-text, #0f172a) !important; border-radius: var(--plas-menu-radius-link, 14px) !important; }
nav.plas-tech-menu .plas-tech-menu__thumb,
nav.plas-tech-menu .plas-tech-menu__mega-image,
nav.plas-tech-menu .plas-tech-menu__submenu-image { border-color: var(--plas-menu-border, #dfe8f2) !important; border-radius: var(--plas-menu-radius-thumb, 10px) !important; background: var(--plas-menu-soft, #f1f7fd) !important; }


/* v1.3.5 fixed menu dimension controls */
nav.plas-tech-menu .plas-tech-menu__list {
    min-height: var(--plas-menu-height, 60px) !important;
}

nav.plas-tech-menu .plas-tech-menu__link {
    height: var(--plas-menu-height, 60px) !important;
    min-height: var(--plas-menu-height, 60px) !important;
    max-height: var(--plas-menu-height, 60px) !important;
    padding-left: var(--plas-menu-link-padding-x, 15px) !important;
    padding-right: var(--plas-menu-link-padding-x, 15px) !important;
    font-size: var(--plas-menu-link-font-size, 15px) !important;
}

nav.plas-tech-menu .plas-tech-menu__sublist a {
    font-size: var(--plas-menu-submenu-font-size, 14px) !important;
}

@media (max-width: 991px) {
    nav.plas-tech-menu .plas-tech-menu__link {
        min-height: var(--plas-menu-height, 60px) !important;
        height: auto !important;
        max-height: none !important;
        padding-left: var(--plas-menu-link-padding-x, 15px) !important;
        padding-right: var(--plas-menu-link-padding-x, 15px) !important;
    }
}

/* v1.3.7 menu wrapping for many top-level items */
nav.plas-tech-menu .plas-tech-menu__list {
    flex-wrap: wrap !important;
    row-gap: 6px !important;
    column-gap: 4px !important;
    align-items: stretch !important;
    align-content: flex-start !important;
    min-height: unset !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
}

nav.plas-tech-menu .plas-tech-menu__item {
    flex: 0 0 auto !important;
    max-width: 100% !important;
}

nav.plas-tech-menu .plas-tech-menu__link {
    white-space: nowrap !important;
    max-width: 100% !important;
}

nav.plas-tech-menu .plas-tech-menu__inner {
    overflow: visible !important;
}

@media (max-width: 991px) {
    nav.plas-tech-menu .plas-tech-menu__list {
        flex-wrap: nowrap !important;
        row-gap: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 16px !important;
    }
}


/* v1.3.8 real wrap fix inside constrained theme headers */
nav.plas-tech-menu {
    max-width: 100% !important;
    min-width: 0 !important;
    width: 100% !important;
    overflow: visible !important;
}

nav.plas-tech-menu .plas-tech-menu__inner {
    max-width: min(var(--plas-menu-inner-width, 1440px), 100%) !important;
    min-width: 0 !important;
    width: 100% !important;
    overflow: visible !important;
}

nav.plas-tech-menu .plas-tech-menu__list {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    overflow: visible !important;
    row-gap: 6px !important;
    column-gap: 4px !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
}

nav.plas-tech-menu .plas-tech-menu__item {
    min-width: 0 !important;
    max-width: 100% !important;
    flex: 0 1 auto !important;
}

nav.plas-tech-menu .plas-tech-menu__link {
    min-width: 0 !important;
    max-width: 100% !important;
    white-space: normal !important;
    overflow: visible !important;
    text-align: left !important;
}

nav.plas-tech-menu .plas-tech-menu__link > span:not(.plas-tech-menu__thumb):not(.plas-tech-menu__arrow) {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
}

/* Common PrestaShop header flex containers: allow this module to shrink and wrap */
.header-top nav.plas-tech-menu,
.header-nav nav.plas-tech-menu,
#header nav.plas-tech-menu,
#header .plas-tech-menu,
.header-top .plas-tech-menu {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
}

@media (max-width: 991px) {
    nav.plas-tech-menu .plas-tech-menu__list {
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        row-gap: 0 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__link {
        white-space: normal !important;
    }
}


/* v1.3.9 runtime frontend wrap boundary */
nav.plas-tech-menu {
    width: min(100%, var(--plas-menu-runtime-width, 100%)) !important;
    max-width: var(--plas-menu-runtime-width, 100%) !important;
    min-width: 0 !important;
}

nav.plas-tech-menu .plas-tech-menu__inner,
nav.plas-tech-menu .plas-tech-menu__list {
    width: 100% !important;
    max-width: var(--plas-menu-runtime-width, 100%) !important;
    min-width: 0 !important;
}

nav.plas-tech-menu.plas-tech-menu--runtime-ready .plas-tech-menu__list {
    flex-wrap: wrap !important;
}


/* v1.4.2 mobile submenu open/close fix */
@media (max-width: 991px) {
    nav.plas-tech-menu {
        overflow: visible !important;
    }

    nav.plas-tech-menu .plas-tech-menu__inner {
        width: 100% !important;
        max-width: 100% !important;
        overflow: visible !important;
    }

    nav.plas-tech-menu .plas-tech-menu__list {
        display: none !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
        max-width: 100% !important;
        gap: 0 !important;
    }

    nav.plas-tech-menu.is-open .plas-tech-menu__list {
        display: flex !important;
    }

    nav.plas-tech-menu .plas-tech-menu__item {
        position: relative !important;
        width: 100% !important;
        display: block !important;
    }

    nav.plas-tech-menu .plas-tech-menu__link {
        width: 100% !important;
        justify-content: space-between !important;
        text-align: left !important;
        height: auto !important;
        min-height: var(--plas-menu-height, 54px) !important;
        max-height: none !important;
        white-space: normal !important;
        overflow: visible !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega {
        position: static !important;
        left: auto !important;
        top: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        max-height: none !important;
        overflow: visible !important;
        transform: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        display: none !important;
        margin: 0 !important;
        border-radius: var(--plas-menu-radius-mega, 12px) !important;
        box-shadow: none !important;
    }

    nav.plas-tech-menu .plas-tech-menu__item.is-mobile-open > .plas-tech-menu__mega {
        display: block !important;
    }

    nav.plas-tech-menu .plas-tech-menu__item:hover > .plas-tech-menu__mega,
    nav.plas-tech-menu .plas-tech-menu__item:focus-within > .plas-tech-menu__mega {
        transform: none !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega-header {
        position: static !important;
    }

    nav.plas-tech-menu .plas-tech-menu__grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        width: 100% !important;
        max-width: 100% !important;
        padding: var(--plas-menu-mega-grid-padding, 18px) !important;
    }
}


/* v1.4.3 robust mobile open state */
@media (max-width: 991px) {
    nav.plas-tech-menu .plas-tech-menu__toggle {
        display: flex !important;
        cursor: pointer !important;
        pointer-events: auto !important;
        position: relative !important;
        z-index: 5 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__list {
        display: none !important;
    }

    nav.plas-tech-menu.is-open .plas-tech-menu__list {
        display: flex !important;
    }

    nav.plas-tech-menu .plas-tech-menu__item.has-mega > .plas-tech-menu__mega {
        display: none !important;
        position: static !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: none !important;
    }

    nav.plas-tech-menu .plas-tech-menu__item.has-mega.is-mobile-open > .plas-tech-menu__mega {
        display: block !important;
    }

    nav.plas-tech-menu .plas-tech-menu__link {
        cursor: pointer !important;
        pointer-events: auto !important;
    }

    nav.plas-tech-menu .plas-tech-menu__arrow {
        pointer-events: none !important;
    }
}


/* v1.4.4 hard mobile display fallback */
@media (max-width: 991px) {
    nav.plas-tech-menu .plas-tech-menu__toggle {
        display: flex !important;
        pointer-events: auto !important;
        cursor: pointer !important;
        user-select: none !important;
    }

    nav.plas-tech-menu .plas-tech-menu__list {
        display: none !important;
        width: 100% !important;
        flex-direction: column !important;
    }

    nav.plas-tech-menu.is-open .plas-tech-menu__list {
        display: flex !important;
    }

    nav.plas-tech-menu .plas-tech-menu__item.has-mega > .plas-tech-menu__mega {
        display: none !important;
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: none !important;
    }

    nav.plas-tech-menu .plas-tech-menu__item.has-mega.is-mobile-open > .plas-tech-menu__mega {
        display: block !important;
    }
}


/* v1.4.5 mobile design cleanup */
@media (max-width: 991px) {
    nav.plas-tech-menu {
        border: 1px solid var(--plas-menu-border, #dfe8f2) !important;
        border-radius: 16px !important;
        box-shadow: 0 10px 24px rgba(15, 23, 42, .06) !important;
        overflow: hidden !important;
        background: var(--plas-menu-bg, #ffffff) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__inner {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__toggle {
        width: 100% !important;
        min-height: 58px !important;
        padding: 16px 18px !important;
        border-bottom: 1px solid var(--plas-menu-border, #dfe8f2) !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 12px !important;
        background: var(--plas-menu-bg, #ffffff) !important;
    }

    nav.plas-tech-menu.is-open .plas-tech-menu__toggle {
        background: var(--plas-menu-soft, #f1f7fd) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__list {
        padding: 8px !important;
        gap: 6px !important;
        background: var(--plas-menu-bg, #ffffff) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__item {
        width: 100% !important;
    }

    nav.plas-tech-menu .plas-tech-menu__link {
        display: grid !important;
        grid-template-columns: auto minmax(0, 1fr) auto !important;
        align-items: center !important;
        justify-content: initial !important;
        gap: 12px !important;
        width: 100% !important;
        padding: 12px 14px !important;
        min-height: 52px !important;
        height: auto !important;
        max-height: none !important;
        border-radius: 12px !important;
        background: transparent !important;
        overflow: visible !important;
    }

    nav.plas-tech-menu .plas-tech-menu__link:hover,
    nav.plas-tech-menu .plas-tech-menu__item.is-mobile-open > .plas-tech-menu__link {
        background: var(--plas-menu-soft, #f1f7fd) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__thumb {
        margin: 0 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__link-title {
        min-width: 0 !important;
        display: block !important;
        text-align: left !important;
        white-space: normal !important;
        word-break: break-word !important;
        font-weight: 800 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__arrow {
        margin-left: auto !important;
        justify-self: end !important;
        transform: rotate(45deg) translateY(-1px) !important;
        transition: transform .18s ease !important;
    }

    nav.plas-tech-menu .plas-tech-menu__item.is-mobile-open > .plas-tech-menu__link .plas-tech-menu__arrow {
        transform: rotate(225deg) translateY(0) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega {
        margin: 4px 0 10px !important;
        border: 1px solid var(--plas-menu-border, #dfe8f2) !important;
        border-radius: 14px !important;
        background: var(--plas-menu-mega-bg, #ffffff) !important;
        box-shadow: none !important;
        overflow: hidden !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega-header {
        padding: 14px 16px !important;
        background: var(--plas-menu-header-bg, #eef6ff) !important;
        border-bottom: 1px solid var(--plas-menu-border, #dfe8f2) !important;
        gap: 12px !important;
        position: static !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega-title-wrap {
        gap: 12px !important;
        align-items: center !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega-text strong {
        display: block !important;
        font-size: 18px !important;
        line-height: 1.2 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega-text span {
        display: block !important;
        margin-top: 4px !important;
        font-size: 13px !important;
        line-height: 1.4 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__all-link {
        width: auto !important;
        align-self: flex-start !important;
    }

    nav.plas-tech-menu .plas-tech-menu__grid {
        padding: 12px !important;
        gap: 12px !important;
        grid-template-columns: 1fr !important;
    }

    nav.plas-tech-menu .plas-tech-menu__group {
        padding: 0 !important;
        border: 1px solid var(--plas-menu-border, #dfe8f2) !important;
        border-radius: 12px !important;
        background: #fff !important;
        overflow: hidden !important;
    }

    nav.plas-tech-menu .plas-tech-menu__heading {
        margin: 0 !important;
        padding: 12px 14px !important;
        border-bottom: 1px solid var(--plas-menu-border, #dfe8f2) !important;
        font-size: 14px !important;
        text-transform: none !important;
        letter-spacing: 0 !important;
        background: #fff !important;
    }

    nav.plas-tech-menu .plas-tech-menu__sublist {
        gap: 4px !important;
        padding: 8px !important;
    }

    nav.plas-tech-menu .plas-tech-menu__sublist a {
        padding: 10px 12px !important;
        border-radius: 10px !important;
        background: transparent !important;
    }

    nav.plas-tech-menu .plas-tech-menu__sublist a::before {
        display: none !important;
    }

    nav.plas-tech-menu .plas-tech-menu__sublist a:hover {
        padding-left: 12px !important;
        background: var(--plas-menu-soft, #f1f7fd) !important;
    }
}

@media (max-width: 575px) {
    nav.plas-tech-menu .plas-tech-menu__toggle {
        padding: 14px 16px !important;
    }

    nav.plas-tech-menu .plas-tech-menu__link {
        padding: 11px 12px !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega-header {
        padding: 12px 14px !important;
    }

    nav.plas-tech-menu .plas-tech-menu__grid {
        padding: 10px !important;
    }
}


/* v1.4.6 modern design refinement */
nav.plas-tech-menu {
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.08) !important;
}

nav.plas-tech-menu .plas-tech-menu__link {
    font-weight: 700 !important;
}

nav.plas-tech-menu .plas-tech-menu__mega {
    box-shadow: 0 24px 70px rgba(15, 23, 42, 0.16) !important;
}

nav.plas-tech-menu .plas-tech-menu__all-link {
    border-radius: 999px !important;
}

nav.plas-tech-menu .plas-tech-menu__group {
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}

nav.plas-tech-menu .plas-tech-menu__group:hover {
    transform: translateY(-1px) !important;
}

@media (max-width: 991px) {
    nav.plas-tech-menu {
        border: 1px solid rgba(148, 163, 184, 0.26) !important;
        border-radius: 20px !important;
        box-shadow: 0 18px 44px rgba(15, 23, 42, 0.08) !important;
        background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__toggle {
        min-height: 60px !important;
        padding: 16px 18px !important;
        border-bottom: 1px solid rgba(148, 163, 184, 0.22) !important;
        background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
        font-weight: 800 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__toggle-icon {
        width: 22px !important;
        height: 2px !important;
        background: var(--plas-menu-text, #0f172a) !important;
        position: relative !important;
        border-radius: 999px !important;
        box-shadow: none !important;
    }

    nav.plas-tech-menu .plas-tech-menu__toggle-icon::before,
    nav.plas-tech-menu .plas-tech-menu__toggle-icon::after {
        content: '' !important;
        position: absolute !important;
        left: 0 !important;
        width: 22px !important;
        height: 2px !important;
        background: currentColor !important;
        border-radius: 999px !important;
    }

    nav.plas-tech-menu .plas-tech-menu__toggle-icon::before { top: -7px !important; }
    nav.plas-tech-menu .plas-tech-menu__toggle-icon::after { top: 7px !important; }

    nav.plas-tech-menu.is-open .plas-tech-menu__toggle {
        background: linear-gradient(180deg, #f8fbff 0%, #f1f7fd 100%) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__list {
        padding: 10px !important;
        gap: 8px !important;
        background: transparent !important;
    }

    nav.plas-tech-menu .plas-tech-menu__link {
        padding: 14px 14px !important;
        min-height: 56px !important;
        border: 1px solid rgba(148, 163, 184, 0.18) !important;
        border-radius: 16px !important;
        background: rgba(255, 255, 255, 0.92) !important;
        box-shadow: 0 3px 10px rgba(15, 23, 42, 0.03) !important;
        backdrop-filter: blur(8px) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__item.is-mobile-open > .plas-tech-menu__link,
    nav.plas-tech-menu .plas-tech-menu__link:hover {
        background: linear-gradient(180deg, #f8fbff 0%, #f1f7fd 100%) !important;
        border-color: rgba(11, 92, 171, 0.18) !important;
        box-shadow: 0 8px 18px rgba(11, 92, 171, 0.08) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__thumb {
        border-radius: 12px !important;
        background: #ffffff !important;
        box-shadow: 0 4px 12px rgba(15, 23, 42, 0.06) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__link-title {
        font-size: 15px !important;
        line-height: 1.3 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__arrow {
        width: 10px !important;
        height: 10px !important;
        flex: 0 0 10px !important;
        padding: 0 !important;
        opacity: .9 !important;
        margin-left: auto !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega {
        margin: 6px 2px 12px !important;
        border: 1px solid rgba(148, 163, 184, 0.20) !important;
        border-radius: 18px !important;
        background: linear-gradient(180deg, #ffffff 0%, #fcfdff 100%) !important;
        box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega-header {
        padding: 16px !important;
        background: linear-gradient(180deg, #f6fbff 0%, #eef6ff 100%) !important;
        border-bottom: 1px solid rgba(148, 163, 184, 0.20) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega-text strong {
        font-size: 18px !important;
        font-weight: 800 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega-text span {
        color: var(--plas-menu-muted, #64748b) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__grid {
        padding: 12px !important;
        gap: 12px !important;
    }

    nav.plas-tech-menu .plas-tech-menu__group {
        border: 1px solid rgba(148, 163, 184, 0.18) !important;
        border-radius: 16px !important;
        background: #ffffff !important;
        box-shadow: 0 3px 10px rgba(15, 23, 42, 0.03) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__heading {
        padding: 13px 14px !important;
        font-size: 14px !important;
        font-weight: 800 !important;
        background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__sublist {
        padding: 8px !important;
        gap: 6px !important;
        background: #ffffff !important;
    }

    nav.plas-tech-menu .plas-tech-menu__sublist a {
        padding: 11px 12px !important;
        border: 1px solid transparent !important;
        border-radius: 12px !important;
        background: #f8fafc !important;
        font-size: 14px !important;
        font-weight: 600 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__sublist a:hover {
        background: #f1f7fd !important;
        border-color: rgba(11, 92, 171, 0.14) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__submenu-image {
        border-radius: 10px !important;
        background: #ffffff !important;
    }

    nav.plas-tech-menu .plas-tech-menu__all-link {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: 38px !important;
        padding: 0 14px !important;
        border: 1px solid rgba(11, 92, 171, 0.16) !important;
        background: #ffffff !important;
        color: var(--plas-menu-blue, #0b5cab) !important;
        font-weight: 700 !important;
        box-shadow: 0 3px 10px rgba(11, 92, 171, 0.04) !important;
    }
}

@media (max-width: 575px) {
    nav.plas-tech-menu {
        border-radius: 18px !important;
    }

    nav.plas-tech-menu .plas-tech-menu__toggle {
        min-height: 56px !important;
        padding: 14px 16px !important;
    }

    nav.plas-tech-menu .plas-tech-menu__list {
        padding: 8px !important;
    }

    nav.plas-tech-menu .plas-tech-menu__link {
        min-height: 54px !important;
        padding: 12px !important;
        gap: 10px !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega-header,
    nav.plas-tech-menu .plas-tech-menu__grid {
        padding: 10px !important;
    }

    nav.plas-tech-menu .plas-tech-menu__heading {
        padding: 12px !important;
    }

    nav.plas-tech-menu .plas-tech-menu__sublist {
        padding: 6px !important;
    }
}


/* v1.4.7 mobile structure polish */
@media (max-width: 991px) {
    nav.plas-tech-menu .plas-tech-menu__mega-title-wrap {
        display: grid !important;
        grid-template-columns: auto minmax(0, 1fr) !important;
        align-items: center !important;
        gap: 12px !important;
        width: 100% !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega-image {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        min-height: 44px !important;
        max-width: 44px !important;
        max-height: 44px !important;
        border-radius: 12px !important;
        overflow: hidden !important;
        box-shadow: 0 4px 12px rgba(15,23,42,.06) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega-text {
        min-width: 0 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega-text strong,
    nav.plas-tech-menu .plas-tech-menu__mega-text span {
        text-align: left !important;
    }

    nav.plas-tech-menu .plas-tech-menu__group {
        display: block !important;
        width: 100% !important;
        overflow: hidden !important;
    }

    nav.plas-tech-menu .plas-tech-menu__heading {
        display: grid !important;
        grid-template-columns: auto minmax(0, 1fr) !important;
        align-items: center !important;
        gap: 12px !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        text-align: left !important;
    }

    nav.plas-tech-menu .plas-tech-menu__heading > span:last-child {
        min-width: 0 !important;
        display: block !important;
        text-align: left !important;
        white-space: normal !important;
        word-break: break-word !important;
        line-height: 1.35 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__sublist {
        list-style: none !important;
        margin: 0 !important;
        width: 100% !important;
    }

    nav.plas-tech-menu .plas-tech-menu__sublist li {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__sublist a {
        display: grid !important;
        grid-template-columns: auto minmax(0, 1fr) !important;
        align-items: center !important;
        gap: 12px !important;
        width: 100% !important;
        min-width: 0 !important;
        text-align: left !important;
    }

    nav.plas-tech-menu .plas-tech-menu__subitem-title {
        min-width: 0 !important;
        display: block !important;
        text-align: left !important;
        white-space: normal !important;
        word-break: break-word !important;
        line-height: 1.35 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__submenu-image {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        min-height: 40px !important;
        max-width: 40px !important;
        max-height: 40px !important;
        overflow: hidden !important;
        flex: 0 0 40px !important;
        box-shadow: 0 3px 8px rgba(15,23,42,.05) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__submenu-image img,
    nav.plas-tech-menu .plas-tech-menu__mega-image img {
        width: 100% !important;
        height: 100% !important;
        object-fit: contain !important;
        display: block !important;
    }

    nav.plas-tech-menu .plas-tech-menu__all-link {
        margin-top: 10px !important;
    }
}


/* v1.6.2 live frontend compact dropdown fix */
@media (min-width: 992px) {
    nav.plas-tech-menu {
        z-index: 9000 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega {
        top: calc(100% + 2px) !important;
        max-height: none !important;
        overflow: visible !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega-header {
        padding: 16px 20px !important;
        min-height: 0 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__mega-text strong {
        font-size: 20px !important;
        line-height: 1.25 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__grid {
        gap: 16px !important;
        padding: 28px !important;
        align-items: start !important;
    }

    nav.plas-tech-menu .plas-tech-menu__group {
        min-height: 0 !important;
        height: auto !important;
        align-self: start !important;
        background: #ffffff !important;
    }

    nav.plas-tech-menu .plas-tech-menu__heading {
        min-height: 62px !important;
        height: auto !important;
        margin: 0 !important;
        padding: 14px 16px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 10px !important;
        background: #ffffff !important;
        line-height: 1.25 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__heading > span:last-child {
        display: block !important;
        min-width: 0 !important;
        text-align: left !important;
        line-height: 1.25 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__submenu-image {
        width: var(--plas-menu-thumb-sub, 34px) !important;
        height: var(--plas-menu-thumb-sub, 34px) !important;
        min-width: var(--plas-menu-thumb-sub, 34px) !important;
        min-height: var(--plas-menu-thumb-sub, 34px) !important;
        max-width: var(--plas-menu-thumb-sub, 34px) !important;
        max-height: var(--plas-menu-thumb-sub, 34px) !important;
        flex: 0 0 var(--plas-menu-thumb-sub, 34px) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__submenu-image img {
        width: var(--plas-menu-thumb-sub, 34px) !important;
        height: var(--plas-menu-thumb-sub, 34px) !important;
        min-width: var(--plas-menu-thumb-sub, 34px) !important;
        min-height: var(--plas-menu-thumb-sub, 34px) !important;
        max-width: var(--plas-menu-thumb-sub, 34px) !important;
        max-height: var(--plas-menu-thumb-sub, 34px) !important;
        object-fit: var(--plas-menu-thumb-fit, contain) !important;
    }

    nav.plas-tech-menu .plas-tech-menu__sublist {
        padding: 8px 10px 12px !important;
        gap: 6px !important;
    }

    nav.plas-tech-menu .plas-tech-menu__sublist:empty {
        display: none !important;
        padding: 0 !important;
    }

    nav.plas-tech-menu .plas-tech-menu__sublist a {
        min-height: 42px !important;
        padding: 8px 10px !important;
    }
}

/* Remove unnecessary empty visual space when groups only contain headings */
nav.plas-tech-menu .plas-tech-menu__group:not(:has(.plas-tech-menu__sublist li)) {
    min-height: 0 !important;
}

/* Safe fallback for browsers without :has() support: keep headings compact */
nav.plas-tech-menu .plas-tech-menu__group .plas-tech-menu__heading {
    border-bottom-width: 0 !important;
}

nav.plas-tech-menu .plas-tech-menu__group .plas-tech-menu__sublist:not(:empty) {
    border-top: 1px solid color-mix(in srgb, var(--plas-menu-border, #dfe8f2) 80%, #ffffff) !important;
}

/* v1.6.2 no unwanted page-cover effect */
nav.plas-tech-menu .plas-tech-menu__mega {
    backdrop-filter: none !important;
}


/* v1.6.3 full width hook support */
#header .header-nav-full-width nav.plas-tech-menu,
#header [data-hook="displayNavFullWidth"] nav.plas-tech-menu,
nav.plas-tech-menu {
    clear: both !important;
}

@media (min-width: 992px) {
    #header .header-nav-full-width nav.plas-tech-menu .plas-tech-menu__inner,
    nav.plas-tech-menu .plas-tech-menu__inner {
        width: 100% !important;
    }
}


/* v1.6.4 full width hook center alignment */
#header nav.plas-tech-menu,
nav.plas-tech-menu {
    width: 100% !important;
    max-width: 100% !important;
}

#header nav.plas-tech-menu .plas-tech-menu__inner,
nav.plas-tech-menu .plas-tech-menu__inner {
    width: 100% !important;
    max-width: var(--plas-menu-inner-width, 1440px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

@media (min-width: 992px) {
    #header nav.plas-tech-menu .plas-tech-menu__list,
    nav.plas-tech-menu .plas-tech-menu__list {
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
    }

    #header nav.plas-tech-menu .plas-tech-menu__item,
    nav.plas-tech-menu .plas-tech-menu__item {
        flex: 0 0 auto !important;
    }

    #header nav.plas-tech-menu .plas-tech-menu__mega,
    nav.plas-tech-menu .plas-tech-menu__mega {
        left: 50% !important;
        transform: translateX(-50%) translateY(0) !important;
    }

    #header nav.plas-tech-menu .plas-tech-menu__item:hover > .plas-tech-menu__mega,
    #header nav.plas-tech-menu .plas-tech-menu__item:focus-within > .plas-tech-menu__mega,
    #header nav.plas-tech-menu .plas-tech-menu__item.is-desktop-open > .plas-tech-menu__mega,
    nav.plas-tech-menu .plas-tech-menu__item:hover > .plas-tech-menu__mega,
    nav.plas-tech-menu .plas-tech-menu__item:focus-within > .plas-tech-menu__mega,
    nav.plas-tech-menu .plas-tech-menu__item.is-desktop-open > .plas-tech-menu__mega {
        transform: translateX(-50%) translateY(0) !important;
    }
}

/* Classic full-width row helper */
#header .header-top nav.plas-tech-menu,
#header .header-nav nav.plas-tech-menu,
#header .header-nav-full-width nav.plas-tech-menu {
    margin-left: auto !important;
    margin-right: auto !important;
}
