:root{--hallmark-design:"Hallmark · theme: Carnival citrus-riot · hero: Banner (every route but the home page) Index (/) · shape: Ecosystem Index · posture: full-palette · job: read · redesign: full · copy: verbatim";color-scheme:light;--space-3xs:2px;--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:40px;--space-2xl:64px;--space-3xl:96px;--space-4xl:144px;--text-xs:.8125rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.25rem;--text-xl:1.5625rem;--text-2xl:1.953rem;--text-3xl:2.441rem;--text-display-s:clamp(2.5rem, 4vw + .75rem, 4.25rem);--text-display:clamp(3rem, 5.5vw + 1rem, 6.5rem);--text-section:clamp(2.25rem, 2.5vw + 1.25rem, 3.75rem);--text-title:clamp(1.375rem, .75vw + 1rem, 1.75rem);--text-lead:clamp(1.125rem, .35vw + 1rem, 1.375rem);--text-reading:1.125rem;--text-item:clamp(1.5rem, 1.4vw + 1rem, 2.25rem);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--color-error:oklch(48% .19 27);--color-success:oklch(45% .12 145);--container:1440px;--gutter:64px;--gap-columns:32px;--section-gap-s:120px;--section-gap:144px;--section-gap-l:176px;--z-base:1;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-sticky-nav:300;--z-modal:400;--z-toast:500;--z-tooltip:600;--color-paper:oklch(94% .04 85);--color-paper-2:oklch(90% .045 85);--color-paper-3:oklch(84% .05 85);--color-ink:oklch(20% .07 145);--color-ink-2:oklch(30% .06 145);--color-muted:oklch(40% .05 145);--color-line:oklch(76% .05 85);--color-rule:oklch(28% .28 350);--color-accent:oklch(82% .2 130);--color-accent-2:oklch(28% .28 350);--color-accent-ink:oklch(20% .07 145);--color-accent-2-ink:oklch(94% .04 85);--color-focus:oklch(28% .28 350);--color-focus-on-dark:oklch(82% .2 130);--font-display:"Sofia Sans Extra Condensed", "Arial Narrow", sans-serif;--font-body:"Sofia Sans", system-ui, sans-serif;--font-outlier:var(--font-body);--radius-card:2px;--radius-pill:2px;--rule-hair:1px;--rule-bar:2px;--rule-heavy:4px;--shadow-card:4px 4px 0 var(--color-ink);--shadow-press:1px 1px 0 var(--color-ink);--tracking-display:.01em;--display-weight:800;--control-height:48px}*,:before,:after{box-sizing:border-box}html{scrollbar-color:var(--color-muted) var(--color-paper);scroll-padding-top:var(--space-3xl)}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-md);-webkit-font-smoothing:antialiased;caret-color:var(--color-accent);margin:0;line-height:1.55}::selection{background:color-mix(in oklab, var(--color-accent) 22%, transparent);color:var(--color-ink)}a{color:inherit;text-underline-offset:.16em;text-decoration-thickness:1px}h1,h2,h3{font-family:var(--font-display);font-weight:var(--display-weight,700);font-synthesis:none;letter-spacing:var(--tracking-display);overflow-wrap:break-word;text-wrap:balance;min-width:0;margin:0;line-height:1.05}h1{max-width:20ch;font-size:var(--text-display)}h2{max-width:30ch;font-size:var(--text-section)}h3{max-width:40ch;font-size:var(--text-title);line-height:1.2}.lead{font-size:var(--text-lead);max-width:52ch;line-height:1.45}p{text-wrap:pretty;margin:0}p:not([class]){max-width:65ch}img,video{max-width:100%;height:auto;display:block}svg{display:block}[hidden]{display:none!important}button,input,select,textarea{font:inherit}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);box-sizing:border-box;margin-inline:auto}.num,.figure,td.num{font-variant-numeric:tabular-nums}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}[data-slot]{background:linear-gradient(160deg, var(--color-paper-2,var(--color-paper)), var(--color-paper-3,var(--color-paper)));position:relative;overflow:hidden}[data-slot]>img{object-fit:cover;z-index:1;width:100%;height:100%;position:absolute;inset:0}[data-slot]:has(>img)>:not(img):not([data-keep]){display:none!important}@media (width<=60rem){:root{--gutter:24px;--section-gap-s:80px;--section-gap:96px;--section-gap-l:120px}}@media (width<=40rem){:root{--gutter:16px;--section-gap-s:56px;--section-gap:72px;--section-gap-l:96px;--gap-columns:16px}}@media (prefers-reduced-motion:reduce){:not(.keep-motion),:not(.keep-motion):before,:not(.keep-motion):after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}[data-slot]>img{filter:saturate(1.1)contrast(1.1)}@font-face{font-family:Sofia Sans Extra Condensed;src:url(/fonts/sofia-sans-extra-condensed-roman-variable.woff2)format("woff2");font-style:normal;font-weight:1 1000;font-display:swap}@font-face{font-family:Sofia Sans;src:url(/fonts/sofia-sans-roman-variable.woff2)format("woff2");font-style:normal;font-weight:1 1000;font-display:swap}@font-face{font-family:Sofia Sans;src:url(/fonts/sofia-sans-italic-variable.woff2)format("woff2");font-style:italic;font-weight:1 1000;font-display:swap}html{background:var(--color-paper);-webkit-text-size-adjust:100%}body{min-width:320px;font-size:var(--text-md);font-synthesis:none}a{text-decoration-color:var(--color-accent-2);text-underline-offset:.18em;text-decoration-thickness:2px}a:hover{color:var(--color-accent-2)}a:active{color:var(--color-ink-2)}a,button,summary{-webkit-tap-highlight-color:var(--color-paper-3)}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}main{min-height:52dvh}main:focus:not(:focus-visible){outline:none}button{cursor:pointer}button:disabled,input:disabled{opacity:.55;cursor:not-allowed}button[aria-busy=true]{cursor:progress}input[aria-invalid=true]{border-color:var(--color-error)}.loud{text-transform:uppercase;line-height:1.02}.muted{color:var(--color-muted)}.feed{border-bottom:var(--rule-bar) solid var(--color-rule);grid-template-columns:minmax(0,1fr);display:grid;container:feed/inline-size}.page-head{gap:var(--space-lg) var(--gap-columns);padding-block:var(--space-2xl);grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;display:grid}.page-head h1{max-width:16ch;font-size:var(--text-display);overflow-wrap:break-word;text-wrap:balance;min-width:0;line-height:1.02}.page-head .lead{max-width:44ch}.page-head>:nth-child(n+3){grid-column:2}.site-header{--color-focus:var(--color-focus-on-dark);background:var(--color-ink);color:var(--color-paper)}.slab{justify-content:space-between;align-items:center;gap:var(--space-xs) var(--space-lg);min-height:80px;padding-block:var(--space-sm);flex-wrap:wrap;display:flex}.wordmark{height:44px;color:var(--color-paper);display:block}.wordmark:hover,.footer-wordmark:hover{color:inherit}.site-header nav{align-items:center;gap:0 var(--space-lg);font-size:var(--text-md);flex-wrap:wrap;display:flex}.site-header nav a{white-space:nowrap;min-height:44px;color:var(--color-paper);align-items:center;text-decoration:none;display:inline-flex}.site-header nav a:hover{color:var(--color-accent)}.site-header nav a[aria-current]{text-decoration:underline;text-decoration-color:var(--color-accent);text-underline-offset:.35em;text-decoration-thickness:3px}.button{justify-content:center;align-items:center;gap:var(--space-xs);min-height:var(--control-height);padding:0 var(--space-lg);border:var(--rule-bar) solid var(--color-ink);border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-accent-ink);box-shadow:var(--shadow-card);font-family:var(--font-display);font-weight:var(--display-weight);font-size:var(--text-lg);letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:background-color var(--dur-micro) var(--ease-out);line-height:1;text-decoration:none;display:inline-flex}.button:hover{background:color-mix(in oklch, var(--color-accent) 72%, var(--color-paper));color:var(--color-accent-ink)}.button:active{box-shadow:var(--shadow-press);color:var(--color-accent-ink);transform:translate(3px,3px)}.button:disabled,.button[aria-disabled=true]{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.button-secondary{background:var(--color-paper);color:var(--color-ink)}.button-secondary:hover{background:var(--color-paper-2);color:var(--color-ink)}.button-secondary:active{color:var(--color-ink)}.section-heading{justify-content:space-between;align-items:baseline;gap:var(--space-lg);margin-bottom:var(--space-lg);display:flex}.section-heading>a{font-size:var(--text-md);white-space:nowrap}.empty-state{padding:var(--space-xl);background:var(--color-paper-2);border:var(--rule-bar) solid var(--color-ink);box-shadow:var(--shadow-card)}.empty-state h2,.empty-state h3{margin-bottom:var(--space-md)}.empty-state p{max-width:62ch}.empty-state a{margin-top:var(--space-lg);display:inline-block}.prose{max-width:65ch;font-size:var(--text-reading);overflow-wrap:break-word;line-height:1.7}.prose>*+*{margin-top:var(--space-lg)}.prose h2,.prose h3{margin-top:var(--space-xl);margin-bottom:var(--space-md)}.prose blockquote{border-left:var(--rule-heavy) solid var(--color-accent);padding-left:var(--space-lg);font-size:var(--text-lead);margin-inline:0}.prose pre{padding:var(--space-md);background:var(--color-paper-2);font-size:var(--text-sm);overflow-x:auto}.prose table{border-collapse:collapse;display:block;overflow-x:auto}.prose td,.prose th{border-bottom:var(--rule-hair) solid var(--color-line);padding:var(--space-xs)}.prose a{overflow-wrap:anywhere}.site-footer{margin-top:var(--space-4xl);padding-block:var(--space-2xl) var(--space-xl);background:var(--color-paper-2);border-top:var(--rule-bar) solid var(--color-accent-2);font-size:var(--text-sm)}.footer-grid{gap:var(--space-xl) var(--gap-columns);grid-template-columns:minmax(0,3fr) minmax(0,2fr) minmax(0,4fr) minmax(0,4fr) minmax(0,2fr);display:grid}.footer-brand{align-content:start;gap:var(--space-sm);display:grid}.footer-wordmark{width:fit-content;height:52px;margin-bottom:var(--space-xs);color:var(--color-ink);display:block}.footer-brand p:first-of-type{font-size:var(--text-lead);max-width:28ch;line-height:1.35}.footer-col{align-content:start;gap:var(--space-sm);min-width:0;display:grid}.footer-head{font-size:var(--text-sm);color:var(--color-muted)}.footer-head a{color:var(--color-ink)}.footer-col ul{gap:var(--space-xs);margin:0;padding:0;list-style:none;display:grid}.footer-catalog li{break-inside:avoid}@media (width>=90rem){.footer-catalog ul{columns:2;column-gap:var(--gap-columns);display:block}.footer-catalog li{margin-bottom:var(--space-xs)}}.footer-col a{font-size:var(--text-md)}.footer-note{color:var(--color-muted)}.skip-link{z-index:var(--z-toast);top:calc(-1 * var(--space-3xl));left:var(--space-md);background:var(--color-accent);color:var(--color-accent-ink);border:var(--rule-bar) solid var(--color-ink);padding:var(--space-sm) var(--space-lg);font-weight:700;position:fixed}.skip-link:focus-visible{top:var(--space-md)}.test-banner{padding:var(--space-xs) var(--space-lg);text-align:center;background:var(--color-paper-3);font-size:var(--text-sm)}@media (width<=60rem){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-head{padding-block:var(--space-xl) var(--space-lg);grid-template-columns:minmax(0,1fr)}.page-head>:nth-child(n+3){grid-column:1}}@media (width<=40rem){.slab{gap:var(--space-xs);min-height:0;padding-block:var(--space-md) var(--space-2xs);flex-wrap:wrap}.wordmark{height:38px}.site-header nav{justify-content:space-between;gap:0 var(--space-sm);width:100%;font-size:var(--text-sm)}.section-heading{gap:var(--space-xs);flex-wrap:wrap}.site-footer{margin-top:var(--space-3xl)}.footer-grid{grid-template-columns:minmax(0,1fr)}.empty-state{padding:var(--space-lg)}}@media (width<=22.5rem){.site-header nav{justify-content:flex-start;column-gap:var(--space-lg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.wordmark-svg[data-astro-cid-qisgtjgl]{width:auto;height:100%;display:block;overflow:visible}.wm-letters[data-astro-cid-qisgtjgl],.wm-shadow[data-astro-cid-qisgtjgl]{fill:currentColor}.wm-sticker[data-astro-cid-qisgtjgl]{fill:var(--color-accent);stroke:var(--color-ink)}.wm-sticker-letters[data-astro-cid-qisgtjgl]{fill:var(--color-ink)}html,body{overflow-x:clip}
