/* Analytics landing page */

body.ibc-analytics-page-active {
	--ibc-bg-page: var(--ibc-bg-home);
	--ibc-bg-hero: var(--ibc-bg-home);
	background: var(--ibc-bg-home);
}

.ibc-analytics-page > section:not(.ibc-hero):not(.ibc-lead-form):not(.ibc-analytics-overview) {
	background: transparent;
}

.ibc-analytics-page .ibc-lead-form {
	background-color: transparent;
}

.ibc-hero--analytics .ibc-hero__title {
	margin-top: 0;
}

.ibc-hero--analytics .ibc-hero__image {
	object-position: left center;
}

.ibc-analytics-section-title {
	margin: 0 0 var(--ibc-space-16);
	font-size: clamp(28px, 3vw, 40px);
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: -0.02em;
	color: var(--ibc-accent);
}

.ibc-analytics-section-lead {
	margin: 0 0 var(--ibc-space-32);
	max-width: 72ch;
	font-size: 18px;
	line-height: var(--ibc-line-height);
	color: var(--ibc-text-secondary);
}

.ibc-analytics-card {
	padding: var(--ibc-space-32);
	background: var(--ibc-white);
	border: 1px solid #e2e8f0;
	border-radius: 24px;
	box-shadow: var(--ibc-shadow-card);
}

.ibc-analytics-card__title {
	margin: 0 0 var(--ibc-space-12);
	font-size: 22px;
	font-weight: 700;
	line-height: 1.25;
	color: var(--ibc-accent);
}

.ibc-analytics-card__text {
	margin: 0;
	font-size: 16px;
	line-height: 1.5;
	color: var(--ibc-text-secondary);
}

/* Scope - four large scenario cards */

.ibc-analytics-scope .ibc-tasks__grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: stretch;
}

.ibc-analytics-scope .ibc-tasks__card-entry {
	display: flex;
	min-height: 0;
}

.ibc-analytics-scope .ibc-tasks__card {
	container-type: normal;
	overflow: visible;
	flex: 1;
	flex-direction: row;
	align-items: stretch;
	gap: var(--ibc-space-16);
	width: 100%;
	height: 100%;
	min-height: 0;
	padding: var(--ibc-space-32) 0 var(--ibc-space-32) var(--ibc-space-32);
}

.ibc-analytics-scope .ibc-tasks__card > span[itemprop] {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	min-width: 0;
	min-height: 0;
}

.ibc-analytics-scope .ibc-tasks__cta {
	margin-top: auto;
}

.ibc-analytics-scope .ibc-tasks__card-title {
	display: flex;
	align-items: center;
	gap: var(--ibc-space-12);
	margin-bottom: var(--ibc-space-24);
	padding-right: 0;
	color: var(--ibc-accent);
}

.ibc-analytics-scope__index {
	flex: 0 0 auto;
	font-size: 32px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.02em;
	color: var(--ibc-project-accent);
}

.ibc-analytics-scope__sep {
	flex: 0 0 auto;
	width: 1px;
	height: 0.85em;
	background: var(--ibc-accent);
	opacity: 0.22;
	transform: translateY(0.08em);
}

.ibc-analytics-scope__heading {
	min-width: 0;
}

.ibc-analytics-scope__points {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	flex-grow: 0;
	gap: 6px;
	margin: 0 0 var(--ibc-space-16);
	padding: 0;
	list-style: none;
	font-size: 16px;
	line-height: var(--ibc-line-height);
	color: var(--ibc-text-secondary);
}

.ibc-analytics-scope__points li {
	position: relative;
	padding-left: 1em;
}

.ibc-analytics-scope__points li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0.55em;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--ibc-accent);
	opacity: 0.35;
}

.ibc-analytics-scope__media {
	display: flex;
	flex: 0 0 280px;
	align-items: center;
	align-self: stretch;
	justify-content: center;
	width: 280px;
	pointer-events: none;
}

.ibc-analytics-scope__image {
	display: block;
	width: 100%;
	height: 100%;
	max-height: none;
	object-fit: contain;
	object-position: center right;
}

/* Overview */

.ibc-analytics-overview {
	padding: var(--ibc-section-padding-y) 0;
	background: var(--ibc-bg-home);
}

.ibc-analytics-overview__container {
	display: flex;
	flex-direction: column;
	gap: var(--ibc-space-48);
	max-width: var(--ibc-container-max);
	margin: 0 auto;
	padding: 0 var(--ibc-container-padding);
}

.ibc-analytics-overview__header {
	max-width: 820px;
}

.ibc-analytics-overview__header .ibc-analytics-section-title {
	margin-bottom: var(--ibc-space-16);
}

.ibc-analytics-overview__lead {
	margin: 0;
	font-size: 18px;
	line-height: 1.5;
	color: var(--ibc-text-secondary);
}

.ibc-analytics-overview__includes-title {
	margin: 0 0 var(--ibc-space-24);
	font-size: clamp(18px, 1.6vw, 22px);
	font-weight: 700;
	line-height: 1.25;
	color: var(--ibc-accent);
}

.ibc-analytics-overview__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--ibc-space-16);
	margin: 0;
	padding: 0;
	list-style: none;
}

.ibc-analytics-overview__item {
	display: flex;
	flex-direction: column;
	gap: var(--ibc-space-16);
	min-height: 168px;
	margin: 0;
	padding: var(--ibc-space-24);
	background: var(--ibc-white);
	border: 1px solid #e2e8f0;
	border-radius: 20px;
	box-shadow: var(--ibc-shadow-card);
}

.ibc-analytics-overview__item-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 44px;
	height: 44px;
	color: var(--ibc-project-accent);
	background: var(--ibc-project-accent-soft);
	border-radius: 12px;
}

.ibc-analytics-overview__item-icon svg {
	display: block;
}

.ibc-analytics-overview__item-text {
	font-size: 15px;
	font-weight: 500;
	line-height: 1.4;
	color: var(--ibc-accent);
}

.ibc-analytics-overview__footer {
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) minmax(240px, 0.8fr);
	gap: var(--ibc-space-24);
	align-items: stretch;
}

.ibc-analytics-overview__body {
	margin: 0;
	padding: var(--ibc-space-24) var(--ibc-space-32);
	border-left: 3px solid var(--ibc-project-accent);
	border-radius: 0 16px 16px 0;
	background: var(--ibc-white);
	font-size: 16px;
	line-height: 1.55;
	color: var(--ibc-accent);
	box-shadow: var(--ibc-shadow-card);
}

.ibc-analytics-overview__note {
	margin: 0;
	padding: var(--ibc-space-24);
	border-radius: 16px;
	background: var(--ibc-white);
	font-size: 14px;
	line-height: 1.5;
	color: var(--ibc-text-muted);
	box-shadow: var(--ibc-shadow-card);
}

/* Audiences */

.ibc-analytics-audiences {
	padding: var(--ibc-section-padding-y) 0;
}

.ibc-analytics-audiences__container,
.ibc-analytics-geo__container,
.ibc-analytics-catalog__container,
.ibc-analytics-trust__container,
.ibc-analytics-analysts__container {
	max-width: var(--ibc-container-max);
	margin: 0 auto;
	padding: 0 var(--ibc-container-padding);
}

.ibc-analytics-audiences__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--ibc-space-16);
}

/* Geo */

.ibc-analytics-geo {
	padding: var(--ibc-section-padding-y) 0;
}

.ibc-analytics-geo__copy {
	max-width: 72ch;
}

.ibc-analytics-geo__copy p {
	margin: 0 0 var(--ibc-space-16);
	font-size: 16px;
	line-height: 1.6;
	color: var(--ibc-text-secondary);
}

.ibc-analytics-geo__copy p:last-child {
	margin-bottom: 0;
}

/* Catalog accordion */

.ibc-analytics-catalog {
	padding: var(--ibc-section-padding-y) 0;
}

.ibc-analytics-catalog__list {
	display: flex;
	flex-direction: column;
	gap: var(--ibc-space-8);
}

.ibc-analytics-catalog__item {
	background: var(--ibc-white);
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	overflow: hidden;
	scroll-margin-top: 104px;
}

.ibc-analytics-catalog__summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--ibc-space-16);
	padding: 18px 22px;
	cursor: pointer;
	list-style: none;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.3;
	color: var(--ibc-accent);
}

.ibc-analytics-catalog__summary::-webkit-details-marker {
	display: none;
}

.ibc-analytics-catalog__icon {
	flex-shrink: 0;
	width: 10px;
	height: 10px;
	border-right: 2px solid var(--ibc-accent);
	border-bottom: 2px solid var(--ibc-accent);
	transform: rotate(45deg);
	transition: transform 0.2s ease;
}

.ibc-analytics-catalog__item[open] .ibc-analytics-catalog__icon {
	transform: rotate(225deg);
	margin-top: 6px;
}

.ibc-analytics-catalog__body {
	padding: 0 22px 20px;
}

.ibc-analytics-catalog__body p {
	margin: 0;
	font-size: 16px;
	line-height: 1.55;
	color: var(--ibc-text-secondary);
}

/* Trust */

.ibc-analytics-trust {
	padding: var(--ibc-section-padding-y) 0;
}

.ibc-analytics-trust__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--ibc-space-16);
}

.ibc-analytics-card--trust {
	background: var(--ibc-accent);
	border: none;
	color: var(--ibc-white);
}

.ibc-analytics-card--trust .ibc-analytics-card__title,
.ibc-analytics-card--trust .ibc-analytics-card__text {
	color: var(--ibc-white);
}

.ibc-analytics-card--trust .ibc-analytics-card__text {
	color: rgba(255, 255, 255, 0.82);
}

/* Analysts */

.ibc-analytics-analysts {
	padding: var(--ibc-section-padding-y) 0;
}

.ibc-analytics-analysts__header {
	margin-bottom: var(--ibc-space-32);
	max-width: 760px;
}

.ibc-analytics-analysts__header .ibc-analytics-section-lead {
	margin-bottom: 0;
}

.ibc-analytics-analysts__list {
	grid-template-columns: repeat(2, minmax(0, 280px));
	justify-content: start;
	max-width: 576px;
}

@media (max-width: 1199px) {
	.ibc-analytics-page .ibc-analytics-scope,
	.ibc-analytics-page .ibc-analytics-overview,
	.ibc-analytics-page .ibc-analytics-audiences,
	.ibc-analytics-page .ibc-analytics-geo,
	.ibc-analytics-page .ibc-analytics-catalog,
	.ibc-analytics-page .ibc-analytics-trust,
	.ibc-analytics-page .ibc-analytics-analysts,
	.ibc-analytics-page .ibc-analytics-questions,
	.ibc-analytics-page .ibc-services-workflow {
		padding-top: var(--ibc-section-padding-y-md);
		padding-bottom: var(--ibc-space-24);
	}

	/* Override .ibc-tasks asymmetric bottom padding (64px) on services-style sections */
	.ibc-analytics-page .ibc-tasks.ibc-analytics-scope {
		padding-bottom: var(--ibc-space-24);
	}

	.ibc-analytics-scope .ibc-tasks__grid {
		--ibc-tasks-card-min-height: 0;
		grid-auto-rows: minmax(0, auto);
		align-items: stretch;
	}

	.ibc-analytics-scope .ibc-tasks__card {
		padding: var(--ibc-space-24) 0 var(--ibc-space-24) var(--ibc-space-24);
	}

	.ibc-analytics-scope .ibc-tasks__card-title {
		margin-bottom: var(--ibc-space-16);
		font-size: clamp(17px, 2vw, 22px);
	}

	.ibc-analytics-scope__index {
		font-size: 28px;
	}

	.ibc-analytics-scope__points {
		margin-bottom: var(--ibc-space-12);
		font-size: 15px;
		gap: 4px;
	}

	.ibc-analytics-scope__media {
		flex: 0 0 132px;
		width: 132px;
		align-self: center;
	}

	.ibc-analytics-scope__image {
		height: auto;
		max-height: 132px;
	}
}

@media (max-width: 1024px) {
	.ibc-analytics-overview__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ibc-analytics-overview__footer,
	.ibc-analytics-audiences__grid {
		grid-template-columns: 1fr 1fr;
	}

	.ibc-analytics-trust__grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 768px) {
	.ibc-analytics-scope,
	.ibc-analytics-overview,
	.ibc-analytics-audiences,
	.ibc-analytics-geo,
	.ibc-analytics-deliverables,
	.ibc-analytics-catalog,
	.ibc-analytics-trust,
	.ibc-analytics-analysts {
		padding: var(--ibc-section-padding-y-sm) 0;
	}

	.ibc-analytics-page .ibc-tasks.ibc-analytics-scope {
		padding-top: var(--ibc-space-24);
	}

	.ibc-hero--analytics .ibc-hero__content {
		padding-bottom: var(--ibc-space-12);
	}

	.ibc-analytics-overview__container,
	.ibc-analytics-audiences__grid {
		grid-template-columns: 1fr;
		gap: var(--ibc-space-24);
	}

	.ibc-analytics-overview__grid,
	.ibc-analytics-overview__footer {
		grid-template-columns: 1fr;
	}

	.ibc-analytics-overview__item {
		min-height: 0;
	}

	.ibc-analytics-analysts__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		max-width: none;
	}

	.ibc-analytics-section-title {
		font-size: 26px;
	}

	.ibc-analytics-deliverables .ibc-services-workflow__container {
		padding-inline: var(--ibc-container-padding);
	}

	.ibc-analytics-deliverables .ibc-services-workflow--boxed .ibc-services-workflow__steps {
		padding: 0;
		gap: var(--ibc-space-12);
		background: transparent;
		border-radius: 0;
	}

	.ibc-analytics-deliverables .ibc-services-workflow--boxed .ibc-services-workflow__step {
		display: grid;
		grid-template-columns: 48px minmax(0, 1fr);
		grid-template-areas:
			'icon title'
			'text text';
		gap: var(--ibc-space-12);
		align-items: center;
	}

	.ibc-analytics-deliverables .ibc-services-workflow__number-row {
		grid-area: icon;
		width: 48px;
	}

	.ibc-analytics-deliverables .ibc-services-workflow__step-title {
		grid-area: title;
		margin: 0;
	}

	.ibc-analytics-deliverables .ibc-services-workflow__step-text {
		grid-area: text;
		margin: 0;
	}
}

@media (max-width: 640px) {
	.ibc-analytics-page .ibc-tasks.ibc-analytics-scope {
		padding-top: var(--ibc-space-24);
	}

	.ibc-hero--analytics .ibc-hero__content {
		padding-bottom: var(--ibc-space-12);
	}

	.ibc-analytics-scope .ibc-tasks__grid {
		grid-template-columns: 1fr;
	}

	.ibc-analytics-scope .ibc-tasks__card {
		flex-direction: column;
		align-items: stretch;
		gap: var(--ibc-space-16);
		padding: var(--ibc-space-24) var(--ibc-space-16);
	}

	/* Flatten card content so CTA can sit under the image */
	.ibc-analytics-scope .ibc-tasks__card > span[itemprop] {
		display: contents;
	}

	.ibc-analytics-scope .ibc-tasks__card-title {
		order: 1;
	}

	.ibc-analytics-scope__points {
		order: 2;
		margin-bottom: 0;
	}

	.ibc-analytics-scope__media {
		order: 3;
		flex: 0 0 auto;
		align-self: center;
		width: 72%;
		max-width: 260px;
	}

	.ibc-analytics-scope .ibc-tasks__cta {
		order: 4;
		margin-top: 0;
	}

	.ibc-analytics-scope__image {
		width: 100%;
		height: auto;
		max-height: none;
		aspect-ratio: 4 / 3;
		object-fit: cover;
		object-position: center;
	}
}

@media (max-width: 520px) {
	.ibc-analytics-analysts__list {
		grid-template-columns: 1fr;
		max-width: 280px;
		margin-inline: auto;
	}
}
