/* Navigation hover fix (wire theme).
 * The bundled UberMenu uses .ubermenu-transition-shift which adds a 20px
 * margin-top to .ubermenu-submenu-drop. That creates a visible gap between
 * the top-level item and its submenu, so the CSS :hover state briefly drops
 * as the cursor crosses the gap, the menu snaps shut, and then immediately
 * reopens when the cursor enters the submenu — visible as a flicker.
 *
 * Fix: collapse the 20px gap to 0 (the submenu butts against the parent li,
 * so :hover stays true the whole time) and shorten the show animation so
 * the menu appears decisively when hovered and only retracts when the
 * cursor truly leaves.
 */
.ubermenu-transition-shift .ubermenu-item .ubermenu-submenu-drop {
    margin-top: 0 !important;
}

.ubermenu-nojs.ubermenu-transition-shift .ubermenu-item:hover > .ubermenu-submenu-drop,
.ubermenu-transition-shift .ubermenu-item.ubermenu-active > .ubermenu-submenu-drop {
    margin-top: 0 !important;
    transition-duration: .12s;
}

.ubermenu-transition-shift .ubermenu-item .ubermenu-submenu-drop {
    transition-property: opacity, visibility;
    transition-duration: .18s;
    transition-timing-function: ease-out;
}

/* While the cursor is on the top-level li OR any descendant, the submenu
 * stays attached. The submenu is a child of the li, so :hover already keeps
 * it open, but be defensive: also pad slightly so accidental micro-movement
 * at the seam still counts as hover. */
.ubermenu-transition-shift .ubermenu-item-level-0 {
    position: static;
}

/* Extend the hit area slightly downward so a cursor gliding from the li into
 * the submenu doesn't fall into the seam. */
.ubermenu-transition-shift .ubermenu-item-level-0 > .ubermenu-submenu-drop {
    margin-top: 0 !important;
}

/* Hide any leftover visible artefacts from the original shift animation. */
.ubermenu-transition-shift .ubermenu-item .ubermenu-submenu-drop {
    transform: none !important;
}

/* FAQ accordion: keep the answer body on its default light background and
 * render the answer text in brand blue. home.css forces p/li to white
 * (#faqs ... [aria-expanded="true"] + div ... p { color:#fff }) which
 * disappears on the light answer panel — override it here with blue.
 *
 * Exception: the first accordion item in the list keeps a dark-blue
 * extended background (matching its title bar), so its answer text must
 * be white to stay readable. */
#faqs .elementor-widget-n-accordion .e-n-accordion-item[open] > div.e-con.e-child p,
#faqs .elementor-widget-n-accordion .e-n-accordion-item[open] > div.e-con.e-child li,
#faqs .elementor-widget-n-accordion .e-n-accordion-item[open] > div.e-con.e-child a {
    color: #1d3a8a !important;
    opacity: 1 !important;
}
#faqs .elementor-widget-n-accordion .e-n-accordion-item:first-of-type[open] > div.e-con.e-child p,
#faqs .elementor-widget-n-accordion .e-n-accordion-item:first-of-type[open] > div.e-con.e-child li,
#faqs .elementor-widget-n-accordion .e-n-accordion-item:first-of-type[open] > div.e-con.e-child a {
    color: #ffffff !important;
}

/* Cable Assembly dropdown width: the menu has only 9 single-column items,
 * so keep it content-width instead of expanding to a mega panel. */
.ubermenu-submenu-id-13427 {
    min-width: 0 !important;
    width: auto !important;
}
.ubermenu-submenu-id-13427 .ubermenu-target {
    white-space: nowrap;
}

/* Wire Harness dropdown width: converted to the same flyout style as Cable Assembly. */
.ubermenu-submenu-id-13446 {
    min-width: 0 !important;
    width: auto !important;
}
.ubermenu-submenu-id-13446 .ubermenu-target {
    white-space: nowrap;
}