/* ═══════════════════════════════════════════════════════════
   Hunt Property Services — Navigation Menu Custom CSS
   v2 — no caret, hover-safe submenu, active ancestor underline
   ═══════════════════════════════════════════════════════════ */

/* ── Hide dropdown caret / toggle arrow — ALL variants ───── */

/* Hide the entire toggle button and any SVG arrows */
.wp-block-navigation .wp-block-navigation-submenu__toggle,
.wp-block-navigation button.wp-block-navigation-submenu__toggle,
.wp-block-navigation .wp-block-navigation__submenu-icon,
.wp-block-navigation .wp-block-navigation-item__submenu-icon,
.wp-block-navigation .has-child>button,
.wp-block-navigation .has-child>.wp-block-navigation-item__content>svg,
.wp-block-navigation-item .wp-block-navigation-submenu__toggle svg,
.wp-block-navigation svg.wp-block-navigation__submenu-icon {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
    color: transparent !important;
    opacity: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
    position: absolute !important;
    visibility: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* ── Top-Level Nav Items ──────────────────────────────────── */
.wp-block-navigation .wp-block-navigation-item>a,
.wp-block-navigation .wp-block-navigation-item>.wp-block-navigation-item__content {
    font-size: 13px !important;
    font-weight: 400 !important;
    color: #2c2c2c !important;
    padding: 12px 0 0 !important;
    position: relative !important;
    background: none !important;
    border: none !important;
    transition: color 0.25s ease !important;
    cursor: pointer !important;
}

/* ── Underline bar via ::after ────────────────────────────── */
.wp-block-navigation .wp-block-navigation-item>a::after,
.wp-block-navigation .wp-block-navigation-item>.wp-block-navigation-item__content::after {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    bottom: -4px !important;
    left: 0 !important;
    width: 0 !important;
    height: 2px !important;
    background-color: #7e1444 !important;
    transition: width 0.3s ease !important;
}

/* ── Hover state underline (top-level) ───────────────────── */
.wp-block-navigation .wp-block-navigation-item:hover>a,
.wp-block-navigation .wp-block-navigation-item:hover>.wp-block-navigation-item__content {
    color: #7e1444 !important;
}

.wp-block-navigation .wp-block-navigation-item:hover>a::after,
.wp-block-navigation .wp-block-navigation-item:hover>.wp-block-navigation-item__content::after {
    width: 100% !important;
}

/* ── Active / Current page — underline always shown ──────── */
.wp-block-navigation .current-menu-item>a,
.wp-block-navigation .current-menu-item>.wp-block-navigation-item__content,
/* Parent item active when a child is the current page */
.wp-block-navigation .current-menu-parent>a,
.wp-block-navigation .current-menu-parent>.wp-block-navigation-item__content,
.wp-block-navigation .current-menu-ancestor>a,
.wp-block-navigation .current-menu-ancestor>.wp-block-navigation-item__content,
.wp-block-navigation .current-page-ancestor>a,
.wp-block-navigation .current-page-ancestor>.wp-block-navigation-item__content {
    color: #6e6e6e !important;
}

.wp-block-navigation .current-menu-item>a::after,
.wp-block-navigation .current-menu-item>.wp-block-navigation-item__content::after,
.wp-block-navigation .current-menu-parent>a::after,
.wp-block-navigation .current-menu-parent>.wp-block-navigation-item__content::after,
.wp-block-navigation .current-menu-ancestor>a::after,
.wp-block-navigation .current-menu-ancestor>.wp-block-navigation-item__content::after,
.wp-block-navigation .current-page-ancestor>a::after,
.wp-block-navigation .current-page-ancestor>.wp-block-navigation-item__content::after {
    width: 100% !important;
}

/* ── Submenu Container ────────────────────────────────────── */
.wp-block-navigation .has-child .wp-block-navigation__submenu-container {
    background: #ffffff !important;
    border: none !important;
    border-bottom: 3px solid #7e1444 !important;
    border-radius: 0 !important;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.10) !important;
    padding: 0 !important;
    min-width: 280px !important;
    top: 100% !important;
    left: 0 !important;
    /* Extend the pseudo-bridge upward so hovering gap doesn't close it */
    margin-top: 4px !important;
    /* Ensure submenu is visible when parent is hovered */
    display: none;
    position: absolute;
}

/* Hover-safe: keep submenu open while hovering it — bridge gap */
.wp-block-navigation .has-child:hover>.wp-block-navigation__submenu-container,
.wp-block-navigation .has-child:focus-within>.wp-block-navigation__submenu-container {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

/* Create invisible hover bridge between top nav item and dropdown to
   prevent submenu closing when moving the mouse downward into the panel */
.wp-block-navigation .has-child>a::before,
.wp-block-navigation .has-child>.wp-block-navigation-item__content::before {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    bottom: -16px !important;
    /* bridge height covers the gap */
    left: -20px !important;
    right: -20px !important;
    height: 20px !important;
    /* matches the gap */
    background: transparent !important;
    z-index: 99998 !important;
}

/* ── Dropdown list items ──────────────────────────────────── */
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item {
    border-bottom: 1px solid #f0eded !important;
    margin: 0 !important;
    display: block !important;
    width: 100% !important;
    position: relative !important;
}

.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item:last-child {
    border-bottom: none !important;
}

/* ── Dropdown item links ──────────────────────────────────── */
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item>a,
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item>.wp-block-navigation-item__content {
    font-weight: 400 !important;
    text-transform: none !important;
    color: #2c2c2c !important;
    padding: 16px 32px !important;
    display: block !important;
    width: 100% !important;
    transition: color 0.2s ease, background-color 0.2s ease, padding-left 0.2s ease !important;
    position: relative !important;
    box-sizing: border-box !important;
}

/* Suppress underline animation inside dropdown */
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item>a::after,
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item>a::before,
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item>.wp-block-navigation-item__content::after,
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item>.wp-block-navigation-item__content::before {
    display: none !important;
}

/* ── Dropdown item: left accent bar on hover ─────────────── */
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    bottom: 0 !important;
    width: 0 !important;
    background-color: #7e1444 !important;
    transition: width 0.2s ease !important;
    z-index: 1 !important;
}

/* ── Dropdown item hover ──────────────────────────────────── */
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item:hover::before {
    width: 3px !important;
}

.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item:hover>a,
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item:hover>.wp-block-navigation-item__content {
    color: #6e6e6e !important;
    background-color: #dddddd38 !important;
    padding-left: 40px !important;
}

/* ── Current page inside dropdown ────────────────────────── */
.wp-block-navigation .wp-block-navigation__submenu-container .current-menu-item::before {
    width: 3px !important;
}

.wp-block-navigation .wp-block-navigation__submenu-container .current-menu-item>a,
.wp-block-navigation .wp-block-navigation__submenu-container .current-menu-item>.wp-block-navigation-item__content {
    color: #6e6e6e !important;
    background-color: #fdf7f9 !important;
    padding-left: 40px !important;
    font-weight: 600 !important;
}

/* ── Remove default focus rings ──────────────────────────── */
.wp-block-navigation a:focus,
.wp-block-navigation button:focus {
    outline: none !important;
    box-shadow: none !important;
}

/* ── Mobile ───────────────────────────────────────────────── */
@media (max-width: 768px) {

    .wp-block-navigation .has-child>a::before,
    .wp-block-navigation .has-child>.wp-block-navigation-item__content::before {
        display: none !important;
    }

    .wp-block-navigation .wp-block-navigation__submenu-container {
        position: static !important;
        border-top-width: 2px !important;
        box-shadow: none !important;
        border-left: 3px solid #6e6e6e !important;
        background: #fdf7f9 !important;
        display: block !important;
    }

    .wp-block-navigation .wp-block-navigation-item>a::after {
        display: none !important;
    }

    .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item>a,
    .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item>.wp-block-navigation-item__content {
        padding: 12px 20px !important;
    }
}