:root{color-scheme:light;--ink: #111111;--muted: #6b6b6b;--rule: #e4e4e4;--accent: #ff5722;--paper: #ffffff;--placeholder: #ededed;--toggle-on: #f0f0f0;--toggle-off: #9a9a9a;--code-bg: #f6f6f6;--sheet: #ffffff;--media-edge: #e4e4e4;--page: 1440px;--gutter: 48px;--section-gap: 72px;--sans: "Inter", system-ui, -apple-system, sans-serif;--sans-tight: "Inter Tight", "Inter", system-ui, sans-serif;--mono: ui-monospace, SFMono-Regular, Menlo, monospace;--nav: "Bricolage Grotesque", system-ui, sans-serif;--script: "Sarina", cursive}:root[data-theme=dark]{color-scheme:dark;--ink: #f2f2f2;--muted: #8a8a8a;--rule: #2a2a2a;--accent: #f5a623;--paper: #0f0f0f;--placeholder: #1c1c1c;--toggle-on: #242424;--toggle-off: #6e6e6e;--code-bg: #1a1a1a;--media-edge: #3b3b3b}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scrollbar-gutter:stable}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-weight:300;font-size:17.5px;line-height:35px;letter-spacing:-.02em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis:none}img,svg,video,iframe{display:block;max-width:100%}a{color:inherit;text-decoration:none}.prose a,.post-content a,.project-body>p a,.project-body>ul a,.project-body>ol a,.project-body>blockquote a{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:var(--rule)}.prose a:hover,.post-content a:hover,.project-body>p a:hover,.project-body>ul a:hover,.project-body>ol a:hover,.project-body>blockquote a:hover{text-decoration-color:var(--accent)}.wrap{max-width:var(--page);margin:0 auto;padding:0 var(--gutter) 80px}.site-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--paper) 68%,transparent);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%)}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.site-header{background:var(--paper)}}.site-nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:baseline;gap:24px;max-width:var(--page);margin:0 auto;padding:32px var(--gutter) 16px}.wordmark{font-family:var(--script);font-weight:400;font-size:22px;line-height:30px;letter-spacing:0;color:var(--ink)}.site-nav-links{display:flex;justify-content:center;gap:36px}.site-nav-links a{font-family:var(--nav);font-size:13px;font-weight:500;line-height:16px;letter-spacing:.1em;color:var(--muted);transition:color .15s ease}.site-nav-links a:hover,.site-nav-links a[aria-current=page]{color:var(--ink)}.theme-toggle{display:flex;align-items:center;justify-self:end;flex-shrink:0;padding:3px;gap:2px;border:1px solid var(--rule);border-radius:14px}.theme-toggle button{display:flex;align-items:center;justify-content:center;width:28px;height:22px;flex-shrink:0;padding:0;border:0;border-radius:11px;background:transparent;color:var(--toggle-off);cursor:pointer;transition:background .15s ease,color .15s ease}.theme-toggle button:hover{color:var(--ink)}.theme-toggle button[aria-pressed=true]{background:var(--toggle-on);color:var(--ink)}.theme-toggle svg{width:13px;height:13px}@property --theme-r{syntax: "<length>"; inherits: false; initial-value: 0px;}@keyframes theme-in{0%{--theme-r: -16vmax}to{--theme-r: 150vmax}}html.theme-vt::view-transition-old(root){animation:none}html.theme-vt::view-transition-new(root){mask-image:radial-gradient(circle at var(--vt-x, 50%) var(--vt-y, 50%),#000 var(--theme-r),transparent calc(var(--theme-r) + 16vmax));animation:theme-in 1.1s both}@media(prefers-reduced-motion:reduce){html.theme-vt::view-transition-old(root),html.theme-vt::view-transition-new(root){animation:none;mask-image:none}}.hero{position:relative;background:var(--sheet);box-shadow:0 0 0 100vmax var(--sheet);clip-path:inset(0 -100vmax)}.hero:focus{outline:none}.hero-stage{position:relative;width:100%;container-type:inline-size;overflow:hidden}.hero-piece{position:absolute}.hero .hero-piece img{display:block;width:100%;height:100%}.hero-open{display:block;width:100%;padding:0;border:0;background:none;cursor:default}.hero-hint{display:flex;height:0;align-items:flex-start;justify-content:center;font-family:var(--nav);font-size:8px;font-weight:400;line-height:20px;letter-spacing:.08em;color:var(--muted)}.hero-hint-tap,.hero-hint-rule{display:none}@media(pointer:coarse),(max-width:1024px){.hero-open{cursor:zoom-in}.hero-hint{height:auto;align-items:center;gap:14px}.hero-hint-tap{display:inline}.hero-hint-rule{display:block;flex-shrink:0;width:1px;height:10px;background:var(--rule)}}.note-layer[hidden],.note-caption[hidden],.note-replay[hidden],.hero-hint-rule[hidden],.hero-hint.is-away{display:none}.note-layer{position:absolute;inset:0;z-index:1;container-type:inline-size;pointer-events:none;--note-ink: #1a1a1a;--note-quiet: #6b6b6b}.note-caption{--note-ink: #1a1a1a;--note-quiet: var(--muted)}:root[data-theme=dark] .note-caption{--note-ink: var(--ink)}.note{display:flex;flex-direction:column;color:var(--note-ink)}.note:focus{outline:none}.note-head{display:flex;align-items:center;margin:0}.note-cells{display:flex}.note-said{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.note-cell{display:flex;flex-shrink:0;align-items:center;justify-content:center;box-sizing:border-box;border:1px solid #ee9ea3;border-right-width:0;background:#fff}.note-cell:last-child{border-right-width:1px}.note-glyph,.note-roman,.note-replay-glyph{font-family:Nanum Pen Script,cursive;font-weight:400;letter-spacing:0;color:#d7261e}.note-body{display:flex;flex-direction:column}.note-body p{margin:0;font-family:var(--sans);font-weight:400;letter-spacing:-.01em;word-break:keep-all}.note-foot{display:flex;align-items:center;gap:12px}.note-close{display:flex;align-items:center;gap:7px;margin:-14px -10px;padding:14px 10px;border:0;background:none;font-family:var(--nav);font-size:10px;font-weight:500;line-height:16px;letter-spacing:.08em;text-transform:uppercase;color:var(--note-quiet);cursor:pointer}.note-close svg{width:10px;height:10px}.note-close:hover{color:#d7261e}.note-close:focus{outline:none}.note-close:focus-visible span{text-decoration:underline;text-underline-offset:3px}.note-timer{display:block;flex-shrink:0;width:62px;height:2px}.note-timer-bar{display:block;height:100%;border-radius:1px;background:#d7261e;transform-origin:left center}.note-layer .note{position:absolute;left:17.8571cqw;top:4.4643cqw;width:44.6429cqw;gap:10px;pointer-events:auto}.note-layer .note-cell{width:3.5714cqw;height:3.5714cqw}.note-layer .note-glyph{font-size:4.0179cqw;line-height:3.5714cqw}.note-layer .note-roman{padding-left:.8929cqw;font-size:2.2321cqw;line-height:3.5714cqw}.note-layer .note-body{width:43.1548cqw;gap:10px}.note-layer .note-body p{font-size:clamp(14px,1.1905cqw,16px);line-height:1.5;text-shadow:0 0 2px #fff,0 0 4px #fff,0 0 6px #fff}.note-layer .note-foot{margin-top:6px}.note-replay{position:relative;z-index:1;display:flex;align-items:center;gap:10px;margin:-7px -12px -16px;padding:8px 12px 16px;border:0;background:none;cursor:pointer}.note-replay-cells{display:flex}.note-replay-cell{display:flex;flex-shrink:0;align-items:center;justify-content:center;box-sizing:border-box;width:20px;height:20px;border:1px solid #f3b9bc;border-right-width:0;background:#fff}.note-replay-cell:last-child{border-right-width:1px}.note-replay-glyph{font-size:22px;line-height:20px}.note-replay-label{position:relative;font-family:var(--nav);font-size:11px;font-weight:500;line-height:16px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);transition:color .15s ease-out}.note-replay:hover .note-replay-label,.note-replay:focus-visible .note-replay-label{color:#d7261e}.note-replay:focus{outline:none}.note-replay:focus-visible .note-replay-cells{outline:2px solid #d7261e;outline-offset:2px}.note-replay-label:after{content:"";position:absolute;left:0;right:.08em;bottom:-3px;height:1.5px;background:#d7261e;transform:scaleX(0);transform-origin:left center}@media(pointer:coarse),(max-width:1024px){.note-caption{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s cubic-bezier(.65,0,.35,1)}.note-caption.is-open{grid-template-rows:1fr}.note-caption.is-collapsing{transition-duration:.6s;transition-delay:.1s;transition-timing-function:cubic-bezier(.5,0,.2,1)}.note-caption-inner{min-height:0;overflow:hidden}.note-caption .note{gap:12px;padding:16px 0}.note-caption .note-cell{width:30px;height:30px;border-color:#f3b9bc}.note-caption .note-glyph{font-size:34px;line-height:30px}.note-caption .note-roman{padding-left:10px;font-size:24px;line-height:30px}.note-caption .note-body{gap:8px}.note-caption .note-body p{font-size:14px;line-height:22px}.note-replay{gap:7px;margin:-12px -8px;padding:12px 8px}.note-replay-cell{width:16px;height:16px}.note-replay-glyph{font-size:18px;line-height:16px}.note-replay-label{font-size:8px;font-weight:400;line-height:20px}.note-replay-label:after{bottom:1px;height:1px}}.hero .hero-piece{transition:opacity .5s ease-out,filter .5s ease-out}.hero.is-noting .hero-piece{opacity:.1;filter:grayscale(1)}.hero.is-noting .hero-piece[data-note=ground]{opacity:.38;filter:none}.hero.is-noting .hero-piece[data-note=keep]{opacity:1;filter:none}.hero.is-returning .hero-piece{transition-duration:.4s;transition-timing-function:cubic-bezier(.65,0,.35,1);transition-delay:calc(.2s + var(--note-x, 0) * .2s)}@keyframes note-fade-in{0%{opacity:0}}@keyframes note-fade-out{to{opacity:0}}@keyframes note-write{0%{clip-path:inset(-25% 100% -25% -25%)}to{clip-path:inset(-25% -25% -25% -25%)}}@keyframes note-rise{0%{opacity:0;transform:translateY(6px)}}@keyframes note-timer{to{transform:scaleX(0)}}@keyframes note-underline{0%{transform:scaleX(0);opacity:1}16.67%{transform:scaleX(1)}83.33%{opacity:1}to{transform:scaleX(1);opacity:0}}.note.is-building .note-cell{animation:note-fade-in .5s ease-out both}.note.is-building .note-glyph{animation:note-write .12s cubic-bezier(.65,0,.35,1) .3s both}.note.is-building .note-cell:nth-child(2) .note-glyph{animation-delay:.48s}.note.is-building .note-cell:nth-child(3) .note-glyph{animation-delay:.66s}.note.is-building .note-roman{animation:note-fade-in .2s cubic-bezier(.65,0,.35,1) .78s both}.note.is-building .note-body p,.note.is-building .note-foot{animation:note-rise .3s cubic-bezier(.65,0,.35,1) .9s both}.note.is-building .note-body p:nth-child(2){animation-delay:.96s}.note.is-building .note-body p:nth-child(3){animation-delay:1.02s}.note.is-building .note-foot{animation-delay:1.08s}.note.is-building.is-replay .note-cell,.note.is-building.is-replay .note-glyph{animation:none}.note.is-building.is-replay .note-roman{animation-delay:.6s}.note.is-building.is-replay .note-body p:nth-child(1){animation-delay:.7s}.note.is-building.is-replay .note-body p:nth-child(2){animation-delay:.76s}.note.is-building.is-replay .note-body p:nth-child(3){animation-delay:.82s}.note.is-building.is-replay .note-foot{animation-delay:.88s}.note.is-cells-away .note-cells,.note-replay.is-cells-away .note-replay-cells{visibility:hidden}.note.is-holding .note-timer-bar{animation:note-timer 12s linear both}.note.is-paused .note-timer-bar{animation-play-state:paused}.note.is-closing .note-roman,.note.is-closing .note-body,.note.is-closing .note-foot{animation:note-fade-out .2s cubic-bezier(.65,0,.35,1) both}.note.is-fading{animation:note-fade-out .2s ease-out both}.hero-hint.is-appearing .hero-hint-tap,.hero-hint.is-appearing .hero-hint-rule,.hero-hint.is-appearing .note-replay{animation:note-fade-in .2s ease-out both}.hero-hint.is-arriving .hero-hint-tap,.hero-hint.is-arriving .hero-hint-rule,.hero-hint.is-arriving .note-replay-label{animation:note-fade-in .3s cubic-bezier(.65,0,.35,1) .4s both}.note-replay.is-landed .note-replay-label:after{animation:note-underline 1.8s cubic-bezier(.65,0,.35,1) both}.note-flight{position:fixed;top:0;left:0;z-index:90;pointer-events:none}.note-flight>div>div{display:flex;transform-origin:0 0}@media(prefers-reduced-motion:reduce){.note.is-building .note-cell,.note.is-building .note-glyph,.note.is-building .note-roman,.note.is-building .note-body p,.note.is-building .note-foot{animation:none}.note.is-building{animation:note-fade-in .2s ease-out both}.hero .hero-piece,.hero.is-returning .hero-piece{transition:opacity .2s ease-out,filter .2s ease-out;transition-delay:0s}.note-caption,.note-caption.is-collapsing{transition:none}}.lightbox{position:fixed;top:0;left:0;right:0;height:100dvh;z-index:100;display:none;align-items:center;justify-content:center;background:#0a0a0ad1;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.lightbox.is-open{display:flex}.lightbox:focus{outline:none}.lightbox-stage{width:100%;overflow:auto;-webkit-overflow-scrolling:touch;display:flex;align-items:center;justify-content:flex-start}.lightbox-stage .hero-stage{height:72vh;width:auto;max-width:none;margin:auto;flex:none}.lightbox-stage .hero-piece img{display:block;width:100%;height:100%}.doc-lightbox .lightbox-stage{justify-content:safe center;align-items:safe center;overflow:auto}.doc-lightbox .lightbox-stage img{width:auto;height:auto;max-width:none;max-height:none;margin:auto;flex:none;background:#fff}.lightbox-close{position:absolute;top:calc(env(safe-area-inset-top,0px) + 10px);right:10px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;background:none;color:#fff;cursor:pointer;filter:drop-shadow(0 1px 4px rgba(0,0,0,.7))}.lightbox-close svg{width:18px;height:18px}.lightbox-close:focus{outline:none}.lightbox-close:focus-visible{outline:2px solid #ffffff;outline-offset:2px;border-radius:4px}.lightbox-hint{position:absolute;bottom:calc(env(safe-area-inset-bottom,0px) + 14px);left:0;right:0;text-align:center;font-family:var(--nav);font-size:11px;font-weight:500;line-height:16px;letter-spacing:.1em;color:#ffffffeb;text-shadow:0 1px 4px rgba(0,0,0,.7)}body.is-locked{overflow:hidden}.intro{padding-top:62.6px;max-width:1184px}.intro p{margin:0 0 24px}.intro p:last-child{margin-bottom:0}.intro .name{font-weight:700;margin-bottom:24px}.masthead{padding-top:71px}.masthead h1{margin:0;font-size:32px;line-height:44px;letter-spacing:-.02em;font-weight:700}.masthead .deck{margin:10px 0 0;max-width:720px;font-weight:300}.ledger{margin:0;padding:var(--section-gap) 0 0;list-style:none}.ledger li{display:flex;align-items:baseline;gap:20px;padding:20px 0;border-bottom:1px solid var(--rule)}.ledger li:last-child{border-bottom:0}.ledger-body{display:flex;flex-direction:column;flex-grow:1;min-width:0;gap:4px}.ledger-title{font-size:18px;line-height:26px;letter-spacing:-.01em;font-weight:400;color:var(--ink);transition:color .15s ease}.ledger li:hover .ledger-title{color:var(--accent)}.ledger-summary{font-size:14px;line-height:21px;letter-spacing:0;color:var(--muted)}.ledger-date{flex-shrink:0;text-align:right;font-family:var(--nav);font-size:13px;font-weight:500;line-height:16px;letter-spacing:.04em;color:var(--accent)}.ledger--covers>li{display:block;padding:0}.ledger-cover-link{display:flex;align-items:center;gap:40px;padding:20px 0}.ledger-cover-link:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.ledger-cover-art{flex:none;width:clamp(280px,33%,440px);aspect-ratio:22 / 7;overflow:hidden;background:var(--sheet)}.ledger-cover-img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 52%}.ledger--covers .ledger-title{flex:0 1 520px;min-width:0}.ledger-title-line{display:block;text-wrap:balance}.ledger--covers .ledger-date{margin-left:auto}.cards{display:grid;gap:40px 24px;margin:0;padding:var(--section-gap) 0 0;list-style:none}.cards--thirds{grid-template-columns:repeat(3,1fr)}.cards--halves{grid-template-columns:repeat(2,1fr)}.card{display:flex;flex-direction:column;gap:14px;min-width:0}.card-media{position:relative;width:100%;aspect-ratio:4 / 3;background:var(--placeholder);border:1px solid var(--media-edge);overflow:hidden}.cards--halves .card-media{aspect-ratio:16 / 9}.card-media img{width:100%;height:100%;object-fit:cover}.card-text{display:flex;flex-direction:column;gap:5px}.card-title{font-size:18px;line-height:26px;letter-spacing:-.01em;font-weight:400}.card-note{font-size:14px;line-height:21px;letter-spacing:0;color:var(--muted)}.card-meta{font-family:var(--nav);font-size:13px;font-weight:500;line-height:18px;letter-spacing:.04em;color:var(--accent)}.fc--accent{color:var(--accent)}.fc--muted{color:var(--muted)}.fc--red{color:#c0392b}.fc--orange{color:#d35400}.fc--green{color:#2e7d52}.fc--blue{color:#2563a8}.fc--purple{color:#6b4ea8}:root[data-theme=dark] .fc--red{color:#e8695a}:root[data-theme=dark] .fc--orange{color:#e8894a}:root[data-theme=dark] .fc--green{color:#5cb98a}:root[data-theme=dark] .fc--blue{color:#6aa3e0}:root[data-theme=dark] .fc--purple{color:#a68fd8}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .fc--red{color:#e8695a}:root:not([data-theme=light]) .fc--orange{color:#e8894a}:root:not([data-theme=light]) .fc--green{color:#5cb98a}:root:not([data-theme=light]) .fc--blue{color:#6aa3e0}:root:not([data-theme=light]) .fc--purple{color:#a68fd8}}.preview-flag{margin-top:24px;padding:10px 14px;border:1px solid var(--rule);border-radius:6px;font-family:var(--nav);font-size:12px;letter-spacing:.04em;color:var(--muted)}.preview-flag strong{color:var(--ink);font-weight:500}.preview-error{margin:48px 0;padding:20px 24px;border:1px solid var(--rule);border-radius:6px;max-width:720px}.preview-error p{margin:0 0 8px;color:var(--muted)}.preview-error p:last-child{margin-bottom:0}.preview-error strong{color:var(--ink)}.canvas{position:relative;width:100%;margin:8px 0 44px}.cv-item{position:absolute;transform-origin:center center}.cv-item img,.cv-item video,.cv-item svg{display:block;width:100%;height:auto}.cv-item--image img,.cv-item--video video{border:1px solid var(--media-edge)}.cv-item .media-caption{margin-top:8px}.project-body{position:relative;display:flow-root}.margin-item{float:right;clear:right;margin:0 0 32px 48px;max-width:calc(100% - 768px)}.margin-item--small{width:300px}.margin-item--medium{width:400px}.margin-item--large{width:520px}.margin-item figure{margin:0}.margin-item figure{display:flex;flex-direction:column;align-items:flex-end}.margin-item img,.margin-item video{display:block;width:auto;height:auto;max-width:100%;max-height:560px;border:1px solid var(--media-edge)}.margin-item .media-caption{margin-top:10px}.connectors{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:1}.connectors path{fill:none;stroke:var(--accent);stroke-width:1.6;stroke-linecap:round}.empty-state{display:flex;flex-direction:column;align-items:center;gap:40px;padding-top:138px;text-align:center}.empty-art{width:min(600px,100%);height:auto}.empty-text{display:flex;flex-direction:column;gap:10px;width:100%;max-width:600px}.empty-label{margin:0;font-family:var(--nav);font-size:13px;font-weight:500;line-height:18px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.empty-note{margin:0;font-size:17.5px;font-weight:300;line-height:30px;letter-spacing:-.02em;color:var(--muted)}.brk-narrow{display:none}.video{position:relative;width:100%;aspect-ratio:16 / 9;background:var(--placeholder);border:1px solid var(--media-edge);padding:0;cursor:pointer;overflow:hidden}.video img{width:100%;height:100%;object-fit:cover}.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:#fff;transition:transform .15s ease;pointer-events:none}.video:hover .video-play{transform:translate(-50%,-50%) scale(1.06)}.video-play svg{width:20px;height:22px;margin-left:2px}.empty{padding-top:var(--section-gap);color:var(--muted);font-size:18px;line-height:26px}article{padding-top:71px;max-width:720px}article h1{margin:0;font-size:32px;line-height:44px;letter-spacing:-.02em;font-weight:700}article h2{margin:48px 0 8px;font-size:22px;line-height:32px;letter-spacing:-.02em;font-weight:600}article h3{margin:32px 0 4px;font-size:18px;line-height:28px;font-weight:600}article p,article ul,article ol{margin:0 0 27px}article ul,article ol{padding-left:24px}article li{margin-bottom:8px}article blockquote{margin:0 0 27px;padding-left:20px;border-left:2px solid var(--rule);color:var(--muted)}article hr{margin:48px 0;border:0;border-top:1px solid var(--rule)}article code{font-family:var(--mono);font-size:.85em;background:var(--code-bg);padding:2px 5px}article pre{overflow-x:auto;padding:16px;background:var(--code-bg);font-size:14px;line-height:22px}article pre code{background:none;padding:0}.post-meta{margin:10px 0 40px;font-family:var(--nav);font-size:13px;font-weight:500;line-height:16px;letter-spacing:.04em;color:var(--accent)}.lead{font-weight:300;font-style:italic}article figure{margin:40px 0}article figure img,article figure video{width:100%;height:auto}article figcaption{margin-top:10px;font-size:calc(1em - 1px);line-height:1.5;letter-spacing:0;color:var(--muted)}.video-frame{position:relative;width:100%;aspect-ratio:16 / 9}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.project-link{display:inline-flex;align-items:center;gap:8px;margin-bottom:32px;padding-bottom:4px;border-bottom:1px solid var(--rule);font-family:var(--nav);font-size:13px;font-weight:500;line-height:16px;letter-spacing:.04em}.project-link:hover{border-bottom-color:var(--accent);color:var(--accent)}.project-link-label{color:var(--muted)}.project-link-arrow{flex-shrink:0}.project-lead,.post-lead{margin-bottom:40px}.essay-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:48px;padding-top:32px;border-top:1px solid var(--rule)}.button{display:inline-flex;align-items:center;padding:10px 18px;border:1px solid var(--ink);font-size:14px;line-height:21px;letter-spacing:0;transition:background .15s ease,color .15s ease}.button:hover{background:var(--ink);color:var(--paper)}.project-body{padding-top:8px}.project-body>p,.project-body>ul,.project-body>ol,.project-body>h2,.project-body>h3,.project-body>h4{max-width:720px;margin-inline:0}.project-body>blockquote{max-width:900px;margin-inline:0}.project-body>p{margin:0 0 28px}.project-body>ul,.project-body>ol{margin:0 0 28px;padding-left:24px}.project-body>li+li{margin-top:6px}.pb{margin-bottom:44px}.pb--text{max-width:720px}.pb--quote{max-width:900px}.pb--wide{max-width:1056px}.pb--full{max-width:100%}.pb--center{margin-inline:auto}.pb--left{margin-inline:0}.pb--right{margin-inline:auto 0}.pb-heading{margin:56px 0 4px;font-size:22px;line-height:32px;letter-spacing:-.02em;font-weight:600}.pb-quote{padding-left:20px;border-left:2px solid var(--accent);font-size:26px;line-height:40px;letter-spacing:-.02em;font-weight:300;color:var(--ink)}.pb-quote p{margin:0 0 16px}.pb-quote p:last-child{margin-bottom:0}.media-items{display:flex;gap:24px;align-items:flex-start}.media-items--stack{flex-direction:column}.media-items--grid2{flex-wrap:wrap}.media-items--grid2>.media-item{flex:0 0 calc(50% - 12px)}.media-items--row>.media-item{flex:1 1 0;min-width:0}.media-items--center{justify-content:center}.media-items--left{justify-content:flex-start}.media-items--right{justify-content:flex-end}.media-items--tall{align-items:flex-end}.media-items--tall>.media-item{flex:0 0 auto}.media-items--tall img{width:auto;height:auto;max-height:720px}.media-item{min-width:0}.media-item img,.media-item video{display:block;width:100%;height:auto;border:1px solid var(--media-edge)}.media-caption{margin-top:10px;font-size:calc(1em - 1px);line-height:1.5;letter-spacing:0;color:var(--muted)}.media-caption--group{text-align:center}.media-items--left+.media-caption--group{text-align:left}.media-items--right+.media-caption--group{text-align:right}.tm{display:flex;align-items:flex-start;gap:40px}.tm--media-left{flex-direction:row-reverse}.tm-text,.tm-media{min-width:0}.tm-media img{display:block;width:100%;height:auto;border:1px solid var(--media-edge)}.site-footer{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:120px;padding-top:16px;border-top:1px solid var(--rule)}.site-footer .copyright{font-family:var(--sans-tight);font-size:12px;line-height:16px;letter-spacing:.08em;font-weight:400;color:var(--muted)}.socials{display:flex;align-items:center;flex-shrink:0;gap:16px}.social{display:flex;align-items:center;justify-content:center;color:var(--muted);transition:color .15s ease}.social:hover{color:var(--accent)}.social svg{width:16px;height:16px}@media(max-width:900px){:root{--gutter: 24px;--section-gap: 48px}body{font-size:14px;line-height:24px}.ledger-title,.card-title{font-size:16px;line-height:24px}.ledger-cover-link{flex-direction:column;align-items:stretch;gap:0}.ledger-cover-art{width:100%;margin-bottom:16px}.ledger--covers .ledger-title{flex:none}.ledger--covers .ledger-date{margin:8px 0 0;text-align:left}.site-nav{grid-template-columns:1fr auto;grid-template-areas:"mark toggle" "links links";align-items:center;row-gap:16px;padding-bottom:24px}.wordmark{grid-area:mark}.theme-toggle{grid-area:toggle}.site-nav-links{grid-area:links}.site-nav-links{justify-content:flex-start;flex-wrap:wrap;gap:14px}.site-nav-links a{font-size:11px;letter-spacing:.08em}.hero{padding-block:12px 4px}.intro{padding-top:24px}.masthead{padding-top:40px}.masthead h1,article h1{font-size:26px;line-height:34px}.intro p,article p,article ul,article ol{margin-bottom:20px}.cards--thirds,.cards--halves{grid-template-columns:1fr}.margin-item{float:none;clear:none;width:100%;max-width:100%;margin:0 0 28px}.canvas{height:auto!important;display:flex;flex-direction:column;gap:28px}.cv-item{position:static;left:auto!important;top:auto!important;width:100%!important;transform:none!important}.connectors{display:none}.empty-state{padding-top:87px;gap:28px}.empty-art{width:min(251px,100%)}.empty-text{gap:8px}.empty-label{font-size:12px}.empty-note{font-size:14px;line-height:24px}.brk-wide{display:none}.brk-narrow{display:inline}.video-play{width:52px;height:52px}.site-footer{margin-top:64px}article{padding-top:40px}}@media(max-width:560px){.ledger li{flex-direction:column;gap:6px}.ledger-date{text-align:left}}
