
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#101311;--panel:#191e1a;--ink:#f2f3e9;--muted:#a2ac9f;--line:#343c32;--lime:#d7fc70;--font:Manrope,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.65 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a,input{outline-offset:5px}a:focus-visible,button:focus-visible{outline:2px solid var(--lime)}button{color:inherit}::selection{background:var(--lime);color:var(--bg)}.wrap{max-width:1360px;margin:auto;padding:0 6%}.skip{position:fixed;top:-80px;left:20px;z-index:99;background:var(--lime);color:#101311;padding:12px}.skip:focus{top:12px}
header{position:sticky;top:0;background:#101311ed;backdrop-filter:blur(16px);border-bottom:1px solid var(--line);z-index:10}nav{height:88px;display:flex;align-items:center;gap:30px}.brand{margin-right:auto;font-family:var(--font);font-weight:800;letter-spacing:-1px;font-size:23px}.brand span{color:var(--lime)}.navlinks{display:flex;gap:28px;font-size:12px}.navlinks a:hover,.navlinks a[aria-current]{color:var(--lime)}.pill{border:1px solid var(--line);border-radius:40px;padding:11px 20px;display:inline-flex;gap:24px;align-items:center;font-size:12px}.pill:hover{border-color:var(--lime)}.menu{display:none;background:transparent;border:1px solid var(--line);padding:8px 14px;border-radius:20px}
.hero{padding:85px 0 60px;position:relative}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:2px;color:var(--muted);display:flex;align-items:center;gap:10px}.dot{width:7px;height:7px;background:var(--lime);border-radius:50%;box-shadow:0 0 14px #d7fc7055}.herogrid{display:grid;grid-template-columns:1.4fr 1fr;gap:5%;align-items:center;margin-top:30px}h1{font:500 clamp(56px,6.4vw,92px)/1.04 var(--font);letter-spacing:-5px;margin:0 0 30px}h1 em{color:var(--lime);font-style:normal}.intro{color:var(--muted);max-width:430px;font-size:15px}.actions{display:flex;gap:25px;align-items:center;margin-top:30px}.primary{border:0;background:var(--lime);color:#18200e;border-radius:40px;padding:15px 24px;display:inline-flex;gap:35px;align-items:center;font-size:12px;font-weight:700}.primary:hover{background:#e5ff9c;transform:translateY(-2px)}.textlink{font-size:12px;border-bottom:1px solid var(--line);padding:8px 0}.herobottom{display:flex;justify-content:space-between;align-items:end;margin-top:62px;color:var(--muted);font-size:11px}.person{color:var(--ink);font-size:14px;display:block}.scrollcue{letter-spacing:1px;text-transform:uppercase;font-size:9px}
.visual{position:relative;min-height:400px;display:grid;place-items:center;isolation:isolate}.visual:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse,#8caa4130,transparent 65%);z-index:-1}.orbit{width:310px;height:310px;border:1px solid #c8e49c35;border-radius:50%;position:absolute}.orbit:after{content:"";width:11px;height:11px;background:var(--lime);position:absolute;left:42px;top:36px;border-radius:50%;box-shadow:0 0 25px var(--lime)}.orbit.two{width:390px;height:390px;transform:rotate(80deg);border-style:dashed;opacity:.4}.orb{width:220px;height:220px;border-radius:50%;background:radial-gradient(circle at 32% 28%,#d2f185,#526a31 38%,#1c2a17 70%);box-shadow:inset -20px -20px 40px #0008,0 0 70px #9db95b15;display:grid;place-items:center;overflow:hidden}.orb svg{width:180px;opacity:.65}.float{position:absolute;border:1px solid #546349;background:#1b231ae8;padding:12px 16px;border-radius:10px;font-size:10px;box-shadow:0 15px 40px #0004}.float strong{display:block;color:var(--lime);font:600 22px var(--font);margin-top:3px}.float.one{top:34px;right:0}.float.two{bottom:24px;left:0}.float.three{bottom:95px;right:-10px;display:flex;align-items:center;gap:8px}.float small{color:var(--muted)}.spark{height:28px;display:flex;align-items:end;gap:4px}.spark i{width:5px;background:var(--lime);border-radius:2px}
.toolstrip{border-block:1px solid var(--line);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding:25px 0;color:#c1cab9;font:600 15px var(--font)}.toolstrip small{font:9px 'DM Sans',sans-serif;letter-spacing:2px;color:var(--muted);max-width:100px}
section{padding:90px 0;border-bottom:1px solid var(--line)}.sectionhead{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:35px}.label{font-size:10px;letter-spacing:2px;color:var(--lime);text-transform:uppercase;margin:0 0 15px}h2{font:500 clamp(32px,4vw,51px)/1.15 var(--font);letter-spacing:-2px;margin:0}h2 span{color:var(--muted)}.sectionhead p{max-width:320px;font-size:12px;color:var(--muted);margin-bottom:0}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}.filter{background:transparent;border:1px solid var(--line);border-radius:24px;padding:9px 18px;font-size:11px}.filter[aria-pressed=true]{background:var(--lime);color:#19220f;border-color:var(--lime)}.projects{display:grid;grid-template-columns:1fr 1fr;gap:36px 25px}.project[hidden]{display:none}.preview{height:265px;position:relative;border-radius:12px;overflow:hidden;padding:25px;transition:transform .35s;background:#222d23}.project:hover .preview{transform:translateY(-5px)}.preview .projectno{position:absolute;top:18px;left:20px;color:#ffffff70;font-size:10px}.preview .badge{position:absolute;top:16px;right:18px;font-size:9px;background:#ffffff15;border:1px solid #ffffff20;padding:4px 10px;border-radius:20px}.projectmeta{display:flex;justify-content:space-between;align-items:center;margin-top:16px;gap:12px}.projectmeta h3{font:600 19px var(--font);margin:3px 0}.projectmeta p{color:var(--muted);font-size:10px;margin:0}.openproject{border:1px solid var(--line);background:transparent;border-radius:50%;height:38px;width:38px;flex-shrink:0}.openproject:hover{background:var(--lime);color:#101311}.cardtitle{background:transparent;border:0;text-align:left;padding:0}.miniwindow{margin:26px auto 0;width:88%;background:#101a15;border:1px solid #72805d55;border-radius:8px;padding:16px;box-shadow:0 20px 40px #0005;transform:rotate(-3deg)}.windowbar{display:flex;gap:4px;margin-bottom:20px}.windowbar i{width:4px;height:4px;background:#738466;border-radius:50%}.minititle{font:500 23px/1.2 var(--font);letter-spacing:-1px;margin:0 0 12px}.minititle b{color:var(--lime);font-weight:500}.miniline{width:60%;height:3px;background:#44513d;margin-bottom:5px}.minibutton{background:var(--lime);width:65px;height:15px;border-radius:20px;margin-top:16px}.web{background:#293628}.japan{background:#2b2d3e}.rare{background:#233a3d}.ai{background:#393228}.spotify{background:#25372c}.chartbox{background:#131a20d9;margin:29px 8px 0;padding:15px;border:1px solid #ffffff15;border-radius:8px}.chartbox small{color:#c2c7c9;font-size:9px}.chartbox strong{display:block;font:500 26px var(--font);margin:5px 0;color:#e7e8ee}.chartbox svg{width:100%;height:85px}.chartnote{font-size:8px;color:#aeb4c0}.barrow{display:flex;gap:10px;align-items:end;height:90px;margin-top:15px}.barrow i{background:#a7b8ff;width:100%;border-radius:3px 3px 0 0}.rare .barrow i{background:#72c8b5}.ai .barrow i{background:#d6b77e}.spotgrid{display:flex;gap:14px;align-items:center}.record{width:96px;height:96px;border-radius:50%;background:repeating-radial-gradient(#182a1e 0 3px,#253d2b 4px 5px);display:grid;place-items:center;flex-shrink:0}.record:after{content:"";width:30px;height:30px;border:9px solid #a7e3a3;border-radius:50%;background:#182a1e}.spotbars{display:flex;gap:5px;height:70px;align-items:center}.spotbars i{width:7px;background:#a7e3a3;border-radius:4px}
.skillsgrid{display:grid;grid-template-columns:1fr 1.5fr;gap:8%}.skillsintro p{color:var(--muted);font-size:13px;max-width:320px;margin-top:25px}.skillslist details{border-bottom:1px solid var(--line);padding:20px 0}.skillslist details:first-child{border-top:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:18px;font:500 20px var(--font)}summary::-webkit-details-marker{display:none}summary .num{font-size:10px;color:var(--muted)}summary:after{content:"+";margin-left:auto;color:var(--lime)}details[open] summary:after{content:"−"}.skillslist p{color:var(--muted);font-size:13px;padding-left:33px}.tags{display:flex;flex-wrap:wrap;gap:8px;padding-left:33px}.tags span{font-size:10px;border:1px solid var(--line);border-radius:20px;padding:5px 11px}
.aboutgrid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.aboutcopy p{color:var(--muted);font-size:14px}.aboutcopy p:first-child{font-size:21px;color:var(--ink);line-height:1.6;margin-top:0}.values{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:35px}.values b{font-size:12px;font-weight:500}.values p{font-size:11px;margin-top:5px}.timeline{margin-top:45px} .job{display:grid;grid-template-columns:170px 1fr auto;gap:20px;padding:24px 0;border-top:1px solid var(--line)}.job time,.job small{font-size:11px;color:var(--muted)}.job h3{font-size:16px;font-weight:500;margin:0}.job p{font-size:12px;color:var(--muted);margin:6px 0}.contact{padding:90px 0 55px}.contact h2{font-size:clamp(45px,6.5vw,85px);max-width:900px;letter-spacing:-4px}.contact h2 em{color:var(--lime);font-style:normal}.contactrow{display:flex;justify-content:space-between;align-items:center;margin-top:40px;gap:25px;flex-wrap:wrap}.contactrow p{font-size:12px;color:var(--muted);max-width:310px}.contactlinks{display:flex;gap:20px;font-size:12px}.contactlinks a{border-bottom:1px solid var(--line)}footer{border-top:1px solid var(--line);padding:22px 0;display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}.backtotop{color:var(--ink)}dialog{background:#191e1a;color:var(--ink);border:1px solid var(--line);border-radius:18px;max-width:700px;width:calc(100% - 32px);padding:40px;max-height:85vh;overflow:auto}dialog::backdrop{background:#000b;backdrop-filter:blur(8px)}.close{float:right;background:transparent;border:1px solid var(--line);border-radius:50%;width:34px;height:34px}dialog h2{font-size:34px;margin-top:25px}dialog p{color:var(--muted)}dialog h3{font-size:13px;color:var(--lime);margin-top:25px}.dialogactions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:30px}.reveal{animation:appear .6s ease-out both}@keyframes appear{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(min-width:1000px){.visual{animation:appear 1s ease-out}.orbit{animation:spin 40s linear infinite}.orbit.two{animation-direction:reverse;animation-duration:60s}@keyframes spin{to{transform:rotate(360deg)}}}
@media(max-width:900px){h1{letter-spacing:-3px}.visual{transform:scale(.85);margin-inline:-30px}.navlinks{gap:15px}.navlinks a{font-size:10px}.job{grid-template-columns:140px 1fr}.job small{display:none}.skillsgrid{gap:5%}.contact h2{letter-spacing:-2px}}
@media(max-width:650px){.wrap{padding:0 6%}nav{height:72px;gap:14px}.menu{display:block}.navcontact{display:none}.navlinks{display:none;position:absolute;top:72px;left:0;right:0;background:#191e1a;border-bottom:1px solid var(--line);padding:25px 6%;flex-direction:column}.navlinks.open{display:flex}.navlinks a{font-size:14px}.hero{padding-top:45px}.herogrid{grid-template-columns:1fr}.visual{min-height:340px;transform:scale(.85);margin:15px 0 -15px}.float.one{right:5px}.float.three{right:0}h1{font-size:58px;letter-spacing:-3px}.intro{font-size:14px}.herobottom{margin-top:25px}.scrollcue{display:none}.toolstrip{justify-content:flex-start;gap:20px;font-size:13px}.toolstrip small{width:100%;max-width:none}section{padding:60px 0}.sectionhead{display:block}.sectionhead p{margin-top:20px}.projects,.skillsgrid,.aboutgrid{grid-template-columns:1fr}.preview{height:250px}.skillslist{margin-top:30px}.aboutcopy{margin-top:30px}.job{grid-template-columns:1fr;gap:8px}.contact{padding:60px 0 40px}.contact h2{font-size:49px}.contactlinks{flex-wrap:wrap}footer{font-size:9px;gap:15px}dialog{padding:25px}.hero .eyebrow{font-size:8px;letter-spacing:1.5px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.care{background:radial-gradient(ellipse at 70% 10%,#648268,#283c30 65%)}.caremini{background:#f4f6ef;color:#1a3528;border-radius:9px;margin:25px auto 0;max-width:470px;transform:rotate(-2deg);box-shadow:0 24px 50px #0005;padding:16px}.caremininav{font-weight:700;font-size:14px;border-bottom:1px solid #cdd6ca;padding-bottom:12px}.caremininav span{float:right;font-size:7px;letter-spacing:1px;margin-top:6px}.careminibody{display:grid;grid-template-columns:80px 1fr;gap:16px;margin-top:15px}.careminiside{font-size:8px;line-height:2.6;color:#788570;border-right:1px solid #d4ddcf}.careminibody small{font-size:8px}.careminibody h4{font-size:16px;line-height:1.2;margin:5px 0 14px}.careministats{display:flex;gap:7px;font-size:8px}.careministats span{background:#dce7d5;padding:8px;border-radius:4px}.careminibars{display:flex;gap:5px;margin-top:12px}.careminibars i{height:4px;background:#8daa7a;width:30%;border-radius:3px}.project:first-child{grid-column:1/-1;display:grid;grid-template-columns:1.4fr 1fr;background:#19211a;border:1px solid #354330;border-radius:14px;overflow:hidden;align-items:center}.project:first-child[hidden]{display:none}.project:first-child .preview{height:325px;border-radius:0}.project:first-child .projectmeta{padding:32px;margin:0}.project:first-child .projectmeta h3{font-size:30px;letter-spacing:-1px}.project:first-child .projectmeta p{font-size:12px;color:var(--lime)}.project:first-child .projectmeta:before{content:'01 / FEATURED BUILD';position:absolute;font-size:9px;letter-spacing:2px;color:var(--muted);transform:translateY(-100px)}.preview{transition:transform .4s,box-shadow .4s}.project:hover .preview{box-shadow:0 15px 40px #0003}.primary,.pill,.openproject{transition:background .2s,transform .2s,border-color .2s}@media(max-width:650px){.project:first-child{grid-template-columns:1fr}.project:first-child .preview{height:265px}.project:first-child .projectmeta{padding:25px}.project:first-child .projectmeta:before{display:none}.project:first-child .projectmeta h3{font-size:24px}.navlinks{gap:10px}}

/* Full-name navigation identity */
.brand{font-size:clamp(15px,1.7vw,20px);letter-spacing:-.6px;white-space:nowrap}
@media(max-width:650px){.brand{font-size:16px}}

.careatlas{background:radial-gradient(ellipse at 85% 20%,#5d7233,#24331e 65%)}.atlas-mini{margin:30px auto 0;padding:22px;max-width:490px;background:#131e10;border:1px solid #63794a;border-radius:10px;box-shadow:0 22px 60px #0005;transform:rotate(-2deg);animation:atlasMiniFloat 7s ease-in-out infinite}.atlas-mini>small{font-size:8px;letter-spacing:1.4px;color:#a7bc91}.atlas-mini-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10px}.atlas-mini-grid strong{display:block;color:#d7fc70;font:500 34px Manrope;letter-spacing:-1.5px;margin-top:15px}.atlas-mini-grid span{font-size:10px;color:#dbe9cf}.atlas-mini-grid p{font-size:9px;color:#99ad87;line-height:1.7}.atlas-mini-grid svg{width:100%;max-height:150px}.atlas-mini-grid circle{animation:atlasMiniPulse 4s ease-in-out infinite}.atlas-mini-note{color:#b4ce97;font-size:8px}@keyframes atlasMiniPulse{50%{opacity:.3}}@keyframes atlasMiniFloat{50%{translate:0 -7px}}@media(max-width:650px){.atlas-mini{padding:16px}.atlas-mini-grid strong{font-size:28px}}@media(prefers-reduced-motion:reduce){.atlas-mini,.atlas-mini *{animation:none!important}}
