:root{--black:#101010;--paper:#f3f2ef;--grey:#aaa8ad;--violet:#5f4b8b;--violet-light:#bfabe4;--line:#363438}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--black);color:var(--paper);font:16px/1.5 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:2px solid var(--violet-light);outline-offset:6px}a:hover{color:var(--violet-light)}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}header{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:28px 4%;background:var(--black)}.home header{position:absolute;inset:0 0 auto;background:#101010e8}.wordmark{font-size:clamp(40px,5vw,64px);font-weight:900;letter-spacing:-.065em;line-height:1;flex-shrink:0}.wordmark span{vertical-align:top;font-size:14px;letter-spacing:0;margin-left:6px}nav{display:flex;gap:16px 30px;justify-content:flex-end;flex-wrap:wrap}nav a{font-size:14px;padding:6px 0;border-bottom:1px solid transparent}nav a:hover,nav a[aria-current]{border-color:var(--violet-light)}.skip{position:fixed;left:20px;top:-100px;z-index:20;padding:12px;background:var(--black)}.skip:focus{top:10px}.hero{height:100svh;min-height:650px;max-height:1200px;position:relative;background:#181818}.hero video{width:100%;height:100%;object-fit:cover}.hero-caption{position:absolute;bottom:7%;left:4%;background:#101010d9;padding:18px 24px 22px;max-width:calc(100% - 8%);border-left:3px solid var(--violet)}.hero-caption h1{font-size:clamp(58px,9vw,140px);letter-spacing:-.065em;line-height:1.05}.hero-caption p{font-size:16px;margin-top:12px}#motion{position:absolute;right:4%;bottom:7%;background:#101010d9;border:1px solid #999;padding:12px 20px;min-height:44px}.work-section{padding:80px 4% 32px}.section-label{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:20px;margin-bottom:32px}.section-label h2,.section-label span{font-size:14px;letter-spacing:.035em}.section-label span{color:var(--grey)}.section-label:before{content:'';height:6px;width:6px;background:var(--violet);align-self:center}.section-label h2{flex:1}.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 24px}.work-tile:only-child{grid-column:1/-1}.work-image{overflow:hidden;background:#1b1b1b}.work-image img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;transition:transform .55s ease}.work-tile:only-child img{aspect-ratio:21/9}.work-tile:hover img{transform:scale(1.02)}.work-caption{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-top:16px}.work-caption h3{font-size:clamp(22px,2.5vw,36px);line-height:1.2;letter-spacing:-.035em}.work-caption p{font-size:14px;color:var(--grey);text-align:right;max-width:50%}.work-index{margin-top:35px}.work-index:empty,.work-grid:empty{display:none}.work-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.6fr) 24px;gap:24px;align-items:center;border-top:1px solid var(--line);padding:22px 0}.work-row:last-child{border-bottom:1px solid var(--line)}.work-row h3{font-size:clamp(22px,3vw,42px);letter-spacing:-.035em;line-height:1.15}.work-row>span{font-size:14px;color:var(--grey)}.work-row>span:last-child{text-align:right;color:inherit}.experimental{margin:64px 4% 0;padding:28px 0 0;border-top:2px solid var(--violet)}.experimental>p{font-size:14px;color:var(--grey);margin-bottom:20px}.experimental .work-row{border:0}.about{padding:110px 8%;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:12%;align-items:center}.about img{width:100%;display:block;height:auto;max-height:620px;object-fit:cover}.overline{font-size:14px;color:var(--grey);margin-bottom:26px}.about h2{font-size:clamp(38px,5vw,76px);line-height:1.1;letter-spacing:-.05em}.about .bio{font-size:clamp(24px,3vw,38px);line-height:1.3;color:var(--paper);margin:28px 0}.about p{color:var(--grey);max-width:44ch}footer{margin:0 4%;padding:50px 0 32px;border-top:1px solid var(--line)}.contact{font-size:clamp(38px,6vw,86px);letter-spacing:-.045em;line-height:1.2}.footer-links{display:flex;flex-wrap:wrap;gap:18px 32px;align-items:center;padding-top:40px;font-size:14px}.footer-links span{margin-left:auto;color:var(--grey)}.project-page main{padding:25px 4% 60px}.back{display:inline-block;font-size:14px;color:var(--grey);padding:12px 0}.project-title{padding:32px 0 38px}.project-title h1{font-size:clamp(42px,7vw,100px);line-height:1.06;letter-spacing:-.055em;max-width:19ch;overflow-wrap:break-word}.project-title p{margin-top:18px;color:var(--grey);font-size:16px}.project-cover,.project-film{display:block;width:100%;height:auto;max-height:85svh;object-fit:contain;background:#080808}.embed{width:100%;aspect-ratio:16/9;background:#181818}.embed iframe{border:0;width:100%;height:100%;display:block}.embed.vertical{width:min(540px,100%);height:720px;max-height:85svh;min-height:420px;margin:0 auto}.original{display:block;width:fit-content;font-size:14px;border-bottom:1px solid var(--violet-light);margin:20px 0 32px;padding-bottom:6px}.vertical+.original{margin-left:auto;margin-right:auto}.film-label{font-size:18px;margin:36px 0 20px}.project-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;border-top:1px solid var(--line);padding:28px 0;margin:38px 0}.project-facts dt{color:var(--grey);font-size:14px;margin-bottom:10px}.project-facts dd{margin:0;font-size:18px}.concept{max-width:65ch;font-size:20px;margin:30px 0}.credits{margin:30px 0}.credits h2{font-size:20px;margin-bottom:20px}.project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:center}.project-gallery a:nth-child(5n+1){grid-column:1/-1}.project-gallery img{display:block;width:100%;height:auto;max-height:90svh;object-fit:contain}.next-project{display:flex;flex-direction:column;gap:14px;margin-top:80px;padding:28px 0;border-top:1px solid var(--line)}.next-project span{font-size:14px;color:var(--grey)}.next-project strong{font-size:clamp(28px,4vw,54px);font-weight:400;line-height:1.15;letter-spacing:-.03em}dialog{color:var(--paper);background:var(--black);border:1px solid var(--line);padding:24px;width:min(1200px,96vw);max-height:96svh}dialog::backdrop{background:#000e}.viewer-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.viewer-bar h2{font-size:24px}.viewer-close,.photo-stage button{background:none;border:1px solid #777;min-height:44px;padding:8px 12px}.photo-stage{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:12px;align-items:center}.photo-stage img{width:100%;height:70svh;object-fit:contain}#photo-count{text-align:center;margin-top:12px;font-size:14px}@media(max-width:900px){header{align-items:flex-start}nav{gap:8px 20px;max-width:65%}.work-caption{display:block}.work-caption p{text-align:left;max-width:none;margin-top:8px}.about{padding:80px 4%;gap:6%}}@media(max-width:600px){html{scroll-padding-top:30px}header{padding:22px 5%;gap:16px}nav{max-width:68%;gap:4px 16px;justify-content:flex-end}.wordmark{font-size:38px}nav a{font-size:14px}.hero{min-height:650px;max-height:900px}.hero-caption{left:5%;bottom:100px;padding:14px 16px}.hero-caption h1{font-size:17vw}#motion{bottom:30px;right:5%}.work-section{padding:54px 5% 16px}.work-grid{grid-template-columns:1fr;gap:30px}.work-tile:only-child img{aspect-ratio:16/10}.work-row{grid-template-columns:minmax(0,1fr) 24px;gap:8px}.work-row>span:nth-child(2){grid-column:1;grid-row:2}.work-row>span:last-child{grid-column:2;grid-row:1/3}.about{grid-template-columns:1fr;padding:70px 5%;gap:32px}.about figure{max-width:72%}.experimental{margin:45px 5% 0}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:18px}.footer-links>a:first-child,.footer-links span{grid-column:1/-1;margin:0}.project-page main{padding:16px 5% 40px}.project-title{padding-top:22px}.project-title h1{font-size:12vw}.project-facts{grid-template-columns:1fr;gap:22px}.project-gallery{grid-template-columns:1fr;gap:18px}.project-gallery a:nth-child(5n+1){grid-column:auto}.project-cover{max-height:75svh}.photo-stage{grid-template-columns:36px minmax(0,1fr) 36px;gap:4px}.photo-stage button{padding:4px}dialog{padding:14px}.photo-stage img{height:65svh}.viewer-bar h2{font-size:20px}.contact{font-size:11vw}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
