@import"https://fonts.googleapis.com/css2?family=Rajdhani:wght@500;600;700&family=Space+Grotesk:wght@400;500;600&display=swap";:root{--bg: #090b16;--bg-elev: #0f1224;--panel: rgba(15, 18, 36, .78);--ink: #eaf5ff;--muted: #9eb0c7;--line: rgba(105, 218, 255, .26);--line-soft: rgba(105, 218, 255, .14);--accent: #69daff;--accent-2: #ff4dd8;--shadow: 0 18px 44px rgba(0, 0, 0, .45);--cut-panel: 18px;--cut-button: 10px;--stroke-width: 1px}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{position:relative;overflow-x:hidden;font-family:Space Grotesk,Avenir Next,Segoe UI,sans-serif;color:var(--ink);background:radial-gradient(circle at 18% -5%,rgba(105,218,255,.2),transparent 34%),radial-gradient(circle at 88% 12%,rgba(255,77,216,.15),transparent 34%),var(--bg);line-height:1.55}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:linear-gradient(rgba(105,218,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(105,218,255,.06) 1px,transparent 1px);background-size:42px 42px,42px 42px;-webkit-mask-image:radial-gradient(circle at center,black 45%,transparent 100%);mask-image:radial-gradient(circle at center,black 45%,transparent 100%);z-index:-1}a{color:inherit;text-decoration:none}.site-shell{max-width:1100px;margin:0 auto;padding:1.5rem 1.1rem 3rem}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.6rem 0}.logo{display:inline-flex;align-items:center;gap:.55rem}.logo-mark{width:auto;height:clamp(64px,11vw,120px);max-width:min(58vw,260px);object-fit:contain;border-radius:8px;filter:drop-shadow(0 0 8px rgba(105,218,255,.5))}.nav{display:flex;gap:.65rem;color:var(--muted);font-size:.92rem}:is(.nav-link,.project-card,.project-link,.contact,.btn){position:relative;z-index:0;border:0;border-radius:0;clip-path:polygon(0 0,calc(100% - var(--cut-size)) 0,100% var(--cut-size),100% 100%,var(--cut-size) 100%,0 calc(100% - var(--cut-size)));background:transparent}:is(.nav-link,.project-card,.project-link,.contact,.btn):before,:is(.nav-link,.project-card,.project-link,.contact,.btn):after{content:"";position:absolute;pointer-events:none}:is(.nav-link,.project-card,.project-link,.contact,.btn):before{top:0;right:0;bottom:0;left:0;z-index:-2;clip-path:inherit;background:var(--stroke-color, transparent)}:is(.nav-link,.project-card,.project-link,.contact,.btn):after{inset:var(--stroke-width);z-index:-1;clip-path:polygon(0 0,calc(100% - (var(--cut-size) - var(--stroke-width))) 0,100% calc(var(--cut-size) - var(--stroke-width)),100% 100%,calc(var(--cut-size) - var(--stroke-width)) 100%,0 calc(100% - (var(--cut-size) - var(--stroke-width))));background:var(--fill-color, transparent)}.nav-link{--cut-size: var(--cut-button);--stroke-color: transparent;--fill-color: transparent;padding:.35rem .75rem;transition:border-color .18s ease,color .18s ease,background-color .18s ease}.nav-link:hover{color:var(--ink);--stroke-color: var(--line)}.nav-link.active{color:#0b0f1a;--fill-color: linear-gradient(125deg, var(--accent), #8af1ff);--stroke-color: transparent}.section{margin-top:2rem}.page{animation:slide-in .42s ease-out both}.section-head{margin-bottom:1.1rem}.eyebrow{margin:0;font-family:Rajdhani,Space Grotesk,sans-serif;font-size:24pt;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}h1,h2,h3,p{margin-top:0}h2{margin:.45rem 0 0;font-family:Rajdhani,Space Grotesk,sans-serif;font-size:clamp(1.7rem,4vw,2.5rem);line-height:1.05;letter-spacing:.02em}h3{font-family:Rajdhani,Space Grotesk,sans-serif;letter-spacing:.02em;font-size:clamp(1.45rem,3vw,1.9rem);margin-bottom:.35rem}.lead,.project-description{color:var(--muted)}.project-grid{display:grid;gap:1.1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.project-card{--cut-size: var(--cut-panel);--stroke-color: var(--line-soft);--fill-color: linear-gradient(160deg, rgba(12, 15, 30, .92), rgba(13, 18, 38, .86));overflow:hidden;box-shadow:inset 0 0 0 2px #ff4dd80a}.project-card>*{position:relative;z-index:1}.project-image{display:block;width:100%;height:clamp(180px,24vw,280px);object-fit:cover;border-bottom:1px solid var(--line-soft)}.project-body{padding:1rem 1.1rem 1.15rem}.project-description{margin-bottom:1rem}.project-links{display:flex;flex-wrap:wrap;gap:.55rem}.project-link{--cut-size: var(--cut-button);--stroke-color: var(--line);--fill-color: rgba(105, 218, 255, .08);display:inline-flex;align-items:center;gap:.45rem;max-width:100%;padding:.45rem .7rem;color:var(--ink);font-size:.84rem}.project-link:hover{--stroke-color: var(--accent);box-shadow:0 0 18px #69daff38}.project-link-icon{display:inline-flex;flex-shrink:0;font-size:1rem}.project-link span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact{--cut-size: var(--cut-panel);--stroke-color: var(--line);--fill-color: linear-gradient(155deg, rgba(105, 218, 255, .12), transparent 40%), linear-gradient(320deg, rgba(255, 77, 216, .14), transparent 50%), var(--bg-elev);padding:clamp(1.2rem,4vw,2.5rem);box-shadow:var(--shadow)}.contact>*{position:relative;z-index:1}.contact-copy{max-width:52ch;color:var(--muted);font-size:clamp(1rem,2vw,1.08rem);margin-bottom:.4rem}.contact-inline-link{color:var(--accent);text-decoration:underline;text-underline-offset:.18em}.contact-inline-link:hover{color:#9befff}.btn{--cut-size: var(--cut-button);--stroke-color: var(--line);--fill-color: transparent;display:inline-block;margin-top:.75rem;padding:.72rem 1.12rem;font-family:Rajdhani,Space Grotesk,sans-serif;text-transform:uppercase;letter-spacing:.06em;font-weight:700;transition:transform .18s ease,box-shadow .18s ease}.btn:hover{transform:translateY(-1px);--stroke-color: var(--accent);box-shadow:0 0 22px #69daff40}.btn-primary{--fill-color: linear-gradient(125deg, var(--accent), #8af1ff);color:#09101b}.reveal{opacity:0;transform:translateY(10px);animation:reveal .55s ease forwards}.project-grid .reveal:nth-child(2){animation-delay:80ms}.project-grid .reveal:nth-child(3){animation-delay:.16s}@keyframes slide-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes reveal{to{opacity:1;transform:translateY(0)}}@media (max-width: 900px){.project-grid{grid-template-columns:1fr}}@media (max-width: 640px){.topbar{flex-direction:column;align-items:stretch}.logo{justify-content:center}.nav{width:100%}.logo-mark{height:clamp(64px,20vw,96px);max-width:72vw}.nav-link{flex:1;text-align:center}}.site-footer{display:flex;justify-content:flex-end;margin-top:2.2rem;padding-top:.8rem}.copyright{margin:0;color:#9eb0c7c7;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase}@media (max-width: 640px){.site-footer{margin-top:1.6rem}.copyright{font-size:.64rem}}
