*{box-sizing:border-box;margin:0;padding:0}:root{--ink: #111;--paper: #fff;--hairline: rgba(0, 0, 0, .12);--skeleton-a: rgba(0, 0, 0, .045);--skeleton-b: rgba(0, 0, 0, .09);color-scheme:light}:root.dark{--ink: #e6e6e6;--paper: #1a1a1a;--hairline: rgba(255, 255, 255, .14);--skeleton-a: rgba(255, 255, 255, .05);--skeleton-b: rgba(255, 255, 255, .1);color-scheme:dark}html{background:var(--paper)}body{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.45;color:var(--ink);background:var(--paper);max-width:1360px;margin-inline:auto;padding:clamp(24px,4vw,56px) clamp(20px,5vw,72px) 48px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible{outline:1px solid var(--ink);outline-offset:3px}.muted{opacity:.6}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.masthead{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px 32px;margin-bottom:clamp(40px,7vw,88px)}.masthead h1{font-size:clamp(28px,3.4vw,44px);font-weight:500;letter-spacing:-.01em}.masthead nav{display:flex;gap:28px}.theme-toggle{display:flex;align-items:center;align-self:center;color:inherit;background:none;border:0;padding:0;cursor:pointer}.theme-toggle svg{display:block}.theme-toggle:hover{opacity:.6}html:not(.js) .theme-toggle{display:none}.info{max-width:620px;margin-bottom:clamp(40px,7vw,88px);display:grid;gap:24px}html.js .info:not(.open){display:none}.info h2{font-size:inherit;font-weight:400;text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}.mailing{display:flex;gap:12px;max-width:380px}.mailing input{flex:1;font:inherit;color:inherit;background:none;border:0;border-bottom:1px solid var(--ink);border-radius:0;padding:2px 0}.mailing input::placeholder{color:inherit;opacity:.6}.mailing button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}.mailing button:hover{text-decoration:underline}.catalogue{width:100%;border-collapse:collapse;border-bottom:1px solid var(--hairline);table-layout:fixed}.catalogue th{font-weight:400;text-transform:uppercase;letter-spacing:.06em;text-align:left;padding:0 20px 10px 0;border-bottom:1px solid var(--hairline);white-space:nowrap}.catalogue th .sort{font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;background:none;border:0;padding:0;cursor:pointer}.catalogue th .sort:hover{text-decoration:underline}.catalogue th .sort[data-active=asc]:after{content:" ▲";font-size:9px;opacity:.55}.catalogue th .sort[data-active=desc]:after{content:" ▼";font-size:9px;opacity:.55}.work-row td{border-top:1px solid var(--hairline);padding:12px 20px 12px 0;vertical-align:baseline}.work-row td:last-child,.catalogue th:last-child{padding-right:0}th.col-no{width:5em}th.col-title{width:42%}th.col-details{width:38%}th.col-year{width:4em}td.col-no{font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap;position:relative}html.js .work-row{cursor:pointer}.work-row:hover .row-link{text-decoration:underline}.work-row .col-title a{text-decoration:none}.expansion td{padding:0;border:0}.exp-outer{display:grid;grid-template-rows:1fr}html.js .exp-outer{grid-template-rows:0fr;transition:grid-template-rows .2s ease}html.js .expansion.open .exp-outer{grid-template-rows:1fr}.exp-inner{overflow:hidden;min-height:0}html.js .expansion .exp-inner{visibility:hidden;transition:visibility 0s linear .2s}html.js .expansion.open .exp-inner{visibility:visible;transition-delay:0s}.exp-content{padding:28px 0 56px;display:grid;gap:28px}.exp-content>*{min-width:0}.exp-text p{max-width:62ch}.exp-text p+p{margin-top:.8em}.exp-meta{margin-top:18px}.exp-meta dt{display:inline;text-transform:uppercase;letter-spacing:.06em;opacity:.6}.exp-meta dd{display:inline;margin-left:8px}.exp-meta>div+div{margin-top:2px}.exp-close{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;margin-top:20px;text-transform:uppercase;letter-spacing:.06em}.exp-close:hover{text-decoration:underline}html:not(.js) .exp-close{display:none}.exp-order{margin-top:18px;text-transform:uppercase;letter-spacing:.06em}.exp-thumbs{display:flex;flex-wrap:wrap;gap:10px}.exp-thumbs .thumb{display:block;height:88px}.exp-thumbs .thumb img{display:block;height:100%;width:auto}.exp-thumbs .thumb.active{opacity:.55}.exp-large{margin-top:24px}.exp-large img{display:block;height:624px;width:auto;max-width:100%;object-fit:contain;object-position:left center}.exp-video{position:relative;width:min(100%,960px);margin-bottom:24px}.exp-video video{display:block;width:100%;height:auto;background:var(--paper)}.exp-strip{display:flex;overflow-x:auto;max-width:100%;margin-bottom:24px}.exp-strip .strip-panel{position:relative;flex:0 0 auto}.exp-strip .strip-panel+.strip-panel{margin-left:-1px}.exp-strip video{display:block;height:624px;width:auto;background:none}html.js .exp-strip video{cursor:pointer}.video-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:none;border:0;padding:0;cursor:pointer;font:inherit;color:var(--ink)}.video-play span{background:var(--paper);padding:8px 18px;text-transform:uppercase;letter-spacing:.06em}.video-play:hover span{text-decoration:underline}.exp-video.playing .video-play{display:none}.exp-large .large-frame{width:fit-content;max-width:100%}.exp-large .large-frame[hidden]{display:none}.scan-pager{position:relative;width:min(calc(80vh + 60px),100%);margin-inline:0;display:grid;background-color:#fff;background-image:linear-gradient(135deg,#e2e2e299,#c6c5c399);padding:30px 30px 23px}.scan-slide{grid-area:1 / 1;display:flex;align-items:center;justify-content:center;visibility:hidden}.scan-blank{position:relative;height:50vh;aspect-ratio:828 / 1144;background:#fff;box-shadow:2px 2px 3px #0006}.scan-spacer{height:50vh;aspect-ratio:828 / 1144}.scan-slide.active{visibility:visible}.scan-slide img{display:block;max-height:50vh;max-width:100%;width:auto;height:auto;box-shadow:2px 2px 3px #0006}.gg-canvas{position:relative;background-color:#fff;background-image:linear-gradient(135deg,#e2e2e299,#c6c5c399);width:fit-content;max-width:100%;margin-inline:0;padding:30px 30px 23px;display:flex;align-items:center;justify-content:center;overflow:hidden}.gg-stage{display:grid;align-items:center;justify-items:center}.gg-box{position:relative;display:flex;grid-area:1 / 1}.gg-box:not(.active):not(.warm){display:none}.gg-box.warm:not(.active){visibility:hidden;pointer-events:none}.gg-box{width:min(calc(62.5vh * var(--trim, .8) * 2),calc(min(100vw,1360px) - 220px))}.gg-page.gg-empty{background:none;box-shadow:none}.gg-page{position:relative;flex:1 1 0;min-width:0;aspect-ratio:var(--trim, .8);background:var(--page-color, #fff);overflow:hidden;isolation:isolate;box-shadow:2px 2px 3px #0006}.gg-page:not(.gg-empty):before,.scan-blank:before{content:"";position:absolute;inset:0;pointer-events:none;mix-blend-mode:soft-light;opacity:.55;background-image:url(data:image/png;base64,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)}.gg-page:not(.gg-empty):after,.scan-blank:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,#0000,#0000001a)}.gg-page img{display:block;width:100%;height:100%;box-sizing:border-box}.gg-page.lay-full-bleed img{object-fit:cover}.gg-page.lay-centered img{object-fit:contain;padding:9%}.gg-page.lay-top img{object-fit:contain;object-position:top;padding:9%}.gg-nav{position:absolute;top:0;bottom:0;width:50%;border:0;padding:0;background:none;appearance:none}.gg-prev{left:0;cursor:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2730%27%20height%3D%2730%27%20viewBox%3D%270%200%2030%2030%27%3E%3Cg%20fill%3D%27none%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M22%2015H9M14%2010l-5%205%205%205%27%20stroke%3D%27%23ffffff%27%20stroke-width%3D%273.4%27%20stroke-opacity%3D%270.6%27%2F%3E%3Cpath%20d%3D%27M22%2015H9M14%2010l-5%205%205%205%27%20stroke%3D%27%23111111%27%20stroke-width%3D%271.3%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E) 15 15,w-resize}.gg-next{right:0;cursor:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2730%27%20height%3D%2730%27%20viewBox%3D%270%200%2030%2030%27%3E%3Cg%20fill%3D%27none%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M8%2015H21M16%2010l5%205-5%205%27%20stroke%3D%27%23ffffff%27%20stroke-width%3D%273.4%27%20stroke-opacity%3D%270.6%27%2F%3E%3Cpath%20d%3D%27M8%2015H21M16%2010l5%205-5%205%27%20stroke%3D%27%23111111%27%20stroke-width%3D%271.3%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E) 15 15,e-resize}.gg-counter{position:absolute;bottom:12px;left:0;right:0;text-align:center;pointer-events:none;font-size:11px;letter-spacing:.08em;color:#00000080}@media(max-width:768px){.gg-canvas{width:100%;padding:14px}.gg-box{width:min(calc(65vh * var(--trim, .8) * 2),100%);max-width:100%}}.contact{max-width:340px;margin-bottom:clamp(40px,7vw,88px)}html.js .contact:not(.open){display:none}.contact-form{display:grid;gap:12px;justify-items:start}.contact-form input[type=email],.contact-form textarea{width:100%;font:inherit;color:inherit;background:none;border:0;border-bottom:1px solid var(--hairline);border-radius:0;padding:2px 0}.contact-form input[type=email]:focus,.contact-form textarea:focus{border-bottom-color:var(--ink)}.contact-form textarea{resize:vertical}.contact-form ::placeholder{color:inherit;opacity:.6}.contact-form button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;text-transform:uppercase;letter-spacing:.06em}.contact-form button:hover{text-decoration:underline}.contact-form.sent input,.contact-form.sent textarea,.contact-form.sent button{display:none}.contact-status{opacity:.6}footer{margin-top:clamp(64px,9vw,120px);padding-top:16px}@media(prefers-reduced-motion:reduce){html.js .exp-outer,html.js .expansion .exp-inner{transition:none!important}}@media(max-width:768px){.catalogue,.catalogue tbody,.catalogue tr.work-row,.catalogue tr.expansion,.catalogue td{display:block}.catalogue thead{display:none}tr.work-row{border-top:1px solid var(--hairline);padding:14px 0}.work-row td{border:0;padding:0;width:auto}td.col-no,td.col-title{display:inline}td.col-no{margin-right:10px}td.col-details,td.col-year{margin-top:3px}.exp-content{padding:20px 0 40px}.exp-thumbs .thumb{height:64px}.exp-large img{width:100%;height:auto}.exp-strip video{height:65vh}}
