@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.0e__wj8580tc5.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/e629b5bc06499d58-s.10u7vx61f1ie7.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/1a099d89ee94ee96-s.35a5cae5tspm2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.18rizl4rsrl42.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans Fallback;src:local(Arial);ascent-override:98.88%;descent-override:21.15%;line-gap-override:0.0%;size-adjust:104.98%}.plus_jakarta_sans_76f6c662-module__cgTQqG__className{font-family:Plus Jakarta Sans,Plus Jakarta Sans Fallback;font-style:normal}.plus_jakarta_sans_76f6c662-module__cgTQqG__variable{--font-jakarta:"Plus Jakarta Sans", "Plus Jakarta Sans Fallback"}
@font-face{font-family:stackSansNotch;src:url(../media/StackSansNotch_600_latin-s.p.3xvow3ndej5hd.woff2)format("woff2");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:stackSansNotch Fallback;src:local(Arial);ascent-override:93.23%;descent-override:27.97%;line-gap-override:0.0%;size-adjust:107.26%}.stacksansnotch_91216b3c-module__6X7vDa__className{font-family:stackSansNotch,stackSansNotch Fallback;font-style:normal;font-weight:600}.stacksansnotch_91216b3c-module__6X7vDa__variable{--font-stack-sans-notch:"stackSansNotch", "stackSansNotch Fallback"}
:root{--bg:#e9e9e9;--surface:#f7f7f7;--ink:#3e3e3e;--muted:#5f5f5f;--brand-muted:#5f5f5f;--hairline:color-mix(in oklch, var(--ink) 18%, transparent);--focus:#4a4a4a;--text-micro:9px;--text-caption:10px;--text-label:12px;--text-display-sm:clamp(18px, 1.25vw, 20px);--text-display-md:clamp(30px, 3.6vw, 62px);--text-display-lg:clamp(48px, 4.6vw, 78px);--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--duration-exit:.15s;--duration-enter:.21s;--duration-move:.4s;--motion-state:.18s cubic-bezier(.2, 0, 0, 1);--motion-route:.26s var(--ease-out);--motion-reveal:.52s cubic-bezier(.16, 1, .3, 1);--space-1:4px;--space-2:8px;--page-gutter:clamp(22px, 3.2vw, 58px);--shell-col:calc(100vw / 6);--shell-axis-x:50vw;--shell-rail-inset:clamp(18px, 1.55vw, 30px);--shell-rail-animal-width:clamp(56px, 4.4vw, 72px);--shell-antelope-width:max(12ch, var(--shell-rail-animal-width));--shell-antelope-artwork-width:var(--shell-rail-animal-width);--shell-antelope-bottom:clamp(20px, 2.1vw, 40px);--shell-antelope-reserve:calc(var(--shell-antelope-artwork-width) * .66 + 40px);--shell-caption-origin:calc(var(--shell-col) * 5 + 2.667px);--shell-caption-width:calc(var(--shell-col) - 2.667px);--masthead-height:clamp(112px, 12.5vh, 136px);--article-header-height:clamp(54px, 6.4vh, 68px);--safe-area-top:env(safe-area-inset-top,0px);--safe-area-right:env(safe-area-inset-right,0px);--safe-area-bottom:env(safe-area-inset-bottom,0px);--safe-area-left:env(safe-area-inset-left,0px)}*{box-sizing:border-box}html,body{background:var(--bg);width:100%;height:100%;color:var(--ink);margin:0}:is(html:has(.project-shell),body:has(.project-shell)){overflow:hidden}body,button{font-family:var(--font-jakarta), "Avenir Next", "Segoe UI", Helvetica, sans-serif}button,a{color:inherit}a{text-decoration:none}button{border-radius:0}:focus-visible{outline:1px solid var(--focus);outline-offset:4px}::selection{background:color-mix(in oklch, var(--focus) 22%, transparent)}.visually-hidden{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.project-shell{--masthead-content-top:clamp(26px, 3.8vh, 46px);--studio-mark-width:clamp(27px, 2.13vw, 35px);--studio-mark-height:clamp(43px, 3.73vw, 56px);--studio-mark-gap:clamp(8px, .65vw, 11px);z-index:1;grid-template-columns:repeat(6,minmax(0,1fr));width:100%;height:100dvh;min-height:0;margin:0 auto;display:grid;position:relative;overflow:hidden}.project-sidebar{--sidebar-inline:var(--shell-rail-inset);--sidebar-top:var(--masthead-content-top);--sidebar-bottom:clamp(24px, 3vh, 40px);min-width:0;height:100dvh;padding:0 var(--sidebar-inline) var(--sidebar-bottom);flex-direction:column;grid-column:1;display:flex;position:relative}.site-header{height:var(--masthead-height);padding-top:var(--sidebar-top);flex:none;align-items:flex-start;display:flex}.studio-wordmark{flex:none;width:max-content;display:block}.studio-wordmark-mark{display:none}.studio-wordmark-copy{--wordmark-width:clamp(286px, 21.4vw, 350px);min-width:0;width:var(--wordmark-width);flex-direction:column;display:flex}.gallery-logo-mark{z-index:2;top:var(--masthead-content-top);left:var(--shell-axis-x);width:var(--studio-mark-width);height:var(--studio-mark-height);pointer-events:none;margin:0;position:absolute;transform:translate(-50%)}.gallery-logo-mark-image,.studio-wordmark-mark-image{object-fit:contain;filter:grayscale();opacity:.78;width:100%;height:100%;display:block}.studio-wordmark-name{width:100%;color:var(--ink);font-family:var(--font-stack-sans-notch), var(--font-jakarta), "Avenir Next", "Segoe UI", Helvetica, sans-serif;letter-spacing:0;white-space:nowrap;justify-content:space-between;font-size:24px;font-weight:400;line-height:.94;display:flex}.studio-wordmark-descriptor{width:100%;color:var(--brand-muted);letter-spacing:0;white-space:nowrap;justify-content:space-between;margin-top:8px;font-size:clamp(7.5px,.56vw,9px);font-weight:600;line-height:1.2;display:flex}.skip-link{z-index:1000;top:0;left:max(var(--space-2), var(--safe-area-left));padding:var(--space-2);border:1px solid var(--hairline);background:var(--surface);color:var(--ink);position:fixed;transform:translateY(-100%)}.skip-link:focus-visible{top:max(var(--space-2), var(--safe-area-top));transform:none}.project-nav{top:var(--masthead-height);right:var(--sidebar-inline);bottom:calc(var(--shell-antelope-bottom) + var(--shell-antelope-reserve));left:var(--sidebar-inline);overscroll-behavior:contain;scrollbar-width:none;min-height:0;margin:0;position:absolute;overflow:hidden auto}.project-nav::-webkit-scrollbar{width:0;height:0;display:none}.project-nav :is(ol,ul){margin:0;padding:0 0 2px;list-style:none}.project-nav-divider,.project-nav-outro{width:var(--shell-rail-animal-width);transition:background-color var(--motion-state);background-color:#3e3e3e;flex:none;display:block}.project-nav-divider{height:calc(var(--shell-rail-animal-width) * 78 / 208);margin:18px 0 22px;-webkit-mask:url(/fox-ligature.svg) 50%/contain no-repeat;mask:url(/fox-ligature.svg) 50%/contain no-repeat}.project-nav-outro{height:calc(var(--shell-rail-animal-width) * 104 / 208);margin:22px 0 12px;-webkit-mask:url(/rabbit-ligature.svg) 50%/contain no-repeat;mask:url(/rabbit-ligature.svg) 50%/contain no-repeat}.project-nav a{--project-nav-indent:2.72ch;width:100%;min-height:27px;color:var(--brand-muted);cursor:pointer;letter-spacing:.045em;text-transform:uppercase;white-space:nowrap;opacity:1;transition:opacity var(--motion-state);align-items:flex-start;font-size:10px;font-weight:400;line-height:1.2;display:flex}.project-nav :is(.project-nav-primary,.project-nav-projects) li{min-width:0;display:flex}.project-nav-item{--project-nav-indent:2.72ch;isolation:isolate;contain:layout;cursor:pointer;flex:auto;width:100%;min-width:0;min-height:27px;display:flex;position:relative;overflow:hidden}.project-nav-link{box-sizing:border-box;flex:auto;width:100%;min-width:0;max-width:100%;height:100%;min-height:0;position:relative}.project-nav-label{pointer-events:none;align-items:center;transition:none;display:flex;transform:translate(0)}.project-nav-item .project-nav-label{text-shadow:0 0 1px var(--bg), 0 0 4px color-mix(in srgb, var(--bg) 88%, transparent);padding-inline-start:0;transform:none}@media (hover:hover) and (pointer:fine){.project-nav-primary .project-nav-label{transition:transform .16s var(--ease-out)}.project-nav-item .project-nav-label{transition:padding-inline-start .16s var(--ease-out)}.project-nav:focus-within .project-nav-label{transition-duration:0s}}.project-nav-icon{display:none}.project-nav a:hover,.project-nav a:focus-visible,.project-nav a[data-gallery-hovered=true]{color:var(--ink)}.project-nav-primary a:hover,.project-nav-primary a:focus-visible{font-weight:600}.project-nav-primary a:hover .project-nav-label,.project-nav-primary a:focus-visible .project-nav-label{transform:translateX(var(--project-nav-indent))}.project-nav-item a:hover .project-nav-label,.project-nav-item a:focus-visible .project-nav-label,.project-nav-item a[data-gallery-hovered=true] .project-nav-label,.project-nav-item a[aria-current] .project-nav-label{padding-inline-start:var(--project-nav-indent)}.project-nav a[aria-current]{color:var(--ink);font-weight:600}.project-nav-primary a[aria-current] .project-nav-label{transform:translateX(var(--project-nav-indent))}.project-shell:has(.project-detail) .project-nav-item a{opacity:.5}:is(.project-shell:has(.project-detail) .project-nav-item a:hover,.project-shell:has(.project-detail) .project-nav-item a:focus-visible,.project-shell:has(.project-detail) .project-nav-item a[aria-current]){opacity:1}.portfolio-route-region{grid-area:1/3/auto/-1;min-width:0;height:100dvh;min-height:0;overflow:hidden}.project-shell:has(.project-detail) .portfolio-route-region{grid-column:2/-1}@keyframes fade{0%{filter:blur(3px);opacity:0}to{filter:blur();opacity:1}}@keyframes slide{0%{translate:var(--slide-offset)}to{translate:0}}::view-transition-old(.route-fade){animation:var(--duration-exit) ease-in both fade reverse}::view-transition-new(.route-fade){animation:var(--duration-enter) var(--ease-out) var(--duration-exit) both fade}::view-transition-old(.nav-forward){--slide-offset:-60px;animation:var(--duration-exit) ease-in both fade reverse, var(--duration-move) var(--ease-in-out) both slide reverse}::view-transition-new(.nav-forward){--slide-offset:60px;animation:var(--duration-enter) var(--ease-out) var(--duration-exit) both fade, var(--duration-move) var(--ease-in-out) both slide}::view-transition-old(.nav-back){--slide-offset:60px;animation:var(--duration-exit) ease-in both fade reverse, var(--duration-move) var(--ease-in-out) both slide reverse}::view-transition-new(.nav-back){--slide-offset:-60px;animation:var(--duration-enter) var(--ease-out) var(--duration-exit) both fade, var(--duration-move) var(--ease-in-out) both slide}::view-transition-old(root){display:none}::view-transition-new(root){animation:none}.detail-scroll{overscroll-behavior:contain;scrollbar-width:none;width:100%;min-height:0;overflow:hidden auto}@keyframes living-folio-caption-in{0%{opacity:0;translate:0 6px}to{opacity:1;translate:0}}.living-folio-caption{z-index:4;top:var(--masthead-content-top);left:var(--shell-caption-origin);width:var(--shell-caption-width);pointer-events:none;min-width:0;position:fixed}.living-folio-caption-entry{animation:living-folio-caption-in .21s var(--ease-out) both;grid-template-columns:38px minmax(0,1fr);gap:0;display:grid}.living-folio-caption-ordinal{color:var(--muted);letter-spacing:.08em;font-size:8px;font-weight:600;line-height:1.35}.living-folio-caption-copy{flex-direction:column;align-items:flex-start;gap:3px;min-width:0;display:flex}.living-folio-caption-copy strong{color:var(--ink);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:500;line-height:1.2}.living-folio-caption-copy span{max-width:100%;max-height:2.7em;color:var(--muted);font-size:9px;font-weight:400;line-height:1.35;overflow:hidden}.living-folio-caption-disciplines{max-width:100%;color:var(--muted);flex-direction:column;gap:1px;margin:0;padding:0;font-size:9px;font-weight:400;line-height:1.35;list-style:none;display:flex}.detail-view{--detail-column-gutter:clamp(18px, 1.9vw, 34px);--detail-footer-height:clamp(72px, 9vh, 108px);--detail-gap:.25rem;--detail-scrollbar-gutter:18px;--project-narrative-gap:22px;background:var(--bg);width:100%;height:100dvh;min-height:0}.article-project-status{z-index:4;left:var(--shell-rail-inset);bottom:var(--shell-antelope-bottom);width:var(--shell-antelope-width);color:var(--muted);letter-spacing:.11em;text-transform:uppercase;pointer-events:none;grid-template-columns:minmax(0,1fr);gap:12px;font-size:10px;font-weight:600;line-height:1.2;display:grid;position:fixed}.article-project-status-artwork{width:var(--shell-antelope-artwork-width);max-width:100%;height:auto;display:block}.article-project-status-title{white-space:nowrap;text-align:justify;text-align-last:justify;text-justify:inter-word;width:100%}.detail-view>article{grid-template-rows:var(--masthead-height) var(--article-header-height) minmax(0, 1fr);width:100%;height:100%;min-height:0;display:grid}.detail-scroll{height:100%;padding:0 0 var(--detail-footer-height);grid-row:3}.project-detail .detail-scroll{height:100%;min-height:0;max-height:100%;padding-inline-start:var(--detail-scrollbar-gutter);padding-bottom:var(--detail-footer-height);scrollbar-width:none;grid-area:1/1/auto/span 2;overflow:hidden auto}.project-detail .detail-scroll::-webkit-scrollbar{width:0;height:0;display:none}.project-detail-scrollbar,.project-article-scrollbar{z-index:4;background:color-mix(in oklch, var(--ink) 12%, transparent);pointer-events:none;opacity:0;width:4px;min-height:0;transition:opacity .85s var(--ease-out,ease);border-radius:999px;align-self:stretch;position:relative;overflow:hidden}.project-detail-scrollbar[data-scroll-active=true],.project-article-scrollbar[data-scroll-active=true]{opacity:1;transition-duration:.18s}.project-article-stage .project-detail-scrollbar{margin:4px 0 var(--detail-footer-height) 6px;grid-area:1/1;justify-self:start}.project-writeup-frame>.project-article-scrollbar{z-index:4;background:color-mix(in oklch, var(--ink) 22%, transparent);place-self:auto;width:4px;margin:0;position:absolute;top:8px;bottom:8px;right:4px}.project-detail-scrollbar[hidden],.project-article-scrollbar[hidden]{display:none}.project-detail-scrollbar-thumb{background:color-mix(in oklch, var(--ink) 44%, transparent);will-change:transform;border-radius:999px;width:100%;min-height:32px;position:absolute;inset:0 0 auto}.detail-header{min-width:0;padding:0 var(--detail-column-gutter) 0 0;grid-row:2;align-items:flex-start;gap:12px;margin:0;display:flex}.scaffold-label{color:var(--muted);font-size:var(--text-micro);letter-spacing:.12em;margin:0 0 13px;font-weight:500;line-height:1.4}.detail-header h1{max-width:24ch;font-size:var(--text-display-sm);letter-spacing:.08em;text-transform:uppercase;opacity:.7;overflow-wrap:anywhere;margin:0;font-weight:500;line-height:1.05}.project-detail .detail-header h1{font-family:var(--font-alpha-lyrae), var(--font-jakarta), sans-serif;font-feature-settings:"calt" 1, "liga" 1;font-variant-ligatures:common-ligatures contextual}.detail-back-link{opacity:.7;width:22px;height:28px;transition:opacity var(--motion-state), transform var(--motion-state);flex:0 0 22px;align-items:center;margin:0;padding-left:4px;display:flex}.detail-back-link svg{fill:none;stroke:currentColor;stroke-width:.8px;stroke-linecap:square;stroke-linejoin:miter;width:7px;height:12px;overflow:visible}.detail-back-link:hover,.detail-back-link:focus-visible{opacity:1;transform:translate(-3px)}.detail-body{align-items:stretch;column-gap:var(--detail-gap);grid-template-rows:minmax(0,1fr);grid-template-columns:repeat(3,minmax(0,1fr));row-gap:0;display:grid}.project-article-stage{grid-row:3;min-width:0;height:100%;min-height:0;overflow:hidden}.project-article-stage[data-article-ready=false] .detail-media-image,.project-article-stage[data-article-ready=false] .project-thumbnail-image,.project-article-stage[data-article-ready=false] .detail-media-caption,.project-article-stage[data-article-ready=false] .detail-media-copy,.project-article-stage[data-article-ready=false] .project-scope,.project-article-stage[data-article-ready=false] .project-facts,.project-article-stage[data-article-ready=false] .project-writeup,.project-article-stage[data-article-ready=false] .project-color-palette,.project-article-stage[data-article-ready=false] .detail-media-placeholder-kicker,.project-article-stage[data-article-ready=false] .detail-media-placeholder-label{opacity:0;pointer-events:none}.project-article-stage[data-article-ready=false] .detail-media-trigger{pointer-events:none}.project-article-stage[data-article-ready=true] .detail-media-image,.project-article-stage[data-article-ready=true] .project-thumbnail-image,.project-article-stage[data-article-ready=true] .detail-media-caption,.project-article-stage[data-article-ready=true] .detail-media-copy,.project-article-stage[data-article-ready=true] .project-scope,.project-article-stage[data-article-ready=true] .project-facts,.project-article-stage[data-article-ready=true] .project-writeup,.project-article-stage[data-article-ready=true] .project-color-palette{opacity:1;transition:opacity .72s cubic-bezier(.32,.72,0,1)}@keyframes project-article-sheen{0%{transform:translate(-70%)}to{transform:translate(170%)}}.project-article-stage[data-article-ready=false] .detail-media-image-frame:after{content:"";background:linear-gradient(108deg, transparent 30%, color-mix(in oklch, var(--surface) 94%, white) 50%, transparent 70%);pointer-events:none;animation:2.4s cubic-bezier(.32,.72,0,1) infinite project-article-sheen;position:absolute;inset:0;transform:translate(-70%)}.project-article-stage[data-article-ready=false] .detail-media-row:nth-child(2) .detail-media-image-frame:after{animation-delay:.16s}.project-article-stage[data-article-ready=false] .detail-media-row:nth-child(3) .detail-media-image-frame:after{animation-delay:.28s}.project-article-stage[data-article-ready=false] .detail-media-row:nth-child(4) .detail-media-image-frame:after{animation-delay:.4s}.project-article-copy-skeleton{z-index:1;column-gap:var(--detail-gap);pointer-events:none;opacity:0;grid-template-rows:auto auto auto minmax(0,1fr);grid-template-columns:repeat(2,minmax(0,1fr));transition:opacity .42s cubic-bezier(.32,.72,0,1);display:grid;position:absolute;inset:0}.project-article-stage[data-article-ready=false] .project-article-copy-skeleton{opacity:1;transition:none}.project-article-copy-skeleton-thumb{aspect-ratio:1;width:100%;margin:0 0 var(--project-narrative-gap);visibility:hidden;grid-area:1/1}.project-article-copy-skeleton-kicker{width:44%;height:9px;margin:0 0 var(--project-narrative-gap);background:color-mix(in oklch, var(--ink) 9%, var(--surface));grid-area:2/1/auto/-1}.project-article-copy-skeleton:not(:has(.project-article-copy-skeleton-thumb)) .project-article-copy-skeleton-kicker{grid-row:1}.project-article-copy-skeleton-copy{padding:8px var(--detail-scrollbar-gutter) 0 1rem;flex-direction:column;grid-area:4/1/auto/-1;gap:13px;display:flex}.project-article-copy-skeleton-line{background:color-mix(in oklch, var(--ink) 8%, var(--surface));height:7px;display:block}.project-article-copy-skeleton-line:first-child{width:94%}.project-article-copy-skeleton-line:nth-child(2){width:81%}.project-article-copy-skeleton-line:nth-child(3){width:88%}.project-article-copy-skeleton-line:nth-child(4){width:72%}.project-article-copy-skeleton-line:nth-child(5){width:84%}.project-article-copy-skeleton-line:nth-child(6){width:61%}@media (prefers-reduced-motion:reduce){.project-article-stage[data-article-ready=false] .detail-media-image-frame:after{background:color-mix(in oklch, var(--ink) 5%, var(--surface));animation:none;transform:none}.project-article-stage[data-article-ready=true] .detail-media-image,.project-article-stage[data-article-ready=true] .project-thumbnail-image,.project-article-stage[data-article-ready=true] .detail-media-caption,.project-article-stage[data-article-ready=true] .detail-media-copy,.project-article-stage[data-article-ready=true] .project-scope,.project-article-stage[data-article-ready=true] .project-facts,.project-article-stage[data-article-ready=true] .project-writeup,.project-article-stage[data-article-ready=true] .project-color-palette,.project-article-copy-skeleton{transition:none}}.project-next{border-top:1px solid color-mix(in oklch, var(--ink) 14%, transparent);grid-column:1/-1;align-items:baseline;gap:18px;margin-top:clamp(48px,9vh,96px);padding-top:18px;display:flex}.project-next-label{color:var(--muted);font-size:var(--text-micro);letter-spacing:.13em;text-transform:uppercase;margin:0;font-weight:600;line-height:1.35}.project-next-title{color:var(--ink);font-size:var(--text-display-sm);font-weight:500;line-height:1.2}.project-next-title:hover,.project-next-title:focus-visible{text-underline-offset:4px;text-decoration:underline}.detail-media-stack{gap:var(--detail-gap);min-width:0;display:grid}.detail-media-row{grid-template-columns:var(--detail-media-columns,minmax(0, 1fr));align-items:start;gap:var(--detail-gap);min-width:0;display:grid}.detail-media-slot{min-width:0;margin:0}.detail-media-copy-row{align-items:start}.detail-media-copy{aspect-ratio:1920/1080;text-align:left;flex-direction:column;justify-content:center;align-items:flex-start;gap:12px;width:100%;min-width:0;min-height:0;padding:clamp(20px,2.4vw,36px) 0;display:flex}.detail-media-copy-kicker{color:var(--muted);font-size:var(--text-micro);letter-spacing:.13em;text-transform:uppercase;margin:0;font-weight:600;line-height:1.35}.detail-media-copy-body{color:var(--ink);margin:0}.detail-media-copy[data-copy-kind=quote] .detail-media-copy-body{max-width:18ch;font-family:var(--font-alpha-lyrae), var(--font-jakarta), sans-serif;font-feature-settings:"calt" 1, "liga" 1;font-variant-ligatures:common-ligatures contextual;letter-spacing:.03em;font-size:48px;font-style:normal;font-weight:500;line-height:1.28}.detail-media-copy[data-copy-kind=text] .detail-media-copy-body{max-width:38ch;font-size:var(--text-label);letter-spacing:-.014em;font-weight:300;line-height:1.55}.detail-media-image-frame{background:color-mix(in oklch, var(--surface) 78%, var(--muted));width:100%;display:block;position:relative;overflow:hidden}.detail-media-image{object-fit:cover;width:100%;height:100%;display:block}.detail-media-trigger{width:100%;color:inherit;text-align:inherit;cursor:pointer;background:0 0;border:0;padding:0;display:block;position:relative}.project-image-loupe{--loupe-size:230px;z-index:50;width:var(--loupe-size);height:var(--loupe-size);pointer-events:none;opacity:0;visibility:hidden;will-change:opacity, transform;transition:opacity .13s var(--ease-out), visibility 0s linear .13s;position:fixed;top:0;left:0}.project-image-loupe[data-visible=true]{opacity:1;visibility:visible;transition:opacity .16s var(--ease-out), visibility 0s linear 0s}.project-image-loupe-canvas{background:var(--surface);width:100%;height:100%;box-shadow:0 0 0 1px color-mix(in srgb, var(--ink) 18%, transparent);border-radius:50%;display:block}.project-image-loupe-label{width:max-content;min-height:30px;color:var(--ink);white-space:nowrap;background:#f7f7f7f5;grid-template-columns:14px auto;align-items:center;gap:8px;padding:6px 8px;font-family:ui-monospace,SFMono-Regular,Cascadia Code,Consolas,monospace;line-height:1;display:grid;position:absolute;top:50%;left:calc(100% + 12px);transform:translateY(-50%)}.project-image-loupe[data-label-side=left] .project-image-loupe-label{left:auto;right:calc(100% + 12px)}.project-image-loupe-swatch{border:1px solid color-mix(in srgb, var(--ink) 35%, transparent);width:14px;height:14px;display:block}.project-image-loupe-hex{letter-spacing:.04em;font-size:11px;font-weight:500}@media (hover:hover) and (pointer:fine){.detail-media-trigger[data-loupe-ready=true]{cursor:none}}@media (hover:none),(pointer:coarse){.project-image-loupe{display:none}}.detail-media-trigger:focus-visible{outline:1px solid var(--focus);outline-offset:4px}.project-image-viewer{--viewer-motion-ease:cubic-bezier(.22, 1, .36, 1);width:min(1320px,100vw - 48px);max-width:none;height:min(820px,100dvh - 48px);max-height:none;color:var(--ink);background:0 0;border:0;margin:auto;padding:0;position:fixed;inset:0;overflow:visible}.project-image-viewer::backdrop{-webkit-backdrop-filter:blur(8px)saturate(108%);backdrop-filter:blur(8px)saturate(108%);background:#14141429}.project-image-viewer[open]::backdrop{animation:.26s ease-out both project-viewer-backdrop-in}.project-image-viewer-shell{-webkit-backdrop-filter:blur(28px)saturate(112%);backdrop-filter:blur(28px)saturate(112%);background:#f0f0f057;border:1px solid #ffffff8a;border-radius:4px;grid-template-rows:minmax(0,1fr) 66px;grid-template-columns:minmax(0,1fr) 216px;gap:6px;width:100%;height:100%;padding:6px;display:grid;overflow:hidden;box-shadow:0 22px 60px #18181817,inset 0 1px #ffffff61}.project-image-viewer[open] .project-image-viewer-shell{transform-origin:50%;animation:project-viewer-shell-in .36s var(--viewer-motion-ease) both}.project-image-viewer-stage{background:#1c1c1c1a;place-items:center;min-width:0;min-height:0;display:grid;position:relative;overflow:hidden}.project-image-viewer-image{object-fit:contain;backface-visibility:hidden;will-change:opacity, transform}.project-image-viewer-image-incoming{z-index:2;animation:project-viewer-image-next-in .42s var(--viewer-motion-ease) both}.project-image-viewer-image-incoming[data-direction=previous]{animation-name:project-viewer-image-previous-in}.project-image-viewer-image-outgoing{z-index:1;pointer-events:none;animation:.3s ease-in both project-viewer-image-next-out}.project-image-viewer-image-outgoing[data-direction=previous]{animation-name:project-viewer-image-previous-out}.project-image-viewer-details{background:#f6f6f68f;border-radius:3px;grid-area:1/2/3;min-height:0;padding:12px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff52}.project-image-viewer-copy{scrollbar-width:none;height:calc(100% - 32px);overflow:auto}.project-image-viewer-copy-content{animation:project-viewer-copy-next-in .28s var(--viewer-motion-ease) both}.project-image-viewer-copy-content[data-direction=previous]{animation-name:project-viewer-copy-previous-in}.project-image-viewer-copy::-webkit-scrollbar{display:none}.project-image-viewer-eyebrow{color:color-mix(in oklch, var(--muted) 88%, transparent);letter-spacing:.13em;text-transform:uppercase;overflow-wrap:anywhere;margin:0 36px 14px 0;font-size:9px;font-weight:600;line-height:1.25}.project-image-viewer-copy h2{letter-spacing:-.012em;overflow-wrap:anywhere;margin:0;font-size:13px;font-weight:600;line-height:1.3}.project-image-viewer-caption,.project-image-viewer-credit{color:var(--muted);letter-spacing:-.005em;overflow-wrap:anywhere;margin:10px 0 0;font-size:11px;font-weight:400;line-height:1.45}.project-image-viewer-credit{letter-spacing:.01em;font-size:9px}.project-image-viewer-counter{color:var(--muted);letter-spacing:.1em;animation:project-viewer-copy-next-in .24s var(--viewer-motion-ease) both;margin:0;font-size:9px;font-weight:600;line-height:1;position:absolute;bottom:12px;left:12px}.project-image-viewer-counter[data-direction=previous]{animation-name:project-viewer-copy-previous-in}.project-image-viewer-icon{width:44px;height:44px;color:var(--ink);cursor:pointer;background:#f9f9f994;border:1px solid #28282833;border-radius:50%;flex:none;place-items:center;padding:0;transition:background-color .15s cubic-bezier(.22,1,.36,1),border-color .15s cubic-bezier(.22,1,.36,1),transform .15s cubic-bezier(.22,1,.36,1);display:grid;box-shadow:inset 0 1px #ffffff8c}.project-image-viewer-icon:hover{background:#ffffffc2;border-color:#2828284d}.project-image-viewer-icon:active{transform:scale(.94)}.project-image-viewer-icon:focus-visible,.project-image-viewer-thumbnail:focus-visible{outline:1px solid var(--focus);outline-offset:2px}.project-image-viewer-icon svg{fill:none;stroke:currentColor;stroke-width:1.25px;stroke-linecap:round;stroke-linejoin:round;width:11px;height:11px}.project-image-viewer-close{z-index:1;position:absolute;top:8px;right:8px}.project-image-viewer-filmstrip{overscroll-behavior:contain;grid-area:2/1;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:5px;min-width:0;display:grid;overflow:hidden}.project-image-viewer-thumbnails{grid-template-columns:repeat(var(--viewer-image-count), minmax(0, 1fr));gap:5px;min-width:0;display:grid}.project-image-viewer-thumbnail{cursor:pointer;opacity:.52;background:#ffffff38;border:1px solid #0000;border-radius:2px;min-width:0;height:54px;padding:0;transition:opacity .15s cubic-bezier(.22,1,.36,1),border-color .15s cubic-bezier(.22,1,.36,1),box-shadow .18s cubic-bezier(.22,1,.36,1),transform .18s cubic-bezier(.22,1,.36,1);position:relative;overflow:hidden}.project-image-viewer[open] .project-image-viewer-thumbnail{animation:project-viewer-thumbnail-in .32s var(--viewer-motion-ease) calc(80ms + var(--viewer-thumb-index) * 18ms) backwards}.project-image-viewer-thumbnail:hover{opacity:.78;transform:translateY(-1px)}.project-image-viewer-thumbnail:active{transform:scale(.985)}.project-image-viewer-thumbnail[aria-current=true]{opacity:1;border-color:#ffffffeb;box-shadow:0 0 0 1px #28282833}.project-image-viewer-thumbnail img{object-fit:cover}@keyframes project-viewer-backdrop-in{0%{background:#14141400}}@keyframes project-viewer-shell-in{0%{opacity:0;transform:translateY(6px)scale(.992)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes project-viewer-image-next-in{0%{opacity:0;transform:translate(18px)scale(.995)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes project-viewer-image-next-out{0%{opacity:1;transform:translate(0,0)scale(1)}to{opacity:0;transform:translate(-10px)scale(1.003)}}@keyframes project-viewer-image-previous-in{0%{opacity:0;transform:translate(-18px)scale(.995)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes project-viewer-image-previous-out{0%{opacity:1;transform:translate(0,0)scale(1)}to{opacity:0;transform:translate(10px)scale(1.003)}}@keyframes project-viewer-copy-next-in{0%{opacity:0;transform:translate(6px)}to{opacity:1;transform:translate(0,0)}}@keyframes project-viewer-copy-previous-in{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0,0)}}@keyframes project-viewer-thumbnail-in{0%{transform:translateY(6px)scale(.985)}to{transform:translate(0,0)scale(1)}}@media (prefers-reduced-motion:reduce){.project-image-loupe,.project-image-viewer::backdrop,.project-image-viewer-shell,.project-image-viewer-image,.project-image-viewer-copy-content,.project-image-viewer-counter,.project-image-viewer-thumbnail{animation:none!important}.project-image-loupe{transition:none}.project-image-viewer-image-outgoing{display:none}}@media (prefers-reduced-transparency:reduce){.project-image-viewer::backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#1414149e}.project-image-viewer-shell,.project-image-viewer-details{-webkit-backdrop-filter:none;backdrop-filter:none;background:#ececec}}@media (prefers-contrast:more){.project-image-viewer-shell,.project-image-viewer-details,.project-image-viewer-icon,.project-image-viewer-thumbnail[aria-current=true]{border-color:currentColor}}.detail-media-caption{color:var(--muted);letter-spacing:.01em;overflow-wrap:anywhere;margin-top:7px;font-size:9px;font-weight:400;line-height:1.45}.detail-media-placeholder{text-align:center;background:color-mix(in oklch, var(--surface) 78%, var(--muted));flex-direction:column;justify-content:center;align-items:center;gap:9px;width:100%;padding:clamp(18px,2.4vw,42px);display:flex;overflow:hidden}.detail-media-placeholder-kicker,.detail-media-placeholder-label{max-width:24ch;display:block}.detail-media-placeholder-kicker{color:var(--ink);letter-spacing:.15em;font-size:8px;font-weight:600;line-height:1.2}.detail-media-placeholder-label{color:var(--ink);letter-spacing:.08em;text-transform:uppercase;font-size:clamp(9px,.68vw,11px);font-weight:500;line-height:1.4}.project-about{grid-column:3;min-width:0}.project-about h2,.project-about h3{font-size:var(--text-caption);letter-spacing:.1em;margin:0;padding:0 0 15px;font-weight:500;line-height:1.2}.project-about .project-beat-label{font-size:var(--text-micro);letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin:0;padding:0 0 15px;font-weight:600;line-height:1.35}.project-process{margin-top:1.6em}.project-process-beat{font-size:var(--text-caption);letter-spacing:.1em;margin:0;padding:0 0 12px;font-weight:500;line-height:1.2}.about-copy{padding:0}.project-about{height:calc(100dvh - var(--masthead-height) - var(--article-header-height) - var(--detail-footer-height))}.project-detail .project-about{height:100%;min-height:0;max-height:100%;padding-bottom:var(--detail-footer-height);position:relative;overflow:hidden}.about-copy{flex-direction:column;height:100%;min-height:0;display:flex;position:relative}.project-thumbnail,.project-scope,.about-copy>.project-facts{flex:none}.project-writeup-frame{flex-direction:column;flex:auto;min-height:0;display:flex;position:relative}.project-writeup-scroll{overscroll-behavior:contain;scrollbar-width:none;flex:auto;min-height:0;display:block;position:relative;overflow:hidden auto}.project-writeup{padding-bottom:1em}.project-writeup-scroll::-webkit-scrollbar{width:0;height:0;display:none}.project-thumbnail{aspect-ratio:1;width:100%;margin:0 0 var(--project-narrative-gap);overflow:hidden}[data-home-enhancement-state]{width:100%;height:100%;min-height:0;overflow:hidden}.project-thumbnail-image{object-fit:cover;width:100%;height:100%;display:block}.project-thumbnail-loupe-trigger{cursor:default;height:100%}.project-color-palette{display:none}.project-color-palette-list{margin:0;padding:0;list-style:none}.project-color-swatch{border-radius:0}.project-scope{margin:0 0 var(--project-narrative-gap)}.project-scope h2{text-transform:uppercase;font-size:12px;font-weight:800}.project-scope-options{grid-template-rows:repeat(6,22px);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;column-gap:10px;height:132px;margin:0;padding:0;list-style:none;display:grid}.project-scope-option{min-width:0;color:var(--ink);letter-spacing:-.01em;opacity:.5;overflow-wrap:anywhere;font-size:10px;font-weight:400;line-height:1.1}.project-scope-option[data-in-scope=true]{opacity:1;font-weight:600}.project-facts{gap:8px;margin:0 0 18px;display:grid}.project-facts div{grid-template-columns:minmax(60px,.55fr) minmax(0,1fr);gap:8px;display:grid}.project-facts dt,.project-facts dd{margin:0;font-size:10px;line-height:1.45}.project-facts dd{overflow-wrap:anywhere;min-width:0}.project-facts dt{color:var(--muted)}@media (min-width:1600px){.project-scope-options{grid-template-rows:repeat(4,22px);height:88px}}.about-copy p:not(.scaffold-label){font-size:var(--text-label);letter-spacing:-.014em;margin:0 0 1.1em;font-weight:300;line-height:1.55}.about-page{--about-line-offset:clamp(24px, 2.25vw, 42px);--about-rule:color-mix(in oklch, var(--ink) 22%, transparent);--about-body-size:13px;--about-hero-copy-gap:clamp(88px, 9vh, 128px)}.about-page-route-title{letter-spacing:.08em;text-transform:uppercase;opacity:.7;max-width:24ch;margin:0;font-size:clamp(18px,1.25vw,20px);font-weight:500;line-height:1.05}.about-page-scroll{padding-bottom:clamp(96px,13vh,160px)}.about-page--concise .about-page-scroll{padding-bottom:0}.about-page--concise .about-page-grid,.about-page--concise .about-storyline{min-height:100%}.about-page--concise .about-hero{min-height:100%;padding-bottom:clamp(28px,4vh,48px)}.about-page-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;column-gap:1rem;display:grid}.about-storyline{min-width:0;padding:0 var(--detail-column-gutter) 0 var(--about-line-offset);grid-column:1/span 2;margin-left:1px;position:relative}.about-storyline:before{content:"";background:var(--about-rule);width:1px;position:absolute;inset:0 auto 0 0}.about-label,.about-register-word,.about-register-discipline,.about-method-number,.about-field-list dt{font-size:var(--text-micro);letter-spacing:.13em;text-transform:uppercase;margin:0;font-weight:600;line-height:1.35}.about-label,.about-register-discipline,.about-field-list dt{color:var(--muted)}.about-hero,.about-register,.about-method,.about-closing{position:relative}.about-register:before,.about-method:before,.about-closing:before{content:"";left:calc(-1 * var(--about-line-offset));background:var(--ink);width:12px;height:1px;position:absolute;top:5px}.about-hero{flex-direction:column;align-items:flex-start;min-height:clamp(430px,58vh,650px);padding:0 0 clamp(56px,8vh,96px);display:flex}.about-hero h1{max-width:13ch;font-size:var(--text-display-lg);letter-spacing:-.06em;margin:clamp(28px,4vh,46px) 0 0;font-weight:400;line-height:.95}.about-hero-intro{max-width:49ch;margin:var(--about-hero-copy-gap) 0 0;font-size:var(--about-body-size);letter-spacing:-.025em;row-gap:.9em;font-weight:400;line-height:1.48;display:grid}.about-field-notes{min-width:0;padding:0 var(--detail-column-gutter) 0 0;grid-column:3;position:sticky;top:0}.about-field-name{letter-spacing:-.04em;max-width:17ch;margin:24px 0 0;font-size:clamp(21px,1.65vw,28px);font-weight:500;line-height:1.03}.about-field-intro{max-width:34ch;font-size:var(--about-body-size);letter-spacing:-.012em;row-gap:.8em;margin:18px 0 0;font-weight:400;line-height:1.55;display:grid}.about-hero-intro p,.about-field-intro p{margin:0}.about-field-list{border-top:1px solid var(--about-rule);margin:clamp(38px,5vh,58px) 0 0;padding:0}.about-field-list div{border-bottom:1px solid var(--about-rule);grid-template-columns:minmax(64px,.6fr) minmax(0,1.4fr);gap:12px;padding:12px 0 14px;display:grid}.about-field-list dt,.about-field-list dd{margin:0}.about-field-list dd{font-size:11px;font-weight:400;line-height:1.55}.about-field-note{max-width:31ch;color:var(--muted);font-size:var(--about-body-size);margin:24px 0 0;font-weight:400;line-height:1.58}.about-registers{border-top:1px solid var(--about-rule)}.about-register{border-bottom:1px solid var(--about-rule);grid-template-columns:minmax(108px,.55fr) minmax(0,1.45fr);gap:clamp(22px,2.6vw,46px);padding:clamp(32px,4.6vh,52px) 0 clamp(42px,6.5vh,74px);display:grid}.about-register:before,.about-method:before,.about-closing:before{top:clamp(36px,5vh,56px)}.about-register-discipline{letter-spacing:.06em;text-transform:none;margin-top:8px}.about-register-copy h2,.about-method-header h2,.about-closing h2{letter-spacing:-.045em;margin:0;font-weight:400}.about-register-copy h2{max-width:18ch;font-size:clamp(25px,2vw,34px);line-height:1.04}.about-register-copy p{max-width:57ch;font-size:var(--about-body-size);letter-spacing:-.012em;margin:22px 0 0;font-weight:400;line-height:1.62}.about-method{padding:clamp(58px,8vh,92px) 0 clamp(64px,9vh,104px)}.about-method-header{grid-template-columns:minmax(108px,.55fr) minmax(0,1.45fr);gap:clamp(22px,2.6vw,46px);display:grid}.about-method-header .about-label{grid-row:1/span 2}.about-method-header h2{max-width:13ch;font-size:clamp(34px,3vw,50px);line-height:.98}.about-method-header>p:last-child{max-width:48ch;font-size:var(--about-body-size);margin:22px 0 0;line-height:1.6}.about-method-list{border-top:1px solid var(--about-rule);margin:clamp(42px,6vh,68px) 0 0;padding:0;list-style:none}.about-method-list li{border-bottom:1px solid var(--about-rule);grid-template-columns:42px minmax(118px,.68fr) minmax(0,1.32fr);align-items:start;gap:18px;padding:18px 0 21px;display:grid}.about-method-number{color:var(--muted)}.about-method-list h3,.about-method-list p{margin:0}.about-method-list h3{font-size:14px;font-weight:600;line-height:1.35}.about-method-list p{max-width:50ch;font-size:var(--about-body-size);font-weight:400;line-height:1.6}.about-closing{border-top:1px solid var(--about-rule);padding:clamp(58px,8vh,94px) 0 clamp(28px,4vh,48px)}.about-closing h2{max-width:14ch;margin-top:clamp(30px,4vh,46px);font-size:clamp(38px,3.5vw,58px);line-height:.98}.about-closing>p:not(.about-label){max-width:55ch;font-size:var(--about-body-size);letter-spacing:-.014em;margin:30px 0 0;line-height:1.62}.about-closing-links{align-items:center;gap:24px;margin-top:clamp(38px,5vh,58px);display:flex}.about-primary-link,.about-secondary-link{letter-spacing:.08em;text-transform:uppercase;min-height:42px;transition:background-color var(--motion-state), color var(--motion-state), opacity var(--motion-state);justify-content:center;align-items:center;font-size:10px;font-weight:600;line-height:1.2;display:inline-flex}.about-primary-link{background:var(--ink);color:var(--bg);padding:0 16px}.about-primary-link:hover,.about-primary-link:focus-visible{background:var(--focus)}.about-secondary-link{border-bottom:1px solid}.about-secondary-link:hover,.about-secondary-link:focus-visible{opacity:.6}.articles-page .about-page-scroll{padding:0 var(--detail-column-gutter) clamp(96px, 13vh, 160px) var(--about-line-offset)}.articles-intro{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;column-gap:1rem;margin-left:1px;padding:0 0 clamp(36px,5vh,56px);display:grid;position:relative}.articles-intro:before{content:"";background:var(--about-rule);width:1px;position:absolute;inset:0 auto 0 0}.articles-intro h1{letter-spacing:0;grid-column:1/span 2;max-width:12ch;margin:0;font-size:clamp(48px,4.6vw,78px);font-weight:400;line-height:.95}.articles-intro-copy{max-width:43ch;font-size:var(--about-body-size);letter-spacing:-.014em;grid-column:3;row-gap:.8em;font-weight:400;line-height:1.58;display:grid}.articles-intro-copy p,.articles-empty{margin:0}.articles-empty{max-width:46ch;font-size:var(--about-body-size);margin-left:1px;line-height:1.58}.articles-index{border-top:1px solid var(--about-rule);margin:0 0 0 1px;padding:0;list-style:none}.articles-index-item{border-bottom:1px solid var(--about-rule)}.articles-index-item a{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:clamp(24px,2.4vw,48px);padding:clamp(22px,3.2vh,34px) 0;display:grid}.articles-index-copy{row-gap:10px;min-width:0;display:grid}.articles-index-title{letter-spacing:-.04em;max-width:22ch;font-size:clamp(22px,1.8vw,32px);font-weight:400;line-height:1.05}.articles-index-summary{max-width:68ch;color:var(--muted);font-size:var(--about-body-size);letter-spacing:-.012em;font-weight:400;line-height:1.58}.articles-index-media{flex:none;width:96px;display:block}.articles-index-media img{object-fit:cover;width:96px;height:96px;display:block}.articles-index-item a:hover .articles-index-title,.articles-index-item a:focus-visible .articles-index-title{color:var(--muted)}.articles-index-item a:focus-visible{outline:1px solid color-mix(in oklch, var(--ink) 38%, transparent);outline-offset:4px}@media (prefers-reduced-motion:no-preference){[data-reveal][data-reveal-observer-ready=true]{opacity:0;transition:opacity var(--motion-reveal) var(--reveal-delay,0s), transform var(--motion-reveal) var(--reveal-delay,0s);transform:translateY(14px)}[data-reveal][data-reveal-observer-ready=true].is-revealed{opacity:1;transform:translateY(0)}[data-reveal][data-reveal-observer-ready=true][data-media-reveal=true]{--media-reveal-offset:36px;opacity:0;transform:translate3d(0, var(--media-reveal-offset), 0);transition:none}[data-reveal][data-reveal-observer-ready=true][data-media-reveal=true][data-reveal-from=top]{--media-reveal-offset:-36px}[data-reveal][data-reveal-observer-ready=true][data-media-reveal=true].is-revealed{opacity:1;transition:opacity .68s var(--ease-out) var(--reveal-delay,.1s), transform .68s var(--ease-out) var(--reveal-delay,.1s);transform:translate(0,0)}}@media (min-width:1181px){.project-detail .detail-body{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}.project-detail .detail-scroll{grid-column:1}.project-detail .project-about{padding-right:var(--detail-column-gutter);grid-column:2}.project-detail .about-copy{column-gap:var(--detail-gap);grid-template-rows:auto auto auto minmax(0,1fr);grid-template-columns:repeat(2,minmax(0,1fr));min-height:0;display:grid;overflow:hidden}.project-detail .project-color-palette{min-height:0;margin-bottom:var(--project-narrative-gap);grid-area:1/2;place-self:stretch start;display:block}.project-color-palette-list{justify-items:start;gap:var(--detail-gap);outline:none;grid-template-rows:repeat(24,minmax(0,1fr));width:max-content;height:100%;min-height:0;display:grid}.project-color-palette-list:focus-visible{outline:1px solid color-mix(in oklch, var(--ink) 38%, transparent);outline-offset:7px}.project-color-swatch{z-index:var(--palette-layer);aspect-ratio:1;width:auto;height:100%;min-height:0;box-shadow:inset 0 0 0 .5px color-mix(in srgb, var(--ink) 18%, transparent);transform:scale(var(--palette-scale));transform-origin:0;transition:transform .18s var(--ease-out);will-change:transform;justify-self:start;position:relative}.project-color-tooltip{pointer-events:none;transform:translateY(-50%) scale(var(--palette-tooltip-scale));transform-origin:0;display:block;position:absolute;top:50%;left:calc(100% + 4px)}.project-color-tooltip-label{color:var(--ink);letter-spacing:.055em;white-space:nowrap;opacity:0;visibility:hidden;transform-origin:0;transition:opacity .12s var(--ease-out), transform .15s var(--ease-out), visibility 0s linear .15s;background:#fff;border-radius:4px;padding:6px 8px;font-family:ui-monospace,SFMono-Regular,Cascadia Code,Consolas,monospace;font-size:10px;font-weight:600;line-height:1;display:block;position:relative;transform:translate(-4px)scale(.96);box-shadow:0 7px 18px #0000001f,0 0 0 1px #00000014}.project-color-tooltip-label:before{content:"";background:inherit;border-radius:1px;width:7px;height:7px;position:absolute;top:50%;right:calc(100% - 3px);transform:translateY(-50%)rotate(45deg)}.project-color-swatch[data-active=true] .project-color-tooltip-label{opacity:1;visibility:visible;transition:opacity .12s var(--ease-out), transform .15s var(--ease-out), visibility 0s linear 0s;transform:translate(0)scale(1)}.project-color-swatch:first-child{transform-origin:0 0}.project-color-swatch:last-child{transform-origin:0 100%}.project-detail .project-thumbnail{grid-area:1/1}.project-detail .project-scope,.project-detail .about-copy>.project-facts,.project-detail .project-writeup-frame{grid-column:1/-1;padding-left:1rem}.project-detail .project-scope{grid-row:2}.project-detail .about-copy>.project-facts{grid-row:3}.project-detail .project-writeup-frame{height:100%;min-height:0;padding-top:var(--project-narrative-gap);padding-right:var(--detail-scrollbar-gutter);grid-row:4;overflow:hidden}.project-detail .project-writeup-frame:before{content:"";top:0;right:var(--detail-scrollbar-gutter);background:var(--hairline);height:1px;position:absolute;left:1rem}.project-detail .project-writeup-scroll{width:50%;height:100%;min-height:0;overflow:hidden auto}.project-detail .project-writeup-frame>.project-article-scrollbar{right:auto;left:calc(1rem + (100% - 1rem - var(--detail-scrollbar-gutter)) / 2 + 4px)}}@media (prefers-reduced-motion:reduce){.project-color-swatch{transition:none;transform:none}.project-color-tooltip{left:calc(100% + 8px);transform:translateY(-50%)}.project-color-tooltip-label{transition:none}}@media (min-width:901px) and (max-width:1180px){:root{--page-gutter:18px;--shell-rail-inset:16px}.article-project-status{display:none}.project-sidebar{--sidebar-inline:16px}.project-nav a{white-space:normal;min-height:32px;padding-block:4px}.project-nav-label{max-width:calc(100% - var(--project-nav-indent));overflow-wrap:anywhere}.detail-body{grid-template-columns:minmax(0,1.35fr) minmax(230px,.82fr)}.project-detail .detail-scroll,.detail-media-stack,.project-article-stage .project-detail-scrollbar{grid-column:1}.project-about{grid-column:2}.detail-media-stack{gap:32px}.detail-media-row{grid-template-columns:minmax(0,1fr);row-gap:32px}.about-field-list dd{overflow-wrap:anywhere;min-width:0}}@media (min-width:901px) and (max-width:1024px){.about-field-list div{grid-template-columns:minmax(0,1fr);gap:6px}}@media (min-width:901px) and (max-height:1200px){.project-nav{right:0;bottom:calc(var(--shell-antelope-bottom) + var(--shell-antelope-reserve));flex-direction:column;display:flex}.project-nav :is(.project-nav-primary,.project-nav-projects){flex-direction:column;min-height:0;padding-bottom:0;display:flex}.project-nav-primary{flex:4 1 0}.project-nav-divider{margin:12px 0 18px}.project-nav-projects{flex:25 1 0}.project-nav :is(.project-nav-primary,.project-nav-projects) li{flex:1 1 0;min-height:0}.project-nav :is(.project-nav-primary,.project-nav-projects) a{white-space:nowrap;align-items:center;height:100%;min-height:0;padding-block:0}.project-nav-item{--project-nav-indent:0;height:100%;min-height:0}.project-shell:has(.project-detail) .project-nav-item{--project-nav-indent:2.72ch}.project-nav-item a:focus-visible{outline-offset:-1px}.project-nav-outro{margin:18px 0 10px}}@media (min-width:901px) and (max-height:1050px){.project-nav-divider{margin:8px 0 14px}.project-nav-outro{margin:14px 0 8px}}@media (prefers-reduced-motion:reduce){::view-transition-old(*){animation-duration:0s!important;animation-delay:0s!important}::view-transition-new(*){animation-duration:0s!important;animation-delay:0s!important}::view-transition-group(*){animation-duration:0s!important;animation-delay:0s!important}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}[data-reveal],[data-reveal].is-revealed{opacity:1;transform:none}.living-folio-caption-entry{filter:none;opacity:1;transition:none;translate:none;animation:none!important}}.scaffold-app{background:var(--bg);min-height:100%;color:var(--ink);overflow:auto}.scaffold-banner{padding:var(--space-2) var(--page-gutter);border-bottom:1px solid var(--hairline);font-size:var(--text-label);letter-spacing:.04em;text-transform:uppercase;margin:0}.scaffold-main{max-width:42rem;padding:32px var(--page-gutter) 64px}.scaffold-header h1,.scaffold-main h1{font-size:var(--text-display-sm);margin:8px 0 12px}.scaffold-kicker{color:var(--muted);font-size:var(--text-caption);letter-spacing:.08em;text-transform:uppercase;margin:0}.scaffold-list{margin:24px 0 0;padding:0;list-style:none}.scaffold-list li{border-top:1px solid var(--hairline);gap:4px;padding:16px 0;display:grid}.scaffold-form{gap:8px;max-width:20rem;display:grid}.scaffold-form-wide{max-width:32rem}.scaffold-form input,.scaffold-form textarea,.scaffold-form button,.scaffold-print,.scaffold-inline-form button{font:inherit;border:1px solid var(--hairline);background:var(--surface);padding:8px 10px}.scaffold-form textarea{resize:vertical}.scaffold-check{align-items:center;gap:8px;display:flex}.scaffold-inline-form{margin-top:8px}.admin-editor{margin-top:32px}.admin-editor h2{font-size:var(--text-display-sm);margin:0 0 12px}.scaffold-error{color:var(--ink)}.scaffold-deck-stage,.client-presentation-stage{border:1px solid var(--hairline);background:var(--surface);min-height:48vh;margin-top:24px;padding:32px}.client-presentation{gap:0;display:grid}.client-pdf,.client-feedback{margin-top:32px}.client-feedback h2{font-size:var(--text-display-sm);margin:0 0 8px}.client-feedback-stub{color:var(--muted);margin-top:16px}@media (max-width:900px){html,body{color:#3e3e3e;-moz-text-size-adjust:100%;text-size-adjust:100%;background:#e9e9e9;overflow-x:hidden}:is(html:has(.project-shell),body:has(.project-shell)){background:#e9e9e9;width:auto;height:auto;overflow:hidden auto}a,button{-webkit-tap-highlight-color:transparent}.skip-link,.project-shell{display:none!important}body:has([data-portfolio-composition=mobile]) [data-mobile-paper-shell]{display:none!important}}@media print{.scaffold-banner,.scaffold-print,.scaffold-kicker{display:none}.scaffold-deck-stage,.client-presentation-stage{border:0;min-height:auto}}
