@font-face{font-family:IBM Plex Serif;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-serif-cyrillic-ext-400-normal.CxUI4jC_.woff2)format("woff2"),url(/_astro/ibm-plex-serif-cyrillic-ext-400-normal.BcBv-TKp.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Serif;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-serif-cyrillic-400-normal.CPQ8oqB-.woff2)format("woff2"),url(/_astro/ibm-plex-serif-cyrillic-400-normal.C7IY3oUc.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Serif;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-serif-vietnamese-400-normal.DGubAMUE.woff2)format("woff2"),url(/_astro/ibm-plex-serif-vietnamese-400-normal.BY9Vij9A.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Serif;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-serif-latin-ext-400-normal.CNMooFZX.woff2)format("woff2"),url(/_astro/ibm-plex-serif-latin-ext-400-normal.DwktX9jl.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Serif;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-serif-latin-400-normal.BIGslYFI.woff2)format("woff2"),url(/_astro/ibm-plex-serif-latin-400-normal.BB-zNvJB.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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 Serif;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-serif-cyrillic-ext-400-italic.o20Cx6Xj.woff2)format("woff2"),url(/_astro/ibm-plex-serif-cyrillic-ext-400-italic.CPw2or01.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Serif;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-serif-cyrillic-400-italic.C_ad97oI.woff2)format("woff2"),url(/_astro/ibm-plex-serif-cyrillic-400-italic.CygxzOWU.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Serif;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-serif-vietnamese-400-italic.BSp0Db6W.woff2)format("woff2"),url(/_astro/ibm-plex-serif-vietnamese-400-italic.1VBVfWB7.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Serif;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-serif-latin-ext-400-italic.hOoDEQwh.woff2)format("woff2"),url(/_astro/ibm-plex-serif-latin-ext-400-italic.4IJS-XHX.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Serif;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-serif-latin-400-italic.BCf4TsCA.woff2)format("woff2"),url(/_astro/ibm-plex-serif-latin-400-italic.Dd68USph.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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 Serif;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-serif-cyrillic-ext-600-normal.DXSZftVr.woff2)format("woff2"),url(/_astro/ibm-plex-serif-cyrillic-ext-600-normal.CDMeBxaJ.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Serif;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-serif-cyrillic-600-normal.6oiym5iu.woff2)format("woff2"),url(/_astro/ibm-plex-serif-cyrillic-600-normal.C8YEAlRA.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Serif;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-serif-vietnamese-600-normal.BBruYZNA.woff2)format("woff2"),url(/_astro/ibm-plex-serif-vietnamese-600-normal.DZRaS25B.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Serif;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-serif-latin-ext-600-normal.CU6LeQOd.woff2)format("woff2"),url(/_astro/ibm-plex-serif-latin-ext-600-normal.D1-_Ic5L.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Serif;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-serif-latin-600-normal.DAxitmSu.woff2)format("woff2"),url(/_astro/ibm-plex-serif-latin-600-normal.D3rpGdkS.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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 Serif;font-style:italic;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-serif-cyrillic-ext-600-italic.CbP060Js.woff2)format("woff2"),url(/_astro/ibm-plex-serif-cyrillic-ext-600-italic.D7qEpmay.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Serif;font-style:italic;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-serif-cyrillic-600-italic.B-MUfNoF.woff2)format("woff2"),url(/_astro/ibm-plex-serif-cyrillic-600-italic.B5nQ1Dzp.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Serif;font-style:italic;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-serif-vietnamese-600-italic.BrdqYGAq.woff2)format("woff2"),url(/_astro/ibm-plex-serif-vietnamese-600-italic.CMORQUaI.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Serif;font-style:italic;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-serif-latin-ext-600-italic.CwtNJA7M.woff2)format("woff2"),url(/_astro/ibm-plex-serif-latin-ext-600-italic.DM7htMZM.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Serif;font-style:italic;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-serif-latin-600-italic.-nwoHQXg.woff2)format("woff2"),url(/_astro/ibm-plex-serif-latin-600-italic.BD9tANRL.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,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-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-400-normal.CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-400-normal.DDuiU_S-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BqneJy0T.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,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-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-500-normal.Bq9vWWag.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-500-normal.Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-vietnamese-500-normal.DZ4AoWbu.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-500-normal.C8zxqsMH.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-ext-500-normal.CAhNIIs5.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-500-normal.CZ70TYgx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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-display:swap;font-weight:600;src:url(/_astro/ibm-plex-mono-cyrillic-ext-600-normal.V-xxqcpd.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-600-normal.9HEixskS.woff)format("woff");unicode-range:U+460-52F,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-display:swap;font-weight:600;src:url(/_astro/ibm-plex-mono-cyrillic-600-normal.CTOM6hUh.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-600-normal.fLZuRloM.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-mono-vietnamese-600-normal.D2EvbN8M.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-600-normal.iLQfcSjf.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-mono-latin-ext-600-normal.D38SheWl.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-600-normal.DmB0ttJJ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-mono-latin-600-normal.BgSNZQsw.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-600-normal.DWFSQ4vo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-ink:#0b1220;--color-body:#263143;--color-secondary:#4b5768;--color-muted:#616b79;--color-blue:#2f5fbf;--color-blue-deep:#24499a;--color-cyan:#59c6d8;--color-green:#1c6a50;--color-amber:#8a5a12;--color-red:#a03222;--color-sheet:#f2f4f6;--color-card:#fff;--color-blue-tint:#e3eaf6;--color-line:#cfd6de;--color-line-soft:#e7ebef;--color-on-dark:#f2f4f6;--color-on-dark-body:#c7d1dd;--color-on-dark-caption:#98a3b2;--color-on-dark-muted:#7c8ca0;--color-line-dark:#1e2a3e;--font-serif:"IBM Plex Serif", Georgia, "Times New Roman", serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--text-display:clamp(2.375rem, 1.4rem + 4.2vw, 4rem);--text-h1:clamp(1.75rem, 1.3rem + 2vw, 2.5rem);--text-h2:1.625rem;--text-h3:1.25rem;--text-lead:1.1875rem;--text-body:1rem;--text-data-lg:2rem;--text-data:.875rem;--text-small:.8125rem;--text-label:.75rem;--tracking-label:.14em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-14:56px;--space-16:64px;--radius:0;--angle-plane:112deg;--content-width:68rem;--prose-width:44rem;--wide-width:52rem;--nav-height:64px}*,:before,:after{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}body{background:var(--color-sheet);color:var(--color-body);font-family:var(--font-serif);font-size:var(--text-body);-webkit-font-smoothing:antialiased;line-height:1.6}img,svg{max-width:100%;height:auto;display:block}a{color:var(--color-blue-deep);text-underline-offset:2px;text-decoration:underline}a:hover{color:var(--color-ink)}:focus-visible{outline:2px solid var(--color-blue);outline-offset:2px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.shell{max-width:var(--content-width);padding-inline:clamp(var(--space-4), 5vw, var(--space-16));margin-inline:auto}.label{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted);font-weight:500}.btn{font-family:var(--font-mono);font-size:var(--text-small);background:var(--color-blue);color:var(--color-card);border:1px solid var(--color-blue);padding:12px 20px;font-weight:500;text-decoration:none;display:inline-block}.btn:hover{background:var(--color-blue-deep);border-color:var(--color-blue-deep);color:var(--color-card)}.btn--secondary{background:var(--color-card);color:var(--color-blue-deep)}.btn--secondary:hover{background:var(--color-blue-tint);color:var(--color-blue-deep)}.arrow-link{font-family:var(--font-mono);font-size:var(--text-small);font-weight:500;text-decoration:none}.arrow-link:before{content:"→ "}.page-body{padding-block:var(--space-14)}.skip-link{z-index:100;background:var(--color-ink);color:var(--color-on-dark);padding:var(--space-3) var(--space-4);font-family:var(--font-mono);font-size:var(--text-small);position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}.prose>*{max-width:var(--prose-width);margin-inline:auto}.prose>a{display:block}.prose>:is(.grid,.contact,.table-scroll,table,.callout,.slideshow){--overhang:clamp(0px, (100% - var(--prose-width)) / 2, min((var(--wide-width) - var(--prose-width)) / 2, 4vw));max-width:calc(var(--prose-width) + 2 * var(--overhang))}.prose>*+*{margin-top:var(--space-6)}.prose>h2{font-size:var(--text-h2);color:var(--color-ink);border-bottom:2px solid var(--color-ink);padding-bottom:var(--space-3);margin-top:var(--space-14);text-wrap:balance;font-weight:600;line-height:1.2}.prose>h3{font-size:var(--text-h3);color:var(--color-ink);margin-top:var(--space-8);text-wrap:balance;font-weight:600;line-height:1.3}.prose>ul,.prose .publications ul{gap:var(--space-2);flex-direction:column;padding-left:1.2em;display:flex}.prose>ul li::marker{color:var(--color-blue)}.prose>ol{counter-reset:prose-step;gap:var(--space-4);flex-direction:column;padding-left:0;list-style:none;display:flex}.prose>ol>li{counter-increment:prose-step;padding-left:56px;position:relative}.prose>ol>li:before{content:counter(prose-step, decimal-leading-zero);font-family:var(--font-mono);font-size:var(--text-data);color:var(--color-blue);border-top:2px solid var(--color-blue);padding-top:var(--space-1);font-weight:500;position:absolute;top:2px;left:0}.prose strong{color:var(--color-ink);font-weight:600}.prose>blockquote{border-left:3px solid var(--color-blue);background:var(--color-card);padding:var(--space-4) var(--space-6);font-style:italic}.prose>hr{border:0;border-top:1px solid var(--color-line);margin-top:var(--space-14)}.prose>table,.prose .table-scroll table{border-collapse:collapse;background:var(--color-card);border:1px solid var(--color-line);width:100%;font-family:var(--font-mono);font-size:var(--text-small);font-variant-numeric:tabular-nums}.prose .table-scroll th,.prose>table th{background:var(--color-line-soft);letter-spacing:.1em;text-transform:uppercase;color:var(--color-secondary);text-align:left;border-bottom:1px solid var(--color-line);padding:10px 14px;font-size:11.5px;font-weight:500}.prose .table-scroll td,.prose>table td{color:var(--color-secondary);border-bottom:1px solid var(--color-line-soft);padding:11px 14px}.prose .table-scroll td:first-child,.prose>table td:first-child{color:var(--color-body)}.prose .table-scroll tr:last-child td,.prose>table tr:last-child td{border-bottom:0}.table-scroll,.prose .table-scroll{overflow-x:auto}.prose .publications ul{gap:var(--space-4);padding-left:0;list-style:none}.prose .publications li{font-style:italic;font-size:var(--text-small);color:var(--color-secondary);border-left:2px solid var(--color-line);padding-left:var(--space-4);line-height:1.6}.site-nav[data-astro-cid-rutobish]{z-index:50;background:var(--color-sheet);border-bottom:1px solid var(--color-line);position:sticky;top:0}.bar[data-astro-cid-rutobish]{height:var(--nav-height);align-items:center;gap:var(--space-6);display:flex}.brand[data-astro-cid-rutobish]{margin-right:auto;display:flex}.brand[data-astro-cid-rutobish] img[data-astro-cid-rutobish]{width:46px;height:36px}.nav-desktop[data-astro-cid-rutobish] ul[data-astro-cid-rutobish]{gap:var(--space-6);padding:0;list-style:none;display:flex}.nav-desktop[data-astro-cid-rutobish] a[data-astro-cid-rutobish],.nav-mobile[data-astro-cid-rutobish] a[data-astro-cid-rutobish]{font-family:var(--font-mono);font-size:var(--text-small);color:var(--color-secondary);padding-block:var(--space-2);text-decoration:none}.nav-desktop[data-astro-cid-rutobish] a[data-astro-cid-rutobish]:hover,.nav-mobile[data-astro-cid-rutobish] a[data-astro-cid-rutobish]:hover{color:var(--color-ink)}.nav-desktop[data-astro-cid-rutobish] a[data-astro-cid-rutobish][aria-current=page],.nav-mobile[data-astro-cid-rutobish] a[data-astro-cid-rutobish][aria-current=page]{color:var(--color-ink);border-bottom:2px solid var(--color-blue)}.lang-switch[data-astro-cid-rutobish]{gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-label);padding:0;list-style:none;display:flex}.lang-switch[data-astro-cid-rutobish] li[data-astro-cid-rutobish]+li[data-astro-cid-rutobish]:before{content:"/";color:var(--color-line);margin-right:var(--space-2)}.lang-switch[data-astro-cid-rutobish] a[data-astro-cid-rutobish]{color:var(--color-muted);letter-spacing:var(--tracking-label);text-decoration:none}.lang-switch[data-astro-cid-rutobish] a[data-astro-cid-rutobish]:hover{color:var(--color-ink)}.lang-switch[data-astro-cid-rutobish] a[data-astro-cid-rutobish][aria-current]{color:var(--color-ink);font-weight:600}.nav-mobile[data-astro-cid-rutobish]{display:none;position:relative}.nav-mobile[data-astro-cid-rutobish] summary[data-astro-cid-rutobish]{cursor:pointer;font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-ink);border:1px solid var(--color-line);padding:var(--space-2) var(--space-3);background:var(--color-card);font-weight:500;list-style:none}.nav-mobile[data-astro-cid-rutobish] summary[data-astro-cid-rutobish]::-webkit-details-marker{display:none}.nav-mobile[data-astro-cid-rutobish][open] summary[data-astro-cid-rutobish]{border-color:var(--color-blue)}.nav-mobile[data-astro-cid-rutobish] nav[data-astro-cid-rutobish]{right:0;top:calc(100% + var(--space-2));background:var(--color-card);border:1px solid var(--color-line);min-width:240px;position:absolute}.nav-mobile[data-astro-cid-rutobish] ul[data-astro-cid-rutobish]{padding:var(--space-2);flex-direction:column;margin:0;list-style:none;display:flex}.nav-mobile[data-astro-cid-rutobish] a[data-astro-cid-rutobish]{padding:var(--space-3);display:block}@media (width<=860px){.nav-desktop[data-astro-cid-rutobish]{display:none}.nav-mobile[data-astro-cid-rutobish]{display:block}}.site-footer[data-astro-cid-nns7i3if]{background:var(--color-card);border-top:1px solid var(--color-line);margin-top:var(--space-16)}.columns[data-astro-cid-nns7i3if]{gap:var(--space-8);padding-block:var(--space-8);grid-template-columns:1.3fr .7fr 1.3fr;display:grid}.col[data-astro-cid-nns7i3if]{gap:var(--space-3);flex-direction:column;display:flex}.tagline[data-astro-cid-nns7i3if]{max-width:30ch;font-size:15px;line-height:1.6}.address[data-astro-cid-nns7i3if]{font-family:var(--font-mono);font-size:var(--text-label);color:var(--color-secondary);flex-direction:column;line-height:1.7;display:flex}nav[data-astro-cid-nns7i3if] ul[data-astro-cid-nns7i3if]{gap:var(--space-2);flex-direction:column;padding:0;list-style:none;display:flex}nav[data-astro-cid-nns7i3if] a[data-astro-cid-nns7i3if]{font-family:var(--font-mono);font-size:var(--text-small);color:var(--color-secondary);text-decoration:none}nav[data-astro-cid-nns7i3if] a[data-astro-cid-nns7i3if]:hover{color:var(--color-ink)}.provenance-text[data-astro-cid-nns7i3if]{font-size:var(--text-small);color:var(--color-secondary);font-style:italic;line-height:1.6}.logos[data-astro-cid-nns7i3if]{align-items:center;gap:var(--space-6);flex-wrap:wrap;display:flex}.logos[data-astro-cid-nns7i3if] a[data-astro-cid-nns7i3if]{opacity:1;align-items:center;line-height:0;transition:opacity .15s;display:inline-flex}.logos[data-astro-cid-nns7i3if] a[data-astro-cid-nns7i3if]:hover,.logos[data-astro-cid-nns7i3if] a[data-astro-cid-nns7i3if]:focus-visible{opacity:.65}.logos[data-astro-cid-nns7i3if] img[data-astro-cid-nns7i3if]{width:auto;height:34px}.logos[data-astro-cid-nns7i3if] img[data-astro-cid-nns7i3if].tu{height:44px}.brand-col[data-astro-cid-nns7i3if] img[data-astro-cid-nns7i3if]{width:57px;height:45px}.bottom[data-astro-cid-nns7i3if]{border-top:1px solid var(--color-line-soft);padding-block:var(--space-4);justify-content:space-between;gap:var(--space-4);font-family:var(--font-mono);font-size:var(--text-label);color:var(--color-muted);flex-wrap:wrap;display:flex}@media (width<=860px){.columns[data-astro-cid-nns7i3if]{grid-template-columns:1fr}}.hero[data-astro-cid-ge2uvauf]{background:var(--color-ink);color:var(--color-on-dark);flex-direction:column;justify-content:center;display:flex;position:relative;overflow:hidden}.hero[data-astro-cid-ge2uvauf]:before{content:"";background:linear-gradient(var(--angle-plane), transparent 0 62%, #2f5fbf8c 62% 74%, #59c6d859 74% 80%, transparent 80%);position:absolute;inset:0}.hero--full[data-astro-cid-ge2uvauf]{min-height:calc(100svh - var(--nav-height))}.plane-photo[data-astro-cid-ge2uvauf]{object-fit:cover;opacity:.2;width:100%;height:100%;mask-image:linear-gradient(var(--angle-plane), #000 0 62%, transparent 62%);position:absolute;inset:0}.inner[data-astro-cid-ge2uvauf]{gap:var(--space-6);width:100%;padding-block:var(--space-14);flex-direction:column;display:flex;position:relative}.eyebrow[data-astro-cid-ge2uvauf]{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.22em;text-transform:uppercase;color:var(--color-cyan);font-weight:500}h1[data-astro-cid-ge2uvauf]{font-size:var(--text-h1);text-wrap:balance;max-width:22ch;font-weight:600;line-height:1.08}.hero--full[data-astro-cid-ge2uvauf] h1[data-astro-cid-ge2uvauf]{font-size:var(--text-display);line-height:1.02}.lead[data-astro-cid-ge2uvauf]{font-size:var(--text-lead);color:var(--color-on-dark-body);max-width:40rem;line-height:1.55}.meta[data-astro-cid-ge2uvauf]{font-family:var(--font-mono);font-size:var(--text-data);color:var(--color-on-dark-caption);line-height:1.7}.actions[data-astro-cid-ge2uvauf]{margin-top:var(--space-2)}.actions[data-astro-cid-ge2uvauf] .btn[data-astro-cid-ge2uvauf]{background:var(--color-sheet);border-color:var(--color-sheet);color:var(--color-ink)}.actions[data-astro-cid-ge2uvauf] .btn[data-astro-cid-ge2uvauf]:hover{background:var(--color-cyan);border-color:var(--color-cyan);color:var(--color-ink)}.scroll-cue[data-astro-cid-ge2uvauf]{align-items:center;gap:var(--space-3);width:100%;padding-bottom:var(--space-6);display:flex;position:relative}.cue-line[data-astro-cid-ge2uvauf]{background:var(--color-cyan);width:56px;height:1px}.cue-label[data-astro-cid-ge2uvauf]{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-on-dark-muted)}
