/**
 * Variant CSS: footer--app-badges-newsletter
 * Layer 2 — app-download footer: App Store / Google Play badge row (left)
 * beside a compact newsletter signup (right), above a contact/nav strip and
 * a legal bar. Always-dark surface.
 * Scope: every selector starts with body.aibt-universal .universal-footer--app-badges-newsletter
 */

body.aibt-universal .universal-footer--app-badges-newsletter {
	background: var(--background-dark, #141414);
	color: var(--text-on-dark, #ffffff);
	padding-block: calc(clamp(3rem, 7vh, 5rem) * var(--density, 1));
}

/* ── Main row (app col + newsletter col) ───────────────────────── */
body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__main {
	padding-bottom: calc(clamp(2.25rem, 5vh, 3.5rem) * var(--density, 1));
	/* On-dark hairline below the main row (page --divider tracks polarity → vanishes on dark). */
	border-bottom: 1px solid color-mix(in srgb, var(--text-on-dark, #ffffff) 14%, transparent);
	margin-bottom: clamp(1.75rem, 4vh, 2.5rem);
	align-items: flex-start;
}

body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__kicker {
	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 the kicker stays legible 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--app-badges-newsletter .universal-footer__headline {
	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--app-badges-newsletter .universal-footer__headline em {
	font-style: italic;
	color: color-mix(in srgb, var(--accent) 60%, var(--on-dark, #ffffff));
}

body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__deck {
	font-family: var(--font-body) !important;
	font-size: var(--text-base) !important;
	line-height: var(--leading-relaxed) !important;
	color: var(--text-on-dark, #ffffff) !important;
	opacity: 0.74;
	margin: 0 0 var(--space-md) 0 !important;
	max-width: 42ch;
}

/* ── App-store badge row ───────────────────────────────────────── */
body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__badges {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__badge {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	padding: 0.55rem 1.1rem;
	border: 1px solid color-mix(in srgb, var(--text-on-dark, #ffffff) 24%, transparent);
	border-radius: var(--decor-radius);
	background: color-mix(in srgb, var(--text-on-dark, #ffffff) 6%, transparent);
	color: var(--text-on-dark, #ffffff);
	text-decoration: none;
	transition: border-color var(--duration-fast) var(--ease-default),
		background var(--duration-fast) var(--ease-default);
}

body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__badge:hover,
body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__badge:focus-visible {
	border-color: color-mix(in srgb, var(--accent) 60%, var(--on-dark, #ffffff));
	background: color-mix(in srgb, var(--text-on-dark, #ffffff) 11%, transparent);
}

body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__badge-icon {
	flex-shrink: 0;
	color: var(--text-on-dark, #ffffff);
}

body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__badge-text {
	display: flex;
	flex-direction: column;
	line-height: 1.1;
}

body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__badge-pre {
	font-family: var(--font-body);
	font-size: 0.62rem;
	letter-spacing: var(--tracking-wide);
	text-transform: uppercase;
	opacity: 0.66;
}

body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__badge-store {
	font-family: var(--font-display);
	font-size: var(--text-base);
	font-weight: 600;
}

/* ── Newsletter column ─────────────────────────────────────────── */
body.aibt-universal .universal-footer--app-badges-newsletter .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;
	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--app-badges-newsletter .universal-footer__news-deck {
	font-family: var(--font-body) !important;
	font-size: var(--text-base) !important;
	line-height: var(--leading-relaxed) !important;
	color: var(--text-on-dark, #ffffff) !important;
	opacity: 0.74;
	margin: 0 0 var(--space-md) 0 !important;
	max-width: 44ch;
}

/* ── Faux signup field + button ────────────────────────────────── */
body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__field {
	margin-bottom: var(--space-sm);
}

body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__input {
	width: 100%;
	max-width: 26rem;
	box-sizing: border-box;
	font-family: var(--font-body);
	font-size: var(--text-base);
	color: var(--text-on-dark, #ffffff);
	background: color-mix(in srgb, var(--text-on-dark, #ffffff) 7%, transparent);
	border: 1px solid color-mix(in srgb, var(--text-on-dark, #ffffff) 20%, transparent);
	border-radius: var(--decor-radius);
	padding: 0.85rem 1.05rem;
	transition: border-color var(--duration-fast) var(--ease-default);
}

body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__input::placeholder {
	color: var(--text-on-dark, #ffffff);
	opacity: 0.5;
}

body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__input:focus-visible {
	outline: 2px solid color-mix(in srgb, var(--accent) 55%, var(--on-dark, #FFFFFF));
	outline-offset: 2px;
	border-color: color-mix(in srgb, var(--accent) 60%, var(--on-dark, #ffffff));
}

body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__news-btns {
	margin: 0;
}

body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__cta .wp-block-button__link {
	font-family: var(--font-body);
	font-weight: 600;
	background: var(--cta-bg-primary, var(--accent));
	color: var(--cta-text-primary, #ffffff);
	border-radius: var(--decor-radius-pill);
	padding: 0.85rem 1.7rem;
	transition: background var(--duration-fast) var(--ease-default);
}

body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__cta .wp-block-button__link:hover,
body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__cta .wp-block-button__link:focus-visible {
	background: var(--accent-hover, var(--accent));
}

body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__consent {
	font-family: var(--font-body) !important;
	font-size: var(--text-xs) !important;
	color: var(--text-on-dark, #ffffff) !important;
	opacity: 0.55;
	margin: var(--space-sm) 0 0 0 !important;
	max-width: 40ch;
}

body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__consent a {
	color: color-mix(in srgb, var(--accent) 60%, var(--on-dark, #ffffff));
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* ── Contact / nav strip ───────────────────────────────────────── */
body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__meta {
	gap: var(--space-sm) clamp(1.5rem, 4vw, 2.5rem);
}

body.aibt-universal .universal-footer--app-badges-newsletter .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;
}

body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__nav {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 1.25rem;
}

body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__nav li {
	margin: 0 !important;
}

body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__nav 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--app-badges-newsletter .universal-footer__nav a:hover,
body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__nav a:focus-visible {
	opacity: 1;
	color: color-mix(in srgb, var(--accent) 60%, var(--on-dark, #ffffff));
}

/* ── Legal row ─────────────────────────────────────────────────── */
body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__legal {
	margin-top: clamp(1.75rem, 4vh, 2.5rem);
	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--app-badges-newsletter .universal-footer__copyright,
body.aibt-universal .universal-footer--app-badges-newsletter .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--app-badges-newsletter .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--app-badges-newsletter .universal-footer__legal-links a:hover,
body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__legal-links a:focus-visible {
	opacity: 1;
}

/* ── Mobile: stack app col + newsletter col ────────────────────── */
@media (max-width: 781px) {
	body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__appcol,
	body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__newscol {
		flex-basis: 100% !important;
	}

	body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__appcol {
		margin-bottom: var(--space-md);
	}
}

/* Narrow phones: drop wide tracking so kicker/heads don't look gappy (A5),
   let badges + CTA fill width. */
@media (max-width: 640px) {
	body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__kicker,
	body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__colhead {
		letter-spacing: 0 !important;
	}

	body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__badge {
		flex: 1 1 100%;
		justify-content: center;
		box-sizing: border-box;
	}

	body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__news-btns .universal-footer__cta,
	body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__news-btns .universal-footer__cta .wp-block-button__link {
		width: 100%;
		box-sizing: border-box;
		text-align: center;
	}
}

/* Keyboard focus rings — badges, CTA, consent + link targets signal focus only
   via background/colour otherwise; add an explicit ring. */
body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__badge:focus-visible,
body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__cta .wp-block-button__link:focus-visible,
body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__consent a:focus-visible,
body.aibt-universal .universal-footer--app-badges-newsletter .universal-footer__nav a:focus-visible,
body.aibt-universal .universal-footer--app-badges-newsletter .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);
}
