.funnel-flow {
	display: -ms-grid;
	display: grid;
	max-width: var(--ccp-bs-container);
	-ms-grid-columns: 1fr;
	grid-template-columns: 1fr;
	row-gap: 4rem;
	margin: 2rem auto 4rem;
	min-height: 300px;
}

.funnel-flow__block {
	display: -ms-grid;
	display: grid;
	grid: [r-start] "float float detail" auto ". underline underline" auto [r-end]/[c-start] 0.3fr 0.1fr 1fr [c-end];
}

.funnel-flow__block:nth-of-type(1) {
	--funnel-color: #2a3c6d;
}

.funnel-flow__block:nth-of-type(2) {
	--funnel-color: #29829d;
}

.funnel-flow__block:nth-of-type(3) {
	--funnel-color: #4a7285;
}

.funnel-flow__block:nth-of-type(4) {
	--funnel-color: #256183;
}

.funnel-flow__block:nth-of-type(4) .funnel-flow__block__float {
	display: flex;
	flex-direction: column;
}

.funnel-flow__block:nth-of-type(4) .funnel-flow__block__float > p {
	order: 3;
	margin-top: 1rem;
}

.funnel-flow__block__float {
	grid-area: float;
}

.funnel-flow__block__float .picture--arrow-group img {
	display: block;
	margin: 0 auto 1rem;
	max-width: 75%;
}

.funnel-flow__block__float .picture--funnels img {
	display: block;
	margin: auto;
}

.picture--funnels--manager-selection--a img {
	width: 80%;
}

.picture--funnels--manager-selection--b img {
	width: 60%;
}

.picture--funnels--manager-selection--c img {
	width: 40%;
}

.picture--funnels--manager-selection--d img {
	width: 25%;
}

.funnel-flow__block__float .picture--arrow img {
	display: block;
	margin: 1rem auto;
	width: clamp(20px, 7vw, 50px);
}

.funnel-flow__block__float__graphic {
	display: -ms-grid;
	display: grid;
	grid: [r-start] auto [r-connection-start] auto [r-connection-end] auto [r-end]/[c-start] 1fr [c-connection-start] auto 1fr [c-connection-end c-end];
	    grid-template-areas: 'f f f' 'f f f' 'f f f';
}

.funnel-flow__block__float__graphic .picture--funnels {
	-ms-grid-row: 1;
	-ms-grid-row-span: 3;
	-ms-grid-column: 1;
	-ms-grid-column-span: 3;
	grid-area: f;
	position: relative;
	z-index: 1;
}

.funnel-flow__block__float__graphic .picture--connection-line {
	z-index: 0;
	grid-row: r-connection-start / r-connection-end;
	grid-column: c-connection-start / c-connection-end;
}

@media (max-width: 575.98px) {
	.funnel-flow__block__float__graphic .picture--connection-line {
		display: none;
	}
}

.funnel-flow__block__detail {
	grid-area: detail;
	-ms-grid-row-align: end;
	    align-self: end;
	padding-left: 1.5rem;
}

.funnel-flow__block__detail h4 {
	color: var(--funnel-color);
}

.funnel-flow__block__underline {
	grid-area: underline;
	border-bottom: 1px solid var(--bs-gray-400);
	margin: 1rem 0;
}
