.gallery-page{background:var(--color-paper);overscroll-behavior:contain;scrollbar-width:none;position:fixed;inset:0;overflow:auto}.gallery-page::-webkit-scrollbar{display:none}.gallery-page[data-intro-mode=returning] .gallery-stage{touch-action:pan-y}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.gallery-stage{min-height:100svh;position:relative;overflow:hidden}.gallery-stage__posters{perspective:1050px;perspective-origin:50% 46%;transform-style:preserve-3d;z-index:3;transition:opacity .18s ease-out;position:absolute;inset:0}.gallery-stage__posters[data-renderer=webgl]{opacity:1;pointer-events:none}.gallery-stage__posters[data-renderer=webgl-pending],.gallery-stage__posters[data-renderer=fallback]{opacity:1;pointer-events:auto}.editorial-field{background:var(--color-paper);position:absolute;inset:0;overflow:hidden}.editorial-field__card{border-radius:.8rem;position:absolute;overflow:hidden;box-shadow:0 1rem 2.75rem #0f0f0f1a}.editorial-field__card a{outline-offset:.4rem;width:100%;height:100%;display:block;position:relative}.editorial-field__image{object-fit:cover;transition:transform .62s cubic-bezier(.16,1,.3,1)}.editorial-field__card:hover .editorial-field__image,.editorial-field__card:focus-within .editorial-field__image{transform:scale(1.035)}.editorial-field__label{color:#fff;opacity:0;text-shadow:0 1px 8px #00000073;font-size:.75rem;transition:opacity .18s ease-out;position:absolute;bottom:.8rem;left:.85rem}.editorial-field__card:hover .editorial-field__label,.editorial-field__card:focus-within .editorial-field__label{opacity:1}.editorial-field__card[data-slot=primary]{z-index:3;width:min(41vw,38rem);height:min(41vh,27vw);top:calc(50% - min(41vh,27vw)/2);left:calc(48% - min(41vw,38rem)/2)}.editorial-field__card[data-slot=north]{z-index:2;width:min(18vw,16rem);height:min(19vh,12vw);top:8%;left:66%}.editorial-field__card[data-slot=south]{z-index:2;width:min(18vw,16rem);height:min(19vh,12vw);bottom:8%;left:66%}.editorial-field__card[data-slot=east]{z-index:1;width:min(29vw,27rem);height:min(31vh,21vw);top:35%;left:calc(100% - min(7vw,6rem))}.editorial-field__card[data-slot=west]{z-index:1;width:min(24vw,22rem);height:min(24vh,16vw);bottom:calc(-1*min(11vh,6rem));left:calc(-1*min(8vw,7rem))}.gallery-hud__mobile-project,.gallery-guidance{display:none}@media (max-width:672px){.gallery-guidance{bottom:max(4.75rem, calc(env(safe-area-inset-bottom) + 4rem));color:var(--color-muted);font-family:var(--font-sans);letter-spacing:.01em;pointer-events:none;white-space:nowrap;z-index:60;margin:0;font-size:.75rem;font-weight:500;line-height:1;display:flex;position:fixed;left:50%;transform:translate(-50%)}.gallery-guidance__character{opacity:0;will-change:filter, opacity, transform;display:inline-block}.gallery-guidance[data-phase=visible] .gallery-guidance__character{animation:.72s cubic-bezier(.16,1,.3,1) both gallery-guidance-arrive;animation-delay:calc(var(--guidance-index) * 22ms)}.gallery-guidance[data-phase=leaving] .gallery-guidance__character{animation:.38s cubic-bezier(.7,0,.84,0) both gallery-guidance-leave;animation-delay:calc(var(--guidance-reverse-index) * 14ms)}.editorial-field__card[data-slot=primary]{width:76vw;height:min(43vh,72vw);top:calc(50% - min(43vh,72vw)/2);left:calc(52% - 38vw)}.editorial-field__card[data-slot=north]{width:31vw;height:18vh;top:8%;left:65%}.editorial-field__card[data-slot=south]{width:31vw;height:18vh;bottom:8%;left:65%}.editorial-field__card[data-slot=east]{width:42vw;height:24vh;top:38%;left:calc(100% - 3rem)}.editorial-field__card[data-slot=west]{width:38vw;height:18vh;bottom:-3rem;left:-4rem}}@keyframes gallery-guidance-arrive{0%{filter:blur(6px);opacity:0;transform:translate(-.35rem)}to{filter:blur();opacity:1;transform:translate(0)}}@keyframes gallery-guidance-leave{0%{filter:blur();opacity:1;transform:translate(0)}to{filter:blur(6px);opacity:0;transform:translate(.35rem)}}@media (max-width:672px) and (prefers-reduced-motion:reduce){.gallery-guidance__character{filter:none!important;animation-delay:0s!important;transform:none!important}.gallery-guidance[data-phase=visible] .gallery-guidance__character{animation:.18s ease-out both gallery-guidance-fade-in}.gallery-guidance[data-phase=leaving] .gallery-guidance__character{animation:.14s ease-in both gallery-guidance-fade-out}}@keyframes gallery-guidance-fade-in{0%{opacity:0}to{opacity:1}}@keyframes gallery-guidance-fade-out{0%{opacity:1}to{opacity:0}}.project-poster{height:var(--poster-height);left:var(--poster-x);opacity:var(--poster-opacity);top:var(--poster-y);backface-visibility:hidden;transform:translate3d(-50%, -50%, var(--poster-depth)) rotateY(var(--poster-tilt-y)) rotateZ(var(--poster-rotation));transform-origin:50%;transform-style:preserve-3d;width:var(--poster-width);z-index:1;transition:opacity .22s ease-out,transform .48s cubic-bezier(.16,1,.3,1),height .48s cubic-bezier(.16,1,.3,1),width .48s cubic-bezier(.16,1,.3,1),left .48s cubic-bezier(.16,1,.3,1),top .48s cubic-bezier(.16,1,.3,1);position:absolute}.project-poster[data-active=true]{z-index:3}.project-poster__link,.project-poster__figure{width:100%;height:100%;margin:0;display:block}.project-poster__link{color:inherit;text-decoration:none}.project-poster__link:focus-visible{outline:3px solid var(--poster-accent);outline-offset:5px}.project-poster__figure{position:relative}.project-poster__figure>.project-cover__poster{border-radius:var(--poster-radius,.8rem)}.project-poster__image{border-radius:var(--poster-radius,.8rem);object-fit:cover;background:#d7d6d1;width:100%;height:100%;display:block;overflow:hidden}.project-poster__image[data-project-cover=ritmo]{background:#f0f0ed}.gallery-hud__modes{gap:1rem;display:flex}.gallery-hud__modes button{appearance:none;color:var(--color-muted);cursor:pointer;font:inherit;background:0 0;border:0;min-width:2.75rem;min-height:2.75rem;padding:0}.gallery-hud__modes button[aria-pressed=true]{color:var(--color-ink);text-underline-offset:.25rem;text-decoration:underline;text-decoration-thickness:1px}.gallery-hud__modes button:disabled{cursor:wait;opacity:.58}.gallery-hud__profile{pointer-events:none;z-index:20;max-width:28rem;position:fixed;top:50%;left:2rem;transform:translateY(-50%)}.gallery-hud__profile h1,.gallery-hud__profile p,.gallery-hud__profile .gallery-hud__contact{filter:blur(.85rem);opacity:0;margin:0;transition:filter 1s cubic-bezier(.16,1,.3,1),opacity .82s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1);transform:translateY(.75rem)scale(.99)}.gallery-hud__profile[data-revealed=true] h1,.gallery-hud__profile[data-revealed=true] p,.gallery-hud__profile[data-revealed=true] .gallery-hud__contact{filter:blur();opacity:1;transform:translateY(0)scale(1)}.gallery-hud__profile[data-revealed=true] h1{transition-delay:90ms}.gallery-hud__profile[data-revealed=true] p{transition-delay:.18s}.gallery-hud__profile[data-revealed=true] .gallery-hud__contact{transition-delay:.26s}html[data-media-transition-direction=return] .gallery-hud__profile :is(h1,p,.gallery-hud__contact){transition:none}body:has(.pixel-nudge-loader[data-state=playing]) .gallery-hud__profile[data-revealed=true] :is(h1,p,.gallery-hud__contact){opacity:0;filter:blur(6px);transition:none;transform:translateY(12px)}.gallery-hud__personal-mark{margin-bottom:1rem}.gallery-hud__profile h1{letter-spacing:-.03em;text-wrap:balance;font-size:3rem;font-weight:500;line-height:1.1667}.gallery-hud__profile p{color:var(--color-muted);text-wrap:pretty;max-width:27rem;margin-top:.7rem;font-size:1rem;line-height:1.4}.gallery-hud__profile .interactive-name{font-family:"PP Neue Montreal Name", var(--font-sans);font-optical-sizing:none;pointer-events:auto;cursor:default;flex-wrap:wrap;align-items:center;gap:0 .23em;display:flex}.interactive-name__portrait{object-fit:cover;border-radius:50%;flex:none;width:40px;height:40px}@font-face{font-family:PP Neue Montreal Name;src:url(/fonts/ppneuemontreal-thin.woff2)format("woff2");font-weight:100;font-display:swap}@font-face{font-family:PP Neue Montreal Name;src:url(/fonts/ppneuemontreal-book.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:PP Neue Montreal Name;src:url(/fonts/ppneuemontreal-medium.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:PP Neue Montreal Name;src:url(/fonts/ppneuemontreal-bold.woff2)format("woff2");font-weight:700;font-display:swap}.interactive-name__word{display:inline-flex}.interactive-name__word:last-child{font-family:"PP Neue Montreal Name", var(--font-sans)}.gallery-hud__company{--shimmer-band:#850c12;--shimmer-band-dark:#ff343c;font:inherit;line-height:inherit;text-align:inherit;cursor:default;white-space:nowrap;color:color-mix(in srgb, var(--color-ink) 75%, var(--color-muted));pointer-events:auto;background:0 0;border:0;padding:0;transition:color .18s;display:inline}.gallery-hud__company-mark{vertical-align:-.18em;width:1.05rem;height:1.05rem;margin-right:.28rem;display:inline-block}.gallery-hud__company-mark svg{width:100%;height:100%;display:block;overflow:visible}.gallery-hud__company-mark-base{fill:#0000;transition:fill .18s}.gallery-hud__company-mark-field{fill:currentColor;transition:fill .18s}.gallery-hud__company strong{font-weight:inherit}.gallery-hud__company:is(:hover,:focus-visible){color:#c90019}html[data-theme=dark] .gallery-hud__company:is(:hover,:focus-visible){color:#ff697b}.gallery-hud__company:is(:hover,:focus-visible) .gallery-hud__company-mark-base{fill:#fff9f9}.gallery-hud__company:is(:hover,:focus-visible) .gallery-hud__company-mark-field{fill:#c90019}.gallery-hud__company:focus-visible{outline-offset:3px;border-radius:2px;outline:2px solid}@media (prefers-reduced-motion:reduce){.gallery-hud__profile[data-revealed=true] :is(h1,p,.gallery-hud__contact),.gallery-hud__company,.gallery-hud__company-mark-base,.gallery-hud__company-mark-field{transition:none}}@media (min-width:1200px){.gallery-hud__profile{padding-bottom:8rem}.gallery-hud__profile .gallery-hud__contact{align-items:center;height:32px;margin:0;display:flex;position:absolute;top:calc(50% + 5.75rem)}.gallery-hud__contact .gallery-hud__contact-copy{padding:0}}@media (max-width:672px){.gallery-hud__profile{max-width:calc(100vw - 2rem);top:max(6rem,18svh);bottom:auto;left:1rem;transform:none}.gallery-hud__profile h1{font-size:clamp(1.75rem,8vw,2rem);line-height:1.08}.gallery-hud__profile p{max-width:34rem;margin-top:.5rem;font-size:.875rem;line-height:1.35}.gallery-hud__personal-mark{width:3rem;height:3rem;margin-bottom:.65rem}.gallery-hud__company{white-space:normal}.gallery-hud__contact-copy{width:max-content}.gallery-hud__profile .gallery-hud__contact{flex-direction:row;align-items:center}.gallery-hud__mobile-project{pointer-events:none;text-align:center;z-index:20;width:8rem;max-width:none;font-size:.75rem;font-weight:500;line-height:1.3;display:none;position:fixed;inset:45% 1rem auto auto}.gallery-hud__mobile-project span{animation:.72s cubic-bezier(.22,1,.36,1) both mobile-project-name-in}.gallery-hud__mobile-project[data-visible=false]{filter:blur(.35rem);opacity:0;transition:filter .16s ease-in,opacity .14s ease-in}}@keyframes mobile-project-name-in{0%{filter:blur(.35rem);opacity:0;transform:translateY(.25rem)}to{filter:blur();opacity:1;transform:translateY(0)}}.project-index{min-height:100svh;padding:clamp(7.75rem,13vh,9rem) clamp(1rem,2.25vw,2rem) 6rem;position:relative}.project-index__list{z-index:2;border-top:1px solid #11111129;width:min(66%,66rem);margin:0;padding:0;list-style:none;position:relative}.project-index__item{border-bottom:1px solid #11111129;position:relative}.project-index__item:before{background:var(--index-accent);content:"";opacity:0;border-radius:50%;width:.4rem;height:.4rem;transition:opacity .16s ease-out;position:absolute;top:50%;left:0;transform:translateY(-50%)}.project-index__item[data-active=true]:before,.project-index__item:focus-within:before,.project-index__item:hover:before{opacity:1}.project-index__link{color:inherit;grid-template-columns:2.5rem minmax(10rem,1.4fr) minmax(8rem,1fr) minmax(10rem,1fr) auto;align-items:baseline;gap:1rem;min-height:4.25rem;padding:1rem 0 1rem 1rem;text-decoration:none;display:grid}.project-index__link:focus{outline:2px solid var(--color-ink);outline-offset:-2px}.project-index__link h3{letter-spacing:0;margin:0;font-size:clamp(1.35rem,2.15vw,2.25rem);font-weight:400;line-height:1}.project-index__number,.project-index__category,.project-index__role,.project-index__link time{color:var(--color-muted);font-size:.6875rem}.project-index__item[data-active=true] h3{font-weight:500}.project-index__preview{width:min(30vw,30rem);height:min(52vh,34rem);margin:0;position:fixed;top:50%;right:clamp(1rem,2.25vw,2rem);overflow:hidden;transform:translateY(-48%)}.project-index__preview img{object-fit:cover;width:100%;height:100%}@media (max-width:64rem){.project-index__list{width:100%}.project-index__preview{display:none}}@media (max-width:42rem){.project-index{padding-top:14.5rem}.project-index__link{grid-template-columns:2rem 1fr auto;align-items:center;min-height:4.6rem;padding-left:.75rem}.project-index__link h3{font-size:clamp(1.2rem,6vw,1.7rem)}.project-index__category,.project-index__role{display:none}}@media (max-height:30rem) and (orientation:landscape){.project-index{padding-top:9rem;padding-bottom:4rem}}@media (prefers-reduced-motion:reduce){.project-poster,.gallery-hud__profile h1,.gallery-hud__profile p,.gallery-hud__contact-copy:after,.gallery-hud__contact-invitation,.gallery-hud__contact-email,.gallery-hud__contact-confirmation,.project-index__item:before{transition-duration:.01ms}.gallery-hud__profile[data-revealed=true] p{transition-delay:0s}}@media (min-width:901px){.gallery-page{--home-left:max(2rem, calc((100vw - 1040px) / 2))}.gallery-page .viscose-canvas{width:100%;left:0;right:0;transform:none}.gallery-hud__profile{left:var(--home-left);max-width:24rem}.gallery-hud__profile h1{letter-spacing:-.04em;font-size:3rem}.gallery-hud__profile p{max-width:24rem;font-size:1rem}.gallery-hud__contact{font-size:.875rem}}
