@charset "UTF-8";
:root{--paper:#f8f9fa;--ink:#192330;--muted:#626b75;--line:#d6dbe0;--accent:#3b546f;font-family:Arial,"Helvetica Neue","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:2rem}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}::selection{background:#cfdce9}p{line-height:1.85}img{display:block;max-width:100%;height:auto}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.header{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding-block:35px;border-bottom:1px solid var(--line)}.wordmark{font-size:14px;letter-spacing:.12em;font-weight:600;display:flex;align-items:center;gap:22px}.wordmark span{font-size:12px;font-weight:400;letter-spacing:.18em;color:var(--muted)}nav{display:flex;gap:36px;font-size:13px;letter-spacing:.11em}nav a{padding-block:10px}.hero{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;padding-block:74px 62px}.eyebrow{font-size:12px;letter-spacing:.16em;line-height:1.5;font-weight:400;margin:0}.hero-heading>.eyebrow{color:var(--muted);margin-bottom:23px}h1{font-weight:400;letter-spacing:-.055em;font-size:clamp(3.4rem,6.8vw,6.4rem);line-height:1.06;margin:0}h1 span{display:block;font-size:clamp(1.2rem,2.2vw,1.65rem);letter-spacing:.03em;line-height:1.5;margin-top:17px;color:var(--muted)}.hero-description{min-width:215px;padding-bottom:4px}.hero-description p{margin:0 0 24px;font-size:14px;line-height:1.7;color:var(--muted)}.text-link{font-size:14px;border-bottom:1px solid var(--ink);padding-bottom:8px;display:inline-flex;gap:35px;align-items:center}.text-link span{font-size:21px}.reel-visual{position:relative;background:#18202a;overflow:hidden;aspect-ratio:2.388}.reel-visual>img{width:100%;height:100%;object-fit:cover;opacity:.72}.reel-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,12,18,.54),transparent 80%)}.reel-title{position:absolute;z-index:1;left:46px;bottom:43px;color:#fff}.reel-title p{font-weight:400;font-size:clamp(1.3rem,2.4vw,2.3rem);letter-spacing:.1em;margin:17px 0 22px;line-height:1.45}.reel-state{font-size:12px;letter-spacing:.12em;color:#e0e7ee;border-top:1px solid #ffffff50;padding-top:14px;display:inline-block}.reel-caption{display:flex;justify-content:space-between;gap:1rem;margin-top:17px;color:var(--muted);font-size:12px;letter-spacing:.03em;line-height:1.7}.caption-divider{padding-inline:12px}.section{padding-block:90px;border-bottom:1px solid var(--line)}.section-head{display:flex;justify-content:space-between;align-items:center;gap:1rem}h2{font-size:30px;letter-spacing:-.025em;font-weight:400;margin:0;line-height:1.4}h2 span{font-size:13px;letter-spacing:.06em;color:var(--muted);margin-left:20px}.section-head>.eyebrow{color:var(--muted)}.section-intro{color:var(--muted);font-size:16px;margin:25px 0 0}.about,.contact{display:grid;grid-template-columns:1fr 1.5fr;gap:50px}.about p{max-width:590px;margin-top:0;color:var(--muted);font-size:16px}.about .about-lead{font-size:25px;line-height:1.5;color:var(--ink);margin-bottom:22px}.about .education{font-size:14px;color:var(--ink);margin:40px 0 0;line-height:1.8}.education span{color:var(--muted)}.contact{align-items:start}.contact>p{margin:0;color:var(--muted);font-size:16px}.footer{display:flex;justify-content:space-between;gap:1rem;padding-block:30px;font-size:12px;color:var(--muted)}.footer a{font-size:14px}.skip{position:fixed;z-index:10;top:-100px;left:16px;background:var(--ink);color:white;padding:16px}.skip:focus{top:16px}
@media(min-width:1600px){.hero{padding-block:90px 70px}}@media(max-width:850px){.wrap{width:calc(100% - 56px)}.header{padding-block:25px}.hero{padding-block:55px 42px}.hero-description{min-width:150px}.hero-description p{font-size:13px}nav{gap:22px}.reel-title{left:28px;bottom:28px}.section{padding-block:65px}.about,.contact{grid-template-columns:1fr 1.6fr;gap:30px}}@media(max-width:600px){.wrap{width:calc(100% - 40px)}.header{align-items:flex-start;padding-block:24px;gap:20px}.wordmark{flex-direction:column;align-items:flex-start;gap:7px;font-size:12px}.wordmark span{font-size:12px}nav{gap:17px;font-size:12px;flex-wrap:wrap;justify-content:flex-end}.hero{flex-direction:column;align-items:flex-start;gap:28px;padding-block:47px 35px}.hero-heading>.eyebrow{font-size:12px;letter-spacing:.1em;margin-bottom:20px}h1{font-size:clamp(2.7rem,10.4vw,4.5rem)}h1 span{font-size:19px;margin-top:12px}.hero-description{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px}.hero-description p{font-size:12px;margin:0}.text-link{font-size:13px;gap:20px}.reel-visual{aspect-ratio:1.12}.reel-visual>img{object-position:60% center}.reel-title{left:23px;bottom:25px;right:20px}.reel-title p{font-size:23px;letter-spacing:.06em}.reel-caption{flex-direction:column;gap:3px;font-size:12px}.section{padding-block:55px}.section-head{flex-direction:column;align-items:flex-start;gap:18px}h2{font-size:28px}h2 span{font-size:13px}.about,.contact{grid-template-columns:1fr;gap:30px}.about .about-lead{font-size:23px}.footer{padding-block:25px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:38px}.work-image{position:relative;aspect-ratio:1.62;background:#192330;overflow:hidden}.work-image>img{width:100%;height:100%;object-fit:cover}.work-state{position:absolute;right:12px;bottom:12px;background:#131b24dd;color:#fff;padding:7px 11px;font-size:12px;letter-spacing:.05em}.work-meta{display:flex;justify-content:space-between;gap:1rem;color:var(--muted);font-size:12px;letter-spacing:.09em;margin-top:23px}.work-card h3{font-size:23px;font-weight:400;letter-spacing:-.02em;margin:12px 0 7px;line-height:1.35}.work-card p{color:var(--muted);font-size:14px;margin:0 0 15px;line-height:1.6}.visual-note{font-size:12px;color:var(--muted);line-height:1.65}.credits{margin-top:43px;font-size:13px;color:var(--muted);line-height:1.8}.credits summary{cursor:pointer;width:fit-content;padding-block:8px;font-size:14px}.credits summary span{font-size:12px;letter-spacing:.1em;margin-left:15px}.credits>div{max-width:850px;margin-top:16px}.credits p{font-size:14px;line-height:1.9}.credits ul{padding-left:20px;font-size:14px}.credits a,.reel-caption a,.media-error a{text-decoration:underline;text-underline-offset:3px}.about .about-english{font-size:14px;line-height:1.8;margin-top:22px;max-width:440px}.contact-label{font-size:14px;color:var(--muted);margin:0 0 17px}.email-link{font-size:clamp(1.25rem,2.5vw,2rem);line-height:1.6;letter-spacing:-.025em;border-bottom:1px solid var(--ink);padding-bottom:7px;display:inline-flex;gap:22px;align-items:baseline;overflow-wrap:anywhere}.email-link span{font-size:25px;flex-shrink:0}.footer-subtitle{letter-spacing:.1em;margin-left:14px;font-size:12px}.reel-title p{letter-spacing:-.035em;font-size:clamp(1.6rem,3.8vw,3.5rem);margin-block:16px 24px}.work-image video,.reel-visual video{width:100%;height:100%;display:block;object-fit:contain}.reel-visual.has-media:after{display:none}.media-external{display:grid;place-items:center;width:100%;height:100%;color:white;font-size:20px;background:#192330}.media-external:hover{background:#26394d;color:white}.media-error{position:absolute;inset:auto 0 0;padding:12px;background:#192330;color:white;font-size:14px;margin:0}
@media(min-width:601px){nav{font-size:14px}.hero-description p{font-size:14px}}
@media(max-width:850px){.work-grid{gap:20px}.work-card h3{font-size:20px}.work-meta{font-size:12px;letter-spacing:.035em}.work-card p{font-size:14px}.email-link{gap:12px}}
@media(max-width:650px){.work-grid{grid-template-columns:1fr;gap:38px}.work-image{aspect-ratio:1.82}.work-card h3{font-size:24px}.work-meta{margin-top:18px}.work-card p{margin-bottom:10px}.section-intro{margin-top:22px}.credits{margin-top:32px}.hero-description p{font-size:14px}.text-link{font-size:14px}.wordmark{font-size:14px}.header{flex-direction:column;gap:20px}.wordmark{flex-direction:row;align-items:center;gap:20px}nav{width:100%;justify-content:space-between;font-size:14px;gap:12px}.hero{padding-top:38px}.reel-title p{font-size:29px;line-height:1.15;max-width:240px}.footer-subtitle{display:none}.email-link{font-size:clamp(1.15rem,4.8vw,1.6rem)}.contact-label{font-size:14px}}
