/* Outcome-led intro panel at the top of product & solution pages (headline, sub-headline, three key points, CTA) */
.cpx-central-content-column .cpx-product-intro {
	background: #F5F7F9;
	border-left: 4px solid #FFB012;
	border-radius: 0 8px 8px 0;
	padding: 22px 26px 20px;
	margin: 0 0 28px;
}
.cpx-central-content-column .cpx-product-intro .cpx-product-intro__eyebrow {
	margin: 0 0 6px;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #8A5300;
}
.cpx-central-content-column .cpx-product-intro h2.cpx-product-intro__headline {
	margin: 0 0 10px;
	padding: 0;
	border: 0;
	font-size: 26px;
	font-weight: 700;
	line-height: 1.25;
	color: #0E2E45;
	text-transform: none;
	letter-spacing: normal;
}
.cpx-central-content-column .cpx-product-intro .cpx-product-intro__sub {
	margin: 0 0 12px;
	font-size: 17px;
	line-height: 1.55;
	color: #33424D;
}
.cpx-central-content-column .cpx-product-intro .cpx-product-intro__points {
	margin: 0 0 16px;
}
.cpx-central-content-column .cpx-product-intro .cpx-product-intro__points strong {
	color: #0E2E45;
}
.cpx-central-content-column .cpx-product-intro .cpx-product-intro__cta {
	margin: 0;
}
.cpx-central-content-column .cpx-product-intro .cpx-product-intro__cta a {
	display: inline-block;
	padding: 11px 22px;
	border-radius: 24px;
	background: #FFB012;
	color: #0E2E45;
	font-weight: 700;
	line-height: 1.3;
	text-decoration: none;
}
.cpx-central-content-column .cpx-product-intro .cpx-product-intro__cta a:hover,
.cpx-central-content-column .cpx-product-intro .cpx-product-intro__cta a:focus {
	background: #E09510;
	color: #0E2E45;
	text-decoration: none;
}
@media (max-width: 767px) {
	.cpx-central-content-column .cpx-product-intro {
		padding: 18px 18px 16px;
	}
	.cpx-central-content-column .cpx-product-intro h2.cpx-product-intro__headline {
		font-size: 22px;
	}
	.cpx-central-content-column .cpx-product-intro .cpx-product-intro__sub {
		font-size: 16px;
	}
}

/* Second CTA beside the primary one (Oct 2026, About & Resources pages) */
.cpx-central-content-column .cpx-product-intro .cpx-product-intro__cta a + a,
.cpx-left-content-column .cpx-product-intro .cpx-product-intro__cta a + a {
	margin-left: 10px;
	background: transparent;
	box-shadow: inset 0 0 0 2px #0E2E45;
}
.cpx-central-content-column .cpx-product-intro .cpx-product-intro__cta a + a:hover,
.cpx-central-content-column .cpx-product-intro .cpx-product-intro__cta a + a:focus {
	background: #0E2E45;
	color: #fff;
}
@media (max-width: 767px) {
	.cpx-central-content-column .cpx-product-intro .cpx-product-intro__cta a + a { margin: 10px 0 0; }
}

/* Contact page: the intro panel sits in the narrower left column */
.cpx-left-content-column .cpx-product-intro {
	background: #F5F7F9;
	border-left: 4px solid #FFB012;
	border-radius: 0 8px 8px 0;
	padding: 20px 22px 16px;
	margin: 0 0 24px;
}
.cpx-left-content-column .cpx-product-intro .cpx-product-intro__eyebrow {
	margin: 0 0 6px; font-size: 12px; font-weight: 700; line-height: 1.4; letter-spacing: 0.12em; text-transform: uppercase; color: #8A5300;
}
.cpx-left-content-column .cpx-product-intro h2.cpx-product-intro__headline {
	margin: 0 0 10px; padding: 0; border: 0; font-size: 24px; font-weight: 700; line-height: 1.25; color: #0E2E45; text-transform: none; letter-spacing: normal;
}
.cpx-left-content-column .cpx-product-intro .cpx-product-intro__sub { margin: 0 0 12px; font-size: 16px; line-height: 1.55; color: #33424D; }
.cpx-steps { margin: 0 0 4px; padding: 0; list-style: none; counter-reset: cpx-step; }
.cpx-steps li { position: relative; margin: 0 0 8px; padding: 0 0 0 36px; font-size: 14px; line-height: 1.5; color: #33424D; }
.cpx-steps li::before { counter-increment: cpx-step; content: counter(cpx-step); position: absolute; left: 0; top: 0; width: 24px; height: 24px; border-radius: 50%; background: #0E2E45; color: #fff; font-size: 13px; font-weight: 700; line-height: 24px; text-align: center; }
.cpx-steps li strong { color: #0E2E45; }
.cpx-trust-list { margin: 18px 0 0; padding: 0; list-style: none; }
.cpx-trust-list li { position: relative; margin: 0 0 6px; padding: 0 0 0 24px; font-size: 13px; line-height: 1.5; color: #33424D; }
.cpx-trust-list li::before { content: "\2713"; position: absolute; left: 0; top: 0; color: #2E7D5B; font-weight: 700; }

/* Why Complexica: six scannable differentiator cards */
.cpx-why-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin: 0 0 30px; }
.cpx-why-card { background: #F5F7F9; border-top: 3px solid #FFB012; border-radius: 0 0 8px 8px; padding: 16px 18px 14px; }
.cpx-why-card h3.cpx-why-card__title { margin: 0 0 6px; padding: 0; border: 0; font-size: 16px; font-weight: 700; line-height: 1.3; color: #0E2E45; }
.cpx-why-card p { margin: 0; font-size: 14px; line-height: 1.5; color: #33424D; }
/* the site-wide "space above non-first headings" rule shouldn't push card titles down */
body.cpx-page .cpx-central-content-column .cpx-why-card h3.cpx-why-card__title { margin-top: 0 !important; }
@media (max-width: 767px) { .cpx-why-cards { grid-template-columns: 1fr; } }

/* Science: Data -> Predict -> Optimise -> Recommend -> Learn */
.cpx-flow { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px; margin: 0 0 30px; padding: 0; list-style: none; }
.cpx-flow li { margin: 0; padding: 10px 14px; border-radius: 22px; background: #0E2E45; color: #fff; font-size: 14px; font-weight: 700; line-height: 1.2; }
.cpx-flow li.cpx-flow__arrow { padding: 0; background: none; color: #FFB012; font-size: 20px; }
.cpx-central-content-column .cpx-flow li::before { display: none; }

/* Collapsible lists (Speaking archive, Publications) */
.cpx-collapse { margin: 0 0 10px; border-bottom: 1px solid #E6E9EC; }
.cpx-collapse > summary { cursor: pointer; padding: 10px 0; list-style: none; }
.cpx-collapse > summary::-webkit-details-marker { display: none; }
.cpx-collapse > summary::before { content: "+"; display: inline-block; width: 20px; color: #E09510; font-weight: 700; }
.cpx-collapse[open] > summary::before { content: "\2212"; }
.cpx-collapse > summary h2, .cpx-collapse > summary h3 { display: inline; margin: 0; }

/* The site gives every content list an amber FontAwesome bullet; these two lists draw their own markers */
.cpx-main-content-area ul.cpx-flow.cpx-flow li { margin-left: 0; }
.cpx-main-content-area ul.cpx-flow.cpx-flow li:before { content: none; display: none; }
.cpx-main-content-area ul.cpx-trust-list.cpx-trust-list li { margin-left: 0; }
.cpx-main-content-area ul.cpx-trust-list.cpx-trust-list li:before { content: "\2713"; font-family: inherit; float: none; display: block; position: absolute; left: 0; top: 0; margin-left: 0; color: #2E7D5B; font-weight: 700; }

/* Areas we optimise: one full-width card per business function, with its links */
.cpx-why-cards.cpx-why-cards--stack { grid-template-columns: 1fr; }
.cpx-why-card .cpx-why-card__links { margin: 10px 0 0; }
.cpx-why-card .cpx-why-card__links li { font-size: 14px; line-height: 1.5; }
