@font-face{font-family:Josefin Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/josefin-sans-vietnamese-wght-normal.PFa5PiBn.woff2)format("woff2-variations");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:Josefin Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/josefin-sans-latin-ext-wght-normal.D7uTKLaj.woff2)format("woff2-variations");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:Josefin Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/josefin-sans-latin-wght-normal.Y7p7x_b-.woff2)format("woff2-variations");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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-cyrillic-ext-400-normal.g30qAdWV.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-ext-400-normal.Dsrv2Tcn.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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-cyrillic-400-normal.DZqxrq2p.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-400-normal.BTotfTJu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-greek-400-normal._efipK4i.woff2)format("woff2"),url(/_astro/ibm-plex-sans-greek-400-normal.D9ESIMu3.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-vietnamese-400-normal.DG4YqDda.woff2)format("woff2"),url(/_astro/ibm-plex-sans-vietnamese-400-normal.fK1oJ5dG.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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-ext-400-normal.C5H60-Va.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-ext-400-normal.RBey6euL.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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-400-normal.CDDApCn2.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-400-normal.CYLoc0-x.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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-cyrillic-ext-500-normal.Cs5J6C77.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-ext-500-normal.DB5PtV2g.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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-cyrillic-500-normal.CocWQlwt.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-500-normal.ByOcLdNv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-greek-500-normal.JMMifIXV.woff2)format("woff2"),url(/_astro/ibm-plex-sans-greek-500-normal.CuWXN6rf.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-vietnamese-500-normal.e4dixQRQ.woff2)format("woff2"),url(/_astro/ibm-plex-sans-vietnamese-500-normal.BEb3_waV.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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-latin-ext-500-normal.DakdToA3.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-ext-500-normal.D0aIdm-b.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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-latin-500-normal.6ng42L7E.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-500-normal.BgVn5rGT.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 Sans Condensed;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAAVMABAAAAAACewAAATyAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGx4cKAZgAFQIPgmCcxEQCoMsgycLDgABNgIkAxgEIAWDcgdGDIMSG70IKD4Nb4xR9bNkEjvVXTwVhAULA61Ovl68j6VgA7cVPN/bfZ373vvSgl1TPXAPuT1LORaUiZWLmcN1uP8+u3cCeS7w4UMB718gbiC0V0VNAW08cVulzAsP8Mfy/cOIADy6sw68W9JsRAMukaQNMISWi4EDnUCJ+63/CUIfZoxQlBtcnCSSQACyDcTbXB0Kl257I7TwjJv/+/l641xfAEWDDHy2CQ3w3VUERlv18QGOBvozQHb88YBmP5A+AH2dpULm5hwFIaf73RMRIIjFIp212lbwxgAkAR5Rlizq0tD7oZU5CARwv25URLbRoDZEOgHoZf5sGQsFoQJQIY/XozRKAxpQAAA9xnXo4gLYr9o/6eC4izRHkJ0AZdQtYFOAAjTQgkaAFgwuIIwfhQEi2I61n5JAF4Xk291HLixstdZNuTy2Yk2GmTWarYaov3LtVEA4GWHpAZ6yADyVIaxuteDzWd6AsyEC/TvvxWXLmeR/PnVuvBFAj+sXCXEQnZMql0GRUA4heYJIaAc1rtO05s6ULtRtvceobms4MTTKTZqh51cwfYSMnEGnyaF78EngbldcYoB1deWJhKFh49VHaAinOHiKFp/5MzxODXKd3tjZ1MnXT+Nyq1r2CAI6+YP+p120c02YaeHxvi41qd3J6BeHPp83r3D6WdaWyuoWRUY8bEDZFIGvr8o1Pb0L7iMelGoFSEmA4DbrNCfJwfGC9UDtcTlzYOrHuuKELlUkAk5NS6dTRUz5X4sgaPwEifMkKwWAF4AwoAEX0AcAYIBPIgCAgDHV2wHe8CSPoJmgv5Zfar4SGlbjMthXIgdfwuFXVD82/7wJsf6x7EdwcCV0xAjve7T+L+Sn6M+XqvB0/+k5+Wc/7Kb5jR9qbgk/33ks3e4o6fce4XF1VHZ0Jmf5byWBc5lhfTqZv9zlYf3SqPjoVNZ62JTJr+t7mXUDcIsPP4FEqIPwxQn91Ce6nAhdFPeGJtHvIvj4Ce/Opn1X+T52vGOpVhM1R5DFsbQ3pREcSDCdIIqFPiJaVOrGVe2TMW/48f2p+DH8OR/ePz5r3OIYtOpbkT+0qRwxSl0sTqT+eqmBGdAPc6AP5tsI4hJBOR8lNiXJOiA8+b7jextU/wv6O/ChVzUAfPyvwya6TwUUQAEgYOR/zCEP0B5wYVHyyjk258u2oCohF9wtgJfBvJjJM3xaEBSqCgwC+JnKDTEBYGQoVYlQGIxEEeWfRON6kRgaLZd4aGWixEuhclu0qsF0K6tgQZ6i+kVGLJmEghXLpHOZNEMyz5Jxsn40taqUqdNoBrOhxZA5y8rNmzNKNBAzbtWMIUvaMUs8vasdlShURvJg7cHag7WDwQPMKCSbSJ66epd1LzaMZvlCepxYsPmzHOM/8S5UqliJGjbRGP7qkgUSW5MZMzDmWEY2ZiBzrNF/UaIAIHn1lk94ARGFFi3Gt2RuUhG7aopGpcwMHy1VCPLdIoRR+S49L4KB9x/pokixdC2BP3/UFmWQthiuZtwAK5R3Cb0UK5Wt9dXVKtOtGa1G/l2GSzabq0G23OVhrm4aoxQ57mUIlSV6l49axXKkaC53+ZmpVSmZJaoBRqhgk3NXkDJ5UrURlVqIngqqVJoWWh9mlWF1tSNVb4VbEnz48gn+Mz3vdNCSLDbEJfPJMRQHSzjjRYFFKA4Wk3koZl8CAAAA)format("woff2"),url(data:font/woff;base64,d09GRgABAAAAAASAAA0AAAAABZAAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHUE9TAAABMAAAAB4AAAAeRHRMdUdTVUIAAAFQAAAAJwAAACi4/LjqT1MvMgAAAXgAAABTAAAAYGkQn8djbWFwAAABzAAAADwAAABUAMohV2dhc3AAAAIIAAAAEAAAABAAGAAhZ2x5ZgAAAhgAAADEAAAAxou2WeNoZWFkAAAC3AAAADYAAAA2Gs1J62hoZWEAAAMUAAAAHQAAACQHdQKfaG10eAAAAzQAAAAXAAAAGAZaAElsb2NhAAADTAAAAA4AAAAOAI0AjW1heHAAAANcAAAAHAAAACAAGADAbmFtZQAAA3gAAADYAAAB8iewRJhwb3N0AAAEUAAAADAAAABG/5SrMAABAAAACgAcABwAAURGTFQACAAEAAAAAP//AAAAAAAAeNpjYGRgYOBiUANCJhc3nxAGoZzEkjwGPgYQYAER//+DSABaSQVVAHjaLYUxDkBAFAXnv10aVC7wC6VWpxCdiF7lQCqJq6hcDsJkJkNUYRsBtGoGxu+20FoDypI0UeAR3sTP0E9uHfgR8quyOpqVju0AijoBRzef5QjZAHjaY2BgYAJiZiAWAZKMYJqFwQFI8zBwAOVYgCxeBgWGBQpb/v8HspF5jP+//n/8P/V+AEgfAgAAknEOOQABAAMACAAKABAABf//AA942mNgYlBgYGDsYOZhYGZgZ2AQVhRUVBVUFlRgzPg3g1HnAzPPny82TFP+5gAVMWj+/8LEzXSMwZyBgVVJzdTEzFzZ1Nie0ZRd2VTRjtHURE1ZiV3djtHYSFSEjd1YVJmfUdTcWFSRj1FURMzYyMxcnI+RUS0hiZsroDrCLGo9oxMXt4GNp7GhcozZFqjgmn8HubgtHTVsZAxVY3iCg0U0RRwd5TnYHAXVhU0N7A11NRaLaItChVSFzIwUlQz1tQCm6yZiAAEAAAABAMQoT70oXw889QAJA+gAAAAA2zdCSgAAAADc58KH/w//CgRiBGYAIAAJAAIAAAAAAAB42mNgZGBgYfz3FkjO+c//n58lCSiCCtgAgToFGwAAAHjaY1zBoMAAAlcgmMmMQRNEAwAsQwOnAAAAABUAFQAVABUAYwBjAAB42mNgZGBgYGMIYWBnyALSIB4CsDAwAgAS+ADZeNqVkDWCAkEUBWvdN9y4D7Du7u6ORLi7czGORswLPhYyWt9qphuYJcYEY5NzgH9s23iM9bFJ43GWaRtPcEnLeJJzGsZTrBAynmadXeNlESSo6CxwzIbOMmFKJBVXxOuUxRm985SIq/7BPa88cc0bn6pEafBDkJw6b8jrHWGNb+XjVMmoUuJfUQmZUB3Hlnw75nA9i+t5XM8URTFRkRt2muOkZzkZ7Z+GoxH/RRkKNNE+EUf7h2ObTbY4wvVc6qKkvnXxFRmdbmBCZkVRZNS7hrysdwBnA0preNpjYGIAg/8LGWwYsAE2IGZkZGJgZmRmZGEvzcs0MDBwAdFGBk4mEL6jAQDHVAhr)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 Sans Condensed;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-condensed-vietnamese-400-normal.89JuSpTM.woff2)format("woff2"),url(/_astro/ibm-plex-sans-condensed-vietnamese-400-normal._5OjdirJ.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 Sans Condensed;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-condensed-latin-ext-400-normal.BJ9nxTJg.woff2)format("woff2"),url(/_astro/ibm-plex-sans-condensed-latin-ext-400-normal.DKB-SAek.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 Sans Condensed;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-condensed-latin-400-normal.DKyD6XsY.woff2)format("woff2"),url(/_astro/ibm-plex-sans-condensed-latin-400-normal.5i361Byk.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{--neutral-0:#fff;--neutral-25:#fafbfb;--neutral-50:#f1f4f8;--neutral-75:#edf1f6;--neutral-200:#d8dee4;--neutral-300:#aebdcb;--neutral-500:#5e7c99;--neutral-600:#4f6b86;--neutral-700:#414c58;--neutral-900:#1b2a3a;--neutral-950:#101d2b;--neutral-1000:#000;--blue-50:#e4eefc;--blue-100:#cfe4ff;--blue-200:#9dbfe9;--blue-300:#78b2ff;--blue-400:#4f88de;--blue-500:#3775d6;--blue-600:#2f66c0;--blue-700:#2656a6;--ice-50:#f3f7fa;--ice-100:#ecf2f8;--ice-150:#e2ebf4;--ice-200:#dbe6f0;--ice-250:#cfdfed;--ice-300:#c3d5e6;--ice-350:#b9cde0;--ice-400:#aac3db;--ice-450:#9dbbd6;--ice-500:#8cb0d0;--ice-550:#7fa6c9;--ice-600:#6e9ac2;--ice-700:#5a7e9f;--ice-800:#3f6690;--green-600:#2e8b57;--surface-page:var(--neutral-25);--surface-raised:var(--neutral-0);--surface-bar:color-mix(in srgb, var(--neutral-25) 86%, transparent);--surface-hero:radial-gradient(52% 70% at 80% 46%, color-mix(in srgb, var(--neutral-0) 95%, transparent), transparent 72%), linear-gradient(180deg, var(--neutral-50), var(--neutral-75));--text-strong:var(--neutral-900);--text-body:var(--neutral-700);--text-muted:var(--neutral-600);--text-accent:var(--blue-600);--text-inverse:var(--neutral-0);--text-print:var(--neutral-1000);--line:var(--neutral-200);--line-soft:var(--neutral-300);--line-strong:var(--neutral-900);--accent:var(--blue-500);--accent-soft:var(--blue-400);--accent-strong:var(--blue-600);--accent-strong-hover:var(--blue-700);--fill-accent:linear-gradient(180deg, var(--accent), var(--accent-strong));--fill-accent-hover:linear-gradient(180deg, var(--accent-strong), var(--accent-strong-hover));--pass:var(--green-600);--action:var(--neutral-900);--action-hover:var(--neutral-950);--shadow-raised:0 10px 24px -16px color-mix(in srgb, var(--neutral-900) 45%, transparent);--glow-action:0 0 0 1px color-mix(in srgb, var(--accent) 35%, transparent), 0 10px 28px -8px color-mix(in srgb, var(--accent) 55%, transparent);--glow-action-hover:0 0 0 1px color-mix(in srgb, var(--accent) 50%, transparent), 0 12px 30px -8px color-mix(in srgb, var(--accent) 65%, transparent);--decor-bubble:var(--neutral-500);--font-display:"Josefin Sans Variable", "Josefin Sans", "Futura", sans-serif;--font-body:"IBM Plex Sans", system-ui, -apple-system, sans-serif;--font-cond:"IBM Plex Sans Condensed", "IBM Plex Sans", sans-serif;--font-code:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--measure:66ch;--gutter:clamp(16px, 4vw, 48px);--page:1080px;--rail:200px;--section-gap:clamp(64px, 9vw, 120px);--bar:64px;--stroke:1.25px;--radius:2px;--radius-control:8px;--radius-tile:9px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;background:var(--surface-page)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--surface-page);color:var(--text-body);font-family:var(--font-body);font-feature-settings:"kern" 1, "liga" 1;-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.6}a{color:var(--text-strong);border-bottom:1px solid var(--line-soft);text-decoration:none;transition:border-color .16s}a:hover{border-color:var(--line-strong)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--radius)}p{margin:0}ul{margin:0;padding:0;list-style:none}svg{display:block}.icon{stroke:currentColor;fill:none;width:1em;height:1em;stroke-width:var(--stroke);stroke-linecap:round;stroke-linejoin:round;flex:none}.icon *{vector-effect:non-scaling-stroke}.icon .accent{color:var(--accent)}.wrap{max-width:var(--page);padding:0 var(--gutter);margin:0 auto}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.skip{left:var(--gutter);background:var(--action);color:var(--text-inverse);z-index:20;border:0;padding:10px 14px;position:absolute;top:-100px}.skip:focus-visible{top:12px}.bubbles{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.bubbles span{width:var(--size);height:var(--size);left:var(--x);top:var(--y);border:1px solid color-mix(in srgb, var(--decor-bubble) 10%, transparent);background:radial-gradient(circle at 32% 30%, color-mix(in srgb, var(--decor-bubble) 5%, transparent), color-mix(in srgb, var(--decor-bubble) 1.5%, transparent) 55%, color-mix(in srgb, var(--decor-bubble) 0%, transparent) 72%);opacity:0;animation:bubble-in 1.8s ease-out var(--delay,0s) forwards, bubble-drift var(--dur,36s) ease-in-out var(--delay,0s) infinite alternate;will-change:transform, opacity;border-radius:50%;display:block;position:absolute}.bubbles span:first-child{--size:420px;--x:-12%;--y:34%;--dur:44s;--delay:.2s}.bubbles span:nth-child(2){--size:200px;--x:60%;--y:-5%;--dur:34s;--delay:.6s}.bubbles span:nth-child(3){--size:300px;--x:82%;--y:42%;--dur:40s;--delay:.9s}.bubbles span:nth-child(4){--size:160px;--x:36%;--y:62%;--dur:30s;--delay:1.2s}.bubbles span:nth-child(5){--size:360px;--x:12%;--y:74%;--dur:46s;--delay:.4s}.bubbles span:nth-child(6){--size:120px;--x:70%;--y:80%;--dur:28s;--delay:1.5s}@keyframes bubble-in{to{opacity:1}}@keyframes bubble-drift{0%{transform:translate(0,0)scale(1)}to{transform:translate(-3vw,-7vh)scale(1.06)}}@media (prefers-reduced-motion:reduce){.bubbles span{opacity:1;animation:none}}@media (width<=640px){.hero-credential .divider,.bubbles span:first-child,.bubbles span:nth-child(5){display:none}}.top,main,.foot{z-index:1;position:relative}.top{z-index:5;border-bottom:1px solid var(--line);background:var(--surface-bar);backdrop-filter:blur(10px);position:sticky;top:0}.section,.hero,.tech-hero{scroll-margin-top:calc(var(--bar) + 8px)}.top .wrap{min-height:var(--bar);align-items:center;gap:clamp(16px,2.4vw,28px);display:flex}.mark{color:var(--text-strong);border:0;margin-right:auto;padding:6px 0;transition:color .16s;display:inline-flex}.mark:hover{color:var(--accent-strong)}.monogram{fill:currentColor;width:auto;height:20px;display:block}.nav{align-items:center;gap:clamp(14px,2.2vw,28px);font-size:14.5px;display:flex}.nav a:not(.btn){min-height:var(--bar);color:var(--text-body);border:0;align-items:center;transition:color .16s;display:flex;position:relative}.nav a:not(.btn):after{content:"";background:var(--accent);height:2px;transition:transform .2s;position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.nav a:not(.btn):hover,.nav a[aria-current=page],.nav a[aria-current=location]{color:var(--text-strong)}.nav a[aria-current=page]:after,.nav a[aria-current=location]:after{transform:scaleX(1)}.nav a:not(.btn):focus-visible{outline:0}.nav a:not(.btn):focus-visible>span{outline:2px solid var(--accent);outline-offset:4px;border-radius:var(--radius)}.top-actions{align-items:center;gap:10px;display:flex}.nav-toggle{display:none}.btn{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-raised);color:var(--text-strong);box-shadow:var(--shadow-raised);align-items:center;gap:10px;padding:17px 26px;font-size:16.5px;font-weight:500;line-height:1;transition:background-color .16s,border-color .16s,box-shadow .16s;display:inline-flex}.btn .icon{font-size:17px}.btn:hover{border-color:var(--accent)}.btn:focus-visible{outline-offset:3px}.btn-primary{background:var(--action);border-color:var(--action);color:var(--text-inverse);box-shadow:var(--glow-action)}.btn-primary:hover{background:var(--action-hover);border-color:var(--action-hover);box-shadow:var(--glow-action-hover)}.btn-accent{background:var(--fill-accent);border-color:var(--accent-strong);color:var(--text-inverse);box-shadow:var(--glow-action)}.btn-accent:hover{background:var(--fill-accent-hover);border-color:var(--accent-strong-hover);box-shadow:var(--glow-action-hover)}.btn-sm{gap:8px;padding:11px 18px;font-size:14.5px}.btn-sm .icon{font-size:15px}.btn .icon-after{transition:transform .16s}.btn:hover .icon-after{transform:translate(3px)}.btn-accent:hover .icon-after{transform:translate(2px,-2px)}.hero{border-bottom:1px solid var(--line);background:var(--surface-hero);padding:clamp(40px,6vw,72px) 0;overflow-x:clip}.hero .wrap{grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);align-items:center;gap:clamp(24px,4vw,48px);display:grid}.hero-name{color:var(--text-strong);margin:0 0 28px}.wordmark{fill:currentColor;width:100%;max-width:560px;height:auto;display:block}.hero-credential{font-family:var(--font-cond);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:10px 20px;margin-bottom:28px;font-size:15px;display:flex}.hero-credential .divider{background:var(--line);width:1px;height:26px}.hero-lead{max-width:44ch;color:var(--text-strong);margin-bottom:16px;font-size:clamp(19px,1.7vw,23px);line-height:1.5}.hero-sub{max-width:54ch;color:var(--text-body);margin-bottom:32px}.hero-actions{flex-wrap:wrap;align-items:center;gap:12px 16px;display:flex}.badge{border:1px solid var(--accent-strong);border-radius:var(--radius);color:var(--text-accent);font-family:var(--font-cond);letter-spacing:.06em;text-transform:none;grid-template-columns:auto auto auto;align-items:center;margin:0;font-size:12.5px;line-height:1;display:inline-grid}.badge>span{padding:7px 10px}.badge .badge-check{color:var(--pass);padding:0 6px;display:inline-flex}.badge .badge-check .icon{stroke-width:1.75px;font-size:15px}.badge .badge-year{background:var(--accent-strong);color:var(--text-inverse);padding:7px 9px}.hero-art{justify-self:end;width:min(100%,520px)}@media (width>=901px){.hero-art{--bleed:clamp(0px, calc((100vw - var(--page)) / 2 + var(--gutter) - 16px), 150px);width:calc(100% + var(--bleed));max-width:none;margin-right:calc(-1 * var(--bleed))}}.molar{width:100%;height:auto;display:block}.molar .ink{fill:none;stroke:url(#m-rim);stroke-width:1.6px;stroke-linejoin:round}.molar .crown{fill:none;stroke:url(#m-crown);stroke-width:3.2px;stroke-linecap:round}.molar .shine-light{fill:var(--neutral-0)}.molar .shine-under{fill:var(--ice-400);opacity:.7}.molar .shine-fold{fill:url(#m-fold)}.molar .ring{fill:none;stroke:url(#m-ring);stroke-width:1.2px}.molar .ring-dot{fill:var(--ice-500)}.molar .plus{fill:none;stroke:var(--ice-450);stroke-width:2.6px;stroke-linecap:round}.molar .grid{fill:var(--ice-350)}.molar .ribbon-band{fill:url(#m-ribbon)}.molar .ribbon-edge{fill:none;stroke:var(--ice-550);stroke-width:1px;stroke-opacity:.7}.molar .ribbon-shine{fill:none;stroke:var(--neutral-0);stroke-width:1.4px;stroke-opacity:.9}.molar .ribbon-back{opacity:.6}.molar .glint{fill:none;stroke:var(--neutral-0);stroke-width:3px;stroke-linecap:round;opacity:0}.molar .shine-reveal,.molar .ribbon-reveal{fill:none;stroke:var(--neutral-0);stroke-linecap:butt}.molar .shine-reveal{stroke-width:9px}.molar .ribbon-reveal{stroke-width:40px}html.motion .hero-name .line,html.motion .tech-title .line,html.motion .hero-fade,html.motion .molar .rv,html.motion .tech-art .rv{visibility:hidden}.section{padding:var(--section-gap) 0;border-bottom:1px solid var(--line)}.section:last-of-type{border-bottom:0}.section .wrap{grid-template-columns:var(--rail) minmax(0, 1fr);gap:clamp(24px,4vw,56px);display:grid}.rail{top:calc(var(--bar) + 32px);border-right:1px solid var(--line);flex-direction:column;align-self:start;gap:18px;min-height:140px;padding-right:24px;display:flex;position:sticky}.rail .icon{color:var(--text-strong);font-size:44px}.rail h2{font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;color:var(--text-strong);margin:0;font-size:19px;font-weight:300;line-height:1.3}.rail h2:after{content:"";background:var(--accent);width:30px;height:2px;margin-top:14px;display:block}.content{max-width:var(--measure)}.content-wide{max-width:none}.prose{color:var(--text-body);font-size:18px;line-height:1.65}.prose+.prose{margin-top:1.1em}.entry{border-left:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;gap:4px 24px;padding-left:20px;display:grid;position:relative}.entry+.entry{margin-top:36px}.entry>*{grid-column:1}.entry h3{color:var(--text-strong);margin:0;font-size:19px;font-weight:500;line-height:1.3}.entry .status{font-family:var(--font-cond);color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin-top:6px;font-size:12.5px;font-weight:400;line-height:1;display:block}.entry .when,.entry .url{font-family:var(--font-cond);letter-spacing:.04em;color:var(--text-muted);white-space:nowrap;grid-area:1/2;padding-top:3px;font-size:15px}.entry .url{letter-spacing:.03em;border-color:#0000;align-items:center;gap:4px;display:inline-flex}.entry .url:hover{border-color:var(--accent)}.entry .org,.entry .kind{color:var(--text-muted);font-size:15.5px}.entry .detail{color:var(--text-body);align-items:center;gap:6px;font-size:15px;display:inline-flex}.entry .detail .icon{color:var(--pass);stroke-width:1.75px}.entry .summary{max-width:62ch;margin-top:8px;font-size:16px;line-height:1.55}.entry ul{gap:8px;margin-top:14px;display:grid}.entry li{padding-left:18px;font-size:16px;line-height:1.55;position:relative}.entry li:before{content:"";background:var(--accent);width:8px;height:1px;position:absolute;top:.75em;left:0}.timeline{position:relative}.timeline .entry{border-left-color:#0000}.timeline .entry:before{content:"";background:var(--surface-page);border:1px solid var(--accent);width:7px;height:7px;transform:scale(var(--dot,1));border-radius:50%;position:absolute;top:9px;left:-3.5px}.timeline-rule{background:var(--accent);transform-origin:top;width:1px;position:absolute;top:0;bottom:0;left:0}.group+.group{margin-top:36px}.group-title{font-family:var(--font-cond);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin:0 0 12px;font-size:13.5px;font-weight:400}.flow{color:var(--text-strong);flex-wrap:wrap;gap:6px 0;font-size:18px;line-height:1.5;display:flex}.flow li{align-items:center;display:inline-flex}.flow li:not(:last-child):after{content:"";background:var(--line-soft);border-radius:50%;width:4px;height:4px;margin:0 14px;display:inline-block}.bridge{gap:20px;display:grid}.bridge .prose{max-width:56ch}.bridge-links{flex-wrap:wrap;gap:12px 28px;font-size:15px;display:flex}.bridge-links a{color:var(--text-accent);border:0;align-items:center;gap:6px;display:inline-flex}.bridge-links a:hover{color:var(--text-strong)}.tech-hero{border-bottom:1px solid var(--line);background:var(--surface-hero);padding:clamp(36px,5vw,64px) 0 clamp(40px,5vw,64px);overflow-x:clip}.tech-hero .wrap{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:clamp(20px,3vw,40px);display:grid}.tech-copy{container-type:inline-size}.eyebrow{font-family:var(--font-display);letter-spacing:.22em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:18px;margin-bottom:26px;font-size:14.5px;display:flex}.eyebrow:before{content:"";background:var(--accent);flex:none;width:36px;height:2px}.eyebrow a{color:inherit;border:0}.eyebrow a:hover{color:var(--text-strong)}.tech-title{font-family:var(--font-display);letter-spacing:.01em;text-transform:uppercase;color:var(--text-strong);margin:0 0 24px;font-size:clamp(38px,13.3cqi,104px);font-weight:600;line-height:1}.tech-title .line{display:block}.tech-title .amp{color:var(--accent-soft);font-weight:300}.tech-title .ai{color:var(--accent)}.tech-hero .hero-lead{max-width:40ch;color:var(--text-body);margin-bottom:32px}.pillars{border-top:1px solid var(--line);margin-top:40px;padding-top:28px;display:flex}.pillars li+li{border-left:1px solid var(--line);margin-left:16px;padding-left:16px}.pillars a{color:var(--text-strong);border:0;align-items:center;gap:12px;display:flex}.pillars .tile{border:1px solid var(--line);border-radius:var(--radius-tile);background:var(--surface-raised);width:42px;height:42px;box-shadow:var(--shadow-raised);flex:none;place-items:center;transition:border-color .16s;display:grid}.pillars .tile .icon{font-size:22px}.pillars a:hover .tile{border-color:var(--accent)}.pillar-label{font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;font-size:12.5px;line-height:1.6}.pillar-status{font-family:var(--font-cond);letter-spacing:.1em;color:var(--text-muted);margin-top:2px;font-size:11.5px;display:block}@container (width<=519px){.pillars a{flex-direction:column;align-items:flex-start}.pillars li{flex:1 1 0}}@container (width<=419px){.pillars{flex-direction:column;gap:14px}.pillars li+li{border-left:0;margin-left:0;padding-left:0}.pillars a{flex-direction:row;align-items:center}.pillar-label br{display:none}}.tech-art{aspect-ratio:880/740;justify-self:end;width:100%;position:relative;container-type:inline-size}@media (width>=901px){.tech-art{--bleed:clamp(0px, calc((100vw - var(--page)) / 2 + var(--gutter) - 12px), 240px);width:calc(100% + var(--bleed));margin-right:calc(-1 * var(--bleed))}}.ta-stage{width:100%;height:100%;position:absolute;inset:0}.ta-floor ellipse{fill:none;stroke:var(--ice-200);stroke-width:1px}.ta-ring{fill:none;stroke:url(#t-ring);stroke-width:1.2px}.ta-grid{fill:var(--ice-350)}.ta-side{fill:url(#t-side)}.ta-top{fill:url(#t-top)}.ta-rim{fill:none;stroke:var(--neutral-0);stroke-width:2px}.ta-inner{fill:none;stroke:var(--ice-200);stroke-width:1px}.ta-inner-glow{fill:none;stroke:var(--neutral-0);stroke-width:3px}.ta-scene{perspective:120cqi;perspective-origin:50% 46%;position:absolute;inset:0}.ta-panel{transform:rotateY(var(--ry,0deg));border:1px solid color-mix(in srgb, var(--neutral-0) 95%, transparent);background:linear-gradient(155deg, color-mix(in srgb, var(--neutral-0) 94%, transparent), color-mix(in srgb, var(--ice-50) 80%, transparent) 42%, color-mix(in srgb, var(--ice-150) 78%, transparent));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ice-400) 35%, transparent), inset .5cqi .5cqi 1.2cqi color-mix(in srgb, var(--neutral-0) 85%, transparent), 0 3cqi 5cqi -2.6cqi color-mix(in srgb, var(--ice-800) 40%, transparent);border-radius:2.6cqi;position:absolute}.ta-ai{background:linear-gradient(160deg, color-mix(in srgb, var(--neutral-0) 96%, transparent), color-mix(in srgb, var(--blue-50) 93%, transparent) 52%, color-mix(in srgb, var(--ice-250) 94%, transparent));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ice-400) 40%, transparent), inset .6cqi .6cqi 1.4cqi color-mix(in srgb, var(--neutral-0) 90%, transparent), .8cqi 0 0 -.1cqi color-mix(in srgb, var(--ice-250) 95%, transparent), 0 4cqi 6cqi -3cqi color-mix(in srgb, var(--ice-800) 45%, transparent)}.ta-draw{width:100%;height:100%;position:absolute;inset:0}.ta-label{font-family:var(--font-display);letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted);margin:0;font-size:1.35cqi;line-height:1.6;position:absolute;top:3cqi;left:2.4cqi}.ta-label:after{content:"";background:var(--accent);width:3.4cqi;height:.22cqi;margin-top:1.5cqi;display:block}.ta-ai .ta-label{font-size:1.5cqi;top:4cqi;left:3cqi}.ta-title{letter-spacing:.04em;color:var(--text-strong);font-size:2.6cqi;line-height:1.3}.ta-flow .draw{fill:color-mix(in srgb, var(--neutral-0) 55%, transparent);stroke:var(--ice-700);stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round}.ta-flow path.draw{fill:none}.ta-wave-line{fill:none;stroke:var(--ice-300);stroke-width:1px}.ta-tooth-ink{fill:none;stroke:url(#t-rim);stroke-width:1.8px;stroke-linejoin:round}.ta-tooth-crown{fill:none;stroke:url(#t-crown);stroke-width:3.4px;stroke-linecap:round}.ta-brain-line{fill:none;stroke:var(--ice-400);stroke-width:1.2px}.ta-rimlight{fill:none;stroke:var(--neutral-0);stroke-width:6px;stroke-opacity:.75}.ta-gyri{fill:none;stroke:var(--neutral-0);stroke-width:2.4px;stroke-opacity:.32;stroke-linecap:round}.ta-sulci path{fill:none;stroke:var(--neutral-0);stroke-width:1.6px;stroke-opacity:.7;stroke-linecap:round}.ta-mesh path{fill:none;stroke:var(--neutral-0);stroke-width:.9px;stroke-opacity:.9}.ta-nodes path{fill:none;stroke:var(--neutral-0);stroke-width:3.6px;stroke-linecap:round}.ta-nodes .ta-hubs{stroke:var(--blue-50);stroke-width:5.5px}.ta-signal{fill:none;stroke:var(--blue-100);stroke-width:2px;stroke-linecap:round;opacity:0}.ta-hot{aspect-ratio:1;background:radial-gradient(circle, var(--neutral-0) 0 4%, color-mix(in srgb, var(--blue-300) 95%, transparent) 8%, color-mix(in srgb, var(--blue-400) 45%, transparent) 20%, color-mix(in srgb, var(--blue-400) 12%, transparent) 42%, transparent 68%);border-radius:50%;width:10cqi;margin:-5cqi 0 0 -5cqi;position:absolute}.ta-code-body{font-family:var(--font-code);color:var(--text-body);justify-items:start;font-size:1.45cqi;line-height:1.7;display:grid;position:absolute;top:2.4cqi;left:2.2cqi}.ta-prompt{color:var(--text-strong);margin-bottom:1.2cqi;font-size:1.8cqi}.ta-line{margin-left:1.9cqi}.ta-cursor{background:var(--accent);width:1.1cqi;height:.22cqi;margin:1.4cqi 0 0 1.9cqi}.ta-sphere{aspect-ratio:1;background:radial-gradient(circle at 34% 30%, var(--neutral-0) 0 9%, var(--ice-100) 28%, var(--ice-250) 68%, var(--ice-400));box-shadow:inset -.4cqi -.6cqi 1cqi color-mix(in srgb, var(--ice-550) 30%, transparent), 0 1.4cqi 2cqi -1cqi color-mix(in srgb, var(--ice-800) 30%, transparent);border-radius:50%;position:absolute}.ta-s3{background:radial-gradient(circle at 35% 30%, var(--neutral-0) 0 8%, var(--blue-50) 20%, var(--blue-200) 60%, var(--blue-400));opacity:.92}.notfound{padding:clamp(64px,12vw,160px) 0}.notfound h1{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--text-strong);margin:0 0 16px;font-size:clamp(38px,5.6vw,64px);font-weight:300}.foot{border-top:1px solid var(--line);padding:48px 0 56px;font-size:15px}.foot .wrap{grid-template-columns:var(--rail) minmax(0, 1fr);gap:clamp(24px,4vw,56px);display:grid}.foot .mark{font-size:14px}.contact{gap:10px;display:grid}.contact li{align-items:center;gap:12px;display:flex}.contact .icon{color:var(--accent);font-size:18px}.contact a{border:0}.contact a:hover{border-bottom:1px solid var(--line-strong)}.foot-meta{color:var(--text-muted);flex-wrap:wrap;gap:12px 28px;margin-top:28px;font-size:14px;display:flex}.foot-meta a{color:var(--text-body);border:0}.foot-meta a:hover{color:var(--text-strong)}@media (width<=900px){:root{--rail:100%}.hero .wrap{grid-template-columns:1fr}.hero-art{order:-1;justify-self:center;width:min(100%,300px);margin-bottom:-8px}.tech-hero .wrap{grid-template-columns:1fr}.tech-art{order:-1;justify-self:center;width:min(100%,460px)}.section .wrap,.foot .wrap{grid-template-columns:1fr}.rail{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;align-items:center;gap:16px;min-height:0;margin-bottom:8px;padding-bottom:20px;padding-right:0;position:static}.rail .icon{font-size:30px}.rail h2{font-size:16px}.rail h2 br{display:none}}@media (width<=640px){body{font-size:16px}.nav{display:none}.nav[data-open=true]{left:0;right:0;top:var(--bar);padding:8px var(--gutter) 24px;background:var(--surface-page);border-bottom:1px solid var(--line);z-index:10;gap:0;font-size:17px;display:grid;position:absolute}.nav[data-open=true] a:not(.btn){min-height:48px}.nav[data-open=true] a:not(.btn):after{width:24px;bottom:8px;right:auto}.nav-toggle{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-raised);box-shadow:var(--shadow-raised);color:var(--text-strong);font:inherit;cursor:pointer;align-items:center;gap:8px;padding:11px 14px;font-size:14.5px;font-weight:500;line-height:1;display:inline-flex}.nav-toggle[aria-expanded=true] .icon{transform:rotate(180deg)}.entry{grid-template-columns:1fr}.entry .when,.entry .url{grid-area:auto/1;padding-top:0}.flow{font-size:17px}}@media print{.top,.hero-actions,.nav-toggle,.bridge-links,.hero-art,.tech-art,.pillars,.bubbles,.skip{display:none!important}html.motion .hero-name .line,html.motion .tech-title .line,html.motion .hero-fade,html.motion .molar .rv{visibility:visible}body{color:var(--text-print);font-size:11pt}.section{break-inside:avoid;padding:18pt 0}.rail{position:static}a{color:var(--text-print);border:0}.entry .url:after{content:" (" attr(href) ")";font-size:9pt}}
