/* ========== Header — Base ========== */
.elementor-1144 [data-id="topbar"].e-con,
.elementor-1171 [data-id="topbar"].e-con {
    background-color: #1B4332 !important;
    padding: 6px 40px !important;
}
.elementor-1144 [data-id="mainnav"].e-con,
.elementor-1171 [data-id="mainnav"].e-con {
    background-color: #2D6A4F !important;
    border-radius: 0 0 32px 32px !important;
    padding: 0 40px !important;
    min-height: 70px !important;
}
.elementor-location-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 9999 !important;
    margin: 0 24px !important;
    width: calc(100% - 48px) !important;
    max-width: calc(100% - 48px) !important;
    overflow: visible !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
    will-change: transform !important;
}
[data-id="mn-logo"] { flex: 0 0 auto !important; }
[data-id="mn-nav"]  { flex: 1 1 auto !important; justify-content: center !important; }
[data-id="mn-btn"]  { flex: 0 0 auto !important; justify-content: flex-end !important; }

/* ========== Header Shortcode Container ========== */
.elementor-location-header .elementor-shortcode { padding: 0 !important; margin: 0 !important; }
.elementor-location-header .e-con { padding: 0 !important; margin: 0 !important; }

/* ========== Nav Menu ========== */
.nutr-nav-menu { display: flex !important; list-style: none !important; margin: 0 !important; padding: 0 !important; gap: 4px !important; align-items: center !important; }
.nutr-nav-menu li { position: relative !important; }
.nutr-nav-menu > li > a { display: inline-flex !important; align-items: center !important; gap: 4px !important; color: rgba(255,255,255,0.9) !important; text-decoration: none !important; font-size: 14px !important; font-weight: 600 !important; padding: 8px 12px !important; border-radius: 8px !important; transition: all 0.2s !important; font-family: 'Tajawal', sans-serif !important; }
.nutr-nav-menu > li > a:hover,
.nutr-nav-menu > li.current-menu-item > a,
.nutr-nav-menu > li.current-menu-parent > a,
.nutr-nav-menu > li.current-menu-ancestor > a { background: rgba(255,255,255,0.15) !important; color: #E9C46A !important; }
.nutr-nav-menu > li.menu-item-has-children > a::after { content: '▾' !important; font-size: 10px !important; }
.nutr-nav-menu .sub-menu { display: none !important; position: absolute !important; top: 100% !important; right: 0 !important; background: #1B4332 !important; min-width: 200px !important; border-radius: 12px !important; padding: 8px !important; z-index: 99999 !important; box-shadow: 0 8px 24px rgba(0,0,0,0.2) !important; list-style: none !important; margin: 0 !important; }
.nutr-nav-menu li:hover > .sub-menu { display: block !important; }
.nutr-nav-menu .sub-menu li a { display: block !important; color: rgba(255,255,255,0.85) !important; text-decoration: none !important; font-size: 13px !important; font-family: 'Tajawal', sans-serif !important; padding: 8px 14px !important; border-radius: 8px !important; transition: all 0.2s !important; }
.nutr-nav-menu .sub-menu li a:hover { background: rgba(255,255,255,0.1) !important; color: #E9C46A !important; }
html:not([dir="rtl"]) .nutr-nav-menu > li > a { font-size: 15px !important; }
html:not([dir="rtl"]) .nutr-nav-menu .sub-menu li a { font-size: 14px !important; }

/* ========== Hamburger Toggle ========== */
[data-id="mainnav"] .nutr-menu-toggle {
    display: none;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    padding: 0;
    margin: 0;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.14) !important;
    border: 0 !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent !important;
}
[data-id="mainnav"] .nutr-menu-toggle:hover,
[data-id="mainnav"] .nutr-menu-toggle:focus,
[data-id="mainnav"] .nutr-menu-toggle:active { background: rgba(255,255,255,0.14) !important; border: 0 !important; outline: none !important; box-shadow: none !important; }
.nutr-menu-toggle span { position: relative; }
.nutr-menu-toggle span, .nutr-menu-toggle span::before, .nutr-menu-toggle span::after { content: ''; display: block; width: 22px; height: 2px; background: #fff !important; border-radius: 2px; transition: transform 0.25s ease; }
.nutr-menu-toggle span::before { position: absolute; top: -7px; left: 0; }
.nutr-menu-toggle span::after  { position: absolute; top: 7px; left: 0; }

/* ========== Sticky Header — Desktop only shrink ========== */
@media (max-width: 1300px) {
    .elementor-location-header.nutr-sticky-shrink [data-id="topbar"].e-con { display: none !important; }
    .elementor-location-header.nutr-sticky-shrink [data-id="mainnav"].e-con { box-shadow: 0 2px 16px rgba(0,0,0,0.12) !important; }
}

/* ========== Responsive ≤1300px ========== */
@media (max-width: 1300px) {
    .elementor-location-header {
        position: sticky !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        margin: 0 8px !important;
        width: calc(100% - 16px) !important;
        max-width: calc(100% - 16px) !important;
    }
    .elementor-1144 [data-id="topbar"].e-con,
    .elementor-1171 [data-id="topbar"].e-con { display: none !important; }
    .elementor-1144 [data-id="mainnav"].e-con,
    .elementor-1171 [data-id="mainnav"].e-con { padding: 10px 16px !important; flex-wrap: wrap !important; align-items: center !important; }
    [data-id="mn-logo"] { --container-widget-width: auto !important; --container-widget-flex-grow: 0 !important; flex: 0 0 auto !important; flex-basis: auto !important; width: auto !important; max-width: calc(100% - 56px) !important; order: 1 !important; }
    [data-id="mainnav"] .nutr-menu-toggle { display: inline-flex !important; order: 2 !important; }

    /* Nav + buttons below */
    [data-id="mn-nav"] { order: 3 !important; flex: 1 1 100% !important; justify-content: flex-start !important; }
    [data-id="mn-btn"] { order: 4 !important; flex: 1 1 100% !important; justify-content: center !important; padding-bottom: 6px !important; }

    [data-id="mn-nav"] .elementor-widget-shortcode,
    [data-id="mn-nav"] .elementor-shortcode,
    [data-id="mn-btn"] .elementor-widget-shortcode,
    [data-id="mn-btn"] .elementor-shortcode { width: 100% !important; }
    [data-id="mn-btn"] .elementor-shortcode > div { justify-content: center !important; flex-wrap: wrap !important; }

    /* Mobile nav menu */
    [data-id="mn-nav"] .nutr-nav-menu { flex-direction: column !important; align-items: stretch !important; width: 100% !important; gap: 2px !important; padding: 6px 0 !important; }
    [data-id="mn-nav"] .nutr-nav-menu > li { width: 100% !important; }
    [data-id="mn-nav"] .nutr-nav-menu > li > a { display: flex !important; width: 100% !important; justify-content: space-between !important; font-size: 15px !important; padding: 12px 14px !important; }
    [data-id="mn-nav"] .nutr-nav-menu > li.menu-item-has-children > a::after { display: inline-block !important; transition: transform 0.2s ease !important; }
    [data-id="mn-nav"] .nutr-nav-menu > li.nutr-sub-open > a::after { transform: rotate(180deg) !important; }
    [data-id="mn-nav"] .nutr-nav-menu .sub-menu { position: static !important; display: none !important; width: 100% !important; min-width: 0 !important; background: rgba(0,0,0,0.15) !important; box-shadow: none !important; border-radius: 8px !important; margin: 2px 0 6px !important; padding: 4px !important; }
    [data-id="mn-nav"] .nutr-nav-menu li:hover > .sub-menu { display: none !important; }
    [data-id="mn-nav"] .nutr-nav-menu li.nutr-sub-open > .sub-menu { display: block !important; }

    /* Open/close states */
    [data-id="mainnav"].nutr-js [data-id="mn-nav"],
    [data-id="mainnav"].nutr-js [data-id="mn-btn"] { display: none !important; }
    [data-id="mainnav"].nutr-js.nutr-open [data-id="mn-nav"],
    [data-id="mainnav"].nutr-js.nutr-open [data-id="mn-btn"] { display: flex !important; }
    [data-id="mainnav"].nutr-open .nutr-menu-toggle span { background: transparent !important; }
    [data-id="mainnav"].nutr-open .nutr-menu-toggle span::before { transform: translateY(7px) rotate(45deg) !important; }
    [data-id="mainnav"].nutr-open .nutr-menu-toggle span::after  { transform: translateY(-7px) rotate(-45deg) !important; }
}
