:root{--ground:#faf9f7;--ink:#161412;--body:#403c38;--dim:#6e6963;--accent:#b4472a;--rule:#16141229;--lb:#faf9f7f7;--sans:"Instrument Sans",system-ui,sans-serif;--serif:"Instrument Serif",Georgia,serif;--pad:clamp(20px,4vw,48px);--ease:cubic-bezier(.16,1,.3,1)}body[data-pack=museum]{--ground:#f3f5f6;--ink:#101416;--body:#3a4147;--dim:#646e76;--accent:#1f5a73;--rule:#10141629;--lb:#f3f5f6f7}body[data-pack=darkroom]{--ground:#141210;--ink:#f0ede7;--body:#c9c4bb;--dim:#948e84;--accent:#d08a3e;--rule:#f0ede72e;--lb:#141210f7}body[data-pack=selenium]{--ground:#0e1114;--ink:#e8edf1;--body:#bfc7ce;--dim:#8a939c;--accent:#7fa8c7;--rule:#e8edf12e;--lb:#0e1114f7}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--ground);color:var(--body);font-family:var(--sans);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.65;transition:background .3s,color .3s;overflow-x:hidden}img{width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3{color:var(--ink);letter-spacing:-.01em;font-weight:400;line-height:1.1}p a,.textlink{color:var(--accent);text-underline-offset:3px;text-decoration:underline 1px}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}::selection{background:var(--ink);color:var(--ground)}body.lock{overflow:hidden}.top{z-index:60;padding:22px var(--pad);color:var(--ink);pointer-events:none;justify-content:space-between;align-items:baseline;display:flex;position:fixed;inset:0 0 auto}.top:before{content:"";pointer-events:none;background:linear-gradient(to bottom, color-mix(in srgb,var(--ground) 90%,transparent), color-mix(in srgb,var(--ground) 55%,transparent) 55%,transparent);transition:background .3s;position:absolute;inset:0 0 -52px}.top a,.top button{pointer-events:auto;position:relative}.top a{text-decoration:none}.wordmark{letter-spacing:.16em;text-transform:uppercase;font-size:13px;font-weight:600}.menubtn{font:inherit;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);cursor:pointer;background:0 0;border:0;font-size:13.5px}.menu{z-index:50;background:var(--ground);padding:calc(72px + 4vh) var(--pad) 36px;visibility:hidden;clip-path:inset(0 0 100%);flex-direction:column;justify-content:space-between;display:flex;position:fixed;inset:0}.menu.open{visibility:visible;clip-path:inset(0 0 0%)}.menu-nav a{width:fit-content;color:var(--ink);font-family:var(--serif);letter-spacing:-.01em;font-size:clamp(40px,7.4vw,88px);font-weight:400;line-height:1.1;text-decoration:none;display:block}.menu-nav a:hover{color:var(--accent);font-style:italic}.menu-nav a[aria-current=page]{color:var(--accent)}.menu-foot{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.menu-contact{font-size:14.5px;line-height:2}.menu-contact a{color:var(--body);text-decoration:none}.menu-contact a:hover{color:var(--accent)}html.motion .menu{transition:clip-path .7s cubic-bezier(.76,0,.24,1),visibility 0s .7s}html.motion .menu.open{transition:clip-path .7s cubic-bezier(.76,0,.24,1)}html.motion .menu-nav a{opacity:0;transition:opacity .5s var(--ease) calc(.12s + var(--i,0)*55ms), transform .5s var(--ease) calc(.12s + var(--i,0)*55ms),color .2s,font-style 0s;transform:translateY(28px)}html.motion .menu.open .menu-nav a{opacity:1;transform:none}.packs{z-index:45;background:var(--ground);border:1px solid var(--rule);align-items:center;gap:8px;padding:9px 11px;transition:background .3s;display:flex;position:fixed;bottom:14px;right:14px}.packs b{letter-spacing:.08em;text-transform:uppercase;color:var(--dim);margin-right:2px;font-size:11px;font-weight:600}.packs button{border:1px solid var(--rule);cursor:pointer;width:18px;height:18px;padding:0;transition:transform .2s}.packs button:hover{transform:scale(1.15)}.packs button[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:2px}.packs .k1{background:linear-gradient(135deg,#faf9f7 55%,#b4472a 55%)}.packs .k2{background:linear-gradient(135deg,#f3f5f6 55%,#1f5a73 55%)}.packs .k3{background:linear-gradient(135deg,#141210 55%,#d08a3e 55%)}.packs .k4{background:linear-gradient(135deg,#0e1114 55%,#7fa8c7 55%)}.ktitle{color:var(--accent);font-family:var(--serif);letter-spacing:-.01em;font-size:clamp(44px,7vw,104px);font-style:italic;font-weight:400;line-height:.98}.hero-name{color:var(--ink);letter-spacing:-.02em;font-size:clamp(96px,19vw,330px);font-style:normal;line-height:.85}.rise .l{margin-bottom:-.12em;padding-bottom:.12em;display:block}html.motion .rise .l{overflow:hidden}html.motion .rise .l>span{transition:transform 1.05s var(--ease) calc(var(--i,0)*.12s);display:block;transform:translateY(118%)}html.motion .rise.in .l>span{transform:none}.head{height:100svh;position:relative}.head .head-fig{margin:0;position:absolute;inset:0;overflow:hidden}.head .head-fig img{object-fit:cover;width:100%;height:100%}.head .head-fig:after{content:"";background:linear-gradient(to top,color-mix(in srgb,var(--ground) 92%,transparent) 12%,transparent);position:absolute;inset:42% 0 0}.head h1{z-index:2;left:var(--pad);right:var(--pad);margin:0;position:absolute;bottom:0}html.motion .head .head-fig img{animation:heroSettle 2.2s var(--ease) both}@keyframes heroSettle{0%{transform:scale(1.06)}to{transform:scale(1)}}.intro{max-width:min(980px,calc(100vw - 2*var(--pad)));margin:clamp(40px,7vh,72px) auto}.intro p{max-width:58ch;color:var(--ink);text-wrap:pretty;font-size:clamp(17px,2vw,20px)}.intro .count{color:var(--dim);text-wrap:balance;margin-bottom:12px;font-size:13.5px}.seq{padding-bottom:clamp(48px,8vh,100px)}.frame{margin:clamp(28px,4.5vh,52px) auto}.frame.full{max-width:none;height:clamp(380px,74svh,760px);margin-left:0;margin-right:0;overflow:hidden}.frame.full figure{height:100%}.frame.full img{object-fit:cover;width:100%;height:100%}.frame.single{max-width:min(980px,calc(100vw - 2*var(--pad)))}.frame.big,.frame.duet,.frame.trio,.frame.quad{max-width:min(1280px,calc(100vw - 2*var(--pad)))}.frame.duet,.frame.trio,.frame.quad{align-items:start;gap:clamp(14px,2vw,26px);display:grid}.frame.duet{grid-template-columns:1fr 1fr}.frame.trio{grid-template-columns:1fr 1fr 1fr}.frame.quad{grid-template-columns:repeat(4,1fr)}.frame.even img{aspect-ratio:3/2;object-fit:cover}figure{position:relative}.cap{color:var(--dim);letter-spacing:.01em;margin-top:10px;font-size:13px;font-style:italic}.seq figure{overflow:hidden}.seq figure .cap{position:static}.seq figure img{cursor:zoom-in}html.motion .rv figure{clip-path:inset(9% 6%);transition:clip-path 1.1s var(--ease) var(--d,0s)}html.motion .rv figure img{transition:transform 1.25s var(--ease) var(--d,0s),filter .8s ease;transform:scale(1.1)}html.motion .rv.in figure{clip-path:inset(0)}html.motion .rv.in figure img{transform:scale(1)}html.motion .rv figure:nth-child(2){--d:.11s}html.motion .rv figure:nth-child(3){--d:.22s}html.motion .rv figure:nth-child(4){--d:.33s}html.motion .rv.in figure:hover img{filter:contrast(1.04)saturate(1.06);transform:scale(1.035)}html.motion .pan-track figure img{transition:transform 1.1s var(--ease),filter .8s ease}html.motion .pan-track figure:hover img{filter:contrast(1.04)saturate(1.06);transform:scale(1.035)}.home{--col:calc(100vw - 2*var(--pad));--split:clamp(24px,4vw,64px)}.home .frame.duet,.home .frame.trio{max-width:var(--col)}.home .head-row{z-index:2;left:var(--pad);right:var(--pad);column-gap:var(--split);grid-template-columns:1fr 1fr;align-items:last baseline;display:grid;position:absolute;bottom:0}.home .head h1{position:static}.home .standfirst{max-width:min(34ch,100% - 160px);color:var(--ink);text-wrap:pretty;padding-bottom:.12em;font-size:clamp(16px,1.6vw,19px);line-height:1.5}.home .row{max-width:var(--col);border-top:1px solid var(--rule);column-gap:var(--split);grid-template-columns:1fr 1fr;align-items:baseline;margin:clamp(88px,14vh,170px) auto 0;padding-top:clamp(16px,2.4vh,26px);display:grid}.home .row .ktitle{margin:0}.home .row.note .ktitle{color:var(--ink)}.home .row p{max-width:44ch;color:var(--ink);text-wrap:pretty;font-size:clamp(17px,1.8vw,20px)}.home .row .textlink{margin-top:14px;font-size:15px;display:inline-block}.home .row+.stack,.home .row+.pan{margin-top:clamp(30px,5vh,56px)}html.motion .home .row+.pan{margin-top:calc(clamp(30px,5vh,56px) - 15svh)}html.motion .home .pan-sticky{pointer-events:none}html.motion .home .pan-track figure{pointer-events:auto}html:not(.motion) .home .pan-track{max-width:var(--col);grid-template-columns:1fr 1fr;gap:clamp(14px,2vw,26px);margin:clamp(28px,4.5vh,52px) auto;display:grid}html:not(.motion) .home .pan-track figure{max-width:none;margin:0}html:not(.motion) .home .pan-track img{aspect-ratio:3/2;object-fit:cover}html.motion .home .rise .l{clip-path:inset(0);overflow:visible}.grow-fig{max-width:min(1280px,calc(100vw - 2*var(--pad)));margin:clamp(28px,4.5vh,52px) auto}html.motion .grow{height:250vh}html.motion .grow-sticky{place-items:center;height:100svh;display:grid;position:sticky;top:0;overflow:hidden}html.motion .grow-fig{will-change:transform;width:100vw;max-width:none;height:100svh;margin:0;transform:scale(.3)}html.motion .grow-fig img{object-fit:cover;width:100%;height:100%}.stack-panel{overflow:hidden}.stack-panel figure{height:100svh}.stack-panel img{object-fit:cover;width:100%;height:100%}html.motion .stack-panel{height:100svh;position:sticky;top:0}html.motion .stack-panel figure{will-change:transform,opacity;transform-origin:50% 30%}html:not(.motion) .pan-track figure{max-width:min(880px,86vw);margin:clamp(44px,8vh,90px) auto}html.motion .pan-sticky{align-items:center;height:100svh;display:flex;position:sticky;top:0;overflow:hidden}html.motion .pan-track{padding:0 var(--pad);will-change:transform;align-items:center;gap:clamp(24px,4vw,64px);display:flex}html.motion .pan-track figure{flex:none}html.motion .pan-track img{width:auto;height:min(70svh,760px)}html.motion [data-plx] img{will-change:transform;height:114%}.closer{height:clamp(280px,54svh,520px);margin-top:clamp(56px,9vh,110px);overflow:hidden}.closer figure{height:100%}.closer img{object-fit:cover;width:100%;height:100%}.series-next{max-width:min(980px,calc(100vw - 2*var(--pad)));margin:clamp(48px,8vh,96px) auto 0}.series-next p{color:var(--dim);font-size:14px}.series-next a{font-family:var(--serif);letter-spacing:-.01em;color:var(--ink);margin-top:6px;font-size:clamp(30px,4.2vw,52px);font-style:italic;text-decoration:none;display:inline-block}.series-next a:hover{color:var(--accent)}.page{max-width:min(1140px,92vw);margin:clamp(120px,18vh,200px) auto 0}.page .ktitle{margin-bottom:clamp(26px,4vh,44px);font-size:clamp(40px,6vw,88px)}.statement{max-width:24ch;color:var(--ink);font-family:var(--serif);letter-spacing:-.01em;margin-bottom:clamp(32px,5vh,56px);font-size:clamp(36px,5vw,68px);font-weight:400;line-height:1.02}.about-grid{grid-template-columns:1.15fr .85fr;align-items:start;gap:clamp(32px,6vw,90px);display:grid}.about-grid .bio p{text-wrap:pretty;max-width:56ch;margin-bottom:1.2em;font-size:clamp(16px,1.8vw,18px)}.about-grid .about-fig{justify-self:end;max-width:420px}.about-grid .about-fig figure{overflow:hidden}.contactline{border-top:1px solid var(--rule);margin-top:34px;padding-top:26px;font-size:16px;line-height:2}.comm-grid{grid-template-columns:1fr 1fr;align-items:start;gap:clamp(32px,6vw,100px);display:grid}.comm-grid .lead p{text-wrap:pretty;max-width:52ch;margin-bottom:1.2em;font-size:clamp(16px,1.8vw,18px)}.comm-grid .lead p:first-child{color:var(--ink);font-size:clamp(18px,2.2vw,22px)}.direct{border-top:1px solid var(--rule);margin-top:30px;padding-top:24px;font-size:16px;line-height:2.1}.direct b{color:var(--ink);margin-bottom:2px;font-weight:500;display:block}.enq label{color:var(--ink);letter-spacing:.02em;margin:22px 0 7px;font-size:13.5px;font-weight:500;display:block}.enq label:first-of-type{margin-top:0}.enq input,.enq textarea{width:100%;font:inherit;color:var(--ink);border:1px solid color-mix(in srgb,var(--ink) 38%,transparent);background:0 0;padding:13px 14px;font-size:16px}.enq input:focus,.enq textarea:focus{border-color:var(--accent);outline:none}.enq textarea{resize:vertical;min-height:140px}.enq .hint{color:var(--dim);margin-top:6px;font-size:13px}.enq button{font:inherit;cursor:pointer;color:var(--ground);background:var(--ink);border:1px solid var(--ink);margin-top:26px;padding:15px 30px;font-size:15px;font-weight:600;transition:color .2s,background .2s}.enq button:hover{background:var(--accent);border-color:var(--accent);color:var(--ground)}.enq .ok{color:var(--ink);font-size:clamp(17px,2vw,20px);line-height:1.6;display:none}.enq .ok.show{display:block}.foot{padding:26px var(--pad);color:var(--dim);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px 40px;font-size:13.5px;display:flex}.foot b{color:var(--ink);font-weight:500}.foot-links{gap:26px;display:flex}.foot-links a{color:var(--body);text-decoration:none}.foot-links a:hover{color:var(--accent)}.lightbox{z-index:70;background:var(--lb);flex-direction:column;justify-content:center;display:none;position:fixed;inset:0}.lightbox.open{display:flex}.lightbox img{object-fit:contain;width:auto;max-width:min(1400px,92vw);height:auto;max-height:82svh;margin:0 auto}.lb-bar{left:var(--pad);right:var(--pad);color:var(--dim);justify-content:space-between;gap:20px;font-size:13px;display:flex;position:absolute;bottom:22px}.lb-close{top:20px;right:var(--pad);font:inherit;color:var(--ink);cursor:pointer;letter-spacing:.02em;z-index:2;background:0 0;border:0;font-size:13.5px;position:absolute}.lb-zone{cursor:w-resize;background:0 0;border:0;width:50%;position:absolute;top:0;bottom:60px}.lb-zone.next{cursor:e-resize;right:0}.lb-zone.prev{left:0}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}body{transition:none}}@media (width<=1023px){.home .head-row{grid-template-columns:1fr;row-gap:14px}.home .standfirst{max-width:30ch;margin-bottom:6px;padding-bottom:0}}@media (width<=840px){.about-grid,.comm-grid{grid-template-columns:1fr}.about-grid .about-fig{justify-self:start;max-width:380px}}@media (width<=719px){.packs{display:none}.frame{margin:18px auto}.frame.duet,.frame.trio{grid-template-columns:1fr;gap:18px}.frame.quad{grid-template-columns:1fr 1fr;gap:12px}.frame.full{height:min(62svh,520px)}.home .row{grid-template-columns:1fr;row-gap:14px}html:not(.motion) .home .pan-track{grid-template-columns:1fr;gap:18px}.home .row{margin-top:clamp(64px,10vh,96px)}html.motion .home .row+.pan{margin-top:calc(clamp(30px,5vh,56px) - 24svh)}.closer{height:min(44svh,400px)}html.motion .pan-track img{height:min(52svh,420px)}html.motion .grow-fig{transform:scale(.42)}.menu-foot{flex-direction:column;align-items:flex-start}.foot{flex-direction:column;gap:8px}.foot-links{flex-wrap:wrap;gap:14px}}
