:root{--paper:#f4f0e6;--paper-2:#fbf8f0;--ink:#1b1714;--ink-soft:#4a433c;--red:#a8341f;--red-dk:#8e2a18;--line:#d2c9b6;--rule:#1b1714;--measure:34rem;--pad:34px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Newsreader,Georgia,serif;font-size:19px;font-weight:400;line-height:1.7;overflow-x:hidden}::selection{background:var(--red);color:var(--paper)}a{color:inherit;text-decoration:none}ul{list-style:none}.mono{font-family:JetBrains Mono,ui-monospace,monospace}.label{letter-spacing:.2em;text-transform:uppercase;color:var(--red-dk);font-family:JetBrains Mono,monospace;font-size:.72rem;font-weight:500}.wrap{max-width:920px;padding:0 var(--pad);margin:0 auto}.col{max-width:var(--measure)}.skip-link{background:var(--ink);color:var(--paper);z-index:999;padding:12px 18px;position:fixed;top:-100%;left:0}.skip-link:focus{top:0}:focus-visible{outline:3px solid var(--red);outline-offset:3px}.spine{z-index:50;pointer-events:none;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:16px}.spine span{writing-mode:vertical-rl;letter-spacing:.34em;text-transform:uppercase;color:var(--ink-soft);font-family:JetBrains Mono,monospace;font-size:.66rem;transform:rotate(180deg)}.forhire{top:22px;right:var(--pad);z-index:60;letter-spacing:.14em;text-transform:uppercase;color:var(--paper);background:var(--red);border-radius:2px;padding:9px 16px;font-family:JetBrains Mono,monospace;font-size:.72rem;font-weight:600;transition:background .18s,transform .18s;position:fixed}.forhire:hover{background:var(--red-dk);transform:translateY(-1px)}.title-page{text-align:center;min-height:100vh;padding:96px var(--pad) 72px;flex-direction:column;justify-content:center;align-items:center;display:flex}.tp-pre{margin-bottom:30px}.tp-name{letter-spacing:-.02em;margin-bottom:6px;font-size:clamp(2.8rem,9vw,6.4rem);font-weight:500;line-height:.98}.tp-name .amp{color:var(--red);font-style:italic}.tp-role{color:var(--ink-soft);margin-bottom:30px;font-size:clamp(1.1rem,2.4vw,1.55rem);font-style:italic}.frontis{width:clamp(240px,40vw,430px);margin:0 auto}.frontis img{aspect-ratio:4/3;object-fit:cover;object-position:center 18%;background:var(--paper-2);border:1px solid var(--rule);filter:grayscale(.92)sepia(.14)contrast(1.05)brightness(1.02);width:100%;padding:9px;display:block}.frontis-cap{text-align:center;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-soft);margin-top:11px;font-family:JetBrains Mono,monospace;font-size:.64rem}.tp-line{max-width:30rem;color:var(--ink-soft);margin:30px auto 0;font-style:italic}.tp-cue{margin-top:50px}.tp-cue .mono{letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);font-size:.7rem}.tp-cue em{font-style:normal;animation:1.7s ease-in-out infinite bob;display:inline-block}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}.chapter{border-top:1px solid var(--line);padding:clamp(70px,11vw,150px) 0}.chapter-head{margin-bottom:44px}.chapter-head h2{letter-spacing:-.01em;margin-top:10px;font-size:clamp(2rem,4.6vw,3.2rem);font-weight:500}.frontmatter p{margin-bottom:1.2em;font-size:1.22rem;line-height:1.75}.frontmatter .col>p:first-of-type:first-letter{float:left;color:var(--red);padding:.06em .12em 0 0;font-size:4.6rem;font-weight:600;line-height:.72}.frontmatter em{font-style:italic}.toc{flex-direction:column;display:flex}.toc a{border-bottom:1px solid var(--line);grid-template-columns:2.2rem 1fr auto;align-items:baseline;gap:14px;padding:16px 0;transition:color .15s;display:grid}.toc a:hover{color:var(--red)}.toc .num{color:var(--red-dk);font-family:JetBrains Mono,monospace;font-size:.82rem}.toc .ti{font-size:1.35rem;font-weight:500}.toc .ti i{color:var(--ink-soft);margin-left:10px;font-size:.92rem;font-style:italic;font-weight:400}.toc .pg{color:var(--ink-soft);font-family:JetBrains Mono,monospace;font-size:.8rem}.work{border-bottom:1px solid var(--line);grid-template-columns:3rem 1fr;gap:0 22px;padding:40px 0;display:grid}.work:last-child{border-bottom:none}.work .w-num{color:var(--red);padding-top:8px;font-family:JetBrains Mono,monospace;font-size:.9rem}.work .w-format{margin-bottom:6px}.work h3{margin-bottom:12px;font-size:clamp(1.6rem,3.2vw,2.3rem);font-weight:500;line-height:1.05}.work h3 em{font-style:italic}.work p{color:var(--ink-soft);max-width:var(--measure);margin-bottom:16px}.work .w-read{letter-spacing:.12em;text-transform:uppercase;color:var(--ink);border-bottom:2px solid var(--red);padding-bottom:3px;font-family:JetBrains Mono,monospace;font-size:.74rem;font-weight:600;transition:color .15s}.work .w-read:hover{color:var(--red)}.range{background:var(--ink);color:var(--paper);padding:clamp(80px,13vw,170px) 0}.range .label{color:#e0a89b}.range-type{letter-spacing:-.01em;max-width:16ch;margin-top:24px;font-size:clamp(2.2rem,6vw,4.6rem);font-weight:400;line-height:1.12}.range-type b{font-weight:600}.range-type em{color:#e8b4a6;font-style:italic}.range-type .q{color:#9a8f84}.colophon{border-top:3px double var(--rule);text-align:center;padding:clamp(80px,12vw,160px) 0 100px}.colophon .label{margin-bottom:18px;display:block}.colophon h2{margin-bottom:14px;font-size:clamp(2.4rem,6vw,4.4rem);font-weight:500}.colophon h2 em{color:var(--red);font-style:italic}.colophon .avail{color:var(--ink-soft);max-width:34rem;margin:0 auto 44px;font-style:italic}.contact-lines{flex-direction:column;align-items:center;gap:14px;display:flex}.contact-lines a{border-bottom:2px solid var(--red);padding-bottom:4px;font-size:clamp(1.5rem,3.6vw,2.4rem);font-weight:500;transition:color .15s}.contact-lines a:hover{color:var(--red)}.contact-meta{margin-top:46px}.contact-meta .mono{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);font-size:.72rem}.rise{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(20px)}.rise.in{opacity:1;transform:none}@media (width<=720px){.spine{display:none}.work{grid-template-columns:1fr;gap:4px}.work .w-num{padding-top:0}.toc a{grid-template-columns:1.8rem 1fr auto}.toc .ti i{margin-top:2px;margin-left:0;display:block}}@media (width<=480px){:root{--pad:22px}body{font-size:18px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.rise{opacity:1!important;transform:none!important}}
