@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@300;400;500&family=Space+Mono:wght@400;700&display=swap');

:root{color-scheme:dark;--bg:#050807;--surface:#0b110e;--line:rgba(147,255,168,.17);--muted:#8a9b8f;--green:#a3ffb2;--bright:#c7ffd0;--mono:'DM Mono','Courier New',monospace;--display:'Space Mono','Courier New',monospace}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--bg);color:#e9f5eb;font-family:var(--mono);font-size:14px;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:20;opacity:.19;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.19'/%3E%3C/svg%3E")}
::selection{background:var(--green);color:#061009}
a{color:inherit;text-decoration:none}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible{outline:2px solid var(--green);outline-offset:5px}
.site-shell{max-width:1920px;margin:auto;overflow:hidden}
.site-header{height:88px;padding:0 clamp(24px,5vw,92px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:10;background:rgba(5,8,7,.86);backdrop-filter:blur(16px)}
.brand{display:inline-flex;align-items:center;gap:13px;font:700 18px var(--display);letter-spacing:-.07em;color:#f0fff1;white-space:nowrap}
.brand-mark{width:38px;height:38px;border:1px solid var(--green);display:grid;place-items:center;font-size:18px;color:var(--green);box-shadow:inset 0 0 14px rgba(91,255,132,.13),0 0 20px rgba(91,255,132,.08)}
.brand-mark span{color:#fff}.brand-cursor{color:var(--green);animation:blink 1.2s steps(1) infinite}
.site-nav{display:flex;align-items:center;gap:clamp(24px,3vw,56px);font-size:12px;color:#b4c9b9}.site-nav a,.site-footer>a:last-child{transition:color .2s}.site-nav a:hover,.site-footer>a:last-child:hover{color:var(--green)}
.header-link{font-size:11px;letter-spacing:.1em;color:var(--green);border-bottom:1px solid var(--green);padding-bottom:5px}.header-link span{margin-left:15px}
.hero{min-height:min(800px,calc(100svh - 88px));display:grid;grid-template-columns:1.03fr .97fr;position:relative;isolation:isolate;border-bottom:1px solid var(--line)}
.hero::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 42%,rgba(23,75,39,.2),transparent 39%);pointer-events:none;z-index:-1}
.hero-grid,.contact-grid{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(to right,rgba(117,225,139,.045) 1px,transparent 1px),linear-gradient(to bottom,rgba(117,225,139,.045) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(to right,transparent 1%,#000 48%,#000 88%,transparent)}
.hero-content{position:relative;z-index:2;padding:clamp(85px,11vw,164px) 0 45px clamp(24px,8vw,148px);display:flex;flex-direction:column;align-items:flex-start}
.eyebrow,.section-number,.section-label,.visual-caption,.hero-index{font-size:10px;letter-spacing:.2em;color:var(--green);font-weight:500}.eyebrow{display:flex;align-items:center;gap:13px;margin:0 0 33px;white-space:nowrap}
.signal-dot{width:6px;height:6px;display:inline-block;flex:none;border-radius:50%;background:var(--green);box-shadow:0 0 12px var(--green),0 0 25px rgba(142,255,162,.5)}
h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--display);font-weight:700;letter-spacing:-.085em}
h1{font-size:clamp(52px,5.8vw,106px);line-height:1.05;margin:0 0 32px;white-space:nowrap}h1 span:not(.full-stop),h2 span{color:var(--green)}.full-stop{color:var(--green)}
.hero-intro{max-width:500px;color:#9bac9f;font-size:14px;line-height:1.85;margin:0 0 36px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button{min-height:53px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;gap:28px;font-size:11px;letter-spacing:.09em;font-weight:500;white-space:nowrap;transition:transform .25s,background .25s,box-shadow .25s,color .25s}.button:hover{transform:translateY(-3px)}.button-primary{background:var(--green);color:#07100a;box-shadow:0 0 24px rgba(104,255,135,.16)}.button-primary:hover{background:var(--bright);box-shadow:0 0 34px rgba(104,255,135,.3)}.button-outline{border:1px solid rgba(149,255,166,.35);color:#c8e8cf}.button-outline:hover{background:rgba(153,255,176,.08)}
.hero-index{margin-top:auto;padding-top:70px;display:flex;align-items:center;gap:16px;color:#768b7b}.index-line{width:58px;height:1px;background:var(--green);opacity:.55}
.hero-visual{min-width:0;position:relative;display:grid;place-items:center;perspective:1000px;--px:0px;--py:0px}
.visual-glow{position:absolute;width:min(75%,530px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(58,217,97,.19),rgba(24,92,43,.08) 40%,transparent 70%);filter:blur(28px);transform:translate(var(--px),var(--py))}
.orbit{position:absolute;width:min(77%,600px);aspect-ratio:1;border:1px solid rgba(128,255,151,.11);border-radius:50%;transform:rotateX(68deg) rotateZ(-23deg) translate(var(--px),var(--py));box-shadow:0 0 40px rgba(67,206,102,.04)}.orbit-one::before{content:"";position:absolute;top:8%;left:18%;width:5px;height:5px;background:var(--green);border-radius:50%;box-shadow:0 0 16px var(--green)}.orbit-two{width:min(98%,760px);opacity:.5;transform:rotateX(68deg) rotateZ(31deg)}
.cube-stage{width:360px;height:360px;display:grid;place-items:center;transform:translate(var(--px),var(--py));transform-style:preserve-3d;will-change:transform}
.cube-float{transform-style:preserve-3d;animation:float 7s ease-in-out infinite}.cube{width:250px;height:250px;position:relative;transform-style:preserve-3d;transform:rotateX(-20deg) rotateY(32deg);will-change:transform}
.cube-face{position:absolute;inset:0;border:1px solid rgba(173,255,187,.65);background:linear-gradient(145deg,#112b19,#07130b 68%);box-shadow:inset 0 0 55px rgba(91,255,122,.065),0 0 24px rgba(76,255,111,.08);backface-visibility:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:19px;overflow:hidden}
.cube-face::before{content:"";position:absolute;inset:8px;border:1px solid rgba(175,255,187,.12);pointer-events:none}.cube-face::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 48%,rgba(162,255,179,.08) 49%,transparent 50%);pointer-events:none}
.cube-face strong{font:700 42px var(--display);letter-spacing:-.12em;color:#caffd2;text-shadow:0 0 22px rgba(133,255,157,.6);align-self:center;margin:auto}.face-corner,.face-bottom{font-size:9px;letter-spacing:.12em;color:rgba(195,255,204,.7)}.face-bottom{text-align:right}.cube-front{transform:translateZ(125px)}.cube-back{transform:rotateY(180deg) translateZ(125px)}.cube-right{transform:rotateY(90deg) translateZ(125px)}.cube-left{transform:rotateY(-90deg) translateZ(125px)}.cube-top{transform:rotateX(90deg) translateZ(125px)}.cube-bottom{transform:rotateX(-90deg) translateZ(125px)}
.holo-panel{position:absolute;z-index:2;border:1px solid rgba(151,255,172,.28);background:linear-gradient(120deg,rgba(20,43,27,.63),rgba(4,16,8,.58));backdrop-filter:blur(12px);box-shadow:0 12px 50px rgba(0,0,0,.25),inset 0 0 35px rgba(88,255,119,.045);padding:14px 17px;display:flex;flex-direction:column;gap:10px;min-width:160px;transform:translate(var(--px),var(--py))}.panel-top{top:17%;right:8%}.panel-bottom{bottom:15%;left:4%}.panel-kicker,.panel-micro{font-size:8px;letter-spacing:.15em;color:#6f9d79}.panel-main{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--green);white-space:nowrap}.panel-micro{color:#aac2ae}.panel-bars{display:flex;align-items:flex-end;gap:4px;height:17px}.panel-bars i{width:5px;height:50%;background:var(--green);opacity:.7}.panel-bars i:nth-child(3n){height:100%}.panel-bars i:nth-child(4n){height:30%}.panel-bars i:nth-child(5n){height:75%}
.visual-caption{position:absolute;bottom:8%;right:8%;left:10%;display:flex;justify-content:space-between;color:#688070;font-size:9px}
.ticker{height:61px;border-bottom:1px solid var(--line);display:flex;justify-content:space-around;align-items:center;gap:20px;padding:0 30px;color:#77937e;font-size:10px;letter-spacing:.2em;white-space:nowrap}.ticker i{width:4px;height:4px;background:var(--green);transform:rotate(45deg);opacity:.6}
.section{padding:112px clamp(24px,8vw,148px) 126px}.section-heading{display:flex;align-items:center;gap:22px;margin-bottom:62px}.section-rule{height:1px;background:var(--line);flex:1}.section-label{color:#7e9a84}
.about-layout{display:grid;grid-template-columns:1fr .94fr;gap:clamp(50px,9vw,170px);align-items:center}.section h2,.contact h2{font-size:clamp(43px,4.5vw,76px);line-height:1.14;margin-bottom:30px}.section-copy{max-width:480px;color:#90a396;line-height:1.9;font-size:14px;margin-bottom:0}
.terminal{border:1px solid rgba(142,255,165,.29);background:linear-gradient(145deg,rgba(13,30,18,.9),rgba(5,11,7,.96));box-shadow:0 28px 90px rgba(0,0,0,.25),0 0 35px rgba(100,255,135,.045);transform:translateY(12px)}.terminal-bar{height:45px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 17px;color:#728976;font-size:10px}.terminal-dots{display:flex;gap:6px}.terminal-dots i{width:6px;height:6px;border:1px solid #729d79;border-radius:50%}.terminal-body{padding:32px clamp(20px,3vw,45px) 42px;font-size:clamp(11px,1.05vw,14px);line-height:1.5;white-space:nowrap}.terminal-body p{margin:0 0 13px}.terminal-body p:last-child{margin:26px 0 0}.prompt{color:var(--green);margin-right:10px}.terminal-result{color:#c6ffcf;padding-left:21px;margin-bottom:28px!important;letter-spacing:.04em}.terminal-cursor{display:inline-block;width:9px;height:16px;background:var(--green);vertical-align:-3px;animation:blink 1s steps(1) infinite}
.projects{border-top:1px solid var(--line);background:radial-gradient(circle at 80% 15%,rgba(26,83,38,.1),transparent 36%)}.projects-top{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:55px}.projects-top h2{margin:0}.projects-top .section-copy{max-width:330px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.project-card{min-height:440px;border:1px solid var(--line);background:linear-gradient(155deg,rgba(17,32,22,.72),rgba(7,14,9,.95));padding:25px;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:border-color .3s,transform .3s,box-shadow .3s}.project-card:hover{border-color:rgba(152,255,171,.52);transform:translateY(-7px);box-shadow:0 24px 65px rgba(0,0,0,.22),0 0 45px rgba(91,255,122,.05)}.project-card::before{content:"";position:absolute;inset:0;background-image:linear-gradient(to right,rgba(117,225,139,.035) 1px,transparent 1px),linear-gradient(to bottom,rgba(117,225,139,.035) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,#000,transparent 75%)}.card-top,.card-bottom,.card-symbol{position:relative;z-index:1}.card-top{display:flex;justify-content:space-between;color:#829d88;font-size:9px;letter-spacing:.12em}.card-top span:last-child{font-size:18px;color:var(--green)}.card-symbol{height:180px;display:flex;align-items:center;justify-content:center;color:var(--green)}.symbol-cli span{font:700 68px var(--display);letter-spacing:-.18em;text-shadow:0 0 28px rgba(132,255,158,.45)}.symbol-flow{gap:22px}.symbol-flow span{width:26px;height:26px;border:1px solid var(--green);transform:rotate(45deg);box-shadow:0 0 22px rgba(140,255,160,.15)}.symbol-flow span:nth-child(2){background:rgba(153,255,174,.23);width:39px;height:39px}.symbol-flow b{position:absolute;width:65px;height:1px;background:var(--green);opacity:.4}.symbol-flow b:nth-of-type(1){transform:translateX(-48px)}.symbol-flow b:nth-of-type(2){transform:translateX(48px)}.symbol-signal{gap:7px;align-items:center}.symbol-signal span{width:8px;height:25px;background:var(--green);box-shadow:0 0 17px rgba(135,255,158,.42)}.symbol-signal span:nth-child(2),.symbol-signal span:nth-child(4){height:65px}.symbol-signal span:nth-child(3){height:96px}.card-bottom{margin-top:auto}.card-bottom h3{font:700 24px var(--display);letter-spacing:-.06em;margin:0 0 12px}.card-bottom p{font-size:12px;line-height:1.7;color:#93a698;min-height:61px;margin:0 0 25px}.card-tag{display:inline-block;border:1px solid rgba(137,255,158,.24);padding:7px 10px;color:var(--green);font-size:9px;letter-spacing:.12em}
.contact{min-height:530px;border-block:1px solid var(--line);position:relative;isolation:isolate;background:radial-gradient(circle at 50% 110%,rgba(40,158,67,.18),transparent 50%);display:grid;place-items:center;text-align:center;padding:90px 24px}.contact-grid{mask-image:radial-gradient(ellipse at 50% 60%,#000,transparent 70%)}.contact-inner{position:relative;z-index:1}.contact h2{font-size:clamp(50px,6vw,100px);margin:24px 0}.contact p{color:#92a898;line-height:1.7;margin-bottom:34px}.contact .button{margin:auto}
.site-footer{min-height:120px;padding:30px clamp(24px,5vw,92px);display:flex;align-items:center;justify-content:space-between;gap:25px}.site-footer p,.site-footer>a:last-child{margin:0;color:#7e9583;font-size:10px;letter-spacing:.1em}.site-footer .brand{font-size:15px}.site-footer .brand-mark{width:32px;height:32px;font-size:15px}
@keyframes blink{50%{opacity:0}}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-17px)}}
@media(max-width:1150px){.hero-content{padding-left:6vw}h1{font-size:clamp(49px,6vw,82px)}.cube-stage{transform:translate(var(--px),var(--py)) scale(.83)}.panel-top{right:2%}.panel-bottom{left:0}.section{padding-left:6vw;padding-right:6vw}}
@media(max-width:850px){.site-header{height:76px}.header-link{display:none}.hero{grid-template-columns:1fr;min-height:unset}.hero-content{padding:85px 6vw 40px}.hero-intro{max-width:600px}.hero-index{padding-top:65px}.hero-visual{height:540px}.cube-stage{transform:translate(var(--px),var(--py)) scale(.94)}.panel-top{right:12%;top:12%}.panel-bottom{left:12%;bottom:12%}.visual-caption{bottom:4%}.about-layout{grid-template-columns:1fr;gap:45px}.terminal{max-width:630px;width:100%}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-card:last-child{grid-column:1/-1;min-height:360px}.project-card:last-child .card-symbol{height:115px}}
@media(max-width:600px){.site-header{height:68px;padding:0 20px}.brand{font-size:15px;gap:9px}.brand-mark{width:31px;height:31px;font-size:15px}.site-nav{gap:15px;font-size:10px}.hero-content{padding:72px 24px 24px}.eyebrow{font-size:9px;letter-spacing:.12em;margin-bottom:28px}h1{font-size:clamp(41px,10.5vw,68px);margin-bottom:24px}.hero-intro{font-size:12px;line-height:1.75;max-width:360px;margin-bottom:26px}.button{min-height:49px;padding:0 15px;gap:15px;font-size:10px}.hero-actions{gap:8px}.hero-index{padding-top:55px;font-size:8px}.index-line{width:30px}.hero-visual{height:420px}.cube-stage{transform:translate(var(--px),var(--py)) scale(.68)}.orbit{width:85%}.orbit-two{width:110%}.holo-panel{min-width:135px;padding:11px;gap:6px}.panel-top{right:5%;top:9%}.panel-bottom{left:4%;bottom:13%}.panel-main{font-size:11px}.panel-kicker,.panel-micro{font-size:7px}.visual-caption{font-size:7px;left:8%;right:8%}.ticker{justify-content:flex-start;overflow:hidden;height:51px;gap:20px;font-size:9px}.section{padding:76px 24px 84px}.section-heading{gap:12px;margin-bottom:40px}.section-label{display:none}.section h2{font-size:clamp(38px,9vw,55px)}.section-copy{font-size:12px}.terminal-body{padding:25px 18px 30px;font-size:10px}.terminal-result{letter-spacing:0}.projects-top{display:block;margin-bottom:35px}.projects-top h2{margin-bottom:23px}.project-grid{grid-template-columns:1fr;gap:12px}.project-card,.project-card:last-child{grid-column:auto;min-height:350px}.card-symbol,.project-card:last-child .card-symbol{height:130px}.card-bottom p{min-height:unset}.contact{min-height:450px}.contact h2{font-size:clamp(43px,11vw,65px)}.contact p{font-size:12px}.site-footer{padding:34px 24px;flex-wrap:wrap}.site-footer p{order:3;width:100%;font-size:9px}}
@media(max-width:360px){.site-nav{gap:9px;font-size:9px}.brand{font-size:13px}.brand-mark{width:27px;height:27px}.hero-content{padding-left:18px;padding-right:18px}h1{font-size:39px}.hero-actions{flex-direction:column;align-items:flex-start}.hero-visual{height:390px}.cube-stage{transform:translate(var(--px),var(--py)) scale(.58)}.panel-top{right:2%}.panel-bottom{left:2%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.cube-stage,.visual-glow,.orbit,.holo-panel{transform:none}.cube-stage{transform:scale(.83)}}
