 :root {
  --cp-primary_100: #23b9a4;
  --cp-primary_90: #38c0ad;
  --cp-primary_80: #4ec7b6;
  --cp-primary_70: #65cebf;
  --cp-primary_60: #7bd5c8;
  --cp-primary_50: #92dcdc;
  --cp-primary_40: #a7e3da;
  --cp-primary_30: #bdeae3;
  --cp-primary_20: #d3f1ec;
  --cp-primary_10: #e9f8f5;
  --cp-white: #ffffff;
	--cp-secondary_100: #117c9d;
  --cp-secondary_90: #2889a6;
  --cp-secondary_80: #4096b0;
  --cp-secondary_70: #58abba;
  --cp-secondary_60: #70b0c4;
  --cp-secondary_50: #88bdce;
  --cp-secondary_40: #9fcad7;
  --cp-secondary_30: #b7d7e1;
  --cp-secondary_20: #cfe4eb;
  --cp-secondary_10: #e7f1f5;
 }

.cp-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
	margin: 1.5rem 0;
}

.cp-card {
	/* display: grid;
	grid-template-columns: minmax(0, 110px) minmax(0, 1fr); */
	gap: 15px;
	padding: 15px;
	color: #ffffff;
	align-items: start;
	min-height: 100%;
	box-sizing: border-box;
}

.cp-card--primary {
	background: var(--cp-primary_100);
}

.cp-card--secondary {
	background: var(--cp-primary_80);
}

.cp-grid .cp-card a,
.widget .cp-grid .cp-card--primary a,
.widget .cp-grid .cp-card--secondary a {
	color: var(--cp-white);
	text-decoration: none;
}

.cp-grid .cp-card a:hover,
.cp-grid .cp-card a:focus {
	text-decoration: underline;
}

.cp-card__media {
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background: rgba(255, 255, 255, 0.12);
}

.cp-card__media-link,
.cp-card__image {
	display: block;
	width: 100%;
	height: 100%;
}

.cp-card__image {
	object-fit: cover;
}

.cp-card__content {
	min-width: 0;
}

.cp-grid .cp-card__title {
	margin: 0 0 0.75rem;
	color: var(--cp-white);
	font-size: 1.15rem;
	line-height: 1.3;
}

.cp-grid .cp-card__excerpt {
	color: var(--cp-white);
	font-size: 0.95rem;
	line-height: 1.6;
}

.cp-card__excerpt p:last-child {
	margin-bottom: 0;
}

.cp-grid .cp-card__cta {
	display: inline-block;
	margin-top: 0.85rem;
	color: var(--cp-white);
	font-size: 0.9rem;
	font-style: italic;
	text-decoration: none;
	border-bottom: 1px solid rgba(255,255,255,0.5);
	padding-bottom: 1px;
	transition: border-color 0.15s;
}

.cp-grid .cp-card__cta:hover,
.cp-grid .cp-card__cta:focus {
	border-bottom-color: var(--cp-white);
	text-decoration: none;
}

@media (min-width: 1025px) {
	.cp-grid[data-child-pages-count="1"],
	.cp-grid[data-child-pages-count="2"] {
		grid-template-columns: repeat(auto-fit, calc((100% - 40px) / 3));
		justify-content: center;
	}
}

@media (max-width: 1024px) {
	.cp-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.cp-grid {
		grid-template-columns: 1fr;
	}

	.cp-card {
		grid-template-columns: 90px minmax(0, 1fr);
	}
}