@layer reset{*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}img,svg,picture{max-width:100%;height:auto;display:block}input,button{font:inherit}}@layer base{:root{--red:#d43f4e;--red-hover:#bd2f3e;--cover-red:#e9221c;--link:#c8160f;--ink:#151515;--text:#222;--muted:#5c5c5c;--line:#e4e2dc;--bg:#fdfdfd;--surface:#fff;--paper:#fffff8;--tint:#f6f5f1;--code-bg:#f7f7f5;--highlight:#fff27a;--font-sans:"Helvetica Neue", Helvetica, "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--step--1:clamp(.84rem, .82rem + .1vw, .9rem);--step-0:clamp(1.03rem, .99rem + .2vw, 1.15rem);--step-1:clamp(1.2rem, 1.12rem + .4vw, 1.44rem);--step-2:clamp(1.42rem, 1.27rem + .7vw, 1.85rem);--step-3:clamp(1.7rem, 1.42rem + 1.25vw, 2.45rem);--step-4:clamp(2.05rem, 1.55rem + 2.2vw, 3.3rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-section:clamp(3.5rem, 2.5rem + 4vw, 6.5rem);--gutter:clamp(1.15rem, .6rem + 2.5vw, 2.5rem);--gap:clamp(1rem, .7rem + 1.2vw, 1.75rem);--wide:70rem;--measure:43rem;--radius:6px;--radius-lg:10px;--shadow-sm:0 1px 2px #0000000f, 0 1px 1px #0000000a;--shadow:0 1px 2px #0000000f, 0 8px 24px -8px #00000024;--shadow-cover:0 2px 4px #0000001f, 0 22px 44px -18px #00000073;--header-h:3.5rem;color-scheme:light}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + var(--space-4))}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--step-0);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;line-height:1.65}h1,h2,h3,h4{color:var(--ink);letter-spacing:-.012em;text-wrap:balance;font-weight:400;line-height:1.15}h1{font-size:var(--step-4);letter-spacing:-.02em}h2{font-size:var(--step-3)}h3{font-size:var(--step-1);letter-spacing:0;font-weight:600}p,li{text-wrap:pretty}strong,b{color:var(--ink);font-weight:700}a{color:var(--link);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{color:var(--red-hover);text-decoration-thickness:2px}:focus-visible{outline:3px solid color-mix(in srgb, var(--red) 55%, transparent);outline-offset:2px;border-radius:3px}mark{background:var(--highlight);color:inherit;padding:0 .15em}code,kbd,pre{font-family:var(--font-mono);font-size:.86em}:not(pre)>code{background:var(--code-bg);border:1px solid var(--line);overflow-wrap:anywhere;border-radius:4px;padding:.05em .3em}pre{padding:var(--space-4) var(--space-5);border:1px solid var(--line);border-radius:var(--radius);white-space:pre;word-break:normal;overflow-wrap:normal;tab-size:4;margin:0;font-size:clamp(.78rem,.74rem + .15vw,.86rem);line-height:1.6;overflow-x:auto;background:var(--code-bg)!important}pre code{font-size:inherit}hr{border:0;border-top:1px solid var(--line);margin:var(--space-6) 0}::selection{background:color-mix(in srgb, var(--cover-red) 22%, transparent)}}@layer layout{.wrap{width:min(100% - 2 * var(--gutter), var(--wide));margin-inline:auto}.wrap--prose{width:min(100% - 2 * var(--gutter), var(--measure))}.section{padding-block:var(--space-section)}.section+.section{border-top:1px solid var(--line)}.section--tint{background:var(--tint);border-block:1px solid var(--line)}.section--tint+.section,.section+.section--tint{border-top:0}.section-head{gap:var(--space-3);margin-bottom:var(--space-7);max-width:var(--measure);display:grid}.section-head--center{text-align:center;justify-items:center;margin-inline:auto}.section-head p:not(.eyebrow){color:var(--muted);font-size:var(--step-1);line-height:1.5}.eyebrow{color:var(--cover-red);font-size:var(--step--1);letter-spacing:.12em;text-transform:uppercase;font-weight:700}.split{gap:var(--space-7) var(--gap);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}@media (width>=52rem){.split{gap:var(--space-7) clamp(2rem, 5vw, 4.5rem);grid-template-columns:minmax(0,1fr) minmax(15rem,20rem)}.split--media-first{grid-template-columns:minmax(15rem,20rem) minmax(0,1fr)}}.cards{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));display:grid}}@layer components{.skip-link{left:var(--space-4);z-index:100;background:var(--ink);color:#fff;padding:var(--space-2) var(--space-4);border-radius:var(--radius);position:absolute;top:-10rem}.skip-link:focus{top:var(--space-2)}.site-header{z-index:50;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:saturate(1.6)blur(10px);border-bottom:1px solid var(--line);position:sticky;top:0}.site-header .wrap{justify-content:space-between;align-items:stretch;gap:var(--space-4);height:var(--header-h);display:flex}.book-switch{gap:clamp(.75rem,.4rem + 1.5vw,1.5rem);min-width:0;display:flex}.book-switch a{color:var(--muted);font-size:var(--step--1);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;gap:.55rem;padding-top:2px;text-decoration:none;display:flex}.book-switch a:hover{color:var(--ink)}.book-switch a[aria-current]{color:var(--ink);border-bottom-color:var(--cover-red)}.book-switch img{outline-offset:-1px;border-radius:1px 2px 2px 1px;outline:1px solid #00000047;width:22px;box-shadow:0 1px 3px #00000040}.book-switch__long{display:none}@media (width>=62rem){.book-switch__long{display:inline}.book-switch__short{display:none}}.site-header__sections{align-items:center;gap:var(--space-5);font-size:var(--step--1);display:flex}.site-header__sections a:not(.button){color:var(--muted);text-decoration:none;display:none}.site-header__sections a:not(.button):hover{color:var(--ink)}@media (width>=52rem){.site-header__sections a:not(.button){display:inline}}@media (width<=26rem){.site-header__wide{display:none}}.button{--button-bg:var(--red);border-radius:var(--radius);background:var(--button-bg);color:#fff;text-align:center;cursor:pointer;border:1px solid #0000;padding:.8em 1.2em;font-weight:600;line-height:1.2;text-decoration:none;transition:background-color .15s,box-shadow .15s,transform .15s;display:inline-block}.button:hover{--button-bg:var(--red-hover);color:#fff;box-shadow:var(--shadow-sm);text-decoration:none}.button:active{transform:translateY(1px)}.button--ghost{--button-bg:transparent;color:var(--ink);border-color:color-mix(in srgb, var(--ink) 25%, transparent)}.button--ghost:hover{--button-bg:var(--surface);color:var(--ink);border-color:var(--ink)}.button--small{font-size:var(--step--1);white-space:nowrap;padding:.6em .95em}.button--block{width:100%}.button .price{opacity:.9;margin-left:.5em;font-weight:400}.button-row{gap:var(--space-3);flex-wrap:wrap;display:flex}.hero{padding-block:clamp(2.5rem, 1.5rem + 4vw, 5.5rem) var(--space-section)}.hero__grid{gap:var(--space-6) clamp(2rem, 6vw, 5rem);grid-template-columns:minmax(0,1fr);align-items:center;display:grid}.hero__cover{justify-self:center;width:min(40vw,11rem)}@media (width>=52rem){.hero__grid{grid-template-columns:minmax(0,1fr) minmax(16rem,22rem)}.hero__cover{grid-area:1/2;width:100%}}.hero__text{gap:var(--space-5);display:grid}.hero__text h1{margin-bottom:var(--space-1)}.hero__lead{gap:var(--space-4);font-size:var(--step-1);color:var(--ink);line-height:1.5;display:grid}.hero__meta{color:var(--muted);font-size:var(--step--1);line-height:1.6}.hero__meta p+p{margin-top:var(--space-1)}.cover{box-shadow:var(--shadow-cover);border-radius:3px 5px 5px 3px}.cover--light{outline-offset:-1px;outline:1px solid #00000014}.spotlight{gap:var(--space-4);text-align:center;max-width:50rem;margin:var(--space-8) auto 0;justify-items:center;display:grid}.spotlight blockquote{font-size:var(--step-1);color:var(--ink);line-height:1.5}.spotlight blockquote:before{content:"“";color:var(--cover-red);margin-bottom:var(--space-2);font-size:3.5rem;line-height:.6;display:block}.prose>*+*{margin-top:var(--space-4)}.prose>*+:is(h2,h3){margin-top:var(--space-7)}.prose>:is(h2,h3)+*{margin-top:var(--space-3)}.prose>.eyebrow+:is(h2,h3){margin-top:var(--space-2)}.prose ul,.prose ol{padding-left:1.25em}.prose li+li{margin-top:var(--space-2)}.prose li::marker{color:var(--cover-red)}.prose pre{margin-block:var(--space-5)}.prose blockquote{border-left:3px solid var(--cover-red);padding-left:var(--space-5);color:var(--muted)}.checklist,.checklist-wrap>ul{gap:var(--space-3);list-style:none;display:grid;padding:0!important}.checklist li,.checklist-wrap>ul>li{padding-left:1.9em;position:relative;margin:0!important}.checklist li:before,.checklist-wrap>ul>li:before{content:"";background:var(--cover-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5'/%3E%3C/svg%3E") center / 72% no-repeat;border-radius:50%;width:1.1em;height:1.1em;position:absolute;top:.32em;left:0}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-5)}.series{gap:var(--gap);display:grid}@media (width>=48rem){.series{grid-template-columns:repeat(2,minmax(0,1fr))}}.series-book{gap:var(--space-5);padding:var(--space-5);grid-template-columns:clamp(5.5rem,22vw,8.5rem) minmax(0,1fr);align-items:start;display:grid;position:relative}.series-book[data-current]{border-color:color-mix(in srgb, var(--ink) 30%, transparent)}.series-book__body{gap:var(--space-2);align-content:start;display:grid}.series-book__num{color:var(--muted);font-size:var(--step--1);letter-spacing:.06em;text-transform:uppercase;font-weight:600}.series-book__num .here{white-space:nowrap;color:var(--cover-red);margin-left:.4em}.series-book h3 a{color:var(--ink);text-decoration:none}.series-book h3 a:after{content:"";position:absolute;inset:0}.series-book:hover h3 a{text-decoration:underline}.series-book p{color:var(--muted);font-size:var(--step--1);line-height:1.55}.series-book__link{font-size:var(--step--1);color:var(--link);font-weight:600}.series-bundle{justify-content:space-between;align-items:center;gap:var(--space-4) var(--space-6);margin-top:var(--gap);padding:var(--space-5) var(--space-6);background:var(--ink);color:#e2e2e2;border-radius:var(--radius-lg);flex-wrap:wrap;display:flex}.series-bundle strong{color:#fff}.series-bundle p{max-width:38rem}.pages{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.pages--single{grid-template-columns:minmax(0,1fr)}.page-thumb{box-shadow:var(--shadow);background:#fff;border-radius:3px;outline:1px solid #00000012;transition:transform .2s,box-shadow .2s;display:block}a:hover>.page-thumb,.page-thumb:hover{box-shadow:var(--shadow-cover);transform:translateY(-3px)}.sample-card{gap:var(--space-4);display:grid}.sample-card h3{font-size:var(--step-1)}.sample-card .button-row>*{flex:10rem}@media (width>=52rem){.sample-card{top:calc(var(--header-h) + var(--space-5));position:sticky}}.pullquotes{gap:var(--space-6);margin-top:var(--space-7);display:grid}@media (width>=52rem){.pullquotes{grid-template-columns:3fr 2fr;align-items:end}}.pullquote{border-left:3px solid var(--cover-red);padding-left:var(--space-5)}.pullquote p{font-size:var(--step-1);color:var(--ink);line-height:1.45}.pullquote footer{margin-top:var(--space-3);color:var(--muted);font-size:var(--step--1)}.lost-cover{max-width:15rem}.monkey-figure{justify-items:center;gap:var(--space-2);color:var(--muted);font-size:var(--step--1);display:grid}@media (width>=52rem){.monkey-figure{top:calc(var(--header-h) + var(--space-7));position:sticky}}.monkey-figure img{width:min(50vw,11rem)}.testimonials{columns:1;column-gap:var(--gap)}@media (width>=44rem){.testimonials{columns:2}}@media (width>=66rem){.testimonials{columns:3}}.testimonial{break-inside:avoid;gap:var(--space-4);margin-bottom:var(--gap);padding:var(--space-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:grid}.testimonial blockquote{gap:var(--space-3);color:var(--text);font-size:1rem;line-height:1.6;display:grid}.person{gap:var(--space-3);font-size:var(--step--1);grid-template-columns:auto minmax(0,1fr);align-items:center;font-style:normal;line-height:1.4;display:grid}.person__name{color:var(--ink);font-weight:700}.person__name a{color:var(--muted);margin-left:.25em;font-weight:400}.person__role{color:var(--muted)}.person__role a{color:inherit}.avatar{object-fit:cover;background:var(--tint);border-radius:50%;width:2.75rem;height:2.75rem}.avatar--initials{color:#fff;background:var(--ink);letter-spacing:.02em;place-items:center;font-size:.95rem;font-weight:700;display:grid}.more{margin-top:var(--space-2)}.more>summary{width:max-content;margin:0 auto var(--gap);cursor:pointer;list-style:none;display:flex}.more>summary::-webkit-details-marker{display:none}.more[open]>summary{display:none}.pricing{gap:var(--gap);align-items:stretch;display:grid}@media (width>=60rem){.pricing{grid-template-columns:repeat(3,minmax(0,1fr))}}.plan{gap:var(--space-4);padding:var(--space-6) var(--space-5) var(--space-5);grid-template-rows:auto auto 1fr auto;display:grid;position:relative}.plan--featured{border:2px solid var(--ink);box-shadow:var(--shadow)}.plan__badge{background:var(--highlight);color:var(--ink);font-size:var(--step--1);white-space:nowrap;border-radius:999px;padding:.15rem .7rem;font-weight:700;position:absolute;top:0;left:50%;transform:translate(-50%,-50%)}.plan__head{gap:var(--space-1);text-align:center;display:grid}.plan__head h3{font-size:var(--step-1)}.plan__price{color:var(--ink);font-size:var(--step-3);line-height:1.1}.plan__price small{color:var(--muted);font-size:var(--step--1)}.plan__covers{justify-content:center;gap:var(--space-3);height:9.5rem;display:flex}.plan__covers img{width:auto;height:100%}.plan ul{font-size:var(--step--1);align-content:start;gap:var(--space-2);line-height:1.55}.pricing-notes{gap:var(--space-4) var(--gap);margin-top:var(--space-6);color:var(--muted);font-size:var(--step--1);display:grid}@media (width>=52rem){.pricing-notes{grid-template-columns:repeat(3,minmax(0,1fr))}}.pricing-notes strong{color:var(--ink);display:block}.version-note{margin-top:var(--space-6);text-align:center;color:var(--muted);font-size:var(--step--1)}.faq{gap:var(--space-6) var(--space-7);display:grid}@media (width>=56rem){.faq{grid-template-columns:repeat(2,minmax(0,1fr))}}.faq h3{font-size:calc(var(--step-0) * 1.08);margin-bottom:var(--space-2);line-height:1.35}.faq p+p{margin-top:var(--space-3)}.author{gap:var(--space-5) var(--space-6);align-items:start;max-width:54rem;margin-inline:auto;display:grid}@media (width>=40rem){.author{grid-template-columns:9rem minmax(0,1fr)}}.author img{border-radius:var(--radius-lg);width:9rem;box-shadow:var(--shadow)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.site-footer{background:var(--ink);color:#a9a9a9;font-size:var(--step--1);padding-block:var(--space-7)}.site-footer a,.site-footer strong{color:#e6e6e6}.site-footer a:hover{color:#fff}.site-footer__grid{gap:var(--space-6);display:grid}@media (width>=48rem){.site-footer__grid{grid-template-columns:2fr 1fr 1fr}}.site-footer h2{color:#fff;font-size:var(--step-0);margin-bottom:var(--space-3);font-weight:600}.site-footer ul{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.site-footer__copy{margin-top:var(--space-7);padding-top:var(--space-5);border-top:1px solid #333}.dialog{width:min(100% - 2 * var(--gutter), 30rem);max-height:calc(100dvh - 2 * var(--gutter));border-radius:var(--radius-lg);color:var(--text);background:var(--surface);border:0;padding:0;box-shadow:0 30px 80px -20px #00000080}.dialog::backdrop{backdrop-filter:blur(2px);background:#0f0f0f8c}.dialog[open]{animation:.18s ease-out dialog-in}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}@media (prefers-reduced-motion:reduce){.dialog[open]{animation:none}}.dialog__head{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--line);display:flex}.dialog__head h2{font-size:var(--step-1)}.dialog__close{width:2.5rem;height:2.5rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;font-size:1.6rem;line-height:1;display:grid}.dialog__close:hover{background:var(--tint);color:var(--ink)}.dialog__body{padding:var(--space-5)}.dialog__body>p{color:var(--muted);font-size:var(--step--1);margin-bottom:var(--space-4)}.stores{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));margin:0;padding:0;list-style:none;display:grid}.stores a{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);text-decoration:none;display:flex}.stores a:hover{border-color:var(--ink);background:var(--tint)}.stores img{width:24px;height:24px}.page-hero{border-bottom:1px solid var(--line);padding-block:clamp(2.5rem,1.5rem + 3vw,4.5rem)}.page-hero__grid{gap:var(--space-6);align-items:start;display:grid}.page-hero__grid>a{width:min(45vw,11rem)}@media (width>=40rem){.page-hero__grid{gap:var(--space-7);grid-template-columns:auto minmax(0,1fr)}}.page-hero h1{margin-block:var(--space-2) var(--space-4)}.page-hero p:not(.eyebrow){color:var(--muted);max-width:var(--measure)}.doc{gap:var(--space-7) clamp(2rem, 5vw, 4rem);padding-block:var(--space-7) var(--space-section);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=64rem){.doc{grid-template-columns:14rem minmax(0, var(--measure));justify-content:center}}.doc__aside{font-size:var(--step--1)}@media (width>=64rem){.doc__aside{top:calc(var(--header-h) + var(--space-5));max-height:calc(100dvh - var(--header-h) - 2 * var(--space-5));align-self:start;position:sticky;overflow-y:auto}}.doc__aside h2,.doc__aside h3{font-size:var(--step--1);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:var(--space-3);font-weight:700}.doc__aside ul{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.doc__aside ul ul{margin-top:var(--space-2);padding-left:var(--space-4);border-left:1px solid var(--line)}.doc__aside a{color:var(--text);text-decoration:none}.doc__aside a:hover{color:var(--link);text-decoration:underline}.doc__body h2{font-size:var(--step-3)}.doc__body h3{font-size:var(--step-2);font-weight:400}.doc__body h4{font-size:var(--step-1);font-weight:600}.doc__body>*+:is(h2,h3,h4){margin-top:var(--space-7)}.doc__body>*+*{margin-top:var(--space-4)}.doc__body li>ul{margin-top:var(--space-2)}.doc__body figure img{margin-inline:auto}.doc__body figcaption{color:var(--muted);font-size:var(--step--1);text-align:center;margin-top:var(--space-2)}pre.sourceCode>code>span{display:inline}pre.sourceCode>code>span>a:first-child:before{text-decoration:none}code.sourceCode span a{pointer-events:none}code span.kw,code span.cf{color:#cf222e}code span.dt{color:#953800}code span.dv,code span.bn,code span.fl{color:#0550ae}code span.st,code span.ch,code span.ss{color:#0a3069}code span.co,code span.do{color:#6e7781;font-style:italic}code span.fu{color:#8250df}code span.pp,code span.im{color:#cf222e}code span.op{color:#24292f}code span.bu{color:#953800}code span.er,code span.al{color:#cf222e;font-weight:700}}@layer utilities{.center{text-align:center}.muted{color:var(--muted)}.mt-6{margin-top:var(--space-6)}.mt-7{margin-top:var(--space-7)}}
