@font-face{font-family:Manrope;src:url('assets/fonts/Manrope.ttf') format('truetype');font-weight:200 800;font-display:swap}
:root{--paper:#f7f7f2;--ink:#292a27;--muted:#777a72;--line:#292a272a;--gutter:6vw;--serif:Baskerville,'Times New Roman',serif;--sans:Manrope,'Apple SD Gothic Neo','Malgun Gothic',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:45px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.65 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid currentColor;outline-offset:5px}h1,h2,h3,p,dl,dd{margin:0}h1,h2,h3{font-weight:400}h3{font-size:15px;line-height:1.65;word-break:keep-all}.micro,.section-tag,.topline,.hero-foot,.name-note{font-size:10px;letter-spacing:.1em}.skip{position:fixed;top:-100px;z-index:100;background:white;padding:15px}.skip:focus{top:0}.hero{position:relative;isolation:isolate;overflow:hidden;min-height:800px;padding:36px var(--gutter) 30px}.topline{display:flex;justify-content:space-between;position:relative;z-index:5}.name{position:relative;z-index:3}.name h1{font-family:var(--serif);letter-spacing:-.065em;line-height:.9;font-weight:400}.name h1 span{display:block}.name p{font-size:14px;letter-spacing:.22em;margin-top:28px}.name-note{display:block;margin-bottom:22px}.film-wrap{position:relative;overflow:hidden;background:#90908a;isolation:isolate}.film{width:100%;height:100%;object-fit:cover;display:block}.mesh{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none}.film.pending{opacity:0}.film-edge{pointer-events:none;position:absolute;inset:0;border:1px solid #ffffff20;z-index:4}.pause{position:absolute;right:20px;bottom:16px;color:white;background:#1116;border:1px solid #fff6;border-radius:30px;font-size:10px;padding:6px 12px;z-index:6;backdrop-filter:blur(8px)}.hero-foot{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:4;margin-top:20px;letter-spacing:.04em}.hero-foot a{display:flex;gap:65px}.atmosphere,.ambient{position:absolute;z-index:-1;pointer-events:none;inset:0;overflow:hidden}.atmosphere:before,.ambient:before{content:'';position:absolute;inset:-15%;background:radial-gradient(ellipse at 30% 40%,#b6bab555,transparent 45%),radial-gradient(ellipse at 75% 70%,#cfcbc944,transparent 38%);filter:blur(35px)}.contour-line{display:none;position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:-1}.contour-line path{stroke:var(--ink);stroke-width:.5;opacity:.24}.profile{padding:100px var(--gutter) 110px;position:relative;isolation:isolate}.section-tag{display:flex;justify-content:space-between;padding-top:18px;border-top:1px solid var(--line);margin-bottom:58px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:6vw}.intro-title h2{font-size:clamp(25px,3.1vw,43px);letter-spacing:-.055em;line-height:1.6;margin-top:32px;font-weight:350}.intro-title h2 span{padding-left:2.8em}.credentials{padding-top:6px}.credentials>div{display:grid;grid-template-columns:120px 1fr;gap:10px;padding:13px 0}.credentials dt{font-size:11px;color:var(--muted)}.credentials dd{font-size:13px;word-break:keep-all}.dossier{padding:0 var(--gutter) 60px}.dossier>section{display:grid;grid-template-columns:1fr 1fr;gap:6vw;border-top:1px solid var(--line);padding:35px 0 85px}.section-head .micro{color:var(--muted)}.section-head h2{font-family:var(--serif);font-size:38px;letter-spacing:-.035em;margin-top:18px;line-height:1.1}.row{display:grid;grid-template-columns:100px 1fr;gap:16px;padding:20px 0;border-bottom:1px solid var(--line)}.row:first-child{padding-top:0}.row p{font-size:11px;color:var(--muted);margin-top:5px}.date{font-size:10px;padding-top:3px;font-variant-numeric:tabular-nums}.optional{display:none}.research h3{font-size:13px;line-height:1.9}.research .row{padding:22px 0}.research .row:first-child{padding-top:0}footer{margin:0 var(--gutter);padding:40px 0 95px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:flex-end;font-size:10px}.footer-name{font-family:var(--serif);font-size:32px;letter-spacing:-.03em;line-height:1.1}.footer-name span{font:10px var(--sans);letter-spacing:.2em;display:block;margin-top:12px}footer p{color:var(--muted)}.study-tools{position:fixed;bottom:14px;left:50%;transform:translateX(-50%);z-index:30;background:#fffffff0;border:1px solid #2222;box-shadow:0 4px 24px #0000000a;border-radius:40px;display:flex;align-items:center;gap:24px;padding:9px 19px;white-space:nowrap;color:#333;font-size:10px;backdrop-filter:blur(12px)}.study-tools>span{color:#888}.study-tools button{border:0;background:none;padding:0;font-size:10px}.reveal{transition:opacity .9s ease,transform 1.1s cubic-bezier(.2,.65,.2,1)}.motion .reveal{opacity:0;transform:translateY(22px)}.motion .reveal.seen{opacity:1;transform:none}.enter .name h1 span{animation:type-in 1.5s cubic-bezier(.2,.6,.2,1) both}.enter .name h1 span:nth-child(2){animation-delay:.17s}.enter .name-note,.enter .name p{animation:fade-in 1.5s .5s both}@keyframes type-in{from{opacity:0;transform:translateY(24px);filter:blur(9px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes fade-in{from{opacity:0}to{opacity:1}}
/* 01 — central composition, a pale membrane above a wide film. */
.veil .hero{padding-top:32px;min-height:910px}.veil .name{text-align:center;margin:64px auto -50px}.veil .name h1{font-size:clamp(80px,10vw,142px);line-height:.8}.veil .name h1 span{display:inline-block}.veil .name h1 span+span{margin-left:.17em;font-style:italic;font-weight:400}.veil .name-note{margin-bottom:25px}.veil .name p{position:relative;margin-top:20px;font-size:12px}.veil .film-wrap{height:490px;margin-top:90px}.veil .film{object-position:50% 40%}.veil .name:after{content:'';display:block;height:35px;width:1px;background:var(--line);margin:22px auto -70px}.veil .ambient:before{background:radial-gradient(ellipse at 12% 20%,#bdc6c43b,transparent 40%)}.veil .intro-title .micro{letter-spacing:.2em}.veil .education .row{padding:16px 0}.veil .education .row:first-child{padding-top:0}
/* 02 — asymmetric frame, typography is anchored in the left margin. */
.offset{--paper:#f4f5f1;--gutter:5vw}.offset .hero{height:100svh;min-height:740px;display:grid;grid-template-columns:38% 62%;grid-template-rows:35px 1fr 35px;gap:12px 0}.offset .topline{grid-column:1/3}.offset .name{align-self:center;padding-bottom:30px}.offset .name h1{font:300 clamp(68px,8.4vw,122px)/1.02 var(--sans);letter-spacing:-.07em}.offset .name h1 span:nth-child(2){padding-left:.35em;font-weight:400}.offset .name-note{margin-bottom:40px}.offset .name p{margin-left:4em}.offset .film-wrap{grid-column:2;grid-row:2;height:100%;margin-left:3vw}.offset .film{object-position:55%}.offset .hero-foot{grid-column:1/3;margin-top:0}.offset .atmosphere:before{background:radial-gradient(ellipse at 9% 77%,#a6b5ab72,transparent 42%)}.offset .intro{grid-template-columns:38% 62%;gap:0}.offset .credentials{border-left:1px solid var(--line);padding:0 0 0 3vw}.offset .intro-title h2{font-size:32px}.offset .intro-title h2 span{padding:0}.offset .section-head h2{font-family:var(--sans);font-size:25px;letter-spacing:-.05em}.offset .dossier{display:grid;grid-template-columns:1.5fr 1fr 1.4fr;gap:4vw}.offset .dossier>section{display:block;padding:26px 0 75px}.offset .section-head{min-height:115px}.offset .row{display:block;padding:21px 0}.offset .date{display:block;margin-bottom:9px}.offset .row h3{font-size:13px}.offset .research .row h3{font-size:12px}.offset footer{margin-top:10px}.offset .footer-name{font-family:var(--sans);font-weight:350}
/* 03 — a vertical axis, continuous from the film to the curriculum. */
.axis{--paper:#f4f6f6;--gutter:8vw;--muted:#6e777b}.axis .hero{height:100svh;min-height:750px;color:white}.axis .film-wrap{position:absolute;inset:0;z-index:-2;height:100%}.axis .film-wrap:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#141e284d,transparent 30%,#141e2899);z-index:3;pointer-events:none}.axis .name{position:absolute;top:39%;left:0;width:100%;text-align:center}.axis .name h1{font:300 clamp(54px,6.8vw,100px)/1 var(--sans);letter-spacing:-.055em}.axis .name h1 span{display:inline-block}.axis .name h1 span+span{margin-left:.23em}.axis .name p{font-size:12px}.axis .name-note{letter-spacing:.3em}.axis .hero:after{content:'';position:absolute;left:50%;top:67%;bottom:50px;width:1px;background:#fff5}.axis .hero-foot{position:absolute;bottom:25px;left:var(--gutter);right:var(--gutter)}.axis .pause{right:var(--gutter);bottom:67px}.axis .atmosphere{display:none}.axis .profile{padding-top:90px;padding-bottom:90px}.axis .ambient:before{background:radial-gradient(ellipse at 24% 38%,#a6bbc158,transparent 42%)}.axis .section-tag{border:0;margin-bottom:60px}.axis .intro{position:relative;gap:10vw}.axis .intro:before{content:'';position:absolute;left:50%;width:1px;top:-110px;bottom:-90px;background:var(--line)}.axis .intro-title{align-self:center;text-align:right}.axis .intro-title h2{font-size:31px}.axis .intro-title h2 span{padding:0}.axis .credentials>div{grid-template-columns:105px 1fr}.axis .dossier{position:relative}.axis .dossier:before{content:'';position:absolute;left:50%;width:1px;top:0;bottom:60px;background:var(--line)}.axis .dossier>section{gap:10vw;border:0;padding-bottom:70px}.axis .section-head{text-align:right;padding-top:6px}.axis .section-head h2{font-size:40px}.axis .row{grid-template-columns:80px 1fr}.axis .optional{display:block}.axis footer{margin-top:30px}
/* 04 — an editorial spread, ruled columns and deliberately quiet type. */
.folio{--paper:#f5f3ec;--gutter:5vw;--ink:#34332e;--muted:#7a786f}.folio .hero{padding-top:28px;min-height:800px}.folio .topline{padding-bottom:20px;border-bottom:1px solid var(--line)}.folio .name{display:flex;align-items:center;justify-content:space-between;margin:33px 0}.folio .name h1{font-size:clamp(65px,8vw,116px);order:-1;letter-spacing:-.06em}.folio .name h1 span{display:inline-block}.folio .name h1 span+span{margin-left:.18em;font-style:italic}.folio .name p{margin:0;align-self:flex-end;letter-spacing:.22em}.folio .name-note{margin:0 12% 0 0;font-size:10px}.folio .film-wrap{width:77%;height:460px}.folio .hero-foot{position:absolute;left:calc(77% + 1.5vw);right:5vw;top:260px;bottom:45px;display:flex;flex-direction:column;align-items:flex-start;font-size:10px;line-height:2.1}.folio .hero-foot>span{writing-mode:vertical-rl;letter-spacing:.15em}.folio .hero-foot a{gap:35px}.folio .atmosphere:before{background:radial-gradient(ellipse at 94% 85%,#b1b3a644,transparent 45%)}.folio .profile{padding-top:60px;padding-bottom:70px}.folio .section-tag{margin-bottom:40px}.folio .intro{grid-template-columns:34% 66%;gap:0}.folio .intro-title h2{font-size:30px}.folio .intro-title h2 span{padding:0}.folio .credentials{padding-left:4vw;border-left:1px solid var(--line)}.folio .credentials>div{padding:8px 0}.folio .dossier{display:grid;grid-template-columns:34% 66%;gap:0}.folio .dossier>section{display:block;padding-top:26px}.folio .experience{grid-column:2;grid-row:1;border-left:1px solid var(--line);padding-left:4vw!important}.folio .education{grid-column:1;grid-row:1;padding-right:3vw!important}.folio .section-head{margin-bottom:32px}.folio .section-head h2{font-size:37px}.folio .education .row{grid-template-columns:60px 1fr}.folio .research{grid-column:1/3;display:grid!important;grid-template-columns:34% 66%!important;gap:0!important}.folio .research .rows{padding-left:4vw}.folio .research .section-head{padding-right:4vw}.folio .optional{display:block}.folio .row{border-bottom:0;padding-bottom:23px}.folio .row h3{font-size:14px}.folio .research .row h3{font-size:13px}
/* 05 — organic video window and fine contour lines. */
.contour{--paper:#f8f8f5;--gutter:8vw}.contour .hero{height:920px;min-height:750px}.contour .name{position:absolute;left:13vw;top:28%;pointer-events:none}.contour .name h1{font-size:clamp(86px,11vw,157px);line-height:.86}.contour .name h1 span:nth-child(2){font-style:italic;margin-left:1.13em}.contour .name-note{margin-left:6px;letter-spacing:.2em}.contour .name p{margin-left:13em;font-size:12px}.contour .film-wrap{position:absolute;width:57vw;height:590px;right:7vw;top:17%;border-radius:48% 52% 40% 60% / 45% 41% 59% 55%;transform:rotate(-6deg)}.contour .film{transform:rotate(6deg) scale(1.13)}.contour .mesh{transform:rotate(6deg) scale(1.13)}.contour .film-wrap:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f8f8f5cc 0%,#f8f8f500 50%);z-index:3;pointer-events:none}.contour .pause{right:30%;bottom:40px;transform:rotate(6deg)}.contour .name h1{color:#252620;text-shadow:0 0 20px #f8f8f588}.contour .hero-foot{position:absolute;bottom:44px;left:var(--gutter);right:var(--gutter)}.contour .contour-line{display:block}.contour .atmosphere:before{background:radial-gradient(ellipse at 13% 56%,#c4cabc55,transparent 35%)}.contour .profile{padding-top:50px}.contour .intro{grid-template-columns:42% 58%;gap:0}.contour .intro-title h2{font-size:35px}.contour .credentials>div{grid-template-columns:120px 1fr}.contour .dossier{padding-left:19vw;padding-right:12vw}.contour .dossier>section{grid-template-columns:30% 70%;gap:0}.contour .section-head h2{font-size:32px}.contour .section-head{padding-right:25px}.contour .optional{display:block}.contour .ambient:before{background:radial-gradient(ellipse at 100% 100%,#c1caba40,transparent 45%)}
@media(min-width:1600px){body{--gutter:max(6vw,calc((100vw - 1450px)/2))}.veil .film-wrap{height:560px}.hero{min-height:950px}}
@media(max-width:800px){body{font-size:13px;--gutter:6vw!important}.hero{min-height:720px}.topline{font-size:8px;letter-spacing:.06em}.name-note{font-size:9px}.hero-foot{font-size:9px}.hero-foot a{gap:22px}.profile{padding:65px var(--gutter)}.section-tag{font-size:9px;margin-bottom:34px}.intro{grid-template-columns:1fr;gap:40px}.intro-title h2{font-size:30px;margin-top:20px}.credentials>div{grid-template-columns:100px 1fr;padding:10px 0}.credentials dd{font-size:12px}.credentials dt{font-size:10px}.dossier>section{grid-template-columns:1fr;gap:30px;padding:25px 0 55px}.section-head h2{font-size:32px;margin-top:12px}.row{grid-template-columns:80px 1fr;gap:13px;padding:19px 0}.row h3{font-size:13px}.date{font-size:9px}.research h3{font-size:12px}.row p{font-size:10px}.optional{display:none!important}footer{gap:24px;flex-wrap:wrap;padding-top:30px}.footer-name{font-size:28px}footer>a{width:100%;font-size:10px}.study-tools{font-size:9px;padding:8px 13px;gap:18px;bottom:10px}.study-tools button{font-size:9px}.veil .hero{min-height:0;padding-top:25px;padding-bottom:28px}.veil .name{margin:62px auto 0}.veil .name h1{font-size:64px;white-space:nowrap}.veil .name p{margin-top:20px}.veil .film-wrap{height:400px;margin-top:60px}.veil .film{object-position:center}.veil .name:after{height:25px;margin:20px auto -40px}.veil .intro-title h2 span{padding-left:2em}.offset .hero{height:auto;min-height:0;grid-template-columns:1fr 1fr;grid-template-rows:25px 210px 450px 35px;padding-top:25px;gap:12px}.offset .name{grid-column:1/3;grid-row:2;align-self:center;padding:25px 0 0}.offset .name h1{font-size:69px;line-height:1;display:flex;gap:20px}.offset .name h1 span:nth-child(2){padding:0}.offset .name-note{margin-bottom:15px}.offset .name p{position:absolute;right:0;top:42px;margin:0;font-size:11px}.offset .film-wrap{grid-column:1/3;grid-row:3;margin-left:18%;height:450px}.offset .hero-foot{grid-row:4}.offset .intro{grid-template-columns:1fr;gap:32px}.offset .intro-title h2{font-size:30px}.offset .credentials{padding:0;border-left:0}.offset .dossier{display:block}.offset .dossier>section{padding-bottom:55px}.offset .section-head{min-height:0;margin-bottom:30px}.offset .row{display:grid;grid-template-columns:80px 1fr}.offset .date{margin:0}.offset .research .row h3{font-size:12px}.axis .hero{height:88svh;min-height:680px}.axis .name{top:38%}.axis .name h1{font-size:43px}.axis .name-note{font-size:8px;letter-spacing:.15em}.axis .name p{font-size:11px}.axis .hero:after{top:58%;bottom:80px}.axis .hero-foot{bottom:23px}.axis .pause{bottom:64px}.axis .profile{padding-top:58px;padding-bottom:65px}.axis .section-tag{margin-bottom:40px}.axis .intro{grid-template-columns:1fr;gap:38px;padding-left:21px}.axis .intro:before{left:0;top:-30px;bottom:-65px}.axis .intro-title{text-align:left}.axis .intro-title h2{font-size:30px}.axis .credentials>div{grid-template-columns:90px 1fr}.axis .credentials dd{font-size:11px}.axis .dossier{padding-left:calc(var(--gutter) + 21px)}.axis .dossier:before{left:var(--gutter);bottom:20px}.axis .dossier>section{gap:25px;padding-bottom:50px}.axis .section-head{text-align:left}.axis .section-head h2{font-size:31px}.axis .row{grid-template-columns:72px 1fr}.folio .hero{min-height:0;padding-top:25px}.folio .topline{padding-bottom:20px}.folio .name{margin:25px 0 30px;flex-wrap:wrap;row-gap:20px}.folio .name h1{font-size:58px;width:100%}.folio .name-note{margin:0;font-size:8px}.folio .name p{font-size:11px}.folio .film-wrap{width:100%;height:390px}.folio .hero-foot{position:relative;inset:auto;flex-direction:row;font-size:9px;margin-top:20px}.folio .hero-foot>span{writing-mode:horizontal-tb;letter-spacing:0}.folio .hero-foot a{gap:25px}.folio .profile{padding-top:35px;padding-bottom:55px}.folio .intro{grid-template-columns:1fr;gap:30px}.folio .intro-title h2{font-size:28px}.folio .credentials{padding:0;border:0}.folio .credentials>div{padding:9px 0}.folio .dossier{grid-template-columns:1fr;display:block}.folio .experience{border-left:0;padding-left:0!important}.folio .education{padding-right:0!important}.folio .section-head{margin-bottom:25px}.folio .research{display:block!important}.folio .research .rows{padding:0}.folio .research .row h3{font-size:12px}.folio .row{padding-bottom:20px}.folio .row h3{font-size:13px}.folio .section-head h2{font-size:32px}.contour .hero{height:800px;min-height:750px;padding-top:25px}.contour .name{left:7vw;top:28%}.contour .name h1{font-size:90px}.contour .name h1 span:nth-child(2){margin-left:.75em}.contour .name p{margin-left:9em;font-size:11px}.contour .name-note{font-size:8px}.contour .film-wrap{width:86vw;right:-4vw;height:490px;top:24%;border-radius:50% 50% 38% 62% / 46% 45% 55% 54%}.contour .film-wrap:after{background:linear-gradient(115deg,#f8f8f5dd,#f8f8f500 67%)}.contour .pause{right:35%;bottom:35px}.contour .hero-foot{bottom:35px}.contour .intro{grid-template-columns:1fr;gap:35px}.contour .intro-title h2{font-size:30px}.contour .credentials>div{grid-template-columns:100px 1fr}.contour .dossier{padding:0 var(--gutter) 40px}.contour .dossier>section{grid-template-columns:1fr;gap:25px}.contour .section-head h2{font-size:32px}}
@media(max-width:370px){.veil .name h1{font-size:56px}.offset .name h1{font-size:60px;gap:15px}.folio .name h1{font-size:51px}.axis .name h1{font-size:37px}.credentials dd{font-size:11px}.study-tools{gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.name *{animation:none!important;transition:none!important;transform:none!important;filter:none!important;opacity:1!important}.mesh{display:none}.film.pending{opacity:1}}
@media print{.study-tools,.pause{display:none}.reveal{opacity:1!important;transform:none!important}.hero{break-after:page}.dossier>section{break-inside:avoid}}

.capture .name *{animation:none!important}

.film-wrap{background:transparent}
