.section-heading-module__1PGl5G__heading{--heading-animation-time:var(--viewport-heading-time,0s)}[data-scene-state=ready][data-scene-layout=pinned] .section-heading-module__1PGl5G__heading{--heading-animation-time:var(--heading-time)}@media (prefers-reduced-motion:no-preference){.section-heading-module__1PGl5G__heading[data-viewport-reveal=true] .section-heading-module__1PGl5G__text{animation:section-heading-module__1PGl5G__open var(--heading-duration) ease-in-out calc(0s - var(--heading-animation-time)) both paused}[data-scene-state=ready][data-scene-layout=pinned] .section-heading-module__1PGl5G__text{animation:section-heading-module__1PGl5G__open var(--heading-duration) ease-in-out calc(0s - var(--heading-animation-time)) both paused}.section-heading-module__1PGl5G__heading[data-viewport-reveal=true] .section-heading-module__1PGl5G__left{animation:section-heading-module__1PGl5G__slash-left var(--heading-duration) ease-in-out calc(0s - var(--heading-animation-time)) both paused}[data-scene-state=ready][data-scene-layout=pinned] .section-heading-module__1PGl5G__left{animation:section-heading-module__1PGl5G__slash-left var(--heading-duration) ease-in-out calc(0s - var(--heading-animation-time)) both paused}.section-heading-module__1PGl5G__heading[data-viewport-reveal=true] .section-heading-module__1PGl5G__right{animation:section-heading-module__1PGl5G__slash-right var(--heading-duration) ease-in-out calc(0s - var(--heading-animation-time)) both paused}[data-scene-state=ready][data-scene-layout=pinned] .section-heading-module__1PGl5G__right{animation:section-heading-module__1PGl5G__slash-right var(--heading-duration) ease-in-out calc(0s - var(--heading-animation-time)) both paused}}@keyframes section-heading-module__1PGl5G__open{0%{clip-path:inset(0 50%)}to{clip-path:inset(0)}}@keyframes section-heading-module__1PGl5G__slash-left{0%{left:calc(50% - .75rem)}to{left:0}}@keyframes section-heading-module__1PGl5G__slash-right{0%{right:calc(50% - .75rem)}to{right:0}}
.business-chat-module__U4bGcW__sequenceItem{--reveal-start:0s}@media (prefers-reduced-motion:no-preference){:is([data-scene-state=ready][data-scene-layout=pinned],[data-chat-stage][data-chat-reveal=true]) .business-chat-module__U4bGcW__titleLine{animation:business-chat-module__U4bGcW__rise var(--reveal-duration) ease-in-out calc(var(--reveal-start) - var(--chat-time,0s)) both paused}:is([data-scene-state=ready][data-scene-layout=pinned],[data-chat-stage][data-chat-reveal=true]) .business-chat-module__U4bGcW__reveal{animation:business-chat-module__U4bGcW__reveal var(--reveal-duration) ease-in-out calc(var(--reveal-start) - var(--chat-time,0s)) both paused}}@keyframes business-chat-module__U4bGcW__rise{0%{visibility:hidden;transform:translateY(100%)}to{visibility:inherit;transform:translateY(0)}}@keyframes business-chat-module__U4bGcW__reveal{0%{opacity:0;visibility:hidden}to{opacity:1;visibility:inherit}}
.scroll-callout-module__45bYgq__line{background:radial-gradient(circle, var(--color-marker) .04rem, transparent .055rem) left center / .3125rem 100% repeat-x}@media (prefers-reduced-motion:no-preference){:is([data-scene-state=ready][data-scene-layout=pinned],[data-flow-reveal=true]) .scroll-callout-module__45bYgq__cross{animation:scroll-callout-module__45bYgq__grow var(--callout-cross-duration) ease-in-out calc(var(--callout-cross-start) - var(--callout-time)) both paused}:is([data-scene-state=ready][data-scene-layout=pinned],[data-flow-reveal=true]) .scroll-callout-module__45bYgq__line{animation:scroll-callout-module__45bYgq__draw-line var(--callout-line-duration) ease-in-out calc(var(--callout-line-start) - var(--callout-time)) both paused}:is([data-scene-state=ready][data-scene-layout=pinned],[data-flow-reveal=true]) .scroll-callout-module__45bYgq__dot{animation:scroll-callout-module__45bYgq__grow var(--callout-dot-duration) ease-in-out calc(var(--callout-dot-start) - var(--callout-time)) both paused}:is([data-scene-state=ready][data-scene-layout=pinned],[data-flow-reveal=true]) .scroll-callout-module__45bYgq__price{animation:scroll-callout-module__45bYgq__rise-price var(--callout-price-duration) ease-in-out calc(var(--callout-price-start) - var(--callout-time)) both paused}:is([data-scene-state=ready][data-scene-layout=pinned],[data-flow-reveal=true]) .scroll-callout-module__45bYgq__title{animation:scroll-callout-module__45bYgq__rise var(--callout-title-duration) ease-in-out calc(var(--callout-title-start) - var(--callout-time)) both paused}:is([data-scene-state=ready][data-scene-layout=pinned],[data-flow-reveal=true]) .scroll-callout-module__45bYgq__number{animation:scroll-callout-module__45bYgq__rise var(--callout-number-duration) ease-in-out calc(var(--callout-number-start) - var(--callout-time)) both paused}:is([data-scene-state=ready][data-scene-layout=pinned],[data-flow-reveal=true]) .scroll-callout-module__45bYgq__description{animation:scroll-callout-module__45bYgq__reveal var(--callout-description-duration) ease-in-out calc(var(--callout-description-start) - var(--callout-time)) both paused}}@keyframes scroll-callout-module__45bYgq__grow{0%{scale:0}to{scale:1}}@keyframes scroll-callout-module__45bYgq__draw-line{0%{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0)}}@keyframes scroll-callout-module__45bYgq__rise{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes scroll-callout-module__45bYgq__rise-price{0%{transform:translateY(calc(100% + .5rem))}to{transform:translateY(0)}}@keyframes scroll-callout-module__45bYgq__reveal{0%{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:no-preference){.business-intro-module__c6IBLW__section[data-flow-reveal=true] .business-intro-module__c6IBLW__segment{transform:scaleY(var(--flow-segment-progress,1))}[data-scene-state=ready][data-scene-layout=pinned] .business-intro-module__c6IBLW__segment{animation:business-intro-module__c6IBLW__fill-timeline var(--timeline-duration) linear calc(var(--timeline-start) - var(--timeline-time)) both paused}[data-scene-state=ready][data-scene-layout=pinned] .business-intro-module__c6IBLW__section{top:calc(var(--hero-height,100svh) * var(--work-step-offset));min-height:calc(var(--hero-height,100svh) * (var(--work-step-height) + var(--work-exit-height)));margin-bottom:calc(var(--hero-height,100svh) * (var(--work-step-offset) - var(--work-exit-height)));position:relative}[data-scene-state=ready][data-scene-layout=pinned] .business-intro-module__c6IBLW__stage{min-height:var(--hero-height,100svh);position:sticky;top:0}[data-scene-state=ready][data-scene-layout=pinned] .business-intro-module__c6IBLW__first{opacity:var(--work-first-opacity,1);pointer-events:var(--work-first-pointer-events,auto)}[data-scene-state=ready][data-scene-layout=pinned] .business-intro-module__c6IBLW__continuation{visibility:var(--work-continuation-visibility,hidden);opacity:var(--work-continuation-opacity,1)}}@keyframes business-intro-module__c6IBLW__fill-timeline{0%{transform:scaleY(0)}to{transform:scaleY(1)}}
.footer-module__MILdjW__rule{border-top:.0625rem dotted var(--color-line)}.footer-module__MILdjW__link:after{content:"";inset-inline:0;transform-origin:0;pointer-events:none;border-bottom:.0625rem solid;position:absolute;bottom:0;transform:scaleX(0)}.footer-module__MILdjW__link:focus-visible:after{transform:scaleX(1)}.footer-module__MILdjW__link:focus-visible{outline-offset:-.125rem;outline:.125rem solid}.footer-module__MILdjW__email:after{border-bottom-width:.1875rem}.footer-module__MILdjW__arrow{transform-origin:0 100%;scale:0}.footer-module__MILdjW__link:focus-visible .footer-module__MILdjW__arrow{scale:1}@media (hover:hover){.footer-module__MILdjW__link:hover:after{transform:scaleX(1)}.footer-module__MILdjW__link:hover .footer-module__MILdjW__arrow{scale:1}}@media (hover:none){.footer-module__MILdjW__arrow{scale:1}}.footer-module__MILdjW__character{margin-inline-end:-1rem;padding-inline-end:1rem;overflow:hidden}.footer-module__MILdjW__letter{line-height:1.15;display:block;position:relative}.footer-module__MILdjW__letter:after{content:attr(data-letter);position:absolute;top:100%;left:0}@media (hover:hover) and (prefers-reduced-motion:no-preference){.footer-module__MILdjW__letter{transition:transform .55s cubic-bezier(.22, 1, .36, 1) var(--letter-delay)}.footer-module__MILdjW__email:hover .footer-module__MILdjW__letter,.footer-module__MILdjW__email:focus-visible .footer-module__MILdjW__letter{transform:translateY(-100%)}}@media (prefers-reduced-motion:no-preference){.footer-module__MILdjW__link:after{transition:transform .3s ease-out}.footer-module__MILdjW__arrow{transition:scale .3s ease-out}.footer-module__MILdjW__footer[data-animated=true] .footer-module__MILdjW__rise{animation:footer-module__MILdjW__rise .65s ease-in-out calc(var(--footer-delay,0s) - var(--footer-time,0s)) both paused}.footer-module__MILdjW__footer[data-animated=true] .footer-module__MILdjW__link:focus-visible,.footer-module__MILdjW__footer[data-animated=true] .footer-module__MILdjW__rise:focus-within,.footer-module__MILdjW__footer[data-animated=true] .footer-module__MILdjW__link:focus-visible .footer-module__MILdjW__rise{animation:none}.footer-module__MILdjW__footer[data-animated=true] .footer-module__MILdjW__rule{animation:footer-module__MILdjW__draw .9s linear calc(0s - var(--footer-time,0s)) both paused}}@keyframes footer-module__MILdjW__rise{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes footer-module__MILdjW__draw{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}
.hero-module__R3nrWq__copyBackdrop{inset:calc(var(--copy-top) - clamp(8rem, 18svh, 12rem)) 0 0;opacity:var(--copy-backdrop-opacity,0);background:linear-gradient(to bottom, transparent 0, color-mix(in srgb, var(--color-surface) 30%, transparent) 32%, color-mix(in srgb, var(--color-surface) 78%, transparent) 64%, var(--color-surface) 100%)}.hero-module__R3nrWq__orbit{-webkit-mask-image:linear-gradient(#000 58%,#0000 88%);mask-image:linear-gradient(#000 58%,#0000 88%)}.hero-module__R3nrWq__visual:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(to bottom, transparent, color-mix(in srgb, var(--color-surface) 15%, transparent) 25%, color-mix(in srgb, var(--color-surface) 50%, transparent) 50%, color-mix(in srgb, var(--color-surface) 85%, transparent) 75%, var(--color-surface));height:7rem;position:absolute;inset:auto 0 0}.hero-module__R3nrWq__glitchChar{white-space:pre-wrap;display:inline}[data-scene-layout=pinned] .hero-module__R3nrWq__visual:after{content:none}.hero-module__R3nrWq__servicesFrame{animation-name:hero-module__R3nrWq__services-frame-reveal;animation-timing-function:linear;animation-delay:calc(0s - var(--services-time,0s));animation-play-state:paused;animation-fill-mode:both}@keyframes hero-module__R3nrWq__services-frame-reveal{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.hero-module__R3nrWq__calloutLine{background:radial-gradient(circle, var(--color-line) .05rem, transparent .0625rem) left center / .3125rem .1875rem repeat-x}.hero-module__R3nrWq__calloutCross:before,.hero-module__R3nrWq__calloutCross:after{content:"";background:var(--color-marker);position:absolute}.hero-module__R3nrWq__calloutCross:before{width:2rem;height:.0625rem;top:calc(50% - .03125rem)}.hero-module__R3nrWq__calloutCross:after{width:.0625rem;height:2rem;left:calc(50% - .03125rem)}.hero-module__R3nrWq__note:before{content:"";background:var(--color-marker);width:.0625rem;height:100%;transform:scaleY(var(--hero-intro-note-line,1));transform-origin:top;position:absolute;top:0;left:0}.hero-module__R3nrWq__note[data-hero-intro-note-position=bottom]:before{transform-origin:bottom}.hero-module__R3nrWq__noteIndex:before{content:"";background:var(--color-line);width:1rem;height:.0625rem;transform:scaleX(var(--hero-intro-note-index-line,1));transform-origin:0;position:absolute;top:.375rem;left:.75rem}.hero-module__R3nrWq__guide{background:radial-gradient(circle, var(--color-line) .05rem, transparent .0625rem) center top / .1875rem .3125rem repeat-y}
.portrait-orbit-module__SlQM1W__rotation{transform-origin:50%;animation:60s linear infinite portrait-orbit-module__SlQM1W__orbit-spin}@keyframes portrait-orbit-module__SlQM1W__orbit-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.portrait-orbit-module__SlQM1W__rotation{animation:none}}
@property --projects-rotation{syntax:"<number>";inherits:true;initial-value:90}.projects-module__zVMFoW__back,.projects-module__zVMFoW__front{display:none}.projects-module__zVMFoW__controls{display:contents}.projects-module__zVMFoW__header{order:-1}.projects-module__zVMFoW__caption{order:1}.projects-module__zVMFoW__navigation{order:2}.projects-module__zVMFoW__hit{width:calc(100% + 2 * var(--page-gutter));margin-inline:calc(-1 * var(--page-gutter));overflow:clip}.projects-module__zVMFoW__hit .projects-module__zVMFoW__orbit{width:100%;height:clamp(12rem,46vw,20rem);display:block;position:relative}.projects-module__zVMFoW__hit .projects-module__zVMFoW__track{width:120%;height:49%;display:block;inset:18.5% auto auto -10%}.projects-module__zVMFoW__hit .projects-module__zVMFoW__orbitDot{display:block}.projects-module__zVMFoW__trackRotation{transform-origin:0 0;transform:rotate(calc((var(--projects-rotation) - 90) * 1deg))}.projects-module__zVMFoW__trackSpin{transform-origin:0 0;transform:rotate(calc(var(--projects-orbit-spin) * 1deg))}.projects-module__zVMFoW__trackLine{color:color-mix(in srgb, var(--color-line) 60%, var(--color-ink))}.projects-module__zVMFoW__hit .projects-module__zVMFoW__position,.projects-module__zVMFoW__hit .projects-module__zVMFoW__orbitDot{--angle:calc((var(--projects-rotation) + var(--item-angle)) * 1deg);left:calc(50% + 49% * cos(var(--angle)));top:calc(43% + 17% * sin(var(--angle)))}.projects-module__zVMFoW__hit .projects-module__zVMFoW__orbitDot{--angle:calc((var(--projects-rotation) + var(--item-angle) + var(--projects-orbit-spin)) * 1deg)}.projects-module__zVMFoW__hit .projects-module__zVMFoW__position{width:min(clamp(5.5rem,24vw,10rem),32%);max-width:none;translate:-50% -50%;scale:max(.6, calc(.88 + .68 * sin(var(--angle))));z-index:calc(10 + 5 * sin(var(--angle)));position:absolute}.projects-module__zVMFoW__filters .projects-module__zVMFoW__filterButton[aria-pressed=false]{opacity:.4}@property --projects-orbit-spin{syntax:"<number>";inherits:true;initial-value:0}.projects-module__zVMFoW__filters .projects-module__zVMFoW__filterButton:focus-visible{opacity:1}@media (hover:hover){.projects-module__zVMFoW__filters .projects-module__zVMFoW__filterButton:hover{opacity:1}}@media (prefers-reduced-motion:no-preference){.projects-module__zVMFoW__stage{transition:--projects-rotation .9s cubic-bezier(.22,.65,.25,1);animation:60s linear infinite projects-module__zVMFoW__orbit-spin}.projects-module__zVMFoW__stage[data-dragging=true]{transition:none}.projects-module__zVMFoW__filterEntrance[data-replay=true]{animation:projects-module__zVMFoW__enter var(--entrance-duration) cubic-bezier(.2, .75, .25, 1) var(--entrance-delay) both}[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__section{height:calc(var(--hero-height,100svh) * var(--projects-height));margin-bottom:calc((-1 - var(--chat-reveal-lead)) * var(--hero-height,100svh))}[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__stage{height:100%;visibility:var(--projects-visibility,hidden);grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);align-items:start;gap:0;padding:0;display:grid}:is([data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__layer,[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__controls){height:var(--hero-height,100svh);pointer-events:none;grid-area:1/1;display:block;position:sticky;top:0}[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__controls{opacity:var(--projects-opacity,1);visibility:var(--projects-controls-visibility,inherit);overflow:clip}[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__back{z-index:5}[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__front{z-index:20}[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__hit{z-index:25;width:auto;margin-inline:0;overflow:visible}[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__controls{z-index:30}[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__front .projects-module__zVMFoW__orbit{clip-path:inset(50% -10% -30%)}[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__hit button{box-shadow:none;border-color:#0000}[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__hit .projects-module__zVMFoW__previewImage{visibility:hidden}:is([data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__hit .projects-module__zVMFoW__track,[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__hit .projects-module__zVMFoW__orbitDot){display:none}[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__header{inset:var(--section-heading-top) var(--page-gutter) auto;flex-direction:row;justify-content:space-between;align-items:flex-start;position:absolute}:is([data-scene-state=ready][data-scene-layout=pinned],.projects-module__zVMFoW__stage[data-projects-reveal=true]) .projects-module__zVMFoW__filterText{animation:projects-module__zVMFoW__rise var(--filter-duration) ease-in-out calc(var(--filter-delay) - var(--projects-time,0s)) both paused}:is([data-scene-state=ready][data-scene-layout=pinned],.projects-module__zVMFoW__stage[data-projects-reveal=true]) .projects-module__zVMFoW__filterUnderline{animation:projects-module__zVMFoW__underline var(--filter-underline-duration) ease-in-out calc(var(--filter-underline-start) - var(--projects-time,0s)) both paused}[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__header>:first-child{translate:calc((-100% - var(--page-gutter) - 1rem) * var(--projects-controls-exit,0)) 0}[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__filters{translate:calc((100% + var(--page-gutter) + 1rem) * var(--projects-controls-exit,0)) 0}[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__orbit{width:auto;height:auto;display:block;position:absolute;inset:4% 3% 11.2%}:is([data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__track,[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__orbitDot){display:block}:is([data-scene-state=ready][data-scene-layout=pinned],.projects-module__zVMFoW__stage[data-projects-reveal=true]) .projects-module__zVMFoW__dotReveal{scale:calc(var(--dot-reveal-progress) * var(--dot-reveal-progress))}:is([data-scene-state=ready][data-scene-layout=pinned],.projects-module__zVMFoW__stage[data-projects-reveal=true]) .projects-module__zVMFoW__orbitDot{--dot-reveal-start:calc(mod(var(--projects-rotation) + var(--item-angle) + var(--projects-orbit-spin) - 90, 360) / 360 * var(--orbit-item-count));--dot-reveal-progress:clamp(0, calc((var(--projects-reveal-step,0) - var(--dot-reveal-start)) * 24 / var(--orbit-item-count)), 1)}[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__orbitDot{--dot-exit-start:calc(mod(var(--projects-rotation) + var(--item-angle) + var(--projects-orbit-spin) - 90, 360) / 360 * var(--orbit-item-count));--dot-exit-progress:clamp(0, calc((var(--projects-exit-step,0) - var(--dot-exit-start)) * 24 / var(--orbit-item-count)), 1);scale:calc(1 - var(--dot-exit-progress) * var(--dot-exit-progress))}:is([data-scene-state=ready][data-scene-layout=pinned],.projects-module__zVMFoW__stage[data-projects-reveal=true]) .projects-module__zVMFoW__trackReveal{animation:projects-module__zVMFoW__draw-orbit var(--orbit-draw-duration) linear calc(0s - var(--projects-preview-time,var(--projects-time,0s))) both paused}[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__trackErase{animation:projects-module__zVMFoW__draw-orbit var(--orbit-exit-sweep) linear calc(0s - var(--projects-exit-time,0s)) both paused}:is([data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__orbitDot,[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__position){--angle:calc((var(--projects-rotation) + var(--item-angle)) * 1deg);--exit-delay:calc(mod(var(--projects-rotation) + var(--item-angle) - 90, 360) / 360 * var(--orbit-exit-sweep));left:calc(50% + 41% * cos(var(--angle)));top:calc(50% + 35% * sin(var(--angle)))}[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__orbitDot{--angle:calc((var(--projects-rotation) + var(--item-angle) + var(--projects-orbit-spin)) * 1deg)}[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__position{--preview-hidden-x:-3rem;--preview-hidden-y:0rem;--preview-hidden-scale:0;--preview-hidden-visibility:hidden;animation:projects-module__zVMFoW__enter var(--entrance-duration) cubic-bezier(.2, .75, .25, 1) calc(var(--exit-delay) - var(--projects-exit-time,0s)) reverse both paused;width:min(14%,13rem);max-width:none;translate:-50% -50%;scale:calc(.9 + .14 * sin(var(--angle)));z-index:calc(10 + 5 * sin(var(--angle)));position:absolute}:is([data-scene-state=ready][data-scene-layout=pinned],.projects-module__zVMFoW__stage[data-projects-reveal=true]) .projects-module__zVMFoW__entrance{--preview-hidden-x:3rem;--preview-hidden-y:1rem;--preview-hidden-scale:.65;--preview-hidden-visibility:initial;animation:projects-module__zVMFoW__enter var(--entrance-duration) cubic-bezier(.2, .75, .25, 1) calc(var(--entrance-delay) - var(--projects-preview-time,var(--projects-time,0s))) both paused}:is([data-scene-state=ready][data-scene-layout=pinned],.projects-module__zVMFoW__stage[data-projects-reveal=true]) .projects-module__zVMFoW__caption,:is([data-scene-state=ready][data-scene-layout=pinned],.projects-module__zVMFoW__stage[data-projects-reveal=true]) .projects-module__zVMFoW__navigation{animation:projects-module__zVMFoW__reveal .65s ease calc(var(--projects-copy-start,0s) - var(--projects-time,0s)) both paused}.projects-module__zVMFoW__stage[data-projects-reveal=true]{--projects-copy-start:.8s}[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__caption{translate:calc((-100% - var(--page-gutter) - 1rem) * var(--projects-controls-exit,0)) 0;inset:auto auto 4% var(--page-gutter);width:35%;padding-top:1rem;position:absolute}[data-scene-state=ready][data-scene-layout=pinned] .projects-module__zVMFoW__navigation{translate:calc((100% + var(--page-gutter) + 1rem) * var(--projects-controls-exit,0)) 0;right:var(--page-gutter);position:absolute;bottom:5%}}@keyframes projects-module__zVMFoW__enter{0%{opacity:0;visibility:var(--preview-hidden-visibility,inherit);transform:translate(var(--preview-hidden-x,3rem), var(--preview-hidden-y,1rem)) scale(var(--preview-hidden-scale,.65))}to{opacity:1;visibility:inherit;transform:translate(0)scale(1)}}@keyframes projects-module__zVMFoW__draw-orbit{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes projects-module__zVMFoW__orbit-spin{to{--projects-orbit-spin:360}}@keyframes projects-module__zVMFoW__reveal{0%{opacity:0}to{opacity:1}}@keyframes projects-module__zVMFoW__rise{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes projects-module__zVMFoW__underline{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}
.publications-module__XJKh0W__row{--row-time:min(var(--viewport-row-time,0s), max(0s, (var(--publications-time,0s) - var(--row-intro-start)) * var(--row-intro-rate)))}.publications-module__XJKh0W__row:before,.publications-module__XJKh0W__row:last-child:after{content:"";border-top:.0625rem dotted var(--color-line);pointer-events:none;position:absolute;inset-inline:0}.publications-module__XJKh0W__row:before{top:0}.publications-module__XJKh0W__row:last-child:after{bottom:0}@media (prefers-reduced-motion:no-preference){:is([data-scene-state=ready][data-scene-layout=pinned],[data-publications-reveal=true]) .publications-module__XJKh0W__title{animation-name:publications-module__XJKh0W__rise;animation-timing-function:ease-in-out;animation-play-state:paused;animation-fill-mode:both}:is([data-scene-state=ready][data-scene-layout=pinned],[data-publications-reveal=true]) .publications-module__XJKh0W__row:before,:is([data-scene-state=ready][data-scene-layout=pinned],[data-publications-reveal=true]) .publications-module__XJKh0W__row:last-child:after{animation:publications-module__XJKh0W__draw var(--row-duration) linear calc(0s - var(--row-time)) both paused}:is([data-scene-state=ready][data-scene-layout=pinned],[data-publications-reveal=true]) .publications-module__XJKh0W__number,:is([data-scene-state=ready][data-scene-layout=pinned],[data-publications-reveal=true]) .publications-module__XJKh0W__rowTitle,:is([data-scene-state=ready][data-scene-layout=pinned],[data-publications-reveal=true]) .publications-module__XJKh0W__metadata{animation:publications-module__XJKh0W__slide var(--row-text-duration) ease-in-out calc(var(--part-delay,0s) - var(--row-time)) both paused}.publications-module__XJKh0W__rowTitle{--part-delay:var(--row-title-delay)}.publications-module__XJKh0W__metadata{--part-delay:var(--row-metadata-delay)}:is([data-scene-state=ready][data-scene-layout=pinned],[data-publications-reveal=true]) .publications-module__XJKh0W__arrow{animation:publications-module__XJKh0W__grow var(--row-arrow-duration) ease-in-out calc(var(--row-arrow-start) - var(--row-time)) both paused}.publications-module__XJKh0W__row:focus-within{--row-time:var(--row-duration)}}@keyframes publications-module__XJKh0W__rise{0%{visibility:hidden;transform:translateY(100%)}to{visibility:inherit;transform:translateY(0)}}@keyframes publications-module__XJKh0W__slide{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes publications-module__XJKh0W__draw{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes publications-module__XJKh0W__grow{0%{scale:0}to{scale:1}}
.portrait-annotation-module__8ObNIG__dot{animation:portrait-annotation-module__8ObNIG__dot-in var(--annotation-dot-duration) ease-in-out calc(0s - var(--services-time,0s)) both paused}.portrait-annotation-module__8ObNIG__diagonal{stroke-dasharray:1;animation:portrait-annotation-module__8ObNIG__line-in var(--annotation-line-duration) ease-in-out calc(var(--annotation-line-start) - var(--services-time,0s)) both paused}.portrait-annotation-module__8ObNIG__vertical,.portrait-annotation-module__8ObNIG__horizontal{animation-duration:var(--annotation-branch-duration);animation-timing-function:ease-in-out;animation-delay:calc(var(--annotation-branch-start) - var(--services-time,0s));animation-play-state:paused;animation-fill-mode:both}.portrait-annotation-module__8ObNIG__vertical{animation-name:portrait-annotation-module__8ObNIG__vertical-in}.portrait-annotation-module__8ObNIG__horizontal{animation-name:portrait-annotation-module__8ObNIG__horizontal-in}@keyframes portrait-annotation-module__8ObNIG__dot-in{0%{scale:0}to{scale:1}}@keyframes portrait-annotation-module__8ObNIG__line-in{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes portrait-annotation-module__8ObNIG__vertical-in{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes portrait-annotation-module__8ObNIG__horizontal-in{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.portrait-annotation-module__8ObNIG__text{opacity:0;transition:opacity var(--annotation-text-duration) ease-in-out}[data-annotation-text-visible=true] .portrait-annotation-module__8ObNIG__text{opacity:1}
@media (not (max-width:56.25rem)) and (prefers-reduced-motion:no-preference){[data-scene-state=ready][data-scene-layout=pinned] .services-module__IgHRYW__section{top:calc(var(--hero-height,100svh) * var(--services-offset));height:calc(var(--hero-height,100svh) * var(--services-height));position:relative}[data-scene-state=ready][data-scene-layout=pinned] .services-module__IgHRYW__stage{height:var(--hero-height,100svh);opacity:var(--services-opacity,1);position:sticky;top:0}[data-scene-state=ready][data-scene-layout=pinned] .services-module__IgHRYW__list{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:44%}[data-scene-state=ready][data-scene-layout=pinned] .services-module__IgHRYW__revealHeading{visibility:hidden}[data-scene-state=ready][data-scene-layout=pinned][data-services-visible=true] .services-module__IgHRYW__revealHeading{visibility:visible}}
