:root {
    --primary-color: #a0b951;
    --menu-color-1: #88a725; /* Green for Services */
    --menu-color-2: #e67e22; /* Orange for Technologies */
    --menu-color-3: #3498db; /* Blue for Solutions */
    --menu-color-4: #9b59b6; /* Purple for Resources */
    --menu-color-5: #2ecc71; /* Emerald Green for Industries */
    --menu-color-6: #34495e; /* Dark Blue for About */
}

.mega-menu-wrapper {
    display: none;
    position: absolute;
    left: 0;
    width: 100%;
    background: #fff;
    box-shadow: 0 8px 16px rgba(0,0,0,0.1);
    z-index: 1000;
    border-radius: 25px;
    overflow: hidden;
    margin-top: 20px;
    opacity: 0;
    transform: translateY(15px);
    transition: opacity 0.3s ease-out, transform 0.3s ease-out;
    will-change: opacity, transform;
}

.navbar-nav {
    position: static;
}

.navbar {
    position: static;
}

.navbar-nav > li {
    position: static;
}

/* Desktop hover behavior only */
@media (min-width: 1200px) {
    .navbar-nav > li:hover .mega-menu-wrapper {
        display: block;
        opacity: 1;
        transform: translateY(0);
    }
}

.mega-menu-wrapper .container {
    margin: 0;
    width: 100%;
    padding: 0;
}

.mega-menu-content {
    display: flex;
    gap: 0;
    margin: 0;
    padding: 0;
    width: 100%;
    background: #fff;
}

/* Base width styles - these will be enforced for all sections */
.mega-menu-intro {
    width: 33.3333%;
    flex: 0 0 33.3333% !important;
    min-width: 33.3333%;
    max-width: 33.3333%;
    background-image: url('../../images/menu-bg.webp') !important;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    overflow: hidden;
    margin: 0;
    box-sizing: border-box;
}

/* Remove the overlay styles */
.mega-menu-intro:before {
    display: none;
}

/* Services dropdown */
.menu-item-services .mega-menu-intro {
    background-color: var(--menu-color-1);
}

/* Technologies dropdown */
.menu-item-technologies .mega-menu-intro {
    background-color: var(--menu-color-2);
}

/* Solutions dropdown */
.menu-item-solutions .mega-menu-intro {
    background-color: var(--menu-color-3);
}

/* Resources dropdown */
.menu-item-resources .mega-menu-intro {
    background-color: var(--menu-color-4);
}

/* Industries dropdown */
.menu-item-industries .mega-menu-intro {
    background-color: var(--menu-color-5);
}

.menu-item-about .mega-menu-intro {
    background-color: var(--menu-color-6);
}

.mega-menu-intro-inner {
    position: relative;
    padding: 48px;
    z-index: 2;
    color: #fff;
}

/* Remove background image related styles */
.mega-menu-intro.has-bg-image {
    background-position: initial;
    background-size: initial;
    background-repeat: initial;
}

.mega-menu-intro.has-bg-image:before {
    display: none;
}

/* Services section */
.menu-item-services .mega-menu-intro {
    background-image: url('../images/services-bg.jpg');
}

#menu-item-services .mega-menu-item i {
    color: var(--menu-color-1);
}

/* Technologies section */
.menu-item-technologies .mega-menu-intro {
    background-image: url('../images/technologies-bg.jpg');
}

#menu-item-technologies .mega-menu-item i {
    color: var(--menu-color-2);
}

/* Solutions section */
.menu-item-solutions .mega-menu-intro {
    background-image: url('../images/solutions-bg.jpg');
}

#menu-item-solutions .mega-menu-item i {
    color: var(--menu-color-3);
}

/* Resources section */
.menu-item-resources .mega-menu-intro {
    background-image: url('../images/resources-bg.jpg');
}

#menu-item-resources .mega-menu-item i {
    color: var(--menu-color-4);
}

/* Industries dropdown */
#menu-item-industries .learn-more-btn {
    color: var(--menu-color-5);
    border-color: var(--menu-color-5);
}

#menu-item-industries .learn-more-btn:hover {
    background: var(--menu-color-5);
    color: #fff;
}

#menu-item-industries .view-all-link {
    color: var(--menu-color-5);
}

.mega-menu-intro h2 {
    font-size: 28px;
    margin-bottom: 16px;
    font-weight: 400;
    color: #fff;
    line-height: 1.3;
}

.mega-menu-intro p {
    font-size: 18px;
    line-height: 1.6;
    margin-bottom: 24px;
    color: #fff;
}

/* View all link color inheritance */
.menu-item-services .view-all-link {
    color: var(--menu-color-1);
}

.menu-item-technologies .view-all-link {
    color: var(--menu-color-2);
}

.menu-item-solutions .view-all-link {
    color: var(--menu-color-3);
}

.menu-item-resources .view-all-link {
    color: var(--menu-color-4);
}

/* Parent menu items color classes */
.menu-item-services .learn-more-btn {
    color: var(--menu-color-1);
    border-color: var(--menu-color-1);
}

.menu-item-services .learn-more-btn:hover {
    background: var(--menu-color-1);
    color: #fff;
}

.menu-item-services .mega-menu-item i {
    color: var(--menu-color-1);
}

.menu-item-technologies .learn-more-btn {
    color: var(--menu-color-2);
    border-color: var(--menu-color-2);
}

.menu-item-technologies .learn-more-btn:hover {
    background: var(--menu-color-2);
    color: #fff;
}

.menu-item-technologies .mega-menu-item i {
    color: var(--menu-color-2);
}

.menu-item-solutions .learn-more-btn {
    color: var(--menu-color-3);
    border-color: var(--menu-color-3);
}

.menu-item-solutions .learn-more-btn:hover {
    background: var(--menu-color-3);
    color: #fff;
}

.menu-item-solutions .mega-menu-item i {
    color: var(--menu-color-3);
}

.menu-item-resources .learn-more-btn {
    color: var(--menu-color-4);
    border-color: var(--menu-color-4);
}

.menu-item-resources .learn-more-btn:hover {
    background: var(--menu-color-4);
    color: #fff;
}

.menu-item-resources .mega-menu-item i {
    color: var(--menu-color-4);
}

/* Menu columns section */
.mega-menu-columns {
    width: 66.6667%;
    flex: 0 0 66.6667% !important;
    min-width: 66.6667%;
    max-width: 66.6667%;
    display: flex;
    flex-wrap: wrap;
    padding: 48px 32px;
    background: #fff;
    box-sizing: border-box;
}

.mega-menu-section {
    flex: 0 0 50% !important;
    width: 50%;
    min-width: 50%;
    max-width: 50%;
    margin-bottom: 32px;
    box-sizing: border-box;
    padding: 0 24px;
}

/* Remove any old odd/even rules but keep equal padding */
.mega-menu-section:nth-child(odd),
.mega-menu-section:nth-child(even) {
    padding: 0 24px;
}

.mega-menu-section h3 {
    color: #666;
    font-size: 12px;
    text-transform: uppercase;
    margin-bottom: 16px;
    font-weight: 600;
    letter-spacing: 1px;
    border-bottom: 1px solid #e8e8e8!important;
    padding-bottom: 12px;
}

.mega-menu-items {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.mega-menu-item {
    margin-bottom: 0;
}

.mega-menu-item a {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    text-decoration: none;
    padding: 8px 16px;
    border-radius: 8px;
    transition: all 0.2s ease;
}

.mega-menu-item a:hover {
    background-color: #f5f6f7;
}

.mega-menu-item i {
    font-size: 18px;
    width: 24px;
    text-align: center;
    margin-top: 2px;
    transition: color 0.2s ease;
}

.menu-item-content {
    flex: 1;
}

.menu-item-title {
    display: block;
    font-size: 18px;
    font-weight: 600;
    color: #333;
    margin-bottom: 4px;
}

.menu-item-description {
    display: block;
    font-size: 15px;
    color: #666;
    line-height: 1.4;
}

.view-all-wrapper {
    flex: 0 0 100%;
    padding: 16px 32px;
    border-top: 1px solid #e6e6e6;
    text-align: right;
}

.view-all-link {
    color: inherit;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
}

.view-all-link:hover {
    text-decoration: underline;
}

.view-all-link:after {
    content: "→";
    margin-left: 8px;
    font-size: 18px;
}

/* Enforce widths for all menu items */
.menu-item-services .mega-menu-intro,
.menu-item-technologies .mega-menu-intro,
.menu-item-industries .mega-menu-intro,
.menu-item-solutions .mega-menu-intro,
.menu-item-resources .mega-menu-intro,
.menu-item-about .mega-menu-intro {
    width: 33.3333%;
    flex: 0 0 33.3333% !important;
    min-width: 33.3333%;
    max-width: 33.3333%;
}

.menu-item-services .mega-menu-columns,
.menu-item-technologies .mega-menu-columns,
.menu-item-industries .mega-menu-columns,
.menu-item-solutions .mega-menu-columns,
.menu-item-resources .mega-menu-columns,
.menu-item-about .mega-menu-columns {
    width: 66.6667%;
    flex: 0 0 66.6667% !important;
    min-width: 66.6667%;
    max-width: 66.6667%;
}

/* Remove any potential flex-grow or flex-shrink */
.mega-menu-intro,
.mega-menu-columns,
.menu-item-services .mega-menu-intro,
.menu-item-technologies .mega-menu-intro,
.menu-item-industries .mega-menu-intro,
.menu-item-solutions .mega-menu-intro,
.menu-item-resources .mega-menu-intro,
.menu-item-about .mega-menu-intro,
.menu-item-services .mega-menu-columns,
.menu-item-technologies .mega-menu-columns,
.menu-item-industries .mega-menu-columns,
.menu-item-solutions .mega-menu-columns,
.menu-item-resources .mega-menu-columns,
.menu-item-about .mega-menu-columns {
    flex-grow: 0 !important;
    flex-shrink: 0 !important;
}

/* Reset any margins or padding that might affect width */
.mega-menu-wrapper,
.mega-menu-wrapper .container,
.mega-menu-content,
.mega-menu-intro,
.mega-menu-columns {
    margin: 0;
    box-sizing: border-box;
}

.mega-menu-wrapper .container {
    padding: 0;
    width: 100%;
}

/* Responsive styles */
@media (max-width: 991px) {
    .mega-menu-content {
        flex-direction: column;
    }
    
    .mega-menu-intro,
    .mega-menu-columns {
        flex: 0 0 100%;
    }
    
    .mega-menu-section {
        flex: 0 0 100%;
    }
}

/* Keyframes for the arrow reveal and pulse animation */
@keyframes arrowReveal {
    from {
        transform: translateX(-10px);
        opacity: 0;
    }
    to {
        transform: translateX(0);
        opacity: 1;
    }
}

@keyframes arrowPulse {
    0% {
        transform: translateX(0);
    }
    50% {
        transform: translateX(4px);
    }
    100% {
        transform: translateX(0);
    }
}

/* Base styles for all greenbtn */
.mega-menu-intro .greenbtn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 16px 32px;
    background: transparent;
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    font-size: 16px;
    letter-spacing: 0.5px;
    border: 2px solid #fff;
    border-radius: 50px;
    transition: all 0.3s ease;
    position: relative;
    min-width: 120px;
}

.mega-menu-intro .greenbtn span {
    font-weight: 600;
    font-size: 16px;
}

.mega-menu-intro .greenbtn:hover {
    background: #fff;
    text-decoration: none;
    padding-right: 42px;
    transform: scale(1.05);
}

.mega-menu-intro .greenbtn:hover:after {
    opacity: 1;
    animation: arrowReveal 0.3s ease forwards, arrowPulse 1s ease-in-out infinite 0.3s;
}

.mega-menu-intro .greenbtn:after {
    content: "→";
    position: absolute;
    right: 20px;
    font-size: 18px;
    opacity: 0;
    pointer-events: none;
    color: inherit;
}

/* Specific hover colors for each section */
.menu-item-services .mega-menu-intro .greenbtn {
    color: #fff;
    border-color: #fff;
}

.menu-item-services .mega-menu-intro .greenbtn:hover {
    background: #fff;
    color: var(--menu-color-1);
}

.menu-item-services .mega-menu-intro .greenbtn:hover:after {
    color: var(--menu-color-1);
}

.menu-item-technologies .mega-menu-intro .greenbtn:hover {
    color: var(--menu-color-2);
}

.menu-item-technologies .mega-menu-intro .greenbtn:hover:after {
    color: var(--menu-color-2);
}

.menu-item-industries .mega-menu-intro .greenbtn:hover {
    color: var(--menu-color-5);
}

.menu-item-industries .mega-menu-intro .greenbtn:hover:after {
    color: var(--menu-color-5);
}

.menu-item-solutions .mega-menu-intro .greenbtn:hover {
    color: var(--menu-color-3);
}

.menu-item-solutions .mega-menu-intro .greenbtn:hover:after {
    color: var(--menu-color-3);
}

.menu-item-resources .mega-menu-intro .greenbtn:hover {
    color: var(--menu-color-4);
}

.menu-item-resources .mega-menu-intro .greenbtn:hover:after {
    color: var(--menu-color-4);
}

.menu-item-about .mega-menu-intro .greenbtn:hover {
    color: var(--menu-color-6);
}

.menu-item-about .mega-menu-intro .greenbtn:hover:after {
    color: var(--menu-color-6);
}

.navbar.navbar-expand-xl .navbar-brand {
    min-width: 140px;
    aspect-ratio: 2.46/1;
    display: flex;
    align-items: center;
}

.navbar.navbar-expand-xl .navbar-brand img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    max-width: 100%;
}

@media (max-width: 1199px) {
    /* Hide desktop mega menu and show simple mobile menu */
    .desktop-menu {
        display: none;
    }
    
    .mobile-menu {
        display: block;
    }
    
    /* Simple mobile accordion menu styles */
    .mobile-nav {
        list-style: none;
        padding: 0;
        margin: 70px 0 40px;
    }
    
    .mobile-nav li {
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    }
    
    .mobile-nav li a {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 15px 30px;
        color: #fff;
        text-decoration: none;
        font-size: 18px;
        transition: background-color 0.3s ease;
    }
    
    .mobile-nav li a:hover {
        background-color: rgba(255, 255, 255, 0.1);
        color: #bdd653;
    }
    
    .mobile-nav .toggle-arrow {
        font-size: 20px;
        transition: transform 0.3s ease;
        font-family: monospace;
        font-weight: bold;
        display: inline-block;
        width: 20px;
        text-align: center;
    }
    
    /* Use CSS content instead of JavaScript for more reliable display */
    .mobile-nav .has-children > a .toggle-arrow::before {
        content: '+';
    }
    
    .mobile-nav .has-children.open > a .toggle-arrow::before {
        content: '−';
    }
    
    /* Hide the original text content when using CSS pseudo-elements */
    .mobile-nav .has-children > a .toggle-arrow {
        font-size: 0; /* Hide the JS-set text */
    }
    
    .mobile-nav .has-children > a .toggle-arrow::before {
        font-size: 20px; /* Show the CSS content */
    }
    
    .mobile-nav .sub-menu {
        max-height: 0;
        overflow: hidden;
        background-color: rgba(0, 0, 0, 0.3);
        transition: max-height 0.3s ease;
        list-style: none;
        padding: 0;
        margin: 0;
    }
    
    /* This rule is moved below to be more specific */
    
    .mobile-nav .sub-menu li {
        border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    }
    
    .mobile-nav .sub-menu li a {
        padding: 12px 30px 12px 50px;
        font-size: 16px;
        color: rgba(255, 255, 255, 0.8);
    }
    
    .mobile-nav .sub-menu li a:hover {
        color: #fff;
        background-color: rgba(255, 255, 255, 0.1);
    }
    
    /* Sub-sub menu styles (3rd level) */
    .mobile-nav .sub-sub-menu {
        max-height: 0;
        overflow: hidden;
        background-color: rgba(0, 0, 0, 0.5);
        transition: max-height 0.3s ease;
        list-style: none;
        padding: 0;
        margin: 0;
    }
    
    /* This rule is moved below to be more specific */
    
    .mobile-nav .sub-sub-menu li {
        border-bottom: 1px solid rgba(255, 255, 255, 0.03);
    }
    
    .mobile-nav .sub-sub-menu li a {
        padding: 10px 30px 10px 70px;
        font-size: 14px;
        color: rgba(255, 255, 255, 0.7);
    }
    
    .mobile-nav .sub-sub-menu li a:hover {
        color: #fff;
        background-color: rgba(255, 255, 255, 0.1);
    }
    
    /* Full accordion behavior for Services/Technologies - override the general sub-menu rules */
    .mobile-nav .full-accordion .sub-menu {
        max-height: 0 !important;
    }
    
    .mobile-nav .full-accordion.open > .sub-menu {
        max-height: 1000px !important;
    }
    
    .mobile-nav .full-accordion .sub-sub-menu {
        max-height: 0 !important;
    }
    
    .mobile-nav .full-accordion .sub-menu .has-children.open > .sub-sub-menu {
        max-height: 1000px !important;
    }
    
    /* Auto-expand behavior for non-Services/Technologies menus */
    .mobile-nav .auto-expand.open > .sub-menu {
        max-height: 1000px !important;
    }
    
    .mobile-nav .auto-expand.open .sub-sub-menu {
        max-height: 1000px !important;
    }
    
    /* Default behavior for regular accordion - more specific than the general rules */
    .mobile-nav .has-children.open > .sub-menu {
        max-height: 1000px;
    }
    
    .mobile-nav .has-children.open > .sub-sub-menu {
        max-height: 1000px;
    }
    
    /* Second level accordion arrows */
    .mobile-nav .sub-menu .has-children > a .toggle-arrow {
        font-size: 16px;
    }
    
    .mega-menu-content {
        flex-direction: column;
        background-color: var(--menu-color-6); /* Dark blue background */
    }
    
    .mega-menu-intro {
        display: none;
    }

    .mega-menu-columns {
        width: 100% !important;
        flex: 0 0 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
        padding: 16px;
        background-color: transparent;
    }

    .mega-menu-section {
        flex: 0 0 100% !important;
        width: 100%;
        min-width: 100%;
        max-width: 100%;
        padding: 0 16px;
        margin-bottom: 24px;
    }

    .mega-menu-section h3 {
        color: #fff;
        border-bottom-color: rgba(255, 255, 255, 0.2) !important;
    }

    .menu-item-description {
        display: none;
    }

    .mega-menu-item a {
        padding: 12px;
        min-height: 44px;
        align-items: center;
        color: #fff;
    }

    .mega-menu-item a:hover {
        background-color: rgba(255, 255, 255, 0.1);
    }

    .menu-item-title {
        font-size: 16px;
        margin-bottom: 0;
        color: #fff;
    }

    .mega-menu-item i {
        color: #fff;
    }

    .view-all-wrapper {
        padding: 16px;
        text-align: center;
        border-top: 1px solid rgba(255, 255, 255, 0.2);
    }

    .view-all-link {
        font-size: 16px;
        padding: 12px;
        width: 100%;
        justify-content: center;
        color: #fff;
    }

    /* Completely disable hover behavior for mobile */
    .navbar-nav > li:hover .mega-menu-wrapper {
        display: none !important;
        opacity: 0 !important;
        transform: translateY(15px) !important;
    }
    
    /* Ensure only click behavior works */
    .navbar-nav > li .mega-menu-wrapper {
        display: none;
    }
    
    /* Add a visual indicator for clickable items */
    .pushnav .navbar-nav > li.has-submenu > a::after {
        content: '+' !important;
        display: inline !important;
        margin-left: 8px;
        font-size: 18px;
        transition: transform 0.3s ease;
        position: relative;
    }
    
    .pushnav .navbar-nav > li.has-submenu.show > a::after {
        content: '-' !important;
        display: inline !important;
    }
    
    /* Show mega menu when parent has show class (click behavior) */
    .navbar-nav > li.show > .mega-menu-wrapper {
        display: block !important;
        opacity: 1 !important;
        transform: translateY(0) !important;
    }
    
    .mega-menu-wrapper {
        background-color: var(--menu-color-6);
    }
    
    /* Make submenus push down content instead of overlaying */
    .navbar-nav > li {
        position: relative;
    }
    
    .navbar-nav > li > .mega-menu-wrapper {
        position: relative;
        display: none;
        width: 100%;
        left: 0;
        margin-top: 0;
        box-shadow: none;
    }
    
    /* Ensure parent menu items stay in place */
    .navbar-nav > li > a {
        position: relative;
        z-index: 1;
    }

    /* Make Industries menu single column on mobile */
    .menu-item-industries .mega-menu-items {
        display: grid !important;
        grid-template-columns: repeat(1, 1fr) !important;
        gap: 16px;
    }
    
    .menu-item-industries .mega-menu-item {
        width: 100%;
        padding-right: 0;
        padding-left: 0;
        margin-left: 0;
        margin-right: 0;
    }
    
    .menu-item-industries .mega-menu-item:nth-child(odd) {
        padding-right: 0;
    }

    .menu-item-industries .mega-menu-item:nth-child(even) {
        padding-left: 0;
    }
    
    /* Override any grid settings for Industries menu on mobile */
    .menu-item-industries .mega-menu-section:only-child .mega-menu-items {
        display: grid !important;
        grid-template-columns: repeat(1, 1fr) !important;
    }
    
    /* Ensure consistent alignment for all items */
    .menu-item-industries .mega-menu-item a {
        padding-left: 12px;
        padding-right: 12px;
    }
}

/* Additional rule to prevent hover on touch devices */
@media (hover: none) and (pointer: coarse) {
    .navbar-nav > li:hover .mega-menu-wrapper {
        display: none !important;
        opacity: 0 !important;
        transform: translateY(15px) !important;
    }
    
    .navbar-nav > li > a {
        cursor: pointer;
    }
}

/* Adjustments for larger screens */
@media (min-width: 1200px) {
    /* Hide mobile menu and show desktop mega menu */
    .mobile-menu {
        display: none;
    }
    
    .desktop-menu {
        display: block;
    }
    
    /* Adjust logo size */
    .navbar.navbar-expand-xl .navbar-brand {
        min-width: 120px;
    }

    /* Adjust main nav items */
    .navbar-nav > li > a {
        padding: 8px 12px;
        font-size: 16px;
        font-weight: 600;
    }

    /* Adjust mega menu content */
    .mega-menu-intro-inner {
        padding: 32px 24px;
    }

    .mega-menu-intro h2 {
        font-size: 24px;
        margin-bottom: 12px;
    }

    .mega-menu-intro p {
        font-size: 18px;
        margin-bottom: 20px;
    }

    .mega-menu-columns {
        padding: 32px 24px;
    }

    .mega-menu-section {
        padding: 0 16px;
    }

    .mega-menu-section h3 {
        font-size: 11px;
        margin-bottom: 12px;
    }

    .menu-item-title {
        font-size: 16px;
    }

    .menu-item-description {
        font-size: 13px;
    }

    .mega-menu-item a {
        padding: 6px 12px;
        gap: 8px;
    }

    .mega-menu-item i {
        font-size: 16px;
        width: 20px;
    }

    /* Adjust button size */
    .mega-menu-intro .greenbtn {
        padding: 12px 24px;
        font-size: 14px;
    }

    /* Keep last menu item width fixed */
    .navbar-nav > li.menu-item-type-post_type.menu-item-object-page:last-child {
        width: 205px;
        flex: 0 0 205px;
    }

    .navbar-nav > li.menu-item-type-post_type.menu-item-object-page:last-child > a {
        width: 100%;
        text-align: center;
        justify-content: center;
    }
}

.navbar-nav > li > a::after,
.navbar-nav > li > a::before,
.navbar-nav > li:hover > a::after,
.navbar-nav > li:hover > a::before,
.navbar-nav > li > a:hover::after,
.navbar-nav > li > a:hover::before,
.navbar-nav > li > a:focus::after,
.navbar-nav > li > a:focus::before,
.navbar-nav > li.current-menu-item > a::after,
.navbar-nav > li.current-menu-item > a::before {
    content: none !important;
    display: none !important;
}

.navbar-nav > li > a,
.navbar-nav > li > a:hover,
.navbar-nav > li > a:focus,
.navbar-nav > li:hover > a {
    background: transparent;
}

/* Learn More Button Styles */
.learn-more-btn {
    display: inline-flex;
    align-items: center;
    padding: 10px 20px;
    border: 2px solid #fff;
    color: #fff;
    text-decoration: none;
    border-radius: 30px;
    font-weight: 500;
    background: #fff;
}

.learn-more-btn:after {
    content: '→';
    font-size: 18px;
    line-height: 1;
    margin-left: 4px;
}

/* Add shimmer effect to all learn-more-btn */
.learn-more-btn:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(45deg, transparent, rgba(255,255,255,0.2), transparent);
    transform: translateX(-100%);
    transition: transform 0.6s ease;
    z-index: -1;
}

.learn-more-btn:hover:before {
    transform: translateX(100%);
}

/* Update hover styles for each menu item's learn-more-btn */
#menu-item-services .learn-more-btn:hover {
    background: #fff;
    color: var(--menu-color-1);
}

#menu-item-technologies .learn-more-btn:hover {
    background: #fff;
    color: var(--menu-color-2);
}

#menu-item-solutions .learn-more-btn:hover {
    background: #fff;
    color: var(--menu-color-3);
}

#menu-item-resources .learn-more-btn:hover {
    background: #fff;
    color: var(--menu-color-4);
}

#menu-item-industries .learn-more-btn:hover {
    background: #fff;
    color: var(--menu-color-5);
}

#menu-item-about .learn-more-btn:hover {
    background: #fff;
    color: var(--menu-color-6);
}

/* Add shimmer effect to the last navigation item */
.navbar-nav > li.menu-item-type-post_type.menu-item-object-page:last-child > a {
    background: #bdd653;
    padding: 15px 40px;
    border-radius: 30px;
    text-align: center;
    color: #fff;
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.navbar-nav > li.menu-item-type-post_type.menu-item-object-page:last-child > a:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(45deg, transparent, rgba(255,255,255,0.2), transparent);
    transform: translateX(-100%);
    transition: transform 0.6s ease;
    z-index: -1;
}

.navbar-nav > li.menu-item-type-post_type.menu-item-object-page:last-child > a:hover {
    background-color: #88a725;
    color: #fff;
}

.navbar-nav > li.menu-item-type-post_type.menu-item-object-page:last-child > a:hover:after {
    transform: translateX(100%);
}

/* Single submenu with children layout */
.mega-menu-columns:has(.mega-menu-section:only-child) {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
}

.mega-menu-columns:has(.mega-menu-section:only-child) .mega-menu-section {
    flex: 0 0 50%;
    width: 50%;
    min-width: 50%;
    max-width: 50%;
    padding: 0 24px;
    margin-bottom: 32px;
    box-sizing: border-box;
}

.mega-menu-columns:has(.mega-menu-section:only-child) .mega-menu-section:first-child {
    padding-right: 30px;
}

.mega-menu-columns:has(.mega-menu-section:only-child) .mega-menu-section:last-child {
    padding-left: 30px;
}

/* Ensure the view all link stays at the bottom */
.mega-menu-columns:has(.mega-menu-section:only-child) .view-all-wrapper {
    flex: 0 0 100%;
    width: 100%;
    padding: 16px 32px;
    border-top: 1px solid #e6e6e6;
    text-align: right;
}

/* Display children of submenu in two columns */
.mega-menu-items {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* When there's only one submenu section, display its children in two columns */
.mega-menu-section:only-child .mega-menu-items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

.mega-menu-section:only-child .mega-menu-item {
    margin-bottom: 0;
}

/* Ensure proper spacing between columns */
.mega-menu-section:only-child .mega-menu-item:nth-child(odd) {
    padding-right: 15px;
}

.mega-menu-section:only-child .mega-menu-item:nth-child(even) {
    padding-left: 15px;
}

/* Industries menu specific styles */
.menu-item-industries .mega-menu-section {
    flex: 0 0 100% !important;
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    padding: 0 24px;
}

.menu-item-industries .mega-menu-items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

.menu-item-industries .mega-menu-item {
    margin-bottom: 0;
}

.menu-item-industries .mega-menu-item:nth-child(odd) {
    padding-right: 0;
}

.menu-item-industries .mega-menu-item:nth-child(even) {
    padding-left: 0;
}

/* Modern Header Enhancements */
.main-head {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    transition: all 0.3s ease;
    background: transparent;
}

.main-head.scrolled {
    background: transparent;
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(10px);
}

/* Logo Animation */
.main-head .custom-logo {
    transition: transform 0.3s ease;
}

.main-head .custom-logo:hover {
    transform: scale(1.05);
}

/* Navigation Enhancements */
.navbar-nav > li > a {
    position: relative;
    transition: color 0.3s ease;
}

.navbar-nav > li > a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 2px;
    transition: width 0.3s ease;
}

.navbar-nav > li > a:hover::after {
    width: 100%;
}

/* CTA Button in Header */
.main-head-rt {
    display: flex;
    align-items: center;
    gap: 20px;
}

.portallink {
    position: relative;
    padding: 8px 16px;
    border-radius: 25px;
    background: var(--menu-color-1);
    color: white;
    text-decoration: none;
    transition: all 0.3s ease;
    overflow: hidden;
}

.portallink::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(45deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transform: translateX(-100%);
    transition: transform 0.6s ease;
}

.portallink:hover::before {
    transform: translateX(100%);
}

.portallink:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* Technologies menu specific styles */
.menu-item-technologies .mega-menu-section {
    margin-bottom: 24px;
}

.menu-item-technologies .mega-menu-section h3 {
    margin-bottom: 8px;
    padding-bottom: 8px;
}

.menu-item-technologies .mega-menu-items {
    gap: 8px;
}

.menu-item-technologies .mega-menu-item a {
    padding: 2px 16px;
    min-height: 12px;
}

.menu-item-technologies .menu-item-title {
    font-size: 13px;
    margin-bottom: 0;
    font-weight: 400;
}

.menu-item-technologies .menu-item-description {
    font-size: 12px;
    line-height: 1.3;
}

.menu-item-technologies .mega-menu-item i {
    font-size: 16px;
    width: 20px;
}

/* Technologies menu hover effects */
.menu-item-technologies .mega-menu-item a:hover {
    background-color: transparent;
}

.menu-item-technologies .mega-menu-item a:hover .menu-item-title {
    font-weight: 600;
    color: var(--menu-color-2);
}

/* Technologies menu mobile styles */
@media (max-width: 1199px) {
    .menu-item-technologies .mega-menu-section {
        margin-bottom: 12px;
    }
    
    .menu-item-technologies .mega-menu-items {
        gap: 4px;
    }
    
    .menu-item-technologies .mega-menu-item a {
        padding: 8px 16px;
        min-height: 32px;
    }
    
    .menu-item-technologies .menu-item-title {
        font-size: 12px;
    }
    
    .menu-item-technologies .menu-item-description {
        display: none;
    }
}

/* Solutions menu specific styles */
.menu-item-solutions .mega-menu-section {
    flex: 0 0 100% !important;
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    padding: 0 24px;
}

.menu-item-solutions .mega-menu-items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

.menu-item-solutions .mega-menu-item {
    margin-bottom: 0;
}

.menu-item-solutions .mega-menu-item:nth-child(odd) {
    padding-right: 0;
}

.menu-item-solutions .mega-menu-item:nth-child(even) {
    padding-left: 0;
}

/* Solutions menu mobile styles */
@media (max-width: 1199px) {
    .menu-item-solutions .mega-menu-items {
        display: grid !important;
        grid-template-columns: repeat(1, 1fr) !important;
        gap: 16px;
    }
    
    .menu-item-solutions .mega-menu-item {
        width: 100%;
        padding-right: 0;
        padding-left: 0;
        margin-left: 0;
        margin-right: 0;
    }
    
    .menu-item-solutions .mega-menu-item:nth-child(odd) {
        padding-right: 0;
    }

    .menu-item-solutions .mega-menu-item:nth-child(even) {
        padding-left: 0;
    }
}

/* Menu item color states */
.navbar-nav > li > a {
    color: #fff !important; /* Default white color for all menu items */
}

.navbar-nav > li > a.services-hover {
    color: var(--menu-color-1) !important;
}

.navbar-nav > li > a.technologies-hover {
    color: var(--menu-color-2) !important;
}

.navbar-nav > li > a.solutions-hover {
    color: var(--menu-color-3) !important;
}

.navbar-nav > li > a.resources-hover {
    color: var(--menu-color-4) !important;
}

.navbar-nav > li > a.industries-hover {
    color: #fff !important;
}

.navbar-nav > li > a.industries-hover:hover {
    color: var(--primary-color) !important;
}

.navbar-nav > li > a.about-hover {
    color: var(--menu-color-6) !important;
}

.navbar-nav > li > a.introduction-hover {
    color: var(--menu-color-6) !important; /* Using the dark blue color for introduction section */
}

/* Always keep the Client Portal menu item white */
.navbar-nav > li.menu-item-type-post_type.menu-item-object-page > a,
.navbar-nav > li.menu-item-type-post_type.menu-item-object-page > a.services-hover,
.navbar-nav > li.menu-item-type-post_type.menu-item-object-page > a.technologies-hover,
.navbar-nav > li.menu-item-type-post_type.menu-item-object-page > a.solutions-hover,
.navbar-nav > li.menu-item-type-post_type.menu-item-object-page > a.resources-hover,
.navbar-nav > li.menu-item-type-post_type.menu-item-object-page > a.industries-hover,
.navbar-nav > li.menu-item-type-post_type.menu-item-object-page > a.about-hover,
.navbar-nav > li.menu-item-type-post_type.menu-item-object-page > a.introduction-hover {
    color: #fff !important;
}

/* Resources menu specific styles - matching Solutions layout */
.menu-item-resources .mega-menu-section {
    flex: 0 0 100% !important;
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    padding: 0 24px;
}

.menu-item-resources .mega-menu-items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

.menu-item-resources .mega-menu-item {
    margin-bottom: 0;
}

.menu-item-resources .mega-menu-item:nth-child(odd) {
    padding-right: 0;
}

.menu-item-resources .mega-menu-item:nth-child(even) {
    padding-left: 0;
}

/* Resources menu mobile styles */
@media (max-width: 1199px) {
    .menu-item-resources .mega-menu-items {
        display: grid !important;
        grid-template-columns: repeat(1, 1fr) !important;
        gap: 16px;
    }
    
    .menu-item-resources .mega-menu-item {
        width: 100%;
        padding-right: 0;
        padding-left: 0;
        margin-left: 0;
        margin-right: 0;
    }
    
    .menu-item-resources .mega-menu-item:nth-child(odd) {
        padding-right: 0;
    }

    .menu-item-resources .mega-menu-item:nth-child(even) {
        padding-left: 0;
    }
}

/* About menu specific styles - matching Solutions/Resources layout */
.menu-item-about .mega-menu-section {
    flex: 0 0 100% !important;
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    padding: 0 24px;
}

.menu-item-about .mega-menu-items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

.menu-item-about .mega-menu-item {
    margin-bottom: 0;
}

.menu-item-about .mega-menu-item:nth-child(odd) {
    padding-right: 0;
}

.menu-item-about .mega-menu-item:nth-child(even) {
    padding-left: 0;
}

/* About menu mobile styles */
@media (max-width: 1199px) {
    .menu-item-about .mega-menu-items {
        display: grid !important;
        grid-template-columns: repeat(1, 1fr) !important;
        gap: 16px;
    }
    
    .menu-item-about .mega-menu-item {
        width: 100%;
        padding-right: 0;
        padding-left: 0;
        margin-left: 0;
        margin-right: 0;
    }
    
    .menu-item-about .mega-menu-item:nth-child(odd) {
        padding-right: 0;
    }

    .menu-item-about .mega-menu-item:nth-child(even) {
        padding-left: 0;
    }
}

/* What We Do section hover state */
.whatwedo-hover {
    color: #0066cc !important;
}

.navbar-nav > li > a.whatwedo-hover {
    color: #fff !important;
}

.navbar-nav > li > a.whatwedo-hover:hover {
    color: #34495e !important;
}