:root{--green:#00ff00;--purple:#d500ee;--mono:'VT323','Courier New',monospace;--display:'Syne','Arial Black',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--green);color:var(--purple);font-family:'Courier New',monospace;font-size:16px}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid currentColor;outline-offset:5px}::selection{background:var(--purple);color:var(--green)}.skip{position:fixed;top:-100px;left:20px;z-index:10;background:#000;color:#fff;padding:15px}.skip:focus{top:10px}.sidebar{position:fixed;inset:0 auto 0 0;width:268px;background:var(--purple);color:var(--green);padding:43px 32px;display:flex;flex-direction:column}.identity{font-family:var(--mono);font-size:69px;line-height:.82;letter-spacing:-2px;align-self:flex-start}.identity>span{display:block}.cursor{animation:blink 1.4s step-end infinite}.main-nav{display:flex;flex-direction:column;align-items:flex-start;gap:7px;margin-top:88px;font:32px/1.25 var(--mono)}.main-nav a{position:relative}.main-nav a:before{content:'>';position:absolute;left:-21px;opacity:0}.main-nav a:hover:before,.main-nav a[aria-current=page]:before{opacity:1}.main-nav a:hover{transform:translateX(3px)}.socials{display:flex;gap:17px;margin-top:31px;color:inherit}.socials a{display:grid;place-items:center;width:28px;height:30px}.socials svg{width:22px;height:22px}.socials a:hover{color:var(--green)}.domain{margin-top:auto;font:19px var(--mono);padding-top:70px}main{margin-left:268px;padding:33px 50px 22px;min-height:100svh;display:flex;flex-direction:column}.topbar{display:flex;justify-content:space-between;gap:24px;align-items:center;font:21px var(--mono)}.languages{display:flex;gap:17px}.languages button{font:23px var(--mono);border:0;background:none;padding:4px 3px}.languages button[aria-pressed=true]{background:var(--purple);color:var(--green);padding:4px 7px}.languages button:hover{text-decoration:underline}#view{flex:1}h1{font:800 clamp(72px,9.2vw,150px)/.9 var(--display);letter-spacing:-.075em;margin:68px 0 56px;overflow-wrap:anywhere}.heading-wrap{display:flex;justify-content:space-between;align-items:flex-end}.count{font:24px var(--mono);margin-bottom:60px}.table-head{display:grid;grid-template-columns:1fr 95px 90px 27px;gap:14px;border-bottom:2px solid var(--purple);padding:0 0 16px;font:20px var(--mono)}.work{border-bottom:1px solid var(--purple)}.work summary{list-style:none;display:grid;grid-template-columns:1fr 95px 90px 27px;gap:14px;align-items:center;padding:29px 0;cursor:pointer}.work summary::-webkit-details-marker{display:none}.work-name{font:700 clamp(24px,3vw,43px)/1.12 var(--display);letter-spacing:-.045em;overflow-wrap:anywhere}.work summary:hover .work-name{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}.meta{font:22px var(--mono)}.expand{font:30px var(--mono)}.work[open] .expand{transform:rotate(45deg)}.work-body{padding:8px 0 35px}.curatorial{max-width:650px;font:17px/1.7 'Courier New',monospace;white-space:pre-line}.credit{font:20px var(--mono);margin:20px 0 26px}.video{width:100%;aspect-ratio:16/9;border:0;background:#111;display:block}.video-missing{aspect-ratio:16/9;background:var(--purple);color:var(--green);display:grid;place-content:center;text-align:center;font:24px var(--mono);padding:30px}.empty{border-top:2px solid var(--purple);padding:29px 0;max-width:800px;font:24px/1.4 var(--mono)}.empty small{display:block;font:16px/1.7 'Courier New',monospace;max-width:530px;margin-top:20px}.cv-grid{border-top:2px solid var(--purple);display:grid;grid-template-columns:160px 1fr;gap:38px 24px;padding:30px 0;line-height:1.7}.cv-grid dt{font:24px var(--mono)}.cv-grid dd{margin:0;white-space:pre-line}.exhibition{display:grid;grid-template-columns:100px 1fr;border-top:1px solid var(--purple);padding:28px 0;gap:25px}.exhibition h2{margin:0 0 15px;font:700 32px var(--display)}.contact-line{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--purple);padding:25px 0;align-items:center}.contact-line a,.email-button{font:700 clamp(25px,4vw,48px) var(--display);letter-spacing:-.05em}.contact-line a:hover{text-decoration:underline}.email-button{background:none;border:0;padding:0;text-align:left}.contact-note{max-width:540px;font-size:14px;line-height:1.7;margin-top:20px}.pending{font:20px var(--mono)}#email-result{overflow-wrap:anywhere;font:24px var(--mono);padding:20px 0}footer{display:flex;justify-content:space-between;gap:20px;font:18px var(--mono);margin-top:100px;padding-top:18px;border-top:1px solid var(--purple)}@keyframes blink{50%{opacity:0}}@media(min-width:1500px){main{padding-right:6vw;padding-left:6vw}.sidebar{width:300px}main{margin-left:300px}}@media(max-width:900px){.sidebar{width:205px;padding:35px 25px}.identity{font-size:58px}.main-nav{font-size:28px}main{margin-left:205px;padding:28px}.table-head,.work summary{grid-template-columns:1fr 60px 60px 18px;gap:10px}.meta{font-size:20px}h1{margin-top:65px}.languages{gap:9px}}@media(max-width:620px){.sidebar{position:relative;width:100%;padding:24px;display:grid;grid-template-columns:1fr auto;gap:20px}.identity{font-size:49px}.main-nav{grid-column:1/-1;grid-row:2;flex-direction:row;flex-wrap:wrap;gap:10px 24px;margin:0;font-size:25px}.main-nav a:before{display:none}.main-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:5px}.socials{margin:0;align-self:start;gap:10px}.domain{display:none}main{margin:0;padding:22px;min-height:calc(100svh - 190px)}.topbar{font-size:18px;gap:10px}.languages{gap:8px}h1{font-size:clamp(56px,15vw,90px);margin:53px 0 40px}.count{margin-bottom:43px;font-size:20px}.table-head{font-size:18px;grid-template-columns:1fr 45px 50px 15px;gap:8px}.work summary{grid-template-columns:1fr 45px 50px 15px;gap:8px;padding:23px 0}.work-name{font-size:25px}.meta{font-size:18px}.cv-grid{grid-template-columns:1fr;gap:12px}.cv-grid dd{margin-bottom:22px}.contact-line{align-items:flex-start;flex-direction:column;gap:10px}.exhibition{grid-template-columns:60px 1fr;gap:12px}footer{margin-top:70px;font-size:16px}.curatorial{font-size:16px}.contact-line a{overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cursor{animation:none}*{transition:none!important}}
/* Sidebar controls stay reachable while the work scrolls. */
.sidebar{overflow-y:auto}.sidebar .languages{margin-top:28px;gap:14px;flex-wrap:wrap}.sidebar .languages button[aria-pressed=true]{background:var(--green);color:var(--purple)}.sidebar .socials{margin-top:12px}.main-nav{font-size:29px}.main-nav a{overflow-wrap:anywhere}.video-link{display:inline-block;margin-top:15px;font:21px var(--mono);text-decoration:underline}.contact-form{max-width:680px;border-top:1px solid var(--purple);padding-top:25px}.contact-form h2{font:700 36px var(--display);margin:0 0 26px}.contact-form label{display:block;font:23px var(--mono);margin:20px 0 8px}.contact-form input,.contact-form textarea{display:block;width:100%;border:1px solid var(--purple);border-radius:0;background:transparent;color:var(--purple);font:16px/1.6 'Courier New',monospace;padding:12px}.contact-form textarea{min-height:150px;resize:vertical}.contact-form :focus-visible{outline:2px solid var(--purple);outline-offset:3px}.contact-form button{border:1px solid var(--purple);background:var(--purple);color:var(--green);font:24px var(--mono);padding:12px 20px;margin-top:20px}.contact-form button:disabled{cursor:not-allowed;opacity:.65}.contact-form .trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-status{font:18px/1.5 var(--mono)}.challenge{margin-top:20px;min-height:0}
@media(max-width:620px){.sidebar{position:sticky;top:0;z-index:5;overflow:visible;padding:18px 22px;grid-template-columns:1fr auto;gap:12px}.sidebar .languages{grid-column:2;grid-row:1;margin:0;gap:10px;align-self:start}.sidebar .socials{grid-column:2;grid-row:1;align-self:end;justify-self:end;margin:0}.main-nav{font-size:23px;gap:8px 20px}.identity{font-size:47px}.sidebar .languages button{font-size:21px}main{min-height:calc(100svh - 150px)}.work{scroll-margin-top:170px}}
@media(min-width:621px) and (max-height:650px){.main-nav{margin-top:35px}.domain{padding-top:30px}}
.video-status{font:18px/1.5 var(--mono);margin:12px 0}.video-status:empty{display:none}.video-retry{background:transparent;border:1px solid currentColor;padding:6px 12px;margin:10px 15px 0 0;font:20px var(--mono)}.video-retry:hover{background:var(--purple);color:var(--green)}
