/* ─── Nav container gap ──────────────────────────────────────────────────── */
nav.wp-block-navigation .wp-block-navigation__container,
.wp-block-navigation .wp-block-navigation__container {
    display: flex !important;
    gap: var(--cw-nav-gap, 0) !important;
}

/* Submenu gap */
nav.wp-block-navigation .wp-block-navigation__submenu-container,
.wp-block-navigation .wp-block-navigation__submenu-container {
    gap: var(--cw-nav-submenu-gap, 0) !important;
}

/* Reset margin-bottom on submenu items (WordPress adds margin-bottom: 3px) */
nav.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item,
nav.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-submenu,
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item,
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-submenu {
    margin-bottom: 0 !important;
}

/* ─── Top-level wrapper ──────────────────────────────────────────────────── */
nav.wp-block-navigation .cw-nav-item-wrapper,
.wp-block-navigation .cw-nav-item-wrapper {
    display: flex;
    align-items: center;
    margin: 0;
}

/* Default text-decoration: none on all nav links */
nav.wp-block-navigation .wp-block-navigation-item__content,
.wp-block-navigation .wp-block-navigation-item__content {
    text-decoration: none !important;
}

/* ─── Top-level hover — text ─────────────────────────────────────────────── */
nav.wp-block-navigation:not(:has(.is-menu-open)) .cw-nav-item-wrapper:hover > .wp-block-navigation-item__content,
nav.wp-block-navigation:not(:has(.is-menu-open)) .cw-nav-item-wrapper:hover > .wp-block-navigation-submenu__toggle,
.wp-block-navigation:not(:has(.is-menu-open)) .cw-nav-item-wrapper:hover > .wp-block-navigation-item__content,
.wp-block-navigation:not(:has(.is-menu-open)) .cw-nav-item-wrapper:hover > .wp-block-navigation-submenu__toggle,
    /* Keep hover when submenu is open */
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation-submenu:hover > .cw-nav-item-wrapper > .wp-block-navigation-item__content,
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation-submenu:hover > .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle,
.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation-submenu:hover > .cw-nav-item-wrapper > .wp-block-navigation-item__content,
.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation-submenu:hover > .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle {
    color: var(--cw-nav-hover-text-color) !important;
}

/* Arrow SVG on hover */
nav.wp-block-navigation:not(:has(.is-menu-open)) .cw-nav-item-wrapper:hover > .wp-block-navigation-submenu__toggle svg path,
.wp-block-navigation:not(:has(.is-menu-open)) .cw-nav-item-wrapper:hover > .wp-block-navigation-submenu__toggle svg path,
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation-submenu:hover > .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle svg path,
.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation-submenu:hover > .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle svg path,
nav.wp-block-navigation:not(:has(.is-menu-open)) .cw-nav-item-wrapper:hover .wp-block-navigation__submenu-icon svg path,
.wp-block-navigation:not(:has(.is-menu-open)) .cw-nav-item-wrapper:hover .wp-block-navigation__submenu-icon svg path,
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation-submenu:hover > .cw-nav-item-wrapper .wp-block-navigation__submenu-icon svg path,
.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation-submenu:hover > .cw-nav-item-wrapper .wp-block-navigation__submenu-icon svg path {
    stroke: var(--cw-nav-hover-text-color, currentColor) !important;
}

/* Rotate arrow on hover (top-level only, not inside submenus) */
nav.wp-block-navigation:not(:has(.is-menu-open)) > .wp-block-navigation__container > .wp-block-navigation-submenu:hover > .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle svg,
.wp-block-navigation:not(:has(.is-menu-open)) > .wp-block-navigation__container > .wp-block-navigation-submenu:hover > .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle svg {
    transform: rotate(180deg);
}

/* ─── Top-level hover — background ──────────────────────────────────────── */
nav.wp-block-navigation:not(:has(.is-menu-open)) .cw-nav-item-wrapper:hover,
.wp-block-navigation:not(:has(.is-menu-open)) .cw-nav-item-wrapper:hover,
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation-submenu:hover > .cw-nav-item-wrapper,
.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation-submenu:hover > .cw-nav-item-wrapper {
    background: var(--cw-nav-hover-bg-color) !important;
    background-color: var(--cw-nav-hover-bg-color) !important;
}

/* ─── Top-level hover — border ───────────────────────────────────────────── */
nav.wp-block-navigation:not(:has(.is-menu-open)) .cw-nav-item-wrapper:hover,
.wp-block-navigation:not(:has(.is-menu-open)) .cw-nav-item-wrapper:hover,
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation-submenu:hover > .cw-nav-item-wrapper,
.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation-submenu:hover > .cw-nav-item-wrapper {
    border-top: var(--cw-nav-hover-border-top) !important;
    border-right: var(--cw-nav-hover-border-right) !important;
    border-bottom: var(--cw-nav-hover-border-bottom) !important;
    border-left: var(--cw-nav-hover-border-left) !important;
    border-top-left-radius: var(--cw-nav-hover-radius-tl) !important;
    border-top-right-radius: var(--cw-nav-hover-radius-tr) !important;
    border-bottom-right-radius: var(--cw-nav-hover-radius-br) !important;
    border-bottom-left-radius: var(--cw-nav-hover-radius-bl) !important;
}

/* ─── Top-level hover — typography ──────────────────────────────────────── */
nav.wp-block-navigation:not(:has(.is-menu-open)) .cw-nav-item-wrapper:hover > .wp-block-navigation-item__content,
.wp-block-navigation:not(:has(.is-menu-open)) .cw-nav-item-wrapper:hover > .wp-block-navigation-item__content,
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation-submenu:hover > .cw-nav-item-wrapper > .wp-block-navigation-item__content,
.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation-submenu:hover > .cw-nav-item-wrapper > .wp-block-navigation-item__content {
    font-family: var(--cw-nav-hover-font-family) !important;
    font-size: var(--cw-nav-hover-font-size) !important;
    font-style: var(--cw-nav-hover-font-style) !important;
    font-weight: var(--cw-nav-hover-font-weight) !important;
    line-height: var(--cw-nav-hover-line-height) !important;
    letter-spacing: var(--cw-nav-hover-letter-spacing) !important;
    text-decoration: var(--cw-nav-hover-text-decoration, none) !important;
    text-transform: var(--cw-nav-hover-text-transform) !important;
}

/* ─── Top-level selected — text ──────────────────────────────────────────── */
nav.wp-block-navigation:not(:has(.is-menu-open)) .current-menu-item > .cw-nav-item-wrapper > .wp-block-navigation-item__content,
nav.wp-block-navigation:not(:has(.is-menu-open)) .current-menu-item > .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle,
nav.wp-block-navigation:not(:has(.is-menu-open)) .current-menu-ancestor > .cw-nav-item-wrapper > .wp-block-navigation-item__content,
nav.wp-block-navigation:not(:has(.is-menu-open)) .current-menu-ancestor > .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle,
.wp-block-navigation:not(:has(.is-menu-open)) .current-menu-item > .cw-nav-item-wrapper > .wp-block-navigation-item__content,
.wp-block-navigation:not(:has(.is-menu-open)) .current-menu-item > .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle,
.wp-block-navigation:not(:has(.is-menu-open)) .current-menu-ancestor > .cw-nav-item-wrapper > .wp-block-navigation-item__content,
.wp-block-navigation:not(:has(.is-menu-open)) .current-menu-ancestor > .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle {
    color: var(--cw-nav-selected-text-color) !important;
}

/* ─── Top-level selected — background ───────────────────────────────────── */
nav.wp-block-navigation:not(:has(.is-menu-open)) .current-menu-item > .cw-nav-item-wrapper,
nav.wp-block-navigation:not(:has(.is-menu-open)) .current-menu-ancestor > .cw-nav-item-wrapper,
.wp-block-navigation:not(:has(.is-menu-open)) .current-menu-item > .cw-nav-item-wrapper,
.wp-block-navigation:not(:has(.is-menu-open)) .current-menu-ancestor > .cw-nav-item-wrapper {
    background: var(--cw-nav-selected-bg-color) !important;
    background-color: var(--cw-nav-selected-bg-color) !important;
}

/* ─── Top-level selected — border ────────────────────────────────────────── */
nav.wp-block-navigation:not(:has(.is-menu-open)) .current-menu-item > .cw-nav-item-wrapper,
nav.wp-block-navigation:not(:has(.is-menu-open)) .current-menu-ancestor > .cw-nav-item-wrapper,
.wp-block-navigation:not(:has(.is-menu-open)) .current-menu-item > .cw-nav-item-wrapper,
.wp-block-navigation:not(:has(.is-menu-open)) .current-menu-ancestor > .cw-nav-item-wrapper {
    border-top: var(--cw-nav-selected-border-top) !important;
    border-right: var(--cw-nav-selected-border-right) !important;
    border-bottom: var(--cw-nav-selected-border-bottom) !important;
    border-left: var(--cw-nav-selected-border-left) !important;
    border-top-left-radius: var(--cw-nav-selected-radius-tl) !important;
    border-top-right-radius: var(--cw-nav-selected-radius-tr) !important;
    border-bottom-right-radius: var(--cw-nav-selected-radius-br) !important;
    border-bottom-left-radius: var(--cw-nav-selected-radius-bl) !important;
}

/* ─── Top-level selected — typography ───────────────────────────────────── */
nav.wp-block-navigation:not(:has(.is-menu-open)) .current-menu-item > .cw-nav-item-wrapper > .wp-block-navigation-item__content,
nav.wp-block-navigation:not(:has(.is-menu-open)) .current-menu-ancestor > .cw-nav-item-wrapper > .wp-block-navigation-item__content,
.wp-block-navigation:not(:has(.is-menu-open)) .current-menu-item > .cw-nav-item-wrapper > .wp-block-navigation-item__content,
.wp-block-navigation:not(:has(.is-menu-open)) .current-menu-ancestor > .cw-nav-item-wrapper > .wp-block-navigation-item__content {
    font-family: var(--cw-nav-selected-font-family) !important;
    font-size: var(--cw-nav-selected-font-size) !important;
    font-style: var(--cw-nav-selected-font-style) !important;
    font-weight: var(--cw-nav-selected-font-weight) !important;
    line-height: var(--cw-nav-selected-line-height) !important;
    letter-spacing: var(--cw-nav-selected-letter-spacing) !important;
    text-decoration: var(--cw-nav-selected-text-decoration, none) !important;
    text-transform: var(--cw-nav-selected-text-transform) !important;
}

/* ─── Top-level normal — padding + click-area ────────────────────────────── */
nav.wp-block-navigation .cw-nav-item-wrapper,
.wp-block-navigation .cw-nav-item-wrapper {
    position: relative;
    padding-top: var(--cw-nav-padding-top) !important;
    padding-right: var(--cw-nav-padding-right) !important;
    padding-bottom: var(--cw-nav-padding-bottom) !important;
    padding-left: var(--cw-nav-padding-left) !important;
}

/* Top-level link - expand click area with pseudo-element */
nav.wp-block-navigation .cw-nav-item-wrapper > .wp-block-navigation-item__content::after,
.wp-block-navigation .cw-nav-item-wrapper > .wp-block-navigation-item__content::after {
    content: '';
    position: absolute;
    inset: 0;
}

/* Top-level arrow - sit on top of expanded click area */
nav.wp-block-navigation .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle,
.wp-block-navigation .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle {
    position: relative;
    z-index: 1;
}

/* Reset padding on links inside wrapper */
nav.wp-block-navigation .cw-nav-item-wrapper > .wp-block-navigation-item__content,
.wp-block-navigation .cw-nav-item-wrapper > .wp-block-navigation-item__content {
    padding: 0 !important;
}

/* ─── Top-level normal — border ──────────────────────────────────────────── */
nav.wp-block-navigation:not(:has(.is-menu-open)) .cw-nav-item-wrapper,
.wp-block-navigation:not(:has(.is-menu-open)) .cw-nav-item-wrapper {
    border-top: var(--cw-nav-normal-border-top) !important;
    border-right: var(--cw-nav-normal-border-right) !important;
    border-bottom: var(--cw-nav-normal-border-bottom) !important;
    border-left: var(--cw-nav-normal-border-left) !important;
    border-top-left-radius: var(--cw-nav-normal-radius-tl) !important;
    border-top-right-radius: var(--cw-nav-normal-radius-tr) !important;
    border-bottom-right-radius: var(--cw-nav-normal-radius-br) !important;
    border-bottom-left-radius: var(--cw-nav-normal-radius-bl) !important;
}

/* ─── Submenu items — hover text ─────────────────────────────────────────── */
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-item:hover > .wp-block-navigation-item__content,
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-submenu:hover > .wp-block-navigation-item__content,
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-item:hover > .wp-block-navigation-submenu__toggle,
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-submenu:hover > .wp-block-navigation-submenu__toggle,
.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-item:hover > .wp-block-navigation-item__content,
.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-submenu:hover > .wp-block-navigation-item__content,
.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-item:hover > .wp-block-navigation-submenu__toggle,
.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-submenu:hover > .wp-block-navigation-submenu__toggle {
    color: var(--cw-nav-hover-submenu-text-color) !important;
}

/* Submenu arrow SVG on hover */
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-submenu:hover > .wp-block-navigation__submenu-icon svg path,
.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-submenu:hover > .wp-block-navigation__submenu-icon svg path,
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-item:hover > .wp-block-navigation__submenu-icon svg path,
.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-item:hover > .wp-block-navigation__submenu-icon svg path {
    stroke: var(--cw-nav-hover-submenu-text-color, currentColor) !important;
}

/* ─── Submenu items — hover background ───────────────────────────────────── */
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-item:hover,
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-submenu:hover,
.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-item:hover,
.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-submenu:hover {
    background: var(--cw-nav-hover-submenu-bg-color) !important;
    background-color: var(--cw-nav-hover-submenu-bg-color) !important;
}

/* ─── Submenu items — hover border ───────────────────────────────────────── */
nav.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-item:hover,
nav.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-submenu:hover,
.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-item:hover,
.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-submenu:hover {
    border-top: var(--cw-nav-submenu-hover-border-top) !important;
    border-right: var(--cw-nav-submenu-hover-border-right) !important;
    border-bottom: var(--cw-nav-submenu-hover-border-bottom) !important;
    border-left: var(--cw-nav-submenu-hover-border-left) !important;
    border-top-left-radius: var(--cw-nav-submenu-hover-radius-tl) !important;
    border-top-right-radius: var(--cw-nav-submenu-hover-radius-tr) !important;
    border-bottom-right-radius: var(--cw-nav-submenu-hover-radius-br) !important;
    border-bottom-left-radius: var(--cw-nav-submenu-hover-radius-bl) !important;
}

/* ─── Submenu items — hover typography ───────────────────────────────────── */
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-item:hover > .wp-block-navigation-item__content,
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-submenu:hover > .wp-block-navigation-item__content,
.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-item:hover > .wp-block-navigation-item__content,
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-submenu:hover > .wp-block-navigation-item__content {
    font-family: var(--cw-nav-hover-submenu-font-family) !important;
    font-size: var(--cw-nav-hover-submenu-font-size) !important;
    font-style: var(--cw-nav-hover-submenu-font-style) !important;
    font-weight: var(--cw-nav-hover-submenu-font-weight) !important;
    line-height: var(--cw-nav-hover-submenu-line-height) !important;
    letter-spacing: var(--cw-nav-hover-submenu-letter-spacing) !important;
    text-decoration: var(--cw-nav-hover-submenu-text-decoration, none) !important;
    text-transform: var(--cw-nav-hover-submenu-text-transform) !important;
}

/* ─── Submenu items — selected text ──────────────────────────────────────── */
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .current-menu-item:not(:hover) > .wp-block-navigation-item__content,
.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .current-menu-item:not(:hover) > .wp-block-navigation-item__content {
    color: var(--cw-nav-selected-submenu-text-color) !important;
}

/* ─── Submenu items — selected background ────────────────────────────────── */
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-item.current-menu-item:not(:hover),
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-submenu.current-menu-item:not(:hover),
.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-item.current-menu-item:not(:hover),
.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .wp-block-navigation-submenu.current-menu-item:not(:hover) {
    background: var(--cw-nav-selected-submenu-bg-color) !important;
    background-color: var(--cw-nav-selected-submenu-bg-color) !important;
}

/* ─── Submenu items — selected border ────────────────────────────────────── */
nav.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-item.current-menu-item:not(:hover),
nav.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-submenu.current-menu-item:not(:hover),
.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-item.current-menu-item:not(:hover),
.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-submenu.current-menu-item:not(:hover) {
    border-top: var(--cw-nav-submenu-selected-border-top) !important;
    border-right: var(--cw-nav-submenu-selected-border-right) !important;
    border-bottom: var(--cw-nav-submenu-selected-border-bottom) !important;
    border-left: var(--cw-nav-submenu-selected-border-left) !important;
    border-top-left-radius: var(--cw-nav-submenu-selected-radius-tl) !important;
    border-top-right-radius: var(--cw-nav-submenu-selected-radius-tr) !important;
    border-bottom-right-radius: var(--cw-nav-submenu-selected-radius-br) !important;
    border-bottom-left-radius: var(--cw-nav-submenu-selected-radius-bl) !important;
}

/* ─── Submenu items — selected typography ────────────────────────────────── */
nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .current-menu-item:not(:hover) > .wp-block-navigation-item__content,
.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__submenu-container .current-menu-item:not(:hover) > .wp-block-navigation-item__content {
    font-family: var(--cw-nav-selected-submenu-font-family) !important;
    font-size: var(--cw-nav-selected-submenu-font-size) !important;
    font-style: var(--cw-nav-selected-submenu-font-style) !important;
    font-weight: var(--cw-nav-selected-submenu-font-weight) !important;
    line-height: var(--cw-nav-selected-submenu-line-height) !important;
    letter-spacing: var(--cw-nav-selected-submenu-letter-spacing) !important;
    text-decoration: var(--cw-nav-selected-submenu-text-decoration, none) !important;
    text-transform: var(--cw-nav-selected-submenu-text-transform) !important;
}

/* ─── Submenu items — normal typography (base, overridden by hover/selected) */
nav.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content,
nav.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-submenu > .wp-block-navigation-item__content,
.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content,
.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-submenu > .wp-block-navigation-item__content {
    font-family: var(--cw-nav-submenu-font-family) !important;
    font-size: var(--cw-nav-submenu-font-size) !important;
    font-style: var(--cw-nav-submenu-font-style) !important;
    font-weight: var(--cw-nav-submenu-font-weight) !important;
    line-height: var(--cw-nav-submenu-line-height) !important;
    letter-spacing: var(--cw-nav-submenu-letter-spacing) !important;
    text-decoration: var(--cw-nav-submenu-text-decoration, none) !important;
    text-transform: var(--cw-nav-submenu-text-transform) !important;
}

/* ─── Submenu items — normal border ──────────────────────────────────────── */
nav.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-item,
nav.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-submenu,
.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-item,
.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-submenu {
    position: relative;
    padding-top: var(--cw-nav-submenu-padding-top) !important;
    padding-right: var(--cw-nav-submenu-padding-right) !important;
    padding-bottom: var(--cw-nav-submenu-padding-bottom) !important;
    padding-left: var(--cw-nav-submenu-padding-left) !important;
    border-top: var(--cw-nav-submenu-normal-border-top) !important;
    border-right: var(--cw-nav-submenu-normal-border-right) !important;
    border-bottom: var(--cw-nav-submenu-normal-border-bottom) !important;
    border-left: var(--cw-nav-submenu-normal-border-left) !important;
    border-top-left-radius: var(--cw-nav-submenu-normal-radius-tl) !important;
    border-top-right-radius: var(--cw-nav-submenu-normal-radius-tr) !important;
    border-bottom-right-radius: var(--cw-nav-submenu-normal-radius-br) !important;
    border-bottom-left-radius: var(--cw-nav-submenu-normal-radius-bl) !important;
}

/* Submenu link - expand click area with pseudo-element */
nav.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content::after,
nav.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-submenu > .wp-block-navigation-item__content::after,
.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-submenu > .wp-block-navigation-item__content::after {
    content: '';
    position: absolute;
    inset: 0;
}

/* Submenu arrow - sit on top of expanded click area */
nav.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-submenu__toggle,
nav.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle,
.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-submenu__toggle,
.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle {
    position: relative;
    z-index: 1;
}

/* Reset submenu link padding */
nav.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content,
nav.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-submenu > .wp-block-navigation-item__content,
.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content,
.wp-block-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-submenu > .wp-block-navigation-item__content {
    padding: 0 !important;
}

/* ─── Overlay/mobile submenu padding ─────────────────────────────────────── */
nav.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container > .wp-block-navigation-item,
nav.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container > .wp-block-navigation-submenu,
.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container > .wp-block-navigation-item,
.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container > .wp-block-navigation-submenu {
    padding-top: var(--cw-nav-submenu-padding-top) !important;
    padding-right: var(--cw-nav-submenu-padding-right) !important;
    padding-bottom: var(--cw-nav-submenu-padding-bottom) !important;
    padding-left: var(--cw-nav-submenu-padding-left) !important;
}

/* Reset overlay submenu link padding */
nav.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content,
nav.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container > .wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle,
.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content,
.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container > .wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle {
    padding: 0 !important;
}



@media (min-width: 1025px) {
    nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__container > .wp-block-navigation-submenu:not(.cw-arrow-hide-desktop):hover > .cw-nav-item-wrapper > .wp-block-navigation-item__content,
    nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__container > .wp-block-navigation-submenu:not(.cw-arrow-hide-desktop):hover > .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle,
    .wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__container > .wp-block-navigation-submenu:not(.cw-arrow-hide-desktop):hover > .cw-nav-item-wrapper > .wp-block-navigation-item__content,
    .wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__container > .wp-block-navigation-submenu:not(.cw-arrow-hide-desktop):hover > .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle {
        color: var(--cw-nav-submenu-parent-hover-text-color, var(--cw-nav-hover-text-color)) !important;
    }
    nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__container > .wp-block-navigation-submenu:not(.cw-arrow-hide-desktop):hover > .cw-nav-item-wrapper,
    .wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__container > .wp-block-navigation-submenu:not(.cw-arrow-hide-desktop):hover > .cw-nav-item-wrapper {
        background-color: var(--cw-nav-submenu-parent-hover-bg-color, var(--cw-nav-hover-bg-color)) !important;
    }
}

@media (min-width: 782px) and (max-width: 1024px) {
    nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__container > .wp-block-navigation-submenu:not(.cw-arrow-hide-tablet):hover > .cw-nav-item-wrapper > .wp-block-navigation-item__content,
    nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__container > .wp-block-navigation-submenu:not(.cw-arrow-hide-tablet):hover > .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle,
    .wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__container > .wp-block-navigation-submenu:not(.cw-arrow-hide-tablet):hover > .cw-nav-item-wrapper > .wp-block-navigation-item__content,
    .wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__container > .wp-block-navigation-submenu:not(.cw-arrow-hide-tablet):hover > .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle {
        color: var(--cw-nav-submenu-parent-hover-text-color, var(--cw-nav-hover-text-color)) !important;
    }
    nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__container > .wp-block-navigation-submenu:not(.cw-arrow-hide-tablet):hover > .cw-nav-item-wrapper,
    .wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__container > .wp-block-navigation-submenu:not(.cw-arrow-hide-tablet):hover > .cw-nav-item-wrapper {
        background-color: var(--cw-nav-submenu-parent-hover-bg-color, var(--cw-nav-hover-bg-color)) !important;
    }
}

@media (max-width: 781px) {
    nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__container > .wp-block-navigation-submenu:not(.cw-arrow-hide-mobile):hover > .cw-nav-item-wrapper > .wp-block-navigation-item__content,
    nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__container > .wp-block-navigation-submenu:not(.cw-arrow-hide-mobile):hover > .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle,
    .wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__container > .wp-block-navigation-submenu:not(.cw-arrow-hide-mobile):hover > .cw-nav-item-wrapper > .wp-block-navigation-item__content,
    .wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__container > .wp-block-navigation-submenu:not(.cw-arrow-hide-mobile):hover > .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle {
        color: var(--cw-nav-submenu-parent-hover-text-color, var(--cw-nav-hover-text-color)) !important;
    }
    nav.wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__container > .wp-block-navigation-submenu:not(.cw-arrow-hide-mobile):hover > .cw-nav-item-wrapper,
    .wp-block-navigation:not(:has(.is-menu-open)) .wp-block-navigation__container > .wp-block-navigation-submenu:not(.cw-arrow-hide-mobile):hover > .cw-nav-item-wrapper {
        background-color: var(--cw-nav-submenu-parent-hover-bg-color, var(--cw-nav-hover-bg-color)) !important;
    }
}

/* ─── Responsive visibility — hide on specific breakpoints ───────────────── */
/* Each class hides the item on its named breakpoint. Any combination is valid. */

@media (min-width: 1025px) {
    .cw-hide-desktop { display: none !important; }
}

@media (min-width: 782px) and (max-width: 1024px) {
    .cw-hide-tablet { display: none !important; }
}

@media (max-width: 781px) {
    .cw-hide-mobile { display: none !important; }
}

/* ─── Submenu arrow hiding — when all children are hidden on a breakpoint ── */
/* Hides the toggle button and the submenu container so no ghost arrow remains. */
/* Works for both top-level submenus (wrapper present) and nested ones (no wrapper). */

@media (min-width: 1025px) {
    .cw-arrow-hide-desktop > .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle,
    .cw-arrow-hide-desktop > .wp-block-navigation-submenu__toggle,
    .cw-arrow-hide-desktop > .wp-block-navigation__submenu-container { display: none !important; }
}

@media (min-width: 782px) and (max-width: 1024px) {
    .cw-arrow-hide-tablet > .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle,
    .cw-arrow-hide-tablet > .wp-block-navigation-submenu__toggle,
    .cw-arrow-hide-tablet > .wp-block-navigation__submenu-container { display: none !important; }
}

@media (max-width: 781px) {
    .cw-arrow-hide-mobile > .cw-nav-item-wrapper > .wp-block-navigation-submenu__toggle,
    .cw-arrow-hide-mobile > .wp-block-navigation-submenu__toggle,
    .cw-arrow-hide-mobile > .wp-block-navigation__submenu-container { display: none !important; }
}