/* =============================================================================
 * LITSLINK BLOCKS — Audience · 2-col accordion (acf/ll-audience-2col-accordion)
 * Self-contained: block-scoped palette, literal font fallback. No global .block-head.
 * Light blue-gray section, centered header, TWO-column grid of white rounded rows.
 * Each row = a blue line icon + bold title (left) + gray chevron (right); clicking
 * a row expands its body copy below. All rows collapsed by default.
 * Strict 1:1 with travel-hospitality/04-seg-04.
 * ========================================================================== */
.block-ll-audience-2col-accordion {
	--a2a-ink: #101828;
	--a2a-item-ink: #1f2a37;
	--a2a-muted: #5b6472;
	--a2a-eyebrow: #8a94a6;
	--a2a-accent: #1690d3;
	--a2a-chev: #9aa4b2;
	--a2a-bg: #f7f8fb;
	--a2a-card-bg: #ffffff;
	--a2a-card-border: #eef0f4;
	font-family: var(--ll-font, 'Montserrat', 'Montserrat-fallback', Arial, sans-serif);
	background: var(--a2a-bg);
	padding: 80px 0;
	box-sizing: border-box;
}
.block-ll-audience-2col-accordion *,
.block-ll-audience-2col-accordion *::before,
.block-ll-audience-2col-accordion *::after { box-sizing: border-box; }

.block-ll-audience-2col-accordion__inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 20px;
}

/* Header */
.block-ll-audience-2col-accordion__head { text-align: center; margin: 0 auto 44px; max-width: 820px; }
.block-ll-audience-2col-accordion__eyebrow {
	margin: 0 0 12px;
	font-size: 13px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase;
	color: var(--a2a-eyebrow);
}
.block-ll-audience-2col-accordion__title {
	margin: 0; font-size: 40px; line-height: 1.2; font-weight: 800; color: var(--a2a-ink);
}
.block-ll-audience-2col-accordion__subtitle {
	margin: 18px auto 0; max-width: 760px; font-size: 16px; line-height: 1.6; color: var(--a2a-muted);
}

/* 2-column grid of rows */
.block-ll-audience-2col-accordion__grid {
	display: flex;
	align-items: flex-start;
	gap: 24px;
}
/* Two INDEPENDENT column stacks — each reflows on its own, so an open card in
   one column never stretches the parallel (closed) card to match its height. */
.block-ll-audience-2col-accordion__col {
	flex: 1 1 0;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.block-ll-audience-2col-accordion__item {
	background: var(--a2a-card-bg);
	border: 1px solid var(--a2a-card-border);
	border-radius: 16px;
	box-shadow: 0 1px 3px rgba(16, 24, 40, .05);
	overflow: hidden;
}

/* Row header (button) */
.block-ll-audience-2col-accordion__head-row {
	display: flex;
	align-items: center;
	gap: 16px;
	width: 100%;
	background: none;
	border: 0;
	padding: 26px 28px;
	cursor: pointer;
	text-align: left;
	font-family: inherit;
}
.block-ll-audience-2col-accordion__head-row[disabled] { cursor: default; }

.block-ll-audience-2col-accordion__icon {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--a2a-accent);
}
.block-ll-audience-2col-accordion__icon svg { display: block; }
.block-ll-audience-2col-accordion__icon-img { width: 24px; height: 24px; object-fit: contain; display: block; }
.block-ll-audience-2col-accordion__icon picture { display: flex; }

.block-ll-audience-2col-accordion__item-title {
	flex: 1 1 0;
	min-width: 0;
	font-size: 18px; line-height: 1.35; font-weight: 700;
	color: var(--a2a-item-ink);
}

.block-ll-audience-2col-accordion__chev {
	flex: 0 0 auto;
	display: flex;
	color: var(--a2a-chev);
	transition: transform .25s ease;
}
.block-ll-audience-2col-accordion__item--open .block-ll-audience-2col-accordion__chev { transform: rotate(180deg); }

/* Expandable body */
.block-ll-audience-2col-accordion__body {
	max-height: 0;
	overflow: hidden;
	transition: max-height .3s ease;
}
.block-ll-audience-2col-accordion__item--open .block-ll-audience-2col-accordion__body { max-height: 600px; }
.block-ll-audience-2col-accordion__body-in {
	margin: 0 28px;
	padding: 20px 0 26px;
	/* Figma: a thin divider separates the title row from the body copy on open. */
	border-top: 1px solid var(--a2a-card-border);
	font-size: 15px; line-height: 1.65; color: var(--a2a-muted);
}

/* Responsive — single column on tablet/mobile */
@media (max-width: 900px) {
	.block-ll-audience-2col-accordion__grid { flex-direction: column; gap: 16px; }
	/* Collapse the two column wrappers so every card shares one flex column, then
	   re-sort to the original source order via --a2a-order. */
	.block-ll-audience-2col-accordion__col { display: contents; }
	.block-ll-audience-2col-accordion__item { order: var(--a2a-order, 0); }
}
@media (max-width: 782px) {
	.block-ll-audience-2col-accordion { padding: 56px 0; }
	.block-ll-audience-2col-accordion__head { margin-bottom: 32px; }
	.block-ll-audience-2col-accordion__title { font-size: 28px; }
	.block-ll-audience-2col-accordion__head-row { padding: 20px; gap: 14px; }
	.block-ll-audience-2col-accordion__item-title { font-size: 16px; }
	.block-ll-audience-2col-accordion__body-in { padding: 0 20px 20px; font-size: 14px; }
}
