.hero:where(.astro-qmrutqly){padding-block:3.5rem 1rem}.eyebrow:where(.astro-qmrutqly){font-family:var(--sl-font-mono);text-transform:uppercase;letter-spacing:.08em;color:#8b95a7;margin:0;font-size:.6875rem;font-weight:400}h1:where(.astro-qmrutqly){font-family:var(--db-display,"Sora", sans-serif);letter-spacing:-.03em;color:#f8fafc;max-width:20ch;margin:1.25rem 0 0;font-size:clamp(2.4rem,5vw,3.6rem);font-weight:600;line-height:1.08}h1:where(.astro-qmrutqly) .cmd:where(.astro-qmrutqly){font-family:var(--sl-font-mono);letter-spacing:-.01em;word-spacing:-.35ch;font-size:.85em;font-weight:500}h1:where(.astro-qmrutqly) em:where(.astro-qmrutqly){color:#818cf8;padding-right:.1em;font-style:italic}.lede:where(.astro-qmrutqly){color:#cbd5e1;max-width:38rem;margin:1.5rem 0 0;font-size:1.0625rem;line-height:1.7}.actions:where(.astro-qmrutqly){flex-wrap:wrap;align-items:center;gap:1.75rem;margin:2.25rem 0 0;display:flex}.primary:where(.astro-qmrutqly){color:#000;background-color:#6366f1;border-radius:8px;padding:.65rem 1.25rem;font-size:.9375rem;font-weight:500;text-decoration:none;display:inline-block}.primary:where(.astro-qmrutqly):hover{background-color:#818cf8}.quiet:where(.astro-qmrutqly){color:#94a3b8;font-size:.9375rem;font-weight:500;text-decoration:none}.quiet:where(.astro-qmrutqly):hover{color:#818cf8}@media (width>=50rem){.hero:where(.astro-qmrutqly){padding-block:5rem 1.5rem}}.rail-section:where(.astro-7cgaobm2){padding-block:5rem 0}h2:where(.astro-7cgaobm2){font-family:var(--db-display,"Sora", sans-serif);letter-spacing:-.03em;color:#f8fafc;margin:0 0 2.5rem;font-size:1.75rem;font-weight:600;line-height:1.2}.rail:where(.astro-7cgaobm2){gap:2.25rem;margin:0;padding:0;list-style:none;display:grid}.step:where(.astro-7cgaobm2){position:relative}.num:where(.astro-7cgaobm2){width:fit-content;font-family:var(--sl-font-mono);color:#8b95a7;background-color:#020817;padding-right:.75rem;font-size:.75rem;display:block}.title:where(.astro-7cgaobm2){color:#f8fafc;margin-top:.85rem;font-size:1.0625rem;font-weight:600;text-decoration:none;display:inline-block}.title:where(.astro-7cgaobm2):after{content:"";position:absolute;inset:0}.arrow:where(.astro-7cgaobm2){color:#8b95a7;margin-inline-start:.45ch;transition:transform .15s;display:inline-block}.step:where(.astro-7cgaobm2):hover .title:where(.astro-7cgaobm2),.step:where(.astro-7cgaobm2):hover .arrow:where(.astro-7cgaobm2){color:#818cf8}.step:where(.astro-7cgaobm2):hover .arrow:where(.astro-7cgaobm2){transform:translate(2px)}@media (prefers-reduced-motion:reduce){.arrow:where(.astro-7cgaobm2){transition:none}.step:where(.astro-7cgaobm2):hover .arrow:where(.astro-7cgaobm2){transform:none}}.body:where(.astro-7cgaobm2){color:#94a3b8;max-width:34ch;margin:.5rem 0 0;font-size:.9375rem;line-height:1.65}@media (width>=50rem){.rail:where(.astro-7cgaobm2){grid-template-columns:repeat(3,1fr);gap:0 2.5rem;position:relative}.rail:where(.astro-7cgaobm2):before{content:"";inset-inline:0;background-color:#94a3b824;height:1px;position:absolute;top:.55em}.num:where(.astro-7cgaobm2){position:relative}}.frameworks:where(.astro-k7fgz5mm){padding-block:5rem}h2:where(.astro-k7fgz5mm){font-family:var(--db-display,"Sora", sans-serif);letter-spacing:-.03em;color:#f8fafc;margin:0 0 1.75rem;font-size:1.75rem;font-weight:600;line-height:1.2}.row:where(.astro-k7fgz5mm){border-top:1px solid #94a3b824;border-bottom:1px solid #94a3b824;flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.row:where(.astro-k7fgz5mm) li:where(.astro-k7fgz5mm){flex:auto}.row:where(.astro-k7fgz5mm) li:where(.astro-k7fgz5mm)+li:where(.astro-k7fgz5mm){border-inline-start:1px solid #94a3b814}a:where(.astro-k7fgz5mm){color:#e2e8f0;white-space:nowrap;padding:1rem 1.25rem;font-size:.9375rem;font-weight:500;text-decoration:none;display:block}a:where(.astro-k7fgz5mm):hover{color:#818cf8}.arrow:where(.astro-k7fgz5mm){color:#8b95a7;margin-inline-start:.4em;transition:transform .15s ease-out;display:inline-block}a:where(.astro-k7fgz5mm):hover .arrow:where(.astro-k7fgz5mm){color:#818cf8;transform:translate(2px)}@media (prefers-reduced-motion:reduce){.arrow:where(.astro-k7fgz5mm){transition:none}a:where(.astro-k7fgz5mm):hover .arrow:where(.astro-k7fgz5mm){transform:none}}@media (width<=30rem){.row:where(.astro-k7fgz5mm) li:where(.astro-k7fgz5mm){flex:100%}.row:where(.astro-k7fgz5mm) li:where(.astro-k7fgz5mm)+li:where(.astro-k7fgz5mm){border-inline-start:0;border-top:1px solid #94a3b814}}.band:where(.astro-3ofqzyuy){padding-inline:max(var(--sl-content-pad-x,1rem), calc(50vw - 36rem));background-color:#94a3b80a;border-top:1px solid #94a3b824;border-bottom:1px solid #94a3b824;margin-inline:calc(50% - 50vw);padding-block:4rem}.inner:where(.astro-3ofqzyuy){gap:3rem;display:grid}h2:where(.astro-3ofqzyuy){font-family:var(--db-display,"Sora", sans-serif);letter-spacing:-.02em;color:#f8fafc;margin:0 0 1.25rem;font-size:1.25rem;font-weight:600;line-height:1.2}dl:where(.astro-3ofqzyuy){margin:0}.entry:where(.astro-3ofqzyuy){border-top:1px solid #94a3b814;border-radius:6px;margin-inline:-.75rem;padding-block:.9rem;padding-inline:.75rem;position:relative}.entry:where(.astro-3ofqzyuy):hover{background-color:#94a3b80d}.entry:where(.astro-3ofqzyuy):last-child{border-bottom:1px solid #94a3b814}dt:where(.astro-3ofqzyuy) a:where(.astro-3ofqzyuy){color:#e2e8f0;font-size:.9375rem;font-weight:600;text-decoration:none}dt:where(.astro-3ofqzyuy) a:where(.astro-3ofqzyuy):after{content:"";position:absolute;inset:0}dt:where(.astro-3ofqzyuy) a:where(.astro-3ofqzyuy) .arrow:where(.astro-3ofqzyuy){color:#8b95a7;margin-inline-start:.45ch;transition:transform .15s;display:inline-block}.entry:where(.astro-3ofqzyuy):hover dt:where(.astro-3ofqzyuy) a:where(.astro-3ofqzyuy),.entry:where(.astro-3ofqzyuy):hover dt:where(.astro-3ofqzyuy) a:where(.astro-3ofqzyuy) .arrow:where(.astro-3ofqzyuy){color:#818cf8}.entry:where(.astro-3ofqzyuy):hover dt:where(.astro-3ofqzyuy) a:where(.astro-3ofqzyuy) .arrow:where(.astro-3ofqzyuy){transform:translate(2px)}@media (prefers-reduced-motion:reduce){dt:where(.astro-3ofqzyuy) a:where(.astro-3ofqzyuy) .arrow:where(.astro-3ofqzyuy){transition:none}.entry:where(.astro-3ofqzyuy):hover dt:where(.astro-3ofqzyuy) a:where(.astro-3ofqzyuy) .arrow:where(.astro-3ofqzyuy){transform:none}}dd:where(.astro-3ofqzyuy){color:#94a3b8;margin:.25rem 0 0;font-size:.875rem;line-height:1.6}@media (width>=50rem){.inner:where(.astro-3ofqzyuy){grid-template-columns:repeat(2,minmax(0,1fr));gap:4rem}}.api:where(.astro-3zppfwmr){padding-block:5rem 4rem}h2:where(.astro-3zppfwmr){font-family:var(--db-display,"Sora", sans-serif);letter-spacing:-.03em;color:#f8fafc;margin:0;font-size:1.75rem;font-weight:600;line-height:1.2}.line:where(.astro-3zppfwmr){color:#cbd5e1;max-width:44rem;margin:1rem 0 0;font-size:1rem;line-height:1.7}.line:where(.astro-3zppfwmr) code:where(.astro-3zppfwmr){font-family:var(--sl-font-mono);color:#e2e8f0;background-color:#94a3b817;border-radius:4px;padding:.1em .35em;font-size:.875em}.base-url:where(.astro-3zppfwmr){margin:1.25rem 0 0}.base-url:where(.astro-3zppfwmr) code:where(.astro-3zppfwmr){font-family:var(--sl-font-mono);color:#94a3b8;font-size:.875rem}.links:where(.astro-3zppfwmr){flex-wrap:wrap;gap:1.75rem;margin:2rem 0 0;display:flex}.links:where(.astro-3zppfwmr) a:where(.astro-3zppfwmr){color:#818cf8;font-size:.9375rem;font-weight:500;text-decoration:none}.links:where(.astro-3zppfwmr) a:where(.astro-3zppfwmr):hover{color:#c7d2fe}
