:root{--font-light:300;--font-regular:400;--font-medium:500;--font-semibold:600;--font-bold:700;--ease:cubic-bezier(.4, 0, .2, 1);--transition:.12s var(--ease);--font-ui:"Geist Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--font-prose:"IBM Plex Serif", Georgia, "Times New Roman", serif;--page-x:55px;--rail-w:235px;--rail-gap:43px;--rule-x:313px;--rule-gap:20px;--section-gap:120px;--type-display-2xl:var(--font-bold) 88px / 80px var(--font-prose);--type-display-xl:var(--font-bold) 64px / 60px var(--font-prose);--type-display-lg:var(--font-medium) 48px / 48px var(--font-prose);--type-display-md:var(--font-medium) 36px / 38px var(--font-prose);--tracking-display-2xl:-3.08px;--tracking-display-xl:-1.92px;--tracking-display-lg:-1.2px;--tracking-display-md:-.72px;--type-heading-xl:var(--font-semibold) 30px / 32px var(--font-ui);--type-heading-lg:var(--font-semibold) 24px / 26px var(--font-ui);--type-heading-md:var(--font-medium) 20px / 24px var(--font-ui);--type-heading-sm:var(--font-medium) 17px / 21px var(--font-ui);--type-heading-xs:var(--font-semibold) 14px / 18px var(--font-ui);--tracking-heading-xl:-.6px;--tracking-heading-lg:-.36px;--tracking-heading-md:-.2px;--tracking-heading-sm:-.09px;--tracking-heading-xs:0;--type-body-lg:var(--font-regular) 17px / 27px var(--font-ui);--type-body-md:var(--font-regular) 15px / 24px var(--font-ui);--type-body-md-medium:var(--font-medium) 15px / 24px var(--font-ui);--type-body-sm:var(--font-regular) 13px / 20px var(--font-ui);--type-body-xs:var(--font-regular) 12px / 18px var(--font-ui);--type-body-2xs:var(--font-light) 11px / 16px var(--font-ui);--tracking-body-lg:-.09px;--tracking-body-md:-.03px;--tracking-body-sm:0;--tracking-body-xs:0;--tracking-body-2xs:.06px;--type-quote-lg:italic var(--font-regular) 28px / 38px var(--font-prose);--type-quote-md:italic var(--font-regular) 21px / 30px var(--font-prose);--type-quote-attribution:var(--font-medium) 14px / 20px var(--font-prose);--tracking-quote-lg:-.42px;--tracking-quote-md:-.21px;--tracking-quote-attribution:0;--type-caption-lg:var(--font-medium) 12px / 14px var(--font-ui);--type-caption-md:var(--font-medium) 11px / 13px var(--font-ui);--type-caption-sm:var(--font-medium) 10px / 12px var(--font-ui);--type-caption-xs:var(--font-light) 9px / 11px var(--font-ui);--type-label-md:var(--font-semibold) 13px / 16px var(--font-ui);--type-label-sm:var(--font-semibold) 11px / 13px var(--font-ui);--tracking-caption-lg:.96px;--tracking-caption-md:1.1px;--tracking-caption-sm:1.2px;--tracking-caption-xs:1.26px;--tracking-label-md:.26px;--tracking-label-sm:.66px;--type-prose-lead:var(--font-light) 21px / 33px var(--font-prose);--type-prose-lg:var(--font-regular) 19px / 31px var(--font-prose);--type-prose-md:var(--font-regular) 17px / 28px var(--font-prose);--type-prose-sm:var(--font-regular) 15px / 25px var(--font-prose);--type-prose-emphasis:italic var(--font-regular) 17px / 28px var(--font-prose);--type-prose-strong:var(--font-semibold) 17px / 28px var(--font-prose);--type-prose-footnote:var(--font-light) 13px / 21px var(--font-prose);--tracking-prose-lead:-.21px;--tracking-prose-lg:-.15px;--tracking-prose-md:-.09px;--tracking-prose-sm:-.04px;--tracking-prose-footnote:0;--prose-gap:16px;--prose-gap-sm:14px;--type-mono-code:var(--font-regular) 13px / 22px var(--font-ui);--type-mono-data:var(--font-light) 12px / 18px var(--font-ui);--tracking-mono-code:0;--tracking-mono-data:.24px;--ink-000:#fff;--ink-025:#faf9f7;--ink-050:#f4f2ef;--ink-100:#e9e6e1;--ink-150:#dbd7d1;--ink-200:#c7c2ba;--ink-300:#ada79e;--ink-400:#8f8880;--ink-500:#726b63;--ink-600:#57514a;--ink-700:#3e3934;--ink-800:#2a2622;--ink-850:#1d1a17;--ink-900:#141210;--ink-950:#0d0b0a;--ink-1000:#050403;--bronze-050:#fbf3e7;--bronze-100:#f6e9d8;--bronze-200:#e8d2b4;--bronze-300:#d6b588;--bronze-400:#c29760;--bronze-500:#a97b42;--bronze-600:#8c6231;--bronze-700:#6d4a24;--bronze-800:#4b3218;--bronze-900:#2c1d0e;--success-050:#e9f1ea;--success-300:#7fbf8f;--success-500:#3e8e5a;--success-700:#24603c;--success-900:#12241a;--warning-050:#f7efdc;--warning-300:#e8c46a;--warning-500:#c9902b;--warning-700:#86601c;--warning-900:#291d08;--danger-050:#f7e7e2;--danger-300:#e58c7d;--danger-500:#c4462f;--danger-700:#8a2e1d;--danger-900:#2a100a;--info-050:#e6edf2;--info-300:#8fb0c7;--info-500:#4f7b99;--info-700:#2f5065;--info-900:#101e27}:root,html.dark{--bg-canvas:var(--ink-1000);--bg-surface:var(--ink-950);--bg-raised:var(--ink-900);--bg-sunken:var(--ink-1000);--bg-inverse:var(--ink-025);--bg-hover:var(--ink-850);--bg-active:var(--ink-800);--bg-accent:var(--bronze-400);--bg-accent-hover:var(--bronze-300);--bg-accent-subtle:var(--bronze-900);--text-primary:var(--ink-050);--text-secondary:var(--ink-300);--text-tertiary:var(--ink-400);--text-muted:var(--ink-500);--text-disabled:var(--ink-700);--text-inverse:var(--ink-950);--text-accent:var(--bronze-300);--text-on-accent:var(--ink-1000);--border-subtle:var(--ink-850);--border-default:var(--ink-800);--border-strong:var(--ink-600);--border-inverse:var(--ink-050);--border-accent:var(--bronze-400);--status-success-fg:var(--success-300);--status-success-bg:var(--success-900);--status-success-border:var(--success-500);--status-warning-fg:var(--warning-300);--status-warning-bg:var(--warning-900);--status-warning-border:var(--warning-500);--status-danger-fg:var(--danger-300);--status-danger-bg:var(--danger-900);--status-danger-border:var(--danger-500);--status-info-fg:var(--info-300);--status-info-bg:var(--info-900);--status-info-border:var(--info-500);--text-heading:var(--ink-200);--accent-dot:var(--bronze-800);--accent-dot-hover:var(--bronze-500)}@media (prefers-color-scheme:light){:root{--bg-canvas:var(--ink-025);--bg-surface:var(--ink-000);--bg-raised:var(--ink-050);--bg-sunken:var(--ink-100);--bg-inverse:var(--ink-950);--bg-hover:var(--ink-100);--bg-active:var(--ink-150);--bg-accent:var(--bronze-500);--bg-accent-hover:var(--bronze-600);--bg-accent-subtle:var(--bronze-100);--text-primary:var(--ink-950);--text-secondary:var(--ink-600);--text-tertiary:var(--ink-500);--text-muted:var(--ink-400);--text-disabled:var(--ink-300);--text-inverse:var(--ink-025);--text-accent:var(--bronze-600);--text-on-accent:var(--ink-025);--border-subtle:var(--ink-100);--border-default:var(--ink-150);--border-strong:var(--ink-300);--border-inverse:var(--ink-950);--border-accent:var(--bronze-500);--status-success-fg:var(--success-700);--status-success-bg:var(--success-050);--status-warning-fg:var(--warning-700);--status-warning-bg:var(--warning-050);--status-danger-fg:var(--danger-700);--status-danger-bg:var(--danger-050);--status-info-fg:var(--info-700);--status-info-bg:var(--info-050);--text-heading:var(--ink-800);--accent-dot:var(--bronze-500);--accent-dot-hover:var(--bronze-600)}}html.light{--bg-canvas:var(--ink-025);--bg-surface:var(--ink-000);--bg-raised:var(--ink-050);--bg-sunken:var(--ink-100);--bg-inverse:var(--ink-950);--bg-hover:var(--ink-100);--bg-active:var(--ink-150);--bg-accent:var(--bronze-500);--bg-accent-hover:var(--bronze-600);--bg-accent-subtle:var(--bronze-100);--text-primary:var(--ink-950);--text-secondary:var(--ink-600);--text-tertiary:var(--ink-500);--text-muted:var(--ink-400);--text-disabled:var(--ink-300);--text-inverse:var(--ink-025);--text-accent:var(--bronze-600);--text-on-accent:var(--ink-025);--border-subtle:var(--ink-100);--border-default:var(--ink-150);--border-strong:var(--ink-300);--border-inverse:var(--ink-950);--border-accent:var(--bronze-500);--status-success-fg:var(--success-700);--status-success-bg:var(--success-050);--status-warning-fg:var(--warning-700);--status-warning-bg:var(--warning-050);--status-danger-fg:var(--danger-700);--status-danger-bg:var(--danger-050);--status-info-fg:var(--info-700);--status-info-bg:var(--info-050);--text-heading:var(--ink-800);--accent-dot:var(--bronze-500);--accent-dot-hover:var(--bronze-600)}:root{--status-success-border:var(--success-500);--status-warning-border:var(--warning-500);--status-danger-border:var(--danger-500);--status-info-border:var(--info-500)}:root,html.dark,html.light{--bg:var(--bg-canvas);--bg-subtle:var(--bg-raised);--border:var(--border-subtle);--border-hi:var(--border-default);--text:var(--text-tertiary);--text-hi:var(--text-secondary);--text-lo:var(--text-muted);--text-dim:var(--text-muted);--badge-bg:var(--bg-raised);--slate-1:var(--bg-raised)}.theme-light-img{display:none!important}@media (prefers-color-scheme:light){.theme-dark-img{display:none!important}.theme-light-img{display:block!important}}html.light .theme-dark-img{display:none!important}html.light .theme-light-img,html.dark .theme-dark-img{display:block!important}html.dark .theme-light-img{display:none!important}@font-face{font-family:Geist Mono;src:url(/fonts/geist-mono-variable.woff2)format("woff2-variations");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Serif;src:url(/fonts/ibm-plex-serif-latin-300-normal.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap;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:IBM Plex Serif;src:url(/fonts/ibm-plex-serif-cyrillic-300-normal.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap;unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Serif;src:url(/fonts/ibm-plex-serif-latin-400-normal.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap;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:IBM Plex Serif;src:url(/fonts/ibm-plex-serif-cyrillic-400-normal.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Serif;src:url(/fonts/ibm-plex-serif-latin-400-italic.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap;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:IBM Plex Serif;src:url(/fonts/ibm-plex-serif-cyrillic-400-italic.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap;unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Serif;src:url(/fonts/ibm-plex-serif-latin-600-normal.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap;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:IBM Plex Serif;src:url(/fonts/ibm-plex-serif-cyrillic-600-normal.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap;unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Serif;src:url(/fonts/ibm-plex-serif-latin-500-normal.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap;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:IBM Plex Serif;src:url(/fonts/ibm-plex-serif-cyrillic-500-normal.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap;unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Serif;src:url(/fonts/ibm-plex-serif-latin-700-normal.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap;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:IBM Plex Serif;src:url(/fonts/ibm-plex-serif-cyrillic-700-normal.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:FixelVariable;src:url(/fonts/fixel-variable.woff2)format("woff2-variations");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:FixelVariable;src:url(/fonts/fixel-variable-italic.woff2)format("woff2-variations");font-weight:100 900;font-style:italic;font-display:swap}html,body,.layout-root{height:100%;margin:0;padding:0}html{box-sizing:border-box}*,:before,:after{box-sizing:inherit}body{font:var(--type-body-md);letter-spacing:var(--tracking-body-md);text-align:left;background-color:var(--bg-canvas);overflow-wrap:break-word;color:var(--text-tertiary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.layout-root{flex-direction:column;min-height:100vh;display:flex;position:relative}body.rail-rule:before{content:"";top:0;bottom:0;left:var(--rule-x);background:var(--border-subtle);pointer-events:none;z-index:0;width:.5px;position:fixed}main{flex:1;width:720px;max-width:calc(100% - 2em);margin:auto;padding:3em 0}h1,h2,h3,h4,h5,h6{font-family:var(--font-ui);font-weight:var(--font-medium);color:var(--text-secondary);letter-spacing:-.01em;margin:2rem 0 .5rem;line-height:1.2}h1{font-size:28px}h2{letter-spacing:var(--tracking-heading-md);font-size:20px;line-height:24px}h3{font-size:17px;line-height:27px}h4{font-size:15px}strong,b{font-weight:var(--font-medium);color:var(--text-secondary)}a{color:inherit;text-decoration-color:var(--border-strong);text-underline-offset:.25em;transition:color var(--transition), text-decoration-color var(--transition)}a:hover{color:var(--text-primary)}.link{text-underline-offset:.25em;text-decoration:underline!important;text-decoration-color:var(--border-strong)!important}.caption a{color:inherit}.caption a:hover{color:var(--text-secondary)}p{margin-bottom:.5em}figure{text-align:center;margin:2em 0 3em}figcaption{font:var(--type-body-sm);color:var(--text-muted);margin-top:.75em}abbr{text-transform:uppercase;text-decoration-color:var(--border-strong);text-underline-offset:.25em;letter-spacing:.05em}.prose{font:var(--type-prose-md);letter-spacing:var(--tracking-prose-md);color:var(--text-secondary)}.prose p{margin-bottom:var(--prose-gap)}.prose h1{font:var(--type-display-md);letter-spacing:var(--tracking-display-md);color:var(--text-heading)}.prose h2,.prose h3,.prose h4,.prose h5,.prose h6{font-family:var(--font-prose);font-weight:var(--font-semibold);color:var(--text-heading)}.prose h2{letter-spacing:var(--tracking-quote-lg);font-size:28px;line-height:38px}.prose h3{letter-spacing:var(--tracking-prose-lead);font-size:21px;line-height:33px}.prose h4,.prose h5,.prose h6{letter-spacing:var(--tracking-prose-lg);font-size:19px;line-height:31px}.prose strong,.prose b{font-weight:var(--font-semibold);color:inherit}.prose em,.prose i{font-style:italic}.prose blockquote,blockquote{font:var(--type-quote-md);letter-spacing:var(--tracking-quote-md);border-left:1px solid var(--border-default);color:var(--text-tertiary);margin:1.5em 0;padding:0 0 0 20px}.prose img{--breakout:min(120px, max(0px, calc((100vw - 720px) / 2 - 1em)));width:calc(100% + var(--breakout) * 2);max-width:calc(100% + var(--breakout) * 2);margin-left:calc(var(--breakout) * -1);border-radius:12px}.prose figure{--breakout:min(120px, max(0px, calc((100vw - 720px) / 2 - 1em)));width:calc(100% + var(--breakout) * 2);max-width:calc(100% + var(--breakout) * 2);margin-left:calc(var(--breakout) * -1);margin-right:calc(var(--breakout) * -1)}.prose figure .video-frame{border:1px solid var(--border-subtle);border-radius:20px;line-height:0;overflow:hidden}.prose figure img,.prose figure video{border-radius:12px;width:100%;max-width:100%;margin:0;display:block}.prose figure figcaption{max-width:100%;width:calc(100% - var(--breakout) * 2);margin-left:auto;margin-right:auto}.prose figcaption,.prose .caption,.prose .badge{font-family:var(--font-ui)}ul>li{list-style:none}ul>li:before{content:"·";color:var(--text-muted);width:.5em;margin-left:-.5em;font-size:1.25em;display:inline-block}input,textarea{width:100%;font-size:16px}table{width:100%}img,video{border-radius:8px;max-width:100%;height:auto}code{font:var(--type-mono-code);background-color:var(--bg-raised);border-radius:2px;padding:2px 5px}pre{font-family:var(--font-ui);border-radius:8px;padding:1.5em}pre>code{all:unset}hr{border:none;border-top:1px solid var(--border-subtle)}.star{color:red;margin-left:.6em}.main-description{font:var(--type-body-lg);letter-spacing:var(--tracking-body-lg);color:var(--text-tertiary);margin-bottom:.55em}.more{margin-left:4px}button,.coming-soon{color:var(--text-muted);border:solid 1px var(--border-subtle);font-family:var(--font-ui);font-size:13px;font-weight:var(--font-medium);transition:color var(--transition), border-color var(--transition), background-color var(--transition);background-color:#0000;border-radius:8px;padding:.5em 1em}button:hover{color:var(--text-tertiary);border-color:var(--border-default);cursor:pointer}.caption,.footnotes{font:var(--type-body-sm);color:var(--text-muted)}.footnotes p{margin:.65em 0}.text-center{text-align:center;max-width:500px;margin:.2em auto}.heading-group>h2{margin-top:.2em}.overlap{margin-top:-120px}.badge{background-color:var(--bg-raised);color:var(--text-muted);font:var(--type-caption-lg);letter-spacing:var(--tracking-caption-lg);text-transform:uppercase;white-space:nowrap;border-radius:100px;justify-content:center;align-items:center;padding:6px 12px;display:inline-flex}.section-label{font:var(--type-caption-lg);letter-spacing:var(--tracking-caption-lg);text-transform:uppercase;color:var(--text-muted);white-space:nowrap;align-items:center;gap:8px;display:flex}.preview-albums>div>img{min-width:108px}.preview-albums>div{white-space:normal;overflow-wrap:anywhere;word-break:break-word;position:relative}.item{padding:.5em 0}.item>p{margin:0}.medium{font-weight:var(--font-medium);line-height:1.35em}.border{border-bottom:.5px solid var(--border-subtle);padding-bottom:.8em}.hero-description{font:var(--type-body-lg);letter-spacing:var(--tracking-body-lg);color:var(--text-muted);text-align:left;margin-top:.83em}.page-container{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:2em;margin-top:3em;display:grid}img,.icon{border-radius:0}.spacer{margin:var(--section-gap) 0}.wide main{width:100%;max-width:none;padding:48px var(--page-x) 0;z-index:1;position:relative}.rail{grid-template-columns:var(--rail-w) minmax(0, 1fr);column-gap:var(--rail-gap);align-items:start;display:grid}.rail>.rail-side{grid-column:1}.rail>.rail-main{grid-column:2;min-width:0}@media (width<=1000px){body.rail-rule:before{display:none}.rail{grid-template-columns:minmax(0,1fr);row-gap:24px}.rail>.rail-side,.rail>.rail-main{grid-column:1}}@media (width<=720px){:root{--page-x:20px;--section-gap:80px}.wide main{padding:32px var(--page-x) 0}.main-description{font:var(--type-body-md);letter-spacing:var(--tracking-body-md)}.prose{font:var(--type-prose-sm);letter-spacing:var(--tracking-prose-sm)}.prose p{margin-bottom:var(--prose-gap-sm)}.prose h1{letter-spacing:var(--tracking-quote-lg);font-size:28px;line-height:38px}.prose h2{letter-spacing:var(--tracking-prose-lead);font-size:21px;line-height:33px}.prose h3,.prose h4,.prose h5,.prose h6{letter-spacing:var(--tracking-prose-md);font-size:17px;line-height:28px}figure{margin:0 0 3em}.overlap{margin-top:-80px}}.title{flex:1;margin:0;line-height:1.4}.sr-only{clip:rect(1px 1px 1px 1px);clip:rect(1px, 1px, 1px, 1px);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:0;padding:0;overflow:hidden;position:absolute!important}html.preload *{transition:none!important}::selection{color:var(--bg);background:var(--text-hi)}::selection{color:var(--bg);background:var(--text-hi)}footer[data-astro-cid-jo6i4kqk]{z-index:1;width:100%;padding:0 var(--page-x) 24px;font:var(--type-body-xs);color:var(--text-disabled);margin-top:192px;position:relative}.footer-content[data-astro-cid-jo6i4kqk]{justify-content:space-between;align-items:center;gap:24px;display:flex}.footer-right[data-astro-cid-jo6i4kqk]{display:inline}.foot-link[data-astro-cid-jo6i4kqk],.sep[data-astro-cid-jo6i4kqk]{color:var(--text-disabled);text-underline-offset:3px;text-decoration:underline}.foot-link[data-astro-cid-jo6i4kqk]:hover{color:var(--text-muted)}@media (width<=720px){footer[data-astro-cid-jo6i4kqk]{margin-top:80px}.footer-content[data-astro-cid-jo6i4kqk]{flex-direction:column;align-items:flex-start;gap:8px}}a[data-astro-cid-evkijfd6]{color:var(--text-lo);font-size:.9em;font-weight:var(--font-regular);text-decoration:none;display:inline-block}.theme-switcher[data-astro-cid-ijxc6blt]{width:26px;height:26px;color:var(--text-muted);cursor:pointer;transition:background var(--transition), color var(--transition);background:0 0;border:none;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding:5px;display:flex;transform:translateY(1px)}.theme-switcher[data-astro-cid-ijxc6blt]:hover{background:var(--bg-raised);color:var(--text-secondary)}.icon[data-astro-cid-ijxc6blt]{width:16px;height:16px;display:none}.theme-switcher[data-astro-cid-ijxc6blt][data-theme=dark] .icon-light[data-astro-cid-ijxc6blt],.theme-switcher[data-astro-cid-ijxc6blt][data-theme=light] .icon-dark[data-astro-cid-ijxc6blt]{display:block}header[data-astro-cid-nen7h5rs]{z-index:1;width:100%;position:relative}header[data-astro-cid-nen7h5rs] nav[data-astro-cid-nen7h5rs]{padding:42px var(--page-x) 0;justify-content:space-between;align-items:center;gap:24px;display:flex}.name-link[data-astro-cid-nen7h5rs]{color:var(--text-muted);flex-shrink:0;align-items:center;gap:12px;text-decoration:none;display:flex}.name-dot[data-astro-cid-nen7h5rs]{background:var(--accent-dot);width:8px;height:8px;transition:background var(--transition);border-radius:50%;flex-shrink:0}.name-link[data-astro-cid-nen7h5rs]:hover{color:var(--text-secondary)}.name-link[data-astro-cid-nen7h5rs]:hover .name-dot[data-astro-cid-nen7h5rs]{background:var(--accent-dot-hover)}.name[data-astro-cid-nen7h5rs]{font:var(--type-body-lg);letter-spacing:var(--tracking-body-lg);white-space:nowrap;display:block}.nav-end[data-astro-cid-nen7h5rs]{flex-shrink:0;align-items:center;gap:24px;display:flex}.social-links[data-astro-cid-nen7h5rs]{font:var(--type-body-lg);letter-spacing:var(--tracking-body-lg);color:var(--text-muted);white-space:nowrap;align-items:center;display:flex}.soc-link[data-astro-cid-nen7h5rs],.sep[data-astro-cid-nen7h5rs]{color:var(--text-muted);text-underline-offset:3px;text-decoration:underline}.soc-link[data-astro-cid-nen7h5rs]:hover{color:var(--text-secondary)}.divider[data-astro-cid-nen7h5rs]{background:var(--border-default);flex-shrink:0;width:1px;height:24px}.links[data-astro-cid-nen7h5rs]{flex-shrink:0;align-items:center;gap:24px;display:flex}.menu-item[data-astro-cid-nen7h5rs]{font:var(--type-body-lg);letter-spacing:var(--tracking-body-lg);color:var(--text-muted);white-space:nowrap;transition:color var(--transition);text-decoration:none}.menu-item[data-astro-cid-nen7h5rs]:hover,.menu-item[data-astro-cid-nen7h5rs].active{color:var(--text-secondary)}.collect-subnav[data-astro-cid-nen7h5rs]{padding:32px var(--page-x) 0;flex-shrink:0;gap:8px;display:flex}.collect-pill[data-astro-cid-nen7h5rs]{transition:background-color var(--transition), color var(--transition);text-decoration:none}.collect-pill[data-astro-cid-nen7h5rs]:hover{background:var(--bg-hover)}.collect-pill[data-astro-cid-nen7h5rs].active{background:var(--bg-hover);color:var(--text-secondary)}.mob-fab-nav[data-astro-cid-nen7h5rs]{bottom:max(24px, env(safe-area-inset-bottom,0px) + 16px);z-index:100;pointer-events:none;flex-direction:column;align-items:flex-end;gap:8px;display:none;position:fixed;right:24px}.mob-menu[data-astro-cid-nen7h5rs]{pointer-events:all;flex-direction:column;align-items:flex-end;gap:8px;display:none}.mob-menu[data-astro-cid-nen7h5rs].open{animation:mob-menu-in .12s var(--ease) forwards;display:flex}@keyframes mob-menu-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.mob-pill[data-astro-cid-nen7h5rs]{background:var(--bg-raised);border:1px solid var(--border-subtle);height:44px;color:var(--text-tertiary);font:var(--type-body-sm);text-transform:uppercase;letter-spacing:var(--tracking-caption-lg);white-space:nowrap;pointer-events:all;transition:background-color var(--transition), color var(--transition);border-radius:24px;justify-content:center;align-items:center;padding:0 20px;text-decoration:none;display:flex}.mob-pill[data-astro-cid-nen7h5rs].active,.mob-pill[data-astro-cid-nen7h5rs]:active{background:var(--bg-hover);color:var(--text-secondary)}.fab[data-astro-cid-nen7h5rs]{background:var(--bg-raised);border:1px solid var(--border-default);cursor:pointer;pointer-events:all;width:48px;height:48px;transition:background-color var(--transition), border-color var(--transition);border-radius:24px;justify-content:center;align-items:center;padding:0;display:flex}.fab[data-astro-cid-nen7h5rs]:active,.fab[data-astro-cid-nen7h5rs].open{background:var(--bg-hover);border-color:var(--border-strong)}.fab-lines[data-astro-cid-nen7h5rs]{flex-direction:column;gap:4px;width:20px;display:flex}.fab-lines[data-astro-cid-nen7h5rs] span[data-astro-cid-nen7h5rs]{background:var(--text-tertiary);width:100%;height:1px;transition:transform var(--transition), opacity var(--transition);display:block}.fab[data-astro-cid-nen7h5rs].open .fab-lines[data-astro-cid-nen7h5rs] span[data-astro-cid-nen7h5rs]:first-child{transform:translateY(5px)rotate(45deg)}.fab[data-astro-cid-nen7h5rs].open .fab-lines[data-astro-cid-nen7h5rs] span[data-astro-cid-nen7h5rs]:nth-child(2){opacity:0;transform:scaleX(0)}.fab[data-astro-cid-nen7h5rs].open .fab-lines[data-astro-cid-nen7h5rs] span[data-astro-cid-nen7h5rs]:nth-child(3){transform:translateY(-5px)rotate(-45deg)}html.nav-compact .links[data-astro-cid-nen7h5rs],html.nav-compact .divider[data-astro-cid-nen7h5rs]{display:none}html.nav-compact .mob-fab-nav[data-astro-cid-nen7h5rs]{display:flex}@media (width<=720px){header[data-astro-cid-nen7h5rs] nav[data-astro-cid-nen7h5rs]{padding:24px var(--page-x) 0;gap:16px}.nav-end[data-astro-cid-nen7h5rs]{gap:16px}.links[data-astro-cid-nen7h5rs],.divider[data-astro-cid-nen7h5rs]{display:none}.name[data-astro-cid-nen7h5rs],.social-links[data-astro-cid-nen7h5rs]{font:var(--type-body-sm)}.mob-fab-nav[data-astro-cid-nen7h5rs]{display:flex}.collect-subnav[data-astro-cid-nen7h5rs]{scrollbar-width:none;padding-top:24px;overflow-x:auto}.collect-subnav[data-astro-cid-nen7h5rs]::-webkit-scrollbar{display:none}.collect-pill[data-astro-cid-nen7h5rs]{flex-shrink:0}main{padding-bottom:96px}}html.nav-compact main{padding-bottom:96px}
