@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:300 800;src:url(/fonts/open-sans-latin-wght-normal.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Open Sans;font-style:italic;font-display:swap;font-weight:300 800;src:url(/fonts/open-sans-latin-wght-italic.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Open Sans Fallback;src:local(Arial),local(Helvetica Neue),local(Liberation Sans);ascent-override:101.68%;descent-override:27.88%;line-gap-override:0%;size-adjust:105.28%}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/fonts/fira-sans-latin-700-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/fonts/fira-sans-latin-400-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans Fallback;src:local(Arial),local(Helvetica Neue),local(Liberation Sans);ascent-override:93.5%;descent-override:31.2%;line-gap-override:0%;size-adjust:105%}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/inter-latin-wght-normal.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial),local(Helvetica Neue),local(Liberation Sans);ascent-override:90.43%;descent-override:22.56%;line-gap-override:0%;size-adjust:107.06%}@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/roboto-latin-wght-normal.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto Fallback;src:local(Arial),local(Helvetica Neue),local(Liberation Sans);ascent-override:92.77%;descent-override:24.41%;line-gap-override:0%;size-adjust:100.11%}:root{--font-body:"Open Sans", "Open Sans Fallback", Arial, Helvetica, sans-serif;--font-heading:"Fira Sans", "Fira Sans Fallback", Arial, Helvetica, sans-serif;--font-brand:"Inter", "Inter Fallback", Arial, Helvetica, sans-serif;--font-display:"Roboto", "Roboto Fallback", Arial, Helvetica, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--color-bg:#fff;--color-surface:#fff;--color-band:transparent;--color-text:#0e0e0e;--color-text-muted:#6a6a6a;--color-text-subtle:#a0a0a0;--color-rule:#d9d9d9;--color-border:#d9d9d9;--color-accent:#c62129;--color-accent-hover:var(--color-text);--color-accent-contrast:#fff;--color-link:var(--color-text);--color-link-hover:#c62129;--color-focus:#0b63ce;--width-content:72ch;--width-wide:1280px;--gutter:clamp(1.25rem, 5vw, 2.5rem);--space-3xs:.25rem;--space-2xs:.5rem;--space-xs:.75rem;--space-s:1.2rem;--space-m:2rem;--space-l:3rem;--space-xl:4rem;--space-2xl:6rem;--radius-s:0;--radius-m:0;--radius-l:0;--ease:cubic-bezier(.2, 0, 0, 1);--duration:.16s}@media (prefers-reduced-motion:reduce){:root{--duration:0s}}:root{--type-base-family:var(--font-body);--type-base-size:18px;--type-base-weight:400;--type-base-leading:1.55;--type-base-tracking:normal;--type-base-features:"kern" 1, "liga" 1, "calt" 1;--type-base-optical:auto;--type-numeric-features:"kern" 1, "liga" 1;--h1-family:var(--font-heading);--h1-size:clamp(2rem, 1.55rem + 2vw, 3.27rem);--h1-weight:800;--h1-leading:1.1;--h1-tracking:-.02em;--h1-wrap:balance;--h1-features:"kern" 1, "liga" 1;--h1-margin-top:0;--h1-margin-bottom:var(--space-s);--h1-post-size:clamp(1.875rem, 1.45rem + 1.9vw, 2.5rem);--h1-post-leading:1.12;--h1-article-size:clamp(2.5rem, 1.85rem + 3vw, 4.5rem);--h1-article-post-size:clamp(2.25rem, 1.7rem + 2.5vw, 3.75rem);--h1-home-family:var(--font-heading);--h1-home-size:clamp(2.5rem, 1.3rem + 5.7vw, 6.5rem);--h1-home-weight:800;--h1-home-leading:.96;--h1-home-tracking:-.035em;--h2-family:var(--font-heading);--h2-size:clamp(1.625rem, 1.3rem + 1.4vw, 2.25rem);--h2-weight:800;--h2-leading:1.05;--h2-tracking:-.025em;--h2-wrap:balance;--h2-margin-top:var(--space-m);--h2-margin-bottom:var(--space-2xs);--h3-family:var(--font-heading);--h3-size:clamp(1.375rem, 1.15rem + .95vw, 1.85rem);--h3-weight:700;--h3-leading:1.15;--h3-tracking:-.02em;--h3-wrap:balance;--h3-margin-top:var(--space-s);--h3-margin-bottom:var(--space-3xs);--h4-family:var(--font-heading);--h4-size:clamp(1.25rem, 1.15rem + .4vw, 1.5rem);--h4-weight:700;--h4-leading:1.2;--h4-tracking:-.015em;--h4-wrap:balance;--p-size:var(--type-base-size);--p-weight:400;--p-leading:1.55;--p-tracking:normal;--p-wrap:pretty;--p-margin-top:var(--space-s);--p-measure:72ch;--lede-size:clamp(1.125rem, 1.05rem + .3vw, 1.375rem);--lede-weight:400;--lede-leading:1.45;--lede-color:var(--color-text);--list-size:var(--type-base-size);--list-leading:1.45;--list-gap:.4em;--list-indent:1.4em;--quote-family:var(--font-heading);--quote-size:clamp(1.15rem, 1.05rem + .45vw, 1.4rem);--quote-weight:400;--quote-leading:1.4;--quote-style:normal;--quote-border:3px solid var(--color-accent);--nav-family:var(--font-body);--nav-size:15px;--nav-weight:400;--nav-leading:1.5;--nav-tracking:normal;--nav-gap:1.75rem;--brand-family:var(--font-heading);--brand-size:18px;--brand-weight:700;--brand-leading:1.5;--brand-tracking:-.01em;--button-family:var(--font-heading);--button-size:18px;--button-weight:700;--button-leading:1.4;--button-tracking:-.005em;--button-case:none;--button-padding:20px 32px;--meta-family:var(--font-body);--meta-size:.9rem;--meta-weight:400;--meta-leading:1.5;--meta-tracking:.01em;--meta-color:var(--color-text-muted);--caption-size:.85rem;--caption-leading:1.45;--caption-color:var(--color-text-muted)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:5rem}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body,h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd,ul,ol{margin:0}ul[role=list],ol[role=list]{padding:0;list-style:none}img,picture,video,canvas,svg{max-width:100%;height:auto;display:block}input,button,textarea,select{font:inherit;color:inherit}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--type-base-family);font-size:var(--type-base-size);font-weight:var(--type-base-weight);line-height:var(--type-base-leading);letter-spacing:var(--type-base-tracking);font-feature-settings:var(--type-base-features);font-optical-sizing:var(--type-base-optical);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;flex-direction:column;min-height:100vh;display:flex}:target{scroll-margin-top:5rem}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:2px}::selection{background:var(--color-accent);color:var(--color-accent-contrast)}.wrap{width:100%;max-width:calc(var(--width-wide) + var(--gutter) * 2);padding-inline:var(--gutter);margin-inline:auto}.column{width:100%;max-width:var(--width-content);margin-inline:auto}.site-main{flex:1 0 auto;padding-block-end:var(--space-xl)}.band{background:var(--color-band);border-top:6px solid var(--color-accent);padding-block:var(--space-xl);margin-block-start:var(--space-xl)}.rule--heavy{background:var(--color-accent);border:0;height:6px;margin:0}.rule--divider{background:var(--color-accent);border:0;height:4px;margin:0}.skip-link{background:var(--color-text);color:var(--color-bg);z-index:100;padding:.75rem 1rem;position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-header{background:var(--color-bg);padding-block:22px}.site-header+.header-rule{background:var(--color-accent);height:6px}.site-header__inner{justify-content:space-between;align-items:center;gap:1rem;display:flex}.site-brand{color:inherit;align-items:center;gap:1rem;text-decoration:none;display:flex}.site-brand__mark{object-fit:contain;flex:none;width:48px;height:46px}.site-brand__name{font-family:var(--brand-family);font-size:var(--brand-size);font-weight:var(--brand-weight);line-height:var(--brand-leading);letter-spacing:var(--brand-tracking);white-space:nowrap}.nav{font-family:var(--nav-family);font-size:var(--nav-size);font-weight:var(--nav-weight);line-height:var(--nav-leading);letter-spacing:var(--nav-tracking)}.nav__list{align-items:center;gap:var(--nav-gap);margin:0;padding:0;list-style:none;display:flex}.nav__item{position:relative}.nav__link{color:var(--color-link);align-items:center;gap:.25rem;padding-block:.25rem;text-decoration:none;display:inline-flex}.nav__link:hover,.nav__link:focus-visible{color:var(--color-link-hover)}.nav__link[aria-current=page]{text-underline-offset:4px;text-decoration:underline}.nav__chevron{width:12px;height:12px;transition:transform var(--duration) var(--ease);flex:none}.nav__submenu{background:var(--color-surface);z-index:30;opacity:0;visibility:hidden;min-width:14rem;transition:opacity var(--duration) var(--ease), transform var(--duration) var(--ease), visibility var(--duration);border:1px solid #00000026;margin:0;padding:.35rem 0;list-style:none;position:absolute;top:100%;left:0;transform:translateY(-4px)}.nav__item:hover>.nav__submenu,.nav__item:focus-within>.nav__submenu{opacity:1;visibility:visible;transform:translateY(0)}.nav__item:hover>.nav__link .nav__chevron,.nav__item:focus-within>.nav__link .nav__chevron{transform:rotate(180deg)}.nav__submenu .nav__link{white-space:nowrap;padding:.4rem 1rem;display:block}.nav-toggle{cursor:pointer;color:var(--color-text);background:0 0;border:0;padding:.75rem;display:none}@media (width<=860px){.nav-toggle{display:block}.nav{background:var(--color-bg);padding:5rem var(--gutter) 2rem;z-index:40;transition:transform var(--duration) var(--ease);position:fixed;inset:0;overflow-y:auto;transform:translate(100%)}.nav[data-open=true]{transform:translate(0)}.nav__close{top:1.5rem;right:var(--gutter);cursor:pointer;color:var(--color-text);background:0 0;border:0;padding:.75rem;position:absolute}.nav__list{flex-direction:column;align-items:flex-start;gap:.15rem;font-size:1.25rem}.nav__list>.nav__item>.nav__link{padding-block:.65rem}.nav__submenu{opacity:1;visibility:visible;background:0 0;border:0;min-width:0;padding:0 0 0 1rem;position:static;transform:none}.nav__submenu .nav__link{color:var(--color-text-muted);padding-block:.75rem;font-size:1.05rem}.nav__chevron{display:none}}@media (width>=861px){.nav__close{display:none}}.site-footer{border-top:2px solid var(--color-text);padding-block:var(--space-m) var(--space-l);font-family:var(--nav-family);color:var(--color-text-muted);margin-block-start:var(--space-xl);font-size:14px}.site-footer__row{flex-wrap:wrap;justify-content:space-between;gap:1rem 2rem;display:flex}.site-footer__nav,.site-footer__legal{flex-wrap:wrap;gap:.5rem 1.5rem;margin:0;padding:0;list-style:none;display:flex}.site-footer a{color:var(--color-text-muted);text-decoration:none}.site-footer a:hover,.site-footer a:focus-visible{color:var(--color-link-hover);text-decoration:underline}.site-footer__meta{margin-top:var(--space-s);font-size:var(--meta-size);color:var(--meta-color)}.button{font-family:var(--button-family);font-size:var(--button-size);font-weight:var(--button-weight);line-height:var(--button-leading);letter-spacing:var(--button-tracking);text-transform:var(--button-case);text-align:center;padding:var(--button-padding);border-radius:var(--radius-m);background:var(--color-accent);color:var(--color-accent-contrast);cursor:pointer;transition:background-color var(--duration) var(--ease);border:1px solid #0000;text-decoration:none;display:inline-block}.button:hover,.button:focus-visible{background:var(--color-accent-hover);color:var(--color-accent-contrast)}.button--wide{width:100%;display:block}.button--secondary{color:var(--color-text);border-color:var(--color-text);background:0 0}.button--secondary:hover,.button--secondary:focus-visible{background:var(--color-text);color:var(--color-bg)}.button-row{margin-top:var(--space-s);flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.text-center{text-align:center}.stack>*+*{margin-top:var(--space-s)}hr{background:var(--color-rule);height:1px;margin-block:var(--space-m);border:0}.prose{font-size:var(--p-size);line-height:var(--p-leading)}.prose h1{font-family:var(--h1-family);font-size:var(--h1-size);font-weight:var(--h1-weight);line-height:var(--h1-leading);letter-spacing:var(--h1-tracking);font-feature-settings:var(--h1-features);text-wrap:var(--h1-wrap);margin-block:var(--h1-margin-top) var(--h1-margin-bottom)}.prose h2{font-family:var(--h2-family);font-size:var(--h2-size);font-weight:var(--h2-weight);line-height:var(--h2-leading);letter-spacing:var(--h2-tracking);text-wrap:var(--h2-wrap);margin-block:var(--h2-margin-top) var(--h2-margin-bottom)}.prose h3{font-family:var(--h3-family);font-size:var(--h3-size);font-weight:var(--h3-weight);line-height:var(--h3-leading);letter-spacing:var(--h3-tracking);text-wrap:var(--h3-wrap);margin-block:var(--h3-margin-top) var(--h3-margin-bottom)}.prose h4,.prose h5,.prose h6{font-family:var(--h4-family);font-size:var(--h4-size);font-weight:var(--h4-weight);line-height:var(--h4-leading);letter-spacing:var(--h4-tracking);text-wrap:var(--h4-wrap);margin-block:var(--space-s) var(--space-3xs)}.prose :is(h2,h3,h4)>a.heading-anchor{color:var(--color-text-subtle);opacity:0;transition:opacity var(--duration) var(--ease);margin-left:.35em;font-size:.7em;text-decoration:none}.prose :is(h2,h3,h4):hover>a.heading-anchor,.prose a.heading-anchor:focus-visible{opacity:1}.prose p{font-size:var(--p-size);font-weight:var(--p-weight);line-height:var(--p-leading);letter-spacing:var(--p-tracking);text-wrap:var(--p-wrap);margin-top:var(--p-margin-top)}.prose>:first-child{margin-top:0}.prose .lede{font-size:var(--lede-size);font-weight:var(--lede-weight);line-height:var(--lede-leading);color:var(--lede-color)}.prose strong,.prose b{font-weight:700}.prose em,.prose i{font-style:italic}.prose a{color:var(--color-link);text-underline-offset:2px;transition:color var(--duration) var(--ease);text-decoration:underline 1px}.prose a:hover,.prose a:focus-visible{color:var(--color-link-hover)}.prose a.button{color:var(--color-accent-contrast);text-decoration:none}.prose a.button:hover,.prose a.button:focus-visible{color:var(--color-accent-contrast)}.prose ul,.prose ol{font-size:var(--list-size);line-height:var(--list-leading);margin-top:var(--p-margin-top);padding-left:var(--list-indent)}.prose li+li,.prose li>ul,.prose li>ol{margin-top:var(--list-gap)}.prose blockquote{font-family:var(--quote-family);font-size:var(--quote-size);font-weight:var(--quote-weight);line-height:var(--quote-leading);font-style:var(--quote-style);border-left:var(--quote-border);margin-top:var(--space-m);margin-bottom:var(--space-m);padding-left:1.25rem}.prose blockquote p{margin-top:.5rem}.prose blockquote p:first-child{margin-top:0}.prose figure{margin-top:var(--space-m);margin-bottom:var(--space-m)}.prose img{border-radius:var(--radius-s);margin-top:var(--p-margin-top);margin-inline:auto}.prose figure img{margin-top:0}.prose figcaption{font-size:var(--caption-size);line-height:var(--caption-leading);color:var(--caption-color);text-align:center;margin-top:.6rem}.prose .table-scroll{margin-top:var(--space-m);overflow-x:auto}.prose table{border-collapse:collapse;font-feature-settings:var(--type-numeric-features);width:100%;font-size:.95rem}.prose th,.prose td{text-align:left;border-bottom:1px solid var(--color-border);vertical-align:top;padding:.6rem .75rem}.prose th{font-weight:700;font-family:var(--font-heading)}.prose code{font-family:var(--font-mono);border-radius:var(--radius-s);background:#0000000d;padding:.15em .35em;font-size:.9em}.prose pre{border-radius:var(--radius-s);margin-top:var(--space-m);padding:1rem;font-size:.9rem;overflow-x:auto}.prose pre code{background:0 0;padding:0}.prose hr{background:var(--color-rule);height:1px;margin-block:var(--space-m);border:0}
