:root{--bg:#faf7f0;--fg:#1e1c19;--muted:#67625a;--rule:#e4dfd5;--accent:#2b4a7a;--code-bg:#f3efe5;--font-head:"Schibsted Grotesk", "Helvetica Neue", Arial, sans-serif;--font-body:"Charis SIL", Georgia, serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--measure:660px;--gutter:1.5rem;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;font-size:17px;line-height:1.6}::selection{background:var(--accent);color:var(--bg)}a{color:inherit}a:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.page{max-width:calc(var(--measure) + 2 * var(--gutter));padding:0 var(--gutter) 4rem;margin-inline:auto}.nav{justify-content:space-between;align-items:center;gap:1rem;padding-block:1.75rem;display:flex}.wordmark{font-family:var(--font-head);letter-spacing:-.01em;color:var(--accent);font-size:1.125rem;font-weight:600;text-decoration:none}.nav ul{font-family:var(--font-head);letter-spacing:-.01em;gap:1.5rem;margin:0;padding:0;font-size:.9375rem;list-style:none;display:flex}.nav ul a{color:var(--muted);text-decoration:none;transition:color .15s}.nav ul a:hover,.nav ul a[aria-current=page]{color:var(--fg)}main{gap:1.75rem;padding-top:3rem;display:grid}h1{font-family:var(--font-head);letter-spacing:-.01em;text-wrap:balance;margin:0 0 .25rem;font-size:1.875rem;font-weight:500;line-height:1.25}.hero{letter-spacing:-.02em;margin-bottom:1.5rem;font-size:2.5rem;line-height:1.15}.hero .quiet{color:var(--muted)}.nowrap{white-space:nowrap}main p,.lab-notes li a,.note li,.note td{font-size-adjust:.48}main p{margin:0}main p a{color:var(--accent);text-underline-offset:.2em;text-decoration-thickness:1px}.principle,.lab-notes{margin-top:1rem}.principle h2,.note h2{font-family:var(--font-head);letter-spacing:-.01em;text-wrap:balance;margin:0 0 .25rem;font-size:1.45rem;font-weight:400;line-height:1.4}.tagline{color:var(--muted);font-style:italic}.principle h2+p{margin-top:.75rem}.principle p+p{margin-top:1.75rem}.lab-notes ul{border-top:1px solid var(--rule);margin:0;padding:0;list-style:none}.lab-notes li{border-bottom:1px solid var(--rule);grid-template-columns:8.5rem minmax(0,1fr);align-items:baseline;gap:1rem;padding-block:1rem;display:grid}.lab-notes time,.note time{font-family:var(--font-head);color:var(--muted);font-variant-numeric:tabular-nums;font-size:.875rem}.lab-notes li a{line-height:1.45;text-decoration:none;transition:color .15s}.lab-notes li a:hover{color:var(--accent)}.note{overflow-wrap:break-word;min-width:0}.note>*+*{margin-top:1.25rem}.note header{margin-bottom:2.75rem}.note h1{margin-block:.5rem .75rem}.note h2{margin-top:3rem;margin-bottom:0}.note h3{font-family:var(--font-head);letter-spacing:-.01em;margin:2.25rem 0 0;font-size:1.125rem;font-weight:500;line-height:1.4}.note h2+*,.note h3+*,.note p+ul,.note p+ol{margin-top:.75rem}.note ul,.note ol{margin-bottom:0;padding-left:1.5rem}.note li+li,.note li>*+*{margin-top:.6rem}.note li::marker{color:var(--muted)}.note blockquote{margin-inline:0;border-left:2px solid var(--rule);margin-bottom:0;padding-left:1.25rem}.note pre,.note code{font-family:var(--font-mono);font-size-adjust:none}.note code{font-size:.875em}.note :not(pre)>code{background:var(--code-bg);border-radius:3px;padding:.1em .2em}.note pre{border:1px solid var(--rule);background:var(--code-bg);border-radius:4px;margin-bottom:0;padding:1rem 1.25rem;font-size:.8125rem;line-height:1.6;overflow-x:auto}.note pre[role=img]{line-height:1.25}.note pre code{font-size:inherit}.note .table-scroll{overflow-x:auto}.note table{border-collapse:collapse;width:100%;min-width:34rem;font-size:.9375rem;line-height:1.45}.note th,.note td{border-bottom:1px solid var(--rule);text-align:left;vertical-align:top;padding:.65rem 1rem .65rem 0}.note th{font-family:var(--font-head);vertical-align:bottom;font-size:.875rem;font-weight:500}.note .equation{text-align:center;font-size:1.125rem}footer{font-family:var(--font-head);margin-top:4.5rem;font-size:.9375rem}footer a{color:var(--muted);text-decoration:none;transition:color .15s}footer a:hover{color:var(--accent)}@media (width<=640px){:root{--gutter:1.25rem}main{padding-top:2.5rem}h1{font-size:1.625rem}.hero{font-size:1.875rem}.lab-notes li{grid-template-columns:minmax(0,1fr);gap:.25rem}.note pre{padding:.875rem 1rem}}@media (prefers-reduced-motion:reduce){.nav ul a,.lab-notes li a,footer a{transition:none}}
