/**
 * H2 Anchor Menu Styles
 * Version: 1.0.6
 */

/* Hide widget title - remove "Page Navigation" header */
.widget_h2_anchor_menu_widget .widget-title,
.widget_h2_anchor_menu_widget h2,
.widget_h2_anchor_menu_widget h3,
.widget_h2_anchor_menu_widget .widgettitle {
	display: none !important;
	visibility: hidden !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

/* Fix ALL parent containers to allow sticky positioning */
body,
html,
#page,
.site,
.container,
.wrapper,
.content-area,
.site-content,
main,
article,
#main,
#content {
	overflow-x: visible !important;
}

/* Make entire sidebar sticky - applies to all sidebars */
#sidebar,
aside#sidebar,
.widget-area,
.sidebar,
#secondary,
aside.widget-area,
#sidebar-wrapper,
.sidebar-wrapper,
aside.sidebar,
div#sidebar,
aside.widget,
.widget-area aside,
aside[role="complementary"],
.widget_h2_anchor_menu_widget {
	position: sticky !important;
	top: 20px !important;
	z-index: 9999 !important;
	align-self: flex-start !important;
	overflow: visible !important;
	height: auto !important;
	max-height: calc(100vh - 40px) !important;
	overflow-y: auto !important;
}

/* Fix parent containers that might block sticky */
#sidebar *,
aside#sidebar *,
.widget-area *,
.sidebar *,
#secondary * {
	overflow: visible !important;
}

/* Ensure parent containers don't have overflow hidden */
#sidebar,
aside#sidebar,
.widget-area,
.sidebar,
#secondary {
	overflow: visible !important;
}

/* Fix any flex containers */
.row,
.flex,
.flex-container,
[class*="flex"] {
	overflow: visible !important;
}

.h2-anchor-menu-nav {
	margin: 0;
	padding: 0;
}

.h2-anchor-menu-list {
	list-style: none !important;
	margin: 0;
	padding: 0;
}

/* Remove any list-style bullets or arrows */
.h2-anchor-menu-list li {
	list-style: none !important;
	list-style-type: none !important;
}

.h2-anchor-menu-item {
	margin: 0;
	margin-bottom: 0 !important;
	padding: 0;
	border-bottom: 1px solid #e0e0e0;
}

.h2-anchor-menu-item:last-child {
	border-bottom: none;
}

.h2-anchor-menu-link {
	display: block;
	padding: 10px 12px;
	color: #333;
	text-decoration: none;
	transition: background-color 0.2s ease, color 0.2s ease, border-left 0.2s ease;
	font-size: 14px;
	line-height: 1.4;
	border-left: 3px solid transparent;
}

/* Remove any ">" symbols or arrows from links and items */
.h2-anchor-menu-link::before,
.h2-anchor-menu-link::after,
.h2-anchor-menu-item::before,
.h2-anchor-menu-item::after,
.h2-anchor-menu-list li::before,
.h2-anchor-menu-list li::after,
.h2-anchor-menu-list::before,
.h2-anchor-menu-list::after {
	content: "" !important;
	display: none !important;
	visibility: hidden !important;
}

/* Remove any arrows added by theme */
.widget_h2_anchor_menu_widget a::before,
.widget_h2_anchor_menu_widget a::after,
.widget_h2_anchor_menu_widget li::before,
.widget_h2_anchor_menu_widget li::after {
	content: "" !important;
	display: none !important;
}

.h2-anchor-menu-link:hover {
	background-color: #f5f5f5;
	color: #000;
	padding-left: 12px;
	border-left: 3px solid #0073aa;
}

.h2-anchor-menu-link.active {
	background-color: #e8e8e8;
	color: #000;
	font-weight: 600;
	border-left: 3px solid #0073aa;
	padding-left: 12px;
}

.h2-anchor-menu-link.active:hover {
	padding-left: 12px;
	border-left: 3px solid #0073aa;
	background-color: #f5f5f5;
}

/* Responsive adjustments */
@media screen and (max-width: 768px) {
	#sidebar,
	aside#sidebar,
	.widget-area,
	.sidebar,
	#secondary,
	aside.widget-area,
	#sidebar-wrapper,
	.sidebar-wrapper,
	aside.sidebar,
	div#sidebar,
	aside.widget,
	.widget-area aside {
		position: sticky !important;
		top: 10px !important;
		max-height: calc(100vh - 20px) !important;
	}
	
	.h2-anchor-menu-link {
		font-size: 13px;
		padding: 8px 10px;
	}
	
	.h2-anchor-menu-link:hover,
	.h2-anchor-menu-link.active {
		padding-left: 10px;
	}
	
	.h2-anchor-menu-link.active:hover {
		padding-left: 10px;
	}
}

