:root{--paper:#f2f2f0;--ink:#111;--gutter:24px;--sans:"Helvetica Neue",Helvetica,Arial,sans-serif;--display:var(--font-display),Didot,"Bodoni MT","Times New Roman",serif}@media (min-width:800px){:root{--gutter:40px}}*{box-sizing:border-box}html{scrollbar-gutter:stable}body,html{margin:0;padding:0}body{background-color:#f4efe6;background-image:url(/grain.png);background-repeat:repeat;color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.45;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}figure,h1,h2,h3,ol,p,ul{margin:0;padding:0}ol,ul{list-style:none}a{text-decoration:none}a,button{color:inherit}button{font:inherit}:focus-visible{outline:1px solid var(--ink);outline-offset:3px}::selection{background:var(--ink);color:var(--paper)}.skip{position:absolute;left:12px;top:-40px;z-index:40;background:var(--ink);color:var(--paper);padding:8px 12px;font-size:13px}.skip:focus{top:8px}.site-shell{position:relative;z-index:1;min-height:100vh;display:flex;flex-direction:column}.home-collage{position:fixed;inset:0;z-index:0;background:url(/texture.jpg) 50%/cover no-repeat;pointer-events:none}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:20;background:#f4efe6;border-bottom:1px solid var(--ink)}.site-footer,.site-header__bar,.site-main{padding-left:var(--gutter);padding-right:var(--gutter)}.site-header__bar{display:flex;justify-content:space-between;align-items:baseline;gap:24px;padding-top:16px;padding-bottom:14px}.wordmark{display:inline-flex;align-items:center;gap:10px;font-size:18px;font-weight:500;letter-spacing:-.03em;line-height:1}.wordmark__text{white-space:nowrap}.wordmark__mark{width:36px;height:36px;border-radius:50%;object-fit:cover}.site-nav{display:flex;flex-wrap:nowrap;justify-content:flex-end;align-items:baseline}.site-nav__group{display:flex;flex-wrap:wrap;gap:8px 16px}.site-nav a{font-family:var(--display);font-size:22px;font-weight:500;letter-spacing:-.02em;line-height:1.1;text-transform:none}.site-nav a:hover,.site-nav a[aria-current=page]{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}.kicker a:hover,.site-footer a:hover{text-decoration:underline;text-underline-offset:4px}.site-main{flex:1 0 auto;padding-bottom:72px}.site-footer{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:12px 24px;padding-top:18px;padding-bottom:28px;border-top:1px solid var(--ink);background:#f4efe6}.site-footer ul{display:flex;flex-wrap:wrap;gap:8px 16px}.site-footer a,.site-footer p{font-size:17px;line-height:1.2}.kicker,.site-footer a,.site-footer p{font-family:var(--display);font-weight:500;letter-spacing:-.02em;text-transform:none}.kicker{margin:36px 0 0;font-size:20px;line-height:1.15}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.intro{display:none;position:fixed;inset:0;z-index:40;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:24px;pointer-events:auto}html.intro-pending .intro{display:flex}.intro[hidden]{display:none!important}html.intro-reveal .intro{pointer-events:none}.intro__logo{display:block;width:min(46vw,280px);height:min(46vw,280px);object-fit:cover;border-radius:50%}.intro__name{margin:0;max-width:92vw;font-family:var(--sans);font-size:clamp(48px,12vw,128px);font-weight:500;letter-spacing:-.03em;line-height:.9;white-space:nowrap}html.intro-pending{overflow:hidden}html.intro-pending .home>:not(.intro),html.intro-pending .site-footer,html.intro-pending .site-nav,html.intro-pending .wordmark{opacity:0}html.intro-pending .site-header{background:transparent;border-bottom-color:transparent}html.intro-pending.intro-reveal .home>:not(.intro),html.intro-pending.intro-reveal .site-footer,html.intro-pending.intro-reveal .site-nav,html.intro-pending.intro-reveal .wordmark{opacity:1;transition:opacity .45s ease-out}html.intro-pending.intro-reveal .site-header{background:#f4efe6;border-bottom-color:var(--ink);transition:background .45s ease-out,border-color .45s ease-out}.welcome{max-width:36rem;margin-top:28px;font-size:17px;line-height:1.5;white-space:pre-wrap}.home-video{width:calc(100% + (2 * var(--gutter)));margin-left:calc(-1 * var(--gutter));margin-top:28px}.home-video .kicker{margin:0 0 12px var(--gutter)}.video-frame{position:relative;width:100%;background:#111;aspect-ratio:16/9;outline:1px solid var(--ink)}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.project-index .kicker{margin-bottom:4px}.detail .kicker{margin-bottom:0}.detail h1{max-width:16em;margin-top:12px;font-size:clamp(40px,6.5vw,76px);font-weight:500;letter-spacing:-.045em;line-height:1}.detail__dek{max-width:36rem;margin-top:14px;font-size:18px;line-height:1.45}.prose{max-width:40rem;margin-top:22px;font-size:18px;line-height:1.55}.prose>*+*{margin-top:.85em}.prose h2{font-size:clamp(32px,4vw,48px);letter-spacing:-.03em;line-height:1;margin-top:1.3em}.prose h2,.prose h3{font-family:var(--display);font-weight:500}.prose h3{font-size:28px;letter-spacing:-.02em;line-height:1.05;margin-top:1.2em}.prose a{text-decoration:underline;text-underline-offset:3px}.prose ul{padding-left:1.2em}.prose li+li{margin-top:.35em}.prose figure{margin:1.2em 0}.prose__media{display:block;background-size:cover;background-position:50%}.prose img{display:block;width:100%;height:auto}.prose figcaption{margin-top:6px;font-size:14px;line-height:1.4}.prose .video-frame{margin:1.2em 0}.detail__empty,.gallery{margin-top:20px}.gallery{column-count:1;column-gap:6px;width:calc(100% + (2 * var(--gutter)));margin-left:calc(-1 * var(--gutter));margin-right:calc(-1 * var(--gutter))}.gallery>*{display:block;width:100%;margin:0 0 6px;break-inside:avoid;page-break-inside:avoid}.tile{position:relative;display:flex;flex-direction:column;color:inherit;overflow:hidden;background:transparent;text-decoration:none}.tile__media{overflow:hidden;background:#111}.tile__media,.zoom__frame{display:block;background-size:cover;background-position:50%}.tile__media img,.zoom img{display:block;width:100%;height:auto;transition:transform .45s ease}.tile:hover img{transform:scale(1.045)}.tile__copy{display:flex;flex-direction:column;gap:2px;padding:8px 2px 14px}.tile__name{font-family:var(--display);font-size:clamp(20px,2vw,28px);font-weight:500;letter-spacing:-.03em;line-height:1.05}.tile__bio{max-width:36ch;font-size:14px;line-height:1.35}.tile__fallback{display:block;min-height:180px}.plain-page{max-width:40rem;padding-top:8px}.plain-page h1:not(.kicker){margin-top:10px;font-family:var(--display);font-size:clamp(48px,8vw,80px);font-weight:500;letter-spacing:-.045em;line-height:.9}.plain-page p{max-width:28rem;margin-top:14px}.plain-page a:not(.send){text-decoration:underline;text-underline-offset:3px}code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em}.video-page .kicker{margin-bottom:0}.video-grid{display:grid;grid-template-columns:1fr;grid-gap:6px;gap:6px;width:calc(100% + (2 * var(--gutter)));margin-top:18px;margin-left:calc(-1 * var(--gutter))}.booking{display:grid;grid-gap:28px;gap:28px;padding-top:28px}.booking-form{background:#fffef8;border:1px solid var(--ink);padding:6px 16px 20px}.booking h1{font-family:var(--display);font-size:clamp(56px,8vw,96px);font-weight:500;letter-spacing:-.04em;line-height:.85}.booking p a{text-decoration:underline;text-underline-offset:3px}.field{display:flex;flex-direction:column;gap:6px;margin-top:14px}.field span{font-size:16px;font-weight:400;letter-spacing:0;line-height:1.3}.field small{font-size:13px}.field input,.field select,.field textarea{width:100%;padding:10px 12px;border:1px solid var(--ink);border-radius:0;background:#fff;font:inherit;color:#111}.send{display:inline-block;margin-top:22px;padding:8px 14px 10px;border:1px solid var(--ink);border-radius:0;background:transparent;color:var(--ink);font-family:var(--display);font-size:28px;font-weight:500;letter-spacing:-.03em;line-height:1;text-transform:none;text-decoration:none;cursor:pointer}.send:hover{background:var(--ink);color:#f4efe6}.send:disabled{cursor:progress}.form-status{margin-top:16px}.form-status a{text-decoration:underline;text-underline-offset:3px}.zoom{margin:0;padding:0;border:0;background:transparent;cursor:zoom-in;text-align:left}.zoom,.zoom img{display:block;width:100%}.zoom img{height:auto}.lightbox{position:fixed;inset:0;width:100vw;height:100vh;max-width:100vw;max-height:100vh;margin:0;padding:0;border:0;background:transparent;overflow:hidden}.lightbox[open]{display:flex;align-items:center;justify-content:center}.lightbox::-webkit-backdrop{background:hsla(0,0%,7%,.94)}.lightbox::backdrop{background:hsla(0,0%,7%,.94)}.lightbox figure{display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:92vw;max-height:92vh;margin:0}.lightbox__frame{position:relative;width:min(92vw,calc(82vh * var(--lw) / var(--lh)));max-height:82vh;aspect-ratio:var(--lw) /var(--lh)}.lightbox__img{object-fit:contain}.lightbox figcaption{max-width:92vw;margin-top:8px;color:var(--paper);font-size:13px;line-height:1.4}.lightbox__close{position:fixed;top:16px;right:16px;padding:6px 12px 8px;border:1px solid var(--paper);border-radius:0;background:transparent;color:var(--paper);font-family:var(--display);font-size:24px;font-weight:500;letter-spacing:-.03em;line-height:1;text-transform:none;cursor:pointer}.lightbox__close:hover{background:var(--paper);color:var(--ink)}.lightbox :focus-visible{outline-color:var(--paper)}@media (min-width:700px){.gallery{column-count:2}.video-grid{grid-template-columns:1fr 1fr}}@media (min-width:800px){.booking{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:48px}}@media (min-width:1100px){.gallery{column-count:3}.video-grid{grid-template-columns:1fr 1fr 1fr}}@media (prefers-reduced-motion:reduce){.tile__media img,.zoom img{transition:none}.tile:hover img{transform:none}.intro{display:none!important}html.intro-pending{overflow:auto}html.intro-pending .home>:not(.intro),html.intro-pending .site-footer,html.intro-pending .site-nav,html.intro-pending .wordmark{opacity:1}html.intro-pending .site-header{background:#f4efe6;border-bottom-color:var(--ink)}}.studio-root{height:100vh;height:100dvh}@media (max-width:720px){.site-header__bar{flex-direction:column;align-items:flex-start;gap:12px}.site-nav{justify-content:flex-start}.site-nav a{font-size:18px;letter-spacing:-.02em}}