.nova-reference-card {
	display: grid;
	padding: max(1rem, calc(1 * var(--su)));
	background-color: var(--neutral-50);
	color: var(--primary-100);
	text-decoration: none;
}

.nova-reference-card .top {
	display: flex;
	justify-content: space-between;
}

.nova-reference-card .label {
	display: flex;
	align-items: center;
	gap: max(.25rem, calc(.25 * var(--su)));
}

.nova-reference-card .label .icon {
	display: block;
	height: 1em;
	aspect-ratio: 1;
	flex-shrink: 0;
	background-color: currentColor;
	mask: var(--mask-url) center / contain no-repeat;
}

.nova-reference-card .arrow {
	position: relative;
	flex-shrink: 0;
	width: max(2rem, calc(2 * var(--su)));
	height: auto;
	aspect-ratio: 1;
	border-radius: 50%;
	outline: 2px solid var(--primary-20);
	outline-offset: -2px;
	transition: all 300ms ease;
}

.nova-reference-card .arrow::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	background-color: currentColor;
	mask: var(--icon-arrow-long) center / 50% no-repeat;
}

.nova-reference-card hr {
	display: block;
	margin-block: max(.75rem, calc(.75 * var(--su)));
	margin-inline: 0 auto;
	width: 50%;
	height: 1px;
	border: 0;
	background: linear-gradient(90deg, color-mix(in srgb, var(--primary-100) 50%, transparent) 0%, transparent 100%);
}

.nova-reference-card .text {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
	font-size: var(--body-xs-regular);
}
