:root{--bg: #0a0908;--fg: #eae6dd;--muted: #6a6258;--muted-2: #b3aa9c;--accent: #ff5e3a;--accent-line: rgba(255,94,58,.16);--line: rgba(255,255,255,.08);--dev-bg: #0a0908}html.light{--bg: #f4f1ea;--fg: #15110d;--muted: #8a7e6c;--muted-2: #463d31;--line: rgba(21,17,13,.1);--accent-line: rgba(255,94,58,.2);--dev-bg: #efe9dd}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--fg);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;transition:background .35s ease,color .35s ease}body{overflow-x:hidden}@media (pointer: fine){body{cursor:none}a,button{cursor:none!important}}.serif{font-family:"Instrument Serif",Fraunces,serif}.mono{font-family:JetBrains Mono,ui-monospace,monospace}.grotesk{font-family:Space Grotesk,Inter,sans-serif}.cursor-blink{display:inline-block;width:.5ch;height:1em;background:var(--accent);animation:blink 1s steps(2,end) infinite;vertical-align:-2px;margin-left:2px;border-radius:1px}@keyframes blink{50%{opacity:0}}.hover-line{position:relative}.hover-line:after{content:"";position:absolute;left:0;bottom:-2px;height:1px;width:0;background:var(--accent);transition:width .35s cubic-bezier(.2,.7,.3,1)}.hover-line:hover:after{width:100%}.kbd-btn{background:#ffffff0d;border:1px solid var(--line);padding:6px 10px;border-radius:6px;color:var(--muted-2);font-size:11px;letter-spacing:.05em;transition:all .2s}html.light .kbd-btn{background:#15110d0a}.kbd-btn:hover{color:var(--accent);border-color:var(--accent)}.scroll-cue{animation:pulse-anim 2.4s ease-in-out infinite}@keyframes pulse-anim{0%,to{opacity:.4}50%{opacity:1}}.dev-card{background:linear-gradient(180deg,#ff5e3a0a,#ffffff04);border:1px solid var(--accent-line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:all .25s}.dev-card:hover{border-color:#ff5e3a66;box-shadow:0 0 50px #ff5e3a0f}html.light .dev-card{background:linear-gradient(180deg,#ff5e3a0a,#fff9)}.dev-chip{font-size:10px;padding:3px 9px;border:1px solid var(--accent-line);border-radius:99px;color:var(--muted-2);letter-spacing:.05em}.flow-wrap{width:100%}.flow-cards{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;gap:12px;align-items:stretch;margin-top:36px}.flow-card{position:relative;padding:22px 22px 26px;border-radius:12px;background:linear-gradient(180deg,#ff5e3a0a,#ffffff03);border:1px solid var(--accent-line);overflow:hidden;opacity:0;transform:translateY(20px);transition:opacity .6s cubic-bezier(.2,.7,.3,1),transform .6s cubic-bezier(.2,.7,.3,1),border-color .25s,box-shadow .25s;transition-delay:calc(var(--i) * .12s)}html.light .flow-card{background:linear-gradient(180deg,#ff5e3a0d,#ffffff8c)}.flow-cards.in-view .flow-card{opacity:1;transform:none}.flow-card:hover{border-color:var(--accent);transform:translateY(-6px);box-shadow:0 18px 50px #ff5e3a24}.flow-card:hover .flow-card-glow{opacity:1}.flow-card-num{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;line-height:1.3}.flow-card-numdigit{font-size:11px;font-weight:700;color:var(--accent);letter-spacing:.2em;opacity:.7}.flow-card-numkind{font-size:11px;font-weight:700;color:var(--accent);letter-spacing:.14em;line-height:1.4}.flow-card-desc{font-size:15px;color:var(--fg);line-height:1.5;font-weight:400}.flow-card-glow{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 50% -20%,rgba(255,94,58,.18),transparent 60%);opacity:0;transition:opacity .35s}.flow-connector{align-self:center;width:56px;color:var(--accent);opacity:0;transition:opacity .6s ease;transition-delay:calc(var(--i) * .12s + .18s)}.flow-cards.in-view .flow-connector{opacity:1}.flow-pulse{animation:flowPulse 2.4s cubic-bezier(.4,0,.6,1) infinite;animation-delay:calc(var(--i) * .4s);filter:drop-shadow(0 0 6px var(--accent))}@keyframes flowPulse{0%{cx:4;opacity:0}10%{opacity:1}90%{opacity:1}to{cx:52;opacity:0}}.ai-strip{position:relative;padding:56px 48px;border-radius:16px;background:linear-gradient(135deg,rgba(255,94,58,.06),rgba(255,184,74,.03),transparent);border:1px solid var(--accent-line);overflow:hidden}.ai-strip:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle at 18% 30%,rgba(255,94,58,.18),transparent 35%),radial-gradient(circle at 82% 70%,rgba(122,215,255,.12),transparent 40%);pointer-events:none}.ai-strip:after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,transparent,var(--accent),transparent);animation:aiSweep 4s ease-in-out infinite}@keyframes aiSweep{0%,to{transform:translateY(-100%);opacity:0}50%{transform:translateY(100%);opacity:1}}.ai-strip-inner{position:relative;z-index:1}.cc-dot,.cc-ring{position:fixed;top:0;left:0;pointer-events:none;z-index:10001;will-change:transform,width,height,border-radius}.cc-dot{width:5px;height:5px;border-radius:99px;background:var(--accent);transition:opacity .25s,width .2s,height .2s,background .2s}.cc-ring{width:32px;height:32px;border-radius:99px;border:1.5px solid var(--accent);transition:width .25s cubic-bezier(.2,.7,.3,1),height .25s cubic-bezier(.2,.7,.3,1),border-radius .25s,background .25s,border-color .25s,opacity .25s;display:flex;align-items:center;justify-content:center}.cc-label{color:var(--accent);font-size:0;opacity:0;letter-spacing:.14em;font-weight:500;transition:font-size .25s,opacity .15s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.cc-ring[data-mode=text]{width:3px;height:22px;border-radius:2px;background:var(--accent);border-color:transparent}.cc-ring[data-mode=link],.cc-ring[data-mode=resume],.cc-ring[data-mode=linkedin]{width:64px;height:64px;background:#ff5e3a29}.cc-ring[data-mode=link] .cc-label,.cc-ring[data-mode=resume] .cc-label,.cc-ring[data-mode=linkedin] .cc-label,.cc-ring[data-mode=email] .cc-label,.cc-ring[data-mode=github] .cc-label,.cc-ring[data-mode=read] .cc-label{font-size:9px;opacity:1}.cc-ring[data-mode=email],.cc-ring[data-mode=github]{width:76px;height:76px;background:var(--accent);border-color:var(--accent)}.cc-ring[data-mode=email] .cc-label,.cc-ring[data-mode=github] .cc-label{color:#fff}.cc-ring[data-mode=read]{width:92px;height:92px;background:#ff5e3a14;border-style:dashed}.cc-ring.cc-press{transform:translate(var(--x),var(--y)) scale(.7)!important}.cc-ring[data-mode=link]~.cc-dot,.cc-ring[data-mode=email]~.cc-dot,.cc-ring[data-mode=github]~.cc-dot,.cc-ring[data-mode=read]~.cc-dot,.cc-ring[data-mode=resume]~.cc-dot,.cc-ring[data-mode=linkedin]~.cc-dot{opacity:0}.cc-ring[data-mode=text]~.cc-dot{opacity:0}.cc-ripple-layer{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:10000}.cc-ripple{position:absolute;width:8px;height:8px;border-radius:99px;border:1.5px solid var(--accent);transform:translate(-50%,-50%);animation:cc-ripple-anim .7s cubic-bezier(.2,.7,.3,1) forwards}@keyframes cc-ripple-anim{to{width:80px;height:80px;opacity:0;border-width:.5px}}@media (pointer: coarse){.cc-dot,.cc-ring,.cc-ripple-layer{display:none}body,a,button{cursor:auto!important}}::-moz-selection{background:var(--accent);color:#fff}::selection{background:var(--accent);color:#fff}.hero-h1{font-size:clamp(54px,8vw,116px)}.hero-photo-panel{position:absolute;right:0;top:0;bottom:0;width:48%;z-index:1;pointer-events:none}.hero-photo-full{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center 18%;object-position:center 18%;display:block}.hero-photo-fade-left{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:linear-gradient(to right,var(--bg) 0%,rgba(10,9,8,.92) 18%,rgba(10,9,8,.55) 38%,transparent 65%)}.hero-photo-fade-bottom{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:linear-gradient(to top,var(--bg) 0%,transparent 30%)}.hero-photo-fade-top{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:linear-gradient(to bottom,var(--bg) 0%,transparent 18%)}.hero-content{position:relative;z-index:2;padding:120px 56px 100px;min-height:100vh;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;max-width:58%}.h1-strike{position:relative;display:inline-block;opacity:.55}.h1-strike:after{content:"";position:absolute;left:-4%;right:-4%;top:56%;height:.08em;background:var(--accent);transform:skewY(-3deg);box-shadow:0 0 12px var(--accent);animation:strikeIn 1s cubic-bezier(.2,.7,.3,1) .6s both;transform-origin:left center}@keyframes strikeIn{0%{transform:skewY(-3deg) scaleX(0)}to{transform:skewY(-3deg) scaleX(1)}}.hero-section:after{content:"";position:absolute;left:0;right:0;bottom:0;height:200px;background:linear-gradient(to bottom,transparent,var(--dev-bg));pointer-events:none;z-index:3}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.3,1)}.reveal.in{opacity:1;transform:none}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--accent-line);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--accent)}.hero-nav-hamburger{display:none}@media (max-width: 720px){section{padding-left:20px!important;padding-right:20px!important}.hero-h1{font-size:clamp(42px,11vw,58px)!important;letter-spacing:-.04em!important;line-height:.96!important;margin-bottom:20px!important}.hero-content{max-width:100%!important;padding:88px 20px 80px!important;min-height:auto!important}.hero-nav{left:20px!important;right:20px!important;top:20px!important}.hero-nav-links{display:none!important}.hero-nav-hamburger{display:flex!important;align-items:center;justify-content:center;background:#ffffff0f;border:1px solid var(--line);border-radius:8px;padding:8px 12px;color:var(--muted-2);font-size:18px;cursor:pointer}.hero-scroll-cue{left:20px!important}.hero-photo-panel{width:100%}.hero-photo-fade-left{background:linear-gradient(to right,var(--bg) 0%,rgba(10,9,8,.97) 30%,rgba(10,9,8,.88) 60%,rgba(10,9,8,.78) 100%)}#about{padding-top:64px!important;padding-bottom:64px!important}.flow-cards{grid-template-columns:1fr!important;gap:10px!important}.flow-card{padding:18px 18px 20px!important}.flow-connector{display:none!important}.ai-strip{padding:28px 20px!important}.about-highlights{grid-template-columns:repeat(2,1fr)!important}.about-highlight-item{padding-top:20px!important;padding-bottom:20px!important;border-bottom:1px solid var(--line)!important}.about-highlight-item:nth-child(odd){border-right:1px solid var(--line);padding-right:16px;padding-left:0!important}.about-highlight-item:nth-child(2n){padding-left:16px!important;padding-right:0;border-right:none!important}.about-highlight-item:nth-last-child(-n+2){border-bottom:none!important}.about-highlight-num{font-size:40px!important}.exp-row{grid-template-columns:1fr!important;gap:10px!important;padding:22px 18px!important}.exp-hash-col{display:none!important}.exp-stack-col{text-align:left!important;border-top:1px solid var(--accent-line);padding-top:12px!important}.exp-stack-col>div:first-child{display:flex!important;flex-wrap:wrap!important;gap:6px;flex-direction:row!important}.exp-company{font-size:18px!important}.projects-grid{grid-template-columns:1fr!important}.project-card{grid-column:span 1!important}.project-title-featured{font-size:28px!important}.skills-classic-grid{grid-template-columns:1fr!important}.contact-section{padding-top:64px!important;padding-bottom:48px!important}#contact h2.serif{font-size:clamp(34px,10vw,56px)!important;line-height:1!important;margin-bottom:36px!important}.contact-links{flex-direction:column!important;gap:18px!important;align-items:flex-start!important;margin-bottom:40px!important}.contact-email{font-size:15px!important;word-break:break-all!important}.dev-card{padding:18px!important}.page-nav{padding:14px 20px!important}.page-hero{padding:90px 20px 40px!important}.page-content{padding:40px 20px!important}.page-prev-next{padding:28px 20px 48px!important;max-width:100%!important}.page-footer{padding:20px!important}.keyboard-hint{display:none!important}.exp-section-heading{font-size:clamp(36px,10vw,64px)!important}.exp-section-meta{display:none!important}.projects-section-heading{font-size:clamp(36px,10vw,64px)!important}.projects-section-meta{display:none!important}.skills-section-heading{font-size:clamp(36px,10vw,64px)!important}}@media (min-width: 721px) and (max-width: 980px){section{padding-left:36px!important;padding-right:36px!important}.hero-h1{font-size:clamp(56px,9vw,80px)!important}.hero-content{max-width:68%!important;padding-left:36px!important}.hero-nav{left:36px!important;right:36px!important}.hero-photo-panel{width:55%}.flow-cards{grid-template-columns:repeat(2,1fr)!important}.flow-connector{display:none!important}.about-highlights{grid-template-columns:repeat(3,1fr)!important}.exp-row{grid-template-columns:1fr 2fr!important}.exp-hash-col,.exp-stack-col{display:none!important}.projects-grid{grid-template-columns:1fr!important}.project-card{grid-column:span 1!important}.page-nav{padding:14px 36px!important}.page-hero,.page-content,.page-prev-next{padding-left:36px!important;padding-right:36px!important}}@keyframes dotPulse{0%,80%,to{transform:scale(.6);opacity:.3}40%{transform:scale(1);opacity:1}}.mac-close{position:relative;display:inline-flex;align-items:center;justify-content:center}.mac-close:after{content:"✕";position:absolute;font-size:7px;font-weight:900;color:#500000b3;opacity:0;transition:opacity .12s;line-height:1;pointer-events:none}.mac-close:hover:after{opacity:1}:focus-visible{outline:1.5px solid var(--accent);outline-offset:3px;border-radius:3px}:focus:not(:focus-visible){outline:none}.skip-link{position:absolute;top:-100px;left:16px;z-index:99999;background:var(--accent);color:#fff;padding:8px 16px;border-radius:4px;font-size:13px;transition:top .2s;text-decoration:none}.skip-link:focus{top:16px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.page-reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.3,1)}.page-reveal.in{opacity:1;transform:none}
