@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=DM+Sans:wght@400;500;600&display=swap');
:root{color-scheme:dark;--bg:#101010;--fg:#f5f5f0;--red:#ff2727;--muted:#aaa;--line:#353535}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--bg);color:var(--fg);font:16px 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--red)}a:focus-visible{outline:3px solid var(--red);outline-offset:7px}header{position:absolute;z-index:3;top:0;left:0;width:100%;display:flex;justify-content:space-between;align-items:center;padding:28px 4%}.brand{font:800 30px/.9 'Barlow Condensed',sans-serif;letter-spacing:1px}.brand span{display:block;font:500 10px 'DM Sans',sans-serif;letter-spacing:3px;margin-top:6px}nav{display:flex;gap:35px;font-size:14px}.cinematic{position:relative;min-height:780px;height:100svh;max-height:1100px;overflow:hidden;isolation:isolate;background:#161616}.hero-film,.hero-shade{position:absolute;inset:0;z-index:-2}.hero-film{background:url('assets/frame-18.jpg') center/cover}.hero-film iframe{position:absolute;width:177.78vh;height:100vh;min-width:100%;min-height:56.25vw;top:50%;left:50%;transform:translate(-50%,-50%);border:0;pointer-events:none;opacity:1}.hero-shade{z-index:-1;background:none}.hero-topline{position:absolute;top:125px;left:4%;right:4%;display:flex;justify-content:space-between;font-size:12px;letter-spacing:2px}.logo-title{position:absolute;inset:155px 7% 145px;display:flex;align-items:center;justify-content:center;gap:3%;margin:0}.logo-title>span{font:italic 400 clamp(60px,8vw,125px)/1 Georgia,serif;letter-spacing:-5px;white-space:nowrap;transform:rotate(-7deg)}.logo-title img{width:min(41vw,470px);height:auto;max-height:100%;object-fit:contain;filter:drop-shadow(0 15px 30px #0004);transform:rotate(3deg);animation:arrival 1s ease-out both}.hero-bottom{position:absolute;bottom:50px;left:4%;right:4%;display:flex;justify-content:space-between;align-items:end;gap:25px}.hero-bottom p{font-size:16px;line-height:1.6;margin:0}.play-reel{display:flex;align-items:center;gap:18px;letter-spacing:1px;font-size:14px}.play-reel>span{background:var(--red);color:white;display:grid;place-items:center;width:66px;height:66px;border-radius:50%;transition:transform .25s}.play-reel:hover>span{transform:scale(1.1)}.scroll-note{font-size:12px;letter-spacing:1px}.film-strip{padding:21px 4%;background:var(--red);color:#111;display:flex;justify-content:space-around;align-items:center;gap:30px;font:700 clamp(17px,2.3vw,34px) 'Barlow Condensed',sans-serif;white-space:nowrap;overflow:hidden}.film-strip i{font-size:35px;font-style:normal}.section-label{display:flex;justify-content:space-between;gap:20px;font-size:12px;letter-spacing:2px;padding:20px 0}.reel-section{padding:65px 4% 90px}.embed{position:relative;aspect-ratio:16/9;background:#050505;overflow:hidden}.embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.caption{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;margin-top:16px}.watch{display:inline-block;font-size:14px;margin-top:15px;padding-bottom:5px;border-bottom:1px solid #777}.work{padding:60px 4% 110px;border-top:1px solid var(--line)}.work-top{display:flex;justify-content:space-between;align-items:end;margin-bottom:65px}h2{font:600 clamp(60px,9vw,140px)/.9 'Barlow Condensed',sans-serif;letter-spacing:-2px;margin:0}h2 em{font:italic 400 .85em Georgia,serif;color:var(--red)}.work-top p{color:var(--muted);line-height:1.6}.projects{display:grid;grid-template-columns:1fr 1fr;gap:75px 5%}.projects article:nth-child(2){margin-top:160px}.projects article.wide{grid-column:1/-1;width:75%;justify-self:center}.project-caption{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:20px}.project-caption h3{font-size:27px;letter-spacing:-1px;margin:0}.project-caption span{font-size:12px;color:var(--muted)}.collaborations{padding:65px 4% 100px;background:#1c1c1c}.collaborations h2{font-size:clamp(55px,7.5vw,115px);margin:30px 0 55px}.artists-label{display:none}.artist-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 30px}.artist-list li{font-size:clamp(16px,2vw,28px);line-height:1.3;border-top:1px solid #424242;padding:18px 0;transition:color .2s;overflow-wrap:anywhere}.artist-list li:hover{color:var(--red)}.contact{padding:60px 4% 75px}.contact h2{margin:35px 0 45px}.email{font-size:clamp(22px,4vw,60px);display:flex;justify-content:space-between;gap:15px;padding:15px 0 25px;border-bottom:1px solid var(--line);letter-spacing:-1px}.signature{display:flex;align-items:center;gap:18px;margin-top:35px}.signature img{width:58px;height:58px;object-fit:contain}.signature p{font-size:14px;line-height:1.7}.signature span{color:var(--muted)}footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:25px 4%;font-size:12px;color:var(--muted)}.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s,transform .6s}.reveal.in-view{opacity:1;transform:none}@keyframes arrival{from{opacity:0;transform:translateY(20px) rotate(-2deg)}to{opacity:1;transform:translateY(0) rotate(3deg)}}@media(max-width:700px){header{padding:24px 6%}nav{gap:17px;font-size:12px}.brand{font-size:26px}.cinematic{min-height:670px;max-height:850px}.hero-topline{top:105px;left:6%;right:6%;font-size:10px;letter-spacing:1px;gap:20px}.hero-topline span:last-child{text-align:right}.logo-title{inset:145px 8% 170px;flex-direction:column;gap:12px}.logo-title>span{font-size:16vw;letter-spacing:-3px;align-self:flex-start}.logo-title img{width:min(64vw,310px);max-height:75%;align-self:flex-end}.hero-bottom{left:6%;right:6%;bottom:35px;align-items:center}.hero-bottom p{font-size:13px;max-width:130px}.play-reel{font-size:11px;gap:12px}.play-reel>span{width:50px;height:50px}.scroll-note{display:none}.film-strip{justify-content:flex-start;padding:16px 6%;gap:25px}.film-strip i{font-size:22px}.reel-section,.work,.collaborations,.contact{padding:40px 6% 55px}.section-label{font-size:10px}.caption{font-size:10px}.work-top{display:block;margin-bottom:35px}.work-top p{margin:25px 0 0;font-size:14px}.projects{display:block}.projects article,.projects article:nth-child(2){margin:0 0 45px}.projects article.wide{width:100%;margin:0}.project-caption{display:block}.project-caption h3{font-size:26px;margin-bottom:8px}.artist-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}.artist-list li{font-size:18px;padding:16px 0}.collaborations h2{font-size:15vw;margin:25px 0 35px}.contact h2{font-size:17vw}.email{font-size:5.8vw;letter-spacing:-.5px}footer{padding:25px 6%;font-size:10px;flex-wrap:wrap}footer span:last-child{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none}.logo-title img{animation:none}*{transition:none!important}}

/* Studio lettering and direct contact */
.brand{display:block;width:250px;max-width:44%;line-height:0;mix-blend-mode:screen}
.brand img{display:block;width:100%;height:auto}
.hero-topline{top:150px}.logo-title{top:180px}
.phone-options{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:20px}
.phone-options a{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;border-bottom:1px solid var(--line);font-size:20px}
.phone-options a span:last-child{font-size:15px;color:var(--muted)}
.phone-options a:hover span:last-child{color:var(--red)}
.closing-brand{padding:35px 4% 75px;background:radial-gradient(ellipse at 50% 100%,#341313,transparent 70%)}
.closing-brand a{display:block;max-width:1400px;margin:auto;mix-blend-mode:screen}
.closing-brand img{display:block;width:100%;height:auto}
@media(max-width:700px){.brand{width:175px;max-width:45%}header{gap:20px}nav{gap:14px;font-size:11px}.hero-topline{top:125px}.logo-title{top:165px}.phone-options{grid-template-columns:1fr;gap:0}.phone-options a{font-size:20px;padding:22px 0}.closing-brand{padding:15px 6% 45px}}
/* Centered studio masthead */
header{position:relative;min-height:145px;background:#000;display:flex;justify-content:center;padding:22px 4%}
header .brand{width:270px;max-width:48%;margin:auto}
header nav{position:absolute;right:4%;top:50%;transform:translateY(-50%)}
.hero-topline{top:35px}.logo-title{top:95px}
@media(max-width:900px){header{padding:20px 6% 18px;min-height:145px;flex-direction:column;gap:18px}header .brand{width:220px;max-width:65%}header nav{position:static;transform:none;justify-content:center;gap:30px;font-size:12px}.hero-topline{top:30px}.logo-title{top:85px}}
/* Subtle red-to-black studio masthead gradient */
header{background:linear-gradient(115deg,#000 0%,#160606 35%,#390b0b 65%,#070202 100%)}
/* Black masthead fading down into the moving reel */
header{background:#000}
.hero-shade{background:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.65) 35%,transparent 100%);bottom:auto;height:180px;pointer-events:none}
@media(max-width:700px){.hero-shade{height:130px}}

/* Filmmaker biography and selected frames */
.about{padding:65px 4% 95px;border-top:1px solid var(--line);background:#111}
.about-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:7%;align-items:center;margin-top:45px}
.about-signature{display:flex;flex-direction:column;align-items:center;gap:15px}
.about-signature>span{font:italic 400 clamp(48px,5.5vw,85px)/1 Georgia,serif;color:var(--red);letter-spacing:-3px;transform:rotate(-7deg)}
.about-signature img{display:block;width:min(100%,300px);height:auto}
.bio-copy{color:var(--red);font-size:clamp(22px,2.3vw,34px);line-height:1.5;letter-spacing:-.5px}
.bio-copy p{margin:0 0 30px}.bio-copy p:last-child{margin:0;font-size:.8em;line-height:1.6}
.stills{margin-top:95px}.stills-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}
.stills-grid figure{margin:0;min-width:0}.stills-grid img{display:block;width:100%;height:auto}
.stills-grid figure:nth-child(5),.stills-grid figure:nth-child(6){grid-column:1/-1}
.artist-list.artists-featured{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 35px}
.artists-featured li{font:600 clamp(30px,3.6vw,58px)/1.1 'Barlow Condensed',sans-serif;padding:25px 0;overflow-wrap:normal}
.artist-list.artists-rest{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 30px;margin-top:55px}
.artists-rest li{color:#aaa;font-size:16px;padding:15px 0}
@media(max-width:1024px){.artist-list.artists-featured{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.about{padding:40px 6% 55px}.about-layout{grid-template-columns:1fr;gap:35px;margin-top:25px}.about-signature{flex-direction:row;justify-content:center;gap:20px}.about-signature>span{font-size:12vw;letter-spacing:-2px}.about-signature img{width:39%;max-width:190px}.bio-copy{font-size:23px}.about .section-label{letter-spacing:1px}.stills{margin-top:50px}.stills-grid{grid-template-columns:1fr;gap:18px}.stills-grid figure:nth-child(5),.stills-grid figure:nth-child(6){grid-column:auto}.artist-list.artists-featured{gap:0 20px}.artists-featured li{font-size:clamp(27px,7.5vw,42px);padding:20px 0}.artist-list.artists-rest{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;margin-top:35px}.artists-rest li{font-size:16px}}

/* Still gallery leads into the films */
.work .stills{margin-top:0;margin-bottom:85px}.video-label{margin-bottom:25px}
.stills-grid video{display:block;width:100%;height:auto;background:#050505}.stills-grid .motion-frame{grid-column:auto}
/* Fixed signature sits behind the page content. */
body{isolation:isolate}.scroll-brand{position:fixed;z-index:1;pointer-events:none;inset:auto;margin:0;will-change:opacity;transition:none!important}
.scroll-brand img{animation:none!important}.brand-fixed .cinematic .logo-title{opacity:0}
.reel-section,.about,.work,.collaborations,.contact,.closing-brand,footer,.film-strip{position:relative;z-index:2}
.about,.collaborations{background:transparent}.closing-brand{background:transparent}
@media(prefers-reduced-motion:reduce){.scroll-brand{display:none}.brand-fixed .cinematic .logo-title{opacity:1}}
.closing-brand{mix-blend-mode:screen}

/* Working together */
.work .stills{margin-bottom:0}
.process{position:relative;z-index:2;padding:65px 4% 85px;border-top:1px solid var(--line)}
.process h2{margin:35px 0 30px}.process-intro{font-size:clamp(18px,2vw,25px);line-height:1.6;max-width:740px;color:var(--muted)}
.process-steps{list-style:none;padding:0;margin:55px 0 45px;display:grid;grid-template-columns:1fr 1fr;gap:0 6%}
.process-steps li{display:flex;gap:24px;padding:35px 0;border-top:1px solid var(--line)}
.step-number{font:600 42px/1 'Barlow Condensed',sans-serif;color:var(--red)}
.process h3{font-size:25px;line-height:1.2;margin:0 0 14px;letter-spacing:-.5px}
.process-steps p,.project-brief p{font-size:18px;line-height:1.6;color:var(--muted);margin:0}
.project-brief{border-top:1px solid var(--line);padding-top:30px}.reply-time{font-size:18px;color:var(--red);margin:25px 0 0}
.instagram-link{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;border-bottom:1px solid var(--line);font-size:20px}
.instagram-link span:last-child{font-size:15px;color:var(--muted)}.instagram-link:hover span:last-child{color:var(--red)}
@media(max-width:700px){.process{padding:40px 6% 55px}.process h2{font-size:17vw}.process-steps{grid-template-columns:1fr;margin-top:35px}.process-steps li{gap:20px;padding:28px 0}.process h3{font-size:24px}.process-steps p,.project-brief p{font-size:17px}.instagram-link{font-size:20px}}

/* Aligned pairs, preserving each image and video's proportions. */
.stills-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;align-items:start}
.stills-grid figure:nth-child(n){grid-column:auto;margin:0;width:100%;justify-self:stretch}
.stills-grid figure.gallery-full{grid-column:1/-1}
@media(max-width:700px){.stills-grid{grid-template-columns:1fr;gap:24px}.stills-grid figure:nth-child(n){margin:0;width:100%;grid-column:auto}}

/* Native reel players: silent cover background and full-frame playback. */
.hero-film video{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}
.reel-section .embed{aspect-ratio:1920/1038}
.embed video{display:block;width:100%;height:100%;object-fit:contain}

/* Solid black behind the whole logo; fade upward above its section. */
.closing-brand{background:#000;mix-blend-mode:normal;margin-top:clamp(80px,12vw,180px)}
.closing-brand::before{content:"";position:absolute;left:0;right:0;bottom:100%;height:clamp(80px,12vw,180px);background:linear-gradient(to bottom,rgba(0,0,0,0),#000);pointer-events:none}
footer{background:#000}
