@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-BgDaEnEv.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink: #141417;--ink-2: #34343c;--body: #33333b;--muted: #5b5b66;--faint: #8a8a95;--line: #e8e8ed;--soft: #f6f7f8;--accent: #0f766e;--accent-hover: #115e59;--accent-soft: #effcf9}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;font-family:Geist Variable,Segoe UI,system-ui,sans-serif;font-size:17px;line-height:1.6;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,svg{display:block;max-width:100%}a{color:var(--accent);text-underline-offset:3px;text-decoration-thickness:from-font}::selection{background:#0d948833}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.wrap{max-width:1180px;margin-inline:auto;padding-inline:20px}@media(max-width:480px){.wrap{padding-inline:16px}}.skip-link{position:absolute;left:12px;top:-48px;z-index:50;padding:10px 14px;border-radius:8px;background:var(--ink);color:#fff;text-decoration:none}.skip-link:focus{top:12px}kbd{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 7px;border-radius:6px;background:#fff;box-shadow:inset 0 0 0 1px var(--line),inset 0 -2px 0 var(--line);color:var(--ink-2);font:500 12.5px/1 Geist Variable,system-ui,sans-serif;white-space:nowrap}code{padding:1px 5px;border-radius:5px;background:var(--soft);font:.9em ui-monospace,Cascadia Code,Consolas,monospace}.blur-row>*,.versus>*,.faq-layout>*,.footer-grid>*,.article-grid>*{min-width:0}.site-header{position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid var(--line)}.header-row{display:flex;align-items:center;gap:20px;height:64px}.brand{display:inline-flex;flex-shrink:0;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-weight:650;font-size:16.5px;letter-spacing:-.015em;white-space:nowrap}.brand-by{margin-inline-start:-4px;color:var(--faint);font-weight:450;font-size:14px;letter-spacing:0}.nav{display:flex;gap:2px;margin-inline-start:auto}.nav a{padding:8px 11px;border-radius:8px;color:var(--muted);font-size:14.5px;text-decoration:none;white-space:nowrap}.nav a:hover{color:var(--ink);background:var(--soft)}.nav a[aria-current=page]{color:var(--ink);font-weight:560}.menu{display:none;margin-inline-start:auto}.menu summary{display:grid;place-items:center;width:44px;height:44px;margin-inline-end:-8px;border-radius:10px;color:var(--ink);cursor:pointer;list-style:none}.menu summary::-webkit-details-marker{display:none}.menu .menu-close,.menu[open] .menu-open{display:none}.menu[open] .menu-close{display:block}.menu-panel{position:fixed;inset:64px 0 0;z-index:40;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:24px 24px calc(48px + env(safe-area-inset-bottom));background:#fff;overflow-y:auto}.menu-panel a:not(.btn){padding:12px 20px;border-radius:12px;color:var(--ink);font-size:24px;font-weight:600;letter-spacing:-.02em;text-align:center;text-decoration:none}.menu-panel a:not(.btn):hover,.menu-panel a[aria-current=page]{color:var(--accent)}.menu-panel .btn{width:min(100%,320px);margin-top:24px}@media(prefers-reduced-motion:no-preference){.menu[open] .menu-panel{animation:menu-in .18s cubic-bezier(.2,0,0,1)}}@keyframes menu-in{0%{opacity:0;translate:0 -8px}}body:has(.menu[open]){overflow:hidden}@media(max-width:1039px){.nav{display:none}.menu{display:block}.header-cta{margin-inline-start:auto}.header-cta+.menu{margin-inline-start:0}}@media(max-width:560px){.site-header .header-cta{display:none}.site-header .header-cta+.menu{margin-inline-start:auto}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 22px;border-radius:10px;font-size:15.5px;font-weight:600;text-decoration:none;white-space:nowrap;transition-property:background-color,box-shadow,scale;transition-duration:.15s}.btn:active{scale:.96}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1px #d9d9e0}.btn-secondary:hover{background:var(--soft)}.btn-sm{height:38px;padding:0 14px;font-size:14px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}@media(max-width:560px){.actions{flex-direction:column;gap:10px;margin-top:26px}.actions .btn{width:100%}}h1{margin:0;font-size:clamp(2.5rem,1.5rem + 4vw,4.6rem);line-height:1.02;letter-spacing:-.038em;font-weight:720;text-wrap:balance}h1 .line2{display:block;margin-top:18px;font-size:clamp(1.2rem,1rem + .9vw,1.6rem);line-height:1.3;letter-spacing:-.018em;font-weight:500;color:var(--muted)}h2{margin:0;font-size:clamp(1.9rem,1.2rem + 2.2vw,2.8rem);line-height:1.08;letter-spacing:-.032em;font-weight:700;text-wrap:balance}.center-head{text-align:center}.marker{position:relative;white-space:nowrap}.marker svg{position:absolute;left:-2%;bottom:-.16em;width:104%;height:.34em;overflow:visible;pointer-events:none}.marker path{fill:none;stroke:#14b8a6;stroke-width:7;stroke-linecap:round;opacity:.75}@media(prefers-reduced-motion:no-preference){.marker path{stroke-dasharray:420;animation:draw-marker .9s cubic-bezier(.2,0,0,1) .3s backwards}}@keyframes draw-marker{0%{stroke-dashoffset:420}}.lede{margin:22px 0 0;max-width:36em;font-size:19px;line-height:1.55;color:var(--muted);text-wrap:pretty}.section{padding-block:clamp(72px,9vw,120px)}.section.alt,.band{background:var(--soft)}.hero{padding-top:clamp(48px,7vw,88px)}.hero-copy{text-align:center}.hero-copy h1{max-width:13ch;margin-inline:auto}.hero-copy .line2{max-width:26em;margin-inline:auto}.hero-copy .actions{justify-content:center}.hero-facts{margin:18px 0 0;color:var(--faint);font-size:14.5px}.hero-stage{position:relative;margin-top:clamp(40px,5vw,64px)}.hero-stage:before{content:"";position:absolute;inset:45% 0 0;background:var(--soft)}.hero-demo{position:relative;max-width:1040px;margin-inline:auto}.hero-stage .demo-note{position:relative;margin:0;padding-top:18px}.live-demo [data-demo]:empty{aspect-ratio:16 / 10;border-radius:12px;background:var(--soft);box-shadow:0 0 0 1px var(--line)}.live-demo [data-demo] .dm-steps{display:none}.demo-note{display:flex;align-items:center;justify-content:center;gap:8px;margin:14px 0 0;color:var(--faint);font-size:14px;text-align:center}.demo-note svg{flex-shrink:0;color:var(--accent)}.band{padding-block:clamp(64px,8vw,104px)}.howto-line{counter-reset:step;position:relative;display:grid;gap:28px;max-width:980px;margin:48px auto 0;padding:0;list-style:none}.howto-line>li{counter-increment:step;position:relative;display:grid;grid-template-columns:52px minmax(0,1fr);column-gap:18px;align-items:center;scroll-margin-top:88px}.howto-line>li:before{content:counter(step);grid-row:span 2;position:relative;z-index:1;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 2px var(--accent),0 6px 16px -8px #0f172a4d;color:var(--accent);font-size:20px;font-weight:700;font-variant-numeric:tabular-nums}.howto-line:before{content:"";position:absolute;top:26px;bottom:26px;left:25px;width:2px;background:#d6ece9}.howto-line h3{align-self:end;margin:0;font-size:19px;line-height:1.25;font-weight:650;letter-spacing:-.012em}.howto-line p{align-self:start;margin:2px 0 0;color:var(--muted);font-size:15.5px}@media(min-width:760px){.howto-line{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.howto-line:before{inset:25px 16.67% auto;width:auto;height:2px}.howto-line>li{grid-template-columns:minmax(0,1fr);justify-items:center;text-align:center}.howto-line>li:before{grid-row:auto;margin-bottom:18px}}.versus{display:grid;max-width:920px;margin:48px auto 0}.versus-col{padding-block:28px}.versus-col+.versus-col{border-top:1px solid var(--line)}@media(min-width:720px){.versus{grid-template-columns:repeat(2,minmax(0,1fr))}.versus-col{padding:8px 48px}.versus-col+.versus-col{border-top:0;border-inline-start:1px solid #dcdce2}}.versus h3{display:flex;align-items:center;gap:10px;margin:0;font-size:22px;font-weight:700;letter-spacing:-.02em;color:var(--muted)}.versus .is-demo h3{color:var(--ink)}.versus .is-demo h3 svg{color:var(--accent)}.marks{display:grid;gap:14px;margin:22px 0 0;padding:0;list-style:none}.marks li{display:flex;align-items:flex-start;gap:12px;color:var(--muted);font-size:17px;line-height:1.4}.marks svg{flex-shrink:0;margin-top:2px;color:var(--faint)}.is-demo .marks li{color:var(--ink)}.is-demo .marks svg{color:var(--accent)}.blur-row{display:grid;gap:36px;align-items:center}@media(min-width:900px){.blur-row{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px}}.blur-text p{margin:16px 0 0;color:var(--muted);font-size:18px;text-wrap:pretty}.shot{margin:0}.shot-frame{position:relative;overflow:hidden;border-radius:12px;background:#fff;box-shadow:0 0 0 1px #00000014,0 18px 40px -16px #0f172a4d}.shot-frame img{width:100%;height:auto}.shot-blur{position:absolute;border-radius:3px;background:#ffffff1f;outline:1.5px dashed rgb(15 118 110 / .6);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.center-sub{max-width:34em;margin:16px auto 0;color:var(--muted);font-size:18px;text-align:center;text-wrap:pretty}.feature-panel{display:grid;gap:1px;margin:48px 0 0;padding:0;overflow:hidden;border-radius:16px;background:var(--line);box-shadow:0 0 0 1px var(--line);list-style:none}@media(min-width:640px){.feature-panel{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1000px){.feature-panel{grid-template-columns:repeat(3,minmax(0,1fr))}}.feature-panel>li{min-width:0;padding:24px 24px 28px;background:#fff}.feature-panel h3{margin:0;font-size:18px;line-height:1.3;font-weight:650;letter-spacing:-.012em}.feature-panel p{margin:6px 0 0;color:var(--muted);font-size:15.5px;line-height:1.5;text-wrap:pretty}.fv{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;height:128px;margin-bottom:20px;padding:12px;border-radius:12px;background:var(--soft);overflow:hidden}.fv-dot{position:relative;width:20px;height:20px;flex-shrink:0;border-radius:50%;background:#0d9488;box-shadow:0 0 0 3px #fff,0 2px 10px #0f172a59}.fv-dot:after{content:"";position:absolute;inset:-9px;border:2px solid #0d9488;border-radius:50%;animation:fv-pulse 1.6s ease-out infinite}@keyframes fv-pulse{0%{transform:scale(.55);opacity:1}to{transform:scale(1.4);opacity:0}}.fv-tip,.fv-caption{position:relative;padding:9px 12px;border-radius:9px;background:#18181b;color:#fafafa;font-size:13.5px;line-height:1.35;box-shadow:0 8px 22px #0f172a40}.fv-tip:before{content:"";position:absolute;top:-4px;left:calc(50% - 4px);width:8px;height:8px;background:inherit;rotate:45deg}.fv-caption{display:grid;gap:8px;width:min(100%,240px)}.fv-row{display:flex;align-items:center;gap:6px}.fv-count{margin-inline-end:auto;font-size:11.5px;opacity:.65}.fv-btn{padding:5px 10px;border-radius:6px;background:#0d9488;color:#fff;font-size:12px;font-weight:600;white-space:nowrap}.fv-btn.ghost{background:#ffffff24}.fv-btn.light{background:#f4f4f5;color:#18181b}.fv-card{display:grid;justify-items:center;gap:10px;padding:14px 16px;border-radius:12px;background:#fff;box-shadow:0 8px 22px #0f172a24;font-size:14px}.fv-swatches{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.fv-swatches span{width:26px;height:26px;border-radius:50%;background:var(--c)}.fv-swatches .on{box-shadow:0 0 0 2px var(--soft),0 0 0 4px var(--ink)}.fv-keys{display:flex;gap:8px}.fv-keys kbd{min-width:40px;height:40px;padding:0 12px;border-radius:9px;font-size:15px}.fv-files{display:flex;align-items:center;gap:10px;color:var(--faint)}.fv-file{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:9px;background:#fff;box-shadow:0 0 0 1px var(--line);color:var(--ink);font-size:13.5px;font-weight:500;white-space:nowrap}.fv-file svg{color:var(--accent)}@media(prefers-reduced-motion:reduce){.fv-dot:after{animation:none;opacity:.6}}.also{max-width:44em;margin:24px auto 0;color:var(--muted);font-size:15.5px;text-align:center;text-wrap:pretty}.share-ways{max-width:1040px;margin:48px auto 0;padding:0;list-style:none;border-top:1px solid #dcdce2}.share-ways>li{display:grid;gap:18px;padding-block:32px;border-bottom:1px solid #dcdce2}.share-ways>li>*{min-width:0}@media(min-width:900px){.share-ways>li{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px;align-items:center}}.way-text h3{margin:0;font-size:21px;line-height:1.25;font-weight:650;letter-spacing:-.015em}.way-text p{margin:8px 0 0;color:var(--muted);font-size:16px;text-wrap:pretty}.way-visual{display:grid;place-items:center;min-height:132px;padding:20px;border-radius:14px;background:#fff;box-shadow:0 0 0 1px var(--line)}.way-visual .code{width:100%;margin:0}.file-list{display:grid;width:100%;max-width:380px}.file-list>span{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid var(--line)}.file-list>span:last-child{border-bottom:0}.file-list b{font:600 14.5px/1.4 ui-monospace,Cascadia Code,Consolas,monospace;color:var(--ink)}.file-list em{color:var(--faint);font-size:14px;font-style:normal}.url-pill{display:inline-flex;align-items:center;gap:8px;max-width:100%;padding:11px 18px;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 1px var(--line);color:var(--ink);font-size:16px;font-weight:500;overflow-wrap:anywhere}.url-pill svg{flex-shrink:0;color:var(--accent)}.code{margin:8px 0 24px;padding:16px 18px;border-radius:12px;background:#16161a;color:#e9e9ee;font:13.5px/1.6 ui-monospace,Cascadia Code,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}.code code{padding:0;background:none;font:inherit}.alt-row{display:grid;gap:40px;align-items:center}.alt-row>*{min-width:0}@media(min-width:900px){.alt-row{grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:72px}.alt-row .limits{order:-1}}.alt-text p{margin:16px 0 28px;color:var(--muted);font-size:18px;text-wrap:pretty}.limits{margin:0;padding:28px;border-radius:16px;background:#fff;box-shadow:0 0 0 1px var(--line),0 14px 36px -20px #0f172a40}.limits figcaption{margin-bottom:18px;color:var(--ink);font-size:16px;font-weight:650}.limits ul{display:grid;gap:14px;margin:0;padding:0;list-style:none}.limits li{display:grid;grid-template-columns:104px minmax(0,1fr);align-items:center;gap:14px}.limits-name{color:var(--muted);font-size:15px}.limits-bar{position:relative;display:flex;align-items:center;height:34px}.limits-bar:before{content:"";width:var(--w);min-width:10px;height:100%;border-radius:8px;background:#d9dbe0}.limits-bar b{margin-inline-start:10px;color:var(--ink-2);font-size:15px;font-weight:650;font-variant-numeric:tabular-nums}.is-us .limits-name{color:var(--ink);font-weight:650}.is-us .limits-bar:before{background:var(--accent)}.is-us .limits-bar b{position:absolute;left:14px;margin:0;color:#fff}@media(max-width:480px){.limits{padding:20px}.limits li{grid-template-columns:88px minmax(0,1fr);gap:10px}.limits-name{font-size:14px}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.compare-hero{padding-bottom:clamp(16px,3vw,32px)}.compare-hero h1{max-width:17ch;font-size:clamp(2.3rem,1.4rem + 3.4vw,4rem)}.crumbs-center{justify-content:center}.compare-wrap{margin-top:40px;overflow-x:auto;border-radius:16px;background:#fff;box-shadow:0 0 0 1px var(--line),0 14px 36px -20px #0f172a40}.compare{width:100%;min-width:860px;border-collapse:separate;border-spacing:0;font-size:15px;line-height:1.45}.compare th,.compare td{padding:16px 18px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;color:var(--body)}.compare thead th{background:var(--soft);color:var(--ink);font-size:15px;font-weight:650}.compare tbody th{width:180px;color:var(--ink);font-weight:600}.compare tr>:first-child{position:sticky;left:0;z-index:1;background:#fff;box-shadow:inset -1px 0 0 var(--line)}.compare thead tr>:first-child{background:var(--soft)}.compare .is-us{background:var(--accent-soft);color:var(--ink)}.compare thead .is-us{background:var(--accent);color:#fff}.compare strong{color:var(--accent);font-weight:650}.compare tbody tr:last-child>*{border-bottom:0}.cell-mark{display:inline-flex;align-items:center;gap:6px}.cell-mark.yes svg{color:var(--accent)}.compare-note{margin:16px 0 0;color:var(--faint);font-size:13.5px;text-wrap:pretty}.compare-note a{color:var(--muted)}.picks{max-width:1080px;margin:44px auto 0;padding:0;list-style:none;border-top:1px solid #dcdce2}.picks>li{display:grid;gap:20px 40px;padding-block:30px;border-bottom:1px solid #dcdce2}.picks>li>*{min-width:0}@media(min-width:900px){.picks>li{grid-template-columns:minmax(0,3fr) minmax(0,4fr) minmax(0,4fr)}}.pick-name h3{margin:0;font-size:21px;line-height:1.25;font-weight:700;letter-spacing:-.018em}.pick-name p{margin:6px 0 0;color:var(--muted);font-size:15px}.pick-col h4{margin:0;color:var(--muted);font-size:14px;font-weight:600}.pick-col.is-us h4{color:var(--accent)}.pick-col .marks{gap:10px;margin-top:10px}.pick-col .marks li{color:var(--ink-2);font-size:15.5px}.pick-col.is-us .marks svg{color:var(--accent)}.trademark-note{margin:0;padding-block:24px;color:var(--faint);font-size:13px}.table-wrap{margin-top:36px;overflow-x:auto}.spec{width:100%;border-collapse:collapse;font-size:15.5px}.spec th{padding:10px 20px 10px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:13px;font-weight:600;text-align:left}.spec td{padding:16px 20px 16px 0;border-bottom:1px solid var(--line);color:var(--body);vertical-align:top}.spec td:first-child{color:var(--ink);font-weight:600}@media(max-width:640px){.spec.stack thead{display:none}.spec.stack tr{display:block;padding:14px 0;border-bottom:1px solid var(--line)}.spec.stack td{display:block;padding:2px 0;border:0}.spec.stack td[data-label]:before{content:attr(data-label);display:block;margin-top:6px;color:var(--faint);font-size:12.5px;font-weight:500}}.faq-layout{display:grid;gap:32px}@media(min-width:1000px){.faq-layout{grid-template-columns:minmax(0,.75fr) minmax(0,1.4fr);gap:72px}.faq-layout>.faq-head{position:sticky;top:104px;align-self:start}}.faq-head p{margin:16px 0 0;color:var(--muted)}.faq{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:20px 0;font-size:17.5px;font-weight:600;letter-spacing:-.01em;line-height:1.4;cursor:pointer;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary svg{flex-shrink:0;margin-top:2px;color:var(--muted);transition:rotate .18s cubic-bezier(.2,0,0,1)}.faq-item[open] summary svg{rotate:45deg}.faq-a{padding:0 0 22px;max-width:44em;color:var(--muted);font-size:16px}.faq-a p{margin:0}.faq-a p+p{margin-top:10px}.cta-band{padding-block:clamp(64px,7vw,96px);background:#121417;color:#fff}.cta-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:28px}.cta-band h2{color:#fff}.cta-band p{margin:12px 0 0;color:#b4b4be;font-size:17px}.cta-band .btn-primary{background:#2dd4bf;color:#062a25}.cta-band .btn-primary:hover{background:#5eead4}@media(max-width:560px){.cta-row .btn{width:100%}}.crumbs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px;padding:0;list-style:none;color:var(--faint);font-size:14px}.crumbs li+li:before{content:"/";margin-inline-end:8px;color:#c4c4cc}.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--accent)}.guide-hero{padding-block:48px 40px}@media(min-width:1000px){.guide-hero{padding-block:64px 48px}}.guide-hero .lede{max-width:40em}@media(max-width:560px){.guide-hero .lede{font-size:17px}}.guide-figure{margin:0}.guide-figure figcaption{margin-top:14px;color:var(--faint);font-size:14px}.article-grid{display:grid;gap:48px;padding-block:64px 96px}@media(min-width:1100px){.article-grid{grid-template-columns:minmax(0,720px) 232px;justify-content:space-between}}.toc{display:none}@media(min-width:1100px){.toc{display:block;position:sticky;top:96px;align-self:start;font-size:14px}}.toc p{margin:0 0 10px;color:var(--ink);font-weight:600}.toc a{display:block;padding:6px 0 6px 14px;border-inline-start:1px solid var(--line);color:var(--muted);text-decoration:none;line-height:1.4}.toc a:hover{color:var(--ink);border-color:var(--ink)}.prose>h2{margin:64px 0 16px;font-size:clamp(1.5rem,1.15rem + 1.1vw,1.95rem);line-height:1.15;letter-spacing:-.024em;scroll-margin-top:88px}.prose>h2:first-child{margin-top:0}.prose h3{margin:32px 0 8px;font-size:19px;line-height:1.3;letter-spacing:-.012em}.prose p,.prose li{color:var(--body);text-wrap:pretty}.prose p{margin:0 0 16px}.prose ul,.prose ol:not(.howto){margin:0 0 18px;padding-inline-start:22px}.prose li+li{margin-top:8px}.prose strong{color:var(--ink);font-weight:620}.prose .table-wrap{margin:8px 0 24px}.note{margin:8px 0 24px;padding:16px 20px;border-radius:12px;background:var(--soft);color:var(--body);font-size:16px}ol.howto{counter-reset:step;margin:28px 0 8px;padding:0;list-style:none;border-inline-start:2px solid var(--line);margin-inline-start:14px}ol.howto>li{counter-increment:step;position:relative;padding:0 0 28px 30px;scroll-margin-top:88px}ol.howto>li:last-child{padding-bottom:0}ol.howto>li:before{content:counter(step);position:absolute;left:-15px;top:0;width:28px;height:28px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 2px var(--accent);color:var(--accent);font:650 13px/28px Geist Variable,system-ui,sans-serif;text-align:center}ol.howto h3{margin:1px 0 6px;font-size:18px}ol.howto p{margin:0}.related{padding-block:0 96px}.related h2{font-size:clamp(1.5rem,1.15rem + 1.1vw,1.95rem)}.rows{margin:40px 0 0;padding:0;list-style:none;border-bottom:1px solid var(--line)}.rows a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 24px;padding:24px 0;border-top:1px solid var(--line);color:inherit;text-decoration:none}.rows h3{margin:0;font-size:20px;line-height:1.3;font-weight:650;letter-spacing:-.015em;transition:color .12s}.rows p{grid-column:1;margin:0;color:var(--muted);font-size:16px;text-wrap:pretty}.rows .go{grid-row:1 / span 2;grid-column:2;align-self:center;color:var(--accent);transition:translate .15s}.rows a:hover h3{color:var(--accent)}.rows a:hover .go{translate:4px 0}@media(min-width:1000px){.rows a{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr) auto;align-items:baseline}.rows p{grid-column:2;grid-row:1}.rows .go{grid-column:3;grid-row:1}}.site-footer{padding-block:64px 32px;border-top:1px solid var(--line);font-size:15px}.footer-grid{display:grid;gap:40px}@media(min-width:900px){.footer-grid{grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr))}}.footer-brand p{margin:14px 0 0;max-width:24em;color:var(--muted)}.footer-h{margin:0 0 12px;color:var(--ink);font-weight:600;font-size:14px}.site-footer ul{display:grid;gap:10px;margin:0;padding:0;list-style:none}.site-footer ul a{color:var(--muted);text-decoration:none}.site-footer ul a:hover{color:var(--accent)}.footer-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:56px;padding-top:24px;border-top:1px solid var(--line);color:var(--faint);font-size:14px}.footer-base a{color:var(--muted)}
