.lightbox.svelte-o5s1aq{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:clamp(1rem,4vw,2.5rem);background:#000000e0;animation:svelte-o5s1aq-fade-in .18s ease}.lightbox__backdrop.svelte-o5s1aq{position:absolute;inset:0;width:100%;height:100%;padding:0;margin:0;background:transparent;border:0;cursor:pointer}.lightbox__figure.svelte-o5s1aq{position:relative;z-index:1;margin:0;display:flex;flex-direction:column;align-items:center;gap:.75rem;max-width:min(92vw,1400px);max-height:88vh;pointer-events:none}.lightbox__image.svelte-o5s1aq{display:block;max-width:100%;max-height:82vh;-o-object-fit:contain;object-fit:contain;border-radius:.9rem;border:1px solid rgb(255 255 255 / .08);background:#0b0b0b}.lightbox__caption.svelte-o5s1aq{margin:0;max-width:72ch;font-size:.82rem;line-height:1.5;text-align:center;color:#ffffffb8;pointer-events:auto}.lightbox__close.svelte-o5s1aq,.lightbox__nav.svelte-o5s1aq{position:absolute;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;background:#ffffff0f;border:1px solid rgb(255 255 255 / .18);border-radius:999px;color:#ffffffe0;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .18s ease,background-color .18s ease,border-color .18s ease}.lightbox__close.svelte-o5s1aq{top:1rem;right:1rem}.lightbox__nav--prev.svelte-o5s1aq{top:50%;left:clamp(.5rem,2vw,1.5rem);transform:translateY(-50%)}.lightbox__nav--next.svelte-o5s1aq{top:50%;right:clamp(.5rem,2vw,1.5rem);transform:translateY(-50%)}.lightbox__close.svelte-o5s1aq:hover,.lightbox__close.svelte-o5s1aq:focus-visible,.lightbox__nav.svelte-o5s1aq:hover,.lightbox__nav.svelte-o5s1aq:focus-visible{background:#ffffff1f;border-color:color-mix(in oklab,var(--accent) 50%,rgb(255 255 255 / .24));color:#fff;outline:none}.lightbox__nav--prev.svelte-o5s1aq:hover,.lightbox__nav--prev.svelte-o5s1aq:focus-visible{transform:translateY(-50%) translate(-2px)}.lightbox__nav--next.svelte-o5s1aq:hover,.lightbox__nav--next.svelte-o5s1aq:focus-visible{transform:translateY(-50%) translate(2px)}.lightbox__counter.svelte-o5s1aq{position:absolute;z-index:2;bottom:1rem;left:50%;transform:translate(-50%);margin:0;font-size:.67rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#fff9}@keyframes svelte-o5s1aq-fade-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.lightbox.svelte-o5s1aq{animation:none}.lightbox__close.svelte-o5s1aq,.lightbox__nav.svelte-o5s1aq{transition:none}.lightbox__nav--prev.svelte-o5s1aq:hover,.lightbox__nav--prev.svelte-o5s1aq:focus-visible,.lightbox__nav--next.svelte-o5s1aq:hover,.lightbox__nav--next.svelte-o5s1aq:focus-visible{transform:translateY(-50%)}}.gallery.svelte-1wefy3n{list-style:none;margin:0;padding:0;display:grid;gap:.95rem;grid-template-columns:minmax(0,1fr)}.gallery__item.svelte-1wefy3n{margin:0}.gallery__tile.svelte-1wefy3n{display:block;width:100%;padding:0;background:transparent;border:1px solid color-mix(in oklab,var(--border) 78%,#ffffff 22%);border-radius:.9rem;overflow:hidden;cursor:pointer;aspect-ratio:16 / 9;position:relative;transition:transform .18s ease,border-color .18s ease,filter .22s ease,box-shadow .18s ease}.gallery__tile.svelte-1wefy3n:hover,.gallery__tile.svelte-1wefy3n:focus-visible{transform:translateY(-2px);border-color:color-mix(in oklab,var(--accent) 44%,var(--border));filter:saturate(1.08);box-shadow:0 20px 40px #0000002e;outline:none}.gallery__image.svelte-1wefy3n{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .26s ease}.gallery__tile.svelte-1wefy3n:hover .gallery__image:where(.svelte-1wefy3n),.gallery__tile.svelte-1wefy3n:focus-visible .gallery__image:where(.svelte-1wefy3n){transform:scale(1.04)}@media(min-width:760px){.gallery.svelte-1wefy3n{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){.gallery__tile.svelte-1wefy3n,.gallery__image.svelte-1wefy3n{transition:none}.gallery__tile.svelte-1wefy3n:hover,.gallery__tile.svelte-1wefy3n:focus-visible,.gallery__tile.svelte-1wefy3n:hover .gallery__image:where(.svelte-1wefy3n),.gallery__tile.svelte-1wefy3n:focus-visible .gallery__image:where(.svelte-1wefy3n){transform:none;filter:none}}.project-detail.svelte-z2c1ev{min-height:100dvh;padding:clamp(4.4rem,6vw,5.8rem) 1.2rem 2.8rem}.project-detail__inner.svelte-z2c1ev{margin:0 auto;max-width:72rem;display:grid;gap:2rem}.project-detail__back.svelte-z2c1ev{width:-moz-fit-content;width:fit-content;font-size:.84rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:color-mix(in oklab,var(--accent) 74%,var(--muted));text-decoration:none;transition:color .18s ease}.project-detail__back.svelte-z2c1ev:hover,.project-detail__back.svelte-z2c1ev:focus-visible{color:var(--accent);outline:none}.project-detail__header.svelte-z2c1ev{display:grid;gap:.9rem;max-width:52rem}.project-detail__eyebrow.svelte-z2c1ev{margin:0;font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in oklab,var(--accent) 66%,var(--muted))}.project-detail__title.svelte-z2c1ev{margin:0;font-size:clamp(2.1rem,6vw,4.4rem);font-weight:700;line-height:1.04;letter-spacing:-.03em;color:var(--text)}.project-detail__meta.svelte-z2c1ev{margin:0;font-size:.72rem;font-weight:600;letter-spacing:.11em;text-transform:uppercase;color:color-mix(in oklab,var(--accent) 64%,var(--muted))}.project-detail__summary.svelte-z2c1ev{margin:0;font-size:1.02rem;line-height:1.65;color:color-mix(in oklab,var(--muted) 88%,var(--text) 12%)}.project-detail__tags.svelte-z2c1ev{margin:.3rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.45rem;list-style:none}.project-detail__tags.svelte-z2c1ev li:where(.svelte-z2c1ev){border:1px solid color-mix(in oklab,var(--border) 78%,#ffffff 22%);border-radius:.55rem;background:color-mix(in oklab,var(--surface-alt) 90%,#ffffff 10%);padding:.2rem .45rem;font-size:.72rem;color:color-mix(in oklab,var(--muted) 85%,#ffffff 15%)}.project-detail__actions.svelte-z2c1ev{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.project-detail__gallery.svelte-z2c1ev{display:grid;gap:1rem}.project-detail__section-heading.svelte-z2c1ev{margin:0;font-size:.67rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
