.bk-pillar { display: block; position: relative; }

.bk-pillar__link { display: flex; flex-direction: column; align-items: flex-start; gap: 1.25rem; padding: 2.25rem 2rem; background: #fff; border: 1px solid #e5e4dd; border-radius: 1rem; text-decoration: none; color: inherit; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03); transition: border-top-color 250ms cubic-bezier(0.22, 0.61, 0.36, 1), box-shadow 250ms cubic-bezier(0.22, 0.61, 0.36, 1), transform 250ms cubic-bezier(0.22, 0.61, 0.36, 1); height: 100%; }

.bk-pillar__link:hover, .bk-pillar__link:focus-visible { border-color: var(--color-primary-700); border-top-width: 4px; box-shadow: 0 12px 32px rgba(0, 0, 0, 0.08), 0 4px 8px rgba(0, 0, 0, 0.04); transform: translateY(-2px); outline: none; }

.bk-pillar__icon { display: inline-flex; align-items: center; justify-content: center; width: 4rem; height: 4rem; border-radius: 50%; background: color-mix(in srgb, var(--color-content-primary) 12%, transparent); color: var(--color-content-primary); transition: background-color 250ms cubic-bezier(0.22, 0.61, 0.36, 1), color 250ms cubic-bezier(0.22, 0.61, 0.36, 1); }
.bk-pillar__link:hover .bk-pillar__icon, .bk-pillar__link:focus-visible .bk-pillar__icon { background: var(--color-content-primary); color: #fff; }

.bk-pillar__title { margin: 0; color: var(--color-content-primary); }

.bk-pillar__body { color: var(--color-content-text); line-height: 1.65; }
.bk-pillar__body p:last-child { margin-bottom: 0; }

.bk-pillar__cta { margin-top: auto; display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem; padding: 0.85rem 1.5rem; background: var(--color-content-secondary); color: #fff; border-radius: 0.5rem; font-weight: 600; transition: background-color 250ms cubic-bezier(0.22, 0.61, 0.36, 1); align-self: stretch; }
.bk-pillar__cta-arrow { display: inline-block; transition: transform 250ms cubic-bezier(0.22, 0.61, 0.36, 1); }
.bk-pillar__link:hover .bk-pillar__cta { background: var(--color-accent-700); }
.bk-pillar__link:hover .bk-pillar__cta-arrow { transform: translateX(0.25em); }

.bk-pillar__link:focus-visible { outline: 2px solid var(--color-content-secondary); outline-offset: 3px; }

@media (prefers-reduced-motion: reduce) { .bk-pillar__link, .bk-pillar__icon, .bk-pillar__cta, .bk-pillar__cta-arrow { transition: none !important; } }

/* Compacter op kleinere viewports (cards kunnen in 3-koloms ouder-grid zitten) */
@media (max-width: 880px) {
	.bk-pillar__link { padding: 1.75rem 1.5rem; gap: 1rem; }
	.bk-pillar__icon { width: 3.25rem; height: 3.25rem; }
}
@media (max-width: 640px) {
	.bk-pillar__link { padding: 1.5rem 1.25rem; }
}