@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/atkinson-hyperlegible-latin-ext-400-normal.DRk46D-x.woff2)format("woff2"),url(/_astro/atkinson-hyperlegible-latin-ext-400-normal.Bbz-b3yf.woff)format("woff");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:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/atkinson-hyperlegible-latin-400-normal.BrHNak5F.woff2)format("woff2"),url(/_astro/atkinson-hyperlegible-latin-400-normal.BbWidj28.woff)format("woff");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:Atkinson Hyperlegible;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/atkinson-hyperlegible-latin-ext-400-italic.3fJ3SmOv.woff2)format("woff2"),url(/_astro/atkinson-hyperlegible-latin-ext-400-italic.B-Yabllp.woff)format("woff");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:Atkinson Hyperlegible;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/atkinson-hyperlegible-latin-400-italic.D-qjh7ci.woff2)format("woff2"),url(/_astro/atkinson-hyperlegible-latin-400-italic.OoEIrRJc.woff)format("woff");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:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/atkinson-hyperlegible-latin-ext-700-normal.BoVPHkS0.woff2)format("woff2"),url(/_astro/atkinson-hyperlegible-latin-ext-700-normal.CKkU2Dpt.woff)format("woff");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:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/atkinson-hyperlegible-latin-700-normal.GZI4o3u0.woff2)format("woff2"),url(/_astro/atkinson-hyperlegible-latin-700-normal.BK6Glc0m.woff)format("woff");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:Atkinson Hyperlegible;font-style:italic;font-display:swap;font-weight:700;src:url(/_astro/atkinson-hyperlegible-latin-ext-700-italic.D-Da7Yyr.woff2)format("woff2"),url(/_astro/atkinson-hyperlegible-latin-ext-700-italic.rwP6Wyc0.woff)format("woff");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:Atkinson Hyperlegible;font-style:italic;font-display:swap;font-weight:700;src:url(/_astro/atkinson-hyperlegible-latin-700-italic.Bq4J7U7l.woff2)format("woff2"),url(/_astro/atkinson-hyperlegible-latin-700-italic.Ijyzy1lK.woff)format("woff");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:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/atkinson-hyperlegible-next-latin-ext-400-normal.BalHKn7d.woff2)format("woff2"),url(/_astro/atkinson-hyperlegible-next-latin-ext-400-normal.qxMiU51n.woff)format("woff");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:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/atkinson-hyperlegible-next-latin-400-normal.FfmJh7DR.woff2)format("woff2"),url(/_astro/atkinson-hyperlegible-next-latin-400-normal.DPp7N0cD.woff)format("woff");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:Atkinson Hyperlegible Next;font-style:italic;font-display:swap;font-weight:800;src:url(/_astro/atkinson-hyperlegible-next-latin-ext-800-italic.BFw7Uv2m.woff2)format("woff2"),url(/_astro/atkinson-hyperlegible-next-latin-ext-800-italic.BBGHo4AT.woff)format("woff");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:Atkinson Hyperlegible Next;font-style:italic;font-display:swap;font-weight:800;src:url(/_astro/atkinson-hyperlegible-next-latin-800-italic.BkSJIpBz.woff2)format("woff2"),url(/_astro/atkinson-hyperlegible-next-latin-800-italic.DRCy166K.woff)format("woff");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:Work Sans;font-style:italic;font-display:swap;font-weight:300;src:url(/_astro/work-sans-vietnamese-300-italic.goRdrSpH.woff2)format("woff2"),url(/_astro/work-sans-vietnamese-300-italic.CelazGnx.woff)format("woff");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:Work Sans;font-style:italic;font-display:swap;font-weight:300;src:url(/_astro/work-sans-latin-ext-300-italic.CL1aMi1N.woff2)format("woff2"),url(/_astro/work-sans-latin-ext-300-italic.B8ehmXnM.woff)format("woff");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:Work Sans;font-style:italic;font-display:swap;font-weight:300;src:url(/_astro/work-sans-latin-300-italic.CFbNWXUZ.woff2)format("woff2"),url(/_astro/work-sans-latin-300-italic.D3ysDyKi.woff)format("woff");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:Work Sans;font-style:italic;font-display:swap;font-weight:800;src:url(/_astro/work-sans-vietnamese-800-italic.C6kJ7Rzg.woff2)format("woff2"),url(/_astro/work-sans-vietnamese-800-italic.DYyBrKis.woff)format("woff");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:Work Sans;font-style:italic;font-display:swap;font-weight:800;src:url(/_astro/work-sans-latin-ext-800-italic.DuuCH8po.woff2)format("woff2"),url(/_astro/work-sans-latin-ext-800-italic.AfYcWDC7.woff)format("woff");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:Work Sans;font-style:italic;font-display:swap;font-weight:800;src:url(/_astro/work-sans-latin-800-italic.RYKiXKpC.woff2)format("woff2"),url(/_astro/work-sans-latin-800-italic.CPjMBnoY.woff)format("woff");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:Work Sans;font-style:italic;font-display:swap;font-weight:900;src:url(/_astro/work-sans-vietnamese-900-italic.CCIYJ0yX.woff2)format("woff2"),url(/_astro/work-sans-vietnamese-900-italic.72tUjNXe.woff)format("woff");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:Work Sans;font-style:italic;font-display:swap;font-weight:900;src:url(/_astro/work-sans-latin-ext-900-italic.B1BtIkCz.woff2)format("woff2"),url(/_astro/work-sans-latin-ext-900-italic.cgG3AxqQ.woff)format("woff");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:Work Sans;font-style:italic;font-display:swap;font-weight:900;src:url(/_astro/work-sans-latin-900-italic.CSOaYK9j.woff2)format("woff2"),url(/_astro/work-sans-latin-900-italic.B_aqnhig.woff)format("woff");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}@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation:none}html.project-entry-transition{--entry-curtain-duration:var(--motion-cinematic);--entry-title-duration:var(--motion-emphasis);--entry-metadata-duration:var(--motion-standard);--entry-content-duration:var(--motion-standard);--entry-title-delay:var(--entry-curtain-duration);--entry-metadata-delay:calc(var(--entry-title-delay) + var(--entry-title-duration));--entry-content-delay:calc(var(--entry-metadata-delay) + var(--entry-metadata-duration));--entry-total-duration:calc(var(--entry-content-delay) + var(--entry-content-duration))}html.project-entry-transition::view-transition-old(root){z-index:1;animation:none}html.project-entry-transition::view-transition-new(root){z-index:2;animation:project-curtain-in-desktop var(--entry-curtain-duration) cubic-bezier(.77, 0, .175, 1) both}html.project-entry-transition::view-transition-group(project-brand){z-index:6;animation:project-entry-hold var(--entry-total-duration) linear both}html.project-entry-transition::view-transition-old(project-brand){opacity:0;animation:none}html.project-entry-transition::view-transition-new(project-brand){opacity:1;animation:project-entry-hold var(--entry-total-duration) linear both}html.project-entry-transition::view-transition-group(project-title-dark),html.project-entry-transition::view-transition-group(project-title-light){z-index:5;animation-duration:var(--entry-title-duration);animation-delay:var(--entry-title-delay);animation-timing-function:cubic-bezier(.77,0,.175,1);animation-fill-mode:both}html.project-entry-transition::view-transition-old(project-title-dark),html.project-entry-transition::view-transition-old(project-title-light),html.project-entry-transition::view-transition-new(project-title-dark),html.project-entry-transition::view-transition-new(project-title-light){mix-blend-mode:normal}html.project-entry-transition::view-transition-old(project-title-dark),html.project-entry-transition::view-transition-old(project-title-light){opacity:1;animation:project-entry-title-old-hide 1ms linear var(--entry-title-delay) both}html.project-entry-transition::view-transition-new(project-title-dark){opacity:1;animation:project-title-dark-reveal-desktop var(--entry-curtain-duration) cubic-bezier(.77, 0, .175, 1) both}html.project-entry-transition::view-transition-new(project-title-light){opacity:0;animation:none}html.project-entry-transition::view-transition-group(project-meta),html.project-entry-transition::view-transition-group(project-media),html.project-entry-transition::view-transition-group(project-summary){z-index:3;animation:none}html.project-entry-transition::view-transition-new(project-meta){animation:project-entry-opacity-in var(--motion-ui) var(--ease-out) var(--entry-metadata-delay) both, project-entry-meta-transform-in var(--entry-metadata-duration) var(--ease-out) var(--entry-metadata-delay) both}html.project-entry-transition::view-transition-new(project-media),html.project-entry-transition::view-transition-new(project-summary){animation:project-entry-opacity-in var(--motion-ui) var(--ease-out) var(--entry-content-delay) both, project-entry-content-transform-in var(--entry-content-duration) var(--ease-out) var(--entry-content-delay) both}html.project-entry-transition .editorial-title__layer{width:var(--entry-title-layer-width);height:var(--entry-title-layer-height)}html.project-entry-transition .editorial-title__layer--light{clip-path:inset(0)}html.about-entry-transition{--about-entry-scene-delay:var(--motion-cinematic);--about-entry-content-delay:calc(var(--about-entry-scene-delay) + var(--motion-standard));--about-entry-total-duration:calc(var(--about-entry-content-delay) + var(--motion-standard))}html.about-entry-transition::view-transition-group(about-brand),html.about-entry-transition::view-transition-group(about-location){z-index:6;animation:project-entry-hold var(--about-entry-total-duration) linear both}html.about-entry-transition::view-transition-old(about-brand),html.about-entry-transition::view-transition-old(about-location){opacity:0;animation:none}html.about-entry-transition::view-transition-new(about-brand),html.about-entry-transition::view-transition-new(about-location){opacity:1;animation:project-entry-hold var(--about-entry-total-duration) linear both}html.about-entry-transition::view-transition-group(about-title){z-index:5}html.about-entry-transition::view-transition-group(about-portrait),html.about-entry-transition::view-transition-group(about-copy),html.about-entry-transition::view-transition-group(about-actions){z-index:3}html.about-entry-transition::view-transition-old(about-title),html.about-entry-transition::view-transition-old(about-portrait),html.about-entry-transition::view-transition-old(about-copy),html.about-entry-transition::view-transition-old(about-actions){opacity:0;animation:none}html.about-entry-transition::view-transition-new(about-title),html.about-entry-transition::view-transition-new(about-portrait){animation:about-entry-scene-in var(--motion-standard) var(--ease-out) var(--about-entry-scene-delay) both}html.about-entry-transition::view-transition-new(about-copy),html.about-entry-transition::view-transition-new(about-actions){animation:about-entry-content-in var(--motion-standard) var(--ease-out) var(--about-entry-content-delay) both}@keyframes project-curtain-in-desktop{0%{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0)}}@keyframes project-entry-opacity-in{0%{opacity:0}}@keyframes project-entry-meta-transform-in{0%{transform:translateX(var(--motion-text-distance))}to{transform:translate(0)}}@keyframes project-entry-content-transform-in{0%{transform:translateY(48px)}to{transform:translateY(0)}}@keyframes project-entry-title-old-hide{0%{opacity:1}to{opacity:0}}@keyframes project-entry-hold{0%,to{opacity:1}}@keyframes about-entry-scene-in{0%{opacity:0;transform:translate(48px)}to{opacity:1;transform:translate(0)}}@keyframes about-entry-content-in{0%{opacity:0;transform:translateY(48px)}to{opacity:1;transform:translateY(0)}}@keyframes project-title-dark-reveal-desktop{0%{clip-path:inset(0 0 0 var(--entry-title-boundary-start))}to{clip-path:inset(0)}}html.page-curtain-transition{--page-curtain-duration:var(--motion-page)}html.page-curtain-transition::view-transition-image-pair(root){background:var(--paper)}html.page-curtain-transition::view-transition-old(root),html.page-curtain-transition::view-transition-new(root){animation-duration:var(--page-curtain-duration);animation-timing-function:cubic-bezier(.77,0,.175,1);animation-fill-mode:both}html.page-curtain-transition::view-transition-old(root){z-index:1}html.page-curtain-transition::view-transition-new(root){z-index:2}html.page-curtain-transition--ltr::view-transition-old(root){animation-name:page-curtain-cover-ltr}html.page-curtain-transition--ltr::view-transition-new(root){animation-name:page-curtain-reveal-ltr}html.page-curtain-transition--rtl::view-transition-old(root){animation-name:page-curtain-cover-rtl}html.page-curtain-transition--rtl::view-transition-new(root){animation-name:page-curtain-reveal-rtl}@keyframes page-curtain-cover-ltr{0%{clip-path:inset(0)}45%,to{clip-path:inset(0 0 0 100%)}}@keyframes page-curtain-reveal-ltr{0%,55%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes page-curtain-cover-rtl{0%{clip-path:inset(0)}45%,to{clip-path:inset(0 100% 0 0)}}@keyframes page-curtain-reveal-rtl{0%,55%{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0)}}@media (width>=768px){html.page-curtain-transition{--page-curtain-duration:var(--motion-cinematic)}}:root{color-scheme:light dark;--paper:#fcf2e8;--ink:#130d06;--background:var(--paper);--surface:var(--paper);--surface-soft:var(--paper);--text:var(--ink);--muted:rgb(from var(--ink) r g b / 70%);--tertiary:rgb(from var(--ink) r g b / 40%);--faint:rgb(from var(--ink) r g b / 8%);--grid-mark:rgb(from var(--ink) r g b / 16%);--marker:var(--ink);--marker-soft:rgb(from var(--ink) r g b / 20%);--interactive-hover:#777272;--space-1:4px;--space-2:8px;--space-3:16px;--space-4:24px;--space-5:32px;--space-6:48px;--space-7:64px;--motion-press:.1s;--motion-ui:.2s;--motion-standard:.3s;--motion-emphasis:.4s;--motion-page:.6s;--motion-cinematic:.8s;--motion-text-distance:var(--space-4);--font-body:"Atkinson Hyperlegible", Arial, sans-serif;--font-home-display:"Work Sans", "Arial Black", Arial, sans-serif;--type-xs:.75rem;--type-base:1rem;--type-xl:1.25rem;--type-2xl:1.5rem;--type-3xl:2rem;--type-4xl:2.5rem;--type-5xl:3rem;--line-heading:1.2;--line-body:1.5;--grid-columns:4;--grid-gutter:16px;--grid-margin:16px;--grid-gutter-count:3;--grid-column:calc((100vw - (2 * var(--grid-margin)) - (var(--grid-gutter-count) * var(--grid-gutter))) / var(--grid-columns));--grid-span-2:calc((2 * var(--grid-column)) + var(--grid-gutter));--grid-span-4:calc((4 * var(--grid-column)) + (3 * var(--grid-gutter)));--grid-span-6:calc((6 * var(--grid-column)) + (5 * var(--grid-gutter)));--grid-span-8:calc((8 * var(--grid-column)) + (7 * var(--grid-gutter)));--layout-columns:4;--layout-gutter:16px;--layout-margin:16px;--layout-gutter-count:3;--layout-column:calc((100vw - (2 * var(--layout-margin)) - (var(--layout-gutter-count) * var(--layout-gutter))) / var(--layout-columns));--layout-span-1:var(--layout-column);--layout-span-2:calc((2 * var(--layout-column)) + var(--layout-gutter));--layout-span-3:calc((3 * var(--layout-column)) + (2 * var(--layout-gutter)));--layout-span-4:calc((4 * var(--layout-column)) + (3 * var(--layout-gutter)));--layout-span-5:calc((5 * var(--layout-column)) + (4 * var(--layout-gutter)));--layout-span-6:calc((6 * var(--layout-column)) + (5 * var(--layout-gutter)));--page-pad:var(--grid-margin);--content:min(880px, calc(100vw - (var(--page-pad) * 2)));--ease-out:cubic-bezier(.22, 1, .36, 1);--site-margin:var(--grid-margin);--site-gap:var(--grid-gutter)}@media (width>=768px){:root{--grid-columns:12;--grid-margin:48px;--grid-gutter-count:11;--layout-columns:6;--layout-gutter:24px;--layout-margin:48px;--layout-gutter-count:5}}@media (prefers-color-scheme:dark){:root{--background:var(--ink);--surface:var(--ink);--surface-soft:var(--ink);--text:var(--paper);--muted:rgb(from var(--paper) r g b / 70%);--tertiary:rgb(from var(--paper) r g b / 40%);--faint:rgb(from var(--paper) r g b / 8%);--grid-mark:rgb(from var(--paper) r g b / 16%);--marker:var(--paper);--marker-soft:rgb(from var(--paper) r g b / 20%)}}*{box-sizing:border-box}html{background:var(--background);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-kerning:normal;min-height:100%;font-size:16px}body{background:var(--background);min-height:100%;color:var(--text);font-family:var(--font-body);font-size:var(--type-base);line-height:var(--line-body);margin:0;position:relative;overflow-x:hidden}body>main{z-index:1;position:relative}h1,h2,h3,h4,h5,h6{color:var(--text);font-family:var(--font-body);letter-spacing:-.02em;text-wrap:balance;margin:0;font-style:normal;font-weight:400}h1{font-size:var(--type-5xl);line-height:var(--line-heading)}h2{font-size:var(--type-4xl);line-height:var(--line-heading)}h3{font-size:var(--type-3xl);line-height:var(--line-heading)}h4{font-size:var(--type-2xl);line-height:var(--line-heading)}h5{font-size:var(--type-xl);line-height:var(--line-heading)}h6{font-size:var(--type-base);line-height:var(--line-body)}p{line-height:var(--line-body);text-wrap:pretty}small{font-size:var(--type-xs);line-height:var(--line-body)}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:var(--text);color:var(--background)}.back-link:focus-visible,.marker-button:focus-visible{outline:3px solid var(--text);outline-offset:5px}.skip-link{z-index:200;background:var(--text);color:var(--background);padding:12px 16px;font-weight:700;position:fixed;top:8px;left:8px;transform:translateY(calc(-100% - 16px))}.skip-link:focus{transform:translateY(0)}.internal-header{column-gap:var(--site-gap);min-height:76px;font-size:var(--type-base);grid-template-columns:repeat(6,minmax(0,1fr));align-items:start;line-height:1.3;display:grid}.internal-brand,.internal-location{flex-direction:column;min-width:0;display:flex}.internal-brand{grid-column:1/3;min-height:44px}.internal-location{grid-column:3}.internal-brand strong,.internal-location strong{letter-spacing:.01em;text-transform:uppercase;font-family:Atkinson Hyperlegible Next,Atkinson Hyperlegible,Arial,sans-serif;font-style:italic;font-weight:800}.internal-nav{flex-wrap:wrap;grid-column:5/7;justify-content:flex-end;gap:4px 20px;display:flex}.internal-nav a{text-underline-offset:4px;align-items:flex-start;min-height:44px;text-decoration:underline 1px;display:inline-flex}.internal-brand:focus-visible,.internal-nav a:focus-visible,.case-pagination__link:focus-visible,.case-body a:focus-visible{outline:3px solid var(--text);outline-offset:4px}.placeholder-media{isolation:isolate;background:var(--surface-soft);min-height:0;color:var(--text);place-items:center;font-weight:700;display:grid;position:relative;overflow:hidden}.placeholder-media__image{z-index:-2;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.placeholder-media--wide{min-height:clamp(360px,54vw,720px)}.placeholder-media--portrait{min-height:min(76vh,760px)}.placeholder-media:after{content:"";z-index:-1;background:linear-gradient(180deg, var(--faint), transparent), var(--faint);mix-blend-mode:soft-light;position:absolute;inset:0}.placeholder-media>span:not(.photo-credit){border:1px solid var(--text);background:var(--surface);color:var(--text);font-size:var(--type-xs);line-height:var(--line-body);border-radius:0;padding:12px 16px}.photo-credit{z-index:3;background:rgb(from var(--ink) r g b / 68%);max-width:calc(100% - 24px);box-shadow:none;color:rgb(from var(--paper) r g b / 82%);backdrop-filter:blur(8px);border:0;border-radius:0;padding:6px 9px;font-size:.6875rem;font-weight:400;line-height:1.2;position:absolute;bottom:12px;right:12px}.photo-credit a{color:var(--paper);text-decoration:underline;text-decoration-color:rgb(from var(--paper) r g b / 55%);text-underline-offset:2px}.photo-credit a:focus-visible{outline:2px solid var(--paper);outline-offset:2px}.photo-credit--carousel{right:max(var(--space-3), env(safe-area-inset-right));bottom:max(var(--space-3), env(safe-area-inset-bottom));z-index:4;max-width:calc(100% - var(--space-4));padding:var(--space-1) var(--space-2)}.project-card .placeholder-media span{display:none}.case-page{min-height:100svh;padding:var(--site-margin)}.about-page{min-height:100svh}.about-stage{--about-media-start:calc(var(--layout-margin) + (3 * var(--layout-column)) + (3 * var(--layout-gutter)));isolation:isolate;min-height:100svh;position:relative;overflow:hidden}.about-portrait{inset:0 0 0 var(--about-media-start);z-index:-1;background:var(--ink);position:absolute;overflow:hidden}.about-portrait img{object-fit:cover;object-position:48% center;filter:grayscale()contrast(1.08);width:100%;height:100%;display:block}.about-content{min-height:100svh;width:var(--about-media-start);box-sizing:border-box;padding:var(--site-margin) 0 var(--site-margin) var(--site-margin);background:var(--paper);flex-direction:column;display:flex}.about-page .internal-header{width:calc(100vw - (2 * var(--layout-margin)));grid-template-columns:repeat(var(--layout-columns), minmax(0, 1fr));column-gap:var(--layout-gutter);min-height:0;font-size:clamp(14px,1.40625vw,18px);line-height:1.2}.about-page .internal-brand{grid-column:1;min-height:0}.about-page .internal-location{grid-column:2}.about-page .internal-brand strong,.about-page .internal-location strong{letter-spacing:.01em;font-family:Work Sans,system-ui,sans-serif;font-style:italic;font-weight:800}.about-copy{flex-direction:column;flex:1;min-height:0;display:flex}.about-title-semantic{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.about-title{--about-title-offset:calc((2 * var(--layout-column)) + (2 * var(--layout-gutter)));z-index:1;width:var(--layout-span-3);margin:clamp(32px, 5vh, 56px) 0 0 var(--about-title-offset);letter-spacing:0;text-transform:uppercase;white-space:pre-line;font-family:Work Sans,system-ui,sans-serif;font-size:clamp(96px,12.5vw,160px);font-style:italic;font-weight:800;line-height:.8;position:relative}.about-title__dark,.about-title__light{display:block}.about-title__light{color:var(--paper);clip-path:inset(0 0 0 calc(var(--about-media-start) - var(--site-margin) - var(--about-title-offset)));position:absolute;inset:0}.about-copy__body{max-width:var(--layout-span-3);color:var(--ink);text-wrap:pretty;margin-top:clamp(24px,4vh,48px);font-family:Atkinson Hyperlegible Next,Atkinson Hyperlegible,Arial,sans-serif;font-size:1.125rem;font-weight:400;line-height:1.5}.about-intro,.rich-text p{margin:0}.about-more{margin-top:clamp(20px,3vh,32px)}.about-more p+p{margin-top:1em}.about-actions{width:var(--layout-span-3);column-gap:var(--layout-gutter);padding-top:var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:auto;font-size:clamp(14px,1.40625vw,18px);display:grid}.about-actions a{min-height:44px;color:inherit;text-underline-offset:4px;align-items:center;font-family:Atkinson Hyperlegible,Arial,sans-serif;font-weight:400;text-decoration:underline 1px;display:inline-flex}.about-actions a:hover{text-decoration-thickness:2px}.home-shell .info-link{text-underline-offset:4px;text-decoration:underline 1px}.home-shell .info-link:hover{text-decoration-thickness:2px}.about-actions a:focus-visible{outline:3px solid var(--text);outline-offset:4px}@media (width>=768px){.about-stage,.about-content{height:100svh}.about-content{min-height:0;padding-bottom:0}.about-actions{padding-top:var(--space-4);margin-bottom:var(--space-6)}.about-title{margin-top:calc(-1 * var(--layout-margin))}}.case-article{padding-top:clamp(48px,7vw,104px)}.case-hero{column-gap:var(--site-gap);scroll-margin-top:var(--site-margin);grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;display:grid}.case-heading{grid-column:1/5}.case-eyebrow,.case-facts dt,.case-pagination__link>span{font-family:Atkinson Hyperlegible Next,Atkinson Hyperlegible,Arial,sans-serif;font-size:var(--type-xs);letter-spacing:.04em;text-transform:uppercase;margin:0;font-style:italic;font-weight:800}.case-heading h1{max-width:11ch;margin-top:var(--space-3);font-family:var(--font-home-display);letter-spacing:-.045em;text-transform:uppercase;font-size:clamp(4rem,10vw,9rem);font-style:italic;font-weight:900;line-height:.82}.case-intro{max-width:54ch;margin:var(--space-5) 0 0;font-size:clamp(1.25rem,1.8vw,1.75rem);line-height:1.35}.case-facts{gap:var(--space-3);grid-column:5/7;margin:0;display:grid}.case-facts div{padding-top:var(--space-2);border-top:1px solid var(--marker)}.case-facts dd{max-width:34ch;margin:var(--space-1) 0 0;line-height:1.35}.case-cover{margin:clamp(64px, 9vw, 128px) calc(var(--site-margin) * -1) 0;background:var(--surface-soft);overflow:hidden}.case-cover img{object-fit:cover;width:100%;height:min(76vw,860px);display:block}.case-body{width:min(680px,100%);font-size:var(--type-base);line-height:var(--line-body);margin:clamp(64px,9vw,128px) auto 0}.case-body h2{margin:clamp(64px, 9vw, 104px) 0 var(--space-4);font-size:clamp(2rem,4vw,3.5rem);line-height:1}.case-body h3{margin:var(--space-7) 0 var(--space-3);font-size:var(--type-2xl)}.case-body p,.case-body ul,.case-body ol{margin:0 0 var(--space-4)}.case-body a{text-decoration:underline;text-decoration-color:var(--text);text-underline-offset:3px;text-decoration-thickness:2px}.case-pagination{margin:clamp(96px, 12vw, 160px) calc(var(--site-margin) * -1) calc(var(--site-margin) * -1);background:var(--background);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.case-pagination__link{min-height:220px;padding:var(--site-margin);background:var(--ink);color:var(--paper);flex-direction:column;justify-content:space-between;display:flex;position:relative}.case-pagination__link strong{max-width:16ch;font-family:var(--font-home-display);letter-spacing:-.035em;text-transform:uppercase;font-size:clamp(2rem,4vw,4rem);font-style:italic;font-weight:900;line-height:.9}.case-pagination__link img{right:var(--site-margin);bottom:var(--site-margin);filter:invert();width:32px;height:32px;transition:transform var(--motion-ui) var(--ease-out);position:absolute}.case-pagination__link--previous img{right:auto;left:var(--site-margin)}.case-pagination__link--previous{text-align:right;align-items:flex-end}.case-pagination__link--previous:focus-visible img{transform:translate(-6px)}.case-pagination__link--next:focus-visible img{transform:translate(6px)}@media (hover:hover) and (pointer:fine){.case-pagination__link--previous:hover img{transform:translate(-6px)}.case-pagination__link--next:hover img{transform:translate(6px)}}@media (width<=767.98px){.internal-header{grid-template-columns:repeat(4,minmax(0,1fr));min-height:56px;font-size:10px}.internal-brand{grid-column:1/3}.internal-location{grid-column:3/5}.about-stage{--about-media-start:calc(var(--layout-margin) + (2 * var(--layout-column)) + var(--layout-gutter))}.about-portrait img{object-position:46% center}.about-content{width:min(calc(var(--about-media-start) + var(--layout-column) + var(--layout-gutter)), calc(100vw - var(--site-margin)));padding:var(--site-margin);padding-right:var(--space-3)}.about-page .internal-header{--about-title-spacing:clamp(28px, 5vh, 44px);width:calc(100vw - var(--layout-margin));min-height:0;margin-top:calc(-1 * var(--site-margin));padding-top:var(--site-margin);padding-bottom:var(--about-title-spacing);column-gap:var(--layout-gutter);background:var(--paper);grid-template-columns:repeat(4,minmax(0,1fr));font-size:16px}.about-page .internal-brand{grid-column:1/3}.about-page .internal-location{grid-column:3/5}.about-title{--about-title-offset:0px;width:var(--layout-span-3);margin:0;font-size:clamp(52px,14.545vw,64px);line-height:.8}.about-title__light{display:none}.about-copy__body{font-size:var(--type-base);margin-top:clamp(22px,4vh,36px)}.about-more{margin-top:clamp(16px,2.5vh,24px)}.about-actions{padding-top:var(--space-3);font-size:16px}.case-article{padding-top:var(--space-6)}.case-hero{row-gap:var(--space-6);grid-template-columns:repeat(4,minmax(0,1fr))}.case-heading,.case-facts{grid-column:1/-1}.case-heading h1{overflow-wrap:normal;text-wrap:wrap;font-size:clamp(3.5rem,17.4vw,5.5rem)}.case-intro{font-size:var(--type-xl)}.case-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.case-cover img{height:75vw}.case-pagination{grid-template-columns:1fr}.case-pagination__link{min-height:184px;padding:var(--space-5) var(--site-margin)}.case-pagination__link img{right:var(--site-margin);bottom:var(--space-5)}.case-pagination__link--previous img{right:auto;left:var(--site-margin)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.hover-button__arrow-square{animation:none}::view-transition-group(project-brand),::view-transition-group(project-title-dark),::view-transition-group(project-title-light),::view-transition-old(project-brand),::view-transition-old(project-title-dark),::view-transition-old(project-title-light),::view-transition-new(project-brand),::view-transition-new(project-title-dark),::view-transition-new(project-title-light),::view-transition-group(about-brand),::view-transition-group(about-location),::view-transition-group(about-title),::view-transition-group(about-portrait),::view-transition-group(about-copy),::view-transition-group(about-actions),::view-transition-old(about-brand),::view-transition-old(about-location),::view-transition-old(about-title),::view-transition-old(about-portrait),::view-transition-old(about-copy),::view-transition-old(about-actions),::view-transition-new(about-brand),::view-transition-new(about-location),::view-transition-new(about-title),::view-transition-new(about-portrait),::view-transition-new(about-copy),::view-transition-new(about-actions){animation:none!important}}@media (width<=767.98px) and (prefers-reduced-motion:no-preference){html.project-entry-transition::view-transition-new(root){animation-name:project-curtain-in-mobile}html.project-entry-transition::view-transition-new(project-title-dark){animation-name:project-title-dark-reveal-mobile}@keyframes project-curtain-in-mobile{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}@keyframes project-title-dark-reveal-mobile{0%{clip-path:inset(0 0 calc(100% - var(--entry-title-boundary-start)) 0)}to{clip-path:inset(0)}}}
