@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;700;900&display=swap');
:root{--lime:#c8ff31;--bg:#0a0a0a;--ink:#f0f0e9;--muted:#999b93;--line:#2b2d27;--font:'Space Grotesk','Noto Sans SC',sans-serif;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:16px;overflow-x:hidden}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{outline:2px solid var(--lime);outline-offset:6px}::selection{background:var(--lime);color:var(--bg)}.skip{position:fixed;top:-80px;left:20px;background:var(--lime);color:#000;padding:15px;z-index:99}.skip:focus{top:10px}header{height:92px;margin:0 4vw;display:flex;align-items:center;gap:40px;border-bottom:1px solid var(--line);position:relative;z-index:5}.brand{font-size:42px;font-weight:700;letter-spacing:-5px;line-height:1}.brand span{color:var(--lime);letter-spacing:0}.header-note{font-size:12px;color:var(--muted);letter-spacing:1px}nav{margin-left:auto;display:flex;align-items:center;gap:32px;font-size:14px}nav a:hover{color:var(--lime)}nav button{border:1px solid #4a4b44;background:transparent;border-radius:30px;padding:11px 17px}nav button span{color:var(--lime);margin-left:16px}.hero{min-height:770px;height:calc(100svh - 92px);max-height:1100px;padding:35px 4vw 32px;position:relative;isolation:isolate;display:flex;flex-direction:column}.hero-top{display:flex;justify-content:space-between;font-size:12px;letter-spacing:1.4px;color:var(--muted)}.hero-title{position:relative;z-index:2;margin-top:35px;display:flex;align-items:flex-end;gap:40px;pointer-events:none}h1{font-size:clamp(130px,22.5vw,370px);line-height:.88;letter-spacing:-.08em;margin:0;font-weight:700}.star{font-size:.32em;letter-spacing:0;vertical-align:top;display:inline-block;color:var(--lime);margin-left:30px;margin-top:12px;animation:turn 24s linear infinite}.hero-caption{padding-bottom:12px}.label{font-size:12px;letter-spacing:1px;line-height:1.6;color:var(--lime)}.hero-caption p{font-size:20px;line-height:1.6;white-space:nowrap}.hero-art{position:absolute;inset:25% 0 0 28%;z-index:-1;background-image:url("hero.png");background-position:center;background-size:cover;transition:filter .8s}.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--bg),transparent 45%),linear-gradient(0deg,var(--bg),transparent 50%)}.hero-bottom{margin-top:auto;display:flex;align-items:flex-end;gap:35px;position:relative;z-index:2}.hero-bottom p{font-size:18px;line-height:1.8;margin:0}.pill{background:var(--lime);color:#141609;padding:18px 27px;border-radius:50px;font-weight:700;transition:transform .2s}.pill:hover{transform:translateY(-4px)}.scroll-label{margin-left:auto;text-align:right;font-size:12px;line-height:1.8;letter-spacing:1px;color:var(--muted)}.ticker{background:var(--lime);color:#0a0a0a;overflow:hidden;padding:16px 0;transform:rotate(-1.5deg);margin:0 -2vw}.ticker div{font-weight:700;letter-spacing:-1px;font-size:28px;white-space:nowrap;animation:marquee 35s linear infinite}.section{padding:110px 4vw}.section-tag{font-size:12px;letter-spacing:1.5px;color:var(--lime);margin-bottom:28px}.about{display:grid;grid-template-columns:1fr 2.4fr;border-bottom:1px solid var(--line)}h2{font-size:clamp(38px,5.5vw,84px);line-height:1.24;letter-spacing:-.04em;margin:0;font-weight:700}.about h2 span{color:var(--lime)}.about-body{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin:40px 0 28px;max-width:780px}.about-body p{font-size:16px;line-height:1.95;color:#b6b8b0;margin:0}.traits{display:flex;flex-wrap:wrap;gap:10px}.traits span{border:1px solid var(--line);padding:10px 18px;border-radius:30px;font-size:14px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:45px}.section-heading p,.section-heading>span{color:var(--muted);font-size:14px;line-height:1.8;margin:0}.section-heading .section-tag{margin-bottom:18px}.projects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.project{padding:0;text-align:left;background:none;border:0;min-width:0}.project-visual{aspect-ratio:1.15;position:relative;overflow:hidden;padding:26px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid var(--line);transition:transform .3s,border-color .3s}.project:hover .project-visual{transform:translateY(-6px);border-color:var(--lime)}.terminal{background:#121610;color:#91a878;font-family:monospace}.terminal>span{font-size:12px}.terminal pre{font-size:clamp(14px,1.5vw,22px);line-height:1.9;white-space:normal}.terminal b{color:var(--lime);font-weight:400}.visual-mark{letter-spacing:2px}.typography{background:var(--lime);color:#0a0a0a;justify-content:center}.typography>span{font-size:clamp(32px,4vw,63px);font-weight:700;line-height:1.04;letter-spacing:-.07em;transform:rotate(-7deg)}.typography i{font-weight:400;letter-spacing:-.055em}.frequency{background:#21133c;color:#d3baff}.frequency>span{font-size:clamp(23px,3vw,42px);letter-spacing:-.05em;line-height:1.1}.frequency strong{color:#fff}.bars{display:flex;align-items:center;height:100px;gap:5px}.bars i{background:#ccff43;flex:1;height:var(--height);transform:scaleY(.7);animation:wave 1.5s ease-in-out infinite alternate;animation-delay:var(--delay)}.project-meta{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:12px;margin:22px 0 15px;letter-spacing:.3px}.project h3{font-size:23px;margin:0 0 12px;display:flex;justify-content:space-between}.project h3 span{color:var(--lime)}.project p{font-size:14px;line-height:1.8;color:var(--muted);margin:0}.manifesto{text-align:center;padding:90px 4vw 105px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:radial-gradient(ellipse at center,#c8ff3109,transparent 65%)}.manifesto>span{font-size:12px;letter-spacing:2px;color:var(--muted)}.manifesto p{font-size:clamp(45px,8vw,120px);font-weight:700;line-height:1.22;letter-spacing:-.05em;margin:30px 0}.manifesto p span{color:var(--lime)}.manifesto button{background:none;border:1px solid var(--line);padding:12px 24px;border-radius:30px;font-size:14px}.manifesto button:hover{border-color:var(--lime)}.manifesto button span{margin-left:15px;color:var(--lime)}.note{border:0;border-top:1px solid var(--line);background:none;width:100%;padding:30px 0;display:flex;align-items:center;gap:40px;text-align:left}.note:last-child{border-bottom:1px solid var(--line)}.note>span:first-child{font-size:14px;color:var(--muted)}.note-category{font-size:12px;letter-spacing:1px;color:var(--muted)}.note h3{font-size:clamp(21px,2.4vw,34px);margin:10px 0 0;font-weight:500}.note-plus{margin-left:auto;font-size:30px;color:var(--lime)}.note:hover h3{color:var(--lime)}.outro{padding:65px 4vw 90px;background:var(--lime);color:#101308;position:relative}.outro>span{font-size:12px;letter-spacing:1px}.outro h2{font-size:clamp(70px,11vw,170px);margin:35px 0;line-height:1.1}.outro em{font-style:normal;-webkit-text-stroke:1.5px #101308;color:transparent}.outro a{display:inline-block;border-bottom:1px solid #101308;padding-bottom:6px;font-size:18px}footer{padding:35px 4vw;display:flex;justify-content:space-between;align-items:center;gap:20px}footer>span{font-size:12px;color:var(--muted);letter-spacing:.5px}.pointer{display:none}dialog{background:#14160f;color:var(--ink);border:1px solid #525a39;border-radius:12px;width:min(680px,calc(100% - 32px));max-height:85svh;padding:60px 40px 35px}dialog::backdrop{background:#000b;backdrop-filter:blur(10px)}dialog h2{font-size:36px;margin:20px 0}dialog p{color:#bfc1b6;line-height:1.9;font-size:16px}.close{position:absolute;right:18px;top:12px;background:none;border:0;font-size:32px}.dialog-done{background:var(--lime);border:0;color:#101308;border-radius:30px;padding:12px 22px;margin-top:15px}.wild{--lime:#ff60b8}.wild .hero-art{filter:hue-rotate(235deg)}.wild .ticker div{animation-duration:15s}@keyframes turn{to{transform:rotate(360deg)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes wave{to{transform:scaleY(1)}}@media(hover:hover) and (pointer:fine){.pointer{display:block;position:fixed;width:20px;height:20px;border:1px solid var(--lime);border-radius:50%;z-index:10;pointer-events:none;transform:translate(-50%,-50%);opacity:0;transition:width .2s,height .2s}.pointer.active{width:52px;height:52px}}@media(max-width:900px){header{gap:20px}.header-note{display:none}nav{gap:20px}.hero{min-height:680px;height:calc(90svh - 92px)}.hero-title{flex-direction:column;align-items:flex-start;gap:25px}h1{font-size:27vw}.star{margin-left:15px}.hero-caption{display:flex;gap:30px;align-items:center}.hero-caption p{margin:0}.hero-art{inset:29% 0 0 15%}.about{grid-template-columns:1fr;gap:12px}.section{padding:80px 4vw}.projects{gap:14px}.project-visual{padding:18px}.project-meta{flex-direction:column;gap:5px}.project h3{font-size:19px}.hero-bottom{gap:20px}.scroll-label{display:none}}@media(max-width:600px){header{height:76px}nav{gap:17px}nav button{font-size:12px;padding:9px 12px}nav button span{margin-left:5px}nav a{font-size:13px}.hero{height:auto;min-height:740px;padding-top:28px}.hero-top{font-size:10px;gap:25px;letter-spacing:.7px}.hero-top span:last-child{text-align:right}.hero-title{margin-top:40px}h1{font-size:28vw}.star{margin-left:10px}.hero-caption{gap:25px}.hero-caption p{font-size:17px}.label{font-size:10px}.hero-art{inset:30% -25% 10% 0}.hero-bottom{align-items:flex-start;flex-direction:column;gap:25px}.hero-bottom p{font-size:16px}.pill{padding:15px 24px}.section{padding:65px 5vw}.about-body{grid-template-columns:1fr;gap:20px}.section-heading{align-items:flex-start;gap:25px;flex-direction:column}.projects{grid-template-columns:1fr;gap:40px}.project-visual{aspect-ratio:1.3;padding:28px}.typography>span{font-size:65px}.frequency>span{font-size:43px}.terminal pre{font-size:22px}.project-meta{flex-direction:row}.project h3{font-size:24px}.note{gap:22px}.note h3{font-size:21px;line-height:1.5}.note-plus{font-size:24px}.manifesto{padding:65px 5vw}.outro{padding:55px 5vw}footer{flex-wrap:wrap}footer>span:last-child{width:100%;padding-top:10px}dialog{padding:50px 25px 30px}dialog h2{font-size:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.pointer{display:none!important}}

.outro-links{display:flex;flex-wrap:wrap;gap:30px}.hero-caption{max-width:260px}.hero-caption p{white-space:normal}.project h3{gap:8px}
