/* PEIBWA program cards (Lake block). Card visuals — image radius/aspect,
   arrow-circle overlay, lavender body, purple headings — reuse the class-based
   .peibwa-program-card* rules in the theme's main.css. This file adds the
   header row, the grid, the body padding + CTA typography (inline styles in
   the Gutenberg pattern), and the whole-card stretched link. */

.lake-root .b-program-cards .head-row {
	margin-bottom: 2.5rem;
}

.lake-root .b-program-cards .head-row.two-col {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2rem;
	align-items: center;
}

.lake-root .b-program-cards .head-row .s-head {
	margin: 0;
}

.lake-root .b-program-cards .head-row .intro {
	font-size: 1.125rem;
	line-height: 1.65;
}

.lake-root .b-program-cards .cards {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2rem;
}

/* Positioning context for the stretched CTA link. */
.lake-root .b-program-cards .peibwa-program-card {
	position: relative;
}

/* Body padding was inline in the Gutenberg pattern. */
.lake-root .b-program-cards .peibwa-program-card__body {
	padding: 2rem;
	flex: 1 1 auto;
	border-radius: 12px;
}

.lake-root .b-program-cards .peibwa-program-card__body h3 {
	font-size: 1.75rem;
}

.lake-root .b-program-cards .peibwa-program-card__body .body {
	margin: 1rem 0 1.5rem;
	color: var(--color-gray-800, #1f2937);
	line-height: 1.55;
}

/* CTA typography (inline in the pattern); color comes from main.css. */
.lake-root .b-program-cards .peibwa-program-card__cta {
	margin: 0;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

/* Whole card is clickable via the CTA anchor (arrow itself uses ::after). */
.lake-root .b-program-cards .peibwa-program-card__cta a::before {
	content: "";
	position: absolute;
	inset: 0;
}

/* No link on this card: hide the arrow-circle image overlay (main.css keys
   this off .peibwa-program-cards.no-link, which we don't emit). */
.lake-root .b-program-cards .peibwa-program-card.no-link .peibwa-program-card__image::after {
	display: none;
}

/* Footnote — uppercase purple arrow-link line under the grid. The richtext
   field can't add the .peibwa-arrow-link class, so the arrow mask from
   main.css is replicated here on the anchor. */
.lake-root .b-program-cards .footnote {
	margin-top: 2.5rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

.lake-root .b-program-cards .footnote a {
	color: var(--color-secondary, #6F5EAE);
	text-decoration: none;
}

.lake-root .b-program-cards .footnote a:hover {
	color: var(--color-secondary-dark, #34285f);
}

.lake-root .b-program-cards .footnote a::after {
	content: "";
	display: inline-block;
	width: 1.8em;
	height: 1em;
	margin-left: 0.6em;
	vertical-align: -0.1em;
	background-color: currentColor;
	-webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 18'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M24.9529 9.20515H0V8.23015H24.9529L21.5865 4.8374L22.2705 4.14795L26.8048 8.71771L22.2705 13.2874L21.5865 12.598L24.9529 9.20515Z' fill='black'/%3E%3C/svg%3E");
	        mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 18'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M24.9529 9.20515H0V8.23015H24.9529L21.5865 4.8374L22.2705 4.14795L26.8048 8.71771L22.2705 13.2874L21.5865 12.598L24.9529 9.20515Z' fill='black'/%3E%3C/svg%3E");
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-position: center;
	        mask-position: center;
	-webkit-mask-size: contain;
	        mask-size: contain;
	transition: transform 0.2s ease;
}

.lake-root .b-program-cards .footnote a:hover::after {
	transform: translateX(3px);
}

@media (max-width: 900px) {
	.lake-root .b-program-cards .cards {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}

	.lake-root .b-program-cards .head-row.two-col {
		grid-template-columns: 1fr;
		gap: 1rem;
	}
}
