h1.svelte-1uo84gz{text-align:center;margin-bottom:.5rem}.intro.svelte-1uo84gz{text-align:center;color:#666;margin-bottom:3rem}.portfolio-grid.svelte-1uo84gz{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem}.portfolio-card.svelte-1uo84gz{border:1px solid #eee;border-radius:12px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;background:#fff;display:flex;flex-direction:column}.portfolio-card.svelte-1uo84gz:hover{transform:translateY(-5px);box-shadow:0 10px 20px #0000001a}.image-container.svelte-1uo84gz{width:100%;height:200px;overflow:hidden}.image-container.svelte-1uo84gz img:where(.svelte-1uo84gz){width:100%;height:100%;object-fit:cover}.content.svelte-1uo84gz{padding:1.5rem;flex-grow:1;display:flex;flex-direction:column}h2.svelte-1uo84gz{margin:0 0 .5rem;font-size:1.5rem}.date.svelte-1uo84gz{font-size:.9rem;color:#999;margin-bottom:1rem}.description.svelte-1uo84gz{font-size:1rem;line-height:1.5;margin-bottom:1.5rem;flex-grow:1}.tech-stack.svelte-1uo84gz{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.tag.svelte-1uo84gz{background:#f0f0f0;padding:.2rem .6rem;border-radius:4px;font-size:.8rem;color:#555}.project-link.svelte-1uo84gz{color:#ff3e00;text-decoration:none;font-weight:700;font-size:1rem}.project-link.svelte-1uo84gz:hover{text-decoration:underline}
