html.fsg-locked,html.fsg-locked body{overflow:hidden;overscroll-behavior:none}.fsg{--fsg-ease-in-out: cubic-bezier(.76, 0, .24, 1);--fsg-ease-out: cubic-bezier(.16, 1, .3, 1);display:flex;flex-direction:row;gap:10px;width:100%;height:100%}.fsg-panel{position:relative;min-width:0;min-height:0;flex-basis:0;overflow:hidden;border-radius:16px;background:#111;transition:flex-grow 1.4s var(--fsg-ease-in-out);animation:fsg-wipe 1.1s var(--fsg-ease-out) both;animation-delay:calc(.1s + var(--i) * .07s)}.fsg--settled .fsg-panel{transition:flex-grow 1s var(--fsg-ease-out)}@keyframes fsg-wipe{0%{clip-path:inset(100% 0 0 0)}to{clip-path:inset(0% 0 0 0)}}.fsg-link{position:absolute;inset:0;display:block;color:#fff;text-decoration:none;outline:none}.fsg-link:focus-visible{box-shadow:inset 0 0 0 2px #fff;border-radius:16px}.fsg-media{position:absolute;inset:0;animation:fsg-zoom 2.2s var(--fsg-ease-out) both;animation-delay:calc(.1s + var(--i) * .07s)}@keyframes fsg-zoom{0%{transform:scale(1.35)}to{transform:scale(1)}}.fsg-media img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.1);filter:grayscale(1);transition:transform 1.6s cubic-bezier(.19,1,.22,1),filter .9s ease}.fsg-panel.is-active .fsg-media img{transform:scale(1);filter:grayscale(0)}.fsg-shade{position:absolute;inset:0;background:#000;opacity:var(--shade);transition:opacity 1s ease}.fsg-link:hover .fsg-shade{opacity:min(var(--shade),.2)}.fsg-gradient{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.6),transparent 55%)}.fsg-label{position:absolute;inset:0;display:flex;align-items:flex-start;justify-content:center;padding-top:2rem;opacity:0;transition:opacity .5s ease;transition-delay:0ms}.fsg--open .fsg-panel:not(.is-active) .fsg-label{opacity:1;transition-delay:var(--label-delay)}.fsg-label>span{font-family:"Inter Tight","Inter",var(--font-sans, system-ui, sans-serif);font-size:.7rem;font-weight:700;letter-spacing:.3em;text-transform:uppercase;white-space:nowrap;color:#ffffffd9;writing-mode:vertical-rl}.fsg-label-num{margin-bottom:.75rem;color:#ffffff80}.fsg-caption{position:absolute;left:0;right:0;bottom:0;padding:clamp(1.5rem,3.5vw,3rem);pointer-events:none}.fsg-panel.is-active .fsg-caption{pointer-events:auto}.fsg-caption-row{margin-top:1rem;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem 2.5rem}.fsg-meta{margin:0;font-family:"Inter Tight","Inter",var(--font-sans, system-ui, sans-serif);font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#ffffffbf}.fsg-title{margin:0;font-family:"Inter Tight","Inter",var(--font-sans, system-ui, sans-serif);font-size:clamp(2.2rem,5vw,4.6rem);font-weight:900;letter-spacing:-.04em;line-height:.92;text-transform:uppercase;white-space:nowrap}.fsg-desc{margin:1rem 0 0;max-width:28rem;font-family:var(--font-sans, system-ui, sans-serif);font-size:.9rem;line-height:1.6;color:#ffffffbf}.fsg-cta{display:inline-block;padding-bottom:.25rem;border-bottom:1px solid rgba(255,255,255,.6);font-family:"Inter Tight","Inter",var(--font-sans, system-ui, sans-serif);font-size:.75rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap}.fsg-mask{overflow:hidden}.fsg-mask-inner{transform:translateY(100%);opacity:0;transition:transform .3s cubic-bezier(.19,1,.22,1),opacity .3s ease}.fsg-panel.is-active .fsg-mask-inner{transform:translateY(0);opacity:1;transition-duration:1s;transition-delay:var(--delay)}@media(max-width:767px){.fsg{flex-direction:column;gap:8px}.fsg-panel,.fsg-link:focus-visible{border-radius:12px}.fsg-label{align-items:flex-end;justify-content:flex-start;padding:0 1rem .85rem}.fsg-label>span{writing-mode:horizontal-tb}.fsg-label-num{margin:0 .75rem 0 0}.fsg-title{font-size:clamp(1.8rem,9vw,2.6rem);white-space:normal}.fsg-desc{display:none}}@media(prefers-reduced-motion:reduce){.fsg-panel,.fsg-media{animation:none}.fsg-panel,.fsg-media img,.fsg-shade,.fsg-label,.fsg-mask-inner{transition:none!important}}body.portfolio-page{--bg: #f3f3f1;--bg-alt: #e8e8e5;--bg-tinted: #dfdfe8;--color-bg: #f3f3f1;--color-bg-soft: rgba(243, 243, 241, .85);background:#f3f3f1}.portfolio-stage[data-astro-cid-hcjuqwdu]{box-sizing:border-box;height:100svh;padding:calc(var(--header-h, 72px) + .5rem) clamp(.75rem,1.6vw,1.5rem) clamp(.75rem,1.6vw,1.5rem)}.sr-only[data-astro-cid-hcjuqwdu]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:768px){.portfolio-stage[data-astro-cid-hcjuqwdu]{padding-top:calc(var(--header-h, 60px) + .5rem)}}
