@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Inter:wght@400;500;600;700&display=swap";:root{--bg:#070707;--surface:#0d0d0d;--surface-2:#111;--text:#f4f4f1;--muted:#858585;--muted-light:#a5a5a5;--border:#242424;--border-light:#303030;--accent:#b7ff4a;--content-width:1280px;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{background:radial-gradient(circle at 50% -20%, #b7ff4a0e, transparent 38%), var(--bg);min-width:320px;color:var(--text);margin:0;overflow-x:hidden}body:before{content:"";pointer-events:none;opacity:.025;z-index:9999;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='.8'/%3E%3C/svg%3E");position:fixed;inset:0}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}::selection{background:var(--accent);color:#000}.navbar{border-bottom:1px solid var(--border);z-index:10;justify-content:space-between;align-items:center;width:100%;height:82px;margin:0;padding:0 48px;display:flex;position:relative}.navbar-logo{letter-spacing:-.04em;font-family:DM Mono,monospace;font-size:17px;font-weight:500}.navbar-links{letter-spacing:.04em;justify-content:flex-end;align-items:center;gap:42px;font-family:DM Mono,monospace;font-size:11px;display:flex}.navbar-links a{color:var(--muted);align-items:center;gap:5px;transition:color .2s,transform .2s;display:flex}.navbar-links a:hover{color:var(--text)}.navbar-links .resume-link{color:var(--bg);background:var(--accent);padding:10px 15px;font-weight:500;transition:transform .2s,box-shadow .2s}.navbar-links .resume-link:hover{color:var(--bg);transform:translateY(-2px);box-shadow:0 0 25px #b7ff4a2e}.hero{width:100%;min-height:calc(100vh - 82px);padding-left:max(32px, calc((100vw - var(--content-width)) / 2));padding-right:max(32px, calc((100vw - var(--content-width)) / 2));align-items:center;margin:0;display:flex;position:relative;overflow:hidden}.hero-grid{pointer-events:none;background-image:linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff09 1px,#0000 1px);background-size:70px 70px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0%,#000000b3 55%,#0000 100%);mask-image:linear-gradient(#000 0%,#000000b3 55%,#0000 100%)}.hero-glow{filter:blur(120px);pointer-events:none;background:#b7ff4a0e;border-radius:50%;width:650px;height:650px;position:absolute;top:5%;right:-15%}.hero-content{width:100%;max-width:var(--content-width);z-index:2;margin:0 auto;padding:100px 0 130px;position:relative}.hero-label{color:var(--muted);letter-spacing:.08em;align-items:center;gap:9px;margin-bottom:35px;font-family:DM Mono,monospace;font-size:11px;display:flex}.status-dot{background:var(--accent);border-radius:50%;width:7px;height:7px;box-shadow:0 0 12px #b7ff4ab3}.hero h1{letter-spacing:-.075em;max-width:1050px;margin:0;font-size:clamp(58px,9vw,128px);font-weight:600;line-height:.88}.hero-outline{color:#0000;-webkit-text-stroke:1px #676767;transition:color .4s,-webkit-text-stroke .4s}.hero h1:hover .hero-outline{color:var(--accent);-webkit-text-stroke:0 transparent}.hero-bottom{justify-content:space-between;align-items:end;max-width:950px;margin-top:65px;display:flex}.hero-description{max-width:420px;color:var(--muted-light);margin:0;font-size:15px;line-height:1.75}.hero-actions{align-items:center;gap:20px;display:flex}.hero-primary,.hero-secondary{letter-spacing:.04em;align-items:center;gap:9px;font-family:DM Mono,monospace;font-size:11px;display:flex}.hero-primary{color:var(--bg);background:var(--accent);padding:14px 17px;transition:transform .2s,box-shadow .2s}.hero-primary:hover{transform:translateY(-3px);box-shadow:0 10px 35px #b7ff4a1f}.hero-secondary{color:var(--muted);transition:color .2s}.hero-secondary:hover{color:var(--text)}.hero-meta{bottom:28px;left:max(32px, calc((100vw - var(--content-width)) / 2));color:#555;letter-spacing:.1em;align-items:center;gap:13px;font-family:DM Mono,monospace;font-size:9px;display:flex;position:absolute}.hero-meta-line{background:#333;width:25px;height:1px}.projects-section,.about-section,.tech-section{width:100%;max-width:var(--content-width);margin:0 auto}.projects-section{padding:150px 32px 130px}.section-header{justify-content:space-between;align-items:end;margin-bottom:65px;display:flex}.section-label{color:#656565;letter-spacing:.1em;margin-bottom:18px;font-family:DM Mono,monospace;font-size:10px;display:block}.section-header h2{letter-spacing:-.055em;margin:0;font-size:52px;line-height:1}.section-link{color:var(--muted);border-bottom:1px solid #444;align-items:center;gap:6px;padding-bottom:5px;font-family:DM Mono,monospace;font-size:10px;transition:color .2s,border-color .2s;display:flex}.section-link:hover{color:var(--accent);border-color:var(--accent)}.projects-list{flex-direction:column;gap:20px;display:flex}.project-card{border:1px solid var(--border);background:var(--surface);grid-template-columns:46% 54%;min-height:560px;transition:border-color .35s,transform .35s;display:grid;position:relative;overflow:hidden}.project-card:hover{border-color:var(--border-light);transform:translateY(-4px)}.project-visual-wrapper{border-right:1px solid var(--border);background:radial-gradient(circle,#ffffff0b,#0000 60%);min-height:560px;position:relative;overflow:hidden}.project-number{color:#555;letter-spacing:.1em;z-index:3;font-family:DM Mono,monospace;font-size:10px;position:absolute;top:24px;left:25px}.project-year{color:#555;z-index:3;font-family:DM Mono,monospace;font-size:10px;position:absolute;top:24px;right:25px}.visual{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.books-visual{background:radial-gradient(circle,#b7ff4a12,#0000 45%)}.book{color:#777;background:linear-gradient(145deg,#171717,#0b0b0b);border:1px solid #333;flex-direction:column;justify-content:center;align-items:center;gap:14px;width:155px;height:205px;display:flex;position:absolute;box-shadow:20px 30px 60px #00000080}.book span{letter-spacing:.15em;font-family:DM Mono,monospace;font-size:10px}.book-one{transform:rotate(-5deg)translate(-45px)}.book-two{opacity:.7;transform:rotate(7deg)translate(75px)translateY(20px)}.cloud-node{width:72px;height:72px;color:var(--accent);background:#b7ff4a0f;border:1px solid #b7ff4a4d;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;box-shadow:0 0 50px #b7ff4a1a}.visual-line{transform-origin:50%;background:linear-gradient(90deg,#0000,#b7ff4a59,#0000);width:130px;height:1px;position:absolute}.line-one{transform:rotate(28deg)translateY(-65px)}.line-two{transform:rotate(-22deg)translateY(70px)}.filesystem-visual{background:radial-gradient(circle,#b7ff4a0b,#0000 55%);gap:55px}.device{background:#0a0a0a;border:1px solid #303030;width:150px;min-height:230px;padding:18px;position:relative;box-shadow:0 25px 60px #0006}.device>svg{color:#777}.device-screen{color:#666;flex-direction:column;gap:10px;margin-top:20px;font-family:DM Mono,monospace;font-size:9px;display:flex}.device-screen svg{color:#555}.filesystem-connection{background:linear-gradient(90deg, transparent, var(--accent), transparent);width:80px;height:1px;box-shadow:0 0 15px #b7ff4a4d}.terminal-visual{background:radial-gradient(circle,#b7ff4a0b,#0000 55%)}.terminal-window{background:#090909;border:1px solid #2a2a2a;width:78%;max-width:480px;box-shadow:0 35px 80px #00000080}.terminal-header{border-bottom:1px solid #202020;align-items:center;height:38px;padding:0 13px;display:flex;position:relative}.terminal-header>span{background:#333;border-radius:50%;width:6px;height:6px;margin-right:5px}.terminal-header>div{color:#555;align-items:center;gap:6px;font-family:DM Mono,monospace;font-size:9px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.terminal-body{color:#777;padding:25px;font-family:DM Mono,monospace;font-size:11px;line-height:1.8}.terminal-body p{margin:0}.terminal-green{color:var(--accent)}.terminal-output{color:#4e4e4e;margin-bottom:7px!important}.cursor{vertical-align:middle;background:var(--accent);width:7px;height:12px;animation:1s steps(2,end) infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.project-content{flex-direction:column;min-width:0;padding:48px;display:flex}.project-heading{justify-content:space-between;align-items:start;gap:20px;display:flex}.project-category{letter-spacing:.1em;color:#5f5f5f;margin:0 0 13px;font-family:DM Mono,monospace;font-size:9px}.project-heading h3{letter-spacing:-.06em;margin:0;font-size:52px;font-weight:600;line-height:.95}.project-arrow{color:#666;border:1px solid #2a2a2a;justify-content:center;align-items:center;width:44px;height:44px;transition:color .25s,background .25s,border-color .25s,transform .25s;display:flex}.project-card:hover .project-arrow{color:var(--bg);background:var(--accent);border-color:var(--accent);transform:rotate(45deg)}.project-description{max-width:500px;color:var(--muted);margin:35px 0 0;font-size:15px;line-height:1.8}.project-stack{flex-wrap:wrap;gap:7px;margin-top:auto;padding-top:50px;display:flex}.project-stack span{color:#666;border:1px solid #292929;padding:8px 10px;font-family:DM Mono,monospace;font-size:9px;transition:border-color .2s,color .2s}.project-card:hover .project-stack span{color:#888;border-color:#333}.project-link{color:#777;border-bottom:1px solid #444;align-items:center;gap:6px;width:fit-content;margin-top:30px;padding-bottom:5px;font-family:DM Mono,monospace;font-size:10px;transition:color .2s,border-color .2s;display:flex}.project-link:hover{color:var(--accent);border-color:var(--accent)}.about-section{border-top:1px solid var(--border);padding:160px 32px}.about-grid{grid-template-columns:1.2fr .8fr;align-items:start;gap:120px;display:grid}.about-grid h2{letter-spacing:-.065em;max-width:700px;margin:0;font-size:clamp(48px,6vw,82px);line-height:.98}.about-grid h2 span{color:#555}.about-copy{padding-top:8px}.about-copy p{color:var(--muted);margin:0 0 25px;font-size:15px;line-height:1.85}.text-link{color:#777;border-bottom:1px solid #444;align-items:center;gap:7px;width:fit-content;margin-top:35px;padding-bottom:5px;font-family:DM Mono,monospace;font-size:10px;transition:color .2s,border-color .2s;display:flex}.text-link:hover{color:var(--accent);border-color:var(--accent)}.tech-section{padding:0 32px 160px}.tech-header{justify-content:space-between;align-items:end;margin-bottom:60px;display:flex}.tech-header h2{letter-spacing:-.065em;margin:0;font-size:clamp(48px,6vw,78px);line-height:.95}.tech-header h2 span{color:#555}.tech-header p{max-width:280px;color:var(--muted);margin:0;font-size:13px;line-height:1.7}.tech-grid{border-top:1px solid var(--border);border-left:1px solid var(--border);grid-template-columns:repeat(4,1fr);display:grid}.tech-item{border-right:1px solid var(--border);border-bottom:1px solid var(--border);color:#777;align-items:center;min-height:95px;padding:20px;font-family:DM Mono,monospace;font-size:12px;transition:color .25s,background .25s;display:flex}.tech-item:hover{color:var(--accent);background:#b7ff4a06}.footer{border-top:1px solid var(--border);width:100%;padding:140px 48px 35px}.footer-main{justify-content:space-between;align-items:end;gap:80px;width:100%;display:flex}.footer-main h2{letter-spacing:-.075em;margin:0;font-size:clamp(60px,8vw,110px);line-height:.88}.footer-contact{flex-direction:column;justify-content:end;align-items:flex-end;padding-bottom:8px;display:flex}.footer-email{border-bottom:1px solid #444;align-items:center;gap:8px;padding-bottom:8px;font-family:DM Mono,monospace;font-size:14px;transition:color .2s,border-color .2s;display:flex}.footer-email:hover{color:var(--accent);border-color:var(--accent)}.footer-socials{justify-content:flex-end;gap:30px;margin-top:40px;display:flex}.footer-socials a{color:#666;align-items:center;gap:7px;font-family:DM Mono,monospace;font-size:10px;transition:color .2s;display:flex}.footer-socials a:hover{color:var(--text)}.footer-bottom{border-top:1px solid var(--border);color:#4d4d4d;grid-template-columns:1fr 1fr 1fr;align-items:center;width:100%;margin-top:120px;padding-top:20px;font-family:DM Mono,monospace;font-size:9px;display:grid}.footer-bottom span:nth-child(2){text-align:center}.footer-bottom a{text-align:right;transition:color .2s}.footer-bottom a:hover{color:var(--accent)}@media (width<=900px){.navbar{padding:0 28px}.navbar-links{gap:25px}.hero h1{font-size:clamp(54px,10vw,90px)}.hero-bottom{flex-direction:column;align-items:start;gap:30px}.project-card{grid-template-columns:1fr}.project-visual-wrapper{border-right:none;border-bottom:1px solid var(--border);min-height:450px}.project-content{min-height:420px}.about-grid{grid-template-columns:1fr;gap:60px}.tech-grid{grid-template-columns:repeat(3,1fr)}.footer{padding-left:32px;padding-right:32px}.footer-main{flex-direction:column;align-items:start}.footer-contact{align-items:start}.footer-socials{justify-content:flex-start}}@media (width<=650px){.navbar{grid-template-columns:auto 1fr;height:70px;padding-left:18px;padding-right:18px}.navbar-links{justify-self:end;gap:15px;font-size:9px}.navbar-links a:nth-child(2),.navbar-links .nav-external{display:none}.navbar-links .resume-link{padding:8px 10px}.hero{min-height:calc(100svh - 70px);padding-left:18px;padding-right:18px}.hero-content{padding:70px 0 100px}.hero h1{font-size:clamp(49px,14vw,75px);line-height:.9}.hero-description{font-size:14px}.hero-actions{flex-direction:column;align-items:start;gap:20px}.hero-meta{display:none}.projects-section{padding:100px 18px}.section-header{margin-bottom:40px}.section-header h2{font-size:43px}.project-visual-wrapper{min-height:350px}.project-content{min-height:400px;padding:30px}.project-heading h3{font-size:42px}.project-description{margin-top:25px;font-size:14px}.project-stack{padding-top:35px}.book{width:115px;height:155px}.book-one{transform:rotate(-5deg)translate(-30px)}.book-two{transform:rotate(7deg)translate(50px)translateY(15px)}.filesystem-visual{gap:20px}.device{width:120px}.filesystem-connection{width:35px}.about-section{padding:110px 18px}.about-grid h2{font-size:50px}.tech-section{padding:0 18px 110px}.tech-header{flex-direction:column;align-items:start;gap:25px}.tech-grid{grid-template-columns:repeat(2,1fr)}.tech-item{min-height:75px}.footer{padding:100px 18px 30px}.footer-main{gap:60px}.footer-main h2{font-size:65px}.footer-contact{align-items:start}.footer-socials{justify-content:flex-start}.footer-bottom{flex-wrap:wrap;gap:15px;margin-top:80px;display:flex}.footer-bottom span:nth-child(2),.footer-bottom a{text-align:left}}
