@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+SC:wght@300;400;500;600;700&family=Noto+Serif+SC:wght@400;500&display=swap";.blob-cursor{pointer-events:none;position:absolute;inset:0;overflow:hidden}.blob-cursor-canvas{width:100%;height:100%;display:block}.spotlight-card{isolation:isolate;background-color:var(--spotlight-card-surface);box-shadow:var(--spotlight-card-shadow);border-radius:1.5rem;padding:2rem;position:relative;overflow:hidden}.spotlight-card__light,.spotlight-card__grain,.spotlight-card__border,.spotlight-card__edge{border-radius:inherit;pointer-events:none;position:absolute;inset:0}.spotlight-card__light,.spotlight-card__grain{z-index:-1;opacity:0}.spotlight-card__grain{mix-blend-mode:overlay;background-size:160px 160px}.spotlight-card__border,.spotlight-card__edge{z-index:1;-webkit-mask-composite:xor;padding:1px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.spotlight-card__border{background:var(--spotlight-card-border)}.spotlight-card__edge{opacity:0}.text-cursor{width:100%;height:100%;position:relative}.text-cursor__layer{pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1;position:absolute;inset:0;overflow:hidden}.text-cursor__item{white-space:pre;will-change:transform, opacity;position:absolute;top:0;left:0}:root{color:#181818;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-optical-sizing:auto;--paper:#fff;--ink:#181818;--muted:#777873;--line:#d7d6d1;--orange:#ff5a00;--mono:"DM Mono",monospace;background:#fff;font-family:DM Sans,Noto Sans SC,sans-serif;font-weight:400}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}.topbar{border-bottom:1px solid var(--line);z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;justify-content:space-between;align-items:center;height:66px;padding:0 5.6%;display:flex;position:sticky;top:0}.wordmark{letter-spacing:-1.4px;font-size:20px;font-weight:700}.wordmark span{color:var(--orange);font:10px var(--mono);vertical-align:top;margin-left:2px}.top-center,.nav a,.hero-meta,.hero-foot,.eyebrow,.portrait-index,.section-kicker,.profile-title,.profile-row>span:first-child,.year,.skill-list,.tree-head,.tree-num,.tree-group,.project-number,.project-category,.project-en,.asset-group-head,.media-caption,.empty-project>span,.footer-bottom,.contact-details{font-family:var(--mono);letter-spacing:.045em;font-size:9px}.top-center{color:#777;align-items:center;gap:10px;display:flex}.top-center i,.footer-bottom i{background:var(--orange);border-radius:50%;width:4px;height:4px;display:inline-block}.nav{gap:32px;display:flex}.nav a{letter-spacing:.03em;font-family:Noto Sans SC,sans-serif;font-size:12px}.nav a:hover,.contact-details a:hover{color:var(--orange)}.menu-toggle{background:0 0;border:0;padding:4px;display:none}.hero{flex-direction:column;min-height:calc(100vh - 66px);padding:0 5.6%;display:flex}.hero-meta,.hero-foot{color:#777;justify-content:space-between;align-items:center;height:54px;display:flex}.hero-main{flex:1;grid-template-columns:1.3fr .7fr;align-items:center;min-height:590px;padding:28px 7% 38px 6%;display:grid;position:relative}.hero-copy{z-index:1;position:relative}.eyebrow{color:#777;text-transform:uppercase;margin:0 0 25px}.orange-dot{background:var(--orange);border-radius:50%;width:6px;height:6px;margin:0 9px 1px 0;display:inline-block}.hero h1{letter-spacing:-.095em;margin:0 0 46px;font-size:clamp(72px,9.4vw,146px);font-weight:500;line-height:.98}.serif{letter-spacing:-.12em;font-family:Noto Serif SC,serif;font-weight:400}.period{color:var(--orange)}.hero-bottom{border-top:1px solid var(--line);justify-content:space-between;align-items:flex-end;max-width:550px;padding-top:17px;display:flex}.hero-bottom p{margin:0;font-size:14px;line-height:1.8}.hero-bottom p span{color:var(--orange);margin:0 7px}.hero-bottom small{color:#777;font-size:11px}.scroll-link{font:9px var(--mono);text-transform:uppercase;align-items:center;gap:9px;display:flex}.hero-portrait{justify-self:center;width:min(100%,330px);margin-top:8px;position:relative}.portrait-frame{background:#fff;padding:14px 14px 34px;transform:rotate(2.5deg)}.portrait-frame img{filter:grayscale();mix-blend-mode:multiply;width:100%;height:auto;display:block}.portrait-index{text-align:right;color:#777;margin-top:25px;display:block}.portrait-stamp{background:var(--orange);color:#fff;text-align:center;width:75px;height:75px;font:18px var(--mono);border-radius:50%;place-content:center;display:grid;position:absolute;bottom:55px;left:-44px;transform:rotate(-12deg)}.portrait-stamp small{letter-spacing:.14em;font-size:6px;line-height:1.5}.hero-foot{border-top:1px solid var(--line)}.section-wrap{padding-left:9%;padding-right:9%}.about{padding-top:93px;padding-bottom:120px}.section-kicker{border-bottom:1px solid var(--line);color:#777;justify-content:space-between;padding-bottom:16px;display:flex}.about-grid{grid-template-columns:.9fr 1.1fr;gap:12%;padding-top:68px;display:grid}.about-grid h2,.work-intro h2{letter-spacing:-.055em;margin:0 0 26px;font-size:46px;font-weight:500;line-height:1.35}.about-text{color:#3c3c3a;max-width:440px;margin:0 0 12px;font-size:14px;line-height:2.05}.about-text.muted{color:#777}.keyword-row{flex-wrap:wrap;gap:7px;margin-top:30px;display:flex}.keyword-row span,.skill-list span{font:8px var(--mono);border:1px solid var(--line);color:#555;padding:8px 9px}.profile-card{border-top:1px solid var(--ink);align-self:center;padding-top:15px}.profile-title{color:#777;justify-content:space-between;margin-bottom:21px;display:flex}.profile-row{border-bottom:1px solid var(--line);grid-template-columns:80px 1fr auto;align-items:start;gap:12px;padding:17px 0;display:grid}.profile-row>span:first-child{color:#777;padding-top:2px}.profile-row b{font-size:13px;font-weight:500}.profile-row small{color:#777;margin-top:5px;font-size:10px;display:block}.year{color:#777;font-size:8px}.skill-list{flex-wrap:wrap;gap:6px;margin:18px 0;display:flex}.skill-list span{padding:7px 8px}.resume-link{align-items:center;gap:8px;margin-top:25px;font-size:11px;display:flex}.resume-link:hover{color:var(--orange)}.work-section{background:#fff;padding:88px 0 110px}.work-intro{padding-bottom:60px}.work-intro-row{justify-content:space-between;align-items:flex-end;padding-top:50px;display:flex}.work-intro h2{margin:0;font-size:55px}.work-intro h2 span{color:#8a8a85}.work-intro-row>p{color:#777;margin:0 2% 8px 0;font-size:12px;line-height:2}.work-layout{grid-template-columns:220px 1fr;align-items:start;gap:7.5%;padding:0 9%;display:grid}.tree-nav{border-top:1px solid var(--ink);padding-top:12px;position:sticky;top:91px}.tree-head{color:#777;justify-content:space-between;margin-bottom:20px;display:flex}.tree-project{border-top:1px solid #d4d3ce;padding:9px 0 12px}.tree-project-title{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:26px 1fr 16px;align-items:center;width:100%;padding:3px 0 8px;font-size:11px;display:grid}.tree-project-title svg{opacity:0;transition:opacity .2s,color .2s}.tree-project:hover .tree-project-title svg,.tree-project.selected .tree-project-title svg{opacity:1;color:var(--orange)}.tree-num{color:var(--orange)}.tree-group{color:#858580;justify-content:space-between;padding:5px 0 4px 26px;font-size:8px;display:flex}.tree-count{color:#aaa}.project{border-bottom:1px solid #cbc9c2;margin-bottom:62px;padding:0 0 76px;scroll-margin-top:90px}.project:last-child{border-bottom:0;margin-bottom:0}.project-heading{justify-content:space-between;align-items:center;display:flex}.project-number{color:var(--orange)}.project-number i{background:#aaa;width:18px;height:1px;margin:0 7px 3px;display:inline-block}.project-category,.project-en{color:#777}.project-title-row{justify-content:space-between;align-items:baseline;gap:20px;margin-top:18px;display:flex}.project h3{letter-spacing:-.045em;margin:0;font-size:25px;font-weight:500}.project-en{text-align:right;font-size:8px}.project-intro{color:#666;max-width:610px;margin:10px 0 31px;font-size:11px;line-height:1.9}.asset-group{margin-top:28px}.asset-group-head{color:#777;border-bottom:1px solid #d1d0ca;justify-content:space-between;margin-bottom:14px;padding-bottom:10px;display:flex}.media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.media-grid.single{grid-template-columns:1fr}.media-grid.dense{grid-template-columns:repeat(3,minmax(0,1fr))}.media{min-width:0;display:block;position:relative}.image-wrap{background:#fff;overflow:hidden}.image-wrap img{object-fit:cover;width:100%;height:auto;min-height:100%;transition:transform .5s cubic-bezier(.2,.7,.2,1);display:block}.image-wrap:hover img{transform:scale(1.025)}.media-grid:not(.dense) .image-wrap img{object-fit:contain;background:#fff;max-height:630px}.media-grid.dense .image-wrap img{aspect-ratio:4/3;object-fit:cover}.image-hover{color:#fff;background:var(--orange);opacity:0;border-radius:50%;place-items:center;width:30px;height:30px;transition:opacity .2s;display:grid;position:absolute;inset:10px 10px auto auto}.image-wrap:hover .image-hover{opacity:1}.media-caption{color:#777;background:0 0;padding:9px 0;display:block;position:relative}.video-wrap video{background:#151515;width:100%;max-height:600px;display:block}.pdf-card{background:#fff;grid-template-columns:1fr auto;align-items:center;margin-bottom:12px;padding:18px 22px 0;display:grid}.pdf-card>div{align-items:center;gap:14px;display:flex}.pdf-mark{font:11px var(--mono);color:var(--orange);border:1px solid #c2c0b9;padding:8px}.pdf-card p{font-size:12px;line-height:1.6}.pdf-card small{color:#777;font-size:9px}.pdf-card>a{align-items:center;gap:6px;font-size:10px;display:flex}.pdf-card iframe{background:#fff;border:0;grid-column:1/-1;width:100%;height:650px}.empty-project{color:#777;border:1px dashed #c9c7c0;justify-content:space-between;align-items:center;min-height:170px;padding:30px;display:flex}.empty-project p{color:#333;font-size:14px}.empty-project small{color:#777;font-size:10px}footer{background:#fff;padding:88px 0 0}.contact-main{padding:74px 8% 78px}.contact-main h2{letter-spacing:-.07em;margin:0 0 28px;font-size:clamp(52px,7vw,96px);font-weight:500;line-height:1.15}.contact-main h2 span{font-family:Noto Serif SC,serif;font-weight:400}.contact-main h2 i{color:var(--orange);font-style:normal}.contact-email{font:12px var(--mono);border-bottom:1px solid #aaa;align-items:center;gap:12px;padding-bottom:8px;display:inline-flex}.contact-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:#777;flex-wrap:wrap;gap:25px;padding:17px 8%;display:flex}.footer-bottom{color:#777;justify-content:space-between;align-items:center;padding:20px 0;display:flex}.footer-bottom a{color:var(--ink);align-items:center;gap:6px;display:flex}.footer-bottom i{margin:0 5px 1px}@media (width>=1600px){.hero,.section-wrap{padding-left:max(9%,50% - 685px);padding-right:max(9%,50% - 685px)}.topbar,.hero{padding-left:max(5.6%,50% - 760px);padding-right:max(5.6%,50% - 760px)}.hero-main{min-height:min(76vh,900px)}.work-layout{padding-left:max(9%,50% - 685px);padding-right:max(9%,50% - 685px)}.hero h1{font-size:clamp(130px,9vw,170px)}}@media (width<=900px){.section-wrap{padding-left:6%;padding-right:6%}.hero-main{grid-template-columns:1.2fr .8fr;padding-left:2%;padding-right:2%}.hero h1{font-size:clamp(65px,10vw,100px)}.hero-portrait{width:min(100%,270px)}.about-grid{gap:7%}.work-layout{grid-template-columns:200px 1fr;gap:5%;padding:0 6%}.work-intro h2{font-size:46px}.media-grid.dense{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){html{scroll-padding-top:65px}.topbar{height:58px;padding:0 5%}.top-center{display:none}.menu-toggle{display:block}.menu-toggle svg{width:20px}.nav{background:var(--paper);border-bottom:1px solid var(--line);gap:25px;padding:20px 5%;display:none;position:absolute;top:57px;left:0;right:0}.nav.open{display:flex}.hero{min-height:auto;padding:0 5%}.hero-meta{height:42px;font-size:7px}.hero-meta span:nth-child(2){display:none}.hero-main{grid-template-columns:1fr .43fr;align-items:center;min-height:calc(100svh - 115px);padding:20px 0 35px}.hero-copy{grid-area:1/1/auto/3}.hero h1{margin:0 0 36px;font-size:clamp(64px,15.3vw,100px)}.hero-portrait{grid-area:1/2;align-self:start;width:100%;margin-top:5px;transform:translateY(28px)}.portrait-frame{padding:7px 7px 20px}.portrait-index{margin-top:14px;font-size:6px}.portrait-stamp{width:54px;height:54px;font-size:12px;bottom:42px;left:-24px}.portrait-stamp small{font-size:5px}.hero-copy .eyebrow{margin-bottom:22px;font-size:7px}.hero-bottom{max-width:95%;margin-top:0}.hero-bottom p{font-size:12px}.hero-bottom small{font-size:9px}.scroll-link{font-size:7px}.hero-foot{height:39px;font-size:7px}.hero-foot span:nth-child(2){display:none}.about{padding-top:60px;padding-bottom:75px}.about-grid{grid-template-columns:1fr;gap:38px;padding-top:38px}.about-grid h2{font-size:36px}.about-text{font-size:12px}.profile-row{grid-template-columns:72px 1fr auto}.profile-row b{font-size:11px}.profile-row small{font-size:9px}.work-section{padding:60px 0 72px}.work-intro{padding-bottom:38px}.work-intro-row{padding-top:34px;display:block}.work-intro h2{font-size:40px}.work-intro-row>p{margin-top:17px;font-size:10px}.work-layout{padding:0 6%;display:block}.tree-nav{grid-template-columns:1fr 1fr;gap:0 12px;margin-bottom:45px;display:grid;position:relative;top:0}.tree-head{grid-column:1/-1}.tree-project{padding-bottom:6px}.tree-project-title{grid-template-columns:20px 1fr 14px;font-size:9px}.tree-group{padding-left:20px;font-size:7px}.project{margin-bottom:45px;padding-bottom:48px}.project-title-row{display:block}.project h3{font-size:21px}.project-en{text-align:left;margin-top:6px;display:block}.project-category{font-size:7px}.project-intro{margin-bottom:22px;font-size:10px}.media-grid{gap:8px}.media-grid.dense{gap:7px}.media-grid.dense .image-wrap img{aspect-ratio:1}.media-caption{padding:6px 0;font-size:7px}.asset-group-head{font-size:8px}.pdf-card{padding:12px 12px 0}.pdf-card iframe{height:440px}footer{padding-top:60px}.contact-main{padding:52px 2% 58px}.contact-main h2{font-size:clamp(48px,12vw,72px)}.contact-email{font-size:10px}.contact-details{gap:10px 18px;padding:15px 2%;font-size:8px}.footer-bottom{font-size:7px}.footer-bottom span:nth-child(2){display:none}}:root{--orange-glow:#ff5a0057}.orange-dot,.top-center i,.footer-bottom i{box-shadow:0 0 9px var(--orange-glow)}.portrait-stamp{box-shadow:0 0 24px var(--orange-glow)}.project-number,.tree-num,.period,.contact-main h2 i{text-shadow:0 0 12px var(--orange-glow)}.hero-portrait:before{content:"";filter:blur(18px);z-index:-1;pointer-events:none;background:radial-gradient(#ff5a0017,#0000 68%);position:absolute;inset:12% -8%}.resume-link:hover,.nav a:hover,.contact-details a:hover{text-shadow:0 0 10px var(--orange-glow)}.media-grid.stacked{grid-template-columns:1fr;gap:34px}.media-grid.stacked .image-wrap img{object-fit:contain;background:#fff;max-height:none}.hero-home-grid{background-color:#fff;background-image:linear-gradient(90deg,#19191921 1px,#0000 1px),linear-gradient(#19191921 1px,#0000 1px);background-size:36px 36px;height:calc(100vh - 66px);min-height:calc(100vh - 66px);overflow:hidden}.hero-home-grid .hero-main{flex:1;min-height:0;padding:0;display:block;position:relative}.hero-grid-title{z-index:1;color:#b90f19;letter-spacing:-.105em;text-transform:lowercase;white-space:nowrap;margin:0;font:700 min(24vw,32vh,340px)/.94 Helvetica,Arial,sans-serif;position:absolute;top:-.09em;left:-.045em}.hero-grid-title span{display:block}.hero-grid-title span:nth-child(2){margin-left:28vw}.hero-grid-title span:nth-child(3){margin-left:24vw}.hero-side-info{z-index:2;color:#b90f19;text-align:center;width:18%;font-family:Helvetica,Arial,sans-serif;position:absolute;top:34%;left:0}.hero-author{margin:0 0 48px;font-family:Noto Sans SC,sans-serif;font-size:14px;font-weight:600;line-height:1.3}.hero-author span{margin-top:3px;font:11px Helvetica,Arial,sans-serif;display:block}.hero-role{margin:0 0 60px;font-size:11px;font-weight:700;line-height:1.05}.hero-note,.hero-date{margin:0 0 13px;font-size:10px;line-height:1.4}@media (width<=900px){.hero-grid-title{font-size:min(24vw,32vh,340px)}.hero-grid-title span:nth-child(2){margin-left:27vw}.hero-grid-title span:nth-child(3){margin-left:21vw}.hero-side-info{width:21%}}@media (width<=640px){.hero-home-grid{background-size:25px 25px;height:calc(100svh - 58px);min-height:calc(100svh - 58px);padding:0 5%}.hero-grid-title{letter-spacing:-.1em;font-size:min(24vw,32vh,340px);line-height:.94;top:-.02em;left:-.04em}.hero-grid-title span:nth-child(2){margin-left:18vw}.hero-grid-title span:nth-child(3){margin-left:10vw}.hero-side-info{width:28%;top:34%;left:1%}.hero-author{margin-bottom:22px;font-size:11px}.hero-author span{font-size:9px}.hero-role{margin-bottom:25px;font-size:9px}.hero-note,.hero-date{font-size:8px}}.portfolio-cover{color:#1d1d1f;background:#fff;width:100%;height:100vh;min-height:650px;font-family:Helvetica,Arial,sans-serif;position:relative;overflow:hidden}.cover-identity{z-index:1;position:absolute;top:8.4%;left:5.6%}.cover-mark{fill:none;stroke:#1d1d1f;stroke-width:1.15px;width:52px;height:26px;display:block}.cover-mark circle{fill:#1d1d1f;stroke:none}.cover-name{letter-spacing:-.06em;margin:12px 0 0;font-size:20px;font-weight:700;line-height:1.15}.cover-presenter{letter-spacing:-.035em;margin:3px 0 0;font-size:13px}.cover-meta{letter-spacing:-.035em;white-space:nowrap;justify-content:space-between;align-items:center;gap:28px;font-size:12px;display:flex;position:absolute;top:43%;left:5.6%;right:5.6%}.cover-meta p{margin:0}.cover-meta p span{color:#777;padding:0 13px}.cover-contact{align-items:center;gap:24px;display:flex}.cover-contact a:hover{color:var(--orange)}.cover-title{letter-spacing:.045em;font-kerning:none;font-feature-settings:"kern" 0;white-space:nowrap;color:#000;transform-origin:bottom;width:max-content;margin:0;font:900 min(38.4vw,46vh,400px)/.8 Helvetica,Arial,sans-serif;position:absolute;top:54.5%;left:50%;transform:translate(-50%)scaleX(.5)}@media (width<=900px){.cover-meta{gap:16px;font-size:10px}.cover-contact{gap:12px}.cover-meta p span{padding:0 6px}}@media (width<=640px){.portfolio-cover{height:100svh;min-height:620px}.cover-identity{top:7%;left:6%}.cover-meta{white-space:normal;flex-direction:column;align-items:flex-start;gap:16px;font-size:10px;top:43%;left:6%;right:6%}.cover-contact{flex-direction:column;align-items:flex-start;gap:7px}.cover-title{letter-spacing:.035em;font-size:min(25vw,25vh);top:62%;left:50%;transform:translate(-50%)scaleX(.52)}}.about-page{color:#171717;background:#e9e9e9;grid-template-columns:39% 48%;justify-content:space-between;min-height:100vh;padding:12px;font-family:Helvetica,Arial,Noto Sans SC,sans-serif;display:grid}.about-profile h2{letter-spacing:-.045em;margin:0;font-size:30px;font-weight:700;line-height:1.2}.about-subtitle{color:#777;letter-spacing:-.025em;margin:3px 0 16px;font-size:15px}.about-photo{aspect-ratio:1.31;object-fit:cover;object-position:center;border-radius:11px;width:100%;display:block}.about-profile h3{letter-spacing:-.035em;margin:19px 0 11px;font-size:22px;font-weight:700}.about-description{color:#666;max-width:440px;margin:0;font-size:15px;line-height:1.6}.about-details{min-width:0}.about-block h2{letter-spacing:-.04em;margin:0 0 31px;font-size:22px;font-weight:700;line-height:1.2}.education-row{justify-content:space-between;align-items:flex-start;gap:18px;font-size:15px;display:flex}.education-row b{font-size:15px;font-weight:600}.education-row small{color:#777;margin-top:5px;font-size:14px;display:block}.education-row strong{white-space:nowrap;font-size:15px}.education-note,.education-courses{color:#777;margin:16px 0 0;font-size:13px;line-height:1.55}.education-courses{max-width:590px;margin-top:9px}.education-courses b{color:#292929;font-weight:600}.about-block+.about-block{margin-top:40px}.about-skill-columns{color:#777;grid-template-columns:1fr 1fr;column-gap:10%;font-size:15px;line-height:1.55;display:grid}.about-skill-columns span{display:block}.about-skills-summary{color:#777;max-width:590px;margin:0;font-size:15px;line-height:1.7}.about-page-spotlight{position:relative}.line-sidebar__list{margin:0;padding:0;list-style:none}.line-sidebar .tree-head{font-size:12px}.line-sidebar .tree-project-title{font-size:15px}.line-sidebar .tree-num,.line-sidebar .tree-count,.line-sidebar .tree-group{font-size:12px}.line-sidebar .tree-head{margin-bottom:28px}.line-sidebar .tree-project{padding-top:15px;padding-bottom:18px}.line-sidebar .tree-project-title{padding-top:6px;padding-bottom:12px}.line-sidebar .tree-group{padding-top:8px;padding-bottom:8px}.line-sidebar__item{position:relative}.line-sidebar__title{transform:translateX(calc(var(--line-effect,0) * 10px));transition:transform 80ms linear;position:relative}.line-sidebar__title:before{content:"";background:color-mix(in srgb,var(--orange) calc(var(--line-effect,0) * 100%),#b8b7b2);width:14px;height:1px;transform:translateY(-50%) scaleX(calc(.55 + var(--line-effect,0) * .7));transform-origin:0;position:absolute;top:50%;left:-20px}.line-sidebar__title>span:nth-child(2){color:color-mix(in srgb,var(--orange) calc(var(--line-effect,0) * 100%),#171717)}@media (width<=640px){.line-sidebar .tree-head{font-size:10px}.line-sidebar .tree-project-title{font-size:12px}.line-sidebar .tree-num,.line-sidebar .tree-count{font-size:10px}.line-sidebar .tree-group{font-size:9px}}.resume-link{color:#171717;border:1px solid #171717;border-radius:2px;align-items:center;gap:8px;width:max-content;margin:0;padding:11px 15px;font-size:13px;transition:color .2s,border-color .2s,background .2s;display:inline-flex;position:absolute;bottom:24px;right:calc(9.3vw - 12px)}.resume-link:hover{color:#fff;background:#171717;border-color:#171717}.contact-page{color:#111;background:#fff;flex-direction:column;min-height:610px;display:flex;padding:0!important}.contact-topline{grid-template-columns:1fr 2fr 1fr;align-items:center;height:68px;padding:0 5.6%;display:grid}.contact-brand{flex-direction:column;width:max-content;line-height:1.05;display:flex}.contact-brand b{letter-spacing:-.035em;font:700 11px/1 DM Sans,sans-serif}.contact-brand small{font:6px/1.4 var(--mono);color:#777;letter-spacing:.04em}.contact-topline nav{justify-content:center;gap:clamp(24px,8vw,100px);display:flex}.contact-topline nav a,.contact-top-link{font:11px DM Sans,Noto Sans SC,sans-serif}.contact-topline nav a:hover,.contact-top-link:hover{color:var(--orange)}.contact-top-link{border:1px solid #ddd;border-radius:50%;justify-self:end;place-items:center;width:22px;height:22px;font-size:12px;display:grid}.contact-stage{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:440px;padding:40px 7% 50px;display:flex}.contact-edition{letter-spacing:.015em;color:#343434;margin:0 0 7px;font:500 13px DM Sans,sans-serif}.contact-thanks{text-align:center;letter-spacing:-.055em;color:#080808;width:100%;margin:0 0 13px;font:700 min(19vw,230px)/.9 DM Sans,Helvetica,Arial,sans-serif}.contact-caption{text-align:center;justify-content:center;align-items:center;gap:17px;width:100%;display:flex}.contact-caption span{font:8px var(--mono);letter-spacing:.015em;border:1px solid #888;border-radius:99px;padding:2px 8px}.contact-caption strong{letter-spacing:-.04em;font:500 clamp(20px,3vw,34px)/1.2 Noto Sans SC,sans-serif}.contact-base{color:#fff;min-height:54px;font:12px var(--mono);letter-spacing:.035em;background:#080808;grid-template-columns:1fr 2fr 1fr;align-items:center;padding:0 5.6%;display:grid}.contact-base span:nth-child(2){text-align:center}.contact-base span:last-child{text-align:right}.contact-base a:hover{color:#ff6a22}@media (width<=640px){.contact-page{min-height:560px}.contact-topline{grid-template-columns:1fr auto;height:58px;padding:0 6%}.contact-topline nav{display:none}.contact-stage{min-height:420px;padding:34px 5% 44px}.contact-edition{font-size:10px}.contact-thanks{margin-bottom:16px;font-size:21vw}.contact-caption{gap:8px}.contact-caption span{padding:2px 6px;font-size:6px}.contact-caption strong{font-size:20px}.contact-base{grid-template-columns:1fr 1fr;gap:7px;min-height:76px;padding:12px 6%;font-size:10px}.contact-base span:nth-child(2){text-align:left;grid-area:2/1/auto/-1}.contact-base span:last-child{text-align:right}}@media (hover:hover) and (pointer:fine){.nav a,.tree-project-title,.tree-group,.pdf-card>a,.contact-topline nav a,.contact-top-link,.contact-base a,.scroll-link,.wordmark,.media-caption{transition:color .22s,transform .28s cubic-bezier(.2,.7,.2,1),text-shadow .22s}.nav a{position:relative}.nav a:after{content:"";background:var(--orange);transform-origin:0;height:1px;transition:transform .25s;position:absolute;bottom:-5px;left:0;right:0;transform:scaleX(0)}.nav a:hover:after{transform:scaleX(1)}.tree-project{transition:border-color .25s}.tree-project:hover{border-color:#999}.tree-project-title:hover,.tree-group:hover,.media-caption:hover{transform:translate(3px)}.tree-group:hover,.nav a:hover,.contact-topline nav a:hover,.contact-base a:hover{color:var(--orange)}.pdf-card>a svg{transition:transform .25s}.pdf-card>a:hover svg{transform:translate(3px,-3px)}.contact-top-link:hover{transform:rotate(45deg)}.scroll-link:hover{color:var(--orange);transform:translate(3px)}.wordmark:hover{letter-spacing:-.8px}.image-wrap img{transition:transform .55s cubic-bezier(.2,.7,.2,1)}.image-wrap:hover img{transform:scale(1.035)}.project{transition:border-color .3s}.project:hover{border-bottom-color:#aaa}}@media (prefers-reduced-motion:reduce){.nav a:after,.tree-project,.tree-project-title,.tree-group,.pdf-card>a svg,.contact-top-link,.scroll-link,.wordmark,.media-caption,.image-wrap img,.project{transition:none!important}.image-wrap:hover img{transform:none}}@media (width<=900px){.about-page{grid-template-columns:39% 48%;padding-left:6%;padding-right:6%}.about-subtitle,.about-description{font-size:12px}.education-courses{font-size:10px}.about-skill-columns{font-size:11px}}@media (width<=640px){.about-page{grid-template-columns:1fr;gap:0;min-height:100vh;padding:12px}.about-photo{aspect-ratio:1.31}.about-details{flex-direction:column;gap:38px;display:flex}.about-block+.about-block{margin-top:0}.about-block h2{margin-bottom:22px}.education-row{font-size:12px}.education-row strong{font-size:11px}.education-row small,.education-note,.education-courses{font-size:10px}.about-skill-columns{font-size:11px}}.site-nav{z-index:50;-webkit-backdrop-filter:blur(18px)saturate(150%);backdrop-filter:blur(18px)saturate(150%);background:#f6f6f6c2;border-bottom:1px solid #18181814;justify-content:space-between;align-items:center;height:68px;padding:0 5.6%;display:flex;position:sticky;top:0}.site-nav-brand{font:700 13px var(--mono);letter-spacing:.12em}.site-nav-brand span{color:var(--orange);vertical-align:top;margin-left:3px;font-size:9px}.site-nav-links{align-items:center;gap:38px;display:flex}.site-nav-links a{letter-spacing:.04em;font-size:12px;transition:color .2s}.site-nav-links a:hover{color:var(--orange)}.site-nav-toggle{cursor:pointer;background:0 0;border:0;padding:7px;display:none}.portfolio-cover{height:calc(100vh - 68px);min-height:582px}html{scroll-padding-top:82px}@media (width<=640px){.site-nav{height:58px;padding:0 6%}.site-nav-toggle{place-items:center;display:grid}.site-nav-links{-webkit-backdrop-filter:blur(18px)saturate(150%);backdrop-filter:blur(18px)saturate(150%);background:#f6f6f6e0;border-bottom:1px solid #18181814;flex-direction:column;align-items:flex-start;gap:19px;padding:18px 6% 22px;display:none;position:absolute;top:calc(100% + 1px);left:0;right:0}.site-nav-links.open{display:flex}.site-nav-links a{font-size:14px}.portfolio-cover{height:calc(100svh - 58px);min-height:562px}html{scroll-padding-top:70px}}@media (prefers-reduced-motion:reduce){.site-nav-links a{transition:none}}.about-page-spotlight{border-radius:14px;grid-column:1/-1;grid-template-columns:39% 48%;justify-content:space-between;width:100%;padding:calc(12.2vh - 12px) calc(9.3vw - 12px) calc(8vh - 12px);display:grid}@media (width<=900px) and (width>=641px){.about-page{padding:12px}.about-page-spotlight{padding:calc(12.2vh - 12px) calc(6vw - 12px) calc(8vh - 12px)}}@media (width<=640px){.about-page-spotlight{grid-template-columns:1fr;gap:46px;padding:42px calc(7vw - 12px) 82px}.resume-link{bottom:20px;right:calc(7vw - 12px)}}.about-profile h2,.about-education>h2{font-size:30px}.about-profile h3,.about-block:not(.about-education)>h2{font-size:22px}.about-subtitle,.about-description,.education-row,.education-row b,.education-row small,.education-row strong,.education-note,.about-skill-columns,.about-skills-summary{font-size:15px}.education-row{line-height:1.6}.education-row small{line-height:1.5}.education-note{color:#000;line-height:1.55}.about-skill-columns{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:5%;line-height:1.55}.about-skill-columns>div{display:contents}.about-profile,.about-details{flex-direction:column;align-self:stretch;display:flex}.about-description,.about-block:last-child{margin-top:auto}@media (width<=700px){.about-skill-columns{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:10%}}@media (width<=640px){.about-profile h2,.about-education>h2{font-size:26px}.about-profile h3,.about-block:not(.about-education)>h2{font-size:21px}.about-profile{display:block}.about-details{flex-direction:column;gap:38px;display:flex}.about-description,.about-block:last-child,.about-block+.about-block{margin-top:0}}.media-grid[data-mite-effects]{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width>=901px){.about-block:last-child{flex:0;margin-top:0;display:block}.about-block:last-child>h2{margin-bottom:11px}.about-skills-summary{margin-top:0}.education-row b{font-size:18px}.education-row small,.education-note,.about-details>.about-block:nth-child(2)>h2,.about-details>.about-block:nth-child(2)>.about-skill-columns{transform:translateY(27px)}}.education-degree{color:#000;font-weight:700}.work-intro h2 .work-intro-first,.work-intro h2 .work-intro-first .split-char{color:#181818}.work-intro h2 .work-intro-muted,.work-intro h2 .work-intro-muted .split-char{color:#8a8a85}
