.projects-grid.svelte-1y40rlj{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:1.5rem;margin-top:2rem;display:grid}.fun-intro.svelte-1y40rlj>p:where(.svelte-1y40rlj){color:var(--c-text-light);max-width:var(--measure);margin:0;font-size:1.05rem;line-height:1.75}.project-card.svelte-1y40rlj{border:1px solid var(--c-border);flex-direction:column;padding:1.3rem;font-weight:400;text-decoration:none;transition:transform .2s,background .2s,border-color .2s;display:flex}.project-card.svelte-1y40rlj:hover{background:var(--c-primary-light);border-color:var(--c-primary);text-decoration:none;transform:translateY(-2px)}.content.svelte-1y40rlj{flex-direction:column;flex:1;display:flex}.icon-wrapper.svelte-1y40rlj{color:var(--project-color);background:color-mix(in srgb, var(--project-color) 8%, transparent);border:1px solid color-mix(in srgb, var(--project-color) 45%, transparent);border-radius:0;justify-content:center;align-items:center;width:3.8rem;height:3.8rem;margin-bottom:1.25rem;display:flex}.project-icon-img.svelte-1y40rlj{object-fit:contain;width:75%;height:75%}.project-icon-emoji.svelte-1y40rlj{font-size:2rem;line-height:1}.content.svelte-1y40rlj h3:where(.svelte-1y40rlj){color:var(--c-primary);letter-spacing:.02em;margin:0 0 .8rem;font-size:1.2rem;line-height:1.25}.content.svelte-1y40rlj p:where(.svelte-1y40rlj){color:var(--c-text-light);margin-bottom:1.5rem;font-size:.95rem;line-height:1.5}.project-action.svelte-1y40rlj{border-top:1px dashed var(--c-border-dashed);color:var(--c-primary);text-transform:uppercase;justify-content:flex-start;align-items:center;gap:.5rem;margin-top:auto;padding-top:.8rem;font-size:.8rem;font-weight:800;display:flex}.project-action.svelte-1y40rlj svg{transition:transform .2s}.project-card.svelte-1y40rlj:hover .project-action:where(.svelte-1y40rlj) svg{transform:translate(4px)}.open-source-note.svelte-1y40rlj{border:1px dashed var(--c-border-dashed);grid-template-columns:3.6rem 1fr;align-items:center;gap:1.2rem;margin-top:1.5rem;padding:1rem 1.25rem;display:grid}.open-source-note.svelte-1y40rlj span:where(.svelte-1y40rlj){border:1px solid var(--c-border);width:3rem;height:3rem;color:var(--c-primary);place-items:center;font-weight:800;display:grid}.open-source-note.svelte-1y40rlj p:where(.svelte-1y40rlj){color:var(--c-text-light);margin:0;line-height:1.6}.open-source-note.svelte-1y40rlj a:where(.svelte-1y40rlj){color:var(--c-primary)}@media (width<=768px){.open-source-note.svelte-1y40rlj{grid-template-columns:1fr}}
