:root{color-scheme:dark;--paper: #131311;--paper-2: #1c1c1a;--ink: #ebebeb;--ink-2: #c4c4c4;--muted: #a4a4a4;--rule: #363533;--accent: #ff5a1f;--accent-soft: #2a1710;--font-display: "Libre Caslon Text", Georgia, "Times New Roman", serif;--font-body: "Space Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "DM Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--font-label: "Libre Caslon Text", Georgia, "Times New Roman", serif;--measure: 66ch;--gutter: clamp(1.25rem, 3vw, 2.5rem);--page: 1240px;--step--2: clamp(.68rem, .65rem + .12vw, .72rem);--step--1: clamp(.82rem, .79rem + .14vw, .9rem);--step-0: clamp(1rem, .96rem + .2vw, 1.12rem);--step-1: clamp(1.25rem, 1.16rem + .45vw, 1.5rem);--step-2: clamp(1.6rem, 1.4rem + 1vw, 2.25rem);--step-3: clamp(2.1rem, 1.7rem + 2vw, 3.25rem);--step-4: clamp(2.9rem, 1.9rem + 4.6vw, 6rem);--step-5: clamp(3.6rem, 1.8rem + 8vw, 9rem);--head-era: clamp(1.35rem, 1.2rem + .6vw, 1.75rem);--head-work: clamp(1.75rem, 1.45rem + 1.3vw, 2.5rem);--head-prose: clamp(1.75rem, 1.4rem + 1.6vw, 2.5rem)}:root[data-theme=light]{color-scheme:light;--paper: #ffffff;--paper-2: #f7f7f7;--ink: #242424;--ink-2: #353535;--muted: #555555;--rule: #dedede;--accent: #c2410c;--accent-soft: #fbe9e0}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;transition:background-color .25s ease,color .25s ease;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:var(--step-0);line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration-color:var(--rule);text-underline-offset:.2em}a:hover{text-decoration-color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}h1,h2,h3,h4{font-family:var(--font-display);font-weight:400;line-height:1.08;letter-spacing:-.02em;margin:0;text-wrap:balance}p{margin:0 0 1em}.skip-link{position:absolute;left:-9999px;top:0;background:var(--ink);color:var(--paper);padding:.75rem 1rem;z-index:100}.skip-link:focus{left:0}.shell{display:flex;flex-direction:column;min-height:100vh}main{flex:1}.section{padding-block:clamp(3.5rem,8vw,7rem)}.section+.section{padding-top:0}.masthead{padding-block:clamp(1.75rem,5vw,3rem) 0}.crumbs{display:flex;align-items:baseline;flex-wrap:wrap;gap:.5rem}.crumbs__root{margin:0;font:inherit;letter-spacing:inherit}.crumbs__sep{color:var(--muted);font-size:var(--step-0)}.crumbs__here{margin:0;font-family:var(--font-body);font-weight:500;font-size:var(--step-0);letter-spacing:-.005em;line-height:inherit;color:var(--ink)}.crumbs--deep .wordmark{color:var(--muted)}.crumbs--deep .wordmark:hover{color:var(--ink)}.wordmark{font-family:var(--font-body);font-weight:500;font-size:var(--step-0);letter-spacing:-.005em;text-decoration:none;display:inline-flex;align-items:baseline;gap:.5rem}.wordmark span{color:var(--accent)}.hero{position:relative;padding-block:clamp(3rem,9vw,7rem) clamp(2rem,5vw,4rem)}.hero__title{font-size:var(--step-5);line-height:.88;letter-spacing:-.045em;margin-bottom:clamp(1.25rem,3vw,2rem)}.hero__title em{font-style:normal;color:var(--accent)}.hero__lede{font-size:var(--step-0);line-height:1.6;max-width:46ch;color:var(--ink-2);font-family:var(--font-body);font-weight:400}.btn{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--font-body);font-size:var(--step--2);font-weight:500;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;padding:.95rem 1.5rem;border:1px solid var(--ink);background:var(--ink);color:var(--paper);cursor:pointer;transition:transform .15s ease,background .15s ease,color .15s ease}.btn:hover{background:var(--accent);border-color:var(--accent);transform:translateY(-2px)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.project-head{padding-block:clamp(1.5rem,4vw,2.5rem) clamp(1.5rem,4vw,2.5rem)}.project-head__tagline{font-size:var(--step-0);color:var(--ink-2);max-width:46ch;margin-top:0}.brief{margin:clamp(1.75rem,4vw,2.5rem) 0 0;border-top:1px solid var(--rule);max-width:var(--measure)}.brief__row{display:grid;grid-template-columns:minmax(0,9.5rem) minmax(0,1fr);gap:.3rem 2rem;align-items:baseline;padding:.9rem 0;border-bottom:1px solid var(--rule)}.brief__label{font-family:var(--font-body);font-size:var(--step--2);font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.brief__text{margin:0;color:var(--ink-2);text-wrap:pretty}@media(max-width:40rem){.brief__row{grid-template-columns:minmax(0,1fr)}}.project-meta{display:grid;gap:1.5rem 2.5rem;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));width:min(var(--page),calc(100vw - 2 * var(--gutter)));max-width:none;margin-top:clamp(2rem,5vw,3rem);padding-top:1.75rem;border-top:1px solid var(--rule)}.project-meta dt{font-family:var(--font-label);font-style:italic;font-size:var(--step-0);color:var(--muted);margin-bottom:.35rem}.project-meta dd{margin:0;font-size:var(--step-0)}.prose{max-width:var(--measure)}.prose>p,.prose>h2{max-width:var(--measure)}.prose h2{font-size:var(--head-prose);margin:clamp(2.5rem,6vw,4rem) 0 1rem;letter-spacing:-.02em}.prose h2:first-child{margin-top:0}.prose p{color:var(--ink-2)}.figure,.gallery{width:min(var(--page),calc(100vw - 2 * var(--gutter)));max-width:none}.figure{margin:clamp(2.25rem,6vw,4rem) 0}.figure img{border:1px solid var(--rule);background:var(--paper-2);width:100%}.figure figcaption{font-family:var(--font-label);font-style:italic;font-size:var(--step-0);color:var(--muted);margin-top:.75rem}.gallery{display:grid;gap:clamp(.75rem,2vw,1.25rem);grid-template-columns:repeat(auto-fit,minmax(min(100%,24rem),1fr));margin:clamp(2.25rem,6vw,4rem) 0}.gallery img{border:1px solid var(--rule);background:var(--paper-2);width:100%}.pager{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;border-top:1px solid var(--rule);padding-top:2rem;margin-top:clamp(3rem,7vw,5rem)}.pager a{font-family:var(--font-mono);font-size:var(--step--1);text-decoration:none}.pager a:hover{color:var(--accent)}.notice{border:1px solid var(--rule);border-left:3px solid var(--accent);background:var(--accent-soft);padding:clamp(1.25rem,3vw,2rem);max-width:var(--measure)}.notice h2{font-size:var(--step-1);margin-bottom:.6rem}.notice p{color:var(--ink-2);margin-bottom:0}.form{display:grid;gap:1.5rem;max-width:40rem}.field{display:grid;gap:.5rem}.field--row{display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}@media(max-width:34rem){.field--row{grid-template-columns:1fr}}.field label{font-family:var(--font-label);font-style:italic;font-size:var(--step-0);color:var(--muted)}.field input,.field select,.field textarea{font:inherit;font-size:var(--step-0);color:var(--ink);background:var(--paper-2);border:1px solid var(--rule);padding:.75rem .9rem;width:100%}.field textarea{min-height:9rem;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent)}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form-status{font-family:var(--font-mono);font-size:var(--step--1)}.form-status[data-tone=error]{color:var(--accent)}.site-footer{border-top:1px solid var(--rule);margin-top:clamp(4rem,10vw,8rem);padding-block:clamp(2.5rem,6vw,4rem);font-family:var(--font-mono);font-size:var(--step--1);color:var(--muted)}.site-footer__inner{display:flex;flex-wrap:wrap;gap:1rem 2rem;justify-content:space-between;align-items:center;padding-inline:var(--gutter)}.site-footer a{text-decoration:none}.site-footer a:hover{color:var(--accent)}.center-page{display:grid;place-items:center;text-align:center;min-height:60vh;gap:1.5rem}.buffalo-band{width:100%;overflow-x:clip;margin-bottom:clamp(2rem,6vw,3.5rem)}.buffalo{color:var(--ink);width:min(26rem,62vw);margin-left:auto;margin-right:var(--gutter);cursor:pointer;-webkit-tap-highlight-color:transparent}.buffalo svg{width:100%;height:auto;overflow:visible}.bf-line,.bf-leg path,.bf-tail path,.bf-shag path{stroke-dasharray:1;stroke-dashoffset:1;animation:bf-draw .55s ease-out forwards}@keyframes bf-draw{to{stroke-dashoffset:0}}.bf-line--top{animation-delay:.1s;animation-duration:.8s}.bf-line--under{animation-delay:.5s;animation-duration:.6s}.bf-line--beard1{animation-delay:.82s;animation-duration:.3s}.bf-line--beard2{animation-delay:.9s;animation-duration:.25s}.bf-line--horn{animation-delay:.78s;animation-duration:.28s}.bf-line--eye{animation-delay:1.08s;animation-duration:.2s}.bf-shag path{animation-delay:1s;animation-duration:.25s}.bf-tail path{animation-delay:.72s;animation-duration:.3s}.bf-leg--hind-far path{animation-delay:.86s;animation-duration:.3s}.bf-leg--fore-far path{animation-delay:.92s;animation-duration:.3s}.bf-leg--hind-near path{animation-delay:.98s;animation-duration:.3s}.bf-leg--fore-near path{animation-delay:1.04s;animation-duration:.3s}.bf-ground{stroke-dasharray:1;stroke-dashoffset:1;animation:bf-draw 1.4s ease-out 1.25s forwards;opacity:.35}.bf-body{transform-box:view-box;transform-origin:170px 110px;scale:-1 1;animation:bf-walk-in 3.6s cubic-bezier(.3,0,.25,1) 1.6s both,bf-bob .62s ease-in-out 1.6s 6 both}@keyframes bf-walk-in{0%{translate:165% 0}to{translate:0 0}}@keyframes bf-bob{0%,to{rotate:0deg}25%{rotate:-.5deg}75%{rotate:.5deg}}.bf-leg{transform-box:view-box;animation:bf-step .62s ease-in-out 1.6s 6 both}.bf-leg--fore-near{transform-origin:199px 135px}.bf-leg--fore-far{transform-origin:213px 132px;animation-delay:1.91s}.bf-leg--hind-near{transform-origin:111px 126px;animation-delay:1.91s}.bf-leg--hind-far{transform-origin:124px 124px}@keyframes bf-step{0%,to{rotate:0deg}25%{rotate:15deg}75%{rotate:-15deg}}.bf-tail{transform-box:view-box;transform-origin:98px 100px;animation:bf-flick 6s ease-in-out 5.6s infinite both}@keyframes bf-flick{0%,88%,to{rotate:0deg}92%{rotate:-11deg}96%{rotate:6deg}}.bf-react{transform-box:view-box;transform-origin:170px 150px}.buffalo:hover .bf-react{animation:bf-perk 1.1s var(--ease-out, cubic-bezier(.2, .7, .3, 1))}.buffalo.is-booped .bf-react{animation:bf-boop .42s cubic-bezier(.3,1.5,.5,1)}@keyframes bf-perk{0%{rotate:0deg;translate:0 0}30%{rotate:-1.6deg;translate:0 -3px}60%{rotate:.6deg;translate:0 0}to{rotate:0deg;translate:0 0}}@keyframes bf-boop{0%{scale:1 1;translate:0 0}35%{scale:1.04 .93;translate:0 4px}70%{scale:.98 1.05;translate:0 -6px}to{scale:1 1;translate:0 0}}@media(prefers-reduced-motion:reduce){.bf-line,.bf-leg path,.bf-tail path,.bf-shag path,.bf-ground{animation:none;stroke-dashoffset:0}.bf-body,.bf-leg,.bf-tail,.bf-react{animation:none}.buffalo{cursor:default}}.page{max-width:46rem;margin-inline:0;padding-inline:var(--gutter)}.intro{padding-block:clamp(1.5rem,4vw,2.5rem) clamp(2rem,5vw,3rem)}.intro__blurb{font-size:var(--step-0);line-height:1.65;color:var(--ink);max-width:38rem;text-wrap:pretty}.intro__blurb+.intro__blurb{margin-top:1.25rem}.intro__blurb--aside{color:var(--ink-2)}.rich{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--rule);padding-bottom:.08em;transition:color .18s ease,border-color .18s ease}.rich:hover,.rich:focus-visible{color:var(--accent);border-bottom-color:var(--accent)}.intro__role{font-family:var(--font-label);font-style:italic;font-size:var(--step-0);color:var(--muted);margin:1.75rem 0 0}.intro__asides{display:flex;flex-wrap:wrap;gap:.4rem .9rem;font-family:var(--font-body);font-size:var(--step--2);font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:.8rem 0 0}.intro__asides span+span:before{content:"·";margin-right:.9rem;color:var(--rule)}.intro__links{font-family:var(--font-mono);font-size:var(--step--1);margin:.9rem 0 0}.intro__links a{color:var(--muted);text-decoration:none;border-bottom:1px solid var(--rule);padding-bottom:.1rem;transition:color .18s ease,border-color .18s ease}.intro__links a:hover,.intro__links a:focus-visible{color:var(--accent);border-bottom-color:var(--accent)}.index{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule)}.index li{border-bottom:1px solid var(--rule)}.index a,.index__row{display:flex;align-items:baseline;justify-content:space-between;gap:1.5rem;padding:.85rem 0;text-decoration:none;color:inherit;transition:padding-left .18s ease,color .18s ease}.index a:hover,.index a:focus-visible{padding-left:.75rem;color:var(--accent)}.index li{transition:opacity .22s ease}.index:has(li:hover) li:not(:hover){opacity:.45}.index__name{font-family:var(--font-display);font-size:var(--step-1);letter-spacing:-.02em;line-height:1.2}.index__meta{font-family:var(--font-mono);font-size:var(--step--1);color:var(--muted);white-space:nowrap}.index a:hover .index__meta{color:var(--accent)}.index__row--soon{color:var(--muted);cursor:default}.corner{position:fixed;top:clamp(1.25rem,4vw,2.25rem);right:var(--gutter);z-index:50;display:flex;align-items:center;gap:clamp(.85rem,2vw,1.35rem)}.corner__link{font-family:var(--font-body);font-size:var(--step--2);font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color .18s ease}.corner__link:hover,.corner__link[aria-current=page]{color:var(--ink)}.theme-toggle{display:inline-grid;place-items:center;width:2rem;height:2rem;background:none;border:0;color:var(--muted);padding:0;cursor:pointer;transition:color .18s ease}.theme-toggle:hover{color:var(--ink)}.theme-toggle svg{width:1.05rem;height:1.05rem;display:block}.path{--aside-w: 15rem;--rail-w: 3.5rem;max-width:var(--page);margin-inline:0;padding-inline:var(--gutter);padding-bottom:clamp(3rem,8vw,6rem)}.path__kicker{display:flex;align-items:center;gap:.6rem;font-family:var(--font-body);font-size:var(--step--2);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 clamp(1.5rem,4vw,2.5rem)}.path__arrow{display:inline-block;animation:path-nudge 2.6s ease-in-out infinite}@keyframes path-nudge{0%,70%,to{translate:0 0}80%{translate:0 .28rem}}.path__eras{position:relative}.spine{position:absolute;top:0;bottom:0;left:calc(var(--aside-w) + var(--rail-w) / 2 - 6px);width:12px;pointer-events:none}.spine>svg,.spine__ink{position:absolute;inset:0;width:100%;height:100%}.spine svg{display:block}.spine path{fill:none;stroke:currentColor;stroke-linecap:round}.spine__track{color:var(--rule);stroke-width:2}.spine__ink{clip-path:inset(0 0 var(--undrawn, 100%) 0)}.spine__nib{color:var(--ink);stroke-width:2.4}.era{display:grid;grid-template-columns:var(--aside-w) var(--rail-w) minmax(0,1fr);align-items:start}.era+.era{margin-top:clamp(2.75rem,7vw,5rem)}.era__aside{grid-column:1;grid-row:1;position:sticky;top:clamp(4.5rem,24vh,11rem)}.era__label{scroll-margin-top:clamp(3rem,14vh,7rem);font-size:var(--head-era);letter-spacing:-.02em;text-wrap:balance}.era__note{font-family:var(--font-label);font-style:italic;font-size:var(--step--1);line-height:1.55;color:var(--muted);margin:.55rem 0 0;text-wrap:pretty}.era__rail{grid-column:2;grid-row:1;position:relative;align-self:stretch}.era__node{position:absolute;left:50%;top:.6rem;width:.6rem;height:.6rem;margin-left:-.3rem;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px var(--paper);scale:0;transition:scale .45s cubic-bezier(.3,1.4,.5,1)}.era[data-in] .era__node{scale:1}.era__stream{grid-column:3;grid-row:1}.beats{list-style:none;margin:0;padding:0}.beats li{display:grid;grid-template-columns:2.25rem 1fr;gap:1rem;align-items:baseline;padding:.4rem 0;color:var(--ink-2);max-width:34rem}.beats__n{font-family:var(--font-mono);font-size:.72rem;color:var(--muted)}.work{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(1.25rem,3vw,2.25rem);align-items:center;margin:clamp(2rem,5vw,3.25rem) 0}.work--flip .work__art{order:2}.work__art{display:block;border:1px solid var(--rule);background:var(--paper-2);overflow:hidden;text-decoration:none;transition:border-color .25s ease}.work__art img{width:100%;aspect-ratio:800 / 568;object-fit:cover;transition:scale .5s cubic-bezier(.2,.7,.3,1)}.work__art:hover{border-color:var(--accent)}.work__art:hover img{scale:1.03}.work__plate{display:grid;place-content:center;gap:.6rem;aspect-ratio:800 / 568;padding:1.5rem;text-align:center}.work__plateName{font-family:var(--font-display);font-size:var(--step-2);letter-spacing:-.03em;line-height:1.05;color:var(--ink-2)}.work__plateType{font-family:var(--font-mono);font-size:var(--step--1);color:var(--muted)}.work__art--inert{cursor:default}.work__art--inert:hover{border-color:var(--rule)}.work__name{font-size:var(--head-work);letter-spacing:-.02em}.work__name a{text-decoration:none;transition:color .18s ease}.work__name a:hover{color:var(--accent)}.work__tagline{color:var(--ink-2);margin:.65rem 0 0;max-width:32ch;text-wrap:pretty}.work__roles{font-family:var(--font-mono);font-size:var(--step--1);color:var(--muted);margin:.85rem 0 0}.work__cta{font-family:var(--font-mono);font-size:var(--step--1);margin:1rem 0 0}.work__cta a{text-decoration:none;border-bottom:1px solid var(--rule);padding-bottom:.15rem;transition:color .18s ease,border-color .18s ease}.work__cta a:hover{color:var(--accent);border-bottom-color:var(--accent)}.work__soon{color:var(--muted)}:root[data-js] .work .work__art,:root[data-js] .work .work__body{opacity:0;transition:opacity .55s ease,translate .7s cubic-bezier(.2,.7,.3,1)}:root[data-js] .work .work__art{translate:2.5rem 0}:root[data-js] .work--flip .work__art{translate:-2.5rem 0}:root[data-js] .work .work__body{translate:0 1rem}:root[data-js] .work.is-in .work__art,:root[data-js] .work.is-in .work__body{opacity:1;translate:0 0}:root[data-js] .work.is-in .work__body{transition-delay:.1s}@media(prefers-reduced-motion:reduce){:root[data-js] .work .work__art,:root[data-js] .work .work__body{opacity:1;translate:0 0;transition:none}.era__node{scale:1;transition:none}.path__arrow{animation:none}}@media(max-width:62rem){.path{--aside-w: 0rem;--rail-w: 2.25rem}.era{grid-template-columns:var(--rail-w) minmax(0,1fr)}.era__aside{grid-column:2;grid-row:1;position:static;margin-bottom:1.1rem}.era__rail{grid-column:1;grid-row:1 / 3}.era__stream{grid-column:2;grid-row:2}.era__note{max-width:44ch}}@media(max-width:46rem){.work{grid-template-columns:minmax(0,1fr)}.work--flip .work__art{order:0}.work__tagline{max-width:none}:root[data-js] .work .work__art,:root[data-js] .work--flip .work__art{translate:0 1.25rem}}.kicker{font-family:var(--font-body);font-size:var(--step--2);font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 1.1rem}.slab{padding-block:clamp(2.25rem,6vw,4rem)}.does{margin:0;padding:0;border-top:1px solid var(--rule)}.does__item{display:grid;grid-template-columns:minmax(0,12rem) minmax(0,1fr);gap:.3rem 2rem;align-items:baseline;padding:.9rem 0;border-bottom:1px solid var(--rule)}.does__title{font-family:var(--font-display);font-size:var(--step-1);letter-spacing:-.02em;line-height:1.15}.does__body{margin:0;color:var(--ink-2);text-wrap:pretty}.manifesto{margin:0 0 1.4rem;font-family:var(--font-display);font-size:var(--head-work);line-height:1.22;letter-spacing:-.02em;color:var(--ink)}.ul{position:relative;display:inline-block;max-width:21ch}.hand-ul{position:absolute;left:-1.5%;bottom:-.26em;width:103%;height:.38em;overflow:visible;pointer-events:none}.hand-ul path{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round}.creed__lede{max-width:42rem;margin:0 0 1.6rem;color:var(--ink);text-wrap:pretty}.creed{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule)}.creed li{display:grid;grid-template-columns:2.25rem 1fr;gap:1rem;align-items:baseline;padding:.8rem 0;border-bottom:1px solid var(--rule);color:var(--ink-2);text-wrap:pretty}.creed__n{font-family:var(--font-mono);font-size:.72rem;color:var(--muted)}.pull{margin:clamp(2rem,5vw,3rem) 0 0;padding-left:clamp(1rem,3vw,1.75rem);border-left:2px solid var(--accent)}.pull p{font-family:var(--font-display);font-size:var(--head-era);line-height:1.32;letter-spacing:-.02em;color:var(--ink);margin:0;text-wrap:pretty}@media(max-width:40rem){.does__item{grid-template-columns:minmax(0,1fr)}}
