@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/barlow-vietnamese-400-normal.Dpl4UHAZ.woff2)format("woff2"),url(/_astro/barlow-vietnamese-400-normal.BFeobeCK.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:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/barlow-latin-ext-400-normal.HxX4XjxC.woff2)format("woff2"),url(/_astro/barlow-latin-ext-400-normal.CvBsJvxq.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:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/barlow-latin-400-normal.qiz4-Cze.woff2)format("woff2"),url(/_astro/barlow-latin-400-normal.fsAxiSwU.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:Barlow;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/barlow-vietnamese-400-italic.BadtuaKt.woff2)format("woff2"),url(/_astro/barlow-vietnamese-400-italic.h5SLTWmb.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:Barlow;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/barlow-latin-ext-400-italic.BALf98tD.woff2)format("woff2"),url(/_astro/barlow-latin-ext-400-italic.DW2GD2EY.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:Barlow;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/barlow-latin-400-italic.BjGuzOss.woff2)format("woff2"),url(/_astro/barlow-latin-400-italic.B9FqDUoy.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:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/barlow-vietnamese-500-normal.zTViEIzf.woff2)format("woff2"),url(/_astro/barlow-vietnamese-500-normal.GNfB7rCE.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:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/barlow-latin-ext-500-normal.DOaysfXq.woff2)format("woff2"),url(/_astro/barlow-latin-ext-500-normal.CJPcKP2Q.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:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/barlow-latin-500-normal.BPAOfeC8.woff2)format("woff2"),url(/_astro/barlow-latin-500-normal.C1h8hMer.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:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/barlow-vietnamese-600-normal.DcjprdFV.woff2)format("woff2"),url(/_astro/barlow-vietnamese-600-normal.CA_GiK2e.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:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/barlow-latin-ext-600-normal.B8NK_A3D.woff2)format("woff2"),url(/_astro/barlow-latin-ext-600-normal.DMVRjfRT.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:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/barlow-latin-600-normal.DILqtrty.woff2)format("woff2"),url(/_astro/barlow-latin-600-normal.CNwfPWQD.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:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/barlow-semi-condensed-vietnamese-600-normal.b1FQiZcx.woff2)format("woff2"),url(/_astro/barlow-semi-condensed-vietnamese-600-normal.DzVrjA0Q.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:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/barlow-semi-condensed-latin-ext-600-normal.BkQ9hN72.woff2)format("woff2"),url(/_astro/barlow-semi-condensed-latin-ext-600-normal.BuP8AaxH.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:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/barlow-semi-condensed-latin-600-normal.BkLiAYu4.woff2)format("woff2"),url(/_astro/barlow-semi-condensed-latin-600-normal.DyOfdMBA.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:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/barlow-semi-condensed-vietnamese-700-normal.Dm7RZTvf.woff2)format("woff2"),url(/_astro/barlow-semi-condensed-vietnamese-700-normal.BvUTSFNY.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:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/barlow-semi-condensed-latin-ext-700-normal.BhgEo64M.woff2)format("woff2"),url(/_astro/barlow-semi-condensed-latin-ext-700-normal.C0vCoZIV.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:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/barlow-semi-condensed-latin-700-normal.BpqDG8I9.woff2)format("woff2"),url(/_astro/barlow-semi-condensed-latin-700-normal.BMyZXq_9.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{--bg:#f6f5f0;--surface:#fff;--ink:#101614;--body:#2a322f;--muted:#5f6965;--line:#e3e1d8;--green:#27b297;--green-deep:#0b715f;--mint:#dcf2eb;--mint-2:#ecf7f3;--pine:#0f2e27;--pine-line:#25473f;--on-pine:#b6c9c3;--font:"Barlow", system-ui, -apple-system, "Segoe UI", sans-serif;--font-display:"Barlow Semi Condensed", "Barlow", system-ui, sans-serif;--wrap:1240px;--gutter:clamp(18px, 4vw, 40px);--radius:18px;--radius-sm:12px;--shadow:0 1px 2px #1016140a, 0 14px 34px -22px #10161447;--ease:cubic-bezier(.2, .7, .2, 1)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:1.125rem;line-height:1.6}img,svg{max-width:100%;display:block}img{height:auto}a{color:inherit}p,figure{margin:0}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.014em;text-wrap:balance;margin:0;font-weight:700;line-height:1.1}:focus-visible{outline:2px solid var(--green-deep);outline-offset:3px;border-radius:4px}.wrap{width:min(100% - 2 * var(--gutter), var(--wrap));margin-inline:auto}.skip{z-index:100;background:var(--ink);color:#fff;border-radius:999px;padding:10px 16px;font-weight:600;text-decoration:none;position:absolute;top:-60px;left:12px}.skip:focus{top:12px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.label{background:var(--mint);color:var(--green-deep);font:600 .6875rem/1 var(--font);letter-spacing:.07em;text-transform:uppercase;border-radius:999px;padding:.46em .75em;display:inline-block}.meta{color:var(--muted);font-size:.875rem;line-height:1.2}.kicker{flex-wrap:wrap;align-items:center;gap:.4em .8em;display:flex}.avatar{object-fit:cover;border-radius:50%;flex:none}.btn{font:600 1rem/1 var(--font);cursor:pointer;border:1.5px solid #0000;border-radius:999px;align-items:center;gap:.55em;padding:.9em 1.45em;text-decoration:none;transition:background-color .2s,border-color .2s,color .2s;display:inline-flex}.btn-primary{background:var(--ink);color:#fff}.btn-primary:hover{background:var(--green-deep)}.btn-line{border-color:var(--line);background:var(--surface);color:var(--ink)}.btn-line:hover{border-color:var(--ink)}.btn-sm{padding:.68em 1.05em;font-size:.9375rem}.more{font:600 1rem/1.2 var(--font);color:var(--green-deep);white-space:nowrap;align-items:center;gap:.4em;text-decoration:none;transition:color .2s;display:inline-flex}.more:hover{color:var(--ink)}.arr{block-size:1em;inline-size:1em;transition:transform .25s var(--ease);flex:none}a:hover>.arr{transform:translate(3px)}.site-header{z-index:30;backdrop-filter:saturate(1.4)blur(14px);background:#f6f5f0d6;border-bottom:1px solid #10161412;position:sticky;top:0}.site-header .bar{justify-content:space-between;align-items:center;gap:24px;min-height:70px;display:flex}.logo{flex:none;display:block}.logo img{width:auto;height:22px}.nav{align-items:center;gap:2px;display:flex}.nav a{font:500 .9688rem/1 var(--font);color:var(--body);border-radius:999px;padding:.6em .9em;text-decoration:none;transition:background-color .2s,color .2s}.nav a:hover{color:var(--ink);background:#1016140f}.nav a[aria-current]{background:var(--mint);color:var(--green-deep);font-weight:600}.menu-btn{border:1.5px solid var(--line);background:var(--surface);color:var(--ink);font:600 .9375rem/1 var(--font);cursor:pointer;border-radius:999px;padding:.6em 1em;display:none}@media (width<=860px){.site-header .bar{min-height:62px}.logo img{height:19px}.menu-btn{display:block}.nav{left:var(--gutter);right:var(--gutter);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:2px;padding:10px;display:none;position:absolute;top:calc(100% + 8px)}.nav.is-open{display:flex}.nav a{border-radius:var(--radius-sm);font:600 1.25rem/1.15 var(--font-display);color:var(--ink);padding:.8em 1em}}.media{aspect-ratio:3/2;border-radius:var(--radius);background:#e9e7df;display:block;overflow:hidden}.media img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease)}.card,.lead,.side-item{position:relative}.card:hover .media img,.lead:hover .media img,.side-item:hover .media img{transform:scale(1.03)}.card .kicker{margin-top:16px}.card-title{letter-spacing:-.005em;margin-top:10px;font-size:1.3125rem;font-weight:600;line-height:1.2}.card-title a,.lead h2 a,.side-item h3 a{text-decoration:none;transition:color .2s}.card-title a:after,.lead h2 a:after,.side-item h3 a:after{content:"";position:absolute;inset:0}.card:hover .card-title a,.lead:hover h2 a,.side-item:hover h3 a{color:var(--green-deep)}.card .desc{color:var(--muted);margin-top:.55em;font-size:1.0625rem}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(32px,3.6vw,48px) clamp(18px,2.2vw,28px);display:grid}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.two .card-title{font-size:clamp(1.5rem,2.4vw,1.875rem);line-height:1.12}@media (width<=900px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.grid,.grid.two{grid-template-columns:1fr}}.top{background:radial-gradient(880px 420px at 90% -6%,#27b29738,#0000 64%);padding-block:clamp(30px,4.6vw,64px) clamp(28px,4vw,52px)}.intro{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px 40px;margin-bottom:clamp(24px,3.4vw,44px);display:flex}.intro h1{letter-spacing:-.026em;max-width:12.5em;font-size:clamp(2.375rem,5.2vw,4.25rem);line-height:1}.intro h1 span{color:var(--green)}.byline{border:1px solid var(--line);background:var(--surface);color:var(--body);border-radius:999px;align-items:center;gap:.65em;padding:.35em 1em .35em .35em;font-size:.9375rem;line-height:1.2;text-decoration:none;transition:border-color .2s;display:inline-flex}.byline:hover{border-color:var(--ink)}.top-grid{grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);align-items:stretch;gap:clamp(16px,1.8vw,22px);display:grid}.lead{flex-direction:column;display:flex;overflow:hidden}.lead .media{aspect-ratio:16/9;border-radius:0}.lead .body{padding:clamp(20px,2.4vw,30px)}.lead h2{letter-spacing:-.018em;margin-top:12px;font-size:clamp(1.875rem,3.4vw,2.75rem);line-height:1.04}.lead .desc{max-width:36em;color:var(--muted);margin-top:.7em}.side{padding:clamp(18px,2vw,26px)}.side>h2{font-size:1.375rem}.side-list{margin:12px 0 0;padding:0;list-style:none}.side-item{border-top:1px solid var(--line);grid-template-columns:76px minmax(0,1fr);align-items:center;gap:14px;padding-block:13px;display:grid}.side-item:last-child{padding-bottom:0}.side-item .media{aspect-ratio:1;border-radius:var(--radius-sm)}.side-item .meta{display:block}.side-item h3{letter-spacing:-.003em;margin-top:3px;font-size:1.0938rem;font-weight:600;line-height:1.22}@media (width<=900px){.top-grid{grid-template-columns:1fr}}.section{padding-block:clamp(36px,5vw,64px)}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px 32px;margin-bottom:clamp(20px,2.6vw,32px);display:flex}.section-head h2{font-size:clamp(1.75rem,3vw,2.375rem)}.tool-card{background:linear-gradient(135deg, var(--mint) 0%, #c9ecdf 100%);border-radius:28px;grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:clamp(24px,4.4vw,60px);padding:clamp(22px,4vw,56px);display:grid}.tool-card .label{background:var(--surface)}.tool-card h2{letter-spacing:-.02em;margin-top:.55em;font-size:clamp(2rem,3.8vw,3rem);line-height:1.02}.tool-card .lede{max-width:28em;color:var(--body);margin-top:.9em}.tool-card .btn{margin-top:1.6em}.tool-card .shot{border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);transition:transform .3s var(--ease);border:1px solid #10161414;display:block;overflow:hidden}.tool-card .shot:hover{transform:translateY(-3px)}.tool-card .shot img{width:100%}@media (width<=900px){.tool-card{grid-template-columns:1fr}}.index{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:32px clamp(28px,4.4vw,64px);padding:clamp(20px,3vw,40px);display:grid}.index-group+.index-group{margin-top:30px}.index h3{border-bottom:1px solid var(--ink);padding-bottom:12px;font-size:1.3125rem}.index ul{margin:0;padding:0;list-style:none}.index .cols{columns:2;column-gap:clamp(24px,3.4vw,48px)}.index li{break-inside:avoid;border-bottom:1px solid var(--line)}.index li a{padding:.72em 0;font-size:1.0313rem;font-weight:500;line-height:1.3;text-decoration:none;transition:color .2s;display:block}.index li a:hover{color:var(--green-deep)}@media (width<=820px){.index{grid-template-columns:1fr}}@media (width<=560px){.index .cols{columns:1}}.about{align-items:center;gap:clamp(18px,2.6vw,32px);padding:clamp(20px,3vw,36px);display:flex}.about .avatar{width:96px;height:96px}.about h2{font-size:1.625rem}.about p{max-width:42em;color:var(--body);margin-top:.35em}.about .more{margin-top:.7em}@media (width<=560px){.about{align-items:flex-start}.about .avatar{width:64px;height:64px}}.site-footer{background:var(--pine);color:#fff;margin-top:clamp(28px,4vw,52px);padding-block:clamp(44px,5.6vw,72px) 26px}.footer-top{grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,.6fr));gap:36px clamp(24px,4vw,56px);display:grid}.footer-logo img{width:auto;height:28px}.footer-top>div:first-child p{max-width:24em;color:var(--on-pine);margin-top:16px;font-size:1rem}.footer-top h2{font:600 .75rem/1.2 var(--font);letter-spacing:.08em;text-transform:uppercase;color:var(--on-pine)}.footer-top ul{gap:9px;margin:14px 0 0;padding:0;list-style:none;display:grid}.footer-top ul a{font-size:1.0313rem;font-weight:500;text-decoration:none;transition:color .2s}.footer-top ul a:hover{color:var(--green)}.footer-bottom{border-top:1px solid var(--pine-line);color:var(--on-pine);margin-top:clamp(36px,4.6vw,56px);padding-top:20px;font-size:.875rem}@media (width<=760px){.footer-top{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-top>div:first-child{grid-column:1/-1}}.crumbs{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.5em;font-size:.9375rem;line-height:1.2;display:flex}.crumbs a{text-decoration:none;transition:color .2s}.crumbs a:hover{color:var(--green-deep)}.article-head{padding-top:clamp(24px,3.6vw,48px)}.article-head h1{letter-spacing:-.024em;max-width:16em;margin-top:.5em;font-size:clamp(2.375rem,5.2vw,4rem);line-height:1.02}.dek{max-width:36em;color:var(--muted);margin-top:.85em;font-size:clamp(1.1875rem,1.7vw,1.375rem);line-height:1.45}.byline-row{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.35em .7em;margin-top:1.4em;font-size:.9375rem;line-height:1.3;display:flex}.byline-row a{color:var(--ink);font-weight:600;text-decoration:none}.byline-row a:hover{color:var(--green-deep)}.byline-row .avatar{margin-right:.15em}.article-hero{aspect-ratio:2;border-radius:24px;margin-top:clamp(22px,3.2vw,38px)}@media (width<=640px){.article-hero{aspect-ratio:3/2;border-radius:var(--radius)}}.article-layout{grid-template-columns:minmax(0,1fr) minmax(0,43rem) minmax(0,1fr);align-items:start;padding-block:clamp(32px,4.6vw,60px) clamp(40px,6vw,80px);display:grid}.article-layout>.prose{grid-column:2}.article-layout>.rail{grid-column:3;justify-self:end;width:min(100%,236px)}.rail{position:sticky;top:94px}.toc{padding:18px 18px 14px}.toc h2{font-size:1.0625rem}.toc ol{margin:10px 0 0;padding:0;list-style:none}.toc a{color:var(--muted);border-radius:8px;margin-inline:-.7em;padding:.5em .7em;font-size:.9063rem;line-height:1.3;text-decoration:none;transition:color .2s,background-color .2s;display:block}.toc a:hover{color:var(--ink)}.toc a.is-active{background:var(--mint-2);color:var(--green-deep);font-weight:600}@media (width<=1180px){.article-layout{grid-template-columns:minmax(0,43rem);justify-content:center;gap:26px}.article-layout>.prose,.article-layout>.rail{grid-column:1}.article-layout>.rail{order:-1;justify-self:stretch;width:auto;position:static}}.prose{color:var(--body);font-size:1.1875rem;line-height:1.72}.prose>*+*{margin-top:1.2em}.prose>:first-child{margin-top:0}.prose h2,.prose h3{color:var(--ink)}.prose h2{margin-top:2em;scroll-margin-top:96px;font-size:clamp(1.75rem,3vw,2.25rem)}.prose h3{margin-top:1.7em;font-size:1.4375rem;font-weight:600;line-height:1.2}.prose h2+*,.prose h3+*{margin-top:.7em}.prose h2+h3{margin-top:1em}.prose a{color:var(--green-deep);text-underline-offset:3px;text-decoration:underline 1px #0b715f66;transition:text-decoration-color .2s}.prose a:hover{text-decoration-color:currentColor}.prose strong,.prose b{color:var(--ink);font-weight:600}.prose ul,.prose ol{padding-left:1.3em}.prose li+li{margin-top:.5em}.prose li::marker{color:var(--green-deep);font-weight:600}.prose figure{margin-block:2em}.prose img{border-radius:var(--radius)}.prose figcaption{color:var(--muted);margin-top:.8em;font-size:.9375rem;line-height:1.45}.prose blockquote{border-radius:var(--radius);background:var(--mint-2);color:var(--ink);margin:2em 0;padding:20px 24px;font-size:1.25rem;line-height:1.5}.after-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:start;gap:clamp(16px,1.8vw,22px);display:grid}@media (width<=860px){.after-grid{grid-template-columns:1fr}}.author{align-items:flex-start;gap:18px;padding:clamp(20px,2.4vw,30px);display:flex}.author .avatar{width:72px;height:72px}.author h2{font-size:1.5rem}.author p.bio{color:var(--body);margin-top:.4em;font-size:1.0625rem}.author .links{flex-wrap:wrap;gap:6px 22px;margin-top:.9em;display:flex}.comments{padding:clamp(20px,2.4vw,30px)}.comments h2{font-size:1.5rem}.comments h2 span{font:500 1rem/1 var(--font);color:var(--muted)}.comment-list{margin:14px 0 0;padding:0;list-style:none}.comment{border-top:1px solid var(--line);padding-block:16px}.comment .who{flex-wrap:wrap;align-items:baseline;gap:.8em;display:flex}.comment .who strong{font-weight:600}.comment .who time{color:var(--muted);font-size:.875rem}.comment .body{color:var(--body);margin-top:.3em;font-size:1.0625rem;line-height:1.6}.comment .body p+p{margin-top:.7em}.comment .body a{color:var(--green-deep);overflow-wrap:anywhere}.comment .reply{border-radius:var(--radius-sm);background:var(--bg);margin:14px 0 0 clamp(14px,3vw,26px);padding:12px 16px}.comments .note{border-top:1px solid var(--line);color:var(--muted);padding-top:16px;font-size:1rem}.comments .note a{color:var(--green-deep)}.page-head{background:radial-gradient(880px 420px at 90% -6%,#27b29733,#0000 64%);padding-block:clamp(26px,4vw,52px) clamp(20px,2.6vw,32px)}.page-head h1{letter-spacing:-.024em;margin-top:.45em;font-size:clamp(2.375rem,5.2vw,4rem);line-height:1.02}.page-head .lede{max-width:36em;color:var(--muted);margin-top:.8em;font-size:clamp(1.125rem,1.55vw,1.3125rem);line-height:1.5}.page-body{padding-block:clamp(8px,1.6vw,20px) clamp(40px,6vw,80px)}.page-body .prose{max-width:43rem}.notfound{text-align:center;padding-block:clamp(48px,9vw,120px)}.notfound h1{letter-spacing:-.024em;font-size:clamp(2.375rem,5.2vw,4rem)}.notfound p{max-width:30em;color:var(--muted);margin:.8em auto 1.6em}.prose h4{color:var(--ink);margin-top:1.5em;font-size:1.1875rem;font-weight:600;line-height:1.25}.prose h5{font:600 1rem/1.3 var(--font);color:var(--ink);margin-top:1.5em}.prose small{font-size:.8125rem}.prose .center{text-align:center}.prose hr{border:0;border-top:1px solid var(--line);margin-block:2.4em}.prose figure a{display:block}.prose .c-yes{color:#0a7a2e}.prose .c-no{color:#c62828}.prose .c-accent{color:var(--green-deep)}.prose .c-ghost{visibility:hidden}.prose .cols{grid-template-columns:var(--cols);align-items:start;gap:clamp(16px,2.4vw,28px);display:grid}.prose .cols>.col{min-width:0}.prose .cols>.col>*+*{margin-top:1.2em}.prose .cols>.col>:first-child{margin-top:0}.prose .cols figure{margin-block:0}@media (width<=640px){.prose .cols{grid-template-columns:minmax(0,1fr)}}.prose .video{aspect-ratio:16/9;border-radius:var(--radius);background:var(--ink);margin-block:2em;overflow:hidden}.prose .video iframe{border:0;width:100%;height:100%;display:block}.tabs{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin-block:1.6em;font-size:.9375rem;line-height:1.6;overflow:hidden}.tab-names{scrollbar-width:none;border-bottom:1px solid var(--line);background:var(--bg);gap:4px;padding:8px;display:flex;overflow-x:auto}.tab-names button{font:600 .875rem/1.2 var(--font);color:var(--muted);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:999px;flex:none;padding:.5em .9em}.tab-names button[aria-selected=true]{background:var(--ink);color:#fff}.tab{padding:16px 18px;overflow-x:auto}.tab>*+*{margin-top:1em}.tab p{white-space:nowrap}.tab-title{color:var(--ink);font-weight:600}.tabs:not(.is-enhanced) .tab-names,.tabs.is-enhanced .tab-title,.tabs.is-enhanced .tab[hidden]{display:none}.tabs:not(.is-enhanced) .tab+.tab{border-top:1px solid var(--line)}.facts{flex-wrap:wrap;gap:8px 10px;margin:1.5em 0 0;padding:0;list-style:none;display:flex}.facts li{border:1px solid var(--line);background:var(--surface);color:var(--body);border-radius:999px;padding:.5em 1em;font-size:.9375rem;font-weight:500;line-height:1.2}.steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,1.8vw,22px);margin:0;padding:0;list-style:none;display:grid}.steps li{padding:clamp(20px,2.4vw,28px)}.steps h3{font-size:1.375rem;font-weight:600}.steps p{color:var(--body);margin-top:.45em;font-size:1.0625rem}@media (width<=760px){.steps{grid-template-columns:1fr}}.tool-embed iframe{border:0;width:100%;min-height:640px;display:block}.tool-embed noscript p{color:var(--muted);padding:24px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important}}.index h3 a{text-decoration:none;transition:color .2s}.index h3 a:hover{color:var(--green-deep)}
