@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-vietnamese-wdth-normal.rJmnGBSt.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:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-ext-wdth-normal.7khWdh9v.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:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-wdth-normal.DY7AcnAa.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:"Source Serif 4";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-serif-4-latin-400-normal.DJ5YJwmz.woff2)format("woff2"),url(/assets/source-serif-4-latin-400-normal.Dn3IlU-Z.woff)format("woff")}@font-face{font-family:"Source Serif 4";font-style:italic;font-display:swap;font-weight:400;src:url(/assets/source-serif-4-latin-400-italic.0j97Jm6B.woff2)format("woff2"),url(/assets/source-serif-4-latin-400-italic.Dv9jnFA_.woff)format("woff")}@font-face{font-family:"Source Serif 4";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-serif-4-latin-600-normal.DouSKlru.woff2)format("woff2"),url(/assets/source-serif-4-latin-600-normal.DMD1h6_f.woff)format("woff")}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--night:#0f1d21;--deep:#15282c;--rule:#2a4549;--paper:#ece6d9;--haze:#9db1b0;--signal:#f2b544;--display:"Archivo Variable", "Arial Narrow", system-ui, sans-serif;--serif:"Source Serif 4", Georgia, "Times New Roman", serif;--mono:ui-monospace, "Cascadia Mono", Consolas, monospace;--s-sm:.875rem;--s-ui:1rem;--s-body:1.125rem;--s-lead:1.3125rem;--s-h3:1.5rem;--s-h2:clamp(1.75rem, 3vw, 2.25rem);--s-h1:clamp(2.5rem, 5.5vw, 4.5rem);--gutter:clamp(16px, 4vw, 64px)}*{box-sizing:border-box}html{background:var(--night);scroll-padding-top:96px}body{background:var(--night);color:var(--paper);font:400 var(--s-body)/1.7 var(--serif);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}:focus-visible{outline:2px solid var(--signal);outline-offset:3px;border-radius:2px}main:focus{outline:none}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{left:var(--gutter);z-index:10;background:var(--paper);color:var(--night);font:600 var(--s-ui)/1 var(--display);border-radius:2px;padding:12px 18px;text-decoration:none;position:absolute;top:12px;transform:translateY(-200%)}.skip:focus{transform:none}::selection{background:var(--signal);color:var(--night)}.wrap{max-width:1440px;padding-inline:var(--gutter);margin:0 auto}.ui{font-family:var(--display);font-stretch:100%}.bar{z-index:5;background:color-mix(in srgb, var(--night) 90%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0}.bar .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 32px;padding-block:20px;display:flex}@media (width<=700px){.bar{position:static}html{scroll-padding-top:0}}.logo{font:650 1.0625rem/1 var(--display);letter-spacing:.01em;font-stretch:118%;text-decoration:none}.nav{font:450 var(--s-ui)/1.4 var(--display);flex-wrap:wrap;align-items:center;gap:6px 26px;display:flex}.nav a{color:var(--haze);border-bottom:2px solid #0000;padding-block:4px;text-decoration:none;transition:color .15s}.nav a:hover{color:var(--paper)}.nav a[aria-current=page]{color:var(--paper);border-bottom-color:var(--signal)}h1,h2,h3{font-family:var(--display);text-wrap:balance;margin:0}h1{font-size:var(--s-h1);letter-spacing:-.02em;font-weight:750;font-stretch:112%;line-height:1.02}h2{font-size:var(--s-h2);letter-spacing:-.01em;font-weight:700;font-stretch:108%;line-height:1.1}h3{font-size:var(--s-body);font-weight:650;font-stretch:100%;line-height:1.3}.lede{font-size:var(--s-lead);color:var(--haze);max-width:54ch;margin:0;line-height:1.6}.ctas{flex-wrap:wrap;gap:12px;display:flex}.btn{font:600 var(--s-ui)/1 var(--display);border:1px solid var(--rule);color:var(--paper);border-radius:2px;align-items:center;gap:10px;padding:15px 22px;font-stretch:105%;text-decoration:none;transition:border-color .15s,background-color .15s,color .15s;display:inline-flex}.btn:hover{border-color:var(--paper)}.btn.primary{background:var(--paper);border-color:var(--paper);color:var(--night)}.btn.primary:hover{background:var(--signal);border-color:var(--signal)}.btn .icon{width:18px;height:18px}.go{font:600 var(--s-ui)/1.4 var(--display);text-decoration:underline;-webkit-text-decoration-color:var(--rule);text-decoration-color:var(--rule);text-underline-offset:.35em;text-decoration-thickness:2px;transition:text-decoration-color .15s}.go:hover{-webkit-text-decoration-color:var(--signal);text-decoration-color:var(--signal)}.hero{padding-block:clamp(56px,10vh,120px) clamp(48px,7vh,88px)}.hero-name{font:700 clamp(2rem, 4.4vw, 3.75rem)/1 var(--display);letter-spacing:-.02em;color:var(--signal);margin:0 0 clamp(32px,4.5vw,56px);font-stretch:118%}@media (prefers-reduced-motion:no-preference){.hero-name{animation:.9s cubic-bezier(.2,.7,.2,1) both settle}}.claim{letter-spacing:-.012em;max-width:20ch;font-size:clamp(2.25rem,5.6vw,5rem);font-weight:400;font-stretch:100%;line-height:1.12}.claim span{text-wrap:balance;display:block}.claim .before{color:var(--haze);font-weight:400}.claim .after{color:var(--paper);margin-top:.18em;font-weight:700}@media (prefers-reduced-motion:no-preference){.claim .before{animation:.9s cubic-bezier(.2,.7,.2,1) both settle}.claim .after{animation:.9s cubic-bezier(.2,.7,.2,1) .3s both settle}}@keyframes settle{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.js-anim .band .anim{opacity:0;transition:opacity .7s ease var(--d,0s), transform .9s cubic-bezier(.2,.7,.2,1) var(--d,0s), font-stretch 1.1s cubic-bezier(.65,0,.15,1) var(--d,0s);transform:translateY(18px)}.js-anim .band.in .anim{opacity:1;transform:none}.js-anim .band .band-head h2.anim{font-stretch:72%}.js-anim .band.in .band-head h2.anim{font-stretch:108%}.js-anim .band .codes li.anim{font-stretch:70%}.js-anim .band.in .codes li.anim{font-stretch:116%}.js-anim .band .path:before{transform-origin:0;transition:transform 1.3s cubic-bezier(.65,0,.15,1) .15s;transform:scaleX(0)}.js-anim .band.in .path:before{transform:none}@media (width<=900px){.js-anim .band .path:before{transform-origin:top;transform:scaleY(0)}}.js-anim .band .path li.anim:before{transition:transform .5s cubic-bezier(.3,1.6,.5,1) calc(var(--d,0s) + .3s);transform:scale(0)}.js-anim .band.in .path li.anim:before{transform:none}.hero-foot{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:28px 64px;margin-top:clamp(36px,5vw,56px);display:grid}.hero-foot .lede{color:var(--paper)}@media (width<=860px){.hero-foot{grid-template-columns:minmax(0,1fr)}}.watch{margin-top:clamp(48px,7vw,80px)}.dial{height:24px;position:relative}.dial-ticks{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;display:flex;position:absolute;inset:0}.dial-ticks i{background:var(--rule);align-self:flex-end;width:1px;height:8px}.dial-ticks i:nth-child(6n+1){background:var(--haze);height:16px}.dial-done{height:3px;width:calc(var(--t,0) * 100%);background:color-mix(in srgb, var(--signal) 45%, var(--rule));position:absolute;bottom:-1px;left:0}.dial-now{bottom:-1px;left:calc(var(--t,0) * 100%);background:var(--signal);width:2px;height:30px;margin-left:-1px;display:none;position:absolute}.dial-now:after{content:"";background:var(--signal);border-radius:50%;width:10px;height:10px;position:absolute;top:-8px;left:-4px}.has-time .dial-now{display:block}.dial-hours{font:500 var(--s-sm)/1 var(--display);font-variant-numeric:tabular-nums;color:var(--haze);justify-content:space-between;margin-top:10px;display:flex}.dial-hours span:first-child{margin-left:-2px}.dial-hours span:last-child{margin-right:-2px}.watch-text{font:500 var(--s-ui)/1.5 var(--display);color:var(--haze);margin:20px 0 0}.watch-text time{color:var(--signal);font-variant-numeric:tabular-nums;font-weight:650}.band-link{margin:clamp(32px,4vw,48px) 0 0}@media (width<=600px){.dial-hours span:nth-child(2n){visibility:hidden}}.band{padding-block:clamp(64px,9vw,120px)}.band.deep{background:var(--deep)}.band-head{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:last baseline;gap:16px 64px;margin-bottom:clamp(36px,5vw,56px);display:grid}.band-head p{color:var(--haze);max-width:52ch;margin:0}@media (width<=860px){.band-head{grid-template-columns:minmax(0,1fr)}}.path{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 32px;margin:0;padding:0;list-style:none;display:grid;position:relative}.path:before{content:"";background:var(--rule);height:1px;position:absolute;top:7px;left:0;right:0}.path li{align-content:start;gap:6px;padding-top:36px;display:grid;position:relative}.path li:before{content:"";background:var(--night);border:1px solid var(--haze);border-radius:50%;width:11px;height:11px;position:absolute;top:2px;left:0}.band.deep .path li:before{background:var(--deep)}.path .when{font:500 var(--s-sm)/1.4 var(--display);color:var(--haze);font-variant-numeric:tabular-nums}.path strong{font:650 1.3125rem/1.2 var(--display);font-stretch:104%}.path .where{color:var(--haze);font-size:1rem;line-height:1.6}.path li.now:before,.band.deep .path li.now:before{background:var(--signal);border-color:var(--signal)}.path li.now .when{color:var(--signal)}@media (width<=900px){.path{grid-template-columns:minmax(0,1fr);gap:28px;padding-left:28px}.path:before{width:1px;height:auto;inset:6px auto 6px 5px}.path li{padding-top:0}.path li:before{top:6px;left:-28px}}.layers{grid-template-columns:repeat(auto-fill,minmax(min(100%,380px),1fr));gap:0 56px;margin:0;padding:0;list-style:none;display:grid}.layers li{border-top:1px solid var(--rule);gap:2px;padding-block:18px;display:grid}.layers strong{font:600 var(--s-ui)/1.5 var(--display)}.layers span{color:var(--haze);font-size:1rem;line-height:1.5}.codes{grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));gap:28px 40px;margin:0;padding:0;list-style:none;display:grid}.codes li{font:700 clamp(1.5rem, 3.4vw, 2.75rem)/1.15 var(--display);letter-spacing:-.015em;font-stretch:116%}.codes small{font:500 var(--s-sm)/1.3 var(--display);letter-spacing:0;color:var(--haze);font-stretch:100%;display:block}.closing{grid-template-columns:repeat(2,minmax(0,1fr));gap:56px 96px;display:grid}.closing h2{margin-bottom:18px}.closing p{color:var(--haze);max-width:46ch;margin:0 0 24px}.closing .post-title{font:650 var(--s-h3)/1.25 var(--display);color:var(--paper);margin-bottom:8px;text-decoration:none;display:block}.closing .post-title:hover{text-decoration:underline;-webkit-text-decoration-color:var(--signal);text-decoration-color:var(--signal);text-decoration-thickness:2px}@media (width<=860px){.closing{grid-template-columns:minmax(0,1fr)}}.page-head{padding-block:clamp(56px,9vw,112px) clamp(40px,6vw,72px)}.page-head h1{max-width:18ch;margin-bottom:24px}@media (prefers-reduced-motion:no-preference){.page-head h1{animation:.9s cubic-bezier(.65,0,.15,1) both open}}@keyframes open{0%{opacity:.5;font-stretch:80%}to{opacity:1;font-stretch:112%}}.split{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:56px 96px;display:grid}@media (width<=900px){.split{grid-template-columns:minmax(0,1fr)}}.col-head{margin-bottom:24px}.prose p{max-width:64ch;margin:0 0 1.1em}.prose p:first-of-type{font-size:var(--s-lead);line-height:1.6}.focus{margin:0;padding:0;list-style:none}.focus li{border-top:1px solid var(--rule);padding-block:16px}.focus strong{font:600 var(--s-ui)/1.5 var(--display);display:block}.focus span{color:var(--haze);margin-top:2px;font-size:1rem;line-height:1.55;display:block}.edu{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:baseline;gap:16px 64px;display:grid}.edu p{font-size:var(--s-lead);margin:0}@media (width<=860px){.edu{grid-template-columns:minmax(0,1fr)}}.domains{margin:0;padding:0;list-style:none}.domain{border-top:1px solid var(--rule);grid-template-columns:minmax(0,4fr) minmax(0,5fr) minmax(0,4fr);gap:12px 48px;padding-block:28px;display:grid}.domain:last-child{border-bottom:1px solid var(--rule)}.domain h2{font-size:var(--s-h3);font-stretch:106%}.domain p{color:var(--haze);max-width:48ch;margin:0}.tools{font:500 var(--s-ui)/1.5 var(--display);margin:0;padding:0;list-style:none}.tools li+li{margin-top:4px}@media (width<=960px){.domain{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.domain h2{grid-column:1/-1}}@media (width<=600px){.domain{grid-template-columns:minmax(0,1fr)}}.plain-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:0 56px;margin:0;padding:0;list-style:none;display:grid}.plain-list li{border-top:1px solid var(--rule);font:500 var(--s-ui)/1.5 var(--display);padding-block:12px}.certs{margin:0;padding:0;list-style:none}.cert{border-top:1px solid var(--rule);grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:baseline;gap:8px 48px;padding-block:28px;display:grid}.cert:last-child{border-bottom:1px solid var(--rule)}.cert .code{font:700 clamp(1.75rem, 3.4vw, 2.5rem)/1.1 var(--display);letter-spacing:-.015em;font-stretch:116%}.cert .code small{font:500 var(--s-sm)/1.3 var(--display);letter-spacing:0;color:var(--haze);margin-top:8px;font-stretch:100%;display:block}.cert strong{font:600 var(--s-ui)/1.5 var(--display);margin-bottom:4px;display:block}.cert p{color:var(--haze);max-width:60ch;margin:0}@media (width<=700px){.cert{grid-template-columns:minmax(0,1fr)}}.reach{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 96px;display:grid}.reach a.big{font:700 clamp(1.75rem, 4vw, 3rem)/1.1 var(--display);letter-spacing:-.015em;text-decoration:underline;-webkit-text-decoration-color:var(--rule);text-decoration-color:var(--rule);text-underline-offset:.18em;align-items:center;gap:16px;font-stretch:112%;text-decoration-thickness:3px;transition:text-decoration-color .15s;display:inline-flex}.reach a.big:hover{-webkit-text-decoration-color:var(--signal);text-decoration-color:var(--signal)}.reach a.big .icon{width:.8em;height:.8em;color:var(--haze)}.reach p{color:var(--haze);margin:14px 0 0}.copy-btn{font:600 var(--s-sm)/1 var(--display);cursor:pointer;color:var(--paper);border:1px solid var(--rule);background:0 0;border-radius:2px;margin-top:18px;padding:10px 14px}.copy-btn:hover{border-color:var(--paper)}.facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 96px;margin:0;display:grid}.facts div{border-top:1px solid var(--rule);grid-template-columns:minmax(0,12ch) minmax(0,1fr);gap:16px;padding-block:16px;display:grid}.facts dt{font:500 var(--s-ui)/1.6 var(--display);color:var(--haze)}.facts dd{margin:0}@media (width<=860px){.reach,.facts{grid-template-columns:minmax(0,1fr)}}.next{background:var(--deep);padding-block:clamp(48px,7vw,88px)}.next a{text-decoration:none;display:inline-block}.next a span{font:500 var(--s-ui)/1.4 var(--display);color:var(--haze);margin-bottom:6px;display:block}.next a strong{font:700 var(--s-h2)/1.1 var(--display);text-decoration:underline;-webkit-text-decoration-color:var(--rule);text-decoration-color:var(--rule);text-underline-offset:.18em;font-stretch:112%;text-decoration-thickness:3px;transition:text-decoration-color .15s}.next a:hover strong{-webkit-text-decoration-color:var(--signal);text-decoration-color:var(--signal)}footer{color:var(--haze);font:450 var(--s-sm)/1.5 var(--display);padding-block:32px 48px}footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:12px 24px;display:flex}.foot-links{flex-wrap:wrap;gap:6px 24px;display:flex}.foot-links a{align-items:center;gap:8px;padding-block:4px;text-decoration:none;display:inline-flex}.foot-links a:hover{color:var(--paper)}.icon{flex:none}.foot-links .icon{width:16px;height:16px}.posts{margin:0;padding:0;list-style:none}.posts li{border-top:1px solid var(--rule)}.posts li:last-child{border-bottom:1px solid var(--rule)}.post-row{grid-template-columns:minmax(0,3fr) minmax(0,9fr);gap:8px 48px;padding-block:32px;text-decoration:none;display:grid}.post-row time{font:500 var(--s-ui)/1.6 var(--display);color:var(--haze);font-variant-numeric:tabular-nums}.post-row h2{font-size:var(--s-h3);margin-bottom:8px;font-stretch:106%}.post-row:hover h2{text-decoration:underline;-webkit-text-decoration-color:var(--signal);text-decoration-color:var(--signal);text-underline-offset:.2em;text-decoration-thickness:2px}.post-row p{color:var(--haze);max-width:62ch;margin:0}@media (width<=700px){.post-row{grid-template-columns:minmax(0,1fr)}}.tag-list{font:500 var(--s-sm)/1.4 var(--display);color:var(--haze);flex-wrap:wrap;gap:6px 16px;margin:12px 0 0;padding:0;list-style:none;display:flex}.tag-list li{border:0}.tag-list li:before{content:"#"}.empty{color:var(--haze)}.post-col{max-width:84ch;margin-inline:auto;font-size:1.1875rem}.post-head{max-width:900px;padding-block:clamp(48px,8vw,96px) 32px}.post-head h1{margin-bottom:20px;font-size:clamp(2.25rem,4.6vw,3.75rem)}.post-meta{font:500 var(--s-ui)/1.5 var(--display);color:var(--haze);flex-wrap:wrap;gap:6px 24px;display:flex}.back{font:500 var(--s-ui)/1.4 var(--display);color:var(--haze);margin-bottom:28px;text-decoration:none;display:inline-block}.back:hover{color:var(--paper)}.article{max-width:84ch;padding-block:16px clamp(56px,8vw,96px);font-size:1.1875rem;line-height:1.75}.article>*+*{margin-top:1.15em}.article h2{margin-top:2em;font-size:1.75rem}.article h3{margin-top:1.6em;font-size:1.3125rem}.article p,.article ul,.article ol{margin-bottom:0}.article ul,.article ol{padding-left:1.3em}.article li+li{margin-top:.35em}.article a{-webkit-text-decoration-color:var(--signal);text-decoration-color:var(--signal)}.article blockquote{border-left:3px solid var(--signal);font-style:italic;font-size:var(--s-lead);margin-inline:0;padding:2px 0 2px 22px}.article code{font-family:var(--mono);background:var(--deep);border-radius:3px;padding:2px 6px;font-size:.85em}.article pre{background:var(--deep);border-radius:4px;padding:20px;font-size:.92rem;line-height:1.6;overflow-x:auto}.article pre code{background:0 0;padding:0}.article table{border-collapse:collapse;width:100%;font-size:1rem;display:block;overflow-x:auto}.article th,.article td{border-bottom:1px solid var(--rule);text-align:left;padding:10px 14px 10px 0}.article th{font-family:var(--display);font-weight:600}.article img{border-radius:4px;max-width:100%}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:var(--haze);font-style:italic}.token.keyword,.token.atrule,.token.important,.token.selector{color:#8fd0c8}.token.string,.token.char,.token.attr-value,.token.regex,.token.inserted{color:#b8d48e}.token.number,.token.boolean,.token.constant,.token.variable{color:var(--signal)}.token.function,.token.class-name,.token.property,.token.tag,.token.builtin{color:#e3c6f0}.token.operator,.token.punctuation{color:#bccaca}.token.deleted{color:#f0a0a0}
