@font-face{font-family:dmSans;src:url(/_next/static/media/bfe8c811ed1df969-s.p.woff2) format("woff2");font-display:swap;font-weight:100 1000}@font-face{font-family:dmSans Fallback;src:local("Arial");ascent-override:94.36%;descent-override:29.49%;line-gap-override:0.00%;size-adjust:105.13%}.__className_565558{font-family:dmSans,dmSans Fallback,Arial,sans-serif}.__variable_565558{--font-dm-sans:"dmSans","dmSans Fallback",Arial,sans-serif}@font-face{font-family:spaceGrotesk;src:url(/_next/static/media/5a0c43ffa288c21a-s.p.woff2) format("woff2");font-display:swap;font-weight:300 700}@font-face{font-family:spaceGrotesk Fallback;src:local("Arial");ascent-override:88.78%;descent-override:26.34%;line-gap-override:0.00%;size-adjust:110.84%}.__className_1111ec{font-family:spaceGrotesk,spaceGrotesk Fallback,Arial,sans-serif}.__variable_1111ec{--font-space-grotesk:"spaceGrotesk","spaceGrotesk Fallback",Arial,sans-serif}:root{color-scheme:dark;--bg:#0b0e10;--panel:#111517;--line:#282e30;--text:#f1f2ec;--muted:#9da5a7;--lime:#c1f66a;--display:var(--font-space-grotesk),Arial,sans-serif;--body:var(--font-dm-sans),Arial,sans-serif;--mono:ui-monospace,SFMono-Regular,Consolas,monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font:1rem/1.65 var(--body);-webkit-font-smoothing:antialiased}a{text-decoration:none}a,button{color:inherit}button{font:inherit;cursor:pointer}a,button,canvas,summary{-webkit-tap-highlight-color:transparent}button{border:0}a:focus-visible,button:focus-visible,canvas:focus-visible,summary:focus-visible{outline:2px solid var(--lime);outline-offset:6px}::selection{background:var(--lime);color:var(--bg)}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);font-weight:500}h2{font-size:clamp(2.2rem,4vw,3.5rem);line-height:1.14;letter-spacing:-.055em}h2 span{color:var(--muted)}h3{line-height:1.25}svg{display:block}.mono{font:400 .75rem/1.5 var(--mono);letter-spacing:.06em}.section-shell{width:min(1320px,calc(100% - 112px));margin-inline:auto}.section-spacing{padding-block:112px;border-bottom:1px solid var(--line)}.section-index{color:var(--lime);margin-bottom:26px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:55px}.section-aside{color:var(--muted);text-align:right;padding-bottom:8px}.section-description{color:var(--muted);padding-bottom:6px}.subtle{color:var(--muted)}.skip-link{position:fixed;top:10px;left:15px;padding:10px 20px;background:var(--lime);color:#111;transform:translateY(-150%);z-index:100}.skip-link:focus{transform:none}.reading-progress{height:2px;position:fixed;top:0;left:0;background:var(--lime);z-index:99;width:0}.header{height:94px;padding-inline:56px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px;background:rgba(11,14,16,.94);position:sticky;top:0;z-index:30;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.wordmark{font:700 2rem/1 var(--display);letter-spacing:-.08em}.wordmark span{color:var(--lime)}.header nav{display:flex;gap:34px;font-size:.875rem;color:#b8bfc0}.header nav a{position:relative;transition:color .2s}.header nav a.active,.header nav a:hover{color:var(--lime)}.nav-contact{border:1px solid #47513e;padding:10px 19px;font-size:.875rem}.nav-contact span{margin-left:22px;color:var(--lime)}.nav-contact:hover{background:var(--lime);color:#0b0e10}.nav-contact:hover span{color:#0b0e10}.menu-toggle{display:none}.hero{padding-top:30px}.hero-topline{display:flex;justify-content:space-between;color:var(--muted);font-size:.75rem}.location span{margin-left:10px;color:var(--lime)}.hero-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:0;align-items:center;min-height:635px;padding-block:56px 54px}.hero-copy{position:relative;z-index:2}.eyebrow{font:400 .75rem/1.5 var(--mono);letter-spacing:.04em;color:#bbc4bd;display:flex;align-items:center;gap:12px;margin-bottom:25px}.short-rule{width:25px;height:1px;background:var(--lime)}h1{font-size:clamp(3.8rem,6.6vw,6.4rem);line-height:.99;letter-spacing:-.07em;font-weight:600;margin-left:-5px}h1>span{color:var(--lime)}.period{color:var(--text)}.hero-role{font:400 1.55rem/1.4 var(--display);letter-spacing:-.025em;margin-top:28px}.hero-role em{font-style:normal;color:#abb2b0}.hero-description{color:var(--muted);max-width:425px;margin-top:17px;font-size:1rem;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:32px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:36px;padding:15px 22px;font-size:.875rem;font-weight:600}.button-primary{background:var(--lime);color:#10140d;transition:background .2s,transform .2s}.button-primary:hover{background:#d4ff95;transform:translateY(-2px)}.button span{font-size:1.2rem;line-height:1}.text-link{font-size:.875rem;border-bottom:1px solid #525959;padding-block:10px}.text-link span{margin-left:12px}.text-link span,.text-link:hover{color:var(--lime)}.scene-panel{height:520px;position:relative;min-width:0;background:radial-gradient(ellipse at 50% 49%,rgba(140,190,80,.06),transparent 66%)}#neural-scene{position:absolute;inset:0;width:100%;height:100%;cursor:grab;touch-action:pan-y}#neural-scene:active{cursor:grabbing}.scene-label{position:absolute;top:7px;left:22px;color:#929c95}.scene-corner{position:absolute;width:12px;height:12px;border-color:#48503e;border-style:solid;z-index:2;pointer-events:none}.corner-tl{top:0;left:0;border-width:1px 0 0 1px}.corner-tr{top:0;right:0;border-width:1px 1px 0 0}.corner-bl{bottom:0;left:0;border-width:0 0 1px 1px}.corner-br{bottom:0;right:0;border-width:0 1px 1px 0}.scene-orbit{position:absolute;inset:8% 8%;border:1px solid #292e26;border-radius:50%;transform:rotate(-28deg) scaleY(.5);pointer-events:none}.scene-orbit:after,.scene-orbit:before{content:"+";position:absolute;color:#7a865f;font:1rem var(--mono)}.scene-orbit:before{top:40%;left:-8px}.scene-orbit:after{bottom:36%;right:-8px}.coordinate{position:absolute;color:#a0ab98;font-size:.75rem;pointer-events:none}.coordinate-top{right:12px;top:71px;text-align:right}.coordinate-bottom{left:18px;bottom:85px}.scene-toolbar{position:absolute;bottom:12px;left:22px;right:22px;display:flex;align-items:center;justify-content:space-between;gap:12px}.scene-hint{color:#899185;font-size:.75rem}.scene-hint span{margin-left:10px;color:var(--lime)}.motion-toggle{background:transparent;color:#b3bdad;font-size:.75rem;padding:8px 0 8px 10px;white-space:nowrap}.motion-toggle span{color:var(--lime);margin-left:5px}.scene-fallback{position:absolute;inset:10%;text-align:center;align-content:center}.scene-fallback[hidden]{display:none}.scene-fallback>span{font:500 8rem/1 var(--display);color:var(--lime)}.scene-fallback p{margin-top:28px;color:var(--muted)}.hero-bottom{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:25px;gap:45px}.hero-bottom,.hero-stat{display:flex;align-items:center}.hero-stat{gap:15px}.hero-stat strong{font:400 2.25rem/1 var(--display);letter-spacing:-.06em}.hero-stat>span{font-size:.75rem;line-height:1.45;color:var(--muted)}.scroll-link{margin-left:auto;display:flex;align-items:center;gap:25px;color:var(--muted)}.scroll-link>span{font-size:1.4rem;color:var(--lime)}.about{display:grid;grid-template-columns:1fr 2fr;gap:50px}.about>.section-index{padding-top:8px}.about h2{font-size:clamp(2.3rem,4.2vw,3.7rem)}.about-bottom{display:grid;grid-template-columns:1fr 1fr;gap:38px;margin-top:30px;color:var(--muted)}.specialties{display:flex;flex-wrap:wrap;gap:20px;margin-top:30px;color:#c2cbc0;font-size:.75rem}.specialties span{padding-left:13px;border-left:2px solid var(--lime)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.project-card{border:1px solid var(--line);background:var(--panel);overflow:hidden;transition:border-color .25s}.project-card:hover{border-color:#536046}.project-visual{height:245px;border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 50% 100%,#29312770,transparent 75%),linear-gradient(#9cbd9110 1px,transparent 0),linear-gradient(90deg,#9cbd9110 1px,transparent 0);background-size:auto,28px 28px,28px 28px;position:relative;padding:25px}.visual-label{font-size:.75rem;color:#a8b6a0;display:flex;justify-content:space-between}.diagram{display:flex;align-items:center;justify-content:center;gap:0;height:148px}.diagram-node{border:1px solid #607252;background:#162018;padding:15px 17px;text-align:center;min-width:106px;font:500 .875rem/1.4 var(--display);color:#d9e3d1;box-shadow:0 15px 35px #0003}.diagram-node span{font:400 .75rem/1.5 var(--mono);display:block;color:#9bad8c;margin-top:5px}.diagram-node.core{border-color:#b5e17b;background:#c1f66a;color:#151e0c;transform:translateY(-13px);box-shadow:0 0 45px #bce57514}.diagram-node.core span{color:#3f5225}.diagram-connector{width:28px;height:1px;background:#687e56;position:relative}.diagram-connector:after{content:"";position:absolute;width:4px;height:4px;border-radius:50%;background:var(--lime);right:0;top:-1.5px}.pharma-visual{background:radial-gradient(ellipse at 50% 100%,#223338a0,transparent 75%),linear-gradient(#8ab7bd10 1px,transparent 0),linear-gradient(90deg,#8ab7bd10 1px,transparent 0);background-size:auto,28px 28px,28px 28px}.pharma-visual .diagram-node{background:#132126;border-color:#4e6268;color:#d5e3e5}.pharma-visual .diagram-node span{color:#91afb8}.pharma-visual .diagram-node.core{background:#bcd7dd;color:#15292e;border-color:#bcd7dd}.pharma-visual .diagram-node.core span{color:#3d5c64}.visual-bottom{display:flex;gap:16px;justify-content:center;font-size:.75rem;color:#a6b19e}.project-info{padding:28px}.project-kicker{color:var(--muted);font-size:.75rem;margin-bottom:10px}.project-info h3{font-size:1.8rem;letter-spacing:-.045em}.project-info>p{color:var(--muted);margin-top:14px;min-height:78px}.tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:21px}.tags span{font-size:.75rem;line-height:1.5;padding:5px 9px;border:1px solid #343c3d;color:#bec5c2}.project-details{margin-top:24px;border-top:1px solid var(--line);font-size:.875rem}.project-details summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-size:.875rem;padding-top:17px;color:#dce5d6}.project-details summary::-webkit-details-marker{display:none}.project-details summary:after{content:"+";color:var(--lime);font:400 1.4rem/1 var(--mono)}.project-details[open] summary:after{content:"−"}.project-details ul{padding-left:18px;color:var(--muted);margin:18px 0 0}.project-details li+li{margin-top:10px}.more-work{margin-top:42px}.compact-project{border-bottom:1px solid var(--line);padding:0 6px}.compact-project summary{cursor:pointer;list-style:none;display:grid;grid-template-columns:40px 1fr 1.1fr 26px;gap:18px;align-items:center;padding-block:26px}.compact-project summary::-webkit-details-marker{display:none}.compact-project summary h3{font-size:1.35rem;letter-spacing:-.03em}.compact-project summary .project-type{color:var(--muted);font-size:.875rem}.project-number{color:#778170}.expand-icon{color:var(--lime);font:1.4rem/1 var(--mono)}.compact-project[open] .expand-icon{font-size:0}.compact-project[open] .expand-icon:after{content:"−";font-size:1.4rem}.compact-content{padding:0 42px 28px 58px;color:var(--muted);max-width:850px}.compact-content .tags{margin-block:0 16px}.compact-content ul{padding-left:20px;margin-bottom:0}.compact-content li+li{margin-top:8px}.experience-row{display:grid;grid-template-columns:1fr 1.2fr 1.4fr;gap:45px;padding:32px 0;border-top:1px solid var(--line)}.experience-date{font-size:.875rem;color:var(--muted);padding-top:4px}.experience-date .current{display:inline-block;font:400 .75rem/1 var(--mono);color:var(--lime);border:1px solid #455333;padding:6px 8px;margin-top:12px}.experience-title h3{font-size:1.25rem;letter-spacing:-.025em}.experience-title p{color:var(--muted);margin-top:7px;font-size:.875rem}.experience-description{color:var(--muted);font-size:.9375rem}.experience-description ul{padding-left:18px;margin:12px 0 0}.experience-description li+li{margin-top:9px}.experience-description summary{cursor:pointer;margin-top:14px;font-size:.875rem;color:#c9d9bd}.stack-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.stack-category{padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.stack-category>.mono{color:#7f8d76;margin-bottom:28px}.stack-category h3{font-size:1.25rem;letter-spacing:-.03em}.stack-category .tags{gap:7px;margin-top:20px}.stack-category .tags span{background:#13181a;border-color:#293133;color:#c0c8c6}.background-row{display:grid;grid-template-columns:1fr 1.5fr;gap:30px;padding-top:58px}.background-row .section-index{margin-bottom:15px}.background-row h3{font-size:1.2rem}.background-row p:last-child{font-size:.875rem;margin-top:9px}.contact{border-bottom:0}.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:end}.contact h2{font-size:clamp(3.5rem,6vw,6rem);line-height:1.05}.contact h2 span{color:var(--lime)}.contact-grid>div>p{color:var(--muted);max-width:310px}.contact-email{display:flex;gap:20px;justify-content:space-between;align-items:center;border-bottom:1px solid #4f5c41;font:400 clamp(1rem,2vw,1.65rem)/1.5 var(--display);padding-block:18px 13px;letter-spacing:-.03em}.contact-email span,.contact-email:hover{color:var(--lime)}.phone{font-size:.875rem;color:var(--muted);display:inline-block;margin-top:16px}.contact-links{margin-top:52px;display:flex;gap:38px;font-size:.875rem}.contact-links a:hover{color:var(--lime)}.contact-links a:last-child{margin-left:auto}.footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding-block:30px;gap:24px}.footer .wordmark{font-size:1.7rem}.footer p,.footer>a:last-child{color:var(--muted);font-size:.75rem}.noscript-note{padding:20px;text-align:center;background:#223019}.noscript-note a{text-decoration:underline}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.scene-toolbar[hidden]{display:none}@media(min-width:1600px){.hero-grid{min-height:725px}.scene-panel{height:570px}h1{font-size:7.4rem}}@media(max-width:1100px){.section-shell{width:calc(100% - 64px)}.header{padding-inline:32px;height:82px}.header nav{gap:23px}.hero-grid{grid-template-columns:1.15fr 1fr;min-height:610px;padding-block:45px}.scene-panel{height:460px}.eyebrow{font-size:.7rem;gap:8px}.hero-actions{gap:18px}.button{gap:20px;padding:14px 17px}.hero-stat{gap:10px}.hero-bottom{gap:28px}.scroll-link{gap:14px;font-size:.65rem}.diagram-node{min-width:88px;padding:13px 10px}.diagram-connector{width:22px}.project-visual{padding:22px 18px}.section-aside{max-width:180px}.about{grid-template-columns:.7fr 2fr;gap:30px}.experience-row{grid-template-columns:.75fr 1.15fr 1.4fr;gap:28px}.stack-category{padding:24px}.scene-toolbar{left:12px;right:12px}.scene-hint{font-size:.65rem}.hero-description{max-width:355px}}@media(max-width:800px){.header{height:76px}.header nav{gap:18px;font-size:.8125rem}.hero-topline .location,.nav-contact{display:none}.hero-grid{grid-template-columns:1fr 1fr;padding-block:40px}.hero-copy{margin-right:-35px}h1{font-size:clamp(3.7rem,8.1vw,5rem)}.hero-role{font-size:1.35rem}.hero-description{font-size:.9375rem;max-width:330px}.eyebrow{font-size:.65rem;letter-spacing:0}.hero-actions{align-items:flex-start;flex-direction:column;gap:6px}.scene-panel{height:440px;margin-right:-20px}.coordinate{font-size:.65rem}.coordinate-top{top:47px}.coordinate-bottom{bottom:65px}.scene-toolbar{bottom:10px;flex-wrap:wrap;gap:0}.scene-hint{font-size:.625rem}.motion-toggle{font-size:.75rem;padding-left:0}.hero-bottom{justify-content:space-between;gap:20px}.scroll-link{display:none}.hero-stat strong{font-size:2rem}.section-spacing{padding-block:80px}.about{grid-template-columns:1fr;gap:10px}.about-bottom{gap:25px}.section-heading{gap:25px;margin-bottom:35px}.section-aside{display:none}.project-grid{gap:16px}.project-visual{height:225px;padding:18px 13px}.diagram{height:140px}.diagram-node{font-size:.75rem;min-width:70px;padding:12px 6px}.diagram-node span{font-size:.625rem}.diagram-connector{width:14px}.visual-bottom,.visual-label{font-size:.625rem;letter-spacing:0}.visual-bottom{gap:9px}.project-info{padding:23px}.project-info>p{min-height:130px;font-size:.9375rem}.project-info h3{font-size:1.6rem}.compact-project summary{grid-template-columns:28px 1fr 1.2fr 20px;gap:12px}.compact-content{padding-left:40px}.experience-row{grid-template-columns:.8fr 1.8fr;gap:12px 30px}.experience-description{grid-column:2}.stack-grid{grid-template-columns:1fr 1fr}.background-row{grid-template-columns:1fr}.contact-grid{gap:35px}.contact-links{gap:25px}.contact-email{font-size:1.05rem}.section-description{font-size:.875rem;max-width:220px}.contact h2{font-size:3.7rem}}@media(max-width:600px){html{scroll-padding-top:83px}.section-shell{width:calc(100% - 40px)}.header{padding-inline:20px;height:70px}.wordmark{font-size:1.9rem}.menu-toggle{display:flex;align-items:center;gap:18px;font-size:.875rem;background:transparent;padding:9px 0 9px 18px}.menu-toggle span{color:var(--lime);font-size:1.3rem}.header nav{display:none;position:absolute;top:69px;left:0;right:0;background:#101517;border-bottom:1px solid var(--line);padding:15px 20px 22px;flex-direction:column;gap:0;font-size:1rem}.header nav.open{display:flex}.header nav a{padding:12px 0}.hero{padding-top:22px}.hero-topline{font-size:.625rem;letter-spacing:.055em}.hero-grid{display:flex;flex-direction:column;align-items:stretch;padding-top:41px;padding-bottom:20px;gap:28px}.hero-copy{margin-right:0}.eyebrow{font-size:.625rem;margin-bottom:23px}h1{font-size:clamp(3.2rem,11.4vw,4.7rem);line-height:1.03;letter-spacing:-.07em;margin-left:-2px}.hero-role{font-size:1.4rem;margin-top:24px}.hero-description{max-width:400px;font-size:1rem;margin-top:16px}.hero-actions{flex-direction:row;align-items:center;gap:24px;margin-top:27px}.button{padding:14px 17px;gap:20px}.button,.text-link{font-size:.8125rem}.text-link span{margin-left:6px}.scene-panel{height:360px;margin:0;align-self:center;width:100%;max-width:430px}.coordinate,.scene-label{font-size:.625rem}.coordinate-top{top:52px}.coordinate-bottom{bottom:63px}.scene-toolbar{flex-wrap:nowrap;left:20px;right:20px;bottom:10px}.scene-hint{font-size:.625rem}.motion-toggle{font-size:.75rem}.hero-bottom{gap:14px;align-items:flex-start;padding-block:24px}.hero-stat{display:block}.hero-stat strong{display:block;font-size:2rem;margin-bottom:7px}.hero-stat>span{font-size:.6875rem}.section-spacing{padding-block:65px}.section-index{font-size:.6875rem;margin-bottom:22px}h2{font-size:2.3rem}.about{gap:0}.about-bottom{grid-template-columns:1fr;gap:18px;margin-top:25px}.specialties{gap:13px;font-size:.6875rem;margin-top:25px}.specialties span{padding-left:9px}.section-heading{display:block;margin-bottom:30px}.section-description{margin-top:22px;max-width:unset}.section-description br{display:none}.project-grid{grid-template-columns:1fr;gap:22px}.project-visual{height:235px;padding:21px}.visual-label{font-size:.6875rem}.diagram{height:142px}.diagram-node{font-size:.8125rem;min-width:85px;padding:12px 8px}.diagram-node span{font-size:.625rem}.diagram-connector{width:22px}.visual-bottom{font-size:.6875rem;gap:15px}.project-info{padding:25px}.project-info>p{min-height:0;font-size:1rem}.project-info h3{font-size:1.8rem}.project-details{font-size:.9375rem}.more-work{margin-top:25px}.compact-project{padding:0}.compact-project summary{grid-template-columns:25px 1fr 20px;gap:6px 12px;padding-block:23px}.compact-project summary .project-type{grid-column:2;grid-row:2;font-size:.8125rem}.compact-project .expand-icon{grid-column:3;grid-row:1/3}.compact-project summary h3{font-size:1.2rem}.compact-content{padding:0 10px 25px 37px;font-size:.9375rem}.experience-row{grid-template-columns:1fr;gap:16px;padding-block:28px}.experience-date{display:flex;align-items:center;justify-content:space-between;font-size:.8125rem}.experience-date .current{margin:0}.experience-description{grid-column:auto}.experience-title h3{font-size:1.2rem}.experience-title p{margin-top:5px}.stack-grid{grid-template-columns:1fr}.stack-category{padding:26px}.stack-category>.mono{margin-bottom:16px}.stack-category .tags{margin-top:16px}.tags span{font-size:.75rem}.background-row{padding-top:40px;gap:34px}.background-row .section-index{margin-bottom:12px}.background-row h3{font-size:1.15rem}.contact-grid{grid-template-columns:1fr;gap:30px}.contact h2{font-size:3.5rem}.contact-grid>div>p{max-width:280px}.contact-email{font-size:1.35rem;padding-block:18px 12px;gap:12px}.contact-links{display:grid;grid-template-columns:1fr 1fr;gap:20px;font-size:.875rem;margin-top:40px}.contact-links a:last-child{margin-left:0}.footer{flex-wrap:wrap;padding-block:25px;gap:20px}.footer p{font-size:.6875rem}.footer>a:last-child{width:100%;font-size:.6875rem}.scene-fallback>span{font-size:6rem}}@media(max-width:360px){.hero-actions{gap:15px}.button{gap:13px;padding:13px}.hero-topline{font-size:.6rem}.diagram-node{min-width:72px}.diagram-connector{width:17px}.contact-email{font-size:1.1rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition:none!important;animation:none!important}}@media(max-width:600px){.date-break{display:none}}.not-found{min-height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:28px}.not-found h1{font-size:clamp(3rem,6vw,5.5rem)}.not-found>p:not(.section-index){max-width:520px;color:var(--muted)}.motion-toggle:disabled{cursor:default;opacity:.5}.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.blog-card{min-width:0;border:1px solid var(--line);background:var(--panel);transition:border-color .2s,transform .2s}.blog-card:hover{border-color:#657b4b;transform:translateY(-4px)}.blog-card-link{display:flex;flex-direction:column;padding:28px;height:100%}.blog-card-link:focus-visible{outline-offset:-3px}.blog-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;text-transform:uppercase;color:#b9ccaa;letter-spacing:.035em}.blog-number{color:#737f6c}.blog-motif{color:#8e9a85;padding:28px 0 24px;letter-spacing:-.035em;border-bottom:1px solid var(--line);margin-bottom:25px;font-size:.8125rem}.blog-card h2,.blog-card h3{font-size:1.65rem;line-height:1.22;letter-spacing:-.045em;color:var(--text)}.blog-card-link>p{color:var(--muted);font-size:1rem;line-height:1.75;margin-top:17px;margin-bottom:28px}.blog-card-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:.8125rem;color:var(--muted)}.blog-read{color:var(--text)}.blog-read>span{margin-left:8px;color:var(--lime)}.blog-index{padding-top:32px;padding-bottom:100px;min-height:calc(100svh - 194px)}.breadcrumbs{display:flex;flex-wrap:wrap;gap:12px;align-items:center;font-size:.8125rem;color:var(--muted)}.breadcrumbs a:hover{color:var(--lime)}.breadcrumbs [aria-current]{color:#ced6cb}.blog-index-heading{padding-block:64px 60px;display:grid;grid-template-columns:1.3fr 1fr;gap:70px;align-items:end}.blog-index-heading h1{font-size:clamp(3.3rem,6.4vw,6rem);letter-spacing:-.065em;line-height:1.03;margin:0}.blog-index-heading h1>span{color:var(--lime)}.blog-index-heading>p{max-width:355px;color:var(--muted);padding-bottom:7px;font-size:1.0625rem}.blog-index-label{border-top:1px solid var(--line);padding-block:21px;display:flex;justify-content:space-between;gap:22px;color:var(--muted);font-size:.75rem}.blog-index-label>span:first-child{color:var(--lime)}.post-page{padding-top:32px}.post-header{max-width:1000px;padding-block:62px 48px}.post-header h1{margin:0;font-size:clamp(2.8rem,5.1vw,4.75rem);letter-spacing:-.06em;line-height:1.08;font-weight:500}.post-header .section-index{text-transform:uppercase}.post-description{max-width:780px;color:#b7bfb8;font-size:1.2rem;line-height:1.75;margin-top:28px}.post-meta{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:28px;color:var(--muted);font-size:.875rem}.post-meta a{color:var(--text)}.post-meta a:hover{color:var(--lime)}.post-meta>[aria-hidden]{color:#56604f}.post-header .tags{margin-top:22px}.post-layout{border-top:1px solid var(--line);padding-top:52px;display:grid;grid-template-columns:220px minmax(0,1fr);gap:64px}.post-sidebar{align-self:stretch;min-width:0}.post-toc{position:sticky;top:125px}.post-toc>p{color:var(--lime);margin-bottom:22px}.post-toc ol{padding-left:21px;margin:0;font-size:.875rem;line-height:1.6;color:var(--muted)}.post-toc li{padding-left:6px;margin-bottom:17px}.post-toc li::marker{color:#69745d;font-family:var(--mono);font-size:.75rem}.post-toc a:hover{color:var(--lime)}.post-all{display:inline-block;margin-top:16px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:.875rem}.post-body{max-width:76ch;min-width:0;color:#bac2bf;font-size:1.0625rem;line-height:1.9}.post-body p{margin:0 0 22px}.post-introduction{font-size:1.125rem;color:#d4dacf;padding-bottom:7px}.post-body>section{padding-top:32px;scroll-margin-top:115px}.post-body h2{font-size:1.85rem;letter-spacing:-.04em;line-height:1.25;color:var(--text);margin-bottom:23px}.post-body li code,.post-body p code{font-family:var(--mono);font-size:.88em;color:#d4e8bd;background:#192016;border:1px solid #2b3823;padding:2px 5px;border-radius:3px;overflow-wrap:anywhere}.post-code{margin:28px 0;max-width:100%;border:1px solid #34402b;background:#0f140f}.post-code figcaption{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #2a3423;background:#151c12;color:#b5c5a5;padding:12px 19px;font-size:.8125rem;line-height:1.6}.post-code figcaption .mono{color:#899e74;font-size:.75rem;white-space:nowrap}.post-code pre{overflow-x:auto;margin:0;padding:23px;font-family:var(--mono);font-size:.875rem;line-height:1.8;tab-size:2;color:#d5e6c6}.post-code pre code{font:inherit}.post-code pre:focus-visible{outline:2px solid var(--lime);outline-offset:-2px}.post-figure{margin:30px 0;max-width:100%;border:1px solid #34402b;background:#101517}.post-figure img{display:block;width:100%;height:auto}.post-figure figcaption{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;padding:18px 20px;border-top:1px solid #34402b;font-size:.875rem;line-height:1.7;color:#b5c5a5}.post-figure figcaption span{flex:1 1 280px}.post-figure figcaption a{color:var(--lime);text-decoration:underline;text-underline-offset:4px;align-self:flex-end;white-space:nowrap}.post-body ul{margin:15px 0 26px;padding-left:24px}.post-body li{padding-left:7px;margin-bottom:12px}.post-body li::marker{color:#9ab779}.post-note{margin:30px 0;border-left:2px solid var(--lime);background:#141b11;padding:22px 25px}.post-note>.mono{color:var(--lime);display:block;margin-bottom:12px;font-size:.75rem}.post-note>p{font-size:1rem;line-height:1.8;margin:0}.post-body .post-references{font-size:.8125rem;color:#8b9786;margin-top:24px;padding-top:14px;border-top:1px solid #222b20}.post-references a{color:#baceaa;text-decoration:underline;text-decoration-color:#526447;text-underline-offset:4px}.post-references a:hover{color:var(--lime)}.post-end{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;border-top:1px solid var(--line);padding-top:28px;margin-top:46px}.post-end>.mono{color:#8c9d7d;font-size:.75rem}.post-end>a{color:var(--lime);font-size:.875rem}.related-posts{border-top:1px solid var(--line);margin-top:86px;padding-block:65px 85px}.related-posts .section-index{margin-bottom:18px}.related-posts h2{font-size:2.25rem}.related-posts .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.related-posts .blog-card{max-width:590px}@media(max-width:1100px){.blog-card-link{padding:23px}.blog-card h2,.blog-card h3{font-size:1.45rem}.blog-motif{font-size:.75rem}.post-layout{grid-template-columns:185px minmax(0,1fr);gap:42px}}@media(max-width:800px){.blog-grid{grid-template-columns:1fr;gap:18px}.blog-card-link{padding:28px}.blog-card h2,.blog-card h3{font-size:1.75rem}.blog-motif{padding-block:20px;margin-bottom:20px;font-size:.8125rem}.blog-index-heading{gap:35px;grid-template-columns:1fr 1fr}.blog-index-heading h1{font-size:3.4rem}.post-layout{grid-template-columns:minmax(0,1fr);gap:34px;padding-top:32px}.post-toc{position:static;border-bottom:1px solid var(--line);padding-bottom:20px}.post-toc ol{column-count:2;column-gap:38px}.post-toc li{page-break-inside:avoid;break-inside:avoid}.post-all{display:none}.post-header{padding-top:42px}.post-body{max-width:none}.related-posts .blog-grid{grid-template-columns:1fr}.related-posts .blog-card{max-width:none}}@media(max-width:600px){.blog-card-link{padding:24px}.blog-card h2,.blog-card h3{font-size:1.6rem}.blog-card-top{font-size:.75rem}.blog-card-bottom{font-size:.875rem}.blog-index{padding-top:24px;padding-bottom:65px}.blog-index-heading{grid-template-columns:1fr;gap:24px;padding-block:42px 38px}.blog-index-heading h1{font-size:clamp(2.8rem,11vw,4rem)}.blog-index-heading>p{font-size:1rem;padding:0}.blog-index-label{font-size:.75rem;flex-wrap:wrap;gap:9px}.post-page{padding-top:24px}.post-header{padding-block:35px}.post-header h1{font-size:clamp(2.3rem,9.6vw,3.3rem)}.post-description{font-size:1.0625rem;margin-top:23px}.post-meta{font-size:.8125rem;gap:9px;margin-top:23px}.post-toc ol{column-count:1}.post-toc li{font-size:.875rem;margin-bottom:12px}.post-body{font-size:1rem;line-height:1.85}.post-introduction{font-size:1.0625rem}.post-body h2{font-size:1.6rem;margin-bottom:20px}.post-body>section{padding-top:25px;scroll-margin-top:93px}.post-code figcaption{padding:12px 15px;gap:15px;font-size:.75rem}.post-code pre{padding:18px 15px;font-size:.875rem}.post-note{padding:20px}.post-note>p{font-size:.9375rem}.related-posts{margin-top:55px;padding-block:45px 65px}.related-posts h2{font-size:1.9rem}}@media(prefers-reduced-motion:reduce){.blog-card:hover{transform:none}}