:root{--color-bg-primary:#05202b;--color-bg-surface:#111827;--color-bg-alt:#093347;--color-bg-contact:#0f0f0f;--color-bg-root:#242424;--color-bg-button:#1a1a1a;--color-text-primary:#fff;--color-text-secondary:#f0f0f0;--color-text-inverse:#000;--color-accent:#83eca1;--color-link:#add2ff;--color-link-hover:#add2ff}@media (prefers-color-scheme:light){:root{--color-bg-primary:#fff;--color-bg-surface:#f9f9f9;--color-bg-root:#fff;--color-bg-button:#f9f9f9;--color-text-primary:#213547;--color-text-inverse:#000;--color-accent:#83eca1;--color-link:#add2ff;--color-link-hover:#747bff}}.texture-fluid{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200' viewBox='0 0 200 200'><g fill='none' stroke='%23ffffff' stroke-opacity='0.07' stroke-width='2'><path d='M0 50 Q50 20 100 50 T200 50'/><path d='M0 100 Q50 70 100 100 T200 100'/><path d='M0 150 Q50 120 100 150 T200 150'/></g><g fill='%23ffffff' fill-opacity='0.06'><circle cx='50' cy='50' r='4'/><circle cx='150' cy='100' r='3'/><circle cx='100' cy='150' r='3.5'/><circle cx='25' cy='100' r='2'/><circle cx='175' cy='50' r='2.5'/></g></svg>");background-repeat:repeat;background-size:200px 200px}.texture-topographic{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240' viewBox='0 0 240 240'><g fill='none' stroke='%23ffffff' stroke-opacity='0.05' stroke-width='1.2'><path d='M0 60 Q60 25 120 60 T240 60'/><path d='M0 120 Q60 85 120 120 T240 120'/><path d='M0 180 Q60 145 120 180 T240 180'/><ellipse cx='120' cy='120' rx='110' ry='110'/><ellipse cx='120' cy='120' rx='75' ry='75'/><ellipse cx='120' cy='120' rx='40' ry='40'/></g></svg>");background-repeat:repeat;background-size:240px 240px}.texture-hexagonal{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='30' height='34.64' viewBox='0 0 30 34.64'><polygon points='15,1 29,8.66 29,25.98 15,33.64 1,25.98 1,8.66' fill='none' stroke='%23ffffff' stroke-opacity='0.05' stroke-width='1.2'/></svg>");background-repeat:repeat;background-size:30px 34.64px}.texture-lowpoly{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'><g fill='none' stroke='%23ffffff' stroke-opacity='0.07' stroke-width='1'><polygon points='0,0 40,20 0,40'/><polygon points='40,20 80,0 80,40'/><polygon points='0,40 40,20 40,60'/><polygon points='40,60 80,40 80,80'/><polygon points='0,40 40,60 0,80'/><polygon points='40,60 80,80 40,80'/></g><g fill='%23ffffff' fill-opacity='0.04'><polygon points='20,10 30,15 20,20'/><polygon points='60,30 70,35 60,40'/></g></svg>");background-repeat:repeat;background-size:80px 80px}.texture-flowfield{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='150' height='150' viewBox='0 0 150 150'><g fill='none' stroke='%23ffffff' stroke-opacity='0.05' stroke-width='1.3'><path d='M10 20 Q40 5 70 20 T130 20'/><path d='M20 50 Q50 35 80 50 T140 50'/><path d='M10 80 Q40 65 70 80 T130 80'/><path d='M20 110 Q50 95 80 110 T140 110'/></g><g fill='%23ffffff' fill-opacity='0.05'><circle cx='30' cy='30' r='2'/><circle cx='90' cy='60' r='1.5'/><circle cx='60' cy='100' r='2'/><circle cx='120' cy='40' r='1.5'/><circle cx='45' cy='75' r='1.8'/></g></svg>");background-repeat:repeat;background-size:150px 150px}.texture-blueprint{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100'><g fill='none' stroke='%23ffffff' stroke-opacity='0.04' stroke-width='0.6'><line x1='0' y1='25' x2='100' y2='25'/><line x1='0' y1='50' x2='100' y2='50'/><line x1='0' y1='75' x2='100' y2='75'/><line x1='25' y1='0' x2='25' y2='100'/><line x1='50' y1='0' x2='50' y2='100'/><line x1='75' y1='0' x2='75' y2='100'/></g><g fill='%23ffffff' fill-opacity='0.03'><circle cx='50' cy='50' r='2.5'/><circle cx='25' cy='25' r='1.5'/><circle cx='75' cy='75' r='1.5'/><circle cx='25' cy='75' r='1'/><circle cx='75' cy='25' r='1'/></g></svg>");background-repeat:repeat;background-size:100px 100px}.texture-fingerprint{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'><g fill='none' stroke='%23ffffff' stroke-opacity='0.05' stroke-width='1.2'><path d='M60 20 Q40 25 35 40 T40 70 Q45 85 60 90'/><path d='M60 30 Q45 33 42 45 T45 65 Q48 77 60 80'/><path d='M60 40 Q50 42 48 50 T50 60 Q52 68 60 70'/><path d='M60 50 Q55 51 54 55 T55 60 Q56 63 60 64'/><path d='M60 20 Q80 25 85 40 T80 70 Q75 85 60 90'/><path d='M60 30 Q75 33 78 45 T75 65 Q72 77 60 80'/><path d='M60 40 Q70 42 72 50 T70 60 Q68 68 60 70'/><path d='M60 50 Q65 51 66 55 T65 60 Q64 63 60 64'/></g></svg>");background-repeat:repeat;background-size:120px 120px}:root{--font-display:"Inter", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", ui-monospace, SFMono-Regular, monospace;--texture-carbon:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'><rect x='0' y='0' width='6' height='6' fill='%23ffffff' fill-opacity='0.08'/><rect x='6' y='6' width='6' height='6' fill='%23ffffff' fill-opacity='0.08'/></svg>");--texture-fluid:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200' viewBox='0 0 200 200'><g fill='none' stroke='%23ffffff' stroke-opacity='0.07' stroke-width='2'><path d='M0 50 Q50 20 100 50 T200 50'/><path d='M0 100 Q50 70 100 100 T200 100'/><path d='M0 150 Q50 120 100 150 T200 150'/></g><g fill='%23ffffff' fill-opacity='0.06'><circle cx='50' cy='50' r='4'/><circle cx='150' cy='100' r='3'/><circle cx='100' cy='150' r='3.5'/><circle cx='25' cy='100' r='2'/><circle cx='175' cy='50' r='2.5'/></g></svg>");--texture-topographic:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240' viewBox='0 0 240 240'><g fill='none' stroke='%23ffffff' stroke-opacity='0.05' stroke-width='1.2'><path d='M0 60 Q60 25 120 60 T240 60'/><path d='M0 120 Q60 85 120 120 T240 120'/><path d='M0 180 Q60 145 120 180 T240 180'/><ellipse cx='120' cy='120' rx='110' ry='110'/><ellipse cx='120' cy='120' rx='75' ry='75'/><ellipse cx='120' cy='120' rx='40' ry='40'/></g></svg>");--texture-hexagonal:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='30' height='34.64' viewBox='0 0 30 34.64'><polygon points='15,1 29,8.66 29,25.98 15,33.64 1,25.98 1,8.66' fill='none' stroke='%23ffffff' stroke-opacity='0.05' stroke-width='1.2'/></svg>");--texture-lowpoly:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'><g fill='none' stroke='%23ffffff' stroke-opacity='0.07' stroke-width='1'><polygon points='0,0 40,20 0,40'/><polygon points='40,20 80,0 80,40'/><polygon points='0,40 40,20 40,60'/><polygon points='40,60 80,40 80,80'/><polygon points='0,40 40,60 0,80'/><polygon points='40,60 80,80 40,80'/></g><g fill='%23ffffff' fill-opacity='0.04'><polygon points='20,10 30,15 20,20'/><polygon points='60,30 70,35 60,40'/></g></svg>");--texture-flowfield:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='150' height='150' viewBox='0 0 150 150'><g fill='none' stroke='%23ffffff' stroke-opacity='0.05' stroke-width='1.3'><path d='M10 20 Q40 5 70 20 T130 20'/><path d='M20 50 Q50 35 80 50 T140 50'/><path d='M10 80 Q40 65 70 80 T130 80'/><path d='M20 110 Q50 95 80 110 T140 110'/></g><g fill='%23ffffff' fill-opacity='0.05'><circle cx='30' cy='30' r='2'/><circle cx='90' cy='60' r='1.5'/><circle cx='60' cy='100' r='2'/><circle cx='120' cy='40' r='1.5'/><circle cx='45' cy='75' r='1.8'/></g></svg>");--texture-blueprint:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100'><g fill='none' stroke='%23ffffff' stroke-opacity='0.04' stroke-width='0.6'><line x1='0' y1='25' x2='100' y2='25'/><line x1='0' y1='50' x2='100' y2='50'/><line x1='0' y1='75' x2='100' y2='75'/><line x1='25' y1='0' x2='25' y2='100'/><line x1='50' y1='0' x2='50' y2='100'/><line x1='75' y1='0' x2='75' y2='100'/></g><g fill='%23ffffff' fill-opacity='0.03'><circle cx='50' cy='50' r='2.5'/><circle cx='25' cy='25' r='1.5'/><circle cx='75' cy='75' r='1.5'/><circle cx='25' cy='75' r='1'/><circle cx='75' cy='25' r='1'/></g></svg>");--texture-fingerprint:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'><g fill='none' stroke='%23ffffff' stroke-opacity='0.05' stroke-width='1.2'><path d='M60 20 Q40 25 35 40 T40 70 Q45 85 60 90'/><path d='M60 30 Q45 33 42 45 T45 65 Q48 77 60 80'/><path d='M60 40 Q50 42 48 50 T50 60 Q52 68 60 70'/><path d='M60 50 Q55 51 54 55 T55 60 Q56 63 60 64'/><path d='M60 20 Q80 25 85 40 T80 70 Q75 85 60 90'/><path d='M60 30 Q75 33 78 45 T75 65 Q72 77 60 80'/><path d='M60 40 Q70 42 72 50 T70 60 Q68 68 60 70'/><path d='M60 50 Q65 51 66 55 T65 60 Q64 63 60 64'/></g></svg>");scroll-behavior:smooth;font-family:var(--font-mono);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--color-text-primary);background-color:var(--color-bg-root);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-padding-top:64px;font-weight:400;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}a{color:var(--color-link);-webkit-text-decoration:inherit;text-decoration:inherit;font-weight:500}body{min-width:320px;min-height:100vh;font-family:var(--font-mono);margin:0}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.01em;font-weight:600}h1{font-size:3.2em;line-height:1.1}button{background-color:var(--color-bg-button);color:var(--color-text-primary);cursor:pointer;border:1px solid #0000;border-radius:8px;padding:.6em 1.2em;font-family:inherit;font-size:1em;font-weight:500;transition:border-color .25s}button:hover{border-color:var(--color-text-primary)}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.section{isolation:isolate;position:relative;overflow:hidden}.section__heading{font-family:var(--font-display);color:var(--color-accent);letter-spacing:-.01em;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700}.section__texture{z-index:-1;pointer-events:none;background-repeat:repeat;position:absolute;inset:0}.section__inner{width:100%;max-width:var(--section-max-width,1200px);margin:0 auto}.timeline-accent .MuiTimelineDot-root{background-color:var(--color-accent)}.timeline-accent .MuiTimelineConnector-root{background-color:color-mix(in srgb, var(--color-accent) 35%, transparent)}.timeline-accent .MuiTimelineContent-root{padding-bottom:1.5rem}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}#root{text-align:center;width:100%;min-height:100vh;margin:0;padding:0}p{font-size:1.25rem;font-family:var(--font-mono)}a{color:var(--color-text-primary);text-decoration:none}a:hover{color:var(--color-accent)}div a{cursor:pointer;padding:10px}header{z-index:1000;background-color:color-mix(in srgb, var(--color-bg-primary) 65%, transparent);-webkit-backdrop-filter:blur(8px);box-sizing:border-box;border-bottom:1px solid color-mix(in srgb, var(--color-accent) 12%, transparent);justify-content:space-between;align-items:center;width:100%;height:64px;padding:0 1.5rem;display:flex;position:fixed;top:0;left:0;box-shadow:0 2px 8px #00000059}header .NavName{font-family:var(--font-mono);white-space:nowrap;margin:0;padding:0;font-size:1.1rem;font-weight:600;transition:all .3s}.menu-icon{cursor:pointer;color:var(--color-text-primary);background:0 0;border:none;padding:0;font-size:2rem;line-height:1;display:none}.header-menu{align-items:center;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.header-menu li{text-align:center;margin:0;padding:0}.header-menu a,.header-menu button{color:var(--color-text-primary);cursor:pointer;background:0 0;border:none;margin:0;padding:.5rem .75rem;font-family:inherit;font-size:.9rem;font-weight:500;text-decoration:none;transition:color .3s;display:block}.header-menu a.active,.header-menu button.active{font-weight:700}.header-menu li:last-child a,.header-menu li:last-child button{border:1px solid var(--color-accent);color:var(--color-accent);background-color:#0000;border-radius:6px;padding:.5rem 1rem;transition:background-color .3s,color .3s,box-shadow .3s;display:inline-block}.header-menu li:last-child a:hover,.header-menu li:last-child a:focus-visible,.header-menu li:last-child button:hover,.header-menu li:last-child button:focus-visible{background-color:var(--color-accent);color:var(--color-text-inverse);box-shadow:0 0 20px color-mix(in srgb, var(--color-accent) 35%, transparent);outline:none}@media (width<=780px){header .NavName{text-align:center;flex:1}.menu-icon{flex-direction:row-reverse;padding-right:10px;display:flex}.header-menu{background-color:color-mix(in srgb, var(--color-bg-primary) 90%, transparent);-webkit-backdrop-filter:blur(8px);text-align:center;flex-direction:column;gap:0;width:100%;padding:.5rem 0;position:absolute;top:64px;right:0;display:none!important}.header-menu.open{display:flex!important}.header-menu li{margin:0;padding:.5rem 0}.header-menu li:last-child a,.header-menu li:last-child button{margin:.5rem auto}}header img{will-change:filter;width:auto;height:48px;transition:filter .3s}header img:hover{filter:drop-shadow(0 0 1em var(--color-accent))}li a:hover,a:hover,li button:hover,button:hover{color:var(--color-accent)}.active{font-weight:800;color:var(--color-accent)!important}.NavName:hover{color:var(--color-accent);cursor:pointer}.carbon-splitter{box-sizing:border-box;background-color:var(--color-bg-primary);background-image:var(--texture-carbon);border-top:1px solid color-mix(in srgb, var(--color-accent) 20%, transparent);border-bottom:1px solid color-mix(in srgb, var(--color-accent) 20%, transparent);background-repeat:repeat;background-size:12px 12px;width:100%;height:12px;margin:0}@media (width<=768px){.carbon-splitter{height:8px}}.tech-chip{border:1px solid color-mix(in srgb, var(--color-accent) 35%, transparent);background-color:color-mix(in srgb, var(--color-bg-primary) 70%, transparent);font-family:var(--font-mono);color:var(--color-text-primary);will-change:border-color, background-color, transform;white-space:nowrap;cursor:default;border-radius:6px;align-items:center;gap:.5rem;padding:.4rem .75rem;font-size:.8rem;list-style:none;transition:border-color .3s,background-color .3s,transform .2s;display:inline-flex}.tech-chip:hover{border-color:var(--tech-color);background-color:color-mix(in srgb, var(--tech-color) 15%, transparent);transform:translateY(-2px)}.tech-chip__icon{filter:grayscale()brightness(1.4);width:1.2em;height:1.2em;transition:filter .3s}.tech-chip:hover .tech-chip__icon{filter:grayscale(0)brightness()}.tech-chip__name{letter-spacing:.02em;font-weight:500}@media (width<=640px){.tech-chip{padding:.4rem}.tech-chip__name{display:none}}.footer{background-color:var(--color-bg-surface);padding:clamp(3rem,7vw,5rem) clamp(1.25rem,4vw,4rem) clamp(1.5rem,3vw,2rem)}.footer__texture{background-image:var(--texture-blueprint);background-size:100px 100px}.footer__grid{border-bottom:1px solid color-mix(in srgb, var(--color-accent) 18%, transparent);grid-template-columns:2fr 1fr 1fr;gap:clamp(2rem,5vw,4rem);width:100%;max-width:1200px;margin:0 auto;padding-bottom:clamp(2rem,4vw,3rem);display:grid}.footer__brand{text-align:center;flex-direction:column;align-items:center;gap:1rem;display:flex}.footer__brand-name{font-family:var(--font-display);color:var(--color-accent);letter-spacing:-.01em;text-align:center;margin:0;font-size:clamp(1.5rem,3vw,2rem);font-weight:700}.footer__brand-desc{font-family:var(--font-mono);color:var(--color-text-secondary);text-align:center;max-width:400px;margin:0;font-size:.9rem;line-height:1.6}.footer__column-title{font-family:var(--font-display);color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.08em;margin:0 0 1.25rem;font-size:1rem;font-weight:600}.footer__nav-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.footer__nav-link{font-family:var(--font-mono);color:var(--color-text-secondary);text-align:left;cursor:pointer;background:0 0;border:none;padding:0;font-size:.9rem;text-decoration:none;transition:color .3s,transform .2s}.footer__nav-link:hover,.footer__nav-link:focus-visible{color:var(--color-accent);outline:none;transform:translate(4px)}.footer__contact-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.footer__contact-link{font-family:var(--font-mono);color:var(--color-text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-size:.9rem;text-decoration:none;transition:color .3s;display:inline-block}.footer__contact-link:hover,.footer__contact-link:focus-visible{color:var(--color-accent);outline:none}.footer__contact-link.CV{color:var(--color-accent);font-weight:500}.footer__contact-link.CV:hover,.footer__contact-link.CV:focus-visible{color:var(--color-text-primary);text-decoration:underline}.footer__bottom{text-align:center;width:100%;max-width:1200px;margin:0 auto;padding-top:clamp(1rem,2vw,1.5rem)}.footer__copyright{font-family:var(--font-mono);color:var(--color-text-secondary);opacity:.7;margin:0;font-size:.85rem}@media (width<=768px){.footer__grid{grid-template-columns:1fr 1fr;gap:2rem}.footer__brand{grid-column:1/-1}}@media (width<=480px){.footer__grid{grid-template-columns:1fr;gap:2rem}.footer__column-title{text-align:center;margin-bottom:1rem}.footer__nav-list,.footer__contact-list{align-items:center}.footer__nav-link,.footer__contact-link{text-align:center}}.hero{background-color:var(--color-bg-primary);isolation:isolate;grid-template-columns:minmax(0,1fr);place-items:center;gap:clamp(1.5rem,4vw,3rem);min-height:92vh;padding:clamp(2rem,6vw,5rem) clamp(1.25rem,4vw,4rem);display:grid;position:relative;overflow:hidden}.hero:before,.hero:after{content:"";pointer-events:none;z-index:1;height:60px;position:absolute;left:0;right:0}.hero:before{background:linear-gradient(to bottom, var(--color-bg-root), transparent);top:0}.hero:after{background:linear-gradient(to top, var(--color-bg-alt), transparent);bottom:0}.hero__texture{z-index:-1;background-image:var(--texture-fluid);pointer-events:none;background-repeat:repeat;background-size:200px 200px;position:absolute;inset:0}.hero__inner{grid-template-columns:minmax(160px,280px) minmax(0,1fr);align-items:center;gap:clamp(1.5rem,5vw,4rem);width:100%;max-width:1200px;margin:0 auto;display:grid}.hero__logo-link{line-height:0;display:inline-block}.hero__logo{width:100%;max-width:280px;height:auto;filter:drop-shadow(0 0 1.5em color-mix(in srgb, var(--color-accent) 25%, transparent));will-change:filter;transition:filter .3s;display:block}.hero__logo:hover{filter:drop-shadow(0 0 2em color-mix(in srgb, var(--color-accent) 55%, transparent))}.hero__content{text-align:left;flex-direction:column;align-items:flex-start;gap:1.5rem;display:flex}.hero__name{color:var(--color-accent);font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:clamp(2rem,6vw,4rem);font-weight:700;line-height:1.05}.hero__title{margin:.5rem 0}.hero__subtitle{color:var(--color-text-secondary);font-family:var(--font-mono);letter-spacing:.02em;text-transform:uppercase;margin:0;font-size:clamp(.95rem,1.6vw,1.25rem);font-weight:400;line-height:1.4}.hero__role{color:var(--color-text-secondary);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:clamp(.95rem,1.4vw,1.15rem)}.hero__cta{border:1px solid var(--color-accent);color:var(--color-accent);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;will-change:box-shadow;background-color:#0000;border-radius:8px;align-items:center;gap:.6em;padding:.85em 1.6em;font-size:.95rem;font-weight:500;text-decoration:none;transition:background-color .3s,color .3s,box-shadow .3s;display:inline-flex}.hero__cta:hover,.hero__cta:focus-visible{background-color:var(--color-accent);color:var(--color-text-inverse);box-shadow:0 0 24px color-mix(in srgb, var(--color-accent) 35%, transparent);outline:none}.hero__cta-dot{background-color:var(--color-accent);border-radius:50%;width:.6em;height:.6em;animation:2s infinite pulse-dot;display:inline-block}.hero__cta:hover .hero__cta-dot,.hero__cta:focus-visible .hero__cta-dot{background-color:var(--color-text-inverse);animation:none}@keyframes pulse-dot{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--color-accent) 60%, transparent)}70%{box-shadow:0 0 0 10px color-mix(in srgb, var(--color-accent) 0%, transparent)}to{box-shadow:0 0 0 0 color-mix(in srgb, var(--color-accent) 0%, transparent)}}@keyframes pulse-accent{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--color-accent) 60%, transparent)}70%{box-shadow:0 0 0 14px color-mix(in srgb, var(--color-accent) 0%, transparent)}to{box-shadow:0 0 0 0 color-mix(in srgb, var(--color-accent) 0%, transparent)}}.badge-pulse{animation:2s infinite pulse-accent}.hero__cv-wrapper{display:inline-block;position:relative}.hero__cv-button{border:1px solid var(--color-accent);color:var(--color-accent);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;will-change:box-shadow;background-color:#0000;border-radius:8px;align-items:center;gap:.5rem;padding:.85em 1.6em;font-size:.95rem;font-weight:500;transition:all .3s;display:inline-flex}.hero__cv-button:hover,.hero__cv-button:focus-visible{background-color:var(--color-accent);color:var(--color-text-inverse);box-shadow:0 0 24px color-mix(in srgb, var(--color-accent) 35%, transparent);outline:none}.hero__cv-button:after{content:"▼";font-size:.7rem;transition:transform .3s}.hero__cv-button[aria-expanded=true]:after{transform:rotate(180deg)}.hero__cv-dropdown{background-color:var(--color-bg-surface);border:1px solid color-mix(in srgb, var(--color-accent) 35%, transparent);z-index:100;border-radius:8px;min-width:180px;animation:.2s dropdown-fade-in;position:absolute;top:calc(100% + 8px);left:0;overflow:hidden;box-shadow:0 8px 24px #0006}@keyframes dropdown-fade-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.hero__cv-option{width:100%;color:var(--color-text-primary);font-family:var(--font-mono);text-align:left;cursor:pointer;background:0 0;border:none;padding:.85rem 1.25rem;font-size:.9rem;transition:background-color .2s,color .2s;display:block}.hero__cv-option:hover,.hero__cv-option:focus-visible{background-color:color-mix(in srgb, var(--color-accent) 15%, transparent);color:var(--color-accent);outline:none}.hero__cv-option+.hero__cv-option{border-top:1px solid color-mix(in srgb, var(--color-accent) 15%, transparent)}@media (width<=720px){.hero__inner{text-align:center;grid-template-columns:1fr}.hero__content{text-align:center;align-items:center}.hero__logo{max-width:180px;margin:0 auto}}.about{background-color:var(--color-bg-primary);padding:clamp(3rem,7vw,6rem) clamp(1.25rem,4vw,4rem)}.about__texture{background-image:var(--texture-topographic);background-size:240px 240px}.about__inner{--section-max-width:900px;flex-direction:column;gap:1.5rem;display:flex}.about__heading{margin:0}.about__content{flex-direction:column;gap:1.25rem;display:flex}.about__paragraph{font-family:var(--font-mono);color:var(--color-text-primary);margin:0;font-size:clamp(.95rem,1.2vw,1.05rem);line-height:1.7}.technologies{background-color:var(--color-bg-surface);padding:clamp(3rem,7vw,6rem) clamp(1.25rem,4vw,4rem)}.technologies:before,.technologies:after{content:"";pointer-events:none;z-index:1;height:60px;position:absolute;left:0;right:0}.technologies:before{background:linear-gradient(to bottom, var(--color-bg-alt), transparent);top:0}.technologies:after{background:linear-gradient(to top, var(--color-bg-primary), transparent);bottom:0}.technologies__texture{z-index:0;background-image:var(--texture-hexagonal);background-size:30px 34.64px;width:100%;height:300%;inset:-100% auto auto 0}.technologies__inner{z-index:1;flex-direction:column;gap:2rem;display:flex;position:relative}.technologies__heading{margin:0}.skill-telemetry{flex-wrap:wrap;justify-content:center;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.skill-telemetry__item{border:1px solid color-mix(in srgb, var(--color-accent) 35%, transparent);background-color:color-mix(in srgb, var(--color-bg-primary) 70%, transparent);font-family:var(--font-mono);color:var(--color-text-primary);will-change:box-shadow, transform;white-space:nowrap;border-radius:6px;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.85rem;transition:border-color .3s,box-shadow .3s,transform .3s;display:flex}.skill-telemetry__item:hover{border-color:var(--color-accent);box-shadow:0 0 16px color-mix(in srgb, var(--color-accent) 25%, transparent);transform:translateY(-2px)}.skill-telemetry__icon{filter:grayscale()brightness(1.4);width:auto;height:1.4em;transition:filter .3s}.skill-telemetry__item:hover .skill-telemetry__icon{filter:grayscale(0)brightness()}.skill-telemetry__name{letter-spacing:.02em;font-weight:500}@media (width<=640px){.skill-telemetry{gap:.5rem}.skill-telemetry__item{padding:.5rem .75rem;font-size:.8rem}}.projects{background-color:var(--color-bg-primary);padding:clamp(3rem,7vw,6rem) clamp(1.25rem,4vw,4rem)}.projects:before,.projects:after{content:"";pointer-events:none;z-index:1;height:60px;position:absolute;left:0;right:0}.projects:before{background:linear-gradient(to bottom, var(--color-bg-surface), transparent);top:0}.projects:after{background:linear-gradient(to top, var(--color-bg-alt), transparent);bottom:0}.projects__texture{background-image:var(--texture-lowpoly);background-size:80px 80px}.projects__inner{width:100%;max-width:1200px;margin:0 auto}.projects__heading{margin:0 0 .5rem}.projects__subheading{font-family:var(--font-mono);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.12em;margin:0 0 2rem;font-size:.85rem;font-weight:500}.projects__gallery{flex-wrap:wrap;justify-content:center;gap:1.5em;display:flex}.projects__card{background-color:var(--color-bg-surface);border:1px solid color-mix(in srgb, var(--color-accent) 12%, transparent);will-change:transform, box-shadow;border-radius:8px;transition:transform .3s ease-in-out,border-color .3s ease-in-out,box-shadow .3s ease-in-out;overflow:hidden}.projects__card:hover,.projects__card:focus-within{border-color:var(--color-accent);box-shadow:0 8px 24px color-mix(in srgb, var(--color-accent) 35%, transparent);transform:translateY(-2px)}.project-card__tech-list{flex-wrap:wrap;justify-content:center;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.experience-section{background-color:var(--color-bg-primary);padding:clamp(3rem,7vw,6rem) clamp(1.25rem,4vw,4rem)}.experience-section__texture{background-image:var(--texture-flowfield);background-size:150px 150px}.experience-section__heading{margin:0 0 2rem}.experience-section__timeline{margin-top:1.5rem}@media (width<=600px){.timeline-accent .MuiTimelineItem-root{align-items:stretch;display:flex}.timeline-accent .MuiTimelineOppositeContent-root{flex:0 0 80px;min-width:80px;max-width:80px}.timeline-accent .MuiTimelineSeparator-root{flex-direction:column;flex:0 0 24px;align-items:center;min-width:24px;display:flex}.timeline-accent .MuiTimelineDot-root{flex-shrink:0;margin:0;padding:0}.timeline-accent .MuiTimelineContent-root{flex:1;min-width:0}.timeline-accent .MuiTimelineConnector-root{flex-grow:1;width:2px}}.hobbies{background-color:var(--color-bg-surface);padding:4rem 1.5rem}.hobbies:before{content:"";pointer-events:none;z-index:1;background:linear-gradient(to bottom, var(--color-bg-alt), transparent);height:80px;position:absolute;top:0;left:0;right:0}.hobbies__texture{z-index:0;background-image:var(--texture-fingerprint);background-size:120px 120px}.hobbies__inner{--section-max-width:900px;z-index:2;position:relative}.hobbies__heading{color:var(--color-text-primary);text-align:center;margin-bottom:2rem;font-size:2.5rem;font-weight:700}.hobbies__content{flex-direction:column;gap:1.5rem;display:flex}.hobbies__paragraph{color:var(--color-text-secondary);text-align:center;font-size:1.1rem;line-height:1.8}@media (width<=768px){.hobbies{padding:3rem 1rem}.hobbies__heading{font-size:2rem}.hobbies__paragraph{text-align:left;font-size:1rem}}
