:root{color-scheme:dark;--bg:#0b0d0a;--bg2:#171a14;--text:#f5f3fa;--sub:#c7cbc0;--dim:#8e9886;--accent:#d8fb35;--blue:#b9ca7a;--line:rgba(236,235,255,.19);--page:clamp(24px,5.5vw,100px);font-family:Inter,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,sans-serif;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:auto;background:var(--bg)}body{margin:0;color:var(--text);background:var(--bg);overflow-x:hidden}body.dialog-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:5px}img{max-width:100%;display:block}.skip-link{position:fixed;z-index:200;top:-100px;left:15px;padding:12px 18px;background:#fff;color:#111}.skip-link:focus{top:15px}
.scene-stack{position:fixed;inset:0;z-index:0;overflow:hidden;background:radial-gradient(circle at 62% 38%,#253020 0%,#111a11 38%,#11130d 74%,#0b0d0a 100%);pointer-events:none}.scene-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center;opacity:0;transition:opacity .55s ease;will-change:opacity}.scene-layer.is-visible{opacity:1}.hero-scene{background:transparent}.hero-scene canvas{position:absolute;right:-3vw;top:0;width:77vw;height:100%;display:block;mask-image:linear-gradient(90deg,transparent,black 16%)}.scene-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(8,9,27,.66) 0%,rgba(8,9,27,.2) 29%,transparent 61%),linear-gradient(0deg,rgba(6,9,28,.66),transparent 23%,transparent 76%,rgba(6,9,28,.38))}
.site-header{position:fixed;z-index:80;top:0;left:0;right:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:25px;padding:24px var(--page);border-bottom:1px solid rgba(255,255,255,.055);background:linear-gradient(rgba(6,7,23,.36),transparent);backdrop-filter:blur(7px)}.brand{font-size:clamp(12px,.9vw,15px);font-weight:850;letter-spacing:.13em;white-space:nowrap}.brand-symbol,.brand-dot{color:var(--accent)}.brand-symbol{font-size:1.2em;margin-right:9px}.main-nav{display:flex;gap:clamp(12px,2vw,34px);align-items:center}.main-nav a{position:relative;display:block;padding:6px 0;color:#d4d2e2;font-size:clamp(11px,.74vw,13px);font-weight:600;letter-spacing:.06em;white-space:nowrap}.main-nav a:hover,.main-nav a.is-current{color:#fff}.main-nav a.is-current:after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:1px;background:var(--accent)}.header-label{justify-self:end;text-align:right;font-family:Impact,"Arial Narrow",sans-serif;font-size:10px;line-height:1.3;letter-spacing:.17em;color:#ded9eb}.menu-toggle{display:none}
main{position:relative;z-index:1}.meet-section{height:100svh;min-height:620px}.hero-copy{position:fixed;z-index:20;inset:0;padding:12vh var(--page) 9vh;display:grid;grid-template-columns:minmax(280px,1fr) minmax(150px,.4fr);align-items:center;pointer-events:none;opacity:1;transition:opacity .35s ease,visibility .35s}.hero-copy.is-hidden{opacity:0;visibility:hidden}.hero-left,.hero-right,.hero-scroll{pointer-events:auto}.hero-left{max-width:500px}.hero-right{justify-self:end;text-align:right;align-self:center;max-width:200px;margin-top:-16vh}.micro-label{margin:0;font:700 clamp(10px,.72vw,12px)/1.4 Inter,Arial,sans-serif;letter-spacing:.18em;color:#e1dfeb}.hero-left .micro-label,.chapter-side .micro-label{display:flex;align-items:center;gap:11px}.hero-left .micro-label:before,.chapter-side .micro-label:before{content:"";width:8px;height:8px;border:2px solid var(--accent);transform:rotate(45deg)}.display-title{font-family:Impact,"Arial Narrow","PingFang SC","Microsoft YaHei",sans-serif;font-stretch:condensed;font-size:clamp(82px,9vw,160px);line-height:.99;letter-spacing:-.055em;font-weight:900;margin:26px 0 22px;text-wrap:balance}.display-title span:not(.title-period){color:var(--accent)}.display-title .title-period,.title-period{color:var(--accent)}.hero-description,.short-copy{font-size:clamp(15px,1.04vw,18px);line-height:1.9;color:#e4e0eb}.hero-right .micro-label{font-family:Impact,"Arial Narrow",sans-serif;font-size:19px;letter-spacing:.015em}.hero-right p{font-size:12px;line-height:1.9;color:#ddd7e8}.hero-scroll{position:absolute;bottom:12vh;left:50%;transform:translateX(-50%);display:grid;gap:8px;text-align:center;font:700 10px/1.3 Arial,sans-serif;letter-spacing:.2em;color:#ece8ef}.hero-scroll span:last-child{font-size:17px}.pill-action{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;min-height:43px;margin-top:16px;padding:5px 5px 5px 18px;background:rgba(10,12,31,.84);border:1px solid rgba(255,255,255,.2);border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.06em;color:#fff;cursor:pointer;transition:border-color .2s,transform .2s}.pill-action:hover{border-color:var(--accent);transform:translateY(-2px)}.action-arrow{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fff;color:#101128;font-size:16px}
.chapter{position:relative}.scrub-track{height:260svh;position:relative;pointer-events:none}.sticky-scene{position:sticky;top:0;height:100svh;min-height:620px;display:flex;align-items:center;padding:14vh var(--page) 11vh}.resume-intro{opacity:0;transition:opacity .35s ease}.resume-intro.is-visible{opacity:1}.chapter-side{max-width:35vw;z-index:3}.chapter-side .display-title{font-size:clamp(68px,7.8vw,132px);margin-top:20px;margin-bottom:18px}.chapter-side .short-copy{max-width:27em}.scene-note{position:absolute;left:42%;top:53%;width:27%;opacity:.6;transition:opacity .3s}.scene-note span{display:block;font:900 clamp(46px,6vw,96px)/1 Impact,Arial,sans-serif;color:rgba(255,255,255,.24)}.scene-note p{max-width:17em;font-size:13px;color:#d5d2e5}.scrub-cue{position:absolute;left:var(--page);bottom:8vh;display:flex;gap:16px;align-items:center;font:700 10px Arial,sans-serif;letter-spacing:.16em}.scrub-cue span{font-size:17px}.content-shell{padding-left:var(--page);padding-right:var(--page)}.resume-content{position:relative;padding-top:140px;padding-bottom:170px;background:linear-gradient(#121510 0%,rgba(11,14,37,.92) 45%,#0c0e0b 100%)}.section-heading{display:grid;grid-template-columns:180px minmax(300px,750px);gap:18px 45px;align-items:start;margin-bottom:85px}.section-heading .micro-label{padding-top:20px}.section-heading h2{margin:0;font-size:clamp(40px,5.2vw,78px);line-height:1.14;letter-spacing:-.04em}.section-heading h2 em,.contact-title h2 em{font-style:normal;color:var(--accent)}.section-heading>p:last-child{grid-column:2;color:var(--sub);font-size:15px;line-height:1.8;margin:0}.section-heading.centered{display:block;text-align:center}.section-heading.centered .micro-label{padding-top:0}.section-heading.centered h2{font-family:Impact,"Arial Narrow","PingFang SC",sans-serif;font-size:clamp(50px,6vw,100px);margin:16px 0}.section-heading.centered>p:last-child{max-width:42em;margin:0 auto}.career-timeline{list-style:none;max-width:1000px;margin:0 auto;padding:0}.career-timeline li{display:grid;grid-template-columns:220px 1fr;gap:30px;border-top:1px solid var(--line);padding:35px 0 39px;position:relative}.career-timeline li:last-child{border-bottom:1px solid var(--line)}.career-timeline li:before{content:"";position:absolute;top:-3px;left:0;width:5px;height:5px;border-radius:50%;background:var(--accent)}.career-year{font:900 clamp(28px,2.5vw,40px)/1 Impact,Arial,sans-serif;letter-spacing:.025em;color:#c3cf98}.career-timeline h3{font-size:clamp(21px,1.8vw,29px);margin:0 0 6px}.career-role{color:var(--accent)!important;font-size:13px!important;margin:0 0 14px!important}.career-timeline p{font-size:14px;line-height:1.75;color:var(--sub);margin:0}.text-link{display:inline-flex;align-items:center;gap:10px;width:max-content;border-bottom:1px solid var(--accent);padding-bottom:7px;font-size:12px;font-weight:700;letter-spacing:.04em;transition:color .2s}.text-link:hover{color:var(--accent)}.resume-content>.text-link{margin:45px 0 0 calc(50% - 250px)}
.selected-intro .chapter-side{max-width:38vw}.featured-content{padding-top:145px;padding-bottom:190px;background:linear-gradient(#0d100c,rgba(9,11,28,.97))}.featured-list{display:grid;gap:90px;max-width:1500px;margin:auto}.featured-card{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.75fr);align-items:center;gap:clamp(35px,6vw,115px);border-top:1px solid var(--line);padding-top:58px}.featured-card:nth-child(even) .feature-media{order:2}.featured-card:nth-child(even) .feature-copy{order:1}.feature-media{display:block;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:12px;box-shadow:0 30px 80px rgba(0,0,0,.32);aspect-ratio:1.45}.feature-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.feature-media:hover img{transform:scale(1.035)}.feature-copy{max-width:520px}.feature-number{font:700 11px Arial,sans-serif;letter-spacing:.16em;color:var(--accent)}.feature-copy h3{font-size:clamp(39px,4.1vw,66px);line-height:1.05;letter-spacing:-.05em;margin:17px 0 22px}.feature-copy h3 small{font-size:.37em;display:block;margin-top:9px;letter-spacing:0;color:#f3eefa}.feature-copy>p{font-size:15px;line-height:1.82;color:var(--sub);max-width:27em}.feature-meta{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 26px}.feature-meta span{padding:7px 10px;border:1px solid rgba(255,255,255,.21);border-radius:999px;color:#ddd8e9;font-size:11px}
.all-section{background:#0c0e0b;padding:150px 0 170px}.all-section:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--line)}.reel-feature{display:flex;justify-content:space-between;align-items:center;gap:35px;padding:35px 40px;margin:0 0 75px;border:1px solid var(--line);border-radius:12px;background:radial-gradient(circle at 85% 30%,rgba(216,251,53,.16),transparent 40%),#1b2018}.reel-feature h3{font-size:clamp(26px,3vw,46px);margin:10px 0}.reel-feature p:not(.micro-label){color:var(--sub);font-size:14px}.reel-feature .pill-action{margin:0;white-space:nowrap}.works-toolbar{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:32px;border-bottom:1px solid var(--line)}.filter-list{display:flex;flex-wrap:wrap;gap:7px 28px}.filter{border:0;background:none;color:#979ab2;padding:0 0 16px;cursor:pointer;font-size:13px;font-weight:650;white-space:nowrap;border-bottom:2px solid transparent}.filter:hover,.filter.is-active{color:#fff}.filter.is-active{border-color:var(--accent)}.filter span{margin-left:6px;color:var(--accent)}.works-caption{white-space:nowrap;padding-bottom:16px;color:var(--dim);font-size:11px}.works-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 22px}.work-card{min-width:0}.work-trigger{display:block;width:100%;border:0;padding:0;background:none;text-align:left;cursor:pointer;color:inherit}.work-cover{position:relative;aspect-ratio:1.5;overflow:hidden;background:#1b2119;border:1px solid rgba(255,255,255,.12);border-radius:9px}.work-cover img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.work-trigger:hover .work-cover img{transform:scale(1.04)}.work-cover:after{content:"↗";position:absolute;right:13px;bottom:13px;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:rgba(9,11,28,.82);font-size:18px}.work-card .work-category{display:block;margin:16px 0 6px;color:var(--accent);font:700 10px Arial,sans-serif;letter-spacing:.15em}.work-card h3{font-size:19px;line-height:1.35;margin:0;letter-spacing:-.02em}.work-card .work-sub{margin:6px 0 0;font-size:12px;line-height:1.5;color:var(--dim)}.work-card[hidden]{display:none}
.possibility-section{min-height:100svh}.fall-intro{justify-content:center;align-items:start}.fall-copy{position:absolute;top:17vh;left:var(--page);max-width:700px;opacity:0;transform:translateY(25px);transition:opacity .5s,transform .5s}.fall-copy.is-visible{opacity:1;transform:translateY(0)}.fall-copy .display-title{font-size:clamp(65px,7.4vw,120px);margin:12px 0 12px}.fall-copy>p:last-child{font-size:clamp(15px,1.1vw,18px);line-height:1.8;color:#ddd9eb}.contact-panel{padding-top:135px;padding-bottom:145px;background:linear-gradient(rgba(9,12,31,.48),#0b0d0a 45%);display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,.52fr);gap:70px;align-items:end}.contact-title h2{font-size:clamp(40px,5.3vw,84px);line-height:1.15;margin:17px 0 22px;letter-spacing:-.04em}.contact-title>p:not(.micro-label){color:var(--sub);line-height:1.8;font-size:15px;max-width:31em}.contact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:26px;margin-top:26px}.contact-actions .pill-action{margin:0}.email-line{font-size:13px!important;color:var(--accent)!important;margin-top:25px}.about-card{border:1px solid var(--line);background:rgba(17,19,45,.82);border-radius:10px;padding:17px;display:grid;grid-template-columns:100px 1fr;gap:18px}.about-card img{width:100px;height:126px;object-fit:cover;object-position:center 20%;border-radius:5px}.about-card h3{font-size:22px;margin:10px 0 5px}.about-card p:last-child{color:var(--sub);font-size:12px;line-height:1.65;margin:0}.site-footer{position:relative;z-index:2;display:flex;justify-content:space-between;gap:20px;padding:28px var(--page);border-top:1px solid var(--line);background:#090b08;color:var(--dim);font-size:11px;letter-spacing:.08em}.site-footer a:hover{color:var(--accent)}
.chapter-rail{position:fixed;z-index:75;right:var(--page);top:50%;transform:translateY(-50%);display:grid;gap:13px;pointer-events:none}.chapter-rail span{width:4px;height:4px;background:#aeb0c8;border-radius:50%}.chapter-rail span.is-current{width:8px;height:8px;margin-left:-2px;background:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.17)}.bottom-bar{position:fixed;z-index:75;left:var(--page);right:var(--page);bottom:20px;display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;font:700 10px Arial,sans-serif;letter-spacing:.14em;pointer-events:none;text-shadow:0 1px 5px #000}.progress-line{height:1px;background:rgba(255,255,255,.33)}.progress-line span{display:block;width:0;height:2px;transform:translateY(-.5px);background:var(--accent)}
.media-dialog{max-width:min(980px,92vw);width:100%;max-height:90vh;border:1px solid var(--line);border-radius:12px;padding:45px 25px 30px;color:#fff;background:#171b14;box-shadow:0 30px 100px #0009}.media-dialog::backdrop{background:rgba(0,0,0,.85);backdrop-filter:blur(8px)}.dialog-close{position:absolute;right:12px;top:8px;border:0;background:none;color:white;font-size:32px;cursor:pointer}.media-dialog h3{font-size:clamp(24px,3vw,36px);margin:13px 0}.media-dialog p{color:var(--sub);font-size:13px;line-height:1.6}.media-dialog img,.media-dialog video{width:100%;max-height:64vh;object-fit:contain;border-radius:5px;background:#060718}.dialog-gallery{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:12px}.dialog-gallery button{border:1px solid var(--line);background:#20271b;color:#fff;border-radius:999px;padding:8px 14px;cursor:pointer}
@media(max-width:1050px){.site-header{grid-template-columns:1fr auto;gap:12px}.header-label{display:none}.main-nav{grid-column:1/-1;justify-content:center;gap:clamp(12px,3vw,35px)}.site-header{padding-top:18px;padding-bottom:13px}.hero-right{display:none}.hero-copy{grid-template-columns:1fr}.hero-scene canvas{width:83vw;right:-10vw}.chapter-side{max-width:44vw}.works-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-panel{gap:35px}}
@media(max-width:700px){:root{--page:23px}.site-header{display:flex;justify-content:space-between;align-items:center;padding:18px var(--page);background:rgba(7,9,26,.72);backdrop-filter:blur(14px)}.brand{font-size:12px}.menu-toggle{display:flex;width:36px;height:34px;flex-direction:column;justify-content:center;gap:6px;align-items:center;border:1px solid var(--line);border-radius:7px;background:transparent;color:#fff}.menu-toggle span{display:block;width:18px;height:1px;background:#fff}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:18px var(--page) 25px;background:#161a13;border-bottom:1px solid var(--line);box-shadow:0 25px 40px #0007}.main-nav.is-open{display:grid;gap:8px}.main-nav a{padding:10px 3px;font-size:15px}.main-nav a.is-current:after{bottom:3px}.meet-section{min-height:640px}.hero-copy{padding:66px var(--page) 13vh;align-items:end}.hero-left{max-width:100%;margin-bottom:5vh}.hero-left .micro-label{font-size:9px}.display-title{font-size:clamp(63px,15vw,98px)}.hero-description{font-size:14px;line-height:1.75}.hero-scroll{left:auto;right:var(--page);bottom:8vh;transform:none}.hero-scene canvas{top:6vh;right:-9vw;width:105vw;height:52vh}.scene-shade{background:linear-gradient(0deg,rgba(6,8,26,.94) 0%,rgba(6,8,26,.6) 31%,transparent 58%,rgba(6,8,26,.36) 100%)}.scene-layer:not(.hero-scene){object-position:80% center}.scrub-track{height:215svh}.sticky-scene{min-height:640px;padding:13vh var(--page) 11vh;align-items:end}.chapter-side,.selected-intro .chapter-side{max-width:95%;margin-bottom:8vh}.chapter-side .display-title{font-size:clamp(60px,14vw,88px)}.chapter-side .short-copy{max-width:24em;font-size:14px}.scene-note{top:25%;left:var(--page);width:80%}.scene-note span{font-size:48px}.scene-note p{display:none}.scrub-cue{bottom:5vh}.section-heading{display:block;margin-bottom:48px}.section-heading .micro-label{margin-bottom:17px}.section-heading h2{font-size:clamp(36px,9vw,55px)}.section-heading>p:last-child{margin-top:14px}.resume-content{padding-top:85px;padding-bottom:100px}.career-timeline li{grid-template-columns:1fr;gap:15px;padding:28px 0}.career-year{font-size:31px}.resume-content>.text-link{margin:33px 0}.featured-content{padding-top:90px;padding-bottom:100px}.featured-list{gap:55px}.featured-card{grid-template-columns:1fr;gap:26px;padding-top:35px}.featured-card:nth-child(even) .feature-media,.featured-card:nth-child(even) .feature-copy{order:unset}.feature-media{aspect-ratio:1.25}.feature-copy h3{font-size:43px}.all-section{padding:90px 0 110px}.reel-feature{display:grid;padding:24px;margin-bottom:50px}.reel-feature .pill-action{width:max-content}.works-toolbar{display:block}.filter-list{gap:0 18px}.filter{font-size:12px;padding-bottom:11px}.works-caption{display:block;padding:12px 0}.works-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px}.work-cover{aspect-ratio:1.2}.work-card h3{font-size:14px}.work-card .work-sub{font-size:11px}.fall-copy{top:15vh;max-width:calc(100% - 2*var(--page))}.fall-copy .display-title{font-size:clamp(59px,14vw,88px)}.fall-copy>p:last-child{font-size:14px;max-width:24em}.contact-panel{grid-template-columns:1fr;gap:40px;padding-top:85px;padding-bottom:105px}.contact-title h2{font-size:clamp(40px,9vw,58px)}.about-card{max-width:480px}.site-footer{display:grid;grid-template-columns:1fr 1fr}.site-footer span:last-child{grid-column:1/-1}.chapter-rail{display:none}.bottom-bar{left:var(--page);right:var(--page);bottom:max(12px,env(safe-area-inset-bottom));gap:10px;font-size:8px}.media-dialog{max-width:96vw;padding:50px 10px 15px}.media-dialog img,.media-dialog video{max-height:60vh}}
@media(max-width:390px){.works-grid{grid-template-columns:1fr}.work-cover{aspect-ratio:1.55}.hero-scroll{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.scene-layer,.hero-copy,.fall-copy,.feature-media img,.pill-action{transition-duration:.01ms!important}.scrub-cue{display:none}}
