@font-face{font-family:Mona Sans;font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/mona-sans-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Mona Sans;font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/mona-sans-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:TW Hollow;font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/tw-hollow-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:TW Hollow;font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/tw-hollow-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Geist Mono;font-style:normal;font-weight:400 600;font-display:swap;src:url(../fonts/geist-mono-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono;font-style:normal;font-weight:400 600;font-display:swap;src:url(../fonts/geist-mono-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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}:root{--paper: #F2F0EB;--paper-deep: #E7E4DD;--paper-raised: #FAF9F5;--paper-sunk: #DEDBD3;--ink: #111111;--ink-raised: #1A1A18;--ink-lifted: #2B2A27;--ink-soft: #63615B;--ink-faint: #B7B3A8;--line: rgba(17, 17, 17, .14);--line-strong: rgba(17, 17, 17, .34);--mark: var(--ink);--contact: #000000;--font-display: "Mona Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-hollow: "TW Hollow", "Mona Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-sans: "Mona Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-mono: "Geist Mono", "SF Mono", Menlo, Consolas, monospace;--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--page-gutter: max(clamp(20px, 4.8vw, 76px), var(--safe-left), var(--safe-right));--work-edge-x: 0px;--work-edge-y: 0px;--work-shadow-x: 0px;--work-shadow-y: 28px;--work-shadow-blur: 72px;--page-progress: 0;--hero-exit: 0;--work-presence: 0;--work-shift: 24px;--contact-enter: 0;--contact-shift: 9vh;--contact-scale: .965;color-scheme:light;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{background:var(--paper-deep);scroll-behavior:auto}html.has-case-open,body.has-case-open{overscroll-behavior:none}html.has-case-open{overflow:hidden}html.has-js.is-touch-driven{touch-action:pan-x pinch-zoom}html.has-js.is-touch-driven .case-scroll,html.has-js.is-touch-driven textarea{touch-action:pan-y pinch-zoom}body{margin:0;min-width:320px;overflow-x:hidden;overflow-x:clip;color:var(--ink);background:var(--paper);font-family:var(--font-sans);font-size:16px;font-weight:400;-webkit-font-smoothing:antialiased}a,button{color:inherit;font:inherit}a{text-decoration:none}button{border:0;touch-action:manipulation}:focus-visible{outline:2px solid var(--mark);outline-offset:5px}::selection{color:#fffdf8;background:var(--contact)}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.skip-link{position:fixed;z-index:200;left:var(--page-gutter);top:12px;min-height:44px;padding:15px 18px;border:1px solid var(--line-strong);border-radius:4px;color:var(--paper-deep);background:var(--ink);font:500 10px/1 var(--font-mono);letter-spacing:.075em;transform:translateY(-140%);transition:transform .2s ease}.skip-link:focus{transform:translateY(0)}#webgl{position:fixed;inset:0;z-index:3;display:block;width:100%;height:100%;pointer-events:none;opacity:0;transition:opacity .55s ease}html.is-organism-ready #webgl{opacity:1}body.is-context-lost #webgl{opacity:.18}.page-progress{position:fixed;z-index:90;inset:0 0 auto;height:2px;overflow:hidden;pointer-events:none;background:#11111114}.page-progress i{display:block;width:100%;height:100%;background:var(--mark);transform:scaleX(var(--page-progress));transform-origin:left center;will-change:transform}.topbar{position:fixed;inset:0 0 auto;z-index:70;display:flex;justify-content:space-between;align-items:center;padding:24px var(--page-gutter);pointer-events:none;background:linear-gradient(180deg,#f2f0ebf5,#f2f0eb00)}.topbar nav{display:flex;align-items:center;gap:clamp(16px,2.2vw,32px);pointer-events:auto}.brand{pointer-events:auto}.brand{display:inline-flex;align-items:center;min-height:44px;gap:11px;font:500 10px/1 var(--font-mono);letter-spacing:.1em}.brand span{width:10px;height:10px;border-radius:54% 46% 58% 42%;background:var(--mark);box-shadow:none;transform:rotate(24deg)}.topbar-work,.topbar-contact{display:inline-flex;align-items:center;min-height:44px;color:#1119;font:500 9px/1 var(--font-mono);letter-spacing:.08em;transition:color .2s ease}.topbar-work:hover,.topbar-contact:hover{color:var(--ink)}main{position:relative}main:focus{outline:0}.scene{position:relative}.hero-stage{position:sticky;top:0;height:100vh;height:100svh;height:100dvh;overflow:hidden;padding:18vh var(--page-gutter)}.scene-contact{min-height:145vh;min-height:145svh;display:grid;place-items:center;padding:16vh max(24px,5vw)}.hero-kicker{margin:0;color:#1111119e;font:500 10px/1.2 var(--font-mono);letter-spacing:.16em}.hero-kicker{position:absolute;z-index:22;left:var(--page-gutter);top:17vh;max-width:calc(100vw - var(--page-gutter) * 2)}.hero-title-rig{position:absolute;z-index:22;left:var(--page-gutter);top:29vh;width:min(1040px,86vw)}.hero-title-rig h1,.work-intro h2,.contact-panel h2,.case-copy h3{margin:0;font-family:var(--font-display);font-weight:800;line-height:.88;letter-spacing:-.04em;text-wrap:balance}.hero-title-rig h1{font-size:clamp(76px,10.2vw,172px)}.hero-title-rig h1{-webkit-text-stroke:.092em var(--paper);paint-order:stroke fill}html.is-alive .hero-title-rig em{color:var(--mark)}html.has-live-title .hero-title-rig em{position:relative;display:inline-block;isolation:isolate}.hero-paper,.hero-ink{position:absolute;inset:0;pointer-events:none;-webkit-user-select:none;user-select:none}.hero-paper:before,.hero-ink:before{content:attr(data-word)}.hero-paper{z-index:-1;color:var(--paper);-webkit-text-stroke:.092em var(--paper)}.hero-ink{--ink-r: 0px;z-index:1;color:var(--mark);-webkit-text-stroke:max(2px,.026em) var(--mark);-webkit-mask-image:radial-gradient(circle at var(--ink-x, 100%) var(--ink-y, 72%),#000 calc(var(--ink-r) - .05em),transparent var(--ink-r)),radial-gradient(circle at calc(var(--ink-x, 100%) - .22em) calc(var(--ink-y, 72%) - .1em),#000 calc(var(--ink-r) * .9 - .05em),transparent calc(var(--ink-r) * .9)),radial-gradient(circle at calc(var(--ink-x, 100%) - .12em) calc(var(--ink-y, 72%) + .16em),#000 calc(var(--ink-r) * .93 - .05em),transparent calc(var(--ink-r) * .93));mask-image:radial-gradient(circle at var(--ink-x, 100%) var(--ink-y, 72%),#000 calc(var(--ink-r) - .05em),transparent var(--ink-r)),radial-gradient(circle at calc(var(--ink-x, 100%) - .22em) calc(var(--ink-y, 72%) - .1em),#000 calc(var(--ink-r) * .9 - .05em),transparent calc(var(--ink-r) * .9)),radial-gradient(circle at calc(var(--ink-x, 100%) - .12em) calc(var(--ink-y, 72%) + .16em),#000 calc(var(--ink-r) * .93 - .05em),transparent calc(var(--ink-r) * .93))}.hero-title-rig em,.work-intro em,.contact-panel em{color:transparent;-webkit-text-stroke:max(2px,.026em) var(--mark);paint-order:stroke fill;font-family:var(--font-hollow);font-style:normal;font-weight:800}.hero-copy{position:absolute;z-index:22;left:var(--page-gutter);bottom:21vh;width:min(570px,calc(100vw - var(--page-gutter) * 2));margin:0;color:var(--ink-soft);font-size:clamp(13px,.95vw,15px);line-height:1.5;letter-spacing:-.005em}.card-grip{position:absolute;width:15px;height:15px;pointer-events:none;transform:translate(-50%,-50%)}.work-sticky{position:sticky;top:0;height:100vh;height:100svh;height:100dvh;overflow:hidden;padding:11vh var(--page-gutter) 6vh;background:radial-gradient(circle at 82% 23%,rgba(140,138,131,.05),transparent 30%),linear-gradient(180deg,#11111105,#1113)}body[data-scene=work] #webgl{z-index:18}body[data-scene=contact] #webgl{z-index:24}.work-intro{position:relative;z-index:22;width:min(540px,35vw)}.work-intro h2{margin-top:0;font-size:clamp(48px,5.35vw,86px)}.work-intro>p:last-of-type{width:min(520px,100%);margin:22px 0 0;color:var(--ink-soft);font-size:clamp(13px,.98vw,16px);line-height:1.5;letter-spacing:-.005em}.project-system{position:absolute;z-index:12;left:37vw;right:max(18px,2vw);top:7vh;bottom:6vh}.project-viewport{position:absolute;inset:0 0 52px;overflow:hidden;perspective:1600px;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 3%,#000 97%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 3%,#000 97%,transparent 100%)}.project-track{position:absolute;inset:0;transform-style:preserve-3d}.project-visual{flex:1 1 auto;min-height:0}.project-card>p,.project-card .project-meta,.project-card [data-case-trigger]{flex:0 0 auto}.project-card{position:absolute;left:50%;top:50%;display:flex;flex-direction:column;width:min(510px,36vw);height:min(680px,calc(100% - 16px));min-height:0;padding:14px 14px 22px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(160deg,#181817,#101010);box-shadow:0 22px 54px #00000040,0 1px #11111106 inset;-webkit-backdrop-filter:none;backdrop-filter:none;transform:translate3d(-50%,-50%,0);transform-style:preserve-3d;outline:none;cursor:pointer;pointer-events:none;will-change:transform,opacity;isolation:isolate;transition:border-color .35s ease,box-shadow .5s ease}.project-card[data-project]{--project-accent: var(--ink)}.project-card:before{content:"";position:absolute;z-index:3;left:14px;right:14px;top:0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--project-accent) 72%,white),transparent);opacity:.18;transition:opacity .35s ease,transform .55s ease;transform:scaleX(.45)}.project-card.is-active{pointer-events:auto;border-color:color-mix(in srgb,var(--project-accent) 28%,rgba(17,17,17,.24));box-shadow:0 34px 90px #00000061,0 0 64px color-mix(in srgb,var(--project-accent) 7%,transparent)}.project-card.is-active:before,.project-card.is-target:before{opacity:.85;transform:scaleX(1)}.project-card.is-target{border-color:color-mix(in srgb,var(--project-accent) 54%,rgba(17,17,17,.22));filter:none}.project-card.is-held{border-color:color-mix(in srgb,var(--project-accent) 38%,rgba(17,17,17,.28));box-shadow:0 34px 90px #00000061,0 0 54px color-mix(in srgb,var(--project-accent) 9%,transparent)}.project-card.is-lifting{border-color:color-mix(in srgb,var(--project-accent) 62%,white);box-shadow:0 48px 120px #00000085,0 0 70px color-mix(in srgb,var(--project-accent) 12%,transparent)}.project-card.is-source-hidden{opacity:0!important}.card-grip-a{left:0;bottom:18%}.card-grip-b{left:0;top:34%}.project-visual{position:relative;height:clamp(220px,37vh,340px);flex:0 1 auto;min-height:190px;overflow:hidden;border-radius:4px;background:#1a1a18;box-shadow:0 0 0 1px #1111110f inset,0 8px 20px #1111110e inset}.project-visual:after{content:"";position:absolute;inset:0;border:1px solid rgba(17,17,17,.05);border-radius:inherit;pointer-events:none}.contact-panel,.case-thesis,.hero-primary,#caseNextBottom,.project-jump button.is-active{--mark: var(--paper-raised)}.project-meta{display:flex;justify-content:space-between;gap:20px;margin-top:17px;color:#1119;font:500 9px/1 var(--font-mono);letter-spacing:.065em}.project-card h3{margin:18px 0 0;font-family:var(--font-display);font-size:clamp(54px,4.8vw,78px);font-weight:800;line-height:.88;letter-spacing:-.03em}.project-card>p{max-width:470px;margin:13px 0 0;color:var(--ink-soft);font-size:12px;line-height:1.5;letter-spacing:0}.project-card>.card-links{display:none;flex-wrap:wrap;gap:8px 24px}.card-links a{display:inline-flex;align-items:center;min-height:44px;border-bottom:1px solid var(--mark);color:var(--ink);font:500 11px/1 var(--font-mono);letter-spacing:.075em;text-transform:uppercase}.project-card [data-case-trigger]{position:relative;align-self:flex-start;display:inline-flex;align-items:center;min-height:44px;margin-top:auto;padding:13px 0 0;background:transparent;color:#111111c2;cursor:pointer;font:500 9px/1 var(--font-mono);letter-spacing:.065em}.project-card [data-case-trigger]:after{content:"";position:absolute;left:0;right:0;bottom:5px;height:1px;background:var(--project-accent);transform:scaleX(.16);transform-origin:left;transition:transform .3s ease}.project-card:hover [data-case-trigger]:after,.project-card:focus-visible [data-case-trigger]:after{transform:scaleX(1)}.contact-panel{position:relative;z-index:22;width:min(920px,84vw);text-align:center}.scene-contact .contact-panel{width:min(840px,72vw);transform:translate(9vw)}.contact-panel h2{margin-top:0;font-size:clamp(56px,7.2vw,116px)}.contact-panel>.contact-copy{width:min(540px,100%);margin:30px auto 0;color:var(--ink-soft);font-size:clamp(15px,1.15vw,18px);line-height:1.55;letter-spacing:0;font-family:var(--font-sans);font-weight:400}.contact-panel a{display:inline-flex;align-items:center;gap:16px;margin-top:42px;min-height:44px;padding-bottom:8px;border-bottom:1px solid rgba(17,17,17,.22);font:500 clamp(10px,.9vw,12px)/1 var(--font-mono);letter-spacing:.075em}.contact-panel a b{color:var(--mark);font-weight:400}.case-panel{position:fixed;z-index:85;inset:18px 18px 18px clamp(180px,18vw,280px);display:block;padding:0;border:1px solid var(--line-strong);border-radius:8px;background:#faf9f5f7;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 50px 180px #00000094;clip-path:inset(45% 45% 45% 45% round 4px);opacity:0;pointer-events:none;transform:translateY(10px) scale(.985);transition:clip-path .48s cubic-bezier(.2,.72,.18,1),opacity .3s ease,transform .48s cubic-bezier(.2,.72,.18,1)}.case-panel.is-open{clip-path:inset(0 round 4px);opacity:1;transform:none;pointer-events:auto}.case-panel.is-closing{clip-path:inset(45% 45% 45% 45% round 4px);opacity:0;transform:translateY(10px) scale(.985)}.case-toolbar{position:absolute;z-index:4;inset:0 0 auto;display:flex;justify-content:space-between;align-items:center;min-height:72px;padding:14px 18px 14px 24px;border-bottom:1px solid var(--line);background:#faf9f5e6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.case-toolbar>p{margin:0;color:#11111180;font:500 9px/1 var(--font-mono);letter-spacing:.075em}.case-toolbar button{width:46px;height:46px;border:1px solid var(--line);border-radius:50%;background:transparent;cursor:pointer;font-size:23px}.case-scroll{height:100%;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;padding:92px clamp(22px,3vw,52px) 34px}.case-panel[aria-hidden=true] .case-scroll{content-visibility:hidden}.case-hero{display:grid;grid-template-columns:minmax(300px,1.15fr) minmax(300px,.85fr);gap:clamp(28px,4vw,68px);align-items:stretch;min-height:min(610px,calc(100vh - 150px))}.case-visual{position:relative;min-height:460px;border-radius:4px;overflow:hidden;background:#1a1a18}.case-copy{display:flex;flex-direction:column;justify-content:flex-end;padding:4vh 1vw 3vh 0}.case-copy>p:first-child{margin:0 auto auto 0;color:#11111185;font:500 9px/1 var(--font-mono);letter-spacing:.075em}.case-copy h3{font-size:clamp(56px,6.2vw,106px)}.case-lede{max-width:58ch;margin:28px 0 0;color:var(--ink-soft);font-size:clamp(13px,.95vw,15px);line-height:1.5}.case-facts{display:grid;grid-template-columns:minmax(64px,auto) minmax(0,1fr);gap:16px 32px;margin:40px 0 0;padding-top:18px;border-top:1px solid var(--line)}.case-facts div{min-width:0}.case-fact-role{grid-column:auto;padding-top:0;border-top:0}.case-facts dt{color:#1111118f;font:500 9px/1 var(--font-mono);letter-spacing:.075em}.case-facts dd{margin:9px 0 0;color:#111111c7;font-size:11px;line-height:1.45}.case-story{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:clamp(54px,8vh,110px);border:1px solid var(--line);background:var(--line)}.case-story section{min-height:320px;padding:clamp(24px,3vw,44px);background:#faf9f5fa}.case-story h4{margin:0;font:800 clamp(30px,2.9vw,48px)/.95 var(--font-display);letter-spacing:-.03em}.case-story section>p:last-child{max-width:58ch;margin:24px 0 0;color:var(--ink-soft);font-size:13px;line-height:1.6}.case-footer{display:flex;justify-content:flex-end;align-items:center;gap:28px;padding:32px 0 0}.case-provenance{max-width:52ch;margin-top:22px}.case-provenance>p:first-child{margin:0;color:var(--ink-soft);font-size:11px;line-height:1.5}.case-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin:4px 0 0}.case-links a{min-height:44px;display:inline-flex;align-items:center;border-bottom:1px solid var(--mark);color:var(--ink);font:500 11px/1 var(--font-mono);letter-spacing:.075em;text-transform:uppercase}.case-links:empty{display:none}.case-footer button{min-height:44px;padding:0 0 5px;border-bottom:1px solid var(--mark);background:transparent;cursor:pointer;font:500 9px/1 var(--font-mono);letter-spacing:.075em}.debug{position:fixed;z-index:100;left:14px;bottom:14px;display:none;gap:7px;padding:10px 12px;border:1px solid var(--line);background:#111111eb;font:500 9px/1.2 var(--font-mono)}body.is-debug .debug{display:grid}@media(max-width:980px){.hero-title-rig{width:91vw}.hero-copy{width:min(580px,78vw)}.work-sticky{padding-top:max(78px,8vh)}.work-intro{width:min(600px,72vw)}.work-intro h2{font-size:clamp(40px,6.2vw,60px)}.work-intro>p:last-of-type{max-width:520px;margin-top:16px;font-size:14px}.project-system{left:13vw;right:1vw;top:29vh;bottom:4vh}.project-card{width:min(490px,64vw);height:calc(100% - 8px)}.project-visual{height:auto;min-height:92px}.case-panel{left:8vw}.case-hero{grid-template-columns:1fr}.case-visual{min-height:54vh}.case-copy{min-height:420px;padding-right:0}.case-story{grid-template-columns:1fr}.case-story section{min-height:260px}}@media(max-width:620px){:root{--page-gutter: max(17px, var(--safe-left), var(--safe-right))}.scene-hero{min-height:100svh;min-height:100dvh}.scene-work{min-height:300svh;min-height:300dvh}.scene-contact{min-height:118svh;min-height:118dvh}.topbar{padding-top:max(8px,var(--safe-top));padding-bottom:8px}.topbar nav{gap:12px}.brand{font-size:9px}.topbar-work,.topbar-contact{display:inline-flex;min-height:40px;font-size:9px}.hero-stage{padding-inline:var(--page-gutter)}.hero-kicker{left:var(--page-gutter);top:max(15vh,calc(var(--safe-top) + 78px))}.hero-title-rig{left:var(--page-gutter);top:23.5vh;width:calc(100vw - var(--page-gutter) * 2)}.hero-title-rig h1{font-size:clamp(56px,15.8vw,86px)}.hero-copy{left:var(--page-gutter);bottom:24vh;width:calc(100vw - var(--page-gutter) * 2)}.work-sticky{padding:max(9vh,calc(var(--safe-top) + 64px)) var(--page-gutter) max(3vh,var(--safe-bottom))}.work-intro{width:100%}.work-intro h2{margin-top:0;font-size:clamp(34px,11.4vw,52px);line-height:.91}.work-intro>p:last-of-type{width:min(92%,470px);margin-top:11px;font-size:14px;line-height:1.45}.project-system{left:0;right:0;top:42dvh;bottom:max(7dvh,calc(var(--safe-bottom) + 48px))}.project-card{width:min(80vw,380px);height:calc(100% - 4px);padding:10px 10px 15px;-webkit-backdrop-filter:none;backdrop-filter:none}.project-visual{height:45%;min-height:128px;border-radius:4px}.project-meta{margin-top:10px;font-size:9px}.project-card h3{margin-top:10px;font-size:clamp(42px,13vw,58px)}.project-card>p{display:-webkit-box;margin-top:7px;overflow:hidden;font-size:14px;line-height:1.42;-webkit-line-clamp:2;-webkit-box-orient:vertical}.project-card [data-case-trigger]{min-height:44px;padding-top:8px;font-size:9px}.contact-panel{width:100%}.scene-contact .contact-panel{width:100%;transform:translateY(15dvh)}.contact-panel h2{font-size:52px}.case-panel{inset:max(6px,var(--safe-top)) max(6px,var(--safe-right)) max(6px,var(--safe-bottom)) max(6px,var(--safe-left));z-index:85}.case-toolbar{min-height:62px;padding:9px 10px 9px 14px}.case-toolbar>p{font-size:9px}.case-scroll{padding:76px 12px 22px}.case-hero{gap:22px;min-height:0}.case-visual{min-height:42vh}.case-copy{min-height:390px;padding:12px 2px 24px}.case-copy h3{font-size:clamp(46px,16vw,70px)}.case-lede{margin-top:20px;font-size:16px}.case-facts{grid-template-columns:1fr;margin-top:28px}.case-facts div{display:grid;grid-template-columns:72px 1fr;align-items:baseline}.case-facts dd{margin-top:0}.case-story{margin-top:28px}.case-story section{min-height:240px;padding:24px 18px}.case-footer{align-items:flex-start;flex-direction:column}}@media(max-height:520px)and (max-width:980px)and (orientation:landscape){:root{--page-gutter: max(28px, var(--safe-left), var(--safe-right))}.topbar{padding-top:max(7px,var(--safe-top));padding-bottom:7px}.topbar nav{gap:16px}.brand,.topbar-work,.topbar-contact{min-height:38px}.hero-stage{padding-inline:var(--page-gutter)}.hero-kicker{top:max(58px,calc(var(--safe-top) + 50px))}.hero-title-rig{left:var(--page-gutter);top:27vh;width:64vw}.hero-title-rig h1{font-size:clamp(50px,8.2vw,76px)}.hero-copy{left:57vw;bottom:max(54px,calc(var(--safe-bottom) + 32px));width:37vw;font-size:14px;line-height:1.4}.work-sticky{padding:max(58px,calc(var(--safe-top) + 52px)) var(--page-gutter) max(14px,var(--safe-bottom))}.work-intro{width:41vw}.work-intro h2{margin-top:0;font-size:clamp(34px,5.15vw,46px);line-height:.9}.work-intro>p:last-of-type{width:96%;margin-top:10px;font-size:12px;line-height:1.35}.project-system{left:45vw;right:max(10px,var(--safe-right));top:max(56px,calc(var(--safe-top) + 50px));bottom:max(50px,calc(var(--safe-bottom) + 44px))}.project-viewport{inset:0 0 46px}.project-card{width:min(49vw,430px);height:calc(100% - 2px);padding:8px 9px 10px}.project-visual{height:42%;min-height:76px}.project-meta{margin-top:6px;font-size:9px}.project-card h3{margin-top:6px;font-size:clamp(30px,4.9vw,42px)}.project-card>p{display:-webkit-box;margin-top:4px;overflow:hidden;font-size:12px;line-height:1.3;-webkit-line-clamp:1;-webkit-box-orient:vertical}.project-card [data-case-trigger]{min-height:34px;padding-top:5px;font-size:9px}.case-panel{inset:max(5px,var(--safe-top)) max(5px,var(--safe-right)) max(5px,var(--safe-bottom)) max(5px,var(--safe-left))}.case-toolbar{min-height:52px;padding-block:5px}.case-toolbar button{width:40px;height:40px}.case-scroll{padding:62px 14px 18px}.case-hero{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:20px;min-height:270px}.case-visual{min-height:250px}.case-copy{min-height:0;padding:5px 0 10px}.case-copy h3{font-size:clamp(44px,7vw,62px)}.case-lede{margin-top:14px;font-size:13px;line-height:1.4}.case-facts{margin-top:18px;padding-top:10px}}@media(max-height:720px)and (min-width:981px){.work-sticky{padding-top:8vh}.work-intro h2{margin-top:0;font-size:clamp(42px,5.4vw,66px)}.work-intro>p:last-of-type{margin-top:14px;font-size:14px;line-height:1.45}.project-system{top:5vh;bottom:4vh}.project-card h3{margin-top:12px}.project-card>p{margin-top:9px}.project-visual{height:40vh}}body.is-reduced-motion *,body.is-reduced-motion *:before,body.is-reduced-motion *:after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}body.is-reduced-motion .project-card{will-change:auto}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.scene-work{min-height:260svh}.project-card{will-change:auto}}html:not(.has-js) #webgl,html.is-static-fallback #webgl,html:not(.has-js) .card-grip,html.is-static-fallback .card-grip,html:not(.has-js) .case-panel,html.is-static-fallback .case-panel,html:not(.has-js) .case-backdrop,html.is-static-fallback .case-backdrop{display:none!important}html:not(.has-js),html.is-static-fallback{--hero-exit: 0;--work-presence: 1;--work-shift: 0px;--contact-enter: 1;--contact-shift: 0vh;--contact-scale: 1}html:not(.has-js) .scene,html.is-static-fallback .scene{min-height:0}html:not(.has-js) .hero-stage,html.is-static-fallback .hero-stage,html:not(.has-js) .work-sticky,html.is-static-fallback .work-sticky{position:relative;height:auto;min-height:100svh;min-height:100dvh;overflow:visible}html:not(.has-js) .project-system,html.is-static-fallback .project-system{position:relative;inset:auto;margin-top:56px}html:not(.has-js) .project-viewport,html.is-static-fallback .project-viewport{position:relative;inset:auto;overflow:visible;perspective:none;-webkit-mask-image:none;mask-image:none}html:not(.has-js) .project-track,html.is-static-fallback .project-track{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}html:not(.has-js) .project-card,html.is-static-fallback .project-card{position:relative;inset:auto;width:auto;height:auto;min-height:620px;transform:none!important;opacity:1!important;pointer-events:auto!important;filter:none!important}html:not(.has-js) .project-card [data-case-trigger],html.is-static-fallback .project-card [data-case-trigger]{display:inline-flex}html:not(.has-js) .project-jump,html.is-static-fallback .project-jump,html:not(.has-js) .work-intro>p:last-of-type,html.is-static-fallback .work-intro>p:last-of-type{display:none}html:not(.has-js) .project-card>.card-links,html.is-static-fallback .project-card>.card-links{display:flex}html:not(.has-js) .scene-contact,html.is-static-fallback .scene-contact{min-height:80svh;min-height:80dvh}@media(max-width:720px){html:not(.has-js) .project-track,html.is-static-fallback .project-track{grid-template-columns:1fr}html:not(.has-js) .work-sticky,html.is-static-fallback .work-sticky{padding-inline:var(--page-gutter)}}html,body{background:var(--paper)}.topbar{background:linear-gradient(180deg,#f2f0ebf5,#f2f0eb00)}.brand span{background:var(--mark);transition:background-color .4s ease,transform .55s cubic-bezier(.22,.72,.2,1)}.brand span[data-eye]{transition:background-color .4s ease,transform .09s ease-out}.brand span[data-eye=closed]{transform:rotate(0) scale(1.3,.24)}.brand span[data-eye=blink]{transform:rotate(0) scale(1.2,.16);transition-duration:.4s,.06s}body[data-scene=contact] .brand span{background:var(--ink-lifted)}.topbar-work,.topbar-contact{color:#111111a8}.hero-kicker{color:#111111b3}.hero-title-rig h1,.work-intro h2,.contact-panel h2,.project-card h3,.case-copy h3,.case-story h4{color:var(--ink)}.hero-title-rig em,.work-intro em{-webkit-text-stroke-color:var(--mark)}.contact-panel em{color:transparent;-webkit-text-stroke-color:var(--mark)}.hero-copy,.work-intro>p:last-of-type,.project-card>p,.contact-panel>.contact-copy,.case-lede,.case-story section>p:last-child{color:var(--ink-soft)}.work-sticky{background:linear-gradient(180deg,#f2f0eb00,#e7e4dd61)}.case-toolbar>p,.case-copy>p:first-child,.case-facts dt{color:#111111a8}.case-facts dd{color:var(--ink)}.skip-link{border-radius:3px}.case-panel{border-radius:4px}.project-card[aria-hidden=true]:not(.is-target):not(.is-departing):hover{filter:none;border-color:#1111114d}.scene-contact .contact-panel:before{transform:scaleX(var(--contact-reveal, 1));transform-origin:left}.contact-panel a{opacity:calc(.2 + var(--contact-reveal, 1) * .8)}.project-card{border-color:#11111129;border-radius:3px;background:linear-gradient(180deg,#ffffff57,#f2f0eb0d),var(--paper-raised);box-shadow:0 24px 66px #1111111f}.project-card:before{left:15px;right:auto;width:54px;height:3px;background:var(--mark);transform:scaleX(.22);transform-origin:left}.project-card.is-active,.project-card.is-held{border-color:#11111147;box-shadow:var(--work-shadow-x) var(--work-shadow-y) var(--work-shadow-blur) #1111112b}.project-card.is-target{border-color:color-mix(in srgb,var(--mark) 52%,var(--ink));filter:none}.project-card.is-lifting{border-color:var(--mark);box-shadow:0 42px 104px #11111138}.project-card:not(.is-active):not(.is-target){filter:none}.project-visual{border-radius:2px;background:var(--ink-raised);box-shadow:0 0 0 1px #11111114 inset,0 10px 28px #11111114 inset}.project-visual:after{border-color:#11111114}.project-meta{color:#1111119e}.project-card [data-case-trigger]{color:#111111d1}.project-card [data-case-trigger]:after{background:var(--mark)}.scene-contact .contact-panel{width:min(820px,78vw);padding:clamp(28px,4vw,58px);border:1px solid rgba(17,17,17,.9);border-radius:3px;text-align:left;background:var(--ink);box-shadow:0 30px 80px #11111147}.scene-contact .contact-panel:before{content:"";display:block;width:72px;height:4px;margin-bottom:26px;background:var(--mark)}.scene-contact .contact-panel h2{color:var(--paper-raised)}.scene-contact .contact-panel em{color:transparent;-webkit-text-stroke-color:var(--mark)}.scene-contact .contact-panel>.contact-copy{color:#faf9f5b8}.contact-panel a{border-bottom-color:#1111116b;color:var(--ink)}.scene-contact .contact-panel a{border-bottom-color:#faf9f566;color:var(--paper-raised)}.contact-panel a b{color:var(--mark)}.case-panel{border-color:#11111138;background:var(--paper-raised);box-shadow:0 34px 110px #1113}.case-toolbar{background:#faf9f5f5}.case-story section{background:color-mix(in srgb,var(--ink-lifted) 10%,var(--paper-raised))}.case-toolbar,.case-footer{border-color:#11111124}.case-footer button{border-bottom-color:var(--mark)}.debug{color:var(--ink);background:#faf9f5f0}@media(max-width:720px){.scene-contact .contact-panel{width:100%;padding:26px 22px 30px}.scene-contact .contact-panel:before{width:52px;margin-bottom:20px}.project-card:before{width:42px}}@media(max-width:720px)and (orientation:portrait){.project-system{top:45.5dvh}}@media(prefers-reduced-motion:reduce){.brand span,.brand span[data-eye]{transition:none}}.project-card [data-case-trigger]{align-self:stretch;justify-content:space-between;gap:16px;margin-top:auto;padding:16px 0 0}.project-card [data-case-trigger] b{font-weight:inherit;transition:transform .4s cubic-bezier(.2,.72,.2,1)}.project-card:hover [data-case-trigger] b,.project-card [data-case-trigger]:focus-visible b{transform:translate(3px,-3px)}.project-card [data-case-trigger]:after{top:0;right:0;bottom:auto;height:1px;background:var(--line);transform:none}.project-card [data-case-trigger]:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--mark);transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.72,.2,1)}.project-card:hover [data-case-trigger]:before,.project-card [data-case-trigger]:focus-visible:before{transform:scaleX(1)}@media(min-width:621px)and (max-width:980px){.project-card{height:min(560px,calc(100% - 8px));padding:16px 16px 20px}.project-visual{height:44%}.project-card h3{margin-top:14px}}@media(max-width:980px){.case-copy{justify-content:flex-start}.case-copy>p:first-child{margin:0 0 16px}}@media(max-width:620px){.case-copy{min-height:0}.case-visual{min-height:38vh}}.intro{position:fixed;inset:0;z-index:300;animation:intro-failsafe .4s ease 5s forwards}.intro:before{content:"";position:absolute;inset:0;background:var(--paper);will-change:opacity;transition:opacity .45s cubic-bezier(.4,0,.2,1) .3s}.intro-organism{position:absolute;left:50%;top:50%;width:calc(144px * var(--ui, 1));aspect-ratio:128 / 88;transform:translate(-50%,-50%)}.intro-leg,.intro-body{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.intro-leg{fill:none;stroke:var(--ink);stroke-width:6.4;stroke-linecap:round;transform:scale(.25);transform-origin:50% 37.5%;transition:transform .22s cubic-bezier(.3,.7,.2,1) var(--leg-wait, 0s)}.intro-leg.is-out{transform:none}.intro-body{fill:var(--paper-raised);stroke:var(--ink);stroke-width:2.2}.intro-body path{transform-box:fill-box;transform-origin:50% 100%;animation:intro-breathe 2.8s ease-in-out infinite}.intro-eye{position:absolute;left:39.0625%;top:39.773%;width:calc(10px * var(--ui, 1));height:calc(10px * var(--ui, 1));margin:calc(-5px * var(--ui, 1)) 0 0 calc(-5px * var(--ui, 1));transition:transform .56s cubic-bezier(.65,0,.2,1) .22s}.intro-eye i{display:block;width:100%;height:100%;border-radius:54% 46% 58% 42%;background:var(--ink);transform:rotate(24deg);animation:intro-blink 3.6s linear 1.4s infinite}@media(max-width:620px){.intro-organism{width:128px}}@keyframes intro-breathe{0%,78%,to{transform:scale(1)}30%{transform:scale(1.016,1.04)}}@keyframes intro-blink{0%,94%,to{transform:rotate(24deg) scale(1)}96.5%{transform:rotate(0) scale(1.2,.16)}}@keyframes intro-failsafe{to{opacity:0;visibility:hidden}}html.is-intro-out .intro{pointer-events:none}html.is-intro-out:not(.is-intro-calm) .intro:before{opacity:0}html.is-intro-out:not(.is-intro-calm) .intro-leg{opacity:0;transform:scale(.25);transition:transform .18s cubic-bezier(.5,0,.8,.4),opacity 0s linear .18s}html.is-intro-out:not(.is-intro-calm) .intro-body{opacity:0;transform:scale(.12);transform-origin:39.0625% 39.773%;transition:transform .2s cubic-bezier(.5,0,.7,.4) .06s,opacity .08s linear .2s}html.is-intro-out:not(.is-intro-calm) .intro-eye{transform:translate(var(--intro-dx, 0px),var(--intro-dy, 0px))}html.is-intro-out .intro-eye i{animation:none}html.is-intro-out .intro-eye[data-eye=closed] i{transform:rotate(0) scale(1.3,.24);transition:transform .3s ease .46s}html.is-intro-done .intro,html.is-static-fallback .intro{display:none}html.has-js:not(.is-intro-done):not(.is-intro-calm) .brand span{opacity:0}html.is-intro-calm .intro-leg{transition:none}html.is-intro-calm .intro-body path,html.is-intro-calm .intro-eye i{animation:none}html.is-intro-calm .intro{transition:opacity .3s ease}html.is-intro-calm.is-intro-out .intro{opacity:0}@media(prefers-reduced-motion:reduce){.intro-leg{transition:none}.intro-body path,.intro-eye i{animation:none}}.hero-title-rig h1,.hero-title-rig h1 em{transition:color .55s ease,-webkit-text-stroke-color .55s ease}html:not(.is-intro-out) #webgl,html:not(.is-intro-out) .hero-title-rig h1,html:not(.is-intro-out) .hero-title-rig h1 em{transition:none}.project-card{--plate: calc(6px + var(--work-edge-x)) calc(7px + var(--work-edge-y)) 0 0 var(--paper-sunk);--lift: 0 24px 66px rgba(17, 17, 17, .12);box-shadow:var(--plate),var(--lift)}.project-card:after{content:none}.project-card.is-active,.project-card.is-held{box-shadow:var(--plate),var(--lift);--lift: var(--work-shadow-x) var(--work-shadow-y) var(--work-shadow-blur) rgba(17, 17, 17, .17)}.project-card.is-lifting{box-shadow:var(--plate),var(--lift);--lift: 0 42px 104px rgba(17, 17, 17, .22)}.scene-contact .contact-panel>.contact-copy{margin:30px 0 0}.brand,.topbar-work,.topbar-contact,.project-meta,.project-card [data-case-trigger],.case-toolbar>p,.case-copy>p:first-child,.case-facts dt,.case-footer button,.contact-panel a{letter-spacing:.075em}@media(max-height:520px)and (max-width:980px)and (orientation:landscape){.project-card [data-case-trigger]{min-height:44px}.case-toolbar button{width:44px;height:44px}}@media(max-width:720px){.work-intro>p:last-of-type{font-size:14px;line-height:1.45}}@media(min-width:981px){.case-copy{justify-content:flex-end;padding-bottom:6vh}.case-copy>p:first-child{margin:0 0 auto;padding-bottom:3vh}.case-copy h3{margin-top:0}}body[data-scene=contact] .brand span{background:var(--mark)}.project-meta small,.case-footer small{font:inherit}.hero-title-rig{width:min(1120px,86vw)}.work-intro{width:min(580px,35vw)}.project-card>p{flex:0 0 auto}@media(max-height:520px)and (max-width:980px)and (orientation:landscape){.project-visual{height:32%;min-height:56px}.project-card>p{min-height:1.32em}.project-card:not(.is-active):not(.is-target){--plate: 0 0 0 0 transparent}}@media(min-width:981px){.case-copy>p:first-child{margin:0 0 clamp(18px,2.4vh,28px);padding-bottom:0}}@media(max-width:720px){.project-card h3{margin-top:10px;font-size:clamp(34px,11.6vw,52px)}.project-card>p{font-size:14px;line-height:1.45}}@media(max-width:620px){.topbar-work,.topbar-contact{min-height:44px}.topbar{padding-block:4px}}@media(max-height:520px)and (max-width:980px)and (orientation:landscape){.brand,.topbar-work,.topbar-contact{min-height:44px}}.case-panel{--case-progress: 0;inset:12px 12px 12px clamp(128px,12vw,210px);border-radius:2px;box-shadow:0 42px 140px #11111147}.case-toolbar{min-height:68px;padding:10px 12px 10px clamp(18px,2.4vw,36px)}.case-toolbar-actions{display:flex;align-items:center;gap:7px}.case-toolbar button{display:inline-grid;place-items:center;width:44px;height:44px;border-color:#1111112e;font:500 17px/1 var(--font-mono);transition:color .24s ease,background-color .24s ease,border-color .24s ease,transform .24s ease}.case-toolbar button:hover{color:var(--paper-raised);border-color:var(--ink-raised);background:var(--ink-raised);transform:translateY(-2px)}#caseClose{margin-left:7px;font-size:24px}.case-scroll-progress{position:absolute;right:0;bottom:-1px;left:0;height:2px;overflow:hidden;background:#1111111a}.case-scroll-progress i{display:block;width:100%;height:100%;background:var(--mark);transform:scaleX(var(--case-progress));transform-origin:left center;will-change:transform}.case-scroll{padding:92px clamp(22px,3.4vw,58px) 34px}.case-hero{grid-template-columns:minmax(320px,1.2fr) minmax(300px,.8fr);min-height:min(690px,calc(100dvh - 128px))}.case-copy h3{max-width:100%;font-size:clamp(58px,6.8vw,118px);line-height:.84;letter-spacing:-.05em}.case-thesis{display:grid;grid-template-columns:minmax(160px,.36fr) minmax(0,1fr);gap:clamp(36px,7vw,120px);align-items:end;min-height:clamp(420px,60vh,680px);margin-top:clamp(64px,11vh,150px);padding:clamp(34px,5.5vw,82px);color:var(--paper-raised);background:linear-gradient(90deg,rgba(250,249,245,.05) 1px,transparent 1px) 0 0 / 12.5% 100%,var(--ink-raised)}.case-thesis>div{align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;padding-top:3px}.case-thesis p{margin:0;font:500 9px/1.35 var(--font-mono);letter-spacing:.09em}#caseThesisLabel{color:var(--mark)}#caseSignal{max-width:23ch;color:#faf9f585}.case-thesis blockquote{max-width:13ch;margin:0;font:800 clamp(42px,5.5vw,94px)/.92 var(--font-display);letter-spacing:-.045em;text-wrap:balance}.case-thesis blockquote:before{content:"“";display:block;height:.4em;color:var(--mark);font-size:.95em;line-height:.65}.case-gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(2,minmax(280px,34vh));gap:clamp(10px,1.2vw,18px);margin-top:clamp(12px,1.4vw,20px)}.case-plate{grid-column:span 5;display:grid;grid-template-rows:minmax(0,1fr) auto;min-width:0;margin:0;padding:clamp(8px,.8vw,12px);background:var(--paper-deep)}.case-plate-wide{grid-column:span 7;grid-row:span 2}.case-study-visual{position:relative;min-height:0;overflow:hidden;isolation:isolate;box-shadow:0 0 0 1px #11111114 inset}.case-study-visual:after{content:"";position:absolute;z-index:3;inset:0;pointer-events:none}.case-plate figcaption{display:flex;justify-content:space-between;gap:20px;min-height:44px;padding:14px 3px 2px;color:#1111119e;font:500 9px/1.3 var(--font-mono);letter-spacing:.085em}.case-plate figcaption b{color:var(--mark);font-weight:500}.case-story{margin-top:clamp(64px,10vh,132px)}.case-story section{min-height:clamp(330px,42vh,480px);transition:background-color .3s ease,color .3s ease}.case-story section:hover{background:var(--paper-raised)}.case-footer{align-items:flex-end;margin-top:clamp(22px,3vw,44px);padding:0}.case-footer>div{display:flex;align-items:stretch;gap:8px}.case-footer button{border:0}#caseNextBottom{position:relative;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr;gap:8px 38px;min-width:clamp(250px,28vw,430px);min-height:132px;padding:22px 24px;color:var(--paper-raised);background:var(--ink-raised);text-align:left;overflow:hidden;transition:background-color .28s ease,transform .28s ease}#caseNextBottom:after{content:"";position:absolute;inset:auto 0 0;height:4px;background:var(--mark);transform:scaleX(.18);transform-origin:left;transition:transform .42s cubic-bezier(.2,.72,.2,1)}#caseNextBottom:hover{background:#242421;transform:translateY(-3px)}#caseNextBottom:hover:after,#caseNextBottom:focus-visible:after{transform:scaleX(1)}#caseNextBottom small{grid-column:1 / -1;color:#faf9f585;font-size:9px}#caseNextBottom span{align-self:end;font:800 clamp(24px,2.8vw,44px)/.86 var(--font-display);letter-spacing:-.04em}#caseNextBottom b{align-self:end;color:var(--mark);font:400 26px/1 var(--font-mono)}@media(max-width:980px){.case-panel{inset:9px 9px 9px clamp(24px,5vw,58px)}.case-hero{grid-template-columns:1fr}.case-visual{min-height:min(62vh,620px)}.case-copy{min-height:430px}.case-thesis{grid-template-columns:1fr;align-items:stretch}.case-thesis>div{min-height:100px}.case-thesis blockquote{max-width:14ch}.case-gallery{grid-template-rows:repeat(2,minmax(240px,30vh))}.case-story{grid-template-columns:1fr}.case-story section{min-height:270px}}@media(max-width:720px){.case-panel{inset:max(5px,var(--safe-top)) max(5px,var(--safe-right)) max(5px,var(--safe-bottom)) max(5px,var(--safe-left))}.case-toolbar{min-height:58px;padding:7px 8px 7px 14px}.case-toolbar-actions{gap:4px}.case-toolbar button{width:44px;height:44px}#caseClose{margin-left:2px}.case-scroll{padding:72px 10px 18px}.case-visual{min-height:min(52vh,470px)}.case-copy{min-height:380px;padding-inline:4px}.case-thesis{min-height:min(620px,76vh);margin-top:42px;padding:28px 22px;gap:48px}.case-thesis blockquote{font-size:clamp(39px,12.6vw,62px)}.case-gallery{grid-template-columns:1fr;grid-template-rows:none;gap:10px;margin-top:10px}.case-plate,.case-plate-wide{grid-column:auto;grid-row:auto}.case-study-visual{min-height:38vh}.case-plate-wide .case-study-visual{min-height:56vh}.case-story{margin-top:50px}.case-footer{align-items:stretch}.case-footer>div{width:100%;flex-direction:column}#caseNextBottom{width:100%;min-width:0;min-height:128px}}@media(max-height:520px)and (max-width:980px)and (orientation:landscape){.case-panel{inset:5px}.case-toolbar{min-height:52px}.case-scroll{padding-top:62px}.case-copy{min-height:270px}.case-thesis{min-height:360px}}body.is-reduced-motion .case-toolbar button,body.is-reduced-motion #caseNextBottom,body.is-reduced-motion #caseNextBottom:after{transition:none}@media(prefers-reduced-motion:reduce){.case-toolbar button,#caseNextBottom,#caseNextBottom:after{transition:none}}.scene-hero{min-height:100vh;min-height:100svh}.scene-work{min-height:300vh;min-height:300svh}.scene-contact{min-height:100vh;min-height:100dvh}html.has-js .scene-contact{height:100dvh;max-height:100dvh;overflow:clip}.case-panel{transition:clip-path .34s cubic-bezier(.2,.72,.18,1),opacity .2s ease,transform .34s cubic-bezier(.2,.72,.18,1)}.hero-copy{max-width:610px}.hero-primary{position:absolute;z-index:24;left:var(--page-gutter);bottom:10vh;display:inline-flex;align-items:center;justify-content:space-between;gap:46px;min-width:min(310px,calc(100vw - var(--page-gutter) * 2));min-height:54px;padding:0 18px;color:var(--paper-raised);background:var(--ink-raised);cursor:pointer;font:500 10px/1 var(--font-mono);letter-spacing:.075em;transition:color .25s ease,background-color .25s ease,transform .25s ease}.hero-primary b{color:var(--mark);font-size:17px;font-weight:500}.hero-primary:hover{color:var(--ink-raised);background:var(--mark);transform:translateY(-3px)}.hero-primary:hover b{color:var(--ink-raised)}.project-jump{position:absolute;z-index:24;left:var(--page-gutter);bottom:8vh;display:grid;width:min(30vw,430px);border-bottom:1px solid var(--line)}.project-jump button{position:relative;display:grid;grid-template-columns:36px 1fr auto;align-items:center;min-height:48px;padding:0 12px 0 0;border-top:1px solid var(--line);color:#111111a3;background:transparent;cursor:pointer;text-align:left;transition:color .24s ease,background-color .24s ease,padding .24s ease}.project-jump button:after{content:"→";opacity:0;color:var(--mark);font:500 13px/1 var(--font-mono);transform:translate(-5px);transition:opacity .24s ease,transform .24s ease}.project-jump button span,.project-jump button b{font:500 9px/1 var(--font-mono);letter-spacing:.075em}.project-jump button span{color:var(--mark)}.project-jump button b{font-weight:500}.project-jump button:hover{padding-left:8px;color:var(--ink)}.project-jump button:hover:after{opacity:1;transform:none}.project-jump button.is-active{padding-left:10px;color:var(--paper-raised);background:var(--ink-raised)}.project-jump button.is-active:after{opacity:1;transform:none}.project-viewport{touch-action:pan-y}html.has-js.is-touch-driven .project-viewport{touch-action:pinch-zoom}.topbar a[aria-current=page]{color:var(--ink)}.topbar a[aria-current=page]{position:relative}.topbar a[aria-current=page]:after{content:"";position:absolute;left:0;right:0;bottom:11px;height:1px;background:var(--mark)}.brand[aria-current=page]:after{display:none}body.is-reduced-motion .scene-work{min-height:260svh}@media(max-width:980px){.scene-hero{min-height:100svh;min-height:100dvh}.scene-work{min-height:300svh;min-height:300dvh}.scene-contact{min-height:100svh;min-height:100dvh}.project-jump{top:30dvh;right:var(--page-gutter);bottom:auto;width:auto;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);border-right:1px solid var(--line);border-bottom:0}.project-jump button{grid-template-columns:1fr;gap:5px;min-width:0;min-height:54px;padding:8px;border-right:0;border-bottom:1px solid var(--line);border-left:1px solid var(--line)}.project-jump button:after{display:none}.project-jump button:hover,.project-jump button.is-active{padding-left:8px}.project-jump button b{overflow:hidden;font-size:clamp(7px,1.8vw,9px);text-overflow:ellipsis}.project-system{top:40dvh}}@media(max-width:620px){.hero-copy{bottom:27vh;font-size:16px;line-height:1.45}.hero-primary{bottom:16vh;min-width:0;width:calc(100vw - var(--page-gutter) * 2)}.project-jump{top:31dvh}.project-system{top:43dvh}.case-thesis{min-height:58vh;margin-top:34px}.case-study-visual{min-height:30vh}.case-plate-wide .case-study-visual{min-height:44vh}.case-story section{min-height:220px}}@media(max-height:520px)and (max-width:980px)and (orientation:landscape){.scene-hero{min-height:100dvh}.scene-work{min-height:300dvh}.hero-primary{left:var(--page-gutter);bottom:8vh;min-height:44px}.project-jump{top:auto;right:auto;bottom:max(8px,var(--safe-bottom));width:39vw}.project-jump button{min-height:42px}.project-system{top:max(56px,calc(var(--safe-top) + 50px))}}body.is-reduced-motion .hero-primary,body.is-reduced-motion .project-jump button{transition:none}@media(prefers-reduced-motion:reduce){.hero-primary,.project-jump button,.project-jump button:after{transition:none}}.work-sticky{background:var(--paper)}.work-intro{width:min(570px,34vw)}.work-intro>p:last-of-type{max-width:390px}.project-jump{width:min(26vw,374px);border-bottom-color:#11111138}.project-jump button{overflow:visible}.project-jump button:before{content:"";position:absolute;z-index:-1;left:100%;top:50%;width:clamp(24px,4vw,64px);height:1px;opacity:0;background:linear-gradient(90deg,var(--mark),transparent);transform:scaleX(.2);transform-origin:left;transition:opacity .24s ease,transform .38s cubic-bezier(.2,.72,.2,1)}.project-jump button.is-preview:before,.project-jump button:focus-visible:before{opacity:.78;transform:scaleX(1)}.project-jump button.is-preview:not(.is-active){padding-left:8px;color:var(--ink);background:#faf9f5ad}.project-system{left:44vw;right:max(18px,3vw);top:6.5vh;bottom:5.5vh}.project-card{width:min(600px,42vw);height:min(720px,calc(100% - 16px));padding:16px 16px 23px}.card-grip-a{left:0;top:40%;bottom:auto}.card-grip-b{left:0;top:22%}.case-panel{--case-source-x: 0px;--case-source-y: 0px;--case-source-scale-x: .42;--case-source-scale-y: .72;clip-path:inset(0 round 2px);transform:translate3d(var(--case-source-x),var(--case-source-y),0) scale(var(--case-source-scale-x),var(--case-source-scale-y));transform-origin:center;transition:opacity .22s ease,transform .46s cubic-bezier(.22,.76,.18,1),clip-path .46s cubic-bezier(.22,.76,.18,1);will-change:transform,opacity}.case-panel.is-open{clip-path:inset(0 round 2px);transform:translateZ(0) scale(1)}.case-panel.is-closing{clip-path:inset(0 round 2px);transform:translate3d(var(--case-source-x),var(--case-source-y),0) scale(var(--case-source-scale-x),var(--case-source-scale-y))}@media(max-width:980px){.work-intro{width:min(620px,75vw)}.project-jump{width:auto}.project-jump button:before{display:none}.project-system{left:13vw;right:1vw;top:40dvh;bottom:5vh}.project-card{width:min(510px,64vw);height:min(560px,calc(100% - 8px))}}@media(max-width:620px){.work-intro{width:100%}.work-intro>p:last-of-type{max-width:42ch}.project-jump{top:32.5dvh}.project-system{left:72px;right:0;top:44.5dvh;bottom:max(7dvh,calc(var(--safe-bottom) + 48px))}.project-card{width:min(500px,calc(100vw - 72px));height:calc(100% - 8px);padding:13px 13px 18px}}@media(min-width:621px)and (max-width:980px){.work-intro{width:min(620px,82vw)}.work-intro>p:last-of-type{display:none}.project-jump{top:max(214px,28dvh)}.project-system{left:38vw;top:max(262px,34dvh)}.project-card{width:min(500px,58vw)}}@media(max-height:520px)and (max-width:980px)and (orientation:landscape){.project-system{top:max(56px,calc(var(--safe-top) + 50px))}.project-jump{top:auto}.work-intro{width:41vw}.work-intro h2{font-size:clamp(30px,4.4vw,40px)}}body.is-reduced-motion .project-jump button:before,body.is-reduced-motion .case-panel{transition:none}body.is-reduced-motion .case-panel,body.is-reduced-motion .case-panel.is-closing{transform:none}@media(prefers-reduced-motion:reduce){.project-jump button:before,.case-panel{transition:none}.case-panel,.case-panel.is-closing{transform:none}}#webgl,body[data-scene=work] #webgl,body[data-scene=contact] #webgl{z-index:18}.scene-contact .contact-panel{z-index:14}.hero-stage{opacity:calc(1 - var(--hero-exit));will-change:opacity}.work-intro,.project-jump,.project-system{opacity:var(--work-presence);translate:0 var(--work-shift);will-change:transform,opacity}.scene-contact .contact-panel{opacity:var(--contact-enter);translate:0 var(--contact-shift);scale:var(--contact-scale);transform-origin:50% 55%;will-change:transform,opacity}body.is-reduced-motion .hero-stage,body.is-reduced-motion .work-intro,body.is-reduced-motion .project-jump,body.is-reduced-motion .project-system,body.is-reduced-motion .scene-contact .contact-panel{opacity:1;translate:none;scale:1;will-change:auto}@media(prefers-reduced-motion:reduce){.hero-stage,.work-intro,.project-jump,.project-system,.scene-contact .contact-panel{opacity:1;translate:none;scale:1;will-change:auto}}.hero-primary:focus-visible,.project-jump button:focus-visible,#caseNextBottom:focus-visible{outline-color:var(--ink)}.case-backdrop{position:fixed;z-index:84;inset:0;background:#11111157;opacity:0;pointer-events:none;transition:opacity .3s ease}body[data-case=present] .case-backdrop,body[data-case=open] .case-backdrop{opacity:1;pointer-events:auto;cursor:pointer}html.has-case-open .page-progress{opacity:0}body.is-reduced-motion .case-backdrop{transition:none}@media(prefers-reduced-motion:reduce){.case-backdrop{transition:none}}@media(max-width:620px)and (max-height:700px){.project-visual{min-height:56px}}@media(max-width:620px)and (max-height:600px){.project-visual{min-height:0}.project-card>p{-webkit-line-clamp:1}.project-card [data-case-trigger]{padding-top:8px}}.hero-stage{z-index:20}.hero-kicker,.hero-copy{text-shadow:0 0 1px var(--paper),0 0 4px var(--paper),0 0 8px var(--paper),0 0 14px var(--paper)}.topbar{background:linear-gradient(180deg,#f2f0ebf5 0,#f2f0ebf0 74%,#f2f0eb00)}.project-visual{flex-grow:1}.project-card>:not(.project-visual):not(.card-grip){transition:opacity .2s ease}.project-card[aria-hidden=true]:not(.is-target):not(.is-departing)>:not(.project-visual):not(.card-grip){opacity:0}.project-card.is-words-hidden>:not(.project-visual):not(.card-grip){opacity:0}.case-panel{transition:opacity .2s ease,transform .36s cubic-bezier(.22,.76,.18,1),clip-path .36s cubic-bezier(.22,.76,.18,1)}.skip-link,.brand,.topbar-work,.topbar-contact,.hero-primary,.project-card [data-case-trigger],.hero-kicker{font-size:12px}.project-meta,.project-jump button span,.project-jump button b,.case-toolbar>p,.case-copy>p:first-child,.case-facts dt,.case-thesis p,.case-plate figcaption,#caseNextBottom small{font-size:11px}.hero-copy{font-size:clamp(16px,1.2vw,19px)}.project-card>p{font-size:16px}.case-lede{font-size:clamp(17px,1.3vw,20px)}.case-facts dd,.case-provenance>p:first-child{font-size:15px}.case-links a{font-size:12px}.case-story section>p:last-child{font-size:17px}.contact-panel a{font-size:clamp(12px,1vw,14px)}@media(max-width:980px){.project-jump button b{font-size:11px}.project-card>p{font-size:15px}}@media(max-width:720px){.project-card>p{font-size:14px}}@media(max-width:620px){.brand,.topbar-work,.topbar-contact,.project-card [data-case-trigger],.hero-kicker{font-size:11px}.hero-copy{font-size:16px}.case-story section>p:last-child{font-size:16px}.contact-panel a{font-size:12px}}@media(max-width:359px){.brand,.topbar-work,.topbar-contact{font-size:10px}}@media(max-height:520px)and (max-width:980px)and (orientation:landscape){.hero-copy{font-size:14px}.project-card>p{font-size:12px}.project-card [data-case-trigger]{font-size:11px}}.hero-copy,.work-intro>p:last-of-type,.project-card>p,.contact-panel>.contact-copy,.case-lede,.case-story section>p:last-child,.case-provenance>p:first-child,.letter-status,.letter-sent p{text-wrap:pretty}.project-card [data-case-trigger]{margin-top:16px}@media(max-width:620px){.project-card [data-case-trigger]{margin-top:8px}}@media(min-width:621px)and (max-width:899px)and (min-height:521px){.card-grip-a{top:28%}.card-grip-b{top:12%}}@media(min-width:621px)and (max-width:899px)and (min-height:521px){.scene-contact .contact-panel{transform:translateY(9vh)}}@media(max-width:620px){.card-grip-a{left:26%;top:26%}.card-grip-b{left:31%;top:8%}}html.has-js:not(.is-static-fallback) .project-viewport{overflow:visible;-webkit-mask-image:none;mask-image:none}html.has-js:not(.is-static-fallback) .project-track,html.has-js:not(.is-static-fallback) .project-card{transform-style:flat}.project-jump-marker{display:none}html.has-js:not(.is-static-fallback) .project-jump-marker{position:absolute;z-index:0;left:0;top:0;display:block;width:100%;height:calc(100% / var(--jump-count, 3));background:var(--ink-raised);transform:translateY(calc(var(--jump-marker, 0) * 100%));pointer-events:none}html.has-js:not(.is-static-fallback) .project-jump button{z-index:1}html.has-js:not(.is-static-fallback) .project-jump button.is-active{background:transparent}@media(max-width:980px){html.has-js:not(.is-static-fallback) .project-jump-marker{width:calc(100% / var(--jump-count, 3));height:100%;transform:translate(calc(var(--jump-marker, 0) * 100%))}}.visual-sitemendo,.visual-hoodoo,.visual-nowhere{background:var(--paper-sunk)}.project-visual>img,.case-visual>img,.case-study-visual>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}.case-study-visual:after{box-shadow:inset 0 0 0 1px #11111114}.project-visual>img.is-composed,.case-visual>img.is-composed{object-fit:contain}@media(max-width:980px){.case-visual.case-visual{width:100%;height:auto;min-height:0;aspect-ratio:5 / 4;align-self:start}}@media(min-width:721px){.case-gallery{grid-template-rows:auto auto}.case-plate:not(.case-plate-wide) .case-study-visual{width:100%;aspect-ratio:var(--ratio, 16 / 9)}}@media(max-width:720px){.case-gallery .case-study-visual{width:100%;min-height:0;aspect-ratio:var(--ratio, 16 / 9)}}.contact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin:38px 0 0}.contact-panel .contact-email{margin-top:0;font-size:clamp(15px,1.35vw,20px);letter-spacing:.01em}.email-copy{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid rgba(250,249,245,.4);border-radius:999px;color:var(--paper-raised);background:transparent;cursor:pointer;font:500 11px/1 var(--font-mono);letter-spacing:.075em;opacity:calc(.2 + var(--contact-reveal, 1) * .8);transition:color .2s ease,background-color .2s ease}.email-copy:hover{color:var(--ink);background:var(--paper-raised)}.email-copy[hidden]{display:none}body.is-reduced-motion .email-copy{transition:none}@media(prefers-reduced-motion:reduce){.email-copy{transition:none}}@media(max-width:620px){.contact-actions{margin-top:28px}.contact-panel .contact-email{font-size:15px}.contact-panel{container-type:inline-size}.contact-panel h2{font-size:min(52px,14.4cqi)}}.letter{margin:34px 0 0}.letter[hidden],.letter-open[hidden],.letter-sent[hidden]{display:none}.letter-trap{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}.letter-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px 26px}.letter-field{display:grid;gap:6px}.letter-message{grid-column:1 / -1}.letter-field>span,.contact-direct{color:#faf9f59e;font:500 11px/1 var(--font-mono);letter-spacing:.075em;text-transform:uppercase}.letter-field input,.letter-field textarea{width:100%;min-height:44px;margin:0;padding:8px 0 9px;border:0;border-bottom:1px solid rgba(250,249,245,.4);border-radius:0;color:var(--paper-raised);background:transparent;font:400 16px/1.45 var(--font-sans);letter-spacing:0}.letter-field textarea{display:block;min-height:72px;resize:none}.letter-field input:focus,.letter-field textarea:focus{outline:none;border-bottom-color:var(--paper-raised);box-shadow:0 1px 0 var(--paper-raised)}.letter-field [aria-invalid=true]{border-bottom-style:dashed;border-bottom-color:var(--paper-raised)}.letter-send{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:26px}.letter-submit,.letter-open,.letter-again{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 22px;border:1px solid var(--paper-raised);border-radius:999px;color:var(--ink);background:var(--paper-raised);cursor:pointer;font:500 12px/1 var(--font-mono);letter-spacing:.075em}.letter-open{margin-top:30px}.letter-cancel{min-height:48px;padding:0 16px;border:1px solid rgba(250,249,245,.4);border-radius:999px;color:var(--paper-raised);background:transparent;cursor:pointer;font:500 11px/1 var(--font-mono);letter-spacing:.075em}.letter-submit:focus-visible,.letter-open:focus-visible,.letter-again:focus-visible,.letter-cancel:focus-visible{outline:2px solid var(--paper-raised);outline-offset:3px}.letter-status{flex:1 1 12em;margin:0;color:#faf9f5b8;font:400 14px/1.45 var(--font-sans)}.letter.is-sending .letter-submit{cursor:progress;opacity:.55}.letter.is-sealed .letter-fields{visibility:hidden}.letter-sent{margin-top:4px}.letter-sent p{margin:0 0 18px;color:var(--paper-raised);font:400 18px/1.45 var(--font-sans)}.letter.is-sent .letter-fields,.letter.is-sent .letter-send{display:none}.contact-actions{margin-top:26px;gap:10px 16px}.contact-panel .contact-email{font-size:clamp(13px,1.05vw,15px)}.contact-direct{display:none}.letter:not([hidden])~.contact-actions .contact-direct{display:inline}.letter-envelope{position:fixed;z-index:16;top:0;left:0;box-sizing:border-box;border:1px solid rgba(17,17,17,.5);border-radius:2px;background:linear-gradient(to top right,transparent calc(50% - 1px),rgba(17,17,17,.55) 50%,transparent calc(50% + 1px)) 0 0 / 50% 56% no-repeat,linear-gradient(to top left,transparent calc(50% - 1px),rgba(17,17,17,.55) 50%,transparent calc(50% + 1px)) 100% 0 / 50% 56% no-repeat,var(--paper-raised);box-shadow:0 10px 24px #11111138;transform-origin:0 0;pointer-events:none;overflow:hidden}.letter-envelope[hidden]{display:none}.letter-envelope:not([hidden]){animation:envelope-in .16s ease-out}@keyframes envelope-in{0%{opacity:0}}.letter-envelope span{position:absolute;right:10%;bottom:12%;color:var(--ink);font:500 10px/1 var(--font-mono);letter-spacing:.075em}.envelope-grip{position:absolute;left:0;width:1px;height:1px}.envelope-grip-a{top:62%}.envelope-grip-b{top:30%}.letter-envelope.is-aloft .envelope-grip-a{left:30%;top:100%}.letter-envelope.is-aloft .envelope-grip-b{left:70%;top:100%}.envelope-from{position:absolute;right:10%;bottom:calc(12% + 16px);max-width:76%;overflow:hidden;color:var(--ink-soft);font:500 9px/1 var(--font-mono);letter-spacing:.075em;white-space:nowrap}.envelope-stamp{position:absolute;top:9%;right:6%;width:17%;aspect-ratio:5 / 6;border:1px dashed rgba(17,17,17,.5);background:var(--paper) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 128 88'%3E%3Cg fill='none' stroke='%23111' stroke-width='7' stroke-linecap='round'%3E%3Cpath d='M30 40C13 33 7 44 7 72'/%3E%3Cpath d='M95 47c12-4 15 7 15 30'/%3E%3Cpath d='M39 53c-8 0-9 9-9 27'/%3E%3Cpath d='M80 56c3 3 4 11 4 26'/%3E%3Cpath d='M98 40c17-7 23 4 23 32'/%3E%3Cpath d='M33 47c-12-4-15 7-15 30'/%3E%3Cpath d='M89 53c8 0 9 9 9 27'/%3E%3Cpath d='M48 56c-3 3-4 11-4 26'/%3E%3C/g%3E%3Cpath d='M24 38C24 18 41 7 64 7s40 11 40 31c0 14-16 21-40 21S24 52 24 38Z' fill='%23FAF9F5' stroke='%23111' stroke-width='3'/%3E%3Ccircle cx='50' cy='35' r='5.5' fill='%23111'/%3E%3C/svg%3E") 50% 54% / 82% auto no-repeat}.envelope-postmark{position:absolute;top:7%;right:13%;width:34%;aspect-ratio:96 / 40;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 40' fill='none' stroke='%23111' stroke-width='1.6' stroke-linecap='round'%3E%3Ccircle cx='20' cy='20' r='15'/%3E%3Ccircle cx='20' cy='20' r='10.5' stroke-width='1'/%3E%3Cpath d='M38 10c6-4 10 4 16 0s10 4 16 0 10 4 16 0 8 3 9 2M38 20c6-4 10 4 16 0s10 4 16 0 10 4 16 0 8 3 9 2M38 30c6-4 10 4 16 0s10 4 16 0 10 4 16 0 8 3 9 2'/%3E%3C/svg%3E") 0 0 / 100% 100% no-repeat;opacity:0;transform:scale(1.5) rotate(-13deg);transform-origin:80% 50%}.letter-envelope.is-franked .envelope-postmark{opacity:.78;transform:rotate(-7deg);transition:transform .14s cubic-bezier(.2,.9,.3,1.3),opacity .05s linear}@media(min-width:900px)and (min-height:760px){.letter-open,.letter-cancel{display:none}.scene-contact{padding-top:7vh;padding-bottom:7vh}.scene-contact .contact-panel{padding:clamp(28px,3.4vw,48px)}.scene-contact .contact-panel:before{margin-bottom:22px}.scene-contact .contact-panel h2{font-size:min(96px,6.6vw,10vh)}.scene-contact .contact-panel>.contact-copy{margin-top:22px}.letter{margin-top:26px}.letter-fields{gap:16px 26px}.letter-send{margin-top:20px}.contact-actions{margin-top:18px}}@media(max-width:899px),(max-height:759px){.letter{display:none}.contact-panel.is-composing .letter{display:block;margin-top:0}.contact-panel.is-composing h2,.contact-panel.is-composing>.contact-copy,.contact-panel.is-composing .letter-open,.contact-panel.is-composing>.contact-actions{display:none}.contact-panel.is-composing .letter.is-failed~.contact-actions{display:flex}.contact-panel.is-composing:has(.letter.is-sent) h2{display:block}.letter-open{margin-top:22px}.letter:not([hidden])~.contact-actions .contact-direct{display:none}.contact-actions{margin-top:10px;gap:8px 12px}.contact-panel .contact-email{font-size:13px}.email-copy{min-height:36px;padding:0 12px}.letter-fields{grid-template-columns:1fr;gap:4px}.letter-field{grid-template-columns:5.6em minmax(0,1fr);align-items:baseline;gap:0 10px}.letter-field textarea{height:60px;min-height:60px}.letter-send{margin-top:16px}}@media(min-width:981px){.work-sticky{padding-top:max(11vh,104px)}.project-system{top:max(6.5vh,102px)}.card-grip-a{top:36%}.card-grip-b{top:19%}}@media(min-width:981px)and (max-height:720px){.work-sticky{padding-top:104px}.project-visual{min-height:120px}}@media(min-width:981px)and (max-height:600px){.work-intro>p:last-of-type{display:none}.project-visual{min-height:0}.project-card h3{font-size:clamp(40px,4vw,56px)}.project-card>p{display:-webkit-box;overflow:hidden;-webkit-line-clamp:1;-webkit-box-orient:vertical}}@media(min-width:621px)and (max-width:980px)and (min-height:521px){.work-sticky{padding-top:max(104px,8vh)}}@media(min-width:900px)and (min-height:521px),(min-width:981px){html.has-js .scene-contact{padding-top:92px;padding-bottom:0;overflow-y:clip}}@media(min-width:900px)and (min-height:760px)and (max-height:860px),(min-width:900px)and (min-height:521px)and (max-height:640px),(min-width:981px)and (max-height:520px){html.has-js .scene-contact .contact-panel{padding-block:32px}}@media(min-width:900px)and (max-height:700px){html.has-js #contactPanel{padding-block:8px}html.has-js #contactPanel>.contact-copy{margin-top:12px}html.has-js #contactPanel .letter-open{height:150px;margin-block:16px}}:root{--ui: 1}@media(min-width:1800px)and (min-height:1000px){:root{--ui: 1.2}}@media(min-width:2200px)and (min-height:1220px){:root{--ui: 1.4}}@media(min-width:2700px)and (min-height:1460px){:root{--ui: 1.7}}@media(min-width:3400px)and (min-height:1880px){:root{--ui: 2.1}}@media(min-width:1800px)and (min-height:1000px){:root{--page-gutter: max(clamp(20px, 4.8vw, calc(76px * var(--ui))), var(--safe-left), var(--safe-right))}.topbar{padding-block:calc(24px * var(--ui))}.topbar nav{gap:calc(32px * var(--ui))}.brand,.topbar-work,.topbar-contact{min-height:calc(44px * var(--ui));font-size:calc(12px * var(--ui))}.brand{gap:calc(11px * var(--ui))}.brand span{width:calc(10px * var(--ui));height:calc(10px * var(--ui))}.topbar a[aria-current=page]:after{bottom:calc(11px * var(--ui))}.work-sticky{padding-top:max(11vh,calc(104px * var(--ui)))}.project-system{top:max(6.5vh,calc(102px * var(--ui)))}html.has-js .scene-contact{padding-top:calc(92px * var(--ui))}.hero-kicker{font-size:calc(12px * var(--ui))}.hero-title-rig{width:min(calc(1120px * var(--ui)),86vw)}.hero-title-rig h1{font-size:clamp(76px,10.2vw,calc(172px * var(--ui)))}.hero-copy{width:min(calc(570px * var(--ui)),calc(100vw - var(--page-gutter) * 2));max-width:calc(610px * var(--ui));font-size:clamp(16px,1.2vw,calc(19px * var(--ui)))}.hero-primary{gap:calc(46px * var(--ui));min-width:calc(310px * var(--ui));min-height:calc(54px * var(--ui));padding:0 calc(18px * var(--ui));font-size:calc(12px * var(--ui))}.work-intro{width:min(calc(570px * var(--ui)),34vw)}.work-intro h2{font-size:clamp(48px,5.35vw,calc(86px * var(--ui)))}.work-intro>p:last-of-type{width:min(calc(520px * var(--ui)),100%);max-width:calc(390px * var(--ui));font-size:calc(16px * var(--ui))}.project-jump{width:min(26vw,calc(374px * var(--ui)))}.project-jump button{min-height:calc(48px * var(--ui))}.project-jump button span,.project-jump button b{font-size:calc(11px * var(--ui))}.project-card{width:min(calc(600px * var(--ui)),42vw);height:min(calc(720px * var(--ui)),calc(100% - 16px));padding:calc(16px * var(--ui)) calc(16px * var(--ui)) calc(23px * var(--ui))}.project-meta{margin-top:calc(17px * var(--ui));font-size:calc(11px * var(--ui))}.project-card h3{margin-top:calc(18px * var(--ui));font-size:clamp(54px,4.8vw,calc(78px * var(--ui)))}.project-card>p{max-width:calc(470px * var(--ui));margin-top:calc(13px * var(--ui));font-size:calc(16px * var(--ui))}.project-card [data-case-trigger]{min-height:calc(44px * var(--ui));margin-top:calc(16px * var(--ui));font-size:calc(12px * var(--ui))}.scene-contact .contact-panel{width:min(calc(820px * var(--ui)),78vw);padding:clamp(28px,3.4vw,calc(48px * var(--ui)))}.scene-contact .contact-panel:before{width:calc(72px * var(--ui));height:calc(4px * var(--ui));margin-bottom:calc(22px * var(--ui))}.scene-contact .contact-panel h2{font-size:min(calc(96px * var(--ui)),6.6vw,10vh)}.scene-contact .contact-panel>.contact-copy{width:min(calc(540px * var(--ui)),100%);margin-top:calc(22px * var(--ui));font-size:clamp(15px,1.15vw,calc(18px * var(--ui)))}.letter{margin-top:calc(26px * var(--ui))}.letter-fields{gap:calc(16px * var(--ui)) calc(26px * var(--ui))}.letter-field{gap:calc(6px * var(--ui))}.letter-field>span,.contact-direct{font-size:calc(11px * var(--ui))}.letter-field input,.letter-field textarea{min-height:calc(44px * var(--ui));font-size:calc(16px * var(--ui))}.letter-field textarea{min-height:calc(72px * var(--ui))}.letter-send{gap:calc(12px * var(--ui)) calc(18px * var(--ui));margin-top:calc(20px * var(--ui))}.letter-submit,.letter-open,.letter-again{gap:calc(10px * var(--ui));min-height:calc(48px * var(--ui));padding:0 calc(22px * var(--ui));font-size:calc(12px * var(--ui))}.letter-cancel{min-height:calc(48px * var(--ui));padding:0 calc(16px * var(--ui));font-size:calc(11px * var(--ui))}.contact-actions{gap:calc(12px * var(--ui)) calc(20px * var(--ui));margin-top:calc(18px * var(--ui))}.letter-status{font-size:calc(14px * var(--ui))}.letter-sent p{font-size:calc(18px * var(--ui))}.contact-panel .contact-email{min-height:calc(44px * var(--ui));font-size:calc(15px * var(--ui))}.email-copy{min-height:calc(44px * var(--ui));padding:0 calc(16px * var(--ui));font-size:calc(11px * var(--ui))}.case-panel{inset:12px 12px 12px clamp(128px,12vw,calc(210px * var(--ui)))}.case-toolbar{min-height:calc(68px * var(--ui))}.case-toolbar-actions{gap:calc(7px * var(--ui))}.case-toolbar button{width:calc(44px * var(--ui));height:calc(44px * var(--ui));font-size:calc(17px * var(--ui))}#caseClose{margin-left:calc(7px * var(--ui));font-size:calc(24px * var(--ui))}.case-scroll{padding:calc(92px * var(--ui)) clamp(22px,3.4vw,calc(58px * var(--ui))) calc(34px * var(--ui))}.case-hero{min-height:min(calc(690px * var(--ui)),calc(100dvh - 128px * var(--ui)))}.case-visual{min-height:calc(460px * var(--ui))}.case-copy h3{font-size:clamp(58px,6.8vw,calc(118px * var(--ui)))}.case-facts{gap:calc(16px * var(--ui)) calc(32px * var(--ui));margin-top:calc(40px * var(--ui))}.case-thesis{min-height:clamp(420px,60vh,calc(680px * var(--ui)))}.case-thesis blockquote{font-size:clamp(42px,5.5vw,calc(94px * var(--ui)))}.case-story h4{font-size:clamp(30px,2.9vw,calc(48px * var(--ui)))}.case-story section{min-height:clamp(330px,42vh,calc(480px * var(--ui)))}.case-links a,.case-footer button{min-height:calc(44px * var(--ui))}#caseNextBottom{min-width:clamp(250px,28vw,calc(430px * var(--ui)));min-height:calc(132px * var(--ui));padding:calc(22px * var(--ui)) calc(24px * var(--ui))}#caseNextBottom span{font-size:clamp(24px,2.8vw,calc(44px * var(--ui)))}#caseNextBottom b{font-size:calc(26px * var(--ui))}.case-toolbar>p,.case-copy>p:first-child,.case-facts dt,.case-thesis p,.case-plate figcaption,#caseNextBottom small{font-size:calc(11px * var(--ui))}.case-lede{font-size:clamp(17px,1.3vw,calc(20px * var(--ui)))}.case-facts dd,.case-provenance>p:first-child{font-size:calc(15px * var(--ui))}.case-links a{font-size:calc(12px * var(--ui))}.case-story section>p:last-child{font-size:calc(17px * var(--ui))}}@media(min-width:981px)and (max-aspect-ratio:3/2){.work-intro{width:min(calc(580px * var(--ui)),30vw)}.project-system{left:50vw}}@media(min-width:981px)and (max-aspect-ratio:1/1){.project-system{max-height:calc(748px * var(--ui))}}@media(max-height:520px)and (max-width:980px)and (orientation:landscape){.scene-contact{place-items:start center;padding-top:max(52px,calc(var(--safe-top) + 46px));padding-bottom:max(8px,var(--safe-bottom))}.scene-contact .contact-panel{width:min(820px,78vw);margin-block:auto;padding:18px 22px 20px;transform:translate(9vw)}.scene-contact .contact-panel:before{margin-bottom:14px}.scene-contact .contact-panel h2{font-size:min(46px,11vh)}.scene-contact .contact-panel>.contact-copy{margin-top:12px;font-size:14px;line-height:1.45}.letter-open{margin-top:14px}.contact-actions{margin-top:8px}.case-hero{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}.case-visual{min-height:250px}.case-copy{min-height:0}.project-card h3{font-size:clamp(30px,4.9vw,42px)}.project-card>p{font-size:12px;line-height:1.3}}@media(max-width:620px)and (max-height:520px)and (orientation:landscape){.project-system{left:45vw;right:max(10px,var(--safe-right));bottom:max(50px,calc(var(--safe-bottom) + 44px))}.project-card{width:min(49vw,430px);height:calc(100% - 2px);padding:8px 9px 10px}.card-grip-a{left:0;top:52%}.card-grip-b{left:0;top:33%}.work-intro>p:last-of-type{display:none}}@media(max-width:620px)and (max-height:600px)and (orientation:portrait){.scene-contact .contact-panel{padding:20px 18px 22px;transform:translateY(18dvh)}.scene-contact .contact-panel:before{margin-bottom:14px}.scene-contact .contact-panel>.contact-copy{margin-top:14px;font-size:15px;line-height:1.45}.letter-open{margin-top:14px}.contact-actions{margin-top:8px}}@media(pointer:coarse){.topbar-work,.topbar-contact{padding-inline:6px;margin-inline:-6px}.topbar a[aria-current=page]:after{left:6px;right:6px}.email-copy{position:relative}.email-copy:after{content:"";position:absolute;inset:-4px 0}}.work-intro h2 span{font:500 11px/1.2 var(--font-mono);letter-spacing:.08em}html.has-js:not(.is-static-fallback) .hero-kicker{top:16dvh}html.has-js:not(.is-static-fallback) .hero-title-rig{top:23dvh;width:calc(100vw - var(--page-gutter) * 2)}html.has-js:not(.is-static-fallback) .hero-title-rig h1{font-size:clamp(76px,11.5vw,190px);line-height:.9;letter-spacing:-.055em;white-space:nowrap}html.has-js:not(.is-static-fallback) .hero-title-rig h1 em{margin-left:10vw;font-size:1.16em}html.has-js:not(.is-static-fallback) .hero-copy{bottom:9dvh;width:min(400px,34vw);font-size:clamp(15px,1.15vw,18px)}html.has-js:not(.is-static-fallback) .hero-primary{left:auto;right:var(--page-gutter);bottom:9dvh;min-width:270px;width:auto;padding-inline:0;color:var(--ink);background:transparent;border-bottom:1px solid var(--ink)}html.has-js:not(.is-static-fallback) .hero-primary b{color:var(--ink)}html.has-js:not(.is-static-fallback) .hero-primary:hover{background:transparent;transform:translateY(-3px)}html.has-js:not(.is-static-fallback) .work-sticky{padding-top:max(94px,11dvh)}html.has-js:not(.is-static-fallback) .work-intro{width:calc(100vw - var(--page-gutter) * 2)}html.has-js:not(.is-static-fallback) .work-intro h2{display:flex;gap:24px;align-items:baseline;font:500 12px/1.2 var(--font-mono);letter-spacing:.1em;text-transform:uppercase}html.has-js:not(.is-static-fallback) .work-intro h2 span{color:var(--ink-soft)}html.has-js:not(.is-static-fallback) .work-intro>p:last-of-type{display:none}html.has-js:not(.is-static-fallback) .project-system{left:27vw;right:var(--page-gutter);top:max(138px,16dvh);bottom:5dvh;max-height:none}html.has-js:not(.is-static-fallback) .project-viewport{inset:0}html.has-js:not(.is-static-fallback) .project-track{transform:translate(var(--arrival-x, 0px)) rotate(var(--arrival-turn, 0deg));transform-origin:0 48%}html.has-js:not(.is-static-fallback) .project-card{width:100%;height:calc(100% - 16px);padding:10px 10px 14px;border-radius:2px;box-shadow:0 10px 26px #1111111a}html.has-js:not(.is-static-fallback) .project-card:is(.is-active,.is-held,.is-lifting){box-shadow:0 14px 34px #11111121}html.has-js:not(.is-static-fallback) .project-card:before{display:none}html.has-js:not(.is-static-fallback) .project-visual{flex:1 1 0;height:auto;min-height:0;border-radius:0}html.has-js:not(.is-static-fallback) .project-meta{margin-top:12px}html.has-js:not(.is-static-fallback) .project-card h3{margin-top:8px;font-size:clamp(36px,3.6vw,62px);letter-spacing:-.045em}html.has-js:not(.is-static-fallback) .project-card>p{margin-top:7px;max-width:none;font-size:15px;line-height:1.35}html.has-js:not(.is-static-fallback) .project-card [data-case-trigger]{min-height:44px;margin-top:12px;padding-top:10px}html.has-js:not(.is-static-fallback) .project-jump{width:19vw;bottom:6dvh}@media(min-width:621px)and (max-width:980px)and (min-height:521px){html.has-js:not(.is-static-fallback) .hero-title-rig{top:25dvh}html.has-js:not(.is-static-fallback) .hero-title-rig h1{font-size:11.2vw}html.has-js:not(.is-static-fallback) .hero-copy{bottom:10dvh;width:45vw}html.has-js:not(.is-static-fallback) .hero-primary{min-width:220px;bottom:10dvh}html.has-js:not(.is-static-fallback) .project-jump{top:17dvh;bottom:auto;width:auto}html.has-js:not(.is-static-fallback) .project-system{left:27vw;top:29dvh;bottom:5dvh}}@media(max-width:620px)and (orientation:portrait){html.has-js:not(.is-static-fallback) .hero-kicker{top:max(15dvh,78px)}html.has-js:not(.is-static-fallback) .hero-title-rig{top:23dvh}html.has-js:not(.is-static-fallback) .hero-title-rig h1{font-size:12.1vw;line-height:.98}html.has-js:not(.is-static-fallback) .hero-title-rig h1 em{margin-left:0;font-size:1.9em}html.has-js:not(.is-static-fallback) .hero-copy{bottom:22dvh;width:calc(100vw - var(--page-gutter) * 2);font-size:16px}html.has-js:not(.is-static-fallback) .hero-primary{left:var(--page-gutter);right:var(--page-gutter);bottom:12dvh;min-width:0}html.has-js:not(.is-static-fallback) .work-sticky{padding-top:max(72px,10dvh)}html.has-js:not(.is-static-fallback) .work-intro h2{justify-content:space-between;font-size:11px}html.has-js:not(.is-static-fallback) .project-jump{top:max(108px,15dvh);bottom:auto;width:auto}html.has-js:not(.is-static-fallback) .project-jump button{min-height:44px}html.has-js:not(.is-static-fallback) .project-system{left:var(--page-gutter);right:var(--page-gutter);top:36dvh;bottom:max(4dvh,24px)}html.has-js:not(.is-static-fallback) .project-card{width:100%;padding:8px 8px 10px}html.has-js:not(.is-static-fallback) .project-meta{margin-top:10px}html.has-js:not(.is-static-fallback) .project-card h3{font-size:clamp(30px,9.4vw,48px);margin-top:6px}html.has-js:not(.is-static-fallback) .project-card>p{font-size:13px;margin-top:6px;-webkit-line-clamp:2}html.has-js:not(.is-static-fallback) .project-card [data-case-trigger]{margin-top:8px}html.has-js:not(.is-static-fallback) .card-grip-a{left:42%;top:0}html.has-js:not(.is-static-fallback) .card-grip-b{left:24%;top:0}}@media(max-height:600px)and (orientation:portrait){html.has-js:not(.is-static-fallback) .hero-title-rig{top:24dvh}html.has-js:not(.is-static-fallback) .hero-title-rig h1 em{font-size:1.55em}html.has-js:not(.is-static-fallback) .hero-copy{bottom:20dvh;font-size:14px}html.has-js:not(.is-static-fallback) .hero-primary{bottom:7dvh}html.has-js:not(.is-static-fallback) .project-system{top:42dvh;bottom:12px}html.has-js:not(.is-static-fallback) .project-card h3{font-size:28px}html.has-js:not(.is-static-fallback) .project-card>p{font-size:12px}}@media(max-height:520px)and (orientation:landscape){html.has-js:not(.is-static-fallback) .hero-kicker{top:17dvh}html.has-js:not(.is-static-fallback) .hero-title-rig{top:30dvh}html.has-js:not(.is-static-fallback) .hero-title-rig h1{font-size:8.2vw}html.has-js:not(.is-static-fallback) .hero-title-rig h1 em{margin-left:0;font-size:1em}html.has-js:not(.is-static-fallback) .hero-copy{bottom:24dvh;left:60vw;width:35vw;font-size:13px}html.has-js:not(.is-static-fallback) .hero-primary{bottom:7dvh;min-width:0;width:35vw}html.has-js:not(.is-static-fallback) .work-sticky{padding-top:54px}html.has-js:not(.is-static-fallback) .project-system{top:64px;left:36vw;bottom:12px}html.has-js:not(.is-static-fallback) .project-jump{top:auto;bottom:18px;width:24vw}html.has-js:not(.is-static-fallback) .project-card h3{font-size:28px}html.has-js:not(.is-static-fallback) .project-card>p{display:none}html.has-js:not(.is-static-fallback) .project-card [data-case-trigger]{margin-top:6px}html.has-js:not(.is-static-fallback) .card-grip-a{left:0;top:40%}html.has-js:not(.is-static-fallback) .card-grip-b{left:0;top:22%}}html.has-js:not(.is-static-fallback) body.is-reduced-motion .project-track{transform:none}@media(prefers-reduced-motion:reduce){html.has-js:not(.is-static-fallback) .project-track{transform:none}}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]){inset:12px;background:var(--case-ground);border:0;--case-gutter: clamp(24px, 4.8vw, 80px)}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-toolbar{min-height:64px;padding-inline:24px;background:var(--case-ground);border-bottom:1px solid rgba(17,17,17,.2);-webkit-backdrop-filter:none;backdrop-filter:none}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-toolbar>p{color:var(--ink)}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-toolbar button{width:44px;height:44px;color:var(--ink);border-color:#1111114d}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-toolbar button:is(:hover,:focus-visible){color:var(--case-ground);background:var(--ink)}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-scroll{padding:64px 0 0;background:var(--paper)}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-hero{position:relative;min-height:calc(100dvh - 88px);display:grid;grid-template-columns:.85fr 1.15fr;gap:3vw;padding:190px var(--case-gutter) 44px;background:var(--case-ground)}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-copy{order:0;min-height:0;padding:0;justify-content:flex-end}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-copy>p:first-child{position:absolute;top:26px;left:var(--case-gutter);color:var(--ink);font-size:11px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-copy h3{position:absolute;left:var(--case-gutter);top:58px;width:calc(100% - var(--case-gutter) * 2);font-size:clamp(70px,11.4vw,185px);line-height:.9;letter-spacing:-.06em}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-visual{order:1;align-self:stretch;height:auto;min-height:340px;aspect-ratio:auto;border:0;border-radius:0;background:var(--case-ground);box-shadow:none}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-visual:after{display:none}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-visual>img{object-fit:contain}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-lede{max-width:16ch;margin:26px 0 0;color:var(--ink);font-size:clamp(28px,2.6vw,42px);line-height:1.08;letter-spacing:-.035em}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-facts{grid-template-columns:60px 1fr;gap:20px;margin-top:30px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-facts dt{color:var(--ink);font-size:10px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-facts dd{font-size:14px;color:var(--ink)}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-provenance{margin-top:22px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-provenance>p:first-child{color:var(--ink);font-size:13px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-links{margin-top:8px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-links a{font-size:12px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-thesis{margin:0;padding:clamp(38px,6vw,88px) var(--case-gutter);min-height:0;grid-template-columns:.55fr 1fr;gap:5vw;align-items:center}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-thesis>div{min-height:0;gap:24px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-thesis blockquote{max-width:17ch;font-size:clamp(36px,4.7vw,70px)}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-thesis blockquote:before{display:none}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-thesis p{font-size:11px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-gallery{display:block;margin:0}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-plate{display:grid;grid-template-columns:.68fr 1.32fr;grid-template-rows:auto;grid-column:auto;grid-row:auto;gap:clamp(24px,4vw,64px);padding:clamp(48px,7vw,104px) var(--case-gutter);margin:0;border:0;border-bottom:1px solid var(--line);background:var(--paper);align-items:center}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-plate:nth-child(2){background:var(--paper-raised)}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-plate figcaption{order:-1;display:block;color:var(--ink);padding:0;border:0;text-transform:none}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-plate figcaption b{display:block;margin-bottom:30px;font:500 11px/1.3 var(--font-mono);letter-spacing:.08em}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-plate figcaption>span{display:block;max-width:12ch;font:800 clamp(32px,3.4vw,52px)/.98 var(--font-display);letter-spacing:-.045em}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-step-description{max-width:35ch;margin:24px 0 0;color:var(--ink-soft);font:400 16px/1.6 var(--font-sans);letter-spacing:0}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-plate .case-study-visual{width:100%;height:auto;min-height:0;aspect-ratio:var(--ratio);border-radius:0;overflow:hidden}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-study-visual>img{object-fit:contain}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-plate[data-layout=wide]{grid-template-columns:1fr;gap:32px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-plate[data-layout=wide] figcaption{order:1;display:grid;grid-template-columns:.45fr 1fr 1fr;gap:32px;align-items:start}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-plate[data-layout=wide] figcaption b{margin:4px 0 0}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-plate[data-layout=wide] .case-step-description{margin:0}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-story{margin:0;border:0}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-story section{min-height:0;padding:48px 32px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-story h4{font-size:28px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-story section>p:last-child{font-size:15px;line-height:1.6}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-footer{padding:40px var(--case-gutter);background:var(--case-ground)}@media(max-width:980px){#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-hero{padding-top:150px;grid-template-columns:1fr 1fr}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-copy h3{top:62px;font-size:11vw}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-lede{font-size:28px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-visual{min-height:320px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-plate{grid-template-columns:.8fr 1.2fr}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-step-description{font-size:15px}}@media(max-width:720px){#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]){inset:max(6px,var(--safe-top)) 6px max(6px,var(--safe-bottom));--case-gutter: 20px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-toolbar{padding-inline:14px;min-height:60px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-toolbar>p{font-size:10px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-scroll{padding-top:60px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-hero{display:flex;flex-direction:column;min-height:0;gap:0;padding:126px var(--case-gutter) 36px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-copy h3{font-size:11.9vw;top:60px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-copy>p:first-child{top:28px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-visual{order:0;flex:none;width:100%;height:min(70vw,330px);min-height:0}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-copy{order:1}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-lede{max-width:20ch;margin-top:16px;font-size:30px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-facts{margin-top:24px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-facts div{display:block}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-facts dd{margin-top:8px;font-size:13px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-thesis{grid-template-columns:1fr;gap:30px;padding-block:42px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-thesis blockquote{font-size:38px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-plate{grid-template-columns:1fr;gap:30px;padding-block:44px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-plate figcaption b{margin-bottom:18px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-plate figcaption>span{max-width:14ch;font-size:36px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-step-description{max-width:40ch;margin-top:18px;font-size:16px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-plate[data-layout=wide] figcaption{display:block}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-plate[data-layout=wide] figcaption b{margin-bottom:18px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-plate[data-layout=wide] .case-step-description{margin-top:18px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-story{grid-template-columns:1fr}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-story section{padding:32px var(--case-gutter)}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-footer{padding-block:26px}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) #caseNextBottom{width:100%;min-width:0}#casePanel:is([data-project=sitemendo],[data-project=hoodoo],[data-project=nowhere]) .case-footer>div{width:100%}}#casePanel[data-project=hoodoo] .case-hero{grid-template-columns:.7fr 1.3fr;padding-top:clamp(190px,19vw,275px)}#casePanel[data-project=hoodoo] .case-copy h3{font-size:clamp(100px,17vw,245px);letter-spacing:-.065em}#casePanel[data-project=hoodoo] .case-visual{min-height:380px}#casePanel[data-project=hoodoo] .case-thesis{background:#292a27}#casePanel[data-project=hoodoo] #caseThesisLabel{color:#d4caba}#casePanel[data-project=hoodoo] .case-plate{background:#eceae4}#casePanel[data-project=hoodoo] .case-plate:nth-child(2){background:#f5f3ee}#casePanel[data-project=hoodoo] .case-plate figcaption b{color:#675947}#casePanel[data-project=hoodoo] .case-plate[data-layout=wide]{padding-top:0}#casePanel[data-project=hoodoo] .case-plate[data-layout=wide] .case-study-visual{width:calc(100% + var(--case-gutter) * 2);margin-inline:calc(var(--case-gutter) * -1)}#casePanel[data-project=hoodoo] .case-plate[data-layout=wide] figcaption>span{max-width:13ch}@media(max-width:980px){#casePanel[data-project=hoodoo] .case-hero{grid-template-columns:.8fr 1.2fr}}@media(max-width:720px){#casePanel[data-project=hoodoo] .case-hero{padding-top:150px}#casePanel[data-project=hoodoo] .case-copy h3{font-size:18vw}#casePanel[data-project=hoodoo] .case-visual{min-height:0;height:min(80vw,370px)}#casePanel[data-project=hoodoo] .case-plate[data-layout=wide]{gap:28px}}#casePanel[data-project=nowhere] .case-hero{padding-top:clamp(190px,17vw,245px)}#casePanel[data-project=nowhere] .case-copy h3{font-size:clamp(90px,14.8vw,215px);letter-spacing:-.065em}#casePanel[data-project=nowhere] .case-links a{padding:13px 18px;border:1px solid var(--ink);border-radius:30px;font-size:13px}#casePanel[data-project=nowhere] .case-thesis{background:#20241d}#casePanel[data-project=nowhere] #caseThesisLabel{color:#b3fc4a}#casePanel[data-project=nowhere] .case-thesis blockquote{max-width:16ch}#casePanel[data-project=nowhere] .case-plate figcaption b{color:#453}#casePanel[data-project=nowhere] .case-plate[data-layout=wide]{padding-top:0}#casePanel[data-project=nowhere] .case-plate[data-layout=wide] .case-study-visual{width:calc(100% + var(--case-gutter) * 2);margin-inline:calc(var(--case-gutter) * -1)}#casePanel[data-project=nowhere] .case-plate:nth-child(3){background:#edf4e5}@media(max-width:720px){#casePanel[data-project=nowhere] .case-hero{padding-top:138px}#casePanel[data-project=nowhere] .case-copy h3{font-size:15.2vw}#casePanel[data-project=nowhere] .case-thesis blockquote{font-size:42px}}#contactPanel{padding:24px 0;border:0;border-radius:0;color:var(--ink);background:transparent;box-shadow:none;text-align:left}#contactPanel:before{display:none}#contactPanel h2{color:var(--ink);font-size:clamp(60px,7.4vw,112px);line-height:.94;letter-spacing:-.055em}#contactPanel h2 em{color:var(--ink);-webkit-text-stroke:0;font-style:normal}#contactPanel>.contact-copy{color:var(--ink-soft);margin:22px 0 0;font-size:17px;line-height:1.5}#contactPanel .letter-open{position:relative;display:flex;align-items:flex-end;justify-content:space-between;width:min(440px,85%);height:190px;margin:36px 0 36px 8%;padding:26px;border:1px solid #c8c1b4;border-radius:2px;color:var(--ink);background:#eae3d5;box-shadow:0 16px 26px -16px #32281859;transform:rotate(-4deg);transition:transform .3s ease,box-shadow .3s ease;isolation:isolate}#contactPanel .letter-open:before{content:"";position:absolute;inset:-1px -1px auto;height:65%;background:#f4eee2;clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:top;transition:transform .24s ease;z-index:-1}#contactPanel .letter-open:hover{transform:rotate(-1deg) translateY(-5px);box-shadow:0 22px 30px -18px #32281866}#contactPanel .letter-open:focus-visible{outline:2px solid var(--ink);outline-offset:8px}#contactPanel .letter-stamp{position:absolute;right:22px;top:18px;width:45px;height:51px;display:grid;place-content:center;gap:3px;border:1px dashed #827666;color:#645949;font:500 12px/1.3 var(--font-mono)}#contactPanel .letter-address{font:500 10px/1.3 var(--font-mono);letter-spacing:.07em}#contactPanel .letter-invitation{font:500 12px/1.3 var(--font-mono)}#contactPanel .letter-invitation b{margin-left:8px}#contactPanel.is-opening .letter-open:before{transform:perspective(500px) rotateX(155deg)}#contactPanel.is-opening .letter-open{transform:rotate(0)}#contactPanel .contact-actions{margin-top:18px;gap:12px}#contactPanel .contact-direct{display:none}#contactPanel .contact-email{color:var(--ink);border-color:var(--line);opacity:1;font-size:14px;letter-spacing:0}#contactPanel .contact-email b{color:var(--ink)}#contactPanel .email-copy{color:var(--ink);border-color:var(--line);background:transparent;min-height:44px}#contactPanel .email-copy:is(:hover,:focus-visible){background:var(--ink);color:var(--paper)}#contactPanel .letter{display:none}#contactPanel.is-composing{display:flex;flex-direction:column;justify-content:center}#contactPanel.is-composing h2,#contactPanel.is-composing>.contact-copy,#contactPanel.is-composing .letter-open{display:none}#contactPanel.is-composing>.contact-actions{display:flex}#contactPanel.is-composing .letter{display:block;margin:0;width:min(640px,100%);padding:clamp(24px,3vw,44px);color:var(--ink);border:1px solid #d9d3c8;background:#faf8f2;box-shadow:0 16px 36px -24px #32281852;transform-origin:50% 100%;animation:letter-unfold .4s cubic-bezier(.2,.7,.2,1) both}#contactPanel .letter-heading{margin:0 0 28px;font:500 clamp(26px,2.5vw,36px)/1.1 var(--font-display);letter-spacing:-.035em}#contactPanel .letter-fields{grid-template-columns:1fr 1fr;gap:20px 24px}#contactPanel .letter-field{grid-template-columns:1fr;gap:4px}#contactPanel .letter-field>span{color:var(--ink-soft)}#contactPanel .letter-field input,#contactPanel .letter-field textarea{color:var(--ink);border-color:#aaa296}#contactPanel .letter-field textarea{height:100px;min-height:60px}#contactPanel .letter-field :is(input,textarea):focus{border-color:var(--ink);box-shadow:0 1px 0 var(--ink)}#contactPanel .letter-field [aria-invalid=true]{border-bottom-color:#a03525}#contactPanel .letter-submit,#contactPanel .letter-again{color:var(--paper);background:var(--ink);border-color:var(--ink)}#contactPanel .letter-cancel{display:inline-flex;align-items:center;color:var(--ink);border-color:#b8afa1}#contactPanel :is(.letter-submit,.letter-again,.letter-cancel):focus-visible{outline-color:var(--ink)}#contactPanel .letter-status,#contactPanel .letter-sent p{color:var(--ink)}#contactPanel .letter-fields{position:relative}#contactPanel .letter-away{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:5px;border:1px dashed #b8afa1;border-radius:3px;color:var(--ink-soft);font:500 11px/1 var(--font-mono);letter-spacing:.1em;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility 0s .2s}#contactPanel .letter-away i{width:3px;height:3px;border-radius:50%;background:currentColor;opacity:.25}#contactPanel .letter-away i:first-of-type{margin-left:5px}#contactPanel .letter.is-sealed .letter-away{opacity:1;visibility:visible;transition:opacity .4s ease .36s}#contactPanel .letter.is-sealed .letter-away i{animation:letter-away 1.2s ease-in-out infinite}#contactPanel .letter.is-sealed .letter-away i:nth-of-type(2){animation-delay:.18s}#contactPanel .letter.is-sealed .letter-away i:nth-of-type(3){animation-delay:.36s}#contactPanel .letter-send>button{transition:opacity .22s ease,visibility 0s}#contactPanel .letter-status{transition:opacity .22s ease}#contactPanel .letter.is-sending .letter-send>button{opacity:0;visibility:hidden;transition:opacity .22s ease,visibility 0s .22s}#contactPanel .letter.is-sending .letter-status{height:0;overflow:hidden;opacity:0}#contactPanel .letter{--slip-x: 20px;--slip-y: 18px}#contactPanel .letter-reply{--ew: 172px;--eh: 110px;--ex: calc(50% - var(--ew) / 2);--ey: calc(62% - var(--eh) / 2);position:absolute;inset:0;visibility:hidden;pointer-events:none;transform-origin:50% 62%}#contactPanel .reply-flap,#contactPanel .reply-sheet,#contactPanel .reply-front{position:absolute;box-sizing:border-box}#contactPanel .reply-front{z-index:2;left:var(--ex);top:var(--ey);width:var(--ew);height:var(--eh);border:1px solid rgba(17,17,17,.5);border-radius:2px;background:var(--paper-raised);box-shadow:0 8px 18px #11111124}#contactPanel .reply-front .envelope-postmark{opacity:.78;transform:rotate(-7deg)}#contactPanel .reply-to{position:absolute;right:10%;bottom:13%;color:var(--ink);font:500 10px/1 var(--font-mono);letter-spacing:.075em;white-space:nowrap}#contactPanel .reply-flap{z-index:3;left:var(--ex);top:var(--ey);width:var(--ew);height:calc(var(--eh) * .56);overflow:visible;transform-origin:50% 0}#contactPanel .reply-flap path{fill:none;stroke:#1111118c;stroke-width:1}#contactPanel .reply-sheet{z-index:1;left:calc(var(--ex) + 8px);top:calc(var(--ey) + 6px);width:calc(var(--ew) - 16px);height:calc(var(--eh) - 12px);border:1px dashed rgba(17,17,17,.45);border-radius:3px;background:var(--paper-raised);overflow:hidden}#contactPanel .reply-date{position:absolute;left:min(var(--slip-x),9%);top:min(var(--slip-y),13%);color:var(--ink-soft);font:500 11px/1 var(--font-mono);letter-spacing:.1em;white-space:nowrap}#contactPanel .letter.is-replying .letter-away{color:transparent;transition:color .2s ease}#contactPanel .letter.is-replying .letter-reply{visibility:visible;animation:reply-arrive .44s cubic-bezier(.2,.8,.3,1.2) both}#contactPanel .letter.is-replying .reply-flap{animation:reply-flap .28s cubic-bezier(.4,0,.2,1) .64s both,reply-flap-away .36s cubic-bezier(.5,0,.8,.4) 1.34s forwards}#contactPanel .letter.is-replying .reply-sheet{animation:reply-rise .4s cubic-bezier(.2,.7,.2,1) .9s both,reply-unfold .46s cubic-bezier(.3,0,.2,1) 1.34s forwards}#contactPanel .letter.is-replying .reply-front{animation:reply-away .36s cubic-bezier(.5,0,.8,.4) 1.34s forwards}#contactPanel .letter-sent{margin-top:0}#contactPanel .letter-receipt{position:relative;display:flex;flex-direction:column;box-sizing:border-box;padding:var(--slip-y) var(--slip-x) calc(var(--slip-y) + 2px);border:1px dashed #b8afa1;border-radius:3px}#contactPanel .receipt-date{margin:0 0 auto;padding-bottom:14px;color:var(--ink-soft);font:500 11px/1 var(--font-mono);letter-spacing:.1em}#contactPanel .receipt-word{--stop-x: calc(100% - .13em) ;--stop-y: 78%;position:relative;align-self:flex-start;margin:0;font:800 clamp(40px,5.4vw,72px)/1 var(--font-hollow);letter-spacing:-.045em}#contactPanel .receipt-word em{color:transparent;-webkit-text-stroke:max(2px,.026em) var(--ink)}#contactPanel .receipt-word b{--receipt-ink: 0px;position:absolute;inset:0;color:var(--ink);font:inherit;-webkit-text-stroke:max(2px,.026em) var(--ink);pointer-events:none;-webkit-mask-image:radial-gradient(circle at var(--stop-x) var(--stop-y),#000 calc(var(--receipt-ink) - .05em),transparent var(--receipt-ink)),radial-gradient(circle at calc(var(--stop-x) - .22em) calc(var(--stop-y) - .1em),#000 calc(var(--receipt-ink) * .9 - .05em),transparent calc(var(--receipt-ink) * .9)),radial-gradient(circle at calc(var(--stop-x) - .12em) calc(var(--stop-y) + .16em),#000 calc(var(--receipt-ink) * .93 - .05em),transparent calc(var(--receipt-ink) * .93));mask-image:radial-gradient(circle at var(--stop-x) var(--stop-y),#000 calc(var(--receipt-ink) - .05em),transparent var(--receipt-ink)),radial-gradient(circle at calc(var(--stop-x) - .22em) calc(var(--stop-y) - .1em),#000 calc(var(--receipt-ink) * .9 - .05em),transparent calc(var(--receipt-ink) * .9)),radial-gradient(circle at calc(var(--stop-x) - .12em) calc(var(--stop-y) + .16em),#000 calc(var(--receipt-ink) * .93 - .05em),transparent calc(var(--receipt-ink) * .93));transition:--receipt-ink 1.2s cubic-bezier(.35,0,.25,1)}#contactPanel .letter.is-inked .receipt-word b{--receipt-ink: 6em}#contactPanel .receipt-note{margin:12px 0 0;color:var(--ink);font:400 16px/1.45 var(--font-sans)}#contactPanel .receipt-postmark{position:absolute;top:12px;right:14px;width:clamp(64px,16%,96px);aspect-ratio:96 / 40;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 40' fill='none' stroke='%23111' stroke-width='1.6' stroke-linecap='round'%3E%3Ccircle cx='20' cy='20' r='15'/%3E%3Ccircle cx='20' cy='20' r='10.5' stroke-width='1'/%3E%3Cpath d='M38 10c6-4 10 4 16 0s10 4 16 0 10 4 16 0 8 3 9 2M38 20c6-4 10 4 16 0s10 4 16 0 10 4 16 0 8 3 9 2M38 30c6-4 10 4 16 0s10 4 16 0 10 4 16 0 8 3 9 2'/%3E%3C/svg%3E") 0 0 / 100% 100% no-repeat;opacity:.7;transform:rotate(-7deg);transform-origin:80% 50%}#contactPanel .letter.is-sent .receipt-postmark{animation:receipt-strike .16s cubic-bezier(.2,.9,.3,1.3) .3s both}#contactPanel .letter-sent>button{margin-top:20px}#contactPanel .letter.is-resizing{overflow:clip}#contactPanel .letter.is-sent .letter-heading,#contactPanel .letter.is-sent :is(.receipt-word,.receipt-note),#contactPanel .letter.is-sent .letter-sent>button,#contactPanel .letter.is-fresh .letter-heading,#contactPanel .letter.is-fresh .letter-field,#contactPanel .letter.is-fresh .letter-send{animation:letter-word-in .5s cubic-bezier(.2,.7,.2,1) both}#contactPanel .letter.is-fresh .letter-field:nth-of-type(2){animation-delay:.1s}#contactPanel .letter.is-fresh .letter-message{animation-delay:.16s}#contactPanel .letter.is-sent .receipt-note{animation-delay:.1s}#contactPanel .letter.is-sent .letter-sent>button,#contactPanel .letter.is-fresh .letter-send{animation-delay:.22s}#contactPanel .letter-open[hidden],#contactPanel .letter[hidden]{display:none}@media(max-width:899px)and (min-height:521px){#contactPanel{padding:16px 0;transform:translateY(20dvh)}#contactPanel h2{font-size:clamp(42px,8.4vw,72px)}#contactPanel>.contact-copy{margin-top:16px;font-size:15px}#contactPanel .letter-open{width:min(400px,90%);height:155px;margin:26px auto;padding:22px}#contactPanel .letter-invitation{font-size:11px}#contactPanel .letter-address{font-size:9px}#contactPanel .contact-actions{gap:8px}#contactPanel .contact-email{font-size:13px}#contactPanel.is-composing .letter{padding:22px}#contactPanel .letter-heading{margin-bottom:20px}#contactPanel .letter-fields{grid-template-columns:1fr;gap:14px}#contactPanel .letter-field{grid-template-columns:5em minmax(0,1fr);align-items:baseline;gap:10px}#contactPanel .letter-field textarea{height:80px}}@media(max-width:899px)and (min-height:521px)and (max-height:760px){#contactPanel{transform:translateY(8dvh)}}@media(max-width:620px)and (max-height:600px)and (orientation:portrait){#contactPanel{padding:0;transform:translateY(18dvh)}#contactPanel h2{font-size:36px}#contactPanel>.contact-copy{margin-top:12px;font-size:13px}#contactPanel .letter-open{height:115px;margin-block:20px;padding:18px 14px}#contactPanel .letter-stamp{top:10px;right:14px;height:36px;width:32px;font-size:9px}#contactPanel .contact-actions{margin-top:10px}#contactPanel .contact-email{font-size:12px}#contactPanel.is-composing{transform:translateY(14dvh)}#contactPanel.is-composing .letter{padding:16px}#contactPanel .letter-heading{font-size:24px;margin-bottom:12px}#contactPanel .letter-fields{gap:6px}#contactPanel .letter-field textarea{height:48px;min-height:48px}#contactPanel .letter-send{margin-top:12px;gap:8px}}@media(max-height:520px)and (orientation:landscape){#contactPanel{padding:12px 0}#contactPanel h2{font-size:42px}#contactPanel>.contact-copy{margin-top:12px;font-size:14px}#contactPanel .letter-open{width:290px;height:105px;margin:18px 0 18px 8%;padding:15px}#contactPanel .letter-stamp{width:28px;height:32px;font-size:9px;top:8px;right:14px}#contactPanel.is-composing .letter{padding:18px}#contactPanel .letter{--slip-x: 16px;--slip-y: 12px}#contactPanel .letter-reply{--ew: 112px;--eh: 72px}#contactPanel .receipt-date{padding-bottom:8px}#contactPanel .receipt-note{margin-top:8px}#contactPanel .letter-heading{font-size:24px;margin-bottom:14px}#contactPanel .letter-fields{gap:10px}#contactPanel .letter-field textarea{height:60px}#contactPanel .letter-send{margin-top:12px}}@property --receipt-ink{syntax: "<length>"; inherits: false; initial-value: 0px;}@keyframes letter-word-in{0%{opacity:0;transform:translateY(10px)}}@keyframes receipt-strike{0%{opacity:0;transform:scale(1.5) rotate(-13deg)}30%{opacity:.7}}@keyframes reply-arrive{0%{opacity:0;transform:translate(-64px,-22px) rotate(-11deg)}55%{opacity:1}}@keyframes reply-flap{0%{transform:scaleY(1);z-index:3}49.9%{z-index:3}50%{z-index:0}to{transform:scaleY(-1);z-index:0}}@keyframes reply-flap-away{0%{transform:scaleY(-1);z-index:0}to{transform:translateY(40px) scaleY(-1);opacity:0;z-index:0}}@keyframes reply-rise{to{transform:translateY(calc(var(--eh) * -.5))}}@keyframes reply-unfold{0%{left:calc(var(--ex) + 8px);top:calc(var(--ey) + 6px);width:calc(var(--ew) - 16px);height:calc(var(--eh) - 12px);transform:translateY(calc(var(--eh) * -.5));border-color:#11111173}to{left:0;top:0;width:100%;height:100%;transform:translateY(0);border-color:#b8afa1}}@keyframes reply-away{to{transform:translateY(40px);opacity:0}}@keyframes letter-away{0%,to{opacity:.25}40%{opacity:1}}@keyframes letter-unfold{0%{opacity:0;transform:translateY(24px) rotate(-2deg) scale(.97)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){#contactPanel .letter-open,#contactPanel .letter-open:before{transition:none}#contactPanel.is-composing .letter,#contactPanel .letter :is(.letter-heading,.letter-field,.letter-send,.receipt-word,.receipt-note,.receipt-postmark,.letter-sent>button,.letter-away i){animation:none}#contactPanel .letter .receipt-word b{transition:none}#contactPanel .letter-reply{display:none}}body.is-reduced-motion #contactPanel .letter-open,body.is-reduced-motion #contactPanel .letter-open:before{transition:none}body.is-reduced-motion #contactPanel.is-composing .letter,body.is-reduced-motion #contactPanel .letter :is(.letter-heading,.letter-field,.letter-send,.receipt-word,.receipt-note,.receipt-postmark,.letter-sent>button,.letter-away i){animation:none}body.is-reduced-motion #contactPanel .letter .receipt-word b{transition:none}body.is-reduced-motion #contactPanel .letter-reply{display:none}html.has-js:not(.is-static-fallback) #contactPanel:not(.shows-address)>.contact-actions{display:none}.hero-copy a{color:inherit;text-decoration:underline;text-underline-offset:3px}
