:root{--color-bg: #14100c;--color-surface: #1d1712;--color-surface-2: #261e17;--color-border: #3a2e24;--color-text: #f1e7d8;--color-muted: #b3a28d;--color-quiet: #7d6a57;--color-accent: #e0834f;--color-accent-deep: #a84e24;--color-accent-glow: rgba(224, 131, 79, .14);--color-rift: #5fd9e6;--color-rift-glow: rgba(95, 217, 230, .35);--color-on-accent: #14100c;--shadow-card: 0 6px 24px rgba(0, 0, 0, .45);--font-display: "Fraunces", Georgia, "Times New Roman", serif;--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--radius: 6px;--max-w: 1120px;--gap: clamp(1rem, 4vw, 2.5rem)}@font-face{font-family:Fraunces;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/fraunces-latin.woff2) format("woff2");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:Fraunces;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/fraunces-vietnamese.woff2) format("woff2");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:Inter;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/inter-latin.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/jetbrains-mono-latin.woff2) format("woff2")}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:4.5rem;-webkit-text-size-adjust:100%}body{--grid-minor: rgba(241, 231, 216, .022);--grid-major: rgba(241, 231, 216, .045);background-color:var(--color-bg);background-image:radial-gradient(120% 90% at 50% 20%,transparent 45%,var(--color-bg) 95%),linear-gradient(var(--grid-major) 1px,transparent 1px),linear-gradient(90deg,var(--grid-major) 1px,transparent 1px),linear-gradient(var(--grid-minor) 1px,transparent 1px),linear-gradient(90deg,var(--grid-minor) 1px,transparent 1px);background-size:100% 100%,120px 120px,120px 120px,24px 24px,24px 24px;background-position:0 0,center -1px,center -1px,center -1px,center -1px;color:var(--color-text);font-family:var(--font-sans);font-size:clamp(1rem,1.3vw,1.06rem);line-height:1.65;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased}img,svg{display:block;max-width:100%}img{height:auto}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{cursor:pointer;border:none;background:none;font:inherit;color:inherit}h1,h2,h3{font-family:var(--font-display);font-optical-sizing:auto;font-weight:600;line-height:1.08;letter-spacing:-.015em}h2{font-size:clamp(2rem,4.6vw,3.1rem)}h3{font-size:clamp(1.25rem,2.2vw,1.5rem)}p{max-width:62ch}em{font-style:italic}.nw{white-space:nowrap}.text-link{color:var(--color-text);text-decoration:underline;text-decoration-color:var(--color-accent-deep);text-decoration-thickness:1px;text-underline-offset:.22em;transition:text-decoration-color .2s,color .2s}.text-link:hover{color:var(--color-accent);text-decoration-color:var(--color-accent)}.container{width:100%;max-width:var(--max-w);margin-inline:auto;padding-inline:var(--gap)}:focus-visible{outline:2px solid var(--color-rift);outline-offset:3px;border-radius:2px}.skip-link{position:absolute;left:var(--gap);top:-4rem;z-index:200;padding:.6rem 1rem;background:var(--color-accent);color:var(--color-on-accent);font-weight:600;border-radius:var(--radius)}.skip-link:focus{top:.75rem}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}a:hover .ext{transform:none}}.nav-inner[data-astro-cid-dmqpwcec]{display:flex;align-items:center;gap:2rem;height:3.5rem}.wordmark[data-astro-cid-dmqpwcec]{font-family:var(--font-display);font-weight:600;font-size:1.15rem;letter-spacing:-.01em;margin-right:auto}.wordmark[data-astro-cid-dmqpwcec] span[data-astro-cid-dmqpwcec]{color:var(--color-muted);font-weight:400}.studio-link[data-astro-cid-dmqpwcec]{display:inline-flex;align-items:center;gap:.35em;padding:.4em .85em;border:1px solid var(--color-border);border-radius:999px;font-size:.85rem;font-weight:500;transition:border-color .2s,color .2s}.studio-link[data-astro-cid-dmqpwcec]:hover{border-color:var(--color-accent);color:var(--color-accent)}.ext[data-astro-cid-dmqpwcec]{font-size:.85em;transition:transform .2s ease-out}.studio-link[data-astro-cid-dmqpwcec]:hover .ext[data-astro-cid-dmqpwcec]{transform:translate(2px,-2px)}.gear-train[data-astro-cid-v72yp4dn]{overflow:visible}.gear[data-astro-cid-v72yp4dn] path[data-astro-cid-v72yp4dn]{fill:var(--gear-fill, #0e0a07);stroke:var(--gear-edge, rgba(224, 131, 79, .45));stroke-width:1.5;vector-effect:non-scaling-stroke}.gear-ring[data-astro-cid-v72yp4dn]{fill:none;stroke:var(--gear-edge, rgba(224, 131, 79, .45));stroke-width:1;stroke-dasharray:2 6;vector-effect:non-scaling-stroke;opacity:.6}.centre[data-astro-cid-v72yp4dn],.pitch[data-astro-cid-v72yp4dn]{fill:none;stroke:var(--gear-line, rgba(179, 162, 141, .32));stroke-width:1;vector-effect:non-scaling-stroke}.centre[data-astro-cid-v72yp4dn]{stroke-dasharray:14 4 2 4}.pitch[data-astro-cid-v72yp4dn]{stroke-dasharray:3 5}.note[data-astro-cid-v72yp4dn]{fill:var(--color-muted);font-family:var(--font-mono);letter-spacing:.04em;dominant-baseline:central;paint-order:stroke;stroke:var(--color-bg, #14100c);stroke-width:6px;stroke-linejoin:round;transition:fill .2s}.gear[data-astro-cid-v72yp4dn] path[data-astro-cid-v72yp4dn]{transition:fill .2s,stroke .2s}.gear[data-astro-cid-v72yp4dn].on path[data-astro-cid-v72yp4dn]{fill:var(--gear-fill-on, var(--color-surface-2));stroke:var(--color-accent)}.note[data-astro-cid-v72yp4dn].on{fill:var(--color-accent)}.card[data-astro-cid-d5g24mzr]{display:flex;flex-direction:column;gap:clamp(1.5rem,3.2vh,2.25rem);padding-block:clamp(1rem,3vh,2rem) clamp(1.5rem,3vh,2.5rem)}h1[data-astro-cid-d5g24mzr]{display:flex;flex-direction:column;gap:.35rem;font-weight:600;letter-spacing:-.03em;line-height:1}.hi[data-astro-cid-d5g24mzr]{font-size:clamp(2.6rem,8vw,4.4rem)}.line[data-astro-cid-d5g24mzr]{font-size:clamp(1.4rem,3.4vw,2.1rem);font-weight:400;letter-spacing:-.02em;line-height:1.15;color:var(--color-muted)}.meta[data-astro-cid-d5g24mzr]{margin-top:1rem;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.04em;color:var(--color-muted);max-width:none}.fig[data-astro-cid-d5g24mzr]{display:flex;flex-direction:column;gap:1.25rem}.fig[data-astro-cid-d5g24mzr] .train{width:100%;height:auto;--gear-fill: var(--color-bg);--gear-edge: rgba(224, 131, 79, .55)}.fig[data-astro-cid-d5g24mzr] .note .t{display:none}.fig[data-astro-cid-d5g24mzr] .note{font-size:20px!important}@media(min-width:1000px){.fig[data-astro-cid-d5g24mzr] .note{display:none}}figcaption[data-astro-cid-d5g24mzr]{padding-top:.75rem;border-top:1px solid var(--color-border);font-family:var(--font-mono);font-size:.74rem;line-height:1.5;color:var(--color-muted)}.figno[data-astro-cid-d5g24mzr]{color:var(--color-accent)}.plate[data-astro-cid-d5g24mzr]{position:relative;padding-bottom:2.5rem}.motion-toggle[data-astro-cid-d5g24mzr]{position:absolute;bottom:0;right:0;display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:1px solid var(--color-border);border-radius:50%;background:var(--color-bg);color:var(--color-muted);transition:color .2s,border-color .2s}@media(min-width:1000px){.plate[data-astro-cid-d5g24mzr]{padding-bottom:0}.motion-toggle[data-astro-cid-d5g24mzr]{top:0;bottom:auto}}.motion-toggle[data-astro-cid-d5g24mzr]:hover{color:var(--color-text);border-color:var(--color-accent)}.motion-toggle[data-astro-cid-d5g24mzr] svg[data-astro-cid-d5g24mzr]{fill:currentColor}.motion-toggle[data-astro-cid-d5g24mzr] .i-play[data-astro-cid-d5g24mzr]{display:none}.motion-toggle[data-astro-cid-d5g24mzr][aria-pressed=true] .i-play[data-astro-cid-d5g24mzr]{display:inline}.motion-toggle[data-astro-cid-d5g24mzr][aria-pressed=true] .i-pause[data-astro-cid-d5g24mzr],.no-motion .motion-toggle[data-astro-cid-d5g24mzr]{display:none}.no-motion .plate[data-astro-cid-d5g24mzr]{padding-bottom:0}.chapters[data-astro-cid-d5g24mzr]{display:grid;grid-template-columns:1fr;gap:.25rem}@media(min-width:640px){.chapters[data-astro-cid-d5g24mzr]{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 1.5rem}}@media(min-width:1000px){.chapters[data-astro-cid-d5g24mzr]{grid-template-columns:repeat(4,minmax(0,1fr));gap:0}}.chapters[data-astro-cid-d5g24mzr] li[data-astro-cid-d5g24mzr]{display:grid;grid-template-columns:2rem 1fr;align-content:start;gap:.75rem;padding:.7rem .75rem;margin-inline:-.75rem;border-radius:calc(var(--radius) * 2);transition:background-color .2s}@media(min-width:1000px){.chapters[data-astro-cid-d5g24mzr] li[data-astro-cid-d5g24mzr]{grid-template-columns:1fr;gap:.6rem;margin-inline:0;padding:.9rem 1.1rem 1rem}.num[data-astro-cid-d5g24mzr]{justify-self:center}}.chapters[data-astro-cid-d5g24mzr] li[data-astro-cid-d5g24mzr].on{background:var(--color-surface)}.num[data-astro-cid-d5g24mzr]{font-family:var(--font-mono);font-size:.8rem;line-height:1.9rem;text-align:center;width:1.9rem;height:1.9rem;border:1px solid var(--color-border);border-radius:50%;color:var(--color-accent);transition:border-color .2s}li[data-astro-cid-d5g24mzr].on .num[data-astro-cid-d5g24mzr]{border-color:var(--color-accent)}h2[data-astro-cid-d5g24mzr]{font-size:1.15rem;margin-bottom:.25rem}.chapters[data-astro-cid-d5g24mzr] p[data-astro-cid-d5g24mzr]{font-size:.93rem;line-height:1.6;color:var(--color-muted);max-width:60ch}.contact[data-astro-cid-d5g24mzr]{display:flex;flex-direction:column;gap:.6rem;padding-top:1.25rem;border-top:1px solid var(--color-border)}.links[data-astro-cid-d5g24mzr]{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem 1.4rem;font-size:.95rem}.links[data-astro-cid-d5g24mzr]>li[data-astro-cid-d5g24mzr]{display:inline-flex;align-items:center;gap:.5rem;flex-wrap:wrap}.links[data-astro-cid-d5g24mzr] a[data-astro-cid-d5g24mzr]{display:inline-block;padding-block:.3rem}.copy[data-astro-cid-d5g24mzr]{padding:.2rem .6rem;min-height:1.6rem;border:1px solid var(--color-border);border-radius:999px;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted);transition:color .2s,border-color .2s}.copy[data-astro-cid-d5g24mzr]:hover{color:var(--color-text);border-color:var(--color-accent)}.copy-status[data-astro-cid-d5g24mzr]:empty{margin-left:-.5rem}.copy-status[data-astro-cid-d5g24mzr]{font-family:var(--font-mono);font-size:.7rem;color:var(--color-accent);min-width:0}.dad[data-astro-cid-d5g24mzr]{color:var(--color-muted);font-size:.9rem}footer[data-astro-cid-sz7xmlte]{padding-block:1.25rem 1.75rem}p[data-astro-cid-sz7xmlte]{color:var(--color-muted);font-size:.78rem;font-family:var(--font-mono);max-width:none}
