.list-header.svelte-3k41op{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:var(--margin-xs)}.list-header.svelte-3k41op h2:where(.svelte-3k41op){margin:0;color:var(--color-txt-heading);font-size:1.8em}.see-all-link.svelte-3k41op{color:var(--color-txt-accent);text-decoration:none;font-weight:700;white-space:nowrap}.see-all-link.svelte-3k41op:hover{text-decoration:underline}.project-grid.svelte-3k41op{display:grid;grid-template-columns:repeat(var(--column-count, 4),minmax(0,1fr));gap:calc(var(--margin-edge) / 2);justify-content:start}.project-grid.svelte-3k41op a:where(.svelte-3k41op){background-color:var(--color-bg-frame);border-radius:var(--radius-sm);box-shadow:0 4px 24px var(--color-bg-shadow);cursor:pointer;display:flex;flex-direction:column;height:720px;margin:0;text-decoration:none;position:relative;overflow:hidden;transition:height .3s ease-in-out,border-radius .3s ease-in-out}a.svelte-3k41op:hover{border-radius:var(--radius-lg);color:var(--color-txt-main)}.media-container.svelte-3k41op{flex-grow:1;overflow:hidden;background-color:var(--color-bg-frame);position:absolute;top:0;right:0;left:0;bottom:120px}.project-image-wrapper.svelte-3k41op,.project-video.svelte-3k41op{position:absolute;top:0;left:0;width:100%;height:100%;transition:opacity .3s ease-in-out}.project-image-wrapper.svelte-3k41op{opacity:1;z-index:1;display:flex;align-items:stretch;justify-content:stretch}.project-image{background-color:var(--color-bg-frame);display:block;width:100%;height:100%!important;object-fit:cover}.project-video.svelte-3k41op{opacity:0;z-index:2;object-fit:cover;display:block;content-visibility:auto;will-change:opacity}.text.svelte-3k41op{background:linear-gradient(transparent 0%,var(--color-bg-alt) 40%);display:block;margin-top:auto;padding:0 var(--margin-md) var(--margin-md) var(--margin-md);position:relative;z-index:3;width:100%;box-sizing:border-box;flex-shrink:0}h3.svelte-3k41op{color:var(--color-txt-accent);text-decoration:underline;margin-bottom:var(--margin-sm);font-size:1em}p.desc.svelte-3k41op{font-size:1.2em;line-height:1.33em;margin:0 0 var(--margin-md) 0}.lock-icon.svelte-3k41op{width:1em;height:1em}.tags.svelte-3k41op{display:flex;flex-wrap:wrap;gap:var(--margin-xs);margin-top:var(--margin-sm)}.tag-group.svelte-3k41op{align-items:baseline;display:flex;flex-wrap:wrap;gap:var(--margin-xs)}.tag.svelte-3k41op{font-size:.6em;line-height:1.6em;white-space:nowrap}.tag-primary.svelte-3k41op{background-color:var(--color-bg-main);padding:4px 8px 2px;border-radius:var(--radius-md)}.tag-secondary.svelte-3k41op{color:var(--color-txt-alt)}.filters.svelte-3k41op{margin-bottom:var(--margin-sm);display:flex;flex-wrap:wrap;gap:var(--margin-sm)}.filter-btn.svelte-3k41op{background:none;color:var(--color-txt-main);border:none;margin:0 16px 0 0;padding:0;border-radius:0;cursor:pointer;font-size:1em;transition:opacity .2s,translate .1s}.filter-btn.svelte-3k41op:hover{box-shadow:none;opacity:.8;transform:none;translate:0 -4px}.filter-btn.active.svelte-3k41op{opacity:.6}.filter-btn.active.svelte-3k41op:before{content:"✵";font-size:1.2em;margin-right:8px}.no-results.svelte-3k41op{margin-top:var(--margin-lg);padding:var(--margin-xl) 0}@media (max-width: 1800px){.project-grid.svelte-3k41op{grid-template-columns:repeat(min(var(--column-count, 4),3),minmax(0,1fr))}.media-container.svelte-3k41op{bottom:240px}}@media (max-width: 900px){.project-grid.svelte-3k41op{grid-template-columns:repeat(2,minmax(0,1fr))}.project-grid.svelte-3k41op a:where(.svelte-3k41op){height:560px}p.desc.svelte-3k41op{font-size:1.1em}}@media (max-width: 648px){.project-grid.svelte-3k41op{grid-template-columns:1fr}.project-grid.svelte-3k41op a:where(.svelte-3k41op){height:auto;min-height:560px}.media-container.svelte-3k41op{min-height:250px}.text.svelte-3k41op{padding:var(--margin-sm)}h3.svelte-3k41op{font-size:.9em;margin-bottom:var(--margin-xs)}p.desc.svelte-3k41op{font-size:1em;line-height:1.4;margin-bottom:var(--margin-sm)}.tag.svelte-3k41op{font-size:.7em}.filter-btn.svelte-3k41op{font-size:.8em}.list-header.svelte-3k41op{flex-direction:column;align-items:flex-start;gap:var(--margin-sm);padding-bottom:var(--margin-sm);margin-bottom:var(--margin-md)}.list-header.svelte-3k41op h2:where(.svelte-3k41op){font-size:1.5em}}
