/* Desktop: left = roots. Hover/focus parent with children → contextual child flyout
   aligned to that row, height = child content (not stretched to the left pane).
   Nested panes remain recursive for future grandchildren. */
@media (min-width: 981px) {
	.primary-nav .menu > li.menu-item-specialty-featured,
	.nav-desktop-menu .menu > li.menu-item-specialty-featured {
		position: relative;
	}

	.nav-desktop-menu .specialty-flyout.sub-menu,
	.primary-nav .specialty-flyout.sub-menu {
		display: block;
		position: absolute;
		left: 0;
		width: auto;
		min-width: 280px;
		max-width: none;
		max-height: none;
		overflow: visible !important;
		padding: 8px 0 !important;
		grid-template-columns: none;
		gap: 0;
		border: 1px solid rgba(18, 60, 64, 0.1) !important;
		border-radius: 10px;
		background: #fff !important;
		box-shadow: 0 18px 50px rgba(13, 71, 75, 0.15);
	}

	.primary-nav .menu > li.menu-item-specialty-featured:hover > .specialty-flyout,
	.primary-nav .menu > li.menu-item-specialty-featured:focus-within > .specialty-flyout,
	.primary-nav .menu > li.menu-item-specialty-featured.submenu-open > .specialty-flyout,
	.nav-desktop-menu .menu > li.menu-item-specialty-featured:hover > .specialty-flyout,
	.nav-desktop-menu .menu > li.menu-item-specialty-featured:focus-within > .specialty-flyout,
	.nav-desktop-menu .menu > li.menu-item-specialty-featured.submenu-open > .specialty-flyout {
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		pointer-events: auto;
	}

	.nav-desktop-menu .specialty-flyout > .specialty-tree-item,
	.primary-nav .specialty-flyout > .specialty-tree-item {
		position: relative;
	}

	.nav-desktop-menu .specialty-flyout.sub-menu > .specialty-tree-item > a,
	.primary-nav .specialty-flyout.sub-menu > .specialty-tree-item > a,
	.nav-desktop-menu .specialty-flyout.sub-menu .specialty-flyout-pane > .specialty-tree-item > a,
	.primary-nav .specialty-flyout.sub-menu .specialty-flyout-pane > .specialty-tree-item > a {
		position: relative;
		display: flex !important;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		min-height: 44px;
		min-width: 280px;
		padding: 13px 22px 13px 38px !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		color: var(--ink, #123c40);
		font-weight: 650;
		box-shadow: none !important;
	}

	.nav-desktop-menu .specialty-flyout.sub-menu .specialty-flyout-pane > .specialty-tree-item > a,
	.primary-nav .specialty-flyout.sub-menu .specialty-flyout-pane > .specialty-tree-item > a {
		font-weight: 500;
	}

	.nav-desktop-menu .specialty-flyout.sub-menu > .specialty-tree-item > a .menu-link-label,
	.primary-nav .specialty-flyout.sub-menu > .specialty-tree-item > a .menu-link-label,
	.nav-desktop-menu .specialty-flyout.sub-menu .specialty-flyout-pane > .specialty-tree-item > a .menu-link-label,
	.primary-nav .specialty-flyout.sub-menu .specialty-flyout-pane > .specialty-tree-item > a .menu-link-label {
		display: inline-block;
		transform: translateX(0);
		transition: transform 200ms ease-out, color 200ms ease-out;
	}

	.nav-desktop-menu .specialty-flyout.sub-menu > .specialty-tree-item > a::before,
	.primary-nav .specialty-flyout.sub-menu > .specialty-tree-item > a::before,
	.nav-desktop-menu .specialty-flyout.sub-menu .specialty-flyout-pane > .specialty-tree-item > a::before,
	.primary-nav .specialty-flyout.sub-menu .specialty-flyout-pane > .specialty-tree-item > a::before {
		content: "→";
		display: block;
		position: absolute;
		left: 16px;
		top: 50%;
		color: var(--gold, #B79A5B);
		font-size: 13px;
		line-height: 1;
		opacity: 0;
		transform: translate(-6px, -50%);
		transition: opacity 200ms ease-out, transform 200ms ease-out;
		pointer-events: none;
	}

	.nav-desktop-menu .specialty-flyout.sub-menu > .specialty-tree-item:hover > a .menu-link-label,
	.nav-desktop-menu .specialty-flyout.sub-menu > .specialty-tree-item:focus-within > a .menu-link-label,
	.nav-desktop-menu .specialty-flyout.sub-menu .specialty-flyout-pane > .specialty-tree-item:hover > a .menu-link-label,
	.nav-desktop-menu .specialty-flyout.sub-menu .specialty-flyout-pane > .specialty-tree-item:focus-within > a .menu-link-label,
	.primary-nav .specialty-flyout.sub-menu > .specialty-tree-item:hover > a .menu-link-label,
	.primary-nav .specialty-flyout.sub-menu > .specialty-tree-item:focus-within > a .menu-link-label,
	.primary-nav .specialty-flyout.sub-menu .specialty-flyout-pane > .specialty-tree-item:hover > a .menu-link-label,
	.primary-nav .specialty-flyout.sub-menu .specialty-flyout-pane > .specialty-tree-item:focus-within > a .menu-link-label {
		transform: translateX(10px);
	}

	.nav-desktop-menu .specialty-flyout.sub-menu > .specialty-tree-item:hover > a::before,
	.nav-desktop-menu .specialty-flyout.sub-menu > .specialty-tree-item:focus-within > a::before,
	.nav-desktop-menu .specialty-flyout.sub-menu .specialty-flyout-pane > .specialty-tree-item:hover > a::before,
	.nav-desktop-menu .specialty-flyout.sub-menu .specialty-flyout-pane > .specialty-tree-item:focus-within > a::before,
	.primary-nav .specialty-flyout.sub-menu > .specialty-tree-item:hover > a::before,
	.primary-nav .specialty-flyout.sub-menu > .specialty-tree-item:focus-within > a::before,
	.primary-nav .specialty-flyout.sub-menu .specialty-flyout-pane > .specialty-tree-item:hover > a::before,
	.primary-nav .specialty-flyout.sub-menu .specialty-flyout-pane > .specialty-tree-item:focus-within > a::before {
		opacity: 1;
		transform: translate(0, -50%);
	}

	.nav-desktop-menu .specialty-flyout .specialty-flyout-pane > .specialty-tree-item > a .menu-link-label,
	.primary-nav .specialty-flyout .specialty-flyout-pane > .specialty-tree-item > a .menu-link-label {
		font-weight: 500;
	}

	.nav-desktop-menu .specialty-flyout > .menu-item-has-children > a .menu-chevron,
	.primary-nav .specialty-flyout > .menu-item-has-children > a .menu-chevron,
	.nav-desktop-menu .specialty-flyout .specialty-flyout-pane .menu-item-has-children > a .menu-chevron,
	.primary-nav .specialty-flyout .specialty-flyout-pane .menu-item-has-children > a .menu-chevron {
		display: inline-block;
		flex: 0 0 auto;
		opacity: 0.55;
		transform: rotate(-45deg);
		margin-left: 8px;
	}

	.nav-desktop-menu .specialty-flyout > .specialty-tree-item:hover > a,
	.nav-desktop-menu .specialty-flyout > .specialty-tree-item:focus-within > a,
	.nav-desktop-menu .specialty-flyout .specialty-flyout-pane > .specialty-tree-item:hover > a,
	.nav-desktop-menu .specialty-flyout .specialty-flyout-pane > .specialty-tree-item:focus-within > a,
	.primary-nav .specialty-flyout > .specialty-tree-item:hover > a,
	.primary-nav .specialty-flyout > .specialty-tree-item:focus-within > a,
	.primary-nav .specialty-flyout .specialty-flyout-pane > .specialty-tree-item:hover > a,
	.primary-nav .specialty-flyout .specialty-flyout-pane > .specialty-tree-item:focus-within > a {
		color: var(--primary) !important;
		background: rgba(11, 111, 115, 0.04) !important;
	}

	/* Contextual child flyout: top-align to hovered parent row, height follows content. */
	.nav-desktop-menu .specialty-flyout > .menu-item-has-children > .specialty-flyout-pane,
	.primary-nav .specialty-flyout > .menu-item-has-children > .specialty-flyout-pane {
		position: absolute !important;
		top: 0 !important;
		right: auto;
		bottom: auto !important;
		left: 100% !important;
		z-index: 2;
		display: block !important;
		align-self: auto;
		width: min(280px, calc(100vw - 48px));
		min-width: 240px;
		height: auto !important;
		min-height: 0 !important;
		max-height: none;
		margin: 0 !important;
		margin-left: 0 !important;
		padding: 8px 0 !important;
		overflow: visible;
		opacity: 0 !important;
		visibility: hidden !important;
		pointer-events: none;
		transform: none !important;
		border: 1px solid rgba(18, 60, 64, 0.1) !important;
		border-radius: 10px !important;
		background: #fff !important;
		box-shadow: 0 12px 28px rgba(13, 71, 75, 0.12) !important;
	}

	.nav-desktop-menu .specialty-flyout > .menu-item-has-children > .specialty-flyout-pane::before,
	.primary-nav .specialty-flyout > .menu-item-has-children > .specialty-flyout-pane::before {
		content: "";
		position: absolute;
		top: 0;
		bottom: 0;
		left: -8px;
		width: 8px;
	}

	.nav-desktop-menu .specialty-flyout > .menu-item-has-children:hover > .specialty-flyout-pane,
	.nav-desktop-menu .specialty-flyout > .menu-item-has-children:focus-within > .specialty-flyout-pane,
	.nav-desktop-menu .specialty-flyout > .menu-item-has-children.submenu-open > .specialty-flyout-pane,
	.primary-nav .specialty-flyout > .menu-item-has-children:hover > .specialty-flyout-pane,
	.primary-nav .specialty-flyout > .menu-item-has-children:focus-within > .specialty-flyout-pane,
	.primary-nav .specialty-flyout > .menu-item-has-children.submenu-open > .specialty-flyout-pane {
		opacity: 1 !important;
		visibility: visible !important;
		pointer-events: auto;
	}

	/* Nested / grandchild panes: still recursive, anchored to their parent item. */
	.nav-desktop-menu .specialty-flyout .specialty-flyout-pane .menu-item-has-children,
	.primary-nav .specialty-flyout .specialty-flyout-pane .menu-item-has-children {
		position: relative;
	}

	.nav-desktop-menu .specialty-flyout .specialty-flyout-pane .specialty-flyout-pane,
	.primary-nav .specialty-flyout .specialty-flyout-pane .specialty-flyout-pane {
		position: absolute !important;
		top: 0 !important;
		bottom: auto !important;
		left: 100% !important;
		z-index: 3;
		display: block !important;
		width: min(280px, calc(100vw - 48px));
		min-width: 240px;
		height: auto !important;
		min-height: 0 !important;
		max-height: min(72vh, 680px);
		margin: 0;
		padding: 8px 0 !important;
		overflow-x: hidden;
		overflow-y: auto;
		opacity: 0 !important;
		visibility: hidden !important;
		pointer-events: none;
		transform: none !important;
		border: 1px solid rgba(18, 60, 64, 0.1) !important;
		border-radius: 10px;
		background: #fff !important;
		box-shadow: 0 12px 28px rgba(18, 60, 64, 0.1) !important;
	}

	.nav-desktop-menu .specialty-flyout .specialty-flyout-pane .menu-item-has-children:hover > .specialty-flyout-pane,
	.nav-desktop-menu .specialty-flyout .specialty-flyout-pane .menu-item-has-children:focus-within > .specialty-flyout-pane,
	.nav-desktop-menu .specialty-flyout .specialty-flyout-pane .menu-item-has-children.submenu-open > .specialty-flyout-pane,
	.primary-nav .specialty-flyout .specialty-flyout-pane .menu-item-has-children:hover > .specialty-flyout-pane,
	.primary-nav .specialty-flyout .specialty-flyout-pane .menu-item-has-children:focus-within > .specialty-flyout-pane,
	.primary-nav .specialty-flyout .specialty-flyout-pane .menu-item-has-children.submenu-open > .specialty-flyout-pane {
		opacity: 1 !important;
		visibility: visible !important;
		pointer-events: auto;
	}

	.nav-desktop-menu .specialty-flyout .submenu-toggle,
	.primary-nav .specialty-flyout .submenu-toggle {
		display: none;
	}
}

@media (max-width: 980px) {
	.primary-nav .specialty-flyout .specialty-flyout-pane {
		position: static !important;
		left: auto !important;
		top: auto !important;
		right: auto !important;
		bottom: auto !important;
		width: auto;
		min-width: 0 !important;
		min-height: 0;
		height: auto !important;
		margin: 0;
		padding-left: 12px !important;
		overflow: visible;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		border: 0 !important;
		box-shadow: none !important;
		background: transparent !important;
		border-radius: 0 !important;
	}

	.primary-nav .specialty-flyout .submenu-open > .specialty-flyout-pane {
		display: block !important;
	}
}

html.ykhg-nav-hover-reset .primary-nav .menu > li:hover > .sub-menu,
html.ykhg-nav-hover-reset .primary-nav .menu > li:focus-within > .sub-menu,
html.ykhg-nav-hover-reset .primary-nav .menu > li.submenu-open > .sub-menu,
html.ykhg-nav-hover-reset .primary-nav .menu > li.menu-item-specialty-featured:hover > .specialty-flyout,
html.ykhg-nav-hover-reset .primary-nav .menu > li.menu-item-specialty-featured:focus-within > .specialty-flyout,
html.ykhg-nav-hover-reset .primary-nav .menu > li.menu-item-specialty-featured.submenu-open > .specialty-flyout,
html.ykhg-nav-hover-reset .nav-desktop-menu .menu > li:hover > .sub-menu,
html.ykhg-nav-hover-reset .nav-desktop-menu .menu > li:focus-within > .sub-menu,
html.ykhg-nav-hover-reset .nav-desktop-menu .menu > li.menu-item-specialty-featured:hover > .specialty-flyout,
html.ykhg-nav-hover-reset .nav-desktop-menu .menu > li.menu-item-specialty-featured:focus-within > .specialty-flyout,
html.ykhg-nav-hover-reset .nav-desktop-menu .menu > li.menu-item-specialty-featured.submenu-open > .specialty-flyout {
	opacity: 0 !important;
	visibility: hidden !important;
	pointer-events: none !important;
}
