:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#e9edf5;font-synthesis:none;text-rendering:optimizelegibility;--background:#080b11;--surface:#0d1119;--surface-raised:#111722;--line:#9daec92e;--line-strong:#9daec957;--text:#e9edf5;--muted:#99a6b9;--accent:#72a7f5;--accent-bright:#9bc2ff;--accent-soft:#4b82d624;background:#080b11;font-family:DM Sans,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{background:radial-gradient(circle at 85% 12%, #264e8b26, transparent 26rem), linear-gradient(#ffffff04 1px, transparent 1px), linear-gradient(90deg, #ffffff04 1px, transparent 1px), var(--background);background-size:auto,80px 80px,80px 80px,auto;min-width:320px;min-height:100vh;margin:0}body,button,a{-webkit-font-smoothing:antialiased}a{color:inherit}button{font:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3,.brand{font-family:Manrope,sans-serif}.skip-link{z-index:100;background:var(--accent-bright);color:#07101e;padding:.75rem 1rem;font-weight:700;position:fixed;top:1rem;left:1rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:2px solid var(--accent-bright);outline-offset:4px}.site-header,.section-shell,.site-footer{width:min(1180px,100% - 48px);margin-inline:auto}.site-header{z-index:50;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#080b11d1;justify-content:space-between;align-items:center;height:78px;display:flex;position:sticky;top:0}.brand{letter-spacing:-.02em;align-items:center;gap:.75rem;font-weight:700;text-decoration:none;display:flex}.brand-mark{border:1px solid var(--line-strong);width:35px;height:35px;color:var(--accent-bright);letter-spacing:.08em;place-items:center;font-size:.68rem;display:grid}.site-nav{gap:1.65rem;display:flex}.site-nav a{color:var(--muted);font-size:.82rem;font-weight:600;text-decoration:none;position:relative}.site-nav a:after{content:"";transform-origin:100%;background:var(--accent);height:1px;transition:transform .18s;position:absolute;bottom:-.5rem;left:0;right:0;transform:scaleX(0)}.site-nav a:hover{color:var(--text)}.site-nav a:hover:after{transform-origin:0;transform:scaleX(1)}.menu-toggle{color:var(--text);background:0 0;border:0;padding:.5rem;display:none}.hero{grid-template-columns:minmax(0,1.05fr) minmax(400px,.95fr);align-items:center;min-height:calc(100vh - 78px);padding-block:5rem;display:grid}.eyebrow{color:var(--accent);letter-spacing:.18em;text-transform:uppercase;margin-bottom:1.5rem;font-size:.72rem;font-weight:700}.hero h1{letter-spacing:-.07em;max-width:790px;margin-bottom:1.7rem;font-size:clamp(3.5rem,6.2vw,6.8rem);font-weight:600;line-height:.96}.hero h1 span{color:var(--accent-bright);display:block}.hero-intro{max-width:650px;color:var(--muted);margin-bottom:2rem;font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.75}.hero-actions,.resume-actions,.project-actions{flex-wrap:wrap;align-items:center;gap:.8rem;display:flex}.button{border:1px solid #0000;justify-content:center;align-items:center;gap:.65rem;min-height:48px;padding:.78rem 1.15rem;font-size:.84rem;font-weight:700;text-decoration:none;transition:border-color .18s,background .18s,transform .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--accent);color:#07101e}.button-primary:hover{background:var(--accent-bright)}.button-secondary{border-color:var(--line-strong);background:#ffffff05}.button-secondary:hover{border-color:var(--accent);background:var(--accent-soft)}.hero-facts{border-top:1px solid var(--line);gap:2rem;margin:3.2rem 0 0;padding-top:1.5rem;display:flex}.hero-facts div{gap:.3rem;display:grid}.hero-facts dt{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:.65rem}.hero-facts dd{margin:0;font-size:.78rem;font-weight:600}.hero-graphic{align-self:stretch;min-height:560px;position:relative}.hero-graphic:before{content:"";filter:blur(50px);background:#2c5a9f14;border-radius:50%;position:absolute;inset:10%}.hero-graphic svg{width:min(100%,570px);position:absolute;inset:50% auto auto 50%;overflow:visible;transform:translate(-50%,-50%)}.graphic-grid{fill:none;stroke:#8bb9ff17;stroke-width:1px}.graphic-axis{fill:none;stroke:#8bb9ff0f;stroke-dasharray:2 8}.graphic-orbit{fill:none;stroke:url(#orbit);stroke-width:1.2px;transform-box:fill-box;transform-origin:50%}.orbit-one{animation:6s ease-in-out infinite orbit-pulse}.orbit-two{animation:6s ease-in-out 1.4s infinite orbit-pulse}.orbit-three{animation:6s ease-in-out 2.8s infinite orbit-pulse}.graphic-core,.graphic-node{fill:var(--accent-bright)}.node-ring{fill:none;stroke:var(--accent);stroke-width:1px;opacity:.4}.graphic-link{fill:none;stroke:#8bb9ff29;stroke-dasharray:3 8}.graphic-label{border-left:1px solid var(--accent);gap:.2rem;padding-left:.75rem;display:grid;position:absolute}.graphic-label span{color:var(--accent);letter-spacing:.12em;font-size:.58rem}.graphic-label strong{font-size:.73rem}.label-api{top:23%;right:2%}.label-cloud{bottom:19%;right:8%}.label-data{bottom:25%;left:1%}@keyframes orbit-pulse{0%,to{opacity:.45}50%{opacity:1}}.content-section{border-top:1px solid var(--line);padding-block:8.5rem}.section-heading{max-width:730px;margin-bottom:4.5rem}.section-heading h2,.resume-section h2,.contact-section h2{letter-spacing:-.055em;margin-bottom:1.2rem;font-size:clamp(2.5rem,5vw,4.8rem);font-weight:600;line-height:1.04}.section-copy{max-width:620px;color:var(--muted);font-size:1.05rem;line-height:1.7}.about-grid{grid-template-columns:.9fr 1.1fr;gap:clamp(3rem,8vw,8rem);display:grid}.about-lead{letter-spacing:-.04em;font-family:Manrope,sans-serif;font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.35}.about-copy>p{color:var(--muted);font-size:1.02rem;line-height:1.82}.education{border-top:1px solid var(--line);align-items:center;gap:1.4rem;margin-top:2.4rem;padding-top:1.7rem;display:flex}.education-year{color:var(--accent);font-family:Manrope,sans-serif;font-size:.78rem;font-weight:700}.education div{gap:.35rem;display:grid}.education span{color:var(--muted);font-size:.82rem}.experience-item{border-top:1px solid var(--line);grid-template-columns:50px .8fr 1.2fr;gap:2rem;padding-block:2.8rem;display:grid}.experience-item:last-child{border-bottom:1px solid var(--line)}.experience-index{color:var(--accent);font-family:Manrope,sans-serif;font-size:.72rem}.experience-meta p{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.8rem;font-size:.7rem}.experience-meta h3{letter-spacing:-.03em;margin-bottom:.3rem;font-size:1.35rem}.experience-meta span{color:var(--accent);font-size:.9rem;font-weight:600}.experience-details>p{margin-bottom:1.2rem;font-size:1.03rem;line-height:1.6}.experience-details ul,.capability-list{margin:0;padding:0;list-style:none}.experience-details li,.capability-list li{color:var(--muted);margin-bottom:.75rem;padding-left:1.2rem;line-height:1.55;position:relative}.experience-details li:before,.capability-list li:before{content:"";background:var(--accent);border-radius:50%;width:5px;height:5px;position:absolute;top:.66em;left:0}.project-card{border:1px solid var(--line-strong);background:linear-gradient(145deg,#111722f0,#0a0e15f5);grid-template-columns:.9fr 1.1fr;display:grid}.project-overview,.project-technical{padding:clamp(2rem,5vw,4rem)}.project-overview{border-right:1px solid var(--line);flex-direction:column;display:flex}.project-number{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin-bottom:3.5rem;font-size:.65rem;font-weight:700}.project-overview h3{letter-spacing:-.05em;margin-bottom:1.3rem;font-size:clamp(2rem,4vw,3.4rem);line-height:1.05}.project-lead{color:var(--muted);font-size:1rem;line-height:1.72}.capability-list{margin-block:2rem 2.4rem}.capability-list li{font-size:.88rem}.project-actions{margin-top:auto}.text-link{color:var(--muted);align-items:center;gap:.3rem;padding:.7rem .2rem;font-size:.76rem;font-weight:700;text-decoration:none;display:inline-flex}.text-link:hover{color:var(--accent-bright)}.text-link svg{width:16px}.project-technical{flex-direction:column;justify-content:space-between;display:flex}.architecture{border:1px solid var(--line);background-color:#05080d8c;background-image:linear-gradient(#ffffff05 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:28px 28px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;padding:1.4rem}.architecture-row{grid-template-columns:repeat(3,1fr);gap:.7rem;display:grid}.architecture-row span{border:1px solid var(--line);background:var(--surface);min-height:54px;color:var(--muted);text-align:center;place-items:center;padding:.6rem;font-size:.7rem;display:grid}.core-row span{color:var(--text);border-color:#72a7f557}.architecture-line{place-items:center;height:72px;display:grid;position:relative}.architecture-line:before{content:"";background:var(--accent);opacity:.45;width:1px;position:absolute;top:0;bottom:0;left:50%}.architecture-line span{z-index:1;color:var(--accent);letter-spacing:.08em;text-transform:uppercase;background:#090d14;padding:.25rem .5rem;font-size:.58rem}.architecture-output{background:var(--accent-soft);border:1px solid #72a7f56b;align-items:center;gap:1rem;padding:1rem 1.2rem;display:flex}.architecture-output strong{font-size:.85rem}.architecture-output p{color:var(--muted);margin:.25rem 0 0;font-size:.68rem;line-height:1.4}.mini-orbit{border:1px solid var(--line-strong);border-radius:50%;flex:none;place-items:center;width:44px;height:44px;display:grid;position:relative}.mini-orbit:before{content:"";border:1px solid var(--accent);border-radius:50%;width:46px;height:16px;position:absolute;transform:rotate(-28deg)}.mini-orbit span{background:var(--accent-bright);border-radius:50%;width:7px;height:7px}.tech-stack{flex-wrap:wrap;gap:.5rem;margin-top:2.5rem;display:flex}.tech-stack span{border:1px solid var(--line);color:var(--muted);padding:.45rem .65rem;font-size:.67rem}.skills-grid{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(5,1fr);display:grid}.skill-card{border-right:1px solid var(--line);min-height:330px;padding:1.6rem}.skill-card:last-child{border-right:0}.skill-card>span{color:var(--accent);font-size:.65rem}.skill-card h3{letter-spacing:-.02em;min-height:72px;margin:3rem 0 1.8rem;font-size:1.05rem}.skill-card ul{margin:0;padding:0;list-style:none}.skill-card li{color:var(--muted);margin-bottom:.65rem;font-size:.79rem}.resume-section{grid-template-columns:1fr .72fr;align-items:center;gap:clamp(3rem,10vw,9rem);display:grid}.resume-section>div:first-child>p:not(.eyebrow){max-width:600px;color:var(--muted);margin-bottom:2rem;line-height:1.75}.resume-preview{place-items:center;min-height:470px;display:grid;position:relative}.resume-preview:before{content:"";filter:blur(60px);background:#2b549238;width:70%;height:70%;position:absolute}.paper{aspect-ratio:.77;background:#e9edf4;flex-direction:column;gap:.8rem;width:min(320px,82%);padding:1.7rem;display:flex;position:relative;transform:rotate(2.5deg);box-shadow:0 30px 70px #00000057}.paper-header{color:#fff;letter-spacing:.08em;text-align:center;background:#4b69a2;margin:-1.7rem -1.7rem .7rem;padding:1.1rem;font-family:Manrope,sans-serif;font-size:.85rem;font-weight:700}.paper-rule{background:#8690a0;width:100%;height:1px;margin-block:.25rem}.paper-line{background:#adb5c1;border-radius:4px;height:5px}.paper-line.wide{width:95%}.paper-line.medium{width:72%}.paper-line.short{width:48%}.contact-section{border-top:1px solid var(--line);padding-block:9rem}.contact-grid{grid-template-columns:1.25fr .75fr;align-items:end;gap:5rem;display:grid}.contact-grid h2{max-width:760px;margin:0}.contact-copy>p{color:var(--muted);margin-bottom:2rem;line-height:1.7}.email-link{border-bottom:1px solid var(--accent);color:var(--accent-bright);align-items:center;gap:.5rem;padding-bottom:.4rem;font-size:clamp(1rem,1.8vw,1.3rem);font-weight:600;text-decoration:none;display:inline-flex}.social-links{gap:1.5rem;margin-top:2.2rem;display:flex}.social-links a{color:var(--muted);align-items:center;gap:.4rem;font-size:.78rem;font-weight:700;text-decoration:none;display:inline-flex}.social-links a:hover{color:var(--text)}.social-links svg{width:15px}.site-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;padding-block:1.7rem 2.5rem;font-size:.7rem;display:flex}.site-footer a{text-decoration:none}@media (width<=980px){.hero{grid-template-columns:1fr}.hero-copy{z-index:2}.hero-graphic{min-height:460px}.about-grid,.project-card,.resume-section,.contact-grid{grid-template-columns:1fr}.project-overview{border-right:0;border-bottom:1px solid var(--line)}.skills-grid{grid-template-columns:repeat(2,1fr)}.skill-card{border-bottom:1px solid var(--line);min-height:280px}.skill-card:nth-child(2n){border-right:0}.skill-card:last-child{border-bottom:0}.contact-grid{gap:2rem}}@media (width<=760px){.site-header,.section-shell,.site-footer{width:min(100% - 32px,1180px)}.brand-text{display:none}.menu-toggle{place-items:center;display:grid}.site-nav{border-bottom:1px solid var(--line);background:#080b11fa;flex-direction:column;gap:0;padding:.6rem 0 1rem;display:none;position:absolute;top:77px;left:0;right:0}.site-nav.nav-open{display:flex}.site-nav a{padding:.9rem .5rem}.hero{min-height:auto;padding-block:5rem 2rem}.hero h1{font-size:clamp(3.2rem,16vw,5rem)}.hero-facts{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.hero-graphic{min-height:390px}.graphic-label{display:none}.content-section,.contact-section{padding-block:6rem}.section-heading{margin-bottom:3rem}.experience-item{grid-template-columns:35px 1fr;gap:1rem}.experience-details{grid-column:2}.skills-grid{grid-template-columns:1fr}.skill-card,.skill-card:nth-child(2n){border-right:0;border-bottom:1px solid var(--line);min-height:auto}.skill-card h3{min-height:0;margin:2rem 0 1.2rem}.architecture-row{gap:.35rem}.architecture-row span{padding:.35rem;font-size:.58rem}.resume-preview{min-height:420px}}@media (width<=480px){.hero-actions .button,.resume-actions .button{width:100%}.hero-facts{grid-template-columns:1fr}.project-overview,.project-technical{padding:1.35rem}.project-actions{align-items:stretch}.project-actions .button{width:100%}.architecture{padding:.75rem}.social-links{flex-direction:column}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
