:root{--ivory:#f1ece2;--ivory-2:#e7e1d5;--aluminium:#cfcac0;--graphite:#2a2926;--ink:#1c1b18;--ink-2:#5a564f;--orange:#e46c0a;--ease:cubic-bezier(.23, 1, .32, 1);--pad:clamp(20px, 4.45vw, 64px);--gut:clamp(16px, 2vw, 28px);--radius:8px;color-scheme:light}*,:before,:after{box-sizing:border-box}html{background:var(--ivory);color:var(--ink);text-size-adjust:100%}body{font-family:var(--f-archivo);-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;font-stretch:100%;line-height:1.55}h1,h2,h3,p,figure,dl,dd,ol{margin:0}[hidden]{display:none!important}.wrap[data-astro-cid-kqqkemna]{width:100%;max-width:1440px;padding-inline:var(--pad);margin-inline:auto}a[data-astro-cid-kqqkemna]{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}a[data-astro-cid-kqqkemna]:hover{text-decoration-thickness:2px}[data-astro-cid-kqqkemna]:focus-visible{outline-offset:3px;outline:2px solid}.mono[data-astro-cid-kqqkemna]{font-family:var(--f-martian-mono);font-variant-numeric:tabular-nums;letter-spacing:0;font-size:.75rem;font-stretch:100%}h2[data-astro-cid-kqqkemna]{letter-spacing:-.035em;text-wrap:balance;font-size:clamp(2.25rem,4.6vw,4.25rem);font-weight:800;font-stretch:125%;line-height:.95}h3[data-astro-cid-kqqkemna]{letter-spacing:-.01em;font-size:1.125rem;font-weight:700;font-stretch:112.5%;line-height:1.2}.notice[data-astro-cid-kqqkemna]{background:var(--ivory-2);color:var(--ink-2);font-size:.8125rem;line-height:1.45}.notice-row[data-astro-cid-kqqkemna]{justify-content:space-between;align-items:baseline;gap:8px 24px;padding-block:10px;display:flex}.notice[data-astro-cid-kqqkemna] a[data-astro-cid-kqqkemna]{color:var(--ink);white-space:nowrap}.notice-back[data-astro-cid-kqqkemna]{flex:none}.cover[data-astro-cid-kqqkemna]{grid-template-rows:1fr auto;min-height:calc(100svh - 40px);padding-bottom:clamp(24px,3.4vw,48px);display:grid}.reveal[data-astro-cid-kqqkemna]{place-items:center;padding-block:clamp(56px,8vw,96px);display:grid}.reveal-stage[data-astro-cid-kqqkemna]{width:min(100%,1080px);color:var(--ink)}.reveal-stage[data-astro-cid-kqqkemna] svg{width:100%;height:auto;display:block;overflow:visible}.cover-foot[data-astro-cid-kqqkemna]{border-top:1px solid #1c1b1829;justify-content:space-between;align-items:end;gap:24px;padding-top:20px;display:flex}h1[data-astro-cid-kqqkemna]{letter-spacing:-.03em;font-size:clamp(1.75rem,2.8vw,2.5rem);font-weight:800;font-stretch:125%;line-height:1}.cover-lede[data-astro-cid-kqqkemna]{max-width:52ch;color:var(--ink-2);text-wrap:pretty;margin-top:10px}.replay[data-astro-cid-kqqkemna]{border:1px solid var(--ink);border-radius:var(--radius);color:var(--ink);font:inherit;cursor:pointer;transition:background-color .16s var(--ease), color .16s var(--ease);background:0 0;flex:none;padding:11px 18px;font-size:.9375rem;font-weight:600}.replay[data-astro-cid-kqqkemna]:hover{background:var(--ink);color:var(--ivory)}@media (prefers-reduced-motion:no-preference){.reveal-stage[data-astro-cid-kqqkemna] .r-key{transform-box:fill-box;transform-origin:50% 100%;animation:.493s cubic-bezier(.23,1,.32,1) both r-key,.8s 1.25s both r-press}.reveal-stage[data-astro-cid-kqqkemna] .r-letter{transform-box:fill-box;animation:.44s cubic-bezier(.23,1,.32,1) both r-letter;animation-delay:calc(.38s + var(--i) * 70ms)}}@media (prefers-reduced-motion:reduce){.replay[data-astro-cid-kqqkemna]{display:none}}@keyframes r-key{0%{opacity:0;transform:translateY(-12%)}}@keyframes r-press{0%{animation-timing-function:cubic-bezier(.5,0,.75,0);scale:1}11%{animation-timing-function:cubic-bezier(.33,1,.68,1);scale:1.04 .88}20%{animation-timing-function:linear(0, .011 1%, .042 2%, .173 4.3%, .347 6.3%, .86 11.8%, 1.092 14.9%, 1.176 16.4%, 1.237 17.9%, 1.303 20.8%, 1.307 22.9%, 1.279 25.3%, .987 36.4%, .933 39.5%, .907 42.7%, .914 47.4%, 1.003 58.3%, 1.028 64.3%, .992 85.4%, 1);scale:1.03 .9}to{scale:1}}@keyframes r-letter{0%{opacity:0;transform:translateY(-16%)}}.idea[data-astro-cid-kqqkemna]{background:var(--orange);color:var(--ink);padding-block:clamp(88px,11vw,168px)}.idea-grid[data-astro-cid-kqqkemna]{gap:48px var(--gut);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.idea[data-astro-cid-kqqkemna] h2[data-astro-cid-kqqkemna]{grid-column:1/span 7;font-size:clamp(2.5rem,6.2vw,6rem);line-height:.92}.idea-text[data-astro-cid-kqqkemna]{grid-column:9/-1;align-self:end;gap:1em;font-size:1.125rem;display:grid}.sec[data-astro-cid-kqqkemna]{padding-block:clamp(88px,11vw,168px)}.sec-tight[data-astro-cid-kqqkemna]{padding-top:0}.dark[data-astro-cid-kqqkemna]{background:var(--graphite);color:var(--ivory)}.head[data-astro-cid-kqqkemna]{gap:20px var(--gut);grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;margin-bottom:clamp(40px,6vw,88px);display:grid}.head[data-astro-cid-kqqkemna] h2[data-astro-cid-kqqkemna]{grid-column:1/span 6}.head[data-astro-cid-kqqkemna] p[data-astro-cid-kqqkemna]{max-width:46ch;color:var(--ink-2);grid-column:8/-1}.dark[data-astro-cid-kqqkemna] .head[data-astro-cid-kqqkemna] p[data-astro-cid-kqqkemna]{color:var(--aluminium)}.plates[data-astro-cid-kqqkemna]{gap:clamp(64px, 8vw, 120px) var(--gut);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.plate[data-astro-cid-kqqkemna]{align-content:start;gap:28px;display:grid}.plate[data-astro-cid-kqqkemna] figcaption[data-astro-cid-kqqkemna]{gap:8px;max-width:48ch;display:grid}.plate[data-astro-cid-kqqkemna] figcaption[data-astro-cid-kqqkemna] p[data-astro-cid-kqqkemna]{color:var(--aluminium);font-size:1rem}.plate-symbol[data-astro-cid-kqqkemna]{grid-column:1/span 5}.plate-n[data-astro-cid-kqqkemna]{grid-column:7/-1}.plate-word[data-astro-cid-kqqkemna],.plate-lockup[data-astro-cid-kqqkemna]{grid-column:1/-1}.plate-lockup[data-astro-cid-kqqkemna] .draw-lockup{margin-left:calc(3.6875rem - 15.9184%)}.sec[data-astro-cid-kqqkemna] .draw{width:100%;color:var(--aluminium);position:relative}.sec[data-astro-cid-kqqkemna] .draw svg{width:100%;height:100%;display:block;overflow:visible}.sec[data-astro-cid-kqqkemna] .draw .gl,.sec[data-astro-cid-kqqkemna] .draw .gm,.sec[data-astro-cid-kqqkemna] .draw .dl,.sec[data-astro-cid-kqqkemna] .draw .rc{fill:none;stroke:currentColor;stroke-width:1px;vector-effect:non-scaling-stroke}.sec[data-astro-cid-kqqkemna] .draw .gl{opacity:.22}.sec[data-astro-cid-kqqkemna] .draw .gm{opacity:.5}.sec[data-astro-cid-kqqkemna] .draw .dl{opacity:.85}.sec[data-astro-cid-kqqkemna] .draw .rc{stroke:var(--ivory);stroke-dasharray:2 3;opacity:.9}.sec[data-astro-cid-kqqkemna] .draw .rc-ink{stroke:var(--ink)}.sec[data-astro-cid-kqqkemna] .fill-key{fill:var(--orange)}.sec[data-astro-cid-kqqkemna] .fill-word{fill:var(--ivory)}.sec[data-astro-cid-kqqkemna] .fill-ink{fill:var(--ink)}.sec[data-astro-cid-kqqkemna] .fill-unit{fill:var(--aluminium)}.sec[data-astro-cid-kqqkemna] .zone{fill:var(--ivory-2);stroke:var(--ink-2);stroke-dasharray:3 4;vector-effect:non-scaling-stroke}.sec[data-astro-cid-kqqkemna] .zone-mark{fill:var(--ivory);stroke:#1c1b1833;vector-effect:non-scaling-stroke}.sec[data-astro-cid-kqqkemna] .dim{font-family:var(--f-martian-mono);white-space:nowrap;font-size:.75rem;line-height:1;position:absolute;transform:translate(-50%,-50%)}.sec[data-astro-cid-kqqkemna] .dim.is-start{transform:translateY(-50%)}.sec[data-astro-cid-kqqkemna] .dim.is-end{transform:translate(-100%,-50%)}.sec[data-astro-cid-kqqkemna] .draw-clear{color:var(--ink)}.versions[data-astro-cid-kqqkemna]{gap:56px var(--gut);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.version[data-astro-cid-kqqkemna]{align-content:start;gap:16px;display:grid}.version[data-astro-cid-kqqkemna] figcaption[data-astro-cid-kqqkemna]{max-width:52ch;color:var(--ink-2);font-size:.9375rem}.version[data-astro-cid-kqqkemna] strong[data-astro-cid-kqqkemna]{color:var(--ink);font-weight:650}.stage[data-astro-cid-kqqkemna]{border-radius:var(--radius);background:var(--ivory-2);height:clamp(220px,27vw,380px);color:var(--ink);justify-content:center;align-items:center;gap:clamp(24px,4vw,64px);display:flex}.stage[data-astro-cid-kqqkemna] svg{display:block}.version-h[data-astro-cid-kqqkemna]{grid-column:1/span 8}.version-h[data-astro-cid-kqqkemna] .stage[data-astro-cid-kqqkemna] svg{width:66%;height:auto}.version-key[data-astro-cid-kqqkemna]{grid-column:9/-1}.version-key[data-astro-cid-kqqkemna] .stage[data-astro-cid-kqqkemna] svg{width:auto;height:64%}.version-s[data-astro-cid-kqqkemna]{grid-column:1/span 4}.version-s[data-astro-cid-kqqkemna] .stage[data-astro-cid-kqqkemna] svg{width:56%;height:auto}.version-parts[data-astro-cid-kqqkemna]{grid-column:5/-1}.stage[data-astro-cid-kqqkemna] .part-symbol{width:auto;height:34%;color:var(--orange)}.stage[data-astro-cid-kqqkemna] .part-word{width:42%;height:auto}.ways-sec[data-astro-cid-kqqkemna]{padding-top:0}.ways[data-astro-cid-kqqkemna]{border-top:1px solid #1c1b1824;grid-template-columns:1fr 1fr;display:grid}.way[data-astro-cid-kqqkemna]{aspect-ratio:16/9;place-items:center;display:grid;position:relative}.way-mark[data-astro-cid-kqqkemna]{width:min(54%,460px)}.way-mark[data-astro-cid-kqqkemna] svg{width:100%;height:auto;display:block}.way[data-astro-cid-kqqkemna] figcaption[data-astro-cid-kqqkemna]{bottom:var(--pad);left:max(var(--pad), 50vw - 720px + var(--pad));max-width:40ch;font-size:.875rem;line-height:1.4;position:absolute}@media (width>=900px){.way[data-astro-cid-kqqkemna]:nth-child(2n) figcaption[data-astro-cid-kqqkemna]{left:var(--pad)}}.way[data-astro-cid-kqqkemna] figcaption[data-astro-cid-kqqkemna] strong[data-astro-cid-kqqkemna]{font-weight:650}.way-full[data-astro-cid-kqqkemna]{background:var(--ivory);color:var(--ink)}.way-dark[data-astro-cid-kqqkemna]{--logo-accent:currentcolor;background:var(--ivory-2);color:var(--ink)}.way-light[data-astro-cid-kqqkemna]{--logo-accent:currentcolor;background:var(--graphite);color:var(--ivory)}.way-orange[data-astro-cid-kqqkemna]{--logo-accent:currentcolor;background:var(--orange);color:var(--ink)}.small[data-astro-cid-kqqkemna]{gap:56px var(--gut);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.ladder[data-astro-cid-kqqkemna]{grid-column:1/span 7;align-content:start;gap:40px;display:grid}.ladder-row[data-astro-cid-kqqkemna]{flex-wrap:wrap;align-items:end;gap:32px clamp(24px,3vw,40px);display:flex}.rung[data-astro-cid-kqqkemna]{justify-items:start;gap:12px;display:grid}.rung[data-astro-cid-kqqkemna] .mono[data-astro-cid-kqqkemna]{color:var(--ink-2)}.rung-mark[data-astro-cid-kqqkemna]{color:var(--ink)}.rung-mark[data-astro-cid-kqqkemna] svg{width:auto;height:100%;display:block}.ladder-row[data-astro-cid-kqqkemna]:first-child .rung-mark[data-astro-cid-kqqkemna]{color:var(--orange)}.header-mock[data-astro-cid-kqqkemna]{border-radius:var(--radius);background:var(--ivory-2);align-items:center;gap:28px;height:72px;padding-inline:24px;font-size:.9375rem;font-weight:500;display:flex}.header-mock[data-astro-cid-kqqkemna] svg{width:auto;height:30px;margin-right:auto;display:block}.note[data-astro-cid-kqqkemna]{color:var(--ink-2);font-size:.875rem}.favicon[data-astro-cid-kqqkemna]{grid-column:9/-1;align-content:start;gap:20px;display:grid}.tabs[data-astro-cid-kqqkemna]{gap:12px;display:grid}.tab-strip[data-astro-cid-kqqkemna]{border-radius:var(--radius);padding:8px 12px 0;display:flex}.tab-strip[data-astro-cid-kqqkemna].is-light{background:var(--ivory-2)}.tab-strip[data-astro-cid-kqqkemna].is-dark{background:var(--ink);color:var(--ivory)}.tab[data-astro-cid-kqqkemna]{background:var(--ivory);border-radius:8px 8px 0 0;align-items:center;gap:8px;width:200px;padding:9px 12px;font-size:.8125rem;font-weight:500;display:flex}.is-dark[data-astro-cid-kqqkemna] .tab[data-astro-cid-kqqkemna]{background:var(--graphite)}.tab[data-astro-cid-kqqkemna] img[data-astro-cid-kqqkemna]{display:block}.pixels[data-astro-cid-kqqkemna]{background:var(--ivory);width:192px;height:192px;position:relative;box-shadow:0 0 0 1px #1c1b1824}.pixels[data-astro-cid-kqqkemna] canvas[data-astro-cid-kqqkemna],.pixels[data-astro-cid-kqqkemna] svg[data-astro-cid-kqqkemna]{width:100%;height:100%;position:absolute;inset:0}.pixels[data-astro-cid-kqqkemna] canvas[data-astro-cid-kqqkemna]{image-rendering:pixelated}.pixels[data-astro-cid-kqqkemna] path[data-astro-cid-kqqkemna]{fill:none;stroke:#1c1b181f;stroke-width:1px;vector-effect:non-scaling-stroke}.palette[data-astro-cid-kqqkemna]{flex-wrap:wrap;align-items:start;gap:56px clamp(40px,6vw,96px);display:flex}.roles[data-astro-cid-kqqkemna]{border-top:1px solid #1c1b1824;flex:280px;max-width:520px;margin:0}.roles[data-astro-cid-kqqkemna] div[data-astro-cid-kqqkemna]{border-bottom:1px solid #1c1b1824;grid-template-columns:8.5rem 1fr;gap:16px;padding-block:10px;font-size:.9375rem;display:grid}.roles[data-astro-cid-kqqkemna] dt[data-astro-cid-kqqkemna]{font-weight:600}.roles[data-astro-cid-kqqkemna] dd[data-astro-cid-kqqkemna]{color:var(--ink-2);margin:0}.board[data-astro-cid-kqqkemna]{--k:min(calc((100vw - 2 * var(--pad)) / 5), 152px);--g:.06;width:calc(5 * var(--k));height:calc(2 * var(--k));position:relative}.cap[data-astro-cid-kqqkemna]{top:calc((var(--y) + var(--g) / 2) * var(--k));left:calc((var(--x) + var(--g) / 2) * var(--k));width:calc((var(--w) - var(--g)) * var(--k));height:calc((1 - var(--g)) * var(--k));padding:calc(.1 * var(--k));border-radius:calc(.1 * var(--k));background:var(--c);color:var(--ink);flex-direction:column;justify-content:space-between;display:flex;position:absolute;box-shadow:inset 0 0 0 1px #1c1b1824}.cap[data-astro-cid-kqqkemna].is-dark{box-shadow:none;color:var(--ivory)}.cap-name[data-astro-cid-kqqkemna]{font-size:clamp(.6875rem,1.1vw,.9375rem);font-weight:600;font-stretch:100%;line-height:1.15}.cap-hex[data-astro-cid-kqqkemna]{font-family:var(--f-martian-mono);font-size:clamp(.6875rem,.9vw,.8125rem);line-height:1}.cap-enter[data-astro-cid-kqqkemna]{--x:3.5;--y:0;width:calc((1.5 - var(--g)) * var(--k));height:calc((2 - var(--g)) * var(--k));box-shadow:none;background:0 0;justify-content:flex-start;gap:8px}.cap-enter[data-astro-cid-kqqkemna] svg{width:100%;height:100%;position:absolute;inset:0}.cap-enter[data-astro-cid-kqqkemna] span[data-astro-cid-kqqkemna]{position:relative}.cap-enter[data-astro-cid-kqqkemna] .cap-hex[data-astro-cid-kqqkemna]{bottom:calc(.1 * var(--k));left:calc(.35 * var(--k));position:absolute}.stretch[data-astro-cid-kqqkemna]{border-top:1px solid #1c1b1824;padding:0;list-style:none;display:grid}.stretch[data-astro-cid-kqqkemna] li[data-astro-cid-kqqkemna]{gap:var(--gut);border-bottom:1px solid #1c1b1824;grid-template-columns:minmax(64px,1fr) 11fr;align-items:baseline;padding-block:10px 14px;display:grid}.stretch[data-astro-cid-kqqkemna] .mono[data-astro-cid-kqqkemna]{color:var(--ink-2)}.stretch-text[data-astro-cid-kqqkemna]{font-size:min(clamp(1.75rem, 5.6vw, 5.25rem), (100vw - 2 * var(--pad) - 64px - var(--gut)) / 8.5);font-stretch:var(--s);letter-spacing:-.03em;white-space:nowrap;font-weight:800;line-height:1}.type-pair[data-astro-cid-kqqkemna]{gap:56px var(--gut);grid-template-columns:repeat(12,minmax(0,1fr));margin-top:clamp(56px,7vw,104px);display:grid}.type-pair[data-astro-cid-kqqkemna]>div[data-astro-cid-kqqkemna]:first-child{grid-column:1/span 5}.type-pair[data-astro-cid-kqqkemna]>div[data-astro-cid-kqqkemna]:last-child{grid-column:7/-1}.type-label[data-astro-cid-kqqkemna]{color:var(--ink-2);margin-bottom:16px}.body-sample[data-astro-cid-kqqkemna]{max-width:60ch;font-size:1.0625rem}.body-sample[data-astro-cid-kqqkemna] .nowrap[data-astro-cid-kqqkemna]{white-space:nowrap}.numerals[data-astro-cid-kqqkemna]{font-family:var(--f-martian-mono);letter-spacing:-.02em;font-size:clamp(2.25rem,5.4vw,5rem);font-weight:250;font-stretch:112.5%;line-height:1}.mono-data[data-astro-cid-kqqkemna]{gap:6px;margin-top:28px;display:grid}.mono-data[data-astro-cid-kqqkemna] div[data-astro-cid-kqqkemna]{border-bottom:1px solid #1c1b1824;grid-template-columns:minmax(7.5rem,9.5rem) 1fr;gap:16px;padding-bottom:6px;display:grid}.mono-data[data-astro-cid-kqqkemna] dt[data-astro-cid-kqqkemna]{color:var(--ink-2);font-size:.9375rem}.mono-data[data-astro-cid-kqqkemna] dd[data-astro-cid-kqqkemna]{font-family:var(--f-martian-mono);font-variant-numeric:tabular-nums;font-size:.9375rem}.foot[data-astro-cid-kqqkemna]{background:var(--graphite);color:var(--aluminium);padding-block:clamp(56px,7vw,96px);font-size:.9375rem}.foot-row[data-astro-cid-kqqkemna]{align-items:end;gap:32px;display:flex}.foot-key[data-astro-cid-kqqkemna]{flex:none;width:72px}.foot-key[data-astro-cid-kqqkemna] svg{width:100%;height:auto;display:block}.foot-text[data-astro-cid-kqqkemna]{gap:4px;display:grid}.foot-links[data-astro-cid-kqqkemna]{color:var(--ivory);flex-wrap:wrap;gap:8px 24px;margin-top:12px;display:flex}@media (width<=899px){.idea[data-astro-cid-kqqkemna] h2[data-astro-cid-kqqkemna],.idea-text[data-astro-cid-kqqkemna],.head[data-astro-cid-kqqkemna] h2[data-astro-cid-kqqkemna],.head[data-astro-cid-kqqkemna] p[data-astro-cid-kqqkemna],.plate-symbol[data-astro-cid-kqqkemna],.plate-n[data-astro-cid-kqqkemna],.plate-lockup[data-astro-cid-kqqkemna],.version-h[data-astro-cid-kqqkemna],.version-key[data-astro-cid-kqqkemna],.version-s[data-astro-cid-kqqkemna],.version-parts[data-astro-cid-kqqkemna],.ladder[data-astro-cid-kqqkemna],.favicon[data-astro-cid-kqqkemna],.type-pair[data-astro-cid-kqqkemna]>div[data-astro-cid-kqqkemna]:first-child,.type-pair[data-astro-cid-kqqkemna]>div[data-astro-cid-kqqkemna]:last-child{grid-column:1/-1}.plate-lockup[data-astro-cid-kqqkemna] .draw-lockup{margin-left:0}.ways[data-astro-cid-kqqkemna]{grid-template-columns:1fr}.way[data-astro-cid-kqqkemna]{aspect-ratio:4/3}.way-mark[data-astro-cid-kqqkemna]{width:72%}}@media (width<=599px){.notice-row[data-astro-cid-kqqkemna]{flex-direction:column;gap:6px}.cover[data-astro-cid-kqqkemna]{min-height:calc(100svh - 110px)}.mono-data[data-astro-cid-kqqkemna] dd[data-astro-cid-kqqkemna]{font-size:.8125rem}.foot-row[data-astro-cid-kqqkemna],.cover-foot[data-astro-cid-kqqkemna]{flex-direction:column;align-items:start}.sec[data-astro-cid-kqqkemna] .draw-word .dim{display:none}.sec[data-astro-cid-kqqkemna] .draw-lockup .dim:not(.is-start,.is-end){margin-top:4px}.sec[data-astro-cid-kqqkemna] .draw-clear .dim{font-size:.6875rem}.header-mock[data-astro-cid-kqqkemna] span[data-astro-cid-kqqkemna]{display:none}.cap-name[data-astro-cid-kqqkemna],.cap-hex[data-astro-cid-kqqkemna]{font-stretch:75%}.roles[data-astro-cid-kqqkemna] div[data-astro-cid-kqqkemna]{grid-template-columns:7rem 1fr;gap:12px}}
