.project.svelte-oviq8z{flex-direction:column;gap:14px;display:flex;position:relative}.frame.svelte-oviq8z{aspect-ratio:4/5;transition:transform .4s var(--ease-site)}.project.svelte-oviq8z:hover .frame:where(.svelte-oviq8z){transform:translateY(-3px)}.place.svelte-oviq8z{font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;color:var(--color-ink-soft);font-weight:500;line-height:1.4}.title.svelte-oviq8z{font-size:1.25rem;font-weight:500;line-height:1.25}.title.svelte-oviq8z a:where(.svelte-oviq8z){color:var(--color-ink);text-decoration:none}.title.svelte-oviq8z a:where(.svelte-oviq8z):after{content:"";position:absolute;inset:0}.project.svelte-oviq8z:hover .title:where(.svelte-oviq8z) a:where(.svelte-oviq8z){text-decoration:underline;-webkit-text-decoration-color:var(--color-rot);text-decoration-color:var(--color-rot);text-decoration-thickness:1px}.title.svelte-oviq8z a:where(.svelte-oviq8z):focus-visible{outline:none}.project.svelte-oviq8z:has(.title:where(.svelte-oviq8z) a:where(.svelte-oviq8z):focus-visible){outline:2px solid var(--focus);outline-offset:6px;border-radius:2px}p.svelte-oviq8z{color:var(--color-ink-soft);font-size:.9375rem;line-height:1.55}.tone-tag.svelte-oviq8z{margin-top:2px}@media (width<=639px){.project.svelte-oviq8z{gap:10px}.frame.svelte-oviq8z{padding:6px}.place.svelte-oviq8z{font-size:.6875rem}.title.svelte-oviq8z{font-size:1.0625rem}p.svelte-oviq8z{display:none}}@media (prefers-reduced-motion:reduce){.project.svelte-oviq8z:hover .frame:where(.svelte-oviq8z){transform:none}}.project-grid.svelte-1cxunpt{--gap-x:16px;--n:2;grid-template-columns:repeat(var(--n), minmax(0, 1fr));gap:clamp(28px, 4vw, 48px) var(--gap-x);display:grid;container-type:inline-size}@media (width>=640px){.project-grid.svelte-1cxunpt{--gap-x:clamp(24px, 3vw, 40px)}}@media (width>=960px){.project-grid.svelte-1cxunpt{--n:var(--cols)}}.project-grid.svelte-1cxunpt>*{min-width:0}.lead-sm.svelte-1cxunpt>:first-child{grid-column:span 2}.lead-sm.svelte-1cxunpt>:first-child .frame{aspect-ratio:auto;height:calc((100cqw - var(--gap-x)) / 2 * 1.25)}@media (width>=960px){.lead-sm.svelte-1cxunpt>:first-child{grid-column:auto}.lead-sm.svelte-1cxunpt>:first-child .frame{aspect-ratio:4/5;height:auto}.lead-lg.svelte-1cxunpt>:first-child{grid-column:span 2}.lead-lg.svelte-1cxunpt>:first-child .frame{aspect-ratio:auto;height:calc((100cqw - (var(--n) - 1) * var(--gap-x)) / var(--n) * 1.25)}}
