:root{color-scheme:light;--red: #e0193a;--red-dim: #c01231;--red-dark: #f3b7c2;--red-glow: rgba(224, 25, 58, .07);--red-glow-strong: rgba(224, 25, 58, .14);--border-red: #f5cdd5;--on-red: #ffffff;--bg: #f7f7f8;--surface: #ffffff;--surface-2: #f1f1f3;--bg-card: var(--surface);--bg-hover: var(--surface-2);--nav-bg: rgba(247, 247, 248, .85);--border: #e4e4e8;--border-2: #d2d2d8;--heading: #111114;--text: #2a2a31;--text-dim: #55555f;--text-muted: #7a7a85;--shadow: 0 1px 2px rgba(17, 17, 20, .04), 0 8px 24px -12px rgba(17, 17, 20, .12);--shadow-lg: 0 24px 60px -28px rgba(17, 17, 20, .28);--grid-line: rgba(17, 17, 20, .05);--photo-bg: #f1f1f3;--mark-bg: #15171c;--mark-border: transparent;--radius: 12px;--radius-sm: 8px;--nav-height: 4.25rem;--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace}:root[data-theme=dark]{color-scheme:dark;--red: #ff3b58;--red-dim: #ff2244;--red-dark: #6e1a29;--red-glow: rgba(255, 59, 88, .09);--red-glow-strong: rgba(255, 59, 88, .18);--border-red: #4a1d26;--bg: #111317;--surface: #181b21;--surface-2: #1f232a;--nav-bg: rgba(17, 19, 23, .85);--border: #272b33;--border-2: #363b45;--heading: #f4f5f7;--text: #dcdfe5;--text-dim: #a4aab5;--text-muted: #7f8693;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 8px 24px -12px rgba(0, 0, 0, .5);--shadow-lg: 0 24px 60px -28px rgba(0, 0, 0, .7);--grid-line: rgba(255, 255, 255, .045);--photo-bg: #1f232a;--mark-bg: #15171c;--mark-border: #363b45}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--red: #ff3b58;--red-dim: #ff2244;--red-dark: #6e1a29;--red-glow: rgba(255, 59, 88, .09);--red-glow-strong: rgba(255, 59, 88, .18);--border-red: #4a1d26;--bg: #111317;--surface: #181b21;--surface-2: #1f232a;--nav-bg: rgba(17, 19, 23, .85);--border: #272b33;--border-2: #363b45;--heading: #f4f5f7;--text: #dcdfe5;--text-dim: #a4aab5;--text-muted: #7f8693;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 8px 24px -12px rgba(0, 0, 0, .5);--shadow-lg: 0 24px 60px -28px rgba(0, 0, 0, .7);--grid-line: rgba(255, 255, 255, .045);--photo-bg: #1f232a;--mark-bg: #15171c;--mark-border: #363b45}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:clamp(15px,.35vw + 12.6px,20px);scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-height) + 1rem);-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;min-height:100vh;transition:background-color .25s,color .25s}a{color:inherit;text-decoration:none}strong{color:var(--red);font-weight:600}img{max-width:100%;display:block}button{font:inherit}:focus-visible{outline:2px solid var(--red);outline-offset:3px;border-radius:4px}.container{width:100%;margin:0 auto;padding-inline:clamp(1rem,5vw,6rem)}.theme-toggle{display:grid;place-items:center;width:2.4rem;height:2.4rem;border:1px solid var(--border-2);border-radius:var(--radius-sm);background:transparent;color:var(--text-dim);cursor:pointer;transition:color .2s,border-color .2s}.theme-toggle:hover{color:var(--heading);border-color:var(--text-muted)}.theme-toggle .fa-sun{display:none}:root[data-theme=dark] .theme-toggle .fa-sun{display:inline}:root[data-theme=dark] .theme-toggle .fa-moon{display:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .theme-toggle .fa-sun{display:inline}:root:not([data-theme=light]) .theme-toggle .fa-moon{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}.landing strong{color:var(--heading)}.section{padding-block:clamp(4rem,7vw,7rem);border-top:1px solid var(--border)}.section--alt{background:var(--surface)}.section-head{max-width:46rem;margin-bottom:3rem}.section-head-row{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;margin-bottom:3rem}.section-head-row .section-head{margin-bottom:0}.eyebrow{display:inline-flex;align-items:center;gap:.65rem;font-family:var(--font-mono);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin-bottom:.9rem}.eyebrow:before{content:"";width:1.5rem;height:1px;background:currentColor}.section-title{font-size:clamp(1.6rem,2.6vw,2.4rem);line-height:1.2;font-weight:700;letter-spacing:-.025em;color:var(--heading)}.section-lead{margin-top:.9rem;font-size:1.05rem;color:var(--text-dim)}.red{color:var(--red)}.skip-link{position:absolute;left:-9999px;top:.5rem;z-index:200;background:var(--red);color:var(--on-red);padding:.5rem .9rem;border-radius:var(--radius-sm)}.skip-link:focus{left:.5rem}.todo{background:#fff3a8;color:#3d3500;border-radius:3px;padding:0 .25em;font-weight:600}.js .reveal{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}.js .reveal.is-visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.js .reveal{opacity:1;transform:none}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;height:2.9rem;padding:0 1.3rem;border-radius:var(--radius-sm);font-size:.93rem;font-weight:600;border:1px solid transparent;transition:background .2s,border-color .2s,color .2s,transform .2s;white-space:nowrap}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--red);color:var(--on-red)}.btn-primary:hover{background:var(--red-dim)}.btn-ghost{border-color:var(--border-2);color:var(--heading);background:var(--surface)}.btn-ghost:hover{border-color:var(--text-muted)}.btn-sm{height:2.4rem;padding:0 1rem;font-size:.85rem}.chip{display:inline-flex;align-items:center;padding:.25rem .65rem;border:1px solid var(--border);border-radius:6px;font-family:var(--font-mono);font-size:.72rem;color:var(--text-dim);background:var(--surface-2)}.chips{display:flex;flex-wrap:wrap;gap:.4rem}.nav{position:fixed;inset:0 0 auto 0;height:var(--nav-height);z-index:100;border-bottom:1px solid transparent;transition:background .25s,border-color .25s}.nav.is-scrolled,.nav.is-open{background:var(--nav-bg);backdrop-filter:saturate(160%) blur(14px);-webkit-backdrop-filter:saturate(160%) blur(14px);border-bottom-color:var(--border)}.nav .container{height:100%;display:flex;align-items:center;gap:1.5rem}.nav-brand{display:flex;align-items:center;gap:.75rem;font-weight:600;color:var(--heading);margin-right:auto}.nav-brand-mark{display:grid;place-items:center;width:2.1rem;height:2.1rem;border-radius:var(--radius-sm);background:var(--mark-bg);border:1px solid var(--mark-border);color:#fff;font-family:var(--font-mono);font-weight:700;font-size:.82rem}.nav-brand-mark span{color:var(--red)}.nav-brand-name{font-size:.95rem}.nav-menu{display:flex;align-items:center;gap:.15rem}.nav-link{padding:.45rem .7rem;border-radius:6px;font-size:.88rem;color:var(--text-dim);transition:color .2s,background .2s}.nav-link:hover{color:var(--heading)}.nav-link.active{color:var(--heading);background:var(--surface-2)}.nav-actions{display:flex;align-items:center;gap:.6rem}.lang-switch{display:inline-flex;height:2.4rem;align-items:stretch;border:1px solid var(--border-2);border-radius:var(--radius-sm);overflow:hidden;font-family:var(--font-mono);font-size:.7rem;font-weight:600}.lang-switch a,.lang-switch span{display:grid;place-items:center;padding:0 .6rem;color:var(--text-muted)}.lang-switch [aria-current=true]{background:var(--surface-2);color:var(--heading)}.lang-switch a:hover{color:var(--heading)}.nav-toggle{display:none;width:2.4rem;height:2.4rem;border:1px solid var(--border-2);border-radius:var(--radius-sm);background:transparent;color:var(--heading);cursor:pointer}.hero{position:relative;padding:calc(var(--nav-height) + clamp(3rem,7vw,6.5rem)) 0 clamp(3.5rem,6vw,6rem);overflow:hidden}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:4rem 4rem;mask-image:radial-gradient(ellipse 65% 70% at 75% 35%,#000 0%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse 65% 70% at 75% 35%,#000 0%,transparent 75%);pointer-events:none}.hero .container{position:relative}.hero-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(2.5rem,6vw,6rem);align-items:center}.hero-hello{font-family:var(--font-mono);font-size:.85rem;color:var(--text-muted);margin-bottom:.75rem}.hero-hello span{color:var(--red)}.hero-title{font-size:clamp(2.6rem,5.4vw,5rem);line-height:1.02;letter-spacing:-.04em;font-weight:700;color:var(--heading)}.hero-role{margin-top:1rem;font-size:clamp(1.15rem,1.7vw,1.5rem);font-weight:500;color:var(--text);letter-spacing:-.01em}.hero-role .red{font-weight:600}.hero-lead{margin-top:1.25rem;max-width:40rem;font-size:1.05rem;color:var(--text-dim)}.hero-cta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.hero-social{display:flex;gap:.5rem;margin-top:1.75rem}.hero-social a{display:grid;place-items:center;width:2.4rem;height:2.4rem;border:1px solid var(--border-2);border-radius:var(--radius-sm);color:var(--text-dim);background:var(--surface);transition:color .2s,border-color .2s}.hero-social a:hover{color:var(--red);border-color:var(--red)}.hero-photo{position:relative;justify-self:end;width:100%;max-width:26rem}.hero-photo-frame{aspect-ratio:1;border-radius:1.5rem;background:var(--photo-bg);border:1px solid var(--border);overflow:hidden;box-shadow:var(--shadow-lg)}.hero-photo-frame img{width:100%;height:100%;object-fit:cover}.hero-photo:before{content:"";position:absolute;top:1.25rem;right:-1.25rem;bottom:-1.25rem;left:1.25rem;border:1px solid var(--red);border-radius:1.5rem;opacity:.45;z-index:-1}.hero-photo-tag{position:absolute;left:-1.25rem;bottom:1.75rem;display:flex;align-items:center;gap:.6rem;padding:.6rem .9rem;border-radius:999px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);font-size:.82rem;font-weight:600;color:var(--heading)}.hero-photo-tag i{color:var(--red)}.about-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(2.5rem,5vw,5rem);align-items:start}.about-text p{color:var(--text-dim);font-size:1.05rem}.about-text p:first-child{margin-top:0}.about-text p+p{margin-top:1.1rem}.about-quote{margin-top:1.75rem;padding:.25rem 0 .25rem 1.25rem;border-left:2px solid var(--red);font-size:1.08rem;font-style:italic;color:var(--text)}.values{display:grid;gap:.85rem}.value{display:flex;gap:1rem;padding:1.2rem 1.25rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.value i{color:var(--red);margin-top:.3rem;width:1.1rem;text-align:center}.value-title{font-weight:600;color:var(--heading)}.value-desc{font-size:.9rem;color:var(--text-dim);margin-top:.1rem}.timeline{display:grid;gap:1.25rem}.role{display:grid;grid-template-columns:14rem minmax(0,1fr);gap:2.5rem;padding:2rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg)}.section--alt .role{background:var(--bg)}.role--current{border-color:var(--border-red);box-shadow:inset 3px 0 0 var(--red)}.role-date{font-family:var(--font-mono);font-size:.78rem;color:var(--text-muted)}.role-company{margin-top:.35rem;font-weight:700;color:var(--heading);font-size:1.05rem}.role-badge{display:inline-block;margin-top:.6rem;font-family:var(--font-mono);font-size:.65rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--red);border:1px solid var(--border-red);background:var(--red-glow);padding:.15rem .5rem;border-radius:4px}.role-title{font-size:1.2rem;font-weight:700;color:var(--heading);letter-spacing:-.01em}.role-desc{margin-top:.6rem;color:var(--text-dim)}.role-list{list-style:none;margin-top:1.1rem;display:grid;gap:.7rem}.role-list li{position:relative;padding-left:1.4rem}.role-list li:before{content:"";position:absolute;left:0;top:.65em;width:.45rem;height:.45rem;border-radius:2px;background:var(--red)}.role .chips{margin-top:1.25rem}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,21rem),1fr));gap:1.25rem}.project-card{display:flex;flex-direction:column;padding:1.5rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);transition:border-color .25s,transform .25s,box-shadow .25s}.project-card:hover{border-color:var(--red);transform:translateY(-2px);box-shadow:var(--shadow)}.project-head{display:flex;align-items:center;justify-content:space-between;color:var(--text-muted)}.project-head .fa-arrow-up-right-from-square{font-size:.78rem;transition:color .2s}.project-card:hover .fa-arrow-up-right-from-square{color:var(--red)}.project-cat{font-family:var(--font-mono);font-size:.66rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--red)}.project-title{margin-top:.8rem;font-family:var(--font-mono);font-size:1rem;font-weight:600;color:var(--heading)}.project-desc{margin-top:.5rem;font-size:.9rem;color:var(--text-dim);flex:1}.project-card .chips{margin-top:1.1rem}.talk{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:center;padding:clamp(1.5rem,3vw,2.5rem);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg)}.talk-event{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;font-family:var(--font-mono);font-size:.78rem;color:var(--text-muted)}.talk-event b{color:var(--red);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.talk-title{margin-top:.75rem;font-size:clamp(1.4rem,2.4vw,2rem);font-weight:700;letter-spacing:-.02em;color:var(--heading);line-height:1.2}.talk-desc{margin-top:.75rem;color:var(--text-dim);max-width:50rem}.talk-links{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.25rem}.talk-icon{display:grid;place-items:center;width:5.5rem;height:5.5rem;border-radius:1.25rem;background:var(--red);color:var(--on-red);font-size:2rem}.expertise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.expertise-col{padding:1.5rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.expertise-col-head{display:flex;align-items:center;gap:.75rem;font-weight:700;color:var(--heading)}.expertise-col-head i{color:var(--red)}.expertise-col p{margin-top:.5rem;font-size:.9rem;color:var(--text-dim)}.expertise-col .chips{margin-top:1rem}.cred-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,24rem),1fr));gap:1.25rem}.cred-box{padding:1.75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg)}.cred-box-title{display:flex;align-items:center;gap:.6rem;font-family:var(--font-mono);font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:1.1rem}.cred-list{list-style:none;display:grid;gap:.95rem}.cred-list li{display:flex;gap:.85rem}.cred-list i{color:var(--red);margin-top:.35rem;font-size:.8rem;width:1rem;text-align:center}.cred-name{font-weight:600;color:var(--heading)}.cred-sub{font-size:.85rem;color:var(--text-muted)}.langs{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:1.25rem;font-size:.9rem;color:var(--text-dim)}.langs i{color:var(--red)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1.25rem}.service{padding:1.5rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.service i{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:var(--radius-sm);background:var(--red-glow);color:var(--red);margin-bottom:1rem}.service-title{font-weight:700;color:var(--heading)}.service-desc{margin-top:.4rem;font-size:.9rem;color:var(--text-dim)}.insights-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,20rem),1fr));gap:1.25rem}.insight{display:flex;flex-direction:column;padding:1.5rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);transition:border-color .25s,box-shadow .25s}.insight:hover{border-color:var(--red);box-shadow:var(--shadow)}.insight-meta{display:flex;gap:.75rem;font-family:var(--font-mono);font-size:.7rem;color:var(--text-muted)}.insight-meta .red{text-transform:uppercase;letter-spacing:.08em;font-weight:600}.insight-title{margin-top:.8rem;font-size:1.08rem;font-weight:700;line-height:1.35;color:var(--heading)}.insight-desc{margin-top:.55rem;font-size:.9rem;color:var(--text-dim);flex:1}.insight-more{margin-top:1.1rem;font-size:.86rem;font-weight:600;color:var(--red)}.insight-more i{font-size:.72rem;margin-left:.25rem;transition:margin .2s}.insight:hover .insight-more i{margin-left:.5rem}.contact-box{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(2rem,4vw,4rem);align-items:center;padding:clamp(1.75rem,4vw,3.5rem);border:1px solid var(--border);border-radius:1.25rem;background:radial-gradient(circle at 0% 0%,var(--red-glow-strong) 0%,transparent 50%),var(--surface)}.contact-list{list-style:none;display:grid;gap:.75rem}.contact-item{display:flex;align-items:center;gap:1rem;padding:.95rem 1.1rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);transition:border-color .2s}.contact-item:hover{border-color:var(--red)}.contact-item i{display:grid;place-items:center;width:2.3rem;height:2.3rem;border-radius:var(--radius-sm);background:var(--red-glow);color:var(--red)}.contact-item-label{font-family:var(--font-mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.contact-item-val{font-weight:600;color:var(--heading);word-break:break-word}.footer{padding-block:2.25rem;border-top:1px solid var(--border);font-size:.86rem;color:var(--text-muted)}.footer .container{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem}.footer-links{display:flex;flex-wrap:wrap;gap:1.25rem}.footer-links a:hover{color:var(--heading)}.hero-now{display:inline-flex;align-items:center;gap:.6rem;margin-top:1.5rem;font-size:.88rem;color:var(--text-dim)}.hero-now-dot{width:.5rem;height:.5rem;border-radius:50%;background:#22a35a;box-shadow:0 0 0 4px #22a35a26}.text-link{color:var(--red);text-decoration:underline;text-decoration-color:var(--border-red);text-underline-offset:3px}.text-link:hover{text-decoration-color:var(--red)}.facts{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}.fact{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:1rem;padding:.95rem 1.25rem}.fact+.fact{border-top:1px solid var(--border)}.fact dt{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);padding-top:.15rem}.fact dd{color:var(--heading);font-weight:500}.services-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:1.25rem;padding:1.25rem 1.5rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg)}.services-cta p{color:var(--text);font-weight:500}@media(max-width:480px){.fact{grid-template-columns:1fr;gap:.2rem}}.role-company-sub{margin-top:.2rem;font-size:.82rem;color:var(--text-muted);line-height:1.4}.role-subtitle{margin-top:.2rem;font-family:var(--font-mono);font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--red)}@media(max-width:1100px){.nav-brand-name{display:none}}@media(max-width:960px){.nav-toggle{display:grid;place-items:center}.nav-menu{position:fixed;top:var(--nav-height);left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:.75rem 1rem 1.25rem;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow)}.nav.is-open .nav-menu{display:flex}.nav-link{padding:.85rem .75rem;font-size:1rem}.nav-brand-name{display:inline}.hero-grid{grid-template-columns:1fr}.expertise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-photo{justify-self:start;max-width:20rem;order:-1}.about-grid{grid-template-columns:1fr}.role{grid-template-columns:1fr;gap:1rem}.talk{grid-template-columns:1fr}.talk-icon{display:none}.contact-box{grid-template-columns:1fr}}@media(max-width:680px){.nav-actions .btn,.nav-brand-name{display:none}.section-head-row{flex-direction:column;align-items:flex-start}.hero-photo{max-width:15rem}.hero-photo-tag{left:.75rem;bottom:-1rem}.hero-cta .btn{flex:1 1 100%}.role{padding:1.5rem 1.25rem}.expertise-grid{grid-template-columns:1fr}}
