@font-face{font-family:Space Grotesk;src:url('assets/space-grotesk.woff2') format('woff2');font-weight:300 700;font-display:swap}@font-face{font-family:DM Sans;src:url('assets/dm-sans.woff2') format('woff2');font-weight:100 1000;font-display:swap}
:root{--bg:#141414;--text:#F3F3EF;--muted:#AAA;--lime:#C2FF59;--line:#393939;--pad:5vw;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--bg);color:var(--text);font-family:DM Sans,Arial,sans-serif;font-size:1rem;line-height:1.6}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:none;border:0}button:focus-visible,a:focus-visible{outline:2px solid var(--lime);outline-offset:6px}button:hover,a:hover{color:var(--lime)}img{display:block;max-width:100%}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:Space Grotesk,Arial,sans-serif;font-weight:500;line-height:1.08}p+p{margin-top:1.5rem}.eyebrow{font-size:.8125rem;letter-spacing:.12em;line-height:1.5}.header{display:flex;align-items:center;gap:3rem;padding:2rem var(--pad)}.wordmark{font-family:Space Grotesk,Arial,sans-serif;font-weight:700;font-size:1.2rem;line-height:.95;letter-spacing:-.03em}.role{font-size:.75rem;letter-spacing:.08em;color:var(--muted);line-height:1.3}nav{display:flex;gap:2rem;align-items:center;margin-left:auto;font-size:.9375rem}#motion{border:1px solid var(--line);border-radius:99px;padding:.5rem 1rem;font-size:.875rem;min-width:9rem}.hero{padding:4.5rem var(--pad) 6rem}.spread{display:flex;justify-content:space-between;color:var(--muted)}h1{margin:3.8rem 0 3.5rem;font-size:clamp(4rem,10.8vw,12rem);letter-spacing:-.075em;line-height:1.02}h1>span{display:block}.hero-second{color:var(--lime);margin-left:8%;position:relative;white-space:nowrap}.asterisk{font-family:Arial,sans-serif;font-size:.72em;display:inline-block;vertical-align:middle;line-height:1;margin-left:.13em;animation:rotate 30s linear infinite}.hero-intro{border-top:1px solid var(--line);padding-top:1.5rem;display:grid;grid-template-columns:1fr 1.8fr auto;gap:2rem;align-items:start}.hero-intro p{margin:0}.hero-intro p:first-child{font-size:1.3rem}.hero-intro p:nth-child(2){color:var(--muted)}.pill{display:inline-flex;justify-content:center;align-items:center;gap:.5rem;border:1px solid var(--text);border-radius:99px;padding:.8rem 1.5rem;font-size:.9375rem;line-height:1.3}.pill:hover{background:var(--lime);border-color:var(--lime);color:var(--bg)}.solid{background:var(--lime);color:var(--bg);border-color:var(--lime)}.solid:hover{background:var(--text);border-color:var(--text);color:var(--bg)}.section{padding:4rem var(--pad) 7rem}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;border-top:1px solid var(--line);padding-top:2rem;margin-bottom:3rem}.section-heading h2{font-size:clamp(2.5rem,5.3vw,5.5rem);letter-spacing:-.06em}.section-heading .eyebrow{color:var(--muted);padding-bottom:.5rem}.filters{display:flex;gap:.7rem;flex-wrap:wrap;margin-bottom:3rem}.filters button{border:1px solid var(--line);border-radius:99px;padding:.65rem 1.2rem;display:flex;gap:.6rem;align-items:center}.filters button.active{background:var(--lime);border-color:var(--lime);color:var(--bg)}.filters small{font-size:.75rem}.filters button span{font-size:.75rem;opacity:.65}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3.5rem 2rem}.project.featured{grid-column:1/-1}.card-media{display:block;width:100%;padding:0;position:relative;overflow:hidden;background:#090909;aspect-ratio:3/2}.card-media>img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.card-media:hover>img{transform:scale(1.025)}.featured .card-media>img{object-position:35% 50%}.project.portrait .card-media>img,.project.artwork .card-media>img{object-fit:contain}.card-media img.project-logo{position:absolute;width:22%;height:auto;max-height:60%;object-fit:contain;left:4%;bottom:6%;transform:none}.card-media .play-label{position:absolute;bottom:1rem;right:1rem;background:var(--bg);padding:.5rem 1rem;border-radius:99px;font-size:.875rem}.status{position:absolute;top:1rem;left:1rem;background:var(--lime);color:var(--bg);border-radius:99px;padding:.4rem .85rem;font-size:.875rem}.card-meta{display:flex;justify-content:space-between;align-items:start;gap:1rem;margin-top:1.2rem}.card-meta .eyebrow{color:var(--muted);font-size:.75rem}.card-meta h3{font-size:clamp(1.4rem,2.3vw,2.7rem);letter-spacing:-.045em;margin-top:.4rem}.card-meta h3 span{font-family:DM Sans,Arial,sans-serif;font-size:.7em;color:var(--muted);display:inline-block;margin-left:.5rem}.text-button{white-space:nowrap;padding:0;border-bottom:1px solid var(--line);font-size:.9375rem;line-height:1.8}.strip-wrap{padding:3rem 0 5rem;overflow:hidden}.strip{background:var(--lime);color:var(--bg);transform:rotate(-2deg);width:104%;margin-left:-2%;overflow:hidden;padding:1.1rem 0}.strip-track{display:flex;width:max-content;animation:marquee 38s linear infinite}.strip-group{white-space:nowrap;font-family:Space Grotesk,Arial,sans-serif;font-size:clamp(2.5rem,5vw,5rem);font-weight:600;letter-spacing:-.05em;line-height:1.15}.about-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:8%}.about-statement{font-family:Space Grotesk,Arial,sans-serif;font-size:clamp(3rem,5.5vw,6rem);line-height:1.1;letter-spacing:-.055em}.about-statement span{color:var(--lime)}.bio{color:var(--muted);font-size:1.125rem}.experience{margin-top:6rem;display:grid;grid-template-columns:1fr 2fr;gap:5%}.experience>h3,.skills h3{font-size:2rem;letter-spacing:-.04em}.experience-list article{border-top:1px solid var(--line);padding:1.8rem 0;display:grid;grid-template-columns:1fr 1.5fr;gap:2rem}.experience-list h4{font-size:1.25rem;margin-bottom:.7rem}.experience-list p{color:var(--muted)}.experience-list>article:last-child{border-bottom:1px solid var(--line)}.skills{display:grid;grid-template-columns:1fr 2fr;gap:5%;margin-top:4rem}.skills ul{display:flex;flex-wrap:wrap;gap:.8rem;list-style:none;margin:0;padding:0}.skills li{border:1px solid var(--line);border-radius:99px;padding:.7rem 1.25rem}.contact{padding-bottom:7rem}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:5%;align-items:center}.contact-grid h3{font-size:clamp(3rem,6.2vw,7rem);letter-spacing:-.06em}.contact-grid h3 span{color:var(--lime)}.contact-grid>div>p:first-child{color:var(--muted);font-size:1.25rem}.email{display:inline-block;font-size:clamp(1rem,1.6vw,1.75rem);margin:1rem 0 1.8rem;overflow-wrap:anywhere}.contact-actions{display:flex;flex-wrap:wrap;gap:1rem}.copy-status{height:1.6em;color:var(--lime);font-size:.9375rem;margin-top:.75rem}footer{background:var(--lime);color:var(--bg);padding:4rem var(--pad) 2rem}.footer-title{font-family:Space Grotesk,Arial,sans-serif;font-size:clamp(5rem,16.7vw,19rem);font-weight:600;line-height:.86;letter-spacing:-.075em}.footer-bottom{display:flex;justify-content:space-between;gap:2rem;border-top:1px solid #14141455;margin-top:4rem;padding-top:1.5rem;font-size:.9375rem}footer a:hover{color:var(--bg);text-decoration:underline}.skip{position:fixed;top:-5rem;left:1rem;background:var(--lime);color:var(--bg);padding:1rem;z-index:20}.skip:focus{top:1rem}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}
dialog{border:1px solid var(--line);background:var(--bg);color:var(--text);padding:2rem;width:min(1200px,94vw);max-height:92dvh;overscroll-behavior:contain}dialog::backdrop{background:#000d}.dialog-toolbar,.lightbox-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem}.dialog-toolbar .eyebrow{color:var(--muted)}.detail-cover{width:100%;max-height:65vh;object-fit:contain;background:#090909}.detail-title{font-size:clamp(2rem,5vw,4rem);letter-spacing:-.05em;margin:2rem 0 1rem}.detail-type{color:var(--lime);font-size:.875rem;margin-top:.7rem}.detail-info{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin:2rem 0 3rem}.detail-info h3{font-size:1.25rem;margin-bottom:1rem}.detail-info p{color:var(--muted)}.detail-info .pill{margin-top:1.5rem}.detail-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;margin-top:1.5rem}.gallery-intro{color:var(--muted);margin-top:2rem}.gallery-item button{display:block;width:100%;padding:0;background:#090909}.gallery-item img{width:100%;height:auto;max-height:65vh;object-fit:contain}.gallery-item figcaption{font-size:.9375rem;color:var(--muted);margin-top:.7rem}.gallery-item{margin:0}.detail-bottom{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);margin-top:3rem;padding-top:2rem}.detail-video{display:block;max-width:100%;max-height:68dvh;width:100%;background:#000;margin:2rem auto 0}.detail-video.portrait-video{width:auto}.detail-status{display:inline-block;background:var(--lime);color:var(--bg);border-radius:99px;padding:.3rem .8rem;margin:.75rem 0}#lightbox{width:min(1400px,96vw);height:94dvh;max-height:94dvh;overflow:hidden;display:none;grid-template-rows:auto 1fr auto}#lightbox[open]{display:grid}#lightbox figure{margin:0;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem}#lightbox-image{max-height:100%;min-height:0;object-fit:contain}#lightbox-caption{flex-shrink:0;font-size:.9375rem;text-align:center;color:var(--muted)}.lightbox-controls{display:flex;justify-content:space-between;gap:1rem;margin-top:1rem}.motion-paused .asterisk,.motion-paused .strip-track{animation-play-state:paused}.motion-paused html{scroll-behavior:auto}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes marquee{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.asterisk,.strip-track{animation-play-state:paused}.card-media>img{transition:none}.motion-enabled .asterisk,.motion-enabled .strip-track{animation-play-state:running}}
@media(max-width:800px){.header{gap:1.5rem;padding-top:1.5rem}.role{display:none}nav{gap:1rem}#motion{min-width:0;padding:.5rem .7rem;font-size:.8125rem}.hero{padding-top:3rem;padding-bottom:3rem}h1{font-size:clamp(3.3rem,10.6vw,7rem);margin:3rem 0;letter-spacing:-.065em}.hero-second{margin-left:3%}.hero-intro{grid-template-columns:1fr 2fr;gap:1rem}.hero-intro .pill{grid-column:2;justify-self:start}.section{padding-top:3rem;padding-bottom:4rem}.section-heading{margin-bottom:2rem}.section-heading .eyebrow{font-size:.75rem}.project-grid{gap:2.5rem 1.2rem}.card-meta{display:block}.card-meta .text-button{margin-top:.7rem}.card-meta h3 span{display:block;margin:.5rem 0 0}.about-grid{gap:6%}.bio{font-size:1rem}.experience,.skills{grid-template-columns:1fr;gap:2rem;margin-top:3rem}.contact-grid{grid-template-columns:1fr;gap:2rem}.contact-grid h3{font-size:4.5rem}.email{font-size:1.25rem}.detail-info{gap:2rem}.footer-bottom span:nth-child(2){display:none}}
@media(max-width:540px){.header{align-items:start;gap:.5rem}.wordmark{font-size:1rem}nav{gap:.7rem;flex-wrap:wrap;justify-content:flex-end;max-width:75%;font-size:.875rem}#motion{flex-basis:auto}.hero .eyebrow{font-size:.6875rem;letter-spacing:.07em}.hero-second{margin-left:0}.asterisk{margin-left:.1em;font-size:.6em}.hero-intro{grid-template-columns:1fr;gap:1rem}.hero-intro .pill{grid-column:1;margin-top:.5rem}.desktop-break{display:none}.section-heading{align-items:start;flex-direction:column;gap:1rem}.filters{gap:.5rem;margin-bottom:2rem}.filters button{padding:.6rem .85rem;font-size:.875rem}.project-grid{grid-template-columns:1fr;gap:2.6rem}.card-meta{display:flex}.card-meta h3{font-size:1.5rem}.card-meta .text-button{font-size:.875rem}.about-grid{grid-template-columns:1fr;gap:2rem}.about-statement{font-size:3.5rem}.experience-list article{grid-template-columns:1fr;gap:1.5rem}.skills li{font-size:.9375rem;padding:.6rem 1rem}.contact-grid h3{font-size:3.5rem}.footer-bottom{font-size:.8125rem;margin-top:2.5rem;gap:1rem}dialog{padding:1rem}.dialog-toolbar{margin-bottom:1rem}.dialog-toolbar .pill,.lightbox-toolbar .pill{padding:.65rem 1rem}.detail-info,.detail-gallery{grid-template-columns:1fr;gap:1.5rem}.detail-title{margin-top:1.5rem}.lightbox-controls .pill{padding:.65rem 1rem;font-size:.875rem}}
@media(max-width:540px){h1{font-size:10.5vw}}

/* Cover refinements: preserve original artwork and logo. */
.featured .card-media>img{object-position:0% 50%}
.card-media img.project-logo{left:50%;top:50%;bottom:auto;width:32%;max-height:70%;transform:translate(-50%,-50%);mix-blend-mode:screen}
.card-media:hover img.project-logo{transform:translate(-50%,-50%)}

.card-media img.project-logo{mix-blend-mode:normal}
