@font-face{font-family:"SF Pro Expanded Portfolio";src:url("/assets/sf-pro-expanded-latin.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
:root{color-scheme:dark;--bg:#141414;--ink:#e4e4e4;--body:#b4b4b4;--quiet:#949494;--line:#363636;font-family:"PingFang SC","Microsoft YaHei",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible,video:focus-visible{outline:2px solid #b9dafa;outline-offset:7px}a:hover{color:#fff}.wrap{width:min(1320px,calc(100% - 96px));margin-inline:auto}.skip-link{position:fixed;left:24px;top:-100px;z-index:20;background:#fff;color:#111;padding:10px 18px}.skip-link:focus{top:12px}.site-header{min-height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.wordmark{display:flex;gap:28px;align-items:center;font-size:16px;letter-spacing:.1em;font-weight:600;white-space:nowrap}.wordmark span{font-size:13px;letter-spacing:.05em;color:var(--quiet);font-weight:400}.site-header nav{display:flex;gap:30px;color:var(--body);font-size:14px}.project-heading{padding:45px 0 32px}.eyebrow{margin:0 0 14px;color:var(--quiet);font-size:12px;font-weight:500;letter-spacing:.12em}.eyebrow span{padding:0 13px;color:#666}.heading-row{display:flex;align-items:center;justify-content:space-between;gap:24px}h1{font-size:clamp(34px,4.1vw,60px);font-weight:550;letter-spacing:-.045em;line-height:1.3;margin:0}h1 span{white-space:nowrap}.role-meta{flex:none;color:var(--body);font-size:13px;line-height:1.9;margin:0;text-align:right}.film{scroll-margin-top:24px}.player{position:relative;width:100%;aspect-ratio:16/9;isolation:isolate;background:#070707;overflow:hidden;border:1px solid #303030;border-radius:2px}.player video{display:block;width:100%;height:100%;object-fit:contain;background:#070707}.play-button{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:14px;white-space:nowrap;background:#f0f0ed;color:#171717;padding:17px 25px;border:0;border-radius:50px;font-size:15px;font-weight:600;cursor:pointer;box-shadow:0 3px 28px #0003;transition:background .2s,box-shadow .2s}.play-button[hidden]{display:none}.play-button:hover{background:white;box-shadow:0 3px 30px #0005}.play-button:disabled{cursor:wait;background:#ddd}.film-caption{display:flex;justify-content:space-between;gap:20px;color:var(--quiet);font-size:12px;line-height:1.6;padding:15px 0}.caption-dot{padding:0 9px;color:#777}.player-message{margin:4px 0 0;color:var(--body);font-size:14px}.overview{display:grid;grid-template-columns:1fr 1fr;column-gap:10%;row-gap:40px;padding:64px 0 65px;scroll-margin-top:28px}h2{font-size:16px;font-weight:550;letter-spacing:.025em;margin:0 0 21px}.overview p,.team-credit p{font-size:16px;color:var(--body);line-height:1.95;margin:0;text-wrap:pretty}.deliverables{grid-column:1/-1;padding-top:12px;display:flex;align-items:baseline;gap:55px}.deliverables h2{white-space:nowrap;margin:0}.deliverables ul{display:flex;flex-wrap:wrap;gap:12px 28px;padding:0;margin:0;list-style:none;font-size:13px;color:var(--quiet)}.deliverables li+li::before{content:"/";margin-right:28px;color:#606060}.section-heading{border-top:1px solid var(--line);padding:30px 0 24px;display:flex;align-items:center;justify-content:space-between;gap:18px}.section-heading h2{margin:0}.section-heading p{margin:0;color:var(--quiet);font-size:12px}.section-heading p span{padding:0 8px;color:#666}.visual-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.visual-grid figure{margin:0;aspect-ratio:16/9;background:#1c1c1c;overflow:hidden}.visual-grid img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}.project-notes{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:64px 0 76px;border-bottom:1px solid var(--line)}h2 small{font-weight:400;font-size:12px;color:var(--quiet);margin-left:14px}.recognition>a{display:grid;grid-template-columns:1fr auto;gap:4px 12px;font-size:14px;line-height:1.65;padding:15px 0;border-top:1px solid #303030}.recognition>a>span:not(.out-arrow){grid-column:1;color:var(--quiet);font-size:13px}.recognition>a .out-arrow{grid-column:2;grid-row:1/3;color:var(--quiet);align-self:center}.team-credit p{font-size:14px;line-height:2;color:var(--quiet)}.site-footer{padding:40px 0 48px;display:flex;align-items:center;justify-content:space-between;gap:28px}.footer-name{font-size:14px;font-weight:600;letter-spacing:.1em}.site-footer p{color:var(--quiet);font-size:12px;line-height:1.7;margin:7px 0 0}.contact-link{font-size:14px;color:var(--body)}.contact-link span{margin-left:13px}.footer-year{font-size:10px;color:var(--quiet);letter-spacing:.1em}
@media(min-width:1700px){.project-heading{padding-top:55px}.overview{padding-top:72px}}
@media(max-width:900px){.wrap{width:calc(100% - 56px)}.wordmark{gap:16px}.wordmark span{display:none}.site-header{min-height:84px}.project-heading{padding-top:36px}.overview,.project-notes{column-gap:7%}.overview p{font-size:15px}.deliverables{display:block}.deliverables h2{margin-bottom:18px}.deliverables ul{gap:10px 18px}.deliverables li+li::before{margin-right:18px}.site-footer{flex-wrap:wrap}.footer-year{margin-left:auto}.visual-grid{gap:12px}}
@media(max-width:600px){.wrap{width:calc(100% - 36px)}html{scroll-padding-top:20px}.site-header{min-height:74px;gap:12px}.wordmark{font-size:14px}.site-header nav{font-size:12px;gap:20px}.project-heading{padding:31px 0 25px}.eyebrow{font-size:10px;margin-bottom:15px;letter-spacing:.08em}.eyebrow span{padding-inline:8px}.heading-row{display:block}h1{font-size:clamp(28px,7.9vw,40px);line-height:1.43;letter-spacing:-.045em}h1 span{display:block;margin-left:-.48em}.role-meta{font-size:12px;line-height:1.7;text-align:left;margin-top:13px}.role-meta br{display:none}.role-meta br::after{content:" / "}.role-meta{white-space:pre-line}.play-button{padding:12px 17px;font-size:12px;gap:10px}.play-button svg{width:11px;height:13px}.film-caption{font-size:10px;padding-top:12px;gap:8px}.caption-dot{padding:0 5px}.overview{grid-template-columns:1fr;padding:37px 0 40px;row-gap:30px}.overview p{font-size:15px;line-height:1.9}h2{font-size:15px;margin-bottom:14px}.deliverables{grid-column:auto;padding-top:0}.deliverables ul{gap:9px 14px;font-size:12px}.deliverables li+li::before{margin-right:14px}.section-heading{padding:24px 0 18px}.section-heading p{font-size:10px}.visual-grid{grid-template-columns:1fr;gap:12px}.project-notes{grid-template-columns:1fr;padding:38px 0 40px;gap:34px}.recognition>a{font-size:13px;padding:13px 0}.recognition>a>span:not(.out-arrow){font-size:12px}.team-credit p{font-size:13px}.site-footer{display:grid;grid-template-columns:1fr;gap:20px;padding:30px 0 34px}.contact-link{font-size:13px}.footer-year{margin-left:0;font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.play-button{transition:none}}
.role-meta{display:flex;flex-direction:column;align-items:flex-end}.role-meta .role-separator{display:none}@media(max-width:600px){.role-meta{flex-direction:row;align-items:center;gap:9px}.role-meta .role-separator{display:inline;color:#686868}}
@media(max-width:600px){.deliverables ul{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}.deliverables li+li::before{content:none}}

.wordmark,.footer-name,.footer-year{font-family:"SF Pro Expanded Portfolio",sans-serif;font-weight:400;letter-spacing:.05em}
