.react-activity-calendar__tooltip{color:#f0f0f0;background-color:#1a1a1a;border-radius:.25em;width:max-content;max-width:calc(100vw - 20px);padding:.2em .5em;font-size:13px}.react-activity-calendar__tooltip .react-activity-calendar__tooltip-arrow{fill:#1a1a1a}.react-activity-calendar__tooltip[data-color-scheme=dark]{color:#0f0f0f;background-color:#f0f0f0}.react-activity-calendar__tooltip[data-color-scheme=dark] .react-activity-calendar__tooltip-arrow{fill:#f0f0f0}:root{--bg:#f3f0e8;--surface:#faf8f1;--border:#d3cdbe;--text:#24231f;--text-muted:#72736d;--accent:#0057ff;--accent-soft:#eef2fa;--accent-dark:#003ecc}html{scroll-behavior:smooth}*{box-sizing:border-box;margin:0;padding:0}img{max-width:100%}.scroll-progress{background:var(--accent);z-index:100;height:2px;position:fixed;top:0;left:0}.sticky-nav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);z-index:99;opacity:0;pointer-events:none;background:#fcfbf7e6;justify-content:center;gap:1.5rem;width:100%;padding:.7rem 1rem;transition:opacity .3s,transform .3s;display:flex;position:fixed;top:0;transform:translateY(-100%)}.sticky-nav.nav-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.sticky-nav a{color:var(--text-muted);font-size:.85rem;font-weight:500;text-decoration:none}.sticky-nav a:hover,.sticky-nav a:focus-visible{color:var(--accent)}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;background-image:radial-gradient(at 50% 12%,#ffffffb8,#0000 58%),radial-gradient(at 50% 100%,#c2b79b26,#0000 52%),repeating-linear-gradient(0deg,#6e685806 0 1px,#0000 1px 5px),linear-gradient(#6e685811 1px,#0000 1px),linear-gradient(90deg,#6e685811 1px,#0000 1px),radial-gradient(circle,#6e68582b 1px,#0000 1px);background-size:auto,auto,auto,32px 32px,32px 32px,16px 16px;background-attachment:fixed;font-family:Inter,sans-serif;line-height:1.6;overflow-x:hidden}main{background:#faf8f1a3;max-width:860px;margin:0 auto;box-shadow:0 0 0 1px #ffffff6b,0 18px 50px #6e68580f}section{border-bottom:1px dashed #6e685847;padding:3rem 1.5rem}.section-label{color:var(--text-muted);letter-spacing:.16em;font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:600}.about__copy{margin-top:1.5rem}.about__copy p{margin-bottom:1rem;line-height:1.7}.about__copy p:last-child{margin-bottom:0}.experience__timeline{margin-top:1.5rem}.experience__entry{border-left:3px solid var(--accent);margin-bottom:1.25rem;padding-left:1.25rem}.experience__entry:last-child{margin-bottom:0}.experience__header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.experience__header h3{font-size:1.1rem;font-weight:600}.experience__descriptor,.experience__dates{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.85rem}.experience__descriptor{margin-top:.2rem}.experience__dates{flex-shrink:0}.experience__entry ul{margin-top:.85rem;padding-left:1.1rem}.experience__entry li{margin-bottom:.5rem}.experience__entry li:last-child{margin-bottom:0}.pill{background:var(--accent-soft);color:var(--accent);border:1px solid var(--border);border-radius:3px;padding:4px 12px;font-family:JetBrains Mono,monospace;font-size:.78rem;font-weight:500}.skills__groups{gap:1.5rem;margin-top:1.5rem;display:grid}.skills__group-label{color:var(--text-muted);letter-spacing:.12em;font-size:.75rem;font-weight:600}.skills__pills{flex-wrap:wrap;gap:.5rem;margin-top:.65rem;display:flex}.skills__certifications-label{margin-top:3rem}.certifications{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin-top:1.5rem;display:grid}.certification-card{border-left:3px solid var(--accent);background:var(--surface);border-radius:4px;padding:1rem 1.25rem}.certification-card h3{font-size:1rem;font-weight:700}.certification-card__date{color:var(--text-muted);margin-top:.25rem;font-size:.85rem}.certification-card>p:last-child{margin-top:.65rem}.projects__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin-top:1.25rem;display:grid}.project-card{border:1px solid var(--border);background:var(--surface);border-radius:4px;padding:1.75rem;position:relative;overflow:hidden;box-shadow:4px 4px #6e68581f}.project-card__header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.project-card h3{font-size:1.1rem;font-weight:600}.project-card__date{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.85rem}.projects__tags{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.project-card__description{margin-top:1.25rem;line-height:1.7}.project-card__tech-strip{background:var(--accent-soft);color:var(--text-muted);opacity:0;padding:.35rem 1rem;font-size:.75rem;transition:opacity .2s;position:absolute;bottom:0;left:0;right:0}.project-card:hover .project-card__tech-strip,.project-card:focus-within .project-card__tech-strip{opacity:1}.projects__github{color:var(--accent);margin-top:1.25rem;font-weight:600;text-decoration:none;display:inline-block}.projects__github:hover,.projects__github:focus-visible{color:var(--accent-dark);text-decoration:underline}.projects__ticker{height:8px;color:var(--text-muted);opacity:0;white-space:nowrap;margin:1.5rem -1.75rem -1.75rem;font-family:JetBrains Mono,monospace;font-size:.75rem;line-height:8px;overflow:hidden}.projects__ticker span{display:inline-block;transform:translate(100%)}.project-card--hero:hover .projects__ticker,.project-card--hero:focus-within .projects__ticker{opacity:1}.project-card--hero:hover .projects__ticker span,.project-card--hero:focus-within .projects__ticker span{animation:8s linear infinite projects-marquee}.github__heading{margin-top:.75rem;font-size:1.1rem;font-weight:600}.github__stats{margin-top:1.5rem}.github__calendar{width:100%;margin-top:1.5rem;overflow:visible}.github__calendar .react-activity-calendar__scroll-container{overflow:visible!important}.github__calendar .react-activity-calendar__calendar{width:100%;height:auto;display:block}.github__profile-link{color:var(--accent);margin-top:1.25rem;text-decoration:none;display:inline-block}.github__profile-link:hover,.github__profile-link:focus-visible{color:var(--accent-dark);text-decoration:underline}.footer{border-top:1px solid var(--border);color:var(--text-muted);text-align:center;padding:3rem 1.5rem}.footer__name{color:var(--text);font-size:1rem;font-weight:600}.footer__contact{margin-top:1rem}.footer__contact-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:.6rem;margin-top:.35rem;display:flex}.footer__contact-row a,.footer__phone{color:var(--accent);font-weight:500;text-decoration:none}.footer__contact-row a:hover,.footer__contact-row a:focus-visible,.footer__phone:hover,.footer__phone:focus-visible{text-decoration:underline}.footer__copy-button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:.85rem}.footer__copy-button:hover,.footer__copy-button:focus-visible{color:var(--accent)}.footer__socials{justify-content:center;gap:1rem;margin-top:1rem;display:flex}.footer__icon-link{color:var(--text-muted);font-size:1.1rem}.footer__icon-link:hover,.footer__icon-link:focus-visible{color:var(--accent)}.footer__meta{margin-top:1rem;font-size:.85rem}.footer__note{margin-top:.35rem;font-size:.85rem;font-style:italic}.footer__copyright{margin-top:1.25rem;font-size:.8rem}.footer__signature{margin-top:2rem;font-family:JetBrains Mono,monospace;font-size:.75rem;line-height:1.7}.footer__signature p:first-child{color:var(--accent)}.footer__signature a{color:var(--accent);text-decoration:none}.footer__signature a:hover,.footer__signature a:focus-visible{text-decoration:underline}@keyframes projects-marquee{0%{transform:translate(100%)}to{transform:translate(-100%)}}.hero{text-align:center;background:0 0;flex-direction:column;justify-content:center;align-items:center;min-height:80vh;margin:-5rem -1.5rem;padding:5rem 1.5rem;display:flex;position:relative;overflow:hidden}.hero:after{z-index:0;content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000 0 3px,#6e68580a 4px);position:absolute;inset:0}.hero>:not(.hero__blob){z-index:1;position:relative}.hero__blob{z-index:0;filter:blur(18px);pointer-events:none;background:radial-gradient(circle,#0057ff0f,#0000);border-radius:50%;animation:8s ease-in-out infinite hero-blob-float;position:absolute}.hero__blob--top-left{width:500px;height:500px;top:-150px;left:-150px}.hero__blob--bottom-right{opacity:.05;width:400px;height:400px;animation-delay:4s;bottom:-120px;right:-120px}.hero__profile{border:2px solid var(--border);object-fit:cover;border-radius:50%;width:88px;max-width:100%;height:88px;margin-bottom:1.5rem}.hero__video{aspect-ratio:16/9;border:1px solid var(--border);object-fit:cover;background:var(--surface);filter:saturate(.88)contrast(1.04);border-radius:4px;width:min(420px,100%);max-width:100%;margin-bottom:1.5rem;box-shadow:5px 5px #6e685824}.hero h1{letter-spacing:-.03em;font-size:3rem;font-weight:700;line-height:1.15}.hero__role{min-height:1.8rem;color:var(--accent);margin-top:.75rem;font-family:JetBrains Mono,monospace;font-size:1rem;font-weight:500}.hero__cursor{width:1ch;margin-left:2px;animation:1s step-end infinite hero-cursor-blink;display:inline-block}.hero__intro{max-width:650px;color:var(--text-muted);text-align:left;margin-top:1.25rem}.hero__intro p{margin-bottom:.8rem;line-height:1.7}.hero__intro p:last-child{margin-bottom:0;font-family:JetBrains Mono,monospace;font-size:.85rem}.hero__intro a{color:var(--accent);text-underline-offset:3px;font-weight:500;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.hero__intro a:hover,.hero__intro a:focus-visible{color:var(--accent-dark);text-decoration-style:solid}.hero__inline-action{color:var(--accent);cursor:pointer;font:inherit;text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:500;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.hero__inline-action:hover,.hero__inline-action:focus-visible{color:var(--accent-dark);text-decoration-style:solid}.hero__email-reveal{margin-top:.35rem;display:block}.hero__socials{gap:.75rem;margin-top:1.75rem;display:flex}.hero__icon-button{border:1px solid var(--border);width:2.5rem;height:2.5rem;color:var(--text);border-radius:3px;justify-content:center;align-items:center;font-size:1.1rem;transition:background-color .2s,border-color .2s,color .2s;display:inline-flex}.hero__icon-button:hover,.hero__icon-button:focus-visible{border-color:var(--accent);background:var(--accent);color:#fff}.hero__cta{border:1px solid var(--border);color:var(--text);cursor:pointer;font:inherit;background:0 0;border-radius:3px;padding:.65rem 1.25rem;font-weight:500;transition:border-color .2s,color .2s}.hero__cta:hover,.hero__cta:focus-visible{border-color:var(--accent);color:var(--accent)}.hero__actions{justify-content:center;align-items:center;gap:.75rem;margin-top:2rem;display:flex}.hero__resume{border:1px solid var(--border);color:var(--text);border-radius:3px;padding:.65rem 1.25rem;font-weight:500;text-decoration:none;transition:border-color .2s,color .2s}.hero__resume:hover,.hero__resume:focus-visible{border-color:var(--accent);color:var(--accent)}.hero__scroll-arrow{color:var(--text-muted);margin-top:1.25rem;font-size:1.2rem;animation:1.5s ease-in-out infinite hero-scroll-bob}@keyframes hero-cursor-blink{50%{opacity:0}}@keyframes hero-scroll-bob{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}@keyframes hero-blob-float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@media (width<=767px){.projects__grid,.certifications{grid-template-columns:1fr}}@media (width<=639px){.sticky-nav{gap:.8rem}}@media (width<=600px){.experience__header{flex-direction:column;gap:.25rem}}@media (width<=479px){.hero h1{font-size:2rem}.hero__actions{flex-direction:column}}
