.x1o1q4zi0ky4tfe{
		display: flex;
		flex-direction: column;
		gap: 1.25rem;
		margin: 0;
		padding: 0;
		list-style: none;
	}.x1o1q4zi0ky4tfe .project-link{
		position: relative;
		isolation: isolate;
		display: flex;
		align-items: flex-start;
		gap: 0.875rem;
		color: inherit;
		text-decoration: none;
		transform: translate3d(0, 0, 0);
		transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1);
	}.x1o1q4zi0ky4tfe .project-link::before{
		content: "";
		position: absolute;
		inset: calc(0.5rem * -1) calc(0.75rem * -1);
		z-index: -1;
		border-radius: 12px;
		background: var(--colour-surface);
		opacity: 0;
		transform: scale(0.94);
		transition: opacity 0.32s cubic-bezier(0.16, 1, 0.3, 1), transform 0.32s cubic-bezier(0.16, 1, 0.3, 1);
	}.x1o1q4zi0ky4tfe .project-link:hover::before,.x1o1q4zi0ky4tfe .project-link:focus-visible::before{
		opacity: 1;
		transform: none;
	}.x1o1q4zi0ky4tfe .project-link:focus-visible{
		outline: none;
	}.x1o1q4zi0ky4tfe .project-link:focus-visible::before{
		outline: 2px solid var(--colour-accent);
		outline-offset: 2px;
	}.x1o1q4zi0ky4tfe .project-mark{
		display: flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
		width: 1.75rem;
		height: 1.75rem;
		margin-top: 1px;
		border-radius: 6px;
		background: color-mix(in srgb, var(--mark-colour, var(--colour-text-muted)) 16%, transparent);
		color: var(--mark-colour, var(--colour-text-muted));
		font-family: "Iosevka", "Iosevka Custom Web", "Iosevka Custom", ui-monospace, monospace;
		font-size: 0.8125rem;
		font-weight: 600;
		text-transform: uppercase;
		user-select: none;
	}.x1o1q4zi0ky4tfe .project-text{
		display: flex;
		flex-direction: column;
		min-width: 0;
	}.x1o1q4zi0ky4tfe .project-name{
		display: inline-flex;
		align-items: center;
		gap: 0.25rem;
		margin: 0;
		font-size: 1rem;
		font-weight: 500;
		line-height: 1.4;
		color: var(--colour-text);
	}.x1o1q4zi0ky4tfe .project-arrow{
		width: 12px;
		height: 12px;
		flex-shrink: 0;
		opacity: 0.5;
		transform: translate3d(0, 0, 0);
		transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.32s cubic-bezier(0.16, 1, 0.3, 1);
		will-change: transform;
	}.x1o1q4zi0ky4tfe .project-link:hover .project-arrow,.x1o1q4zi0ky4tfe .project-link:focus-visible .project-arrow{
		opacity: 1;
		transform: translate3d(1px, -1px, 0);
	}.x1o1q4zi0ky4tfe .project-description{
		margin: 0;
		font-size: 0.875rem;
		line-height: 1.5;
		color: var(--colour-subtext);
	}@media (prefers-reduced-motion: reduce){.x1o1q4zi0ky4tfe .project-link::before,.x1o1q4zi0ky4tfe .project-arrow{
			transition: opacity 0.15s cubic-bezier(0.4, 0, 0.2, 1);
			transform: none !important;
		}}