@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500&family=Manrope:wght@700;800&display=swap");*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.55;background:var(--bg);color:var(--fg);transition:background-color .3s ease,color .3s ease}a{color:inherit}:root{--wrap:76ch;--x:clamp(16px,4vw,28px);--v1:clamp(12px,1.2vw,16px);--v2:clamp(22px,1.8vw,32px);--v3:clamp(60px,4.5vw,96px);--body:clamp(1.02rem,1.4vw,1.12rem);--brand:clamp(1.00rem,1.2vw,1.15rem);--h2:clamp(1.35rem,3.2vw,1.60rem);--page-h1:clamp(1.60rem,3.8vw,2.00rem);--h1:clamp(2.10rem,5.2vw,2.60rem);--bg:#fff;--fg:#111;--hair:color-mix(in oklab,var(--fg) 12%,transparent);--chrome-light:#fff;--chrome-dark:#0b0b0b;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--bg:#0b0b0b;--fg:#eaeaea;--hair:color-mix(in oklab,var(--fg) 15%,transparent)}}:root[data-theme=light]{--bg:#fff;--fg:#111;--hair:color-mix(in oklab,var(--fg) 12%,transparent)}:root[data-theme=dark]{--bg:#0b0b0b;--fg:#eaeaea;--hair:color-mix(in oklab,var(--fg) 15%,transparent)}[data-so-root]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[data-so-root] .container{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--x)}[data-so-root] section[data-section]{padding-block:var(--v3);border-top:1px solid var(--hair);text-align:left}[data-so-root] section[data-section]:first-of-type{border-top:0}[data-so-root] h1,[data-so-root] h2{font-family:Manrope,Inter,sans-serif;letter-spacing:-.01em;margin:0 0 var(--v1)}[data-so-root] h1{font-size:var(--h2);line-height:1.2;font-weight:700;text-wrap:balance}[data-so-root] h2{font-size:var(--h2);line-height:1.35;font-weight:700}[data-so-root] .hero h1{font-size:var(--h1);line-height:1.1;font-weight:800}[data-so-root] .mini-hero h1{font-size:var(--page-h1);line-height:1.18;font-weight:700}[data-so-root] .mini-hero:last-child{border-bottom:1px solid var(--hair)}[data-so-root] p{font-size:var(--body);margin:0 0 var(--v2)}[data-so-root] .hero p{font-style:normal!important}.progress{position:fixed;top:0;left:0;height:2px;width:0;background:currentColor;z-index:9999}html.scrolled [data-so-root] header{box-shadow:0 1px 0 var(--hair)}[data-so-root] header nav{display:grid!important;grid-template-columns:1fr auto 1fr!important;align-items:center!important;width:100%!important;height:56px;grid-gap:16px!important;gap:16px!important}[data-so-root] .brand{font:800 var(--h2)/1.25 Manrope,Inter,sans-serif;letter-spacing:-.01em;text-decoration:none!important}[data-so-root] nav .nav-links{display:flex!important;gap:clamp(16px,2.5vw,24px);grid-column:3!important;justify-self:end!important}[data-so-root] nav [data-nav]:not(.brand){font-size:clamp(.9rem,1.2vw,1rem);font-weight:400}[data-so-root] .theme-toggle{border-radius:8px;border:1px solid;background:none;font-size:clamp(.9rem,1.2vw,1rem);font-weight:400;font-family:inherit;cursor:pointer;transition:opacity .15s ease,background-size .2s ease,background-color .15s ease,transform .12s ease}[data-so-root] .theme-toggle,[data-so-root] nav [data-nav]:not(.brand){display:inline-block;padding:8px 10px;color:inherit;opacity:.78;outline:none;-webkit-tap-highlight-color:transparent}[data-so-root] nav [data-nav]:not(.brand){border-radius:8px;text-decoration:none;transition:opacity .15s ease}[data-so-root] .brand{opacity:1;transition:opacity .2s ease,transform .2s ease;grid-column:1!important;justify-self:start!important}body:not(.scrolled) [data-so-root] .brand{opacity:.95;transform:translateY(-.5px)}body.scrolled [data-so-root] .brand{opacity:.8;transform:none}@media (hover:hover) and (pointer:fine){[data-so-root] .theme-toggle,[data-so-root] nav [data-nav]:not(.brand){background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:0 100%;background-size:0 1px;transition:background-size .2s ease,background-color .15s ease,opacity .15s ease,transform .12s ease}[data-so-root] .theme-toggle:hover,[data-so-root] nav [data-nav]:not(.brand):hover{background-size:100% 1px;background-color:color-mix(in srgb,currentColor 8%,transparent);opacity:1;transform:translateY(-1px)}}[data-so-root] nav [data-nav]:not(.brand)[aria-current]{background-size:100% 1px;box-shadow:inset 0 -1px 0 currentColor;opacity:1}[data-so-root] .theme-toggle:focus-visible,[data-so-root] nav [data-nav]:not(.brand):focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,currentColor 24%,transparent)}[data-so-root] .nav-copy{display:inline-block;padding:var(--v1) var(--v1) var(--v1) calc(var(--v1) + 18px);border-radius:8px;text-decoration:none;color:inherit;opacity:.78;-webkit-user-select:text;-moz-user-select:text;user-select:text;position:relative;outline:none;font-size:clamp(.9rem,1.2vw,1rem);font-weight:400;-webkit-tap-highlight-color:transparent;transition:opacity .15s ease}[data-so-root] .nav-copy:before{content:"";position:absolute;left:0;top:.35rem;bottom:.35rem;width:1px;background:var(--hair);transform:translateX(.5px)}@media (hover:hover) and (pointer:fine){[data-so-root] .nav-copy{background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:0 100%;background-size:0 1px;transition:background-size .2s ease,opacity .15s ease,transform .12s ease}[data-so-root] .nav-copy:hover{background-size:100% 1px;opacity:1;transform:translateY(-1px)}}[data-so-root] .nav-copy:after{content:" ⧉";opacity:0;transform:translateY(1px);transition:opacity .15s ease}@media (hover:hover) and (pointer:fine){[data-so-root] .nav-copy:hover:after{opacity:.9}}[data-so-root] .nav-copy:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,currentColor 24%,transparent)}[data-so-root] .nav-copy[data-state=copied]:after{content:" ✓";opacity:1}[data-so-root] .nav-copy[aria-current]{background-size:100% 1px;opacity:1}[data-so-root] .stack{display:grid;grid-gap:var(--v2);gap:var(--v2)}[data-so-root] .block{position:relative;padding:var(--v1) var(--v1) var(--v1) calc(var(--v1) + 18px)}[data-so-root] .block:before{content:"";position:absolute;left:0;top:.35rem;bottom:.35rem;width:1px;background:var(--hair);transform:translateX(.5px)}[data-so-root] .block>*{margin:0 0 .5rem}[data-so-root] .block>:last-child{margin-bottom:0}[data-so-texture]:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background:repeating-linear-gradient(90deg,color-mix(in oklab,CanvasText 6%,transparent) 0 1px,transparent 1px 24px),repeating-linear-gradient(180deg,color-mix(in oklab,CanvasText 6%,transparent) 0 1px,transparent 1px 24px);mix-blend-mode:multiply;opacity:.45}@media (prefers-color-scheme:dark){[data-so-texture]:before{opacity:.25}}[data-so-root] .reveal{opacity:0;transform:translateY(6px);transition:opacity .35s ease,transform .35s ease}[data-so-root] .reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){[data-so-root] .reveal{transition:none}}[data-so-root] .button{display:inline-block;padding:10px 16px;border:1px solid;border-radius:8px;text-decoration:none;color:inherit;background:none;cursor:pointer;font-size:inherit;font-family:inherit;transition:background-color .15s ease,transform .12s ease}[data-so-root] .button.primary{background:currentColor;color:var(--bg);border-color:currentColor}@media (hover:hover) and (pointer:fine){[data-so-root] .button:hover{transform:translateY(-1px)}}[data-so-root] .tags{display:flex;gap:8px;overflow:auto;padding-bottom:6px;scroll-snap-type:x proximity}[data-so-root] .tag{scroll-snap-align:start;white-space:nowrap;padding:6px 10px;border:1px solid var(--hair);border-radius:999px;font-size:.92rem;transition:transform .2s ease,border-color .2s ease;cursor:default}@media (hover:hover) and (pointer:fine){[data-so-root] .tag:hover{transform:translateY(-1px);border-color:color-mix(in oklab,CanvasText 20%,transparent)}}@media (prefers-reduced-motion:reduce){[data-so-root] .tag{transition:none}}[data-so-root] .skip{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}[data-so-root] .skip:focus{left:16px;top:10px;width:auto;height:auto;padding:6px 10px;background:var(--bg);border:1px solid;z-index:50}body,html{height:100%}[data-so-root].site-layout{min-height:100vh;display:flex;flex-direction:column}[data-so-root] .main-content{flex:1 1;text-align:left!important}[data-so-root] .site-footer{margin-top:auto;text-align:center;padding-top:var(--v3);padding-bottom:max(var(--v2),env(safe-area-inset-bottom))}[data-so-root] .site-footer small{opacity:.6;font-size:.85rem}.safe-bottom{padding-bottom:max(var(--v2),env(safe-area-inset-bottom))}[data-so-root] .page-head{padding-block:var(--v3);padding-inline:var(--x);border-bottom:1px solid var(--hair);margin-bottom:var(--v2);text-align:left;max-width:var(--wrap);margin-inline:auto}[data-so-root] .page-head h1{font-family:Manrope,Inter,sans-serif;letter-spacing:-.01em;font-size:var(--h1-5);line-height:1.2;margin:0 0 .25rem;font-weight:700;text-wrap:balance}[data-so-root] .page-head .eyebrow{font:600 .85rem/1.4 Inter,system-ui,sans-serif;opacity:.7;letter-spacing:.04em;text-transform:uppercase}[data-so-root] .page-head p{margin:0;max-width:60ch}