.landscape-copy h1 .name-line{color:inherit;display:inline-block}.landscape-copy h1{letter-spacing:-.075em;font-size:clamp(4.5rem,10.8vw,11.5rem);line-height:.96}.landscape-role{letter-spacing:.12em;font-size:.72rem}.landscape-description{text-wrap:balance;max-width:33rem;margin-inline:auto}.landscape-copy{top:18%}.landscape-actions button{color:#17212b;background:#edf2f5;border-color:#0000;align-items:center;gap:32px;font-weight:550;transition:background .25s,transform .25s;display:inline-flex}.landscape-actions button:hover{background:#cce0f1;transform:translateY(-2px)}.landscape-availability{color:#d6e2ec;font-size:.75rem}.landscape-project{background:#17212b;border-color:#e1ebf044;border-radius:10px;max-width:1440px;height:62%;top:68%}.landscape-project-bar{background:#17212b;border-bottom:1px solid #ffffff20;padding:17px 26px}.landscape-project-bar>span:first-child{letter-spacing:-.025em;font-size:1rem;font-weight:650}.landscape-project-bar>span:last-child{color:#b8d3e9}.meal-feature{background:#17212b;flex:1;grid-template-columns:.85fr 1.15fr;gap:30px;min-height:0;padding:32px;display:grid}.meal-feature-story{flex-direction:column;justify-content:center;min-width:0;padding:0 10px 0 4px;display:flex}.meal-feature-kind{color:#aac9df;letter-spacing:.045em;font-size:.7rem}.meal-feature-story h2{letter-spacing:-.055em;margin:15px 0 16px;font-size:clamp(1.7rem,3.1vw,3.5rem);font-weight:500;line-height:1.02}.meal-feature-story>p{color:#b9c9d5;max-width:280px;font-size:.86rem;line-height:1.55}.meal-feature-input{border:1px solid #ffffff25;border-radius:4px;width:min(100%,250px);margin-top:25px;position:relative;overflow:hidden}.meal-feature-input img{aspect-ratio:16/9;object-fit:cover;width:100%;height:auto;max-height:none;transition:transform .7s;display:block}.meal-feature-input span{color:#fff;background:#17212bce;border-radius:3px;padding:4px 8px;font-size:.65rem;position:absolute;bottom:9px;left:10px}.meal-feature-output{background:#fafbf7;border-radius:5px;min-width:0;padding-top:30px;position:relative;overflow:hidden;box-shadow:0 12px 25px #0003}.meal-output-label{z-index:1;color:#34443a;letter-spacing:.03em;background:#e2e9e4;padding:9px 17px;font-size:.65rem;position:absolute;top:0;left:0;right:0}.meal-feature-output img{object-fit:contain;object-position:top;width:100%;height:auto;max-height:none;transition:transform .8s cubic-bezier(.22,1,.36,1);display:block}@media (hover:hover){.landscape-project:hover .meal-feature-output img{transform:translateY(-18px)}.landscape-project:hover .meal-feature-input img{transform:scale(1.04)}}.intro-editorial{padding-block:clamp(80px,11vw,170px);position:relative}.intro-copy{max-width:1300px}.intro-statement{letter-spacing:-.055em;max-width:1100px;font-size:clamp(2.2rem,5.8vw,6rem);font-weight:450;line-height:1.1}.intro-line{display:block}.intro-line:last-child{color:#3f627c}.intro-note{max-width:460px;margin-top:40px;margin-left:auto;font-size:1rem}.project-gallery{padding-top:85px}.gallery-heading{border-bottom:1px solid #ffffff30;margin-bottom:45px;padding-bottom:25px}.project-grid{align-items:start;gap:55px 35px}.project-tile{position:relative}.project-tile .project-image{background:#243340;border-radius:5px}.project-tile>.project-caption{border-bottom:1px solid #ffffff25;padding-bottom:15px}.project-tile h3{font-weight:450}.project-tile .project-purpose{color:#a9bac9;max-width:490px;font-size:.92rem}.project-tile:nth-child(2){margin-top:100px}.project-tile:after{content:"View project ↗";color:#a9cce7;margin-top:22px;font-size:.75rem;transition:transform .3s;display:block}.project-tile:hover:after{transform:translate(5px)}.additional-project{transition:padding .3s,background .3s}@media (hover:hover){.additional-project:hover{background:#ffffff05;padding-inline:16px}}#experience{color:#17212b;background:#aec5d6;position:relative}#experience article{border-color:#17212b40}#experience article p{color:#263c4c}.job-stack{color:#36566d;flex-wrap:wrap;gap:8px 0;margin:22px 0 26px;font-size:.72rem;display:flex}.job-stack>span{align-items:center;display:inline-flex}.job-stack>span+span:before{content:"/";color:#5d7e96;padding:0 10px}.cloud-workbench{border-top:1px solid #17212b40;grid-column:1/-1;margin-top:10px;padding-top:44px}.experience-history{position:relative}#experience>.cloud-workbench{margin-top:64px}.cloud-workbench-heading{justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:30px;display:flex}.cloud-workbench-heading h3{letter-spacing:-.05em;font-size:clamp(1.8rem,3.5vw,3rem);line-height:1.1}.cloud-workbench-heading>p{color:#344c60;max-width:310px;font-size:.9rem}.cloud-workbench-grid{background:#b9cedd;border:1px solid #17212b40;grid-template-columns:1.35fr 1fr;display:grid}.cloud-map{background-image:radial-gradient(#17212b22 .8px,#0000 .8px);background-size:19px 19px;min-height:380px;position:relative;overflow:hidden}.cloud-map svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.cloud-map path{fill:none;stroke:#526f8655;stroke-width:.35px;vector-effect:non-scaling-stroke}.cloud-map path.cloud-map-signal{stroke:#203e57;stroke-width:1.5px;stroke-dasharray:4 4;animation:1s linear 2 wire-travel}.cloud-map-caption{letter-spacing:.04em;color:#4c6579;font-size:.65rem;position:absolute;top:12px;left:20px}.cloud-map-hub{color:#36556b;background:#b9cedd;border:1px solid #45647c33;padding:8px 10px;font-size:.7rem;position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)}.cloud-node{left:var(--node-x);top:var(--node-y);color:#203e57;text-align:left;background:#cbdbe6;border:1px solid #45647c66;min-width:125px;padding:15px 18px;transition:background .25s,color .25s,box-shadow .25s;position:absolute;transform:translate(-50%,-50%)}.cloud-node>span{letter-spacing:-.025em;font-size:1rem;font-weight:550;display:block}.cloud-node small{margin-top:4px;font-size:.65rem;display:block}.cloud-node.is-selected{color:#e1eef6;background:#172c3e;border-color:#172c3e;box-shadow:0 6px 20px #24415625}.cloud-node:hover{box-shadow:0 8px 20px #24415625}.cloud-notes{background:#d2dfe8;border-left:1px solid #17212b30;align-items:center;min-height:380px;padding:40px;display:flex}.cloud-note-service{color:#365f7c;font-size:.75rem}.cloud-notes h4{letter-spacing:-.045em;margin:18px 0;font-size:clamp(1.5rem,2.5vw,2.4rem);line-height:1.1}.cloud-notes p{color:#324f65;font-size:.9rem}.cloud-note-detail{color:#37576f;border-top:1px solid #17212b30;margin-top:30px;padding-top:18px;font-size:.7rem;display:block}.cloud-note-content{animation:.35s both note-enter}.site-header{mix-blend-mode:normal;color:#f3f7fa;background:linear-gradient(#17212b70,#0000);padding-block:22px}.site-header.header-scrolled{-webkit-backdrop-filter:none;backdrop-filter:none;background:#17212b;border-bottom:1px solid #ffffff15}.site-header nav button,.site-header nav a{font-size:.8rem}.site-header nav a[aria-current=location]:after{transform-origin:0;transform:scaleX(1)}.site-header nav a[aria-current=location]{color:#b9d7ec}.site-header>a{letter-spacing:-.04em}.landscape-back{background-image:-webkit-image-set(url(/media/hero-2320.avif) 1x type("image/avif"),url(/media/hero-2320.webp) 1x type("image/webp"));background-image:image-set("/media/hero-2320.avif" 1x type("image/avif"),"/media/hero-2320.webp" 1x type("image/webp"))}.contact{background:#17212b}.contact-title{letter-spacing:-.055em}.live-app-banner{-webkit-backdrop-filter:none;backdrop-filter:none;background:#243440;border-color:#8ab5dd55}.live-app-info{min-width:0}.live-app-info h3{overflow-wrap:anywhere}.live-launch-btn,.live-launch-btn:hover{box-shadow:none}.live-pill-tag{color:#bfd8eb;background:#8ab5dd15}.architecture-path button.selected{box-shadow:0 8px 35px #8ab5dd15}.dialog-bar{box-sizing:border-box;z-index:5;height:76px;padding-block:16px}.detail-tabs{z-index:4;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1c1b1ff5;position:sticky;top:76px}.detail-tabs button{transition:color .2s,border-color .2s}.detail-tools{color:#aac5da;align-items:center;gap:24px;padding:16px 0 24px;font-size:.75rem;display:flex}.detail-tools a,.detail-tools button{border-bottom:1px solid #aac5da55;padding-block:4px;text-decoration:none}.detail-tools a:hover,.detail-tools button:hover{color:#fff;border-color:#fff}.detail-body{animation:.35s both note-enter}.engineering-loading{color:#adc7dc;place-items:center;min-height:280px;font-size:.9rem;animation:.3s both note-enter;display:grid}.code-window .code-window-bar{justify-content:space-between;align-items:center;gap:20px;padding:12px 18px;display:flex}.code-window .code-window-bar>span{color:#c2d4e3;font-size:.7rem}.code-window .code-window-bar button{font:inherit;color:#a9cce7;border-left:1px solid #ffffff25;min-height:28px;padding:3px 0 3px 14px;font-size:.7rem}.code-source-location{color:#90a9bc;border-top:1px solid #ffffff15;padding:10px 18px;font-size:.65rem}.next-project{border-top:1px solid #ffffff25;grid-template-columns:1fr auto;align-items:center;gap:15px;margin-top:45px;padding:45px 0 20px;display:grid;text-decoration:none!important}.next-project>span:first-child{color:#a9bac9;grid-column:1/-1;font-size:.75rem}.next-project strong{letter-spacing:-.05em;font-size:clamp(2rem,5vw,5rem);font-weight:450;line-height:1.1;transition:color .25s}.next-project>span:last-child{color:#8ab5dd;font-size:clamp(2rem,5vw,4rem);transition:transform .3s}.next-project:hover strong{color:#b1cee7}.next-project:hover>span:last-child{transform:translate(5px,-5px)}.explore-list>button[aria-pressed=true]{color:#b1cee7;padding-left:15px}.hiring-overview h2{font-family:var(--font-display);letter-spacing:-.04em;font-size:clamp(3rem,6vw,6rem);line-height:1.05}.resume-actions .primary-action{margin-top:0}@keyframes note-enter{0%{opacity:.2;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes wire-travel{to{stroke-dashoffset:-16px}}@keyframes name-arrive{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:no-preference){.motion-enabled .landscape-copy h1 .name-line{animation:1s cubic-bezier(.22,1,.36,1) both name-arrive}.motion-enabled .landscape-copy h1 .name-line:nth-child(2){animation-delay:.1s}.motion-enabled .landscape-role{animation:.8s 50ms both note-enter}.motion-enabled .landscape-description,.motion-enabled .landscape-actions{animation:.8s .22s both note-enter}}@media (max-width:800px),(pointer:coarse){.site-header{background:linear-gradient(#17212be8,#17212b00);flex-wrap:wrap;gap:10px;padding:16px 6% 10px}.site-header.header-scrolled{-webkit-backdrop-filter:none;backdrop-filter:none;padding:12px 6% 8px}.site-header nav{scrollbar-width:none;overflow-x:auto;gap:10px!important}.site-header nav a.hidden{display:flex}.site-header nav::-webkit-scrollbar{display:none}.site-header nav a,.site-header nav button{flex-shrink:0;min-height:36px;font-size:.78rem}.site-header nav button[data-overlay=resume]{position:absolute;top:12px;right:6%}.site-header.header-scrolled nav button[data-overlay=resume]{top:8px}.landscape-stage,.motion-paused .landscape-stage{padding-top:175px;padding-bottom:48px}.landscape-back{background-image:-webkit-image-set(url(/media/hero-2320-mobile.avif) 1x type("image/avif"),url(/media/hero-2320.webp) 1x type("image/webp"));background-image:image-set("/media/hero-2320-mobile.avif" 1x type("image/avif"),"/media/hero-2320.webp" 1x type("image/webp"))}.landscape-copy,.motion-paused .landscape-copy{text-align:left;top:auto}.landscape-copy h1{letter-spacing:-.065em;margin-block:26px;font-size:clamp(4rem,14vw,7rem);line-height:.98}.landscape-copy h1 .name-line{display:block}.landscape-role{letter-spacing:.09em;margin-bottom:14px;font-size:.6rem}.landscape-description{text-wrap:initial;max-width:290px;margin:0;font-size:.95rem;line-height:1.65}.landscape-actions{justify-content:flex-start;margin-top:26px}.landscape-actions button{min-height:46px;padding:13px 22px;font-size:.8rem}.landscape-availability{max-width:270px;margin-top:20px;font-size:.68rem}.landscape-project,.motion-paused .landscape-project{border-radius:7px;max-width:none;height:auto;margin-top:48px;top:auto;transform:none}.landscape-project-bar{padding:15px 18px;font-size:.67rem}.landscape-project-bar>span:first-child{font-size:.9rem}.meal-feature{grid-template-columns:1fr;gap:25px;padding:23px}.meal-feature-story{grid-template-columns:1fr 110px;column-gap:14px;padding:0;display:grid}.meal-feature-kind{grid-column:1/-1;font-size:.59rem}.meal-feature-story h2{grid-column:1;margin:12px 0;font-size:1.8rem}.meal-feature-story>p{grid-column:1;max-width:230px;font-size:.76rem}.meal-feature-input{grid-area:2/2/4;align-self:center;width:110px;margin:0}.meal-feature-input img{aspect-ratio:1;height:auto;max-height:none}.meal-feature-input span{padding:3px 4px;font-size:.5rem;bottom:4px;left:4px}.meal-feature-output{height:200px;padding-top:30px}.landscape-project .meal-feature-output img{aspect-ratio:auto;object-fit:contain;height:auto;max-height:none}.intro-statement{font-size:clamp(2rem,7.8vw,3.8rem);line-height:1.16}.intro-line{display:inline}.intro-note{max-width:100%;margin-top:30px;font-size:.95rem}.intro-editorial{padding-block:65px}.project-tile:nth-child(2){margin-top:0}.project-grid{gap:48px}.gallery-heading{margin-bottom:30px;padding-bottom:20px}.gallery-heading #work-title{font-size:clamp(5.4rem,21vw,8rem)}.project-tile>.project-caption{flex-direction:row;align-items:baseline;gap:8px;padding-top:18px}.project-tile h3{font-size:1.6rem}.project-tile>.project-caption>span{text-align:right;max-width:95px;font-size:.6rem}.project-tile .project-purpose{font-size:.88rem}.project-tile:after{margin-top:16px}#experience{gap:30px;padding-block:65px}#experience .display-type{margin-bottom:18px;font-size:7rem}#experience article{padding-block:26px}#experience article h3{font-size:1.55rem}#experience article p{font-size:.92rem}.cloud-workbench{margin-top:5px;padding-top:28px}.cloud-workbench-heading{margin-bottom:24px;display:block}.cloud-workbench-heading p{margin-top:12px;font-size:.85rem}.cloud-workbench-grid{grid-template-columns:1fr}.cloud-map{min-height:260px}.cloud-node{min-width:105px;padding:11px 10px}.cloud-node>span{font-size:.85rem}.cloud-node small{font-size:.55rem}.cloud-notes{border-top:1px solid #17212b30;border-left:0;align-items:flex-start;min-height:265px;padding:26px 24px}.cloud-notes h4{margin-block:14px;font-size:1.7rem}.cloud-note-detail{margin-top:20px}.detail-tabs{top:calc(64px + env(safe-area-inset-top));white-space:nowrap;-webkit-backdrop-filter:none;backdrop-filter:none;scrollbar-width:none;flex-wrap:nowrap;gap:22px;overflow-x:auto}.detail-tabs::-webkit-scrollbar{display:none}.detail-tabs button{text-align:left;flex:1;font-size:.85rem}.detail-tabs>*{flex-shrink:0}.detail-tabs .share-status:empty{display:none}.dialog-bar{min-height:64px;height:calc(64px + env(safe-area-inset-top));padding-block:12px}.project-detail{padding-inline:6%;padding-top:18px}.detail-body{animation:.35s both note-enter}.portfolio-dialog{padding-bottom:env(safe-area-inset-bottom);scroll-padding-top:120px}.dialog-bar{padding-top:calc(12px + env(safe-area-inset-top))}.hiring-overview,.explore-index{padding-bottom:max(50px,env(safe-area-inset-bottom))}.hiring-overview .hiring-lead{max-width:340px;font-size:1rem}.resume-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.resume-actions a{min-height:48px;margin:0;padding:14px 10px;font-size:.8rem}.resume-actions a:first-child{grid-column:1/-1}.resume-actions a:nth-child(2){color:#d2e2ef;background:0 0;border:1px solid #647789}.explore-index>input{min-height:54px;font-size:1.4rem}.architecture-step>button{scroll-margin-top:125px}.mobile-source .source-inspector{animation:.35s both note-enter}.project-detail-heading h1{overflow-wrap:anywhere;font-size:clamp(2.7rem,10vw,4.5rem);line-height:1.05}.portrait-wrapper{max-width:100%}.private-portrait{max-width:none;min-height:220px}.portrait-open{text-align:right;flex-direction:row;min-height:220px;padding:28px}.portrait-paywall{min-height:220px}.contact-title{margin-top:55px}.contact footer{margin-top:50px}.email-link{overflow-wrap:anywhere;font-size:clamp(1.2rem,5.2vw,2rem)}}@media (max-width:360px){.meal-feature{padding:17px}.meal-feature-story{grid-template-columns:1fr 85px}.meal-feature-input{width:85px}.meal-feature-story h2{font-size:1.5rem}.cloud-node{min-width:95px;padding:10px 7px}}@media (prefers-reduced-motion:reduce){.cloud-note-content,.detail-body,.cloud-map-signal,.landscape-copy *{animation:none!important}.landscape-project:hover img{transform:none}.additional-project,.landscape-actions button{transition:none}}@media (prefers-reduced-motion:reduce) and (min-width:801px) and (pointer:fine){.landscape-hero{height:auto;min-height:0}.landscape-stage{height:1050px;min-height:100svh;position:relative}.landscape-copy{opacity:1;top:170px;transform:none}.landscape-project{width:80%;height:380px;top:570px;transform:translate(-50%)}.landscape-back{transform:none}.landscape-cue{opacity:1}}.motion-paused .cloud-map-signal,.motion-paused .cloud-note-content{animation:none}@supports (animation-timeline:scroll()){@media (max-width:800px),(pointer:coarse){.motion-enabled .reading-progress{transform-origin:0;animation:linear both reading-advance;animation-timeline:scroll(root);display:block}}}@keyframes reading-advance{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.cloud-notes h4{margin-top:0}.landscape-project{contain:paint}@supports (animation-timeline:view()){.motion-enabled .reading-progress{animation:linear both reading-advance;animation-timeline:scroll(root);display:block}@media (min-width:801px) and (pointer:fine) and (prefers-reduced-motion:no-preference){.motion-enabled .landscape-hero{view-timeline-name:--portfolio-hero;view-timeline-axis:block}.motion-enabled .landscape-project{animation:linear both hero-card-travel;animation-timeline:--portfolio-hero;animation-range:contain}.motion-enabled .landscape-copy{animation:linear both hero-copy-travel;animation-timeline:--portfolio-hero;animation-range:contain}.motion-enabled .landscape-back{animation:linear both hero-photo-travel;animation-timeline:--portfolio-hero;animation-range:contain}.motion-enabled .landscape-cue{animation:linear both hero-cue-travel;animation-timeline:--portfolio-hero;animation-range:contain}}}@keyframes hero-card-travel{0%{transform:translate(-50%)scale(.8)}to{transform:translate(-50%,-49svh)scale(1)}}@keyframes hero-copy-travel{0%{opacity:1;transform:translate(0,0)}40%{opacity:0}to{opacity:0;transform:translateY(-180px)}}@keyframes hero-photo-travel{0%{transform:translate3d(calc(var(--look-x,0px)*-.6),calc(var(--look-y,0px)*-.6),0) scale(1.08)}to{transform:translate3d(calc(var(--look-x,0px)*-.6),calc(-55px + var(--look-y,0px)*-.6),0) scale(1.08)}}@keyframes hero-cue-travel{0%{opacity:1}33%,to{opacity:0}}
:root{--space-section:clamp(4rem,8vw,8rem);--space-content:clamp(1.5rem,4vw,4rem);--ease-settle:cubic-bezier(.22,1,.36,1)}.section-pad,.intro-editorial{padding-block:var(--space-section)}.landscape-hero{height:160svh;min-height:1000px}.landscape-copy{top:clamp(110px,13svh,170px)}.landscape-project{height:62%;transform:translate3d(-50%,calc(var(--hero-progress,0)*-40svh),0) scale(calc(.8 + var(--hero-progress,0)*.2));top:64%}.landscape-back{-webkit-mask-image:linear-gradient(#000 30%,#0000 47%);mask-image:linear-gradient(#000 30%,#0000 47%)}.landscape-foreground{z-index:-3;pointer-events:none;will-change:transform;transform:translate3d(calc(var(--look-x,0px)*-.3),calc(var(--look-y,0px)*-.3 - var(--hero-progress,0)*20px),0) scale(1.08);background:-webkit-image-set(url(/media/hero-2320.avif) 1x type("image/avif"),url(/media/hero-2320.webp) 1x type("image/webp")) 50%/cover no-repeat;background:image-set("/media/hero-2320.avif" 1x type("image/avif"),"/media/hero-2320.webp" 1x type("image/webp")) 50%/cover no-repeat;position:absolute;inset:-80px -90px -120px;-webkit-mask-image:linear-gradient(#0000 30%,#000 47%);mask-image:linear-gradient(#0000 30%,#000 47%)}.landscape-back{background-position:50%}.landscape-haze{background:linear-gradient(#17212bb8 0%,#17212b70 44%,#17212b25 65%,#17212b88 100%)}.contact{isolation:isolate;view-timeline-name:--contact-photo;view-timeline-axis:block;background:#17212b;position:relative;overflow:hidden}.contact-photograph{z-index:-2;display:block;position:absolute;inset:-35px 0}.contact-photograph img{object-fit:cover;object-position:50% 70%;width:100%;height:100%;display:block}.contact:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(110deg,#101c29ef 0%,#101c29c7 58%,#101c2988 100%);position:absolute;inset:0}.contact-title{color:#edf2f5}.contact footer{border-color:#d8e9f355}.gallery-heading{max-width:none}.project-grid{gap:clamp(26px,3vw,50px)}.gallery-media{aspect-ratio:4/3;background:#243340;border-radius:6px;position:relative;overflow:hidden}.gallery-media>.project-image,.gallery-media>.macro-visual-wrapper{aspect-ratio:auto;width:100%;height:100%;min-height:0;margin:0;padding:0;display:block}.gallery-media .platformer-image{object-fit:cover;image-rendering:auto}.gallery-media .macro-image{object-fit:contain;aspect-ratio:auto;background:#1b252e;width:100%;height:100%;min-height:0;padding:16px;display:block}.project-tile:hover .project-image{filter:none;transform:none}.game-card-action{color:#f1f6fa;background:#17212be8;border:1px solid #edf2f555;border-radius:3px;justify-content:space-between;align-items:center;gap:24px;padding:13px 16px;font-size:.8rem;transition:background .25s,transform .25s;display:flex;position:absolute;inset:auto 18px 18px}.project-tile:hover .game-card-action{background:#17212b;transform:translateY(-3px)}.project-tile:focus-visible .game-card-action{outline:2px solid #b1cee7}.additional-project{isolation:isolate;position:relative}.additional-project-action{transition:color .25s}.cloud-notes{min-height:320px}.cloud-notes h4{max-width:430px}.cloud-notes p{max-width:440px}.job-stack{line-height:1.5}.source-inspector p,.case-copy p{line-height:1.65}.project-purpose{line-height:1.6}@supports (animation-timeline:view()){@media (min-width:801px) and (pointer:fine) and (prefers-reduced-motion:no-preference){.motion-enabled .landscape-foreground{animation:linear both hero-foreground-travel;animation-timeline:--portfolio-hero;animation-range:contain}.motion-enabled .contact-photograph{animation:linear both contact-photo-travel;animation-timeline:--contact-photo;animation-range:cover}}}@keyframes hero-card-travel{0%{transform:translate(-50%)scale(.8)}75%,to{transform:translate(-50%,-40svh)scale(1)}}@keyframes hero-copy-travel{0%,12%{opacity:1;transform:translate(0,0)}48%,to{opacity:0;transform:translateY(-80px)}}@keyframes hero-photo-travel{0%{transform:translate3d(calc(var(--look-x,0px)*-.6),calc(var(--look-y,0px)*-.6),0) scale(1.08)}to{transform:translate3d(calc(var(--look-x,0px)*-.6),calc(-65px + var(--look-y,0px)*-.6),0) scale(1.08)}}@keyframes hero-foreground-travel{0%{transform:translate3d(calc(var(--look-x,0px)*-.3),calc(var(--look-y,0px)*-.3),0) scale(1.08)}to{transform:translate3d(calc(var(--look-x,0px)*-.3),calc(-20px + var(--look-y,0px)*-.3),0) scale(1.08)}}@keyframes contact-photo-travel{0%{transform:translateY(-14px)}to{transform:translateY(14px)}}@media (max-width:800px),(pointer:coarse){.landscape-hero,.motion-paused .landscape-hero{height:auto;min-height:0}.landscape-copy,.motion-paused .landscape-copy{top:auto}.landscape-project,.motion-paused .landscape-project{height:auto;top:auto;transform:none}.landscape-back{background-position:50%;-webkit-mask-image:none;mask-image:none}.landscape-foreground{display:none}.contact-photograph{inset:0;transform:none}.contact:before{background:linear-gradient(110deg,#101c29ed,#101c29ba)}.gallery-media{aspect-ratio:4/3}.gallery-media .macro-image{padding:10px}.game-card-action{padding:12px 14px;font-size:.76rem;inset:auto 12px 12px}.additional-project{padding-block:26px}.cloud-notes{min-height:240px}.contact-title{margin-block:55px 25px}.contact footer{gap:24px}.intro-line{display:block}.project-grid{gap:44px}}.motion-paused .landscape-foreground{display:none}.motion-paused .landscape-back{-webkit-mask-image:none;mask-image:none}@media (prefers-reduced-motion:reduce){.landscape-foreground{display:none}.landscape-back{-webkit-mask-image:none;mask-image:none}.game-card-action{transition:none}.project-tile:hover .game-card-action{transform:none}}
