:root {
	--lh-indigo: #4B3BD0;
	--lh-indigo-bright: #4B3BD0;
	--lh-indigo-pale: #eeecff;
	--lh-orange: #E78524;
	--lh-orange-deep: #CC5500;
	--lh-navy: #202044;
	--lh-navy-soft: #292857;
	--lh-ink: #29283d;
	--lh-white: #fbfaf7;
	--lh-cream: #f7f5ef;
	--lh-line: #e8e5dc;
	--lh-login-indigo: #4B3BD0;
}

/* One shared image asset; wordmark colors intentionally differ by background. */
.lh-primary-nav .lh-community-highlight > a,
.lh-primary-nav a.lh-community-highlight,
.lh-login-site-nav a.lh-community-highlight,
.lh-primary-nav .lh-community-highlight > a:hover,
.lh-primary-nav a.lh-community-highlight:hover,
.lh-login-site-nav a.lh-community-highlight:hover,
.lh-native-login-intro .lh-login-eyebrow {
color: var(--lh-indigo);
}
.lh-brand,
.lh-brand:hover,
.lh-brand:focus-visible {
	gap: 9px;
	color: #29283d;
	text-decoration: none;
}
.lh-brand-mark {
	display: block;
	width: 34px;
	height: 34px;
	flex: 0 0 auto;
	object-fit: contain;
}
.lh-wordmark {
	display: inline-flex;
	align-items: baseline;
	font-size: 1.18rem;
	font-weight: 800;
	letter-spacing: -.045em;
	line-height: 1;
}
.lh-wordmark-learn { color: #E78524; }
.lh-wordmark-hive { color: #202044; }
.lh-footer .lh-brand,
.lh-footer .lh-brand:hover,
.lh-footer .lh-brand:focus-visible,
.lh-login-site-footer .lh-brand,
.lh-login-site-footer .lh-brand:hover,
.lh-login-site-footer .lh-brand:focus-visible {
	color: #fff;
}
.lh-footer .lh-brand-mark,
.lh-login-site-footer .lh-brand-mark {
	width: 32px;
	height: 32px;
padding: 0;
	border: 1px solid rgba(255,255,255,.15);
	border-radius: 9px;
}
.lh-footer .lh-wordmark-learn,
.lh-login-site-footer .lh-wordmark-learn { color: #E78524; }
.lh-footer .lh-wordmark-hive,
.lh-login-site-footer .lh-wordmark-hive { color: #fff; }

/* Branded shell palette applies to public, account, community and auth surfaces. */
a { color: var(--lh-indigo); }
a:hover { color: var(--lh-indigo); text-decoration-color: var(--lh-orange); }
.lh-brand:hover .lh-wordmark-learn,
.lh-brand:focus-visible .lh-wordmark-learn { color: #E78524; }
.lh-brand:hover .lh-wordmark-hive,
.lh-brand:focus-visible .lh-wordmark-hive { color: #202044; }
.lh-footer a,
.lh-login-site-footer a { color: #f4f1ff; }
.lh-footer a:hover,
.lh-login-site-footer a:hover { color: #E78524; }
.lh-footer { background: #202044; color: #f4f1ff; }
.lh-home-footer { background: #202044; color: #f4f1ff; }
.lh-home-footer .lh-footer-group h2,
.lh-footer--clean .lh-footer-group h2 { color: #E78524; }
.lh-home-footer .lh-footer-nav a,
.lh-footer--clean .lh-footer-nav a,
.lh-footer--clean .lh-footer-identity,
.lh-footer--clean .lh-footer-identity p,
.lh-home-footer .lh-footer-tagline { color: #f4f1ff; }
.lh-home-footer .lh-footer-nav a:hover,
.lh-footer--clean .lh-footer-nav a:hover,
.lh-footer--clean .lh-footer-identity a:hover { color: #E78524; }
.lh-home-footer .lh-footer-bottom,
.lh-footer--clean .lh-footer-bottom {
	border-top: 1px solid rgba(255,255,255,.15);
	background: transparent;
	color: #f4f1ff;
}
.lh-footer-identity a { color: #f4f1ff; }
.lh-login-site-footer {
	border-color: rgba(255,255,255,.15);
	background: #202044;
	color: #f4f1ff;
}
.lh-login-site-footer .lh-footer-identity,
.lh-login-site-footer .lh-footer-identity p,
.lh-login-site-footer a { color: #f4f1ff; }
body.login .lh-login-site-footer a { color: #f4f1ff; }
body.login .lh-login-site-footer a:hover,
body.login .lh-login-site-footer a:focus-visible { color: #E78524; }
.lh-login-site-header .lh-brand-mark { width: 34px; height: 34px; }

/* Purple/white primary actions; validation and semantic message colors are untouched. */
.lh-button,
.lh-site-header .lh-button,
.lh-login-site-nav .lh-button,
.lh-native-login .button-primary,
.lh-native-login input[type="submit"],
.lh-auth-card input[type="submit"],
#buddypress input[type="submit"],
#buddypress button,
#buddypress .button,
.lh-content input[type="submit"],
.wp-block-button__link {
	border-color: #4B3BD0;
	background: #4B3BD0;
	color: #fff;
	box-shadow: none;
}
.lh-button:hover,
.lh-site-header .lh-button:hover,
.lh-login-site-nav .lh-button:hover,
.lh-native-login .button-primary:hover,
.lh-native-login input[type="submit"]:hover,
.lh-auth-card input[type="submit"]:hover,
#buddypress input[type="submit"]:hover,
#buddypress button:hover,
#buddypress .button:hover,
.lh-content input[type="submit"]:hover,
.wp-block-button__link:hover {
	border-color: #4B3BD0;
	background: #4B3BD0;
	color: #fff;
	filter: brightness(.94);
}
.lh-home-footer .lh-brand:hover .lh-wordmark-learn,
.lh-home-footer .lh-footer-nav a:hover,
.lh-home-footer .lh-footer-bottom a:hover { color: #E78524; }
.lh-eyebrow,
.lh-public-kicker { color: #4B3BD0; }
.lh-cta-band { background: #202044; }
.lh-cta-band h2,
.lh-cta-band h3,
.lh-cta-band p { color: #fff; }

/* Approved compact footer: four equal link tracks, with the utility stack on the right. */
.lh-home-footer {
	padding: 22px 0 14px;
	border-top: 1px solid rgba(255,255,255,.15);
	background: #202044;
	color: #f4f1ff;
}
.lh-home-footer > .lh-wrap {
	display: grid;
	gap: 14px;
}
.lh-home-footer .lh-footer-top {
	display: grid;
	grid-template-columns: minmax(130px, 1fr) minmax(0, 4fr) auto;
	align-items: start;
	gap: 26px;
}
.lh-home-footer .lh-footer-brand-col { min-width: 0; }
.lh-home-footer .lh-footer-brand-col > .lh-brand { color: #fff; }
.lh-home-footer .lh-footer-brand-col > .lh-footer-tagline {
	max-width: 25ch;
	margin: 7px 0 0;
	color: #f4f1ff;
	font-size: .86rem;
	line-height: 1.45;
}
.lh-home-footer .lh-footer-link-cluster {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0 40px;
	min-width: 0;
}
.lh-home-footer .lh-home-footer-learn { grid-column: span 2; }
.lh-home-footer .lh-footer-group { min-width: 0; }
.lh-home-footer .lh-footer-group h2 {
	margin: 0 0 8px;
	color: #E78524;
	font-size: 12px;
	font-weight: 750;
	letter-spacing: .09em;
	text-transform: uppercase;
}
.lh-home-footer .lh-footer-learn-columns {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 40px;
}
.lh-home-footer .lh-footer-nav ul {
	display: grid;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.lh-home-footer .lh-footer-nav a {
	display: inline-flex;
	min-height: 20px;
	align-items: center;
	padding: 0;
	color: #f4f1ff;
	font-size: 14px;
	line-height: 20px;
	white-space: nowrap;
}
.lh-home-footer .lh-footer-nav a:hover,
.lh-home-footer .lh-footer-bottom a:hover {
	color: #E78524;
	text-decoration: underline;
	text-underline-offset: 3px;
}
.lh-home-footer .lh-footer-utility {
	display: grid;
	justify-items: end;
	gap: 12px;
}
.lh-home-footer .lh-play-badge { white-space: nowrap; }
.lh-home-footer .lh-home-social {
	display: flex;
	align-items: center;
	gap: 8px;
}
.lh-home-footer .lh-home-social a {
	display: grid;
	width: 30px;
	height: 30px;
	place-items: center;
	color: #fff;
}
.lh-home-footer .lh-home-social svg {
	display: block;
	width: 17px;
	height: 17px;
	fill: currentColor;
}
.lh-home-footer .lh-home-social svg rect,
.lh-home-footer .lh-home-social svg circle:not(.lh-social-dot) {
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
}
.lh-home-footer .lh-home-social svg .lh-social-dot { fill: currentColor; stroke: none; }
.lh-home-footer .lh-home-social a:hover,
.lh-home-footer .lh-home-social a:focus-visible { color: #E78524; }
.lh-home-footer .lh-footer-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: nowrap;
	gap: 10px;
	margin: 0;
	padding: 10px 0 0;
	border-top: 1px solid rgba(255,255,255,.15);
	border-radius: 0;
	background: transparent;
	color: #f4f1ff;
	font-size: .72rem;
	line-height: 1.4;
}
.lh-home-footer .lh-home-copyright { margin: 0; white-space: nowrap; }
.lh-home-footer .lh-footer-bottom a { color: #f4f1ff; white-space: nowrap; }
.lh-home-footer .lh-home-legal-links {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	gap: 4px 13px;
	white-space: nowrap;
}
.lh-home-footer .lh-home-legal-links a {
	min-height: 28px;
	font-size: .72rem;
	white-space: nowrap;
}
.lh-home-footer a:focus-visible { outline-color: #fff; }
.lh-login-site-footer {
	display: block;
	padding: 22px 0 14px;
	border-top: 1px solid rgba(255,255,255,.15);
	background: #202044;
	color: #f4f1ff;
}
.lh-login-site-footer .lh-footer-bottom { border-top: 1px solid rgba(255,255,255,.15); }

@media (max-width: 1200px) {
	.lh-home-footer .lh-footer-top {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 18px 24px;
	}
	.lh-home-footer .lh-footer-brand-col { grid-column: 1; grid-row: 1; }
	.lh-home-footer .lh-footer-utility { grid-column: 2; grid-row: 1; }
	.lh-home-footer .lh-footer-link-cluster {
		grid-column: 1 / -1;
		grid-row: 2;
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.lh-home-footer { padding: 24px 0 max(20px, env(safe-area-inset-bottom)); }
	.lh-home-footer .lh-footer-top { grid-template-columns: minmax(0, 1fr); gap: 14px; }
	.lh-home-footer .lh-footer-brand-col,
	.lh-home-footer .lh-footer-utility,
	.lh-home-footer .lh-footer-link-cluster { grid-column: 1; }
	.lh-home-footer .lh-footer-utility { grid-row: 2; justify-items: start; }
	.lh-home-footer .lh-footer-link-cluster {
		grid-row: 3;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 18px;
	}
	.lh-home-footer .lh-home-footer-learn { grid-column: 1 / -1; }
	.lh-home-footer .lh-footer-learn-columns { column-gap: 20px; }
	.lh-home-footer .lh-footer-nav a { min-height: 44px; padding-block: 8px; white-space: normal; }
	.lh-home-footer .lh-footer-bottom { align-items: flex-start; flex-direction: column; flex-wrap: wrap; gap: 5px; }
	.lh-home-footer .lh-home-copyright { white-space: normal; }
	.lh-home-footer .lh-home-legal-links { flex-wrap: wrap; gap: 0 13px; white-space: normal; }
	.lh-home-footer .lh-home-legal-links a { min-height: 36px; font-size: .76rem; }
	.lh-home-footer .lh-home-social a { width: 44px; height: 44px; }
	.lh-login-site-footer { padding: 22px 18px; }
	.lh-login-site-footer > .lh-brand { margin-bottom: 14px; }
}

@media (min-width: 768px) and (max-width: 1200px) {
	.lh-home-footer .lh-footer-bottom { flex-wrap: wrap; }
	.lh-home-footer .lh-home-copyright { white-space: normal; }
	.lh-home-footer .lh-home-legal-links { flex-wrap: wrap; }
}

.lh-home-footer .lh-footer-group { display: block; min-width: 0; padding: 0; }
.lh-home-footer a { white-space: nowrap; font-weight: 400; }
body.login .lh-home-footer.lh-login-site-footer {
width: 100%;
max-width: none;
margin: 0;
border-radius: 0;
text-align: left;
}
body.login .lh-home-footer a { font-weight: 400; }
.lh-home-footer .lh-footer-nav { display: grid; grid-column: auto; gap: 10px; min-width: 0; }
.lh-home-footer .lh-footer-nav ul { grid-template-columns: minmax(0, 1fr); }

/* Higher-specificity shared refinements win over legacy home-scoped rules. */
.lh-home-footer.lh-home-footer { padding: 22px 0 14px; background: #202044; color: #f4f1ff; }
.lh-home-footer.lh-home-footer > .lh-wrap { display: grid; gap: 14px; }
.lh-home-footer.lh-home-footer .lh-footer-top {
	grid-template-columns: minmax(130px, 1fr) minmax(0, 4fr) auto;
	align-items: start;
	gap: 26px;
}
.lh-home-footer.lh-home-footer .lh-footer-link-cluster {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0 40px;
	min-width: 0;
}
.lh-home-footer.lh-home-footer .lh-home-footer-learn { grid-column: span 2; }
.lh-home-footer.lh-home-footer .lh-footer-group h2 { margin: 0 0 8px; color: #E78524; }
.lh-home-footer.lh-home-footer .lh-footer-learn-columns {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 40px;
}
.lh-home-footer.lh-home-footer .lh-footer-nav ul { display: grid; gap: 10px; }
.lh-home-footer.lh-home-footer .lh-footer-nav a {
	min-height: 20px;
	padding: 0;
	color: #f4f1ff;
	font-size: 14px;
	line-height: 20px;
	white-space: nowrap;
}
.lh-home-footer.lh-home-footer .lh-footer-utility { display: grid; justify-items: end; gap: 12px; }
.lh-home-footer.lh-home-footer .lh-home-social { display: flex; align-items: center; gap: 8px; }
.lh-home-footer.lh-home-footer .lh-footer-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: nowrap;
	gap: 10px;
	margin: 0;
	padding: 10px 0 0;
	border-top: 1px solid rgba(255,255,255,.15);
	background: transparent;
	color: #f4f1ff;
	font-size: .72rem;
	line-height: 1.4;
}
.lh-home-footer.lh-home-footer .lh-home-copyright { margin: 0; white-space: nowrap; }
.lh-home-footer.lh-home-footer .lh-home-legal-links {
	display: flex;
	flex-wrap: nowrap;
	gap: 4px 13px;
	white-space: nowrap;
}
.lh-home-footer.lh-home-footer .lh-home-legal-links a { min-height: 28px; font-size: .72rem; }
.lh-home-footer.lh-home-footer .lh-wordmark-learn { color: #E78524; }
.lh-home-footer.lh-home-footer .lh-wordmark-hive { color: #fff; }
.lh-home-footer.lh-home-footer .lh-brand-mark { width: 32px; height: 32px; }
.lh-home-footer.lh-home-footer .lh-footer-nav a:hover,
.lh-home-footer.lh-home-footer .lh-footer-bottom a:hover,
.lh-home-footer.lh-home-footer .lh-home-social a:hover { color: #E78524; }
.lh-home-footer.lh-home-footer .lh-footer-bottom a { color: #f4f1ff; }
body.home .lh-home-lab-cta,
body.front-page .lh-home-lab-cta {
	border-color: #4B3BD0;
	background: #4B3BD0;
	color: #fff;
	box-shadow: none;
}
body.home .lh-home-lab-cta:hover,
body.front-page .lh-home-lab-cta:hover { border-color: #4B3BD0; background: #4B3BD0; color: #fff; }

@media (max-width: 1200px) {
	.lh-home-footer.lh-home-footer .lh-footer-top {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 18px 24px;
	}
	.lh-home-footer.lh-home-footer .lh-footer-brand-col { grid-column: 1; grid-row: 1; }
	.lh-home-footer.lh-home-footer .lh-footer-utility { grid-column: 2; grid-row: 1; }
	.lh-home-footer.lh-home-footer .lh-footer-link-cluster {
		grid-column: 1 / -1;
		grid-row: 2;
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}
@media (max-width: 767px) {
	.lh-home-footer.lh-home-footer { padding: 24px 0 max(20px, env(safe-area-inset-bottom)); }
	.lh-home-footer.lh-home-footer .lh-footer-top { grid-template-columns: minmax(0, 1fr); gap: 14px; }
	.lh-home-footer.lh-home-footer .lh-footer-brand-col,
	.lh-home-footer.lh-home-footer .lh-footer-utility,
	.lh-home-footer.lh-home-footer .lh-footer-link-cluster { grid-column: 1; }
	.lh-home-footer.lh-home-footer .lh-footer-utility { grid-row: 2; justify-items: start; }
	.lh-home-footer.lh-home-footer .lh-footer-link-cluster {
		grid-row: 3;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 18px;
	}
	.lh-home-footer.lh-home-footer .lh-home-footer-learn { grid-column: 1 / -1; }
	.lh-home-footer.lh-home-footer .lh-footer-learn-columns { column-gap: 20px; }
.lh-home-footer.lh-home-footer .lh-footer-nav a { min-height: 44px; padding-block: 8px; white-space: nowrap; overflow-wrap: normal; }
	.lh-home-footer.lh-home-footer .lh-footer-bottom { align-items: flex-start; flex-direction: column; flex-wrap: wrap; gap: 5px; }
	.lh-home-footer.lh-home-footer .lh-home-copyright { white-space: normal; }
	.lh-home-footer.lh-home-footer .lh-home-legal-links { flex-wrap: wrap; white-space: normal; }
}
@media (min-width: 768px) and (max-width: 1023px) {
.lh-home-footer.lh-home-footer .lh-footer-bottom { flex-wrap: wrap; }
.lh-home-footer.lh-home-footer .lh-home-copyright { white-space: normal; }
.lh-home-footer.lh-home-footer .lh-home-legal-links { flex-wrap: wrap; }
}
