@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap");

/* Shared chrome aligned with classroom.enaviya.ai */

html {
	--en-header-h: 48px;
	--en-footer-h: 32px;
	--en-navy: #18294a;
	--en-line: #e6ebf3;
	font-size: 16px;
}

body.host_version,
body {
	font-family: "Plus Jakarta Sans", "IBM Plex Sans", "Segoe UI", Arial, sans-serif;
	padding-bottom: var(--en-footer-h, 32px) !important;
	box-sizing: border-box !important;
}

.header,
.header.en-site-header,
header.header.en-site-header {
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	z-index: 1000 !important;
	width: 100% !important;
	height: var(--en-header-h) !important;
	min-height: var(--en-header-h) !important;
	max-height: var(--en-header-h) !important;
	background: rgba(255, 255, 255, 0.94) !important;
	border-bottom: 1px solid var(--en-line) !important;
	box-shadow: none !important;
	backdrop-filter: blur(14px) saturate(1.1);
	-webkit-backdrop-filter: blur(14px) saturate(1.1);
	overflow: visible !important;
}

.header_content,
.en-header-bar,
.header .en-header-bar {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 20px !important;
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	height: var(--en-header-h) !important;
	min-height: var(--en-header-h) !important;
	max-height: var(--en-header-h) !important;
	box-sizing: border-box !important;
	position: relative !important;
	overflow: visible !important;
}

.logo_container {
	display: flex !important;
	align-items: center !important;
	flex: 0 0 auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

.en-logo-link {
	display: inline-flex !important;
	align-items: center !important;
	text-decoration: none !important;
	line-height: 1 !important;
}

/* Header wordmark — enaviya mark + meet on same level */
.en-site-header .en-wordmark,
header.en-site-header .en-wordmark,
.em-home .en-site-header .en-wordmark {
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.3em !important;
	font-size: 1.02rem !important;
	line-height: 1 !important;
	white-space: nowrap !important;
}

.en-site-header .en-brand-mark,
.en-site-header img.en-brand-mark,
header.en-site-header .en-brand-mark,
.em-home .en-site-header img.en-brand-mark {
	display: block !important;
	height: 26px !important;
	width: auto !important;
	max-height: 26px !important;
	object-fit: contain !important;
}

.en-site-header .en-wordmark-product,
header.en-site-header .en-wordmark-product,
.em-home .en-site-header .en-wordmark-product {
	display: inline-block !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 1.05em !important;
	font-weight: 700 !important;
	letter-spacing: -0.02em !important;
	line-height: 1 !important;
	text-transform: none !important;
	color: #0f1b33 !important;
	padding: 4px 0 0 0 !important;
	margin: 0 !important;
	flex: 0 0 auto !important;
}

.en-wordmark {
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.3em !important;
	font-size: 1.02rem !important;
	line-height: 1 !important;
	white-space: nowrap !important;
}

.en-brand-mark,
img.en-brand-mark {
	display: block !important;
	height: 26px !important;
	width: auto !important;
	max-height: 26px !important;
	object-fit: contain !important;
}

.en-wordmark-product {
	display: inline-block !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 1.05em !important;
	font-weight: 700 !important;
	letter-spacing: -0.02em !important;
	line-height: 1 !important;
	color: #0f1b33 !important;
	padding: 4px 0 0 0 !important;
	margin: 0 !important;
	flex: 0 0 auto !important;
}

.main_nav_container,
.en-header-auth-wrap {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	margin: 0 0 0 auto !important;
	padding: 0 !important;
	flex: 1 1 auto !important;
}

/* Header nav text — Arial, evenly spaced */
.en-site-header,
.en-site-header .en-header-bar,
header.en-site-header {
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 16px !important;
}

.en-site-header .main_nav,
.en-site-header .en-header-actions,
.en-site-header .main_nav_container {
	display: flex !important;
	align-items: center !important;
	gap: 0 !important;
}

.main_nav_list,
.em-nav-list {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: flex-end !important;
	gap: 12px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.main_nav_item {
	display: inline-flex !important;
	align-items: center !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	position: relative !important;
}

.en-header-text-link,
.en-header-text-link:link,
.en-header-text-link:visited,
.main_nav_item a.en-header-text-link,
.en-site-header .main_nav_item a.en-header-text-link,
.en-site-header .main_nav_item a.en-header-text-link:link,
.en-site-header .main_nav_item .em-solutions-toggle {
	display: inline-flex !important;
	align-items: center !important;
	font-family: Arial, Helvetica, sans-serif !important;
	color: #202124 !important;
	font-weight: 400 !important;
	font-size: 14px !important;
	text-decoration: none !important;
	padding: 0 !important;
	line-height: 1.2 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	letter-spacing: 0 !important;
	white-space: nowrap !important;
	vertical-align: middle !important;
	gap: 4px !important;
}

.en-site-header .en-header-text-link .caret,
.en-site-header .em-solutions-toggle .caret,
.en-site-header .main_nav_item .caret {
	display: inline-block !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	vertical-align: middle !important;
	align-self: center !important;
	flex: 0 0 auto !important;
	border-top: 4px solid #5f6368 !important;
	border-right: 4px solid transparent !important;
	border-left: 4px solid transparent !important;
	border-bottom: 0 !important;
	transition: transform 0.15s ease !important;
	transform-origin: 50% 50% !important;
	position: relative !important;
	top: 0 !important;
}

.em-nav-dropdown.is-open > .em-solutions-toggle .caret,
.em-nav-dropdown .em-solutions-toggle[aria-expanded="true"] .caret {
	transform: rotate(180deg) !important;
}

.en-header-text-link:hover,
.en-header-text-link:focus,
.main_nav_item a.en-header-text-link:hover,
.en-site-header .main_nav_item a.en-header-text-link:hover,
.en-site-header .main_nav_item .em-solutions-toggle:hover {
	color: #1a73e8 !important;
	background: transparent !important;
}

.en-site-header .main_nav_item a.en-header-auth,
.en-site-header .main_nav_item a.en-header-auth:link,
.en-site-header .main_nav_item a.en-header-auth:visited,
header.en-site-header .main_nav_item a.en-header-auth,
.em-home .en-site-header .main_nav_item a.en-header-auth,
a.en-header-auth,
.en-header-auth,
.main_nav_item a.en-header-auth {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 28px !important;
	padding: 0 12px !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	color: #1a73e8 !important;
	background: #e8f0fe !important;
	border: 1px solid #c2d9ff !important;
	border-radius: 999px !important;
	text-decoration: none !important;
	box-shadow: none !important;
	line-height: 1.2 !important;
	white-space: nowrap !important;
}

.en-site-header .main_nav_item a.en-header-auth:hover,
header.en-site-header .main_nav_item a.en-header-auth:hover,
.em-home .en-site-header .main_nav_item a.en-header-auth:hover,
a.en-header-auth:hover,
.en-header-auth:hover,
.main_nav_item a.en-header-auth:hover {
	background: #1a73e8 !important;
	border-color: #1a73e8 !important;
	color: #fff !important;
}

/* Solutions mega menu — opens below Solutions link */
.en-site-header,
.en-site-header .main_nav_container,
.en-site-header .main_nav,
.en-site-header .main_nav_list {
	overflow: visible !important;
}

.en-site-header .em-nav-dropdown {
	position: relative !important;
}

.en-site-header .em-nav-dropdown:not(.is-open) > .dropdown-menu.em-mega,
.en-site-header .em-nav-dropdown:not(.is-open) > #solutionsDropdown.dropdown-menu,
.en-site-header .em-nav-dropdown .dropdown-menu.em-mega,
.en-site-header #solutionsDropdown.dropdown-menu {
	display: none !important;
	position: absolute !important;
	left: 50% !important;
	right: auto !important;
	top: 100% !important;
	transform: translateX(-50%) !important;
	float: none !important;
	width: min(680px, calc(100vw - 40px)) !important;
	min-width: 320px !important;
	max-width: calc(100vw - 40px) !important;
	margin: 2px 0 0 0 !important;
	padding: 0 !important;
	border: 1px solid #dce6f2 !important;
	border-radius: 14px !important;
	box-shadow: 0 16px 40px rgba(15, 40, 80, 0.12), 0 2px 8px rgba(15, 40, 80, 0.06) !important;
	background: #fff !important;
	overflow: hidden !important;
	list-style: none !important;
	font-family: Arial, Helvetica, sans-serif !important;
	z-index: 1001 !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

.en-site-header .em-nav-dropdown.is-open > .dropdown-menu.em-mega,
.en-site-header .em-nav-dropdown.is-open > #solutionsDropdown.dropdown-menu {
	display: grid !important;
	grid-template-columns: 1.15fr 0.85fr !important;
	visibility: visible !important;
	pointer-events: auto !important;
}

.en-site-header .em-mega > li,
.en-site-header #solutionsDropdown > li,
.en-site-header .em-mega > .mega-menu-4-of-12,
.en-site-header .em-mega > .em-mega-col {
	float: none !important;
	display: block !important;
	width: auto !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 22px 24px !important;
	box-sizing: border-box !important;
	list-style: none !important;
}

.en-site-header .em-mega > .em-mega-col--contact,
.en-site-header .em-mega > .first-col {
	background: linear-gradient(180deg, #f8fbff 0%, #f3f8ff 100%) !important;
	border-left: 1px solid #e6eef8 !important;
}

.en-site-header .em-mega .mega-block-title {
	color: #5f7388 !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	margin: 0 0 14px !important;
	padding: 0 !important;
}

.en-site-header .em-mega ul[role="list"] {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.en-site-header .em-mega ul[role="list"] > li {
	margin: 0 0 4px !important;
	padding: 0 !important;
}

.en-site-header .em-mega ul[role="list"] > li:last-child {
	margin-bottom: 0 !important;
}

.en-site-header .em-mega ul[role="list"] > li > a {
	display: block !important;
	padding: 10px 12px !important;
	border-radius: 10px !important;
	text-decoration: none !important;
	transition: background 0.15s ease, color 0.15s ease !important;
}

.en-site-header .em-mega ul[role="list"] > li > a:hover,
.en-site-header .em-mega ul[role="list"] > li > a:focus {
	background: #eef5ff !important;
	text-decoration: none !important;
}

.en-site-header .em-mega h3,
.en-site-header .em-mega h2 {
	color: #15233f !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	margin: 0 0 3px !important;
	padding: 0 !important;
}

.en-site-header .em-mega p {
	color: #5f7388 !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 12px !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.en-site-header .em-mega-col--contact h2 {
	font-size: 13px !important;
	font-weight: 600 !important;
	margin: 0 !important;
}

.en-site-header .em-mega a:hover h3,
.en-site-header .em-mega a:hover h2,
.en-site-header .em-mega a:focus h3,
.en-site-header .em-mega a:focus h2 {
	color: #1a73e8 !important;
}

@media (max-width: 720px) {
	.en-site-header .em-nav-dropdown .dropdown-menu.em-mega,
	.en-site-header #solutionsDropdown.dropdown-menu {
		left: 50% !important;
		right: auto !important;
		transform: translateX(-50%) !important;
		width: calc(100vw - 24px) !important;
		max-width: calc(100vw - 24px) !important;
		margin-top: 2px !important;
	}

	.en-site-header .em-nav-dropdown.is-open > .dropdown-menu.em-mega,
	.en-site-header .em-nav-dropdown.is-open > #solutionsDropdown.dropdown-menu {
		grid-template-columns: 1fr !important;
	}

	.en-site-header .em-mega > .em-mega-col--contact,
	.en-site-header .em-mega > .first-col {
		border-left: 0 !important;
		border-top: 1px solid #e6eef8 !important;
	}
}

.em-nav-toggle {
	display: none !important;
	border: 1px solid #d7e6f1 !important;
	background: #fff !important;
	margin: 0 !important;
	padding: 6px 8px !important;
}

.em-nav-toggle .icon-bar {
	background: #2d4a61 !important;
}

.em-nav-collapse {
	display: none !important;
}

.em-nav-mobile-list {
	list-style: none !important;
	margin: 0 !important;
	padding: 8px 16px 12px !important;
}

.em-nav-mobile-list a {
	color: #202124 !important;
	font-weight: 500 !important;
	font-size: 0.82rem !important;
	text-decoration: none !important;
	display: block !important;
	padding: 8px 0 !important;
}

/* Fixed copyright bar — classroom.enaviya.ai spec */
footer.en-site-footer {
	position: fixed !important;
	left: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	z-index: 900 !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	background: #f5f5f5 !important;
	border-top: 1px solid #e8e8e8 !important;
	box-sizing: border-box !important;
}

.en-site-footer-inner {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 6px 24px !important;
	min-height: 0 !important;
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	box-sizing: border-box !important;
}

.en-site-footer-copy,
body.host_version footer.en-site-footer .en-site-footer-copy {
	color: #666 !important;
	font-family: "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif !important;
	font-size: 0.75rem !important;
	font-weight: 400 !important;
	font-style: normal !important;
	line-height: 1.2 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.en-site-footer-nav {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	gap: 16px !important;
}

.en-site-footer-nav a,
.en-site-footer-nav a:link,
.en-site-footer-nav a:visited,
body.host_version footer.en-site-footer .en-site-footer-nav a {
	color: #666 !important;
	font-family: "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif !important;
	text-decoration: none !important;
	font-size: 0.75rem !important;
	font-weight: 400 !important;
	font-style: normal !important;
	line-height: 1.2 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.en-site-footer-nav a:hover,
body.host_version footer.en-site-footer .en-site-footer-nav a:hover {
	color: #333 !important;
}

/* Account area header (dashboard and logged-in pages) */
.en-account-header .en-account-nav {
	display: flex !important;
	align-items: center !important;
	gap: 16px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.en-account-header .en-account-welcome {
	list-style: none !important;
}

.en-header-welcome,
body.host_version .en-site-header .en-header-welcome {
	display: inline-flex !important;
	align-items: center !important;
	gap: 4px !important;
	color: #5f6368 !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	white-space: nowrap !important;
}

.en-header-welcome strong {
	color: #202124 !important;
	font-weight: 600 !important;
}

.en-header-signout,
.en-header-signout:link,
.en-header-signout:visited,
body.host_version .en-site-header a.en-header-signout {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 32px !important;
	padding: 0 14px !important;
	border-radius: 999px !important;
	border: 1px solid #dadce0 !important;
	background: #fff !important;
	color: #202124 !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	line-height: 1 !important;
	box-sizing: border-box !important;
}

.en-header-signout:hover,
body.host_version .en-site-header a.en-header-signout:hover {
	background: #f8f9fa !important;
	border-color: #bdc1c6 !important;
	color: #202124 !important;
	text-decoration: none !important;
}

@media (max-width: 991px) {
	.em-nav-toggle {
		display: block !important;
	}

	.main_nav_container {
		display: none !important;
	}

	.header.en-site-header {
		height: auto !important;
		min-height: var(--en-header-h) !important;
		max-height: none !important;
	}

	.en-header-bar {
		flex-wrap: wrap !important;
	}

	.em-nav-collapse.in,
	.em-nav-collapse.collapsing {
		display: block !important;
		width: 100% !important;
		background: #fff !important;
		border-top: 1px solid var(--en-line) !important;
	}

	.em-nav-mobile {
		display: none !important;
	}

	.en-site-footer-inner {
		padding: 6px 16px !important;
		gap: 8px !important;
	}
}

@media (min-width: 992px) {
	.em-nav-mobile-list {
		display: none !important;
	}
}

@media (max-width: 640px) {
	.en-site-header .en-wordmark,
	header.en-site-header .en-wordmark,
	.en-wordmark {
		font-size: 0.95rem !important;
	}

	.en-site-header .en-brand-mark,
	.en-site-header img.en-brand-mark {
		height: 24px !important;
		max-height: 24px !important;
	}

	.en-site-header .en-wordmark-product,
	header.en-site-header .en-wordmark-product,
	.en-wordmark-product {
		font-size: 1.05em !important;
		padding-top: 4px !important;
	}
}
