@font-face{font-family:ABC Areal;src:url(/fonts/ABCAreal-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:ABC Areal;src:url(/fonts/ABCAreal-RegularItalic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:ABC Areal;src:url(/fonts/ABCAreal-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:block}@font-face{font-family:ABC Areal;src:url(/fonts/ABCAreal-MediumItalic.woff2) format("woff2");font-weight:500;font-style:italic;font-display:block}@font-face{font-family:ABC Areal;src:url(/fonts/ABCAreal-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:ABC Areal;src:url(/fonts/ABCAreal-BoldItalic.woff2) format("woff2");font-weight:700;font-style:italic;font-display:block}:root{--mark-small-w: 64px;--mark-small-top: 32px;--ink: #000;--ink-40: rgba(0, 0, 0, .4);--muted: var(--ink-40);--bg: #fff;--bg-mobile: #fff;--red: #b70606;--line: #d6d6d6;--image-stroke: #e5e5e5;--button-fill: #f2f2f2;--text-title: 23px;--text-body: 23px;--track: -.02em;--lh-title: 29px;--lh-body: 29px;--text-lead: 28px;--lh-lead: 35px;--space-title: 80px;--cols: 10;--margin: 160px;--gutter: 16px;--image-gap: var(--gutter);--content-span: 6;--wide-span: 8;--col: calc((min(100vw, 1440px) - 2 * var(--margin) - (var(--cols) - 1) * var(--gutter)) / var(--cols));--content-width: calc(var(--content-span) * var(--col) + (var(--content-span) - 1) * var(--gutter));--measure: var(--content-width);--card: 1120px;--space-block: 84px;--space-text: 240px;--space-text-titled: 150px;--space-section: 240px;--radius: 31px;--radius-sm: 15px;--pad: 20px;--mark-stretch-max: 1.35;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-in-out-expo: cubic-bezier(.65, 0, .15, 1);--ease-out-quad: cubic-bezier(.25, .46, .45, .94);--ease-in-quad: cubic-bezier(.55, .085, .68, .53);--ease-out: var(--ease-out-expo);--ease-in-out: var(--ease-in-out-expo);--ease-drawer: cubic-bezier(.32, .72, 0, 1);--page-bg: var(--bg);color:var(--ink);background:var(--page-bg);color-scheme:light;font-family:ABC Areal,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:23px;line-height:29px;letter-spacing:var(--track);font-weight:400;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}@media(max-width:1439px){:root{--margin: clamp(20px, calc((100vw - 1120px)/2) , 160px)}}@media(max-width:759px){:root{--space-block: var(--margin);--image-gap: var(--margin);--space-text: 160px;--space-text-titled: 100px;--space-section: 160px;--text-lead: var(--text-body);--lh-lead: var(--lh-body);--space-title: 48px;--cols: 4;--content-span: 4;--wide-span: 4}}@media(max-width:759px){.project .process{margin-top:var(--space-section)}}*,*:before,*:after{box-sizing:border-box}html,body{background:var(--page-bg)}body{margin:0;min-height:100svh}img{max-width:100%;height:auto}button,input,summary{font:inherit;letter-spacing:inherit;color:inherit}button{background:none;border:0;padding:0;cursor:pointer}a{color:inherit;text-decoration:none}a:hover,button:hover,summary:hover{opacity:.55}a:hover:has(img),a:hover:has(video),.site-header a:hover,.site-header button:hover,.site-menu>a:hover,.site-menu>button:hover,.contact-options>button:hover{opacity:1}.about a,.text-block a,.summary a,.info-list a,.site-footer a,.not-found a{color:inherit;text-decoration-line:underline;text-decoration-style:solid;text-decoration-color:currentColor;text-decoration-thickness:1px;text-underline-offset:3px}.about a:hover,.text-block a:hover,.summary a:hover,.info-list a:hover,.site-footer a:hover,.not-found a:hover{color:inherit;opacity:1}.site-header a,.caption,.project-mark a,a:has(img){text-decoration:none}:focus{outline:none}:focus-visible{outline:1px solid currentColor;outline-offset:4px}*{-webkit-tap-highlight-color:transparent}a:active,button:active,summary:active{outline:none;background:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}summary{list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}.squircle-def{position:absolute;width:0;height:0;overflow:hidden}.site-header{display:flex;align-items:flex-start;justify-content:space-between;width:min(var(--card),calc(100% - 40px));margin:32px auto 0;font-size:23px;line-height:29px;position:relative;z-index:5}body:has(.hero) .site-header{position:absolute;top:50svh;left:50%;width:min(var(--card),calc(100vw - 40px));margin:0;transform:translate(-50%,-50%)}.who{position:relative}.who .time{position:absolute;top:29px;left:0;margin:0;color:var(--muted);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s ease;filter:none}.who:hover .time,.who:focus-within .time,.who.is-open .time{opacity:1}.contact{position:relative;text-align:right}.contact-label{display:block;padding:0;font:inherit;line-height:29px;opacity:1;visibility:visible;transition:opacity .15s ease .15s,visibility 0s linear .15s,transform .16s var(--ease-out)}.contact:hover .contact-label,.contact:focus-within .contact-label,.contact.is-open .contact-label{opacity:0;visibility:hidden;transition:opacity .15s ease,visibility 0s linear .15s,transform .16s var(--ease-out)}.contact-menu{position:absolute;top:calc(-1 * var(--lh-body));right:0;display:flex;flex-direction:column;align-items:flex-end;gap:0;opacity:0;visibility:hidden;pointer-events:none;transform:scale(.95);transform-origin:100% 100%;transition:opacity .15s ease,visibility 0s linear .15s,transform .2s var(--ease-out)}.contact:hover .contact-menu,.contact:focus-within .contact-menu,.contact.is-open .contact-menu{opacity:1;visibility:visible;pointer-events:auto;transform:scale(1);transition:opacity .15s ease .15s,visibility 0s linear .15s,transform .2s var(--ease-out) .15s}.contact-menu a,.contact-menu span{display:block;line-height:var(--lh-body);white-space:nowrap;filter:none;transform:none}.contact-menu a,.contact-menu span{color:var(--muted)}.contact-menu a{transition:color .16s ease}.contact-menu a:hover,.contact-menu a:active{color:var(--ink)}@media(prefers-reduced-motion:reduce){.contact-label,.contact:hover .contact-label,.contact:focus-within .contact-label,.contact.is-open .contact-label,.contact-menu,.contact:hover .contact-menu,.contact:focus-within .contact-menu,.contact.is-open .contact-menu{transition-delay:0s}.contact-menu,.contact:hover .contact-menu,.contact:focus-within .contact-menu,.contact.is-open .contact-menu{transform:none}body:has(.hero) .contact-menu,body:has(.hero) .contact:hover .contact-menu,body:has(.hero) .contact:focus-within .contact-menu,body:has(.hero) .contact.is-open .contact-menu,body:has(.hero) .contact:hover:not(.is-open) .contact-menu,body:has(.hero) .contact:focus-within:not(.is-open) .contact-menu{transform:translate(-50%)}}.hero:has(.mark-blob:not([hidden])),.hero:has([data-hero-variant=blob]:not([hidden])){--mark-stretch-max: 1}.hero{display:flex;flex-direction:column;align-items:center;min-height:100svh;padding:72px var(--pad) 0}.mark-wrap{position:relative;flex:1;width:100%;min-height:100svh}.mark{position:absolute;left:50%;top:calc(50% - 170px);width:110px;height:auto;transform:translate(-50%) scaleX(var(--mark-scale, 1));transform-origin:center center}.hero-variant{position:absolute;inset:0}.hero-variant[hidden]{display:none!important}.hero .mark-blob{--mark-scale: 1;top:50svh;width:min(500px,46vw);height:auto;transform:translate(-50%,-50%);overflow:visible}.feed{position:relative;z-index:1;margin-top:-36px;padding:0 var(--pad) 40px}.card{width:min(100%,var(--card));margin:0 auto 120px}.card[data-frame=wide]{max-width:893px}.card[data-frame=default]{max-width:666px}.frame,.lead{border-radius:var(--radius-sm);corner-shape:squircle}@supports not (corner-shape: squircle){.frame,.lead{overflow:hidden}}.frame img,.frame video{corner-shape:inherit}.frame.is-outlined:after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit;corner-shape:inherit;box-shadow:inset 0 0 0 1px var(--image-stroke);pointer-events:none}.frame.is-plain video,.is-plain .frame video,.frame.is-flush video{border-radius:0;corner-shape:unset;clip-path:none}.frame.is-plain,.is-plain .frame{border-radius:0;corner-shape:unset;clip-path:none;padding:12px;background-clip:content-box}.frame.is-plain img,.is-plain .frame img{border-radius:0}.frame.is-flush,.frame.is-flush img{border-radius:0;corner-shape:unset;clip-path:none}.frame{position:relative;overflow:hidden;border:0;background-position:center;background-size:cover}.lead{display:grid;place-items:center;aspect-ratio:1120 / 639;overflow:hidden;background:var(--red)}.peeps{position:relative;width:54.9%}.peeps-static{display:block;width:100%;height:auto}.peeps.is-live .peeps-static{visibility:hidden}.peeps-row{position:absolute;left:0;right:0;top:50%;height:352%;transform:translateY(-50%);display:flex;align-items:center}.peeps-row svg{position:absolute;left:0;top:calc(50% - var(--rest) / 2);height:var(--rest);overflow:visible;transform-origin:0 50%;will-change:transform;fill:#f8f8f8}.frame img{display:block;width:100%;height:auto;border-radius:inherit}.frame video{display:block;width:100%;height:auto;border-radius:inherit}.js .frame img{opacity:0}.js .frame img.is-ready{opacity:1;transition:opacity .3s var(--ease-out)}.project-year{color:var(--ink-40)}.caption{display:block;margin-top:100px;margin-bottom:247px;font-size:23px;line-height:29px;text-align:center}.about{width:min(100%,var(--card));margin:8px auto 140px;font-size:23px;line-height:29px;text-align:left}.about p,.text-block p{margin:0 0 29px}.about p:last-child,.text-block p:last-child{margin-bottom:0}body:has(.project) .site-header{display:none}.project{padding:32px var(--pad) 40px}.project-mark{display:flex;justify-content:center;margin:0 0 96px}.project-mark .mark{position:static;top:auto;left:auto;width:42px;transform:scaleX(var(--mark-scale, 1));transform-origin:center center}.project-mark .mark-face{width:var(--mark-small-w);transform:none;overflow:visible}.project-mark a:hover{opacity:1}.project-hero{width:min(100%,800px);margin:0 auto 120px;text-align:center}.project-hero h1{margin:0;font-size:var(--text-title);font-weight:400;line-height:var(--lh-title);letter-spacing:var(--track)}.project-summary{width:min(100%,var(--measure));margin:29px auto 0;font-size:var(--text-body);line-height:var(--lh-body);letter-spacing:var(--track);text-align:left}.project-summary p{margin:0 0 29px}.project-summary p:last-child{margin-bottom:0}.text-block{width:min(100%,var(--measure));margin:0 auto var(--space-text);padding-top:calc(var(--space-text) - var(--space-block));font-size:var(--text-title);line-height:var(--lh-title)}.text-block h2{margin:0 0 16px;font-size:var(--text-body);font-weight:400;line-height:var(--lh-body);letter-spacing:var(--track)}.text-block[data-titled]{margin-bottom:var(--space-text-titled);padding-top:calc(var(--space-text-titled) - var(--space-block))}.text-block[data-titled] .text-block-title{margin:0 0 var(--space-title);font-size:var(--text-lead);line-height:var(--lh-lead);text-align:center}.text-block[data-titled] p{font-size:var(--text-lead);line-height:var(--lh-lead)}.text-block[data-titled] p:not(:last-child){margin-bottom:var(--lh-lead)}.image-block{width:min(100%,var(--measure));max-width:var(--measure);margin:0 auto var(--space-block)}.pair{display:grid;grid-template-columns:1fr;gap:var(--image-gap);width:min(100%,var(--measure));margin:0 auto var(--space-block)}.process{width:min(100%,var(--measure));margin:calc(var(--space-section) - var(--space-block)) auto 0}.process-label,.info-label{margin:0 0 72px;font-size:var(--text-title);font-weight:400;line-height:var(--lh-title);letter-spacing:var(--track);text-align:center}.process-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--image-gap);align-items:start;width:100%}.process-grid>.frame,.pair>.frame{width:100%;min-width:0}.process-grid img,.image-block img,.pair img{width:100%;height:auto}.info{width:min(100%,var(--measure));margin:var(--space-section) auto 40px}.info-list{margin:0;padding:0;list-style:none;text-align:left;font-size:23px;line-height:29px}.info-list li{margin:0}.site-footer:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:#0000001a;z-index:2;pointer-events:none}.site-footer{position:relative;box-sizing:border-box;width:100%;margin:0;padding:0;height:100vh;height:100svh;max-height:100vh;max-height:100svh}.footer-copy{position:absolute;top:0;left:0;right:0;box-sizing:border-box;height:100%;padding-bottom:calc(min(52vw,60svh)*.38);display:flex;flex-direction:column;justify-content:safe center}.footer-copy .page-grid{box-sizing:border-box;padding-inline:var(--pad)}.footer-text{width:min(100%,var(--card));margin:0 auto;box-sizing:border-box;text-align:left;font-size:23px;line-height:29px}.footer-text p{margin:0 0 29px}.footer-text p:last-child{margin-bottom:0}.footer-faces{position:absolute;left:0;right:0;bottom:0;box-sizing:border-box;width:100%;margin:0;padding:0;height:min(52vw,60svh);pointer-events:none}.footer-faces .peeps{position:absolute;inset:0;width:100%;transform:none}.footer-faces .peeps-static{position:absolute;inset:auto 0 0;width:100%;height:50%;transform:none}.footer-faces .peeps-row{top:0;height:100%;transform:none}.footer-faces .peeps-row svg{top:auto;bottom:0;height:var(--rest);transform-origin:0 100%}.footer-faces .peeps-static :is(path,ellipse),.footer-faces .peeps-row svg{fill:var(--red)}.not-found{min-height:100svh;display:grid;place-items:center;padding:120px 20px;text-align:center}.not-found h1{margin:0 0 12px;font-size:var(--text-title);font-weight:400}@media(max-width:759px){:root{--page-bg: var(--bg-mobile)}.hero{height:100svh;min-height:0;padding:0}.mark-wrap{min-height:0;height:100%}:root:has(.hero){--page-bg: var(--bg)}.hero .mark{top:17svh;width:33vw}.hero .mark-blob{--mark-scale: 1;top:41.5svh;width:73vw;transform:translate(-50%,-50%)}body:has(.hero) .site-header{top:72.5svh;flex-direction:column;align-items:center;text-align:center;gap:0;transform:translate(-50%)}body:has(.hero) .site-header .who,body:has(.hero) .site-header .contact{width:100%;text-align:center}body:has(.hero) .site-header .contact-label{display:block;margin-inline:auto}body:has(.hero) .who .time{left:50%;transform:translate(-50%)}body:has(.hero) .who:hover .time,body:has(.hero) .who:focus-within .time{opacity:0}body:has(.hero) .who.is-open .time{opacity:1}body:has(.hero) .site-header.is-time-open .contact{visibility:hidden}body:has(.hero) .site-header.is-menu-open .who>a{visibility:hidden}body:has(.hero) .contact{text-align:center}body:has(.hero) .contact-menu{top:calc(-2 * var(--lh-body));right:auto;left:50%;align-items:center;transform:translate(-50%) scale(.95);transform-origin:50% 100%}body:has(.hero) .contact:hover .contact-menu,body:has(.hero) .contact:focus-within .contact-menu,body:has(.hero) .contact.is-open .contact-menu{transform:translate(-50%) scale(1)}body:has(.hero) .contact:hover:not(.is-open) .contact-menu,body:has(.hero) .contact:focus-within:not(.is-open) .contact-menu{opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%) scale(.95);transition:opacity .15s ease,visibility 0s linear .15s,transform .2s var(--ease-out)}body:has(.hero) .contact:hover:not(.is-open) .contact-label,body:has(.hero) .contact:focus-within:not(.is-open) .contact-label{opacity:1;visibility:visible;transition:opacity .15s ease .15s,visibility 0s linear .15s,transform .16s var(--ease-out)}.feed{margin-top:-36px}.about{margin-top:0;margin-bottom:96px}}@media(min-width:760px){.hero{padding:0}.mark-wrap{min-height:100svh}.mark{top:calc(50% - 196px);width:171px}.lead{border-radius:var(--radius)}.pair{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.pair>.frame{height:100%;align-self:stretch}.pair>.frame img{width:100%;height:auto;min-height:100%;object-fit:cover}.peeps{transform:translateY(-12px)}.feed{margin-top:-36px;padding-bottom:80px}.about{margin-top:0}.frame,.lead,.frame img,.frame video{border-radius:var(--radius)}.project .frame,.project .frame img,.project .frame video{border-radius:var(--radius-sm)}.frame.is-plain,.card.is-plain .frame,.project.is-plain .frame{border-radius:0}.frame.is-flush,.project .frame.is-flush,.frame.is-flush img,.project .frame.is-flush img{border-radius:0;corner-shape:unset;clip-path:none}.caption{margin-top:100px;margin-bottom:247px;text-align:center}.page-grid{display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));column-gap:var(--gutter);width:min(100%,1440px);margin-inline:auto;padding-inline:var(--margin)}body:has(.hero) .site-header.page-grid{width:min(100%,1440px)}.site-header.page-grid{align-items:start}.footer-copy .page-grid{padding-inline:var(--margin)}.site-header .who{grid-column:1 / 6;justify-self:start}.site-header .contact{grid-column:6 / -1;justify-self:end}.feed.page-grid{margin-top:-32px}.card{display:contents}.card>*{min-width:0}.card>:last-child{margin-bottom:120px}.card>.caption{margin-bottom:247px}.card.is-lead>.lead{grid-column:1 / -1}.card[data-frame=wide]>a:first-child{grid-column:calc((var(--cols) - var(--wide-span)) / 2 + 1) / span var(--wide-span)}.card[data-frame=default]>a:first-child{grid-column:calc((var(--cols) - var(--content-span)) / 2 + 1) / span var(--content-span)}.about,.card>.caption,.footer-text{grid-column:calc((var(--cols) - var(--content-span)) / 2 + 1) / span var(--content-span);width:auto;margin-left:0;margin-right:0}.project.page-grid>.project-mark,.project.page-grid>.project-hero{grid-column:1 / -1;width:auto;max-width:none;margin-left:0;margin-right:0}.project.page-grid>.image-block,.project.page-grid>.pair,.project.page-grid>.process{grid-column:calc((var(--cols) - var(--content-span)) / 2 + 1) / span var(--content-span);width:auto;max-width:none;margin-left:0;margin-right:0}.project.page-grid>.image-block[data-frame=wide],.project.page-grid>.pair[data-frame=wide]{grid-column:calc((var(--cols) - var(--wide-span)) / 2 + 1) / span var(--wide-span);width:auto;max-width:none;margin-left:0;margin-right:0}.project.page-grid>.text-block,.project.page-grid>.info{grid-column:calc((var(--cols) - var(--content-span)) / 2 + 1) / span var(--content-span);width:auto;max-width:none;margin-left:0;margin-right:0}}.grid-overlay{display:none;position:fixed;inset:0;z-index:40;pointer-events:none}html.show-grid .grid-overlay{display:block}html.show-grid .grid-overlay .page-grid{display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));column-gap:var(--gutter);width:min(100%,1440px);height:100%;margin-inline:auto;padding-inline:var(--margin)}@media(max-width:759px){.grid-overlay span:nth-child(n+5){display:none}}.grid-overlay span{background:#b706061f}@media(prefers-reduced-motion:reduce){.js .frame img{transition:none}.js .frame img{opacity:1}}.caption,.site-header .who>a,.project-mark a,.about a,.text-block a,.summary a,.info-list a,.site-footer a,.not-found a{transition:opacity .16s ease,color .16s ease,transform .16s var(--ease-out)}@media(prefers-reduced-motion:no-preference){.caption:active,.contact-label:active,.site-header .who>a:active,.project-mark a:active,.about a:active,.text-block a:active,.summary a:active,.info-list a:active,.site-footer a:active,.not-found a:active{transform:scale(.97)}}@media(prefers-reduced-motion:reduce){.caption,.site-header .who>a,.project-mark a,.about a,.text-block a,.summary a,.info-list a,.site-footer a,.not-found a,.contact-menu a,.who .time{transition-property:opacity,color}.contact-label{transition-property:opacity,visibility,transform;transition-delay:0s}.js .frame img.is-ready{transition:opacity .2s ease}}.js.fade-ready .fade-in:not(.is-in){opacity:0;transition:none}.js.fade-ready .fade-in.is-in{opacity:1;transition:opacity .4s var(--ease-out)}@media(min-width:760px){.js.fade-ready .card.fade-in:not(.is-in){opacity:1}.js.fade-ready .card.fade-in:not(.is-in)>*{opacity:0;transition:none}.js.fade-ready .card.fade-in.is-in>*{opacity:1;transition:opacity .4s var(--ease-out)}}.js.fade-ready .fade-in:not(.is-in) .frame img{opacity:1;transition:none}@media(prefers-reduced-motion:reduce){.js.fade-ready .fade-in,.js.fade-ready .fade-in:not(.is-in),.js.fade-ready .fade-in.is-in,.js.fade-ready .card.fade-in:not(.is-in)>*,.js.fade-ready .card.fade-in.is-in>*{opacity:1;transition:none}}[data-haptic-overlay]{z-index:0;-webkit-tap-highlight-color:transparent;touch-action:manipulation}@view-transition{navigation:auto}.hero .mark,.project-mark .mark{view-transition-name:hs-mark}.shop-mark{view-transition-name:ib-mark}::view-transition-group(ib-mark){animation-duration:.6s;animation-timing-function:var(--ease-out-expo)}::view-transition-image-pair(ib-mark){isolation:auto}::view-transition-old(ib-mark),::view-transition-new(ib-mark){mix-blend-mode:normal;height:100%;animation:none}::view-transition-old(ib-mark){opacity:0}html:active-view-transition-type(ib-shrink)::view-transition-old(ib-mark){opacity:1}html:active-view-transition-type(ib-shrink)::view-transition-new(ib-mark){opacity:0}::view-transition-group(hs-mark){animation-duration:.5s;animation-timing-function:var(--ease-out-expo)}::view-transition{background:var(--page-bg, var(--bg))}::view-transition-image-pair(root){isolation:auto}::view-transition-old(root),::view-transition-new(root){mix-blend-mode:normal}::view-transition-old(root){animation:none;opacity:1}::view-transition-new(root){animation:vt-in .3s var(--ease-out-quad) both}@keyframes vt-in{0%{opacity:0}}@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}}@keyframes text-in{0%{opacity:0;filter:blur(4px);transform:translateY(4px)}}.is-split .reveal-word{display:inline-block}.is-split .reveal-word:not(a){text-decoration:inherit}@media(prefers-reduced-motion:no-preference){@supports (animation-timeline: view()){.is-split .reveal-word{animation:text-in linear both;animation-timeline:view();animation-range:cover 0px cover 15vh}}.reveal-manual .reveal-word{animation:none}.reveal-pending .reveal-word{opacity:0;filter:blur(4px);transform:translateY(4px)}.reveal-in .reveal-word{transition:opacity .4s var(--ease-out-expo) calc(var(--line, 0) * 30ms),filter .4s var(--ease-out-expo) calc(var(--line, 0) * 30ms),transform .4s var(--ease-out-expo) calc(var(--line, 0) * 30ms)}.reveal-in.reveal-out .reveal-word{transition-delay:calc((var(--lines, 1) - 1 - var(--line, 0)) * 30ms)}.reveal-now .reveal-word{transition:none}.contact-menu,.contact-menu>*,.who .time,.who:hover .time,.who:focus-within .time,.who.is-open .time{animation:none;filter:none}}[data-haptic] :is(.frame,img,video),[data-haptic] a:has(.frame,img,video),[data-haptic] .caption{position:relative;z-index:1}.preview-badge{position:fixed;top:12px;right:12px;z-index:40;margin:0;padding:6px 10px;border-radius:999px;background:#ffffffeb;color:#8a8a8a;font-size:13px;line-height:16px;letter-spacing:0;pointer-events:none;box-shadow:0 0 0 1px #0000000f}.hero-dials{position:fixed;right:12px;bottom:12px;z-index:80;width:220px;padding:10px 10px 8px;border-radius:8px;background:#ffffffeb;border:1px solid rgba(0,0,0,.12);box-shadow:0 4px 18px #00000014;font-size:11px;line-height:14px;color:#111;backdrop-filter:blur(8px)}.hero-dials__title{font-size:11px;line-height:14px;font-weight:600;margin:0 0 6px}.hero-dials__row{display:grid;grid-template-columns:58px 1fr 36px;gap:4px;align-items:center;margin:0 0 4px}.hero-dials__label,.hero-dials__value{font-size:11px;line-height:14px;white-space:nowrap}.hero-dials__value{text-align:right;font-variant-numeric:tabular-nums;color:#444}.hero-dials__input[type=range]{width:100%;margin:0;height:14px}.hero-dials__input[type=color]{width:100%;height:18px;padding:0;border:0;background:none}.hero-dials__actions{display:flex;gap:6px;margin-top:6px}.hero-dials__btn{flex:1;height:24px;padding:0 6px;border-radius:4px;border:1px solid rgba(0,0,0,.16);background:#fff;font-size:11px;line-height:14px;cursor:pointer}.hero-dials__btn:hover{background:#f4f4f4}body .site-header.is-menu-open .who .time,body .site-header.is-menu-snap .who .time{transition:none}body .site-header.is-menu-open .who .time{opacity:0}body .site-header.is-menu-fade:not(.is-menu-open) .who .time{transition:opacity .4s ease}@media(hover:hover){body .site-header:has(.contact:hover) .who .time,body .site-header:has(.contact:focus-within) .who .time{opacity:0;transition:opacity .15s ease}}@media(hover:none){.contact-menu a,.contact-menu span{color:var(--ink)}}.project .info:has(+.process){margin-bottom:0}.project .info+.process{margin-top:var(--space-section)}.shop-buy{display:flex;flex-direction:column;align-items:flex-start;gap:var(--lh-body)}.shop-price{margin:0}.shop-button{display:inline-block;padding:10px 20px;border:1px solid var(--ink);border-radius:var(--radius-sm);corner-shape:squircle;color:var(--ink);text-decoration:none;transition:background-color .15s ease,color .15s ease}@media(hover:hover){.shop-button:hover{background:var(--ink);color:#fff}}body:has(.shop-page) .site-header{display:none}.shop-page{padding-top:216px;padding-bottom:150px}.shop-head{grid-column:1 / -1;display:grid;grid-template-columns:subgrid;align-items:center;margin:0 0 184px}.shop-head-title,.shop-head-sub{margin:0;font-size:var(--text-body);font-weight:400;line-height:var(--lh-body);white-space:nowrap}.shop-head-title{grid-column:1 / 3}.shop-head-sub{grid-column:9 / -1;text-align:right}.shop-mark{grid-column:3 / 9;justify-self:center;width:440px;color:var(--ink);transform:rotate(90deg);will-change:transform;backface-visibility:hidden}.shop-mark svg{display:block;width:100%;height:auto}.shop-intro{grid-column:calc((var(--cols) - var(--content-span)) / 2 + 1) / span var(--content-span)}.shop-intro{margin:0 0 136px}.shop-intro p{margin:0 0 29px}.shop-intro p:last-child{margin-bottom:0}.shop-intro a,.shop-links a{color:inherit;text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:3px}.shop-product{grid-column:1 / -1;display:grid;grid-template-columns:subgrid;margin:0 0 128px}.shop-product:last-child{margin-bottom:0}.shop-pair{grid-column:calc((var(--cols) - var(--wide-span)) / 2 + 1) / span var(--wide-span);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--image-gap)}.shop-pair>.frame{min-width:0;aspect-ratio:441 / 531;border-radius:var(--radius-sm)}.shop-pair>.frame img{width:100%;height:100%;object-fit:cover}.shop-caption{grid-column:1 / -1;margin:72px 0 0;text-align:center}.shop-links{display:block;margin-top:29px}.shop-desc{margin:84px 0 0}@media(max-width:759px){.shop-page{padding:96px var(--margin)}.shop-product{display:block}.shop-head{display:flex;flex-direction:column;align-items:center;justify-items:center;text-align:center;margin-bottom:96px}.shop-head-title,.shop-head-sub,.shop-mark{grid-column:1 / -1;text-align:center}.shop-mark{order:-1;width:240px;margin-bottom:48px}.shop-intro,.shop-product{margin-bottom:96px}.shop-pair{gap:var(--gutter)}.shop-caption,.shop-desc{margin-top:40px}}.shop-details{padding:0;border:0;background:none;color:inherit;font:inherit;letter-spacing:inherit;text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:3px;cursor:pointer}.shop-details:focus-visible,.shop-links a:focus-visible,.shop-title:focus-visible{outline:1px solid currentColor;outline-offset:3px}.shop-title{color:inherit;text-decoration:none}.shop-desc-wrap{grid-column:calc((var(--cols) - var(--content-span)) / 2 + 1) / span var(--content-span);transition:height .4s var(--ease-out-expo)}.shop-desc-inner{display:flow-root}@media(prefers-reduced-motion:reduce){.shop-desc-wrap{transition:none}}.shop-desc-wrap[hidden]{display:none}body:has(.shop-detail) .site-header{display:none}.shop-detail{padding-top:44px;padding-bottom:116px}.shop-detail>*{grid-column:calc((var(--cols) - var(--content-span)) / 2 + 1) / span var(--content-span);width:auto;min-width:0}.shop-detail-mark{display:flex;justify-content:center;margin-block:0 130px}.shop-detail-mark a{display:block}.shop-detail-mark .shop-mark{display:block;width:54px}.shop-detail-head h1,.shop-detail-heading{margin:0 0 60px;font-size:var(--text-body);font-weight:400;line-height:var(--lh-body);text-align:center}.shop-detail-text{margin-bottom:122px}.shop-detail-text p{margin:0 0 var(--lh-body)}.shop-detail-text p:last-child{margin-bottom:0}.shop-detail-image{margin:0 auto 60px}.shop-detail-image img{display:block;width:100%;height:auto}.shop-detail-section{margin-top:56px}.shop-detail-section>*{width:100%}.shop-wild{margin-top:86px}.shop-wild .shop-detail-heading{margin-bottom:72px}.shop-wild-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 8px;align-items:start}.shop-wild-grid img{display:block;width:100%;height:auto}.shop-wild+.shop-detail-info{margin-top:116px}.shop-detail-info .info{width:100%;margin:0}.shop-detail-info .info-label{margin-bottom:60px}.shop-buy-bar{position:sticky;bottom:calc(56px + env(safe-area-inset-bottom,0px));z-index:5;display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:116px;pointer-events:none}.shop-buy-form{margin:0}.shop-buy-note{margin:0;color:var(--muted);pointer-events:auto}.shop-buy-button{pointer-events:auto;font:inherit;letter-spacing:inherit;border:0;cursor:pointer;display:inline-block;padding:10px 20px 9px;border-radius:var(--radius-sm);corner-shape:squircle;background:var(--button-fill);color:var(--ink);text-decoration:none;white-space:nowrap;transition:background-color .15s ease,color .15s ease}@media(hover:hover){.shop-buy-button:hover{background:var(--red);color:#fff;opacity:1}}.shop-buy-button:disabled{color:var(--muted);cursor:default}@media(hover:hover){.shop-buy-button:disabled:hover{background:var(--button-fill);color:var(--muted)}}.shop-buy-button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}@media(max-width:759px){.shop-detail{padding:32px var(--margin) 96px}.shop-detail-mark{margin-bottom:96px}.shop-detail-head h1,.shop-detail-heading{margin-bottom:var(--lh-body)}.shop-detail-text{margin-bottom:48px}.shop-detail-image{margin-bottom:var(--space-block)}.shop-detail-section{margin-top:76px}.shop-wild .shop-detail-heading{margin-bottom:48px}.shop-wild+.shop-detail-info{margin-top:96px}.shop-detail-info .info-label{margin-bottom:var(--lh-body)}.shop-buy-bar{bottom:calc(20px + env(safe-area-inset-bottom,0px));margin-top:96px}}.hero[data-intro]{padding-top:0;overflow-x:clip}.hero[data-intro] .mark-wrap{min-height:100svh}.hero[data-intro] [data-hero-variant=blob]{position:fixed;inset:-100lvh -50% auto;height:calc(100lvh + 100svh);transform-origin:50% var(--intro-origin, 0);will-change:transform}.hero[data-intro] .mark-blob{top:var(--intro-face-top, 0);width:var(--intro-w, 500px);transform:translate(-50%)}body:has(.hero[data-intro]) .site-header{top:var(--intro-name-top, round(77.2svh, 1px));flex-direction:column;align-items:center;text-align:center;gap:0;transform:translate(-50%)}body:has(.hero[data-intro]) .site-header .who,body:has(.hero[data-intro]) .site-header .contact{width:100%;text-align:center}body:has(.hero[data-intro]) .site-header .contact-label{margin-inline:auto}body:has(.hero[data-intro]) .who .time{left:50%;transform:translate(-50%)}body:has(.hero[data-intro]) .contact-menu{top:calc(-2 * var(--lh-body));right:auto;left:50%;align-items:center;transform:translate(-50%) scale(.95);transform-origin:50% 100%}body:has(.hero[data-intro]) .contact:hover .contact-menu,body:has(.hero[data-intro]) .contact:focus-within .contact-menu,body:has(.hero[data-intro]) .contact.is-open .contact-menu{transform:translate(-50%) scale(1)}body:has(.hero[data-intro]) .site-header.page-grid{display:flex}body:has(.hero[data-intro]) .site-header .who,body:has(.hero[data-intro]) .site-header .contact{grid-column:auto}.intro-tune{position:fixed;right:16px;bottom:16px;z-index:4;display:flex;flex-direction:column;gap:6px;width:200px;padding:12px;font-size:13px;line-height:16px;color:#fff;background:#000c;border-radius:8px}.intro-tune label{display:flex;justify-content:space-between}.intro-tune button{padding:4px 0;font:inherit;color:inherit;border:1px solid rgb(255 255 255 / 40%);border-radius:4px}.site-header .brand{margin:0;font-size:var(--text-body);line-height:var(--lh-body)}.site-menu{display:flex;justify-content:center;gap:24px}.site-menu>a,.site-menu>button,.project-menu>a,.project-menu>button{padding:0;font:inherit;font-size:var(--text-body);line-height:var(--lh-body);color:var(--ink);text-decoration:none;background:none;border:0;cursor:pointer;transition:color .16s ease}.site-menu>a,.site-menu>button{color:var(--muted)}.site-menu>:hover,.site-menu>:focus-visible{color:var(--ink)}.project-mark{position:relative;transition:margin-bottom .3s var(--ease-out)}.project-mark.is-open{margin-bottom:var(--small-menu-push)}.project-mark.is-open:before{content:"";position:absolute;top:-32px;left:50%;width:440px;height:176px;transform:translate(-50%)}.project-mark>a{position:relative;z-index:2}.project-menu{position:absolute;top:var(--small-menu-top);left:50%;z-index:1;display:flex;gap:24px;transform:translate(-50%);pointer-events:none}.project-menu>a,.project-menu>button{opacity:0;transform:translate(calc(var(--i) * -48px),-56px) scale(.6);transition:opacity .2s ease,transform .3s var(--ease-out),color .16s ease}.project-mark.is-open .project-menu{pointer-events:auto}.project-mark.is-open .project-menu>a,.project-mark.is-open .project-menu>button{opacity:1;transform:none}.contact-sheet{position:fixed;inset:0;z-index:100}.contact-sheet[hidden]{display:none}html.is-contact-open{overflow:hidden}.contact-backdrop{position:absolute;inset:0;background:#0003;opacity:0;transition:opacity .5s ease}.contact-panel{position:absolute;right:0;bottom:0;left:0;height:435px;padding:49px 20px 0;text-align:center;background:#fff;transform:translateY(100%);transition:transform .5s var(--ease-out)}.contact-sheet.is-open .contact-backdrop{opacity:1}.contact-sheet.is-open .contact-panel{transform:none}.contact-step[hidden]{display:none}.contact-q,.contact-done{display:block;margin:0;font-size:var(--text-body);line-height:var(--lh-body);color:var(--ink);transition:color .16s ease}.contact-q.is-muted{color:var(--muted)}.contact-done{padding-top:116px}.contact-options{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 24px;margin-top:142px}.contact-options button,.contact-nav button{padding:0;font:inherit;font-size:var(--text-body);line-height:var(--lh-body);color:var(--ink);background:none;border:0;cursor:pointer;transition:color .16s ease}.contact-options:has(>:hover)>:not(:hover){color:var(--muted)}.contact-panel textarea,.contact-panel input{display:block;width:min(664px,100%);margin:56px auto 0;padding:0;font:inherit;font-size:var(--text-body);line-height:var(--lh-body);color:var(--ink);text-align:left;background:none;border:0;outline:none;resize:none}.contact-panel textarea{height:174px}.contact-panel textarea:placeholder-shown{padding-top:86px;text-align:center}.contact-panel input{margin-top:142px;text-align:center}.contact-panel ::placeholder{color:var(--muted);opacity:1}.contact-nav{position:absolute;bottom:30px;left:50%;display:flex;align-items:center;gap:16px;height:29px;transform:translate(-50%)}.contact-dots{display:flex;gap:6px;transition:gap .2s var(--ease-out)}.contact-dots i{width:4px;height:4px;background:var(--muted);border-radius:50%;transition:background .16s ease}.contact-dots i.is-on{background:var(--ink)}.contact-back,.contact-next{opacity:0;pointer-events:none;transition:opacity .2s ease,transform .25s var(--ease-out),color .16s ease}.contact-back{transform:translate(16px)}.contact-next{transform:translate(-16px)}.contact-nav button:disabled{color:#00000026;cursor:default}.contact-nav.has-controls:hover .contact-dots,.contact-nav.has-controls:focus-within .contact-dots{gap:0}.contact-nav.has-controls:hover .contact-dots i:not(.is-on),.contact-nav.has-controls:focus-within .contact-dots i:not(.is-on){width:0}.contact-nav.has-controls:hover :is(.contact-back,.contact-next),.contact-nav.has-controls:focus-within :is(.contact-back,.contact-next){opacity:1;pointer-events:auto;transform:none}@media(hover:none){.contact-nav.has-controls :is(.contact-back,.contact-next){opacity:1;pointer-events:auto;transform:none}}.contact-back,.contact-next{position:absolute;top:0}.contact-back{right:calc(100% + 16px)}.contact-next{left:calc(100% + 16px)}@keyframes intro-face-scale{0%{transform:scale(1) translateZ(0)}to{transform:scale(var(--intro-smin)) translateZ(0)}}.hero[data-intro].is-sda [data-hero-variant=blob]{animation:intro-face-scale linear both;animation-timeline:scroll(root block);animation-range:0px var(--intro-r)}.project-menu>a,.project-menu>button{color:var(--muted);filter:blur(4px);transition:opacity .2s ease,filter .3s var(--ease-out-expo),transform .3s var(--ease-out),color .16s ease}.project-mark.is-open .project-menu>a,.project-mark.is-open .project-menu>button{filter:none}.project-menu:has(>:hover)>:not(:hover){color:var(--muted)}.project-menu>:hover,.project-menu>:focus-visible{color:var(--ink)}.project-mark.is-ring .project-menu{top:calc(var(--small-menu-top) - var(--small-menu-bridge));padding-top:var(--small-menu-bridge)}.shop-page{position:relative;padding-top:var(--intro-name-top, round(77.2svh, 1px))}.shop-head{--ring-w: round(68vw, 1px);display:block;margin:0 0 184px;text-align:center}.shop-head .shop-head-title,.shop-head .shop-head-sub{text-align:center}.shop-head .shop-head-sub{color:var(--muted)}.shop-ring-layer{position:fixed;top:-100lvh;right:0;left:0;z-index:2;height:100lvh;transform-origin:50% var(--ring-origin, 100lvh);will-change:transform;pointer-events:none}.shop-ring{position:absolute;top:calc(100lvh - var(--ring-w) / 2);left:50%;width:var(--ring-w);margin-left:calc(var(--ring-w) / -2);pointer-events:auto}.js .shop-head:not([data-ring-ready]) .shop-ring{visibility:hidden}.shop-ring .shop-mark{display:block;width:100%;margin:0}@keyframes shop-ring-scale{0%{transform:translateY(0) scale(1) translateZ(0)}to{transform:translateY(var(--ring-dy)) scale(var(--ring-smin)) translateZ(0)}}.shop-head.is-sda .shop-ring-layer{animation:shop-ring-scale linear both;animation-timeline:scroll(root block);animation-range:0px var(--ring-r)}@media(max-width:759px){.shop-page{padding-top:var(--intro-name-top, round(71.5svh, 1px))}.shop-head{--ring-w: round(90vw, 1px);margin-bottom:96px}}.contact-step[data-step=done]{position:absolute;top:220px;right:20px;left:20px}.contact-done{padding-top:0}.contact-sheet[data-step=done] .contact-nav{visibility:hidden}.contact-nav:before{content:"";position:absolute;inset:-32px -136px}.contact-field{position:relative;width:min(664px,100%);height:232px;margin:33px auto 0}.contact-panel .contact-field textarea{position:absolute;top:50%;left:0;width:100%;height:calc(var(--lines, 1) * var(--lh-body));max-height:100%;margin:0;padding:0;overflow:hidden;text-align:center;transform:translateY(-50%);transition:height .24s var(--ease-out)}.contact-panel .contact-field textarea:placeholder-shown{padding-top:0}.contact-field.is-multi textarea{text-align:left}.contact-field.is-full textarea{overflow-y:auto}.contact-mirror{position:absolute;top:0;left:0;width:100%;font-size:var(--text-body);line-height:var(--lh-body);white-space:pre-wrap;overflow-wrap:break-word;visibility:hidden;pointer-events:none}@media(prefers-reduced-motion:no-preference){.site-header .brand,.site-menu>*,.contact-step:not([hidden]) :is(.contact-q,.contact-options>button,textarea,input,.contact-done){animation:text-in .4s var(--ease-out-expo) both}.site-menu>:nth-child(2),.contact-options>:nth-child(2){animation-delay:30ms}.site-menu>:nth-child(3),.contact-options>:nth-child(3){animation-delay:60ms}.contact-options>:nth-child(4),.contact-step:not([hidden]) :is(textarea,input){animation-delay:90ms}}.contact-dots{position:relative}:root{--small-menu-top: 70px;--small-menu-bridge: 16px;--small-menu-push: 162px}@media(max-width:759px){:root{--small-menu-top: 57px;--small-menu-bridge: 3px;--small-menu-push: 124px}}:focus-visible{outline:1px solid var(--ink);outline-offset:4px;border-radius:2px}.contact-panel :is(textarea,input):focus-visible{outline:none}[tabindex="-1"]:focus{outline:none}.shop-menu{margin-top:0}.contact-panel{padding-top:40px}.contact-panel:after{content:"";position:absolute;top:100%;right:0;left:0;height:100lvh;background:#fff}.contact-nav{bottom:40px}.contact-options,.contact-panel input{margin-top:134px}.contact-step[data-step=done]{top:203px}.contact-field{display:flex;align-items:center;height:229px;margin-top:34px}.contact-panel .contact-field textarea{position:static;height:var(--lh-body);max-height:100%;transform:none;transition:none}html.is-contact-open,html.is-contact-open body{overflow:hidden;overscroll-behavior:none}@keyframes text-blur-in{0%{opacity:0;filter:blur(4px)}}@media(prefers-reduced-motion:no-preference){.contact-step:not([hidden]) :is(.contact-q,.contact-options>button,textarea,input,.contact-done){animation:text-blur-in .55s var(--ease-out-expo) both}}@media(prefers-reduced-motion:reduce){.contact-panel,.contact-backdrop,.project-menu>a,.project-menu>button,.contact-dots,.contact-back,.contact-next{transition:none}}@media(max-width:759px){body:has(.hero[data-intro]) .site-header{top:var(--intro-name-top, round(71.5svh, 1px))}}html.is-contact-open,html.is-contact-open body{overscroll-behavior:none}.contact-root{overscroll-behavior:contain}.js .hero[data-intro]:not([data-intro-ready]) .mark-blob{visibility:hidden}.contact-panel textarea{letter-spacing:var(--track)}.brand-toggle{padding:0;font:inherit;letter-spacing:inherit;color:inherit;background:none;border:0;cursor:pointer}.site-menu[hidden]{display:none}@media(prefers-reduced-motion:no-preference){.site-header.did-swap .site-menu:not([hidden])>*{animation:text-blur-in .55s var(--ease-out-expo) both}}.shop-ring .shop-mark{position:relative}.shop-ring-canvas{position:absolute;inset:0;width:100%;height:100%}.shop-ring-canvas{visibility:hidden}.shop-ring .shop-mark.has-canvas.at-top .shop-ring-canvas{visibility:visible}.shop-ring .shop-mark.has-canvas.at-top svg{visibility:hidden}@keyframes intro-follow{0%{translate:0 0}to{translate:0 -100000px}}.hero[data-intro].is-sda [data-hero-variant=blob]{animation:intro-face-scale linear both,intro-follow linear both;animation-timeline:scroll(root block),scroll(root block);animation-range:0px var(--intro-r),0px 100000px}.shop-head.is-sda .shop-ring-layer{animation:shop-ring-scale linear both,intro-follow linear both;animation-timeline:scroll(root block),scroll(root block);animation-range:0px var(--ring-r),0px 100000px}@media(prefers-reduced-motion:no-preference){.is-split .reveal-word.price-swap,.price-swap{animation:text-in .4s var(--ease-out-expo) both}}
