:root{color-scheme:light dark;--paper:#F6F2E9;--ink:#2E3833;--muted:#666E63;--rust:#8A472E;--line:#d9d8cc;--panel:#eeeadf}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:Georgia,'Times New Roman',serif;font-size:18px;line-height:1.65}body{margin:0}a{color:var(--rust);text-decoration-thickness:1px;text-underline-offset:4px}a:hover{text-decoration-thickness:2px}a:focus-visible{outline:2px solid var(--rust);outline-offset:6px;border-radius:2px}.book{max-width:688px;padding:0 24px;margin:auto}.skip{position:absolute;top:-100px;left:16px;padding:10px 16px;background:var(--paper);z-index:2}.skip:focus{top:12px}.site-header{padding:28px 0 24px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{font-size:16px;font-weight:bold;color:var(--ink);text-decoration:none;white-space:nowrap}nav{display:flex;gap:22px;flex-wrap:wrap}nav a{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;letter-spacing:.07em;text-transform:uppercase;min-height:44px;display:inline-flex;align-items:center;color:var(--muted);text-decoration:none}nav a[aria-current=page]{color:var(--rust);text-decoration:underline;text-underline-offset:6px}h1,h2,h3,p{margin:0}p+p{margin-top:1.15em}h1{font-size:clamp(42px,8vw,62px);line-height:1.08;letter-spacing:-.045em;font-weight:normal}h2{font-size:27px;line-height:1.25;font-weight:normal;letter-spacing:-.02em}h3{font-size:22px;line-height:1.4;font-weight:normal}p{text-wrap:pretty}.hero{padding:60px 0 42px;text-align:center}.app-icon{border-radius:26px;display:block;margin:0 auto 30px;width:120px;height:120px}.eyebrow{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;line-height:1.6;letter-spacing:.2em;text-transform:uppercase;color:var(--rust);margin-bottom:18px}.title-rule{width:45px;height:2px;background:var(--rust);margin:26px 0}.hero .title-rule{margin:26px auto}.subtitle{font-size:24px;font-style:italic;color:var(--muted);line-height:1.5}.introduction{font-size:20px;line-height:1.75}.introduction p:first-child{font-size:25px;line-height:1.6}.chapters{margin-top:54px;border-top:1px solid var(--line)}.chapter{padding:30px 0;display:grid;grid-template-columns:42px 1fr;gap:12px;border-bottom:1px solid var(--line)}.chapter-number{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;letter-spacing:.12em;color:var(--rust);padding-top:7px}.chapter p{margin-top:12px}.availability{margin:48px 0 40px;text-align:center;padding:34px 24px;background:var(--panel)}.availability h2{font-size:34px}.availability p:not(.eyebrow){margin-top:16px}.coming-soon{color:var(--rust);font-style:italic}.preview{margin:0 auto 38px;text-align:center}.preview img{display:block;width:280px;max-width:100%;height:auto;margin:auto;border:1px solid var(--line);border-radius:24px}.preview figcaption{font-size:15px;font-style:italic;color:var(--muted);margin-top:15px}.small-print{color:var(--muted);font-size:15px;line-height:1.65}.page-heading{padding:64px 0 30px}.page-heading .title-rule{margin-bottom:0}.effective{color:var(--muted);font-size:16px;margin-top:25px}.contact{font-size:21px}.contact a{overflow-wrap:anywhere}.faq-list{margin-top:48px}.faq-list>h2{font-size:16px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.03em;margin-bottom:28px}.faq{padding:25px 0;border-top:1px solid var(--line)}.faq p{margin-top:10px}.policy p+p{margin-top:26px}.policy a{overflow-wrap:anywhere}footer{border-top:1px solid var(--line);margin-top:64px;padding:30px 0 38px}.footer-title{font-style:italic;font-size:19px}footer nav{margin-top:10px}.copyright{font-size:13px;color:var(--muted);margin-top:12px}@media(prefers-color-scheme:dark){:root{--paper:#1A1B1A;--ink:#E6DECC;--muted:#A3A696;--rust:#D19E73;--line:#41453e;--panel:#252723}}@media(max-width:440px){.book{padding:0 22px}.site-header{flex-direction:column;gap:3px;padding:19px 0 10px}.site-header nav{gap:28px}.hero{padding-top:40px}h1{font-size:43px}.introduction{font-size:18px}.introduction p:first-child{font-size:23px}.chapter{grid-template-columns:26px 1fr;gap:10px}.chapter h2{font-size:25px}.availability{padding:28px 18px}.page-heading{padding-top:42px}.contact{font-size:19px}.faq-list>h2{font-size:14px}}
