*{box-sizing:border-box}html{color-scheme:dark;scroll-behavior:smooth}body{margin:0;background:#101010;color:#c8c8c3;font:13px Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}a:hover,button:hover{color:#fff}a:focus-visible,button:focus-visible,#track:focus-visible{outline:1px solid #eee;outline-offset:7px}button:disabled{opacity:.2;cursor:default}[hidden]{display:none!important}header{height:100px;padding:0 3.2vw;display:flex;align-items:center;justify-content:space-between;gap:25px}.identity{display:flex;gap:34px;align-items:center}.identity small{font-size:11px;color:#92928d}nav{display:flex;gap:28px;align-items:center;font-size:12px}nav button{padding:0}.skip{position:fixed;top:-100px;z-index:20;background:#fff;color:#000;padding:15px}.skip:focus{top:10px}#home{height:calc(100svh - 100px);min-height:500px;display:flex;flex-direction:column;justify-content:center}#track{display:flex;align-items:center;gap:3.2vw;overflow-x:auto;padding:25px 11vw 20px;scroll-snap-type:none;scrollbar-width:none;overscroll-behavior-x:contain;flex:1;min-height:0}#track::-webkit-scrollbar{display:none}.project{flex:0 0 65vw;scroll-snap-align:center;display:block}.project .cover{width:100%;height:min(54vh,38vw);object-fit:cover;display:block;background:#191919}.project figcaption{display:flex;justify-content:space-between;gap:20px;margin-top:20px;font-size:12px}.project figure{margin:0}.project small{font-size:10px;color:#8c8c87}.project .open{opacity:0;margin-left:15px}.project:hover .open,.project:focus-visible .open{opacity:1}.controls{padding:20px 3.2vw 25px}.progress{height:1px;background:#303030;margin-bottom:20px}.progress span{display:block;width:10%;height:1px;background:#ccc;transition:width .2s}.control-row{display:flex;align-items:center;justify-content:space-between;font:10px monospace;color:#92928d}.control-row button{font:24px Arial;padding:8px 15px}.control-row #counter{margin-left:auto;margin-right:40px}.hint{text-transform:uppercase;letter-spacing:.5px}#detail{padding:35px 11vw 70px}.back{font-size:12px;color:#aaa}.project-heading{display:flex;justify-content:space-between;gap:25px;align-items:end;margin:45px 0 32px}h1{font-size:clamp(30px,4vw,58px);font-weight:400;letter-spacing:-1.5px;margin:0}.project-heading p{font-size:12px;color:#999;max-width:280px;line-height:1.6;margin:0}.detail-cover{width:100%;max-height:75vh;object-fit:contain;background:#141414;display:block}.gallery{columns:2;column-gap:28px;margin:28px 0 60px}.gallery button{display:block;width:100%;padding:0;background:#151515;break-inside:avoid;margin:0 0 28px}.gallery img{width:100%;height:auto;display:block}.videos{display:grid;gap:36px;margin:0 0 32px}.videos:empty,.gallery:empty{display:none}.video{aspect-ratio:16/9;background:#191919;display:grid;place-items:center}.video button{border:1px solid #666;padding:16px 24px}.video iframe{width:100%;height:100%;border:0}.video-link{display:inline-block;margin-top:12px;color:#999;font-size:12px}.detail-footer{padding-top:30px;border-top:1px solid #333;display:flex;justify-content:space-between;gap:30px}.detail-footer a:last-child{text-align:right}.detail-footer small{display:block;font-size:10px;color:#888;margin-bottom:12px}.detail-footer span{font-size:20px}#about{padding:12vh 14vw}#about small{color:#888;font:10px monospace}#about h1{margin:35px 0 20px}#about p{font-size:20px;color:#aaa;line-height:1.7}#about a{display:inline-block;margin-top:40px}dialog{background:#141414;color:#ccc;border:1px solid #333;padding:35px;max-height:88svh;width:min(720px,90vw)}dialog::backdrop{background:#000c}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.dialog-head button,#close-lightbox{padding:10px}.index-item{display:flex;gap:25px;padding:16px 0;border-top:1px solid #333;font-size:22px}.index-item small{font:10px monospace;color:#888;padding-top:7px}#lightbox{width:95vw;height:95svh;max-width:none;max-height:none;padding:50px 20px 20px;border:0}#lightbox img{width:100%;height:100%;object-fit:contain}#close-lightbox{position:absolute;right:20px;top:10px}body:has(dialog[open]){overflow:hidden}@media(max-width:700px){header{height:100px;padding:22px 6vw;align-items:flex-start}.identity{display:block}.identity small{display:block;font-size:9px;max-width:135px;line-height:1.5;margin-top:8px}nav{gap:16px;font-size:11px;flex-wrap:wrap;justify-content:end;max-width:150px}nav a:first-child{display:none}#home{min-height:470px}#track{gap:5vw;padding-left:7vw;padding-right:7vw}.project{flex-basis:86vw}.project .cover{height:48svh;object-fit:contain;background:#111}.project figcaption{font-size:12px;margin-top:18px}.project .open{display:none}.controls{padding:15px 6vw 24px}.hint{max-width:125px;line-height:1.6;font-size:9px}.control-row #counter{margin-right:10px}.control-row button{padding:8px 10px}#detail{padding:25px 6vw 50px}.project-heading{display:block;margin:40px 0 25px}.project-heading p{margin-top:20px}.gallery{columns:1;margin-top:20px}.gallery button{margin-bottom:20px}.detail-footer span{font-size:15px}.video button{font-size:12px;padding:12px}#about{padding:10vh 7vw}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.progress span{transition:none}}

@media(max-width:700px){.project .cover{height:auto;aspect-ratio:16/10}.project figcaption{margin-top:20px}}
.bio{max-width:680px}.bio p{font-size:17px!important;line-height:1.8!important}.email{font-size:18px}#about .role{font-size:22px;color:#ddd}#about a{margin-top:25px}@media(max-width:700px){nav{max-width:180px;gap:15px}.bio p{font-size:15px!important}}


.image-stage,.detail-cover-stage{position:relative;overflow:hidden;background:#101010;isolation:isolate}
.image-stage .cover,.detail-cover-stage .detail-cover{transform:scale(1);transform-origin:center;transition:transform 1200ms cubic-bezier(.4,0,.2,1);backface-visibility:hidden}
.project:hover .cover,.project:focus-visible .cover,.detail-cover-stage:hover .detail-cover,.detail-cover-stage:focus-visible .detail-cover{transform:scale(1.035)}
.project:hover figcaption{color:#fff}
.gallery button{overflow:hidden}.gallery img{transition:transform 1200ms cubic-bezier(.4,0,.2,1)}
.gallery button:hover img,.gallery button:focus-visible img{transform:scale(1.025)}
.detail-cover{height:auto;max-height:none;background:transparent}
#main:focus{outline:none}
@media(prefers-reduced-motion:reduce){.image-stage .cover,.detail-cover,.gallery img{transition:none!important}}
