.prow[data-astro-cid-rkjhwyvo]{margin-bottom:2.5rem}.prow__head[data-astro-cid-rkjhwyvo]{display:block;max-width:32rem;margin-bottom:.5rem}.prow__title[data-astro-cid-rkjhwyvo]{font-size:1rem;font-weight:400;letter-spacing:0;color:var(--color-ink);transform:translateY(-50%);transition:opacity .2s var(--ease-quiet)}.prow__head[data-astro-cid-rkjhwyvo]:hover .prow__title[data-astro-cid-rkjhwyvo]{opacity:.4}.prow__desc[data-astro-cid-rkjhwyvo]{font-size:.75rem;line-height:1.35;color:var(--color-ink);margin-top:.5rem;max-width:10rem;min-height:calc(3 * 1.35em);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}.prow__grid[data-astro-cid-rkjhwyvo]{display:flex;gap:.625rem;align-items:flex-start}.prow__cell[data-astro-cid-rkjhwyvo]{position:relative;overflow:hidden;background:var(--color-line)}@media(max-width:1023px){.prow[data-astro-cid-rkjhwyvo]{position:relative;height:100svh;margin-bottom:0;scroll-snap-align:start}.prow__grid[data-astro-cid-rkjhwyvo]{position:absolute;inset:0;display:block;gap:0}.prow__cell[data-astro-cid-rkjhwyvo]{position:absolute;inset:0;aspect-ratio:auto}.prow__cell[data-astro-cid-rkjhwyvo]:nth-child(n+2){display:none}.prow__cell[data-astro-cid-rkjhwyvo]:first-child,.prow__cell[data-astro-cid-rkjhwyvo]:first-child .pic,.prow__cell[data-astro-cid-rkjhwyvo]:first-child .pic__img{width:100%;height:100%;object-fit:cover}.prow__head[data-astro-cid-rkjhwyvo]{position:fixed;z-index:6;right:var(--spacing-gutter);top:50%;transform:translateY(-50%);max-width:60vw;margin:0;text-align:right;opacity:0;pointer-events:none;transition:opacity .4s var(--ease-out-expo);mix-blend-mode:difference}.prow[data-astro-cid-rkjhwyvo].is-active .prow__head[data-astro-cid-rkjhwyvo]{opacity:1;pointer-events:auto}.prow[data-astro-cid-rkjhwyvo].is-active .prow__title[data-astro-cid-rkjhwyvo]{view-transition-name:project-title}.prow__title[data-astro-cid-rkjhwyvo]{transform:none;color:#fff}.prow__head[data-astro-cid-rkjhwyvo]:hover .prow__title[data-astro-cid-rkjhwyvo]{opacity:1}.prow__desc[data-astro-cid-rkjhwyvo]{display:none}}.portfolio[data-astro-cid-j7pv25f6]{padding-top:calc(50vh - .8rem)}.portfolio[data-astro-cid-j7pv25f6][data-zoom="1"] .prow__cell:nth-child(n+2){display:none}.portfolio[data-astro-cid-j7pv25f6][data-zoom="2"] .prow__cell:nth-child(n+4){display:none}.portfolio[data-astro-cid-j7pv25f6][data-zoom="3"] .prow__cell:nth-child(n+6){display:none}.grid-counter[data-astro-cid-j7pv25f6]{position:fixed;right:var(--spacing-gutter);top:50%;transform:translateY(-50%);z-index:5;font-size:1rem;font-weight:400;font-variant-numeric:tabular-nums;color:#fff;mix-blend-mode:difference;pointer-events:none}@media(max-width:1023px){.portfolio[data-astro-cid-j7pv25f6]{padding:0;height:100svh;overflow-y:auto;scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch}.grid-counter[data-astro-cid-j7pv25f6]{display:none}}@media(max-width:1023px){.wordmark{display:block!important}}.intro-photos{display:none;position:fixed;inset:0;z-index:4;background:var(--color-bg)}html[data-intro] .intro-photos{display:block}.intro-deck{display:none}@media(min-width:1024px){html[data-intro] .intro-deck--desktop{display:contents}}@media(max-width:1023px){html[data-intro] .intro-deck--mobile{display:contents}}.intro-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:none}.intro-frame.is-on{opacity:1}.intro-bio{display:none;position:fixed;left:50%;bottom:2.5rem;transform:translate(-50%);z-index:6;width:min(46rem,86vw);text-align:center;font-size:.8rem;line-height:1.4;color:#fff;mix-blend-mode:difference;pointer-events:none}html[data-intro] .intro-bio{display:block}html[data-intro-exiting] .intro-bio{animation:intro-bio-out .35s ease both}.intro-bio p{margin:0 0 .4rem}.intro-bio__l{display:inline-block;white-space:pre;opacity:0}html[data-intro-flash] .intro-bio__l{animation:intro-bio-in .7s var(--ease-out, cubic-bezier(.2, .8, .2, 1)) both;animation-delay:calc(var(--i) * 8ms)}@keyframes intro-bio-in{0%{opacity:0}to{opacity:1}}@keyframes intro-bio-out{0%{opacity:1}to{opacity:0}}html[data-intro] .hd__nav{top:50vh;transition:top .6s ease-out}html[data-intro-exiting] .hd__nav{top:50%}html[data-intro] .wordmark{top:50vh;transition:top .6s ease-out}html[data-intro-exiting] .wordmark{top:50%}html[data-intro] .grid-counter,html[data-intro] .page-fade{display:none}html[data-intro] .hd__left{visibility:hidden}html[data-intro]:not([data-intro-ready]) .hd__l,html[data-intro]:not([data-intro-ready]) .wordmark__l{animation-play-state:paused}
