:root{color:#0f424c;background:#efefef;font-family:Inter,Inter Tight,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #0f424c;--paper: #efefef;--muted-card: #d9e0e1;--line: rgba(15, 66, 76, .16);--case-fold-scale: .58;--case-fold-perspective: 900px;--case-fold-tilt: 16deg}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased}body[data-mode=hero],body[data-mode=gallery],body[data-mode=visual],body[data-resume-open=true]{overflow:hidden}html[data-intro-loading=true],html[data-intro-loading=true] body{overflow:hidden;touch-action:none;overscroll-behavior:none}button,a{color:inherit;font:inherit}button{border:0}:where(button,a,[tabindex]):where(:focus-visible){border-radius:8px}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid currentColor;outline-offset:4px}.app{min-height:100vh;background:var(--paper)}.portfolio-flow{display:flex;width:300vw;height:100dvh;transform:translate3d(calc(var(--flow-slide) * -100vw),0,0);transition:transform 1.4s cubic-bezier(.22,1,.36,1);will-change:transform}.portfolio-flow.is-instant{transition:none}.portfolio-flow.is-case-background{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none}.portfolio-flow-slide{width:100vw;height:100dvh;flex:0 0 100vw;min-width:100vw;overflow:hidden;-webkit-perspective:1200px;perspective:1200px;-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.shell-header{position:fixed;inset:0 0 auto;z-index:50;height:156px;opacity:1;pointer-events:none;transition:opacity .22s ease}.app--visual .shell-header{opacity:0}.wordmark,.visual-link,.language-toggle,.workplace-nav,.menu-toggle,.mobile-active{pointer-events:auto}.wordmark{position:absolute;top:30px;left:30px;margin:-12px;padding:12px;background:none;color:var(--ink);cursor:pointer;font-size:16px;line-height:.8;view-transition-name:global-wordmark-action}.control-sheen{position:relative;display:inline-block;transform:scale(1);transform-origin:center;transition:transform .26s cubic-bezier(.22,1,.36,1)}.control-sheen:after{content:attr(data-label);position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.18) 24%,rgba(255,255,255,.96) 50%,rgba(178,218,210,.72) 72%,transparent 100%);background-repeat:no-repeat;background-position:-48px 0;background-size:42px 100%;color:transparent;opacity:0;pointer-events:none;-webkit-background-clip:text;background-clip:text}@keyframes control-sheen-pass{0%{background-position:-48px 0;opacity:0}14%{opacity:1}84%{opacity:1}to{background-position:calc(100% + 48px) 0;opacity:0}}@media(hover:hover)and (pointer:fine){.interactive-sheen:hover .control-sheen,.interactive-sheen:focus-visible .control-sheen{transform:scale(1.07)}.interactive-sheen:hover .control-sheen:after,.interactive-sheen:focus-visible .control-sheen:after{animation:control-sheen-pass 1.12s cubic-bezier(.22,1,.36,1) both}}.social-links{display:grid;grid-template-columns:repeat(2,1fr);width:max-content;gap:30px;align-items:center;font-size:16px;line-height:.8}.social-links>a,.social-links>.mail-copy-trigger{display:flex;align-items:center;justify-content:center;margin:-8px;padding:8px}.social-links a{text-decoration:none}.mail-copy-trigger{--mail-pointer-x: 0px;--mail-pointer-y: 0px;position:relative;border:0;background:none;color:inherit;cursor:pointer;font:inherit;line-height:inherit}.mail-copy-feedback{--mail-pointer-x: 0px;--mail-pointer-y: 0px;position:fixed;z-index:110;top:calc(var(--mail-pointer-y) - 4px);left:calc(var(--mail-pointer-x) + 9px);display:flex;min-width:132px;height:40px;padding:0 15px;gap:4px;align-items:center;justify-content:center;border:0;border-radius:999px;background:#ffffffd1;color:#0f424cd1;opacity:0;pointer-events:none;transform:translate3d(0,-100%,0) scale(.9);transform-origin:left bottom;transition:opacity .15s ease,transform .24s cubic-bezier(.22,1,.36,1),background-color .24s ease,color .24s ease;white-space:nowrap;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mail-copy-feedback.is-visible{opacity:1;transform:translate3d(0,-100%,0) scale(1)}.mail-copy-icons,.mail-copy-labels{display:grid;place-items:center}.mail-copy-icons{width:18px;height:18px;flex:0 0 18px}.mail-copy-icon,.mail-copy-label{grid-area:1 / 1;opacity:0;transform:translate3d(0,6px,0) scale(.76);transition:opacity .17s ease,transform .26s cubic-bezier(.22,1,.36,1)}.mail-copy-icon{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.mail-copy-icon--loading{width:16px;height:16px;border:1.7px solid currentColor;border-right-color:transparent;border-radius:50%;transform-origin:center;will-change:transform}.mail-copy-labels{min-width:86px}.mail-copy-label{font-size:14px;line-height:1}.mail-copy-feedback.is-idle .mail-copy-icon--copy,.mail-copy-feedback.is-idle .mail-copy-label--idle,.mail-copy-feedback.is-copying .mail-copy-icon--loading,.mail-copy-feedback.is-copying .mail-copy-label--copying,.mail-copy-feedback.is-success .mail-copy-icon--success,.mail-copy-feedback.is-success .mail-copy-label--success,.mail-copy-feedback.is-error .mail-copy-icon--error,.mail-copy-feedback.is-error .mail-copy-label--error{opacity:1;transform:translateZ(0) scale(1)}.mail-copy-feedback.is-copying .mail-copy-icon--loading{animation:mail-copy-spin .76s linear infinite}.mail-copy-feedback.is-success{background:#deedeaf7;color:var(--ink)}.mail-copy-feedback.is-error{background:#f5e8e5;color:#783d37}@keyframes mail-copy-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.visual-link{--visual-pointer-x: 0px;--visual-pointer-y: 0px;position:absolute;top:29px;right:30px;display:grid;margin:-12px;padding:12px;place-items:center;overflow:visible;background:none;color:var(--ink);cursor:default;font-size:16px;line-height:.8;isolation:isolate}.visual-link-feedback{--visual-pointer-x: 0px;--visual-pointer-y: 0px;position:fixed;z-index:110;top:calc(var(--visual-pointer-y) + 9px);left:calc(var(--visual-pointer-x) - 9px);display:flex;min-width:76px;height:40px;padding:0 15px;align-items:center;justify-content:center;border-radius:999px;background:#ffffffd1;color:#0f424cd1;font-size:14px;line-height:1;opacity:0;pointer-events:none;transform:translate3d(-100%,0,0) scale(.9);transform-origin:right top;transition:opacity .15s ease,transform .24s cubic-bezier(.22,1,.36,1);white-space:nowrap;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.visual-link-feedback.is-visible{opacity:1;transform:translate3d(-100%,0,0) scale(1)}.visual-link-content{position:relative;display:grid;place-items:center}.visual-link-label{position:relative;z-index:5;grid-area:1 / 1;transition:opacity .18s ease 80ms,transform .44s cubic-bezier(.22,1,.36,1)}.visual-link-cascade{position:absolute;z-index:4;top:50%;left:calc(50% - 24px);width:calc(200% + 8px);height:56px;pointer-events:none;transform:translate(-50%,-50%)}.visual-link-layer{position:absolute;top:50%;left:50%;display:block;width:100%;height:auto;opacity:0;transform:translate(-50%,-50%) translate3d(0,5px,0) rotate(0) scale(.82);transition:opacity .2s ease var(--exit-delay),transform .54s cubic-bezier(.22,1,.36,1) var(--exit-delay);will-change:transform,opacity}.visual-link-layer--yellow{--layer-x: -9px;--layer-y: 8px;--layer-rotation: -4deg;--enter-delay: 0ms;--exit-delay: .15s}.visual-link-layer--blue{--layer-x: -5px;--layer-y: 5px;--layer-rotation: 2deg;--enter-delay: 65ms;--exit-delay: .1s}.visual-link-layer--pink{--layer-x: 3px;--layer-y: -5px;--layer-rotation: -3deg;--enter-delay: .13s;--exit-delay: 50ms}.visual-link-layer--orange{--layer-x: 5px;--layer-y: 2px;--layer-rotation: 3deg;--enter-delay: 195ms;--exit-delay: 0ms}.visual-link[aria-disabled=true]{opacity:1}.visual-link.is-active{cursor:pointer}.visual-link.is-active .visual-link-label{opacity:1;transform:none}.global-visual-link{position:fixed;z-index:95;view-transition-name:global-visual-action}.language-toggle{position:fixed;z-index:95;top:29px;right:106px;margin:-12px;padding:12px;border:0;background:none;color:var(--ink);cursor:pointer;font-size:16px;line-height:.8;text-transform:lowercase}.language-toggle--gallery{view-transition-name:global-language-action}.language-toggle--case{display:none}.visual-playground{--visual-portal-x: calc(100% - 58px) ;--visual-portal-y: 48px;position:fixed;z-index:80;top:0;right:0;bottom:0;left:0;overflow:hidden;overscroll-behavior:none;touch-action:none;background:#efefef;color:var(--ink);cursor:grab;-webkit-user-select:none;user-select:none;will-change:clip-path,transform}.visual-playground.has-lightbox{touch-action:auto}.visual-playground:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.62;pointer-events:none;background-image:radial-gradient(circle,rgba(15,66,76,.13) 1px,transparent 1.15px);background-position:center;background-size:24px 24px}.visual-playground.is-dragging{cursor:grabbing}.visual-playground--color-portal.visual-playground--opening{animation:visual-color-portal-in .9s cubic-bezier(.65,0,.35,1) both}.visual-playground--color-portal.visual-playground--closing{animation:visual-color-portal-in .76s cubic-bezier(.65,0,.35,1) reverse both}.visual-playground--plane.visual-playground--opening{animation:visual-plane-in .76s cubic-bezier(.22,1,.36,1) both;transform-origin:100% 0}.visual-playground--plane.visual-playground--closing{animation:visual-plane-out .62s cubic-bezier(.64,0,.78,0) both;transform-origin:100% 0}.visual-playground--tile-wave.visual-playground--opening{animation:visual-tile-wave-surface-in .96s linear both}.visual-playground--tile-wave.visual-playground--closing{animation:visual-tile-wave-surface-out .76s linear both}.visual-transition-cascade{position:fixed;z-index:20;top:48px;right:58px;width:112px;height:64px;opacity:0;pointer-events:none;transform-origin:50% 50%}.visual-playground--plane .visual-transition-cascade,.visual-playground--tile-wave .visual-transition-cascade{display:none}.visual-transition-layer{position:absolute;top:50%;left:50%;display:block;width:100%;height:auto;transform:translate(-50%,-50%);transform-origin:50% 50%}.visual-transition-layer--yellow{transform:translate(calc(-50% - 9px),calc(-50% + 8px)) rotate(-4deg)}.visual-transition-layer--blue{transform:translate(calc(-50% - 5px),calc(-50% + 5px)) rotate(2deg)}.visual-transition-layer--pink{transform:translate(calc(-50% + 3px),calc(-50% - 5px)) rotate(-3deg)}.visual-transition-layer--orange{transform:translate(calc(-50% + 5px),calc(-50% + 2px)) rotate(3deg)}.visual-playground--opening .visual-transition-cascade{animation:visual-portal-cascade-morph .9s cubic-bezier(.65,0,.35,1) both}.visual-playground--closing .visual-transition-cascade{animation:visual-portal-cascade-morph .76s cubic-bezier(.65,0,.35,1) reverse both}.visual-playground--color-portal.visual-playground--opening .visual-playground-stage{animation:visual-portal-stage-in .9s cubic-bezier(.65,0,.35,1) both}.visual-playground--color-portal.visual-playground--closing .visual-playground-stage{animation:visual-portal-stage-in .76s cubic-bezier(.65,0,.35,1) reverse both}@keyframes visual-color-portal-in{0%{-webkit-clip-path:circle(0 at var(--visual-portal-x) var(--visual-portal-y));clip-path:circle(0 at var(--visual-portal-x) var(--visual-portal-y))}to{-webkit-clip-path:circle(145vmax at var(--visual-portal-x) var(--visual-portal-y));clip-path:circle(145vmax at var(--visual-portal-x) var(--visual-portal-y))}}@keyframes visual-portal-cascade-morph{0%{opacity:0;transform:translateZ(0) scale(.66) rotate(0)}10%{opacity:1}72%{opacity:.96}to{opacity:0;transform:translate3d(-48vw,52vh,0) scale(12) rotate(-8deg)}}@keyframes visual-portal-stage-in{0%,16%{opacity:0}48%{opacity:.42}to{opacity:1}}@keyframes visual-plane-in{0%{opacity:.72;-webkit-clip-path:inset(0 0 0 100% round 64px);clip-path:inset(0 0 0 100% round 64px);transform:perspective(1200px) translate3d(8vw,-3vh,0) rotateY(-8deg) scale(.94)}to{opacity:1;-webkit-clip-path:inset(0 round 0);clip-path:inset(0 round 0);transform:perspective(1200px) translateZ(0) rotateY(0) scale(1)}}@keyframes visual-plane-out{0%{opacity:1;-webkit-clip-path:inset(0 round 0);clip-path:inset(0 round 0);transform:perspective(1200px) translateZ(0) rotateY(0) scale(1)}to{opacity:.72;-webkit-clip-path:inset(0 0 0 100% round 64px);clip-path:inset(0 0 0 100% round 64px);transform:perspective(1200px) translate3d(8vw,-3vh,0) rotateY(-8deg) scale(.94)}}@keyframes visual-tile-wave-surface-in{0%{opacity:0}14%,to{opacity:1}}@keyframes visual-tile-wave-surface-out{0%,82%{opacity:1}to{opacity:0}}@keyframes visual-tile-wave-in{0%{opacity:0;transform:translate3d(28px,-18px,0) scale(.78)}to{opacity:1;transform:translateZ(0) scale(1)}}@keyframes visual-tile-wave-out{0%{opacity:1;transform:translateZ(0) scale(1)}to{opacity:0;transform:translate3d(28px,-18px,0) scale(.78)}}.visual-playground-wordmark{position:fixed;z-index:4;top:30px;left:30px;margin:-12px;padding:12px;border:0;border-radius:8px;background:none;color:var(--ink);cursor:pointer;font:inherit;font-size:16px;line-height:.8}.visual-playground-stage{position:absolute;top:50%;left:50%;width:0;height:0;will-change:transform}.visual-playground-board{position:absolute;contain:layout style}.visual-work-card{position:absolute;display:block;padding:0;overflow:hidden;border:0;border-radius:14px;background:#dfe2e2;box-shadow:none;cursor:pointer;transform:translateZ(0);transition:transform .48s cubic-bezier(.22,1,.36,1)}.visual-work-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid rgba(255,255,255,.28);border-radius:inherit;pointer-events:none}.visual-work-card img,.visual-work-card video{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none;transform:scale(1.002);transition:transform .7s cubic-bezier(.22,1,.36,1)}.visual-work-card .visual-work-video-poster{position:relative;z-index:0;opacity:1;transition:opacity .12s ease,transform .7s cubic-bezier(.22,1,.36,1)}.visual-work-video-badge{position:absolute;z-index:2;top:10px;right:10px;display:grid;width:26px;height:26px;place-items:center;border:1px solid rgba(255,255,255,.19);border-radius:50%;background:#0a0e0f80;color:#fff;pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.visual-work-video-icon{display:block;width:12px;height:12px;fill:currentColor;transform:translate(-.5px)}.visual-playground--tile-wave.visual-playground--opening .visual-work-card{animation:visual-tile-wave-in .64s cubic-bezier(.22,1,.36,1) var(--visual-wave-delay, 0ms) both;transform-origin:100% 0;will-change:transform,opacity}.visual-playground--tile-wave.visual-playground--closing .visual-work-card{animation:visual-tile-wave-out .5s cubic-bezier(.64,0,.78,0) var(--visual-wave-close-delay, 0ms) both;transform-origin:100% 0;will-change:transform,opacity}.visual-work-placeholder{display:grid;width:100%;height:100%;place-items:center;background:#d8dada;color:#0f424c57;pointer-events:none}.visual-work-placeholder span{font-size:13px;line-height:1}.visual-playground:not(.is-dragging) .visual-work-card:hover,.visual-work-card:focus-visible{z-index:2;box-shadow:none;transform:translateZ(0) scale(1.04)}.visual-playground:not(.is-dragging) .visual-work-card:hover img,.visual-playground:not(.is-dragging) .visual-work-card:hover video,.visual-work-card:focus-visible img,.visual-work-card:focus-visible video{transform:scale(1.035)}.visual-playground.is-dragging .visual-work-card{cursor:grabbing}.visual-lightbox{position:fixed;z-index:160;top:0;right:0;bottom:0;left:0;display:grid;padding:58px clamp(22px,5vw,80px) 42px;place-items:center;background:#0a0e0fd1;cursor:default;animation:visual-lightbox-in .26s ease both}.visual-lightbox-panel{display:flex;width:fit-content;max-width:100%;max-height:100%;align-items:stretch;flex-direction:column}.visual-lightbox-media{position:relative;display:grid;place-items:center}.visual-lightbox-media.has-video{width:fit-content;align-self:center}.visual-lightbox-media>img,.visual-lightbox-media>video{display:block;max-width:min(1120px,82vw);max-height:calc(100dvh - 190px);border-radius:18px;box-shadow:0 30px 100px #0000005c;object-fit:contain}.visual-lightbox-scroll{width:min(760px,82vw);max-height:calc(100dvh - 190px);overflow-x:hidden;overflow-y:auto;border-radius:18px;background:#dcebf2;box-shadow:0 30px 100px #0000005c;overscroll-behavior:contain;scrollbar-width:none;touch-action:pan-y}.visual-lightbox-scroll img{display:block;width:100%;height:auto}.visual-lightbox-scroll:focus-visible{outline-color:#fff;outline-offset:5px}.visual-lightbox-scroll::-webkit-scrollbar{display:none}.visual-lightbox-scrollbar{position:absolute;z-index:3;top:10px;right:2px;bottom:10px;width:14px;cursor:grab;touch-action:none}.visual-lightbox-scrollbar:active{cursor:grabbing}.visual-lightbox-scrollbar i{position:absolute;top:0;right:5px;display:block;width:4px;border:1px solid rgba(255,255,255,.42);border-radius:999px;background:#0f424c8c;box-shadow:0 1px 5px #0f424c33}.visual-lightbox-placeholder{display:grid;width:min(960px,82vw,calc(133.333dvh - 254px));aspect-ratio:4 / 3;place-items:center;border-radius:18px;background:#d8dada;box-shadow:0 30px 100px #0000005c;color:#0f424c57}.visual-lightbox-placeholder span{font-size:18px;line-height:1}.visual-lightbox-close{position:absolute;z-index:2;top:0;right:0;display:block;width:42px;height:42px;padding:0;border:1px solid rgba(255,255,255,.14);border-radius:50%;background:#ffffff1a;color:#fff;cursor:pointer;transform:translate(calc(100% + 10px),calc(-100% - 10px));transition:transform .22s cubic-bezier(.22,1,.36,1),background .22s ease}.visual-lightbox-close:hover,.visual-lightbox-close:focus-visible{background:#ffffff2e;transform:translate(calc(100% + 10px),calc(-100% - 10px)) scale(1.05)}.visual-lightbox-close svg{position:absolute;top:50%;left:50%;display:block;width:20px;height:20px;fill:currentColor;transform:translate(-50%,-50%)}.visual-lightbox-sound{position:absolute;z-index:4;right:14px;bottom:14px;display:grid;width:34px;height:34px;padding:0;place-items:center;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:#0a0e0fad;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .18s ease,transform .22s cubic-bezier(.22,1,.36,1)}.visual-lightbox-sound:hover,.visual-lightbox-sound:focus-visible{background:#0a0e0fd6;transform:scale(1.06)}.visual-lightbox-sound svg{display:block;width:16px;height:16px;fill:currentColor;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.65}.visual-lightbox-arrow{position:absolute;z-index:2;top:50%;display:grid;width:44px;height:44px;padding:0;place-items:center;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:#0a0e0fad;color:#fff;cursor:pointer;font-size:19px;line-height:1;transform:translateY(-50%);transition:background .18s ease,transform .22s cubic-bezier(.22,1,.36,1)}.visual-lightbox-arrow--prev{left:-58px}.visual-lightbox-arrow--next{right:-58px}.visual-lightbox-arrow:hover,.visual-lightbox-arrow:focus-visible{background:#0a0e0fd6;transform:translateY(-50%) scale(1.06)}.visual-lightbox-count{position:absolute;top:14px;right:14px;z-index:2;padding:7px 10px;border-radius:999px;background:#0a0e0fad;color:#fff;font-size:11px;line-height:1;pointer-events:none}.visual-lightbox-copy{display:flex;margin-top:22px;gap:7px;align-items:flex-start;flex-direction:column;color:#fff}.visual-lightbox-copy h2{max-width:640px;margin:0;font-size:16px;font-weight:500;line-height:1.25}.visual-lightbox-copy p{max-width:640px;margin:0;color:#ffffffc7;font-size:13px;line-height:1.4}.visual-lightbox-link{padding:0;border:0;background:none;color:#fff;font-size:12px;line-height:1.4;text-decoration:none;transition:opacity .18s ease}.visual-lightbox-link:not(.is-disabled):hover,.visual-lightbox-link:not(.is-disabled):focus-visible{opacity:.62}.visual-lightbox-link.is-disabled{color:#ffffff61}@keyframes visual-lightbox-in{0%{opacity:0}to{opacity:1}}.workplace-nav{position:absolute;top:30px;left:50%;display:flex;gap:18px;align-items:flex-start;transform:translate(-50%)}.nav-item{position:relative;display:flex;width:78px;padding:0 0 8px;flex-direction:column;gap:8px;align-items:center;background:none;color:var(--ink);cursor:pointer}.nav-icon-wrap{position:relative;display:grid;width:74px;height:74px;place-items:center;border-radius:50%;background:var(--paper);transition:background-color .42s ease,transform .24s ease}.nav-icon-wrap img{display:block;width:52px;height:52px;object-fit:contain;filter:none;transform:translateY(var(--nav-icon-offset-y, 0)) scale(.95);transition:filter .42s ease,transform .24s ease}.nav-item--silaunion,.mobile-active--silaunion,.nav-item--pirobyte,.mobile-active--pirobyte{--nav-icon-offset-y: -3px}.nav-item--umschool,.mobile-active--umschool{--nav-icon-offset-y: 3px}.nav-icon-wrap.is-active{transform:scale(1.02)}.nav-label{font-size:15px;font-weight:500;line-height:.8;white-space:nowrap}.circular-progress{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;overflow:visible;transform:rotate(-90deg)}.circular-progress circle{fill:none;stroke-width:2.25;vector-effect:non-scaling-stroke}.circular-progress-track{stroke:#0f424c1f}.circular-progress-value{stroke:var(--ink);stroke-linecap:round;transition:stroke-dashoffset .52s cubic-bezier(.22,1,.36,1)}.shell-header--hero .nav-label{color:#fff}.shell-header--hero .nav-icon-wrap{background:transparent}.shell-header--hero .nav-icon-wrap img{filter:drop-shadow(0 5px 7px rgba(0,0,0,.22))}.shell-header--hero .circular-progress-track,.shell-header--hero .circular-progress-value{stroke:transparent}.mobile-active,.menu-toggle{display:none}.hero{position:relative;width:100%;height:100dvh;min-height:620px;overflow:hidden;background:#efefef}.hero-visual{position:absolute;z-index:0;top:0;right:0;bottom:0;left:0;overflow:hidden;border-radius:0;-webkit-clip-path:inset(0 round 0);clip-path:inset(0 round 0);-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0) rotateY(0);transform-origin:50% 50%;transition:transform 1.4s cubic-bezier(.22,1,.36,1),border-radius .24s cubic-bezier(.22,1,.36,1),clip-path .24s cubic-bezier(.22,1,.36,1)}.hero-static,.hero-canvas,.hero-dot-field{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;border-radius:inherit}.hero-static{z-index:0;object-fit:cover;transition:opacity .52s ease}.hero-canvas{z-index:1;opacity:1;transform-origin:50% 50%;transition:transform 1.25s cubic-bezier(.22,1,.36,1),filter 1.25s cubic-bezier(.22,1,.36,1),opacity .76s ease;will-change:transform,opacity}.hero-card-material{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:block;overflow:hidden;border-radius:inherit;opacity:0;pointer-events:none}.hero-card-material:before,.hero-card-material:after{content:"";position:absolute;top:-35%;right:-35%;bottom:-35%;left:-35%;pointer-events:none}.hero-card-material:before{background:linear-gradient(112deg,transparent 31%,rgba(255,255,255,.08) 39%,rgba(255,255,255,.72) 48%,rgba(255,255,255,.18) 55%,transparent 65%);mix-blend-mode:screen;opacity:0;transform:translate3d(-34%,0,0) rotate(6deg)}.hero-card-material:after{background:radial-gradient(circle at 38% 24%,rgba(255,255,255,.28),transparent 25%),linear-gradient(145deg,rgba(255,255,255,.14),transparent 38%,rgba(9,32,38,.14) 88%);mix-blend-mode:soft-light}.hero-card-edge{position:absolute;z-index:4;display:block;opacity:0;pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden}.hero-card-edge--left,.hero-card-edge--right{top:28px;width:8px;height:calc(100% - 56px);background:linear-gradient(180deg,#dfe3e1fc,#97a0a0fc 54%,#596365fc)}.hero-card-edge--left{left:-8px;transform-origin:right center;transform:rotateY(-90deg)}.hero-card-edge--right{right:-8px;transform-origin:left center;transform:rotateY(90deg)}.hero-card-edge--top,.hero-card-edge--bottom{left:28px;width:calc(100% - 56px);height:8px;background:linear-gradient(90deg,#6b7678fc,#dce0defc 48%,#5c6668fc)}.hero-card-edge--top{top:-8px;transform-origin:center bottom;transform:rotateX(90deg)}.hero-card-edge--bottom{bottom:-8px;transform-origin:center top;transform:rotateX(-90deg)}.hero-card-back{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;display:block;border:1px solid rgba(70,81,83,.28);border-radius:inherit;background:#b9c0bf;opacity:0;pointer-events:none;transform:translateZ(-8px);-webkit-backface-visibility:hidden;backface-visibility:hidden}.hero-dot-field{z-index:3;opacity:.68;pointer-events:none;transform-origin:50% 50%;transition:transform 1.25s cubic-bezier(.22,1,.36,1),opacity .76s ease;will-change:transform,opacity}.hero-copy{--hero-copy-y: -25%;--hero-card-shift: 0vw;--hero-card-scale: 1;--hero-copy-transform: translate(calc(-50% + var(--hero-card-shift)), var(--hero-copy-y)) scale(var(--hero-card-scale));--hero-copy-intro-transform: translate(-50%, -25%) scale(.94);position:absolute;z-index:4;top:calc(50% - 71px);left:50%;width:min(440px,calc(100vw - 64px));color:#fff;text-align:center;transform:var(--hero-copy-transform);transition:transform 1.4s cubic-bezier(.22,1,.36,1)}.app--preparing-intro .shell-header,.app--preparing-intro>.global-visual-link,.app--preparing-intro>.language-toggle,.app--preparing-intro .viewport-social-links,.app--preparing-intro .scroll-hint,.app--preparing-intro>.viewport-resume-actions{visibility:hidden;opacity:0;pointer-events:none}.app--preparing-intro .portfolio-flow-slide:first-child .hero-title-underlay,.app--preparing-intro .portfolio-flow-slide:first-child .hero-title-text,.app--preparing-intro .portfolio-flow-slide:first-child .hero-copy p{opacity:0}.app--preparing-intro .portfolio-flow-slide:first-child .hero-title:before{opacity:.001}.app--intro .shell-header,.app--intro>.global-visual-link,.app--intro>.language-toggle{animation:intro-top-in 1.4s cubic-bezier(.22,1,.36,1) both}.app--intro .portfolio-flow-slide:first-child .hero-copy{animation:intro-hero-copy-in .9s cubic-bezier(.22,1,.36,1) .82s both}.app--intro .portfolio-flow-slide:first-child .hero-title-underlay,.app--intro .portfolio-flow-slide:first-child .hero-title-text,.app--intro .portfolio-flow-slide:first-child .hero-title:before{animation:intro-hero-layer-in .9s cubic-bezier(.22,1,.36,1) .82s both}.app--intro .portfolio-flow-slide:first-child .hero-copy p{animation:intro-hero-layer-in .9s cubic-bezier(.22,1,.36,1) .82s both,intro-content-sharpen .72s cubic-bezier(.22,1,.36,1) .82s both}.app--intro .scroll-hint{--hero-layer-opacity: 1;animation:intro-hero-layer-in .9s cubic-bezier(.22,1,.36,1) .82s both}.app--intro .viewport-social-links,.app--intro .viewport-resume-actions{animation:intro-bottom-in 1.4s cubic-bezier(.22,1,.36,1) .12s both}.app--card-preloader.app--preparing-intro .portfolio-flow-slide:first-child .hero-visual{top:50%;left:50%;width:min(560px,calc(100vw - 36px));height:min(350px,calc(62.5vw - 22.5px));border-radius:30px;overflow:visible;clip-path:none;box-shadow:none;opacity:0;transform:translate3d(-50%,-48%,0) perspective(1200px) rotateX(-7deg) rotateY(-14deg) rotate(-1.25deg) scale(.92);-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.app--card-preloader.app--preparing-intro .portfolio-flow-slide:first-child .hero-dot-field{opacity:0}.app--card-preloader.app--intro .portfolio-flow-slide:first-child .hero-visual{top:50%;left:50%;animation:card-preloader-unfold 3s cubic-bezier(.2,.72,.18,1) both;overflow:visible;-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.app--card-preloader.app--intro .portfolio-flow-slide:first-child .hero-card-material{animation:card-preloader-material 2.44s cubic-bezier(.22,1,.36,1) both}.app--card-preloader.app--intro .portfolio-flow-slide:first-child .hero-card-material:before{animation:card-preloader-glare 3s linear both}.app--card-preloader.app--intro .portfolio-flow-slide:first-child .hero-card-edge--right{animation:card-edge-right 3s linear both}.app--card-preloader.app--intro .portfolio-flow-slide:first-child .hero-card-edge--left{animation:card-edge-left 3s linear both}.app--card-preloader.app--intro .portfolio-flow-slide:first-child .hero-card-edge--top{animation:card-edge-top 3s linear both}.app--card-preloader.app--intro .portfolio-flow-slide:first-child .hero-card-edge--bottom{animation:card-edge-bottom 3s linear both}.app--card-preloader.app--intro .portfolio-flow-slide:first-child .hero-card-back{animation:card-back-visibility 3s linear both}.app--card-preloader.app--intro .portfolio-flow-slide:first-child .hero-dot-field{animation:card-preloader-dots .6s ease 2.74s both}.app--card-preloader.app--intro .shell-header,.app--card-preloader.app--intro>.global-visual-link,.app--card-preloader.app--intro>.language-toggle{animation:intro-top-in .56s cubic-bezier(.22,1,.36,1) 2.84s both}.app--card-preloader.app--intro .portfolio-flow-slide:first-child .hero-copy{animation:intro-hero-copy-in .6s cubic-bezier(.22,1,.36,1) 2.8s both}.app--card-preloader.app--intro .portfolio-flow-slide:first-child .hero-title-underlay,.app--card-preloader.app--intro .portfolio-flow-slide:first-child .hero-title-text,.app--card-preloader.app--intro .portfolio-flow-slide:first-child .hero-title:before{animation:intro-hero-layer-in .6s cubic-bezier(.22,1,.36,1) 2.8s both}.app--card-preloader.app--intro .portfolio-flow-slide:first-child .hero-copy p{animation:intro-hero-layer-in .56s cubic-bezier(.22,1,.36,1) 2.84s both,intro-content-sharpen .56s cubic-bezier(.22,1,.36,1) 2.84s both}.app--card-preloader.app--intro .scroll-hint{animation:intro-hero-layer-in .56s cubic-bezier(.22,1,.36,1) 2.84s both}.app--card-preloader.app--intro .viewport-social-links,.app--card-preloader.app--intro .viewport-resume-actions{animation:intro-bottom-in .52s cubic-bezier(.22,1,.36,1) 2.88s both}.card-preloader-3d{position:fixed;z-index:20;top:0;right:0;bottom:0;left:0;display:block;width:100vw;height:100dvh;opacity:0;pointer-events:none}.card-preloader-3d.is-playing{animation:card-preloader-3d-visibility 3s linear both}.route-preloader-backdrop{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;background:var(--paper);pointer-events:none}.app--routed-entry .card-preloader-3d{z-index:110}.app--card-3d-ready.app--preparing-intro .portfolio-flow-slide:first-child .hero-visual{transform:translate3d(-50%,-50%,0) scale(1)}.app--card-3d-ready.app--intro .portfolio-flow-slide:first-child .hero-visual{animation:card-preloader-unfold-3d 3s linear both;overflow:hidden;will-change:width,height,border-radius,clip-path,transform,opacity}.app--card-3d-ready .portfolio-flow-slide:first-child .hero-card-material,.app--card-3d-ready .portfolio-flow-slide:first-child .hero-card-edge,.app--card-3d-ready .portfolio-flow-slide:first-child .hero-card-back{display:none}.app--gallery .portfolio-flow-slide:first-child .hero-visual,.app--hero-exit-left .portfolio-flow-slide:first-child .hero-visual{border-radius:80px;-webkit-clip-path:inset(0 round 80px);clip-path:inset(0 round 80px);transform:translate3d(-5vw,0,-180px) rotateY(-9deg)}.app--gallery .portfolio-flow-slide:last-child .hero-visual,.app--hero-exit-right .portfolio-flow-slide:last-child .hero-visual{border-radius:80px;-webkit-clip-path:inset(0 round 80px);clip-path:inset(0 round 80px);transform:translate3d(5vw,0,-180px) rotateY(9deg)}.app--gallery .portfolio-flow-slide:first-child .hero-copy,.app--hero-exit-left .portfolio-flow-slide:first-child .hero-copy{--hero-card-shift: -5vw;--hero-card-scale: .86}.app--gallery .portfolio-flow-slide:last-child .hero-copy,.app--hero-exit-right .portfolio-flow-slide:last-child .hero-copy{--hero-card-shift: 5vw;--hero-card-scale: .86}.hero-title{position:relative;display:grid;place-items:center}.hero-title-underlay,.hero-title-text{grid-area:1 / 1;display:block;height:auto;pointer-events:none;-webkit-user-select:none;user-select:none}.hero-title-underlay{--hero-layer-opacity: .98;position:relative;z-index:1;width:min(501.5px,calc(100vw - 48px));opacity:.98}.hero-title-text{position:relative;z-index:2;width:min(454px,calc(100vw - 72px))}.hero-title-underlay--en{width:min(443px,calc(100vw - 60px))}.hero-title-text--en{width:min(393px,calc(100vw - 84px))}.hero-title-layer--en{display:none}html[lang=en] .hero-title-layer--ru{visibility:hidden}html[lang=en] .hero-title-layer--en{display:block}.hero-copy p{--hero-layer-opacity: .92;max-width:440px;margin:10px auto 0;font-size:18px;line-height:1.2;opacity:.92}@media(min-width:761px){.hero-title{transform:translate(-34px)}}.scroll-hint{display:none;position:absolute;z-index:5;bottom:30px;left:50%;padding:10px 14px;border:1px solid rgba(255,255,255,.6);border-radius:999px;background:#ffffff1f;color:#fff;cursor:pointer;font-size:12px;letter-spacing:normal;text-transform:none;transform:translate(-50%)}.viewport-social-links{position:fixed;z-index:95;bottom:30px;left:30px;view-transition-name:global-contact-actions}.resume-button{position:fixed;z-index:30;right:30px;bottom:30px;display:flex;padding:12px 22px 12px 16px;align-items:center;border-radius:9px;background:#fff;color:var(--ink);cursor:pointer;font-size:16px;line-height:1.2;transform:scale(1);transform-origin:center;transition:transform .28s cubic-bezier(.22,1,.36,1)}.resume-button-content{position:relative;display:grid}.resume-button-layer{display:flex;grid-area:1 / 1;gap:8px;align-items:center}.resume-button-sheen{color:#fff;opacity:0;pointer-events:none;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.28) 24%,#000 50%,rgba(0,0,0,.42) 72%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.28) 24%,#000 50%,rgba(0,0,0,.42) 72%,transparent 100%);-webkit-mask-position:-48px 0;mask-position:-48px 0;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:42px 100%;mask-size:42px 100%}@keyframes resume-sheen-pass{0%{-webkit-mask-position:-48px 0;mask-position:-48px 0;opacity:0}14%{opacity:1}84%{opacity:1}to{-webkit-mask-position:calc(100% + 48px) 0;mask-position:calc(100% + 48px) 0;opacity:0}}@media(hover:hover)and (pointer:fine){.resume-button:hover{transform:scale(1.045)}.resume-button:hover .resume-button-sheen{animation:resume-sheen-pass 1.12s cubic-bezier(.22,1,.36,1) both}}.viewport-resume-actions{--action-size: 48px;position:fixed;z-index:95;right:30px;bottom:30px;display:flex;gap:12px;align-items:center;view-transition-name:global-resume-action}.viewport-resume-actions .resume-button{position:static;min-height:var(--action-size);padding:0 20px}.halloween-music{position:relative;flex:0 0 var(--action-size)}.halloween-music audio{display:none}.halloween-music-button{display:grid;width:var(--action-size);height:var(--action-size);padding:8px;place-items:center;border:0;border-radius:9px;background:#fff;color:var(--ink);cursor:pointer}.pumpkin-record-hover{display:block;width:30px;height:30px;transform:scale(1);transform-origin:center;transition:transform .26s cubic-bezier(.22,1,.36,1)}.pumpkin-record-rotor{position:relative;display:block;width:100%;height:100%;animation:pumpkin-record-spin 7.5s linear infinite;animation-play-state:paused;transform-origin:center}.pumpkin-record{display:block;width:30px;height:30px}.pumpkin-record-sheen{position:absolute;top:0;right:0;bottom:0;left:0;display:block;color:#fff;opacity:0;pointer-events:none;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.28) 24%,#000 50%,rgba(0,0,0,.42) 72%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.28) 24%,#000 50%,rgba(0,0,0,.42) 72%,transparent 100%);-webkit-mask-position:-48px 0;mask-position:-48px 0;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:42px 100%;mask-size:42px 100%}.halloween-music.is-playing .pumpkin-record-rotor{animation-play-state:running}@media(hover:hover)and (pointer:fine){.halloween-music-button:hover .pumpkin-record-hover,.halloween-music-button:focus-visible .pumpkin-record-hover{transform:scale(1.07)}.halloween-music-button:hover .pumpkin-record-sheen,.halloween-music-button:focus-visible .pumpkin-record-sheen{animation:resume-sheen-pass 1.12s cubic-bezier(.22,1,.36,1) both}}@keyframes pumpkin-record-spin{to{transform:rotate(360deg)}}.halloween-music-status{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.resume-button:disabled{cursor:not-allowed;opacity:.82}.resume-button-icon{display:block;width:24px;height:24px;fill:currentColor}.resume-drawer{position:fixed;z-index:200;top:0;right:0;bottom:0;left:0;overflow:hidden;overflow:clip;pointer-events:none}.resume-drawer.is-open{pointer-events:auto}.resume-drawer:before{content:"";position:absolute;z-index:1;top:0;right:0;bottom:0;width:min(960px,calc(100vw - 48px));border-radius:30px 0 0 30px;background:#e7eaea;opacity:0;pointer-events:none;transition:opacity 0s}.resume-drawer.is-open:before{opacity:1;transition-delay:.68s}.resume-drawer-backdrop{position:absolute;z-index:0;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:0;background:#0f424c2e;cursor:pointer;opacity:0;transition:opacity .36s ease}.resume-drawer.is-open .resume-drawer-backdrop{opacity:1}.resume-drawer-panel{--resume-drawer-hidden-transform: translateX( calc(100% + 48px) );position:absolute;z-index:2;top:0;right:0;bottom:0;width:min(960px,calc(100vw - 48px));overflow:hidden;isolation:isolate;contain:layout paint;border:0;border-radius:30px 0 0 30px;background:#e7eaea;box-shadow:0 24px 70px #0f424c2e;transform:var(--resume-drawer-hidden-transform);transform-origin:100% 50%;will-change:transform}.resume-drawer-actions{position:absolute;z-index:3;top:18px;right:18px;display:flex;gap:8px;align-items:center}.resume-music-credits{padding:8px 0;margin-right:8px;font-size:12px;text-underline-offset:3px}.resume-download-button,.resume-close-button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;border-radius:10px;background:#efefefe6;box-shadow:none;color:var(--ink);cursor:pointer;text-decoration:none;transition:background .18s ease,transform .28s cubic-bezier(.22,1,.36,1);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.resume-download-button{padding:10px 16px 10px 13px;gap:7px;font-size:14px}.resume-close-button{width:44px;padding:10px}.resume-drawer-action-icon{display:block;width:20px;height:20px;fill:currentColor}.resume-download-button:hover,.resume-download-button:focus-visible,.resume-close-button:hover,.resume-close-button:focus-visible{background:#e2e7e7f5;transform:scale(1.035)}.resume-document-scroll{position:absolute;top:0;right:0;bottom:0;left:0;overflow-x:hidden;overflow-y:auto;isolation:isolate;contain:layout paint;overscroll-behavior:contain;background:#e7eaea;scrollbar-width:none}.resume-document-scroll::-webkit-scrollbar{display:none}.resume-document-pages{display:grid;width:100%;min-height:100%;gap:2px;background:#e7eaea}.resume-document-page{position:relative;width:100%;background:#fff}.resume-document-pages img{display:block;width:100%;height:auto;background:#fff;-webkit-user-select:none;user-select:none}.resume-page-links{position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;pointer-events:none}.resume-page-links a{position:absolute;display:block;border-radius:4px;background:#0f424c00;cursor:pointer;pointer-events:auto;transition:background .16s ease,box-shadow .16s ease}.resume-page-links a:hover,.resume-page-links a:focus-visible{outline:none;background:#0f424c12;box-shadow:0 0 0 1px #0f424c24}.resume-scrollbar{position:absolute;z-index:4;top:80px;right:5px;bottom:14px;width:14px;opacity:0;pointer-events:none;transition:opacity .18s ease}.resume-scrollbar.is-visible{opacity:1}.resume-scrollbar span{position:absolute;top:0;right:4px;display:block;width:5px;min-height:48px;border-radius:999px;background:#0f424c75;box-shadow:0 0 0 1px #ffffff57,0 2px 7px #0f424c24;cursor:grab;pointer-events:auto;touch-action:none;transition:width .18s ease,background .18s ease}.resume-scrollbar span:hover{width:7px;background:#0f424c9e}.resume-scrollbar span:active{cursor:grabbing}@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){.app--title-mask-ready .hero-title:before{content:"";grid-area:1 / 1;position:relative;z-index:0;width:min(501.5px,calc(100vw - 48px));aspect-ratio:501.209 / 217.56;background:#ffffff14;pointer-events:none;-webkit-backdrop-filter:blur(8px) saturate(1.18) brightness(1.04);backdrop-filter:blur(8px) saturate(1.18) brightness(1.04);-webkit-mask-image:url(/assets/hero-title-underlay-mask.svg);mask-image:url(/assets/hero-title-underlay-mask.svg);-webkit-mask-mode:alpha;mask-mode:alpha;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;transform:translateZ(0);will-change:opacity,backdrop-filter,transform}html[lang=en] .app--title-mask-ready .hero-title:before{width:min(443px,calc(100vw - 60px));aspect-ratio:443 / 220;-webkit-mask-image:url(/assets/hero-title-underlay-mask-en.svg);mask-image:url(/assets/hero-title-underlay-mask-en.svg)}}.gallery{position:relative;width:100%;height:100dvh;min-height:620px;overflow:hidden;touch-action:pan-y;background-color:#efefef}.gallery:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background-image:url(/assets/grid-ink.svg);background-position:center;background-size:cover;opacity:.3;pointer-events:none}.gallery-dot-field{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;display:block;width:100%;height:100%;opacity:1;pointer-events:none}.gallery:has(.gallery-dot-field):before{opacity:0}.gallery-stage{position:absolute;z-index:1;top:174px;right:0;bottom:84px;left:0;transform:translateZ(0);-webkit-perspective:1180px;perspective:1180px;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;transition:transform 1.4s cubic-bezier(.22,1,.36,1)}.app--hero .gallery-stage{transform:translate3d(-58vw,0,0)}.case-card{--case-card-height: clamp(438px, calc(100dvh - 230px) , 497px);--case-card-step: clamp(330px, 28vw, 455px);position:absolute;top:50%;left:50%;z-index:var(--card-z);width:calc(var(--case-card-height) * .6);height:var(--case-card-height);padding:0;overflow:hidden;border-radius:clamp(26px,calc(var(--case-card-height) * .06),30px);background:var(--muted-card);color:var(--ink);cursor:pointer;opacity:var(--card-opacity);box-shadow:none;text-align:left;transform:translate(-50%,-50%) translate(calc(var(--card-offset) * var(--case-card-step))) translateY(var(--card-arc-y)) translateZ(var(--card-depth)) rotateY(var(--card-tilt)) rotate(var(--card-rotation)) scale(var(--card-scale));-webkit-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .72s cubic-bezier(.22,1,.36,1),opacity .48s ease,box-shadow .42s ease}.gallery-stage.is-index-morphing .case-card{transition:none;will-change:transform,opacity}.case-card.is-active{box-shadow:none}.case-card--project{--pointer-x: 0px;--pointer-y: 0px;overflow:visible;background:transparent}.case-card-hit-area{position:absolute;top:-18px;right:-18px;bottom:-18px;left:-18px;z-index:4;display:block;border-radius:calc(clamp(26px,calc(var(--case-card-height) * .06),30px) + 18px)}.case-card-surface{position:relative;z-index:2;display:block;width:100%;height:100%;overflow:hidden;border-radius:inherit;background:var(--muted-card)}.case-card-surface.is-placeholder{background-image:url(/assets/grid.svg);background-position:center;background-size:cover}.case-card-cover-image{display:block;width:100%;height:100%;object-fit:cover;image-rendering:auto;-webkit-backface-visibility:hidden;backface-visibility:hidden}.case-card-surface.is-sb21 .case-card-cover-image{object-position:center top}.case-card-surface.is-sb21:after{content:"";position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 48%,rgba(245,249,255,.35) 62%,rgba(245,249,255,.95) 78%,#f5f9ff 100%);pointer-events:none}.case-card-surface.is-onboarding .case-card-cover-image{object-position:center top}.case-card-surface.is-onboarding:after{content:"";position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 43%,rgba(250,252,255,.72) 62%,#fafcff 80%);pointer-events:none}.case-card-cover-copy{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:flex;padding:18px 20px 22px;flex-direction:column;justify-content:space-between;color:#fff;opacity:0;pointer-events:none;transition:opacity .15s ease}.case-card-surface.is-placeholder .case-card-cover-copy{color:var(--ink)}.case-card-surface.is-serverum .case-card-cover-image{object-position:center top}.case-card-surface.is-sb21 .case-card-cover-copy,.case-card-surface.is-onboarding .case-card-cover-copy,.case-card-surface.is-somfort .case-card-cover-copy,.case-card-surface.is-silaunion .case-card-cover-copy{color:var(--ink)}.case-card-surface.is-silaunion{container-type:inline-size}.case-card-surface.is-silaunion .case-card-cover-copy h2{max-width:none;margin-inline:-4px;font-size:clamp(22px,9.2cqi,27px);line-height:1.1;white-space:pre-line}.case-card-cover-copy.is-visible{opacity:1}.case-card-cover-copy p{margin:0;font-size:12px;line-height:1.2;opacity:.82}.case-card-surface.is-sb21 .case-card-cover-copy p{color:#fff;opacity:1}.case-card-cover-copy h2{margin:0;font-family:Inter,Inter Tight,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:36px;font-weight:400;letter-spacing:-.04em;line-height:.92}.case-card-cover-copy h2.is-long{max-width:250px;margin-bottom:0;font-size:27px;line-height:.98}.case-card-cover-copy h2.is-meduza-title{font-size:24px}.case-card-cover-copy span{display:block;max-width:240px;font-size:15px;line-height:1.25}.case-card-hover-action{position:absolute;top:50%;left:50%;z-index:5;display:inline-flex;padding:18px 28px;gap:8px;align-items:center;border:0;border-radius:999px;background:#0a0e0ff7;box-shadow:0 12px 30px #00000038;color:#fff;font-size:16px;line-height:1;opacity:0;pointer-events:none;transform:translate3d(var(--pointer-x),var(--pointer-y),0) translate(-50%,-50%) scale(.9);transition:opacity .15s ease;white-space:nowrap}.case-card-status-icon,.case-card-status-spinner,.case-card-eye-icon{display:block;width:18px;height:18px;flex:none}.case-card-status-spinner{border:1.7px solid currentColor;border-right-color:transparent;border-radius:50%}.case-card-eye-icon{transform:translateY(2px)}.case-card-lock-icon{overflow:visible}.case-card-eye-open{opacity:1;transform-origin:center}.case-card-eye-closed{opacity:0;transform:rotate(180deg);transform-origin:center}.case-card-lock-shackle-open{opacity:1}.case-card-lock-shackle-closed{opacity:0;transform:translateY(-2.5px)}@keyframes case-eye-open-close{0%,34%,62%,to{opacity:1;transform:scaleY(1)}43%,53%{opacity:0;transform:scaleY(.2)}}@keyframes case-eye-closed-open{0%,34%,62%,to{opacity:0;transform:rotate(180deg) scaleY(.45)}43%,53%{opacity:1;transform:rotate(180deg) scaleY(1)}}@keyframes case-lock-open-hide{0%,36%{opacity:1;transform:translateY(0)}46%,to{opacity:0;transform:translateY(1px)}}@keyframes case-lock-closed-drop{0%,36%{opacity:0;transform:translateY(-2.5px)}46%{opacity:1;transform:translateY(-2.5px)}76%{opacity:1;transform:translateY(.7px)}to{opacity:1;transform:translateY(0)}}@media(hover:hover)and (pointer:fine){.case-card--project{cursor:pointer}.case-card--project.is-active{cursor:none}.case-card--project.is-active:hover .case-card-hover-action,.case-card--project.is-active:focus-visible .case-card-hover-action{opacity:1;transform:translate3d(var(--pointer-x),var(--pointer-y),0) translate(-50%,-50%) scale(1)}}.case-card-hover-action--light{background:#fff;color:#0a0e0f;box-shadow:0 12px 30px #0000001f}.case-card--project.is-active:hover .case-card-status-spinner,.case-card--project.is-active:focus-visible .case-card-status-spinner,.more-case-card:hover .case-card-status-spinner,.more-case-card:focus-visible .case-card-status-spinner{animation:mail-copy-spin .76s linear infinite}.case-card--project.is-active:hover .case-card-eye-open,.case-card--project.is-active:focus-visible .case-card-eye-open,.more-case-card:hover .case-card-eye-open,.more-case-card:focus-visible .case-card-eye-open{animation:case-eye-open-close 1.68s ease-in-out infinite}.case-card--project.is-active:hover .case-card-eye-closed,.case-card--project.is-active:focus-visible .case-card-eye-closed,.more-case-card:hover .case-card-eye-closed,.more-case-card:focus-visible .case-card-eye-closed{animation:case-eye-closed-open 1.68s ease-in-out infinite}.case-card--project.is-active:hover .case-card-lock-shackle-open,.case-card--project.is-active:focus-visible .case-card-lock-shackle-open,.more-case-card:hover .case-card-lock-shackle-open,.more-case-card:focus-visible .case-card-lock-shackle-open{animation:case-lock-open-hide .78s ease both}.case-card--project.is-active:hover .case-card-lock-shackle-closed,.case-card--project.is-active:focus-visible .case-card-lock-shackle-closed,.more-case-card:hover .case-card-lock-shackle-closed,.more-case-card:focus-visible .case-card-lock-shackle-closed{animation:case-lock-closed-drop .78s cubic-bezier(.22,1,.36,1) both}.case-card-visual{position:relative;display:grid;height:56%;place-items:center;border-bottom:1px solid rgba(15,66,76,.12);background:#ffffff57}.case-card-visual img{width:128px;height:128px}.case-card-visual span{position:absolute;top:18px;left:18px;font-size:11px;letter-spacing:normal;text-transform:none;opacity:.58}.case-card-copy{padding:18px 20px}.case-card-copy p{margin:0 0 8px;font-size:12px;letter-spacing:normal;text-transform:none;opacity:.58}.case-card-copy h2{margin:0 0 10px;font-family:Inter,Inter Tight,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:36px;font-weight:400;letter-spacing:-.04em;line-height:.92}.case-card-copy span{display:block;font-size:15px;line-height:1.25}.about-card{overflow:visible;background:transparent;cursor:default}.about-card:not(.is-active){pointer-events:none}.about-story-surface{position:relative;z-index:1;width:100%;height:100%;overflow:hidden;border-radius:inherit;background:var(--muted-card)}.about-story-slide{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;pointer-events:none;transform:translate3d(var(--story-offset),0,0);-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .26s cubic-bezier(.22,1,.36,1)}.about-story-slide.is-active{z-index:1}.about-story-video{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}.about-story-caption{position:absolute;right:16px;bottom:18px;left:16px;z-index:2;margin:0;padding:13px 15px 14px;border-radius:16px;background:#ffffffdb;box-shadow:0 8px 26px #08161c29;color:var(--ink);font-size:17px;font-weight:400;line-height:1.27;text-wrap:pretty}.about-story-count{position:absolute;top:16px;left:16px;z-index:2;padding:7px 10px;border-radius:999px;background:#ffffffdb;box-shadow:0 4px 14px #08161c1f;color:var(--ink);font-size:12px;line-height:1}.about-story-slide--second .about-story-caption{top:16px;bottom:auto}.about-story-slide--second .about-story-count{top:auto;bottom:18px}.about-hover-sticker-position{display:none}.about-story-controls{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none;opacity:1}.about-card:not(.is-visible) .about-story-controls{opacity:0;visibility:hidden}.about-story-arrow{position:absolute;top:50%;display:grid;width:42px;height:42px;padding:0;place-items:center;border:1px solid rgba(15,66,76,.1);border-radius:50%;background:#fffffff0;box-shadow:0 5px 18px #0f424c1a;color:var(--ink);cursor:pointer;font-size:20px;line-height:1;pointer-events:auto;transform:translateY(-50%) scale(1);transition:transform .28s cubic-bezier(.22,1,.36,1)}.about-story-arrow--prev{left:-18px}.about-story-arrow--next{right:-18px}.about-story-arrow.is-hidden{visibility:hidden;opacity:0;pointer-events:none}.about-story-arrow-glyph{grid-area:1 / 1}@media(hover:hover)and (pointer:fine){.about-card.is-active.has-hover-sticker{cursor:none}.about-hover-sticker-position{position:absolute;top:0;left:0;z-index:6;display:block;width:181px;height:98px;pointer-events:none;transform:translate3d(var(--sticker-x, 0px),var(--sticker-y, 0px),0) translate(-50%,-50%);will-change:transform}.about-hover-sticker{display:block;width:100%;height:100%;opacity:0;transform:rotate(-6deg) scale(.86);transition:opacity .18s ease,transform .26s cubic-bezier(.22,1,.36,1)}.about-card.has-hover-sticker .about-hover-sticker{opacity:1;transform:rotate(0) scale(1)}.about-card:has(.about-story-arrow:hover) .about-hover-sticker{opacity:0}.about-story-arrow:hover,.about-story-arrow:focus-visible{transform:translateY(-50%) scale(1.045)}}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.mobile-menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:none;padding:96px 18px 30px;background:#f1f7f8f5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.mobile-menu-close{position:absolute;top:18px;right:18px;display:grid;width:46px;height:46px;padding:13px;place-items:center;border:0;border-radius:12px;background:#0f424c14;color:var(--ink);cursor:pointer}.mobile-menu-close svg{display:block;width:20px;height:20px;fill:currentColor}.mobile-menu-grid{display:grid;max-width:440px;margin:auto;grid-template-columns:repeat(2,1fr);gap:24px 12px}.mobile-menu-grid button{display:flex;padding:14px 8px;flex-direction:column;gap:10px;align-items:center;background:none;cursor:pointer}.mobile-menu-grid img{width:72px;height:72px}.visual-playground-close{display:none}@keyframes intro-top-in{0%{opacity:0;filter:blur(10px);transform:translate3d(0,-34px,0) scale(.985)}46%{opacity:1;filter:blur(1.5px)}to{opacity:1;filter:blur(0);transform:translateZ(0) scale(1)}}@keyframes intro-bottom-in{0%{opacity:0;filter:blur(10px);transform:translate3d(0,30px,0) scale(.985)}46%{opacity:1;filter:blur(1.5px)}to{opacity:1;filter:blur(0);transform:translateZ(0) scale(1)}}@keyframes intro-hero-copy-in{0%{transform:var(--hero-copy-intro-transform)}to{transform:var(--hero-copy-transform)}}@keyframes intro-hero-layer-in{0%{opacity:.001}42%,to{opacity:var(--hero-layer-opacity, 1)}}@keyframes intro-content-sharpen{0%{filter:blur(7px)}48%{filter:blur(1px)}to{filter:blur(0)}}@keyframes card-preloader-unfold{0%{width:min(560px,calc(100vw - 36px));height:min(350px,calc(62.5vw - 22.5px));border-radius:30px;clip-path:none;box-shadow:none;opacity:0;transform:translate3d(-50%,-46%,0) perspective(1200px) rotateX(-9deg) rotateY(-20deg) rotate(-1.8deg) scale(.92)}8%{opacity:1;box-shadow:none;transform:translate3d(-50%,-50%,0) perspective(1200px) rotateX(-7deg) rotateY(-16deg) rotate(-1.2deg) scale(.98)}34%{width:min(560px,calc(100vw - 36px));height:min(350px,calc(62.5vw - 22.5px));border-radius:30px;clip-path:none;box-shadow:none;transform:translate3d(-50%,-50%,0) perspective(1200px) rotateX(8deg) rotateY(21deg) rotate(1.25deg) scale(1.015)}56%,68%{width:min(560px,calc(100vw - 36px));height:min(350px,calc(62.5vw - 22.5px));border-radius:30px;clip-path:none;box-shadow:none;transform:translate3d(-50%,-50%,0) perspective(1200px) rotateX(-7deg) rotateY(-22deg) rotate(-1deg) scale(1)}75%{width:min(560px,calc(100vw - 36px));height:min(350px,calc(62.5vw - 22.5px));border-radius:30px;clip-path:none;box-shadow:none;transform:translate3d(-50%,-50%,0) perspective(1200px) rotateX(0) rotateY(0) rotate(0) scale(1)}to{width:100vw;height:100dvh;border-radius:0;clip-path:inset(0 round 0);box-shadow:none;opacity:1;transform:translate3d(-50%,-50%,0) perspective(1200px) rotateX(0) rotateY(0) rotate(0) scale(1)}}@keyframes card-preloader-unfold-3d{0%,70%{width:min(560px,calc(100vw - 36px));height:min(350px,calc(62.5vw - 22.5px));border-radius:30px;clip-path:inset(0 round 30px);box-shadow:none;opacity:0;transform:translate3d(-50%,-50%,0) scale(1)}76%{width:min(560px,calc(100vw - 36px));height:min(350px,calc(62.5vw - 22.5px));border-radius:30px;clip-path:inset(0 round 30px);box-shadow:none;opacity:1;transform:translate3d(-50%,-50%,0) scale(1);animation-timing-function:cubic-bezier(.2,.84,.18,1)}94%{width:106vw;height:108dvh;border-radius:0;clip-path:inset(0 round 0);box-shadow:none;opacity:1;transform:translate3d(-50%,-50%,0) scale(1.006);animation-timing-function:cubic-bezier(.22,1,.36,1)}to{width:100vw;height:100dvh;border-radius:0;clip-path:inset(0 round 0);box-shadow:none;opacity:1;transform:translate3d(-50%,-50%,0) scale(1)}}@keyframes card-preloader-3d-visibility{0%{opacity:0}6%,70%{opacity:1}76%,to{opacity:0}}@keyframes card-preloader-material{0%,6%{opacity:0}18%{opacity:.76}62%{opacity:.92}86%,to{opacity:0}}@keyframes card-preloader-glare{0%{opacity:.34;transform:translate3d(-31%,1%,0) rotate(6deg)}8%{opacity:.42;transform:translate3d(-24%,0,0) rotate(6deg)}34%{opacity:.76;transform:translate3d(31%,-2%,0) rotate(6deg)}56%,68%{opacity:.66;transform:translate3d(-34%,1%,0) rotate(6deg)}75%{opacity:.2;transform:translateZ(0) rotate(6deg)}84%,to{opacity:0;transform:translateZ(0) rotate(6deg)}}@keyframes card-edge-right{0%,8%{opacity:.92}34%{opacity:.05}56%,68%{opacity:.96}75%,to{opacity:0}}@keyframes card-edge-left{0%,8%{opacity:.06}34%{opacity:.92}56%,68%{opacity:.04}75%,to{opacity:0}}@keyframes card-edge-top{0%,8%{opacity:.82}34%{opacity:.06}56%,68%{opacity:.74}75%,to{opacity:0}}@keyframes card-edge-bottom{0%,8%{opacity:.06}34%{opacity:.76}56%,68%{opacity:.06}75%,to{opacity:0}}@keyframes card-back-visibility{0%,8%{opacity:.98}34%{opacity:.92}56%,68%{opacity:.98}75%,to{opacity:0}}@keyframes card-preloader-dots{0%{opacity:0}to{opacity:.68}}@keyframes case-back-in{0%{visibility:hidden;opacity:0;filter:blur(10px);transform:translate3d(0,-34px,0) scale(.985)}1%{visibility:visible}46%{opacity:1;filter:blur(1.5px)}to{visibility:visible;opacity:1;filter:blur(0);transform:translateZ(0) scale(1)}}@keyframes case-wordmark-in{0%{opacity:0;transform:translate3d(0,-34px,0) scale(.985)}to{opacity:1;transform:translateZ(0) scale(1)}}@keyframes case-bottom-actions-in{0%{visibility:hidden;opacity:0;filter:blur(10px);transform:translate3d(0,34px,0) scale(.985)}1%{visibility:visible}46%{opacity:1;filter:blur(1.5px)}to{visibility:visible;opacity:1;filter:blur(0);transform:translateZ(0) scale(1)}}@keyframes case-toc-in{0%{visibility:hidden;opacity:0;filter:blur(10px);transform:var(--case-toc-intro-transform)}1%{visibility:visible}46%{opacity:1;filter:blur(1.5px)}to{visibility:visible;opacity:1;filter:blur(0);transform:var(--case-toc-rest-transform)}}@keyframes case-toc-snapshot-out{0%{opacity:1;filter:blur(0);transform:translateZ(0) scale(1)}to{opacity:0;filter:blur(10px);transform:translate3d(var(--case-toc-exit-x),0,0) scale(.985)}}@keyframes case-surface-unfold{0%{transform:perspective(var(--case-fold-perspective)) translate3d(0,110vh,0) rotateX(var(--case-fold-tilt)) scale(var(--case-fold-scale))}to{transform:perspective(var(--case-fold-perspective)) translateZ(0) rotateX(0) scale(1)}}@keyframes case-surface-corners{0%,78%{border-radius:clamp(24px,3vw,48px)}to{border-radius:0}}@keyframes case-surface-clip{0%,78%{-webkit-clip-path:inset(0 round clamp(24px,3vw,48px));clip-path:inset(0 round clamp(24px,3vw,48px))}to{-webkit-clip-path:inset(0 round 0);clip-path:inset(0 round 0)}}@property --language-wave-radius{syntax: "<length>"; inherits: false; initial-value: 0px;}@keyframes language-morph-old{0%{--language-wave-radius: 0vmax}to{--language-wave-radius: 126vmax}}@keyframes language-morph-new{0%{--language-wave-radius: 0vmax;filter:blur(5px) saturate(1.06) brightness(1.018);opacity:.84;transform:scale(1.005)}46%{filter:blur(1.5px) saturate(1.025) brightness(1.008);opacity:.98;transform:scale(1.002)}to{--language-wave-radius: 126vmax;filter:blur(0) saturate(1) brightness(1);opacity:1;transform:scale(1)}}html[data-language-transition=active] .wordmark,html[data-language-transition=active] .global-visual-link,html[data-language-transition=active] .language-toggle,html[data-language-transition=active] .viewport-social-links,html[data-language-transition=active] .app>.viewport-resume-actions,html[data-language-transition=active] .case-transition-frame--snapshot-preparing,html[data-language-transition=active] .back-button--snapshot,html[data-language-transition=active] .case-toc--snapshot{view-transition-name:none}html[data-language-transition=active]::view-transition-group(root){animation:none}html[data-language-transition=active]::view-transition-old(root){z-index:1;-webkit-mask-image:radial-gradient(circle at var(--language-transition-x) var(--language-transition-y),transparent 0,transparent calc(var(--language-wave-radius) - 8vmax),rgba(0,0,0,.38) var(--language-wave-radius),#000 calc(var(--language-wave-radius) + 8vmax),#000 100%);mask-image:radial-gradient(circle at var(--language-transition-x) var(--language-transition-y),transparent 0,transparent calc(var(--language-wave-radius) - 8vmax),rgba(0,0,0,.38) var(--language-wave-radius),#000 calc(var(--language-wave-radius) + 8vmax),#000 100%);animation:language-morph-old 1.08s cubic-bezier(.45,0,.2,1) both;mix-blend-mode:normal}html[data-language-transition=active]::view-transition-new(root){z-index:2;-webkit-mask-image:radial-gradient(circle at var(--language-transition-x) var(--language-transition-y),#000 0,#000 calc(var(--language-wave-radius) - 8vmax),rgba(0,0,0,.62) var(--language-wave-radius),transparent calc(var(--language-wave-radius) + 8vmax));mask-image:radial-gradient(circle at var(--language-transition-x) var(--language-transition-y),#000 0,#000 calc(var(--language-wave-radius) - 8vmax),rgba(0,0,0,.62) var(--language-wave-radius),transparent calc(var(--language-wave-radius) + 8vmax));transform-origin:var(--language-transition-x) var(--language-transition-y);animation:language-morph-new 1.08s cubic-bezier(.45,0,.2,1) both;mix-blend-mode:normal}html[data-case-transition=closing] .case-visual-link,html[data-case-transition=closing] .case-floating-actions{visibility:hidden}html[data-case-transition=closing]::view-transition-group(root){z-index:1;animation:none}html[data-case-transition=closing]::view-transition-old(root){opacity:0;animation:none}html[data-case-transition=closing]::view-transition-new(root){animation:none;mix-blend-mode:normal}html[data-case-transition=closing]::view-transition-group(case-fold){z-index:2;transform-origin:50% 100%;box-shadow:0 34px 90px #0f424c24;animation:case-surface-unfold .98s cubic-bezier(.22,1,.36,1) reverse both,case-surface-corners .98s linear reverse both}html[data-case-transition=closing]::view-transition-old(case-fold){overflow:hidden;animation:case-surface-clip .98s linear reverse both}html[data-case-transition=closing]::view-transition-group(case-back-control){z-index:100;animation:none}html[data-case-transition=closing]::view-transition-old(case-back-control){animation:case-back-in .42s cubic-bezier(.64,0,.78,0) reverse both;mix-blend-mode:normal}html[data-case-transition=closing]::view-transition-new(case-back-control){opacity:0;animation:none}html[data-case-transition=closing]::view-transition-group(case-toc-control){z-index:100;animation:none}html[data-case-transition=closing]::view-transition-old(case-toc-control){--case-toc-exit-x: 34px;animation:case-toc-snapshot-out .42s cubic-bezier(.64,0,.78,0) both;mix-blend-mode:normal}html[data-case-transition=closing]::view-transition-new(case-toc-control){opacity:0;animation:none}html[data-case-transition=closing]::view-transition-group(global-wordmark-action){z-index:100;animation:none}html[data-case-transition=closing]::view-transition-old(global-wordmark-action){opacity:0;animation:none}html[data-case-transition=closing]::view-transition-new(global-wordmark-action){animation:case-wordmark-in .42s cubic-bezier(.22,1,.36,1) .42s both;mix-blend-mode:normal}html[data-case-transition=closing]::view-transition-group(global-visual-action),html[data-case-transition=closing]::view-transition-group(global-language-action),html[data-case-transition=closing]::view-transition-group(global-contact-actions),html[data-case-transition=closing]::view-transition-group(global-resume-action){z-index:100;animation:none}html[data-case-transition=closing]::view-transition-old(global-visual-action),html[data-case-transition=closing]::view-transition-new(global-visual-action),html[data-case-transition=closing]::view-transition-old(global-language-action),html[data-case-transition=closing]::view-transition-new(global-language-action),html[data-case-transition=closing]::view-transition-old(global-contact-actions),html[data-case-transition=closing]::view-transition-new(global-contact-actions),html[data-case-transition=closing]::view-transition-old(global-resume-action),html[data-case-transition=closing]::view-transition-new(global-resume-action){animation:none;mix-blend-mode:normal}.case-study{min-height:100vh;background:var(--paper)}.case-transition-frame{min-height:100vh}.case-transition-frame--settled{position:relative;z-index:1}.case-transition-frame--preparing,.case-transition-frame--expanding,.case-transition-frame--snapshot-preparing,.case-transition-frame--exit-preparing,.case-transition-frame--collapsing{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;height:100dvh;min-height:0;overflow:hidden;transform-origin:50% 100%;backface-visibility:hidden;contain:layout paint;isolation:isolate;will-change:transform}.case-transition-frame--preparing .case-transition-viewport,.case-transition-frame--expanding .case-transition-viewport,.case-transition-frame--snapshot-preparing .case-transition-viewport,.case-transition-frame--exit-preparing .case-transition-viewport,.case-transition-frame--collapsing .case-transition-viewport{position:relative;width:100%;height:100%;overflow:hidden}.case-transition-frame--preparing .case-transition-viewport,.case-transition-frame--collapsing .case-transition-viewport{-webkit-clip-path:inset(0 round clamp(24px,3vw,48px));clip-path:inset(0 round clamp(24px,3vw,48px))}.case-transition-frame--expanding .case-transition-viewport{animation:case-surface-clip .98s linear both}.case-transition-frame--collapsing .case-transition-viewport{animation:case-surface-clip .98s linear reverse both}.case-transition-frame--preparing,.case-transition-frame--collapsing{border-radius:clamp(24px,3vw,48px);transform:perspective(var(--case-fold-perspective)) translate3d(0,110vh,0) rotateX(var(--case-fold-tilt)) scale(var(--case-fold-scale))}.case-transition-frame--preparing{box-shadow:0 34px 90px #0f424c38}.case-transition-frame--collapsing{box-shadow:0 34px 90px #0f424c24}.case-transition-frame--expanding,.case-transition-frame--snapshot-preparing,.case-transition-frame--exit-preparing{border-radius:0;box-shadow:0 0 #0f424c00;transform:perspective(var(--case-fold-perspective)) translateZ(0) rotateX(0) scale(1)}.case-transition-frame--snapshot-preparing{view-transition-name:case-fold}.case-transition-frame--expanding{animation:case-surface-unfold .98s cubic-bezier(.22,1,.36,1) both,case-surface-corners .98s linear both;transition:box-shadow .76s ease}.case-transition-frame--collapsing{animation:case-surface-unfold .98s cubic-bezier(.22,1,.36,1) reverse both,case-surface-corners .98s linear reverse both}.case-transition-frame--snapshot-preparing .case-study,.case-transition-frame--exit-preparing .case-study,.case-transition-frame--collapsing .case-study{position:absolute;top:calc(var(--case-transition-scroll) * -1);right:0;left:0}.case-transition-frame--mobile-exit-preparing,.case-transition-frame--mobile-closing{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;height:100dvh;min-height:0;overflow:hidden;contain:paint;will-change:transform}.case-transition-frame--mobile-exit-preparing .case-transition-viewport,.case-transition-frame--mobile-closing .case-transition-viewport{width:100%;height:100%;overflow:hidden}.case-transition-frame--mobile-exit-preparing .case-study,.case-transition-frame--mobile-closing .case-study{position:absolute;top:calc(var(--case-transition-scroll) * -1);right:0;left:0}.case-transition-frame--mobile-exit-preparing{transform:translateZ(0)}.case-transition-frame--mobile-closing{transform:translate3d(0,calc(100dvh + 24px),0);transition:transform .42s cubic-bezier(.55,.02,.78,.2)}.app--case-preparing .shell-header,.app--case-expanding .shell-header{transition:opacity .62s ease,transform .82s cubic-bezier(.22,1,.36,1)}.app--case-preparing .portfolio-flow,.app--case-preparing .shell-header,.app--case-expanding .portfolio-flow,.app--case-expanding .shell-header{pointer-events:none}.app--case-expanding .shell-header{opacity:0;transform:translate3d(0,-16px,0) scale(.98)}.app--case-exit-preparing .wordmark,.app--case-collapsing .wordmark{animation:case-wordmark-in .42s cubic-bezier(.22,1,.36,1) .42s both}.back-button{position:fixed;z-index:90;top:30px;left:30px;padding:12px 16px;border-radius:9px;background:#ffffffd1;cursor:pointer;animation:case-back-in .42s cubic-bezier(.22,1,.36,1) both;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.back-button--snapshot{pointer-events:none;view-transition-name:case-back-control}.back-button--exiting{pointer-events:none;animation:case-back-in .42s cubic-bezier(.64,0,.78,0) reverse both}.case-visual-link{position:fixed;z-index:90;animation:case-back-in .42s cubic-bezier(.22,1,.36,1) both}.case-floating-actions{position:fixed;z-index:88;top:0;right:0;bottom:0;left:0;opacity:1;pointer-events:none;transition:opacity .16s ease;animation:case-bottom-actions-in .42s cubic-bezier(.22,1,.36,1) backwards}.case-floating-actions.is-docked{opacity:0}.case-floating-actions .social-links,.case-floating-actions .resume-button{pointer-events:auto}.case-floating-actions.is-docked .social-links,.case-floating-actions.is-docked .resume-button{pointer-events:none}.case-floating-social-links{position:absolute;bottom:30px;left:30px}.case-floating-resume-button{position:absolute;right:30px;bottom:30px}.case-content{max-width:1040px;margin:0 auto;padding:150px 40px 160px}.case-article-header{max-width:760px;margin:0 auto 27px}.case-article-header p{margin:0 0 16px;font-size:13px;line-height:1.3;opacity:.62}.case-article-header h1{max-width:760px;margin:0;font-family:Inter,Inter Tight,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:clamp(48px,6.6vw,88px);font-weight:500;letter-spacing:-.055em;line-height:.9}.case-article-header span{display:block;max-width:620px;margin-top:12px;font-size:clamp(16px,1.5vw,20px);line-height:1.25}.case-kicker{margin:0 0 54px;font-size:12px;letter-spacing:normal;text-transform:none;opacity:.6}.case-intro{max-width:760px;margin:0 auto 36px}.case-content>.case-kicker{max-width:760px;margin-right:auto;margin-left:auto}.case-facts{display:grid;margin:0;grid-template-columns:repeat(2,minmax(0,1fr))}.case-facts div{padding:20px 20px 24px 0}.case-facts dt{margin-bottom:8px;font-size:11px;letter-spacing:normal;text-transform:none;opacity:.58}.case-facts dd{margin:0;font-size:14px;line-height:1.4}.case-content section{display:grid;width:100%;max-width:760px;margin:0 auto;padding:28px 0;grid-template-columns:minmax(0,1fr)}.case-content section[id]{scroll-margin-top:64px}.case-content section+section{border-top:1px solid var(--line)}.case-content section>span{display:none}.case-content h2{margin:0 0 22px;font-family:Inter,Inter Tight,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:24px;font-weight:500;letter-spacing:-.025em;line-height:1.05}.case-content h3{max-width:760px;margin:0 0 18px;font-family:Inter,Inter Tight,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:24px;font-weight:500;letter-spacing:-.025em;line-height:1.08}.case-content section p{margin:0;font-size:14px;line-height:1.55}.case-content section p+p{margin-top:16px}.case-detail-list{display:grid;margin:0;gap:14px}.case-detail-list div{display:block}.case-detail-list dt{margin:0 0 6px;font-size:14px;font-weight:600;line-height:1.45}.case-detail-list dd{margin:0;font-size:14px;line-height:1.55}.case-detail-list--spaced{margin-top:22px}.case-content section a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}.case-list{margin:12px 0 14px;padding-left:22px}.case-list li{padding:4px 0;font-size:14px;line-height:1.5}.case-numbered-list{padding-left:24px}.case-content .case-lead{margin-bottom:0;font-size:14px;line-height:1.55}.onboarding-video-frame{width:100%;aspect-ratio:16 / 9;overflow:hidden;border:1px solid rgba(15,66,76,.12);border-radius:18px;background:#dfe2e2}.onboarding-case-video-section .onboarding-video-frame{margin-top:22px}.onboarding-subheading{margin-top:24px!important}.onboarding-video-frame iframe{display:block;width:100%;height:100%;border:0}.onboarding-video-placeholder{display:flex;width:100%;height:100%;padding:28px;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:linear-gradient(145deg,#e7e9e9,#d5d9d9);text-align:center}.onboarding-video-placeholder span{font-size:12px;opacity:.62}.onboarding-video-placeholder strong{font-family:Inter,Inter Tight,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:clamp(25px,4vw,40px);font-weight:500;letter-spacing:-.035em;line-height:1}.onboarding-video-placeholder p{font-size:13px;opacity:.62}.case-content section .onboarding-case-summary{margin-top:20px}.case-subsection{padding-top:20px}.case-subsection+.case-subsection{margin-top:12px}.case-subsection-number{margin-bottom:18px!important;font-size:12px!important;letter-spacing:normal;opacity:.56}.case-stat-grid{display:grid;margin-top:26px;grid-template-columns:repeat(4,1fr);gap:10px}.case-stat-grid span{display:flex;min-height:130px;padding:16px;flex-direction:column;justify-content:space-between;border:1px solid var(--line);border-radius:12px;font-size:12px;letter-spacing:normal;text-transform:none}.case-stat-grid strong{font-family:Inter,Inter Tight,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:clamp(24px,2.8vw,38px);font-weight:500;letter-spacing:-.03em;text-transform:none}.case-metric-list{margin:24px 0 28px;padding:0;list-style:none}.case-metric-list li{padding:8px 0;font-size:14px;line-height:1.5}.case-metric-list li:before{content:"↗";display:inline-block;width:32px}.case-media-block{position:relative;width:100%;max-width:920px;margin:36px auto 44px}.case-media-block:not(.case-media-placeholder){display:grid;min-height:520px;padding:42px;place-items:center;border-radius:18px;background:#d5d7d7}.case-media-block:not(.case-media-placeholder) img{width:min(42vw,280px);height:min(42vw,280px)}.case-media-placeholder{--case-media-width: 760px}.case-media-placeholder--mobile{--case-media-width: 272px}.case-media-tabs{display:flex;width:max-content;margin:0 auto 14px;padding:3px;border-radius:999px;background:#0f424c12}.case-media-tabs button{padding:8px 14px;border:0;border-radius:999px;background:transparent;color:#0f424c85;font:inherit;font-size:12px;cursor:pointer;transition:color .18s ease,background .18s ease,box-shadow .18s ease}.case-media-tabs button.is-active{background:#fff;color:var(--ink);box-shadow:0 2px 10px #0f424c1a}.case-media-viewport{position:relative;width:100%;max-width:var(--case-media-width);margin-right:auto;margin-left:auto;transition:max-width .48s cubic-bezier(.22,1,.36,1)}.case-media-screen{width:100%;aspect-ratio:16 / 10;overflow:hidden;border:1px solid rgba(15,66,76,.12);border-radius:18px;background:#dfe2e2;box-shadow:0 18px 50px #0f424c17;transition:aspect-ratio .48s cubic-bezier(.22,1,.36,1),border-radius .48s cubic-bezier(.22,1,.36,1)}.case-media-viewport--mobile .case-media-screen{aspect-ratio:9 / 16;border-radius:24px}.case-media-screen.is-scrollable{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}.case-media-screen.is-scrollable::-webkit-scrollbar{display:none}.case-media-screen.has-image{background:#fff}.case-media-screen.has-static-image{aspect-ratio:auto}.case-media-screen.has-static-image.has-adaptive-ratio{aspect-ratio:var(--case-media-static-ratio)}.case-media-screen.has-static-image.has-adaptive-ratio .case-media-image{height:100%;object-fit:cover}.case-media-image{display:block;width:100%;height:auto}.case-media-scrollbar{position:absolute;z-index:1;top:10px;right:-4px;bottom:10px;width:14px;cursor:grab;touch-action:none}.case-media-scrollbar:active{cursor:grabbing}.case-media-scrollbar i{position:absolute;top:0;right:5px;display:block;width:4px;border:1px solid rgba(255,255,255,.42);border-radius:999px;background:#0f424c8c;box-shadow:0 1px 5px #0f424c33}.case-media-sticky-bottom{position:absolute;z-index:2;right:1px;bottom:1px;left:1px;display:block;width:calc(100% - 2px);height:auto;border-radius:0 0 23px 23px;pointer-events:none}.case-media-placeholder-canvas{position:relative;display:flex;min-height:100%;padding:30px;overflow:hidden;flex-direction:column;justify-content:center;align-items:center;color:#0f424c9e;background:linear-gradient(145deg,#e7e9e9,#d5d9d9)}.case-media-placeholder-canvas.is-long{min-height:190%;justify-content:flex-start;padding-top:18%}.case-media-browser-bar{position:absolute;top:18px;left:20px;display:flex;gap:6px}.case-media-browser-bar i{width:7px;height:7px;border-radius:50%;background:#0f424c2e}.case-media-placeholder-copy{display:flex;max-width:520px;flex-direction:column;gap:12px;align-items:center;text-align:center}.case-media-placeholder-copy span,.case-media-placeholder-copy small{font-size:12px;font-weight:400;letter-spacing:normal}.case-media-placeholder-copy strong{font-family:Inter,Inter Tight,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:clamp(28px,4.3vw,58px);font-weight:500;letter-spacing:-.035em;line-height:.94}.case-media-placeholder-lines{display:grid;width:min(520px,78%);margin-top:34px;gap:10px}.case-media-placeholder-lines i{display:block;height:8px;border-radius:999px;background:#0f424c17}.case-media-placeholder-lines i:nth-child(2){width:82%}.case-media-placeholder-lines i:nth-child(3){width:94%}.case-media-placeholder-lines i:nth-child(4){width:68%}.case-media-arrow{position:absolute;z-index:3;top:50%;display:grid;width:42px;height:42px;padding:0;place-items:center;border:1px solid rgba(15,66,76,.1);border-radius:50%;background:#fffffff0;color:var(--ink);cursor:pointer;transform:translateY(-50%);box-shadow:0 5px 18px #0f424c1a}.case-media-arrow--prev{left:-18px}.case-media-arrow--next{right:-18px}.case-media-block figcaption{width:100%;max-width:var(--case-media-width);margin:16px auto 0;font-size:13px;line-height:1.35;opacity:.62;transition:max-width .48s cubic-bezier(.22,1,.36,1)}.case-media-pagination{display:flex;width:100%;max-width:var(--case-media-width);margin:12px auto 0;gap:6px;justify-content:center;transition:max-width .48s cubic-bezier(.22,1,.36,1)}.case-media-pagination button{width:6px;height:6px;padding:0;border:0;border-radius:50%;background:#0f424c2e;cursor:pointer;transition:width .18s ease,background .18s ease}.case-media-pagination button.is-active{width:18px;border-radius:999px;background:var(--ink)}.case-toc{--case-toc-rest-transform: translateY(-50%);--case-toc-intro-transform: translate3d(34px, -50%, 0) scale(.985);position:fixed;z-index:85;top:50%;right:24px;width:42px;color:var(--ink);transform:var(--case-toc-rest-transform);animation:case-toc-in .42s cubic-bezier(.22,1,.36,1) both}.case-toc--snapshot{pointer-events:none;view-transition-name:case-toc-control}.case-toc--exiting{pointer-events:none;animation:case-toc-in .42s cubic-bezier(.64,0,.78,0) reverse both}.case-toc-trigger{position:relative;z-index:1;display:grid;width:42px;min-height:82px;padding:12px 9px;place-items:center;border:0;background:transparent;cursor:pointer}.case-toc-mobile-label{display:none}.case-toc-rail{display:grid;gap:6px;justify-items:end}.case-toc-rail>span{display:block;width:9px;height:2px;border-radius:999px;background:var(--ink);opacity:.72;transition:width .18s ease,opacity .18s ease}.case-toc-rail>span.is-active{width:20px;opacity:1}.case-toc-panel{position:absolute;z-index:2;top:50%;right:0;width:250px;max-height:min(70vh,560px);padding:18px;overflow-y:auto;border:1px solid rgba(15,66,76,.1);border-radius:14px;background:#fff;opacity:0;pointer-events:none;transform:translate(8px,-50%);transition:opacity .18s ease,transform .22s cubic-bezier(.22,1,.36,1),visibility 0s linear .22s;visibility:hidden}.case-toc:hover .case-toc-panel,.case-toc:focus-within .case-toc-panel,.case-toc.is-open .case-toc-panel{opacity:1;pointer-events:auto;transform:translateY(-50%);transition-delay:0s;visibility:visible}.case-toc-panel ol{display:grid;margin:0;padding:0;gap:2px;list-style:none}.case-toc-panel a{display:block;padding:8px 9px;border-radius:8px;font-size:13px;line-height:1.25;text-decoration:none}.case-toc-panel a:hover,.case-toc-panel a:focus-visible,.case-toc-panel a[aria-current=location]{background:#0f424c12}.more-cases{--more-cases-gap: clamp(16px, 2.4vw, 32px);padding:14px 0 120px;overflow:hidden}.more-cases-header{padding:0 clamp(22px,7vw,110px) 28px}.more-cases-header p{margin:0;font-size:13px;letter-spacing:normal;text-transform:none}.more-cases-viewport{width:100%;overflow:hidden;cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none}.more-cases-viewport.is-dragging{cursor:grabbing}.more-cases-viewport.is-transform-auto{cursor:grab}.more-cases-viewport.is-transform-auto.is-dragging{cursor:grabbing}.more-cases-viewport.is-transform-auto .more-cases-track{will-change:transform}.more-cases-track{display:flex;width:max-content}.more-cases-set{display:flex;padding-left:var(--more-cases-gap);gap:var(--more-cases-gap)}.more-case-card{--pointer-x: 0px;--pointer-y: 0px;position:relative;display:block;width:clamp(320px,40vw,620px);aspect-ratio:1.56;padding:0;overflow:hidden;border:0;border-radius:14px;background:#d6d8d8;color:var(--ink);cursor:grab;text-align:left}.more-cases-viewport:not(.is-dragging) .more-case-card:hover .case-card-hover-action,.more-case-card:focus-visible .case-card-hover-action{opacity:1;transform:translateZ(0) translate(-50%,-50%) scale(1)}.more-cases-viewport.is-dragging .case-card-hover-action{opacity:0}.more-case-card[aria-disabled=true]{cursor:default}.more-cases-viewport.is-dragging .more-case-card{cursor:grabbing}.more-case-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.22,1,.36,1)}.more-case-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;padding:clamp(22px,3vw,42px);flex-direction:column;justify-content:space-between;background-image:url(/assets/grid.svg);background-position:center;background-size:cover}.more-case-placeholder span{font-size:12px;letter-spacing:normal;text-transform:none;opacity:.58}.more-case-placeholder strong{max-width:80%;font-family:Inter,Inter Tight,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:clamp(34px,4.2vw,62px);font-weight:500;letter-spacing:-.04em;line-height:.92}.more-case-card:hover img,.more-case-card:focus-visible img{transform:scale(1.025)}.case-footer{display:flex;min-height:108px;padding:30px 36px;gap:24px;align-items:center;justify-content:space-between;border-top:1px solid var(--line)}.case-footer .social-links,.case-footer .resume-button{opacity:0;pointer-events:none;transition:opacity .16s ease}.case-footer.is-docked .social-links,.case-footer.is-docked .resume-button{opacity:1;pointer-events:auto}.case-resume-button{position:static;margin-left:auto}html.is-safari .portfolio-flow,html.is-safari .hero-visual,html.is-safari .gallery-stage,html.is-safari .case-card,html.is-safari .about-story-slide,html.is-safari .visual-playground-stage,html.is-safari .more-cases-track,html.is-safari .resume-drawer-panel,html.is-safari .case-transition-frame--preparing,html.is-safari .case-transition-frame--expanding,html.is-safari .case-transition-frame--snapshot-preparing,html.is-safari .case-transition-frame--exit-preparing,html.is-safari .case-transition-frame--collapsing,html.is-safari .case-transition-frame--mobile-exit-preparing,html.is-safari .case-transition-frame--mobile-closing{-webkit-backface-visibility:hidden;backface-visibility:hidden}html.is-safari .hero-visual,html.is-safari .gallery-stage,html.is-safari .case-transition-frame--preparing,html.is-safari .case-transition-frame--expanding,html.is-safari .case-transition-frame--snapshot-preparing,html.is-safari .case-transition-frame--exit-preparing,html.is-safari .case-transition-frame--collapsing,html.is-safari .case-transition-frame--mobile-exit-preparing,html.is-safari .case-transition-frame--mobile-closing{will-change:transform}html.is-safari .case-transition-frame--preparing{transform:translate3d(0,100vh,0) scale(.985)}html.is-safari .case-card{-webkit-transform-style:flat;transform-style:flat}html.is-safari .case-card-surface,html.is-safari .about-story-surface{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}html.is-safari .about-story-slide{z-index:0;contain:none;opacity:0;transform:translateZ(0);transition:none;will-change:opacity}html.is-safari .about-story-slide.is-active{z-index:1;opacity:1}html.is-safari .about-story-video{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}html.is-safari .hero-copy,html.is-safari .hero-title-underlay,html.is-safari .hero-title-text{-webkit-backface-visibility:hidden;backface-visibility:hidden}html.is-safari .hero-title-underlay,html.is-safari .hero-title-text{transform:translateZ(0);will-change:transform,opacity}html.is-safari .about-story-caption,html.is-safari .about-story-count,html.is-safari .about-story-controls{-webkit-backface-visibility:visible;backface-visibility:visible;transform:translateZ(0);will-change:transform}html.is-safari .app--title-mask-ready .hero-title:before{-webkit-backface-visibility:hidden;backface-visibility:hidden;will-change:opacity,transform}@keyframes safari-intro-top-in{0%{opacity:0;transform:translate3d(0,-34px,0) scale(.985)}to{opacity:1;transform:translateZ(0) scale(1)}}@keyframes safari-intro-bottom-in{0%{opacity:0;transform:translate3d(0,30px,0) scale(.985)}to{opacity:1;transform:translateZ(0) scale(1)}}@keyframes safari-intro-hero-copy-in{0%{transform:translate(-50%,-25%) scale(.94)}to{transform:translate(-50%,-25%) scale(1)}}@keyframes safari-intro-title-underlay-in{0%{opacity:.001}to{opacity:.98}}@keyframes safari-intro-title-text-in{0%{opacity:.001}to{opacity:1}}@keyframes safari-intro-description-in{0%{opacity:.001}to{opacity:.92}}@keyframes safari-case-control-top-in{0%{visibility:hidden;opacity:0;transform:translate3d(0,-34px,0) scale(.985)}1%{visibility:visible;opacity:0;transform:translate3d(0,-34px,0) scale(.985)}to{visibility:visible;opacity:1;transform:translateZ(0) scale(1)}}@keyframes safari-case-control-bottom-in{0%{visibility:hidden;opacity:0;transform:translate3d(0,34px,0) scale(.985)}1%{visibility:visible;opacity:0;transform:translate3d(0,34px,0) scale(.985)}to{visibility:visible;opacity:1;transform:translateZ(0) scale(1)}}@keyframes safari-case-toc-in{0%{visibility:hidden;opacity:0;transform:translate3d(34px,-50%,0) scale(.985)}1%{visibility:visible;opacity:0;transform:translate3d(34px,-50%,0) scale(.985)}to{visibility:visible;opacity:1;transform:translate3d(0,-50%,0) scale(1)}}@keyframes safari-case-toc-snapshot-out{0%{opacity:1;transform:translateZ(0) scale(1)}to{opacity:0;transform:translate3d(34px,0,0) scale(.985)}}@keyframes safari-case-surface-unfold{0%{transform:translate3d(0,100vh,0) scale(.985)}to{transform:translateZ(0) scale(1)}}html.is-safari .app--intro .shell-header,html.is-safari .app--intro>.global-visual-link{animation-name:safari-intro-top-in}html.is-safari .app--intro .viewport-social-links,html.is-safari .app--intro .viewport-resume-actions{animation-name:safari-intro-bottom-in}html.is-safari .app--intro .portfolio-flow-slide:first-child .hero-copy{animation-name:safari-intro-hero-copy-in}html.is-safari .app--intro .portfolio-flow-slide:first-child .hero-title-underlay{animation-name:safari-intro-title-underlay-in}html.is-safari .app--intro .portfolio-flow-slide:first-child .hero-title-text,html.is-safari .app--intro .portfolio-flow-slide:first-child .hero-title:before,html.is-safari .app--intro .scroll-hint{animation-name:safari-intro-title-text-in}html.is-safari .app--intro .portfolio-flow-slide:first-child .hero-copy p{animation-name:safari-intro-description-in}html.is-safari .back-button,html.is-safari .case-visual-link{animation-name:safari-case-control-top-in}html.is-safari .case-floating-actions{animation-name:safari-case-control-bottom-in}html.is-safari .case-toc{animation-name:safari-case-toc-in}html.is-safari .case-transition-frame--expanding,html.is-safari .case-transition-frame--collapsing{animation-name:safari-case-surface-unfold,case-surface-corners;animation-duration:.62s,.62s}html.is-safari[data-case-transition=closing]::view-transition-group(case-fold){animation-name:safari-case-surface-unfold,case-surface-corners}html.is-safari[data-case-transition=closing]::view-transition-old(case-back-control){animation-name:safari-case-control-top-in}html.is-safari[data-case-transition=closing]::view-transition-old(case-toc-control){animation-name:safari-case-toc-snapshot-out}@media(min-width:1680px)and (min-height:900px){.shell-header{height:190px}.wordmark{top:40px;left:40px;font-size:18px}.visual-link{top:39px;right:40px;font-size:18px}.language-toggle{top:39px;right:126px;font-size:18px}.workplace-nav{top:34px;gap:22px}.nav-item{width:94px;gap:10px}.nav-icon-wrap{width:86px;height:86px}.nav-icon-wrap img{width:61px;height:61px}.nav-label{font-size:17px}.social-links{gap:34px;font-size:18px}.viewport-social-links{bottom:40px;left:40px}.resume-button{right:40px;bottom:40px;padding:14px 24px 14px 18px;font-size:18px}.viewport-resume-actions{--action-size: 54px;right:40px;bottom:40px}.viewport-resume-actions .resume-button{padding:0 24px}.resume-button-icon{width:26px;height:26px}.hero-copy{top:calc(50% - 100px);width:min(720px,calc(100vw - 96px))}.hero-title{transform:none}.hero-title-underlay,.app--title-mask-ready .hero-title:before{width:clamp(600px,26vw,720px)}.hero-title-text{width:clamp(544px,23.55vw,652px)}.hero-title-underlay--en{width:clamp(530px,22.99vw,636px)}.hero-title-text--en{width:clamp(472px,20.38vw,564px)}html[lang=en] .app--title-mask-ready .hero-title:before{width:clamp(530px,22.99vw,636px)}.hero-copy p{max-width:650px;margin-top:16px;font-size:clamp(21px,.9vw,24px);line-height:1.28}.gallery-stage{top:190px;right:0;bottom:100px;left:0;perspective:1450px}.case-card{--case-card-height: clamp(560px, 60dvh, 760px);--case-card-step: clamp(460px, 24vw, 660px);border-radius:clamp(30px,calc(var(--case-card-height) * .06),44px)}.case-card-hit-area{top:-22px;right:-22px;bottom:-22px;left:-22px;border-radius:calc(clamp(30px,calc(var(--case-card-height) * .06),44px) + 22px)}.case-card-cover-copy{padding:24px 27px 30px}.case-card-cover-copy p{font-size:14px}.case-card-cover-copy h2{font-size:clamp(42px,2.35vw,52px)}.case-card-cover-copy h2.is-long{max-width:340px;font-size:clamp(32px,1.85vw,40px)}.case-card-cover-copy h2.is-meduza-title{font-size:clamp(29px,1.6vw,35px)}.case-card-cover-copy span{max-width:310px;font-size:18px}.case-card-surface.is-silaunion .case-card-cover-copy h2{margin-inline:-5px;font-size:clamp(30px,9.2cqi,38px)}.case-card-hover-action{padding:20px 32px;gap:10px;font-size:18px}.case-card-status-icon,.case-card-status-spinner,.case-card-eye-icon{width:20px;height:20px}.about-story-caption{right:20px;bottom:22px;left:20px;padding:16px 18px 17px;border-radius:19px;font-size:19px}.about-story-count{top:20px;left:20px;padding:8px 12px;font-size:14px}.about-story-slide--second .about-story-caption{top:20px}.about-story-slide--second .about-story-count{bottom:22px}.about-story-arrow{width:48px;height:48px;font-size:22px}.about-story-arrow--prev{left:-21px}.about-story-arrow--next{right:-21px}.back-button{top:40px;left:40px;padding:13px 18px;font-size:17px}.case-floating-social-links{bottom:40px;left:40px}.case-floating-resume-button{right:40px;bottom:40px}.case-study{--case-reading-width: clamp(880px, 46vw, 960px)}.case-content{max-width:1120px;padding:174px 64px 190px}.case-article-header,.case-article-header h1,.case-intro,.case-content>.case-kicker,.case-content section{max-width:var(--case-reading-width)}.case-article-header{margin-bottom:34px}.case-article-header p{margin-bottom:19px;font-size:15px}.case-article-header h1{font-size:clamp(88px,5.2vw,108px)}.case-article-header span{max-width:760px;margin-top:16px;font-size:clamp(19px,1.08vw,24px);line-height:1.32}.case-kicker{margin-bottom:62px;font-size:14px}.case-intro{margin-bottom:44px}.case-facts div{padding:24px 24px 28px 0}.case-facts dt{margin-bottom:10px;font-size:13px}.case-facts dd{font-size:16px;line-height:1.48}.case-content section{padding:36px 0}.case-content h2,.case-content h3{font-size:clamp(28px,1.3vw,32px);line-height:1.1}.case-content h2{margin-bottom:26px}.case-content h3{margin-bottom:22px}.case-content section p,.case-detail-list dt,.case-detail-list dd,.case-list li,.case-content .case-lead,.case-metric-list li{font-size:clamp(16px,.72vw,17px)}.case-content section p,.case-detail-list dd,.case-content .case-lead{line-height:1.6}.case-list li,.case-metric-list li{line-height:1.56}.case-detail-list{gap:18px}.case-subsection-number{font-size:14px!important}.case-stat-grid{margin-top:30px;gap:12px}.case-stat-grid span{min-height:148px;padding:19px;font-size:14px}.case-stat-grid strong{font-size:clamp(30px,2vw,44px)}.case-media-block{max-width:var(--case-reading-width);margin:44px auto 54px}.case-media-placeholder--desktop{--case-media-width: 100%}.case-media-tabs{margin-bottom:18px;padding:4px}.case-media-tabs button{padding:10px 17px;font-size:14px}.case-media-screen{border-radius:22px}.case-media-block figcaption{margin-top:18px;font-size:15px;line-height:1.45}.case-media-pagination{margin-top:14px;gap:8px}.case-media-pagination button{width:7px;height:7px}.case-media-pagination button.is-active{width:22px}.case-media-arrow{width:48px;height:48px;font-size:17px}.case-media-arrow--prev{left:-22px}.case-media-arrow--next{right:-22px}.case-toc{right:34px}.case-toc-panel{width:290px;padding:20px}.case-toc-panel a{padding:10px;font-size:15px}.more-cases-header{padding-bottom:34px}.more-cases-header p{font-size:15px}.more-case-card{width:clamp(620px,34vw,760px);border-radius:18px}.case-footer{min-height:128px;padding:36px 44px}}@media(max-width:1100px){.workplace-nav{gap:7px}.nav-item{width:72px}.nav-icon-wrap{width:68px;height:68px}.nav-icon-wrap img{width:48px;height:48px}.nav-label{font-size:12px}}@media(max-width:760px){:root{--case-fold-scale: .74;--case-fold-perspective: 760px;--case-fold-tilt: 13deg}@keyframes safari-intro-hero-copy-in-mobile{0%{transform:translate(-50%,-15%) scale(.94)}to{transform:translate(-50%,-15%) scale(1)}}@keyframes safari-case-toc-in-mobile{0%{visibility:hidden;opacity:0;transform:translate3d(0,-16px,0) scale(.985)}1%{visibility:visible;opacity:0;transform:translate3d(0,-16px,0) scale(.985)}to{visibility:visible;opacity:1;transform:translateZ(0) scale(1)}}@keyframes safari-case-surface-unfold-mobile{0%{transform:translate3d(0,100svh,0) scale(.99)}to{transform:translateZ(0) scale(1)}}html[data-case-transition=closing]::view-transition-old(case-toc-control){--case-toc-exit-x: 28px}html{overscroll-behavior:none}body[data-mode=hero],body[data-mode=gallery],body[data-mode=visual]{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none}body[data-mode=hero] .app,body[data-mode=gallery] .app,body[data-mode=hero] .portfolio-flow,body[data-mode=gallery] .portfolio-flow,body[data-mode=hero] .portfolio-flow-slide,body[data-mode=gallery] .portfolio-flow-slide,body[data-mode=hero] .hero,body[data-mode=gallery] .hero,body[data-mode=hero] .gallery,body[data-mode=gallery] .gallery{height:100svh;min-height:0}.portfolio-flow{transition-duration:.92s}.portfolio-flow-slide{-webkit-perspective:none;perspective:none;-webkit-transform-style:flat;transform-style:flat}.shell-header{height:96px;border-bottom:1px solid rgba(15,66,76,.08)}.shell-header--hero{border-bottom:0}.wordmark{top:35px;left:18px;font-size:16px}.workplace-nav,.global-visual-link{display:none}.language-toggle{top:35px;right:82px;font-size:14px}.app--case>.language-toggle--gallery{z-index:50;pointer-events:none}.app--case:not(.app--case-preparing):not(.app--case-expanding):not(.app--case-mobile-closing)>.language-toggle--gallery{visibility:hidden;pointer-events:none}.app--case:not(.app--case-preparing):not(.app--case-expanding)>.language-toggle--case{--case-toc-rest-transform: translateY(0);--case-toc-intro-transform: translate3d(0, -16px, 0) scale(.985);display:block;z-index:90;right:160px;transform:var(--case-toc-rest-transform);animation:case-toc-in .42s cubic-bezier(.22,1,.36,1) both}.app--case:not(.app--case-preparing):not(.app--case-expanding).app--case-exit-preparing>.language-toggle--case,.app--case:not(.app--case-preparing):not(.app--case-expanding).app--case-collapsing>.language-toggle--case,.app--case:not(.app--case-preparing):not(.app--case-expanding).app--case-mobile-exit-preparing>.language-toggle--case,.app--case:not(.app--case-preparing):not(.app--case-expanding).app--case-mobile-closing>.language-toggle--case{pointer-events:none;animation:case-toc-in .42s cubic-bezier(.64,0,.78,0) reverse both}.visual-link{top:26px;right:18px;font-size:14px}.visual-playground-wordmark{top:35px;left:18px;font-size:16px}.visual-playground-close{position:fixed;z-index:30;top:18px;right:18px;display:grid;width:46px;height:46px;padding:13px;place-items:center;border:0;border-radius:12px;background:#0f424c14;color:var(--ink);cursor:pointer}.visual-playground-close svg{display:block;width:20px;height:20px;fill:currentColor}.visual-work-card{border-radius:14px}.visual-lightbox{padding:74px 18px 86px}.visual-lightbox-panel{display:flex;max-height:100%;flex-direction:column}.visual-lightbox-media>img,.visual-lightbox-media>video{max-width:calc(100vw - 36px);max-height:calc(100svh - 230px);border-radius:14px}.visual-lightbox-scroll{width:calc(100vw - 36px);max-height:calc(100svh - 230px);border-radius:14px}.visual-lightbox-placeholder{width:min(82vw,76vh);border-radius:14px}.visual-lightbox-close{width:40px;height:40px;transform:translate(18%,-118%)}.visual-lightbox-close:hover,.visual-lightbox-close:focus-visible{transform:translate(18%,-118%) scale(1.05)}.visual-lightbox-sound{right:8px;bottom:8px;width:32px;height:32px}.visual-lightbox-media.has-carousel{margin-bottom:50px}.visual-lightbox-arrow{top:calc(100% + 10px);width:40px;height:40px;font-size:17px;transform:none}.visual-lightbox-arrow--prev{left:0}.visual-lightbox-arrow--next{right:0}.visual-lightbox-arrow:hover,.visual-lightbox-arrow:focus-visible{transform:scale(1.06)}.visual-lightbox-count{top:8px;right:8px;padding:6px 8px}.visual-lightbox-copy{margin-top:18px;gap:6px}.visual-lightbox-copy p{font-size:13px}.shell-header--gallery .visual-link{right:78px}.social-links{gap:16px;font-size:14px}.mobile-active{position:absolute;top:10px;left:50%;display:flex;width:94px;flex-direction:column;gap:3px;align-items:center;transform:translate(-50%)}.mobile-active-icon{position:relative;display:grid;width:48px;height:48px;place-items:center;border-radius:50%;background:var(--paper)}.mobile-active-icon img{width:32px;height:32px;object-fit:contain;transform:translateY(var(--nav-icon-offset-y, 0)) scale(.95)}.mobile-active-label{max-width:110px;overflow:hidden;font-size:10px;line-height:1;text-overflow:ellipsis;white-space:nowrap}.mobile-active .circular-progress circle{stroke-width:2}.shell-header--hero .mobile-active{display:none}.menu-toggle{position:absolute;top:18px;right:18px;display:grid;width:46px;height:46px;padding:13px;gap:6px;place-content:center;border-radius:12px;background:#0f424c14;color:var(--ink);cursor:pointer}.menu-toggle span{display:block;width:18px;height:1px;background:currentColor}.mobile-menu{display:block}.hero{touch-action:none}.app--gallery .portfolio-flow-slide:first-child .hero-visual,.app--hero-exit-left .portfolio-flow-slide:first-child .hero-visual{border-radius:0;-webkit-clip-path:inset(0 round 0);clip-path:inset(0 round 0);transform:translate3d(-3vw,0,0) scale(.975)}.app--gallery .portfolio-flow-slide:last-child .hero-visual,.app--hero-exit-right .portfolio-flow-slide:last-child .hero-visual{border-radius:0;-webkit-clip-path:inset(0 round 0);clip-path:inset(0 round 0);transform:translate3d(3vw,0,0) scale(.975)}.hero-visual,.hero-copy{transition-duration:.92s}.hero-copy{--hero-copy-y: -15%;--hero-copy-intro-transform: translate(-50%, -15%) scale(.94);top:auto;bottom:clamp(168px,22svh,250px);width:calc(100vw - 42px)}.hero-title-underlay{width:min(348px,calc(100vw - 42px))}.hero-title-text{width:min(315px,calc(100vw - 64px))}.hero-title-underlay--en{width:min(307px,calc(100vw - 54px))}.hero-title-text--en{width:min(273px,calc(100vw - 76px))}html[lang=en] .app--title-mask-ready .hero-title:before{width:min(307px,calc(100vw - 54px))}.hero-title:before{width:min(348px,calc(100vw - 42px))}.hero-copy p{max-width:320px;margin-top:20px;font-size:15px}.scroll-hint{display:block;bottom:82px}.viewport-social-links{bottom:22px;left:18px}.viewport-social-links{color:var(--ink);transition:color .32s ease}.app--hero .viewport-social-links{color:#fff}.resume-button{right:18px;bottom:16px;padding:9px 16px 9px 12px;font-size:14px}.viewport-resume-actions{--action-size: 44px;right:18px;bottom:16px}.viewport-resume-actions .resume-button{padding:0 16px}.halloween-music-button{padding:6px}.resume-button-icon{width:18px;height:18px}.resume-drawer:before{top:0;right:0;bottom:0;left:0;width:100vw;border-radius:0}.resume-drawer-panel{--resume-drawer-hidden-transform: translateY( calc(100% + 36px) );--resume-drawer-open-transform: translateY(0);top:0;right:0;bottom:0;left:0;width:100vw;border-radius:0;transform-origin:50% 100%}.resume-drawer-actions{top:12px;right:12px;gap:6px}.resume-download-button{min-height:40px;padding:8px 11px 8px 9px;font-size:13px}.resume-close-button{width:40px;min-height:40px;padding:9px}.resume-drawer-action-icon{width:18px;height:18px}.resume-scrollbar{top:66px;right:2px;bottom:10px}.gallery{touch-action:none}.gallery-stage{top:102px;right:0;bottom:82px;left:0;perspective:880px}.case-card{width:min(298px,calc(100vw - 76px));height:min(497px,calc(100dvh - 202px));min-height:410px;border-radius:24px;-webkit-backface-visibility:visible;backface-visibility:visible;transform:translate(-50%,-50%) translate(calc(var(--card-offset) * 84vw)) translateY(var(--card-mobile-arc-y)) scale(var(--card-mobile-scale));-webkit-transform-style:flat;transform-style:flat;transition:transform .52s cubic-bezier(.22,1,.36,1),opacity .32s ease,box-shadow .32s ease}.about-story-surface{contain:none;isolation:isolate}.about-story-video{-webkit-backface-visibility:visible;backface-visibility:visible;transform:none}.about-card{overflow:hidden}.about-story-caption,.about-story-count{backface-visibility:hidden;transform:translateZ(0)}.about-story-controls{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}.case-card--project.is-active.is-status-visible .case-card-hover-action,.more-case-card.is-status-visible .case-card-hover-action{opacity:1;transform:translateZ(0) translate(-50%,-50%) scale(1)}.case-card--project.is-status-visible .case-card-status-spinner,.more-case-card.is-status-visible .case-card-status-spinner{animation:mail-copy-spin .76s linear infinite}.case-card--project.is-status-visible .case-card-lock-shackle-open,.more-case-card.is-status-visible .case-card-lock-shackle-open{animation:case-lock-open-hide .78s ease both}.case-card--project.is-status-visible .case-card-lock-shackle-closed,.more-case-card.is-status-visible .case-card-lock-shackle-closed{animation:case-lock-closed-drop .78s cubic-bezier(.22,1,.36,1) both}.about-story-caption{right:12px;bottom:14px;left:12px;padding:12px 13px 13px;font-size:15px}.about-story-slide--second .about-story-caption{top:14px;bottom:auto}.about-story-slide--second .about-story-count{bottom:14px}.about-story-arrow--prev{left:6px}.about-story-arrow--next{right:6px}.case-transition-frame--mobile-exit-preparing,.case-transition-frame--mobile-closing{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;height:100dvh;min-height:0;overflow:hidden;contain:paint;will-change:opacity,transform}.case-transition-frame--mobile-exit-preparing .case-transition-viewport,.case-transition-frame--mobile-closing .case-transition-viewport{width:100%;height:100%;overflow:hidden}.case-transition-frame--mobile-exit-preparing .case-study,.case-transition-frame--mobile-closing .case-study{position:absolute;top:calc(var(--case-transition-scroll) * -1);right:0;left:0}.case-transition-frame--mobile-exit-preparing{opacity:1;transform:translateZ(0)}.case-transition-frame--mobile-closing{opacity:1;transform:translate3d(0,calc(100dvh + 24px),0);transition:transform .42s cubic-bezier(.55,.02,.78,.2)}.case-card-visual img{width:108px;height:108px}.case-card-copy h2{font-size:32px}.case-card-cover-copy h2.is-long{font-size:25px}.case-card-cover-copy h2.is-meduza-title{font-size:24px}.case-footer{min-height:80px;padding:18px 22px}.back-button{top:18px;left:18px;padding:10px 14px}.case-visual-link{top:35px;right:18px}.case-floating-social-links{bottom:22px;left:18px}.case-floating-resume-button{right:18px;bottom:16px}.case-content{padding:112px 22px 110px}.case-article-header{margin-bottom:19px}.case-article-header h1{font-size:clamp(42px,13vw,62px)}.case-article-header span{margin-top:10px;font-size:16px}.case-kicker{margin-bottom:36px}.case-intro{margin-bottom:30px}.case-facts{grid-template-columns:repeat(2,1fr)}.case-facts div{padding:16px 12px 18px 0}.case-content section{grid-template-columns:minmax(0,1fr)}.case-content h3{font-size:24px}.case-subsection{padding-top:16px}.case-subsection+.case-subsection{margin-top:10px}.case-stat-grid{margin-top:22px;grid-template-columns:repeat(2,1fr)}.case-stat-grid span{min-height:108px}.case-media-block{margin:28px auto 36px}.case-media-screen{border-radius:12px}.case-media-viewport--mobile .case-media-screen{border-radius:20px}.case-media-placeholder-canvas{padding:22px}.case-media-placeholder-copy strong{font-size:clamp(26px,8vw,42px)}.case-media-arrow{width:36px;height:36px}.case-media-arrow--prev{left:6px}.case-media-arrow--next{right:6px}.case-media-scrollbar{right:8px}.case-media-block figcaption{margin-top:14px}.case-media-placeholder-copy{max-width:300px}.more-cases{padding-bottom:86px}.more-cases-header{padding-bottom:20px}.more-case-card{width:82vw;border-radius:10px}.back-button{top:21px}.case-toc{--case-toc-rest-transform: translateY(0);--case-toc-intro-transform: translate3d(0, -16px, 0) scale(.985);z-index:90;top:21px;right:18px;bottom:auto;width:118px;border-radius:9px;background:#ffffffd1;transform:var(--case-toc-rest-transform);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.case-toc-trigger{display:block;width:100%;min-height:0;padding:10px 14px;border-radius:inherit;background:transparent;color:var(--ink);-webkit-backdrop-filter:none;backdrop-filter:none}.case-toc-mobile-label{display:block;font:inherit;line-height:normal}.case-toc-rail{display:none}.case-toc-panel{top:calc(100% + 8px);right:0;width:min(280px,calc(100vw - 36px));max-height:calc(100dvh - 86px);transform:translate3d(0,-6px,0)}.case-toc:hover .case-toc-panel,.case-toc:focus-within .case-toc-panel{opacity:0;pointer-events:none;transform:translate3d(0,-6px,0);visibility:hidden}.case-toc.is-open .case-toc-panel{opacity:1;pointer-events:auto;transform:translateZ(0);transition-delay:0s;visibility:visible}html.is-safari .app--intro .portfolio-flow-slide:first-child .hero-copy{animation-name:safari-intro-hero-copy-in-mobile}html.is-safari .case-toc{animation-name:safari-case-toc-in-mobile}html.is-safari .case-transition-frame--expanding,html.is-safari .case-transition-frame--collapsing{animation-name:safari-case-surface-unfold-mobile,case-surface-corners}}@media(prefers-reduced-motion:reduce){.pumpkin-record-rotor{animation:none!important}.pumpkin-record-hover{transform:none!important}.pumpkin-record-sheen{animation:none!important;opacity:0!important}.visual-link-layer,.visual-link-label{transition-delay:0ms!important}.visual-work-card:hover,.visual-work-card:focus-visible{transform:none}.visual-work-card:hover img,.visual-work-card:hover video,.visual-work-card:focus-visible img,.visual-work-card:focus-visible video{transform:scale(1.002)}html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.portfolio-flow{transition:none}.interactive-sheen:hover .control-sheen,.interactive-sheen:focus-visible .control-sheen{transform:none}.interactive-sheen:hover .control-sheen:after,.interactive-sheen:focus-visible .control-sheen:after{animation:none;opacity:0}.resume-button:hover{transform:none}.resume-button:hover .resume-button-sheen{animation:none;opacity:0}.about-story-arrow:hover,.about-story-arrow:focus-visible{transform:translateY(-50%)}.hero-visual,.hero-copy{transition:none}.app--card-preloader .portfolio-flow-slide:first-child .hero-visual{top:0;left:0;width:100%;height:100%;border-radius:0;clip-path:none;box-shadow:none;opacity:1;transform:none;animation:none}.app--card-preloader .portfolio-flow-slide:first-child .hero-card-material,.app--card-preloader .portfolio-flow-slide:first-child .hero-card-edge,.app--card-preloader .portfolio-flow-slide:first-child .hero-card-back,.card-preloader-3d{display:none}.app--card-preloader .portfolio-flow-slide:first-child .hero-dot-field{opacity:.68;animation:none}.back-button,.case-toc{animation-delay:0ms!important}html[data-case-transition=closing]::view-transition-old(root),html[data-case-transition=closing]::view-transition-new(root){animation:none}html[data-language-transition=active]::view-transition-old(root),html[data-language-transition=active]::view-transition-new(root){animation:none}.case-transition-frame--preparing,.case-transition-frame--expanding,.case-transition-frame--snapshot-preparing,.case-transition-frame--exit-preparing,.case-transition-frame--collapsing{position:relative;height:auto;overflow:visible;border-radius:0;box-shadow:none;transform:none}.case-transition-frame--snapshot-preparing .case-study,.case-transition-frame--exit-preparing .case-study,.case-transition-frame--collapsing .case-study{position:static;top:auto;transform:none}.more-cases-viewport{overflow-x:auto;scrollbar-width:none}.more-cases-viewport::-webkit-scrollbar{display:none}.more-cases-set.is-duplicate{display:none}}
