@font-face{font-family:GeistSans;src:url(../media/Geist_Variable-s.p.2-i4fw5gbtlb7.woff2)format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:GeistSans Fallback;src:local(Arial);ascent-override:94.56%;descent-override:27.76%;line-gap-override:0.0%;size-adjust:106.28%}.Ur3q_a_className{font-family:GeistSans,GeistSans Fallback}.Ur3q_a_variable{--font-geist-sans:"GeistSans", "GeistSans Fallback"}
@font-face{font-family:"serif";src:url(../media/instrument_serif_latin_400_normal-s.p.2zo21yor93qdc.woff2)format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:"serif";src:url(../media/instrument_serif_latin_400_italic-s.p.3bg-hzmj1g17f.woff2)format("woff2");font-display:swap;font-weight:400;font-style:italic}@font-face{font-family:serif Fallback;src:local(Arial);ascent-override:128.92%;descent-override:40.37%;line-gap-override:0.0%;size-adjust:76.79%}.hi-vtq_className{font-family:"serif",serif Fallback,Palatino,Palatino Linotype,Book Antiqua,Georgia,serif}.hi-vtq_variable{--font-serif:"serif", "serif Fallback", Palatino, Palatino Linotype, Book Antiqua, Georgia, serif}
:root{--bone:#f3f1ec;--ink:#121212;--muted:#5c5852;--muted-soft:#8a857c;--cobalt:#1f4bff;--line:#12121229;--bg:var(--bone);--fg:var(--ink);--fg-muted:var(--muted);--accent:var(--cobalt);--header-h:4.5rem;--pad:clamp(1.25rem, 4vw, 3.5rem);--serif:var(--font-serif), Palatino, "Palatino Linotype", "Book Antiqua", Georgia, serif;--sans:var(--font-geist-sans), "Helvetica Neue", Helvetica, Arial, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-theme=cinematic]{--bg:#14181b;--fg:#e8e6e1;--fg-muted:#c5ccc9;--accent:#8fbfb6;--line:#e8e6e129;--muted-soft:#9aada8;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--fg);background:#14181b}*,:before,:after{box-sizing:border-box}html,html[data-theme=paper]{background:var(--bone);color:var(--ink)}body{min-height:100svh;color:inherit;font-family:var(--sans);text-rendering:optimizelegibility;background:0 0;margin:0;font-size:1.0625rem;line-height:1.6}body.nav-open{overflow:hidden}img{max-width:100%;display:block}h1,h2,h3,p,ul,ol,figure,blockquote{margin:0}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}::selection{background:var(--cobalt);color:#fff}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{left:var(--pad);z-index:80;background:var(--cobalt);color:#fff;padding:.55rem .8rem;text-decoration:none;position:absolute;top:.75rem;transform:translateY(-180%)}.skip:focus{transform:none}.theme{background:var(--bg);min-height:100svh;color:var(--fg)}.site-header{z-index:40;height:var(--header-h);padding:0 var(--pad);background:color-mix(in srgb, var(--bg) 86%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1.25rem;display:flex;position:sticky;top:0}.brand{align-items:center;text-decoration:none;display:flex}.logo{width:auto;height:3.15rem}.nav-list{align-items:center;gap:1.6rem;margin:0;padding:0;list-style:none;display:flex}.nav-list a,.nav-list button,.menu-toggle{font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--fg);cursor:pointer;background:0 0;border:0;padding:.35rem 0;font-size:.75rem;font-weight:500;text-decoration:none}.nav-list a[aria-current=page],.nav-list button[aria-current=page]{color:var(--accent)}.nav-mail{letter-spacing:.04em!important;text-transform:none!important;color:var(--accent)!important;font-size:.9rem!important}.work-item{position:relative}.work-menu{background:var(--bg);border:1px solid var(--line);min-width:16.5rem;margin:0;padding:.35rem;list-style:none;position:absolute;top:calc(100% + .85rem);left:50%;transform:translate(-50%);box-shadow:0 18px 40px #12121214}.work-menu a{letter-spacing:.12em;align-items:baseline;gap:.85rem;padding:.7rem .75rem;text-decoration:none;display:flex}.work-menu a span{font-family:var(--serif);letter-spacing:0;text-transform:none;color:var(--accent);font-size:1rem;font-style:italic}.work-menu a[aria-current=page]{background:color-mix(in srgb, var(--accent) 8%, transparent)}.menu-toggle{justify-content:center;align-items:center;width:2.75rem;height:2.75rem;display:none;position:relative}.menu-glyph,.menu-glyph:before,.menu-glyph:after{background:currentColor;width:1.15rem;height:1px;display:block;position:relative}.menu-glyph:before,.menu-glyph:after{content:"";position:absolute;left:0}.menu-glyph:before{top:-.32rem}.menu-glyph:after{top:.32rem}.menu-toggle[aria-expanded=true] .menu-glyph{background:0 0}.menu-toggle[aria-expanded=true] .menu-glyph:before{top:0;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-glyph:after{top:0;transform:rotate(-45deg)}.nav-panel{inset:var(--header-h) 0 0 0;z-index:39;background:var(--bg);padding:1.25rem var(--pad) 2.5rem;position:fixed;overflow:auto}.nav-panel ul{gap:.15rem;margin:0;padding:0;list-style:none;display:grid}.nav-panel a{font-family:var(--serif);letter-spacing:-.03em;color:var(--fg);align-items:baseline;gap:.75rem;font-size:clamp(2.4rem,10vw,3.4rem);line-height:1.12;text-decoration:none;display:inline-flex}.nav-panel a[aria-current=page]{color:var(--accent)}.nav-panel .sub{padding-left:.1rem;font-size:clamp(1.45rem,6vw,1.9rem)}.nav-panel .sub span,.panel-label{font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-size:.75rem}.panel-label{margin-top:.85rem}.panel-mail{margin-top:1.25rem;font-family:var(--sans)!important;letter-spacing:0!important;color:var(--accent)!important;font-size:1.05rem!important}.hero{min-height:calc(100svh - var(--header-h));padding:clamp(2.25rem, 8vh, 5.5rem) var(--pad) 1.35rem;flex-direction:column;justify-content:space-between;display:flex}.hero h1{font-family:var(--serif);letter-spacing:-.04em;font-size:clamp(4.7rem,15.6vw,11.75rem);font-weight:400;line-height:.84}.hero h1 em{font-style:italic;font-weight:400}.hero-lead{max-width:34rem;color:var(--fg-muted);margin-top:clamp(1.25rem,3vw,2rem);font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.45}.scroll-cue{width:2.5rem;height:2.5rem;color:var(--accent);align-self:flex-start;place-items:center;margin-top:2rem;display:grid}.scroll-cue svg{fill:none;stroke:currentColor;stroke-width:1.4px;width:1.35rem;height:1.35rem}.index-head,.project{border-top:1px solid var(--line)}.index-head{padding:.9rem var(--pad);letter-spacing:.16em;text-transform:uppercase;color:var(--fg-muted);justify-content:space-between;font-size:.75rem;display:flex}.project{min-height:0;color:inherit;flex-direction:column;gap:1.15rem;padding:0 0 1.75rem;text-decoration:none;display:flex;position:relative;overflow:hidden}.project-media{aspect-ratio:16/10;background:#d9d4cb;width:100%;display:block;position:relative;overflow:hidden}.project-media img{object-fit:cover}.project-body{z-index:2;padding:0 var(--pad);grid-template-columns:3.25rem 1fr;gap:.35rem .75rem;display:grid;position:relative}.project-num{font-family:var(--serif);color:var(--accent);padding-top:.35rem;font-size:clamp(1.6rem,3vw,2.4rem);font-style:italic;line-height:1}.project h2{font-family:var(--serif);letter-spacing:-.035em;font-size:clamp(2.6rem,6vw,5.4rem);font-weight:400;line-height:.92}.project p{max-width:28rem;color:var(--fg-muted);margin-top:.65rem;font-size:1.02rem}.project-more{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin-top:1rem;font-size:.72rem;font-weight:500;display:inline-flex}.project-more:after{content:" →"}.project:before{content:"";opacity:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#121212d6 0%,#12121294 36%,#1212122e 68%,#1212120d 100%);position:absolute;inset:0}.page-intro{padding:clamp(2.75rem, 8vw, 6.5rem) var(--pad) clamp(1.75rem, 4vw, 3rem)}.page-intro h1,.cine-copy h1{font-family:var(--serif);letter-spacing:-.04em;font-size:clamp(4.4rem,12vw,8.75rem);font-weight:400;line-height:.86}.kicker{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);align-items:baseline;gap:1rem;margin-bottom:1rem;font-size:.75rem;display:flex}.kicker a{color:inherit;text-decoration:none}.kicker span{color:var(--fg-muted)}.lede{max-width:36rem;color:var(--fg-muted);margin-top:1.15rem;font-size:clamp(1.1rem,2vw,1.35rem);line-height:1.45}.photo-band{color:#f3f1ec;background:#1c1c1c;align-items:flex-end;min-height:clamp(26rem,78vh,46rem);display:flex;position:relative}.photo-band img{object-fit:cover;object-position:center 30%}.photo-scrim,.cine-scrim{position:absolute;inset:0}.photo-scrim{background:linear-gradient(#1212121f 0%,#1212122e 40%,#121212b8 100%)}.photo-copy,.cine-copy{z-index:1;padding:clamp(1.5rem, 4vw, 3.5rem) var(--pad);max-width:48rem;position:relative}.photo-copy h2{font-family:var(--serif);letter-spacing:-.03em;font-size:clamp(3.4rem,8vw,6.5rem);font-style:italic;font-weight:400;line-height:.9}.photo-copy p{max-width:34rem;margin-top:.85rem;font-size:clamp(1.05rem,2vw,1.3rem);line-height:1.4}.split,.team,.quote-block,.vision,.embrace{padding-left:var(--pad);padding-right:var(--pad)}.split{gap:.8rem;padding-top:clamp(2.75rem,7vw,5.5rem);padding-bottom:clamp(2rem,5vw,3.5rem);display:grid}.split h2,.team h2,.vision h2,.embrace h2{font-family:var(--serif);letter-spacing:-.02em;font-size:clamp(1.8rem,3vw,2.4rem);font-style:italic;font-weight:400}.split p{max-width:40rem;font-size:1.15rem;line-height:1.6}.split em{font-family:var(--serif);font-style:italic}.team{padding-bottom:clamp(2rem,5vw,3.5rem)}.team-caption{color:var(--fg-muted);max-width:36rem;margin:.85rem 0 1.15rem}.logo-row{flex-wrap:wrap;align-items:center;gap:1.1rem 1.75rem;margin:0;padding:0;list-style:none;display:flex}.logo-row li{place-items:center;display:grid}.logo-row img{object-fit:contain;filter:grayscale()contrast(.9);opacity:.58;width:auto;height:auto}.logo-row .is-mark img{max-width:2.4rem;max-height:2.15rem}.logo-row .is-wide img{max-width:6.75rem;max-height:1.55rem}.creds{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0;padding:0;list-style:none;display:grid}.creds li{padding:1.35rem var(--pad);font-family:var(--serif);letter-spacing:-.02em;font-size:clamp(1.45rem,2.4vw,2rem);line-height:1.2}.creds li+li{border-top:1px solid var(--line)}.quote-block{max-width:54rem;padding-top:clamp(3rem,8vw,6rem);padding-bottom:clamp(3.5rem,8vw,6.5rem)}.quote-block blockquote p{font-family:var(--serif);letter-spacing:-.025em;font-size:clamp(1.7rem,3.3vw,2.85rem);font-style:italic;line-height:1.22}.quote-block blockquote p:before{content:"“"}.quote-block blockquote p:after{content:"”"}.quote-block figcaption{justify-items:start;gap:.35rem;margin-top:1.5rem;display:grid}.signature{width:min(15rem,62vw);height:auto}.quote-block figcaption span{color:var(--fg-muted);letter-spacing:.04em;font-size:.95rem}.contact-intro{min-height:calc(100svh - var(--header-h) - 12rem);flex-direction:column;justify-content:flex-end;display:flex}.contact-intro h2{font-family:var(--serif);color:var(--fg-muted);margin-top:.8rem;font-size:clamp(1.6rem,3vw,2.2rem);font-style:italic;font-weight:400}.contact-mail{font-family:var(--serif);letter-spacing:-.03em;color:var(--accent);overflow-wrap:anywhere;margin-top:1.25rem;font-size:clamp(1.7rem,5.4vw,4.15rem);font-style:italic;line-height:1.05;text-decoration:none;display:inline-block}.contact-mail:hover{text-underline-offset:.12em;text-decoration:underline}.contact-address{color:var(--fg-muted);margin-top:1.25rem}.feature-frame{background:#d9d4cb;margin:0}.feature-frame img{width:100%;height:auto}.prose{max-width:44rem;padding:clamp(2rem, 5vw, 3.5rem) var(--pad) clamp(2.5rem, 6vw, 4.5rem);gap:1.15rem;display:grid}.prose p{font-size:1.125rem;line-height:1.65}.prose .lead{font-family:var(--serif);letter-spacing:-.02em;font-size:clamp(1.55rem,2.6vw,2.15rem);line-height:1.28}.cv-note{border-top:1px solid var(--line);font-family:var(--serif);margin-top:.75rem;padding-top:1.5rem;font-style:italic;font-size:clamp(1.45rem,2.8vw,2rem)!important;line-height:1.3!important}.cv-note a,.footer-meta a,.lede a{color:var(--accent)}.cine-hero{min-height:100svh;margin-top:calc(var(--header-h) * -1);color:#f3f1ec;background:#14181b;align-items:flex-end;display:flex;position:relative}.cine-hero img{object-fit:cover;object-position:center 40%}.cine-scrim{background:linear-gradient(#14181b2e 0%,#14181b14 35%,#14181bd1 100%)}.cine-copy{padding-top:calc(var(--header-h) + 1.5rem);padding-bottom:clamp(2rem,6vw,4rem)}.cine-copy .kicker,.cine-copy .lede{color:#d5ddd9}.cine-copy .kicker span{color:#8fbfb6}.cine-copy h1{font-style:italic}.vision{gap:1rem;padding-top:clamp(3rem,8vw,6rem);padding-bottom:clamp(2rem,5vw,3.5rem);display:grid}.vision p{max-width:44rem;font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.55}.cine-frame{background:#0e1214}.embrace{padding-top:clamp(3rem,8vw,5.5rem);padding-bottom:clamp(2rem,5vw,3rem)}.embrace h2{max-width:18ch;margin-bottom:1.5rem;font-size:clamp(2rem,4vw,3.1rem);line-height:1.05}.pillars{background:var(--line);border:1px solid var(--line);grid-template-columns:1fr 1fr;gap:1px;margin:0;padding:0;list-style:none;display:grid}.pillars li{background:var(--bg);padding:1.25rem 1rem 1.5rem}.pillars h3{font-family:var(--serif);letter-spacing:-.03em;color:var(--accent);font-size:clamp(2rem,4vw,3rem);font-style:italic;font-weight:400}.pillars p{color:var(--fg-muted);margin-top:.4rem}.lockup{padding:0 var(--pad) clamp(2rem, 5vw, 3.5rem);margin:0}.lockup img{width:min(100%,60rem);height:auto}.work-jump{padding:1.25rem var(--pad) clamp(2.5rem, 6vw, 4rem);border-top:1px solid var(--line);gap:.85rem;display:grid}.work-jump p{letter-spacing:.16em;text-transform:uppercase;color:var(--fg-muted);font-size:.75rem}.work-jump ul{flex-wrap:wrap;gap:.75rem 1.5rem;margin:0;padding:0;list-style:none;display:flex}.work-jump a{align-items:baseline;gap:.55rem;font-size:1.05rem;text-decoration:none;display:inline-flex}.work-jump a span{font-family:var(--serif);color:var(--accent);font-style:italic}.work-jump a[aria-current=page]{color:var(--fg-muted)}.site-footer{padding:clamp(2rem, 5vw, 3.25rem) var(--pad) 2.25rem;border-top:1px solid var(--line);gap:1.35rem;display:grid}.footer-brand{width:max-content;display:inline-flex}.logo-footer{height:4.25rem}.footer-meta{color:var(--fg-muted);gap:.35rem;font-size:.98rem;display:grid}.footer-meta a{text-underline-offset:.15em}@media (min-width:720px){.creds{grid-template-columns:repeat(3,1fr)}.creds li+li{border-top:0;border-left:1px solid var(--line)}.split{grid-template-columns:minmax(9rem,14rem) minmax(0,40rem);align-items:start;gap:2rem}.pillars{grid-template-columns:repeat(4,1fr)}.site-footer{grid-template-columns:auto 1fr;align-items:end}.footer-meta{text-align:right;justify-items:end}}@media (min-width:801px){.project{min-height:clamp(18rem,46vh,32rem);padding:clamp(1.75rem, 4vh, 3rem) calc(min(38vw, 28rem) + var(--pad)) clamp(1.75rem, 4vh, 3rem) var(--pad);display:block}.project-body{max-width:42rem;padding:0}.project-media{aspect-ratio:auto;width:min(38vw,28rem);height:auto;position:absolute;top:0;bottom:0;right:0}}@media (min-width:801px) and (prefers-reduced-motion:no-preference){.project-media{transition:width .7s cubic-bezier(.2,.7,.2,1)}.project-media img{transition:transform .8s}.project:before{transition:opacity .45s}}@media (min-width:801px){.project:hover .project-media,.project:focus-visible .project-media{width:100%}.project:hover:before,.project:focus-visible:before{opacity:1}.project:hover .project-body,.project:focus-visible .project-body,.project:hover .project h2,.project:focus-visible .project h2,.project:hover .project p,.project:focus-visible .project p,.project:hover .project-num,.project:focus-visible .project-num,.project:hover .project-more,.project:focus-visible .project-more{color:#f3f1ec}.project:hover .project p,.project:focus-visible .project p{color:#e4e0d8}.project:hover img,.project:focus-visible img{transform:scale(1.045)}}@media (max-width:960px){.nav-desktop{display:none}.menu-toggle{display:inline-flex}}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}.scroll-cue svg{animation:1.8s ease-in-out infinite cue}}@media (prefers-reduced-motion:reduce){.scroll-cue svg{animation:none}}@keyframes cue{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}
