@layer tokens{:root {
        
    --space-1: clamp(0.25rem, 1vw, 0.5rem);
    --space-2: clamp(0.5rem, 2vw, 1rem);
    --space-3: clamp(1rem, 3vw, 1.5rem);
    --space-4: clamp(1.5rem, 4vw, 2rem);
    --space-5: clamp(2rem, 5vw, 2.5rem);
    
    
    --radius-sm: 0.625rem;
    --radius-md: 0.875rem;
    --radius-lg: 1.25rem;
    --radius-xl: 1.5rem;
    
    
    --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.08);
    --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.12);
    --shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.15);
    --shadow-focus: 0 0 0 3px var(--focus-ring-color), 0 0 10px rgba(79, 70, 229, 0.35);
    
    
    --transition-fast: 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    --transition-normal: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    --transition-slow: 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    --transition-bounce: 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
    
    
    --z-menu: 9999;
    --z-overlay: 99999;
    --z-mega-high: 999999;
    
    
    --color-bg: #ffffff;
    --color-surface: #f9f9fc;
    --color-surface-hover: #f0f2f8;
    --color-surface-active: #e6f0ff;
    --color-text: #121826;
    --color-text-secondary: #515b6f;
    --color-primary: #4f46e5;
    --color-primary-hover: #4338ca;
    --color-primary-active: #3730a3;
    --color-border: rgba(0, 0, 0, 0.08);
    --color-overlay: rgba(10, 15, 30, 0.4);
    --menu-disabled-bg: rgba(0, 0, 0, 0.05);
    --menu-disabled-text: rgba(0, 0, 0, 0.3);
    --focus-ring-color: #4f46e5;
    --focus-ring-color-light: rgba(79, 70, 229, 0.3);
    
    
    --dropdown-bg: #ffffff;
    --dropdown-text: #121826;
    --dropdown-border: rgba(0, 0, 0, 0.06);
    --dropdown-hover: rgba(240, 242, 248, 0.85);
    --dropdown-active: rgba(79, 70, 229, 0.1);
    --dropdown-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1);
    
    
    --menu-current-bg: var(--color-primary);
    --menu-current-text: #ffffff;
    --menu-current-border: var(--color-primary-active);
    --menu-current-shadow: 0 4px 12px rgba(79, 70, 229, 0.25);

    
    --scrollbar-width: thin;
    --scrollbar-thumb: #d4d4d8;
    --scrollbar-track: #f4f4f5;
    
    
    --font-size-sm:   clamp(1.1rem, 3vw, 1.3rem);   
    --font-size-base: clamp(1.25rem, 4vw, 1.5rem);  
    --font-size-lg:   clamp(1.5rem, 5vw, 1.75rem);  
    --font-size-xl:   clamp(1.75rem, 6vw, 2rem);    
    --font-size-2xl:  clamp(2rem, 7vw, 2.25rem);    
    
    
    --line-height-tight: 1.3;
    --line-height-normal: 1.5;
    --line-height-relaxed: 1.75;

    
    --hover-scale: 1.02;
    --active-scale: 0.98;
    --focus-ring-width: 3px;
    --focus-ring-offset: 2px;
    --focus-blur: 8px;
    
    
    --hover-glow: 0 0 15px rgba(79, 70, 229, 0.3);
    --hover-lift: 0 6px 12px -2px rgba(0, 0, 0, 0.15);
    
    
    --press-depth: 2px;
    
    
    --keyboard-focus-width: 3px;
    --keyboard-focus-color: #4f46e5;
    --keyboard-focus-glow: 0 0 12px rgba(79, 70, 229, 0.45);
    --keyboard-focus-offset: 2px;
    --submenu-focus-color: var(--color-primary);
    --submenu-focus-glow: 0 0 15px rgba(79, 70, 229, 0.35);
}

@media (prefers-color-scheme: dark) {
    :root {
        
        --color-bg: #0f1117;
        --color-surface: #1e2130;
        --color-surface-hover: #2d3245;
        --color-surface-active: rgba(67, 56, 202, 0.15);
        --color-text: #f9fafb;
        --color-text-secondary: #c8ced6;  
        --color-primary: #c5c1f7;         
        --color-primary-hover: #4f46e5;   
        --color-primary-active: #3730a3;  
        --color-border: rgba(255, 255, 255, 0.3);  
        --color-overlay: rgba(0, 0, 0, 0.75);
        --menu-disabled-bg: rgba(255, 255, 255, 0.05);
        --menu-disabled-text: rgba(255, 255, 255, 0.3);
        --focus-ring-color: #c5c1f7;
        --focus-ring-color-light: rgba(197, 193, 247, 0.3);
      
        
        --dropdown-bg: #1a1f2e;
        --dropdown-text: #f9fafb;
        --dropdown-border: rgba(255, 255, 255, 0.15);
        --dropdown-hover: rgba(45, 50, 69, 0.85);
        --dropdown-active: rgba(67, 56, 202, 0.2);
        --dropdown-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.3);
      
        
        --menu-current-bg: var(--color-primary);
        --menu-current-text: #000000;
        --menu-current-border: var(--color-primary-hover);
        --menu-current-shadow: 0 4px 12px rgba(67, 56, 202, 0.4);
      
        --scrollbar-thumb: #4d4d4d;
        --scrollbar-track: #2d2d2d;
        
        
        --keyboard-focus-color: #c5c1f7;
        --keyboard-focus-glow: 0 0 12px rgba(197, 193, 247, 0.5);
        --submenu-focus-color: #c5c1f7;
        --submenu-focus-glow: 0 0 15px rgba(197, 193, 247, 0.4);
    }
}
}@layer animations{@keyframes menuFadeIn {
    from {
        opacity: 0;
        transform: translateY(-12px);
        filter: blur(5px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
        filter: blur(0);
    }
}


@keyframes menuSlideIn {
    from {
        transform: translateX(-12px);
        opacity: 0;
    }
    to {
        transform: translateX(0);
        opacity: 1;
    }
}


@keyframes submenuSlideDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
        max-height: 0;
    }
    to {
        opacity: 1;
        transform: translateY(0);
        max-height: 1000px;
    }
}


@keyframes focusPulse {
    0%, 100% {
        box-shadow: 0 0 0 var(--keyboard-focus-width) var(--keyboard-focus-color),
                     0 0 0 calc(var(--keyboard-focus-width) + var(--keyboard-focus-offset)) rgba(79, 70, 229, 0.3);
    }
    50% {
        box-shadow: 0 0 0 var(--keyboard-focus-width) var(--keyboard-focus-color),
                     0 0 15px calc(var(--keyboard-focus-width) + var(--keyboard-focus-offset)) rgba(79, 70, 229, 0.5);
    }
}


@keyframes fadeScale {
    from {
        opacity: 0.7;
        transform: scale(0.95);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}
}@layer base{.screen-reader-text {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    border: 0 !important;
}


*, button {
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    box-sizing: border-box;
}


#mega-menu-wrap-primary a.mega-menu-link {
    outline: none !important;
    text-decoration: none !important;
}


::-webkit-scrollbar {
    width: var(--scrollbar-width);
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

::-webkit-scrollbar-track {
    background: var(--scrollbar-track);
}

::-webkit-scrollbar-thumb {
    background: var(--scrollbar-thumb);
    border-radius: var(--radius-sm);
}

@supports (scrollbar-width: thin) {
    * {
        scrollbar-width: var(--scrollbar-width);
        scrollbar-color: var(--scrollbar-thumb) var(--scrollbar-track);
    }
}


#mega-menu-wrap-primary #mega-menu-primary,
#mega-menu-wrap-primary #mega-menu-primary ul.mega-sub-menu,
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item,
#mega-menu-wrap-primary #mega-menu-primary a.mega-menu-link {
    margin: 0;
    padding: 0;
    list-style: none !important;
}


.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}


[tabindex]:focus-visible:not([tabindex="-1"]) {
    outline: var(--keyboard-focus-width) solid var(--keyboard-focus-color) !important;
    outline-offset: var(--keyboard-focus-offset) !important;
}
}@layer mobile-menu{@media only screen and (max-width: 768px) {
    
    #mobile-megamenu-wrap {
        display: block !important;
        position: absolute !important;
        top: var(--space-2) !important;
        right: var(--space-3) !important;
        z-index: var(--z-menu) !important;
        background: transparent !important;
        margin: 0 !important;
        padding: 0 !important;
        width: auto !important;
        height: auto !important;
        pointer-events: auto !important;
    }

    #mobile-megamenu-wrap .mega-menu-wrap {
        background: transparent !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        box-shadow: none !important;
    }

    
    .mega-menu-toggle {
        display: flex !important;
        justify-content: flex-end !important;
        align-items: center !important;
        width: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        border: none !important;
        pointer-events: none !important;
    }

    .mega-menu-toggle button {
        pointer-events: auto !important;
        background: var(--color-surface) !important;
        border: 1px solid var(--color-border) !important;
        box-shadow: var(--shadow-sm) !important;
        padding: var(--space-2) !important;
        cursor: pointer !important;
        border-radius: var(--radius-md);
        transition: all var(--transition-normal);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        position: relative;
        z-index: var(--z-menu) !important;
    }

    
    .mega-menu-toggle button:focus-visible {
        outline: 3px solid transparent !important;
        box-shadow:
            0 0 0 2px var(--color-bg),
            0 0 0 4px var(--keyboard-focus-color),
            0 4px 16px -4px var(--keyboard-focus-color) !important;
        background-color: var(--color-surface-hover) !important;
        animation: focusPulse 2s infinite !important;
    }

    .mega-menu-toggle button:hover {
        transform: translateY(-2px) !important;
        box-shadow: var(--shadow-md) !important;
        background-color: var(--color-surface-hover) !important;
    }
    
    .mega-toggle-animated-inner,
    .mega-toggle-animated-inner::before,
    .mega-toggle-animated-inner::after {
        background-color: var(--color-text) !important;
        height: 2px !important;
        border-radius: 2px !important;
    }

    
    #mega-menu-wrap-primary .mega-menu-toggle + #mega-menu-primary {
        
        position: fixed !important;
        top: 60px !important;
        left: 50% !important;
        transform: translateX(-50%) !important;

        
        width: 95vw !important;
        max-width: 400px;
        
        max-height: calc(100vh - 60px) !important;

        
        background: var(--dropdown-bg) !important;
        border: 1px solid var(--dropdown-border);
        border-radius: var(--radius-lg) !important;
        box-shadow: var(--dropdown-shadow) !important;
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);

        
        margin: 0 !important;
        padding: 0.5rem 0 !important;

        
        overflow-y: auto !important;                  
        -webkit-overflow-scrolling: touch !important;  
        touch-action: pan-y;                           
        overscroll-behavior-y: contain;                

        

        
        display: none;
        opacity: 0;
        pointer-events: none;

        
        transition: opacity var(--transition-normal), transform var(--transition-normal) !important;
    }

    
    #mega-menu-wrap-primary .mega-menu-toggle[aria-expanded="true"] + #mega-menu-primary {
        display: block !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        animation: menuFadeIn var(--transition-normal);
    }


    #mega-menu-wrap-primary .mega-menu-toggle[aria-expanded="true"] + #mega-menu-primary {
        display: block !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        animation: menuFadeIn var(--transition-normal);
    }

    
    #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item {
        margin-bottom: 2px !important;
        border-radius: var(--radius-md) !important;
        overflow: hidden !important;
    }

    #mega-menu-wrap-primary #mega-menu-primary > li > a.mega-menu-link {
        color: var(--dropdown-text) !important;
        background: transparent !important;
        padding: var(--space-2) var(--space-3) !important;
        display: flex !important;
        align-items: center !important;
        text-decoration: none !important;
        font-weight: 500 !important;
        border-radius: var(--radius-sm) !important;
        letter-spacing: 0.05em !important;
        transition: all var(--transition-fast), 
                    transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), 
                    box-shadow 0.2s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
        font-size: var(--font-size-lg) !important;
        line-height: var(--line-height-tight) !important;
        min-height: 56px !important;
        position: relative !important; 
    }
    
    
    #mega-menu-wrap-primary #mega-menu-primary > li > a.mega-menu-link::after {
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        width: 4px;
        background: transparent;
        transition: background-color var(--transition-normal);
        border-radius: 2px;
    }

    #mega-menu-wrap-primary #mega-menu-primary > li > a.mega-menu-link:hover {
        background: linear-gradient(to right, var(--dropdown-hover), transparent 90%) !important;
        transform: translateX(5px) scale(var(--hover-scale)) !important;
        box-shadow: var(--hover-lift), 
                    inset 4px 0 0 var(--color-primary),
                    inset -1px 0 0 rgba(255, 255, 255, 0.1) !important;
        padding-left: 24px !important;
        color: var(--color-primary) !important;
    }
    
    
    #mega-menu-wrap-primary #mega-menu-primary > li > a.mega-menu-link:focus-visible {
        outline: none !important;
        position: relative !important;
        box-shadow: 
            var(--hover-lift),
            0 0 0 var(--keyboard-focus-width) var(--keyboard-focus-color),
            0 0 0 calc(var(--keyboard-focus-width) + var(--keyboard-focus-offset)) rgba(79, 70, 229, 0.3),
            0 0 var(--focus-blur) rgba(79, 70, 229, 0.4) !important;
        background: var(--dropdown-active) !important;
        z-index: 2 !important;
        transform: translateX(3px) !important;
        animation: focusPulse 2s infinite !important;
    }

    #mega-menu-wrap-primary #mega-menu-primary > li > a.mega-menu-link:active {
        transform: translateY(var(--press-depth)) scale(var(--active-scale)) !important;
        background: var(--dropdown-active) !important;
        transition-duration: 0.1s !important;
    }

    
    #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,
    #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link,
    #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-page-ancestor > a.mega-menu-link {
        background: var(--menu-current-bg) !important;
        color: var(--menu-current-text) !important;
        font-weight: 600 !important;
        box-shadow: var(--menu-current-shadow) !important;
        transform: translateX(3px) !important;
    }
    
    
    #mega-menu-wrap-primary #mega-menu-primary > li.mega-current-menu-item > a.mega-menu-link::after,
    #mega-menu-wrap-primary #mega-menu-primary > li.mega-current-menu-ancestor > a.mega-menu-link::after,
    #mega-menu-wrap-primary #mega-menu-primary > li.mega-current-page-ancestor > a.mega-menu-link::after {
        background-color: var(--color-primary-active) !important;
        box-shadow: 0 0 10px rgba(79, 70, 229, 0.5);
        width: 6px;
    }

    
    #mega-menu-wrap-primary .mega-sub-menu {
        position: relative !important;
        padding: var(--space-2) 0 !important;
        margin: 0 !important;
        width: 100% !important;
        background: transparent !important;
        border-left: none !important;
        border-radius: 0 var(--radius-md) var(--radius-md) 0 !important;
        animation: menuSlideIn var(--transition-fast) !important;
        overflow-y: visible !important;
        max-height: none !important; 
    }
    
    
    #mega-menu-wrap-primary #mega-menu-primary > li.mega-toggle-on > .mega-sub-menu {
        animation: submenuSlideDown var(--transition-normal) !important;
        display: block !important;
    }

    #mega-menu-wrap-primary .mega-sub-menu li > a {
        position: relative !important;
        padding: 12px 18px !important;
        color: var(--dropdown-text) !important;
        opacity: 0.9 !important;
        transition: all var(--transition-fast) !important;
        overflow: hidden !important;
        font-size: var(--font-size-base) !important;
        line-height: var(--line-height-normal) !important;
        background: transparent !important;
        display: block !important;
        border-radius: var(--radius-sm) !important;
    }

    #mega-menu-wrap-primary .mega-sub-menu li > a:hover,
    #mega-menu-wrap-primary .mega-sub-menu li > a:focus-visible {
        background: var(--color-surface-hover) !important;
        padding-left: 26px !important;
        color: var(--color-primary) !important;
    }
    
    
    #mega-menu-wrap-primary .mega-sub-menu li > a:focus-visible {
        outline: none !important;
        box-shadow: 
            0 0 0 var(--keyboard-focus-width) var(--submenu-focus-color),
            0 0 var(--focus-blur) var(--submenu-focus-glow) !important;
        background: var(--dropdown-active) !important;
        z-index: 2 !important;
        transform: translateX(4px) !important;
        border-radius: var(--radius-sm) !important;
    }
    
    #mega-menu-wrap-primary .mega-sub-menu li > a:active {
        transform: translateY(1px) scale(0.99) !important;
        box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1) !important;
        transition-duration: 0.1s !important;
    }

    #mega-menu-wrap-primary .mega-sub-menu .mega-menu-item-has-children > a.mega-menu-link {
        font-weight: 700 !important;
        color: var(--color-primary) !important;
        border-bottom: 1px solid var(--dropdown-border) !important;
        margin-bottom: var(--space-1) !important;
        font-size: var(--font-size-lg) !important;
        padding-top: var(--space-2) !important;
        padding-bottom: var(--space-2) !important;
        background: transparent !important;
    }
    
    
    #mega-menu-wrap-primary .mega-sub-menu .mega-menu-item-has-children > a.mega-menu-link:focus-visible {
        outline: none !important;
        box-shadow: 
            0 0 0 var(--keyboard-focus-width) var(--submenu-focus-color),
            0 0 var(--focus-blur) var(--submenu-focus-glow) !important;
        background: var(--dropdown-active) !important;
        z-index: 2 !important;
        border-radius: var(--radius-sm) !important;
    }

    #mega-menu-wrap-primary .mega-menu-column {
        display: block !important;
        width: 100% !important;
        padding: 0 var(--space-2) !important;
        overflow: visible !important;
    }
    
    
    @media only screen and (max-width: 768px) {
        #mega-menu-wrap-primary .mega-menu-row {
            display: flex !important;
            flex-wrap: wrap !important;
            width: 100% !important;
        }
        
        #mega-menu-wrap-primary .mega-menu-column[style*="--span"] {
            flex: 1 1 100% !important;
            min-width: 100% !important;
            margin-bottom: var(--space-2) !important;
        }
    }

    
    #mega-menu-wrap-primary .mega-sub-menu .mega-menu-item-has-children > a.mega-menu-link {
        font-weight: 600 !important;
        color: var(--color-primary) !important;
        border-bottom: 1px solid var(--dropdown-border) !important;
        margin-bottom: var(--space-1) !important;
    }

    
    .hidden-xs,
    #site-navigation,
    .hidemenu,
    #primary-menu,
    .glyphicon-menu-hamburger,
    .showmenu {
        display: none !important;
    }

    
    .logo a img.img-logo {
        display: inline-block;
        max-width: 65%;
        height: auto;
        vertical-align: middle;
        filter: brightness(1.1) contrast(1.05);
        transition: all var(--transition-normal);
    }

    
    #mega-menu-wrap-primary .mega-sub-menu li.mega-menu-item,
    #mega-menu-wrap-primary .mega-sub-menu .mega-sub-menu li.mega-menu-item,
    #mega-menu-wrap-primary .mega-menu-column .mega-sub-menu li.mega-menu-item {
        border-bottom: 1px solid var(--color-border) !important;
        padding: 15px !important;
    }

    
    #mega-menu-wrap-primary .mega-sub-menu li.mega-menu-item:last-child,
    #mega-menu-wrap-primary .mega-sub-menu .mega-sub-menu li.mega-menu-item:last-child,
    #mega-menu-wrap-primary .mega-menu-column .mega-sub-menu li.mega-menu-item:last-child {
        border-bottom: none !important;
    }

    
    #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator:after {
        content: '\f140';
        font-size: 3rem;
        font-family: dashicons;
        font-weight: normal;
        display: inline-block;
        margin: 0 0 0 12px;
        vertical-align: middle;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        transform: rotate(0) scale(1.35);
        color: var(--color-primary);
        position: relative;
        background: transparent;
        height: auto;
        width: auto;
        right: auto;
        line-height: inherit;
        transition: transform var(--transition-fast);
    }

    
    #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item-has-children > a.mega-menu-link:hover > span.mega-indicator:after {
        transform: rotate(0) scale(1.5);
        color: var(--color-primary-hover);
    }
}
}@media screen and (min-width:769px) and (max-width:934px){.mega-menu-toggle button{--toggle-w:43px;--toggle-h:40px;position:relative;width:var(--toggle-w)!important;height:var(--toggle-h)!important;display:flex!important;align-items:center!important;justify-content:center!important}.mega-menu-toggle button{--stripe-gap:8px;--stripe-h:2px;--stripe-w:calc(var(--toggle-w) * 0.6)}.mega-toggle-animated-inner{position:absolute!important;top:calc(50% - var(--stripe-h)/2);left:calc(50% - var(--stripe-w)/2);width:var(--stripe-w)!important;height:var(--stripe-h)!important;background-color:currentColor!important;border-radius:1px!important}.mega-toggle-animated-inner::before,.mega-toggle-animated-inner::after{content:""!important;position:absolute!important;left:0;width:100%;height:var(--stripe-h)!important;background-color:currentColor!important;border-radius:1px!important}.mega-toggle-animated-inner::before{top:calc(50% - var(--stripe-h)/2 - var(--stripe-gap))}.mega-toggle-animated-inner::after{top:calc(50% - var(--stripe-h)/2 + var(--stripe-gap))}}@media screen and (max-width:991px){.mega-menu-toggle button{height:calc(44px + 2px)!important;min-height:calc(50px + 1px)!important;width:calc(63px + 2px)!important;box-sizing:border-box!important;-moz-box-sizing:border-box!important;-webkit-box-sizing:border-box!important;padding:0!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:center!important}}