*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{-webkit-user-select:none;user-select:none}:root{--bg:#08090c;--bg2:#0f1014;--bg3:#141519;--border:#ffffff0f;--border2:#ffffff1a;--border3:#ffffff2e;--text:#eeeef0;--text2:#8e8e9a;--text3:#4e4e5a;--blue:#4d7fff;--blue-dim:#4d7fff1a;--blue-border:#4d7fff33;--green:#1db877;--green-dim:#1db87714;--serif:"Instrument Serif",Georgia,serif;--sans:"Geist",system-ui,sans-serif;--mono:"Geist Mono",monospace;--shadow:0 4px 20px #0000004d}[data-theme=light]{--bg:#f5f7fa;--bg2:#fff;--bg3:#e8ecf2;--border:#00000014;--border2:#0000001f;--border3:#0003;--text:#1a1a2e;--text2:#4a4a5a;--text3:#6a6a7a;--blue:#2d5bd7;--blue-dim:#2d5bd71f;--blue-border:#2d5bd74d;--green:#0d9456;--green-dim:#0d94561f;--shadow:0 4px 20px #0000001a;--nav-bg:#ffffffe6}[data-theme=light] nav{background:var(--nav-bg);border-bottom:1px solid var(--border2);box-shadow:0 1px 10px #0000000f}[data-theme=light] .nav-links a{color:var(--text2)}[data-theme=light] .nav-links a:hover{color:var(--blue);background:var(--blue-dim);border-radius:4px;margin:-.35rem -.6rem;padding:.35rem .6rem}[data-theme=light] .nav-cta{background:var(--blue)!important;color:#fff!important;border-color:var(--blue)!important}[data-theme=light] .nav-cta:hover{box-shadow:0 2px 10px #2d5bd74d;background:#2450c0!important}[data-theme=light] .nav-brand{color:var(--text)}[data-theme=light] .theme-toggle,[data-theme=light] .music-toggle{background:var(--bg3);border-color:var(--border2)}[data-theme=light] .theme-toggle:hover{background:var(--blue-dim);border-color:var(--blue)}[data-theme=light] .music-toggle:hover,[data-theme=light] .music-toggle.playing{background:var(--green-dim);border-color:var(--green)}[data-theme=light] .sec.alt{background:var(--bg2);border-color:var(--border2)}[data-theme=light] .stk,[data-theme=light] .plist{border-color:var(--border2);box-shadow:0 2px 15px #0000000a}[data-theme=light] .stk-cat,[data-theme=light] .pitem:hover{background:var(--bg3)}[data-theme=light] .ci{background:var(--bg2);border-color:var(--border2)}[data-theme=light] .ci:hover{background:var(--bg3);border-color:var(--border3)}[data-theme=light] .abox{background:#0d94560f;border-color:#0d945633}[data-theme=light] .btn-f{background:var(--blue)}[data-theme=light] .btn-f:hover{background:#2450c0}[data-theme=light] .btn-o{border-color:var(--border2);color:var(--text2)}[data-theme=light] .btn-o:hover{border-color:var(--blue);color:var(--blue);background:var(--blue-dim)}[data-theme=light] .resume-viewer{background:var(--bg2);border-color:var(--border2);box-shadow:0 4px 20px #0000000f}[data-theme=light] .resume-page-wrapper canvas{box-shadow:0 4px 20px #0000001a}body{background:var(--bg);color:var(--text);font-family:var(--sans);font-size:1rem;line-height:1.65;overflow-x:hidden}::-webkit-scrollbar{width:3px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:2px}nav{z-index:999;-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);background:#08090ceb;justify-content:space-between;align-items:center;height:58px;padding:0 3rem;display:flex;position:fixed;top:0;left:0;right:0}.nav-brand{font-family:var(--mono);color:var(--text);font-size:.82rem;font-weight:500;text-decoration:none}.nav-brand em{color:var(--blue);font-style:normal}.nav-links{align-items:center;gap:2rem;display:flex}.nav-links a{color:var(--text2);letter-spacing:.07em;text-transform:uppercase;font-size:.75rem;font-weight:400;text-decoration:none;transition:color .15s}.nav-links a:hover{color:var(--text)}.nav-cta{border:1px solid var(--blue-border);background:var(--blue-dim);border-radius:4px;padding:.35rem .9rem;color:var(--blue)!important;letter-spacing:.04em!important;font-size:.72rem!important;font-weight:500!important;transition:background .15s!important}.nav-cta:hover{background:#4d7fff2e!important}.nav-controls{align-items:center;gap:.5rem;margin-left:1rem;display:flex}.theme-toggle{border:1px solid var(--border2);background:var(--bg2);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:all .3s;display:flex}.theme-toggle:hover{border-color:var(--blue);background:var(--blue-dim);transform:rotate(15deg)}.toggle-icon{width:18px;height:18px;color:var(--text2);transition:color .3s}.theme-toggle:hover .toggle-icon{color:var(--blue)}.toggle-icon svg{width:100%;height:100%}.music-toggle{border:1px solid var(--border2);background:var(--bg2);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;gap:4px;width:36px;height:36px;transition:all .3s;display:flex;position:relative;overflow:hidden}.music-toggle:hover{border-color:var(--green);background:var(--green-dim)}.music-toggle.playing{border-color:var(--green)}.music-toggle:disabled{opacity:.5;cursor:not-allowed}.music-icon{width:16px;height:16px;color:var(--text2);transition:all .3s}.music-toggle:hover .music-icon,.music-toggle.playing .music-icon{color:var(--green)}.music-icon svg{width:100%;height:100%}.music-bars{align-items:flex-end;gap:2px;display:flex;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.music-bars .bar{background:var(--green);border-radius:1px;width:3px;animation:.5s ease-in-out infinite alternate musicBar}.music-bars .bar:first-child{height:6px;animation-delay:0s}.music-bars .bar:nth-child(2){height:10px;animation-delay:.2s}.music-bars .bar:nth-child(3){height:4px;animation-delay:.4s}@keyframes musicBar{0%{transform:scaleY(.5)}to{transform:scaleY(1)}}.ham{cursor:pointer;flex-direction:column;gap:4.5px;padding:6px;display:none}.ham span{background:var(--text2);width:20px;height:1.5px;display:block}.hero{flex-direction:column;justify-content:center;max-width:1080px;min-height:100svh;margin:0 auto;padding:7rem 3rem 3rem;display:flex}.eyebrow{font-family:var(--mono);color:var(--green);letter-spacing:.1em;align-items:center;gap:9px;margin-bottom:2rem;font-size:.7rem;display:inline-flex}.eyebrow:before{content:"";background:var(--green);border-radius:50%;width:6px;height:6px;animation:2.5s ease-in-out infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}h1{font-family:var(--serif);letter-spacing:-.025em;margin-bottom:1.5rem;font-size:clamp(2.6rem,6vw,5rem);font-weight:400;line-height:1.07}h1 i{color:var(--text2)}h1 b{color:var(--blue);font-weight:400}.architect-container{cursor:default;border-radius:8px;align-items:baseline;gap:.25em;margin:-10px -15px;padding:10px 15px;transition:transform .3s cubic-bezier(.34,1.56,.64,1);display:inline-flex;position:relative}.architect-container:hover{transform:scale(1.02)}.cursor-glow{pointer-events:none;opacity:0;width:150px;height:150px;left:var(--mouse-x);top:var(--mouse-y);z-index:-1;filter:blur(10px);background:radial-gradient(circle,#4d7fff40 0%,#4d7fff1a 40%,#0000 70%);border-radius:50%;transition:opacity .3s;position:absolute;transform:translate(-50%,-50%)}.architect-container.is-hovering .cursor-glow{opacity:1}.mouse-particle{background:var(--blue);pointer-events:none;z-index:10;border-radius:50%;width:8px;height:8px;animation:1s ease-out forwards particleFade;position:absolute;transform:translate(-50%,-50%)}.mouse-particle:before{content:"";background:#4d7fff4d;border-radius:50%;animation:1s ease-out forwards particleRing;position:absolute;inset:-2px}@keyframes particleFade{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;filter:blur(4px);transform:translate(-50%,-50%)scale(0)}}@keyframes particleRing{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(3)}}.architect-word{transition:transform .4s cubic-bezier(.34,1.56,.64,1),filter .3s;display:inline-block;position:relative}.architect-container:hover .architect-word{transform:translateY(-3px)}.architect-container:hover .architect-word:first-child{transform:translateY(-3px)rotate(-1deg)}.architect-container:hover .architect-main{transform:translateY(-3px)rotate(1deg)}.word-bg{z-index:-1;background:linear-gradient(135deg,#4d7fff26,#8b5cf61a);border-radius:4px;width:0;height:120%;animation:.8s cubic-bezier(.16,1,.3,1) .2s forwards bgReveal;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)skew(-5deg)}.architect-main .word-bg{background:linear-gradient(135deg,#4d7fff33,#1db8771a);animation-delay:.6s}@keyframes bgReveal{0%{opacity:0;width:0}50%{opacity:1}to{opacity:1;width:110%}}.word-text{background:linear-gradient(90deg, var(--text) 0%, var(--text) 50%, var(--blue) 100%);color:#0000;opacity:0;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:1.2s cubic-bezier(.16,1,.3,1) .3s forwards textReveal,4s ease-in-out 2s infinite textShine;display:inline-block}.architect-main .word-text{animation:1.2s cubic-bezier(.16,1,.3,1) .8s forwards textReveal,4s ease-in-out 2.5s infinite textShine}@keyframes textReveal{0%{opacity:0;filter:blur(10px);transform:translateY(30px)}40%{opacity:1;filter:blur(2px)}to{opacity:1;filter:blur();transform:translateY(0)}}@keyframes textShine{0%,to{background-position:200%}50%{background-position:0%}}.word-blocks{pointer-events:none;width:40px;height:40px;position:absolute;top:-15px;right:-10px}.block{opacity:0;background:#4d7fff1a;border:1px solid #4d7fff66;position:absolute}.b1{width:12px;height:12px;animation:.6s cubic-bezier(.34,1.56,.64,1) 1s forwards blockFloat,3s ease-in-out 1.6s infinite blockPulse;top:0;right:0}.b2{width:8px;height:8px;animation:.6s cubic-bezier(.34,1.56,.64,1) 1.15s forwards blockFloat,3s ease-in-out 1.75s infinite blockPulse;top:15px;right:15px}.b3{width:6px;height:6px;animation:.6s cubic-bezier(.34,1.56,.64,1) 1.3s forwards blockFloat,3s ease-in-out 1.9s infinite blockPulse;top:5px;right:20px}@keyframes blockFloat{0%{opacity:0;transform:scale(0)rotate(0)}to{opacity:1;transform:scale(1)rotate(45deg)}}@keyframes blockPulse{0%,to{border-color:#4d7fff66;transform:scale(1)rotate(45deg)}50%{border-color:#4d7fffcc;transform:scale(1.1)rotate(50deg)}}.architect-container:hover .block{animation:.6s cubic-bezier(.34,1.56,.64,1) forwards blockHover}.architect-container:hover .b1{animation-delay:0s}.architect-container:hover .b2{animation-delay:.1s}.architect-container:hover .b3{animation-delay:.2s}@keyframes blockHover{0%{transform:scale(1)rotate(45deg)}50%{border-color:var(--blue);background:#4d7fff4d;transform:scale(1.4)rotate(90deg)}to{background:#4d7fff33;transform:scale(1.2)rotate(60deg)}}.word-lines{pointer-events:none;width:200px;height:60px;position:absolute;bottom:-35px;left:50%;transform:translate(-50%)}.blueprint-lines{width:100%;height:100%;overflow:visible}.line{fill:none;stroke:#4d7fff4d;stroke-width:1.5px;stroke-dasharray:200;stroke-dashoffset:200px;stroke-linecap:round}.l1{animation:1s ease-out 1.5s forwards drawLine}.l2{animation:1s ease-out 1.7s forwards drawLine}.l3{animation:.6s ease-out 1.9s forwards drawLine}@keyframes drawLine{to{stroke-dashoffset:0}}.node{fill:#4d7fff99;opacity:0;transform-origin:50%}.n1{animation:.5s cubic-bezier(.34,1.56,.64,1) 2.2s forwards nodeAppear,2s ease-in-out 2.7s infinite nodePulse}.n2{animation:.5s cubic-bezier(.34,1.56,.64,1) 2.4s forwards nodeAppear,2s ease-in-out 2.9s infinite nodePulse}.n3{animation:.5s cubic-bezier(.34,1.56,.64,1) 2.6s forwards nodeAppear,2s ease-in-out 3.1s infinite nodePulse}@keyframes nodeAppear{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes nodePulse{0%,to{fill:#4d7fff99;transform:scale(1)}50%{fill:#1db877cc;transform:scale(1.3)}}.architect-container:hover .line{stroke:#4d7fff99;stroke-width:2px;filter:drop-shadow(0 0 4px #4d7fff80);transition:all .3s}.architect-container:hover .node{animation:.5s cubic-bezier(.34,1.56,.64,1) forwards nodeHover}.architect-container:hover .n1{animation-delay:0s}.architect-container:hover .n2{animation-delay:.1s}.architect-container:hover .n3{animation-delay:.2s}@keyframes nodeHover{0%{transform:scale(1)}50%{fill:var(--green);transform:scale(1.8)}to{fill:#1db877e6;transform:scale(1.4)}}.architect-container:hover .word-text{text-shadow:0 0 30px #4d7fff66,0 0 60px #4d7fff33;transition:text-shadow .3s}.architect-container:hover .word-bg{background:linear-gradient(135deg,#4d7fff40,#8b5cf626);transition:all .4s cubic-bezier(.34,1.56,.64,1);width:120%!important}.architect-container:hover .architect-main .word-bg{background:linear-gradient(135deg,#4d7fff4d,#1db87726)}.hero-p{color:var(--text2);max-width:560px;margin-bottom:2.25rem;font-size:1rem;font-weight:300;line-height:1.85}.btns{flex-wrap:wrap;gap:.6rem;margin-bottom:3.5rem;display:flex}.btn{letter-spacing:.01em;border-radius:5px;align-items:center;gap:7px;padding:.65rem 1.4rem;font-size:.82rem;font-weight:500;text-decoration:none;transition:all .15s;display:inline-flex}.btn-f{background:var(--blue);color:#fff}.btn-f:hover{background:#3a6ee8;transform:translateY(-1px)}.btn-o{border:1px solid var(--border2);color:var(--text2);background:0 0}.btn-o:hover{border-color:var(--border3);color:var(--text)}.stats{border-top:1px solid var(--border);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.stat{border-right:1px solid var(--border);flex:1;min-width:110px;padding:1.4rem 2rem}.stat:last-child{border-right:none}.sn{font-family:var(--serif);color:var(--text);margin-bottom:.25rem;font-size:2rem;font-weight:400;line-height:1}.sn sup{font-family:var(--sans);color:var(--blue);vertical-align:.3em;font-size:1rem}.sl{font-family:var(--mono);color:var(--text3);letter-spacing:.1em;text-transform:uppercase;font-size:.65rem}.w{max-width:1080px;margin:0 auto;padding:0 3rem}.sec{padding:5.5rem 0}.sec.alt{background:var(--bg2);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.lbl{font-family:var(--mono);color:var(--text3);letter-spacing:.16em;text-transform:uppercase;margin-bottom:.6rem;font-size:.65rem}h2{font-family:var(--serif);letter-spacing:-.025em;margin-bottom:.65rem;font-size:clamp(1.6rem,3vw,2.5rem);font-weight:400;line-height:1.12}h2 i{color:var(--text2)}.sub{color:var(--text2);max-width:460px;margin-bottom:2.75rem;font-size:.88rem;font-weight:300;line-height:1.8}.stk{border:1px solid var(--border);border-radius:7px;overflow:hidden}.stk-row{border-bottom:1px solid var(--border);grid-template-columns:150px 1fr;display:grid}.stk-row:last-child{border-bottom:none}.stk-cat{background:var(--bg3);border-right:1px solid var(--border);font-family:var(--mono);color:var(--text3);letter-spacing:.08em;text-transform:uppercase;align-items:center;padding:1.1rem 1.25rem;font-size:.65rem;display:flex}.stk-pills{flex-wrap:wrap;align-items:center;gap:.4rem;padding:1rem 1.1rem;display:flex}.p{font-family:var(--mono);background:var(--bg3);border:1px solid var(--border);color:var(--text2);letter-spacing:.02em;white-space:nowrap;border-radius:3px;padding:.25rem .65rem;font-size:.68rem;transition:border-color .12s}.p:hover{border-color:var(--border2)}.p.b{background:var(--blue-dim);border-color:var(--blue-border);color:var(--blue)}.p.pu{color:#a78bfa;background:#8b5cf612;border-color:#8b5cf629}.p.cy{color:#22d3ee;background:#06b6d412;border-color:#06b6d429}.plist{border:1px solid var(--border);border-radius:7px;overflow:hidden}.pitem{border-bottom:1px solid var(--border);color:inherit;grid-template-columns:56px 1fr 40px;text-decoration:none;transition:background .12s;display:grid}.pitem:last-child{border-bottom:none}.pitem:hover{background:var(--bg3)}.pn{font-family:var(--mono);color:var(--text3);letter-spacing:.04em;align-items:flex-start;padding:2rem 0 1.75rem 1.25rem;font-size:.6rem;display:flex}.pb{padding:1.6rem 1.5rem}.ptitle{font-family:var(--serif);color:var(--text);letter-spacing:-.015em;margin-bottom:.45rem;font-size:1.15rem;font-weight:400;line-height:1.25}.pdesc{color:var(--text2);margin-bottom:.8rem;font-size:.82rem;font-weight:300;line-height:1.75}.tags{flex-wrap:wrap;gap:.35rem;display:flex}.t{font-family:var(--mono);background:var(--bg3);border:1px solid var(--border);color:var(--text3);letter-spacing:.02em;border-radius:2px;padding:.18rem .55rem;font-size:.62rem}.t.b{background:var(--blue-dim);border-color:var(--blue-border);color:var(--blue)}.t.g{background:var(--green-dim);color:var(--green);border-color:#1db8772e}.t.pu{color:#a78bfa;background:#8b5cf612;border-color:#8b5cf626}.t.cy{color:#22d3ee;background:#06b6d412;border-color:#06b6d426}.parr{font-family:var(--mono);color:var(--text3);border-left:1px solid var(--border);justify-content:center;align-items:flex-start;padding-top:2rem;font-size:.75rem;transition:color .12s;display:flex}.pitem:hover .parr{color:var(--blue)}.elist{flex-direction:column;display:flex}.eitem{border-bottom:1px solid var(--border);grid-template-columns:200px 1fr;gap:2.5rem;padding:2.25rem 0;display:grid}.eitem:first-child{border-top:1px solid var(--border)}.eper{font-family:var(--mono);color:var(--text3);letter-spacing:.04em;margin-bottom:.5rem;font-size:.7rem;line-height:1.7}.etype{font-family:var(--mono);background:var(--bg3);border:1px solid var(--border);color:var(--text3);letter-spacing:.07em;text-transform:uppercase;border-radius:2px;padding:.18rem .55rem;font-size:.6rem;display:inline-block}.erole{font-family:var(--serif);color:var(--text);letter-spacing:-.01em;margin-bottom:.25rem;font-size:1.1rem;font-weight:400}.eco{color:var(--blue);margin-bottom:.75rem;font-size:.8rem;font-weight:400}.edesc{color:var(--text2);font-size:.83rem;font-weight:300;line-height:1.82}.blog-tabs{flex-wrap:wrap;gap:.5rem;margin-bottom:1.75rem;display:flex}.blog-tab{border:1px solid var(--border);font-family:var(--mono);color:var(--text2);cursor:pointer;background:0 0;border-radius:20px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.72rem;transition:all .2s;display:flex}.blog-tab:hover{border-color:var(--border2);color:var(--text)}.blog-tab.active{background:var(--blue-dim);border-color:var(--blue-border);color:var(--blue)}.tab-count{background:var(--bg3);border-radius:10px;padding:.15rem .45rem;font-size:.65rem}.blog-tab.active .tab-count{background:#4d7fff33}.blog-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem;display:grid}.blog-card{background:var(--bg2);border:1px solid var(--border);cursor:pointer;border-radius:8px;padding:1.25rem 1.5rem 1.5rem;transition:all .3s;position:relative;overflow:hidden}.blog-card:before{content:"";background:linear-gradient(180deg, var(--blue), var(--green));width:3px;height:0;transition:height .3s;position:absolute;top:0;left:0}.blog-card-case-study:before{background:linear-gradient(180deg, var(--green), #0d9456)}.blog-card-how-i-built:before{background:linear-gradient(#a78bfa,#7c3aed)}.blog-card:hover{border-color:var(--border2);transform:translateY(-4px);box-shadow:0 10px 30px #00000026}.blog-card:hover:before{height:100%}.blog-type-icon{background:var(--bg3);width:32px;height:32px;color:var(--text3);border-radius:6px;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:1rem;right:1rem}.blog-card:hover .blog-type-icon{background:var(--blue-dim);color:var(--blue)}.blog-card-case-study:hover .blog-type-icon{background:var(--green-dim);color:var(--green)}.blog-card-how-i-built:hover .blog-type-icon{color:#a78bfa;background:#8b5cf61a}.blog-meta{align-items:center;gap:.75rem;margin-bottom:.85rem;display:flex}.blog-date{font-family:var(--mono);color:var(--text3);letter-spacing:.03em;font-size:.68rem}.blog-category{padding:.15rem .5rem!important;font-size:.6rem!important}.blog-title{font-family:var(--serif);color:var(--text);letter-spacing:-.01em;margin-bottom:.6rem;font-size:1.1rem;font-weight:400;line-height:1.35;transition:color .2s}.blog-card:hover .blog-title{color:var(--blue)}.blog-excerpt{color:var(--text2);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:1rem;font-size:.82rem;font-weight:300;line-height:1.7;display:-webkit-box;overflow:hidden}.blog-footer{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.blog-read-time{font-family:var(--mono);color:var(--text3);flex-shrink:0;align-items:center;gap:.4rem;font-size:.65rem;display:flex}.blog-read-time svg{opacity:.6}.blog-actions{align-items:center;gap:.75rem;display:flex}.blog-project-link{font-family:var(--mono);color:var(--green);opacity:0;font-size:.65rem;text-decoration:none;transition:all .3s;transform:translate(-5px)}.blog-project-link:hover{text-decoration:underline}.blog-card:hover .blog-project-link{opacity:1;transform:translate(0)}.blog-read-more{font-family:var(--mono);color:var(--blue);opacity:0;align-items:center;gap:.35rem;font-size:.68rem;transition:all .3s;display:flex;transform:translate(-10px)}.blog-card:hover .blog-read-more{opacity:1;transform:translate(0)}.blog-read-more svg{transition:transform .2s}.blog-card:hover .blog-read-more svg{transform:translate(3px)}.blog-cta{text-align:center;border:1px dashed var(--border2);border-radius:8px;margin-top:2rem;padding:1.25rem}.blog-cta p{font-family:var(--mono);color:var(--text3);letter-spacing:.03em;font-size:.75rem}.cgrid{grid-template-columns:1fr 1fr;align-items:start;gap:3.5rem;display:grid}.citems{flex-direction:column;gap:.5rem;margin-top:1.75rem;display:flex}.ci{border:1px solid var(--border);color:inherit;background:var(--bg2);border-radius:5px;align-items:center;gap:1rem;padding:.9rem 1.1rem;text-decoration:none;transition:all .12s;display:flex}.ci:hover{border-color:var(--border2);background:var(--bg3)}.cilbl{font-family:var(--mono);color:var(--text3);letter-spacing:.12em;text-transform:uppercase;min-width:48px;font-size:.6rem}.cival{color:var(--text);font-size:.85rem;font-weight:400}.cisub{color:var(--text3);font-size:.72rem}.abox{background:#1db87708;border:1px solid #1db8772e;border-radius:7px;padding:1.75rem}.ast{font-family:var(--mono);color:var(--green);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:1rem;font-size:.65rem;display:inline-flex}.ast:before{content:"";background:var(--green);border-radius:50%;width:6px;height:6px;animation:2.5s ease-in-out infinite blink}.abox h3{font-family:var(--serif);letter-spacing:-.02em;color:var(--text);margin-bottom:.6rem;font-size:1.4rem;font-weight:400}.abox p{color:var(--text2);font-size:.83rem;font-weight:300;line-height:1.82}.resume-page{max-width:1000px;min-height:100vh;margin:0 auto;padding:5rem 1.5rem 3rem}.resume-header{text-align:center;margin-bottom:2.5rem}.back-link{font-family:var(--mono);color:var(--text2);letter-spacing:.05em;align-items:center;gap:8px;margin-bottom:1.5rem;font-size:.75rem;text-decoration:none;transition:color .15s;display:inline-flex}.back-link:hover{color:var(--blue)}.back-link svg{transition:transform .15s}.back-link:hover svg{transform:translate(-3px)}.resume-header h1{font-family:var(--serif);letter-spacing:-.025em;margin-bottom:.5rem;font-size:clamp(2rem,4vw,3rem);font-weight:400}.resume-subtitle{color:var(--text2);font-size:.9rem;font-weight:300}.resume-viewer{background:var(--bg2);border:1px solid var(--border);-webkit-user-select:none;user-select:none;border-radius:10px;padding:1.5rem;position:relative}.resume-viewer .react-pdf__Page__annotations{pointer-events:auto}.resume-viewer .react-pdf__Page__annotations a{cursor:pointer}.resume-page-wrapper{flex-direction:column;align-items:center;margin-bottom:1.5rem;display:flex}.resume-page-wrapper:last-child{margin-bottom:0}.resume-page-wrapper canvas{border-radius:4px;box-shadow:0 4px 20px #0000004d}.page-number{font-family:var(--mono);color:var(--text3);letter-spacing:.05em;margin-top:.75rem;font-size:.65rem}.resume-loading,.resume-error{min-height:400px;color:var(--text2);flex-direction:column;justify-content:center;align-items:center;gap:1rem;font-size:.85rem;display:flex}.loading-spinner{border:2px solid var(--border2);border-top-color:var(--blue);border-radius:50%;width:32px;height:32px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.resume-footer-note{font-family:var(--mono);color:var(--text3);letter-spacing:.03em;justify-content:center;align-items:center;gap:8px;margin-top:1.5rem;font-size:.72rem;display:flex}.resume-footer-note svg{color:var(--blue);flex-shrink:0}footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding:1.5rem 3rem;display:flex}.fm{font-family:var(--mono);color:var(--text3);letter-spacing:.04em;font-size:.68rem}@media (width<=860px){.resume-page{padding:4.5rem 1rem 2rem}.resume-viewer{padding:1rem}nav{padding:0 1.25rem}.nav-links{background:var(--bg2);border-bottom:1px solid var(--border);flex-direction:column;align-items:stretch;gap:0;padding:.5rem 1.25rem 1rem;display:none;position:fixed;top:58px;left:0;right:0}.nav-links.open{display:flex}.nav-links a{border-bottom:1px solid var(--border);padding:.7rem 0;font-size:.82rem}.nav-links .nav-cta{text-align:center;margin-top:.5rem;padding:.6rem}.ham{display:flex}.hero{padding:6rem 1.25rem 2.5rem}.stat{min-width:50%;padding:1.2rem 1.25rem}.stat:nth-child(2){border-right:none}.stat:nth-child(3){border-top:1px solid var(--border);border-right:1px solid var(--border)}.stat:nth-child(4){border-top:1px solid var(--border);border-right:none}.w{padding:0 1.25rem}.sec{padding:3.5rem 0}.stk-row{grid-template-columns:1fr}.stk-cat{border-right:none;border-bottom:1px solid var(--border)}.pitem{grid-template-columns:40px 1fr 36px}.pn{padding-top:1.85rem;padding-left:.75rem}.pb{padding:1.4rem .9rem}.parr{padding-top:1.85rem}.eitem{grid-template-columns:1fr;gap:.6rem;padding:1.75rem 0}.blog-grid{grid-template-columns:1fr}.cgrid{grid-template-columns:1fr;gap:2rem}footer{text-align:center;flex-direction:column;gap:.4rem;padding:1.25rem}}@media (width<=480px){.resume-page{padding:4rem .75rem 1.5rem}.resume-viewer{border-radius:6px;padding:.75rem}h1{font-size:2.1rem}.stat{min-width:50%}.pitem{grid-template-columns:32px 1fr}.parr{display:none}.ptitle{font-size:1rem}h2{font-size:1.55rem}}.easter-hint{background:var(--bg2);border:1px solid var(--border2);font-family:var(--mono);color:var(--text2);z-index:1000;border-radius:20px;padding:.6rem 1.2rem;font-size:.72rem;animation:.5s hintSlide,5s forwards hintFade;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}@keyframes hintSlide{0%{opacity:0;transform:translate(-50%)translateY(20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes hintFade{0%,80%{opacity:1}to{opacity:0}}.easter-egg-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:9999;background:#08090cf2;justify-content:center;align-items:center;animation:.5s overlayFade;display:flex;position:fixed;inset:0}@keyframes overlayFade{0%{opacity:0}to{opacity:1}}.easter-egg-content{text-align:center;max-width:500px;padding:3rem;animation:.6s cubic-bezier(.34,1.56,.64,1) contentPop}@keyframes contentPop{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.easter-egg-emoji{margin-bottom:1rem;font-size:4rem;animation:.5s infinite alternate emojiWiggle}@keyframes emojiWiggle{0%{transform:rotate(-10deg)}to{transform:rotate(10deg)}}.easter-egg-content h2{font-family:var(--serif);color:var(--text);margin-bottom:.5rem;font-size:2rem}.easter-egg-content p{color:var(--text2);margin-bottom:1.5rem}.easter-egg-message{background:var(--bg3);border:1px solid var(--border2);font-family:var(--mono);border-radius:8px;margin-bottom:1.5rem;padding:1rem 1.5rem;font-size:1rem}.code-text{color:var(--text3)}.highlight{color:var(--green);font-weight:600;animation:1s infinite highlightPulse}@keyframes highlightPulse{0%,to{text-shadow:0 0 10px #1db87780}50%{text-shadow:0 0 20px #1db877cc}}.easter-egg-stats{justify-content:center;gap:2rem;margin-bottom:1.5rem;display:flex}.egg-stat{text-align:center}.egg-num{font-family:var(--serif);color:var(--blue);margin-bottom:.2rem;font-size:1.5rem;display:block}.egg-label{font-family:var(--mono);color:var(--text3);text-transform:uppercase;letter-spacing:.05em;font-size:.65rem}.easter-egg-badges{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-bottom:1.5rem;display:flex}.badge{background:var(--blue-dim);border:1px solid var(--blue-border);color:var(--blue);font-family:var(--mono);border-radius:20px;padding:.4rem .8rem;font-size:.7rem}.easter-close{background:var(--green);color:#fff;font-family:var(--sans);cursor:pointer;border:none;border-radius:6px;padding:.7rem 1.5rem;font-size:.85rem;font-weight:500;transition:all .3s}.easter-close:hover{background:#15a366;transform:translateY(-2px);box-shadow:0 4px 15px #1db87766}.confetti-container{pointer-events:none;position:fixed;inset:0;overflow:hidden}.confetti{border-radius:2px;width:10px;height:10px;animation:3s ease-in-out infinite confettiFall;position:absolute;top:-10px}@keyframes confettiFall{0%{opacity:1;transform:translateY(-10px)rotate(0)}to{opacity:0;transform:translateY(100vh)rotate(720deg)}}@media (width<=860px){.nav-controls{position:absolute;top:50%;right:60px;transform:translateY(-50%)}.easter-egg-stats{flex-direction:column;gap:1rem}}.nav-links a.active{position:relative;color:var(--blue)!important}.nav-links a.active:after{content:"";background:var(--blue);border-radius:1px;height:2px;animation:.3s activeSlide;position:absolute;bottom:-4px;left:0;right:0}@keyframes activeSlide{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.scroll-to-top{background:var(--bg2);border:1px solid var(--border2);cursor:pointer;opacity:0;visibility:hidden;z-index:100;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:all .3s;display:flex;position:fixed;bottom:100px;right:30px;transform:translateY(20px);box-shadow:0 4px 15px #0003}.scroll-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.scroll-to-top:hover{background:var(--blue);border-color:var(--blue);transform:translateY(-3px);box-shadow:0 4px 20px #4d7fff66}.progress-ring{width:100%;height:100%;position:absolute;transform:rotate(-90deg)}.progress-ring-bg{stroke:var(--border)}.progress-ring-fill{stroke:var(--blue);stroke-linecap:round;transition:stroke-dasharray .1s}.scroll-arrow{width:20px;height:20px;color:var(--text2);transition:color .3s}.scroll-to-top:hover .scroll-arrow{color:#fff}.scroll-arrow svg{width:100%;height:100%}.custom-cursor{border:1px solid var(--blue);pointer-events:none;z-index:10000;mix-blend-mode:difference;border-radius:50%;width:40px;height:40px;transition:width .2s,height .2s,border-color .2s,background .2s;position:fixed;transform:translate(-50%,-50%)}.custom-cursor.hovering{border-color:var(--green);background:#4d7fff1a;width:60px;height:60px}.custom-cursor.clicking{transform:translate(-50%,-50%)scale(.8)}.custom-cursor-dot{background:var(--blue);pointer-events:none;z-index:10001;border-radius:50%;width:6px;height:6px;transition:transform .1s;position:fixed;transform:translate(-50%,-50%)}.custom-cursor-dot.clicking{background:var(--green);transform:translate(-50%,-50%)scale(2)}@media (hover:none),(width<=768px){.custom-cursor,.custom-cursor-dot{display:none}}@media (width<=860px){.scroll-to-top{width:40px;height:40px;bottom:80px;right:20px}.scroll-arrow{width:16px;height:16px}}.whatsapp-button{color:#fff;z-index:100;background:#25d366;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;text-decoration:none;transition:all .3s;animation:2s ease-in-out infinite whatsappPulse;display:flex;position:fixed;bottom:100px;left:30px;box-shadow:0 4px 15px #25d36666}.whatsapp-button:hover{transform:scale(1.1);box-shadow:0 6px 25px #25d36680}.whatsapp-button svg{width:26px;height:26px}.whatsapp-tooltip{background:var(--bg2);border:1px solid var(--border2);color:var(--text);font-family:var(--mono);white-space:nowrap;opacity:0;visibility:hidden;border-radius:6px;padding:.5rem .85rem;font-size:.72rem;transition:all .3s;position:absolute;left:60px;transform:translate(-10px);box-shadow:0 4px 15px #00000026}.whatsapp-tooltip:before{content:"";border:6px solid #0000;border-right-color:var(--border2);position:absolute;top:50%;left:-6px;transform:translateY(-50%)}.whatsapp-tooltip:after{content:"";border:5px solid #0000;border-right-color:var(--bg2);position:absolute;top:50%;left:-5px;transform:translateY(-50%)}.whatsapp-button:hover .whatsapp-tooltip{opacity:1;visibility:visible;transform:translate(0)}@keyframes whatsappPulse{0%,to{box-shadow:0 4px 15px #25d36666}50%{box-shadow:0 4px 25px #25d36699,0 0 0 8px #25d3661a}}@media (width<=860px){.whatsapp-button{width:46px;height:46px;bottom:80px;left:20px}.whatsapp-button svg{width:24px;height:24px}.whatsapp-tooltip{display:none}}.particle-canvas{pointer-events:none;z-index:-1;opacity:.6;width:100%;height:100%;position:fixed;top:0;left:0}[data-theme=light] .particle-canvas{opacity:.4}.typing-cursor{color:var(--blue);margin-left:2px;font-weight:300;animation:.8s step-end infinite typingBlink;display:inline-block}@keyframes typingBlink{0%,to{opacity:1}50%{opacity:0}}.magnetic-btn{will-change:transform;transition:transform .2s cubic-bezier(.34,1.56,.64,1),background .15s,border-color .15s,box-shadow .15s}.tilt-card{transform-style:preserve-3d;will-change:transform;transition:transform .15s,box-shadow .15s;position:relative;overflow:hidden}.tilt-card:hover{box-shadow:0 20px 40px #0003,0 0 30px #4d7fff1a}.pitem-shine{pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff0d,#0000);width:50%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.tilt-card:hover .pitem-shine{left:150%}.hero,.sec{animation:.6s pageIn}@keyframes pageIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.sec{opacity:0;animation:none}.sec.visible{animation:.8s cubic-bezier(.16,1,.3,1) forwards scrollReveal}@keyframes scrollReveal{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.hero{opacity:1;animation:.6s pageIn}.not-found{text-align:center;justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.not-found-content{max-width:500px}.not-found-code{justify-content:center;gap:.5rem;margin-bottom:1.5rem;display:flex}.digit{font-family:var(--serif);color:var(--text);font-size:clamp(5rem,15vw,8rem);font-weight:400;line-height:1}.digit.zero{color:var(--blue);animation:2s ease-in-out infinite digitPulse}@keyframes digitPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.not-found h1{font-family:var(--serif);margin-bottom:.75rem;font-size:1.75rem}.not-found p{color:var(--text2);margin-bottom:2rem;font-size:.95rem;line-height:1.7}.not-found-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-bottom:2.5rem;display:flex}.not-found-links{border-top:1px solid var(--border);padding-top:1.5rem}.not-found-links p{font-family:var(--mono);color:var(--text3);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.75rem;font-size:.7rem}.quick-links{flex-wrap:wrap;justify-content:center;gap:1.25rem;display:flex}.quick-links a{font-family:var(--mono);color:var(--text2);font-size:.75rem;text-decoration:none;transition:color .2s}.quick-links a:hover{color:var(--blue)}:root{--react-pdf-annotation-layer:1;--annotation-unfocused-field-background:url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color:Highlight;--input-focus-outline:1px solid Canvas;--input-unfocused-border-color:transparent;--input-disabled-border-color:transparent;--input-hover-border-color:black;--link-outline:none}@media screen and (forced-colors:active){:root{--input-focus-border-color:CanvasText;--input-unfocused-border-color:ActiveText;--input-disabled-border-color:GrayText;--input-hover-border-color:Highlight;--link-outline:1.5px solid LinkText}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selecteditem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert();backdrop-filter:invert()}}.annotationLayer{pointer-events:none;transform-origin:0 0;z-index:3;position:absolute;top:0;left:0}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg)translate(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg)translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg)translateY(-100%)}.annotationLayer canvas{width:100%;height:100%;position:absolute}.annotationLayer section{text-align:initial;pointer-events:auto;box-sizing:border-box;transform-origin:0 0;margin:0;position:absolute}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{width:100%;height:100%;font-size:1em;position:absolute;top:0;left:0}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{cursor:pointer;width:100%;height:100%;position:absolute;top:0;left:0}.annotationLayer .textWidgetAnnotation :is(input,textarea),.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px * var(--total-scale-factor)) sans-serif;vertical-align:top;width:100%;height:100%;margin:0}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{border:2px solid var(--input-disabled-border-color);cursor:not-allowed;background:0 0}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus,.annotationLayer .choiceWidgetAnnotation select:focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline);background:0 0;border-radius:2px}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-color:#0000;background-image:none}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline);border-radius:2px}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{content:"";background-color:canvastext;display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{width:1px;height:80%;left:45%}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;width:50%;height:50%;top:20%;left:30%}.annotationLayer .textWidgetAnnotation input.comb{padding-left:2px;padding-right:0;font-family:monospace}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{appearance:none}.annotationLayer .popupTriggerArea{width:100%;height:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{font-size:calc(9px * var(--total-scale-factor));width:100%;min-width:calc(180px * var(--total-scale-factor));pointer-events:none;position:absolute}.annotationLayer .popup{max-width:calc(180px * var(--total-scale-factor));box-shadow:0 calc(2px * var(--total-scale-factor)) calc(5px * var(--total-scale-factor)) #888;border-radius:calc(2px * var(--total-scale-factor));padding:calc(6px * var(--total-scale-factor));margin-left:calc(5px * var(--total-scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto;background-color:#ff9;position:absolute}.annotationLayer .popup>*{font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{margin-left:calc(5px * var(--total-scale-factor));display:inline-block}.annotationLayer .popupContent{margin-top:calc(2px * var(--total-scale-factor));padding-top:calc(2px * var(--total-scale-factor));border-top:1px solid #333}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{width:100%;height:100%;position:absolute;top:0;left:0}.annotationLayer .annotationTextContent{opacity:0;color:#0000;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;position:absolute}.annotationLayer .annotationTextContent span{width:100%;display:inline-block}
