@font-face{font-family:Candal;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Candal-Regular.ttf)format("truetype")}html:has(.home-test-page){scroll-snap-type:y mandatory}body:has(.home-test-page){overscroll-behavior-y:none}.home-test-page{color:#111;background:radial-gradient(circle at 50% 40%,#fffffcf5 0,#0000 34%),linear-gradient(90deg,#7b694a08,#0000 18% 82%,#7b694a08),#f3f0e8;min-height:580svh;position:relative}.home-test-stage{--museum-scroll:0;--portrait-shift:0px;--warehouse-shift:105vw;--pixora-shift:210vw;--ibm-shift:315vw;--home-test-content-offset:24px;--home-test-media-gap:36px;--home-test-copy-top:clamp(112px, 13svh, 136px);--home-test-meta-title-gap:12px;--home-test-title-subtitle-gap:8px;--home-word-font-size:clamp(80px, min(15.84vw, 20svh), 418px);--home-test-media-top:calc(clamp(160px, 18svh, 170px) + var(--home-test-content-offset));--home-test-project-max-width:min(82%, var(--portfolio-rail-max));--home-test-content-width:min(calc(100% - (2 * var(--page-gutter))), var(--portfolio-rail-max));width:100%;max-width:var(--page-max);isolation:isolate;background:0 0;height:100svh;margin-inline:auto;position:sticky;top:0;overflow:hidden}.home-curtain{pointer-events:none;position:fixed;inset:0;overflow:hidden}.home-curtain--intro{z-index:1000;animation:1ms linear 2.12s forwards curtain-dismiss}.home-curtain-panel{-webkit-backface-visibility:hidden;backface-visibility:hidden;will-change:transform;width:50.25%;position:absolute;top:0;bottom:0;overflow:hidden}.home-curtain-panel img{object-fit:cover;width:200%;max-width:none;height:100%;display:block;position:absolute;top:0}.home-curtain--intro .home-curtain-left{transform-origin:0;animation:1.7s cubic-bezier(.77,0,.18,1) .42s both curtain-open-left;left:0;box-shadow:18px 0 34px #1e000057}.home-curtain-left img{left:0}.home-curtain--intro .home-curtain-right{transform-origin:100%;animation:1.7s cubic-bezier(.77,0,.18,1) .42s both curtain-open-right;right:0;box-shadow:-18px 0 34px #1e000057}.home-curtain-right img{right:0}.home-curtain--outro{z-index:20;visibility:visible}.home-curtain--outro .home-curtain-left{transform-origin:0;transition:transform 1.05s cubic-bezier(.77,0,.18,1);left:0;transform:translate(-101%)scaleX(.82);box-shadow:18px 0 34px #1e000057}.home-curtain--outro .home-curtain-right{transform-origin:100%;transition:transform 1.05s cubic-bezier(.77,0,.18,1);right:0;transform:translate(101%)scaleX(.82);box-shadow:-18px 0 34px #1e000057}.home-test-stage.is-outro-visible .home-curtain--outro .home-curtain-left,.home-test-stage.is-outro-visible .home-curtain--outro .home-curtain-right{transform:translate(0)scaleX(1)}@keyframes curtain-open-left{0%{transform:translate(0)scaleX(1)}to{transform:translate(-101%)scaleX(.82)}}@keyframes curtain-open-right{0%{transform:translate(0)scaleX(1)}to{transform:translate(101%)scaleX(.82)}}@keyframes curtain-dismiss{to{visibility:hidden}}.physics-scroll-stop{pointer-events:none;scroll-snap-align:start;scroll-snap-stop:always;width:1px;height:1px;position:absolute;left:0}.physics-scroll-stop-intro{top:0}.physics-scroll-stop-warehouse{top:calc(25% - 25svh)}.physics-scroll-stop-pixora{top:calc(50% - 50svh)}.physics-scroll-stop-ibm{top:calc(75% - 75svh)}.physics-scroll-stop-outro{top:calc(100% - 100svh)}.home-test-name{z-index:1;font-size:inherit;pointer-events:none;margin:0;font-weight:400;line-height:1;position:absolute;inset:0}.physics-home-logo{z-index:50;top:12px;left:calc((100% - var(--home-test-content-width)) / 2);align-items:center;min-width:44px;min-height:44px;display:flex;position:absolute}.physics-top-nav{z-index:50;top:12px;right:calc((100% - var(--home-test-content-width)) / 2);color:#111;align-items:center;gap:clamp(22px,3vw,48px);transition:color .36s;display:flex;position:absolute}.physics-top-nav a{min-height:44px;color:inherit;align-items:center;font-size:clamp(14px,1.1vw,16px);font-weight:400;line-height:1;text-decoration:none;display:inline-flex;position:relative}.physics-top-nav a:after{content:"";transform-origin:100%;background:currentColor;height:1px;transition:transform .52s cubic-bezier(.22,1,.36,1);position:absolute;bottom:-5px;left:0;right:0;transform:scaleX(0)}.physics-top-nav a:hover:after{transform-origin:0;transform:scaleX(1)}.physics-top-nav a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.home-test-stage.is-outro-visible .physics-top-nav{color:#fffaf0}.home-test-stage.is-outro-visible .physics-home-logo{filter:brightness(0)invert()}.physics-portrait-display{z-index:4;top:var(--home-test-media-top);isolation:isolate;perspective:1500px;perspective-origin:50% 46%;width:clamp(245px,30svh,340px);max-width:calc(100vw - 40px);transform:translateX(calc(-50% + var(--portrait-shift)));transform-style:preserve-3d;will-change:transform;outline:none;margin:0;position:absolute;left:50%}.physics-portrait-display:hover,.physics-portrait-display:focus-within,.physics-portrait-display.is-profile-open{z-index:7}.physics-portrait-trigger{z-index:3;width:100%;color:inherit;-webkit-backface-visibility:hidden;backface-visibility:hidden;cursor:pointer;transform-origin:50%;transform-style:preserve-3d;will-change:transform;background:0 0;border:0;border-radius:2px;padding:0;transition:transform .92s cubic-bezier(.65,0,.35,1);display:block;position:relative;transform:rotateY(0)translateZ(1px)}.physics-portrait-trigger:focus-visible{outline-offset:8px;outline:2px solid #111111d1}.physics-portrait{-webkit-backface-visibility:hidden;backface-visibility:hidden;filter:none;width:100%;height:auto;max-height:76svh;display:block;transform:translateZ(.6px)}.physics-portrait-display.is-profile-open .physics-portrait-trigger{transform:rotateY(-180deg)translateZ(1px)}.physics-portrait-sheet{z-index:2;-webkit-backface-visibility:hidden;backface-visibility:hidden;pointer-events:none;transform-origin:50%;width:100%;height:100%;transform-style:preserve-3d;visibility:hidden;padding:13% 13% 10%;transition:transform .92s cubic-bezier(.65,0,.35,1),visibility 0s linear .92s;position:absolute;top:0;bottom:0;left:0;overflow:visible;transform:rotateY(180deg)translateZ(1px);container-type:inline-size}.physics-portrait-display.is-profile-open .physics-portrait-sheet{pointer-events:auto;visibility:visible;transition-delay:0s;transform:rotateY(0)translateZ(1px)}.physics-portrait-paper{z-index:0;filter:none;object-fit:fill;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.physics-portrait-sheet-content{z-index:1;overscroll-behavior:contain;scrollbar-width:thin;flex-direction:column;justify-content:safe center;max-width:none;height:100%;display:flex;position:relative;overflow-y:auto}.physics-profile-paragraph{color:#34302a;font-family:var(--font-instrument-sans), Arial, Helvetica, sans-serif;letter-spacing:0;text-wrap:pretty;margin:0;font-size:14px;font-weight:400;line-height:1.42}.physics-profile-paragraph+.physics-profile-paragraph{margin-top:clamp(18px,8.8cqw,27px)}.physics-profile-email{color:inherit;overflow-wrap:anywhere;text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.physics-project-display{--project-top:var(--home-test-media-top);--project-bottom-gap:clamp(38px, 6svh, 64px);z-index:5;top:var(--project-top);width:calc((100svh - var(--project-top) - var(--project-bottom-gap)) * 3704 / 2840);max-width:var(--home-test-project-max-width);color:#201d17;pointer-events:none;transform:translateX(calc(-50% + var(--project-panel-shift)));transform-origin:50%;will-change:transform;text-decoration:none;display:block;position:absolute;left:50%}.physics-project-warehouse{--project-panel-shift:var(--warehouse-shift)}.physics-project-pixora{--project-panel-shift:var(--pixora-shift);top:var(--project-top);width:calc((100svh - var(--project-top) - var(--project-bottom-gap)) * 2400 / 1533);max-width:var(--home-test-project-max-width);transform:translateX(calc(-50% + var(--project-panel-shift)))}.physics-project-ibm{--project-panel-shift:var(--ibm-shift);width:calc((100svh - var(--project-top) - var(--project-bottom-gap)) * 2808 / 1762);max-width:var(--home-test-project-max-width)}.home-test-stage.is-warehouse-visible .physics-project-warehouse,.home-test-stage.is-pixora-visible .physics-project-pixora,.home-test-stage.is-ibm-visible .physics-project-ibm{pointer-events:auto}.physics-project-object{z-index:1;aspect-ratio:3704/2840;width:100%;margin:0;position:relative}.physics-project-ipad{filter:drop-shadow(0 34px 38px #2a1e0d40)drop-shadow(0 10px 14px #2a1e0d29);width:100%;height:auto;display:block;position:relative}.physics-project-pixora .physics-project-object{aspect-ratio:2400/1533}.physics-project-pixora-art{transform:translateY(-9.46%)}.physics-project-ibm .physics-project-object{aspect-ratio:2808/1762}.physics-project-video{filter:drop-shadow(0 34px 38px #2a1e0d40)drop-shadow(0 10px 14px #2a1e0d29);border-radius:clamp(14px,1.6vw,24px);width:100%;height:auto;display:block;position:relative}.physics-intro-copy{z-index:5;top:var(--home-test-copy-top);width:min(820px, var(--home-test-content-width));text-align:center;position:absolute;left:50%;transform:translate(-50%)}.physics-intro-name,.physics-statement,.physics-intro-bio{font-family:var(--font-instrument-sans), Arial, Helvetica, sans-serif;letter-spacing:-.025em;text-wrap:pretty;will-change:transform;margin:0;font-size:26px;font-weight:400;line-height:1.33}.physics-statement,.physics-project-heading{min-height:var(--home-test-heading-height,0px)}.physics-intro-bio,.physics-project-company{min-height:var(--home-test-subtitle-height,0px)}.physics-intro-name{margin-bottom:8px;font-weight:500}.physics-intro-bio{margin-top:var(--home-test-title-subtitle-gap);color:#858585}.home-test-stage .physics-original-statement-word{filter:blur(6px);opacity:0;animation:none;transform:translateY(16px)}.home-test-stage.is-word-pile-settled .physics-original-statement-word{animation:home-intro-word-reveal .65s cubic-bezier(.22, 1, .36, 1) var(--intro-word-delay,0s) both}@keyframes home-intro-word-reveal{0%{filter:blur(4px);opacity:0;transform:translateY(12px)}to{filter:blur();opacity:1;transform:translateY(0)}}@keyframes home-intro-word-return{0%{filter:blur(4px);opacity:0;transform:translateY(12px)}to{filter:blur();opacity:1;transform:translateY(0)}}@keyframes home-intro-word-exit{0%{filter:blur();opacity:1;transform:translateY(0)}to{filter:blur(4px);opacity:0;transform:translateY(12px)}}.home-test-stage.is-word-pile-settled .physics-original-statement-word.is-intro-exiting{animation:home-intro-word-exit .42s cubic-bezier(.4, 0, .2, 1) var(--intro-exit-delay,0s) both}.home-test-stage.is-word-pile-settled .physics-original-statement-word.is-intro-returning{animation:home-intro-word-return .65s cubic-bezier(.22, 1, .36, 1) var(--intro-return-delay,0s) both}.physics-exhibit-copy{z-index:6;top:var(--home-test-copy-top);width:min(820px, var(--home-test-content-width));pointer-events:none;text-align:center;position:absolute;left:50%;transform:translate(-50%)}.physics-project-heading,.physics-project-company{width:100%;max-width:820px;font-family:var(--font-instrument-sans), Arial, Helvetica, sans-serif;letter-spacing:-.025em;text-wrap:pretty;margin:0 auto;font-size:26px;font-weight:400;line-height:1.33}.physics-project-company{margin-top:var(--home-test-title-subtitle-gap);color:#858585}.physics-project-read-time{color:#9d9a95;width:100%;max-width:820px;font-family:var(--font-instrument-sans), Arial, Helvetica, sans-serif;letter-spacing:.005em;transform:translateY(calc(-100% - var(--home-test-meta-title-gap)));margin:0;font-size:clamp(14px,1.1vw,16px);font-weight:400;line-height:1.2;position:absolute;top:0;left:0}.physics-project-statement{pointer-events:none}.physics-project-statement-word{filter:blur(4px);opacity:0;will-change:filter, opacity, transform;display:inline-block;transform:translateY(12px)}@keyframes project-word-reveal{0%{filter:blur(4px);opacity:0;transform:translateY(12px)}to{filter:blur();opacity:1;transform:translateY(0)}}@keyframes project-word-exit{0%{filter:blur();opacity:1;transform:translateY(0)}to{filter:blur(4px);opacity:0;transform:translateY(12px)}}.physics-project-statement-word.is-word-revealed{animation:project-word-reveal .65s cubic-bezier(.22, 1, .36, 1) var(--project-word-delay,0s) both}.physics-project-statement-word.is-word-exiting{animation:project-word-exit .42s cubic-bezier(.4, 0, .2, 1) var(--project-word-exit-delay,0s) both}.physics-body{opacity:0;white-space:nowrap;transform-origin:50%;color:#aaa69f;cursor:default;pointer-events:none;touch-action:manipulation;-webkit-user-select:none;user-select:none;will-change:transform;max-width:none;font-family:Candal,Arial,Helvetica,sans-serif;font-weight:400;line-height:.78;text-decoration:none;display:block;position:absolute;top:0;left:0}.physics-body.is-ready{opacity:1}.home-test-name .physics-body{cursor:grab;pointer-events:auto;touch-action:none}.home-test-name .physics-body:not(.is-ready){visibility:hidden;pointer-events:none}.home-test-name .physics-body.is-dragging{cursor:grabbing}.physics-body.is-link-ready{cursor:pointer;pointer-events:auto}:is(.physics-body.is-link-ready:hover,.physics-body.is-link-ready:focus-visible){color:#5f5a53}.physics-body.is-link-ready:focus-visible{outline-offset:8px;outline:3px solid}.physics-andrew,.physics-huang,.physics-product,.physics-designer{color:#77736d;font-family:var(--font-instrument-sans), Arial, Helvetica, sans-serif;font-size:calc(var(--home-word-font-size) * 1.2);letter-spacing:-.025em;paint-order:stroke fill;-webkit-text-fill-color:currentColor;-webkit-text-stroke:1px currentColor;font-weight:400;line-height:.82}.physics-letter{display:inline-block}.physics-andrew{z-index:4}.physics-huang{z-index:3}.physics-product{z-index:2}.physics-designer{z-index:1}.physics-replay{z-index:10;color:#777;font:inherit;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f7f7f4d1;border:1px solid #00000024;border-radius:999px;padding:7px 11px;font-size:13px;line-height:1;position:absolute;top:clamp(18px,2vw,32px);right:clamp(18px,2vw,32px)}:is(.physics-replay:hover,.physics-replay:focus-visible){color:#111;border-color:#0000004d}.physics-scroll-caption{z-index:30;color:#5f5a53;letter-spacing:0;pointer-events:none;opacity:0;align-items:center;min-height:44px;margin:0;padding:0;font-size:14px;font-weight:450;line-height:1;transition:opacity .26s,transform .32s cubic-bezier(.16,1,.3,1);display:inline-flex;position:absolute;bottom:clamp(18px,2.4vw,32px);right:clamp(20px,3vw,42px);transform:translateY(8px)}.home-test-stage.is-word-pile-settled .physics-scroll-caption{pointer-events:auto;opacity:calc(1 - var(--museum-scroll));text-decoration:none;transform:translateY(0)}.home-test-stage.is-warehouse-visible .physics-scroll-caption,.home-test-stage.is-pixora-visible .physics-scroll-caption,.home-test-stage.is-ibm-visible .physics-scroll-caption,.home-test-stage.is-outro-visible .physics-scroll-caption{pointer-events:none;opacity:0;transform:translateY(8px)}.home-outro{--portrait-shift:0px;z-index:30;color:#fff;pointer-events:none;visibility:hidden;transition:visibility 0s linear .22s;position:absolute;inset:0;overflow:hidden}.home-test-stage.is-outro-visible .home-outro{pointer-events:auto;visibility:visible;transition-delay:.88s}.home-outro-title{color:#fff;font-family:var(--font-instrument-sans), Arial, Helvetica, sans-serif;font-size:var(--home-word-font-size);letter-spacing:-.025em;paint-order:stroke fill;-webkit-text-fill-color:currentColor;-webkit-text-stroke:1px currentColor;margin:0;font-weight:400;line-height:.82;position:absolute;inset:0}.home-outro-word{opacity:0;color:#fff;font-family:var(--font-instrument-sans), Arial, Helvetica, sans-serif;font-size:inherit;letter-spacing:-.025em;paint-order:stroke fill;white-space:nowrap;-webkit-text-fill-color:currentColor;-webkit-text-stroke:1px currentColor;will-change:transform;font-weight:400;line-height:.82;display:block;position:absolute;top:0;left:0}.home-outro-word.is-ready{opacity:1}.home-outro-word--1{z-index:5}.home-outro-word--2{z-index:4}.home-outro-word--3{z-index:3}.home-outro-word--4{z-index:2}.home-outro-word--contact{z-index:1;color:inherit;cursor:pointer;text-decoration:none;transition:color .18s,filter .22s}.home-outro-contact-arrow{margin-left:.16em;transition:transform .24s cubic-bezier(.22,1,.36,1);display:inline-block}:is(.home-outro-word--contact:hover,.home-outro-word--contact:focus-visible){color:#ffe7ad;filter:drop-shadow(0 0 .12em #ffe7ad7a);text-decoration:none}:is(.home-outro-word--contact:hover .home-outro-contact-arrow,.home-outro-word--contact:focus-visible .home-outro-contact-arrow){transform:translate(.12em)rotate(-2deg)}.home-outro-word--contact:focus-visible{outline-offset:8px;outline:3px solid}:is(.home-outro-word--contact.is-link-ready:hover,.home-outro-word--contact.is-link-ready:focus-visible){color:#ffe7ad}@media (max-width:1100px){.home-test-stage{--home-word-font-size:clamp(40px, 12.4vw, 136px)}}@media (max-width:700px){.home-test-stage{--home-word-font-size:clamp(40px, 12.4vw, 86px);--home-test-content-offset:16px;--home-test-media-gap:32px;--home-test-copy-top:108px;--home-test-media-top:calc(clamp(205px, 27svh, 245px) + var(--home-test-content-offset));--home-test-content-width:min(calc(100% - (2 * var(--page-gutter))), var(--portfolio-rail-max))}.physics-portrait-display{width:clamp(210px,30svh,280px);max-width:calc(100vw - 40px)}.physics-portrait{max-height:64svh}.physics-project-display{--project-bottom-gap:clamp(30px, 5svh, 48px);width:calc((100svh - var(--project-top) - var(--project-bottom-gap)) * 3704 / 2840);max-width:var(--home-test-project-max-width)}.physics-project-pixora{top:var(--project-top);width:calc((100svh - var(--project-top) - var(--project-bottom-gap)) * 2400 / 1533);max-width:var(--home-test-project-max-width)}.physics-project-ibm{width:calc((100svh - var(--project-top) - var(--project-bottom-gap)) * 2808 / 1762);max-width:var(--home-test-project-max-width)}.physics-project-object{width:100%}.physics-intro-copy,.physics-exhibit-copy{width:calc(100% - 40px)}.physics-statement,.physics-intro-bio,.physics-project-heading,.physics-project-company{font-size:clamp(20px,5.5vw,24px)}.physics-scroll-caption{bottom:18px}.home-outro{inset:0}.physics-top-nav{gap:18px;top:12px}.physics-top-nav a{min-height:44px}.physics-body{touch-action:pan-y}.physics-portrait-sheet-content{overscroll-behavior:contain;scrollbar-width:thin;overflow-y:auto}}@media (max-width:700px) and (max-height:640px){.home-test-stage{--home-test-media-gap:20px;--home-test-copy-top:108px}.physics-statement,.physics-intro-bio,.physics-project-heading,.physics-project-company{font-size:18px;line-height:1.3}.physics-portrait-display{width:min(210px, calc((100svh - var(--home-test-media-top) - 64px) * 1102 / 1427))}.home-test-name{visibility:hidden}.physics-portrait-sheet-content{justify-content:flex-start}}@media (min-width:701px) and (max-height:520px){.home-test-stage{--home-word-font-size:clamp(34px, 11svh, 56px);--home-test-copy-top:100px;--home-test-media-gap:20px}.physics-statement,.physics-intro-bio,.physics-project-heading,.physics-project-company{font-size:18px}.physics-portrait-display{width:min(200px, calc((100svh - var(--home-test-media-top) - 48px) * 1102 / 1427))}.physics-portrait-sheet-content{justify-content:flex-start;overflow-y:auto}.physics-portrait-sheet{padding:9%}}.home-reduced-motion-projects{display:none}@media (prefers-reduced-motion:reduce){.home-curtain,.home-outro{display:none}html:has(.home-test-page){scroll-snap-type:none}.home-test-page{min-height:100svh}.physics-project-display{display:none}.physics-portrait,.physics-portrait-trigger,.physics-portrait-sheet,.physics-portrait-display{transition:none}.physics-scroll-caption{display:none}.home-reduced-motion-projects{flex-wrap:wrap;justify-content:center;gap:24px;padding:32px 24px;display:flex;position:relative}.home-reduced-motion-projects a{color:#5f5a53;font-size:14px}}
