:root{--in0-void: #0D1117;--in1-iron: #374151;--in2-slate: #4B5563;--in3-ash: #6B7280;--bm0-sand: #D5D2C7;--bm1-mist: #E9E6DC;--bm2-birch: #F7F6F3;--fo0-sage: #5C9E86;--fo1-fern: #3E7A62;--fo2-forest: #2D5E4A;--fo3-deepwater: #254D5A;--bl0-ember: #C5414C;--bl1-ochre: #AB5A2B;--bl2-grain: #8D6B20;--bl3-moss: #567A37;--bl4-heather: #885DB4}:root{--space-xs: .375rem;--space-sm: .75rem;--space-md: 1.5rem;--space-lg: 2.25rem;--space-xl: 3rem;--space-2xl: 3.75rem;--space-3xl: 4.5rem;--space-4xl: 6rem;--width-content: 1080px;--width-prose: 70ch;--width-narrow: 640px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-full: 9999px;--z-base: 0;--z-raised: 1;--z-content: 10;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 300;--z-modal: 400;--z-toast: 500}:root{--duration-fast: 80ms;--duration-base: .12s;--duration-slow: .2s;--duration-enter: .25s;--duration-reveal: .4s;--ease-default: ease;--ease-out: ease-out;--ease-spring: cubic-bezier(.16, 1, .3, 1)}:root,[data-theme=light]{background:var(--color-bg);--color-bg: var(--bm2-birch);--color-bg-panel: var(--bm1-mist);--color-bg-inset: var(--bm0-sand);--color-text: var(--in0-void);--color-text-secondary: var(--in2-slate);--color-text-tertiary: var(--in3-ash);--color-border: var(--in3-ash);--color-border-strong: var(--in1-iron);--color-border-subtle: rgba(55,65,81,.12);--color-ghost-border: rgba(55,65,81,.25);--color-bg-code: var(--fo3-deepwater);--color-accent: var(--fo1-fern);--color-accent-hover: var(--fo2-forest);--color-accent-active: var(--fo3-deepwater);--color-accent-text: var(--bm2-birch);--color-error: var(--bl0-ember);--color-warning: var(--bl2-grain);--color-success: var(--bl3-moss);--color-on-error: var(--bm2-birch);--color-card-highlight-bg: var(--in0-void);--color-card-highlight-border: transparent;--color-section: var(--color-bg);--color-section-next: var(--color-bg-panel);--color-section-base: var(--color-bg);--color-section-layer: var(--color-bg-panel);--color-section-overlay: var(--color-bg-inset)}[data-theme=dark]{background:var(--color-bg);--color-bg: var(--in0-void);--color-bg-panel: var(--in1-iron);--color-bg-inset: var(--in2-slate);--color-text: var(--bm2-birch);--color-text-secondary: var(--bm1-mist);--color-text-tertiary: var(--bm0-sand);--color-border: var(--in2-slate);--color-border-strong: var(--bm0-sand);--color-border-subtle: rgba(75,85,99,.25);--color-ghost-border: rgba(247,246,243,.25);--color-bg-code: var(--in1-iron);--color-accent: var(--fo1-fern);--color-accent-hover: var(--fo0-sage);--color-accent-active: var(--fo2-forest);--color-accent-text: var(--bm2-birch);--color-error: var(--bl0-ember);--color-warning: var(--bl2-grain);--color-success: var(--bl3-moss);--color-on-error: var(--bm2-birch);--color-card-highlight-bg: var(--in1-iron);--color-card-highlight-border: var(--in2-slate);--btn-s-hover-bg: var(--in3-ash);--btn-g-active-bg: var(--in0-void);--overlap-card-shadow-raised: 0 -4px 32px rgba(0, 0, 0, .4)}[data-surface=base]{background:var(--bm2-birch);--color-bg: var(--bm2-birch)}[data-theme=dark] [data-surface=base],[data-surface=base][data-theme=dark]{background:var(--in0-void);--color-bg: var(--in0-void)}[data-surface=layer]{background:var(--bm1-mist);--color-bg: var(--bm1-mist);--color-bg-panel: var(--bm2-birch)}[data-theme=dark] [data-surface=layer],[data-surface=layer][data-theme=dark]{background:var(--in1-iron);--color-bg: var(--in1-iron);--color-bg-panel: var(--in2-slate);--color-bg-code: var(--in2-slate)}[data-surface=overlay]{background:var(--bm0-sand);--color-bg: var(--bm0-sand)}[data-theme=dark] [data-surface=overlay],[data-surface=overlay][data-theme=dark]{background:var(--in2-slate);--color-bg: var(--in2-slate);--color-bg-panel: var(--in2-slate);--color-bg-inset: var(--in1-iron)}:root{--btn-radius: var(--radius-md);--btn-disabled-opacity: .5;--btn-p-bg: var(--color-accent);--btn-p-text: var(--color-accent-text);--btn-p-border: transparent;--btn-p-hover-bg: var(--color-accent-hover);--btn-s-bg: var(--color-bg-inset);--btn-s-text: var(--color-text);--btn-s-border: transparent;--btn-s-hover-bg: var(--color-bg-panel);--btn-g-bg: transparent;--btn-g-text: var(--color-text);--btn-g-border: var(--color-border);--btn-g-hover-bg: var(--color-bg-panel);--btn-d-bg: var(--color-error);--btn-d-text: var(--color-on-error);--btn-d-border: transparent;--btn-d-hover-bg: var(--in0-void);--btn-p-active-bg: var(--color-accent-active);--btn-s-active-bg: var(--color-bg-inset);--btn-g-active-bg: var(--bm0-sand);--btn-d-active-bg: var(--in0-void);--link-color: var(--color-accent);--link-hover-color: var(--color-accent-hover);--link-visited-color: var(--color-accent);--card-bg: var(--color-bg-panel);--card-hover-bg: var(--color-bg-inset);--card-border: transparent;--card-radius: var(--radius-lg);--card-padding: var(--space-md);--card-highlight-bg: var(--color-card-highlight-bg);--card-highlight-border: var(--color-card-highlight-border);--card-highlight-text: var(--bm2-birch);--card-highlight-text-secondary: var(--bm1-mist);--card-highlight-text-tertiary: var(--bm0-sand);--overlap-section-radius: var(--radius-xl);--overlap-section-offset: 60px;--overlap-card-radius: var(--card-radius);--overlap-card-offset: 80px;--overlap-card-duration: .7s;--overlap-card-shadow-raised: 0 -4px 32px rgba(0, 0, 0, .14);--wave-height: 80px;--arc-height: 80px;--input-radius: var(--radius-md);--input-bg: var(--color-bg-panel);--input-bg-active: var(--color-bg-inset);--input-border: transparent;--input-border-focus: var(--color-accent);--input-border-error: var(--color-error);--input-focus-shadow: 0 0 0 3px color-mix(in srgb, var(--color-accent) 15%, transparent);--input-text: var(--color-text);--input-placeholder: var(--color-text-tertiary);--input-disabled-opacity: .4;--accordion-border: var(--color-border);--accordion-radius: var(--radius-md);--accordion-summary-bg: transparent;--accordion-summary-hover-bg: var(--color-bg-panel);--accordion-panel-bg: transparent;--accordion-font-size: .9375rem;--btn-font-size: .8125rem;--btn-sm-font-size: .75rem;--btn-lg-font-size: .875rem;--label-font-size: .875rem;--input-font-size: .875rem;--badge-font-size: .6875rem;--hint-font-size: .8125rem;--breadcrumb-font-size: .875rem}.badge{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:var(--radius-sm);font-size:var(--badge-font-size);font-weight:600;letter-spacing:.04em}.badge-general{background:var(--bm0-sand);color:var(--in0-void)}.badge-published{background:var(--bl3-moss);color:var(--color-accent-text)}.badge-draft{background:var(--bl2-grain);color:var(--color-accent-text)}.badge-archived{background:var(--bl0-ember);color:var(--color-accent-text)}.badge-beta{background:var(--bl4-heather);color:var(--color-accent-text)}.badge-research{background:var(--bl1-ochre);color:var(--color-accent-text)}.badge-category{background:var(--fo2-forest);color:var(--color-accent-text)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:40px;padding:0 16px;border-radius:var(--btn-radius);border:1px solid transparent;font-size:var(--btn-font-size);font-weight:600;font-family:inherit;line-height:1;white-space:nowrap;cursor:pointer;text-decoration:none;appearance:none;transition:background var(--duration-fast) var(--ease-out)}.btn:disabled,.btn[aria-disabled=true]{opacity:var(--btn-disabled-opacity);pointer-events:none}.btn-p{background:var(--btn-p-bg);color:var(--btn-p-text);border-color:var(--btn-p-border);--btn-hover-bg: var(--btn-p-hover-bg);--btn-active-bg: var(--btn-p-active-bg)}.btn-s{background:var(--btn-s-bg);color:var(--btn-s-text);border-color:var(--btn-s-border);--btn-hover-bg: var(--btn-s-hover-bg);--btn-active-bg: var(--btn-s-active-bg)}.btn-g{background:var(--btn-g-bg);color:var(--btn-g-text);border-color:var(--btn-g-border);--btn-hover-bg: var(--btn-g-hover-bg);--btn-active-bg: var(--btn-g-active-bg)}.btn-d{background:var(--btn-d-bg);color:var(--btn-d-text);border-color:var(--btn-d-border);--btn-hover-bg: var(--btn-d-hover-bg);--btn-active-bg: var(--btn-d-active-bg)}.btn:hover{background:var(--btn-hover-bg)}.btn:active{background:var(--btn-active-bg)}.btn-sm{height:32px;padding:0 12px;font-size:var(--btn-sm-font-size)}.btn-lg{height:48px;padding:0 20px;font-size:var(--btn-lg-font-size)}label{display:block;font-size:var(--label-font-size);font-weight:500;color:var(--color-text);margin-bottom:var(--space-xs)}input:not([type=checkbox]):not([type=radio]),textarea,select{display:block;width:100%;padding:0 var(--space-sm);height:40px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--input-radius);color:var(--input-text);font-family:inherit;font-size:var(--input-font-size);line-height:1;transition:background var(--duration-base) var(--ease-default),border-color var(--duration-base) var(--ease-default),box-shadow var(--duration-base) var(--ease-default);appearance:none}textarea{height:auto;padding:var(--space-sm);line-height:1.5;resize:vertical;min-height:80px}:is(input,textarea,select):hover{background:var(--input-bg-active)}:is(input,textarea,select):focus{outline:none;background:var(--input-bg-active);border-color:var(--input-border-focus);box-shadow:var(--input-focus-shadow)}:is(input,textarea,select):disabled{opacity:var(--input-disabled-opacity);cursor:not-allowed}:is(input,textarea,select)::placeholder{color:var(--input-placeholder)}:is(input,textarea,select)[aria-invalid=true],.form-field--error :is(input,textarea,select){border-color:var(--input-border-error)}.form-field--error label,.form-field--error .form-hint{color:var(--color-error)}input[type=checkbox],input[type=radio]{accent-color:var(--color-accent)}.form-field{display:flex;flex-direction:column;margin-bottom:var(--space-md)}.form-hint{font-size:var(--hint-font-size);color:var(--color-text-tertiary);margin-top:var(--space-xs)}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-md)}.card{display:flex;flex-direction:column;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--card-radius);padding:var(--card-padding)}.card:has(>.card-header,>.card-body,>.card-footer,>.card-media){padding:0}.card-outlined{border-color:var(--color-border)}.card-highlight{background:var(--card-highlight-bg);border-color:var(--card-highlight-border);color:var(--card-highlight-text);--color-text: var(--card-highlight-text);--color-text-secondary: var(--card-highlight-text-secondary);--color-text-tertiary: var(--card-highlight-text-tertiary)}.card-interactive{cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.card-interactive:hover{background:var(--card-hover-bg)}.card-interactive:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.card-interactive:active{transform:scale(.99)}.card-media{overflow:hidden;border-radius:var(--card-radius) var(--card-radius) 0 0}.card-media img{width:100%}.card-header{padding:var(--card-padding)}.card-body{padding:var(--card-padding);flex:1}.card-footer{padding:var(--card-padding);margin-top:auto;display:flex;flex-wrap:wrap;gap:var(--space-xs);align-items:center}.card-body+.card-footer{border-top:1px solid var(--color-border-subtle)}.overlap-preceding{overflow:visible;padding-bottom:var(--space-lg)}.overlap-section{position:relative;z-index:var(--z-raised);margin-top:calc(-1 * var(--overlap-section-offset));border-radius:var(--overlap-section-radius) var(--overlap-section-radius) 0 0;padding-top:calc(var(--overlap-section-offset) + var(--space-xl))}.overlap-card{position:relative;z-index:var(--z-raised);margin-top:calc(-1 * var(--overlap-card-offset));border-radius:var(--overlap-card-radius);background:var(--card-bg);padding:var(--card-padding);opacity:0;transform:translateY(40px);box-shadow:0 0 #0000;transition-property:opacity,transform,box-shadow;transition-duration:var(--overlap-card-duration);transition-timing-function:var(--ease-out);transition-delay:.05s}.overlap-card.is-visible{opacity:1;transform:translateY(0);box-shadow:var(--overlap-card-shadow-raised)}@media(prefers-reduced-motion:reduce){.overlap-card{opacity:1;transform:none;transition:none}}.section-wave{position:absolute;bottom:0;left:0;width:100%;overflow:hidden;line-height:0;opacity:0;transform:translateY(24px);transition-property:opacity,transform;transition-duration:var(--duration-reveal);transition-timing-function:var(--ease-out)}.section-wave svg{display:block;width:100%;height:var(--wave-height)}.section-wave.is-visible{opacity:1;transform:translateY(0);transition-delay:.1s}@media(prefers-reduced-motion:reduce){.section-wave{opacity:1;transform:none;transition:none}}.section-arc{position:absolute;bottom:0;left:0;width:100%;line-height:0}.section-arc svg{display:block;width:100%;height:var(--arc-height)}@supports (animation-timeline: view()){@keyframes arc-expand{0%{clip-path:polygon(0% 100%,50% 100%,100% 100%)}to{clip-path:polygon(0% 100%,50% 0%,100% 100%)}}.section-arc svg{clip-path:polygon(0% 100%,50% 100%,100% 100%);animation:arc-expand linear both;animation-timeline:view();animation-range:entry 20% cover 60%}}.section-arc--concave svg{clip-path:none;animation:none}@media(prefers-reduced-motion:reduce){.section-arc svg{clip-path:none;animation:none}}.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;list-style:none;padding:0;margin:0;font-size:var(--breadcrumb-font-size)}.breadcrumb-item{display:flex;align-items:center;color:var(--color-text-secondary)}.breadcrumb-item:not(:last-child):after{content:"›";content:"›" / "";margin:0 var(--space-xs)}.breadcrumb-item a{color:inherit;text-decoration:none;transition:color var(--duration-fast) var(--ease-out)}.breadcrumb-item a:hover,.breadcrumb-item a[aria-current=page]{color:var(--color-text)}.accordion{border:1px solid var(--accordion-border);border-radius:var(--accordion-radius);overflow:hidden}.accordion details+details{border-top:1px solid var(--accordion-border)}.accordion summary{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-md);background:var(--accordion-summary-bg);font-size:var(--accordion-font-size);font-weight:500;cursor:pointer;list-style:none;user-select:none;transition:background var(--duration-fast) var(--ease-out)}.accordion summary::-webkit-details-marker,.accordion summary::marker{display:none}.accordion summary:hover{background:var(--accordion-summary-hover-bg)}.accordion summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.accordion summary:after{content:"+" / "";font-size:1.25rem;line-height:1;color:var(--color-text-secondary);flex-shrink:0;transition:transform var(--duration-base) var(--ease-out)}.accordion details[open]>summary:after{transform:rotate(45deg)}.accordion-panel{padding:0 var(--space-md) var(--space-md);background:var(--accordion-panel-bg)}@supports (interpolate-size: allow-keywords){.accordion{interpolate-size:allow-keywords}.accordion details::details-content{overflow:hidden;transition:block-size var(--duration-base) var(--ease-out)}.accordion details:not([open])::details-content{block-size:0}}@media(prefers-reduced-motion:reduce){.accordion summary:after{transition:none}.accordion details::details-content{transition:none}}.text-display{font-family:var(--font-display);font-weight:800;font-size:clamp(3rem,7vw,4.5rem);font-variation-settings:"opsz" 72;letter-spacing:-.02em;line-height:1.05}.text-h1{font-family:var(--font-display);font-weight:800;font-size:clamp(2.5rem,5vw,4rem);font-variation-settings:"opsz" 72;letter-spacing:-.02em;line-height:1.1}.text-h2{font-family:var(--font-display);font-weight:700;font-size:clamp(1.5rem,3vw,2rem);font-variation-settings:"opsz" 24;letter-spacing:-.02em;line-height:1.2}.text-h3{font-family:var(--font-display);font-weight:600;font-size:clamp(1.1rem,2vw,1.35rem);font-variation-settings:"opsz" 20;letter-spacing:-.01em;line-height:1.3}.text-h4{font-family:var(--font-body);font-weight:600;font-size:1rem;line-height:1.4}.text-h5{font-family:var(--font-body);font-weight:600;font-size:.875rem;letter-spacing:.04em;line-height:1.4}.text-body{font-family:var(--font-body);font-weight:400;font-size:1rem;line-height:1.7}.text-body-lg{font-family:var(--font-body);font-weight:400;font-size:1.125rem;line-height:1.7}.text-body-sm{font-family:var(--font-body);font-weight:400;font-size:.875rem;line-height:1.7}.text-label{font-family:var(--font-body);font-weight:600;font-size:.75rem}.text-caption{font-family:var(--font-body);font-weight:400;font-size:.75rem;line-height:1.6}.text-mono{font-family:var(--font-mono);font-weight:400;font-size:.8125rem;line-height:1.6}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-size:16px;line-height:1.7;background:var(--color-bg);color:var(--color-text);transition:background-color var(--duration-slow) var(--ease-default),color var(--duration-slow) var(--ease-default)}img{max-width:100%;display:block}summary{list-style:none;display:block}a{color:var(--link-color)}a:visited{color:var(--link-visited-color)}a:hover{color:var(--link-hover-color)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:inherit}:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}:root{--font-display: "Fraunces", Georgia, serif;--font-body: "Instrument Sans", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Courier New", monospace}.container{width:100%;max-width:var(--width-content);margin:0 auto;padding:0 var(--space-lg)}@media(max-width:640px){.container{padding:0 var(--space-md)}}.nav{position:fixed;top:0;left:0;right:0;height:var(--nav-height);z-index:var(--z-dropdown);transition:background-color var(--duration-slow) var(--ease-default),border-color var(--duration-slow) var(--ease-default),transform var(--duration-enter) var(--ease-default);background:transparent;border-bottom:1px solid transparent}.nav.filled{background:var(--color-bg);border-bottom-color:#37415133}[data-theme=dark] .nav.filled{border-bottom-color:#4b556366}.nav.hidden{transform:translateY(-100%);border-bottom-color:transparent!important}.nav-inner{max-width:var(--width-content);margin:0 auto;padding:0 var(--space-lg);height:100%;display:flex;align-items:center;justify-content:flex-start}.nav-logo{display:flex;align-items:center;font-family:var(--font-display);font-size:22px;font-weight:800;font-variation-settings:"opsz" 20;color:var(--bm2-birch);text-decoration:none;letter-spacing:-.02em;transition:color var(--duration-slow) var(--ease-default)}.nav-logo span{color:var(--color-accent)}.nav.filled .nav-logo{color:var(--color-text)}.nav.filled .nav-logo span{color:var(--color-accent)}.nav-logo-icon{height:40px;width:auto;flex-shrink:0;margin-right:.45em}.nav-links{display:flex;align-items:center;gap:var(--space-md);list-style:none;padding:0;margin:0 0 0 auto}@media(max-width:640px){.nav-links{display:none}}.nav-links a{font-size:14px;font-weight:500;color:#f7f6f3b3;text-decoration:none;transition:color var(--duration-base) var(--ease-default)}.nav-links a:hover{color:var(--bm2-birch);font-weight:600}.nav-links a.active{color:var(--color-accent);font-weight:600}.nav.filled .nav-links a{color:var(--color-text-secondary)}.nav.filled .nav-links a:hover,.nav.filled .nav-links a.active{color:var(--color-accent);font-weight:600}.nav-right{display:flex;align-items:center;gap:var(--space-xs);margin-left:var(--space-sm)}.theme-toggle{width:36px;height:36px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);color:#f7f6f399;font-size:20px;transition:background-color var(--duration-base) var(--ease-default),color var(--duration-base) var(--ease-default)}.theme-toggle:hover{background:#f7f6f31a;color:var(--bm2-birch)}.nav.filled .theme-toggle{color:var(--color-text-tertiary)}.nav.filled .theme-toggle:hover{background:var(--color-bg-panel);color:var(--color-text)}.github-link{width:36px;height:36px;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);color:#f7f6f399;font-size:20px;text-decoration:none;transition:background-color var(--duration-base) var(--ease-default),color var(--duration-base) var(--ease-default)}.github-link:hover{background:#f7f6f31a;color:var(--bm2-birch)}.nav.filled .github-link{color:var(--color-text-tertiary)}.nav.filled .github-link:hover{background:var(--color-bg-panel);color:var(--color-text)}.nav-cta{height:36px;padding:0 16px;margin-left:var(--space-xs);background:transparent;color:var(--bm2-birch);border-radius:var(--radius-md);border:1.5px solid rgba(247,246,243,.35);font-size:13px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;transition:background-color var(--duration-base) var(--ease-default),border-color var(--duration-base) var(--ease-default)}.nav-cta:hover{background:#f7f6f31a;border-color:#f7f6f399;color:var(--bm2-birch)}.nav.filled .nav-cta{background:var(--color-accent);color:var(--color-accent-text);border-color:transparent}.nav.filled .nav-cta:hover{background:var(--color-accent-hover);color:var(--color-accent-text)}.nav.filled .nav-cta-ghost{background:transparent;color:var(--color-text-secondary);border-color:var(--color-border)}.nav.filled .nav-cta-ghost:hover{background:var(--color-bg-panel);color:var(--color-text);border-color:var(--color-border-strong)}.hamburger{display:none;width:36px;height:36px;border:none;background:transparent;cursor:pointer;flex-direction:column;justify-content:center;gap:5px;align-items:center;border-radius:var(--radius-md);color:#f7f6f399;font-size:22px;transition:background-color var(--duration-base) var(--ease-default),color var(--duration-base) var(--ease-default)}.hamburger:hover{background:#f7f6f31a;color:var(--bm2-birch)}.nav.filled .hamburger{color:var(--color-text-secondary)}.nav.filled .hamburger:hover{background:var(--color-bg-panel);color:var(--color-text)}@media(max-width:640px){.hamburger{display:flex}.nav-right{margin-left:auto}.nav-cta{display:none}}.mobile-drawer{position:fixed;top:0;left:0;right:0;background:var(--color-bg);z-index:var(--z-overlay);transform:translateY(calc(-100% - 2px));transition:transform var(--duration-enter) var(--ease-default);border-bottom:1px solid var(--color-border-subtle)}.mobile-drawer.open{transform:translateY(var(--nav-height))}.mobile-drawer a{display:flex;align-items:center;height:52px;padding:0 var(--space-md);font-size:16px;font-weight:500;color:var(--color-text);text-decoration:none;border-bottom:1px solid var(--color-border-subtle);transition:background var(--duration-base) var(--ease-default),color var(--duration-base) var(--ease-default)}.mobile-drawer a:hover{background:var(--color-bg-panel);color:var(--color-accent)}.mobile-drawer .drawer-cta{margin:var(--space-md);height:48px;background:var(--color-accent);color:var(--color-accent-text);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px}.mobile-drawer .drawer-cta:hover{background:var(--color-accent-hover);border-bottom:none}.drawer-group-label{display:block;padding:var(--space-md) var(--space-md) var(--space-xs);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-tertiary)}.drawer-ctas{display:flex;flex-direction:column}.mobile-drawer .drawer-cta-ghost{background:transparent;color:var(--color-text);border:1.5px solid var(--color-border)}.mobile-drawer .drawer-cta-ghost:hover{background:var(--color-bg-panel);color:var(--color-accent);border-bottom:none}:root{--nav-height: 64px;--subnav-height: 44px;--scroll-offset: calc(var(--nav-height) + var(--subnav-height))}.sub-nav{position:sticky;top:var(--nav-height);z-index:var(--z-content);background:transparent;border-bottom:1px solid var(--color-border-subtle);height:var(--subnav-height);overflow-x:auto;scrollbar-width:none;transition:transform var(--duration-enter) var(--ease-default),background-color var(--duration-slow) var(--ease-default),border-color var(--duration-slow) var(--ease-default)}.sub-nav.hidden{transform:translateY(calc(-1 * var(--nav-height)))}.sub-nav::-webkit-scrollbar{display:none}.sub-nav-inner{max-width:var(--width-content);margin:0 auto;padding:0 var(--space-lg);display:flex;align-items:stretch;position:relative;height:100%}.sub-nav-link{padding:0 16px;font-size:14px;font-weight:500;color:#f7f6f399;text-decoration:none;white-space:nowrap;display:inline-flex;align-items:center;border-bottom:2px solid transparent;transition:color var(--duration-base) var(--ease-default)}.sub-nav-link:hover{color:var(--bm2-birch)}.sub-nav-link.active{color:var(--bm2-birch);font-weight:600}.sub-nav-indicator{position:absolute;bottom:0;height:2px;background:var(--color-accent);transition:left var(--duration-slow) var(--ease-out),width var(--duration-slow) var(--ease-out);pointer-events:none}.sub-nav.filled{background:var(--color-bg);border-bottom-color:var(--color-border-subtle)}.sub-nav.filled .sub-nav-link{color:var(--color-text-secondary)}.sub-nav.filled .sub-nav-link:hover,.sub-nav.filled .sub-nav-link.active{color:var(--color-text);font-weight:600}.section-eyebrow{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-sm)}.section-title{font-family:var(--font-display);font-size:clamp(28px,4vw,42px);font-weight:700;font-variation-settings:"opsz" 36;letter-spacing:-.02em;line-height:1.15;color:var(--color-text);margin-bottom:var(--space-md)}.section-desc{font-size:17px;line-height:1.7;color:var(--color-text-secondary);max-width:60ch;margin-bottom:var(--space-xl)}.page-header{padding:var(--space-4xl) 0 var(--space-3xl);border-bottom:1px solid var(--color-border-subtle);margin-bottom:var(--space-3xl)}.page-eyebrow{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-sm)}.page-title{font-family:var(--font-display);font-size:clamp(36px,6vw,64px);font-weight:800;font-variation-settings:"opsz" 72;letter-spacing:-.03em;line-height:1.05;color:var(--color-text);margin-bottom:var(--space-md)}.page-title em{font-style:italic;color:var(--color-accent)}.page-desc{font-size:17px;line-height:1.7;color:var(--color-text-secondary);max-width:65ch}.scroll-reveal{opacity:0;transform:translateY(20px);transition:opacity var(--duration-reveal) var(--ease-out),transform var(--duration-reveal) var(--ease-out)}.scroll-reveal.is-visible{opacity:1;transform:translateY(0)}.scroll-reveal:nth-child(2){transition-delay:60ms}.scroll-reveal:nth-child(3){transition-delay:.12s}.scroll-reveal:nth-child(4){transition-delay:.18s}@media(prefers-reduced-motion:reduce){.scroll-reveal{opacity:1;transform:none;transition:none}}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.page-footer{padding:var(--space-3xl) 0 var(--space-xl)}.footer-inner{max-width:var(--width-content);margin:0 auto;padding:0 var(--space-lg)}.footer-top{--logo-indent: 69px;margin-bottom:var(--space-xl)}.footer-logo{display:flex;align-items:center;font-family:var(--font-display);font-size:28px;font-weight:800;font-variation-settings:"opsz" 28;color:var(--color-text);margin-bottom:var(--space-xs)}.footer-logo span{color:var(--color-accent)}.footer-logo-icon{height:56px;width:auto;flex-shrink:0;margin-right:.45em}.footer-tagline{font-size:14px;color:var(--color-text-secondary);margin-bottom:var(--space-md);padding-left:var(--logo-indent)}.footer-nav{display:flex;gap:var(--space-md);flex-wrap:wrap;padding-left:var(--logo-indent)}.footer-nav a{font-size:14px;color:var(--color-text-tertiary);text-decoration:none;transition:color var(--duration-base) var(--ease-default);white-space:nowrap}.footer-nav a:hover{color:var(--color-text-secondary)}.footer-hr{border:none;border-top:1px solid var(--color-border-subtle);margin:0 0 var(--space-lg)}.footer-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);flex-wrap:wrap}.footer-copy{font-size:12px;color:var(--color-text-tertiary)}.footer-links{display:flex;gap:var(--space-md);flex-wrap:wrap;align-items:center}.footer-links a{font-size:12px;color:var(--color-text-tertiary);text-decoration:none;transition:color var(--duration-base) var(--ease-default);white-space:nowrap}.footer-links a:hover{color:var(--color-text-secondary)}.demo-surface{padding:var(--space-md);background:var(--color-bg-panel);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-md)}.demo-surface p{margin:0}body{padding-top:var(--nav-height)}html{scroll-padding-top:var(--nav-height)}.doc-main{min-height:100vh}.doc-container{max-width:var(--width-content);margin:0 auto;padding:var(--space-3xl) var(--space-lg) var(--space-4xl)}.doc-container h1{font-family:var(--font-display);font-weight:800;font-size:clamp(2.5rem,5vw,4rem);font-variation-settings:"opsz" 72;letter-spacing:-.02em;line-height:1.1;color:var(--color-text);margin-bottom:var(--space-md)}.doc-container h2{font-family:var(--font-display);font-weight:700;font-size:clamp(1.5rem,3vw,2rem);font-variation-settings:"opsz" 24;letter-spacing:-.02em;line-height:1.2;color:var(--color-text);margin-top:var(--space-xl);margin-bottom:var(--space-sm)}.doc-container h3{font-family:var(--font-display);font-weight:600;font-size:clamp(1.1rem,2vw,1.35rem);font-variation-settings:"opsz" 20;letter-spacing:-.01em;color:var(--color-text);margin-top:var(--space-lg);margin-bottom:var(--space-xs)}.doc-container p{max-width:var(--width-prose);margin-bottom:var(--space-md);color:var(--color-text-secondary);line-height:1.7}.doc-container code{font-family:var(--font-mono);font-size:.875em;background:var(--color-bg-inset);padding:2px 6px;border-radius:var(--radius-sm)}.doc-container pre{font-family:var(--font-mono);font-size:.875rem;background:var(--color-bg-inset);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);overflow-x:auto;margin-bottom:var(--space-md);max-width:var(--width-prose);line-height:1.6}.doc-container pre code{background:none;padding:0;font-size:inherit}.doc-container ul,.doc-container ol:not(.breadcrumb){padding-left:var(--space-md);margin-bottom:var(--space-md);max-width:var(--width-prose);color:var(--color-text-secondary)}.doc-container li{margin-bottom:var(--space-xs);line-height:1.6}.doc-container strong{font-weight:600;color:var(--color-text)}.doc-container table{width:100%;max-width:var(--width-prose);border-collapse:collapse;margin-bottom:var(--space-lg);font-size:.875rem}.doc-container th{text-align:left;padding:var(--space-xs) var(--space-sm);background:var(--color-bg-panel);color:var(--color-text);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--color-border)}.doc-container td{padding:var(--space-xs) var(--space-sm);color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);vertical-align:top;line-height:1.5}.doc-container tr:last-child td{border-bottom:none}.doc-container hr{border:none;border-top:1px solid var(--color-border);margin:var(--space-xl) 0;max-width:var(--width-prose)}.doc-container blockquote{border-left:3px solid var(--color-accent);padding:var(--space-xs) 0 var(--space-xs) var(--space-md);margin:var(--space-md) 0;max-width:var(--width-prose)}.doc-container blockquote p{color:var(--color-text-secondary);font-style:italic;margin-bottom:0}
