/**
 * Variant CSS: newsletter--split-image
 *
 * Newsletter sign-up with a photo — a mood shot on one side, the kicker,
 * headline, one line, email field + button and a short note on the other. The
 * only sign-up variant that adds an image, warming the invitation and lifting it
 * off a text-only background. The email input is a visual placeholder. Text
 * stays --ink (polarity-aware); kicker, em and the button take --accent / CTA
 * tokens. Image src swapped by the photo system. Part of the `newsletter` role.
 */

body.aibt-universal .universal-newsletter--split-image {
	padding-block: calc(clamp(3rem, 7vw, 5rem) * var(--density, 1));
}

body.aibt-universal .universal-newsletter--split-image .universal-newsletter__split {
	display: grid;
	grid-template-columns: minmax(0, 0.85fr) minmax(0, 1fr);
	gap: clamp(1.6rem, 4vw, 3rem);
	align-items: center;
}

/* Image. */
body.aibt-universal .universal-newsletter--split-image .universal-newsletter__media {
	border-radius: var(--decor-radius, 18px);
	overflow: hidden;
	aspect-ratio: 4 / 3;
}

body.aibt-universal .universal-newsletter--split-image .universal-newsletter__img {
	margin: 0 !important;
	height: 100%;
}

body.aibt-universal .universal-newsletter--split-image .universal-newsletter__img img {
	display: block;
	width: 100%;
	height: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

/* Body. */
body.aibt-universal .universal-newsletter--split-image .universal-newsletter__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;
	color: var(--accent) !important;
	margin: 0 0 var(--space-sm) 0 !important;
}

body.aibt-universal .universal-newsletter--split-image .universal-newsletter__headline {
	font-family: var(--font-display) !important;
	color: var(--ink) !important;
	margin: 0 0 var(--space-sm) 0 !important;
}

body.aibt-universal .universal-newsletter--split-image .universal-newsletter__headline em {
	color: var(--accent) !important;
	font-style: italic;
}

body.aibt-universal .universal-newsletter--split-image .universal-newsletter__deck {
	font-family: var(--font-body) !important;
	font-size: var(--text-base) !important;
	line-height: var(--leading-relaxed) !important;
	color: var(--ink) !important;
	opacity: 0.78;
	max-width: 42ch;
	margin: 0 0 var(--space-lg) 0 !important;
}

/* Form. */
body.aibt-universal .universal-newsletter--split-image .universal-newsletter__form {
	gap: 0.6rem !important;
	max-width: 440px;
}

body.aibt-universal .universal-newsletter--split-image .universal-newsletter__field {
	flex: 1 1 200px;
	display: block;
}

body.aibt-universal .universal-newsletter--split-image .universal-newsletter__input {
	width: 100%;
	box-sizing: border-box;
	font-family: var(--font-body) !important;
	font-size: var(--text-base) !important;
	color: var(--ink);
	padding: 0.72rem 1.05rem;
	border-radius: var(--decor-radius-pill, 999px);
	background: color-mix(in srgb, var(--ink) 5%, var(--bg-main, transparent));
	border: 1px solid color-mix(in srgb, var(--ink) 22%, transparent);
	transition: border-color var(--duration-fast, 0.18s) var(--ease-default, ease);
}

body.aibt-universal .universal-newsletter--split-image .universal-newsletter__input::placeholder {
	color: color-mix(in srgb, var(--ink) 50%, transparent);
}

body.aibt-universal .universal-newsletter--split-image .universal-newsletter__input:focus-visible {
	outline: 2px solid var(--accent);
	outline-offset: 2px;
	border-color: var(--accent);
}

body.aibt-universal .universal-newsletter--split-image .universal-newsletter__cta .wp-block-button__link {
	background: var(--cta-bg-primary, var(--accent)) !important;
	color: var(--cta-text-primary, #ffffff) !important;
	font-family: var(--font-body) !important;
	font-size: var(--text-base) !important;
	font-weight: 600 !important;
	padding: 0.72rem 1.5rem !important;
	border-radius: var(--decor-radius-pill, 999px) !important;
	border: none !important;
	white-space: nowrap;
	transition: background var(--duration-fast, 0.18s) var(--ease-default, ease),
		transform var(--duration-fast, 0.18s) var(--ease-default, ease);
}

body.aibt-universal .universal-newsletter--split-image .universal-newsletter__cta .wp-block-button__link:hover {
	background: var(--accent-hover, var(--accent)) !important;
	transform: translateY(-1px);
}

/* Keyboard focus ring for the CTA. */
body.aibt-universal .universal-newsletter--split-image .universal-newsletter__cta .wp-block-button__link:focus-visible {
	outline: 2px solid var(--accent);
	outline-offset: 2px;
	border-radius: var(--decor-radius-pill, 999px);
}

body.aibt-universal .universal-newsletter--split-image .universal-newsletter__note {
	font-family: var(--font-body) !important;
	font-size: var(--text-xs) !important;
	color: var(--ink) !important;
	opacity: 0.6;
	margin: var(--space-md) 0 0 0 !important;
}

/* Mobile: image on top, body below. */
@media (max-width: 720px) {
	body.aibt-universal .universal-newsletter--split-image .universal-newsletter__split {
		grid-template-columns: 1fr;
		gap: clamp(1.4rem, 5vw, 2rem);
	}
	body.aibt-universal .universal-newsletter--split-image .universal-newsletter__media {
		aspect-ratio: 16 / 9;
		max-height: 280px;
	}
}

/* Cap wide tracking on the uppercase kicker at small widths (A5). */
@media (max-width: 640px) {
	body.aibt-universal .universal-newsletter--split-image .universal-newsletter__kicker {
		letter-spacing: 0 !important;
	}
}

/* Reduced motion: drop field + CTA transitions/transforms. */
@media (prefers-reduced-motion: reduce) {
	body.aibt-universal .universal-newsletter--split-image .universal-newsletter__input,
	body.aibt-universal .universal-newsletter--split-image .universal-newsletter__cta .wp-block-button__link {
		transition: none;
	}
	body.aibt-universal .universal-newsletter--split-image .universal-newsletter__cta .wp-block-button__link:hover {
		transform: none;
	}
}
