@font-face{font-family:display;src:url(../media/archivo_black-s.p.271zdrgm9ps28.ttf)format("truetype");font-display:swap;font-weight:400}@font-face{font-family:display Fallback;src:local(Arial);ascent-override:70.47%;descent-override:16.86%;line-gap-override:0.0%;size-adjust:124.59%}.JR8ZQW_className{font-family:display,display Fallback;font-weight:400}.JR8ZQW_variable{--font-display:"display", "display Fallback"}
@font-face{font-family:mono;src:url(../media/commit_mono_regular-s.p.0kp9q6z_tgbaq.woff2)format("woff2");font-display:swap;font-weight:400}@font-face{font-family:mono Fallback;src:local(Arial);ascent-override:68.45%;descent-override:15.21%;line-gap-override:0.0%;size-adjust:131.49%}.fuK_hq_className{font-family:mono,mono Fallback;font-weight:400}.fuK_hq_variable{--font-mono:"mono", "mono Fallback"}
:root{--bg-canvas:#101012;--text-primary:#ebeeef;--text-secondary:#b2b7ba;--text-muted:#909699;--accent-blue:#6594ff;--line:#ebeeef29;--page-gutter:40px}*,:before,:after{box-sizing:border-box}html{background:var(--bg-canvas);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scroll-behavior:smooth}body{color:var(--text-primary);font:400 13px/1.6 var(--font-mono), monospace;-webkit-font-smoothing:antialiased;margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}a{color:inherit;text-underline-offset:4px;text-decoration-color:#74787b;text-decoration-thickness:1px;transition:color .16s,text-decoration-color .16s}a:hover{color:#fff;-webkit-text-decoration-color:var(--accent-blue);text-decoration-color:var(--accent-blue)}button:focus-visible,a:focus-visible,input:focus-visible,main:focus-visible{outline:2px solid var(--accent-blue);outline-offset:5px}main:focus{outline:none}p{margin:0 0 12px}p:last-child{margin-bottom:0}h1,h2,h3,figure,dl,dd{margin:0}::selection{color:#101012;background:#b8c8fb}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:#101012;padding:10px 16px;position:fixed;top:16px;left:24px;transform:translateY(-180%)}.skip-link:focus{transform:none}.dither-background{z-index:0;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.grain,.bottom-nav:before{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.94' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.55' filter='url(%23n)'/%3E%3C/svg%3E")}.grain{z-index:1;pointer-events:none;opacity:.16;animation:.8s step-end infinite grain-shift;position:fixed;inset:-24px}html[data-background-paused=true] .grain{animation-play-state:paused}@keyframes grain-shift{0%,to{transform:translate(0)}20%{transform:translate(-11px,7px)}40%{transform:translate(9px,-13px)}60%{transform:translate(-7px,-9px)}80%{transform:translate(13px,11px)}}.site-shell{z-index:2;flex-direction:column;min-height:calc(100svh - 45px);margin-bottom:45px;display:flex;position:relative}.route-signal{flex:1;display:flex}.site-main{width:100%;padding:48px var(--page-gutter) 64px;margin:0 auto}.display-heading{font-family:var(--font-display), sans-serif;letter-spacing:-.03em;color:var(--text-primary);margin:0 0 64px;padding:8px;font-size:clamp(32px,6.25vw,80px);font-weight:400;line-height:1.05}.identity-heading{margin-bottom:48px}.display-heading{position:relative}.title-transmission{pointer-events:none;isolation:isolate;display:none;position:absolute;inset:0}.display-heading>.title-transmission{inset:8px}.display-heading[data-signal-active] .title-transmission{display:block}.title-band,.title-channel{position:absolute;inset:0}.title-band{isolation:isolate}.title-channel{mix-blend-mode:screen}.section-label{color:var(--text-secondary);border-bottom:1px solid var(--line);margin-bottom:12px;padding-bottom:8px;font-size:14px;font-weight:400;line-height:20px}.home-page{flex-direction:column;display:flex}.home-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.home-grid section{padding:16px}.home-grid p{max-width:46ch}.home-col-left{grid-area:1/1}.home-col-staggered{grid-area:3/2}.home-col-staggered+.home-col-staggered{grid-column:3}.site-footer{width:100%;padding:0 calc(var(--page-gutter) + 8px) 28px;color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;gap:12px;margin:0 auto;font-size:10px;display:flex}.bottom-nav{z-index:40;view-transition-name:site-navigation;background:#101012;border-top:1px solid #ebeeef26;justify-content:center;height:45px;animation:1.8s step-end both nav-reveal;display:flex;position:fixed;bottom:0;left:0;right:0}@keyframes nav-reveal{0%{visibility:hidden}to{visibility:visible}}.bottom-nav:before{content:"";pointer-events:none;opacity:.16;background-size:180px 180px;position:absolute;inset:0}.nav-inner{grid-template-columns:repeat(4,1fr);width:480px;max-width:100%;display:grid;position:relative}.nav-inner>a{color:var(--text-muted);letter-spacing:.06em;place-items:center;font-size:11px;text-decoration:none;display:grid}.nav-inner>a:hover,.nav-inner>a[aria-current]{color:var(--text-primary)}.nav-marker{width:26px;height:2px;top:-1px;left:calc((var(--active) + .5) * 25% - 13px);background:#4e7dff;transition:left .18s;position:absolute;box-shadow:0 0 7px #4e7dff44}.nav-tuner{opacity:0;cursor:ew-resize;touch-action:pan-y;width:75%;height:16px;margin:0;padding:0;position:absolute;top:-11px;left:12.5%}.nav-inner:has(.nav-tuner:focus-visible){outline:1px solid var(--accent-blue);outline-offset:3px}.signal-entrance{z-index:30;pointer-events:none;background:#101012;animation:1.8s step-end both signal-fade;position:fixed;inset:0;overflow:hidden}.signal-entrance:before{content:"";opacity:.14;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='150'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)' opacity='.6'/%3E%3C/svg%3E");position:absolute;inset:0}.signal-core{background:repeating-linear-gradient(#0000 0 2px,#649cf8a0 2px 3px,#0000 3px 4px);width:100%;height:12px;animation:1.8s steps(2,end) both signal-core;position:absolute;top:50%;left:0;box-shadow:0 0 18px #4c85d765}.signal-slice{left:var(--x);top:calc(50% + var(--offset));width:var(--w);background:#6d99dfaa;height:3px;animation:1.8s steps(3,end) both signal-displace;position:absolute;box-shadow:0 -2px 5px #478bea80,2px 2px #d3609560}.signal-content{--signal-middle:calc(50svh - 48px);animation:1.8s step-end both signal-resolve}.site-main{view-transition-name:page-content}.route-scan{opacity:0;pointer-events:none;view-transition-name:crt-scan;height:100px;position:fixed;inset:0 0 auto}.is-route-wiping .route-scan{opacity:1}.route-scan span{background:#11151bc9;height:6px;position:absolute;box-shadow:0 -1px 1px #96bfff,0 -3px 7px #5797ffb0}.route-scan span:nth-child(3n){background:#83a9f5;height:2px;box-shadow:-7px 1px #e34b7670,8px -1px #72dbd270}::view-transition-group(crt-scan){z-index:2;opacity:1;animation:.82s linear both crt-scan-sweep}::view-transition-old(crt-scan){display:none}::view-transition-new(crt-scan){opacity:1;animation:none}@property --wipe-line{syntax:"<length>";inherits:false;initial-value:-90px}::view-transition{pointer-events:none}::view-transition-group(page-content){z-index:1;animation:none}::view-transition-group(site-navigation){z-index:3;animation:none}::view-transition-old(site-navigation){display:none}::view-transition-new(site-navigation){animation:none}::view-transition-old(root){display:none}::view-transition-new(root){animation:none}::view-transition-image-pair(page-content){isolation:isolate}::view-transition-old(page-content){--wipe-above:polygon(0 0,100% 0,100% calc(var(--wipe-line) - 24px),92% calc(var(--wipe-line) - 24px),92% calc(var(--wipe-line) + 6px),79% calc(var(--wipe-line) + 6px),79% calc(var(--wipe-line) - 15px),63% calc(var(--wipe-line) - 15px),63% calc(var(--wipe-line) + 22px),49% calc(var(--wipe-line) + 22px),49% calc(var(--wipe-line) - 6px),33% calc(var(--wipe-line) - 6px),33% calc(var(--wipe-line) + 12px),17% calc(var(--wipe-line) + 12px),17% calc(var(--wipe-line) - 18px),0 calc(var(--wipe-line) - 18px));--wipe-below:polygon(0 calc(var(--wipe-line) - 18px),17% calc(var(--wipe-line) - 18px),17% calc(var(--wipe-line) + 12px),33% calc(var(--wipe-line) + 12px),33% calc(var(--wipe-line) - 6px),49% calc(var(--wipe-line) - 6px),49% calc(var(--wipe-line) + 22px),63% calc(var(--wipe-line) + 22px),63% calc(var(--wipe-line) - 15px),79% calc(var(--wipe-line) - 15px),79% calc(var(--wipe-line) + 6px),92% calc(var(--wipe-line) + 6px),92% calc(var(--wipe-line) - 24px),100% calc(var(--wipe-line) - 24px),100% 100%,0 100%);object-fit:none;object-position:top left;mix-blend-mode:normal;height:100%;animation:.82s linear both crt-page-wipe}::view-transition-new(page-content){--wipe-above:polygon(0 0,100% 0,100% calc(var(--wipe-line) - 24px),92% calc(var(--wipe-line) - 24px),92% calc(var(--wipe-line) + 6px),79% calc(var(--wipe-line) + 6px),79% calc(var(--wipe-line) - 15px),63% calc(var(--wipe-line) - 15px),63% calc(var(--wipe-line) + 22px),49% calc(var(--wipe-line) + 22px),49% calc(var(--wipe-line) - 6px),33% calc(var(--wipe-line) - 6px),33% calc(var(--wipe-line) + 12px),17% calc(var(--wipe-line) + 12px),17% calc(var(--wipe-line) - 18px),0 calc(var(--wipe-line) - 18px));--wipe-below:polygon(0 calc(var(--wipe-line) - 18px),17% calc(var(--wipe-line) - 18px),17% calc(var(--wipe-line) + 12px),33% calc(var(--wipe-line) + 12px),33% calc(var(--wipe-line) - 6px),49% calc(var(--wipe-line) - 6px),49% calc(var(--wipe-line) + 22px),63% calc(var(--wipe-line) + 22px),63% calc(var(--wipe-line) - 15px),79% calc(var(--wipe-line) - 15px),79% calc(var(--wipe-line) + 6px),92% calc(var(--wipe-line) + 6px),92% calc(var(--wipe-line) - 24px),100% calc(var(--wipe-line) - 24px),100% 100%,0 100%);object-fit:none;object-position:top left;mix-blend-mode:normal;height:100%;animation:.82s linear both crt-page-wipe}::view-transition-new(page-content){clip-path:var(--wipe-above);animation-name:crt-page-wipe,crt-phosphor;animation-timing-function:linear,step-end}::view-transition-old(page-content){clip-path:var(--wipe-below);animation-name:crt-page-wipe,crt-departure;animation-timing-function:linear,step-end}html[data-wipe-direction=up]::view-transition-new(page-content){clip-path:var(--wipe-below);animation-direction:reverse,normal}html[data-wipe-direction=up]::view-transition-old(page-content){clip-path:var(--wipe-above);animation-direction:reverse,normal}html[data-wipe-direction=up]::view-transition-group(crt-scan){animation-direction:reverse}@keyframes crt-page-wipe{0%{--wipe-line:-90px}to{--wipe-line:calc(100vh + 90px)}}@keyframes crt-scan-sweep{0%{transform:translateY(-140px)}to{transform:translateY(calc(100vh + 40px))}}@keyframes crt-phosphor{0%{filter:drop-shadow(-3px 0 #ff4264b0)drop-shadow(4px 0 #3e91ffe0)brightness(1.35);translate:-9px}18%{filter:drop-shadow(-2px 0 #5eff9e90)drop-shadow(3px 0 #497effd0);translate:6px}36%{filter:drop-shadow(-3px 0 #ff4264a0)drop-shadow(4px 0 #439bffd0);translate:-5px}57%{filter:drop-shadow(-1px 0 #ff426470)drop-shadow(2px 0 #439bff90);translate:3px}76%,to{filter:none;translate:0}}@keyframes crt-departure{0%{filter:none;translate:0}8%{filter:drop-shadow(2px 0 #448dff90)drop-shadow(-2px 0 #f4547370);translate:-3px}23%{filter:drop-shadow(-2px 0 #448dff70);translate:2px}42%{filter:none;translate:-1px}68%,to{filter:none;translate:0}}@keyframes signal-fade{0%,28%{opacity:1}38%{opacity:.96}47%{opacity:.65}60%{opacity:.18}76%,to{opacity:0;visibility:hidden}}@keyframes signal-core{0%{opacity:.35;transform:scaleY(.15)}12%{opacity:.8;transform:scaleY(.5)}27%{opacity:1;transform:scaleY(1)}40%{opacity:.75;transform:scaleY(2.2)}56%{opacity:.2;transform:scaleY(5)}70%,to{opacity:0}}@keyframes signal-displace{0%{opacity:.2;transform:translate(-45px)scaleX(.6)}14%{opacity:.8;transform:translate(25px)scaleX(1.1)}28%{opacity:1;transform:translate(-18px)scaleX(1.4)}42%{transform:translate(35px,var(--offset)) scaleX(.8);opacity:.8}56%{transform:translate(-20px,calc(var(--offset) * 2)) scaleX(1.5);opacity:.6}72%,to{transform:translate(0,calc(var(--offset) * 3));opacity:0}}@keyframes signal-resolve{0%,27%{clip-path:inset(calc(var(--signal-middle) - 1px) 0 calc(100% - var(--signal-middle) - 1px));opacity:.12;filter:blur(1px);text-shadow:-3px 0 #ec427a99,3px 0 #428aff99;transform:translate(-8px)}38%{clip-path:inset(calc(var(--signal-middle) - 3svh) 0 calc(100% - var(--signal-middle) - 3svh));opacity:.7;filter:blur(.8px);transform:translate(12px)}49%{clip-path:polygon(0 calc(var(--signal-middle) - 12svh),18% calc(var(--signal-middle) - 12svh),18% calc(var(--signal-middle) - 20svh),44% calc(var(--signal-middle) - 20svh),44% calc(var(--signal-middle) - 10svh),73% calc(var(--signal-middle) - 10svh),73% calc(var(--signal-middle) - 17svh),100% calc(var(--signal-middle) - 17svh),100% calc(var(--signal-middle) + 15svh),76% calc(var(--signal-middle) + 15svh),76% calc(var(--signal-middle) + 23svh),43% calc(var(--signal-middle) + 23svh),43% calc(var(--signal-middle) + 11svh),17% calc(var(--signal-middle) + 11svh),17% calc(var(--signal-middle) + 20svh),0 calc(var(--signal-middle) + 20svh));opacity:1;filter:blur(.5px);transform:translate(-7px)}62%{clip-path:polygon(0 calc(var(--signal-middle) - 32svh),24% calc(var(--signal-middle) - 32svh),24% calc(var(--signal-middle) - 43svh),57% calc(var(--signal-middle) - 43svh),57% calc(var(--signal-middle) - 29svh),81% calc(var(--signal-middle) - 29svh),81% calc(var(--signal-middle) - 39svh),100% calc(var(--signal-middle) - 39svh),100% calc(var(--signal-middle) + 36svh),66% calc(var(--signal-middle) + 36svh),66% calc(var(--signal-middle) + 45svh),31% calc(var(--signal-middle) + 45svh),31% calc(var(--signal-middle) + 38svh),0 calc(var(--signal-middle) + 38svh));filter:blur(.4px);text-shadow:-2px 0 #ec427a66,2px 0 #428aff66;transform:translate(4px)}76%{clip-path:inset(0);filter:blur(.3px);text-shadow:-1px 0 #ec427a44,1px 0 #428aff44;transform:translate(-1px)}90%,to{clip-path:inset(0);opacity:1;filter:none;text-shadow:none;transform:none}}.work-list{gap:96px;display:grid}.work-project{min-width:0}.work-project-heading{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;margin-bottom:32px;text-decoration:none;display:grid}.project-index{color:#7a7e81;letter-spacing:-.05em;font-size:clamp(32px,6.25vw,80px);font-weight:400;line-height:1}.work-project-heading h2,.about-project-links>a>span:first-child{font-family:var(--font-display), sans-serif;letter-spacing:-.03em;font-size:clamp(24px,3.2vw,48px);font-weight:400;line-height:1.12}.work-project-heading p{margin-top:8px;font-size:13px}.work-project-heading h2{align-items:center;gap:.45em;display:flex}.work-project-heading[data-project-signal] .project-arrow .title-transmission{display:block}.project-arrow{opacity:0;flex-shrink:0;width:.72em;height:.72em;line-height:0;display:inline-block;position:relative}.project-arrow svg{width:100%;height:100%;display:block}.work-project-heading:hover .project-arrow,.work-project-heading:focus-visible .project-arrow{opacity:1}@media (hover:none){.project-arrow{opacity:1}}@media (min-width:768px){.work-project-heading{max-width:calc(66.6667vw - 64px)}}.project-gallery{scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#56585e transparent;margin-right:calc(-1 * var(--page-gutter));gap:12px;padding-bottom:8px;display:flex;overflow-x:auto}.project-gallery figure{scroll-snap-align:start;flex:0 0 calc(66.6667vw - 64px);min-width:0}.project-gallery figure:last-child{margin-right:var(--page-gutter)}.image-button{cursor:zoom-in;background:#161618;border:1px solid #fff2;border-radius:7px;width:100%;padding:0;display:block;position:relative;overflow:hidden}.image-button img{aspect-ratio:16/9;object-fit:cover;width:100%;height:auto;display:block}.expand-icon{color:#555;opacity:.8;background:#ffffffdf;border:1px solid #888;border-radius:50%;place-items:center;width:17px;height:17px;font:12px/1 monospace;display:grid;position:absolute;top:10px;left:10px}.image-button:hover .expand-icon{opacity:1}.project-caption{color:var(--text-secondary);flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:16px;font-size:11px;display:flex}.work-outro{color:var(--text-secondary);margin-top:72px}.image-dialog{width:100vw;max-width:none;height:100svh;max-height:none;color:var(--text-primary);background:0 0;border:0;margin:0;padding:64px 72px;position:fixed;inset:0;overflow:hidden}.image-dialog[open]{justify-content:center;align-items:center;display:flex}.image-dialog::backdrop{background:#1c1b1ff7}.image-dialog-content{flex-direction:column;align-items:center;gap:16px;width:100%;min-width:0;display:flex}.image-dialog-stage{justify-content:center;align-items:center;width:100%;display:flex}.image-dialog img{object-fit:contain;border-radius:8px;width:auto;max-width:min(1440px,100%);height:auto;max-height:calc(100svh - 192px);display:block}.image-dialog figcaption{max-width:76ch;color:var(--text-secondary);text-align:center;font-size:12px;line-height:20px}.dialog-close,.dialog-nav{z-index:1;width:44px;height:44px;color:var(--text-secondary);background:0 0;border:0;border-radius:4px;place-items:center;padding:0;font-size:24px;line-height:1;display:grid;position:absolute}.dialog-close:hover,.dialog-nav:hover{color:var(--text-primary)}.dialog-close{top:12px;right:12px}.dialog-nav{font-size:20px;top:50%;transform:translateY(-50%)}.dialog-previous{left:16px}.dialog-next{right:16px}html:has(dialog[open]){overflow:hidden}.back-link{color:var(--text-secondary);margin-bottom:28px;text-decoration:none;display:inline-block}.case-study>.display-heading{margin-bottom:42px}.case-intro{grid-template-columns:minmax(240px,1fr) minmax(0,2fr);gap:80px;margin-bottom:56px;display:grid}.project-facts{font-size:12px}.project-facts>div{margin-bottom:22px}dt{color:var(--text-muted);margin-bottom:4px}dd{color:var(--text-primary)}.project-facts dd{max-width:38ch}.case-overview{max-width:76ch}.case-overview .section-label{margin-bottom:18px}.case-overview p{line-height:1.85}.case-gallery figure{margin-bottom:30px}figcaption{color:var(--text-secondary);margin-top:12px;font-size:11px}.case-section{margin:72px 0}.three-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:28px;display:grid}h3{color:var(--text-secondary);margin-bottom:12px;font-size:13px;font-weight:400}.architecture-flow{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:24px;display:grid}.architecture-connector{color:var(--accent-blue);margin-bottom:12px;font-size:24px;display:block}.decision-grid{grid-template-columns:1fr 1fr;gap:48px;max-width:1000px;margin-top:28px;display:grid}.case-ending{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:24px;padding-top:32px;display:flex}.about-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:"story.portrait"".skills."".education.";gap:8px;display:grid}.about-story{grid-area:story}.about-skills{grid-area:skills;margin-top:16px}.about-portrait{aspect-ratio:1;border-radius:7px;grid-area:portrait;align-self:start;width:100%;overflow:hidden}.about-portrait img{object-fit:cover;object-position:50% 25%;filter:blur(.4px);width:100%;height:100%;display:block}.about-grid section{min-width:0;padding:16px}.capabilities>div{margin-bottom:24px}.capabilities>div:last-child{margin-bottom:0}.capabilities dt{color:var(--text-primary);margin-bottom:12px}.education{grid-area:education}.muted,.contact-location{color:var(--text-secondary)}.about-work{margin:40px 0 0 calc(33.3333% + 2.66667px);padding:16px}.about-project-links>a{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:22px 0;text-decoration:none;display:flex}.about-project-links>a>span:last-child{color:var(--text-secondary);font-size:11px}.contact-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:8px;display:grid}.contact-content{grid-column:3;padding:16px}.contact-portrait{aspect-ratio:2.6;border-radius:7px;grid-column:1/-1;margin:8px;overflow:hidden}.contact-portrait img{object-fit:cover;object-position:50% 40%;filter:grayscale()blur(.4px);width:100%;height:100%;display:block}.contact-content>p{max-width:54ch}.email-link{overflow-wrap:anywhere;margin:4px 0 16px;display:inline-block}.contact-links{gap:32px;margin:0;padding:0;list-style:none;display:flex}.contact-location{margin-top:32px;font-size:11px}@media (min-width:640px) and (max-height:700px){.display-heading:not(.identity-heading){margin-bottom:24px}}@media (max-width:1023px){.home-grid{grid-template-columns:minmax(0,1fr)}.home-col-left,.home-col-staggered,.home-col-staggered+.home-col-staggered{grid-area:auto}.about-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"story""skills""portrait""education"}.about-work{margin-left:0}.contact-grid{grid-template-columns:minmax(0,1fr)}.contact-content{grid-column:auto}}@media (max-width:900px){.case-intro{gap:40px}}@media (max-width:767px){.project-gallery figure{flex-basis:calc(100vw - 2 * var(--page-gutter) - 24px)}}@media (max-width:639px){:root{--page-gutter:24px}.site-main{padding-top:32px}}@media (max-width:700px){.image-dialog{padding:64px 16px 80px}.dialog-nav{top:auto;bottom:12px;transform:none}.dialog-previous{left:calc(50% - 52px)}.dialog-next{right:calc(50% - 52px)}body{font-size:13px}.site-main{padding-bottom:52px}.signal-content{--signal-middle:calc(50svh - 32px)}.display-heading{margin-bottom:48px}.identity-heading{font-size:clamp(28px,6.25vw,80px);line-height:1.05}.home-page{min-height:0}.home-grid{grid-template-columns:1fr}.home-grid section{padding:8px}.home-grid p{max-width:60ch}.site-footer{gap:8px;padding-bottom:24px;font-size:9px}.work-project-heading{margin-bottom:24px}.work-project-heading h2{font-size:24px}.work-project-heading p{font-size:12px}.work-list{gap:64px}.case-intro,.three-columns,.architecture-flow,.decision-grid{grid-template-columns:1fr;gap:32px}.case-intro{margin-bottom:36px}.project-facts{grid-template-columns:1fr 1fr;column-gap:24px;display:grid}.project-facts>div:last-child{grid-column:1/-1}.project-facts dd{max-width:none}.case-section{margin:48px 0}.architecture-flow{gap:24px}.education{grid-column:auto}.about-project-links>a>span:first-child{font-size:24px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.signal-entrance,.display-heading[data-signal-active] .title-transmission{display:none}::view-transition-old(page-content){clip-path:none;filter:none;animation:none}::view-transition-new(page-content){clip-path:none;filter:none;animation:none}}
