@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/b5963afcf1479527-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/5ed7d4ff5e59016d-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/84adbee2f2a7cb50-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Newsreader Fallback;src:local("Times New Roman");ascent-override:69.68%;descent-override:25.12%;line-gap-override:0.00%;size-adjust:105.48%}.__className_47c7a6{font-family:Newsreader,Newsreader Fallback;font-style:normal}.__variable_47c7a6{--font-serif:"Newsreader","Newsreader Fallback"}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans Fallback;src:local("Arial");ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.00%;size-adjust:101.17%}.__className_987bfa{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.__variable_987bfa{--font-sans:"IBM Plex Sans","IBM Plex Sans Fallback"}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/58f386aa6b1a2a92-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/011e180705008d6f-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ba5fb2a8c88521c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/92eeb95d069020cc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d3ebbfd689654d3a-s.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-s.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono Fallback;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_37214d{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.__variable_37214d{--font-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}:root{--paper:#F5F3EE;--ink:#17191E;--text:#3E4148;--text-strong:#2B2E34;--muted:#5A5D64;--rule:#D8D4CA;--rule-soft:#E6E2D9;--surface:#FFFFFF;--surface-2:#FBFAF7;--accent:#1E5A47;--negative:#9A2B22;--serif:var(--font-serif),Georgia,"Times New Roman",serif;--sans:var(--font-sans),system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--mono:var(--font-mono),ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--pad-x:clamp(20px,8.34vw,120px);--gutter:24px;--section:144px;--nav-h:72px;color-scheme:light}*,:after,:before{box-sizing:border-box}html{background:var(--paper);-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:clip}body,dd,dl,figure,h1,h2,h3,p,ul{margin:0}ul{padding:0;list-style:none}img{display:block;max-width:100%}button{font:inherit;color:inherit}a{color:var(--ink);-webkit-text-decoration-line:underline;text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:4px}a:hover{color:var(--accent)}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.num{font-feature-settings:tabular-nums lining-nums;font-variant-numeric:tabular-nums lining-nums}.serif{font-family:var(--serif);font-weight:400}.label,.mono{font-family:var(--mono)}.label{font-size:12px;font-weight:400;line-height:1.4;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.label--sm{font-size:11px}.skip-link{position:absolute;left:-9999px;top:12px;z-index:100;padding:11px 18px;background:var(--paper);border:1px solid var(--ink);font-weight:500;text-decoration:none}.skip-link:focus{left:var(--pad-x)}.page{padding-inline:var(--pad-x)}.wrap{max-width:1200px;margin-inline:auto}.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-column-gap:var(--gutter);column-gap:var(--gutter)}.scroll-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:60;pointer-events:none}.scroll-progress>i{display:block;height:100%;background:var(--accent);transform-origin:0 50%;transform:scaleX(var(--sp,0));will-change:transform}.nav{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:var(--paper);height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--rule)}.nav__mark{font-family:var(--serif);font-size:22px;letter-spacing:-.01em;text-decoration:none;white-space:nowrap}.nav__links{display:flex;align-items:center;gap:36px;font-size:15px}.nav__links a:not(.btn-outline){text-decoration:none;padding:12px 0}.btn-outline{display:inline-block;padding:11px 18px;border:1px solid var(--ink);font-weight:500;text-decoration:none;white-space:nowrap}.btn-outline:hover{color:var(--accent);border-color:var(--accent)}.hero{padding:72px 0 64px;display:flex;flex-direction:column;gap:32px}.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(34px,4.2vw,60px);line-height:1.06;letter-spacing:-.03em;text-wrap:balance}.nowrap{white-space:nowrap}.hero__row{margin-top:8px;align-items:start}.hero__lede{grid-column:1/span 7;display:flex;flex-direction:column;align-items:flex-start;gap:28px}.hero__lede p{font-size:18px;line-height:1.6;color:var(--text);text-wrap:pretty}.btn{display:inline-block;padding:14px 24px;background:var(--accent);color:#FFFFFF;font-size:16px;font-weight:500;line-height:1.4;text-decoration:none}.btn:hover{color:#FFFFFF;background:var(--ink)}.contact-dl{grid-column:9/span 4;border-top:1px solid var(--ink);font-size:15px;line-height:1.25}.contact-dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:14px 0;border-bottom:1px solid var(--rule)}.contact-dl dd{text-align:right;overflow-wrap:anywhere}.figs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--ink);border-bottom:1px solid var(--rule)}.fig{padding:32px 24px;display:flex;flex-direction:column;gap:12px}.fig+.fig{border-left:1px solid var(--rule)}.fig:first-child{padding-left:0}.fig:last-child{padding-right:0}.fig__value{font-family:var(--serif);font-size:48px;line-height:1;letter-spacing:-.02em;font-feature-settings:tabular-nums lining-nums;font-variant-numeric:tabular-nums lining-nums}.fig__caption{font-size:15px;line-height:1.45;color:var(--ink)}.section{padding-top:var(--section)}.section[id]{scroll-margin-top:calc(var(--nav-h) + 48px - var(--section))}.section-head{padding-bottom:32px}.section-head h2{grid-column:1/span 3}.roles{border-bottom:1px solid var(--rule)}.role{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:auto 1fr;grid-column-gap:var(--gutter);column-gap:var(--gutter);align-items:baseline;padding:32px 0 40px;border-top:1px solid var(--rule)}.role:first-child{border-top-color:var(--ink)}.role__date{grid-column:1/span 3;grid-row:1;font-family:var(--mono);font-size:14px;color:var(--muted);font-feature-settings:tabular-nums lining-nums;font-variant-numeric:tabular-nums lining-nums}.role__logo{grid-column:1/span 3;grid-row:2;align-self:start;padding-top:18px}.role__body{grid-column:4/span 7;grid-row:1/span 2;display:flex;flex-direction:column}.role__loc{grid-column:11/span 2;grid-row:1;font-size:14px;color:var(--muted);text-align:right}.role__head{display:flex;flex-direction:column;gap:6px}.role{position:relative}.role__more.is-folding{overflow:hidden;overflow:clip}.role__more-in{display:flex;flex-direction:column;gap:20px;padding-top:20px}.role__more[hidden]:not([hidden=until-found]){display:none}.role__toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;margin:0;padding:10px 0 0;align-self:flex-start;cursor:pointer;font-size:14px;font-weight:500;color:var(--muted);-webkit-text-decoration-line:underline;text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:4px}.role--closed:hover .role__toggle,.role--closed:hover h3,.role__toggle:hover{color:var(--accent)}.role--closed .role__toggle:after{content:"";position:absolute;inset:0}.role__toggle:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.section-head{align-items:baseline}.section-head__action{grid-column:10/span 3;justify-self:end;padding:0;font-size:14px}.role h3{font-family:var(--serif);font-weight:400;font-size:24px;line-height:1.25}.role--current h3{font-size:28px;letter-spacing:-.01em}.role__company{font-size:16px;color:var(--text)}.ticker{font-family:var(--mono);font-size:13px;color:var(--muted)}.logo{display:block;width:auto;max-width:132px}.bullets{display:flex;flex-direction:column;gap:12px;font-size:16px;line-height:1.6;color:var(--text-strong)}.bullets li{display:flex;gap:16px}.bullets .dash{color:var(--accent);flex:none}.deals{display:flex;flex-direction:column;gap:12px}.deals__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 16px}.deals__head a{font-size:14px}.deals__list{display:flex;flex-direction:column;gap:8px;font-size:16px;line-height:1.5}.deals__list>div{display:grid;grid-template-columns:minmax(0,13.5em) minmax(0,1fr);grid-column-gap:16px;column-gap:16px}.deals__list dt{font-weight:500;color:var(--ink)}.deals__list dd{color:var(--text-strong)}.deals .deal-link{font-size:14px;margin-left:10px;white-space:nowrap}.work{display:flex;flex-direction:column;gap:40px}.work__intro h2{grid-column:1/span 3;padding-top:10px}.work__intro p{grid-column:4/span 7;font-size:18px;line-height:1.7;color:var(--text)}.work__intro .work__toggle{grid-column:11/span 2;justify-self:end;align-self:start;padding-top:10px}.sysmap{margin:0;display:flex;flex-direction:column;gap:14px;container-type:inline-size}.sm-frame{border:1px solid var(--rule);background:var(--surface-2);padding:26px 26px 24px}.sm-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) minmax(0,1.25fr);grid-column-gap:clamp(44px,6.5vw,104px);column-gap:clamp(44px,6.5vw,104px);padding-right:86px}.sm-col,.sm-grid{position:relative}.sm-col{z-index:1;display:flex;flex-direction:column;min-width:0}.sm-colhead{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 12px}.sm-stack{flex:1 1;display:flex;flex-direction:column;justify-content:space-around;gap:8px}.sm-node{display:block;background:var(--surface);border:1px solid var(--rule);padding:9px 12px;color:var(--ink);transition:opacity .25s ease,border-color .25s ease}.sm-node b{display:block;font-weight:500;font-size:14px;line-height:1.3}.sm-node small{display:block;font-family:var(--mono);font-size:11px;line-height:1.35;color:var(--muted);margin-top:2px}.sm-wh{flex:1 1;display:flex;flex-direction:column;border:1px solid var(--ink);padding:12px 14px 14px;background:var(--paper)}.sm-wh__title{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin:0 0 6px}.sm-wh .sm-stack{gap:10px}.sm-data b{font-family:var(--serif);font-weight:400;font-size:20px;letter-spacing:-.01em}.sm-app{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;margin:0;font:inherit;text-align:left;display:grid;grid-template-columns:28px minmax(0,1fr);align-items:baseline;padding:8px 12px}button.sm-app{cursor:pointer}button.sm-app:focus-visible b,button.sm-app:hover b{color:var(--accent)}button.sm-app:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.sm-n{font-family:var(--mono);font-size:12px;color:var(--muted)}.sm-app--extra{background:transparent;border-style:dashed}.sm-app--extra b{color:var(--text)}.sm-handoffs,.sm-node .sm-chips{display:none}.sm-wires{position:absolute;left:0;top:0;z-index:0;overflow:visible;pointer-events:none}.sm-wire{fill:none;stroke:#C9C4B8;stroke-width:1;transition:opacity .25s ease,stroke .25s ease}.sm-hand{stroke:var(--accent);stroke-width:1.5}.sm-arrowhead,.sm-dot,.sm-handlabel{fill:var(--accent)}.sm-handlabel{font-family:var(--mono);font-size:10.5px;letter-spacing:.02em;transition:opacity .25s ease}.sysmap.is-tracing .sm-node:not(.is-hot){opacity:.32}.sysmap.is-tracing .sm-handlabel:not(.is-hot),.sysmap.is-tracing .sm-wire:not(.is-hot){opacity:.18}.sm-wire.is-hot{stroke:var(--accent);stroke-width:1.75}.sm-node.is-hot{border-color:var(--accent)}.sm-foot{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 22px;font-family:var(--mono);font-size:12px;color:var(--muted)}.sm-key i{display:inline-block;width:22px;height:0;vertical-align:middle;margin-right:8px;border-top:1px solid #c9c4b8}.sm-key i.k-hand{border-top:1.5px solid var(--accent)}.sm-hint{flex:1 1 300px;font-family:var(--sans);font-size:14px;color:var(--text)}.sm-stats{margin-left:auto}@container (max-width: 719px){.sm-frame{padding:18px 16px}.sm-grid{grid-template-columns:minmax(0,1fr);row-gap:26px;padding-right:0}.sm-hint,.sm-key,.sm-wires{display:none}.sm-col+.sm-col:before{content:"\2193";position:absolute;top:-24px;left:50%;font-size:14px;color:var(--muted)}.sm-col--src .sm-stack{flex-direction:row;flex-wrap:wrap}.sm-col--src .sm-node{flex:1 1 40%}.sm-wh .sm-stack{display:grid;grid-template-columns:1fr 1fr}.sm-data small,.sm-src small{display:none}.sm-data b{font-size:17px}.sm-handoffs,.sm-node .sm-chips{display:block}.sm-handoffs{list-style:none;margin:14px 0 0;padding:12px 0 0;border-top:1px solid var(--rule);font-size:13px;color:var(--text)}.sm-handoffs li+li{margin-top:6px}.sm-handoffs b{font-weight:500;color:var(--accent)}.sm-stats{margin-left:0}}@media (prefers-reduced-motion:reduce){.sm-handlabel,.sm-node,.sm-wire{transition:none}}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}.link-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;padding:12px 0;margin:0;cursor:pointer;text-align:left;font-size:15px;font-weight:500;color:var(--ink);-webkit-text-decoration-line:underline;text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:4px}.link-btn:hover{color:var(--accent)}.projects{border-top:1px solid var(--ink)}.proj{position:relative;scroll-margin-top:calc(var(--nav-h) + 24px);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-column-gap:var(--gutter);column-gap:var(--gutter);align-items:baseline;padding:28px 0;border-bottom:1px solid var(--rule)}.proj__n{grid-column:1/span 1;font-family:var(--mono);font-size:13px;color:var(--muted)}.proj h3{grid-column:2/span 4;font-family:var(--serif);font-weight:400;font-size:26px;line-height:1.25;letter-spacing:-.01em;text-wrap:balance}.proj__btn{display:block;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;padding:0;margin:0;font:inherit;letter-spacing:inherit;color:inherit;text-align:left;cursor:pointer}.proj__btn:after{content:"";position:absolute;inset:0}.proj__btn:focus-visible{outline:none}.proj__btn:focus-visible:after{outline:2px solid var(--ink);outline-offset:3px}.proj:hover .proj__arrow,.proj:hover h3{color:var(--accent)}.proj__desc{grid-column:6/span 6;font-size:16px;line-height:1.6;color:var(--text)}.proj__arrow{grid-column:12/span 1;text-align:right;font-size:18px}.proj__arrow>span{display:inline-block;transition:transform .4s cubic-bezier(.37,0,.63,1)}.proj.is-open .proj__arrow>span{transform:rotate(-90deg)}@media (prefers-reduced-motion:reduce){.proj__arrow>span{transition:none}}.demo-fold.is-folding{overflow:hidden;overflow:clip}.demo-panel{padding:32px 0 48px}.projects .demo-panel{border-bottom:1px solid var(--rule)}.demo-panel__head{display:flex;justify-content:space-between;align-items:baseline;gap:8px 24px;flex-wrap:wrap;margin-bottom:20px}.demo-panel__loading{font-size:15px;color:var(--muted);padding:40px 0}.demo-mount{min-width:0}.more{row-gap:72px}.more>h2{grid-column:1/span 3;padding-top:4px}.toolkit{grid-column:4/span 9;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-column-gap:var(--gutter);column-gap:var(--gutter);grid-row-gap:40px;row-gap:40px}.toolkit div{display:flex;flex-direction:column;gap:16px}.toolkit h3{font-size:16px;font-weight:600;line-height:1.4}.toolkit ul{display:flex;flex-direction:column;gap:8px;font-size:16px;line-height:1.5;color:var(--text)}.edu{grid-column:4/span 9;display:flex;justify-content:space-between;align-items:baseline;gap:16px 24px;border-top:1px solid var(--rule);padding-top:20px}.edu__school{font-family:var(--serif);font-size:24px;line-height:1.25}.edu__degree{font-size:16px;color:var(--text);margin-top:4px}.edu__side{display:flex;flex-direction:column;align-items:flex-end;gap:18px}.edu__year{font-family:var(--mono);font-size:14px;color:var(--muted);font-feature-settings:tabular-nums lining-nums;font-variant-numeric:tabular-nums lining-nums}.foot{margin-top:var(--section);padding:96px 0 48px;border-top:1px solid var(--ink);display:flex;flex-direction:column;gap:96px}.foot>.grid>h2{grid-column:1/span 3;padding-top:18px}.foot__main{grid-column:4/span 9;display:flex;flex-direction:column;gap:28px;min-width:0}.foot__email{font-family:var(--serif);font-size:clamp(22px,5.6vw,56px);line-height:1.1;letter-spacing:-.02em;overflow-wrap:anywhere}.foot__links{display:flex;flex-wrap:wrap;column-gap:40px;font-size:16px}.foot__links a{padding:12px 0}.foot__base{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px;color:var(--muted)}@media (max-width:1199px){:root{--section:120px}}@media (max-width:1023px){:root{--section:96px}.hero__row{row-gap:48px}.contact-dl,.hero__lede{grid-column:1/-1}.foot>.grid,.more,.section-head,.work__intro{display:block}.section-head{display:flex;justify-content:space-between;align-items:baseline}.foot>.grid>h2,.more>h2,.work__intro h2{padding-top:0;margin-bottom:24px}.work__intro{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-column-gap:16px;column-gap:16px}.work__intro h2{grid-column:1;grid-row:1}.work__intro .work__toggle{grid-column:2;grid-row:1;padding-top:0}.work__intro p{grid-column:1/-1;grid-row:2}.more>h2+*{margin-bottom:72px}.more>:last-child{margin-bottom:0}.figs{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--gutter)}.fig,.fig:first-child,.fig:last-child{padding:28px 0}.fig+.fig{border-left:0}.fig:nth-child(n+3){border-top:1px solid var(--rule)}.fig:nth-child(5){grid-column:1/-1}.role{display:flex;flex-wrap:wrap;align-items:center;column-gap:0;padding:28px 0 36px}.role__date{order:1}.role__loc{order:2;font-family:var(--mono);font-size:14px;text-align:left}.role__loc:before{content:"\00a0·\00a0"}.role__logo{order:3;margin-left:auto;padding:0 0 0 16px}.role__body{order:4;flex-basis:100%;margin-top:16px}.proj{grid-template-columns:auto minmax(0,1fr) auto;column-gap:16px;row-gap:10px}.proj__n{grid-column:1;grid-row:1}.proj h3{grid-column:2;grid-row:1}.proj__arrow{grid-column:3;grid-row:1}.proj__desc{grid-column:2/-1;grid-row:2}}@media (max-width:767px){:root{--section:80px;--nav-h:60px}.nav .nav__links a:not(.btn-outline),.nav__pdf{display:none}.hero{padding:56px 0;gap:28px}.hero__lede p{font-size:17px}.deals__list>div,.toolkit{grid-template-columns:1fr}.edu{flex-direction:column;align-items:flex-start}.edu__side{flex-direction:row-reverse;align-items:center;gap:16px}.foot{padding-top:72px;gap:72px}}@media (max-width:479px){.figs{grid-template-columns:1fr}.fig:nth-child(n+2){border-top:1px solid var(--rule)}.fig__value{font-size:40px}.role__logo{display:none}}@media (pointer:coarse){.contact-dl a,.deal-link,.deals__head a,.foot__links a,.link-btn,.nav__links a:not(.btn-outline),.role__toggle{display:inline-block;min-height:44px;padding-block:11px}}@media print{.nav{position:static}.sysmap{display:none!important}.role__more[hidden]{display:block!important;content-visibility:visible!important}.role__toggle,.scroll-progress,.section-head__action{display:none!important}}