:root{--blue:#007bff;--indigo:#6610f2;--purple:#6f42c1;--pink:#e83e8c;--red:#dc3545;--orange:#fd7e14;--yellow:#ffc107;--green:#28a745;--teal:#20c997;--cyan:#17a2b8;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#007bff;--secondary:#6c757d;--success:#28a745;--info:#17a2b8;--warning:#ffc107;--danger:#dc3545;--light:#f8f9fa;--dark:#343a40;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--font-family-sans-serif:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-family-monospace:SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}*,:after,:before{box-sizing:border-box}footer,main,nav,section{display:block}body{color:#212529;text-align:left;background-color:#fff;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:1rem;font-weight:400;line-height:1.5}h1,h2,h3{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}address{font-style:normal;line-height:inherit;margin-bottom:1rem}ul{margin-top:0;margin-bottom:1rem}ul ul{margin-bottom:0}b,strong{font-weight:bolder}a{color:#007bff;background-color:#0000;text-decoration:none}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]),a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,pre{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}img{vertical-align:middle;border-style:none}svg{vertical-align:middle;overflow:hidden}label{margin-bottom:.5rem;display:inline-block}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input{font-family:inherit;font-size:inherit;line-height:inherit;margin:0;overflow:visible}button{text-transform:none}[type=button],button{-webkit-appearance:button}[type=button]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner{border-style:none;padding:0}button::-moz-focus-inner{border-style:none;padding:0}input[type=time]{-webkit-appearance:listbox}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button{height:auto}[type=number]::-webkit-outer-spin-button{height:auto}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}[hidden]{display:none!important}.h1,.h2,.h3,h1,h2,h3{margin-bottom:.5rem;font-weight:500;line-height:1.2}.h1,h1{font-size:2.5rem}.h2,h2{font-size:2rem}.h3,h3{font-size:1.75rem}.lead{font-size:1.25rem;font-weight:300}.img-fluid{max-width:100%;height:auto}code{color:#e83e8c;word-break:break-word;font-size:87.5%}a>code{color:inherit}pre{color:#212529;font-size:87.5%;display:block}pre code{font-size:inherit;color:inherit;word-break:normal}.container{width:100%;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid{width:100%;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px}.row{flex-wrap:wrap;margin-left:-15px;margin-right:-15px;display:flex}.col{flex-grow:1;flex-basis:0;width:100%;max-width:100%;padding-left:15px;padding-right:15px;position:relative}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.nav{flex-wrap:wrap;margin-bottom:0;padding-left:0;list-style:none;display:flex}.navbar{flex-wrap:wrap;justify-content:space-between;align-items:center;padding:.5rem 1rem;display:flex;position:relative}.navbar>.container,.navbar>.container-fluid{flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.navbar-brand{font-size:1.25rem;line-height:inherit;white-space:nowrap;margin-right:1rem;padding-top:.3125rem;padding-bottom:.3125rem;display:inline-block}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{padding-left:0;padding-right:0}}@media (min-width:992px){.navbar-expand-lg{flex-flow:row;justify-content:flex-start}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{flex-wrap:nowrap}}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.card{word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid #00000020;border-radius:.25rem;flex-direction:column;min-width:0;display:flex;position:relative}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.progress{background-color:#e9ecef;border-radius:.25rem;height:1rem;font-size:.75rem;display:flex;overflow:hidden}@keyframes spinner-border{to{transform:rotate(360deg)}}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1}}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.border{border:1px solid #dee2e6!important}.rounded-circle{border-radius:50%!important}.d-none{display:none!important}.d-block{display:block!important}.d-flex{display:flex!important}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-block{display:block!important}}.align-items-center{align-items:center!important}.fixed-top{z-index:1030;position:fixed;top:0;left:0;right:0}.w-100{width:100%!important}.mb-0{margin-bottom:0!important}.mb-2{margin-bottom:.5rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:3rem!important}.p-0{padding:0!important}.p-3{padding:1rem!important}.mx-auto{margin-left:auto!important;margin-right:auto!important}@media (min-width:992px){.p-lg-5{padding:3rem!important}}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.visible{visibility:visible!important}@media print{*,:after,:before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}pre{page-break-inside:avoid;border:1px solid #adb5bd;white-space:pre-wrap!important}img{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}body,.container{min-width:992px!important}.navbar{display:none}}
:root{--main-color:#bd3838;--font-body:var(--font-mulish,"Mulish"), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-heading:var(--font-saira,"Saira Extra Condensed"), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--bg-color:#0d1117;--bg-secondary:#161b22;--text-color:#e6edf3;--text-muted:#8b949e;--card-bg:#1c2128;--card-border:#ffffff14;--sidebar-bg:#1c2128}html{scroll-behavior:smooth;overflow-x:hidden}body{font-family:var(--font-body);color:var(--text-muted);background-color:var(--bg-color);padding-top:54px;overflow-x:hidden}:where(a,button,input,summary,[tabindex]):focus-visible{outline-offset:3px;box-shadow:0 0 0 2px #0d1117;outline:3px solid #ffd166!important}section[id]{scroll-margin-top:72px}@media (min-width:992px){body{padding-top:0;padding-left:17rem}}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);text-transform:uppercase;color:var(--text-color);font-weight:700}h1{-webkit-user-select:none;user-select:none;font-size:6rem;line-height:5.5rem}h2{font-size:3.5rem}h3{font-size:2rem}p.lead{font-size:1.15rem;font-weight:400}.stack-deferred-placeholder{min-height:100vh}.stack-deferred-status{color:var(--text-muted);font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;font-size:.9rem}.subheading{text-transform:uppercase;font-weight:500;font-family:var(--font-heading);-webkit-user-select:none;user-select:none;font-size:1.5rem}a{color:var(--main-color)}a:hover,a:focus,a:active{color:#e05555}.obfuscated-email{cursor:pointer;letter-spacing:.05em;align-items:center;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;font-size:.85em;text-decoration:none;display:inline-flex}.obfuscated-email.locked{color:#8b949e;transition:color .3s}.obfuscated-email.locked.hovered{color:var(--main-color)}.email-scramble-text{min-width:14ch;display:inline-block}.obfuscated-email.decoding{color:var(--main-color);text-shadow:0 0 8px #bd383866}.obfuscated-email.revealed{color:var(--main-color);border-bottom:1px solid #bd38384d;text-decoration:none;transition:all .3s}.obfuscated-email.revealed:hover{color:#e05555;border-bottom-color:#e05555;text-decoration:none}.email-copy-status:not(:empty){color:#a7d8af;letter-spacing:0;text-transform:none;background:#3fb95014;border-left:2px solid #3fb950;width:-moz-fit-content;width:fit-content;margin-top:.4rem;padding:.3rem .55rem;font:600 .7rem SF Mono,Fira Code,Menlo,Consolas,monospace;display:block}.social-icons{gap:1rem;display:flex}.social-icons a,.magnetic-icon{will-change:transform;background-color:#30363d;border-radius:100%;justify-content:center;align-items:center;width:3.5rem;height:3.5rem;font-size:1.5rem;text-decoration:none;transition:transform .2s cubic-bezier(.25,.46,.45,.94),background-color .3s;display:inline-flex;color:#fff!important}.social-icons a:hover,.magnetic-icon:hover{background-color:var(--main-color)}.lightweight-icon{width:1.55rem;height:1.55rem}.icon-monogram{justify-content:center;align-items:center;font-family:Arial,sans-serif;font-weight:800;line-height:1;display:inline-flex}.icon-monogram--linkedin{letter-spacing:-.08em;font-size:1.35rem}.icon-monogram--facebook{font-size:1.8rem}.icon-monogram--code{font:800 .8rem SF Mono,Menlo,Consolas,monospace}#sideNav{border-right:1px solid var(--card-border);background:linear-gradient(#151b24 0%,#1c2128 40%,#161b22 100%)!important}.sidebar-nav{display:none}.sidebar-section-stepper{width:100%;position:relative}.sidebar-section-links{z-index:1;display:grid;position:relative}.sidebar-section-progress{z-index:0;background:#30363d;width:2px;position:absolute;top:1.25rem;bottom:1.25rem;left:calc(2rem - 1px);overflow:hidden}.sidebar-section-progress span{width:100%;height:var(--section-progress);background:linear-gradient(var(--main-color), #22c55e);display:block}@media (min-width:992px){.sidebar-nav{z-index:1;text-align:left;flex-direction:column;flex-shrink:0;width:100%;padding:1rem 0;display:flex;position:relative}}.sidebar-nav-link{color:#fff6;letter-spacing:.08rem;text-transform:uppercase;min-height:40px;font-size:.8rem;font-weight:800;font-family:var(--font-heading);grid-template-columns:2rem minmax(0,1fr);align-items:center;gap:.65rem;padding:.45rem 1rem;text-decoration:none;transition:color .3s,background-color .3s;display:grid;position:relative}.sidebar-nav-link:hover,.sidebar-nav-link.active{color:#fff;background:#ffffff09}.sidebar-nav-link.active{border-left:2px solid var(--main-color);font-weight:900}.sidebar-nav-link.active:before{content:"›";color:#ffd166;font:900 1rem SF Mono,Fira Code,Menlo,Consolas,monospace;position:absolute;top:50%;left:.35rem;transform:translateY(-50%)}.sidebar-nav-number{z-index:1;color:#7d8590;letter-spacing:0;background:#18202a;border-radius:999px;justify-content:center;align-items:center;min-height:1.5rem;font:700 .66rem SF Mono,Fira Code,Menlo,Consolas,monospace;display:inline-flex;position:relative}.sidebar-nav-link.active .sidebar-nav-number{color:#fff;box-shadow:0 0 0 1px var(--main-color)}.sidebar-nav-label{white-space:nowrap;min-width:0}#sideNav .navbar-toggler:focus{outline-color:#d48a6e}@media (min-width:992px){#sideNav{text-align:center;flex-direction:column;width:17rem;height:100vh;display:flex;position:fixed;top:0;left:0;overflow:hidden}#sideNav .navbar-brand{flex-shrink:0;margin:0 auto;padding:1.5rem .5rem .5rem;display:flex}#sideNav .navbar-brand .img-profile{background:#0d1117;border:.5rem solid #ffffff14;max-width:10rem;max-height:10rem}#sideNav .navbar-collapse{flex-grow:0;align-items:flex-start;width:100%;margin-bottom:auto;display:flex}#sideNav .navbar-collapse .navbar-nav{flex-direction:column;width:100%}#sideNav .navbar-collapse .navbar-nav .nav-item,#sideNav .navbar-collapse .navbar-nav .nav-item .nav-link{display:block}}.fe-wrap{pointer-events:none;z-index:2;width:17rem;height:100vh;position:fixed;top:0;left:0;overflow:hidden}.fe-item{color:#fff3;white-space:nowrap;text-shadow:0 0 8px #bd383826;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;animation:linear forwards feRise;position:absolute;bottom:-30px}@keyframes feRise{0%{opacity:0;transform:translateY(0)scale(.8)}8%{opacity:1}75%{opacity:.6}to{opacity:0;transform:translateY(-110vh)scale(1)}}@media (max-width:991px){.fe-wrap{display:none}}#sideNav:before{content:"";opacity:.06;pointer-events:none;z-index:0;background-image:radial-gradient(circle,currentColor 1px,#0000 1px),radial-gradient(at 50% 0,#bd383814,#0000 60%);background-size:20px 20px,100% 100%;position:absolute;inset:0}#sideNav:after{content:"< / >";letter-spacing:.15em;opacity:.15;color:#fff;pointer-events:none;z-index:0;font-family:monospace;font-size:.7rem;position:absolute;bottom:3.5rem;left:50%;transform:translate(-50%)}#sideNav>*{z-index:1;position:relative}#sideNav>.fe-wrap{z-index:0;flex:none;position:fixed}.sidebar-widgets{z-index:1;flex-direction:column;gap:.75rem;padding:1.5rem 1.25rem 4.5rem;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;font-size:.65rem;display:none;position:relative}@media (min-width:992px){.sidebar-widgets{display:flex}}.sw-label{color:#484f58;text-transform:lowercase;letter-spacing:.05em}.sw-value{color:#8b949e}.sw-mono{font-variant-numeric:tabular-nums}.sw-row{justify-content:space-between;align-items:center;display:flex}.sw-bright{color:#e6edf3;font-size:.75rem}.sw-stack{color:#58a6ff}.sw-fade-in{opacity:1;transition:opacity .2s}.sw-fade-out{opacity:0;transition:opacity .2s}.sw-activity{flex-direction:column;gap:.35rem;display:flex}.sw-activity-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.sw-dot{aspect-ratio:1;background:#ffffff0a;border-radius:2px;width:100%}.sw-dot-1{background:#bd383840}.sw-dot-2{background:#bd383880}.sw-dot-3{background:#bd3838cc}.sw-quote{border-top:1px solid #ffffff0a;padding-top:.75rem}.sw-quote-text{color:#484f58;font-size:.6rem;font-style:italic;line-height:1.5;display:block}section.resume-section{max-width:75rem;position:relative;padding-top:5rem!important;padding-bottom:5rem!important}section.resume-section .resume-item .resume-date{min-width:0}@media (min-width:768px){section.resume-section{min-height:100vh}section.resume-section .resume-item .resume-date{min-width:18rem}}@media (min-width:992px){section.resume-section{padding-top:3rem!important;padding-bottom:3rem!important}}.bg-primary{background-color:var(--main-color)!important}.text-primary{color:var(--main-color)!important}.mobile-brand{color:#fff;align-items:center;gap:.6rem;min-width:0;min-height:44px;text-decoration:none}:is(.mobile-brand:hover,.mobile-brand:focus-visible){color:#fff;text-decoration:none}.mobile-brand-mark{color:#fff;width:40px;height:40px;font-family:var(--font-heading);letter-spacing:.08em;background:#bd383814;border:1px solid #bd3838b3;border-radius:8px;flex:0 0 40px;justify-content:center;align-items:center;font-size:1rem;font-weight:800;display:inline-flex}.mobile-brand-copy{text-align:left;min-width:0;line-height:1.05;display:grid}.mobile-brand-copy strong,.mobile-brand-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mobile-brand-copy strong{color:#f0f3f6;font-family:var(--font-heading);letter-spacing:.04em;font-size:.78rem}.mobile-brand-copy small{color:#8b949e;letter-spacing:.02em;margin-top:.25rem;font:600 .58rem SF Mono,Fira Code,Menlo,Consolas,monospace}@media (max-width:768px){.person-title{display:block}}.page-404{cursor:text;background:#0d1117;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.content-404{text-align:center;padding:2rem}.glitch-404{font-family:var(--font-heading);color:var(--main-color);text-shadow:0 0 20px #bd383866,0 0 60px #bd383826;-webkit-user-select:none;user-select:none;margin-bottom:2rem;font-size:12rem;font-weight:700;line-height:1;transition:transform .1s ease-out}.terminal-404{text-align:left;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#161b22e6;border:1px solid #ffffff14;border-radius:8px;max-width:500px;margin:0 auto;padding:1.5rem 2rem;font-family:SF Mono,Fira Code,Fira Mono,Menlo,Consolas,monospace;font-size:.9rem}.terminal-line{color:#8b949e;margin-bottom:.5rem}.terminal-prompt{color:#58a6ff;margin-right:.5rem}.terminal-cmd{color:#e6edf3}.terminal-error{color:var(--main-color)}.terminal-hint{color:#8b949e;font-size:.8rem}.terminal-hint code{color:#e6edf3;background:#ffffff14;border-radius:4px;padding:.15rem .4rem;font-size:.8rem}.terminal-link{color:#58a6ff;text-underline-offset:2px;text-decoration:underline}.terminal-link:hover{color:#79c0ff}.terminal-input-line{align-items:center;margin-bottom:0;display:flex}.terminal-input{color:#e6edf3;font-family:inherit;font-size:inherit;caret-color:#0000;background:0 0;border:none;outline:none;width:100%}.terminal-cursor-block{color:#e6edf3;animation:none}.terminal-cursor-block.hidden{opacity:0}@media (max-width:576px){.glitch-404{font-size:6rem}.terminal-404{margin:0 1rem;padding:1rem 1.25rem;font-size:.8rem}}.full-width-container{width:100%;height:100vh}.profile-tilt-wrapper{perspective:600px;width:10rem;height:10rem;margin:0 auto}.profile-flip-container{cursor:pointer;width:100%;height:100%;transform-style:preserve-3d;border-radius:50%;transition:transform .15s ease-out}:is(.profile-flip-container:focus,.profile-flip-container:focus-visible){box-shadow:none;outline:0!important}.profile-flip-container:focus-visible .profile-flip-inner{border-radius:50%;box-shadow:0 0 0 2px #bd38388c}.profile-flip-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.4,0,.2,1);position:relative}.profile-flip-container.flipped .profile-flip-inner{transform:rotateY(180deg)}.profile-flip-container.clicked .profile-flip-inner{animation:.6s flipBounce}@keyframes flipBounce{0%{transform:scale(1)}30%{transform:scale(.95)}to{transform:scale(1)}}.profile-flip-container.clicked.flipped .profile-flip-inner{animation:.6s flipBounceBack}@keyframes flipBounceBack{0%{transform:rotateY(180deg)scale(1)}30%{transform:rotateY(180deg)scale(.95)}to{transform:rotateY(180deg)scale(1)}}.profile-flip-front,.profile-flip-back{-webkit-backface-visibility:hidden;backface-visibility:hidden;perspective:400px;border-radius:50%;position:absolute;inset:0}.profile-flip-back{visibility:hidden;background:linear-gradient(135deg,#161b22,#1c2128);border:.5rem solid #bd383833;justify-content:center;align-items:center;display:flex;transform:rotateY(180deg)}.profile-flip-container.flipped .profile-flip-front{visibility:hidden}.profile-flip-container.flipped .profile-flip-back{visibility:visible}.profile-back-content{text-align:left;padding:.5rem}.profile-back-terminal{color:#8b949e;flex-direction:column;gap:.2rem;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;font-size:.55rem;line-height:1.3;display:flex}.pbt-line{white-space:nowrap}.pbt-key{color:var(--main-color)}.pbt-coffee{color:#58a6ff;margin-top:.15rem}.my-image{transform-style:preserve-3d;transition:transform .2s ease-out,box-shadow .3s;position:relative;overflow:hidden;box-shadow:0 0 0 3px #ffffff0d,0 0 30px #bd383826,0 0 60px #bd38380d}.my-image:hover{box-shadow:0 0 0 3px #bd383826,0 0 40px #bd383840,0 0 80px #bd38381a}.my-image:before{content:"";z-index:-1;background:conic-gradient(#0000,#bd38384d,#0000,#6e40c926,#0000);border-radius:50%;animation:8s linear infinite rotateGlow;position:absolute;inset:-3px}@keyframes rotateGlow{to{transform:rotate(360deg)}}.my-image img{filter:brightness(.85)contrast(1.1)grayscale(.15);transition:filter .4s}.profile-photo{object-fit:cover;filter:brightness(.85)contrast(1.1)grayscale(.15);transition:filter .4s;width:100%!important;height:100%!important}.my-image:after{content:"";opacity:0;background:repeating-linear-gradient(0deg, transparent, transparent 2px, #00000026 2px, #00000026 4px), linear-gradient(180deg, transparent 0%, transparent calc(var(--scan-y,-10%) - 3%), #bd383880 var(--scan-y,-10%), transparent calc(var(--scan-y,-10%) + 3%), transparent 100%);z-index:2;pointer-events:none;border-radius:50%;transition:opacity .3s;position:absolute;inset:0}.my-image:hover:after{opacity:1;animation:2s linear infinite scanLine}.my-image:hover img,.my-image:hover .profile-photo{filter:brightness(.9)contrast(1.3)saturate(.3)sepia(.2)hue-rotate(330deg)}@keyframes scanLine{0%{--scan-y:-10%}to{--scan-y:110%}}@property --scan-y{syntax:"<percentage>";inherits:false;initial-value:-10%}@keyframes pulse{0%,to{box-shadow:0 0 #22c55e80}50%{box-shadow:0 0 0 4px #22c55e00}}.dev-icons{font-size:3rem}.dev-icons .list-inline-item i:hover{color:var(--main-color)}.gradient-name{background:linear-gradient(105deg,#e05555 0%,#e67e22 46%,#c77dff 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.typewriter{display:inline}.typewriter-cursor{color:var(--main-color);margin-left:2px;font-weight:300;animation:.8s step-end infinite blink;display:inline-block}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.particle-canvas{z-index:-1;pointer-events:none;width:100%;height:100%;position:fixed;top:0;left:0}#experience{border-top:1px solid var(--card-border)}.timeline{padding-left:2rem;position:relative}.timeline:before{content:"";background:var(--card-border);width:2px;position:absolute;top:0;bottom:0;left:6px}.timeline-item{opacity:0;padding-bottom:2rem;position:relative;transform:translate(-20px)}.timeline--visible .timeline-item{animation:.5s forwards timelineReveal}@keyframes timelineReveal{to{opacity:1;transform:translate(0)}}.timeline-dot{background:var(--bg-color);border:2px solid var(--main-color);z-index:1;border-radius:50%;width:14px;height:14px;position:absolute;top:.35rem;left:-2rem}.timeline-item:first-child .timeline-dot{background:var(--main-color);box-shadow:0 0 8px #bd383866}.timeline-content{background:var(--card-bg);border:1px solid var(--card-border);border-radius:8px;padding:1rem 1.25rem;transition:border-color .3s}.timeline-content:hover{border-color:#bd38384d}.timeline-title{text-transform:none;margin-bottom:.15rem;font-size:1.1rem}.timeline-company{color:var(--main-color);margin-bottom:.35rem;font-size:.95rem;font-weight:700}.timeline-company-link{color:var(--main-color);border-bottom:1px dashed #bd38384d;text-decoration:none;transition:border-color .2s}.timeline-company-link:hover{color:#e05555;border-bottom-color:#e05555}.timeline-meta{color:#484f58;flex-wrap:wrap;gap:1rem;margin-bottom:.5rem;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;font-size:.75rem;display:flex}.timeline-period:before{content:"";vertical-align:middle;background:#22c55e;border-radius:50%;width:8px;height:8px;margin-right:.4rem;display:inline-block}.timeline-item:not(:first-child) .timeline-period:before{background:#484f58}.timeline-desc{color:var(--text-muted);margin-bottom:.75rem;font-size:.85rem;line-height:1.5}.timeline-contributions{margin-bottom:.9rem;font-size:.82rem}.timeline-item--earlier .timeline-content{background:#161b228c}.timeline-item--earlier .timeline-dot{border-color:#6e7681}.timeline-item--earlier .timeline-company,.timeline-item--earlier .timeline-company-link{color:#a8b3bf}.timeline-skills{flex-wrap:wrap;gap:.35rem;display:flex}.timeline-skill{color:var(--main-color);background:#bd38381a;border:1px solid #bd383826;border-radius:999px;padding:.15rem .5rem;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;font-size:.65rem}@media (max-width:576px){.timeline{padding-left:1.5rem}.timeline-dot{width:10px;height:10px;left:-1.5rem}.timeline-title{font-size:.95rem}}#tech-stack{background:var(--bg-secondary);border-top:1px solid var(--card-border)}.tech-category{margin-bottom:2.5rem}.tech-category-title{color:var(--text-muted);letter-spacing:.05em;margin-bottom:.35rem;font-size:1.3rem;font-weight:600}.tech-category-evidence{color:#8b949e;max-width:760px;margin:0 0 1rem;font-size:.82rem}.tech-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:1rem;max-width:800px;display:grid}.tech-card{perspective:600px;opacity:0;transform:translateY(30px)}.tech-grid--visible .tech-card{animation:.5s forwards cardReveal}@keyframes cardReveal{to{opacity:1;transform:translateY(0)}}.tech-card-inner{aspect-ratio:1;width:100%;transform-style:preserve-3d;cursor:default;transition:transform .5s cubic-bezier(.25,.46,.45,.94);position:relative}.tech-card:hover .tech-card-inner{transform:rotateY(180deg)}.tech-card-front,.tech-card-back{-webkit-backface-visibility:hidden;backface-visibility:hidden;border:1px solid var(--card-border);background:var(--card-bg);-webkit-user-select:none;user-select:none;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;display:flex;position:absolute;inset:0}.tech-card-front i{font-size:2.5rem}.tech-card-name{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.75rem;font-weight:600}.tech-card-back{color:#fff;text-transform:uppercase;letter-spacing:.05em;text-align:center;padding:.5rem;font-size:.85rem;font-weight:700;transform:rotateY(180deg)}.footer-content{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.footer-separator{opacity:.3}.footer-changelog{max-width:500px;margin:0 auto}.footer-changelog summary{cursor:pointer;color:#6e7681;letter-spacing:.05em;text-transform:uppercase;font-size:.7rem;transition:color .2s}.footer-changelog summary:hover{color:var(--main-color)}.footer-changelog ul{text-align:left;margin:0;padding:.75rem 0 0;list-style:none}.footer-changelog ul li{color:#484f58;padding:.2rem 0}.footer-changelog ul li:before{content:"+";color:#22c55e;margin-right:.5rem;font-weight:700}@media (max-width:991px){#sideNav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--card-border);background-color:var(--sidebar-bg)!important}#sideNav:before,#sideNav:after{display:none}section.resume-section{padding-top:2rem!important;padding-bottom:2rem!important}.social-icons{justify-content:center}#about .w-100{text-align:center}.subheading{font-size:1.2rem}}@media (max-width:576px){h1{font-size:3rem;line-height:2.8rem}h2{font-size:2rem}.subheading{font-size:1rem}.tech-grid{grid-template-columns:repeat(3,1fr);gap:.75rem}.tech-card-front i{font-size:1.8rem}.tech-card-name{font-size:.65rem}.tech-category-title{font-size:1.1rem}.magnetic-icon,.social-icons a{width:3rem;height:3rem;font-size:1.2rem}}@media (max-width:380px){h1{font-size:2.4rem;line-height:2.2rem}.tech-grid{grid-template-columns:repeat(2,1fr)}}.site-footer{border-top:1px solid var(--card-border);text-align:center;color:#484f58;padding:1.5rem 2rem;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;font-size:.75rem}.footer-link{color:#768390;text-decoration:none;transition:color .2s}.footer-link:hover{color:var(--main-color)}.footer-sep{opacity:.3;margin:0 .5rem}.footer-copy{color:#768390}.legal-topbar{z-index:9998;-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--card-border);background:#0d1117eb;justify-content:space-between;align-items:center;padding:.6rem 1.5rem;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;font-size:.8rem;display:flex;position:fixed;top:0;left:0;right:0}.legal-topbar-back{align-items:center;gap:.4rem;text-decoration:none;transition:color .2s;display:flex;color:#58a6ff!important}.legal-topbar-back:hover{text-decoration:none;color:#79c0ff!important}.legal-topbar-title{color:#8b949e;font-size:.75rem}.legal-topbar-links{gap:1rem;display:flex}.legal-topbar-link{font-size:.7rem;text-decoration:none;transition:color .2s;color:#484f58!important}.legal-topbar-link:hover{color:#8b949e!important}.legal-topbar-link.active{color:#e6edf3!important}.privacy-page{background:var(--bg-color);justify-content:center;min-height:100vh;padding:4rem 2rem 3rem;display:flex}.privacy-content{width:100%;max-width:700px;color:var(--text-muted);font-size:.95rem;line-height:1.7}.privacy-content h1{margin-bottom:.5rem;font-size:2.5rem}.privacy-content h2{color:var(--text-color);margin-top:2rem;margin-bottom:.5rem;font-size:1.3rem}.privacy-content ul{padding-left:1.5rem}.privacy-content li{margin-bottom:.5rem}.privacy-content a{color:#58a6ff;text-decoration:none}.privacy-content a:hover{text-decoration:underline}.privacy-back{margin-bottom:2rem;font-size:.85rem;display:inline-block;color:var(--text-muted)!important}.privacy-updated{color:#484f58;margin-bottom:2rem;font-size:.8rem}.terms-nerdy h2{color:#58a6ff;text-transform:none;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;font-size:1.1rem}.terms-nerdy code{color:#e6edf3;background:#ffffff0f;border-radius:4px;padding:.1rem .4rem;font-size:.85em}.terms-code{border:1px solid var(--card-border);color:#22c55e;background:#161b22cc;border-radius:8px;margin:1rem 0;padding:1rem 1.25rem;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;font-size:.8rem;line-height:1.6;overflow-x:auto}.terms-footer{color:#484f58;margin-top:2rem}.terms-progress{z-index:9999;background:var(--card-border);width:100%;height:3px;position:fixed;top:37px;left:0}.terms-progress-bar{background:linear-gradient(90deg, var(--main-color), #22c55e);height:100%;transition:width .1s}.terms-progress-label{color:#484f58;z-index:9999;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;font-size:.6rem;position:fixed;top:43px;right:12px}.terms-terminal{border:1px solid var(--card-border);border-radius:8px;margin:1.5rem 0;overflow:hidden}.terms-terminal-header{background:#161b22;align-items:center;gap:.4rem;padding:.5rem .75rem;display:flex}.terms-terminal-dot{border-radius:50%;width:10px;height:10px}.terms-terminal-title{color:#484f58;margin-left:.5rem;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;font-size:.7rem}.terms-terminal-body{color:#8b949e;background:#0d1117;padding:1rem;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;font-size:.85rem}.terms-terminal-line{margin-bottom:.5rem}.terms-terminal-input-line{align-items:center;gap:.5rem;display:flex}.terms-terminal-input{color:#e6edf3;font-family:inherit;font-size:inherit;caret-color:#22c55e;background:0 0;border:none;outline:none;width:100%}.terms-terminal-input::placeholder{color:#30363d}.terms-agree-btn{border:1px solid var(--main-color);color:var(--main-color);cursor:pointer;background:0 0;border-radius:6px;padding:.6rem 2rem;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;font-size:.85rem;transition:all .2s}.terms-agree-btn:hover{background:var(--main-color);color:#fff}.terms-agree-btn:active{transform:scale(.95)}.terms-click-count{opacity:.5;margin-left:.3rem;font-size:.7rem}.scroll-top-btn{border:1px solid var(--card-border);color:#8b949e;cursor:pointer;opacity:0;pointer-events:none;z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1c2128cc;border-radius:50%;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;font-size:.8rem;transition:opacity .3s,transform .3s,color .3s;display:flex;position:fixed;bottom:1.5rem;right:1.5rem;transform:translateY(10px)}.scroll-top-btn.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.scroll-top-btn:hover{color:var(--main-color);border-color:var(--main-color)}.konami-overlay{z-index:99999;cursor:pointer;background:#000000eb;justify-content:center;align-items:center;animation:.5s konamiFadeIn;display:flex;position:fixed;inset:0}@keyframes konamiFadeIn{0%{opacity:0}to{opacity:1}}.konami-content{text-align:center}.konami-title{font-size:3rem;font-weight:700;font-family:var(--font-heading);background:linear-gradient(90deg,red,#f80,#ff0,#0f0,#08f,#80f,red) 0 0/200% 100%;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:1.5rem;animation:2s linear infinite konamiShift}@keyframes konamiShift{0%{background-position:0%}to{background-position:200%}}.konami-art{color:#22c55e;margin-bottom:1.5rem;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;font-size:.9rem;line-height:1.2}.konami-msg{color:#22c55e;font-size:2rem;font-weight:700;font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.2em;text-shadow:0 0 20px #22c55e80;margin-bottom:.5rem}.konami-sub{color:#484f58;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;font-size:.85rem}.navbar-brand{margin:0}.profile-mobile-trigger,.profile-flip-container{color:inherit;background:0 0;border:0;padding:0}.profile-mobile-trigger{min-width:44px;min-height:44px}.profile-flip-inner,.profile-flip-front,.profile-back-content{display:block}.mobile-nav-actions{align-items:center;gap:.5rem;margin-left:auto;display:flex}.mobile-menu-toggle{color:#fff;cursor:pointer;background:#0d1117b3;border:1px solid #ffffff2e;border-radius:8px;min-width:44px;min-height:44px;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;font-size:1.35rem;line-height:1}.sidebar-command-link{color:#e6edf3;text-align:left;cursor:pointer;background:#bd383814;border:1px solid #bd383859;border-radius:6px;width:calc(100% - 2rem);min-height:44px;margin:.65rem 1rem 0;padding:.55rem .75rem;font:600 .7rem SF Mono,Fira Code,Menlo,Consolas,monospace}.sidebar-command-link kbd{float:right;color:#8b949e;background:0 0}@media (max-width:991px){#sideNav{flex-flow:row;align-items:center;min-height:54px;padding:.3rem .75rem;display:flex}#sideNav .sidebar-nav{display:none}#sideNav .sidebar-nav.mobile-open{border-bottom:1px solid var(--card-border);background:#161b22fa;flex-direction:column;width:100%;max-height:calc(100vh - 54px);padding:.6rem 0 1rem;display:flex;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 16px 28px #00000059}.sidebar-nav-link{color:#c9d1d9;min-height:44px;padding:.55rem 1rem}.sidebar-nav-link:hover,.sidebar-nav-link.active{padding-left:1rem}section.resume-section{scroll-margin-top:68px}}@media (min-width:992px){.mobile-nav-actions{display:none}section.resume-section{scroll-margin-top:16px}}.hero-actions{flex-wrap:wrap;gap:.75rem;margin:0 0 2rem;display:flex}.terminal-button{border:1px solid var(--main-color);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:.5rem;min-height:44px;padding:.65rem 1rem;font:700 .78rem SF Mono,Fira Code,Menlo,Consolas,monospace;text-decoration:none;display:inline-flex}.terminal-button.primary{background:var(--main-color);color:#fff}.terminal-button.secondary{color:#f0a0a0;background:#bd383812}.terminal-button:hover{color:#fff;background:#a92f2f;text-decoration:none}.portfolio-section{border-top:1px solid var(--card-border)}.section-kicker,.commit-label{color:#58a6ff;letter-spacing:.04em;margin:0 0 .5rem;font:.72rem SF Mono,Fira Code,Menlo,Consolas,monospace}.section-intro{color:#a8b3bf;max-width:760px;margin:0 0 2rem}.hero-section .w-100{max-width:1040px}.hero-positioning{color:#a8b3bf;font-family:var(--font-heading);gap:.2rem;margin:1rem 0;font-size:clamp(1.05rem,2.1vw,1.65rem);line-height:1.25;display:grid}.hero-positioning strong{color:#e6edf3;font-size:clamp(1.25rem,2.8vw,2.15rem)}.hero-summary{color:#a8b3bf;max-width:820px;margin:0 0 1.5rem;font-size:clamp(1rem,1.4vw,1.2rem);line-height:1.65}.engineering-approach{border-left:3px solid var(--main-color);color:#c9d1d9;background:#bd38380f;max-width:820px;margin:1.5rem 0 0;padding:1rem 1.15rem;line-height:1.65}.capability-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.capability-card{border:1px solid var(--card-border);background:#161b22e0;border-radius:10px;padding:1.1rem}.capability-card h3{color:#e6edf3;text-transform:none;margin:0 0 .75rem;font-size:1.15rem}.capability-card ul,.timeline-contributions{color:#a8b3bf;margin:0;padding-left:1.15rem;line-height:1.55}.timeline-contributions{margin-bottom:1.35rem}.capability-card li+li,.timeline-contributions li+li{margin-top:.35rem}.supporting-tech{border:1px solid var(--card-border);color:#8b949e;border-radius:8px;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:1rem;padding:.9rem 1rem;font:.72rem SF Mono,Fira Code,Menlo,Consolas,monospace;display:flex}.supporting-tech>span{color:#58a6ff}.supporting-tech ul{flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.supporting-tech li{color:#c9d1d9;border:1px solid #30363d;border-radius:999px;padding:.2rem .5rem}.command-palette-backdrop{z-index:100000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#05080cd1;justify-content:center;align-items:flex-start;padding:min(16vh,8rem) 1rem 1rem;display:flex;position:fixed;inset:0}.command-palette{background:#161b22;border:1px solid #bd383873;border-radius:12px;width:min(620px,100%);max-height:min(70vh,620px);font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;overflow:hidden;box-shadow:0 24px 80px #0009}.command-palette-header{border-bottom:1px solid var(--card-border);justify-content:space-between;align-items:center;padding:.9rem 1rem;display:flex}.command-palette-header h2{text-transform:none;margin:0;font:700 1rem SF Mono,Fira Code,Menlo,Consolas,monospace}.palette-close{color:#c9d1d9;cursor:pointer;background:0 0;border:0;min-width:44px;min-height:44px;font-size:1.7rem}.palette-search-label{color:#8b949e;padding:.8rem 1rem .35rem;font-size:.72rem;display:block}.palette-search{color:#e6edf3;width:calc(100% - 2rem);min-height:48px;font:inherit;background:#0d1117;border:1px solid #30363d;border-radius:7px;margin:0 1rem .75rem;padding:.7rem .85rem;display:block}.command-results{max-height:min(42vh,340px);padding:0 .5rem;overflow-y:auto}.command-results button{color:#c9d1d9;width:100%;min-height:48px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;padding:.65rem .75rem;display:flex}.command-results button.active,.command-results button[aria-selected=true]{box-shadow:inset 3px 0 var(--main-color);background:#bd383829}.command-results small{color:#6e7681}.command-empty{color:#8b949e;padding:1rem}.palette-help{color:#6e7681;margin:.75rem 1rem 1rem;font-size:.65rem}.palette-help kbd{color:#c9d1d9;background:#30363d;margin-right:.2rem}#playground{background:linear-gradient(#161b22a6,#0d1117e6)}.playground-shell{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:1.25rem;display:grid}.playground-controls,.playground-output,.case-study-card,.diff-window{border:1px solid var(--card-border);background:#161b22e0;border-radius:10px}.playground-controls{padding:1rem}.scenario-fieldset{border:0;min-width:0;padding:0}.scenario-fieldset legend{color:#e6edf3;margin-bottom:.7rem;font:700 .8rem SF Mono,Fira Code,Menlo,Consolas,monospace}.scenario-presets{gap:.6rem;display:grid}.scenario-preset{cursor:pointer;border:1px solid #30363d;border-radius:7px;grid-template-columns:auto 1fr;align-items:start;gap:.75rem;min-height:60px;padding:.7rem;display:grid}.scenario-preset:has(input:checked){border-color:var(--main-color);background:#bd383814}.scenario-preset input{width:20px;height:20px;accent-color:var(--main-color);margin-top:.15rem}.scenario-preset span,.scenario-preset small{display:block}.scenario-preset strong{color:#e6edf3}.scenario-preset small{color:#8b949e;margin-top:.15rem;line-height:1.35}.playground-sliders{gap:.55rem;margin:1rem 0;display:grid}.playground-sliders label{color:#c9d1d9;justify-content:space-between;gap:1rem;font-size:.82rem;display:flex}.playground-sliders output{color:#58a6ff;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace}.playground-sliders input[type=range]{width:100%;min-height:44px;accent-color:var(--main-color)}.playground-output{view-transition-name:playground-output;padding:1rem}.playground-output-heading{border-bottom:1px solid var(--card-border);color:#6e7681;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:.8rem;font:.72rem SF Mono,Fira Code,Menlo,Consolas,monospace;display:flex}.playground-output-heading strong{color:#22c55e}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1rem 0;display:grid}.metric-grid div{background:#0d1117;border:1px solid #30363d;border-radius:7px;min-width:0;padding:.75rem}.metric-grid dt{color:#8b949e;font-size:.72rem}.metric-grid dd{color:#e6edf3;margin:.25rem 0 0;font:700 1.1rem SF Mono,Fira Code,Menlo,Consolas,monospace}.architecture-flow{color:#79c0ff;background:#58a6ff0f;border-radius:7px;flex-wrap:wrap;gap:.5rem;padding:.75rem;font:.72rem SF Mono,Fira Code,Menlo,Consolas,monospace;display:flex}.flow-arrow{color:#6e7681;margin-left:.5rem}.tradeoff-note{color:#a8b3bf;margin:1rem 0 0;line-height:1.55}.case-study-disclaimer{color:#b8c0ca;background:#e67e220f;border-left:3px solid #e67e22;max-width:820px;padding:.75rem 1rem}.case-study-group+.case-study-group{border-top:1px solid var(--card-border);margin-top:2.75rem;padding-top:2rem}.case-study-group>h3{color:#e6edf3;text-transform:none;margin-bottom:.75rem;font-size:clamp(1.35rem,2.4vw,2rem)}.case-study-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;margin:1.25rem 0;display:grid}.case-study-card{padding:1rem}.case-study-card h3,.case-study-card h4{text-transform:none;margin:0 0 .55rem;font-size:1.3rem}.case-study-card p,.case-study-card ul{color:#a8b3bf;margin-bottom:0;line-height:1.55}.diff-window{max-width:100%;margin:1rem 0;overflow:hidden}.diff-window figcaption{border-bottom:1px solid var(--card-border);color:#8b949e;padding:.65rem .9rem;font:.7rem SF Mono,Fira Code,Menlo,Consolas,monospace}.diff-window pre{color:#c9d1d9;white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;margin:0;padding:1rem;overflow-x:auto}.diff-remove{color:#ff7b72;background:#f8514914}.diff-add{color:#7ee787;background:#2ea04314}.commit-sequence{color:#a8b3bf;gap:.55rem;padding-left:1.5rem;display:grid}.commit-sequence code{color:#d2a8ff}.stack-filters{flex-wrap:wrap;gap:.55rem;display:flex}.stack-filter{color:#a8b3bf;cursor:pointer;background:#161b22;border:1px solid #30363d;border-radius:999px;min-height:44px;padding:.5rem .8rem;font:700 .7rem SF Mono,Fira Code,Menlo,Consolas,monospace}.stack-filter[aria-pressed=true]{border-color:var(--main-color);color:#fff;box-shadow:inset 0 -3px var(--main-color);background:#bd383824}.stack-result-count{color:#8b949e;margin:.85rem 0 1.5rem;font:.7rem SF Mono,Fira Code,Menlo,Consolas,monospace}.tech-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));max-width:none}.tech-card-inner{aspect-ratio:auto;transform-style:flat;min-height:118px;transform:none!important}.tech-card-front{-webkit-backface-visibility:visible;backface-visibility:visible;-webkit-user-select:text;user-select:text;justify-content:flex-start;align-items:flex-start;min-height:118px;padding:1rem;position:static}.tech-card-front i,.tech-card-front svg,.tech-logo-shell{flex:none}.tech-logo-shell{background:#ffffff06;border:1px solid;border-radius:.55rem;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;display:inline-flex;box-shadow:inset 0 0 18px #ffffff05}.tech-logo{width:1.65rem;height:1.65rem;overflow:visible}.tech-card-name{color:#e6edf3;text-transform:none;margin:0;font-size:.85rem}.tech-card-back{display:none}.tech-card--supporting{opacity:0}.tech-grid--visible .tech-card--supporting{opacity:.72}.tech-card--supporting .tech-card-front{background:#161b2294;min-height:104px}.contact-section{min-height:min(72vh,680px)}.contact-intro{color:#c9d1d9;max-width:760px;font-size:clamp(1.05rem,1.8vw,1.35rem);line-height:1.65}.contact-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:1.5rem;display:flex}.contact-actions .obfuscated-email{color:#79c0ff;border:1px solid #58a6ff;border-radius:6px;min-height:44px;padding:.65rem 1rem;font-size:.78rem;font-weight:700}.contact-actions .email-copy-status:not(:empty){flex-basis:100%}@media (max-width:767px){.playground-shell,.case-study-grid,.metric-grid,.capability-grid{grid-template-columns:1fr}.hero-actions{justify-content:stretch}.terminal-button{width:100%}.tech-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.tech-card-inner,.tech-card-front{min-height:104px}.tech-card-front{padding:.8rem}.tech-card--supporting .tech-card-front{min-height:96px}.tech-card-name{overflow-wrap:anywhere;max-width:100%}.playground-controls,.playground-output,.case-study-card{padding:.85rem}.hero-section .w-100,#about .w-100{text-align:left}.hero-section h1{overflow-wrap:anywhere;font-size:clamp(2.7rem,16vw,4.5rem);line-height:.95}.hero-positioning{margin-top:1.25rem}.contact-actions{align-items:stretch}.contact-actions .obfuscated-email{justify-content:center;width:100%}}@media (min-width:992px) and (max-height:820px){#sideNav .navbar-brand{padding-top:.75rem;padding-bottom:.25rem}.profile-tilt-wrapper{width:7rem;height:7rem}#sideNav .navbar-brand .img-profile{max-width:7rem;max-height:7rem}.sidebar-nav-link{min-height:34px;padding-top:.25rem;padding-bottom:.25rem}.sidebar-command-link{min-height:38px;margin-top:.35rem;padding-top:.35rem;padding-bottom:.35rem}.sidebar-widgets{gap:.4rem;padding:.6rem 1.25rem .75rem}.sw-quote{padding-top:.4rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.particle-canvas,.fe-wrap{display:none!important}.timeline-item,.tech-card{opacity:1!important;transform:none!important}.typewriter-cursor,.my-image:before,.my-image:after{display:none!important}}
