/**
 * Variant CSS: footer--mega-link-grid-dark
 * Layer 2 — dense dark mega-footer: brand block (masthead + tagline + social
 * row) beside four link columns, above a legal bar. Always-dark surface.
 * Denser than multi-column-sitemap (brand block + social + 4 link axes).
 * Scope: every selector starts with body.aibt-universal .universal-footer--mega-link-grid-dark
 */

body.aibt-universal .universal-footer--mega-link-grid-dark {
	background: var(--background-dark, #141414);
	color: var(--text-on-dark, #ffffff);
	padding-block: calc(clamp(3.25rem, 7.5vh, 5.5rem) * var(--density, 1));
}

/* ── Top grid (brand block + link columns) ─────────────────────── */
body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__top {
	align-items: flex-start;
}

/* ── Brand block ───────────────────────────────────────────────── */
body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__masthead {
	font-family: var(--font-display) !important;
	color: var(--text-on-dark, #ffffff) !important;
	margin: 0 0 var(--space-sm) 0 !important;
}

body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__tagline {
	font-family: var(--font-body) !important;
	font-size: var(--text-sm) !important;
	line-height: var(--leading-relaxed) !important;
	color: var(--text-on-dark, #ffffff) !important;
	opacity: 0.7;
	margin: 0 0 var(--space-md) 0 !important;
	max-width: 30ch;
}

/* Social icon row — on-dark hairline-bordered round targets. */
body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__social {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem;
}

body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	border: 1px solid color-mix(in srgb, var(--text-on-dark, #ffffff) 22%, transparent);
	border-radius: var(--decor-radius-pill);
	color: var(--text-on-dark, #ffffff);
	opacity: 0.82;
	text-decoration: none;
	transition: border-color var(--duration-fast) var(--ease-default),
		color var(--duration-fast) var(--ease-default),
		opacity var(--duration-fast) var(--ease-default);
}

body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__social-link:hover,
body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__social-link:focus-visible {
	opacity: 1;
	color: color-mix(in srgb, var(--accent) 60%, var(--on-dark, #ffffff));
	border-color: color-mix(in srgb, var(--accent) 60%, var(--on-dark, #ffffff));
}

/* ── Link columns ──────────────────────────────────────────────── */
body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__colhead {
	font-family: var(--font-body) !important;
	font-size: var(--text-xs) !important;
	font-weight: 600 !important;
	letter-spacing: var(--tracking-widest) !important;
	text-transform: uppercase !important;
	/* Accent lift so column heads read on the dark band (KI-020). */
	color: color-mix(in srgb, var(--accent) 60%, var(--on-dark, #ffffff)) !important;
	margin: 0 0 var(--space-sm) 0 !important;
}

body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__links {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
}

body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__links li {
	margin: 0 !important;
}

body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__links a {
	font-family: var(--font-body);
	font-size: var(--text-sm);
	color: var(--text-on-dark, #ffffff);
	opacity: 0.72;
	text-decoration: none;
	transition: color var(--duration-fast) var(--ease-default),
		opacity var(--duration-fast) var(--ease-default);
}

body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__links a:hover,
body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__links a:focus-visible {
	opacity: 1;
	color: color-mix(in srgb, var(--accent) 60%, var(--on-dark, #ffffff));
}

/* Contact column — plain detail line instead of a link list. */
body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__detail {
	font-family: var(--font-body) !important;
	font-size: var(--text-sm) !important;
	line-height: var(--leading-relaxed) !important;
	color: var(--text-on-dark, #ffffff) !important;
	opacity: 0.72;
	margin: 0 !important;
}

/* ── Legal row ─────────────────────────────────────────────────── */
body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__legal {
	margin-top: clamp(2.5rem, 5.5vh, 3.75rem);
	padding-top: var(--space-md);
	border-top: 1px solid color-mix(in srgb, var(--text-on-dark, #ffffff) 14%, transparent);
	gap: var(--space-sm);
}

body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__copyright,
body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__legal-links {
	font-family: var(--font-body) !important;
	font-size: 0.8rem !important;
	color: var(--text-on-dark, #ffffff) !important;
	opacity: 0.5;
	letter-spacing: var(--tracking-wide) !important;
	margin: 0 !important;
}

body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__legal-links a {
	color: var(--text-on-dark, #ffffff);
	text-decoration: none;
	transition: opacity var(--duration-fast) var(--ease-default);
}

body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__legal-links a:hover,
body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__legal-links a:focus-visible {
	opacity: 1;
}

/* ── Tablet: brand block goes full-width, links wrap to a grid ──── */
@media (max-width: 781px) {
	body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__brandcol {
		flex-basis: 100% !important;
		margin-bottom: var(--space-md);
	}

	body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__navcol {
		flex-basis: calc(50% - 1rem) !important;
	}
}

/* Narrow phones: drop wide tracking so column heads don't look gappy (A5). */
@media (max-width: 640px) {
	body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__colhead {
		letter-spacing: 0 !important;
	}

	body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__navcol {
		flex-basis: 100% !important;
	}
}

/* Keyboard focus rings — social, link + legal targets signal focus only via
   colour/opacity otherwise; add an explicit ring. */
body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__social-link:focus-visible,
body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__links a:focus-visible,
body.aibt-universal .universal-footer--mega-link-grid-dark .universal-footer__legal-links a:focus-visible {
	outline: 2px solid color-mix(in srgb, var(--accent) 55%, var(--on-dark, #FFFFFF));
	outline-offset: 2px;
	border-radius: var(--decor-radius, 4px);
}
