/* Mobile Menu Functionality Styles */
/* Mobile Navigation Functionality */
@media (max-width: 1079px) {
	/* Complete reset for mobile navigation to eliminate any gaps */
	.header-nav * {
		box-sizing: border-box !important;
	}

	.header-nav ul,
	.header-nav ul li,
	.header-nav ul li a {
		margin: 0 !important;
		padding: 0 !important;
		border: none !important;
		outline: none !important;
		vertical-align: baseline !important;
		background: transparent !important;
		font-size: inherit !important;
		font-family: inherit !important;
		font-weight: inherit !important;
		color: inherit !important;
		text-decoration: none !important;
	}

	.mobile-nav-toggle {
		display: flex !important;
		visibility: visible !important;
		opacity: 1 !important;
		width: 30px !important;
		height: 30px !important;
		background: transparent !important;
		flex-direction: column !important;
		cursor: pointer !important;
		padding: 0.5rem !important;
		z-index: 1002 !important;
		justify-content: space-around !important;
		align-items: center !important;
		border: none !important;
		position: relative !important;
	}

	.mobile-nav-toggle span {
		width: 25px !important;
		height: 3px !important;
		background: #333333 !important;
		margin: 3px 0 !important;
		transition: 0.3s !important;
		display: block !important;
		border-radius: 2px !important;
		opacity: 1 !important;
		min-height: 3px !important;
		min-width: 25px !important;
	}

	.mobile-nav-toggle.active span:nth-child(1) {
		transform: rotate(-45deg) translate(-5px, 6px) !important;
	}

	.mobile-nav-toggle.active span:nth-child(2) {
		opacity: 0 !important;
	}

	.mobile-nav-toggle.active span:nth-child(3) {
		transform: rotate(45deg) translate(-5px, -6px) !important;
	}

	/* Ensure mobile menu is properly displayed when active */
	.header-nav ul {
		display: none !important;
		position: absolute !important;
		top: 100% !important;
		left: 0 !important;
		width: 100% !important;
		background: var(--white) !important;
		box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1) !important;
		border-radius: 8px !important;
		overflow: hidden !important;
		flex-direction: column !important;
		z-index: 1000 !important;
		border: 1px solid var(--light-gray) !important;
		margin: 0 !important;
		padding: 0 !important;
		line-height: 1 !important;
		font-size: 0 !important;
	}

	.header-nav ul.active {
		display: flex !important;
	}

	.header-nav ul li {
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		list-style: none !important;
		line-height: 1 !important;
		font-size: 1rem !important;
		vertical-align: top !important;
		border: none !important;
		outline: none !important;
	}

	.header-nav ul li a {
		display: flex !important;
		padding: 1.2rem 1.5rem !important;
		border-bottom: 1px solid var(--light-gray) !important;
		color: var(--primary-darkgray) !important;
		background: var(--white) !important;
		transition: all 0.3s ease !important;
		min-height: 44px !important;
		align-items: center !important;
		text-decoration: none !important;
		width: 100% !important;
		box-sizing: border-box !important;
		margin: 0 !important;
		line-height: 1.4 !important;
		font-size: 1rem !important;
		vertical-align: top !important;
		border-top: none !important;
	}

	.header-nav ul li a:hover {
		background-color: var(--light-gray) !important;
		color: var(--primary-blue) !important;
	}

	.header-nav ul li:last-child a {
		border-bottom: none !important;
	}

	/* Mobile dropdown styles */
	.header-nav .dynamic {
		position: static !important;
		display: none !important;
		background: var(--light-gray) !important;
		box-shadow: none !important;
		border: none !important;
		border-radius: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		width: 100% !important;
	}

	.dynamic-children.active .dynamic {
		display: block !important;
	}

	.header-nav .dynamic li a {
		padding-left: 2.5rem !important;
		background: var(--light-gray) !important;
		border-bottom: 1px solid rgba(0, 0, 0, 0.1) !important;
		font-size: 0.95rem !important;
	}

	.header-nav .dynamic li a:hover {
		background: rgba(1, 158, 189, 0.1) !important;
		color: var(--primary-blue) !important;
	}
}

/* Hide mobile toggle on desktop */
@media (min-width: 1080px) {
	.mobile-nav-toggle {
		display: none !important;
	}
}

/* Desktop alignment fix: align hero text with logo (container left edge) */


/* Fix CTA section spacing */
.cta-button {
	display: inline-block !important;
	margin-bottom: 1.5rem !important;
}

.cta-subtitle {
	margin-top: 0.5rem !important;
}


