@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Space+Mono:wght@400&display=swap');
:root{--bg:#050505;--white:#f2f2ef;--muted:#80817e;--accent:#c2ff83;--line:#252624}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--white);font-family:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased}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(--accent);outline-offset:6px}::selection{background:var(--accent);color:#050505}.progress{position:fixed;top:0;left:0;height:2px;background:var(--accent);z-index:100;width:0}header{height:84px;padding:0 4.6%;display:flex;align-items:center;justify-content:space-between;position:absolute;top:0;width:100%;z-index:20;border-bottom:1px solid #ffffff13}.brand{display:flex;align-items:center;font-size:25px;letter-spacing:-1.5px;font-weight:650;gap:8px}.brand svg{width:25px}.brand>span{font-size:11px;align-self:flex-start;margin-top:4px;letter-spacing:0}nav{display:flex;gap:36px;font-size:13px;color:#aaa}nav a:hover{color:white}.nav-contact{font-size:12px;border:1px solid #ffffff30;border-radius:30px;padding:11px 17px}.nav-contact span{margin-left:20px}.hero{height:960px;min-height:820px;max-height:1200px;position:relative;isolation:isolate;overflow:hidden}.hero canvas{position:absolute;width:100%;height:100%;inset:0;z-index:3;pointer-events:none}.hero-top{position:absolute;top:119px;left:4.6%;right:4.6%;display:flex;justify-content:space-between;color:#a5a6a1;font-family:'Space Mono',monospace;font-size:9px;letter-spacing:1.1px;z-index:6}i{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--accent);margin-right:8px;box-shadow:0 0 10px #c2ff8350}.hero-title{position:absolute;top:146px;width:100%;text-align:center;z-index:1}.hero h1{font-size:clamp(120px,18.5vw,285px);line-height:1;margin:0;font-weight:600;letter-spacing:-.075em;padding-right:.075em;background:linear-gradient(180deg,#f4f4f0 20%,#81837e 100%);background-clip:text;color:transparent}.portrait-wrap{position:absolute;top:215px;left:50%;width:710px;height:660px;transform:translateX(-50%);z-index:2;mask-image:radial-gradient(ellipse 44% 49% at 50% 51%,black 42%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 44% 49% at 50% 51%,black 42%,transparent 100%);opacity:.95}.portrait{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 80%;filter:grayscale(1) brightness(.95) contrast(1.15)}.portrait-shade{position:absolute;inset:0;background:linear-gradient(0deg,#050505 0%,transparent 37%),linear-gradient(90deg,#050505aa,transparent 45%,#05050522)}.hero-side{position:absolute;top:450px;z-index:4;color:#9b9c95;font-size:11px;line-height:1.8}.hero-side.left{left:7%}.hero-side.right{right:7%;text-align:right}.cross{font:20px monospace;color:var(--accent)}.hero-bottom{position:absolute;bottom:0;width:100%;z-index:5;padding:0 4.6% 24px;background:linear-gradient(0deg,#050505 20%,transparent 100%)}.hero-copy{text-align:center}.eyebrow,.mono,.section-label,.visual-label,.exp-location{font-family:'Space Mono',monospace;font-size:9px;letter-spacing:1.3px}.hero-copy .eyebrow{color:var(--accent)}.hero h2{font-size:42px;line-height:1.12;letter-spacing:-1.8px;font-weight:500;margin:18px 0}.hero h2 span{color:#8d8e89}.hero-copy p{font-size:12px;color:#95968f;line-height:1.7;margin:0 0 23px}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:15px 24px;border-radius:30px;font-size:12px;font-weight:600;border:0;transition:transform .25s,background .25s}.button:hover{transform:translateY(-3px)}.primary{background:var(--white);color:#10110e}.primary:hover{background:var(--accent)}.hero-foot{display:flex;justify-content:space-between;align-items:center;margin-top:32px;color:#70716b}.hero-foot .mono{font-size:8px}.scroll-line{height:32px;width:1px;background:linear-gradient(#c2ff83,transparent);position:absolute;left:50%;bottom:20px}#motion{background:none;border:0;font-size:10px;color:#92938b}#motion span{margin-right:7px}.section{padding:100px 7%;border-top:1px solid var(--line);max-width:1600px;margin:auto}.section-label{display:flex;align-items:center;justify-content:space-between;color:#898b82;margin-bottom:48px;font-size:9px}.small-mark{font-size:23px;color:var(--accent)}.intro h2,.section-heading h2{font-size:clamp(36px,4.8vw,68px);font-weight:500;letter-spacing:-2.8px;line-height:1.08;margin:0}.muted{color:#70726a}.intro-bottom{display:grid;grid-template-columns:1fr 1fr;gap:12%;margin:38px 0 36px;max-width:960px}.intro-bottom p{font-size:14px;line-height:1.9;color:#a5a79e}.expertise{display:flex;flex-wrap:wrap;gap:10px}.expertise span,#exp-tags span,#dialog-tags span{border:1px solid #30322c;padding:9px 14px;font-size:10px;border-radius:30px;color:#b8bab0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:25px}.section-heading p{color:#999b91;font-size:12px;line-height:1.8}.filters{display:flex;gap:8px;margin:35px 0 26px}.filters button{border:1px solid transparent;background:transparent;color:#83857b;font-size:11px;border-radius:25px;padding:10px 16px}.filters button.active{color:#f3f4ec;border-color:#34362e;background:#171912}.filters sup{font:8px monospace;margin-left:6px;color:var(--accent)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.project{padding:0;background:none;border:0;text-align:left;min-width:0;transition:opacity .3s,transform .4s}.project.large{grid-column:1/-1}.project[hidden]{display:none}.project-visual{height:300px;border-radius:14px;background:#10120f;position:relative;overflow:hidden;border:1px solid #ffffff09}.large .project-visual{height:390px}.project-info{padding:22px 2px 18px;display:flex;align-items:center;justify-content:space-between}.project-info .eyebrow{color:#81857b;font-size:8px}.project-info h3{font-size:28px;letter-spacing:-1px;margin:7px 0;font-weight:500}.project-info p{color:#8a8d81;font-size:12px;margin:0}.circle-arrow{width:37px;height:37px;border:1px solid #34382e;border-radius:50%;display:grid;place-items:center;transition:background .3s,color .3s}.project:hover .circle-arrow{background:var(--accent);color:#000}.project:hover .project-visual{border-color:#c2ff8340}.visual-label{position:absolute;font-size:8px;color:#7d8874;z-index:3}.tl{top:24px;left:25px}.br{bottom:23px;right:24px}.pipeline{background:radial-gradient(ellipse at 50% 60%,#28391d55,transparent 70%),#0c0f0a}.pipe-orbit{position:absolute;border:1px solid #6c8a4945;border-radius:50%;top:50%;left:50%;width:470px;height:230px;transform:translate(-50%,-50%) rotate(-25deg);box-shadow:0 0 35px #a9ff4b07,inset 0 0 35px #a9ff4b07}.pipe-orbit.two{transform:translate(-50%,-50%) rotate(25deg);width:470px;height:230px}.core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-12deg);width:155px;height:155px;border-radius:32px;background:linear-gradient(135deg,#4a573c,#131910 50%,#2b3b1c);border:1px solid #6c8350;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:65px;color:#c2ed97;box-shadow:12px 16px 0 #0b0f08,13px 17px 0 #415632,20px 30px 70px #000;transition:transform .5s}.core span{font:7px 'Space Mono',monospace;letter-spacing:1px;color:#9bab8c}.project:hover .core{transform:translate(-50%,-50%) rotate(0deg) translateY(-6px)}.nodes i{position:absolute;background:#bff98b;width:6px;height:6px;box-shadow:0 0 18px #bff98b80;top:45%;left:28%}.nodes i:nth-child(2){top:72%;left:65%}.nodes i:nth-child(3){top:25%;left:60%}.nodes i:nth-child(4){top:55%;left:73%}.mesh{background:#0e1015}.mesh svg{height:100%;width:100%;transition:transform 1s}.project:hover .mesh svg{transform:rotate(8deg) scale(1.05)}.mesh .visual-label{color:#798399}.terminal{display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 75%,#c2ff8309,transparent),#0c0e0b}.terminal-window{width:80%;background:#070906;border:1px solid #2c3425;border-radius:8px;transform:perspective(800px) rotateY(-8deg) rotateX(5deg);box-shadow:20px 25px 50px #0008;transition:transform .5s}.project:hover .terminal-window{transform:perspective(800px) rotateY(0) rotateX(0)}.terminal-bar{height:30px;display:flex;align-items:center;padding:0 12px;gap:4px;border-bottom:1px solid #21251c}.terminal-bar i{width:5px;height:5px;background:#4d5446;box-shadow:none;margin:0}.terminal-bar span{font:7px monospace;color:#626b58;margin-left:12px}.terminal code{display:block;padding:22px;font-size:11px;line-height:1.9;color:#c8cfbf}.terminal-dim{color:#626e55}.terminal-green{color:#c2ff83}.caret{animation:blink 1s steps(1) infinite}@keyframes blink{50%{opacity:0}}.experience-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%;margin-top:50px}.experience-tabs{display:flex;flex-direction:column}.experience-tabs button{display:flex;justify-content:space-between;align-items:center;border:0;border-bottom:1px solid var(--line);padding:22px 0;background:none;font-size:18px;color:#707469;text-align:left;transition:color .2s}.experience-tabs button span{font:9px 'Space Mono',monospace}.experience-tabs button[aria-selected=true]{color:var(--white)}.experience-tabs button[aria-selected=true] span{color:var(--accent)}#exp-panel{padding:30px 0;min-height:330px}#exp-date{color:var(--accent)}#exp-title{font-size:32px;letter-spacing:-1px;font-weight:500;line-height:1.2;margin:25px 0 18px}#exp-desc{font-size:14px;color:#969c8b;line-height:1.9;max-width:440px}#exp-tags{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0 30px}.exp-location{font-size:9px;color:#676e5d}.contact{background:radial-gradient(ellipse at 75% 90%,#c2ff8308,transparent 65%)}.contact-overline{font-size:13px;color:#969c8b;margin-bottom:25px}.contact h2{font-size:clamp(52px,8vw,112px);letter-spacing:-5px;line-height:1.04;font-weight:500;margin:0 0 40px}.contact h2 span{color:#72786a}.contact-actions{display:flex;align-items:center;gap:28px}.copy-email{background:none;border:0;color:#a6ad9b;font-size:12px}.copy-email span{margin-left:12px}.socials{margin-top:85px;display:flex;align-items:center;gap:30px;font-size:12px}.socials a:hover{color:var(--accent)}.socials>span{margin-left:auto;color:#707669;font:8px 'Space Mono',monospace;letter-spacing:1px}footer{padding:30px 4.6%;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);color:#7d8374;font-size:10px}footer .brand{color:#d9dfd0;font-size:21px}dialog{background:#11140f;color:var(--white);border:1px solid #3c4533;border-radius:22px;max-width:620px;width:calc(100% - 32px);padding:55px 45px;box-shadow:0 30px 120px #000}dialog::backdrop{background:#000b;backdrop-filter:blur(12px)}.close-dialog{position:absolute;right:20px;top:14px;background:none;border:0;font-size:30px;color:#b4bba9}dialog .eyebrow{color:var(--accent)}dialog h2{font-size:50px;letter-spacing:-2px;margin:20px 0}dialog p{color:#a0aa93;font-size:14px;line-height:1.9}dialog h3{font-size:12px;margin-top:30px}#dialog-tags{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 25px}.dialog-note{border-top:1px solid #30362a;padding-top:20px;font-size:12px!important}dialog .button{margin-top:15px}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);opacity:0;background:#dcebd0;color:#15200e;padding:14px 22px;border-radius:30px;font-size:12px;z-index:100;transition:.3s;pointer-events:none}#toast.show{opacity:1;transform:translate(-50%,0)}.reveal{opacity:1}.js-motion .reveal{opacity:0;transform:translateY(25px);transition:opacity .8s,transform .8s}.js-motion .reveal.visible{opacity:1;transform:none}.motion-off *{animation:none!important;transition:none!important}.motion-off .reveal{opacity:1;transform:none}
@media(min-width:1600px){.hero{height:1100px}.hero-title{top:160px}.portrait-wrap{top:260px;height:720px;width:780px}.hero h2{font-size:48px}.hero-side{top:510px}}
@media(max-width:800px){header{height:72px;padding:0 6%}nav{gap:20px;font-size:11px}.brand{font-size:22px}.nav-contact{font-size:10px;padding:9px 12px}.nav-contact span{margin-left:8px}.hero{height:870px;min-height:800px}.hero-top{top:101px;left:6%;right:6%;font-size:7px;letter-spacing:.4px}.hero-top>span:last-child{display:none}.hero-title{top:155px}.hero h1{font-size:19vw}.portrait-wrap{top:165px;width:620px;height:585px}.hero-side{top:360px;font-size:9px}.hero-side.left{left:6%;width:95px}.hero-side.right{right:6%;width:90px}.hero h2{font-size:35px}.hero-bottom{padding:0 6% 24px}.hero-copy p{font-size:11px}.hero-foot{margin-top:40px}.hero-foot .mono{font-size:7px}.section{padding:65px 6%}.section-label{font-size:7px;margin-bottom:34px;letter-spacing:1px}.intro h2,.section-heading h2{font-size:40px;letter-spacing:-1.8px}.intro-bottom{gap:25px}.intro-bottom p{font-size:12px}.section-heading{display:block}.section-heading p{margin-top:20px}.large .project-visual{height:300px}.project-visual{height:240px}.project-grid{gap:25px 18px}.project-info h3{font-size:23px}.project-info p{font-size:10px;line-height:1.6}.project-info .eyebrow{font-size:7px;letter-spacing:.8px}.circle-arrow{width:30px;height:30px;flex-shrink:0}.visual-label{font-size:6px}.tl{left:17px;top:18px}.br{right:17px;bottom:18px}.terminal-window{width:88%}.terminal code{padding:17px 12px;font-size:9px}.pipe-orbit{width:350px;height:180px}.pipe-orbit.two{width:350px;height:180px}.experience-layout{gap:8%}.experience-tabs button{font-size:14px}#exp-title{font-size:25px}#exp-desc{font-size:12px}.contact h2{letter-spacing:-3px}.socials>span{display:none}}
@media(max-width:520px){nav a:nth-child(2){display:none}.hero{height:830px}.hero-title{top:160px}.portrait-wrap{top:160px;width:530px;height:530px}.hero-side{top:320px;font-size:8px}.hero-side.left{width:72px}.hero-side.right{width:72px}.hero h2{font-size:32px}.hero-copy .eyebrow{font-size:8px}.hero-bottom{background:linear-gradient(0deg,#050505 30%,transparent)}.hero-foot{margin-top:36px}.intro-bottom{grid-template-columns:1fr;gap:0;margin-top:25px}.intro h2,.section-heading h2{font-size:34px}.expertise span{font-size:9px;padding:8px 11px}.project-grid{grid-template-columns:1fr}.project.large{grid-column:auto}.project-visual,.large .project-visual{height:290px}.project-info{padding-top:18px}.project-info h3{font-size:27px}.project-info p{font-size:12px}.project-info .eyebrow{font-size:8px}.experience-layout{grid-template-columns:1fr;margin-top:30px;gap:12px}.experience-tabs{display:flex;flex-direction:row;overflow:auto;gap:20px}.experience-tabs button{white-space:nowrap;font-size:12px;gap:10px;padding:17px 0}.experience-tabs button span{display:none}#exp-panel{min-height:290px}.contact-overline{font-size:11px;line-height:1.8}.contact h2{font-size:54px;letter-spacing:-3px}.contact-actions{gap:16px}.button{font-size:11px;padding:14px 19px;gap:20px}.copy-email{font-size:10px}.socials{margin-top:55px}footer{padding:25px 6%;gap:15px}footer .brand{font-size:18px}footer>span{font-size:8px}footer>a:last-child{font-size:9px}dialog{padding:45px 25px}dialog h2{font-size:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1;transform:none}}
