/**
 * Variant CSS: offer--duo-rows
 *
 * Exactly two services as two generous full-width rows — a large index number,
 * a big display name, a fuller description stacked beneath, a hover arrow, split
 * by a strong rule. Each offer gets prestige + air. Distinct from duo-split
 * cards (side-by-side) and the compact editorial index (many services). Shares
 * the universal-offer__row structure so the list rebuild clones + renumbers it.
 * Text stays --ink (polarity-aware); number, arrow + hover take --accent.
 */

body.aibt-universal .universal-offer--duo-rows {
	padding-block: calc(clamp(3rem, 7vw, 5.5rem) * var(--density, 1));
}

/* Intro. */
body.aibt-universal .universal-offer--duo-rows .universal-offer__intro {
	margin-bottom: clamp(2rem, 4vw, 3rem);
	max-width: 40ch;
}

body.aibt-universal .universal-offer--duo-rows .universal-offer__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-offer--duo-rows .universal-offer__headline {
	font-family: var(--font-display) !important;
	color: var(--ink) !important;
	margin: 0 0 var(--space-md) 0 !important;
}

body.aibt-universal .universal-offer--duo-rows .universal-offer__headline em {
	color: var(--accent) !important;
	font-style: italic;
}

body.aibt-universal .universal-offer--duo-rows .universal-offer__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.74;
	margin: 0 !important;
}

/* Rows. */
body.aibt-universal .universal-offer--duo-rows .universal-offer__index {
	gap: 0 !important;
}

body.aibt-universal .universal-offer--duo-rows .universal-offer__row {
	gap: clamp(1.4rem, 3.5vw, 2.6rem) !important;
	padding: clamp(1.8rem, 4vw, 2.8rem) 0;
	border-top: 2px solid color-mix(in srgb, var(--ink) 16%, transparent);
	align-items: flex-start !important;
	position: relative;
}

body.aibt-universal .universal-offer--duo-rows .universal-offer__row:last-child {
	border-bottom: 2px solid color-mix(in srgb, var(--ink) 16%, transparent);
}

/* Big index number. */
body.aibt-universal .universal-offer--duo-rows .universal-offer__num {
	flex: 0 0 auto !important;
	font-family: var(--font-display) !important;
	font-size: clamp(1.6rem, 3.4vw, 2.6rem) !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	letter-spacing: -0.02em !important;
	color: var(--accent) !important;
	margin: 0 !important;
	min-width: 2.4ch;
}

body.aibt-universal .universal-offer--duo-rows .universal-offer__row-body {
	flex: 1 1 auto !important;
	gap: 0.6rem !important;
	min-width: 0;
}

body.aibt-universal .universal-offer--duo-rows .universal-offer__item-name {
	font-family: var(--font-display) !important;
	font-size: clamp(1.5rem, 3.2vw, 2.3rem) !important;
	font-weight: 600 !important;
	line-height: 1.1 !important;
	letter-spacing: -0.02em !important;
	color: var(--ink) !important;
	margin: 0 !important;
	transition: transform var(--duration-fast, 0.18s) var(--ease-default, ease),
		color var(--duration-fast, 0.18s) var(--ease-default, ease);
}

/* Hover arrow after the name. */
body.aibt-universal .universal-offer--duo-rows .universal-offer__item-name::after {
	content: " →";
	color: var(--accent);
	opacity: 0;
	transition: opacity var(--duration-fast, 0.18s) var(--ease-default, ease);
}

body.aibt-universal .universal-offer--duo-rows .universal-offer__row:hover .universal-offer__item-name {
	transform: translateX(6px);
}

body.aibt-universal .universal-offer--duo-rows .universal-offer__row:hover .universal-offer__item-name::after {
	opacity: 1;
}

body.aibt-universal .universal-offer--duo-rows .universal-offer__item-desc {
	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;
	margin: 0 !important;
	max-width: 60ch;
}

@media (max-width: 560px) {
	body.aibt-universal .universal-offer--duo-rows .universal-offer__row {
		gap: 0.9rem !important;
	}
	body.aibt-universal .universal-offer--duo-rows .universal-offer__num {
		min-width: auto;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.aibt-universal .universal-offer--duo-rows .universal-offer__row:hover .universal-offer__item-name {
		transform: none;
	}
}
