:root{--white:#fff;--black:#111;--gray:#6b6b6b;--line:#d5d5d5;--sans:'Manrope',Arial,sans-serif;--display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--mono:'IBM Plex Mono',monospace;--ease:cubic-bezier(.16,1,.3,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--white);color:var(--black);font-family:var(--sans);-webkit-font-smoothing:antialiased}body.dialog-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;border:0;border-radius:0}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid currentColor;outline-offset:6px}img,svg{display:block}img{max-width:100%}h1,h2,h3,p{margin:0}::selection{background:#111;color:#fff}.shell{max-width:1920px;margin-inline:auto;padding-inline:4.4%}.mono{font-family:var(--mono);font-size:10px;font-weight:400;line-height:1.65;letter-spacing:.015em}.section-label{font-size:10px;letter-spacing:.035em}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:10px;left:10px;z-index:100;background:#111;color:#fff;padding:15px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}#scroll-progress{position:fixed;inset:0 0 auto;height:2px;background:#777;transform:scaleX(0);transform-origin:left;z-index:100;mix-blend-mode:difference;pointer-events:none}
.site-header{height:100px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;border-bottom:1px solid var(--line);position:relative;z-index:30}.wordmark{display:flex;align-items:center;gap:13px;font-size:13px;font-weight:800;letter-spacing:-.05em;justify-self:start}.wordmark-symbol{font-family:Arial,sans-serif;font-size:39px;line-height:1;letter-spacing:-.12em;margin-right:4px}#main-nav{display:flex;justify-content:center;gap:28px;font-family:var(--mono);font-size:10px}#main-nav>a{padding:12px 0;position:relative;white-space:nowrap}#main-nav>a>span{font-size:9px;color:#777;margin-left:3px}#main-nav>a:after{position:absolute;content:'';height:1px;background:var(--black);inset:auto 0 6px;transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}#main-nav>a:hover:after{transform:scaleX(1)}.header-note{justify-self:end;font-size:9px}.menu-toggle{display:none;background:transparent;width:44px;height:44px}.menu-toggle span{display:block;width:24px;height:1px;background:currentColor;margin:6px auto;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.hero{padding-top:36px;overflow:hidden}.hero-kicker{display:flex;align-items:center;justify-content:space-between;font-size:9px}.hero-edition{margin-left:5%}.hero-coordinate{color:#777;min-width:96px;text-align:right}.hero-name{display:flex;align-items:baseline;justify-content:space-between;margin-top:38px;font-family:var(--display);font-weight:600;font-size:clamp(130px,25vw,480px);letter-spacing:-.035em;line-height:.82;transform:translateY(var(--hero-shift,0px)) scale(var(--hero-scale,1));transform-origin:center bottom;will-change:transform;white-space:nowrap}.hero-word{display:flex;overflow:hidden;padding-block:.05em .12em;margin-block:-.05em -.12em}.hero-word>span{display:inline-block;animation:character-enter 1.2s var(--ease) both;animation-delay:calc(var(--i)*65ms + 60ms)}.hero-outline{-webkit-text-stroke:1.4px #111;color:transparent;letter-spacing:-.03em}.hero-outline>span{transition:color .5s var(--ease)}.hero-outline:hover>span{color:#111}.hero-baseline{display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:15px;margin-top:25px}.hero-baseline>span:nth-child(2){height:1px;background:var(--line);flex:1}.hero-baseline>span:first-child{margin-left:-3px}.hero-baseline>span:last-child{margin-right:-3px}.hero-caption{display:grid;grid-template-columns:1.25fr 1fr .65fr;align-items:start;gap:25px;padding-block:35px 44px}.hero-discipline{font-size:clamp(30px,3.3vw,56px);font-weight:500;letter-spacing:-.065em;line-height:1.13}.hero-summary{padding-top:4px;font-size:13px;line-height:1.7;font-weight:500}.inline-link{display:inline-flex;justify-content:space-between;align-items:center;gap:32px;padding-block:6px;border-bottom:1px solid #999;font-size:10px;font-weight:500;margin-top:19px}.inline-link>span{font-size:18px;transition:transform .25s var(--ease)}.inline-link:hover>span{transform:translate(3px,-3px)}.hero-explore{justify-self:end;display:flex;align-items:center;flex-direction:column;gap:15px;margin-top:-3px}.hero-grid-mark{display:block;transform:rotate(var(--turn,0deg));transition:transform .7s var(--ease)}.hero-explore svg{width:81px;height:81px;stroke:currentColor;fill:none;stroke-width:4}.hero-explore:hover .hero-grid-mark{transform:rotate(-45deg)!important}.hero-explore>.mono{font-size:8px}.hero-footer{display:flex;justify-content:space-between;align-items:center;padding-block:20px 28px;font-size:8px;color:#656565}.hero-footer>a{display:flex;align-items:center;gap:9px;color:#111}.scroll-line{display:inline-block;width:1px;height:17px;background:#111;position:relative;overflow:hidden}.scroll-line:after{content:'';position:absolute;inset:0;background:#fff;animation:scroll-tick 2s ease-in-out infinite}.hero-footer>span:last-child{color:#111}
.marquee{overflow:hidden;background:#111;color:#fff;padding:23px 0 27px}.marquee-track{display:flex;width:max-content;animation:marquee 38s linear infinite;will-change:transform}.marquee-track>span{white-space:nowrap;font-family:var(--display);font-weight:500;font-size:55px;line-height:1;letter-spacing:-.01em}.marquee-track i{font-style:normal;color:transparent;-webkit-text-stroke:1px #fff}.marquee-track b{font-family:var(--sans);font-weight:400;margin-inline:25px;font-size:47px}
.work{padding-block:103px 95px}.section-heading{display:grid;grid-template-columns:1fr 1.6fr .65fr;align-items:start;gap:20px;margin-bottom:53px}.section-heading>.section-label{padding-top:6px}.section-heading h2{font-family:var(--display);font-size:clamp(60px,6.5vw,110px);font-weight:600;line-height:.92;letter-spacing:-.025em}.outline-text{color:transparent;-webkit-text-stroke:1px #111}.section-note{font-size:11px;line-height:1.75;align-self:end;justify-self:end;padding-bottom:3px}.projects{border-top:1px solid #111}.project{border-bottom:1px solid #111}.project-row{position:relative;isolation:isolate;width:100%;padding:37px 0;display:grid;grid-template-columns:.12fr 1fr .3fr 52px;gap:18px;align-items:center;text-align:left;background:#fff;color:#111;transition:padding .5s var(--ease),color .3s}.project-row:before{content:'';position:absolute;inset:-1px -16px;background:#111;z-index:-1;transform:scaleY(0);transform-origin:bottom;transition:transform .4s var(--ease)}.project-row:hover,.project-row:focus-visible{color:#fff;padding-left:12px;padding-right:12px}.project-row:hover:before,.project-row:focus-visible:before{transform:scaleY(1)}.project-number{align-self:start;margin-top:11px;font-size:10px}.project-title{font-family:var(--display);font-size:clamp(37px,5.3vw,85px);font-weight:500;line-height:.95;letter-spacing:-.025em;z-index:2;white-space:nowrap;transition:transform .5s var(--ease)}.project-row:hover .project-title{transform:translateX(9px)}.project-subtitle{display:block;font-size:8px;margin-top:13px;letter-spacing:.03em;font-weight:400}.project-meta{font-size:8px;line-height:1.9;z-index:2}.project-arrow{font-family:Arial,sans-serif;font-size:52px;font-weight:400;line-height:1;justify-self:end;transition:transform .5s var(--ease)}.project-row:hover .project-arrow{transform:rotate(45deg)}.project-thumb{width:260px;position:absolute;left:53%;top:50%;z-index:4;pointer-events:none;opacity:0;transform:translate(-50%,-40%) rotate(-9deg) scale(.85);clip-path:inset(100% 0 0);transition:opacity .3s,transform .6s var(--ease),clip-path .6s var(--ease);box-shadow:0 10px 30px #0002;border:1px solid #ccc;filter:grayscale(1)}.project-thumb>img{width:100%;height:auto}.project-row:hover .project-thumb,.project-row:focus-visible .project-thumb{opacity:1;transform:translate(calc(-50% + var(--mx,0px)),calc(-50% + var(--my,0px))) rotate(-7deg) scale(1);clip-path:inset(0 0 0)}.work-footnote{display:flex;justify-content:space-between;gap:20px;margin-top:22px;color:#777;font-size:8px}.work-footnote>span:last-child>span{color:#111;font-size:16px;margin-left:10px}
.about{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2.25fr;gap:20px;padding-block:95px 115px}.about-label{display:flex;flex-direction:column;align-items:flex-start;gap:71px}.about-mark{font-family:var(--display);font-size:125px;line-height:1;letter-spacing:-.04em;font-weight:500}.about-main h2{font-family:var(--display);font-size:clamp(65px,7.3vw,130px);line-height:.94;letter-spacing:-.025em;font-weight:600}.about-copy{display:grid;grid-template-columns:1fr 1fr;gap:42px;margin-top:40px;font-size:13px;line-height:1.85;color:#656565}.about-copy>p:first-child{font-size:17px;line-height:1.65;color:#111;letter-spacing:-.035em}.toolkit{margin-top:49px;border-top:1px solid var(--line);padding-top:21px;display:grid;grid-template-columns:1fr 1.25fr;gap:20px}.toolkit>.mono{font-size:9px;padding-top:4px}.toolkit ul{list-style:none;padding:0;margin:0}.toolkit li{font-size:14px;font-weight:500;letter-spacing:-.02em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:10px 0}.toolkit li:first-child{padding-top:0}.toolkit li span{font-family:var(--mono);font-size:8px;color:#777}
.contact{background:#111;color:#fff;padding-top:65px}.contact-top{display:flex;justify-content:space-between;align-items:center}.contact-top .mono{font-size:9px;color:#aaa}.contact-headline{display:flex;align-items:center;justify-content:space-between;margin-top:32px;padding-bottom:28px;gap:35px;border-bottom:1px solid #444}.contact-headline h2{font-family:var(--display);font-size:clamp(100px,20.5vw,370px);font-weight:500;letter-spacing:-.035em;line-height:.9;white-space:nowrap}.contact-period{color:transparent;-webkit-text-stroke:1px white}.contact-headline>svg{width:clamp(70px,13vw,210px);height:auto;stroke:#fff;stroke-width:3;fill:none;transition:transform .65s var(--ease)}.contact-headline:hover>svg{transform:translate(8px,-8px) rotate(45deg)}.contact-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-top:32px}.contact-bottom>div{display:flex;flex-direction:column;gap:16px}.contact-bottom .mono{color:#969696;font-size:8px}#contact-email{font-size:clamp(16px,2vw,31px);font-weight:400;letter-spacing:-.035em;overflow-wrap:anywhere}#contact-email:hover{color:#aaa}#copy-email{display:flex;align-items:center;gap:10px;background:none;color:#fff;padding:12px 0;font-family:var(--mono);font-size:9px;white-space:nowrap}#copy-email svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.2}#copy-email:hover{color:#bbb}.footer{margin-top:83px;padding-block:25px 29px;border-top:1px solid #444;display:grid;grid-template-columns:1fr 1fr 1fr 1fr;align-items:center;gap:20px}.footer-name{font-size:11px;font-weight:700;letter-spacing:-.03em}.footer>.mono{font-size:9px;justify-self:center;color:#aaa}.top-link{font-size:9px;justify-self:end;display:flex;align-items:center;gap:18px}.top-link span{font-size:18px}#motion-toggle{display:flex;align-items:center;gap:7px;justify-self:center;background:none;color:#aaa;padding:12px 0;font-family:var(--mono);font-size:9px}.motion-indicator{height:5px;width:5px;border-radius:50%;background:#fff}[data-motion=off] .motion-indicator{background:#666}
#project-dialog{padding:0;margin:auto;border:1px solid #111;border-radius:0;background:#fff;color:#111;width:calc(100% - 64px);max-width:1350px;max-height:calc(100svh - 64px);overflow:auto}#project-dialog::backdrop{background:#111b;backdrop-filter:blur(4px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;padding:15px 26px;border-bottom:1px solid #111;font-size:9px}.dialog-close{padding:8px 0 8px 15px;display:flex;align-items:center;gap:16px;background:none;font-family:var(--mono);font-size:9px}.dialog-close>span{font-family:Arial,sans-serif;font-size:27px;font-weight:300;line-height:1}.dialog-layout{display:grid;grid-template-columns:1fr 1fr}.dialog-art{display:flex;align-items:center;justify-content:center;background:#f2f2f2;border-right:1px solid #111}.dialog-art img{width:100%;height:auto;filter:grayscale(1)}.dialog-content{padding:43px 40px 48px}#dialog-type{font-size:9px;color:#777}#dialog-title{font-family:var(--display);font-size:clamp(45px,5vw,80px);font-weight:500;letter-spacing:-.025em;line-height:.95;text-transform:uppercase;margin-top:24px}#dialog-description{font-size:14px;line-height:1.85;margin-top:24px;color:#555}#dialog-tech{display:flex;gap:14px;flex-wrap:wrap;margin-top:25px;font-size:10px}.tech-chip+.tech-chip:before{content:'/';margin-right:14px;color:#999}#dialog-note{border-top:1px solid #ccc;padding-top:18px;margin-top:27px;font-size:10px;color:#777;line-height:1.7}.dialog-content .inline-link{margin-top:22px}.noscript-note{padding:25px;font-size:12px;text-align:center}
.motion-ready[data-motion=on] .reveal{opacity:0;transform:translateY(38px);transition:opacity .9s var(--ease),transform 1.05s var(--ease);transition-delay:var(--delay,0ms)}.motion-ready[data-motion=on] .reveal.is-visible{opacity:1;transform:translateY(0)}.hero-caption>.reveal:nth-child(1){--delay:450ms}.hero-caption>.reveal:nth-child(2){--delay:550ms}.hero-caption>.reveal:nth-child(3){--delay:650ms}.project.reveal{transition-duration:.6s!important}.motion-ready[data-motion=on] .about-main>h2.reveal{clip-path:inset(0 0 25% 0);transition:opacity .8s var(--ease),transform .9s var(--ease),clip-path .9s var(--ease)}.motion-ready[data-motion=on] .about-main>h2.reveal.is-visible{clip-path:inset(0)}
@keyframes character-enter{from{transform:translateY(120%) rotate(8deg)}to{transform:translateY(0) rotate(0)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes scroll-tick{0%{transform:translateY(-110%)}70%,100%{transform:translateY(110%)}}
@media(min-width:1920px){.hero-name{font-size:480px}}
@media(max-width:1100px){.site-header{height:88px}.hero{padding-top:29px}.hero-name{margin-top:36px}.hero-caption{grid-template-columns:1.2fr 1fr .5fr;padding-block:29px 37px}.hero-summary{font-size:12px}.hero-explore svg{width:68px;height:68px}.hero-explore>.mono{font-size:7px}.hero-footer{font-size:7px}.work{padding-block:80px}.section-heading{grid-template-columns:.8fr 1.6fr .7fr}.project-row{grid-template-columns:32px 1fr 130px 39px;gap:13px;padding-block:31px}.project-title{font-size:5.1vw}.project-arrow{font-size:41px}.project-meta{font-size:7px}.project-thumb{width:220px}.about{grid-template-columns:.8fr 2.3fr;padding-block:76px 90px}.about-mark{font-size:105px}.about-copy{gap:30px;font-size:12px}.about-copy>p:first-child{font-size:15px}.contact{padding-top:53px}.footer{margin-top:65px}.dialog-content{padding:30px}#dialog-description{font-size:13px}}
@media(max-width:800px){.header-note{display:none}.site-header{grid-template-columns:1fr 1fr}.wordmark{font-size:11px}.wordmark-symbol{font-size:34px}#main-nav{justify-content:flex-end;gap:22px;font-size:9px}.hero-kicker{font-size:7px}.hero-coordinate{min-width:85px}.hero-name{font-size:24.7vw}.hero-baseline{margin-top:20px;font-size:12px}.hero-discipline{font-size:30px}.hero-summary{font-size:10px}.inline-link{font-size:9px;margin-top:15px}.hero-explore svg{width:55px;height:55px}.hero-explore{gap:12px}.hero-caption{gap:20px;padding-block:24px 30px}.hero-footer{font-size:6px;padding-bottom:22px}.marquee{padding:19px 0 22px}.marquee-track>span{font-size:43px}.marquee-track b{font-size:35px;margin-inline:18px}.section-heading{grid-template-columns:.8fr 1.55fr .7fr;gap:15px;margin-bottom:34px}.section-heading h2{font-size:56px}.section-label{font-size:8px}.section-note{font-size:9px}.project-row{grid-template-columns:25px 1fr 95px 29px;padding-block:28px;gap:11px}.project-title{font-size:5.25vw}.project-subtitle{font-size:6px;margin-top:11px}.project-meta{font-size:6px}.project-number{font-size:8px;margin-top:6px}.project-arrow{font-size:34px}.project-thumb{width:190px}.work-footnote{font-size:6px}.about-main h2{font-size:64px}.about-mark{font-size:90px}.about-copy{gap:21px}.about-copy>p:first-child{font-size:13px}.about-copy>p{font-size:11px}.toolkit{margin-top:33px}.toolkit>.mono{font-size:7px}.toolkit li{font-size:12px}.contact-top .mono{font-size:7px}.contact-bottom .mono{font-size:6px}.footer-name{font-size:10px}.footer .mono,#motion-toggle{font-size:7px}.contact-headline{padding-bottom:26px}.dialog-layout{display:block}.dialog-art{border-right:0;border-bottom:1px solid #111;height:240px}.dialog-art img{width:auto;max-height:100%}.dialog-content{padding:32px}#dialog-title{font-size:51px}}
@media(max-width:560px){.shell{padding-inline:6%}.site-header{height:78px;grid-template-columns:1fr 44px}.wordmark{font-size:11px;gap:12px}.wordmark-symbol{font-size:34px}.menu-toggle{display:block}#main-nav{position:absolute;top:77px;left:0;right:0;background:#fff;display:none;padding:24px 6% 30px;border-bottom:1px solid #111;flex-direction:column;gap:0;font-size:14px}#main-nav.is-open{display:flex}#main-nav>a{padding-block:15px;display:flex;justify-content:space-between}#main-nav>a>span{font-size:10px}.hero{padding-top:27px}.hero-kicker{font-size:6px;gap:8px}.hero-edition{margin-left:0;font-size:5px}.hero-coordinate{display:none}.hero-name{font-size:24.5vw;letter-spacing:-.04em;margin-top:34px;line-height:.88}.hero-outline{-webkit-text-stroke-width:.8px}.hero-baseline{margin-top:20px;gap:7px}.hero-caption{grid-template-columns:1fr auto;row-gap:27px;padding-top:25px;padding-bottom:29px}.hero-discipline{font-size:36px;letter-spacing:-.06em;line-height:1.08;grid-column:1}.hero-summary{grid-column:1;grid-row:2;font-size:12px;line-height:1.75}.hero-summary br{display:none}.hero-summary>p{max-width:245px}.hero-summary .inline-link{font-size:10px;margin-top:14px;gap:30px}.hero-explore{grid-column:2;grid-row:1 / span 2;align-self:center;gap:12px;margin-top:6px}.hero-explore svg{width:55px;height:55px;stroke-width:3}.hero-explore>.mono{writing-mode:vertical-rl;font-size:6px;letter-spacing:.06em}.hero-footer{font-size:6px;padding-top:18px;padding-bottom:23px}.hero-footer>span:nth-child(2){display:none}.scroll-line{height:15px}.marquee{padding-block:18px}.marquee-track>span{font-size:38px}.marquee-track b{font-size:31px;margin-inline:17px}.work{padding-block:58px}.section-heading{display:grid;grid-template-columns:1fr auto;gap:23px 15px;margin-bottom:34px}.section-heading>.section-label{grid-column:1/-1;padding:0;font-size:8px}.section-heading h2{font-size:57px;line-height:.93}.section-note{font-size:8px;text-align:right;padding-bottom:2px}.project-row{grid-template-columns:21px 1fr 32px;gap:8px;min-height:132px;padding-block:27px}.project-title{font-size:9vw;white-space:normal;line-height:.98;letter-spacing:-.02em}.project-number{font-size:7px;margin-top:4px}.project-arrow{font-size:32px}.project-subtitle{font-size:6px;margin-top:12px;line-height:1.4}.project-meta{display:none}.project-thumb{width:170px;left:58%;z-index:5}.project-row:before{inset:-1px -10px}.project-row:hover,.project-row:focus-visible{padding-left:0;padding-right:0}.project-row:hover .project-title{transform:translateX(3px)}.work-footnote{margin-top:18px;font-size:5px;gap:10px}.work-footnote>span:last-child{text-align:right}.work-footnote>span:last-child>span{font-size:11px;margin-left:3px}.about{display:block;padding-block:53px 60px}.about-label{flex-direction:row;justify-content:space-between;align-items:center;gap:10px;margin-bottom:30px}.about-label .section-label{font-size:8px}.about-mark{font-size:45px}.about-main h2{font-size:clamp(56px,15.5vw,83px);line-height:.96}.about-copy{display:block;margin-top:28px}.about-copy>p:first-child{font-size:18px;max-width:320px;line-height:1.65}.about-copy>p+p{font-size:12px;line-height:1.9;margin-top:18px;max-width:330px}.toolkit{grid-template-columns:.8fr 1.2fr;margin-top:32px;gap:22px;padding-top:20px}.toolkit>.mono{font-size:7px;line-height:1.8;max-width:105px}.toolkit li{font-size:11px;padding-block:10px}.toolkit li span{font-size:7px}.contact{padding-top:38px}.contact-top .mono{font-size:6px}.contact-headline{gap:15px;margin-top:29px;padding-bottom:23px}.contact-headline h2{font-size:20vw;line-height:.95;letter-spacing:-.03em}.contact-headline>svg{width:13vw;stroke-width:3}.contact-bottom{margin-top:25px;display:block}.contact-bottom>div{gap:11px}.contact-bottom .mono{font-size:6px}#contact-email{font-size:16px;letter-spacing:-.03em}#copy-email{margin-top:16px;font-size:8px;padding-block:9px;gap:8px}#copy-email svg{width:14px;height:14px}.footer{margin-top:40px;display:grid;grid-template-columns:1fr 1fr;gap:13px;padding-block:23px 25px}.footer-name{font-size:11px}.footer>.mono{justify-self:end;font-size:8px}#motion-toggle{justify-self:start;font-size:8px;padding-block:7px}.top-link{font-size:8px!important;gap:10px}.top-link span{font-size:16px}#project-dialog{width:calc(100% - 24px);max-height:calc(100svh - 24px)}.dialog-top{padding:10px 18px;font-size:8px}.dialog-close{font-size:8px;gap:11px}.dialog-close>span{font-size:25px}.dialog-art{height:210px}.dialog-content{padding:27px 23px 31px}#dialog-type{font-size:8px}#dialog-title{font-size:46px;margin-top:18px}#dialog-description{font-size:12px;margin-top:21px}#dialog-note{font-size:9px}#dialog-tech{font-size:9px}}
@media(max-width:360px){.hero-discipline{font-size:31px}.hero-summary>p{max-width:200px;font-size:11px}.hero-explore svg{width:44px;height:44px}.section-heading h2{font-size:49px}.section-note{font-size:7px}.project-title{font-size:9vw}.project-subtitle{font-size:5px}.project-row{min-height:120px}.about-main h2{font-size:51px}.about-copy>p:first-child{font-size:16px}#contact-email{font-size:13px}.contact-top .mono{font-size:5px}}
@media(hover:none),(pointer:coarse){.project-thumb{display:none}.project-row:hover{color:#111;padding-left:0;padding-right:0}.project-row:hover:before{transform:scaleY(0)}.project-row:hover .project-title,.project-row:hover .project-arrow{transform:none}}
@media(prefers-reduced-motion:reduce){html:not([data-motion=on]){scroll-behavior:auto}html:not([data-motion=on]) *,html:not([data-motion=on]) *:before,html:not([data-motion=on]) *:after{animation:none!important;transition:none!important}html:not([data-motion=on]) .reveal{opacity:1!important;transform:none!important;clip-path:none!important}html:not([data-motion=on]) .hero-name{transform:none!important}}
[data-motion=off]{scroll-behavior:auto}[data-motion=off] *,[data-motion=off] *:before,[data-motion=off] *:after{animation:none!important;transition:none!important}[data-motion=off] .reveal{opacity:1!important;transform:none!important;clip-path:none!important}[data-motion=off] .hero-name{transform:none!important}
.motion-ready[data-motion=on] .reveal:focus-within{opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important}
@media(max-width:560px){.section-heading{grid-template-columns:1fr;gap:19px}.section-note{justify-self:start;text-align:left;font-size:10px}.section-note br{display:none}.hero-word{flex-shrink:0}.hero-name{font-size:24vw}.hero-caption .inline-link{min-height:40px}}
.project-links{display:flex;flex-wrap:wrap;gap:6px 24px}.project-links [hidden]{display:none}.github-link{border-bottom:1px solid #aaa;padding-bottom:5px}.contributions{display:grid;grid-template-columns:1fr 1.35fr;gap:9%;padding-block:0 90px}.contribution-intro h2{font-family:var(--display);font-size:64px;line-height:.95;font-weight:600;letter-spacing:-.025em;margin-top:24px}.contribution-intro p{font-size:12px;line-height:1.8;color:#666;margin-top:22px;max-width:260px}.contribution-list{border-top:1px solid #111}.contribution-list>a:not(.profile-link){display:grid;grid-template-columns:1fr 20px;gap:10px;padding:24px 0;border-bottom:1px solid #ccc}.contribution-list .mono{font-size:8px;grid-column:1;color:#666}.contribution-list strong{font-size:16px;font-weight:500;line-height:1.6;grid-column:1;letter-spacing:-.025em}.contribution-list>a>span:last-child{grid-column:2;grid-row:1/3;align-self:center;font-size:22px}.contribution-list>a:hover strong{text-decoration:underline;text-underline-offset:5px}.profile-link{font-size:11px;display:inline-flex;gap:30px;align-items:center;margin-top:23px}.contact-socials{margin-top:25px;font-family:var(--mono);font-size:10px}.contact-socials a{display:inline-flex;gap:25px;align-items:center;border-bottom:1px solid #666;padding-bottom:8px}.contact-socials span{font-size:18px}.contact-socials a:hover{color:#bbb}
@media(max-width:800px){.contributions{gap:5%;padding-bottom:70px}.contribution-intro h2{font-size:52px}.contribution-list strong{font-size:14px}.contribution-intro p{font-size:11px}}
@media(max-width:560px){.contributions{display:block;padding-bottom:55px}.contribution-intro h2{font-size:55px}.contribution-intro p{max-width:300px;margin-top:18px}.contribution-list{margin-top:30px}.contribution-list>a:not(.profile-link){padding:20px 0}.contact-socials{font-size:9px}.project-links{gap:4px 18px}.project-links .inline-link{font-size:10px}.toolkit{grid-template-columns:.65fr 1.35fr}.toolkit li{font-size:10px}}
/* Original application captures; grayscale is presentation-only. */
.personal-line{font-size:11px;line-height:1.7;color:#666;margin-top:15px;padding-left:11px;border-left:1px solid #bbb;max-width:260px}.preview-caption{display:flex;justify-content:space-between;align-items:center;gap:14px;background:#fff;color:#111;padding:10px 12px;font-size:8px;letter-spacing:.05em;border-top:1px solid #bbb;text-align:left}.preview-caption>span{font-size:15px;line-height:1}.project-thumb.preview-shot{width:min(430px,43vw);left:60%;border-color:#777;transform:translate(-50%,-42%) rotate(-3deg) scale(.93);background:#111;box-shadow:0 15px 40px #0003}.preview-shot>img{aspect-ratio:16/10;object-fit:contain;background:#111;filter:grayscale(1)}.project-row:hover .preview-shot,.project-row:focus-visible .preview-shot{transform:translate(calc(-50% + var(--mx,0px)),calc(-50% + var(--my,0px))) rotate(-2deg) scale(1)}.dialog-art{flex-direction:column}.dialog-art>.preview-caption{width:100%;flex-shrink:0}.dialog-art.is-interface{background:#141414;justify-content:center;overflow:hidden}.dialog-art.is-interface>img{width:100%;height:auto;object-fit:contain;filter:grayscale(1)}.dialog-art.is-interface>.preview-caption{margin-top:0}
@media(max-width:800px){.dialog-art.is-interface{height:auto;min-height:0;max-height:none}.dialog-art.is-interface>img{max-height:320px;width:100%;height:auto;object-fit:contain}.project-thumb.preview-shot{width:min(350px,48vw)}.personal-line{font-size:10px}}
@media(max-width:560px){.project-thumb.preview-shot{width:min(320px,78vw);left:52%}.preview-caption{font-size:7px;padding:9px 10px}.personal-line{font-size:11px}.dialog-art.is-interface>img{max-height:250px}}
@media(hover:none),(pointer:coarse){.project-thumb.preview-shot{display:none}}
.project{position:relative}.project:has(.project-row:hover),.project:focus-within{z-index:5}
/* Extra motion preserves the existing geometry, type, and pointer hit areas. */
.motion-line{display:block;overflow:hidden;padding-block:.04em .13em;margin-block:-.04em -.13em}.motion-line>span{display:block;transform-origin:left bottom}.motion-ready[data-motion=on] .reveal .motion-line>span{transform:translateY(112%) rotate(2deg);transition:transform .9s var(--ease);transition-delay:calc(var(--line,0)*110ms)}.motion-ready[data-motion=on] .reveal.is-visible .motion-line>span{transform:translateY(0) rotate(0)}.motion-ready[data-motion=on] .reveal:focus-within .motion-line>span{transform:none!important;transition:none!important}.motion-ready[data-motion=on] .project{border-bottom-color:transparent}.motion-ready[data-motion=on] .project:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:1px;background:#111;transform:scaleX(0);transform-origin:left;transition:transform .95s var(--ease);pointer-events:none}.motion-ready[data-motion=on] .project.is-visible:after,.motion-ready[data-motion=on] .project:focus-within:after{transform:scaleX(1)}
.magnetic-icon{translate:0 0}[data-motion=on] .magnetic-icon{translate:var(--mag-x,0px) var(--mag-y,0px);transition:translate .35s cubic-bezier(.16,1.35,.3,1),transform .45s var(--ease)}.project-thumb{--preview-angle:-7deg}.project-thumb.preview-shot{--preview-angle:-2deg}[data-motion=on] .project-row:is(:hover,:focus-visible) .project-thumb{transform:translate(calc(-50% + var(--mx,0px)),calc(-50% + var(--my,0px))) perspective(850px) rotateX(var(--preview-rx,0deg)) rotateY(var(--preview-ry,0deg)) rotateZ(var(--preview-angle)) scale(1)}
[data-motion=off] .motion-line>span,[data-motion=off] .magnetic-icon{transform:none!important;translate:0 0!important;transition:none!important}
@media(prefers-reduced-motion:reduce){html:not([data-motion=on]) .motion-line>span,html:not([data-motion=on]) .magnetic-icon{transform:none!important;translate:0 0!important;transition:none!important}}
@media(hover:none),(pointer:coarse){.magnetic-icon{translate:0 0!important}}
.project-row{z-index:1}.motion-ready[data-motion=on] .project:after{z-index:0}
