/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/

:root {

	/* font settings  */
	--cnvs-body-font: "Montserrat", sans-serif;
	--cnvs-primary-font: "Montserrat", sans-serif;
	--cnvs-secondary-font: "Montserrat", serif;

	--themecolor:  #004165;
	--cnvs-themecolor: #004165;
	--cnvs-themecolor-rgb: 119, 36, 50;

	--cnvs-footer-bg: #004165;
	--cnvs-footer-bg-rgb: 119, 36, 50;

	/* header settings  */
	--cnvs-header-height: 80px;
	--cnvs-header-height-sm: 60px;
	--cnvs-header-height-md: 80px;
	--cnvs-header-height-lg: 120px;
	--cnvs-header-height-shrink: 60px;
	--cnvs-side-header-width: 260px;

	--color-tm-royal-blue: #004165;
	--color-tm-blissful-blue: #006094;

	--color-tm-maroon: #772432;
	--color-tm-deep-maroon:  #3B0104;
	--color-tm-rich-maroon:  #781327 ;

	--color-tm-cool-gray: #A9B2B1;
	--color-tm-fair-gray: #F5F5F5 ;

	--color-tm-yellow:  #F2DF74;


}

/* Fix dropdown menu visibility - hide by default */
.is-expanded-menu .primary-menu .sub-menu-container {
	position: absolute !important;
	visibility: hidden !important;
	opacity: 0 !important;
	display: block !important;
	background-color: #fff !important;
	border: 1px solid rgba(0, 0, 0, 0.1) !important;
	z-index: 399 !important;
	top: 100% !important;
	left: 0 !important;
	min-width: 220px !important;
	padding: 10px 0 !important;
	margin-top: 0 !important;
	box-shadow: 0px 13px 42px 11px rgba(0, 0, 0, 0.05) !important;
	transition: opacity 0.3s ease, visibility 0.3s ease !important;
}

/* Show dropdown on hover */
.is-expanded-menu .primary-menu .menu-item.sub-menu:hover > .sub-menu-container {
	visibility: visible !important;
	opacity: 1 !important;
}

.is-expanded-menu .primary-menu .sub-menu-container .menu-item {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
	display: block !important;
}

.is-expanded-menu .primary-menu .sub-menu-container .menu-link {
	color: #444 !important;
	display: block !important;
	padding: 10px 20px !important;
	font-size: 14px !important;
	text-decoration: none !important;
	transition: background-color 0.2s ease !important;
}

.is-expanded-menu .primary-menu .sub-menu-container .menu-link:hover {
	background-color: #f5f5f5 !important;
	color: #004165 !important;
}

.is-expanded-menu .primary-menu .sub-menu-container .menu-link div {
	display: block !important;
}

/* Header styling with solid theme background */
#header {
	background-color: #004165 !important;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1) !important;
}

#header .menu-link {
	color: #ffffff !important;
}

#header .menu-link:hover {
	color: #F2DF74 !important;
}

/* Ensure sticky header maintains theme color */
#header.sticky-header {
	background-color: #004165 !important;
	box-shadow: 0 2px 15px rgba(0, 0, 0, 0.2) !important;
}