*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0b0a0e;--panel:#100f14;--line:#302b35;--ink:#ece9e2;--dim:#aaa4b0;--orange:#e8763a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:var(--bg);color:var(--ink);font-family:Helvetica Neue,Helvetica,Arial,sans-serif}body{-webkit-font-smoothing:antialiased;min-width:0}button,input,textarea,select{font:inherit}a{color:inherit}button{cursor:pointer}img,video{max-width:100%;height:auto}button:disabled{cursor:wait;opacity:.65}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--orange);outline-offset:4px}p{line-height:1.6}h1,h2,h3{font-weight:500}button{color:inherit}html{scroll-padding-top:100px}.js-only{display:none!important}.enhanced .js-only{display:inline-flex!important}.skip-link{z-index:100;background:var(--ink);color:var(--bg);padding:12px;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:none}#site-header{z-index:5;background:linear-gradient(#0b0a0ef5,#0000);justify-content:space-between;align-items:center;gap:16px;width:100%;padding:22px 4vw;display:flex;position:absolute;top:0;left:0}.logo{letter-spacing:.02em;white-space:nowrap;align-items:center;gap:10px;font-size:15px;text-decoration:none;display:inline-flex}.logo-mark{flex:none;width:22px;height:22px}nav{flex-wrap:wrap;gap:22px;display:flex}nav a{align-items:center;min-height:44px;font-size:13px;text-decoration:none;display:inline-flex}#cv-link{color:var(--orange)}#hero-track{height:300vh;position:relative}#hero-stage{isolation:isolate;--frame-top:0px;height:100svh;min-height:620px;position:sticky;top:0;overflow:hidden}#hero-poster,#hero-canvas{inset:var(--frame-top) 0 0;width:100%;height:calc(100% - var(--frame-top));z-index:-2;position:absolute}#hero-poster img{object-fit:cover;width:100%;height:100%}#hero-canvas{opacity:0}#hero-stage:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(90deg,#0b0a0eaa,#0000 65%),linear-gradient(#0000 62%,#0b0a0e 100%);position:absolute;inset:0}.hero-copy{width:min(560px,50vw);position:absolute;bottom:10vh;left:7vw}.hero-copy h1{letter-spacing:-.055em;font-size:clamp(42px,5.7vw,84px);line-height:1.04}.hero-role{color:var(--orange);margin-top:18px;font-size:clamp(15px,1.5vw,21px)}.hero-intro{max-width:32ch;color:var(--dim);margin-top:12px}.hero-actions,.contact-actions{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.action{border:1px solid var(--line);background:var(--panel);min-height:44px;color:var(--ink);border-radius:2px;justify-content:center;align-items:center;padding:10px 16px;font-size:13px;line-height:1.5;text-decoration:none;display:inline-flex}.action:hover{border-color:var(--orange)}.action.primary{background:var(--orange);border-color:var(--orange);color:#170d08}.bracket{pointer-events:none;width:28px;height:28px;position:absolute}.bracket-tl{border-left:1px solid var(--orange);border-top:1px solid var(--orange);top:100px;left:4vw}.bracket-br{border-right:1px solid var(--orange);border-bottom:1px solid var(--orange);bottom:34px;right:4vw}#hero-status{color:var(--dim);min-height:1.6em;margin-top:12px;font-size:12px}.scroll-cue{letter-spacing:.22em;text-transform:uppercase;color:var(--dim);align-items:center;gap:12px;margin-top:10px;font-size:11px;transition:opacity .4s}.scroll-cue-line{background:var(--line);width:44px;height:1px;position:relative;overflow:hidden}.scroll-cue-line:after{content:"";background:var(--orange);animation:1.8s ease-in-out infinite cue-sweep;position:absolute;inset:0;transform:translate(-100%)}@keyframes cue-sweep{to{transform:translate(100%)}}#hero-stage.scrolled .scroll-cue,#hero-stage.revealing .scroll-cue{opacity:0}.animation-unavailable .scroll-cue{display:none!important}#site-footer{border-top:1px solid var(--line);color:var(--dim);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 28px;padding:28px 7vw;font-size:12px;display:flex}#site-footer a{overflow-wrap:anywhere;text-decoration:none}#site-footer a:hover{color:var(--orange)}.back-to-top{color:var(--orange);margin-left:auto}#studio,#process,#contact{max-width:1800px;margin:auto;padding:100px 7vw}.studio-head{justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px;display:flex}.studio-head h2,#process h2{letter-spacing:-.04em;font-size:clamp(32px,4vw,60px)}.studio-head p{color:var(--dim);max-width:30ch}#studio-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 22px;display:grid}#studio-grid .piece-card:last-child:nth-child(3n-1){grid-column:span 2}#studio-grid .piece-card:last-child:nth-child(3n-1) img{aspect-ratio:11/4;object-fit:contain;background:#0a0a0c}.piece-card{grid-template-columns:1fr auto;align-content:start;gap:15px 8px;min-width:0;text-decoration:none;display:grid;position:relative}.piece-card img{aspect-ratio:4/3;object-fit:cover;background:var(--panel);border:1px solid var(--line);grid-column:1/-1;width:100%}.piece-label{font-size:17px}.piece-hint{color:var(--orange);align-self:center;font-size:11px}.piece-card:hover img{border-color:var(--orange)}nav a,.action,.close,.piece-card img,#site-footer a,.contact-email,.project-permalink{transition:color .15s,border-color .15s,background-color .15s}nav a:hover,.project-permalink:hover,.contact-email:hover{color:var(--orange)}.close:hover{border-color:var(--orange)}.action.primary:hover{background-color:#f08a50;border-color:#f08a50}@media (prefers-reduced-motion:no-preference){.piece-card img{transition:transform .2s,border-color .2s}.piece-card:hover img{transform:translateY(-4px)}#project-overlay:not([hidden]){animation:.22s ease-out dialog-in}}@keyframes dialog-in{0%{opacity:0}}.project-fallbacks{padding:0 7vw}.enhanced .project-fallbacks{display:none}.project-detail{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:40px;padding:40px 0;scroll-margin-top:30px;display:grid}.project-media{align-content:start;gap:20px;display:grid}.project-media img,.project-media video{background:var(--bg);width:100%}.project-copy h2{letter-spacing:-.03em;margin-bottom:22px;font-size:clamp(30px,4vw,52px)}.project-copy p{color:var(--dim);margin-bottom:20px}.project-permalink{color:var(--orange);margin-top:24px;font-size:13px;display:block}#process{border-top:1px solid var(--line)}#process h3{margin:30px 0 12px}#process img,#process video{object-fit:contain;max-height:600px}#contact{border-top:1px solid var(--line);padding-top:120px;padding-bottom:120px}.contact-grid{align-items:start;gap:60px;display:flex}.contact-portrait{aspect-ratio:4/5;object-fit:cover;width:240px}.contact-grid h2{letter-spacing:-.04em;margin-bottom:30px;font-size:clamp(32px,4.4vw,65px);line-height:1.1}.contact-name{color:var(--ink);margin-bottom:4px}.contact-grid p{color:var(--dim)}.contact-email{color:var(--orange);overflow-wrap:anywhere;margin-top:20px;font-size:clamp(18px,2.5vw,30px);display:inline-block}.modal{z-index:30;background:var(--bg);overscroll-behavior:contain;position:fixed;inset:0;overflow:auto}.close{border:1px solid var(--line);background:var(--panel);width:44px;min-width:44px;height:44px;color:var(--ink);place-items:center;font-size:28px;line-height:1;display:grid}.cv-bar,.viewer-bar{background:var(--bg);justify-content:space-between;align-items:center;gap:12px;padding:14px 4vw;display:flex}.cv-bar{z-index:2;border-bottom:1px solid var(--line);position:sticky;top:0}.cv-bar>span{color:var(--dim);font-size:12px}.cv-bar-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}#cv-sheet{color:#26222c;opacity:1;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#f2eee4;width:calc(100% - 40px);max-width:940px;margin:32px auto 60px;padding:52px;transform:none;box-shadow:0 24px 80px #0007}#project-overlay{padding:70px 6vw 40px}#project-close{z-index:2;position:fixed;top:14px;right:4vw}#project-content{max-width:1400px;margin:auto}#viewer-overlay{grid-template-rows:auto minmax(0,1fr) auto;display:grid;overflow:hidden}.viewer-bar h2{font-size:17px}#viewer-stage{min-height:0;position:relative}#viewer-canvas{width:100%;height:100%;display:block}#viewer-fallback{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}#viewer-status{text-align:center;color:var(--dim);pointer-events:none;background:#0b0a0edd;padding:8px;font-size:12px;position:absolute;bottom:10px;left:20px;right:20px}.viewer-controls{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:center;gap:8px;padding:12px 20px;display:flex}.cv-foot{overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:20px;display:flex}.cv-page>nav{padding:20px 4vw}.cv-head{border-bottom:1px solid #d3ccbd;margin-bottom:2.5rem;padding-bottom:2rem}.cv-head h1{letter-spacing:-.02em;font-size:clamp(2.2rem,5vw,3.4rem);font-weight:600}.cv-role{color:#a04a1a;letter-spacing:.28em;text-transform:uppercase;margin-top:.35rem;font-size:.85rem}.cv-bio{color:#46424e;max-width:44rem;margin-top:1.5rem;line-height:1.7}.cv-cols{grid-template-columns:15rem 1fr;gap:3.5rem;display:grid}.cv-cols section{margin-bottom:2.5rem}.cv-cols h2{letter-spacing:.32em;text-transform:uppercase;color:#a04a1a;align-items:center;gap:.6rem;margin-bottom:1.1rem;font-size:.72rem;display:flex}.cv-cols h2:before{content:"";background:#d5642b;flex:none;width:7px;height:7px}.cv-label{letter-spacing:.2em;text-transform:uppercase;color:#5d5766;margin:.9rem 0 .5rem;font-size:.65rem}.cv-plain{list-style:none}.cv-plain li{color:#46424e;font-size:.92rem;line-height:1.75}.cv-plain a{color:#46424e;text-decoration:none}.cv-plain a:hover{color:#a04a1a}.cv-tags{flex-wrap:wrap;gap:.4rem;list-style:none;display:flex}.cv-tags li{color:#46424e;border:1px solid #cec6b6;border-radius:2px;padding:.25rem .55rem;font-size:.72rem}.cv-run{color:#46424e;font-size:.92rem;line-height:1.7}.cv-entry{break-inside:avoid;border-left:2px solid #e0d9c9;margin-bottom:1.8rem;padding-left:1.05rem}.cv-entry h3{letter-spacing:-.01em;font-size:1.05rem;font-weight:600}.cv-entry h3 span{color:#6b6675;font-weight:400}.cv-when{color:#a04a1a;letter-spacing:.18em;text-transform:uppercase;margin:.3rem 0 .55rem;font-size:.72rem}.cv-entry p:not(.cv-when){color:#46424e;max-width:36rem;font-size:.92rem;line-height:1.65}.cv-foot{letter-spacing:.22em;text-transform:uppercase;color:#5d5766;border-top:1px solid #d3ccbd;margin-top:3rem;padding-top:1.5rem;font-size:.7rem}@media (width<=1000px){#studio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#studio-grid .piece-card:last-child:nth-child(3n-1){grid-column:auto}#studio-grid .piece-card:last-child:nth-child(3n-1) img{aspect-ratio:4/3;object-fit:cover;background:var(--panel)}#studio-grid .piece-card:last-child:nth-child(odd){grid-column:1/-1}#studio-grid .piece-card:last-child:nth-child(odd) img{aspect-ratio:11/4;object-fit:contain;background:#0a0a0c}.cv-cols{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:24px}}@media (width<=760px){#site-header{background:#0b0a0edd;gap:12px;padding:12px 20px}#site-header nav{flex-wrap:nowrap;gap:14px}#site-header nav a{font-size:12px}.logo{text-overflow:ellipsis;min-width:0;font-size:14px;overflow:hidden}#hero-track{height:200vh}#hero-stage{--frame-top:60px;min-height:720px}.hero-copy{width:auto;bottom:45px;left:6vw;right:6vw}.hero-copy h1{font-size:clamp(34px,9vw,54px)}.hero-role{margin-top:10px}.hero-intro{max-width:100%;font-size:14px}.hero-actions{gap:8px;margin-top:18px}.hero-actions .action{padding:10px 12px;font-size:12px}.scroll-cue{margin-top:4px}#site-footer{gap:8px 20px;padding:24px 6vw}#hero-stage:after{background:linear-gradient(#0000 45%,#0b0a0ed9 78%,#0b0a0e 96%)}.bracket-tl{top:106px}.bracket-br{bottom:20px}.studio-head{display:block}.studio-head p{margin-top:18px}#studio,#process,#contact{padding:65px 6vw}#studio-grid{grid-template-columns:1fr;gap:30px}#studio-grid .piece-card:last-child:nth-child(n){grid-column:auto}#studio-grid .piece-card:last-child:nth-child(n) img{aspect-ratio:4/3;object-fit:cover;background:var(--panel)}.project-detail{grid-template-columns:1fr;gap:24px;padding-top:20px}#project-overlay{padding:65px 6vw 30px}.contact-grid{flex-direction:column;gap:30px}.cv-bar{gap:6px;padding:10px}.cv-bar>span{display:none}.cv-bar-actions{gap:6px;width:100%}.cv-bar-actions .close{margin-left:auto}.cv-bar-actions .action{padding:8px 10px;font-size:11px}#cv-sheet{width:calc(100% - 24px);margin:18px auto 30px;padding:28px 22px}.cv-cols{grid-template-columns:1fr;gap:0}.cv-head{margin-bottom:28px;padding-bottom:24px}.cv-head h1{font-size:34px}.cv-role{letter-spacing:.16em;font-size:11px}.cv-plain a{overflow-wrap:anywhere}.cv-foot{letter-spacing:0}.viewer-controls{gap:6px;padding:8px}.viewer-controls .action{flex:auto;padding:8px 10px;font-size:11px}}@media (height<=600px) and (width>=761px){#hero-stage{min-height:540px}#hero-poster img{object-position:50% 0}.hero-copy{bottom:35px}.hero-copy h1{font-size:44px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}#hero-track{height:auto}#hero-stage{height:auto;min-height:650px;position:relative}#hero-canvas{display:none}#paper-action,.scroll-cue{display:none!important}}@media print{@page{size:A4;margin:12mm}body{color:#222;background:#fff}body>:not(#cv-overlay){display:none!important}body.cv-page>#cv-sheet{display:block!important}#cv-overlay{background:#fff;padding:0;position:static;overflow:visible}#cv-overlay[hidden]{display:block!important}.cv-bar{display:none}#cv-sheet{width:100%;max-width:none;box-shadow:none;background:#fff;margin:0;padding:0;opacity:1!important;transform:none!important}.cv-head h1{font-size:30px}.cv-bio{margin-top:12px;font-size:11px;line-height:1.5}.cv-cols{grid-template-columns:190px 1fr;gap:28px}.cv-cols h2{letter-spacing:.15em;margin-bottom:10px;font-size:10px}.cv-entry h3{font-size:12px}.cv-when,.cv-label{letter-spacing:.06em;font-size:9px}.cv-tags li{padding:3px 5px;font-size:9px}.cv-foot{letter-spacing:0;margin-top:12px;padding-top:10px;font-size:9px}section,.cv-entry{break-inside:avoid}.cv-cols section{margin-bottom:12px}.cv-entry{margin-bottom:11px}.cv-entry p:not(.cv-when),.cv-plain li,.cv-run{font-size:9.5px;line-height:1.45}.cv-bio{font-size:10px}.cv-head{margin-bottom:16px;padding-bottom:12px}.cv-foot{break-inside:avoid;margin-top:8px;padding-top:8px}.cv-foot img{width:48px;height:48px}}.presentation-credit{max-width:1800px;color:var(--dim);margin:auto;padding:0 7vw 70px;font-size:12px;line-height:1.6}#hero-stage.revealing .hero-copy,#hero-stage.revealing .film-marks{visibility:hidden}html:not(.enhanced) #hero-track,.animation-unavailable #hero-track{height:auto}html:not(.enhanced) #hero-stage{position:relative}@media (width<=380px){#site-header{flex-wrap:wrap;gap:2px}#site-header .logo{overflow:visible}#site-header nav{justify-content:space-between;width:100%}#site-header nav a{white-space:nowrap}#hero-stage{--frame-top:100px}}
