:root{--paper:#efefed}body{background:var(--paper)}html{scroll-padding-top:30px}.navigation{position:relative;width:100%;height:86px;padding:0 4.5%;border-bottom:1px solid #19191913;background:var(--paper);z-index:40}.wordmark{font-size:25px;font-weight:750;letter-spacing:-1.4px}.wordmark .mark{font-size:35px}.navigation nav{font-size:14px;gap:35px}.edition{font-size:10px;letter-spacing:1.7px}main{display:block;min-height:0}.hero{display:block;height:calc(100svh - 86px);min-height:650px;padding:0;isolation:isolate;overflow:hidden}.intro{position:absolute;width:35%;left:6.5%;top:47%;transform:translateY(-50%);padding:0;z-index:10}.eyebrow{font-size:11px;letter-spacing:1.4px;line-height:1.6;margin:0;color:#777}h1{font-size:clamp(36px,3.75vw,66px);font-weight:500;letter-spacing:-2px;line-height:1.28;margin:26px 0 25px}.title-line{display:block}.title-line:last-child{font-weight:400;font-size:1.17em;letter-spacing:-2.8px}.orange{color:var(--accent)}.intro-description{font-size:14px;line-height:1.9;max-width:380px;color:var(--muted);margin:0}.discipline{font-size:11px;letter-spacing:.3px;margin-top:20px;color:#777;white-space:normal}.discipline span{margin:0}.discipline span+span:before{content:'/';color:#aaa;padding:0 13px}.resume{display:inline-flex;align-items:center;background:var(--ink);color:#fff;border-radius:40px;padding:15px 25px;margin-top:34px;font-size:14px;transition:background .25s,transform .4s var(--ease)}.resume:hover{background:var(--accent);transform:translateY(-2px)}.socials{display:flex;gap:12px;margin-top:23px}.socials a{width:34px;height:34px;display:grid;place-items:center;transition:transform .3s,color .3s}.socials a:hover{color:var(--accent);transform:translateY(-3px)}.socials svg{width:22px;height:22px;fill:currentColor}.socials .mail-icon{fill:none;stroke:currentColor;stroke-width:1.7}.scroll-cue{position:absolute;left:6.5%;bottom:30px;display:flex;align-items:center;gap:27px;font-size:10px;letter-spacing:1.5px;color:var(--muted)}.scroll-cue span:last-child{font-size:23px;color:var(--ink)}.hero-count{position:absolute;left:39%;bottom:38px;font-size:10px;letter-spacing:1px;color:#888}
.orbit-area{position:absolute;right:0;top:0;width:40%;height:100%;z-index:5}.gallery{overflow:visible;touch-action:pan-y;cursor:default}.orbit-slot{aspect-ratio:1.6}.project-card{border-radius:8px;box-shadow:0 2px 3px #0001,0 30px 30px -28px #0009;transition:transform .65s var(--ease),box-shadow .65s var(--ease)}.project-card.is-active{transform:rotate(var(--straighten)) scale(1.16);box-shadow:0 0 0 3px #72726d66,0 0 18px 5px #53534f20,0 28px 48px -15px #0005}.project-card .card-top,.work-cover .card-top{position:absolute;left:6%;right:6%;top:8%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.1px;z-index:3;opacity:.72}.project-card .card-main,.work-cover .card-main{position:absolute;top:24%;left:6%;right:auto;bottom:auto;width:75%;z-index:2}.project-card .cover-title,.work-cover .cover-title{display:block;font-size:clamp(30px,3.5vw,58px);line-height:1.01;letter-spacing:-1.8px;font-weight:500}.project-card .card-bottom,.work-cover .card-bottom{position:absolute;bottom:8%;left:6%;right:6%;display:flex;align-items:center;justify-content:space-between;font-size:11px;z-index:3;background:none;padding:0}.card-bottom b{font-weight:400;font-size:23px}.cover-art{position:absolute;overflow:hidden;pointer-events:none}.cover-art img{position:absolute;max-width:none;height:auto}.project-card.robot .card-main{width:90%}.project-card.robot .cover-title{font-size:clamp(35px,4.1vw,70px)}.project-card.oral .card-main,.work-cover.oral .card-main{width:45%;top:29%}.project-card.oral .cover-title,.project-card.glasses .cover-title{font-size:clamp(29px,3vw,49px)}.oral .cover-art{right:0;top:18%;width:49%;height:60%}.project-card.glasses .card-main,.work-cover.glasses .card-main{width:47%;top:25%}.glasses .cover-art{right:5%;top:36%;width:43%;aspect-ratio:2.62}.legal-ai{background:#d6d7d2;color:#202020}.project-card.legal-ai .card-main,.work-cover.legal-ai .card-main{width:82%;top:25%}.project-card.legal-ai .cover-title{font-size:clamp(28px,3.2vw,50px);line-height:1.05}.legal-ai .card-top{border-bottom:1px solid #19191944;padding-bottom:10px}.orbit-controls{position:absolute;right:28px;bottom:22px;z-index:25;display:flex;align-items:center;gap:20px;font-size:10px;color:#666}.orbit-controls button{width:35px;height:35px;border:1px solid #9997;border-radius:50%;background:var(--paper)}.orbit-controls button:hover{background:#fff}
.project-peek{position:absolute;left:42%;width:18%;top:49%;transform:translateY(calc(-50% + 14px));z-index:24;background:#f9f9f6ed;border:1px solid #fff;border-radius:5px;padding:25px 22px;box-shadow:0 15px 45px #00000006;opacity:0;visibility:hidden;transition:opacity .35s,transform .5s var(--ease),visibility .35s;pointer-events:none}.hero.has-selection .project-peek{opacity:1;visibility:visible;transform:translateY(-50%);pointer-events:auto}.peek-number{display:block;color:var(--accent);font-size:12px;margin-bottom:26px}.peek-category{font-size:10px;line-height:1.7;color:#777;letter-spacing:.5px;margin:0}.peek-title{font-size:22px;line-height:1.45;font-weight:500;margin:12px 0}.peek-description{font-size:12px;line-height:1.9;color:#666;margin:0}.peek-open{font-size:12px;padding:0;margin-top:24px;border-bottom:1px solid #888;padding-bottom:6px}
.page-section{padding:70px 6.5% 110px;background:#fff}.section-label{display:flex;justify-content:space-between;border-top:1px solid #d7d7d7;padding-top:18px;font-size:10px;letter-spacing:1.3px;color:#777}.about-layout{display:grid;grid-template-columns:42% 1fr;gap:9%;align-items:center;margin-top:75px}.portrait{position:relative;background:#f4f4f2;padding:28px 18px 0}.portrait img{width:100%;height:auto;display:block;mix-blend-mode:multiply;max-width:none}.portrait-note{position:absolute;left:27px;top:32px;font-size:18px;font-style:italic;z-index:2;transform:rotate(-7deg);letter-spacing:-.5px}.portrait-caption{font-size:9px;letter-spacing:1.2px;padding:23px 8px;margin:0}.portrait-star{position:absolute;right:-27px;bottom:40px;font-size:85px;color:var(--accent);line-height:1;transform:rotate(16deg)}.about-name{display:flex;align-items:baseline;justify-content:space-between;gap:15px}.about-name h2{font-size:28px;letter-spacing:-.8px;font-weight:500;margin:0 0 23px}.about-name>span{font-size:11px;color:#888;white-space:nowrap}.about-bio p{font-size:14px;line-height:1.9;color:#666;margin:0 0 12px}.contact-row{display:flex;justify-content:space-between;align-items:center;margin:18px 0 25px}.contact-row .socials{margin:0}.email-cta{font-size:12px;border-bottom:1px solid #999;padding-bottom:5px}.currently{padding:23px 0;border-top:1px solid #ddd;border-bottom:1px solid #ddd}.currently>p:last-child{font-size:14px;line-height:1.8;margin:12px 0 0}.education{margin-top:26px}.school{display:grid;grid-template-columns:40px 1fr;gap:15px;padding-top:22px}.school-monogram{font-size:14px;font-weight:700;letter-spacing:-1px;border:1px solid #ddd;width:39px;height:39px;border-radius:50%;display:grid;place-items:center}.school-top{display:flex;justify-content:space-between;gap:15px;align-items:baseline}.school h3{font-size:14px;font-weight:600;margin:0}.school time{font-size:10px;color:#777;white-space:nowrap}.school p{font-size:12px;color:#777;line-height:1.8;margin:5px 0 0}.school .degree{color:#333;font-size:13px}
.works{background:var(--paper);padding-top:55px}.work-heading{display:flex;align-items:end;justify-content:space-between;margin:50px 0 45px;gap:50px}.work-heading h2{font-size:clamp(48px,6.5vw,100px);font-weight:400;letter-spacing:-4px;line-height:1;margin:0}.work-heading p{font-size:14px;line-height:1.8;color:#777;max-width:320px;margin:0}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 30px}.work-item{text-align:left;padding:0;display:block}.work-cover{aspect-ratio:1.6;position:relative;display:block;border-radius:9px;overflow:hidden;transition:transform .65s var(--ease),box-shadow .65s var(--ease)}.work-item:hover .work-cover{transform:translateY(-7px);box-shadow:0 20px 30px -22px #0007}.work-cover .cover-title{font-size:clamp(30px,4vw,64px)}.work-cover .card-top{font-size:10px}.work-cover .card-bottom{font-size:12px}.work-caption{display:flex;justify-content:space-between;gap:20px;margin-top:18px;align-items:baseline}.work-caption h3{margin:0;font-size:18px;font-weight:500}.work-caption>span{font-size:12px;color:#777}.work-category{font-size:11px;color:#777;margin:9px 0 0}.work-item:hover h3{color:var(--accent)}footer{display:flex;align-items:center;justify-content:space-between;padding:40px 6.5%;background:#1b1b1b;color:#eee}footer>a:not(.wordmark),footer>span{font-size:12px}footer .wordmark{font-size:19px}.detail-sections{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:0 6% 50px}.detail-sections h3{font-size:14px;font-weight:500;border-top:1px solid #ddd;padding-top:20px}.detail-sections p{font-size:14px;line-height:1.9;color:#666}.report-link{margin:0 6% 30px;padding:20px 25px;background:var(--paper);font-size:14px}.report-link:not([hidden]){display:block}
@media(min-width:1800px){.hero{min-height:850px}.project-peek{padding:35px}.peek-description{font-size:15px}.peek-title{font-size:28px}.intro-description{font-size:16px;max-width:430px}}
@media(max-width:1100px){.intro{width:36%;left:5%}h1{font-size:38px;letter-spacing:-1px}.intro-description{font-size:13px}.project-peek{left:42%;width:21%;padding:20px 15px}.peek-title{font-size:18px}.peek-description{font-size:11px}.orbit-area{width:37%}.about-layout{gap:6%;grid-template-columns:40% 1fr}.school-top{display:block}.school time{display:block;margin-top:5px}.about-name{display:block}.about-name h2{margin-bottom:6px}.about-name>span{display:block;margin-bottom:18px}.portrait-note{font-size:15px}}
@media(max-width:760px){html{scroll-padding-top:20px}.navigation{height:72px;padding:0 6%}.wordmark{font-size:21px}.edition{display:none}.navigation nav{font-size:12px;gap:20px}.hero{height:auto;min-height:0;padding:65px 0 0;display:block}.intro{position:relative;left:auto;top:auto;transform:none;width:auto;margin:0 7%;padding-bottom:45px}h1{font-size:clamp(39px,8vw,60px);margin:22px 0;line-height:1.22}.intro-description{font-size:14px;max-width:440px}.resume{margin-top:25px}.socials{margin-top:18px}.orbit-area{position:relative;width:100%;height:510px;overflow:hidden}.scroll-cue,.hero-count{display:none}.orbit-controls{right:7%;bottom:16px;background:#efefede6;border-radius:30px;padding-left:13px}.project-peek{position:relative;left:auto;top:auto;width:auto;max-height:0;margin:0 7%;padding:0 22px;transform:none;overflow:hidden;border:0;transition:all .45s var(--ease)}.hero.has-selection .project-peek{max-height:380px;transform:none;padding:22px;margin-bottom:25px}.peek-number{margin-bottom:12px}.peek-description{font-size:13px}.peek-title{font-size:22px}.orbit-slot .project-card .cover-title{font-size:45px}.orbit-slot .project-card .card-top{font-size:9px}.orbit-slot .project-card .card-bottom{font-size:12px}.page-section{padding:45px 7% 65px}.section-label{font-size:9px}.section-label span:last-child{display:none}.about-layout{grid-template-columns:1fr;gap:40px;margin-top:40px}.portrait{max-width:430px;margin:0 auto}.portrait-star{font-size:65px;right:-20px}.about-name{display:flex}.about-name h2{font-size:26px;margin-bottom:20px}.about-name>span{display:inline}.about-bio p{font-size:15px}.school-top{display:flex}.school time{font-size:9px}.currently>p:last-child{font-size:15px}.work-heading{display:block;margin-top:35px}.work-heading h2{font-size:70px;letter-spacing:-3px}.work-heading p{margin-top:20px}.work-grid{grid-template-columns:1fr;gap:35px}.work-caption h3{font-size:17px}.work-cover .cover-title{font-size:45px}.work-cover .card-top{font-size:9px}.work-cover .card-bottom{font-size:11px}.detail-sections{grid-template-columns:1fr;gap:8px}.detail-heading{padding-top:30px}.detail-nav{font-size:10px}footer .wordmark{font-size:16px}footer{flex-wrap:wrap;gap:25px}footer>a:not(.wordmark),footer>span{font-size:10px}}
.language-switch{display:flex;align-items:center;gap:9px;border-left:1px solid #bbb;padding-left:24px;font-size:12px}.language-switch button{padding:4px 0;min-height:30px;color:#888}.language-switch button[aria-pressed="true"]{color:var(--accent);font-weight:600}.language-switch>span{color:#bbb}.navigation nav{align-items:center}
.orbit-slot,.work-cover{aspect-ratio:16/9}.custom-cover{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}.has-custom-cover.robot{background:#06277a}.has-custom-cover.oral{background:#3d3d3b}.has-custom-cover.glasses{background:#92908e}.presentation{margin:0 6% 45px;border:1px solid #ddd}.presentation-heading{padding:24px}.presentation-heading h3{font-size:20px;font-weight:500;margin:0 0 12px}.presentation-heading p{font-size:14px;line-height:1.7;color:#777}.presentation-links{display:flex;flex-wrap:wrap;gap:16px 25px;margin-top:20px;font-size:13px}.presentation-links a{border-bottom:1px solid #888;padding-bottom:5px}.presentation-links a:hover{color:var(--accent)}.presentation-viewer object{display:block;width:100%;height:min(70vh,800px);min-height:380px;background:#eee}.presentation-viewer object>a{display:block;padding:30px;color:var(--accent)}html[lang="en"] .school-top{display:block}html[lang="en"] .school time{display:block;margin-top:6px}html[lang="en"] .peek-title{font-size:19px}html[lang="en"] .discipline{font-size:10px}html[lang="en"] .work-caption{align-items:start}html[lang="en"] .work-caption>span{flex-shrink:0}
@media(max-width:760px){.language-switch{padding-left:12px;gap:7px}.navigation nav{gap:13px}.navigation{padding:0 5%}.navigation .wordmark{font-size:18px}.presentation{margin-left:15px;margin-right:15px}.presentation-heading{padding:18px}.presentation-viewer object{min-height:330px}.work-caption h3{line-height:1.4}html[lang="en"] .intro-description{font-size:14px}}
@media(max-width:390px){.navigation nav{gap:9px}.navigation .wordmark{font-size:16px}.language-switch{padding-left:8px;font-size:11px}}
/* A shared frame surrounds every cover; only the inner award card flips. */
.project-card,.work-cover,.has-custom-cover.robot,.has-custom-cover.oral,.has-custom-cover.glasses{background:#f8f8f6;border:1px solid #c7c7c3;border-radius:10px}
.card-face{position:absolute;display:block;inset:6px;border-radius:4px;overflow:hidden;background:#fff;backface-visibility:hidden;-webkit-backface-visibility:hidden}.legal-ai .card-front{background:#d6d7d2}.oral .card-front{background:#f8f8f8}.robot .card-front{background:#06277a}.glasses .card-front{background:#92908e}.work-cover{box-shadow:0 2px 4px #00000008}
.project-card.glasses,.work-cover.glasses{overflow:visible;perspective:1200px}.card-flip{position:absolute;display:block;inset:6px;transform-style:preserve-3d;transform:rotateY(0deg);transition:transform 800ms cubic-bezier(.22,.7,.18,1);pointer-events:none}.card-flip .card-face{inset:0}.card-back{transform:rotateY(180deg);background:#fff}.card-back img{display:block;width:100%;height:100%;object-fit:contain}.project-card.glasses.is-active .card-flip,.work-item:focus-visible .glasses .card-flip{transform:rotateY(180deg)}
@media(hover:hover){.work-item:hover .glasses .card-flip{transform:rotateY(180deg)}}
.peek-award:not([hidden]){display:block;color:var(--accent);font-size:12px;line-height:1.7;margin-top:17px;text-decoration:underline;text-underline-offset:4px}.peek-award+.peek-open{margin-top:18px}.socials{align-items:center;flex-wrap:wrap}.socials a,.socials button{width:34px;height:34px;display:grid;place-items:center;transition:transform .3s,color .3s}.socials a:hover,.socials button:hover{color:var(--accent);transform:translateY(-3px)}.socials button.is-copied{color:var(--accent)}.socials a.zoom-booking{width:auto;min-height:34px;height:auto;padding:0 0 0 17px;margin-left:4px;border-left:1px solid #c7c7c3;font-size:12px;white-space:nowrap}.socials a.zoom-booking:hover{transform:none}.contact-row{justify-content:flex-start}.copy-toast{position:fixed;left:50%;bottom:28px;z-index:1000;transform:translate(-50%,14px);padding:11px 17px;border-radius:30px;background:#191919;color:#fff;font-size:13px;line-height:1.3;box-shadow:0 10px 35px #0003;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s,transform .35s var(--ease),visibility .25s}.copy-toast.is-visible{opacity:1;visibility:visible;transform:translate(-50%,0)}.copy-helper{position:fixed;left:-9999px;top:0;width:1px;height:1px;opacity:0}
.robot-demo{margin:0 6% 45px;border:1px solid #ddd}.robot-demo-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px}.robot-demo h3{font-size:20px;font-weight:500;margin:0}.robot-demo a{font-size:13px;text-decoration:underline;text-underline-offset:4px}.robot-demo video{display:block;width:100%;max-height:75vh;background:#111;aspect-ratio:16/9;object-fit:contain}@media(max-width:760px){.robot-demo{margin-left:15px;margin-right:15px}.robot-demo-heading{padding:18px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

#intro-title{font-size:clamp(30px,3.3vw,58px)}#intro-title .title-line:last-child{font-size:1em;letter-spacing:inherit}.project-card:focus-visible,.work-item:focus-visible{outline:2px solid #73736e;outline-offset:5px}html[lang="en"] #intro-title{font-size:clamp(28px,3.05vw,54px)}@media(max-width:760px){#intro-title{font-size:clamp(28px,7.1vw,42px)}html[lang="en"] #intro-title{font-size:clamp(24px,6.2vw,36px)}}
.copy-email{position:relative}.copy-email:after{content:attr(data-email-address);position:absolute;left:50%;bottom:calc(100% + 9px);z-index:60;transform:translate(-50%,6px);padding:7px 10px;border-radius:4px;background:#191919;color:#fff;font-size:12px;font-weight:400;line-height:1.2;letter-spacing:0;white-space:nowrap;box-shadow:0 8px 24px #0003;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s,transform .25s var(--ease),visibility .2s}.copy-email:hover:after,.copy-email:focus-visible:after{opacity:1;visibility:visible;transform:translate(-50%,0)}
.portrait-star{width:85px;height:85px;font-size:0}.portrait-star svg{display:block;width:100%;height:100%;fill:currentColor}@media(max-width:760px){.portrait-star{width:65px;height:65px}}
