@import url('https://fonts.googleapis.com/css2?family=Rajdhani:wght@300;400;500&family=Barlow+Condensed:wght@300;400;500;600&family=IBM+Plex+Mono:wght@400;500&family=Manrope:wght@400;500;600;700&display=swap');
:root{--bg:#090a09;--fg:#f0f1ec;--muted:#969a92;--line:#292d26;--green:#b2ff4b;--mono:'IBM Plex Mono',monospace;--display:'Barlow Condensed','Arial Narrow',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--fg);font-family:Manrope,Arial,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:var(--green);color:#090a09}.grid{position:fixed;inset:0 3%;pointer-events:none;z-index:-1;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),#ffffff08 calc(25% - 1px),#ffffff08 25%);border-left:1px solid #ffffff08}.skip{position:fixed;top:-80px;left:20px;z-index:10;background:var(--green);color:#000;padding:15px}.skip:focus{top:10px}:focus-visible{outline:2px solid var(--green);outline-offset:6px}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 3%;gap:24px;position:relative;z-index:5}.brand{font-size:14px;font-weight:700;display:flex;align-items:center;gap:12px}.mark{color:var(--green);font-size:35px;line-height:1}.header-note,.location,.eyebrow,.section-label,.hero-bottom,.category,.project-number,.contact-links,footer,.stats>div>span,.stack>span,.vertical,.scroll,.coordinate>span,.jobs article>span,.education article>span,.languages{font-family:var(--mono);font-size:12px;letter-spacing:1.1px}.header-note{color:var(--muted)}.location{line-height:1.8;color:var(--muted)}.location span{display:block}#menu-toggle{border:1px solid #586047;background:#171d12;color:var(--fg);padding:12px 18px;font-family:var(--mono);font-size:12px;cursor:pointer}#menu-toggle span{color:var(--green);margin-left:20px}#menu{position:absolute;right:3%;top:85px;background:#161b11;border:1px solid #445039;padding:25px;z-index:6;min-width:290px}#menu a{display:block;padding:15px;font-size:20px}#menu a:hover{color:var(--green)}.hero{padding:25px 3% 0;min-height:calc(100svh - 100px);display:flex;flex-direction:column}.hero-top{display:flex;justify-content:space-between;color:var(--muted)}.hero-top .eyebrow:first-child:before{content:'+';color:var(--green);margin-right:12px}.hero-intro{display:flex;justify-content:space-between;align-items:center;margin-top:35px}.hero-intro p{font-size:clamp(16px,1.6vw,24px);line-height:1.8;color:var(--muted);margin-left:25%}.hero-intro p span{color:var(--green)}.coordinate{text-align:right}.coordinate>span{color:var(--muted)}.coordinate strong{font:300 90px/1 var(--display);display:block}.coordinate strong span{font-size:28px;vertical-align:top;color:var(--green)}.hero-name{margin-top:auto;display:flex;position:relative;padding-top:30px}.name-line{width:100%;position:relative}.role{position:absolute;top:25px;left:0;background:var(--green);color:#111;padding:8px 12px;font:500 12px var(--mono);clip-path:polygon(0 0,100% 0,100% 65%,96% 100%,0 100%)}h1{font:300 clamp(100px,15.6vw,250px)/.82 var(--display);letter-spacing:-.025em;margin:0 0 30px 25%}h1>span:not(.period){margin-left:-33.33%}.period{color:var(--green)}.hero-side{position:absolute;right:0;bottom:35px;display:flex;align-items:end;flex-direction:column;gap:55px}.vertical{writing-mode:vertical-rl;color:var(--muted)}.scroll{display:flex;gap:20px;align-items:center}.scroll span{border:1px solid var(--line);border-radius:50%;padding:15px;font-size:22px;color:var(--green)}.hero-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:22px 0;color:var(--muted)}.section{padding:95px 7%;border-bottom:1px solid var(--line);scroll-margin-top:0}.section-label{display:flex;justify-content:space-between;color:var(--muted);margin-bottom:65px}.section-label>span:first-child{color:var(--green)}h2{font:400 clamp(46px,6.5vw,96px)/1.03 var(--display);letter-spacing:-1px;margin:0 0 50px}em{font-style:normal;color:var(--green)}.about-grid,.education-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}p{color:var(--muted);line-height:1.85}.lead{font-size:24px;line-height:1.6;color:var(--fg);margin-top:0}.text-link{display:inline-flex;gap:45px;font:14px var(--mono);border-bottom:1px solid var(--green);padding:18px 0;margin-top:10px}.text-link span{color:var(--green)}.stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:70px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stats>div{padding:35px 25px;border-right:1px solid var(--line)}.stats>div:first-child{padding-left:0}.stats>div:last-child{border:0}.stats strong{display:block;font:400 90px var(--display)}.stats strong span{color:var(--green)}.stats>div>span{color:var(--muted)}.stack{display:flex;align-items:center;gap:50px;margin-top:25px}.stack>span{color:var(--green);white-space:nowrap}.stack p{font-size:15px}.project{border-top:1px solid var(--line)}.project:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:65px 1fr 50px;align-items:center;gap:10px;padding:32px 0;transition:padding .2s,background .2s}summary::-webkit-details-marker{display:none}.project-number{color:var(--muted)}.category{color:var(--muted);font-size:11px}h3{font-weight:500}summary h3{font:400 clamp(28px,4vw,52px) var(--display);margin:8px 0 0}.expand{font-size:32px;transition:transform .2s}.project[open] .expand{transform:rotate(90deg);color:var(--green)}summary:hover{padding-left:15px;background:#b2ff4b06}summary:hover h3{color:var(--green)}.project-body{padding:0 75px 30px;max-width:850px}.project-body p{margin-top:0}.project-body>span{font:11px var(--mono);color:var(--green)}.jobs article{display:grid;grid-template-columns:200px 1fr 20px;gap:30px;padding:35px 0;border-top:1px solid var(--line)}.jobs article>span{color:var(--muted);padding-top:8px}.jobs h3{font:400 34px var(--display);margin:0 0 8px}.jobs h4{font-size:14px;font-weight:400;color:var(--green);margin:0}.jobs p{max-width:650px;margin-bottom:0}.education article{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:25px}.education article>span{color:var(--green)}.education h3{font-size:21px;margin-bottom:5px}.education p{font-size:14px}.languages{padding-top:20px}.contact{background:#b2ff4b05}.contact h2{font-size:clamp(70px,10vw,150px);position:relative}.contact-star{position:absolute;right:0;color:var(--green);font-family:Arial,sans-serif;font-size:150px;font-weight:400}.email{font-size:clamp(18px,3vw,40px);border-bottom:1px solid var(--line);padding:25px 0;display:flex;justify-content:space-between}.email:hover{color:var(--green)}.contact-links{display:flex;gap:40px;margin-top:35px;font-size:13px}.contact-links a:last-child{margin-left:auto}footer{display:flex;justify-content:space-between;padding:30px 3%;font-size:11px;color:var(--muted)}@media(min-width:1600px){body{max-width:1900px;margin:auto}.hero{min-height:900px}}@media(max-width:900px){.header-note{display:none}.role{position:static;display:inline-block;margin-bottom:30px}h1{margin-left:0;font-size:22vw}h1>span:not(.period){margin-left:0}.hero-intro p{margin-left:0}.hero-name{padding-top:45px}.hero-side{bottom:30px}.vertical{display:none}.scroll{font-size:10px;gap:8px}.hero-bottom span:nth-child(2){display:none}.about-grid,.education-grid{gap:35px}.jobs article{grid-template-columns:150px 1fr 20px;gap:15px}.contact-star{font-size:100px}}@media(max-width:600px){header{height:80px;padding:0 5%}.brand{font-size:12px}.location{display:none}.hero{padding:20px 5% 0;min-height:710px;min-height:calc(100svh - 80px)}.hero-top{gap:12px}.eyebrow{font-size:10px}.hero-intro{margin-top:30px}.hero-intro p{font-size:15px}.coordinate strong{font-size:65px}.coordinate>span{font-size:10px}.hero-name{padding-top:35px;padding-bottom:70px}h1{font-size:26vw;line-height:.95;letter-spacing:-.03em;margin-bottom:0}.role{font-size:10px;padding:7px 10px;margin-bottom:25px}.hero-side{bottom:10px}.scroll span{padding:7px 13px}.hero-bottom{font-size:9px;padding:18px 0}.section{padding:65px 6%}.section-label{font-size:10px;gap:20px;margin-bottom:40px}.section-label span:last-child{text-align:right}.about-grid,.education-grid{grid-template-columns:1fr;gap:0}h2{margin-bottom:30px}.lead{font-size:21px}.stats{margin-top:40px}.stats>div{padding:20px 10px}.stats strong{font-size:62px}.stats>div>span{font-size:9px;letter-spacing:.4px}.stack{display:block;margin-top:25px}.stack p{font-size:14px}.project summary{grid-template-columns:28px 1fr 28px;padding:26px 0;gap:5px}.category{font-size:9px;letter-spacing:.5px}.expand{font-size:25px}.project-body{padding:0 0 25px 33px}.jobs article{grid-template-columns:1fr 20px;gap:10px}.jobs article>span:first-child{grid-column:1/-1}.jobs h3{font-size:29px}.jobs article>span:last-child{grid-column:2;grid-row:auto}.jobs p{font-size:15px}.contact-star{font-size:70px;top:10px}.contact-links{font-size:10px;gap:20px;flex-wrap:wrap}.contact-links a:last-child{margin-left:0}footer{font-size:9px;padding:25px 6%;gap:25px}footer>span:nth-child(2){display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}} 
/* Graphic layer and entrance sequence */
.reading-progress{position:fixed;top:0;left:0;height:2px;background:var(--green);width:100%;transform:scaleX(0);transform-origin:left;z-index:30;pointer-events:none}.resume-button{font:12px var(--mono);border:1px solid var(--line);padding:13px 17px;transition:background .2s,color .2s;white-space:nowrap}.resume-button span{color:var(--green);margin-left:18px}.resume-button:hover{background:var(--green);color:#090a09}.resume-button:hover span{color:inherit}.hero{position:relative;isolation:isolate;overflow:hidden}.hero-art{position:absolute;right:9%;top:25%;width:38%;aspect-ratio:1;z-index:-1;opacity:.85;pointer-events:none}#network-art{width:100%;height:100%;display:block}.art-label{position:absolute;bottom:4%;left:50%;transform:translateX(-50%);font:9px var(--mono);letter-spacing:2px;white-space:nowrap;color:#89a86a}.art-cross{position:absolute;color:var(--green);font:22px var(--mono)}.cross-one{top:10%;left:4%}.cross-two{bottom:10%;right:4%}.hero-intro,.hero-name{z-index:1}.hero-intro p{background:linear-gradient(90deg,#090a09dd,transparent)}.tech-ribbon{overflow:hidden;border-block:1px solid var(--line);padding:24px 0;background:#11150d}.tech-ribbon>div{width:max-content;white-space:nowrap;font:500 20px var(--display);letter-spacing:3px;animation:ribbon 36s linear infinite}.tech-ribbon span{color:var(--green);padding:0 45px}.skill-chips{display:flex;flex-wrap:wrap;gap:10px;padding:15px 0}.skill-chips span{border:1px solid #343d2c;padding:10px 15px;font:12px var(--mono);background:#10140e;transition:transform .2s,border-color .2s}.skill-chips span:hover{transform:translateY(-3px);border-color:var(--green)}.capabilities{display:grid;grid-template-columns:repeat(3,1fr);margin-top:50px;border:1px solid var(--line)}.capabilities article{padding:32px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 100% 0,#b2ff4b08,transparent 70%);border-right:1px solid var(--line)}.capabilities article:last-child{border:0}.cap-icon{font:48px var(--mono);color:var(--green);display:block;margin-bottom:35px}.cap-index{font:10px var(--mono);color:var(--muted);letter-spacing:1px}.capabilities h3{font:400 36px/1.1 var(--display);margin:16px 0}.capabilities p{font-size:14px;margin-bottom:0}.project[open]{background:linear-gradient(100deg,#b2ff4b08,transparent)}.project[open] summary h3{color:var(--green)}.jobs article{position:relative}.jobs article:before{content:'';position:absolute;left:0;top:-2px;width:22px;height:3px;background:var(--green)}.loader[hidden]{display:none}.loader{position:fixed;inset:0;background:#0a0c09;z-index:100;display:flex;flex-direction:column;padding:35px 4%;color:var(--fg);background-image:linear-gradient(#b2ff4b05 1px,transparent 1px),linear-gradient(90deg,#b2ff4b05 1px,transparent 1px);background-size:100px 100px;transition:transform .75s cubic-bezier(.76,0,.24,1),visibility .75s}.loader.leaving{transform:translateY(-102%);visibility:hidden}.loader-top,.loader-bottom{display:flex;justify-content:space-between;gap:20px;font:11px var(--mono);letter-spacing:1px}.loader-top span:first-child{color:var(--green)}.loader-center{margin:auto 0;position:relative}.loader-kicker{font:11px var(--mono);letter-spacing:2px;color:var(--muted)}.loader-word{font:300 clamp(95px,24vw,340px)/1 var(--display);letter-spacing:-.03em}.loader-word>span{color:var(--green)}.loader-counter{position:absolute;right:0;bottom:15px;font:300 clamp(55px,12vw,170px)/1 var(--display);color:var(--green)}.loader-counter small{font:12px var(--mono);color:var(--muted);margin-left:10px}.loader-track{height:2px;background:#303829;margin-bottom:25px}.loader-track span{display:block;width:0;height:100%;background:var(--green)}#skip-intro{border:0;background:none;color:var(--green);font:11px var(--mono);cursor:pointer;padding:0}.reveal-ready{opacity:0;transform:translateY(25px);transition:opacity .7s,transform .7s}.reveal-ready.is-visible{opacity:1;transform:none}@keyframes ribbon{to{transform:translateX(-50%)}}@media(max-width:900px){.hero-art{right:2%;top:28%;width:48%;opacity:.5}.capabilities article{padding:22px}.capabilities h3{font-size:30px}}@media(max-width:600px){header{gap:10px;flex-wrap:wrap;height:auto;min-height:100px;padding-top:15px;padding-bottom:15px}.brand{margin-right:auto}.resume-button{order:3;font-size:10px;padding:8px 12px}.resume-button span{margin-left:8px}#menu{top:65px}.hero-art{width:64%;top:26%;right:0;opacity:.6}.hero{min-height:calc(100svh - 110px)}.art-label{display:none}.capabilities{grid-template-columns:1fr}.capabilities article{border-right:0;border-bottom:1px solid var(--line);padding:28px}.cap-icon{position:absolute;right:25px;top:22px;font-size:36px}.cap-index{display:block;margin-bottom:25px}.loader{padding:25px 6%}.loader-top,.loader-bottom{font-size:9px}.loader-top span:last-child{max-width:110px;text-align:right}.loader-kicker{font-size:9px;letter-spacing:1px}.loader-word{font-size:28vw}.loader-counter{position:static;text-align:right;margin-top:35px}.loader-bottom{align-items:center}.loader-bottom>span{max-width:180px;line-height:1.7}.stack{margin-top:25px}.tech-ribbon>div{font-size:16px}}
@media(prefers-reduced-motion:reduce){.tech-ribbon>div{animation:none}.reveal-ready{opacity:1;transform:none}.loader{transition:none}}
/* Portrait-led composition, inspired by the supplied reference. */
.hero{background:#030403;min-height:calc(100svh - 100px)}
.hero-portrait{position:absolute;inset:0 5% 0 45%;z-index:-1;overflow:hidden;pointer-events:none;isolation:isolate;mask-image:linear-gradient(90deg,transparent,#000 16%,#000 78%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 16%,#000 78%,transparent)}
.hero-portrait img{position:absolute;width:100%;height:145%;top:-18%;left:0;object-fit:cover;object-position:45% 45%;filter:grayscale(1) brightness(.72) contrast(1.05);opacity:.9}
.hero-portrait:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#030403 1%,transparent 37%,transparent 75%,#030403c9 100%);z-index:2}
.portrait-scanlines{position:absolute;inset:0;z-index:1;background:repeating-linear-gradient(90deg,#9aff4b12 0px,#9aff4b12 1px,#ff44660e 1px,#ff44660e 2px,#0006 2px,#0006 4px);mix-blend-mode:screen;opacity:.7}
.hero-intro{margin-top:40px;align-items:flex-start}.hero-intro p{max-width:44%;margin-left:0;padding-left:19%;box-sizing:content-box;font-size:16px;line-height:1.7;background:none}.hero-intro p br{display:none}.hero-intro p span{display:inline}.coordinate{margin-left:auto}.hero-name{padding-top:70px}.name-line{width:55%}.name-line h1{font-size:clamp(100px,11.5vw,190px);margin-left:39%;line-height:.9;margin-bottom:40px}.name-line h1>span:not(.period){margin-left:-64%}.role{top:12px;font-size:10px;padding:8px 10px}.hero-side{bottom:40px}.hero-bottom{position:relative;z-index:3}.hero-top{position:relative;z-index:3}.hero-portrait:before{content:'+';position:absolute;right:20%;top:48%;font:16px var(--mono);color:var(--green);z-index:4;opacity:.65}
@media(min-width:901px){.hero-intro p{max-width:25%;padding-left:20%}.hero-intro{min-height:190px}.hero-name{margin-top:auto}.hero-portrait{inset:0 4% 0 46%}}
@media(max-width:900px){.hero-portrait{inset:5% -5% 0 36%;opacity:.85}.name-line{width:75%}.name-line h1{font-size:17vw;margin-left:0}.name-line h1>span:not(.period){margin-left:0}.hero-intro p{padding-left:0;max-width:48%;font-size:15px}.role{position:static}.hero-name{padding-top:40px}.hero-intro{margin-top:35px}.hero{min-height:calc(100svh - 100px)}}
@media(max-width:600px){.hero{min-height:calc(100svh - 110px)}.hero-portrait{inset:15% -22% 10% 21%;opacity:.85}.hero-portrait img{height:133%;top:-13%;object-position:44% center;filter:grayscale(1) brightness(.68) contrast(1.05)}.hero-portrait:after{background:linear-gradient(0deg,#030403 0%,transparent 45%,#03040333 80%,#030403 100%)}.hero-intro p{max-width:66%;font-size:14px}.coordinate strong{font-size:50px}.name-line{width:100%}.name-line h1{font-size:25vw;margin-left:0;margin-bottom:5px}.hero-name{padding-top:150px;padding-bottom:70px}.role{font-size:9px;margin-bottom:20px}.hero-side{bottom:12px}.portrait-scanlines{opacity:.45}}
/* Coordinated hero motion: staggered type, photo reveal and fine parallax. */
.name-line h1 .motion-char{display:inline-block;margin:0;white-space:pre}.motion-word{display:inline-block}.motion-enabled:not(.hero-ready) .motion-char,.motion-enabled:not(.hero-ready) .motion-word{opacity:0;transform:translateY(60px) rotateX(-45deg);filter:blur(7px)}
.motion-enabled.hero-ready .motion-char{animation:character-in 1.1s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(.18s + var(--order)*.045s)}
.motion-enabled.hero-ready .motion-word{animation:word-in .85s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(.35s + var(--order)*.035s)}
.motion-enabled:not(.hero-ready) .hero-portrait{opacity:0;clip-path:inset(0 0 100% 0)}
.motion-enabled.hero-ready .hero-portrait{animation:portrait-in 1.8s cubic-bezier(.16,1,.3,1) both}
.hero-portrait img{transform:translate3d(var(--portrait-x,0px),calc(var(--portrait-y,0px) + var(--hero-scroll,0px)),0) scale(1.035);will-change:transform}
.motion-enabled.hero-ready .portrait-scanlines{animation:scan-drift 8s linear infinite}
.motion-enabled.hero-ready .hero-top,.motion-enabled.hero-ready .role,.motion-enabled.hero-ready .coordinate,.motion-enabled.hero-ready .hero-side{animation:word-in 1s both;animation-delay:.55s}
.motion-enabled.hero-ready .hero-portrait:after{animation:photo-light 9s ease-in-out infinite}
.motion-toggle{border:0;background:transparent;color:var(--green);font:10px var(--mono);letter-spacing:1px;cursor:pointer;padding:0;white-space:nowrap}.hero-bottom{gap:15px;flex-wrap:wrap}
@keyframes character-in{from{opacity:0;transform:translateY(80px) rotateX(-65deg);filter:blur(7px)}to{opacity:1;transform:translateY(0) rotateX(0);filter:blur(0)}}
@keyframes word-in{from{opacity:0;transform:translateY(22px);filter:blur(4px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes portrait-in{from{opacity:0;clip-path:inset(0 0 100% 0);filter:blur(12px)}40%{opacity:.6}to{opacity:1;clip-path:inset(0);filter:blur(0)}}
@keyframes scan-drift{from{background-position:0 0}to{background-position:16px 0}}
@keyframes photo-light{0%,100%{opacity:1}50%{opacity:.78}}
.motion-paused *, .motion-paused *:before, .motion-paused *:after{animation-play-state:paused!important}.motion-paused .motion-char,.motion-paused .motion-word,.motion-paused .hero-portrait,.motion-paused .hero-top,.motion-paused .role,.motion-paused .coordinate,.motion-paused .hero-side{animation:none!important;opacity:1!important;clip-path:none!important;filter:none!important}.motion-paused .motion-char,.motion-paused .motion-word{transform:none!important}
@media(prefers-reduced-motion:reduce){.motion-enabled .motion-char,.motion-enabled .motion-word,.motion-enabled .hero-portrait,.motion-enabled .hero-top,.motion-enabled .role,.motion-enabled .coordinate,.motion-enabled .hero-side{animation:none!important;opacity:1!important;transform:none!important;filter:none!important;clip-path:none!important}.portrait-scanlines,.hero-portrait:after{animation:none!important}}
/* Stable glyph slots for the Matrix-style name decode. */
.name-line h1 .motion-char[data-final]{position:relative;color:transparent!important;animation:none!important;transform:none!important;filter:none!important;opacity:1!important}
.name-line h1 .motion-char[data-final]:after{content:attr(data-glyph);position:absolute;inset:0;text-align:center;color:var(--fg);font:inherit;letter-spacing:inherit}
.name-line h1 .motion-char.decoding:after{color:var(--green);text-shadow:0 0 12px #b2ff4b45}
.motion-enabled:not(.hero-ready) .name-line h1 .motion-char[data-final]{visibility:hidden}
@media(prefers-reduced-motion:reduce){.name-line h1 .motion-char[data-final]:after{content:attr(data-final);color:var(--fg);text-shadow:none}}
/* Reference-matched hero: five asymmetric rails and precisely aligned type. */
:root{--green:#8fff20;--bg:#000;--display:'Rajdhani','Barlow Condensed',sans-serif}
body{background:#000}.grid{inset:0 1.85%;border:0;background:linear-gradient(90deg,#ffffff10 1px,transparent 1px) 0 0/100% 100%}.grid:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 19.85%,#ffffff10 19.85%,#ffffff10 calc(19.85% + 1px),transparent calc(19.85% + 1px),transparent 44.2%,#ffffff10 44.2%,#ffffff10 calc(44.2% + 1px),transparent calc(44.2% + 1px),transparent 59.7%,#ffffff10 59.7%,#ffffff10 calc(59.7% + 1px),transparent calc(59.7% + 1px),transparent 79.7%,#ffffff10 79.7%,#ffffff10 calc(79.7% + 1px),transparent calc(79.7% + 1px),transparent calc(100% - 1px),#ffffff10 calc(100% - 1px))}
header{height:70px;padding:0 1.85%;display:grid;grid-template-columns:20% 40% 20% 20%;gap:0;background:transparent}.brand{font:600 12px var(--display);gap:4px}.mark{font:18px var(--display)}.resume-button{border:0;padding:0;font:10px var(--display);letter-spacing:1.5px;color:#797982;justify-self:start}.resume-button span{margin-left:8px;color:var(--muted)}.resume-button:hover{background:none;color:var(--green)}.location{font:11px/1.4 var(--display);letter-spacing:1.5px;color:#72717d}#menu-toggle{justify-self:end;font:500 12px var(--display);padding:8px 20px;border:1px solid #344529}#menu-toggle span{display:none}
.hero{min-height:580px;height:calc(100svh - 70px);padding:0 1.85%;background:transparent;overflow:hidden}.hero-top{position:absolute;left:1.85%;top:22px;width:19.2%;display:block;border-left:2px solid var(--green);padding-left:12px;font:11px/1.6 var(--display);letter-spacing:1.6px;color:#858392}.hero-top a{display:flex;justify-content:space-between;gap:8px}.hero-top>span{font-size:9px;color:#595961;display:block}.hero-intro{display:block;margin:0;min-height:0!important;position:absolute;left:1.85%;right:1.85%;top:23%;}.hero-intro p{padding:0!important;margin:0!important;max-width:44%!important;font:13px/1.65 Manrope,Arial,sans-serif;text-indent:19.8vw;color:#8c8999}.hero-intro p br{display:none}.hero-intro p span{color:var(--green)}.hero-intro p .motion-word{color:inherit}.coordinate{position:absolute;right:0;top:calc(-23svh + 95px);display:flex;align-items:start;gap:13vw}.coordinate>span{font:11px var(--display);letter-spacing:1.5px;color:#72717d}.coordinate strong{font:300 80px/.8 var(--display);letter-spacing:-5px;margin-top:0}
.hero-name{position:absolute;left:1.85%;right:1.85%;bottom:6%;padding:0;margin:0;height:35%;display:block}.name-line{width:44.2%;height:100%}.name-line h1{position:absolute;left:0;bottom:0;margin:0!important;font:300 clamp(75px,8.9vw,170px)/.88 var(--display);letter-spacing:-.07em;width:47%;}.name-line h1>.motion-char:first-child{margin-left:19vw!important}.name-line h1>span:not(.motion-char):not(.period){margin-left:0!important}.name-line h1 .motion-char{letter-spacing:-.07em}.name-line h1 .period{display:none}.role{position:absolute;top:5%;left:0;display:block;margin:0;font:500 10px var(--display);letter-spacing:1.1px;padding:5px 8px}.hero-side{right:0;bottom:20%;gap:0}.scroll{writing-mode:vertical-rl;font:10px var(--display);letter-spacing:1.5px;color:#858392;gap:20px}.scroll span{border:none;border-radius:0;padding:0;font-size:20px;color:#858392}
.hero-bottom{position:absolute;inset:0;pointer-events:none;border:0;padding:0;margin:0;display:block;font:10px var(--display);letter-spacing:1.3px;color:#777480}.hero-bottom>span:first-child{position:absolute;left:1.85%;bottom:22%;}.hero-bottom>span:nth-child(2){position:absolute;left:34%;bottom:6.8%;display:block}.hero-bottom .since{position:absolute;left:59.8%;bottom:6%;font:400 28px var(--display);color:#eee}.hero-bottom .motion-toggle{position:absolute;right:1.85%;top:24px;pointer-events:auto;font:9px var(--display);color:#777480;letter-spacing:1px;display:none}.hero-portrait{inset:-2% 12% 0 46%!important;opacity:1;mask-image:radial-gradient(ellipse 47% 57% at 48% 56%,#000 35%,transparent 90%);-webkit-mask-image:radial-gradient(ellipse 47% 57% at 48% 56%,#000 35%,transparent 90%)}.hero-portrait img{height:165%;top:-23%;width:100%;object-fit:cover;object-position:43% 50%;filter:grayscale(1) brightness(.45) contrast(1.15)}.hero-portrait:after{background:linear-gradient(0deg,#000 0%,transparent 45%,#0008 100%)}.portrait-scanlines{opacity:.8;background:repeating-linear-gradient(90deg,#8fff2030 0px,#8fff2030 1px,#fd3d6a25 1px,#fd3d6a25 2px,#000a 2px,#000a 4px)}.tech-ribbon{margin-top:0}
@media(max-width:700px){header{height:72px;grid-template-columns:1fr auto auto;gap:18px;padding:0 5%;min-height:0}.resume-button{order:0;font-size:9px;letter-spacing:.5px}.location{display:none}.hero{height:calc(100svh - 72px);min-height:650px;padding:0 5%}.hero-top{left:5%;width:55%;font-size:10px}.hero-intro{left:5%;right:5%;top:19%}.hero-intro p{max-width:80%!important;text-indent:15vw;font-size:12px}.coordinate{top:-70px;gap:12px}.coordinate>span{font-size:9px}.coordinate strong{font-size:50px;letter-spacing:-3px}.hero-name{left:5%;right:5%;height:30%;bottom:9%}.name-line{width:100%}.name-line h1{font-size:20vw;width:100%;line-height:1;letter-spacing:-.06em}.name-line h1>.motion-char:first-child{margin-left:26vw!important}.role{top:-20%;font-size:9px;max-width:70%;}.hero-side{bottom:-15%;right:0}.scroll{writing-mode:horizontal-tb;font-size:9px}.hero-bottom>span:first-child{left:5%;bottom:24%;font-size:8px}.hero-bottom>span:nth-child(2){left:5%;bottom:4%;font-size:8px}.hero-bottom .since{left:65%;bottom:40%;font-size:22px}.hero-portrait{inset:12% -13% 22% 15%!important;opacity:.8}.hero-portrait img{height:155%;top:-20%;filter:grayscale(1) brightness(.5) contrast(1.1)}.hero-intro p{position:relative;z-index:2}.hero-bottom .motion-toggle{top:auto;bottom:1%;right:5%}}
.name-line h1{width:100%;white-space:nowrap}.hero-bottom .motion-toggle{display:block;top:auto;bottom:1%;right:1.85%}
.name-line h1>.motion-char{margin-left:0!important}.name-line h1>.motion-char:first-child{margin-left:19vw!important}
@media(max-width:700px){.name-line h1>.motion-char:first-child{margin-left:26vw!important}}
/* Readability pass: preserve the composition without miniature, low-contrast type. */
header .brand{font-size:15px;font-weight:600}.mark{font-size:22px}
header .resume-button{font:500 12px/1.5 var(--mono);letter-spacing:.5px;color:#c4c6bd}
header .location{font:400 12px/1.5 var(--mono);letter-spacing:.5px;color:#b0b2ab}
#menu-toggle{font:500 13px/1.3 var(--mono);padding:10px 20px;color:#f0f1ec}
.hero-top{font:400 12px/1.8 var(--mono);letter-spacing:.3px;color:#b8b9b4}.hero-top>span{font-size:10px;letter-spacing:.7px;color:#a6a8a0}.hero-top a{flex-wrap:wrap;gap:0 6px;justify-content:flex-start}
.hero-intro p{font:400 16px/1.8 Manrope,Arial,sans-serif;color:#c0bec9;text-indent:0;max-width:40%!important;padding-left:0!important;margin-left:0!important}
.hero-intro p .motion-word{color:inherit}.hero-intro p>span{color:var(--green)}
.coordinate>span{font:400 12px var(--mono);color:#b4b3bd;letter-spacing:1px}
.name-line h1{font-weight:400}.role{font:500 12px/1.3 var(--mono);letter-spacing:.5px;padding:7px 10px}
.hero-bottom>span:first-child,.hero-bottom>span:nth-child(2){font:400 11px/1.5 var(--mono);letter-spacing:.7px;color:#b0aeb9}
.hero-bottom .motion-toggle{font:400 11px/1.5 var(--mono);color:#b5b7ad;letter-spacing:.4px;bottom:8px}
.scroll{font:400 12px/1.4 var(--mono);letter-spacing:1px;color:#b7b5c0}.scroll span{color:#b7b5c0}
.section-label,.category,.project-number{color:#b4b6af}.category{font-size:12px}.cap-index{font-size:12px;color:#b4b6af}footer{font-size:12px;color:#a9aca3}
@media(min-width:901px){.hero-intro{top:22%}.hero-intro p{max-width:39%!important}.hero-top{width:25%}.role{max-width:23%;font-size:11px}.hero-bottom>span:nth-child(2){left:31%}}
@media(max-width:700px){header{gap:10px}header .brand{font-size:13px}header .resume-button{font-size:10px;letter-spacing:0}#menu-toggle{font-size:11px;padding:9px 12px}.hero-top{font-size:11px;width:65%}.hero-top>span{font-size:10px}.hero-intro p{max-width:88%!important;font-size:15px;line-height:1.7}.coordinate>span{font-size:11px}.role{font-size:10px;max-width:90%;padding:7px 8px}.hero-bottom>span:first-child,.hero-bottom>span:nth-child(2){font-size:10px;letter-spacing:.2px}.hero-bottom>span:first-child{bottom:31%}.hero-bottom .motion-toggle{font-size:10px;bottom:7px}.scroll{font-size:10px}.hero-bottom>span:nth-child(2){bottom:5%}}
.role{max-width:none;white-space:nowrap}
.hero-bottom .since{font:400 12px/1.5 var(--mono);letter-spacing:1px;color:#c4c6bd;white-space:nowrap}.quick-contact{display:flex;flex-wrap:wrap;gap:5px 18px;margin-top:7px}.quick-contact a{font:400 12px/1.5 var(--mono);letter-spacing:0;color:#c4c6bd}.quick-contact a:last-child{font-size:11px;color:var(--green)}.phone-contact{display:flex;flex-wrap:wrap;align-items:center;gap:20px 40px;margin-top:25px}.phone-contact a:first-child{font-size:20px}.phone-contact a>span{font:12px var(--mono);color:var(--muted);margin-right:15px}.phone-contact a:last-child{font:13px var(--mono);color:var(--green)}.phone-contact a:hover,.quick-contact a:hover{color:var(--green);text-decoration:underline}@media(max-width:700px){.quick-contact{gap:5px 12px}.quick-contact a{font-size:11px}.quick-contact a:last-child{font-size:10px}.hero-bottom .since{font-size:10px;left:63%;bottom:40%}.phone-contact a:first-child{font-size:18px}}
/* Persistent navigation stays above the page, below the opening screen. */
header{position:sticky;top:0;z-index:40;background:rgba(0,0,0,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid #ffffff12}
#menu{position:fixed;top:78px;right:1.85%;z-index:41;max-height:calc(100svh - 95px);overflow-y:auto;box-shadow:0 18px 50px #0009}
html{scroll-padding-top:90px}.reading-progress{z-index:45}
@media(max-width:700px){#menu{top:80px;right:5%;left:5%;min-width:0;max-height:calc(100svh - 96px)}html{scroll-padding-top:92px}}
/* Compact country label and a single right-edge scroll cue. */
.coordinate{gap:14px;align-items:flex-start}.coordinate>span{padding-top:5px}
.hero-side{position:absolute;right:0;bottom:16%;align-items:center}.scroll{display:flex;flex-direction:row;align-items:center;writing-mode:vertical-rl;gap:18px;line-height:1}.scroll span{display:block;writing-mode:horizontal-tb;font-size:20px;line-height:1}
.hero-bottom>.since{position:absolute;left:59.8%;bottom:6%;font:400 12px/1.5 var(--mono);letter-spacing:1px;color:#c4c6bd;white-space:nowrap}
@media(max-width:700px){.coordinate{gap:10px}.hero-side{right:0;bottom:-15%}.scroll{writing-mode:horizontal-tb;gap:12px;align-items:center}.hero-bottom>.since{left:63%;bottom:40%;font-size:10px}}
.hero-bottom>span.since{left:59.8%;bottom:6%}
@media(max-width:700px){.hero-bottom>span.since{left:63%;bottom:40%}}
/* One consistent typeface across navigation, content, labels and controls. */
:root{--display:'Rajdhani','Arial Narrow',Arial,sans-serif;--mono:'Rajdhani','Arial Narrow',Arial,sans-serif;--site-font:'Rajdhani','Arial Narrow',Arial,sans-serif}
body,button,a,input,textarea,select,h1,h2,h3,h4,p,span,small,summary,header .brand,header .resume-button,header .location,#menu-toggle,.hero-intro p,.role,.coordinate>span,.scroll,.contact-star{font-family:var(--site-font)}
body{font-size:18px;font-weight:400}p{font-size:18px;line-height:1.7}.hero-intro p{font-size:18px;line-height:1.6}.lead{font-size:26px}.capabilities p,.jobs p{font-size:17px}.education p{font-size:16px}.section-label,.category,.cap-index,.skill-chips span,.contact-links,.project-body>span,.jobs article>span,.stats>div>span,footer{font-size:14px}.hero-top,.quick-contact a,.quick-contact a:last-child,header .resume-button,header .location,.coordinate>span,.scroll,.hero-bottom .motion-toggle,.hero-bottom>span.since{font-size:13px}.role{font-size:13px;font-weight:600}.hero-top>span{font-size:12px}.loader-top,.loader-bottom,.loader-kicker,#skip-intro{font-size:13px}
@media(max-width:700px){.hero-intro p{font-size:17px}.role{font-size:12px}header .resume-button{font-size:11px}header .brand{font-size:14px}.hero-top,.quick-contact a,.quick-contact a:last-child,.coordinate>span,.scroll,.hero-bottom .motion-toggle,.hero-bottom>span.since{font-size:12px}.section-label{font-size:12px}.stats>div>span{font-size:11px}.contact-links{font-size:12px}.loader-top,.loader-bottom,.loader-kicker,#skip-intro{font-size:11px}}
