:root{--cyan:#00e5ff;--cyan-dim:#00b8d4;--navy:#050d1a;--navy-mid:#0a1628;--navy-light:#0f2040;--white:#e8f4f8;--gray:#94a3b8;--grid:#00e5ff0a}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--navy);color:var(--white);cursor:none;font-family:Rajdhani,sans-serif;overflow-x:hidden}.cursor{background:var(--cyan);pointer-events:none;z-index:9999;border-radius:50%;width:8px;height:8px;transition:transform .1s;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.cursor-ring{pointer-events:none;z-index:9998;border:1px solid #00e5ff66;border-radius:50%;width:32px;height:32px;transition:all .15s;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.grid-bg{background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);z-index:0;pointer-events:none;background-size:60px 60px;position:fixed;inset:0}.scanlines{pointer-events:none;z-index:1;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000008 2px 4px);position:fixed;inset:0}nav{z-index:100;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#050d1ad9;border-bottom:1px solid #00e5ff14;justify-content:space-between;align-items:center;padding:24px 48px;display:flex;position:fixed;top:0;left:0;right:0}.nav-logo{align-items:center;gap:12px;text-decoration:none;display:flex}.nav-logo svg{width:32px;height:32px;filter:drop-shadow(0 0 8px var(--cyan))}.nav-wordmark{letter-spacing:.2em;color:var(--cyan);text-transform:uppercase;font-family:Rajdhani,sans-serif;font-size:18px;font-weight:700}.nav-links{gap:40px;list-style:none;display:flex}.nav-links a{letter-spacing:.15em;color:var(--gray);text-transform:uppercase;font-family:Space Mono,monospace;font-size:11px;text-decoration:none;transition:color .2s;position:relative}.nav-links a:after{content:"";background:var(--cyan);width:0;height:1px;transition:width .3s;position:absolute;bottom:-4px;left:0}.nav-links a:hover{color:var(--cyan)}.nav-links a:hover:after{width:100%}.nav-cta{letter-spacing:.15em;color:var(--navy);background:var(--cyan);text-transform:uppercase;clip-path:polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%);padding:10px 24px;font-family:Space Mono,monospace;font-size:11px;text-decoration:none;transition:background .2s,filter .2s}.nav-cta:hover{filter:drop-shadow(0 0 12px var(--cyan));background:#fff}.hero{z-index:2;flex-direction:column;justify-content:center;min-height:100vh;padding:0 48px 0 80px;display:flex;position:relative;overflow:hidden}.hero-tag{letter-spacing:.3em;color:var(--cyan);text-transform:uppercase;opacity:0;margin-bottom:32px;font-family:Space Mono,monospace;font-size:11px;animation:.6s .3s forwards fadeUp}.hero-tag:before{content:"// ";opacity:.5}.hero-headline{letter-spacing:-.02em;text-transform:uppercase;opacity:0;font-family:Rajdhani,sans-serif;font-size:clamp(56px,8vw,110px);font-weight:700;line-height:.95;animation:.7s .5s forwards fadeUp}.hero-headline .line-1{color:var(--white);display:block;position:relative}.hero-headline .line-2{color:var(--cyan);display:block;position:relative}.hero-headline .line-2:after{content:"";background:linear-gradient(90deg, var(--cyan), transparent);width:100%;height:3px;position:absolute;bottom:-4px;left:0}.hero-sub{color:var(--gray);opacity:0;max-width:520px;margin-top:40px;font-family:Space Mono,monospace;font-size:13px;line-height:1.8;animation:.7s .7s forwards fadeUp}.hero-cta-group{opacity:0;align-items:center;gap:32px;margin-top:56px;animation:.7s .9s forwards fadeUp;display:flex}.btn-primary{letter-spacing:.15em;text-transform:uppercase;color:var(--navy);background:var(--cyan);clip-path:polygon(12px 0%,100% 0%,calc(100% - 12px) 100%,0% 100%);padding:16px 40px;font-family:Space Mono,monospace;font-size:12px;text-decoration:none;transition:filter .2s;position:relative}.btn-primary:hover{filter:drop-shadow(0 0 20px var(--cyan))}.btn-ghost{letter-spacing:.15em;text-transform:uppercase;color:var(--cyan);align-items:center;gap:8px;font-family:Space Mono,monospace;font-size:12px;text-decoration:none;transition:gap .2s;display:flex}.btn-ghost:hover{gap:16px}.btn-ghost span{font-size:18px}.hero-v{opacity:.04;filter:blur(1px);width:600px;height:600px;position:absolute;top:50%;right:-60px;transform:translateY(-50%)}.hero-stats{opacity:0;flex-direction:column;gap:4px;animation:.7s 1.1s forwards fadeUp;display:flex;position:absolute;bottom:80px;right:80px}.stat-line{align-items:baseline;gap:12px;display:flex}.stat-num{color:var(--cyan);font-family:Space Mono,monospace;font-size:28px;font-weight:700}.stat-label{letter-spacing:.2em;color:var(--gray);text-transform:uppercase;font-family:Rajdhani,sans-serif;font-size:12px}.stat-divider{background:#00e5ff33;width:1px;height:40px;margin:0 auto}.scroll-hint{letter-spacing:.2em;color:var(--gray);text-transform:uppercase;opacity:0;align-items:center;gap:12px;font-family:Space Mono,monospace;font-size:10px;animation:.6s 1.3s forwards fadeUp;display:flex;position:absolute;bottom:32px;left:80px}.scroll-line{background:var(--gray);width:40px;height:1px;animation:1.5s 2s infinite expandLine}@keyframes expandLine{0%,to{opacity:1;width:40px}50%{opacity:.5;width:80px}}section{z-index:2;position:relative}.section-header{align-items:center;gap:24px;margin-bottom:64px;display:flex}.section-num{color:var(--cyan);opacity:.5;font-family:Space Mono,monospace;font-size:11px}.section-title{text-transform:uppercase;letter-spacing:-.02em;font-family:Rajdhani,sans-serif;font-size:clamp(32px,4vw,52px);font-weight:700}.section-line{background:linear-gradient(90deg,#00e5ff4d,#0000);flex:1;height:1px}#services{border-top:1px solid #00e5ff0f;padding:120px 80px}.services-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.services-grid--centered{grid-template-columns:minmax(0,1fr);max-width:calc(33.3333% - 16px);margin:24px auto 0}@keyframes card-grid-move{0%{background-position:0 0}to{background-position:30px 30px}}.service-card{background:var(--navy-mid);cursor:none;border:1px solid #00e5ff14;border-radius:16px;padding:32px;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s,border-color .3s;position:relative;overflow:hidden}.service-card:hover{border-color:#00e5ff4d;transform:translateY(-4px)scale(1.01);box-shadow:0 20px 40px -5px #0006,0 0 0 1px #00e5ff33}.service-card:before{content:"";pointer-events:none;opacity:.5;z-index:0;background-image:linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);background-size:30px 30px;transition:opacity .5s;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 40%,#0000 100%);mask-image:linear-gradient(#000 40%,#0000 100%)}.service-card:hover:before{opacity:.9;animation:20s linear infinite card-grid-move}.service-card:after{content:"";filter:blur(40px);pointer-events:none;z-index:0;background:radial-gradient(circle,#00e5ff33 0%,#0000 70%);width:150px;height:150px;transition:transform .5s,background .5s;position:absolute;top:-50px;right:-50px}.service-card:hover:after{background:radial-gradient(circle,#00e5ff59 0%,#0000 70%);transform:scale(1.5)}.service-card>*{z-index:1;position:relative}.service-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.service-brand-icons{flex-wrap:wrap;gap:6px;display:flex}.service-brand-chip{letter-spacing:.05em;color:var(--gray);background:#ffffff0a;border:1px solid #ffffff14;border-radius:6px;align-items:center;gap:5px;padding:4px 8px;font-family:Space Mono,monospace;font-size:9px;transition:background .2s,border-color .2s,color .2s;display:flex}.service-brand-chip svg{flex-shrink:0;transition:filter .2s}.service-card:hover .service-brand-chip{color:var(--white);background:#ffffff12;border-color:#ffffff24}.service-card-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.service-num{color:var(--gray);letter-spacing:.1em;font-family:Space Mono,monospace;font-size:10px}.service-github-btn{width:28px;height:28px;color:var(--gray);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;transition:color .2s,background .2s,border-color .2s,transform .2s;display:flex}.service-github-btn:hover{color:var(--white);background:#ffffff14;border-color:#ffffff1f;transform:translateY(-2px)}.service-name{letter-spacing:.05em;text-transform:uppercase;color:var(--white);align-items:center;gap:8px;margin-bottom:12px;font-family:Rajdhani,sans-serif;font-size:22px;font-weight:700;display:flex}.service-name-cursor{background:var(--cyan);width:8px;height:3px;box-shadow:0 0 8px var(--cyan);animation:1s step-end infinite blink;display:inline-block}.service-desc{color:var(--gray);margin-bottom:24px;font-family:Space Mono,monospace;font-size:11px;line-height:1.9}.service-tags{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.tag{letter-spacing:.1em;color:var(--cyan);text-transform:uppercase;background:#00e5ff0f;border:1px solid #00e5ff26;border-radius:6px;padding:4px 10px;font-family:Space Mono,monospace;font-size:9px;transition:background .2s,box-shadow .2s,transform .2s}.tag:hover{background:#00e5ff1f;transform:translateY(-1px);box-shadow:0 0 10px #00e5ff33}#process{background:var(--navy-mid);border-top:1px solid #00e5ff0f;padding:120px 80px}.process-list{grid-template-columns:repeat(4,1fr);gap:0;display:grid;position:relative}.process-list:before{content:"";background:linear-gradient(90deg, transparent, var(--cyan), transparent);opacity:.2;height:1px;position:absolute;top:36px;left:10%;right:10%}.process-step{padding:0 32px 0 0;position:relative}.step-dot{border:1px solid #00e5ff33;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin-bottom:32px;transition:border-color .3s;display:flex;position:relative}.step-dot:before{content:"";background:linear-gradient(45deg, var(--cyan), transparent) border-box;-webkit-mask-composite:destination-out;opacity:0;border:1px solid #0000;border-radius:50%;transition:opacity .3s;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:padding-box,border-box;-webkit-mask-origin:padding-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.process-step:hover .step-dot:before{opacity:1}.step-num{color:var(--cyan);font-family:Space Mono,monospace;font-size:18px;font-weight:700}.step-title{text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px;font-family:Rajdhani,sans-serif;font-size:18px;font-weight:700}.step-desc{color:var(--gray);font-family:Space Mono,monospace;font-size:10px;line-height:1.9}#about{border-top:1px solid #00e5ff0f;grid-template-columns:1fr 1fr;align-items:center;gap:120px;padding:120px 80px;display:grid}.about-content .section-header{margin-bottom:40px}.about-body{color:var(--gray);margin-bottom:24px;font-family:Space Mono,monospace;font-size:12px;line-height:1.9}.about-body strong{color:var(--white);font-weight:400}.about-visual{height:400px;position:relative}.stack-badge{letter-spacing:.1em;text-transform:uppercase;background:var(--navy-mid);color:var(--cyan);white-space:nowrap;border:1px solid #00e5ff33;padding:10px 16px;font-family:Space Mono,monospace;font-size:10px;transition:border-color .3s,background .3s;position:absolute}.stack-badge:hover{border-color:var(--cyan);background:#00e5ff14}#contact{background:var(--navy-mid);text-align:center;border-top:1px solid #00e5ff0f;padding:120px 80px}.contact-headline{text-transform:uppercase;letter-spacing:-.02em;margin-bottom:40px;font-family:Rajdhani,sans-serif;font-size:clamp(48px,6vw,88px);font-weight:700;line-height:.9}.contact-headline em{color:var(--cyan);font-style:normal;display:block}.contact-sub{color:var(--gray);margin-bottom:56px;font-family:Space Mono,monospace;font-size:12px;line-height:1.9}.contact-email{letter-spacing:.1em;color:var(--white);border-bottom:1px solid #00e5ff4d;padding-bottom:4px;font-family:Rajdhani,sans-serif;font-size:24px;font-weight:600;text-decoration:none;transition:color .2s,border-color .2s}.contact-email:hover{color:var(--cyan);border-color:var(--cyan)}footer{z-index:2;border-top:1px solid #00e5ff0f;justify-content:space-between;align-items:center;padding:32px 80px;display:flex;position:relative}.footer-copy{letter-spacing:.1em;color:var(--gray);text-transform:uppercase;font-family:Space Mono,monospace;font-size:10px}.footer-links{gap:32px;list-style:none;display:flex}.footer-links a{letter-spacing:.1em;color:var(--gray);text-transform:uppercase;font-family:Space Mono,monospace;font-size:10px;text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--cyan)}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float1{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes float2{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}.blink{animation:1s step-end infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.glitch{position:relative;overflow:hidden}.glitch:before,.glitch:after{content:attr(data-text);clip-path:polygon(0 30%,100% 30%,100% 50%,0 50%);width:100%;height:100%;position:absolute;top:0;left:0}.glitch:before{color:#ff003c;opacity:0;animation:4s infinite glitch1;transform:translate(-2px)}.glitch:after{color:var(--cyan);opacity:0;animation:4s infinite glitch2;transform:translate(2px)}@keyframes glitch1{0%,90%,to{opacity:0}92%{opacity:.8;clip-path:polygon(0 20%,100% 20%,100% 40%,0 40%);transform:translate(-4px)skew(-5deg)}94%{opacity:0}96%{opacity:.6;clip-path:polygon(0 60%,100% 60%,100% 80%,0 80%);transform:translate(4px)}98%{opacity:0}}@keyframes glitch2{0%,92%,to{opacity:0}93%{opacity:.7;clip-path:polygon(0 40%,100% 40%,100% 60%,0 60%);transform:translate(4px)skew(3deg)}95%{opacity:0}}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(30px)}.reveal.visible{opacity:1;transform:translateY(0)}@media (width<=900px){nav{gap:12px;padding:16px 20px}.nav-links{display:none}.nav-wordmark{font-size:15px}.nav-cta{white-space:nowrap;padding:8px 14px;font-size:10px}.hero{min-height:100svh;padding:100px 24px 200px}.hero-stats{opacity:1;flex-flow:wrap;gap:16px;margin-top:40px;animation:none;position:static}.stat-divider{width:1px;height:32px}.stat-num{font-size:20px}.scroll-hint{opacity:1;margin-top:32px;animation:none;position:static}#services,#process,#contact,footer{padding:80px 24px}.services-grid{grid-template-columns:1fr}.services-grid--centered{max-width:100%}.process-list{grid-template-columns:1fr 1fr;gap:48px}#about{grid-template-columns:1fr;gap:60px;padding:80px 24px}.about-visual{display:none}}
