:root{color-scheme:light;--ink:#171717;--muted:#727272;--line:#dededb;--paper:#f8f8f6;font-family:"Helvetica Neue",Helvetica,Arial,"PingFang SC","Microsoft YaHei",sans-serif;font-weight:400;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0}button,a,input{touch-action:manipulation}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}h1,h2,h3,p{margin:0}button:disabled{cursor:default;opacity:.45}[hidden]{display:none!important}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #8b8b83;outline-offset:6px}::selection{background:#353535;color:#fff}.skip-link{position:fixed;top:-70px;left:20px;z-index:100;background:#fff;color:#000;padding:15px}.skip-link:focus{top:10px}
.main-header{position:fixed;z-index:20;top:0;left:0;right:0;min-height:96px;padding:24px 4%;display:flex;align-items:center;justify-content:space-between;color:#fff;transition:background .25s,color .25s,box-shadow .25s}.main-header.scrolled{background:rgba(248,248,246,.97);color:#171717;box-shadow:0 1px 0 #0001}.identity{display:flex;flex-direction:column;gap:6px}.identity>span{font-size:21px;letter-spacing:.2em;font-weight:400}.identity small{font-size:10px;letter-spacing:.2em;opacity:.72}.main-header nav{display:flex;align-items:center;gap:35px}.main-header nav a{position:relative;font-size:11px;letter-spacing:.17em;padding:10px 0;opacity:.68}.main-header nav a:hover,.main-header nav a[aria-current]{opacity:1}.main-header nav a:after{content:"";position:absolute;left:0;right:2px;bottom:2px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s}.main-header nav a[aria-current]:after,.main-header nav a:hover:after{transform:scaleX(1)}.menu-toggle{display:none}
.hero{position:relative;min-height:640px;height:100svh;isolation:isolate;background:#202729;color:#fff;display:grid;place-items:center;overflow:hidden}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3;filter:saturate(.6);opacity:.86}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,#0005,transparent 30%,#0004 60%,#0008),linear-gradient(90deg,#0004,#0001)}.hero-content{text-align:center;padding:140px 24px 130px}.hero-kicker{font-size:10px;letter-spacing:.3em;margin-bottom:30px;opacity:.8}.hero h1{font-size:clamp(34px,4.5vw,66px);font-weight:300;letter-spacing:.16em;line-height:1.35;text-shadow:0 2px 30px #0002}.hero h1 span{font-size:.8em;letter-spacing:.22em}.hero-name{font-size:14px;letter-spacing:.2em;margin-top:22px;opacity:.9}.hero-name span{padding:0 12px;opacity:.6}.hero-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:13px;margin-top:44px}.outline-button{border:1px solid #ffffffb3;background:transparent;color:#fff;min-height:48px;min-width:178px;padding:14px 26px;font-size:10px;letter-spacing:.19em;display:inline-flex;align-items:center;justify-content:center;gap:15px;transition:background .2s,color .2s}.outline-button:hover{background:#fff;color:#1c1c1c}.play-triangle{width:0;height:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:6px solid currentColor}.hero-bottom{position:absolute;bottom:31px;left:4%;right:4%;display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.17em}.scroll-cue{position:absolute;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:11px;white-space:nowrap;font-size:8px;letter-spacing:.17em}.scroll-cue span{width:9px;height:9px;border-right:1px solid;border-bottom:1px solid;transform:rotate(45deg)}.motion-button{font-size:10px;letter-spacing:.12em;background:#0002;border:1px solid #fff5;border-radius:0;padding:8px 13px;color:#fff;min-width:86px}
.section-wrap{padding:92px 6%}.section-topline{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:23px;border-bottom:1px solid var(--line);font-size:9px;letter-spacing:.16em;color:var(--muted)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin:45px 0 39px}h2{font-size:clamp(28px,3.5vw,43px);font-weight:300;letter-spacing:.16em}.section-heading p{font-size:13px;color:var(--muted);letter-spacing:.13em;margin-top:14px}.filters{display:flex;gap:10px 22px;align-items:center;flex-wrap:wrap}.filters button{white-space:nowrap;background:none;border:0;border-bottom:1px solid transparent;padding:10px 0;font-size:10px;letter-spacing:.1em;color:#828282}.filters button small{display:block;font-size:10px;letter-spacing:.08em;margin-top:5px;font-weight:400}.filters button[aria-pressed=true]{color:#171717;border-bottom-color:#171717}.filters button:hover{color:#171717}.film-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 20px}.film-card{min-width:0}.film-play{display:block;width:100%;aspect-ratio:16/10;overflow:hidden;background:#242626;border:0;padding:0;position:relative}.film-play img,.film-play video{width:100%;height:100%;object-fit:cover;display:block;transition:transform .65s,filter .5s}.film-play:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0005,transparent 50%);transition:background .3s}.film-play:hover img,.film-play:hover video{transform:scale(1.045);filter:brightness(.8)}.film-play-icon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1;width:45px;height:45px;display:grid;place-items:center;border:1px solid #fff9;border-radius:50%;color:#fff;opacity:0;transition:opacity .2s}.film-play:hover .film-play-icon,.film-play:focus-visible .film-play-icon{opacity:1}.film-duration{position:absolute;bottom:13px;right:13px;color:#fff;font-size:10px;letter-spacing:.1em;z-index:1}.film-info{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding-top:15px}.film-info h3{font-size:14px;font-weight:400;letter-spacing:.03em;line-height:1.6;overflow-wrap:anywhere}.film-info p{font-size:9px;color:var(--muted);letter-spacing:.09em;margin-top:5px}.film-index{font-size:9px;color:#888;line-height:2.5;letter-spacing:.07em}.empty-message{grid-column:1/-1;padding:65px 0;color:var(--muted);font-size:14px}.error-message{font-size:13px;line-height:1.8;color:#b95043;padding:15px 0}
.bio{background:#fff}.bio-intro{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,1.7fr);gap:9%;padding:62px 0 70px;align-items:center}.bio-portrait{max-width:360px}.bio-portrait img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 45%;display:block;background:#f4f4f4}.bio-portrait>span{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.17em;margin-top:17px;color:#727272}.bio-copy h2{font-size:42px;letter-spacing:.25em;margin-bottom:23px}.bio-role{font-size:17px;letter-spacing:.05em;margin-bottom:25px}.bio-summary{font-size:15px;line-height:2.1;color:#626262;white-space:pre-line}.bio-education{font-size:12px;color:#8a8a8a;line-height:1.8;margin-top:20px}.bio-stats{display:flex;gap:44px;margin-top:31px}.bio-stat strong{font-size:38px;font-weight:300;letter-spacing:-.04em;display:block}.bio-stat span{font-size:10px;color:#777;display:block;line-height:1.8;margin-top:4px}.bio-section{display:grid;grid-template-columns:1fr 3fr;gap:55px;border-top:1px solid var(--line);padding:45px 0}.minor-heading>span{font-size:9px;letter-spacing:.15em;color:#777}.minor-heading h3{font-size:17px;font-weight:400;margin-top:13px;letter-spacing:.04em}.minor-heading p{font-size:10px;color:#8b8b8b;margin-top:15px}.skills-grid{display:grid;grid-template-columns:1fr 1fr;gap:33px 35px}.skill h4{font-size:13px;font-weight:500;margin:0 0 12px;letter-spacing:.04em}.skill p{font-size:12px;line-height:2;color:#747474}.experience-list details{border-bottom:1px solid #e6e6e6}.experience-list details:first-child{margin-top:-15px}.experience-list summary{list-style:none;cursor:pointer;padding:19px 28px 19px 0;position:relative;display:grid;grid-template-columns:135px 1fr;gap:15px}.experience-list summary::-webkit-details-marker{display:none}.experience-list summary:after{content:"+";position:absolute;right:1px;top:20px;font-size:19px;font-weight:300;color:#888}.experience-list details[open] summary:after{content:"−"}.experience-date{font-size:10px;color:#898989;line-height:1.8;padding-top:1px}.experience-company{font-size:13px;line-height:1.8;font-weight:500}.experience-role{font-size:11px;font-weight:400;line-height:1.8;margin-top:4px;color:#777}.experience-body{padding:0 20px 23px 150px;font-size:12px;line-height:2;color:#737373}.experience-body ul{margin:0;padding-left:1em}.experience-body li{padding:3px 0}.experience-clients{margin-top:12px;font-size:11px;color:#888}.client-section{border-top:1px solid var(--line);padding-top:35px}.small-label{font-size:9px;letter-spacing:.15em;line-height:1.7}.client-section>span{color:#888}.client-section>p{font-size:18px;font-weight:400;letter-spacing:.045em;line-height:2.4;margin-top:22px;color:#454545}
.contact{background:#151717;color:#f1f1ee;padding-bottom:85px}.contact .section-topline{border-bottom-color:#ffffff25;color:#999b98}.contact-heading{display:flex;justify-content:space-between;align-items:baseline;gap:30px;margin:58px 0 52px}.contact-heading p{font-size:13px;letter-spacing:.08em;color:#a0a3a0}.contact-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px}.contact-grid .small-label{color:#919590;display:block;margin-bottom:19px}.contact-value{font-size:clamp(15px,1.8vw,22px);font-weight:300;letter-spacing:.015em;line-height:1.6;overflow-wrap:anywhere}.contact-value[href]:hover{text-decoration:underline;text-underline-offset:8px}.copy-email{display:block;font-size:10px;letter-spacing:.05em;background:none;border:0;border-bottom:1px solid #ffffff4d;color:#9b9d99;padding:5px 0;margin-top:13px}.copy-email span{margin-left:12px}.contact-extra{margin-top:25px;font-size:13px;color:#aaa;white-space:pre-line}.main-footer{background:#151717;color:#828682;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 6%;border-top:1px solid #ffffff18;font-size:9px;letter-spacing:.06em;line-height:1.8}.main-footer>div{display:flex;flex-wrap:wrap;align-items:center;gap:28px}.main-footer a:hover{color:#fff}.main-footer button{border:0;background:none;color:inherit;font-size:10px;padding:0}
.modal-open{overflow:hidden}.cinema-dialog{color-scheme:dark;color:#eee;background:#111313;border:1px solid #ffffff25;padding:28px;width:min(1180px,94vw);max-height:94dvh;overflow:auto;box-shadow:0 35px 130px #0008}.cinema-dialog::backdrop{background:#050505ef;backdrop-filter:blur(7px)}.cinema-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.cinema-header .small-label{color:#969a95;display:block;margin-bottom:8px}.cinema-header h2{font-size:23px;letter-spacing:.08em;line-height:1.4}.close-button{width:42px;height:42px;border:0;background:none;font-size:33px;font-weight:200;color:#bbb;flex-shrink:0}.close-button:hover{color:#fff}.reel-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:40px 0 15px}.reel-choice{background:transparent;border:0;color:#fff;text-align:left;padding:0}.reel-art{position:relative;display:block;aspect-ratio:16/11;background:#262a29;overflow:hidden}.reel-art img,.reel-art video{width:100%;height:100%;object-fit:cover;filter:brightness(.6);transition:transform .5s,filter .5s}.reel-choice:hover img,.reel-choice:hover video{transform:scale(1.04);filter:brightness(.85)}.reel-art>.film-play-icon{opacity:1}.reel-label{display:flex;justify-content:space-between;align-items:center;margin-top:20px}.reel-label strong{font-size:12px;font-weight:400;letter-spacing:.12em}.reel-label small{font-size:10px;color:#999;letter-spacing:.12em}.reel-status{font-size:10px;color:#898e89;margin-top:10px;display:block;line-height:1.6}.player-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:17px;flex-wrap:wrap}.player-toolbar button{font-size:10px;letter-spacing:.07em;padding:8px 0;color:#a5aaa4;background:none;border:0}.reel-switches{display:flex;gap:22px}.reel-switches button[aria-pressed=true]{color:#fff;box-shadow:0 1px 0 #fff}.cinema-dialog #player{display:block;background:#000;width:100%;max-height:65dvh;aspect-ratio:16/9;object-fit:contain}.player-details{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding-top:20px}.player-details p{white-space:pre-line;font-size:12px;color:#c2c6c0;line-height:1.8}.player-details>span{color:#848a83;font-size:10px;flex-shrink:0;line-height:1.8;max-width:45%}.cinema-dialog .error-message{color:#e1a494}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#eee;color:#222;padding:14px 22px;border:1px solid #bbb;z-index:100;max-width:90vw;width:max-content;font-size:13px;box-shadow:0 8px 40px #0003}
@media(min-width:1600px){.section-wrap{padding-left:max(6%,calc((100% - 1440px)/2));padding-right:max(6%,calc((100% - 1440px)/2))}}
@media(max-width:1000px){.film-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading{align-items:flex-start;flex-direction:column;gap:22px}.bio-intro{gap:6%}.bio-section{grid-template-columns:180px 1fr;gap:30px}.experience-list summary{grid-template-columns:1fr;gap:4px}.experience-body{padding-left:0}.contact-grid{grid-template-columns:1.5fr 1fr}.contact-grid>div:last-child{grid-column:1/-1}.main-header nav{gap:23px}.hero h1{font-size:50px}}
@media(max-width:650px){html{scroll-padding-top:82px}.main-header{min-height:80px;padding:18px 6%}.identity>span{font-size:17px}.identity small{font-size:9px}.menu-toggle{display:flex;background:none;border:0;width:42px;height:42px;flex-direction:column;gap:7px;align-items:center;justify-content:center;color:inherit}.menu-toggle span{width:22px;height:1px;background:currentColor;transition:transform .2s}.main-header nav{display:none;position:absolute;top:80px;left:0;right:0;background:#f8f8f6;color:#171717;padding:15px 6% 25px;gap:8px;border-bottom:1px solid #ddd;flex-direction:column;align-items:stretch}.main-header.menu-open{background:#f8f8f6;color:#171717}.main-header.menu-open nav{display:flex}.main-header.menu-open .menu-toggle span:first-child{transform:translateY(4px) rotate(45deg)}.main-header.menu-open .menu-toggle span:last-child{transform:translateY(-4px) rotate(-45deg)}.main-header nav a{padding:12px 0;width:100%;font-size:12px}.main-header nav a:after{display:none}.hero{min-height:640px}.hero h1{font-size:32px;letter-spacing:.11em;line-height:1.5}.hero h1 span{letter-spacing:.15em}.hero-kicker{font-size:8px;letter-spacing:.14em;margin-bottom:22px}.hero-name{font-size:12px;letter-spacing:.1em}.hero-actions{margin-top:33px;gap:10px}.outline-button{min-width:0;font-size:9px;padding:14px 19px;letter-spacing:.11em}.hero-content{padding-left:18px;padding-right:18px}.hero-bottom{left:6%;right:6%;font-size:8px;bottom:27px}.scroll-cue{display:none}.section-wrap{padding:60px 6%}.section-topline{font-size:8px;letter-spacing:.08em;padding-bottom:19px}.section-topline>span:last-child{text-align:right}.section-heading{margin:30px 0 28px}.section-heading h2{font-size:30px}.filters{gap:8px 19px}.filters button{font-size:9px}.filters button small{font-size:9px}.film-grid{grid-template-columns:1fr;gap:30px}.film-play-icon{opacity:1;width:38px;height:38px}.film-info h3{font-size:14px}.bio-intro{grid-template-columns:1fr;padding:36px 0 45px;gap:32px}.bio-portrait{max-width:270px;width:75%}.bio-copy h2{font-size:32px;margin-bottom:17px}.bio-summary{font-size:14px;line-height:2}.bio-role{font-size:16px;margin-bottom:18px}.bio-stats{gap:35px}.bio-stat strong{font-size:33px}.bio-section{grid-template-columns:1fr;gap:25px;padding:30px 0}.skills-grid{gap:25px 22px}.skill p{font-size:12px;line-height:1.9}.minor-heading h3{margin-top:8px}.minor-heading p{margin-top:8px}.experience-list details:first-child{margin-top:0}.experience-list summary{grid-template-columns:1fr}.experience-company{font-size:13px}.client-section>p{font-size:15px;line-height:2.5}.contact-heading{flex-direction:column;gap:20px;margin:35px 0}.contact-grid{grid-template-columns:1fr;gap:33px}.contact-grid .small-label{margin-bottom:10px}.contact-value{font-size:21px}.main-footer{align-items:flex-start;flex-direction:column;gap:18px;padding:24px 6%}.main-footer>div{gap:23px}.cinema-dialog{padding:19px;width:95vw;max-height:95dvh}.cinema-header{margin-bottom:19px}.cinema-header h2{font-size:19px}.reel-choices{grid-template-columns:1fr;margin-top:20px;gap:23px}.reel-choice{display:grid;grid-template-columns:42% 1fr;gap:0 18px;align-items:center}.reel-art{grid-row:1/3;aspect-ratio:16/10}.reel-label{display:block;margin:0}.reel-label strong,.reel-label small{display:block;line-height:1.8}.reel-label strong{font-size:11px}.reel-status{margin:0;font-size:9px}.reel-art>.film-play-icon{width:30px;height:30px}.player-details{flex-direction:column;gap:10px}.player-details>span{max-width:100%}.reel-switches{gap:15px}.player-toolbar{gap:10px}}
.hero-cover{pointer-events:none}.player-stage{position:relative;background:#000}.player-cover{position:absolute;inset:0;pointer-events:none;overflow:hidden}.player-cover img{width:100%;height:100%;object-fit:contain;display:block;background:#000;mask-image:linear-gradient(#000 calc(100% - 60px),transparent calc(100% - 36px))}.cover-play-button{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:13px;padding:16px 24px;border:1px solid #fff9;background:#111c;color:#fff;font-size:12px;letter-spacing:.08em;pointer-events:auto;white-space:nowrap}.cover-play-button:hover{background:#fff;color:#111}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
