.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}*,:before,:after{box-sizing:border-box}html{text-size-adjust:none}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin-block-end:0}ul[role=list],ol[role=list]{list-style:none}html{background-color:var(--surface-light);min-height:100dvh}html,body{min-height:100dvh;line-height:1.5}h1,h2,h3,h4,button,input,label{line-height:1.1}h1,h2,h3,h4{text-wrap:balance}a:not([class]){text-decoration-skip-ink:auto;color:currentColor}img,picture{max-width:100%;height:auto;display:block}input,button,textarea,select{font:inherit}textarea:not([rows]){min-height:10em}:target{scroll-margin-block:5ex}:root{box-sizing:border-box;interpolate-size:allow-keywords;--font-body:system-ui,sans-serif;--font-display:ui-serif,Georgia,"Times New Roman",Times,serif;--font-mono:ui-monospace,"SFMono-Regular",monospace;--text-xs:clamp(.75rem,.71rem + .2vi,.875rem);--text-sm:clamp(.875rem,.84rem + .18vi,1rem);--text-base:clamp(1rem,.96rem + .2vi,1.15rem);--text-lg:clamp(1.25rem,1.15rem + .5vi,1.75rem);--text-xl:clamp(1.5rem,1.2rem + 1.5vi,2.5rem);--text-2xl:clamp(2rem,1.55rem + 2.25vi,3.5rem);--space-3xs:clamp(.25rem,.23rem + .1vi,.3125rem);--space-2xs:clamp(.5rem,.46rem + .2vi,.625rem);--space-xs:clamp(.75rem,.69rem + .3vi,.9375rem);--space-sm:clamp(1rem,.92rem + .4vi,1.25rem);--space-md:clamp(1.5rem,1.38rem + .6vi,1.875rem);--space-lg:clamp(2rem,1.84rem + .8vi,2.5rem);--space-xl:clamp(3rem,2.76rem + 1.2vi,3.75rem);--space-2xl:clamp(4rem,3.68rem + 1.6vi,5rem);--space-3xl:clamp(6rem,5.52rem + 2.4vi,7.5rem);--ink:#1b2a4a;--ink-hover:#2a3d66;--cream:#f4e9cd;--cream-deep:#ecdfb8;--ember:#d9532b;--ember-soft:#e8794a;--text-color:var(--ink);--text-default:var(--ink);--text-lowkey:#1b2a4a99;--text-color-hover:var(--ink-hover);--purple:var(--ember);--surface-light:var(--cream);--border-subtle:#1b2a4a2e;--accent:var(--ember);--shadow0:transparent;--shadow1:0px 1px 2px 0px #0000003d,0px 1px 3px 0px #0000001f;--shadow2:0px 2px 4px 0px #0000001f,0px 3px 6px 0px #00000026;--shadow3:0px 3px 6px 0px #0000001a,0px 10px 20px 0px #00000026;--shadow4:0px 5px 10px 0px #0000000d,0px 15px 25px 0px #00000026;--shadow5:0px 20px 40px 0px #0003}body{font-family:var(--font-body);font-size:var(--text-base);background-color:var(--surface-light);word-wrap:break-word;overflow-wrap:break-word;color:var(--text-color);margin:auto;padding:20px;line-height:1.45}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-color);font-style:italic;font-weight:700}strong,b{font-family:var(--font-body);color:var(--text-color);font-weight:800}main{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");background-repeat:repeat;background-size:200px 200px}a{color:var(--ember);text-underline-offset:3px}a:hover{color:var(--ember-soft)}.has-accent h1{padding-block-start:.9em;position:relative}.has-accent h1:before{content:"";background-color:var(--accent);border-radius:2px;width:3rem;height:4px;display:block;position:absolute;top:0}.has-accent h1:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))):before{left:0}.has-accent h1:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))):before{left:0}.has-accent h1:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))):before{left:0}.has-accent h1:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)):before{right:0}.has-accent .section-label,.has-accent .eyebrow,.has-accent a{color:var(--accent)}.has-accent a:hover{color:var(--accent);opacity:.75}.has-accent .takeaway{border-left-color:var(--accent)}.has-accent .takeaway:before{background:linear-gradient(90deg,var(--accent)0%,transparent 10%)}textarea{width:100%;font-size:16px}input{font-size:16px}table{width:100%}code{background-color:#f2f2f2;padding:2px 5px}pre{padding:1rem}pre>code{all:unset}blockquote{color:#222;border:1px solid #999;margin:0;padding:2px 0 2px 20px;font-style:italic}ul{color:var(--text-color)}ul.contains-task-list{padding-left:4px;list-style-type:none}#footnote-label{font-size:var(--text-lg);color:var(--text-color)}.link-external:after,.link-external-markdown a:after{content:"";background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3C!-- Font Awesome Pro 5.15.4 by %40fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) --%3E%3Cpath d='M432 320H400a16 16 0 0 0-16 16V448H64V128H208a16 16 0 0 0 16-16V80a16 16 0 0 0-16-16H48A48 48 0 0 0 0 112V464a48 48 0 0 0 48 48H400a48 48 0 0 0 48-48V336A16 16 0 0 0 432 320ZM488 0h-128c-21.37 0-32.05 25.91-17 41l35.73 35.73L135 320.37a24 24 0 0 0 0 34L157.67 377a24 24 0 0 0 34 0L435.28 133.32 471 169c15 15 41 4.5 41-17V24A24 24 0 0 0 488 0Z'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:contain;width:11px;height:11px;margin-left:4px;display:inline-block}summary{border:1px solid #0000;padding-left:8px}summary:hover{cursor:pointer;border:1px solid #000}figcaption{font-size:var(--text-sm);color:#000000a8;font-style:italic}.smallerImage{width:100%;max-width:320px}.worksample{color:var(--ember)}.intro--title{font-size:var(--text-2xl);margin-top:1rem}.notebox{color:gray;border:1px dashed #000;border-radius:8px;margin:12px auto 2.5rem;padding:4px 12px;box-shadow:0 3px 6px #00000026,0 2px 4px #0000001f}.takeaway{background-color:var(--surface-light);border:1px solid var(--border-subtle);border-left:6px solid var(--purple);box-shadow:var(--shadow2);border-radius:4px 8px 8px 4px;margin:2rem 0;padding:1.5rem;position:relative;overflow:hidden}.takeaway:before{content:"";background:linear-gradient(90deg,var(--purple)0%,transparent 10%);opacity:.05;pointer-events:none;position:absolute;inset:0}.takeaway>:first-child{margin-top:0}.takeaway>:last-child{margin-bottom:0}.takeaway.is-tertiary{box-shadow:none;background-color:#0000;border:none;border-left:2px solid #0000;border-radius:0;margin:1.5rem 0;padding:0;transition:border-color .28s,padding-bottom .42s}.takeaway.is-tertiary:before{display:none}.takeaway.is-tertiary>summary{cursor:pointer;font-family:var(--font-body);font-style:italic;font-weight:500;font-size:var(--text-sm);color:var(--text-lowkey);user-select:none;align-items:center;gap:.5rem;padding:.35rem 0;list-style:none;transition:color .2s,letter-spacing .2s;display:inline-flex}.takeaway.is-tertiary>summary:hover{color:var(--accent,var(--ember))}.takeaway.is-tertiary[open]{border-left-color:var(--accent,var(--ember));padding-bottom:1.25rem}.takeaway.is-tertiary[open]>summary{color:var(--accent,var(--ember))}.takeaway.is-tertiary[open]>summary:after{display:none}.takeaway.is-tertiary[open]>summary+p{margin-top:.85rem;position:relative}.takeaway.is-tertiary[open]>summary+p:before{content:"◆";color:var(--accent,var(--ember));opacity:.5;letter-spacing:.7em;margin-bottom:.85rem;font-size:.4rem;display:block}.takeaway.is-tertiary[open]>summary+ul,.takeaway.is-tertiary[open]>summary+ol{margin-top:1rem}.takeaway.is-tertiary[open]>:not(summary){font-size:var(--text-sm);color:var(--text-lowkey);max-width:52ch;padding-left:1.25rem}.takeaway.is-tertiary[open] p,.takeaway.is-tertiary[open] li{font-size:var(--text-sm);color:var(--text-default);opacity:.85}.takeaway.is-tertiary>summary::-webkit-details-marker{display:none}.takeaway.is-tertiary>summary:before{content:"";opacity:.7;border-bottom:1.5px solid;border-right:1.5px solid;flex-shrink:0;width:.4rem;height:.4rem;transition:transform .25s,border-width .2s;transform:rotate(-45deg)}.takeaway.is-tertiary[open]>summary:before{border-right:1.5px solid var(--accent,var(--ember));border-bottom:1.5px solid var(--accent,var(--ember));opacity:.9;width:.45rem;height:.45rem;transform:rotate(45deg)}.takeaway.is-tertiary>summary:hover,.takeaway.is-tertiary[open]>summary{color:var(--text-default)}.has-accent .takeaway.is-tertiary{border-left-color:var(--accent)}.has-accent .takeaway.is-tertiary[open]>summary{color:var(--accent)}.takeaway.is-tertiary[open]{padding-bottom:1.5rem}.takeaway.is-tertiary::details-content{opacity:0;block-size:0;transition:block-size .42s cubic-bezier(.25,.1,.25,1),opacity .32s ease 40ms,transform .42s cubic-bezier(.25,.1,.25,1),content-visibility .42s allow-discrete;overflow:clip;transform:translateY(-4px)}.takeaway.is-tertiary[open]::details-content{opacity:1;block-size:auto;transform:translateY(0)}@starting-style{.takeaway.is-tertiary[open]::details-content{opacity:0;block-size:0;transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.takeaway.is-tertiary,.takeaway.is-tertiary::details-content{transition:none}}.figure-pair{grid-template-columns:1fr;align-items:start;gap:1.5rem;margin:2rem 0;display:grid}@media (width>=720px){.figure-pair{grid-template-columns:2fr 3fr;gap:2rem}}.figure-pair>figure{margin:0}.figure-pair>figure img{width:100%;height:auto}.zoomable-figure{cursor:zoom-in;display:block}.zoomable-figure img{width:100%;height:auto;display:block}.figure-scrollstrip{border:1px solid var(--border-subtle);background:var(--surface-light);border-radius:6px;overflow:hidden}.figure-scrollstrip>a{cursor:zoom-in;scrollbar-width:thin;max-height:560px;display:block;overflow:auto}.figure-scrollstrip>a img{width:auto;max-width:none;height:auto;display:block}.figure-scrollstrip>figcaption{border-top:1px solid var(--border-subtle);padding:.5rem 1rem;font-size:.85rem}.figure-scrollstrip>figcaption em{color:var(--text-lowkey);font-style:normal}.img-capped{object-fit:contain;width:auto;max-width:100%;max-height:420px;margin-inline:auto}.pullquote{font-family:var(--font-display);font-style:italic;font-size:var(--text-lg);color:var(--text-default);border-left:3px solid var(--accent,var(--ember));text-wrap:balance;max-width:28ch;margin:2.5rem auto;padding:.5rem 0 .5rem 1.25rem;line-height:1.25}.lede{font-size:var(--text-lg);line-height:1.35;font-family:var(--font-display);color:var(--text-default);text-wrap:pretty;max-width:38ch;font-style:italic}.samplewrapper{grid-gap:8px;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));display:grid}.anheroimage{border-radius:12px;box-shadow:0 3px 6px #00000026,0 2px 4px #0000001f}table,td{border:1px solid #333}thead,tfoot{color:#fff;background-color:#333}figure{margin-block:var(--space-md)var(--space-lg)}h1+figure,h2+figure,h3+figure,h4+figure,h1+.figure-pair,h2+.figure-pair,h3+.figure-pair{margin-block-start:var(--space-lg)}figure+p,figure+ul,figure+ol,figure+.takeaway,.figure-pair+p,.figure-pair+.takeaway{margin-block-start:var(--space-md)}h1{font-size:var(--text-2xl);overflow-wrap:normal}h2{font-size:var(--text-xl);overflow-wrap:normal}h3,h4{font-size:var(--text-lg);overflow-wrap:normal}h2,h3{margin-top:2.75em;margin-bottom:.5em}p,li{color:var(--text-color);font-size:var(--text-base);max-width:45ch;line-height:1.45}.experiment{margin-top:2.5em}.tiny{max-inline-size:320px;border-radius:4px;height:100%}.content-grid{--padding-inline:.5rem;--content-max-width:50ch;--breakout-max-width:900px;--breakout-size:calc((var(--breakout-max-width) - var(--content-max-width))/2);grid-template-columns:[full-width-start]minmax(var(--padding-inline,1fr),1fr)[breakout-start]minmax(0,var(--breakout-size))[content-start]min(100% - (var(--padding-inline)*2),var(--content-max-width))[content-end]minmax(0,var(--breakout-size))[breakout-end]minmax(var(--padding-inline,1fr),1fr)[full-width-end];display:grid}.content-grid>*{grid-column:content}.content-grid>.breakout{grid-column:breakout}.content-grid>.full-width{grid-column:full-width}.icon{opacity:.5;border:.5px solid gray;border-radius:2px}.icon:hover{opacity:1;border:.5px solid #000}.flex{flex-flow:row;justify-content:center;align-items:flex-start;gap:1em;display:flex}.mydoodle{box-shadow:var(--shadow3);border-radius:8px}video.mydoodle{width:100%;height:auto;display:block}.tcenter{text-align:center}.sideways{border-radius:8px;flex-flow:row;justify-content:space-around;align-items:center;display:flex;overflow:auto}.sideways img{max-inline-size:420px;width:100%}.sideways figcaption{padding-left:12px}.sideways figcaption p{min-inline-size:10ch;max-inline-size:25ch;font-size:1rem}.btn-pill{background:var(--text-color);color:#fff;font-weight:600;font-size:var(--text-sm);border-radius:999px;padding:.75em 2em;text-decoration:none;display:inline-block}.btn-pill:hover{background:var(--text-color-hover);color:var(--text-color)}.btn-link{color:var(--ember);text-underline-offset:4px;font-weight:700;text-decoration:underline;transition:color .2s,text-underline-offset .2s}.btn-link:hover{color:var(--ember-soft);text-underline-offset:6px}.flow>*+*{margin-block-start:var(--flow-space,1em)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}a[data-astro-cid-eimmu3lg]{font-family:var(--font-body);padding-block:var(--space-xs);color:var(--text-color);text-decoration:none;display:inline-block}a[data-astro-cid-eimmu3lg]:hover{cursor:pointer;text-decoration:underline}a[data-astro-cid-eimmu3lg].active{border:none;font-weight:800;text-decoration:underline}.otherlinks[data-astro-cid-3ef6ksr2]{flex-flow:wrap;justify-content:space-between;align-items:center;display:flex}header[data-astro-cid-3ef6ksr2]{padding-block:var(--space-lg)var(--space-md)}h2[data-astro-cid-3ef6ksr2]{margin:.5em 0}.otherlinks[data-astro-cid-sz7xmlte]{flex-flow:wrap;justify-content:space-between;align-items:center;gap:.25rem 1rem;display:flex}footer[data-astro-cid-sz7xmlte]{font-size:var(--text-sm);padding-block:var(--space-2xl)var(--space-lg);text-align:center}
