@font-face{font-family:Barlow;src:url('./assets/fonts/barlow-condensed-bold.ttf') format('truetype');font-weight:700;font-display:swap}@font-face{font-family:DM;src:url('./assets/fonts/dm-sans.ttf') format('truetype');font-weight:400 700;font-display:swap}
:root{--ground:#090909;--ink:#eee8dc;--quiet:#a8a49d;--rule:#363431;--gutter:clamp(22px,3vw,56px);--header:84px;--caption:64px}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-color:#6b655e var(--ground)}body{background:var(--ground);color:var(--ink);font-family:DM,Arial,sans-serif;margin:0;-webkit-font-smoothing:antialiased}::selection{background:#eee8dc;color:#17110e}a{color:inherit;text-decoration:none;text-underline-offset:5px}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--ink);outline-offset:6px}img{display:block;max-width:100%}[hidden]{display:none!important}.skip-link{position:absolute;left:20px;top:-60px;z-index:100;background:var(--ink);color:var(--ground);padding:12px}.skip-link:focus{top:12px}#site-header{height:var(--header);display:flex;justify-content:space-between;align-items:center;padding:0 var(--gutter);gap:24px;background:var(--ground);position:sticky;top:0;z-index:5}.wordmark{font-size:12px;letter-spacing:.24em;line-height:1.5}nav{display:flex;gap:clamp(24px,3vw,54px)}nav a{font-size:11px;letter-spacing:.19em;padding:9px 0;position:relative}nav a:after{content:'';position:absolute;bottom:1px;left:0;right:.19em;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .25s}nav a:hover:after,nav a[aria-current]:after{transform:scaleX(1)}.arrow{display:inline-block;width:14px;height:14px;position:relative;vertical-align:middle;flex-shrink:0}.arrow:before{content:'';position:absolute;right:1px;top:1px;width:9px;height:9px;border-top:1px solid currentColor;border-right:1px solid currentColor}.arrow:after{content:'';position:absolute;right:2px;top:2px;width:15px;height:1px;background:currentColor;transform:rotate(-45deg);transform-origin:right}.cinema{height:calc(100svh - var(--header) - var(--caption));min-height:490px;max-height:1100px;position:relative;overflow:hidden;background:#21191b}.cinema-media{position:absolute;inset:0;overflow:hidden}.film-image{width:100%;height:100%;object-fit:cover;transform:scale(1.35);object-position:center center}.cinema-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.17),transparent 35%,rgba(0,0,0,.12) 65%,rgba(0,0,0,.48));pointer-events:none}.home-identity{position:absolute;top:27px;left:var(--gutter);font-size:11px;letter-spacing:.14em;color:#fff5e9;text-shadow:0 1px 8px #090909}.cinema-title{position:absolute;bottom:14px;left:var(--gutter);right:90px;pointer-events:none}.cinema-title h1{font-family:Barlow,sans-serif;font-weight:700;font-size:11.5vw;transform:scaleY(1.8);transform-origin:left bottom;white-space:nowrap;line-height:.87;letter-spacing:-.025em;margin:0;color:#f1e9d9;max-width:100%;text-wrap:balance}.film-switcher{position:absolute;right:var(--gutter);top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:2px}.film-marker{position:relative;width:46px;height:40px;border:0;padding:0 0 0 10px;display:flex;justify-content:flex-end;align-items:center;background:transparent;cursor:pointer;color:var(--ink)}.film-marker>span:first-child{width:25px;height:2px;background:#eee8dc66;transition:width .3s,background .3s}.film-marker[aria-pressed=true]>span:first-child,.film-marker:hover>span:first-child{width:36px;background:var(--ink)}.marker-name{position:absolute;white-space:nowrap;right:55px;opacity:0;pointer-events:none;font-size:11px;background:#090909cc;padding:6px 10px;transition:opacity .2s}.film-marker:hover .marker-name,.film-marker:focus-visible .marker-name{opacity:1}.cinema-caption{height:var(--caption);padding:0 var(--gutter);display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:11px;letter-spacing:.19em}.cinema-caption a{display:flex;align-items:center;gap:22px}.film-player,.film-player iframe{width:100%;height:100%;position:absolute;inset:0;border:0}.has-video .cinema-title,.has-video .home-identity,.has-video .cinema-shade{display:none}.has-video .film-switcher{top:36px;transform:none}.home-end{padding:75px var(--gutter);display:flex;align-items:end;justify-content:space-between;gap:35px}.home-end>p{font-size:clamp(35px,4vw,65px);line-height:1.05;letter-spacing:-.035em;margin:0}.home-end em{font-family:Georgia,serif;font-weight:400}.home-end>div>p{font-size:14px;color:var(--quiet);margin:0 0 20px}.line-link{display:inline-flex;align-items:center;gap:30px;font-size:13px;padding-bottom:7px;border-bottom:1px solid var(--quiet);transition:color .2s,border-color .2s}.line-link:hover{color:#fff;border-color:#fff}#site-footer{border-top:1px solid var(--rule);margin:0 var(--gutter);padding:26px 0 30px;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:11px;letter-spacing:.13em;color:var(--quiet)}#site-footer a{display:flex;align-items:center;gap:13px;color:var(--ink)}#site-footer .arrow{width:11px;height:11px}.page-content{padding:65px var(--gutter) 90px}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:60px}.page-heading h1,.about-title,.contact-title,.project-title{font-family:Barlow,sans-serif;font-size:clamp(80px,12vw,190px);text-transform:uppercase;font-weight:700;line-height:.9;letter-spacing:-.025em;margin:0}.page-heading>p{color:var(--quiet);font-size:15px;line-height:1.6;max-width:280px;margin:0 0 5px}.works{display:grid;grid-template-columns:1.25fr 1fr;align-items:start;gap:100px 5vw}.work-entry-1{padding-top:170px}.work-entry-2{grid-column:1;max-width:88%}.work-image{position:relative;overflow:hidden;aspect-ratio:1.7;background:#171413}.work-image img{width:100%;height:100%;object-fit:cover;transform:scale(1.35);transition:transform .65s cubic-bezier(.16,1,.3,1)}.work-entry:hover img{transform:scale(1.41)}.work-explore{position:absolute;right:20px;bottom:20px;font-size:11px;letter-spacing:.1em;display:flex;align-items:center;gap:14px;text-shadow:0 1px 8px #000}.work-heading{display:flex;justify-content:space-between;align-items:center;margin:20px 0 10px;gap:15px}.work-heading h2{font-family:Barlow,sans-serif;text-transform:uppercase;font-size:clamp(32px,3.5vw,56px);line-height:1;margin:0;font-weight:700;letter-spacing:-.02em}.work-entry>p{color:var(--ink);font-size:12px;line-height:1.6;margin:0}.work-entry>p span{color:var(--quiet)}.project-content{padding:24px var(--gutter) 90px}.project-top{display:flex;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.13em;color:var(--quiet);margin:20px 0 35px}.back-link{color:var(--ink);border-bottom:1px solid var(--rule);padding-bottom:6px}.project-title{font-size:clamp(65px,11vw,170px);margin-bottom:40px}.project-media{position:relative;aspect-ratio:16/9;background:#111}.project-media>img{width:100%;height:100%;object-fit:contain}.project-details{display:grid;grid-template-columns:1fr 1.25fr;gap:9vw;padding:60px 0 80px}.role-label{font-size:11px;letter-spacing:.15em;color:var(--quiet);margin:0 0 14px}.project-role{font-size:30px;margin:0;letter-spacing:-.02em}.project-summary{font-size:21px;line-height:1.6;margin:0 0 38px;max-width:650px}.credits{margin:0 0 35px}.credits>div{display:grid;grid-template-columns:160px 1fr;gap:24px;padding:14px 0;border-top:1px solid var(--rule);font-size:12px;line-height:1.6}.credits dt{color:var(--quiet)}.credits dd{margin:0}.next-project{display:grid;grid-template-columns:1fr auto;gap:25px;align-items:center;border-top:1px solid var(--rule);padding:35px 0}.next-project>span:first-child{grid-column:1 / -1;font-size:11px;letter-spacing:.15em;color:var(--quiet)}.next-project strong{font-family:Barlow,sans-serif;font-size:clamp(40px,6vw,90px);font-weight:700;line-height:1;text-transform:uppercase}.next-project>.arrow{width:30px;height:30px;transform:scale(1.7)}.about-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9vw;align-items:start;margin-top:60px}.about-title{font-size:clamp(65px,9vw,145px);max-width:700px}.about-title span{color:#b7aea3}.about-image{aspect-ratio:1.2;overflow:hidden;margin-top:50px}.about-image img{width:100%;height:100%;object-fit:cover;transform:scale(1.35)}.about-copy{padding-top:5px;min-width:0}.about-copy .lead{font-size:clamp(21px,2.3vw,34px);line-height:1.4;margin:0 0 35px;color:var(--ink);letter-spacing:-.02em}.about-copy p{font-size:15px;line-height:1.9;color:var(--quiet);max-width:60ch;margin:0 0 25px}.about-copy .line-link{margin-top:25px}.about-practice{padding-top:28px;margin-top:35px;border-top:1px solid var(--rule);font-size:12px;color:var(--quiet);line-height:2}.about-practice span{color:var(--ink);display:block;margin-bottom:10px}.contact-content{min-height:calc(100svh - 174px);display:flex;flex-direction:column;justify-content:center;padding-top:70px;padding-bottom:80px}.contact-title{font-size:clamp(85px,14vw,220px);max-width:1100px}.contact-copy{color:var(--quiet);font-size:18px;line-height:1.6;max-width:470px;margin:35px 0 45px}.contact-address{display:flex;align-items:center;justify-content:space-between;gap:20px;width:max-content;max-width:100%;font-size:clamp(15px,2.8vw,43px);letter-spacing:-.02em;border-bottom:1px solid var(--ink);padding:0 0 12px;overflow-wrap:anywhere}.contact-social{display:flex;gap:40px;font-size:11px;letter-spacing:.13em;margin-top:50px}.load-error,.not-found{padding:60px var(--gutter);line-height:1.7}.load-error a{text-decoration:underline}.not-found h1{font-family:Barlow,sans-serif;font-size:80px;margin:0 0 30px}
@media(min-width:1600px){.cinema-title{bottom:22px}.cinema-title h1{font-size:11.5vw}}
@media(max-width:900px){:root{--header:76px}.wordmark{font-size:11px;letter-spacing:.17em}nav{gap:23px}nav a{font-size:11px}.cinema-title h1{font-size:11.5vw}.works{gap:60px 5vw}.work-entry-1{padding-top:110px}.about-layout{gap:45px}.about-title{font-size:10vw}.project-details{gap:45px}.credits>div{grid-template-columns:125px 1fr}.contact-title{font-size:17vw}}
@media(max-width:600px){:root{--header:90px;--caption:82px}#site-header{align-items:center;gap:20px}.wordmark{font-size:11px;letter-spacing:.12em;max-width:130px;line-height:1.6}nav{gap:15px}nav a{font-size:11px;letter-spacing:.08em}.cinema{min-height:480px;max-height:none}.film-image{object-position:48% center;transform:scale(1.35)}.cinema-title{left:var(--gutter);right:22px;bottom:25px}.cinema-title h1{font-size:23vw;transform:none;white-space:normal;line-height:.88;max-width:90%;text-wrap:balance}.home-identity{font-size:11px;top:23px;letter-spacing:.09em}.film-switcher{right:15px;top:43%}.film-marker{height:44px;width:44px}.film-marker>span:first-child{width:19px}.film-marker[aria-pressed=true]>span:first-child{width:29px}.cinema-caption{font-size:11px;letter-spacing:.1em;gap:20px}.cinema-caption>span{max-width:150px;line-height:1.8}.cinema-caption a{gap:12px;white-space:nowrap}.home-end{padding:50px var(--gutter);align-items:start;flex-direction:column;gap:35px}.home-end>p{font-size:44px}.home-end>div>p{font-size:13px}#site-footer{font-size:11px;flex-wrap:wrap;gap:20px}#site-footer>span:nth-child(2){display:none}.page-content{padding-top:40px;padding-bottom:60px}.page-heading{align-items:start;flex-direction:column;gap:25px;margin-bottom:45px}.page-heading h1{font-size:26vw}.page-heading>p{font-size:14px}.works{grid-template-columns:1fr;gap:45px}.work-entry-1{padding-top:0}.work-entry-2{max-width:none;grid-column:auto}.work-heading h2{font-size:38px}.project-top{font-size:11px;margin-bottom:30px}.project-title{font-size:18vw;margin-bottom:30px}.project-content{padding-top:15px;padding-bottom:45px}.project-media{margin-left:calc(var(--gutter) * -1);margin-right:calc(var(--gutter) * -1)}.project-details{grid-template-columns:1fr;gap:35px;padding:35px 0 50px}.project-summary{font-size:18px}.project-role{font-size:26px}.credits>div{font-size:11px;grid-template-columns:110px 1fr;gap:15px}.next-project{padding:28px 0}.next-project strong{font-size:43px}.about-layout{grid-template-columns:1fr;margin-top:15px;gap:40px}.about-title{font-size:20vw}.about-image{margin-top:35px;aspect-ratio:1.6}.about-copy .lead{font-size:24px}.about-copy p{font-size:14px}.contact-content{min-height:calc(100svh - 172px);padding-top:45px;padding-bottom:60px}.contact-title{font-size:23vw}.contact-copy{font-size:16px;margin:30px 0 35px}.contact-address{font-size:4.2vw;gap:15px}.contact-social{font-size:11px;margin-top:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
