*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--ink:#07090D;--panel:#0B0F15;--deep:#05070A;--bone:#ECE9E3;--prose:#DAD6CE;--dim:#9AA3AD;--grey:#8A94A0;--faint:#79838F;--brass:#C8A96E;--brass-lit:#E4CA95;--line:rgba(236,233,227,.09);--line-2:rgba(236,233,227,.16)}
html{scroll-behavior:smooth}
body{background:var(--ink);color:var(--bone);font-family:Archivo,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:var(--brass);text-decoration:none;transition:color .25s}
a:hover{color:var(--brass-lit)}
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--brass);outline-offset:3px}
::selection{background:rgba(200,169,110,.28);color:#FFF7E6}
img{display:block;max-width:100%}
.grain{position:fixed;inset:0;z-index:90;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.mono{font-family:'IBM Plex Mono',ui-monospace,monospace}
.eyebrow{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--brass)}
.wrap{max-width:1200px;margin:0 auto}
.narrow{max-width:640px;margin:0 auto}
nav{position:fixed;top:0;left:0;right:0;z-index:80;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:16px 40px;background:rgba(7,9,13,.88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.brandmark{font-weight:600;font-size:13px;letter-spacing:.26em;color:var(--bone)}
.navlinks{display:flex;align-items:center;gap:28px;flex-wrap:wrap;list-style:none}
.navlinks a{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--grey)}
.navlinks a:hover{color:var(--bone)}
.navlinks .cta{color:var(--brass);border:1px solid rgba(200,169,110,.45);padding:9px 16px}
.navlinks .cta:hover{background:rgba(200,169,110,.1);border-color:var(--brass)}
.btn{display:inline-block;font-weight:500;font-size:13px;letter-spacing:.1em;text-transform:uppercase;padding:16px 30px;border:1px solid transparent;cursor:pointer;transition:background .25s,border-color .25s}
.btn-fill{background:var(--brass);color:var(--ink);border-color:var(--brass)}
.btn-fill:hover{background:var(--brass-lit);border-color:var(--brass-lit);color:var(--ink)}
.btn-line{color:var(--bone);border-color:rgba(236,233,227,.22)}
.btn-line:hover{border-color:rgba(236,233,227,.55);color:var(--bone)}
#hero{padding:168px 40px 104px;background:radial-gradient(900px 520px at 12% 0%,rgba(200,169,110,.055),transparent 70%),var(--ink);border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:72px;align-items:center}
h1.title{font-weight:700;font-size:clamp(46px,7vw,92px);line-height:.96;letter-spacing:-.035em;margin:26px 0 30px;text-wrap:balance}
.deck{font-family:Newsreader,Georgia,serif;font-weight:300;font-size:clamp(20px,2.1vw,25px);line-height:1.6;color:#B9C0C8;margin-bottom:40px;max-width:30em;text-wrap:pretty}
.actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:44px}
.facts{display:flex;flex-wrap:wrap;gap:12px 32px;padding-top:26px;border-top:1px solid var(--line)}
.facts p{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint)}
.facts span{color:#B9C0C8}
.cover{justify-self:center;width:100%;max-width:380px}
.titlecard{width:100%;aspect-ratio:2/3;background:radial-gradient(120% 80% at 50% 8%,rgba(200,169,110,.1),transparent 62%),var(--panel);border:1px solid rgba(236,233,227,.14);box-shadow:0 40px 80px rgba(0,0,0,.6);display:flex;flex-direction:column;justify-content:space-between;padding:48px 40px}
.titlecard .tc-top{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--brass)}
.titlecard .tc-title{font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-size:58px;line-height:1.02;letter-spacing:-.01em;color:var(--bone);margin-bottom:20px}
.titlecard .tc-rule{display:block;width:54px;height:1px;background:var(--brass)}
.titlecard .tc-series{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--faint);margin-bottom:8px}
.titlecard .tc-author{font-family:Archivo,sans-serif;font-weight:600;font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--bone)}
.cover img{aspect-ratio:2/3;object-fit:cover;box-shadow:0 40px 80px rgba(0,0,0,.65);border:1px solid rgba(236,233,227,.1)}
#statement{padding:clamp(90px,12vw,160px) 40px;background:var(--panel);border-bottom:1px solid var(--line)}
#statement p{font-family:Newsreader,Georgia,serif;font-weight:200;font-size:clamp(30px,5.4vw,66px);line-height:1.18;letter-spacing:-.015em;max-width:1000px;margin:0 auto;text-wrap:balance}
#statement em{font-style:normal;color:var(--brass)}
.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:56px}
.split .side{max-width:240px}
.split .main{grid-column:span 2;min-width:0}
.wordmark{font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-size:46px;line-height:1;letter-spacing:-.01em;color:var(--bone);margin:22px 0 16px}
.wm-rule{display:block;width:46px;height:1px;background:var(--brass)}
.side p.note{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:12px;line-height:1.9;color:var(--grey);margin:18px 0 26px}
.inline-link{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid rgba(200,169,110,.4);padding-bottom:4px}
#excerpt,#about{padding:clamp(80px,10vw,130px) 40px;background:var(--ink);border-bottom:1px solid var(--line)}
#world{padding:clamp(80px,10vw,130px) 40px;background:var(--panel);border-bottom:1px solid var(--line)}
blockquote{max-width:34em}
.prose{font-family:Newsreader,Georgia,serif;font-weight:300;font-size:clamp(19px,1.9vw,22px);line-height:1.85;color:var(--prose);margin-bottom:1.35em;text-wrap:pretty}
.prose:last-child{margin-bottom:0}
.bio{font-family:Newsreader,Georgia,serif;font-weight:300;font-size:clamp(19px,1.9vw,23px);line-height:1.8;color:var(--prose);margin-bottom:1.3em;max-width:34em;text-wrap:pretty}
.bio:last-child{margin-bottom:0}
.bio em{font-style:italic;color:var(--bone)}
.sys{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:13px;line-height:1.9;letter-spacing:.06em;color:var(--brass);padding:18px 22px;border-left:2px solid rgba(200,169,110,.5);background:rgba(200,169,110,.045);margin-bottom:1.9em}
.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-top:56px}
.grid-3 article{background:var(--panel);padding:40px 34px}
.grid-3 .idx{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.16em;color:var(--faint);margin-bottom:20px}
.grid-3 h3{font-weight:600;font-size:20px;color:var(--bone);margin-bottom:14px}
.grid-3 p.d{font-family:Newsreader,Georgia,serif;font-weight:300;font-size:18px;line-height:1.7;color:var(--dim);text-wrap:pretty}
.draftnote{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.1em;color:var(--faint);margin-top:22px}
#newsletter{padding:clamp(80px,10vw,130px) 40px;background:var(--panel)}
.nl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:56px;align-items:start}
h2.big{font-weight:700;font-size:clamp(30px,4vw,46px);line-height:1.05;letter-spacing:-.025em;margin:22px 0 20px;text-wrap:balance}
.nl-sub{font-family:Newsreader,Georgia,serif;font-weight:300;font-size:20px;line-height:1.7;color:var(--dim);max-width:28em;text-wrap:pretty}
form{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}
input[type=email]{flex:1 1 220px;min-width:0;background:var(--ink);border:1px solid var(--line-2);color:var(--bone);font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:14px;padding:16px 18px;outline:none;transition:border-color .25s}
input[type=email]::placeholder{color:var(--grey)}
input[type=email]:hover{border-color:rgba(236,233,227,.34)}
input[type=email]:focus{border-color:var(--brass)}
.fine{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:11px;line-height:1.8;letter-spacing:.04em;color:var(--grey)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
footer{padding:28px 40px;background:var(--deep);border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}
footer p,footer a{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.1em;color:var(--grey)}
footer a{text-transform:uppercase;letter-spacing:.12em}
footer a:hover{color:var(--bone)}
.footlinks{display:flex;gap:26px;flex-wrap:wrap}
#progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:85;background:rgba(236,233,227,.07)}
#progress i{display:block;height:100%;width:0;background:var(--brass)}
.chapnav{top:2px}
.chap-head{padding:180px 40px 0}
h1.chap{font-weight:700;font-size:clamp(44px,7vw,78px);line-height:.98;letter-spacing:-.035em;margin:26px 0 28px}
.chap-meta{display:flex;flex-wrap:wrap;gap:10px 28px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.chap-meta p{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint)}
.chap-meta span{color:#B9C0C8}
article.chapter{padding:60px 40px 0}
article.chapter p{font-family:Newsreader,Georgia,serif;font-weight:300;font-size:clamp(19px,1.55vw,21px);line-height:1.85;color:var(--prose);margin-bottom:1.3em;text-wrap:pretty}
article.chapter p.opener{font-weight:400;font-size:clamp(23px,2vw,27px);line-height:1.55;color:var(--bone);margin-bottom:1.15em}
article.chapter p.dropcap::first-letter{float:left;font-family:Archivo,sans-serif;font-weight:700;font-size:74px;line-height:.76;margin:7px 14px 0 0;color:var(--brass)}
article.chapter p.sys{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:13px;line-height:1.9;color:var(--brass)}
.scenebreak{display:flex;align-items:center;justify-content:center;gap:14px;margin:68px 0}
.scenebreak i{width:4px;height:4px;background:rgba(200,169,110,.75);transform:rotate(45deg)}
p.endmark{font-family:'IBM Plex Mono',ui-monospace,monospace!important;font-size:11px!important;letter-spacing:.22em;text-transform:uppercase;color:var(--faint)!important;margin:64px 0 0!important;padding-top:30px;border-top:1px solid var(--line)}
#chapter-cta{padding:clamp(80px,10vw,120px) 40px clamp(70px,8vw,90px)}
@media(max-width:420px){.titlecard{padding:36px 30px}.titlecard .tc-title{font-size:46px}}
@media(max-width:640px){nav{padding:14px 20px}#hero{padding:150px 20px 80px}#statement,#excerpt,#world,#about,#newsletter,.chap-head,article.chapter,#chapter-cta{padding-left:20px;padding-right:20px}.hero-grid,.split,.nl-grid{gap:44px}.split .main{grid-column:auto}footer{padding:22px 20px}.chap-head{padding-top:150px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition-duration:.01ms!important}}