main.svelte-rqn88j{place-items:stretch stretch;gap:var(--size-6);max-inline-size:1320px;padding:var(--size-5);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-inline:auto;display:grid}@media (width>=1200px){main.svelte-rqn88j{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1200px){main.svelte-rqn88j{gap:var(--size-5);max-inline-size:980px}}@media (width<=1024px){main.svelte-rqn88j{max-inline-size:920px}.card.svelte-rqn88j{height:520px}}@media (width<=860px){main.svelte-rqn88j{gap:var(--size-5);padding:var(--size-4)}}@media (width<=640px){main.svelte-rqn88j{padding:var(--size-4);grid-template-columns:1fr;justify-items:stretch}.card.svelte-rqn88j{height:auto}}.card.svelte-rqn88j{background:var(--surface-1);border:1px solid color-mix(in oklab, var(--surface-2) 70%, var(--text-2) 30%);border-radius:var(--radius-3);box-shadow:0 12px 30px color-mix(in oklab, var(--surface-1) 65%, black 15%);flex-direction:column;gap:0;width:100%;max-width:100%;height:540px;padding:0;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex}.card.svelte-rqn88j:hover{box-shadow:0 18px 40px color-mix(in oklab, var(--surface-1) 60%, black 22%);border-color:color-mix(in oklab, var(--text-1) 35%, var(--surface-2) 65%);transform:translateY(-3px)}.project-image-wrapper.svelte-rqn88j{cursor:pointer;border-radius:var(--radius-3) var(--radius-3) 0 0;background:var(--surface-2);flex:0 0 52%;transition:transform .2s;overflow:hidden}.project-image-wrapper.svelte-rqn88j:hover{transform:scale(1.02)}.project-image-wrapper.svelte-rqn88j:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}.project-image{width:100%}.project-image img{object-fit:cover;border-radius:var(--radius-3) var(--radius-3) 0 0;width:100%;height:100%}.project-image-error.svelte-rqn88j{background:var(--surface-2);height:100%;color:var(--text-2);border-radius:var(--radius-3) var(--radius-3) 0 0;text-transform:uppercase;letter-spacing:.08em;justify-content:center;align-items:center;display:flex}.cardText.svelte-rqn88j{gap:var(--size-2);padding:var(--size-4);flex-direction:column;flex:1;align-items:flex-start;display:flex}.cardText.svelte-rqn88j h5:where(.svelte-rqn88j){font-size:var(--font-size-4);letter-spacing:-.02em;margin:0}.cardText.svelte-rqn88j p:where(.svelte-rqn88j){color:var(--text-2);line-height:var(--font-lineheight-2);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.card-tags.svelte-rqn88j{gap:var(--size-2);flex-wrap:wrap;display:flex}.card-tag.svelte-rqn88j{border:1px solid color-mix(in oklab, var(--surface-2) 70%, var(--text-2) 30%);background:color-mix(in oklab, var(--surface-1) 80%, var(--surface-2) 20%);min-inline-size:6rem;color:var(--text-2);font-size:var(--font-size-0);letter-spacing:.02em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;padding:.35rem .6rem;font-weight:600;display:inline-flex}.card-link.svelte-rqn88j{border:1px solid color-mix(in oklab, var(--surface-2) 70%, var(--text-2) 30%);color:var(--text-1);background:0 0;border-radius:999px;margin-top:auto;padding:.45rem .9rem;font-weight:600;text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s}.card-link.svelte-rqn88j:hover{border-color:color-mix(in oklab, var(--text-1) 55%, var(--surface-2) 45%);box-shadow:0 8px 18px color-mix(in oklab, var(--surface-1) 60%, black 16%);transform:translateY(-1px)}
