:root{--cream:#f2eedf;--ink:#10110e;--green:#18553d;--yellow:#f7df38;--red:#d43b30;--line:rgba(16,17,14,.42)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}img,video{display:block;width:100%}figure{margin:0}em{font-family:Georgia,"Times New Roman",serif;font-weight:400}.section-nav{position:fixed;z-index:20;right:1rem;top:50%;display:flex;flex-direction:column;gap:.4rem;transform:translateY(-50%)}.section-nav a{padding:.58rem .85rem;border:1px solid var(--ink);border-radius:2rem;background:var(--cream);font-size:.64rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;box-shadow:2px 2px 0 var(--ink)}.section-nav a:hover,.section-nav a:focus-visible{background:var(--yellow);transform:translateX(-.2rem)}
.topbar{height:76px;display:flex;justify-content:space-between;align-items:center;padding:0 2.2rem;border-bottom:1px solid var(--ink);font-size:.92rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.topbar nav{display:flex;gap:2.7rem}.topbar nav a:last-child{border-bottom:2px solid;padding-bottom:.35rem}.topbar a:hover{opacity:.55}
.hero-grid{display:grid;grid-template-columns:52% 48%;height:calc(100vh - 76px);min-height:680px;border-bottom:1px solid var(--ink)}.hero{display:flex;flex-direction:column;padding:3.25rem 2.2rem 2rem;border-right:1px solid var(--ink);overflow:hidden}.eyebrow,.section-kicker,.films-heading span,.journal header span,.about span{margin:0;font-size:.78rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.hero h1{margin:auto 0 0;font-size:clamp(5rem,9.55vw,11.2rem);font-weight:400;letter-spacing:-.075em;line-height:.72}.hero h1 em{display:block;color:var(--red);font-size:.94em;line-height:.82}.intro{max-width:45rem;margin:auto 0 0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.15rem,1.7vw,2rem);line-height:1.1}
.reel-hero{position:relative;height:100%;overflow:hidden;background:#111;color:var(--yellow)}.reel-hero img{height:100%;object-fit:cover;object-position:center}.reel-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.28),transparent 42%)}.reel-title{position:absolute;z-index:1;left:2.2rem;bottom:5.7rem;font-size:clamp(4rem,8.2vw,9rem);font-weight:400;letter-spacing:-.075em;line-height:.65}.reel-title em{display:inline-block;font-size:.84em;line-height:.8}.reel-action{position:absolute;z-index:1;left:2.3rem;bottom:2.7rem;padding-bottom:.35rem;border-bottom:2px solid;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.interests{min-height:72px;display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:0 2.2rem;background:var(--yellow);border-bottom:1px solid var(--ink);font-size:.88rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.interests span:before{content:"•";color:var(--red);margin-right:1.2rem}
.cinema-strip{display:grid;grid-template-columns:69% 31%;align-items:stretch;padding-bottom:6px;background:#111}.cinema-strip figure{position:relative;overflow:hidden;border-right:1px solid var(--ink)}.cinema-strip img{width:100%;height:100%;max-height:680px;object-fit:cover}.cinema-strip .wide img{aspect-ratio:16/8.5;object-position:center}.cinema-strip .portrait img{aspect-ratio:3/4;object-position:center}.cinema-strip figcaption,.journal figcaption{position:absolute;left:1.25rem;bottom:1.25rem;padding:.7rem .9rem;background:var(--yellow);font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.work-section{position:relative;padding:8rem 2.2rem 5rem;background:var(--green);color:var(--yellow)}.work-section h2,.films-heading h2,.journal h2,.manifesto h2{margin:3rem 0 2rem;font-size:clamp(4rem,9vw,10rem);font-weight:400;letter-spacing:-.075em;line-height:.74}.filters{position:absolute;right:2.2rem;top:14rem;display:flex;align-items:center;gap:.6rem}.filters button{padding:.75rem 1.45rem;border:1px solid rgba(242,238,223,.58);border-radius:2rem;background:transparent;color:var(--cream);font:inherit;font-size:.72rem;text-transform:uppercase;cursor:pointer}.filters button.active,.filters button:hover{border-color:var(--yellow);background:var(--yellow);color:var(--ink)}.project-index{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem 1rem;margin-top:5rem;padding-top:1rem;border-top:1px solid rgba(247,223,56,.55)}.project-card{display:grid;grid-template-columns:42% 1fr;gap:1rem;align-items:start}.project-card[hidden]{display:none}.project-card img{aspect-ratio:16/10;object-fit:cover}.project-card--portrait img{height:auto;max-height:28rem;aspect-ratio:auto;object-fit:contain;object-position:top}.project-card span{font-size:.72rem}.project-card h3{margin:.7rem 0;font-size:clamp(1.2rem,2.2vw,2.4rem);line-height:.95}.project-card p{margin:0;color:var(--cream);font-size:.75rem;text-transform:uppercase}.project-card:hover img{filter:saturate(1.3)}
.proof{background:var(--cream);border-bottom:1px solid var(--ink)}.proof-stats{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--ink)}.proof-stats article{display:flex;min-height:19rem;flex-direction:column;justify-content:space-between;padding:2rem;border-right:1px solid var(--ink)}.proof-stats article:last-child{border-right:0}.proof-stats strong{color:var(--red);font-size:clamp(5rem,10vw,11rem);font-weight:400;letter-spacing:-.08em;line-height:.75}.proof-stats span,.name-wall p{font-size:.72rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.name-wall{display:grid;grid-template-columns:15rem 1fr;gap:2rem;padding:2.4rem 2.2rem;border-bottom:1px solid var(--ink)}.name-wall>div{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2rem 3rem}.name-wall span{font-size:clamp(1.35rem,2.6vw,3.2rem);font-weight:700;letter-spacing:-.055em;line-height:.82}.name-wall--clients{background:var(--yellow)}.name-wall--clients span:nth-child(even),.name-wall--brands span:nth-child(odd){font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:400}
.films{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#333;color:var(--cream)}.films-heading{grid-column:1/-1;padding:4vw 2.2rem;background:var(--yellow);color:var(--ink)}.films-heading h2 em,.manifesto h2 em{color:var(--red)}.film-card{display:flex;flex-direction:column;background:#090909}.film-meta{order:2;padding:1.5rem 2.2rem 2.2rem}.film-meta span{color:var(--yellow);font-size:.75rem}.film-meta h3{margin:1rem 0;font-size:clamp(1.6rem,3.1vw,3.6rem);font-weight:400;letter-spacing:-.055em;line-height:.86}.film-meta p{color:#bfbcb2;font-size:.74rem;line-height:1.45;text-transform:uppercase}.film-card video{order:1;width:100%;height:auto;min-height:0;aspect-ratio:16/9;background:#000;object-fit:contain}.parallax-film{background:#090909}
.journal{background:var(--red)}.journal header{padding:5vw 2.2rem;color:var(--yellow)}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);align-items:start}.journal-grid figure{position:relative}.journal-grid img{height:auto}.journal-grid .j-wide{grid-column:span 2}.photo-interlude{display:grid;grid-template-columns:1fr 1.25fr 1.75fr;gap:clamp(.5rem,1vw,1rem);align-items:center;padding:clamp(3rem,7vw,8rem) 2.2rem;background:var(--cream)}.photo-interlude figure{margin:0}.photo-interlude img{display:block;width:100%;height:auto}.photo-interlude__small{align-self:end}.photo-interlude__tall{align-self:start}.photo-interlude--second{grid-template-columns:1.7fr .9fr 1.1fr;background:#111}.manifesto{padding:7vw 2.2rem;background:var(--green);color:var(--yellow)}.manifesto p{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.5rem,6vw,7rem);font-style:italic;text-transform:none}.about{display:grid;grid-template-columns:1.05fr 1.45fr;gap:8vw;padding:8vw 2.2rem;border-bottom:1px solid var(--line)}.about h2{margin:5rem 0 0;font-size:clamp(4rem,8vw,9rem);font-weight:400;letter-spacing:-.065em;line-height:.75}.about h2:after{content:"generalist.";display:block;color:var(--red);font-family:Georgia,"Times New Roman",serif;font-style:italic}.about>p{margin-top:6rem;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.4rem,2.6vw,3rem);line-height:1.18}footer{display:flex;justify-content:space-between;align-items:end;padding:6vw 2.2rem;background:#111;color:var(--yellow)}footer>a{font-size:clamp(4rem,10vw,10rem);font-weight:600;letter-spacing:-.08em;line-height:.7}footer>a em{color:var(--red)}footer div{display:flex;gap:1rem;font-size:.75rem;text-transform:uppercase}
@media(max-width:760px){html{scroll-padding-top:62px}.section-nav{top:auto;right:.4rem;bottom:.6rem;left:.4rem;flex-direction:row;justify-content:center;gap:.18rem;transform:none}.section-nav a{padding:.52rem .55rem;font-size:.52rem;box-shadow:1px 1px 0 var(--ink)}.topbar{height:62px;padding:0 .8rem;font-size:.7rem}.topbar nav{gap:.65rem}.hero-grid{display:block;height:auto;min-height:0}.hero{height:72vh;min-height:580px;padding:2rem 1rem 1.2rem;border-right:0;border-bottom:1px solid var(--ink)}.hero h1{font-size:21vw}.intro{font-size:1.1rem}.reel-hero{display:block;height:76vh;min-height:600px}.reel-title{left:1rem;bottom:5rem;font-size:19vw}.reel-action{left:1rem;bottom:2rem}.interests{overflow:hidden;gap:2.5rem;padding:0 1rem;white-space:nowrap}.cinema-strip{grid-template-columns:1fr 1fr}.cinema-strip img{max-height:none}.cinema-strip .wide{grid-column:1/-1}.work-section,.films-heading,.journal header,.manifesto,.about,footer{padding:4rem 1rem}.filters{position:static;overflow-x:auto;margin-top:3rem}.project-index{grid-template-columns:1fr;margin-top:3rem}.project-card{grid-template-columns:40% 1fr}.proof-stats{grid-template-columns:1fr}.proof-stats article{min-height:12rem;padding:1.5rem 1rem;border-right:0;border-bottom:1px solid var(--ink)}.name-wall{grid-template-columns:1fr;padding:2rem 1rem}.name-wall>div{justify-content:flex-start;gap:2rem}.films{grid-template-columns:1fr}.film-card video{min-height:0;aspect-ratio:16/9}.film-meta{padding:1.25rem 1rem 1.75rem}.photo-interlude,.photo-interlude--second{grid-template-columns:1fr 1fr;padding:3rem 1rem}.photo-interlude__wide{grid-column:1/-1}.journal-grid{grid-template-columns:1fr 1fr}.journal-grid .j-wide{grid-column:1/-1}.about{grid-template-columns:1fr;gap:1rem}.about h2{margin-top:3rem}.about>p{margin-top:2rem}footer{align-items:flex-start;flex-direction:column;gap:3rem;padding-bottom:6rem}footer>a{font-size:17vw}footer div{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.strange{min-height:76vh;display:flex;flex-direction:column;justify-content:space-between;padding:4vw 2.2rem;background:var(--red);color:var(--yellow)}.strange p{font-size:.78rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.strange h2{margin:8rem 0 0;font-size:clamp(4rem,9vw,10rem);font-weight:400;letter-spacing:-.075em;line-height:.76}
@media(max-width:760px){.strange{min-height:65vh;padding:4rem 1rem}.strange h2{margin-top:6rem}}

/* A quieter editorial scale: strong moments, more air, easier movement. */
.hero-grid{min-height:610px}.hero{padding:2.5rem 2.2rem 1.75rem}.hero h1{font-size:clamp(4.5rem,7.8vw,8.8rem);line-height:.76}.intro{font-size:clamp(1.1rem,1.4vw,1.65rem)}.reel-title{font-size:clamp(3.5rem,6.4vw,7rem);line-height:.68}.cinema-strip img{max-height:560px}.work-section{padding:6rem 2.2rem 4rem}.work-section h2,.films-heading h2,.journal h2,.manifesto h2{font-size:clamp(3.3rem,6.6vw,7.2rem);line-height:.78}.filters{top:10.5rem}.project-index{margin-top:3.5rem;gap:2.5rem 1rem}.films-heading{padding:3.5rem 2.2rem}.proof-stats article{min-height:14rem}.proof-stats strong{font-size:clamp(4rem,7.4vw,8rem)}.photo-interlude{padding:clamp(2.5rem,4.5vw,5rem) 2.2rem}.journal header{padding:4rem 2.2rem}.manifesto{padding:5vw 2.2rem}.manifesto p{font-size:clamp(2.3rem,4.5vw,5rem)}.strange{min-height:58vh;padding:3rem 2.2rem}.strange h2{margin-top:5rem;font-size:clamp(3.5rem,6.5vw,7rem);line-height:.8}.about{gap:5vw;padding:6vw 2.2rem}.about h2{margin-top:3.5rem;font-size:clamp(3.5rem,6vw,6.5rem)}.about>p{margin-top:4rem;font-size:clamp(1.25rem,2vw,2.2rem)}footer{padding:5vw 2.2rem}footer>a{font-size:clamp(3.5rem,7vw,7.5rem)}
@media(max-width:760px){.hero{height:64vh;min-height:510px}.hero h1{font-size:18vw}.reel-hero{height:68vh;min-height:520px}.reel-title{font-size:16.5vw}.work-section{padding:4rem 1rem 3rem}.work-section h2,.films-heading h2,.journal h2,.manifesto h2{font-size:14vw}.filters{margin-top:2rem}.project-index{margin-top:2.5rem}.films-heading,.journal header,.manifesto,.about,footer{padding:3rem 1rem}.proof-stats article{min-height:9rem}.proof-stats strong{font-size:22vw}.photo-interlude,.photo-interlude--second{padding:2rem 1rem}.manifesto p{font-size:10vw}.strange{min-height:48vh;padding:3rem 1rem}.strange h2{margin-top:3.5rem;font-size:13vw}.about h2{font-size:16vw}.about>p{font-size:1.25rem}footer>a{font-size:14vw}}

/* Floating retro section dock. */
.section-nav{top:auto;right:auto;bottom:1rem;left:50%;display:flex;flex-direction:row;justify-content:center;gap:.25rem;padding:.35rem;border:1px solid #000;border-radius:3rem;background:#111;box-shadow:4px 4px 0 rgba(16,17,14,.28);transform:translateX(-50%)}.section-nav a{display:flex;min-width:2.75rem;height:2.75rem;align-items:center;justify-content:center;gap:.5rem;padding:0 .82rem;border:0;border-radius:2rem;background:transparent;color:var(--cream);box-shadow:none;font-size:.72rem;transition:background .2s,color .2s,transform .2s}.section-nav a:nth-child(2){color:var(--yellow)}.section-nav a:nth-child(4){color:#ff7064}.section-nav a:nth-child(5){color:#83b99b}.section-nav svg{width:1.1rem;height:1.1rem;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.section-nav a:first-child svg,.section-nav a:nth-child(2) svg,.section-nav a:nth-child(4) svg{fill:currentColor;stroke:none}.section-nav a span{width:0;overflow:hidden;opacity:0;white-space:nowrap;transition:width .2s,opacity .2s}.section-nav a.active{background:var(--yellow);color:var(--ink);transform:none}.section-nav a.active span{width:auto;opacity:1}.section-nav a:hover,.section-nav a:focus-visible{background:var(--red);color:var(--cream);transform:translateY(-.12rem)}.section-nav a.active:hover{background:var(--yellow);color:var(--ink)}
@media(max-width:760px){.section-nav{right:auto;bottom:.55rem;left:50%;width:max-content;max-width:calc(100vw - .8rem);gap:.1rem;padding:.28rem;transform:translateX(-50%)}.section-nav a{min-width:2.35rem;height:2.35rem;padding:0 .58rem;font-size:.65rem}.section-nav svg{width:.95rem;height:.95rem}.section-nav a.active span{max-width:3.7rem}}

/* Consistent gutters and tightly composed editorial image grids. */
:root{--page-pad:clamp(1.5rem,4vw,4.75rem)}.topbar,.interests{padding-right:var(--page-pad);padding-left:var(--page-pad)}.hero{padding-right:var(--page-pad);padding-left:var(--page-pad)}.reel-title,.reel-action{left:var(--page-pad)}.cinema-strip{margin:0 var(--page-pad);padding-bottom:0;gap:.65rem}.cinema-strip figure{border-right:0}.work-section{padding-right:var(--page-pad);padding-left:var(--page-pad)}.filters{right:var(--page-pad)}.films-heading,.journal header,.manifesto,.strange,.about,footer,.name-wall{padding-right:var(--page-pad);padding-left:var(--page-pad)}.photo-interlude{grid-template-columns:1.45fr 1fr 1fr;gap:.65rem;align-items:stretch;padding-right:var(--page-pad);padding-left:var(--page-pad)}.photo-interlude--second{grid-template-columns:1.55fr .85fr 1fr}.photo-interlude figure,.photo-interlude__small,.photo-interlude__tall,.photo-interlude__wide{height:clamp(300px,34vw,560px);align-self:stretch;overflow:hidden}.photo-interlude img{width:100%;height:100%;object-fit:cover}.photo-interlude--first figure:nth-child(1) img{object-position:52% 50%}.photo-interlude--first figure:nth-child(2) img{object-position:50% 28%}.photo-interlude--first figure:nth-child(3) img{object-position:58% 50%}.photo-interlude--second figure:nth-child(1) img{object-position:48% 50%}.photo-interlude--second figure:nth-child(2) img{object-position:58% 48%}.photo-interlude--second figure:nth-child(3) img{object-position:52% 45%}.journal-grid{grid-auto-rows:clamp(220px,26vw,430px);gap:.65rem;margin:0 var(--page-pad) var(--page-pad)}.journal-grid figure,.journal-grid .j-wide{height:100%;overflow:hidden}.journal-grid img{width:100%;height:100%;object-fit:cover}.journal-grid figure:nth-child(1) img{object-position:center 48%}.journal-grid figure:nth-child(2) img{object-position:center 48%}.journal-grid figure:nth-child(3) img{object-position:center}.journal-grid figure:nth-child(4) img{object-position:58% center}.journal-grid figure:nth-child(5) img{object-position:center 35%}.journal-grid figure:nth-child(6) img{object-position:center}
@media(max-width:760px){:root{--page-pad:1rem}.topbar{padding-right:.8rem;padding-left:.8rem}.reel-title,.reel-action{left:1rem}.cinema-strip{margin:0 1rem;gap:.4rem}.photo-interlude,.photo-interlude--second{grid-template-columns:1.15fr .85fr;gap:.4rem;padding-right:1rem;padding-left:1rem}.photo-interlude figure,.photo-interlude__small,.photo-interlude__tall,.photo-interlude__wide{height:52vw;grid-column:auto}.photo-interlude__wide{grid-column:1/-1;height:64vw}.journal-grid{grid-auto-rows:54vw;gap:.4rem;margin:0 1rem 1rem}.journal-grid .j-wide{grid-column:1/-1}}

/* Rounded, responsive media objects. */
img,video{border-radius:clamp(.85rem,1.35vw,1.5rem);transition:transform .28s ease,filter .28s ease,box-shadow .28s ease}.reel-hero{margin:.75rem;border-radius:clamp(1rem,1.7vw,2rem)}.reel-hero img{border-radius:inherit}.cinema-strip figure,.journal-grid figure,.photo-interlude figure{border-radius:clamp(.85rem,1.35vw,1.5rem)}.project-card img,.film-card video{box-shadow:0 0 0 1px rgba(242,238,223,.12)}a:hover img,figure:hover img{filter:saturate(1.12) contrast(1.03);transform:scale(1.018)}.project-card:hover img{filter:saturate(1.2) contrast(1.04);box-shadow:0 .65rem 1.8rem rgba(0,0,0,.18);transform:translateY(-.2rem) scale(1.012)}.film-card video:hover{box-shadow:0 .65rem 1.8rem rgba(0,0,0,.28);transform:translateY(-.16rem)}
@media(prefers-reduced-motion:reduce){img,video,.project-card img,.film-card video{transition:none}a:hover img,figure:hover img,.project-card:hover img,.film-card video:hover{transform:none}}

/* Supplied brand marks, normalized as tactile logo tiles. */
.name-wall>.logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}.name-wall--clients>.logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.logo-tile{display:flex;min-height:9rem;align-items:center;justify-content:center;overflow:hidden;padding:1.5rem;border:1px solid rgba(16,17,14,.18);border-radius:1.5rem;transition:transform .22s ease,box-shadow .22s ease}.logo-tile img{width:100%;max-width:13rem;max-height:5rem;border-radius:0;object-fit:contain;transition:transform .22s ease}.logo-tile:hover{box-shadow:0 .7rem 1.8rem rgba(0,0,0,.16);transform:translateY(-.22rem) rotate(-.35deg)}.logo-tile:hover img{filter:none;transform:scale(1.045)}.logo-tile--dark{background:#1c1c1b}.logo-tile--mount{background:#087663}.logo-tile--cream{background:var(--cream)}.logo-tile--apollo{background:#4388eb}.logo-tile--white{background:#fff}.logo-tile--beta{background:#aaa}.logo-tile--mount img,.logo-tile--apollo img{max-width:15rem}.logo-tile--beta img{max-height:3.5rem}
@media(max-width:900px){.name-wall>.logo-grid,.name-wall--clients>.logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.logo-tile{min-height:7rem;padding:1rem;border-radius:1rem}.logo-tile img{max-height:4rem}}

/* Final interaction and hero-card containment fixes. */
body{overflow-x:clip}.hero-grid{overflow:hidden}.hero{min-width:0}.reel-hero{align-self:stretch;justify-self:stretch;width:auto;height:auto;min-width:0;min-height:0;margin:.75rem}.section-nav a:hover span,.section-nav a:focus-visible span{width:auto;opacity:1}
@media(max-width:760px){.hero-grid{overflow:visible}.reel-hero{width:auto;height:68vh;min-height:520px;margin:.5rem}}

/* Source material: a spacious, continuous personal-image reel. */
.source-loop{overflow:hidden;padding:clamp(5rem,9vw,10rem) 0;background:var(--cream);border-bottom:1px solid var(--ink)}.source-loop__header{display:grid;grid-template-columns:1fr 2fr;gap:1.5rem;margin:0 var(--page-pad) clamp(3.5rem,6vw,7rem)}.source-loop__header>p:first-child{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.source-loop__header h2{grid-column:2;margin:0;font-size:clamp(3.5rem,7vw,8rem);font-weight:400;letter-spacing:-.075em;line-height:.75}.source-loop__header h2 em{color:var(--red)}.source-loop__intro{grid-column:2;max-width:38rem;margin:1.5rem 0 0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.15rem,1.8vw,2rem);line-height:1.15}.source-loop__viewport{overflow:hidden;padding:0 var(--page-pad)}.source-loop__track{display:flex;width:max-content;animation:source-scroll 75s linear infinite;will-change:transform}.source-loop__viewport:hover .source-loop__track{animation-play-state:paused}.source-loop__set{display:flex;gap:clamp(.8rem,1.25vw,1.5rem);padding-right:clamp(.8rem,1.25vw,1.5rem)}.source-loop figure{width:clamp(17rem,24vw,29rem);height:clamp(18rem,28vw,34rem);flex:none;overflow:hidden;border-radius:clamp(1rem,1.6vw,1.75rem);background:#111}.source-loop figure.source-loop__wide{width:clamp(28rem,42vw,52rem)}.source-loop figure.source-loop__portrait{width:clamp(14rem,19vw,23rem)}.source-loop img{width:100%;height:100%;object-fit:cover}.source-loop figure:nth-child(1) img{object-position:center}.source-loop figure:nth-child(2) img{object-position:54% center}.source-loop figure:nth-child(4) img{object-position:center 35%}.source-loop figure:nth-child(5) img{object-position:center 35%}.source-loop figure:nth-child(9) img{object-position:center 35%}@keyframes source-scroll{to{transform:translateX(-50%)}}
@media(max-width:760px){.source-loop{padding:4.5rem 0}.source-loop__header{display:block;margin:0 1rem 3rem}.source-loop__header h2{margin-top:2.5rem;font-size:16vw}.source-loop__intro{margin-top:1.5rem}.source-loop__viewport{padding:0 1rem}.source-loop figure{width:72vw;height:82vw}.source-loop figure.source-loop__wide{width:88vw}.source-loop figure.source-loop__portrait{width:58vw}}
@media(prefers-reduced-motion:reduce){.source-loop__track{animation:none}.source-loop__viewport{overflow-x:auto}.source-loop__set[aria-hidden="true"]{display:none}}
.project-card--everlast img{aspect-ratio:16/10;object-fit:cover;object-position:center 54%}

/* Travel: one distinct scene per tile, packed into complete square rows. */
#travel .journal-grid{grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:auto;gap:.55rem;margin:0 var(--page-pad) var(--page-pad)}#travel .journal-grid figure,#travel .journal-grid .j-wide{grid-column:auto;height:auto;aspect-ratio:1;overflow:hidden}#travel .journal-grid img{width:100%;height:100%;object-fit:cover}#travel .journal-grid figure:nth-child(2) img,#travel .journal-grid figure:nth-child(8) img{object-position:center}#travel .journal-grid figure:nth-child(5) img,#travel .journal-grid figure:nth-child(9) img,#travel .journal-grid figure:nth-child(13) img,#travel .journal-grid figure:nth-child(15) img,#travel .journal-grid figure:nth-child(20) img,#travel .journal-grid figure:nth-child(21) img{object-position:center 30%}
@media(max-width:1100px){#travel .journal-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){#travel .journal-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:auto;gap:.4rem;margin:0 1rem 1rem}}

/* Film captions stay subordinate to the playable image. */
.films{align-items:start}.film-card{align-self:start}.film-meta{display:grid;grid-template-columns:auto 1fr;gap:.25rem 1rem;align-items:baseline;padding:1rem 1.25rem 1.15rem}.film-meta span{grid-row:1/3}.film-meta h3{margin:0;font-size:clamp(1.35rem,2.1vw,2.35rem);line-height:.9}.film-meta p{margin:.35rem 0 0}.film-card video{flex:none}
@media(max-width:760px){.film-meta{padding:.9rem 1rem 1rem}.film-meta h3{font-size:1.4rem}}

/* The hero reads as one sentence across the split. */
.reel-title{right:var(--page-pad);font-size:clamp(3rem,5.2vw,6.4rem);line-height:.78}
@media(max-width:760px){.reel-title{right:1rem;font-size:14vw;line-height:.8}}

/* Compact screening row directly after the work index. */
.films{grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;padding:0 var(--page-pad) 1rem;background:#090909}
.films-heading{padding:2.25rem 0 1.5rem;background:#090909;color:var(--cream)}
.films-heading h2{margin:.65rem 0 0;font-size:clamp(2.2rem,4vw,4.5rem);line-height:.82}
.film-card{min-width:0}
.film-card video{aspect-ratio:16/9;object-fit:cover;border-radius:clamp(.7rem,1vw,1.15rem)}
.film-meta{padding:.7rem .2rem .45rem;grid-template-columns:auto 1fr;gap:.1rem .65rem}
.film-meta h3{font-size:clamp(1rem,1.45vw,1.55rem);line-height:.95}
.film-meta p{margin:.2rem 0 0;font-size:.65rem;line-height:1.25}
@media(max-width:760px){
  .films{grid-template-columns:1fr;padding:0 1rem 2rem}
  .films-heading{padding:2rem 0 1rem}
  .films-heading h2{font-size:11vw}
}

/* Keep the travel grid's closing space inside its red section. */
.journal{display:flow-root}

/* The four-card work grid is the film player—no repeated screening section. */
.project-card video,.project-card iframe{display:block;width:100%;aspect-ratio:16/10;border:0;border-radius:clamp(.85rem,1.35vw,1.5rem);background:#090909;object-fit:cover;box-shadow:0 0 0 1px rgba(242,238,223,.12);transition:transform .28s ease,box-shadow .28s ease}
.project-card video:hover,.project-card iframe:hover{box-shadow:0 .65rem 1.8rem rgba(0,0,0,.24);transform:translateY(-.18rem)}
.project-card--everlast video{object-position:center 54%}
@media(prefers-reduced-motion:reduce){.project-card video,.project-card iframe{transition:none}.project-card video:hover,.project-card iframe:hover{transform:none}}

/* A slim editorial beat rather than another oversized hero. */
.manifesto{padding:1.35rem var(--page-pad) 1.6rem}
.manifesto p{display:flex;align-items:baseline;justify-content:space-between;gap:2rem;margin:0;font-family:inherit;font-style:normal}
.manifesto p span{font-size:clamp(.9rem,1.3vw,1.25rem);font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.manifesto p em{color:var(--yellow);font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.6rem,5vw,5.5rem);font-weight:400;line-height:.85}
@media(max-width:760px){
  .manifesto{padding:1.25rem 1rem 1.4rem}
  .manifesto p{align-items:flex-start;flex-direction:column;gap:.65rem}
  .manifesto p em{font-size:12vw}
}

/* Beta Radio: isolated white mark directly on black. */
.logo-tile--beta{background:#050505}
.logo-tile--beta img{max-width:15rem;max-height:3.5rem}

/* Built-brand tiles are interactive destinations. */
.logo-grid--brands .logo-tile{position:relative;cursor:pointer}
.logo-grid--brands .logo-tile:focus-visible{outline:3px solid var(--red);outline-offset:4px;box-shadow:0 .7rem 1.8rem rgba(0,0,0,.16);transform:translateY(-.22rem) rotate(-.35deg)}
.logo-tile--anker img{width:auto;height:2.5rem;max-width:100%;max-height:none}

/* One compact, left-aligned typographic beat below Proof. */
.manifesto{padding-top:1.5rem;padding-bottom:1.8rem}
.manifesto p{align-items:flex-start;justify-content:flex-start;flex-direction:column;gap:.25rem}
.manifesto p span{padding-left:.15rem}
.manifesto p em{margin-left:clamp(1.25rem,4vw,4rem)}
@media(max-width:760px){.manifesto p em{margin-left:1rem}}

/* About: breadth presented as intentional expertise. */
.about{grid-template-columns:minmax(0,.9fr) minmax(14rem,.58fr) minmax(0,1.1fr);gap:clamp(1.5rem,3vw,3.5rem);align-items:end}
.about h2{font-size:clamp(2.6rem,4.6vw,5.8rem);line-height:.78}
.about h2:after{content:"by design.";font-size:.78em}
.about__portrait{height:clamp(25rem,38vw,42rem);overflow:hidden;border-radius:clamp(.85rem,1.35vw,1.5rem)}
.about__portrait img{width:100%;height:100%;object-fit:cover;object-position:center 38%}
.about>p{margin:0}
@media(max-width:900px){.about{grid-template-columns:1fr 1fr}.about>div{grid-column:1/-1}.about__portrait{height:60vw}.about>p{align-self:center}}
@media(max-width:760px){.about{grid-template-columns:1fr}.about>div{grid-column:auto}.about h2{font-size:14vw}.about__portrait{height:110vw}.about>p{margin-top:.5rem}}

/* A consistent white field for the selected client marks. */
.logo-tile--beta{background:#fff}

/* Keep the About portrait subordinate to the biography. */
.about__portrait{height:clamp(20rem,24vw,27rem);align-self:center}
.about__portrait img{object-position:center 40%}
@media(max-width:900px){.about__portrait{height:48vw}}
@media(max-width:760px){.about__portrait{height:82vw}}

/* The work reel uses one unique set of photographs and reverses at each end. */
.source-loop__viewport{scrollbar-width:none}
.source-loop__viewport::-webkit-scrollbar{display:none}
.source-loop__track{animation:none;will-change:auto}
.source-loop__viewport:hover .source-loop__track{animation-play-state:running}

/* Travel heading: staggered editorial line breaks inspired by print layouts. */
#travel header{padding-top:clamp(2.75rem,4.5vw,5rem);padding-bottom:clamp(2.75rem,4.5vw,5rem)}
#travel .travel-heading{display:flex;flex-direction:column;margin:clamp(2.5rem,5vw,5.5rem) 0 0;letter-spacing:-.065em;line-height:.78}
#travel .travel-heading strong{font-size:clamp(4rem,8.2vw,9rem);font-weight:400;line-height:.72}
#travel .travel-heading em{display:block;font-size:clamp(3.25rem,6.5vw,7.25rem);line-height:.8}
#travel .travel-heading__middle{margin-left:clamp(2rem,12vw,14rem)}
#travel .travel-heading__last{margin-left:clamp(5rem,29vw,34rem)}
#travel .travel-heading em span{display:inline;margin:0;font:inherit;letter-spacing:inherit;text-transform:none}

/* Optically align large numeral glyphs with their captions. */
.proof-stats strong{transform:translateX(-.055em)}
@media(max-width:760px){
  #travel header{padding-top:3rem;padding-bottom:3rem}
  #travel .travel-heading{margin-top:2.5rem;line-height:.82}
  #travel .travel-heading strong{font-size:18vw}
  #travel .travel-heading em{font-size:13.5vw}
  #travel .travel-heading__middle{margin-left:7vw}
  #travel .travel-heading__last{margin-left:17vw}
}

/* Precisely centered separators and centered proof-card content. */
.interests{gap:0}
.interests span{flex:0 0 auto}
.interests span:before{display:none}
.interests i{position:relative;min-width:1.5rem;flex:1 1 auto;align-self:stretch}
.interests i:after{position:absolute;top:50%;left:50%;width:.34rem;height:.34rem;border-radius:50%;background:var(--red);content:"";transform:translate(-50%,-50%)}
.proof-stats article{align-items:center;text-align:center}
.proof-stats strong{transform:translateX(-.045em)}
.proof-stats article{transition:background-color .24s ease,color .24s ease,transform .24s ease,box-shadow .24s ease}
.proof-stats article strong{transition:color .24s ease,transform .24s ease}
.proof-stats article:hover{z-index:1;background:var(--red);color:var(--cream);box-shadow:0 .8rem 1.8rem rgba(16,17,14,.18);transform:translateY(-.3rem)}
.proof-stats article:hover strong{color:var(--yellow);transform:translateX(-.045em) scale(1.035)}
@media(prefers-reduced-motion:reduce){.proof-stats article,.proof-stats article strong{transition:none}.proof-stats article:hover{transform:none}.proof-stats article:hover strong{transform:translateX(-.045em)}}
@media(max-width:760px){.interests{overflow-x:auto;gap:0}.interests i{min-width:2rem}}

/* Proof stats as individual curved bubbles, with motion-only hover feedback. */
.proof-stats{gap:.75rem;padding:.75rem;background:var(--cream)}
.proof-stats article,.proof-stats article:last-child{border:1px solid var(--ink);border-radius:clamp(1.25rem,2vw,2.25rem);background:var(--cream);color:var(--ink)}
.proof-stats article:hover{background:var(--cream);color:var(--ink);box-shadow:0 .8rem 1.8rem rgba(16,17,14,.16);transform:translateY(-.3rem)}
.proof-stats article:hover strong{color:var(--red);transform:translateX(-.045em) scale(1.035)}
.proof-stats article:nth-child(3) strong{transform:translateX(-.1em)}
.proof-stats article:nth-child(3):hover strong{transform:translateX(-.1em) scale(1.035)}
.about>div>span{display:block;padding-left:.45rem}
.work-section>.section-kicker{padding-left:.75rem}
@media(max-width:760px){.proof-stats{gap:.55rem;padding:.55rem}.proof-stats article,.proof-stats article:last-child{border:1px solid var(--ink)}}

/* Smaller proof numerals leave the bubbles calm and spacious. */
.proof-stats article{min-height:16rem;padding:2.5rem}
.proof-stats strong{font-size:clamp(2.75rem,3.7vw,4rem)}
@media(max-width:760px){.proof-stats article{min-height:11rem;padding:1.75rem 1rem}.proof-stats strong{font-size:12vw}.work-section>.section-kicker{padding-left:.35rem}}

/* Proof lockups: one centered unit on a deeper warm-neutral card. */
.proof-stats article,.proof-stats article:last-child{justify-content:center;gap:1.4rem;background:#ded7c5}
.proof-stats article:hover{background:#ded7c5;color:var(--ink)}
.proof-stats strong{line-height:.8}
.proof-stats span{line-height:1.25}
.proof-kicker{padding:2rem var(--page-pad);border-bottom:1px solid var(--ink)}
.external-link:after{display:inline-block;width:.72em;height:.72em;margin-left:.38em;background:currentColor;content:"";mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='black' stroke-width='1.5' stroke-linecap='square' d='M3 9 9 3M4 3h5v5'/%3E%3C/svg%3E") center/contain no-repeat;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='black' stroke-width='1.5' stroke-linecap='square' d='M3 9 9 3M4 3h5v5'/%3E%3C/svg%3E") center/contain no-repeat;vertical-align:.04em}
.email-plain{display:flex;justify-content:flex-end;align-items:flex-end;padding:1.5rem var(--page-pad) 2.25rem;border-top:1px solid rgba(255,255,255,.28);background:#111;color:var(--yellow)}.email-plain p{font-size:.72rem;font-weight:700;letter-spacing:.06em;line-height:1;text-align:right}
@media(max-width:760px){.proof-stats article,.proof-stats article:last-child{gap:1rem;background:#ded7c5}.proof-stats article:hover{background:#ded7c5}}
@media(max-width:760px){.proof-kicker{padding:1.5rem 1rem}}

/* Mobile-only opening: one continuous sentence, reel, then biography. */
@media(max-width:760px){
  .hero-grid{display:block;height:auto;min-height:0;overflow:hidden;background:var(--cream)}
  .hero{display:flex;height:auto;min-height:0;padding:1rem 1rem 0;border-right:0;border-bottom:0}
  .hero .eyebrow{padding:0;font-size:.58rem;line-height:1.25;text-align:left}
  .hero h1{width:100%;margin:2rem 0 1rem;padding:0;font-size:clamp(4.4rem,19vw,6rem);letter-spacing:-.075em;line-height:.7;text-align:left}
  .hero h1 em{display:block;color:var(--red);font-size:.94em;line-height:.82}
  .intro{max-width:none;margin:0 -1rem;padding:1rem;border-top:1px solid var(--ink);font-size:clamp(1rem,4.1vw,1.2rem);line-height:1.18;text-align:left}
  .reel-hero{display:block;width:auto;height:68vh;min-height:520px;margin:0 .65rem .65rem;border-radius:1.2rem}
  .reel-hero img{width:100%;height:100%;object-fit:cover;object-position:center 58%}
  .reel-title{right:auto;left:1rem;bottom:2.65rem;font-size:clamp(2.45rem,11vw,3.55rem);line-height:.75;text-align:left}
  .reel-action{right:auto;left:1rem;bottom:1rem;font-size:.6rem}
}

/* Mobile proof: three vertical cards sharing one compact row. */
@media(max-width:760px){
  .proof-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;padding:.55rem}
  .proof-stats article,.proof-stats article:last-child{min-width:0;min-height:14rem;padding:1.2rem .35rem;gap:.8rem;border:1px solid var(--ink);border-radius:1.15rem}
  .proof-stats strong{font-size:clamp(2.5rem,11vw,3.5rem)}
  .proof-stats span{max-width:7rem;font-size:.55rem;line-height:1.3;letter-spacing:.08em;text-wrap:balance}
  .about__portrait img{object-position:center 24%}
  footer{padding-bottom:3rem}
  .email-plain{display:flex;justify-content:flex-end;padding:1.25rem 1rem calc(9rem + env(safe-area-inset-bottom))}.email-plain p{font-size:.72rem;text-align:right}
  #travel .travel-heading strong{font-size:14vw}
  #travel .travel-heading em{font-size:9vw;white-space:nowrap}
  #travel .travel-heading__middle{margin-left:7vw}
  #travel .travel-heading__last{margin-left:17vw}
  #travel .travel-heading__middle span,#travel .travel-heading__last span{display:inline;margin-left:0}
  .project-player{position:relative;overflow:hidden;border-radius:clamp(.85rem,1.35vw,1.5rem)}
  .project-player video,.project-player iframe{border-radius:inherit}
  .mobile-play{position:absolute;z-index:2;top:50%;left:50%;display:grid;width:2rem;height:2rem;place-items:center;padding:0;border:1px solid rgba(255,255,255,.75);border-radius:50%;background:rgba(16,17,14,.72);color:#fff;font-size:.65rem;line-height:1;transform:translate(-50%,-50%)}
  .mobile-play[hidden]{display:none}
  .mobile-play--youtube{inset:0;width:100%;height:100%;border:0;border-radius:inherit;background:url('assets/images/beta-radio-poster.webp') center/cover no-repeat;color:transparent;transform:none}
  .mobile-play--youtube:after{position:absolute;top:50%;left:50%;display:grid;width:2rem;height:2rem;place-items:center;border:1px solid rgba(255,255,255,.75);border-radius:50%;background:rgba(16,17,14,.72);color:#fff;content:"▶";font-size:.65rem;transform:translate(-50%,-50%)}
  .photo-interlude,.photo-interlude--second{grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem}
  .photo-interlude figure,.photo-interlude__small,.photo-interlude__tall,.photo-interlude__wide{height:48vw;grid-column:auto}
  .reel-hero{height:52vh;min-height:360px;max-height:470px}
  .reel-hero img{object-position:center 54%}
  .interests{min-height:58px;overflow:hidden;padding:0 .7rem;font-size:clamp(.48rem,2.35vw,.67rem);letter-spacing:.07em}
  .interests i{min-width:.45rem}
}
@media(min-width:761px){.mobile-play{display:none}}

/* Match the opening headline's vertical rhythm to the Films headline. */
.hero h1,.hero h1 em{line-height:.78}

/* Heavier editorial display treatment carried over from the social series. */
.hero h1,.source-loop__header h2,.work-section h2,.strange h2,#travel .travel-heading strong,.about h2,footer>a{font-family:"Arial Black","Helvetica Neue",Arial,sans-serif;font-weight:900;letter-spacing:-.085em}
.hero h1 em,.source-loop__header h2 em,.about h2:after,footer>a em{font-family:Georgia,"Times New Roman",serif;font-weight:400}
.proof-stats strong{font-family:Georgia,"Times New Roman",serif;font-weight:400}
