:root{--yellow:#ffea00;--bg:#10110f;--paper:#f3f2ec;--muted:#a3a69b;--line:#ffffff24}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--paper);font:400 16px/1.5 'Helvetica Neue',Helvetica,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--yellow);outline-offset:6px}header{position:absolute;inset:0 0 auto;z-index:5;height:120px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;background:linear-gradient(#080a08bb,transparent)}.brand{display:flex;align-items:center;gap:22px}.brand img{width:120px;height:auto}.brand span{font-size:10px;letter-spacing:.12em}nav{display:flex;gap:32px;font-size:13px}nav a:hover{color:var(--yellow)}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:300;letter-spacing:-.045em;line-height:1.04}h1{font-size:clamp(64px,7.8vw,145px)}h2{font-size:clamp(45px,5.8vw,100px)}h1 span,h2 span{color:var(--yellow)}.eyebrow{font-size:10px;letter-spacing:.18em;margin-bottom:24px;color:var(--yellow)}.hero{height:100svh;min-height:680px;position:relative;overflow:hidden}.hero>video,.closing-film>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.shade{position:absolute;inset:0;background:linear-gradient(90deg,#080c09b0,transparent 85%),linear-gradient(0deg,#080c09b0,transparent 60%)}.hero-text{position:absolute;left:6vw;bottom:21vh;right:5vw}.intro{font-size:16px;color:#e0e2d6;margin-top:28px}.hero-bottom{position:absolute;bottom:38px;left:6vw;right:6vw;display:flex;align-items:center;gap:40px;font-size:10px;letter-spacing:.1em}.hero-bottom>span{flex:1}.hero-bottom button{font-size:11px;border-bottom:1px solid #ffffff60;padding:10px 0}.hero-bottom button span{margin-left:40px}#motion{color:#c3c7b7;font-size:10px}.section{padding:115px 6vw}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:55px;gap:50px}.section-heading>p{font-size:14px;line-height:1.8;color:var(--muted);max-width:350px;margin-bottom:5px}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:62px 28px}.work-card{text-align:left;padding:0;display:block}.work-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:#1a1c16}.work-media video{width:100%;height:100%;object-fit:cover;transition:transform .8s}.work-card:hover video{transform:scale(1.035)}.play-icon{position:absolute;top:20px;right:20px;display:grid;place-items:center;width:42px;height:42px;border:1px solid #ffffff90;border-radius:50%;background:#10110f30;font-size:22px;transition:background .3s}.work-card:hover .play-icon{background:var(--yellow);color:var(--bg);border-color:var(--yellow)}.media-label{position:absolute;left:20px;bottom:20px;font-size:9px;letter-spacing:.15em;background:#10110f80;padding:7px 10px}.work-caption{display:flex;justify-content:space-between;align-items:center;padding-top:18px}.work-caption h3{font-size:32px;margin-bottom:8px}.work-caption span{font-size:10px;letter-spacing:.1em;color:var(--muted)}.statement{border-block:1px solid var(--line);padding-top:130px;padding-bottom:100px}.statement h2{font-size:clamp(43px,6.2vw,110px)}.statement-bottom{display:flex;justify-content:space-between;gap:50px;margin-top:70px;align-items:flex-start}.statement-bottom span{font-size:10px;letter-spacing:.15em}.statement-bottom p{max-width:450px;color:var(--muted);font-size:15px;line-height:1.8}.motif-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px 22px}.motif{margin:0}.motif img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.motif figcaption{display:flex;gap:16px;padding-top:19px}.motif-number{color:var(--yellow);font-size:10px;padding-top:6px}.motif h3{font-size:28px;letter-spacing:-.025em}.motif p{font-size:12px;color:var(--muted);margin-top:10px;line-height:1.7}.expertise{background:#181a15}.expertise-layout{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:start}.expertise-film video{width:100%;height:490px;object-fit:cover;display:block}.expertise-film>p{font-size:10px;letter-spacing:.13em;margin-top:18px;color:var(--muted)}.services article{display:flex;gap:24px;border-top:1px solid var(--line);padding:28px 0 32px}.services article>span{font-size:10px;color:var(--yellow);padding-top:5px}.services h3{font-size:28px;letter-spacing:-.02em;line-height:1.2}.services p{font-size:14px;line-height:1.8;color:var(--muted);margin-top:18px}.closing-film{position:relative;height:80svh;min-height:500px}.closing-label{position:absolute;left:6vw;bottom:70px}.closing-label h2{font-size:clamp(65px,8vw,140px)}.closing-label button{border-bottom:1px solid #ffffff90;padding:14px 0;margin-top:25px;font-size:13px}.contact{padding-top:140px;padding-bottom:100px}.contact h2{font-size:clamp(65px,9vw,160px)}.contact-bottom{display:flex;justify-content:space-between;gap:40px;margin-top:70px}.contact-bottom p{font-size:14px;line-height:1.8;color:var(--muted)}.contact-bottom>div{display:flex;flex-direction:column;gap:18px}.contact-bottom a{font-size:16px;border-bottom:1px solid var(--line);padding-bottom:8px}.contact-bottom a:hover{color:var(--yellow)}footer{margin:0 6vw;padding:30px 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px}footer img{width:90px;display:block}footer p,footer button{font-size:9px;letter-spacing:.08em;color:var(--muted)}dialog{max-width:1100px;width:92vw;max-height:90svh;overflow:auto;background:#171915;color:var(--paper);border:1px solid var(--line);padding:28px}dialog::backdrop{background:#000d;backdrop-filter:blur(8px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.dialog-head h2{font-size:26px;letter-spacing:-.02em}.dialog-head button{font-size:30px}.dialog-head+video{display:block;width:100%;max-height:68svh}dialog p{font-size:12px;line-height:1.8;color:var(--muted);margin-top:18px}#creditsDialog{max-width:750px;padding:36px}.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:900px){header{height:100px;padding:0 24px}.brand img{width:92px}.brand span{display:none}nav{gap:18px;font-size:11px}.hero-text{left:25px;bottom:24vh}.hero h1{font-size:clamp(58px,11vw,95px)}.hero .eyebrow{max-width:230px;line-height:1.7;font-size:9px}.hero-bottom{left:25px;right:25px;bottom:25px;gap:22px;flex-wrap:wrap}.hero-bottom>span{flex-basis:100%;font-size:8px}.hero-bottom button span{margin-left:15px}.section{padding:75px 25px}.section-heading{display:block;margin-bottom:35px}.section-heading>p{margin-top:25px;font-size:13px}.work-grid{gap:35px 17px}.work-media{aspect-ratio:4/5}.work-caption h3{font-size:24px}.work-caption span{font-size:8px}.work-caption>span{display:none}.play-icon{width:32px;height:32px;top:12px;right:12px;font-size:18px}.media-label{font-size:7px;left:12px;bottom:12px}.statement-bottom{display:block;margin-top:35px}.statement-bottom p{margin-top:22px;font-size:14px}.motif-grid{grid-template-columns:1fr 1fr;gap:30px 16px}.motif figcaption{gap:8px}.motif h3{font-size:23px}.motif p{font-size:11px}.expertise-layout{grid-template-columns:1fr;gap:30px}.expertise-film video{height:350px}.services h3{font-size:25px}.closing-label{left:25px;bottom:45px}.contact-bottom{display:block;margin-top:40px}.contact-bottom>div{margin-top:30px}.contact-bottom a{font-size:14px}footer{margin:0 25px;flex-wrap:wrap;gap:20px}footer p{font-size:8px}footer button{font-size:9px}dialog{padding:18px}.dialog-head h2{font-size:21px}.intro{font-size:14px}}@media(max-width:440px){nav{gap:12px;font-size:10px}.brand img{width:76px}.work-grid{grid-template-columns:1fr}.work-media{aspect-ratio:16/11}.work-caption>span{display:block}.hero h1{font-size:58px}.motif-grid{gap:30px 12px}.motif h3{font-size:21px}.motif-number{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* A held cinematic frame with transitions driven by ordinary page scrolling. */
.scroll-films{height:280svh;position:relative}.film-stage{position:sticky;top:0;height:100svh;min-height:540px;overflow:hidden;background:var(--bg)}.film-scene{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .7s ease;z-index:0}.film-scene.active{opacity:1;pointer-events:auto;z-index:1}.film-scene>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;will-change:transform}.scene-label{position:absolute;left:6vw;bottom:12vh;transform:translateY(16px);transition:transform .8s ease}.active .scene-label{transform:none}.scene-label h2{font-size:clamp(65px,10vw,170px)}.scene-label button{margin-top:28px;font-size:13px;border-bottom:1px solid #fff8;padding:12px 0}.hero-text{will-change:transform,opacity}#vimeoPlayer{width:100%;aspect-ratio:16/9;border:0;background:#000;display:block}#externalFilm{display:inline-block;color:var(--yellow);font-size:12px;margin-top:15px}[hidden],#player[hidden],#vimeoPlayer[hidden],#externalFilm[hidden]{display:none!important}.static-motion .scroll-films{height:auto}.static-motion .film-stage{position:relative;height:auto;overflow:visible}.static-motion .film-scene{position:relative;height:75svh;min-height:450px;opacity:1;pointer-events:auto}.static-motion .scene-label{transform:none}.static-motion .hero-text{transform:none!important;opacity:1!important}@media(max-width:900px){.scene-label{left:25px}.scroll-films{height:240svh}}@media(prefers-reduced-motion:reduce){.scroll-films{height:auto}.film-stage{position:relative;height:auto;overflow:visible}.film-scene{position:relative;height:75svh;min-height:450px;opacity:1;pointer-events:auto}.scene-label{transform:none}}

/* Official portfolio: Work / About / Contact. Original media proportions. */
header{position:relative;background:none;height:125px}nav a[aria-current=page]{color:var(--yellow)}.section{padding-top:70px;padding-bottom:80px}.section-heading h1{font-size:clamp(44px,6vw,90px)}.work-media{aspect-ratio:auto;min-height:0;background:transparent;overflow:visible}.work-media video{display:block;width:100%;height:auto;object-fit:contain;transform:none!important}.work-card:hover video{transform:none}.work-grid{align-items:start}.motif-grid{align-items:start}.motif img{height:auto;aspect-ratio:auto;object-fit:contain}.play-icon{background:#10110f80}.about-page,.contact-page{min-height:70vh}.about-page h1,.contact-page h1{font-size:clamp(48px,6.5vw,100px)}.about-copy{max-width:750px;margin:55px 0;font-size:clamp(19px,2.1vw,29px);line-height:1.6;color:var(--paper)}.about-copy p+p{margin-top:24px}.about-expertise{display:grid;grid-template-columns:1fr 2fr;gap:40px;max-width:900px;border-top:1px solid var(--line);padding-top:35px;margin:60px 0}.about-expertise h2{font-size:32px}.about-expertise ul{list-style:none;margin:0;padding:0;color:var(--muted);font-size:17px;line-height:2.5}.text-link{font-size:14px;border-bottom:1px solid var(--yellow);padding-bottom:10px}.contact-name{margin:25px 0 50px;color:var(--muted);font-size:14px}.contact-list{max-width:1000px}.contact-row{display:flex;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding:22px 0;font-size:16px}.contact-row:last-child{border-bottom:1px solid var(--line)}.contact-row>span:last-child{color:var(--muted);font-size:14px}.contact-row:hover span{color:var(--yellow)}.stills{padding-top:25px}.stills h2{font-size:42px}footer{flex-wrap:wrap}.reveal{transform:none;transition:opacity .7s ease}.reveal.visible{transform:none}@media(max-width:900px){header{height:110px}.section{padding:45px 25px 65px}.work-media{aspect-ratio:auto}.brand span{display:none}.about-expertise{grid-template-columns:1fr;gap:20px}.about-expertise ul{font-size:15px}.contact-row{gap:20px;font-size:14px}.contact-row>span:last-child{font-size:12px;text-align:right;overflow-wrap:anywhere}.section-heading>p{font-size:12px}.about-copy{margin:35px 0}}
/* Image-led editorial rows: varied scale, original framing, no visible labels. */
.portfolio{padding:22px 22px 75px;max-width:1900px;margin:0 auto}.editorial-gallery{display:flex;flex-direction:column;gap:18px}.gallery-row{display:flex;gap:18px;align-items:flex-start}.gallery-tile{flex:var(--ratio) 1 0;min-width:0;margin:0;padding:0;display:block;aspect-ratio:var(--ratio);overflow:hidden;background:#171915;opacity:0;transform:translateY(18px);transition:opacity .85s ease,transform .85s ease;transition-delay:var(--stagger)}.gallery-tile.visible{opacity:1;transform:none}.gallery-tile video{display:block;width:100%;height:100%;object-fit:contain}.gallery-tile:focus-visible{outline-offset:4px}.gallery-tile:hover{filter:brightness(1.035)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#playerDialog{width:94vw;max-width:1350px}#playerCaption{white-space:pre-wrap;max-width:800px;font-size:14px;line-height:1.8;color:#ddd}#instagramCaptionLink{display:inline-block;color:var(--yellow);font-size:12px;margin-top:20px}#instagramCaptionLink[hidden]{display:none}#player{object-fit:contain}.motion-paused .gallery-tile{transition:none;transform:none;opacity:1}@media(max-width:850px){.portfolio{padding:12px 16px 50px}.editorial-gallery{gap:14px}.gallery-row{gap:14px}.gallery-row:nth-child(3){display:grid;grid-template-columns:1fr 1fr}.gallery-row:nth-child(3) .gallery-tile:last-child{grid-column:1/-1}.gallery-tile{width:100%}}@media(max-width:520px){.gallery-row,.gallery-row:nth-child(3){display:flex;flex-direction:column}.gallery-tile{flex:none;width:100%}.portfolio{padding:8px 14px 40px}.editorial-gallery{gap:14px}.gallery-row{gap:14px}}@media(prefers-reduced-motion:reduce){.gallery-tile{opacity:1;transform:none;transition:none}}

.film-note{color:var(--yellow);font-size:10px;letter-spacing:.1em;text-transform:uppercase}
/* Homepage introduction and individual project pages. */
.leading-work{display:block;width:100%}.leading-work video{display:block;width:100%;height:auto;object-fit:contain}.identity-band{display:flex;flex-direction:column;align-items:center;text-align:center;gap:32px;padding:90px 24px 100px}.identity-band img{width:140px;height:auto}.identity-band h1{font-size:clamp(25px,3.4vw,52px);font-weight:300;letter-spacing:-.035em;max-width:1000px;line-height:1.2}.project-page{max-width:1600px;margin:auto;padding:40px 4vw 70px}.project-heading{padding:0 0 50px}.project-heading>a{font-size:12px;color:var(--muted)}.project-heading h1{font-size:clamp(35px,5vw,76px);line-height:1.1;margin-top:24px;max-width:1100px}.project-stills{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.project-stills figure{margin:0}.project-stills img{display:block;width:100%;height:auto;object-fit:contain}.project-stills.landscape figure:first-child,.project-stills.landscape figure:last-child{grid-column:1/-1}.project-description{padding:70px 0;max-width:820px;margin:auto}.project-caption{white-space:pre-wrap;font-size:15px;line-height:1.9;color:#d3d6c9}.project-film{padding:20px 0 70px}.project-film-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.project-film-heading h2{font-size:36px}.project-film-heading span{font-size:10px;letter-spacing:.1em;color:var(--muted)}.project-video{display:block;width:100%;height:auto;max-height:90svh;background:#050604;object-fit:contain;border:0}iframe.project-video{aspect-ratio:16/9;max-height:none}.project-links{display:flex;flex-wrap:wrap;gap:30px;margin-top:25px;font-size:12px;color:var(--yellow)}.next-project{display:flex;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding-top:30px;font-size:13px}.next-project a:last-child{text-align:right}.credit-copy{max-width:750px;margin-top:25px;font-size:14px;line-height:1.9;color:var(--muted)}footer>a{font-size:10px;color:var(--muted)}@media(max-width:800px){.identity-band{gap:25px;padding:55px 20px 60px}.identity-band img{width:110px}.project-page{padding:25px 20px 50px}.project-heading{padding-bottom:30px}.project-stills{gap:14px}.project-description{padding:40px 0}.project-caption{font-size:13px}.project-film-heading span{font-size:9px}.next-project{font-size:11px}.project-links{font-size:11px}}@media(max-width:520px){.project-stills{grid-template-columns:1fr}.project-stills figure{grid-column:1!important}.identity-band h1{font-size:28px}}

/* Supplied visual reference: a film strip, floating identity, statement, then work. */
.reference-home{background:#fff;color:#111;--muted:#666;--line:#0002}.reference-home header{position:absolute;left:38px;top:18px;right:auto;bottom:auto;z-index:8;width:128px;height:auto;padding:15px 13px 18px;display:flex;flex-direction:column;align-items:center;gap:17px;background:#fff}.reference-home .brand{display:block}.reference-home .brand img{width:100px;display:block;background:#10110f}.reference-home .brand span{display:none}.reference-home nav{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:11px;line-height:1.4}.reference-home nav a[aria-current=page]{color:#111}.reference-home nav a:hover{color:#666}.reference-main{padding-top:0}.top-film-strip{display:flex;gap:12px;padding:0 12px;align-items:flex-start}.top-film{display:block;flex:var(--ratio) 1 0;min-width:0;aspect-ratio:var(--ratio)}.top-film video{display:block;width:100%;height:100%;object-fit:contain;background:#10110f}.reference-statement{padding:65px 6vw 75px;text-align:center}.reference-statement h1{font-size:clamp(29px,3.4vw,58px);font-weight:500;line-height:1.18;letter-spacing:-.035em;max-width:1500px;margin:0 auto}.reference-projects{margin:0 28px}.reference-projects>.leading-work{margin-bottom:16px}.reference-home .editorial-gallery{gap:16px}.reference-home .gallery-row{gap:16px}.reference-home .gallery-tile{background:transparent}.reference-home footer{color:#111}.reference-home footer p,.reference-home footer button,.reference-home footer>a{color:#666}.reference-home footer img{background:#10110f}.reference-home a:focus-visible{outline-color:#777}.reference-home .motion-paused{color:#111}@media(max-width:850px){.reference-home header{left:25px;top:12px;width:105px;padding:10px;gap:10px}.reference-home .brand img{width:85px}.reference-home nav{font-size:10px;gap:5px}.top-film-strip{display:grid;grid-template-columns:1fr 1fr;gap:12px}.top-film{width:100%;height:100%;aspect-ratio:4/3;display:flex;align-items:center;background:#10110f}.top-film video{height:auto;object-fit:contain}.reference-statement{padding:45px 25px 50px}.reference-projects{margin:0 16px}}@media(max-width:520px){.reference-home header{left:22px;top:10px;width:90px;padding:8px;gap:8px}.reference-home .brand img{width:74px}.reference-home nav{font-size:9px;gap:4px}.top-film-strip{gap:8px;padding:0 8px}.reference-statement h1{font-size:29px}.reference-projects{margin:0 12px}}
/* Silver Factory: black background, original yellow identity. */
.reference-home{background:#10110f;color:#f3f2ec;--muted:#a3a69b;--line:#ffffff24}.reference-home header{background:#10110f}.reference-home nav a[aria-current=page]{color:#ffea00}.reference-home nav a:hover{color:#ffea00}.reference-home footer{color:#f3f2ec}.reference-home footer p,.reference-home footer button,.reference-home footer>a{color:#a3a69b}.reference-home a:focus-visible{outline-color:#ffea00}.reference-home .motion-paused{color:#f3f2ec}
/* Original yellow and Avenir Light typography. Local faces avoid redistributing fonts. */
@font-face{font-family:'Silver Factory Avenir Light';src:local('Avenir-Light'),local('Avenir Light');font-weight:300;font-style:normal;font-display:swap}body{font-family:'Silver Factory Avenir Light','Avenir','Avenir Next','Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:300}.reference-statement h1{font-family:inherit;font-weight:300;color:#ffea00;letter-spacing:-.02em}

.gallery-tile{position:relative}.published-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#10110f;opacity:1;transition:opacity .45s ease}.gallery-tile:hover .published-cover,.gallery-tile:focus-visible .published-cover{opacity:0}@media(hover:none){.published-cover{pointer-events:none}}

.reference-statement{display:flex;flex-direction:column;align-items:center;gap:28px}.centered-identity{display:block}.centered-identity img{width:136px;height:auto;display:block}.reference-home header{padding:14px 16px}.reference-home nav{gap:9px}@media(max-width:850px){.centered-identity img{width:112px}.reference-statement{gap:22px}}

/* A short opening reel, then the identity; scrolling is always available. */
.reference-home.opening-home header{position:absolute;inset:0 0 auto;width:100%;height:82px;padding:20px 40px;display:flex;flex-direction:row;justify-content:flex-end;align-items:center;background:linear-gradient(#10110f90,transparent);z-index:10}.reference-home.opening-home nav{flex-direction:row;gap:27px;font-size:12px}.opening{height:100svh;min-height:540px;position:relative;background:#10110f;overflow:hidden}.opening>video{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:opacity .6s ease}.opening-logo{position:absolute;inset:0;display:grid;place-items:center;opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .8s ease,transform .8s ease}.opening-logo img{display:block;width:min(140px,28vw);height:auto}.opening.logo-visible>video{opacity:0}.opening.logo-visible .opening-logo{opacity:1;transform:none;pointer-events:auto}.opening-controls{position:absolute;left:38px;right:38px;bottom:26px;display:flex;align-items:center;justify-content:space-between;z-index:3}.opening-controls button{font-size:10px;letter-spacing:.08em;color:#ccc}.opening-controls>a{font-size:29px;color:#ffea00;padding:8px}.opening-projects{padding:22px 24px 70px;max-width:1900px;margin:auto;scroll-margin-top:20px}.opening-home:not(.motion-paused) .published-cover{opacity:0}.opening-home .gallery-row{gap:16px}.opening-home .editorial-gallery{gap:16px}@media(max-width:850px){.reference-home.opening-home header{height:70px;padding:16px 24px}.reference-home.opening-home nav{gap:22px;font-size:11px}.opening-controls{left:24px;right:24px}.opening-projects{padding:14px 14px 45px}.opening{min-height:480px}}@media(prefers-reduced-motion:reduce){.opening-logo{transform:none}.opening>video,.opening-logo{transition:none}}
.motion-paused .opening-home .published-cover{opacity:1}
/* Montage plays behind the identity; scrolling carries the logo away. */
.opening{height:160svh;min-height:0;overflow:visible;--logo-scale:1;--logo-opacity:1}.opening-stage{height:100svh;min-height:480px;position:sticky;top:0;overflow:hidden;background:#10110f}.opening-stage>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.opening-stage:after{content:'';position:absolute;inset:0;background:#0002;pointer-events:none}.opening-logo{z-index:2;opacity:var(--logo-opacity);transform:scale(var(--logo-scale));transition:none!important;pointer-events:auto;will-change:transform,opacity}.opening-logo img{width:min(140px,28vw);height:auto}.opening-controls{z-index:3}.motion-enabled .gallery-tile{opacity:0;transform:translateY(32px);transition:opacity .8s ease,transform 1s cubic-bezier(.16,1,.3,1)!important;transition-delay:var(--stagger)!important}.motion-enabled .gallery-tile.visible{opacity:1;transform:none}.motion-paused .gallery-tile{opacity:1;transform:none}@media(max-width:850px){.opening{height:150svh}.opening-stage{min-height:0}}
/* Posters retain their complete original artwork. Film players load on demand. */
.project-poster{max-width:460px;margin:24px auto 72px;padding:0}.project-poster img{display:block;width:100%;height:auto;object-fit:contain}.film-player{position:relative;width:min(100%,calc(82svh * var(--film-ratio,1.777778)));aspect-ratio:var(--film-ratio,1.777778);margin:0 auto;background:#080908;overflow:hidden}.film-player iframe{position:absolute;inset:0;display:block;width:100%;height:100%;border:0}.film-play{position:absolute;inset:0;display:block;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:pointer}.film-play>img{display:block;width:100%;height:100%;object-fit:contain}.film-play-mark{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:64px;height:64px;padding-left:4px;border-radius:50%;background:#ffea00;color:#10110f;font-size:23px;box-shadow:0 3px 22px #0005}.film-play:hover .film-play-mark{transform:translate(-50%,-50%) scale(1.07)}.film-play:focus-visible{outline:2px solid #ffea00;outline-offset:-3px}.project-links{flex-wrap:wrap;gap:24px}@media(max-width:600px){.project-poster{max-width:84%;margin-bottom:40px}.film-play-mark{width:52px;height:52px;font-size:20px}}

/* Three feature films: discreet labels and complete horizontal poster artwork. */
.film-hover-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:var(--bg);opacity:0;transition:opacity .35s ease;pointer-events:none}.featured-film:hover .film-hover-poster,.featured-film:focus-visible .film-hover-poster{opacity:1}.film-card-caption{position:absolute;left:14px;bottom:12px;z-index:2;display:flex;flex-direction:column;gap:1px;font-size:11px;line-height:1.4;letter-spacing:.035em;color:#fff;text-shadow:0 1px 6px #000,0 0 14px #000}.film-card-caption>span:last-child{font-size:9px;color:#ffea00;letter-spacing:.025em}.featured-film:hover .film-card-caption,.featured-film:focus-visible .film-card-caption{opacity:0}.project-horizontal-poster{margin:0 auto 32px;max-width:1100px}.project-horizontal-poster img{display:block;width:100%;height:auto;object-fit:contain}.expanded-film-stills .project-poster{grid-column:1/-1;width:100%;max-width:460px;margin:28px auto 0}.expanded-film-stills figure:nth-child(5){grid-column:1/-1}.expanded-film-stills figure:last-child{grid-column:1/-1}.project-heading+.project-film{padding-top:0}@media(hover:none){.featured-film:hover .film-hover-poster{opacity:0}.featured-film:hover .film-card-caption{opacity:1}}@media(max-width:600px){.film-card-caption{left:12px;bottom:10px}.project-horizontal-poster{margin-bottom:14px}.expanded-film-stills .project-poster{max-width:84%}}

/* Project imagery leads; titles are quiet metadata below the first still. */
.project-lead-image{margin:0;width:100%}.project-lead-image img{display:block;width:100%;height:auto;max-height:86svh;object-fit:contain}.project-page{padding-top:12px}.project-meta{display:flex;justify-content:space-between;align-items:baseline;gap:24px;padding:20px 0 46px}.project-meta h1{font-size:clamp(18px,1.7vw,26px);letter-spacing:-.015em;font-weight:300;line-height:1.35;margin:0;max-width:85%}.project-meta>a{font-size:11px;white-space:nowrap}.project-film-heading h2{font-size:20px;letter-spacing:-.015em}.centered-contact{max-width:900px;min-height:68svh;margin:0 auto;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:45px;padding-bottom:65px}.centered-contact .eyebrow{margin-bottom:16px}.centered-contact .contact-name{margin:0 0 40px}.centered-contact .contact-list{width:100%;max-width:560px}.centered-contact .contact-row{justify-content:center;align-items:center;flex-direction:column;gap:5px;padding:17px 10px;border:0}.centered-contact .contact-row>span:first-child{font-size:10px;letter-spacing:.1em;color:var(--muted)}.centered-contact .contact-row>span:last-child{font-size:15px;color:var(--paper);text-align:center}.centered-contact .contact-row:hover>span:last-child{color:var(--yellow)}@media(max-width:600px){.project-meta{padding:16px 0 30px;gap:16px}.project-lead-image img{max-height:78svh}.centered-contact{padding-top:24px;padding-bottom:45px}.centered-contact .contact-name{font-size:12px;margin-bottom:25px}.centered-contact .contact-row>span:last-child{font-size:14px}}

/* A quiet introduction to the filmmaker, led by one complete film still. */
.about-editorial{max-width:1600px;margin:0 auto;padding:12px 4vw 72px}.about-image{margin:0 auto;max-width:1100px}.about-image img{display:block;width:100%;height:auto;max-height:72svh;object-fit:contain}.about-introduction{max-width:1120px;margin:78px auto 0}.about-introduction h1{color:var(--yellow);font-size:clamp(30px,4.4vw,62px);line-height:1.18;letter-spacing:-.025em;font-weight:300;max-width:1100px}.about-personal{display:grid;grid-template-columns:1fr 2fr;gap:60px;margin-top:65px;align-items:start}.about-author{font-size:14px;line-height:1.8}.about-author span{font-size:11px;color:var(--muted)}.about-description p{font-size:clamp(16px,1.55vw,21px);line-height:1.8;font-weight:300;max-width:700px}.about-contact-link{display:inline-block;margin-top:34px;padding-bottom:5px;border-bottom:1px solid var(--yellow);color:var(--yellow);font-size:13px}.about-credits{max-width:1120px;margin:85px auto 0;border-top:1px solid var(--line);padding-top:22px;color:var(--muted);font-size:11px}.about-credits summary{cursor:pointer;width:fit-content}.about-credits p{max-width:760px;font-size:12px;line-height:1.9;margin-top:20px}.about-credits:target{scroll-margin-top:30px}@media(max-width:700px){.about-editorial{padding:8px 20px 45px}.about-image img{max-height:65svh}.about-introduction{margin-top:40px}.about-introduction h1{font-size:clamp(28px,6.8vw,42px)}.about-personal{grid-template-columns:1fr;gap:24px;margin-top:35px}.about-author{font-size:13px}.about-description p{font-size:16px;line-height:1.8}.about-contact-link{margin-top:25px}.about-credits{margin-top:55px}}

/* About opens with the introduction, followed by the TERRAGNI still. */
.about-editorial .about-introduction{margin-top:35px}.about-editorial .about-image{margin-top:70px}@media(max-width:700px){.about-editorial .about-introduction{margin-top:20px}.about-editorial .about-image{margin-top:42px}}

/* Full film first, with the project title introducing the original caption. */
.project-page>.project-film:first-child{padding:0 0 38px}.project-page>.project-lead-image{margin-bottom:24px}.project-caption-title{font-size:clamp(23px,2.5vw,34px);line-height:1.3;letter-spacing:-.018em;font-weight:300;margin:0 0 28px;color:var(--paper)}@media(max-width:700px){.project-page>.project-film:first-child{padding-bottom:28px}.project-page>.project-lead-image{margin-bottom:14px}.project-caption-title{font-size:24px;margin-bottom:22px}}
/* Enlarge stills without cropping; native dialog handles keyboard focus and Escape. */
.still-enlarge{display:block;width:100%;padding:0;border:0;cursor:zoom-in;text-align:inherit;background:transparent}.still-enlarge img{display:block;width:100%;height:auto}.still-viewer{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:45px 22px 22px;border:0;background:#080908f5;overflow:hidden}.still-viewer[open]{display:flex;align-items:center;justify-content:center}.still-viewer::backdrop{background:#000c}.still-viewer-image{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.still-viewer-close{position:absolute;top:8px;right:16px;width:40px;height:40px;padding:0;display:grid;place-items:center;color:#ffea00;font-size:34px;font-weight:300;line-height:1;z-index:1;cursor:pointer}.still-viewer-close:focus-visible{outline-offset:0}.still-enlarge:focus-visible{outline-offset:4px}@media(max-width:600px){.still-viewer{padding:50px 10px 20px}.still-viewer-close{right:8px}}

/* Film, title and caption, then six stills in two equal columns. */
.project-page>.project-film:first-child{padding-bottom:0}.project-page>.project-description{padding:32px 0 48px}.project-page .project-stills.compact-stills{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}.project-page .project-stills.compact-stills>figure{grid-column:auto!important;margin:0;width:100%;max-width:none}.project-page .compact-stills img{width:100%;height:auto;max-height:none;object-fit:contain}.poster-collection{margin-top:24px}.project-page>.next-project{margin-top:60px}@media(max-width:700px){.project-page>.project-description{padding:28px 0 32px}.project-page .project-stills.compact-stills{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.poster-collection{margin-top:12px}.project-page>.next-project{margin-top:40px}}

/* Categories use the same original-ratio moving-image gallery as Work. */
.category-nav{display:flex;flex-wrap:wrap;gap:12px 26px;align-items:center;font-size:12px;line-height:1.5;padding:5px 0 25px}.category-nav a{color:var(--muted);padding:5px 0;border-bottom:1px solid transparent}.category-nav a:hover,.category-nav a[aria-current=page]{color:var(--yellow);border-bottom-color:var(--yellow)}.project-category{display:inline-block;margin:0 0 14px;color:var(--yellow);font-size:11px;letter-spacing:.025em}.category-page{max-width:1900px;margin:auto;padding:25px 24px 70px}.category-page h1{font-size:clamp(30px,4vw,52px);font-weight:300;letter-spacing:-.02em;line-height:1.2;margin-bottom:30px}.category-home .gallery-tile{background:transparent}.about-category-selection{max-width:1120px;margin:60px auto 0}.about-category-selection>p{font-size:11px;color:var(--muted);margin-bottom:16px}.about-category-selection .category-nav{padding-bottom:0}.about-category-selection+.about-image{margin-top:35px}.still-viewer{padding-bottom:90px}.still-viewer-caption{position:absolute;left:24px;right:65px;bottom:20px;display:flex;flex-direction:column;gap:5px;font-size:13px;line-height:1.4;color:var(--paper)}.still-viewer-caption a{font-size:11px;color:var(--yellow);width:fit-content}.still-viewer-caption a:hover{text-decoration:underline}@media(max-width:700px){.category-nav{gap:8px 18px;font-size:11px}.category-page{padding:18px 20px 45px}.category-page h1{margin-bottom:24px}.about-category-selection{margin-top:40px}.still-viewer{padding-bottom:105px}.still-viewer-caption{left:14px;right:55px;bottom:18px;font-size:12px}.still-viewer-caption a{font-size:10px}}

/* Give the three short films a full-width image sequence. */
.short-films-category .category-page{max-width:1400px}.short-films-category .gallery-row{display:flex!important;flex-direction:column;gap:40px}.short-films-category .gallery-tile{flex:none;width:100%}.short-films-category .editorial-gallery{gap:40px}.project-page[data-category="short-films"] .project-stills.compact-stills{grid-template-columns:minmax(0,1fr)!important;gap:28px}.project-trailer{margin:60px 0 0}.project-trailer h2{font-size:24px;font-weight:300;letter-spacing:-.015em;margin-bottom:24px}.trailer-source-link{display:inline-block;margin-top:22px;font-size:12px;color:var(--yellow)}@media(max-width:700px){.short-films-category .gallery-row{gap:24px}.short-films-category .editorial-gallery{gap:24px}.project-page[data-category="short-films"] .project-stills.compact-stills{gap:16px}}

.instagram-player{width:min(100%,560px);aspect-ratio:auto;height:min(850px,85svh);min-height:520px}.instagram-player iframe{background:#fff}

/* News and festival recognition follow the existing Silver Factory identity. */
.about-recognition{max-width:1120px;margin:85px auto 0;padding-top:35px;border-top:1px solid var(--line);scroll-margin-top:30px}.about-recognition h2{font-family:inherit;font-size:clamp(25px,3vw,38px);font-weight:300;letter-spacing:-.02em;line-height:1.25;color:var(--yellow);margin:0 0 35px}.recognition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 28px;align-items:start}.recognition-card{min-width:0}.recognition-open{font:inherit;text-align:left;color:inherit;cursor:pointer}.recognition-cover{display:block;width:100%;padding:0;border:0;background:transparent}.recognition-cover img{display:block;width:100%;height:auto;object-fit:contain}.recognition-open:focus-visible{outline:2px solid var(--yellow);outline-offset:6px}.recognition-date{font-size:11px;color:var(--muted);margin:20px 0 10px}.recognition-card h3{font-family:inherit;font-size:20px;font-weight:300;margin:0 0 8px}.recognition-summary{font-size:13px;line-height:1.6;color:var(--muted)}.recognition-cover:hover{opacity:.9}.film-recognition{margin:-7px 0 30px}.film-recognition ul{list-style:none;padding:0;margin:0;display:grid;gap:18px}.film-recognition-link{border:0;border-left:1px solid var(--line);background:transparent;padding:0 0 0 15px;display:flex;flex-direction:column;gap:5px;font-size:12px;line-height:1.5;max-width:100%}.film-recognition-link>span:first-child{color:var(--yellow)}.film-recognition-link .recognition-location{font-size:11px;color:var(--muted)}.film-recognition-link:hover>span:nth-child(2){color:var(--yellow)}.recognition-viewer{box-sizing:border-box;max-width:none;max-height:none;width:100vw;height:100dvh;margin:0;padding:50px 40px 115px;border:0;background:#10110ff5;color:var(--paper);overflow:hidden}.recognition-viewer::backdrop{background:#000c}.recognition-viewer-image{display:block;width:100%;height:100%;object-fit:contain}.recognition-viewer .still-viewer-close{z-index:1}.recognition-viewer-footer{position:absolute;left:40px;right:40px;bottom:24px;display:flex;justify-content:space-between;align-items:end;gap:20px}.recognition-viewer-caption{font-size:13px;line-height:1.5;max-width:75%}.recognition-viewer-caption p{margin:0 0 5px}.recognition-viewer-caption a{display:inline-block;color:var(--yellow);font-size:11px}.recognition-viewer-controls{display:flex;align-items:center;gap:14px;font-size:12px;white-space:nowrap}.recognition-viewer-controls button{font:inherit;color:var(--paper);background:none;border:1px solid var(--line);width:38px;height:36px;cursor:pointer}.recognition-viewer-controls button:hover{color:var(--yellow);border-color:var(--yellow)}.recognition-viewer-controls button:focus-visible,.recognition-viewer-close:focus-visible{outline:2px solid var(--yellow);outline-offset:3px}@media(max-width:700px){.about-recognition{margin-top:50px;padding-top:25px}.about-recognition h2{margin-bottom:25px}.recognition-grid{grid-template-columns:1fr;gap:32px}.recognition-date{margin-top:16px}.recognition-card h3{font-size:18px}.film-recognition-link{font-size:11px}.recognition-viewer{padding:55px 14px 155px}.recognition-viewer-footer{left:18px;right:18px;bottom:20px;align-items:start;flex-direction:column;gap:14px}.recognition-viewer-caption{max-width:100%;font-size:12px}.recognition-viewer-controls{align-self:flex-end}.recognition-viewer-controls button{width:40px;height:36px}}@media(prefers-reduced-motion:reduce){.recognition-cover{transition:none}}

.recognition-viewer-stage{display:grid;place-items:center;width:100%;height:100%}.recognition-viewer-stage .recognition-viewer-image{min-height:0}.recognition-viewer-stage>.film-player{width:min(100%,calc((100dvh - 165px)*1.777778));aspect-ratio:16/9;max-width:1200px}.recognition-viewer-links{display:flex;flex-wrap:wrap;gap:8px 20px}.project-interview{margin-top:65px;border-top:1px solid var(--line);padding-top:35px}.project-interview h2{font-family:inherit;font-weight:300;font-size:clamp(25px,3vw,36px);line-height:1.3;margin:0 0 14px}.interview-meta{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:30px}.interview-credit{font-size:11px;color:var(--muted);margin-top:20px}.project-interview .film-player{--film-ratio:1.777778}@media(max-width:700px){.recognition-viewer-stage>.film-player{width:min(100%,calc((100dvh - 210px)*1.777778))}.project-interview{margin-top:45px;padding-top:25px}.interview-meta{font-size:12px;margin-bottom:22px}}

.about-category-selection+.about-recognition{margin-top:45px}.about-recognition+.about-image{margin-top:70px}@media(max-width:700px){.about-category-selection+.about-recognition{margin-top:35px}.about-recognition+.about-image{margin-top:45px}}

.recognition-detail{font-size:13px;line-height:1.7;color:var(--muted);margin:10px 0 0;max-width:56ch}

.recognition-cover{position:relative}.recognition-cover-brand{position:absolute;bottom:7%;left:50%;transform:translateX(-50%);width:52px;aspect-ratio:324/206;overflow:hidden;display:block}.recognition-cover .recognition-cover-brand img{position:absolute;width:251.851852%;max-width:none;height:auto;left:-75.925926%;top:-303.398058%;}

.event-editorial{max-width:1800px;margin:0 auto;padding:32px 4vw 72px}.event-intro{margin:12px 0 50px}.event-back{color:var(--muted);font-size:12px}.event-intro h1{font-size:clamp(30px,4vw,52px);font-weight:300;color:var(--yellow);margin:30px 0 16px;letter-spacing:-.02em}.event-intro p{font-size:12px;color:var(--muted)}.event-media{display:grid;gap:35px}.event-media-row{display:flex;gap:24px;align-items:start}.event-tile{margin:0;flex:var(--media-ratio) 1 0;min-width:0}.event-tile>.film-player,.event-enlarge{display:block;width:100%;aspect-ratio:var(--media-ratio);padding:0;border:0;background:transparent}.event-enlarge{cursor:zoom-in}.event-enlarge img{display:block;width:100%;height:100%;object-fit:contain}.event-tile .film-player{margin:0}.event-tile .film-play img{object-fit:contain}.event-tile figcaption{font-size:11px;line-height:1.7;color:var(--muted);padding-top:12px}.event-tile figcaption a,.event-sources a{color:var(--yellow)}.event-sources{display:flex;flex-wrap:wrap;gap:15px 28px;margin-top:45px;font-size:12px}.event-enlarge:focus-visible{outline:2px solid var(--yellow);outline-offset:4px}@media(max-width:700px){.event-editorial{padding:18px 16px 45px}.event-intro{margin-bottom:30px}.event-media-row{gap:12px}.event-media{gap:24px}.event-tile figcaption{font-size:10px}.event-intro h1{font-size:30px}}

.event-editorial{box-sizing:border-box;max-width:1040px;width:100%;padding:32px 40px 72px}.event-intro{margin-bottom:36px}.event-intro h1{font-size:clamp(28px,3vw,40px)}.event-media{gap:30px}.event-media-row{gap:22px}@media(max-width:700px){.event-editorial{max-width:620px;padding:18px 24px 45px}.event-media-row{gap:14px}.event-intro h1{font-size:28px}}
/* Compact event pages and the private selection contact sheet. */
.event-editorial{max-width:980px;padding:28px 42px 70px}.event-media-row{gap:14px}.event-media{gap:22px}.event-open{display:block;position:relative;width:100%;aspect-ratio:var(--media-ratio);padding:0;border:0;background:transparent;cursor:zoom-in}.event-open>img,.event-open>video{display:block;width:100%;height:100%;object-fit:contain}.event-video-hint{position:absolute;left:12px;bottom:10px;color:var(--yellow);font-size:18px;pointer-events:none}.event-open:focus-visible,.review-open:focus-visible{outline:2px solid var(--yellow);outline-offset:4px}.event-media-viewer{position:fixed;box-sizing:border-box;inset:0;max-width:none;max-height:none;width:100vw;height:100dvh;margin:0;padding:45px 45px 90px;background:#10110ff7;border:0;color:var(--paper);overflow:hidden}.event-media-viewer::backdrop{background:#000d}.event-viewer-stage{height:100%;display:flex;align-items:center;justify-content:center;touch-action:pan-y}.event-viewer-stage>img,.event-viewer-stage>video{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.event-viewer-stage>iframe{width:min(100%,960px);height:100%;max-height:600px;border:0}.event-viewer-footer{position:absolute;left:35px;right:35px;bottom:20px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px}.event-viewer-footer p{margin:0;line-height:1.5}.event-viewer-controls{display:flex;align-items:center;gap:15px;white-space:nowrap}.event-viewer-controls button,.review-action{border:1px solid var(--line);background:none;color:var(--yellow);font:inherit;padding:10px 15px;cursor:pointer}.event-viewer-controls button:hover,.review-action:hover{border-color:var(--yellow)}.event-review{box-sizing:border-box;max-width:1080px;margin:auto;padding:30px 40px 120px}.event-review h1{font-size:36px;font-weight:300;color:var(--yellow);margin:30px 0 18px}.review-intro{font-size:13px;line-height:1.7;color:var(--muted);max-width:680px}.review-filters{position:sticky;top:0;z-index:2;background:#10110ff5;padding:22px 0;display:flex;gap:16px;align-items:center;flex-wrap:wrap;font-size:12px}.review-filters label{display:flex;gap:8px;align-items:center}.review-filters select{font:inherit;background:#171814;color:var(--paper);border:1px solid var(--line);padding:8px;max-width:220px}.review-filters input,.review-card input{accent-color:var(--yellow)}.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 18px}.review-card{min-width:0}.review-open{width:100%;height:300px;display:flex;align-items:center;justify-content:center;background:#171814;border:0;padding:0;cursor:zoom-in}.review-open img,.review-open video{display:block;width:100%;height:100%;object-fit:contain}.review-card-info{font-size:12px;padding-top:12px}.review-card-info label{display:flex;gap:8px;align-items:center;cursor:pointer;overflow-wrap:anywhere}.review-card-info p{color:var(--muted);font-size:11px;margin:8px 0 0}.review-selection-bar{position:sticky;bottom:0;z-index:2;background:#10110ff5;border-top:1px solid var(--line);margin-top:28px;padding:15px 0 10px;display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:12px}.review-selection-bar strong{font-weight:300;min-width:90px}.review-selection-bar p{margin:0;width:100%;font-size:11px;color:var(--muted);line-height:1.5}.review-action:disabled{opacity:.4;cursor:default}#load-more{display:block;margin:25px auto}#load-more[hidden]{display:none}@media(max-width:700px){.event-editorial{padding:20px 24px 45px}.event-media-row{gap:12px}.event-review{padding:20px 18px 90px}.event-review h1{font-size:28px}.review-grid{gap:22px 12px}.review-open{height:200px}.review-filters{gap:12px;font-size:11px}.review-filters select{max-width:170px}.event-media-viewer{padding:50px 14px 115px}.event-viewer-footer{left:18px;right:18px;bottom:18px;flex-wrap:wrap;font-size:11px}.event-viewer-controls{margin-left:auto}}
