@font-face{font-family:Aeonik;src:url(/fonts/aeonik-regular.woff2) format("woff2"),url(/fonts/aeonik-regular.woff) format("woff");font-weight:400 600;font-style:normal;font-display:swap}:root{--bg: #ffffff;--fg: #000000;--fg-muted: rgba(0, 0, 0, .55);--fg-faint: rgba(0, 0, 0, .32);--border: rgba(0, 0, 0, .14);--surface: rgba(0, 0, 0, .03);--font-sans: "Aeonik", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;--container: 1440px;--gutter: clamp(1rem, 2.4vw, 2rem);--grid-gutter: clamp(.51rem, 1.02vw, .85rem);--header-height: calc(var(--grid-gutter) * 2 + 20px);--mobile-col2-start: 39%;color-scheme:light}:root[data-theme=dark]{--bg: #000000;--fg: #ffffff;--fg-muted: rgba(255, 255, 255, .58);--fg-faint: rgba(255, 255, 255, .36);--border: rgba(255, 255, 255, .16);--surface: rgba(255, 255, 255, .05);color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--bg);color:var(--fg);font-family:var(--font-sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;transition:background-color .25s ease,color .25s ease;scrollbar-width:thin;scrollbar-color:var(--fg) var(--bg)}main{flex:1;display:flex;align-items:center;justify-content:center}.coming-soon p{font-size:clamp(1.75rem,5vw,65px);font-weight:500;line-height:1;letter-spacing:-.01em;text-align:center}::-webkit-scrollbar{width:1px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--fg)}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}h1,h2,p{margin:0}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;padding:0}.site-header{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:repeat(12,1fr);column-gap:1rem;align-items:center;padding:var(--grid-gutter);background:transparent;color:#fff;mix-blend-mode:difference;line-height:normal}.logo,.role,.site-nav a{font-size:18px;font-weight:500}.logo{grid-column:1 / span 3;white-space:nowrap}.role{grid-column:4 / span 6;min-width:0;white-space:nowrap}.header-right{grid-column:10 / -1;display:flex;align-items:center;justify-content:flex-end;gap:1.25rem}.site-nav{display:flex;gap:1.25rem}.site-nav a{transition:opacity .15s ease}.site-nav a:hover{opacity:.6}.theme-toggle{display:grid;place-items:center;font-size:22px;flex-shrink:0}.theme-toggle .icon{width:18px;height:18px}.theme-toggle .icon-moon{display:none}:root[data-theme=dark] .theme-toggle .icon-sun{display:none}:root[data-theme=dark] .theme-toggle .icon-moon{display:block}@media(max-width:800px){.role{display:none}}.intro{display:grid;grid-template-columns:repeat(12,1fr);column-gap:1rem;padding:clamp(2.178rem,5.808vw,4.356rem) var(--grid-gutter) 0}.intro p{grid-column:1 / span 10;font-size:clamp(1.75rem,5vw,65px);font-weight:500;line-height:1;letter-spacing:-.01em}@media(max-width:700px){.intro p{grid-column:1 / -1}}@media(max-width:640px){.intro p{font-size:35px}.work-grid{padding-bottom:14px}}.reveal-trigger{cursor:pointer;text-decoration-line:underline;text-decoration-color:var(--fg);text-decoration-thickness:1px;text-underline-offset:.12em}.reveal-panel{grid-column:4 / -1;display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s ease}.reveal-panel-inner{overflow:hidden;min-height:0}.reveal-panel.is-visible{grid-template-rows:1fr}.reveal-panel p{font-size:clamp(1.75rem,5vw,70px);font-weight:500;line-height:1;letter-spacing:-.02em;padding-top:.3em;padding-bottom:.2em;color:var(--fg)}.reveal-panel p.instrument-serif-regular{font-family:"Instrument Serif",serif;font-weight:400;font-style:normal}@media(max-width:700px){.reveal-panel{grid-column:1 / -1}}@media(max-width:640px){.reveal-panel p{font-size:35px}}.work-grid{padding:var(--grid-gutter);display:grid;grid-template-columns:1fr;gap:var(--grid-gutter)}.work-item{display:block}.work-frame{position:relative;display:block;overflow:hidden;border-radius:11px;background:var(--surface)}.work-item img{width:100%;height:100%;aspect-ratio:4 / 3;object-fit:cover;transition:transform .5s ease}.work-item:hover img{transform:scale(1.02)}.work-caption{display:none}@media(max-width:640px),(hover:none),(pointer:coarse){.work-caption{display:inline-block;position:absolute;left:.5rem;bottom:.5rem;color:#fff;font-size:16px;font-weight:500;letter-spacing:.02em;white-space:nowrap}}@media(min-width:640px){.work-grid{grid-template-columns:repeat(2,1fr)}.work-item img{aspect-ratio:16 / 11}}@media(hover:hover)and (pointer:fine){.work-item{cursor:none}}.cursor-label{position:fixed;top:0;left:0;transform:translate(-9999px,-9999px);pointer-events:none;z-index:50;color:#fff;font-size:clamp(1.75rem,5vw,65px);font-weight:500;line-height:1;letter-spacing:-.01em;white-space:nowrap;opacity:0;transition:opacity .2s ease}.cursor-label.is-visible{opacity:1}.about-columns{display:grid;grid-template-columns:repeat(12,1fr);column-gap:1rem;padding:var(--header-height) var(--grid-gutter) clamp(3rem,8vw,5rem)}.about-col-history{grid-column:1 / span 3}.about-col-bio{grid-column:4 / span 6}.about-col-history p,.about-col-bio p{font-size:18px;font-weight:500;line-height:1}.timeline-block+.timeline-block{margin-top:1.5rem}.timeline-detail{color:var(--fg-muted)}.about-col-bio p+p{margin-top:1.5rem}.about-col-bio p{max-width:60ch}@media(max-width:640px){.about-columns{grid-template-columns:1fr;row-gap:2rem}.about-col-history,.about-col-bio{grid-column:1 / -1}}.site-footer{display:grid;grid-template-columns:repeat(12,1fr);column-gap:1rem;align-items:baseline;padding:var(--grid-gutter)}.footer-copy,.footer-email,.footer-linkedin{font-size:18px;font-weight:500;color:var(--fg-muted)}.footer-copy{grid-column:1 / span 3}.footer-email{grid-column:4 / span 6;white-space:nowrap;transition:color .15s ease}.footer-linkedin{grid-column:10 / -1;justify-self:end;transition:color .15s ease}.footer-email:hover,.footer-linkedin:hover{color:var(--fg)}.footer-email-short{display:none}@media(max-width:640px){.site-footer{display:grid;grid-template-columns:var(--mobile-col2-start) 1fr auto;align-items:baseline;column-gap:0}.footer-copy{grid-column:3;grid-row:1;justify-self:end}.footer-email{grid-column:1;grid-row:1;justify-self:start}.footer-linkedin{grid-column:2;grid-row:1;justify-self:start}.footer-email-full{display:none}.footer-email-short{display:inline}}.case-hero{padding:var(--grid-gutter)}.case-hero img{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:11px}.case-columns{display:grid;grid-template-columns:repeat(12,1fr);column-gap:1rem;padding:0 var(--grid-gutter) clamp(2rem,6vw,3.5rem)}.case-columns p{font-size:18px;font-weight:500;line-height:1}.case-col-1{grid-column:1 / span 3}.case-col-2{grid-column:4 / span 3}.case-col-3{grid-column:7 / span 6}.case-agency{color:var(--fg-muted)}.case-description{max-width:60ch}@media(max-width:640px){.case-columns{grid-template-columns:1fr;row-gap:1.5rem}.case-col-1,.case-col-2,.case-col-3{grid-column:1 / -1}.case-info{grid-template-columns:var(--mobile-col2-start) 1fr;column-gap:0}.case-info .case-col-1,.case-info .case-col-2{grid-column:auto}.case-info .case-col-3{grid-column:1 / -1}}.case-modules{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--grid-gutter);padding:0 var(--grid-gutter) var(--grid-gutter)}.module{border-radius:11px;overflow:hidden;background:var(--surface)}.module img{display:block;width:100%;height:100%;object-fit:cover}.module-half{grid-column:span 3;aspect-ratio:8 / 9}.module-full{grid-column:span 6;aspect-ratio:16 / 9}.module-triplet{grid-column:span 6;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--grid-gutter)}.module-triplet .module{aspect-ratio:16 / 27}@media(max-width:640px){.case-modules{grid-template-columns:1fr}.module-half,.module-full{grid-column:1 / -1}.module-triplet{grid-column:1 / -1;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.module-triplet::-webkit-scrollbar{display:none}.module-triplet .module{flex:0 0 82%;scroll-snap-align:start}}.credits-grid,.credit-item{display:contents}.credit-name{grid-column:4 / span 3}.credit-role{grid-column:7 / span 6}@media(max-width:640px){.credits-grid{display:flex;flex-direction:column;gap:0;grid-column:1 / -1}.credit-item{display:grid;grid-template-columns:var(--mobile-col2-start) 1fr;column-gap:0}.credit-name,.credit-role{grid-column:auto}}
