.intentions {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px;
}
.intentions--cols-3 { grid-template-columns: repeat(3, 1fr); }
.intentions--cols-2 { grid-template-columns: repeat(2, 1fr); }

.intention {
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding: 28px 24px 24px;
	text-align: left;
	text-decoration: none;
	border: 1px solid var(--color-content-border, #E8DFD3);
	background: var(--color-content-bg, #FAF6F0);
	border-radius: 14px;
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.intention::before {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: radial-gradient(circle at 100% 0%, currentColor 0%, transparent 60%);
	opacity: .06;
	transition: opacity .25s ease;
}
.intention:hover {
	transform: translateY(-2px);
	border-color: currentColor;
	box-shadow: 0 20px 48px -24px currentColor;
}
.intention:hover::before { opacity: .12; }
.intention:hover .intention__arrow { transform: translateX(3px); }

.intention__icon {
	width: 44px; height: 44px;
	border-radius: 50%;
	background: currentColor;
	display: inline-flex; align-items: center; justify-content: center;
	filter: brightness(1.05);
}
.intention__icon i { color: #FAF6F0; font-size: 18px; line-height: 1; }

.intention__body { display: flex; flex-direction: column; gap: 6px; }
.intention__name {
	font-family: 'Cormorant Garamond', serif;
	font-size: 28px; line-height: 1; letter-spacing: -.01em;
	color: #2A1F40;
}
.intention__desc {
	font-size: 13px; line-height: 1.5;
	color: #6E6878;
}

.intention__meta {
	margin-top: auto;
	display: flex; align-items: center; justify-content: space-between;
	font-size: 11px; letter-spacing: .14em; text-transform: uppercase; font-weight: 600;
	color: currentColor;
}
.intention__arrow {
	width: 24px; height: 24px;
	border-radius: 50%;
	background: currentColor;
	display: inline-flex; align-items: center; justify-content: center;
	transition: transform .2s ease;
}
.intention__arrow i { color: #FAF6F0; font-size: 11px; }

@media (max-width: 1024px) { .intentions { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px)  { .intentions { grid-template-columns: 1fr; } }