.cta-cards-image-overlap {padding:4em 0;background:#f7f7f7;}
.cta-cards-image-overlap__intro {max-width:52em;margin:0 auto 2.5em auto;text-align:center;}
.cta-cards-image-overlap__text {margin:1em auto 0 auto;max-width:44em;}
.cta-cards-image-overlap__text p {margin:.75em 0 0 0;font-size:1em;line-height:1.6;}
.cta-cards-image-overlap__grid {display:grid;grid-template-columns:repeat(3, 1fr);gap:2em;}
.cta-cards-image-overlap__item {position:relative;display:flex;flex-direction:column;align-items:center;}
.cta-cards-image-overlap__image-wrap {width:100%;aspect-ratio:1 / .95;border-radius:1.5em;overflow:hidden;background:#ddd;}
.cta-cards-image-overlap__image {display:block;width:100%;height:100%;object-fit:cover;}
.cta-cards-image-overlap__card {position:relative;width:82%;margin:-4em auto 0 auto;padding:3em 2em 2.5em 2em;background:#fff;border-radius:1.5em;text-align:center;box-shadow:0 1em 2em rgba(0,0,0,.08);}
.cta-cards-image-overlap__icon {display:flex;align-items:center;justify-content:center;width:4em;height:4em;margin:0 auto 2em auto;color:var(--primary-color);}
.cta-cards-image-overlap__icon-img {display:block;width:100%;height:100%;object-fit:contain;}
.cta-cards-image-overlap__card-heading {margin:0;font-size:1.15em;line-height:1.3;color:#000;}
.cta-cards-image-overlap__card-heading a {color:inherit;text-decoration:underline;text-underline-offset:.2em;}
.cta-cards-image-overlap__card-heading a:hover,.cta-cards-image-overlap__card-heading a:focus {color:var(--primary-color);}
.cta-cards-image-overlap__card-text {margin:1.25em auto 0 auto;}
.cta-cards-image-overlap__card-text p {margin:.75em 0 0 0;font-size:.95em;line-height:1.55;}
.cta-cards-image-overlap__card-text p:first-child {margin-top:0;}

@media (max-width:1024px) {
	.cta-cards-image-overlap {padding:3.5em 0;}
	.cta-cards-image-overlap__grid {grid-template-columns:repeat(2, 1fr);}
}

@media (max-width:768px) {
	.cta-cards-image-overlap {padding:3em 0;}
	.cta-cards-image-overlap__intro {margin-bottom:2em;text-align:left;}
	.cta-cards-image-overlap__grid {grid-template-columns:1fr;gap:2.5em;}
	.cta-cards-image-overlap__card {width:88%;padding:2.5em 1.5em 2em 1.5em;}
}