@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./newsreader-vietnamese-wght-normal-Czsa-EzN.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./newsreader-latin-ext-wght-normal-C-3rgBeH.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./newsreader-latin-wght-normal-CCVVNp6i.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(./newsreader-vietnamese-wght-italic-xAqemagA.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(./newsreader-latin-ext-wght-italic-DFS986qL.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(./newsreader-latin-wght-italic-Bxi8ein9.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2) format("woff2"),url(./ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2) format("woff2"),url(./ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-sans-greek-400-normal-_efipK4i.woff2) format("woff2"),url(./ibm-plex-sans-greek-400-normal-D9ESIMu3.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2) format("woff2"),url(./ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2) format("woff2"),url(./ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(./ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2) format("woff2"),url(./ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2) format("woff2"),url(./ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-sans-greek-500-normal-JMMifIXV.woff2) format("woff2"),url(./ibm-plex-sans-greek-500-normal-CuWXN6rf.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2) format("woff2"),url(./ibm-plex-sans-vietnamese-500-normal-BEb3_waV.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2) format("woff2"),url(./ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(./ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(./ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2) format("woff2"),url(./ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(./ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2) format("woff2"),url(./ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(./ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2) format("woff2"),url(./ibm-plex-sans-greek-600-normal-D-CqTdkO.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(./ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2) format("woff2"),url(./ibm-plex-sans-vietnamese-600-normal-DgdngZtN.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(./ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2) format("woff2"),url(./ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(./ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(./ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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 Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(./ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(./ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(./ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(./ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(./ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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 Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2) format("woff2"),url(./ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2) format("woff2"),url(./ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2) format("woff2"),url(./ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2) format("woff2"),url(./ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(./ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper: #f6f2ea;--paper-deep: #ede6d8;--ink: #1b1e23;--ink-muted: #5c6169;--rule: #d8d0c0;--teal: #1f7a7a;--teal-wash: #d5e8e5;--coral: #e0654a;--coral-wash: #f7ddd4;--font-serif: "Newsreader Variable", "Newsreader", Georgia, "Times New Roman", serif;--font-sans: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--fs-h1: clamp(3rem, 6.5vw, 6rem);--fs-h2: clamp(2.25rem, 4vw, 3.5rem);--fs-step: 1.5rem;--fs-body: 18px;--fs-dek: 1.5rem;--fs-caption: 15px;--fs-kicker: 12px;--fs-readout: 28px;--fs-quote: clamp(1.75rem, 3vw, 2.5rem);--lh-body: 1.65;--space-1: 8px;--space-2: 16px;--space-3: 24px;--space-4: 32px;--space-5: 40px;--space-6: 48px;--space-8: 64px;--space-9: 72px;--space-12: 96px;--space-15: 120px;--space-20: 160px;--container: 1200px;--gutter: 32px;--grid-gap: 24px;--reading: 640px;--masthead-h: 56px;--section-pad: var(--space-20);--radius: 2px;--radius-pill: 999px;--hairline: 1px solid var(--rule);--ease-reveal: cubic-bezier(.2, .7, .2, 1);--ease-in-out-cubic: cubic-bezier(.65, 0, .35, 1);--ease-out-cubic: cubic-bezier(.33, 1, .68, 1);--dur-step: .4s;--dur-reveal: .6s}@media (max-width: 720px){:root{--gutter: 20px;--section-pad: var(--space-12)}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--masthead-h) + 16px)}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4,p,figure,fieldset,blockquote{margin:0}h1,h2,h3{font-family:var(--font-serif);font-weight:500;color:var(--ink);text-wrap:balance}p{text-wrap:pretty}a{color:inherit}button{font:inherit;color:inherit}svg{overflow:visible}canvas{display:block}::selection{background:var(--teal-wash);color:var(--ink)}:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:absolute;left:var(--gutter);top:-100px;z-index:100;padding:8px 12px;background:var(--ink);color:var(--paper);font-family:var(--font-mono);font-size:12px;text-decoration:none;border-radius:var(--radius)}.skip-link:focus{top:8px}.container{width:100%;max-width:calc(var(--container) + var(--gutter) * 2);margin-inline:auto;padding-inline:var(--gutter)}.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--grid-gap)}.reading{max-width:var(--reading)}.section{padding-block:var(--section-pad)}.kicker{font-family:var(--font-mono);font-weight:500;font-size:var(--fs-kicker);line-height:1.4;letter-spacing:.12em;text-transform:uppercase;color:var(--teal)}.h2{font-size:var(--fs-h2);line-height:1.05;letter-spacing:-.01em;font-weight:500}.lede{font-size:var(--fs-body);color:var(--ink)}.dek{font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:var(--fs-dek);line-height:1.35;color:var(--ink)}.mono{font-family:var(--font-mono)}.caption{font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:var(--fs-caption);line-height:1.45;color:var(--ink-muted)}.fignum{font-family:var(--font-mono);font-style:normal;font-weight:500;font-size:12px;letter-spacing:.08em;color:var(--ink)}.figure-panel{background:var(--paper-deep);border:var(--hairline);border-radius:var(--radius)}.figure-caption{margin-top:12px;padding-top:12px;border-top:var(--hairline)}.icon{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.link-grow{text-decoration:none;background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:0 100%;background-size:0 1px;padding-bottom:2px}.js .reveal{opacity:0;transform:translateY(12px);transition:opacity var(--dur-reveal) var(--ease-reveal) var(--reveal-delay, 0ms),transform var(--dur-reveal) var(--ease-reveal) var(--reveal-delay, 0ms)}.js .reveal[data-revealed=true]{opacity:1;transform:none}.masthead{position:sticky;top:0;z-index:50;height:var(--masthead-h);background:#f6f2eaeb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:var(--hairline)}.masthead__bar{height:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.masthead__brand{font-family:var(--font-serif);font-weight:600;font-size:22px;letter-spacing:.01em;line-height:1;text-decoration:none;color:var(--ink);white-space:nowrap}.masthead__issue{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.masthead__progress{position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none}.masthead__progress-fill{display:block;height:100%;background:var(--teal);transform-origin:left center;transform:scaleX(var(--progress, 0))}.hero{padding-top:var(--space-15);padding-bottom:var(--space-12)}.hero__inner{row-gap:var(--space-4)}.hero__inner>*{grid-column:1 / -1}.hero__title{grid-column:1 / span 9;max-width:14ch;font-size:var(--fs-h1);line-height:.98;letter-spacing:-.02em;font-weight:500}.hero__dek{grid-column:1 / span 7}.byline{font-family:var(--font-mono);font-size:12px;line-height:1.6;letter-spacing:.04em;color:var(--ink-muted)}.chapter-index{display:flex;flex-wrap:wrap;align-items:center;row-gap:var(--space-1);margin:0;padding:0;list-style:none}.chapter-index li{display:flex;align-items:center}.chapter-index li:not(:last-child):after{content:"";width:1px;height:16px;margin-inline:14px;background:var(--rule)}.chapter-index a{font-family:var(--font-mono);font-size:13px;color:var(--ink);transition:background-size .2s ease}.chapter-index a:hover,.chapter-index a:focus-visible{background-size:100% 1px}.chapter-index__num{color:var(--teal);margin-right:6px}.hero__figure{grid-column:1 / -1;margin-top:calc(var(--space-9) - var(--space-4));padding-top:var(--space-3);border-top:var(--hairline)}.hero__canvas{width:100%;height:220px}.hero__figure .figure-caption{border-top:0;padding-top:0}.chapter__header{display:grid;row-gap:var(--space-2)}.chapter__header .h2,.chapter__header .lede{margin-top:var(--space-1)}.scrolly{margin-top:var(--space-8);align-items:stretch}.scrolly__steps{grid-column:1 / span 5;grid-row:1}.scrolly__figure{grid-column:6 / span 7;grid-row:1}.scrolly-chapter--mirrored .scrolly__figure{grid-column:1 / span 7}.scrolly-chapter--mirrored .scrolly__steps{grid-column:8 / span 5}.scrolly__sticky{position:sticky;top:96px;height:calc(100vh - 160px);height:calc(100svh - 160px);min-height:360px;display:flex;flex-direction:column}.scrolly__panel{position:relative;flex:1 1 auto;min-height:0;overflow:hidden}.scrolly__panel canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.scrolly__panel--svg{display:flex;align-items:center;justify-content:center;padding:var(--space-3)}.scrolly__panel--svg svg{width:100%;height:100%;max-width:560px}.step{min-height:80vh;display:flex;align-items:center;padding-left:var(--space-4);border-left:1px solid var(--rule);opacity:.35;transition:opacity var(--dur-step) ease,border-color var(--dur-step) ease}.step[data-active=true]{opacity:1;border-left-color:var(--teal)}.step__inner{display:grid;row-gap:var(--space-1);padding-block:var(--space-4)}.step__num{font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.08em;color:var(--ink-muted);font-variant-numeric:tabular-nums}.step[data-active=true] .step__num{color:var(--teal)}.step__heading{font-family:var(--font-serif);font-weight:600;font-size:var(--fs-step);line-height:1.2}@media (max-width: 899px){.scrolly{display:block}.scrolly__figure{display:contents}.scrolly__sticky{top:var(--masthead-h);z-index:5;height:42vh;height:42svh;min-height:240px;margin-inline:calc(var(--gutter) * -1);padding:8px var(--gutter) 10px;background:var(--paper)}.scrolly__panel--svg{padding:8px}.scrolly__sticky .figure-caption{margin-top:6px;padding-top:6px;font-size:13px}.scrolly__steps{position:relative;z-index:1;padding-top:30vh;padding-bottom:20vh}.step{min-height:0;display:block;margin-bottom:60vh;padding:var(--space-3);border:var(--hairline);border-radius:var(--radius);background:var(--paper)}.step:last-child{margin-bottom:0}.step[data-active=true]{border-color:var(--rule);box-shadow:inset 2px 0 0 var(--teal)}.step__inner{padding-block:0}}.lab{margin-top:var(--space-8)}.lab__figure{grid-column:1 / -1}.lab__panel{padding:var(--space-4)}.lab__lanes{border:var(--hairline);border-radius:var(--radius);background:var(--paper)}.lane{position:relative;height:140px}.lane+.lane{border-top:var(--hairline)}.lane canvas{width:100%;height:100%}.lane__label{position:absolute;top:10px;left:12px;z-index:1;font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.1em;pointer-events:none;padding:1px 4px;background:#f6f2ead9}.lane--noise .lane__label{color:var(--teal)}.lane--anti .lane__label{color:var(--coral)}.lane--sum .lane__label{color:var(--ink)}.lane--anti{cursor:ew-resize;touch-action:pan-y}.lane--anti[data-state=dragging]{cursor:grabbing}.lane--anti:after{content:"⟷";position:absolute;right:12px;top:8px;font-family:var(--font-mono);font-size:13px;color:var(--coral);opacity:.7;pointer-events:none}.lab__controls{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-3)}.lab__slider{flex:1 1 auto;display:flex;align-items:center;gap:var(--space-2);min-width:0}.lab__slider-label{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);white-space:nowrap}.lab__presets{display:flex;gap:var(--space-1)}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-width:64px;padding:8px 14px;border:1px solid var(--ink);border-radius:var(--radius);background:transparent;font-family:var(--font-mono);font-size:13px;font-weight:500;color:var(--ink);cursor:pointer;transition:background-color .15s ease,color .15s ease}.btn:hover{background:var(--paper)}.btn[data-active=true]{background:var(--ink);color:var(--paper)}.range{--fill: 0%;--thumb: 22px;flex:1 1 auto;min-width:0;height:32px;margin:0;background:transparent;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer}.range:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.range::-webkit-slider-runnable-track{height:2px;background:linear-gradient(var(--coral),var(--coral)) 0 / var(--fill) 100% no-repeat,var(--rule);border-radius:2px}.range::-moz-range-track{height:2px;background:var(--rule);border-radius:2px}.range::-moz-range-progress{height:2px;background:var(--coral)}.range::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:var(--thumb);height:var(--thumb);margin-top:calc((2px - var(--thumb)) / 2);border-radius:var(--radius-pill);background:var(--coral);border:3px solid var(--paper);box-shadow:0 0 0 1px var(--ink);transition:width .15s ease,height .15s ease,margin-top .15s ease}.range::-moz-range-thumb{box-sizing:border-box;width:var(--thumb);height:var(--thumb);border-radius:var(--radius-pill);background:var(--coral);border:3px solid var(--paper);box-shadow:0 0 0 1px var(--ink);transition:width .15s ease,height .15s ease}.range:hover,.range:focus-visible{--thumb: 26px}.lab__readouts{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-3);padding-top:var(--space-3);border-top:var(--hairline)}.readouts{display:flex;margin:0}.readout{display:grid;row-gap:2px;padding-inline:var(--space-3);border-left:var(--hairline)}.readout:first-child{padding-left:0;border-left:0}.readout dt{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.1em;color:var(--ink-muted)}.readout dd{margin:0;font-family:var(--font-mono);font-weight:500;font-size:var(--fs-readout);line-height:1.2;font-variant-numeric:tabular-nums;white-space:nowrap}.readout--change dd[data-floor=true]{font-size:20px}.badge{margin-left:auto;padding:6px 14px;border-radius:var(--radius-pill);background:var(--teal-wash);color:var(--teal);font-family:var(--font-mono);font-size:13px;font-weight:500;letter-spacing:.04em;opacity:0;transform:scale(.9);transition:opacity .2s ease,transform .2s ease}.badge[data-active=true]{opacity:1;transform:scale(1)}.lab__figure .figure-caption{border-top:var(--hairline)}.notes{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--grid-gap);margin-top:var(--space-6)}.note{padding-top:var(--space-2);border-top:var(--hairline)}.note h3{font-family:var(--font-mono);font-weight:500;font-size:12px;letter-spacing:.06em;color:var(--ink)}.note p{margin-top:6px;font-size:16px;line-height:1.55;color:var(--ink-muted)}@media (max-width: 720px){.lab__panel{padding:var(--space-2)}.lane{height:110px}.lab__controls{flex-wrap:wrap}.lab__slider,.lab__presets{flex-basis:100%}.lab__presets .btn{flex:1 1 0}.lab__readouts{flex-wrap:wrap;row-gap:var(--space-2)}.readout{padding-inline:12px}.readout dd{font-size:22px}.readout--change dd[data-floor=true]{font-size:15px}.badge{margin-left:0}.notes{grid-template-columns:1fr;gap:var(--space-3)}}.earcup{--draw: .7s;font-family:var(--font-mono)}.earcup .stroke{fill:none;stroke:var(--ink);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.earcup .solid{fill:var(--paper-deep)}.earcup text{fill:var(--ink);font-family:var(--font-mono)}.earcup .part{transition:opacity .3s ease}.earcup .part [pathLength]{stroke-dasharray:1;stroke-dashoffset:0}.earcup .part[data-state=ghost]{opacity:.12}.earcup .part[data-state=ghost] .fillable{fill-opacity:0}.earcup .part[data-state=ghost] text{fill-opacity:0}.earcup .fillable,.earcup .part text{transition:fill-opacity .4s ease .3s}.earcup .part[data-state=new] [pathLength]{animation:qw-draw var(--draw) var(--ease-in-out-cubic) both,qw-flash .8s linear both}@keyframes qw-draw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes qw-flash{0%,75%{stroke:var(--teal)}to{stroke:var(--ink)}}.earcup .part--base[data-state=new] [pathLength]{animation:qw-draw var(--draw) var(--ease-in-out-cubic) both}.earcup .noise-arrows{opacity:0;transition:opacity .4s ease}.earcup[data-step="0"] .noise-arrows,.earcup[data-step="1"] .noise-arrows{opacity:1}.earcup .noise-arrows path{fill:none;stroke:url(#qw-noise-fade);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.earcup[data-step="0"] .noise-arrows .noise-wave{animation:qw-noise-drift 2.4s linear infinite}@keyframes qw-noise-drift{0%{transform:translate(-12px)}to{transform:translate(0)}}.callout{opacity:0;pointer-events:none;transition:opacity .2s ease-out}.callout[data-state=on],.callout[data-state=new]{opacity:1}.callout__circle{fill:var(--ink)}.callout__num{fill:var(--paper)!important;font-size:11px;font-weight:500}.callout__label{font-size:12px}.callout__bubble{--bubble: 1;transform-box:fill-box;transform-origin:center;transform:scale(calc(var(--bubble) * .6));transition:transform .2s ease-out}.callout[data-state=on] .callout__bubble,.callout[data-state=new] .callout__bubble{transform:scale(var(--bubble))}.callout__stub{display:none;fill:none;stroke:var(--ink);stroke-width:1}@media (max-width: 899px){.callout__label{display:none}.callout__stub{display:inline}.callout__bubble{--bubble: 1.5}}.callout__leader{fill:none;stroke:var(--ink);stroke-width:1;stroke-dasharray:1}.callout__dot{fill:var(--ink)}.callout[data-state=new] .callout__leader{animation:qw-draw var(--draw) var(--ease-in-out-cubic) both}.signal{opacity:0;transition:opacity .4s ease}.earcup[data-step="5"] .signal{opacity:1}.signal__path{fill:none;stroke:var(--coral);stroke-width:2;stroke-dasharray:6 6;stroke-linecap:butt;stroke-linejoin:round}.earcup[data-step="5"] .signal__path{animation:qw-flow 1.6s linear infinite}@keyframes qw-flow{0%{stroke-dashoffset:24}to{stroke-dashoffset:0}}.signal__result{fill:none;stroke:var(--ink);stroke-width:2;stroke-linecap:round}.limits__body{margin-top:var(--space-3)}.bands{margin-top:var(--space-8)}.bands__figure{grid-column:2 / span 10}.bands__panel{padding:var(--space-4)}.bands svg{display:block;width:100%;height:auto;font-family:var(--font-mono)}.bands .axis-label{font-size:11px;fill:var(--ink-muted)}.bands .chart-title{font-family:var(--font-serif);font-size:20px;font-weight:500;fill:var(--ink)}.bands .legend-label{font-size:12px;fill:var(--ink)}.bands .gridline{stroke:var(--rule);stroke-width:1}.bands .baseline{stroke:var(--ink);stroke-width:1.5}.bands .bar{transform-box:fill-box;transform-origin:50% 100%;transform:scaleY(0);transition:transform .8s var(--ease-out-cubic)}.bands .bar--active{fill:var(--coral);transition-delay:calc(var(--i) * 60ms)}.bands .bar--passive{fill:url(#qw-bands-hatch);stroke:var(--ink);stroke-width:1.5;transition-delay:calc(.8s + var(--i) * 60ms)}.bands[data-state=in] .bar{transform:scaleY(1)}.bands .band{cursor:default;outline:none}.bands .band__hit{fill:transparent}.bands .band:hover .band__hit,.bands .band:focus-visible .band__hit{fill:#1b1e230a}.bands .band:focus-visible .band__hit{stroke:var(--teal);stroke-width:2}.bands .tip{opacity:0;transition:opacity .15s ease;pointer-events:none}.bands .band:hover .tip,.bands .band:focus-visible .tip{opacity:1}.bands .tip rect{fill:var(--ink)}.bands .tip text{fill:var(--paper);font-size:11px;font-weight:500}.bands__figure .figure-caption{border-top:var(--hairline)}.pullquote{grid-column:1 / -1;justify-self:center;margin-top:var(--space-12);text-align:center}.pullquote:before{content:"";display:block;width:64px;height:2px;margin:0 auto var(--space-4);background:var(--coral)}.pullquote p{font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:var(--fs-quote);line-height:1.25;max-width:22ch;text-wrap:balance}@media (max-width: 899px){.bands__figure{grid-column:1 / -1}}@media (max-width: 720px){.bands__panel{padding:var(--space-2)}}.quiz__list{margin-top:var(--space-6)}.question{border:0;border-top:var(--hairline);padding:var(--space-5) 0;min-width:0}.question legend{display:contents}.question__num{display:block;font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.1em;color:var(--teal)}.question__text{display:block;margin-top:6px;font-family:var(--font-serif);font-weight:500;font-size:1.375rem;line-height:1.3}.options{display:grid;row-gap:var(--space-1);margin-top:var(--space-3)}.option{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;gap:14px;width:100%;padding:16px 20px;border:1px solid var(--rule);border-radius:var(--radius);background:transparent;text-align:left;font-family:var(--font-sans);font-weight:500;font-size:16px;line-height:1.4;color:var(--ink);cursor:pointer;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.option:hover{background:var(--paper-deep)}.option__letter{flex:none;display:grid;place-items:center;width:24px;height:24px;border:1px solid var(--rule);border-radius:var(--radius);font-family:var(--font-mono);font-size:12px;font-weight:500;color:var(--ink-muted);background:var(--paper)}.option__text{flex:1 1 auto}.option__mark{display:none}.question[data-state=locked] .option{cursor:default}.question[data-state=locked] .option:hover{background:transparent}.option[data-state=correct],.question[data-state=locked] .option[data-state=correct]:hover{border-color:var(--teal);box-shadow:0 0 0 .5px var(--teal);background:var(--teal-wash);color:var(--ink)}.option[data-state=incorrect],.question[data-state=locked] .option[data-state=incorrect]:hover{border-color:var(--coral);box-shadow:0 0 0 .5px var(--coral);background:var(--coral-wash)}.option[data-state=correct] .option__letter{border-color:var(--teal);color:var(--teal)}.option[data-state=incorrect] .option__letter{border-color:var(--coral);color:var(--coral)}.option[data-state=correct] .option__mark--check{display:block;color:var(--teal)}.option[data-state=incorrect] .option__mark--cross{display:block;color:var(--coral)}.explain{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease}.explain>div{overflow:hidden;min-height:0}.question[data-state=locked] .explain{grid-template-rows:1fr}.explain p{padding-top:var(--space-2);font-size:16px;line-height:1.6}.explain__verdict{font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;margin-right:8px}.question[data-result=correct] .explain__verdict{color:var(--teal)}.question[data-result=incorrect] .explain__verdict{color:var(--coral)}.result{display:none;margin-top:var(--space-2);padding:var(--space-4);background:var(--paper-deep);border-radius:var(--radius)}.result[data-state=visible]{display:block;animation:qw-fade-up .4s var(--ease-reveal) both}@keyframes qw-fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.result__score{font-family:var(--font-serif);font-weight:600;font-size:3rem;line-height:1.05}.result__verdict{margin-top:var(--space-1)}.btn--outline{margin-top:var(--space-3);padding:12px 20px;font-family:var(--font-sans);font-size:16px}.btn--outline:hover{background:var(--ink);color:var(--paper)}.footer{border-top:var(--hairline);padding-block:var(--space-8)}.footer__inner{align-items:start}.footer__brand{grid-column:1 / span 4;display:grid;row-gap:4px}.footer__wordmark{font-family:var(--font-serif);font-weight:600;font-size:22px;letter-spacing:.01em;line-height:1.1}.footer__issue{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.footer__colophon{grid-column:5 / span 5;font-family:var(--font-serif);font-style:italic;font-size:15px;line-height:1.5;color:var(--ink-muted)}.footer__links{grid-column:10 / span 3;display:grid;justify-items:end;row-gap:8px;font-family:var(--font-mono);font-size:12px}.footer__links a{display:inline-flex;align-items:center;gap:6px;transition:background-size .2s ease}.footer__links a:hover,.footer__links a:focus-visible{background-size:100% 1px}.footer__links .icon{width:12px;height:12px}@media (max-width: 720px){.footer__inner{display:flex;flex-direction:column;gap:var(--space-2)}.footer__links{justify-items:start}}@media (max-width: 720px){.hero{padding-top:var(--space-12)}.hero__title,.hero__dek{grid-column:1 / -1}.hero__canvas{height:140px}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.js .reveal{transform:none;transition:opacity 0ms}.step,.badge,.callout,.callout__bubble,.signal,.earcup .part,.earcup .fillable,.earcup .part text,.earcup .noise-arrows,.bands .bar,.bands .tip,.explain,.range::-webkit-slider-thumb,.chapter-index a,.footer__links a{transition:none!important}.earcup .part[data-state=new] [pathLength],.callout[data-state=new] .callout__leader,.earcup[data-step="5"] .signal__path,.earcup[data-step="0"] .noise-arrows .noise-wave,.result[data-state=visible]{animation:none!important}.bands .bar{transform:none}}
