@font-face{font-family:Fraunces;src:url(/fonts/fraunces-variable.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Fraunces;src:url(/fonts/fraunces-italic-variable.woff2)format("woff2");font-weight:100 900;font-style:italic;font-display:swap}@font-face{font-family:EB Garamond;src:url(/fonts/eb-garamond-variable.woff2)format("woff2");font-weight:400 800;font-style:normal;font-display:swap}@font-face{font-family:EB Garamond;src:url(/fonts/eb-garamond-italic-variable.woff2)format("woff2");font-weight:400 800;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-variable.woff2)format("woff2");font-weight:100 800;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-italic-variable.woff2)format("woff2");font-weight:100 800;font-style:italic;font-display:swap}:root{--font-display:"Fraunces", "Iowan Old Style", Georgia, serif;--font-text:"EB Garamond", "Iowan Old Style", Palatino, Georgia, serif;--font-mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", monospace;--display-soft:0;--display-wonk:0;--text-size:clamp(1.15rem, 1rem + .45vw, 1.3rem);--text-leading:1.6;--measure:68ch;--code-scale:.8em;--step-h1:clamp(2.8rem, 1.6rem + 5vw, 5.6rem);--step-h2:clamp(2rem, 1.4rem + 2.4vw, 3.2rem);--step-h3:clamp(1.4rem, 1.15rem + 1vw, 1.85rem);--step-h4:1.1em}html{font-family:var(--font-text);font-kerning:normal;font-optical-sizing:auto;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-size:100%}body{font-size:var(--text-size);line-height:var(--text-leading);font-variant-numeric:oldstyle-nums proportional-nums}p,li,dd,blockquote{hanging-punctuation:first last;text-wrap:pretty}h1,h2,h3{font-family:var(--font-display);font-optical-sizing:auto;font-variation-settings:"SOFT" var(--display-soft), "WONK" var(--display-wonk);font-variant-numeric:lining-nums;text-wrap:balance;font-style:normal;line-height:1.08}h1{font-size:var(--step-h1);letter-spacing:-.01em;font-weight:560}h2{font-size:var(--step-h2);letter-spacing:-.005em;font-weight:540}h3{font-size:var(--step-h3);letter-spacing:-.005em;font-weight:600}h4{font-family:var(--font-text);font-size:var(--step-h4);letter-spacing:.06em;font-variant-caps:all-small-caps;font-weight:600;line-height:1.3}em,i{font-style:italic}strong,b{font-weight:600}code,kbd,samp,pre{font-family:var(--font-mono);font-variant-numeric:lining-nums tabular-nums;font-variant-ligatures:contextual;hanging-punctuation:none;font-weight:400}:not(pre)>code,kbd{font-size:var(--code-scale)}pre{tab-size:2;font-size:clamp(.78rem,.72rem + .2vw,.88rem);line-height:1.6}table{font-variant-numeric:lining-nums tabular-nums}.smallcaps{font-family:var(--font-text);letter-spacing:.1em;font-variant-caps:all-small-caps;font-weight:500}.display{font-family:var(--font-display);font-variation-settings:"SOFT" var(--display-soft), "WONK" var(--display-wonk)}:root{color-scheme:light;--espresso:#2b1d16;--ink:#3b2a20;--ink-soft:#6a5345;--roast:#7a4a2c;--caramel:#8f5a26;--caramel-bright:#c4894a;--latte:#e8d5b9;--foam:#f0e4d1;--cream:#f8f1e6;--paper:#fffaf2;--rule:#d9c4a7;--chino:#4f7896;--gutter:clamp(1.25rem, 4vw, 3rem);--radius:.4rem;color:var(--ink);background:var(--cream)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:1.5rem}body{min-width:320px;margin:0}a{color:var(--caramel);text-decoration-color:color-mix(in srgb, var(--caramel) 40%, transparent);text-underline-offset:.18em;text-decoration-thickness:.06em}a:hover{text-decoration-color:currentColor}:focus-visible{outline:2px solid var(--chino);outline-offset:3px;border-radius:.15rem}::selection{background:var(--latte)}.skip-link{z-index:10;color:var(--cream);background:var(--espresso);padding:.5rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-200%)}.skip-link:focus{transform:none}.masthead,.colophon{padding:1.1rem var(--gutter);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 2rem;display:flex}.masthead{border-bottom:3px double var(--rule)}.masthead-wordmark{color:var(--espresso);align-self:center;display:block}.masthead-wordmark svg{width:auto;height:3.4rem;margin-block:.2rem -.6rem;display:block}.masthead-wordmark:hover{color:var(--roast)}@media (forced-colors:active){.blend-fog{display:none}.blend-spoon{fill:currentColor;filter:none}}.masthead-nav,.colophon nav{gap:1.6rem;font-size:1.15rem;display:flex}.masthead-nav a,.colophon a{color:var(--ink);text-decoration:none}.masthead-nav a:hover,.colophon a:hover{color:var(--caramel)}.colophon{border-top:3px double var(--rule);color:var(--ink-soft);margin-top:6rem}.colophon p{margin:0}.guide-layout{max-width:82rem;padding:3rem var(--gutter) 0;grid-template-columns:minmax(13rem,17rem) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);margin-inline:auto;display:grid}.guide-toc{align-self:start;max-height:calc(100vh - 3rem);font-size:1.02rem;line-height:1.35;position:sticky;top:1.5rem;overflow-y:auto}.guide-toc summary{border-bottom:1px solid var(--rule);color:var(--ink-soft);cursor:pointer;margin-bottom:.8rem;padding-bottom:.5rem;font-size:1.1rem;list-style:none}.guide-toc summary::-webkit-details-marker{display:none}.guide-toc ol{margin:0;padding:0;list-style:none}@media (width>=52.01rem){.guide-toc details::details-content{content-visibility:visible;block-size:auto}.guide-toc summary{pointer-events:none}}.guide-toc>details>ol>li{margin-block:.55rem}.guide-toc ol ol{margin:.3rem 0 .4rem .9rem;font-size:.92em}.guide-toc ol ol li{margin-block:.25rem}.guide-toc a{color:var(--ink);text-decoration:none}.guide-toc ol ol a{color:var(--ink-soft)}.guide-toc a:hover{color:var(--caramel)}@media (width<=52rem){.guide-layout{grid-template-columns:minmax(0,1fr);padding-top:1.5rem}.guide-toc{border:1px solid var(--rule);border-radius:var(--radius);background:var(--paper);max-height:none;padding:.9rem 1.1rem;position:static}.guide-toc summary{border:0;margin:0;padding:0}.guide-toc details[open] summary{margin-bottom:.6rem}}.prose{min-width:0;max-width:58rem}.prose>:is(p,ul,ol,h1,h2,h3,h4,blockquote){max-width:var(--measure)}.prose .kicker{color:var(--roast);margin:0 0 .4rem;font-size:1.15rem}.prose h1{color:var(--espresso);margin:0 0 2.5rem}.prose h2{border-top:1px solid var(--rule);color:var(--espresso);margin:4.5rem 0 1.2rem;padding-top:2.2rem}.prose h1+h2{margin-top:0}.prose h3{color:var(--espresso);margin:2.8rem 0 .8rem}.prose h4{color:var(--roast);margin:2rem 0 .5rem}.prose .heading-link{color:var(--ink-soft);vertical-align:baseline;margin-left:.4em;padding-inline:.15em;font-size:.65em;font-weight:400;text-decoration:none;display:inline-block}.prose .heading-link:hover,.prose .heading-link:focus-visible{color:var(--caramel);text-decoration:underline}.prose p,.prose ul,.prose ol{margin-block:0 1.1em}.prose ul,.prose ol{padding-left:1.4em}.prose li{margin-block:.3em}.prose li::marker{color:var(--caramel-bright)}.prose strong{color:var(--espresso)}main :not(pre)>code{color:var(--roast);background:var(--foam);overflow-wrap:break-word;border-radius:.2rem;padding:.1em .3em}main a code{color:inherit}pre.astro-code{border-radius:var(--radius);margin:1.4rem 0 1.8rem;padding:1.15rem 1.3rem;position:relative;overflow-x:auto;box-shadow:0 1px #2b1d1614,0 10px 24px -18px #2b1d1699}pre.astro-code[data-language]:not([data-language=text],[data-language=plaintext]){padding-top:1.75rem}pre.astro-code[data-language]:not([data-language=text],[data-language=plaintext]):before{content:attr(data-language);color:#a08876;font-family:var(--font-text);letter-spacing:.1em;font-size:.95rem;font-variant-caps:all-small-caps;position:absolute;top:.35rem;right:.7rem}pre.astro-code code{width:max-content;min-width:100%;display:block}pre.astro-code .line.mark{border-left:3px solid var(--caramel-bright);background:#c4894a29;min-width:calc(100% + 2.6rem);margin-inline:-1.3rem;padding-inline:calc(1.3rem - 3px) 1.3rem;display:inline-block}.example-wrap pre.astro-code code{white-space:pre-wrap;overflow-wrap:anywhere;width:auto}.prose table{border-collapse:collapse;width:100%;margin:1.6rem 0 2rem;font-size:.94em;line-height:1.45;display:block;overflow-x:auto}.prose th,.prose td{text-align:left;vertical-align:top;padding:.55rem 1rem .55rem 0}.prose th{border-bottom:1px solid var(--ink-soft);color:var(--ink-soft);letter-spacing:.08em;white-space:nowrap;font-variant-caps:all-small-caps;font-weight:500}.prose td{border-bottom:1px dotted var(--rule)}.prose td:first-child{white-space:nowrap}.prose tr:last-child td{border-bottom:0}@media (width<=36rem){.prose table{font-size:.85em;display:table}.prose th,.prose td,.prose td:first-child{white-space:normal;hyphens:auto;padding-right:.45rem}.prose td code{overflow-wrap:anywhere;hyphens:manual}}.button{border:1px solid var(--espresso);color:var(--espresso);letter-spacing:.08em;border-radius:999px;padding:.55rem 1.35rem .6rem;font-size:1.15rem;font-variant-caps:all-small-caps;font-weight:500;text-decoration:none;transition:background-color .12s,color .12s;display:inline-block}.button:hover,.button-primary{color:var(--cream);background:var(--espresso)}.button-primary:hover{background:var(--roast);border-color:var(--roast)}.ornament{max-width:24rem;color:var(--caramel-bright);align-items:center;gap:1.2rem;margin:5.5rem auto;display:flex}.ornament:before,.ornament:after{content:"";border-top:1px solid var(--rule);flex:1}.home{max-width:70rem;padding:0 var(--gutter);margin-inline:auto}.example{min-width:0;margin:0}.example figcaption{color:var(--ink-soft);margin-bottom:.4rem;font-size:1.02rem}.example pre.astro-code[data-language]{margin:0;padding-top:1.15rem}.example pre.astro-code:before{display:none}.home .kicker{color:var(--roast);margin:0 0 .5rem;font-size:1.15rem}.home h1,.home h2{color:var(--espresso);margin:0}.home h1 em{font-weight:460}.hero{text-align:center;max-width:46rem;margin:0 auto;padding-top:clamp(3rem,9vw,7rem)}.hero .lede{max-width:38rem;color:var(--ink-soft);margin:1.6rem auto 2rem;font-size:1.15em}.actions{flex-wrap:wrap;justify-content:center;gap:.8rem;margin-bottom:2.2rem;display:flex}.hero .example{text-align:left;max-width:100%;display:inline-block}.hero pre.astro-code[data-language]{padding:.75rem 1.3rem}.section-head{max-width:var(--measure);text-align:center;margin:0 auto 2.6rem}.section-head p:last-child:not(.kicker){color:var(--ink-soft);margin:1rem 0 0}.pairing-grid{grid-template-columns:minmax(0,1.75fr) auto minmax(0,1fr);align-items:center;gap:1.4rem;display:grid}.pairing-arrow{color:var(--ink-soft);justify-items:center;font-size:1rem;line-height:1.1;display:grid}.pairing-arrow span{color:var(--caramel-bright);font-family:var(--font-display);font-size:2rem}@media (width<=52rem){.pairing-grid{grid-template-columns:minmax(0,1fr)}.pairing-arrow span{transform:rotate(90deg)}}.formats{border-top:1px dotted var(--rule);text-align:center;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.3rem 1.2rem;max-width:52rem;margin:2.6rem auto 0;padding-top:1.1rem;display:flex}.formats p{color:var(--ink-soft);margin:0;font-size:1.05rem}.formats ul{color:var(--espresso);flex-wrap:wrap;justify-content:center;margin:0;padding:0;list-style:none;display:flex}.formats li+li:before{content:"·";color:var(--caramel-bright);margin-inline:.55rem}.formats a{font-size:.95em}.scene{counter-reset:beat;gap:2.6rem;margin:0;padding:0;list-style:none;display:grid}.scene>li{counter-increment:beat;grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);align-items:start;gap:.4rem 2.2rem;display:grid}.scene>li>:not(.example){grid-column:1}.scene .example{grid-area:1/2/span 2}.scene h3,.outcome h3{color:var(--espresso);font-size:var(--step-h3);margin:0}.scene h3:before{content:counter(beat, lower-roman) ".";color:var(--caramel-bright);margin-right:.45em;font-style:italic;font-weight:460}.scene p,.outcome p{color:var(--ink-soft);margin:0}.outcomes{border-top:1px solid var(--rule);grid-template-columns:repeat(2,minmax(0,1fr));gap:2.2rem;margin-top:3.2rem;padding-top:2.4rem;display:grid}.outcome{align-content:start;gap:.7rem;display:grid}.outcome .example{margin-top:.4rem}.home .outcome-message{border-left:2px solid var(--rule);padding-left:.9rem;font-size:.95em}.outcome-message samp{font-size:var(--code-scale);overflow-wrap:anywhere}.reconcile-more{text-align:center;margin:2.6rem 0 0}@media (width<=52rem){.scene>li,.outcomes{grid-template-columns:minmax(0,1fr)}.scene .example{grid-area:auto/1;margin-top:.6rem}}.menu-list{grid-template-columns:minmax(0,1fr);gap:3.2rem;max-width:48rem;margin:0 auto;padding:0;list-style:none;display:grid}.menu-line{align-items:baseline;gap:.8rem;display:flex}.menu-line h3{color:var(--espresso);font-size:var(--step-h3);margin:0}.menu-leader{border-bottom:2px dotted var(--rule);flex:1;min-width:1.5rem;transform:translateY(-.3em)}.home .menu-tag{color:var(--caramel);white-space:nowrap;background:0 0;padding:0}.menu-item>p{max-width:40rem;color:var(--ink-soft);margin:.5rem 0 1rem}.menu-more{text-align:center;margin:2.8rem 0 0}@media (width<=36rem){.menu-line{flex-wrap:wrap;gap:.2rem .8rem}.menu-leader{display:none}}.workflow-steps{counter-reset:step;text-align:center;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:2rem;margin:0;padding:0;list-style:none;display:grid}.workflow-steps li{counter-increment:step}.workflow-steps li:before{content:counter(step, lower-roman) ".";color:var(--caramel-bright);font-family:var(--font-display);margin-bottom:.3rem;font-size:1.6rem;font-style:italic;display:block}.home .workflow-steps code{font-size:.95em}.workflow-steps p{color:var(--ink-soft);margin:.6rem 0 0}.start{max-width:44rem;margin:0 auto}.install-more{border:1px solid var(--rule);border-radius:var(--radius);background:var(--paper);margin-top:1.8rem;padding:.9rem 1.3rem}.install-more summary{color:var(--ink-soft);cursor:pointer;font-size:1.1rem}.install-more h3{margin:1.6rem 0 .2rem;font-size:1.3rem}.install-more p{color:var(--ink-soft);margin:0 0 .8rem}.install-more .fine-print{margin:1.4rem 0 .2rem;font-size:.92em}.start-next{text-align:center;margin:2.8rem 0 0}
