@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-condensed-latin-600-normal-DepVgxBB.woff2) format("woff2"),url(/assets/barlow-condensed-latin-600-normal-BFJEwTuo.woff) format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-latin-700-normal-v1xN8_Wq.woff2) format("woff2"),url(/assets/barlow-condensed-latin-700-normal-Dmwat-ge.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2) format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2) format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff) format("woff")}:root{font-family:DM Sans,sans-serif;color:#232320;background:#efede6;font-synthesis:none;-webkit-font-smoothing:antialiased;--paper: #efede6;--ink: #232320;--blue: #3155f5;--line: rgba(35, 35, 32, .2);--mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;--display: "Barlow Condensed", "Arial Narrow", sans-serif}*{box-sizing:border-box}html{position:relative;scroll-behavior:smooth}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default}button{background:none;border:0}::selection{background:var(--blue);color:#fff}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--blue);outline-offset:6px}p,h1,h2,h3{margin:0}p{line-height:1.65}img{display:block;max-width:100%}main{overflow:clip}section{scroll-margin-top:85px}.page-width{width:min(1280px,calc(100% - 112px));margin-inline:auto}.mono,.eyebrow{font-family:var(--mono);font-size:10px;letter-spacing:.08em;line-height:1.65}.eyebrow{display:block;margin-bottom:25px}.serif{font-family:Georgia,Times New Roman,serif;font-style:italic;font-weight:400;letter-spacing:-.06em}.text-link{display:inline-flex;gap:24px;align-items:center;border-bottom:1px solid currentColor;padding-block:8px;font-size:13px;transition:color .2s,gap .2s}.text-link:hover{color:var(--blue);gap:34px}.muted{color:#696963}.skip-link{position:fixed;top:-100px;left:20px;padding:15px;background:var(--paper);z-index:100}.skip-link:focus{top:10px}.reading-progress{position:fixed;inset:0 0 auto;height:3px;background:var(--blue);transform-origin:left;z-index:70}.site-header{height:85px;display:flex;align-items:center;gap:40px;padding:0 56px;position:fixed;inset:0 0 auto;z-index:60;background:#181a17f2;color:var(--paper);border-bottom:1px solid #ffffff24;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.wordmark{font-family:var(--display);font-weight:700;font-size:32px;letter-spacing:-.07em;display:inline-flex;align-items:center;gap:8px}.wordmark-star,.wordmark>span{font-size:24px;font-family:Georgia;color:#8097ff}.header-note{font-family:var(--mono);font-size:8px;line-height:1.6;letter-spacing:.08em;color:#b1b2aa}.site-header nav{margin-left:auto;display:flex;align-items:center;gap:34px;font-size:12px}.site-header nav a{position:relative}.site-header nav a[aria-current]:after{content:"";position:absolute;bottom:-9px;left:0;width:4px;height:4px;background:#9fb0ff;border-radius:50%}.site-header nav a:hover{color:#9fb0ff}.nav-contact{padding:10px 15px;border:1px solid #ffffff60}.nav-contact span{padding-left:25px}.menu-toggle{display:none}.hero{background:#181a17;color:var(--paper);position:relative;min-height:920px;height:calc(100svh + 100px);max-height:1140px;padding:120px 56px 75px;isolation:isolate}.hero-topline{display:flex;justify-content:space-between;color:#b1b2aa}.hero-topline>span:last-child{display:flex;gap:12px;align-items:center}.status-dot{display:inline-block;width:6px;height:6px;background:#c5d8a4;border-radius:100%}.hero h1{font-family:var(--display);font-size:clamp(140px,18.8vw,300px);font-weight:600;letter-spacing:-.025em;line-height:.78;position:relative;z-index:1;margin-top:54px;width:max-content}.hero h1>span{display:block;margin-top:14px}.title-period{color:#708bff}.hero-object{position:absolute;z-index:2;right:2.5%;top:165px;width:55%;height:550px}.sculpture,.sculpture-canvas{width:100%;height:100%;position:relative}.sculpture-canvas canvas{display:block;width:100%;height:100%}.sculpture-hint{position:absolute;bottom:18px;left:50%;transform:translate(-50%);white-space:nowrap;color:#a2a69b;font-size:8px}.motion-toggle{position:absolute;bottom:-12px;left:50%;transform:translate(-50%);color:#b7bcb0;font-size:8px;min-height:30px}.object-caption{position:absolute;right:48px;top:0;font-size:8px;color:#b7bcb0;writing-mode:vertical-rl}.sculpture-fallback{position:absolute;inset:20%;display:flex;align-items:center;justify-content:center;transform:rotate(-30deg)}.sculpture-fallback div{position:absolute;width:75%;aspect-ratio:1;border:35px solid #3155f5;border-radius:50%;box-shadow:inset 8px 8px 18px #10276f,7px 8px 20px #0005}.sculpture-fallback div:nth-child(2){transform:rotateY(65deg)}.sculpture-fallback div:nth-child(3){transform:rotateX(65deg)}.sculpture-fallback.is-hidden{display:none}.hero-bottom{position:absolute;inset:auto 56px 78px;display:grid;grid-template-columns:1fr 1fr auto;gap:50px;align-items:end;z-index:3}.hero-bottom>p{font-size:clamp(23px,3vw,42px);line-height:1.22;letter-spacing:-.045em}.hero-bottom em{font-family:Georgia;font-weight:400;color:#a4b3ff}.hero-intro{max-width:280px;justify-self:center}.hero-intro p{font-size:13px;color:#b7bcb0;margin-bottom:14px}.hero-intro .text-link{font-size:12px}.scroll-cue{display:flex;align-items:center;gap:18px}.scroll-cue>span:first-child{border:1px solid #ffffff50;border-radius:50%;width:48px;height:48px;display:grid;place-content:center;font-size:22px}.scroll-cue .mono{font-size:8px;writing-mode:vertical-rl}.hero-edge{position:absolute;bottom:24px;font-size:8px;color:#8c9185}.ticker{background:var(--blue);color:var(--paper);height:72px;overflow:hidden;display:flex;align-items:center}.ticker>div{display:flex;white-space:nowrap;animation:ticker 40s linear infinite}.ticker span{font-family:var(--display);font-size:29px;font-weight:600;letter-spacing:.01em}.ticker i{font-family:Georgia;font-style:normal;margin:0 35px;font-size:28px}@keyframes ticker{to{transform:translate(-50%)}}.section-heading{padding-top:120px;padding-bottom:65px;display:flex;justify-content:space-between;align-items:end;gap:30px}h2{font-size:clamp(44px,5.8vw,84px);font-weight:500;line-height:1.04;letter-spacing:-.065em}.section-heading>p{font-size:13px;color:#66665d;margin-bottom:8px}.work-reel{height:360vh;position:relative}.reel-sticky{position:sticky;top:85px;background:var(--paper);padding:18px 0 12px}.reel-meta{display:flex;justify-content:space-between;padding-bottom:20px;font-size:9px}.reel-viewport{overflow:hidden}.reel-track{display:flex;width:400%;will-change:transform}.reel-slide{width:25%;flex-shrink:0}.slide-inner{display:grid;grid-template-columns:1.65fr 1fr;gap:65px;align-items:center}.project-visual{height:clamp(330px,54vh,550px);position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#d7ddcf}.slide-1 .project-visual{background:#e2c8b4}.slide-2 .project-visual{background:#c9d3ee}.slide-3 .project-visual{background:#d3cec2}.visual-grid{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#23232009 1px,transparent 1px),linear-gradient(90deg,#23232009 1px,transparent 1px);background-size:40px 40px}.visual-label{position:absolute;top:20px;left:22px;font-size:8px;z-index:2}.visual-corner{position:absolute;bottom:18px;right:22px;font-size:8px}.phone-image{height:75%;width:auto;max-width:62%;object-fit:contain;border:7px solid #202320;border-radius:26px;box-shadow:16px 22px 32px #252b2530;transform:rotate(-8deg);transition:transform .7s}.slide-2 .phone-image{transform:rotate(8deg)}.project-visual:hover .phone-image{transform:rotate(0) translateY(-8px)}.desktop-image{width:85%;max-height:70%;object-fit:contain;box-shadow:10px 22px 30px #23232026;transform:perspective(900px) rotateY(-8deg) rotateX(4deg);transition:transform .7s}.project-visual:hover .desktop-image{transform:perspective(900px) rotateY(0) rotateX(0)}.demo-button{position:absolute;bottom:28px;background:var(--ink);color:var(--paper);padding:12px 22px;border-radius:30px;font-size:11px;z-index:3}.project-video{width:90%;max-height:85%;position:relative;z-index:3}.slide-copy h3{font-family:var(--display);font-size:clamp(44px,5vw,72px);font-weight:600;line-height:.95;letter-spacing:-.01em;max-width:420px;margin-bottom:25px}.slide-copy p{font-size:14px;color:#68685f;max-width:320px;margin-bottom:26px}.project-stack{font-size:9px;display:block;line-height:1.9;max-width:280px;margin-bottom:22px}.reel-controls{display:flex;align-items:center;justify-content:space-between;padding-top:24px}.reel-controls>.mono{font-size:8px}.reel-dots{display:flex;gap:20px;max-width:480px;width:55%}.reel-dots button{padding:8px 0;display:flex;align-items:center;gap:10px;flex:1;opacity:.4}.reel-dots button.active{opacity:1;color:var(--blue)}.dot-line{display:block;height:2px;flex:1;background:currentColor}.static-reel{height:auto}.static-reel .reel-sticky{position:relative;top:0}.static-reel .reel-track{width:100%;flex-direction:column;gap:50px}.static-reel .reel-slide{width:100%}.static-reel .reel-meta>span:last-child{display:none}.project-index{padding-top:90px;padding-bottom:120px}.index-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:25px;border-bottom:1px solid var(--ink)}.index-heading h3{font-size:24px;font-weight:500;letter-spacing:-.04em}.index-heading .mono{font-size:8px}.project-row{border-bottom:1px solid var(--line);scroll-margin-top:100px}.project-row summary{list-style:none;display:grid;grid-template-columns:55px 1fr 180px 30px;align-items:center;gap:15px;padding:24px 0;cursor:pointer;transition:color .2s}.project-row summary::-webkit-details-marker{display:none}.project-row summary:hover{color:var(--blue)}.project-row-title{font-size:22px;letter-spacing:-.035em}.project-number{color:#76766a;font-size:9px}.project-category{font-size:8px;text-align:right;color:#66665d}.expand-mark{justify-self:end;font-size:22px;font-weight:400;transition:transform .3s}.project-row[open] .expand-mark{transform:rotate(45deg)}.project-detail{padding:0 45px 30px 70px;display:grid;grid-template-columns:1fr 1fr;gap:60px}.project-detail p{font-size:14px;color:#68685f}.project-detail .mono{font-size:9px}.project-links{display:flex;flex-wrap:wrap;gap:25px;margin-top:14px}.about-section{background:#dcded3;padding:100px 0}.about-grid{display:grid;grid-template-columns:.85fr 1fr;gap:120px;align-items:center}.portrait-wrap{transform:rotate(-3deg)}.portrait-frame{background:#b9bda7;position:relative;overflow:hidden;aspect-ratio:4/4.5}.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:50% 25%;mix-blend-mode:multiply}.portrait-stamp{position:absolute;bottom:25px;right:20px;padding:16px 12px;background:var(--paper);transform:rotate(7deg);font-size:9px}.portrait-caption{display:flex;justify-content:space-between;padding-top:15px;font-size:8px}.about-copy h2{font-size:clamp(38px,4.3vw,64px);margin-bottom:35px}.about-copy p{font-size:15px;color:#595e51;margin-bottom:20px;max-width:500px}.skills-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin-top:90px;border-top:1px solid var(--line);padding-top:30px}.skills-grid .mono{font-size:8px}.skills-grid p{margin-top:16px;font-size:12px;color:#595e51}.experience-section{padding-bottom:100px}.experience-row{display:grid;grid-template-columns:230px 1fr 50px;gap:45px;border-top:1px solid var(--line);padding:35px 0}.experience-date{font-size:9px;padding-top:5px;color:#68685f}.experience-row h3{font-size:25px;letter-spacing:-.035em;font-weight:500}.experience-role{font-size:13px;margin-top:5px}.experience-description{font-size:13px;color:#68685f;margin-top:14px;max-width:570px}.experience-arrow{font-size:30px;text-align:right}.education{display:grid;grid-template-columns:230px 1fr 1fr;gap:45px;border-top:1px solid var(--ink);margin-top:55px;padding-top:30px}.education .eyebrow{font-size:8px}.education h3{font-size:17px;font-weight:500;letter-spacing:-.03em}.education p{font-size:12px;color:#68685f;margin:10px 0 12px}.education .mono{font-size:8px}.notes-section{background:#e3dfd4;padding:90px 0 100px}.notes-heading h2{margin-bottom:20px}.notes-heading>p{font-size:13px;color:#68685f}.notes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:50px}.notes-grid>div{border-top:1px solid var(--line);padding-top:22px}.note-status{font-size:8px;color:#68685f}.notes-grid h3{font-size:25px;font-weight:500;letter-spacing:-.04em;margin:22px 0 12px}.notes-grid p{font-size:13px;color:#68685f}.notes-grid .text-link{margin-top:14px}.contact-section{background:var(--blue);color:var(--paper);padding:70px 0 30px}.contact-top{display:flex;justify-content:space-between;margin-bottom:45px}.contact-top .mono{font-size:8px}.contact-title{display:flex;align-items:center;justify-content:space-between}.contact-title h2{font-size:clamp(70px,11vw,170px);line-height:.98;letter-spacing:-.065em}.contact-arrow{font-size:clamp(90px,17vw,240px);line-height:1;transition:transform .4s}.contact-title:hover .contact-arrow{transform:translate(10px,-10px)}.contact-email{display:flex;gap:30px;align-items:center;margin-top:45px}.contact-email>a{font-size:20px;letter-spacing:-.035em;border-bottom:1px solid #ffffff70;padding-bottom:5px}.contact-email button{font-family:var(--mono);font-size:9px;min-height:44px}.contact-email button span{font-size:16px;margin-left:10px}.contact-section footer{display:grid;grid-template-columns:1fr auto 1fr;row-gap:35px;align-items:center;margin-top:90px;padding-top:28px;border-top:1px solid #ffffff40}.contact-section .wordmark>span{color:var(--paper)}.socials{display:flex;gap:24px;font-size:11px}.socials a:hover{opacity:.65}.back-top{text-align:right;font-size:8px}.footer-credit{font-size:8px}.footer-signoff{font-size:8px;grid-column:2/4;text-align:right;color:#d7ddfa}@media(min-width:1600px){.hero h1{font-size:290px}.hero-object{right:7%}.hero-bottom{gap:110px}}@media(max-width:1100px){.page-width{width:calc(100% - 72px)}.site-header{padding-inline:36px}.hero{padding-inline:36px;min-height:850px}.hero h1{font-size:21vw}.hero-object{width:60%;right:-3%;top:150px}.hero-bottom{left:36px;right:36px;gap:30px}.slide-inner{gap:35px;grid-template-columns:1.4fr 1fr}.about-grid{gap:65px}.experience-row,.education{grid-template-columns:170px 1fr 40px;gap:30px}.education{grid-template-columns:170px 1fr 1fr}.socials{gap:15px}}@media(max-width:800px){.page-width{width:calc(100% - 40px)}.site-header{height:70px;padding-inline:20px;gap:22px}.wordmark{font-size:28px}.header-note{font-size:7px}.menu-toggle{display:block;margin-left:auto;font-size:12px;min-height:44px}.site-header nav{display:none;position:absolute;top:70px;left:0;right:0;background:#181a17;padding:25px;flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid #ffffff30}.site-header nav.is-open{display:flex}.site-header nav>a{padding:16px 0;font-size:17px}.site-header nav .nav-contact{padding:16px;margin-top:12px}.hero{height:980px;min-height:0;max-height:none;padding:100px 20px 50px}.hero-topline{font-size:7px}.hero-topline>span:first-child{max-width:170px}.hero h1{font-size:27vw;margin-top:43px;z-index:3}.hero h1>span{margin-top:8px}.hero-object{top:290px;right:0;width:100%;height:420px}.object-caption{right:22px;font-size:7px}.sculpture-hint{font-size:7px;bottom:35px}.motion-toggle{bottom:4px}.hero-bottom{left:20px;right:20px;bottom:55px;grid-template-columns:1fr 1fr;gap:30px}.hero-bottom>p{font-size:25px}.hero-intro{justify-self:end}.hero-intro p,.hero-intro .text-link{font-size:11px}.scroll-cue{display:none}.hero-edge{bottom:20px;font-size:7px}.ticker{height:55px}.ticker span{font-size:23px}.ticker i{margin-inline:25px;font-size:20px}.section-heading{padding-top:75px;padding-bottom:40px}.section-heading>p{font-size:11px}.eyebrow{font-size:8px;margin-bottom:20px}h2{font-size:clamp(40px,7.5vw,60px)}.slide-inner{gap:25px;grid-template-columns:1.2fr 1fr}.project-visual{height:350px}.reel-meta{font-size:7px}.reel-meta>span:nth-child(2){text-align:right}.slide-copy h3{font-size:44px;margin-bottom:18px}.slide-copy p{font-size:12px;margin-bottom:18px}.slide-copy .eyebrow{font-size:7px}.project-stack{font-size:7px;margin-bottom:12px}.slide-copy .text-link{font-size:11px}.visual-label{font-size:7px;left:15px}.project-index{padding-top:65px;padding-bottom:75px}.index-heading h3{font-size:20px}.index-heading .mono{font-size:7px}.project-row summary{grid-template-columns:30px 1fr 120px 20px;gap:8px;padding:20px 0}.project-row-title{font-size:18px}.project-category{font-size:7px}.project-detail{padding:0 28px 25px 38px;gap:25px}.project-detail p{font-size:12px}.about-section{padding-block:70px}.about-grid{gap:40px;grid-template-columns:.8fr 1fr}.about-copy h2{font-size:36px}.about-copy p{font-size:12px}.skills-grid{gap:25px;grid-template-columns:repeat(2,1fr);margin-top:60px}.experience-row{grid-template-columns:125px 1fr 25px;gap:20px;padding:28px 0}.experience-row h3{font-size:20px}.experience-date{font-size:8px}.experience-role,.experience-description{font-size:12px}.education{grid-template-columns:1fr 1fr;gap:25px}.education>.eyebrow{grid-column:1/-1;margin-bottom:0}.experience-section{padding-bottom:70px}.notes-section{padding-block:70px}.notes-grid{gap:25px}.notes-grid h3{font-size:22px}.notes-grid p{font-size:12px}.contact-section{padding-top:50px}.contact-title h2{font-size:12vw}.contact-email>a{font-size:17px}.contact-section footer{grid-template-columns:1fr 1fr;margin-top:70px}.socials{grid-column:1/-1;grid-row:2;flex-wrap:wrap}.back-top{grid-column:2;grid-row:1}.footer-signoff{grid-column:2;font-size:7px}.footer-credit{font-size:7px}}@media(max-width:540px){.hero{height:900px}.hero-object{top:260px;height:375px}.hero-bottom{grid-template-columns:1fr;gap:18px;bottom:52px}.hero-bottom>p{font-size:28px}.hero-intro{justify-self:start;display:flex;align-items:end;gap:35px;max-width:none}.hero-intro p{margin:0}.hero-intro .text-link{white-space:nowrap}.hero-topline>span:last-child{gap:6px;font-size:6px}.section-heading{align-items:start}.section-heading>p{font-size:10px;max-width:112px;padding-top:40px}.section-heading h2{font-size:40px}.slide-inner{grid-template-columns:1fr;gap:25px}.project-visual{height:390px}.slide-copy{padding-bottom:10px}.slide-copy h3{font-size:50px}.slide-copy p{font-size:13px;max-width:none}.slide-copy .eyebrow{font-size:8px;margin-bottom:12px}.project-stack{font-size:8px;max-width:none}.slide-copy .text-link{font-size:12px}.static-reel .reel-track{gap:60px}.project-row summary{grid-template-columns:25px 1fr 20px}.project-category{display:none}.project-row-title{font-size:18px}.project-detail{grid-template-columns:1fr;gap:15px;padding-left:33px}.project-detail .mono{font-size:8px}.index-heading{gap:20px}.index-heading .mono{max-width:100px;text-align:right}.about-grid{grid-template-columns:1fr;gap:50px}.portrait-wrap{width:85%;margin-inline:auto}.about-copy h2{font-size:42px}.about-copy p{font-size:14px}.skills-grid{gap:28px}.skills-grid p{font-size:11px}.experience-row{grid-template-columns:1fr 25px;gap:15px}.experience-date{grid-column:1/-1}.experience-arrow{grid-column:2;grid-row:2}.experience-row h3{font-size:23px}.education{grid-template-columns:1fr}.education>.eyebrow{grid-column:1}.notes-grid{grid-template-columns:1fr;gap:35px}.notes-grid p{font-size:13px}.notes-grid h3{font-size:27px;margin-top:15px}.contact-top>.mono{max-width:120px;text-align:right;font-size:7px}.contact-title h2{font-size:14vw}.contact-arrow{font-size:70px}.contact-email{gap:12px;align-items:start;flex-direction:column;margin-top:30px}.contact-email>a{font-size:18px}.contact-email button{padding-left:0}.footer-signoff{max-width:150px;justify-self:end}.footer-credit{font-size:6px}.socials{gap:20px;font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.portrait-wrap{transform:none}.reel-track{will-change:auto}}.hero-intro p{white-space:pre-line}.project-media-title{font-family:var(--display);font-size:clamp(48px,6vw,90px);max-width:80%;text-align:center;line-height:1;letter-spacing:-.025em}.admin-loading{padding:80px 30px}.hero h1{max-width:100%;overflow-wrap:anywhere}
