@font-face{font-family:GeistMono;src:url(../media/GeistMono_Variable.p.3ms9vq719j3f8.woff2)format("woff2");font-display:swap;font-weight:100 900}.geistmono_157ca88a-module__KPkJja__className{font-family:GeistMono,ui-monospace,SFMono-Regular,Roboto Mono,Menlo,Monaco,Liberation Mono,DejaVu Sans Mono,Courier New,monospace}.geistmono_157ca88a-module__KPkJja__variable{--font-geist-mono:"GeistMono", ui-monospace, SFMono-Regular, Roboto Mono, Menlo, Monaco, Liberation Mono, DejaVu Sans Mono, Courier New, monospace}
@font-face{font-family:GeistSans;src:url(../media/Geist_Variable-s.p.0mrjj4bg00-he.woff2)format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:GeistSans Fallback;src:local(Arial);ascent-override:94.56%;descent-override:27.76%;line-gap-override:0.0%;size-adjust:106.28%}.geistsans_d5a4f12f-module__2PTJMW__className{font-family:GeistSans,GeistSans Fallback}.geistsans_d5a4f12f-module__2PTJMW__variable{--font-geist-sans:"GeistSans", "GeistSans Fallback"}
:root{--font-sans:var(--font-geist-sans), ui-sans-serif, system-ui, sans-serif;--font-mono:var(--font-geist-mono), ui-monospace, monospace;--content:48rem;--header-height:3.5rem;--background:#f4f1ea;--surface:#eeeadf;--surface-raised:#faf7f0;--foreground:#1a1714;--foreground-soft:#514a43;--muted:#80766c;--line:#2a241f24;--line-strong:#2a241f3d;--screen-rule:#d8d4ce;--stripe-line:#2a241f0e;--accent:#a84f38;--accent-soft:#a84f381c;--success:#477c5a;--shadow:0 24px 70px #352a202e}[data-theme=dark]{--background:#0c0b0a;--surface:#12100f;--surface-raised:#181512;--foreground:#f1ede4;--foreground-soft:#c1b8ad;--muted:#81786e;--line:#f4efe51c;--line-strong:#f4efe533;--screen-rule:#262523;--stripe-line:#f4efe50e;--accent:#cc6a4d;--accent-soft:#cc6a4d1f;--success:#69a77e;--shadow:0 24px 80px #00000085}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 2rem);background:var(--background)}body{background:var(--background);min-width:320px;color:var(--foreground);font-family:var(--font-sans);text-rendering:optimizelegibility;margin:0;font-size:15px;line-height:1.55;transition:background-color .18s,color .18s;overflow-x:clip}button,a{color:inherit}button{font:inherit}a{text-decoration:none}::selection{background:var(--accent);color:var(--background)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page-shell{max-width:100vw;padding-inline:.5rem;overflow-x:clip}.portfolio-column{width:100%;max-width:var(--content);margin:0 auto}.screen-lines{border-inline:1px solid var(--line);position:relative}.stripe-divider{border-inline:1px solid var(--line);height:2rem;margin-block:-1px;position:relative}.stripe-divider:before{content:"";background-image:repeating-linear-gradient(135deg, var(--stripe-line) 0 1px, transparent 1px 7px);pointer-events:none;background-size:10px 10px;width:200vw;position:absolute;top:1px;bottom:1px;left:50%;transform:translate(-50%)}.stripe-divider:after{inset-block:0;z-index:1;content:"";border-block:1px solid var(--screen-rule);pointer-events:none;width:100vw;position:absolute;left:50%;transform:translate(-50%)}.site-header{z-index:50;height:var(--header-height);background:color-mix(in srgb, var(--background) 94%, transparent);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding-inline:.5rem;position:sticky;top:0;overflow-x:clip}.header-inner{width:100%;max-width:var(--content);border-inline:1px solid var(--line);height:100%;margin:0 auto;display:flex}.monogram{width:3.5rem;color:var(--foreground);font-family:var(--font-mono);letter-spacing:-.08em;border-right:1px solid var(--line);grid-template-columns:repeat(2,1fr);align-self:stretch;align-items:center;padding:.65rem;font-size:.78rem;font-weight:650;display:grid}.monogram span{place-items:center;height:1.45rem;display:grid;box-shadow:inset 0 0 0 1px}.monogram span+span{color:var(--background);background:var(--foreground);box-shadow:none;border:1px solid var(--foreground);margin-left:-1px}.desktop-nav{align-items:center;gap:1.25rem;margin-left:auto;padding-inline:1.25rem;display:flex}.desktop-nav a,.resume-link{color:var(--foreground-soft);font-size:.78rem;transition:color .16s}.desktop-nav a:hover,.resume-link:hover{color:var(--foreground)}.header-actions{border-left:1px solid var(--line);align-items:center;gap:.5rem;padding-inline:.55rem;display:flex}.resume-link{align-items:center;gap:.35rem;display:inline-flex}.header-separator,.action-separator{background:var(--line-strong);width:1px;height:1.25rem}.icon-button{width:2rem;height:2rem;color:var(--foreground-soft);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:.55rem;place-items:center;padding:0;transition:color .16s,background-color .16s,border-color .16s,transform .16s;display:inline-grid;position:relative}.icon-button:hover{color:var(--foreground);background:var(--surface);border-color:var(--line)}.icon-button:active{transform:scale(.94)}.theme-toggle svg{transition:opacity .2s,transform .4s cubic-bezier(.2,.8,.2,1);position:absolute}[data-theme=dark] .theme-sun,[data-theme=light] .theme-moon{opacity:0;transform:rotate(-30deg)scale(.55)}[data-theme=dark] .theme-moon,[data-theme=light] .theme-sun{opacity:1;transform:rotate(0)scale(1)}::view-transition-old(root){animation-duration:.32s;animation-timing-function:cubic-bezier(.2,.8,.2,1)}::view-transition-new(root){animation-duration:.32s;animation-timing-function:cubic-bezier(.2,.8,.2,1)}.hero-profile{grid-template-rows:auto;grid-template-columns:1fr;display:grid;overflow:clip}.hero-identity{grid-area:1/1;grid-template-rows:1fr auto;align-self:stretch;min-width:0;display:grid}.hero-name-block{border-bottom:1px solid var(--line);align-items:center;min-width:0;min-height:8rem;padding:.65rem 1rem;display:flex}.hero-positioning{min-width:0;color:var(--foreground-soft);font-family:var(--font-mono);letter-spacing:.012em;border-bottom:1px solid var(--line);align-items:center;padding:.65rem 1rem;font-size:.72rem;display:flex}.hero-identity h1{letter-spacing:-.055em;margin:0;font-size:clamp(2rem,5vw,3rem);font-weight:560;line-height:1}.local-time{font-family:var(--font-mono);align-items:center;gap:.45rem;font-size:.76rem;font-style:normal;display:inline-flex}.local-time.compact{font-size:inherit}.time-divider{color:var(--muted)}.hero-actions,.contact-actions{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.primary-action,.text-action{border:1px solid var(--line-strong);cursor:pointer;border-radius:.55rem;justify-content:center;align-items:center;gap:.4rem;min-height:2.1rem;padding:.42rem .7rem;font-size:.78rem;font-weight:540;transition:background-color .16s,border-color .16s,color .16s,transform .16s;display:inline-flex}.primary-action{color:var(--background);background:var(--foreground);border-color:var(--foreground)}.email-copy-primary{width:7.75rem}.primary-action:hover{color:var(--background);background:color-mix(in srgb, var(--foreground) 86%, var(--accent))}.text-action{color:var(--foreground-soft);background:0 0}.text-action:hover{color:var(--foreground);background:var(--surface);border-color:var(--line-strong)}.primary-action:active,.text-action:active{transform:scale(.97)}.overview-section{overflow:hidden}.overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.fact-row{border-bottom:1px solid var(--line);align-items:center;gap:.7rem;min-width:0;min-height:4.35rem;padding:.7rem 1rem;display:flex}.fact-row:nth-child(odd){border-right:0}.fact-row:first-child{grid-column:1/-1}.fact-row:nth-child(2),.fact-row:nth-child(4){border-right:1px dashed var(--line-strong)}.fact-row>div{gap:.1rem;min-width:0;display:grid}.fact-row a,.fact-row>div>span:not(.fact-label){min-width:0;font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:.25rem;font-size:.78rem;display:inline-flex;overflow:hidden}.fact-row a:hover{color:var(--accent)}.fact-row:first-child>div>span:not(.fact-label){text-overflow:clip;white-space:normal;line-height:1.35;overflow:visible}.fact-label{color:var(--muted);font-size:.68rem}.location-time{flex-wrap:wrap;align-items:center;gap:.55rem;min-width:0;display:flex}.location-time>span:first-child{font-family:var(--font-mono)}.icon-well{width:1.65rem;height:1.65rem;color:var(--foreground-soft);background:var(--surface);border:1px solid var(--line-strong);box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--background) 68%, transparent);border-radius:.4rem;flex:none;place-items:center;display:inline-grid}.social-strip{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;padding:.55rem 1rem;display:grid}.social-strip a,.social-strip button{width:100%;min-height:2rem;color:var(--foreground-soft);font-family:var(--font-mono);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:.5rem;justify-content:center;align-items:center;gap:.38rem;padding:.34rem .55rem;font-size:.7rem;transition:color .16s,background-color .16s,border-color .16s;display:inline-flex}.social-strip a:hover,.social-strip button:hover{color:var(--foreground);background:var(--surface);border-color:var(--line-strong)}.panel,.about-panel{scroll-margin-top:calc(var(--header-height) + 1.5rem)}.panel-heading{z-index:1;border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;min-height:5.6rem;padding:1rem;display:flex;position:relative}.panel-heading h2{letter-spacing:-.045em;margin:0;font-size:clamp(1.75rem,4vw,2.15rem);font-weight:520;line-height:1.08}.panel-title-with-icon{align-items:center;gap:.65rem;display:flex}.panel-title-with-icon>svg{width:1.15rem;height:1.15rem;color:var(--muted);flex:none}.panel-heading h2 sup{color:var(--muted);font-family:var(--font-mono);letter-spacing:0;vertical-align:top;margin-left:.25rem;font-size:.65rem;font-weight:450}.panel-heading p{max-width:32rem;color:var(--muted);margin:.35rem 0 0;font-size:.78rem}.section-anchor{width:1.75rem;height:1.75rem;color:var(--muted);opacity:0;border:1px solid #0000;border-radius:.4rem;place-items:center;transition:opacity .16s,color .16s,background-color .16s;display:grid}.panel:hover .section-anchor,.section-anchor:focus-visible{opacity:1}.section-anchor:hover{color:var(--foreground);background:var(--surface)}.compact-heading{min-height:auto}.section-kicker,.sheet-eyebrow{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .35rem;color:var(--accent)!important;font-size:.66rem!important}.about-copy{display:block}.about-copy p{color:var(--foreground-soft);margin:0;padding:1.2rem 1rem 1.4rem;font-size:.9rem;line-height:1.65}.about-copy p+p{padding-top:0}.stack-groups{position:relative}.stack-row{border-bottom:1px solid var(--line);grid-template-columns:12rem 1fr;min-height:4.35rem;display:grid}.stack-label{color:var(--muted);border-right:1px dashed var(--line-strong);align-items:flex-start;gap:.45rem;padding:.85rem 1rem;font-size:.74rem;display:flex}.stack-label span{font-family:var(--font-mono);opacity:.72}.tech-pills{flex-wrap:wrap;align-content:center;align-items:center;gap:.35rem;padding:.7rem .8rem;display:flex}.tech-pill,.domain-filter{min-height:1.65rem;color:var(--foreground-soft);font-family:var(--font-mono);background:var(--surface);border:1px solid var(--line);cursor:pointer;box-shadow:inset 0 1px 0 color-mix(in srgb, var(--foreground) 5%, transparent);border-radius:999px;align-items:center;gap:.32rem;padding:.22rem .48rem;font-size:.68rem;line-height:1;transition:color .15s,border-color .15s,background-color .15s,transform .15s;display:inline-flex}.tech-pill:hover,.domain-filter:hover{color:var(--foreground);border-color:var(--line-strong)}.tech-pill[aria-pressed=true],.domain-filter[aria-pressed=true]{color:var(--accent);background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 50%, var(--line))}.stack-detail{background:color-mix(in srgb, var(--surface) 54%, transparent);grid-template-columns:12rem 9rem 1fr auto;align-items:center;gap:.8rem;min-height:5rem;padding:.75rem 1rem;display:grid}.stack-detail-index{color:var(--muted);font-family:var(--font-mono);font-size:.66rem}.stack-detail strong{font-family:var(--font-mono);font-size:.8rem}.stack-detail p{color:var(--foreground-soft);margin:0;font-size:.74rem}.stack-detail .text-action{white-space:nowrap}.work-filters{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:.4rem;padding:.65rem 1rem;display:flex}.work-list{display:grid}.work-row{color:inherit;text-align:left;border:0;border-bottom:1px solid var(--line);cursor:pointer;background:0 0;grid-template-columns:3.5rem 1fr 1.8rem;gap:.65rem;padding:1rem;transition:background-color .18s;display:grid}.work-row:last-child{border-bottom:0}.work-row:hover,.work-row:focus-visible{background:var(--accent-soft)}.work-index{color:var(--accent);font-family:var(--font-mono);font-size:.72rem}.work-main{gap:.32rem;min-width:0;display:grid}.work-main strong{letter-spacing:-.018em;font-size:1rem;font-weight:560}.work-meta{color:var(--muted);font-family:var(--font-mono);font-size:.65rem}.work-summary{max-width:38rem;color:var(--foreground-soft);font-size:.78rem;line-height:1.55}.work-metrics,.position-stack,.case-stack,.case-metrics{flex-wrap:wrap;gap:.32rem;margin-top:.3rem;display:flex}.work-metrics em,.position-stack span,.case-stack span,.case-metrics strong{color:var(--foreground-soft);font-family:var(--font-mono);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.18rem .4rem;font-size:.63rem;font-style:normal;font-weight:430}.work-metrics .work-domain{color:var(--accent);background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 42%, var(--line));align-items:center;gap:.25rem;display:inline-flex}.work-arrow{color:var(--muted);align-self:center;transition:color .16s,transform .16s}.work-row:hover .work-arrow{color:var(--accent);transform:translate(.25rem)}.experience-list{display:grid}.company-group{border-bottom:1px solid var(--line)}.company-group:last-child{border-bottom:0}.company-heading{justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem .55rem;display:flex}.company-heading>div,.company-heading>span{align-items:center;gap:.6rem;display:flex}.company-logo{object-fit:contain;filter:grayscale()sepia(.35)saturate(1.5)contrast(1.18);width:1.05rem;height:1.05rem;display:block}[data-theme=dark] .company-logo{filter:grayscale()sepia(.75)saturate(2.4)brightness(1.35)contrast(1.15)}.company-logo-filemarketai{filter:grayscale()sepia(.8)saturate(2.1)brightness(.62)contrast(1.55)}[data-theme=dark] .company-logo-filemarketai{filter:grayscale()brightness(2.05)contrast(1.25)}.company-logo-deeppavlov-ai{filter:none;border-radius:.28rem;width:1.55rem;max-width:none;height:1.55rem}[data-theme=dark] .company-logo-deeppavlov-ai{filter:none}.company-logo-sayanara,.company-logo-videointellect{border-radius:.24rem}.company-logo-hopper-it{filter:grayscale()sepia(.7)saturate(1.8)brightness(.58)contrast(1.45)}[data-theme=dark] .company-logo-hopper-it{filter:grayscale()brightness(2.2)contrast(1.08)}.company-logo-theme-dark{display:none}.company-logo-theme-light,.company-logo-theme-dark,[data-theme=dark] .company-logo-theme-light,[data-theme=dark] .company-logo-theme-dark{filter:none}[data-theme=dark] .company-logo-theme-light{display:none}[data-theme=dark] .company-logo-theme-dark{display:block}.company-heading h3{margin:0;font-size:.95rem;font-weight:560}.company-heading h3 a{color:inherit;align-items:center;gap:.25rem;display:inline-flex}.company-heading h3 a:hover{color:var(--accent)}.company-heading>span{color:var(--muted);font-size:.67rem}.position-timeline{padding:0 1rem .8rem}.position-item{z-index:0;isolation:isolate;border-radius:.45rem;padding-left:2.35rem;position:relative}.position-item:after{z-index:-1;content:"";background:color-mix(in srgb, var(--surface) 82%, transparent);opacity:0;border-radius:.45rem;transition:opacity .16s;position:absolute;inset:0 -.6rem}.position-item:hover:after,.position-item:focus-within:after,.position-item.is-expanded:after{opacity:1}.position-item:before{content:"";background:var(--line-strong);width:1px;position:absolute;top:1.8rem;bottom:-.55rem;left:.84rem}.position-item:last-child:before{display:none}.position-item>button{width:calc(100% + 2.35rem);min-height:3.5rem;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:1.7rem 1fr 1.2rem;align-items:center;margin-left:-2.35rem;padding:.45rem 0;display:grid}.position-item>button:focus-visible{outline:0}.position-node{background:var(--surface);border:1px solid var(--line-strong);border-radius:.42rem;place-items:center;width:1.7rem;height:1.7rem;display:grid}.position-node svg{color:var(--foreground-soft);transition:color .18s}.is-expanded .position-node svg{color:var(--accent)}.position-summary{gap:.05rem;padding-left:.7rem;display:grid}.position-summary strong{font-size:.82rem;font-weight:540}.position-summary>span{color:var(--muted);font-family:var(--font-mono);font-size:.64rem}.position-summary i{background:var(--line-strong);vertical-align:-.12rem;width:1px;height:.75rem;margin-inline:.35rem;display:inline-block}.position-item>button>svg{color:var(--muted);transition:transform .18s}.position-item.is-expanded>button>svg:not(:where([data-infinity])){transform:rotate(180deg)}.position-stack{margin:0 0 .55rem}.position-detail{max-height:0;color:var(--foreground-soft);opacity:0;transition:max-height .36s cubic-bezier(.2,.8,.2,1),opacity .22s;overflow:hidden}.position-item.is-expanded .position-detail{opacity:1;max-height:80rem}.position-detail p{margin:.2rem 0 .55rem;font-size:.76rem}.position-detail ul,.case-detail-section ul{margin:0 0 .9rem;padding-left:1.15rem}.position-detail li,.case-detail-section li{margin-bottom:.28rem;font-size:.74rem}.oss-list{display:grid}.oss-row{border-bottom:1px solid var(--line);grid-template-columns:2.2rem 1.7rem 1fr 1.2rem;align-items:center;gap:.65rem;min-height:5rem;padding:.7rem 1rem;transition:background-color .16s;display:grid}.oss-row:last-child{border-bottom:0}.oss-row:hover{background:var(--accent-soft)}.oss-index,.oss-language{color:var(--muted);font-family:var(--font-mono);font-size:.64rem}.oss-main{min-width:0;display:grid}.oss-main strong{font-size:.82rem;font-weight:550}.oss-main span{color:var(--foreground-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.oss-row>svg{color:var(--muted);transition:color .16s,transform .16s}.oss-row:hover>svg{color:var(--accent);transform:translate(.12rem,-.12rem)}.education-list{display:grid}.language-row{border-bottom:1px solid var(--line);align-items:center;gap:.8rem;min-height:4.3rem;padding:.7rem 1rem;display:grid}.language-row:last-child{border-bottom:0}.language-row>span{color:var(--muted);font-family:var(--font-mono);font-size:.64rem}.language-row strong{font-size:.77rem;font-weight:540}.certification-row{background:color-mix(in srgb, var(--surface) 54%, transparent)}.education-item{border-bottom:1px solid var(--line)}.education-item:last-child{border-bottom:0}.education-item summary{cursor:pointer;grid-template-columns:5rem 1.7rem 1fr 1.2rem;align-items:center;gap:.7rem;min-height:5rem;padding:.75rem 1rem;list-style:none;transition:background-color .16s;display:grid}.education-item summary::-webkit-details-marker{display:none}.education-item summary:hover,.education-item summary:focus-visible{background:color-mix(in srgb, var(--surface) 82%, transparent)}.education-period{color:var(--muted);font-family:var(--font-mono);font-size:.64rem}.education-summary{gap:.14rem;min-width:0;display:grid}.education-summary strong{font-size:.8rem;font-weight:550}.education-summary>span{color:var(--muted);font-size:.68rem}.education-item summary>svg{color:var(--muted);transition:transform .18s}.education-item[open] summary>svg{transform:rotate(180deg)}.education-item>p{max-width:42rem;color:var(--foreground-soft);margin:-.2rem 1rem 1rem 8.4rem;font-size:.74rem;line-height:1.55}.standalone-languages{display:grid}.language-row{grid-template-columns:1.5rem 1fr auto}.language-row em{color:var(--muted);font-size:.66rem;font-style:normal}.contact-content{padding:1.5rem 1rem 1.65rem}.contact-content h2{letter-spacing:-.05em;max-width:38rem;margin:0;font-size:clamp(1.55rem,4vw,2.4rem);font-weight:510;line-height:1.1}.contact-content>p{max-width:36rem;color:var(--foreground-soft);margin:.85rem 0 1.15rem;font-size:.86rem}.site-footer{min-height:4rem;color:var(--muted);font-family:var(--font-mono);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;font-size:.64rem;display:flex}.site-footer div{flex-wrap:wrap;gap:.8rem;display:flex}.site-footer a{align-items:center;gap:.25rem;display:inline-flex}.site-footer a:hover{color:var(--foreground)}.copy-toast{z-index:90;color:var(--background);font-family:var(--font-mono);background:var(--foreground);box-shadow:var(--shadow);opacity:0;pointer-events:none;border-radius:.5rem;padding:.55rem .75rem;font-size:.68rem;transition:opacity .18s,transform .18s;position:fixed;bottom:1rem;right:1rem;transform:translateY(.5rem)}.copy-toast.is-visible{opacity:1;transform:translateY(0)}.sheet-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000007a;justify-content:flex-end;animation:.18s both backdrop-in;display:flex;position:fixed;inset:0}.sheet{width:min(36rem,100%);height:100%;color:var(--foreground);background:var(--background);border-left:1px solid var(--line-strong);box-shadow:var(--shadow);flex-direction:column;animation:.32s cubic-bezier(.2,.8,.2,1) both sheet-in;display:flex}@keyframes backdrop-in{0%{opacity:0}}@keyframes sheet-in{0%{opacity:0;transform:translate(2rem)}}.sheet-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;min-height:6rem;padding:1.1rem 1rem;display:flex}.sheet-header h2{letter-spacing:-.035em;margin:0;font-size:1.35rem;font-weight:550;line-height:1.15}.sheet-body{flex:1;padding:1.15rem 1rem 3rem;overflow-y:auto}.sheet-lead{color:var(--foreground-soft);margin:0 0 1rem;font-size:.9rem;line-height:1.65}.case-metrics{margin-bottom:1.4rem}.case-metrics strong{color:var(--accent);background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 45%, var(--line))}.case-detail-section{border-top:1px solid var(--line);padding:1rem 0}.case-detail-section h3{color:var(--muted);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;margin:0 0 .55rem;font-size:.68rem;font-weight:500}.case-detail-section p{color:var(--foreground-soft);margin:0;font-size:.79rem;line-height:1.6}.case-detail-section li{color:var(--foreground-soft);line-height:1.5}.sheet-link{margin-top:.75rem}.extended-stack{flex-wrap:wrap;gap:.4rem;display:flex}.extended-stack span{color:var(--foreground-soft);font-family:var(--font-mono);background:var(--surface);border:1px solid var(--line);border-radius:999px;align-items:center;gap:.35rem;padding:.35rem .55rem;font-size:.68rem;display:inline-flex}.mobile-dock-wrap{bottom:calc(.5rem + env(safe-area-inset-bottom,0px));z-index:80;flex-direction:column;align-items:flex-end;gap:.4rem;display:none;position:fixed;left:50%;transform:translate(-50%)}.mobile-dock{min-width:9.5rem;height:2.65rem;color:var(--foreground-soft);font-family:var(--font-mono);background:var(--surface-raised);border:1px solid var(--line-strong);box-shadow:var(--shadow);border-radius:.8rem;align-items:center;gap:.55rem;padding:.3rem .35rem .3rem .75rem;font-size:.68rem;display:flex}.mobile-dock button{width:2rem;height:2rem;color:var(--foreground);background:var(--surface);border:1px solid var(--line);border-radius:.55rem;place-items:center;margin-left:auto;padding:0;display:grid}.mobile-dock-menu{background:var(--surface-raised);border:1px solid var(--line-strong);width:12rem;box-shadow:var(--shadow);border-radius:.75rem;animation:.18s both dock-menu-in;display:grid;overflow:hidden}@keyframes dock-menu-in{0%{opacity:0;transform:translateY(.4rem)scale(.98)}}.mobile-dock-menu a{min-height:2.6rem;color:var(--foreground-soft);border-bottom:1px solid var(--line);align-items:center;gap:.55rem;padding:.5rem .75rem;font-size:.76rem;display:flex}.mobile-dock-menu a:last-child{border-bottom:0}.mobile-dock-menu a:hover{color:var(--foreground);background:var(--accent-soft)}@media (max-width:720px){.desktop-nav{gap:.75rem;padding-inline:.75rem}.desktop-nav a:nth-last-child(-n+2){display:none}}@media (max-width:640px){:root{--header-height:3.5rem}body{padding-bottom:calc(4.5rem + env(safe-area-inset-bottom,0px))}.desktop-nav{display:none}.header-actions{margin-left:auto}.resume-link span{display:none}.resume-link{place-items:center;width:2rem;height:2rem;display:grid}.mobile-dock-wrap{display:flex}.hero-profile{grid-template-rows:auto;grid-template-columns:1fr;min-height:0}.hero-identity{grid-area:1/1}.hero-name-block{min-height:6.5rem;padding:.6rem .75rem}.hero-positioning{padding:.6rem .75rem;font-size:.6rem;line-height:1.45}.hero-identity h1{font-size:clamp(1.75rem,8.4vw,2.2rem)}.overview-grid,.about-copy,.credentials-grid{grid-template-columns:1fr}.fact-row:nth-child(odd),.fact-row:nth-child(2),.fact-row:nth-child(4){border-right:0}.fact-row a,.fact-row>div>span:not(.fact-label){white-space:normal}.education-list{border-top:1px solid var(--line);border-left:0;border-right:0}.panel-heading{min-height:5rem}.section-anchor{opacity:1}.stack-row{grid-template-columns:1fr}.stack-label{border-right:0;padding-bottom:.2rem}.tech-pills{padding-top:.45rem}.stack-detail{grid-template-columns:1fr auto;gap:.3rem .8rem}.stack-detail-index,.stack-detail p{grid-column:1/-1}.work-row{grid-template-columns:2.2rem 1fr 1.2rem;padding-inline:.75rem}.company-heading{flex-direction:column;align-items:flex-start;gap:.4rem}.position-timeline{padding-inline:.75rem}.position-item{padding-left:2rem}.position-item>button{width:calc(100% + 2rem);margin-left:-2rem}.oss-row{grid-template-columns:1.6rem 1.7rem 1fr 1.1rem;padding-inline:.75rem}.oss-language{display:none}.education-item summary{grid-template-columns:4.2rem 1.7rem 1fr 1.1rem;padding-inline:.75rem}.education-item>p{margin-left:7.35rem;margin-right:.75rem}.site-footer{flex-direction:column;align-items:flex-start}.sheet{border-left:0;width:100%}}@media (max-width:420px){.hero-identity h1{font-size:1.8rem}.work-summary{font-size:.74rem}.language-row em{text-align:right;max-width:8.5rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
