@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/static/inter-latin-400-normal.C38fXH4l.woff2) format("woff2"),url(/static/inter-latin-400-normal.CyCys3Eg.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/static/inter-latin-500-normal.Cerq10X2.woff2) format("woff2"),url(/static/inter-latin-500-normal.BL9OpVg8.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/static/inter-latin-600-normal.LgqL8muc.woff2) format("woff2"),url(/static/inter-latin-600-normal.CiBQ2DWP.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/static/inter-latin-700-normal.Yt3aPRUw.woff2) format("woff2"),url(/static/inter-latin-700-normal.BLAVimhd.woff) format("woff")}@font-face{font-family:"Instrument Serif";font-style:normal;font-display:swap;font-weight:400;src:url(/static/instrument-serif-latin-400-normal.DnYpCC2O.woff2) format("woff2"),url(/static/instrument-serif-latin-400-normal.BVbkICAY.woff) format("woff")}@font-face{font-family:"Instrument Serif";font-style:italic;font-display:swap;font-weight:400;src:url(/static/instrument-serif-latin-400-italic.DKMiL14s.woff2) format("woff2"),url(/static/instrument-serif-latin-400-italic.u__WvvIK.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/static/jetbrains-mono-latin-400-normal.V6pRDFza.woff2) format("woff2"),url(/static/jetbrains-mono-latin-400-normal.6-qcROiO.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/static/jetbrains-mono-latin-500-normal.BWZEU5yA.woff2) format("woff2"),url(/static/jetbrains-mono-latin-500-normal.CJOVTJB7.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/static/jetbrains-mono-latin-600-normal.C8RAYTDA.woff2) format("woff2"),url(/static/jetbrains-mono-latin-600-normal.BfsvjouI.woff) format("woff")}:root{--color-bg: #fcfcfd;--color-bg-elevated: #ffffff;--color-bg-subtle: #f4f4f5;--color-bg-inverse: #0a0a0a;--color-bg-grid: rgba(10, 10, 10, .04);--color-text: #0a0a0a;--color-text-soft: #18181b;--color-text-muted: #52525b;--color-text-subtle: #71717a;--color-text-inverse: #fafafa;--color-accent: #4f46e5;--color-accent-strong: #4338ca;--color-accent-soft: rgba(79, 70, 229, .08);--color-accent-glow: rgba(79, 70, 229, .18);--color-rule: #e4e4e7;--color-rule-strong: #d4d4d8;--color-rule-faint: #f1f1f2;--color-success: #059669;--color-warning: #d97706;--color-error: #dc2626;--color-info: #0284c7;--color-affiliate: #b45309;--color-affiliate-strong: #92400e;--color-affiliate-cta: #d97706;--color-affiliate-soft: rgba(217, 119, 6, .07);--color-affiliate-bg: #fffaf2;--color-affiliate-border: #f1e2c9;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--font-display: "Instrument Serif", "Times New Roman", Times, Georgia, serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", "Cascadia Code", Consolas, monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: clamp(1.5rem, 2.5vw, 1.875rem);--text-3xl: clamp(1.875rem, 3.2vw, 2.5rem);--text-4xl: clamp(2.25rem, 4.5vw, 3.25rem);--text-display: clamp(2.75rem, 7.5vw, 5.5rem);--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--leading-tight: 1.02;--leading-snug: 1.2;--leading-normal: 1.55;--leading-relaxed: 1.7;--tracking-display: -.035em;--tracking-tight: -.012em;--tracking-normal: 0;--tracking-kicker: .14em;--tracking-mono: -.01em;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 2rem;--space-8: 2.5rem;--space-9: 3rem;--space-10: 4rem;--space-12: 5rem;--space-loose: clamp(2rem, 5vw, 4rem);--space-section: clamp(4rem, 9vw, 7rem);--radius-xs: 3px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--shadow-card: 0 1px 0 rgba(10, 10, 10, .04), 0 1px 2px rgba(10, 10, 10, .04);--shadow-card-hover: 0 1px 0 rgba(10, 10, 10, .06), 0 8px 24px -8px rgba(10, 10, 10, .1);--shadow-display: 0 1px 0 rgba(10, 10, 10, .04), 0 24px 64px -24px rgba(79, 70, 229, .18), 0 12px 32px -12px rgba(10, 10, 10, .1);--container-narrow: 38rem;--container-default: 52rem;--container-wide: 64rem;--container-edge: 80rem;--motion-fast: .12s;--motion-base: .22s;--motion-slow: .38s;--motion-page: .56s;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--focus-ring: 0 0 0 2px var(--color-bg), 0 0 0 4px var(--color-accent);--input-bg: var(--color-bg-elevated);--input-border: var(--color-rule);--input-border-strong: var(--color-rule-strong);--input-border-focus: var(--color-accent);--input-height: 2.75rem;--input-radius: var(--radius-sm)}@media (prefers-reduced-motion: reduce){:root{--motion-fast: 0ms;--motion-base: 0ms;--motion-slow: 0ms;--motion-page: 0ms}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;text-underline-offset:.2em;text-decoration-thickness:1px;background:var(--color-bg)}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--font-weight-regular);line-height:var(--leading-normal);letter-spacing:-.005em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"cv11" 1,"ss01" 1,"ss03" 1;min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);font-weight:var(--font-weight-semibold);color:var(--color-text);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight)}h1{font-size:var(--text-display);font-family:var(--font-display);font-weight:var(--font-weight-regular);line-height:var(--leading-tight);letter-spacing:var(--tracking-display)}h2{font-size:var(--text-3xl);margin-top:var(--space-9)}h3{font-size:var(--text-2xl);margin-top:var(--space-7)}h4{font-size:var(--text-xl);margin-top:var(--space-6)}h5{font-size:var(--text-lg);margin-top:var(--space-5)}h6{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-kicker);font-weight:var(--font-weight-semibold);color:var(--color-text-muted);margin-top:var(--space-4)}p{margin-top:var(--space-4);max-width:65ch;color:var(--color-text-soft)}ul,ol{margin-top:var(--space-4);padding-left:var(--space-6);max-width:65ch;color:var(--color-text-soft)}li+li{margin-top:var(--space-2)}a{color:var(--color-text);text-decoration:none;background-image:linear-gradient(to right,var(--color-accent),var(--color-accent));background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;transition:background-size var(--motion-base) var(--ease-out),color var(--motion-fast) var(--ease-out);padding-bottom:1px}a:hover{color:var(--color-accent);background-size:100% 1px}a:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:2px;background-size:100% 1px}a.prose-link{background-image:linear-gradient(to right,var(--color-rule-strong),var(--color-rule-strong));background-size:100% 1px}a.prose-link:hover{background-image:linear-gradient(to right,var(--color-accent),var(--color-accent))}strong{font-weight:var(--font-weight-semibold);color:var(--color-text)}em{font-style:italic}code,kbd,samp{font-family:var(--font-mono);font-size:.92em;background:var(--color-bg-subtle);padding:.1em .35em;border-radius:var(--radius-xs);letter-spacing:var(--tracking-mono)}hr{border:none;height:1px;background:var(--color-rule);margin:var(--space-9) 0}img,svg{max-width:100%;height:auto;display:block}table{width:100%;border-collapse:collapse;margin-top:var(--space-6);font-size:var(--text-sm)}th,td{text-align:left;padding:var(--space-3) var(--space-4) var(--space-3) 0;border-bottom:1px solid var(--color-rule)}th{font-weight:var(--font-weight-medium);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--tracking-kicker);font-size:var(--text-xs)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:var(--color-text);color:var(--color-text-inverse);border:1px solid var(--color-text);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-5);font-weight:var(--font-weight-medium);font-size:var(--text-sm);letter-spacing:-.005em;transition:background var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out)}button:hover{background:var(--color-accent-strong);border-color:var(--color-accent-strong)}button:active{transform:translateY(.5px)}button:focus-visible{outline:none;box-shadow:var(--focus-ring)}button.secondary{background:transparent;color:var(--color-text);border-color:var(--color-rule-strong)}button.secondary:hover{background:var(--color-bg-subtle);color:var(--color-text);border-color:var(--color-rule-strong)}button.ghost{background:transparent;color:var(--color-text);border:none;padding:var(--space-2) 0}button.ghost:hover{background:transparent;color:var(--color-accent)}input[type=text],input[type=number],input[type=email],select,textarea{width:100%;height:var(--input-height);padding:0 var(--space-4);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--input-radius);font-family:var(--font-sans);font-size:var(--text-base);color:var(--color-text);transition:border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),background var(--motion-fast) var(--ease-out);appearance:none;letter-spacing:-.005em}input[type=number]{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}textarea{height:auto;min-height:5rem;padding-top:var(--space-3);padding-bottom:var(--space-3);resize:vertical}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--input-border-focus);box-shadow:0 0 0 4px var(--color-accent-soft)}input:hover:not(:focus),select:hover:not(:focus),textarea:hover:not(:focus){border-color:var(--input-border-strong)}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2352525b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right var(--space-3) center;background-size:1rem 1rem;background-repeat:no-repeat;padding-right:2.25rem;cursor:pointer}input[type=checkbox]{width:1rem;height:1rem;margin-right:var(--space-2);accent-color:var(--color-accent)}input::placeholder{color:var(--color-text-subtle)}input:invalid:not(:placeholder-shown){border-color:var(--color-error)}label{display:block;font-weight:var(--font-weight-medium);font-size:var(--text-xs);margin-bottom:var(--space-2);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--tracking-kicker)}.field-hint{font-size:var(--text-xs);color:var(--color-text-muted);margin-top:var(--space-2)}.field-error{font-size:var(--text-xs);color:var(--color-error);margin-top:var(--space-2);font-weight:var(--font-weight-medium)}.container{width:100%;max-width:var(--container-default);margin-left:auto;margin-right:auto;padding-left:var(--space-5);padding-right:var(--space-5)}.container-wide{max-width:var(--container-wide)}.container-edge{max-width:var(--container-edge)}.container-narrow{max-width:var(--container-narrow)}.stack>*+*{margin-top:var(--space-4)}.stack-loose>*+*{margin-top:var(--space-7)}.skip-link{position:absolute;top:-100px;left:var(--space-4);background:var(--color-text);color:var(--color-text-inverse);padding:var(--space-3) var(--space-5);border-radius:var(--radius-sm);text-decoration:none;z-index:100;transition:top var(--motion-base) var(--ease-out)}.skip-link:focus{top:var(--space-4)}.kicker{display:inline-block;font-size:.75rem;text-transform:uppercase;letter-spacing:var(--tracking-kicker);color:var(--color-text-muted);font-weight:var(--font-weight-semibold);font-family:var(--font-sans);margin:0}.numeric,.result-primary,.result-row__value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1,"ss01" 1;letter-spacing:var(--tracking-mono)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}main{flex:1}.blog-post,.editorial{padding-top:var(--space-10);padding-bottom:var(--space-section)}.blog-post__header{margin-bottom:var(--space-9);padding-bottom:var(--space-loose);border-bottom:1px solid var(--color-rule)}.blog-post__kicker{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-kicker);color:var(--color-text-muted);font-weight:var(--font-weight-semibold);margin:0}.blog-post__meta{font-size:var(--text-sm);color:var(--color-text-muted);margin-top:var(--space-3)}.blog-post h1,.editorial h1{margin-top:var(--space-4);font-family:var(--font-display);font-weight:var(--font-weight-regular);font-size:clamp(2.5rem,6vw,3.75rem);line-height:var(--leading-tight);letter-spacing:var(--tracking-display);max-width:24ch}.blog-post__lede{margin-top:var(--space-6);font-size:var(--text-xl);color:var(--color-text-muted);line-height:var(--leading-relaxed);max-width:56ch!important}.blog-post h2,.editorial h2{font-family:var(--font-display);font-weight:var(--font-weight-regular);font-size:var(--text-3xl);letter-spacing:var(--tracking-display);line-height:var(--leading-snug);margin-top:var(--space-9)}.blog-post h3,.editorial h3{font-size:var(--text-xl);font-weight:var(--font-weight-semibold);font-family:var(--font-sans);margin-top:var(--space-7);letter-spacing:var(--tracking-tight)}.blog-post p,.editorial p{font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--color-text-soft)}.blog-post a,.editorial a{color:var(--color-text);background-image:linear-gradient(to right,var(--color-rule-strong),var(--color-rule-strong));background-size:100% 1px;background-position:0 100%;background-repeat:no-repeat}.blog-post a:hover,.editorial a:hover{color:var(--color-accent);background-image:linear-gradient(to right,var(--color-accent),var(--color-accent))}::selection{background:var(--color-accent);color:var(--color-text-inverse)}html.js [data-reveal]{opacity:0;transform:translateY(12px);transition:opacity var(--motion-slow) var(--ease-out),transform var(--motion-slow) var(--ease-out);transition-delay:var(--reveal-delay, 0ms)}html.js [data-reveal].is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion: reduce){html.js [data-reveal]{opacity:1;transform:none}}@view-transition{navigation: auto;}::view-transition-old(root),::view-transition-new(root){animation-duration:var(--motion-page);animation-timing-function:var(--ease-out)}@media print{.no-print,.masthead,.colophon,.adunit,.ezoic-slot,.affiliates,.cluster,.calc__actions,.calc__back{display:none!important}html.js [data-reveal]{opacity:1;transform:none}.calc__panel{box-shadow:none}body{background:#fff}}.masthead[data-astro-cid-dmqsi53g]{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--color-bg) 88%,transparent);backdrop-filter:saturate(150%) blur(10px);-webkit-backdrop-filter:saturate(150%) blur(10px);border-bottom:1px solid transparent;transition:border-color var(--motion-base) var(--ease-out),background var(--motion-base) var(--ease-out)}.masthead[data-astro-cid-dmqsi53g].is-scrolled{border-bottom-color:var(--color-rule);background:color-mix(in srgb,var(--color-bg) 94%,transparent)}.masthead__inner[data-astro-cid-dmqsi53g]{display:flex;align-items:center;justify-content:space-between;padding-top:var(--space-4);padding-bottom:var(--space-4)}.masthead__brand[data-astro-cid-dmqsi53g]{display:inline-flex;align-items:center;gap:var(--space-2);text-decoration:none;background:none;color:var(--color-text);font-family:var(--font-sans);font-weight:var(--font-weight-semibold);font-size:var(--text-base);letter-spacing:-.01em}.masthead__brand[data-astro-cid-dmqsi53g]:hover{color:var(--color-text);background:none}.masthead__mark[data-astro-cid-dmqsi53g]{display:inline-block;width:10px;height:10px;background:var(--color-accent);border-radius:2px;transform:rotate(45deg);box-shadow:0 0 0 1px var(--color-accent),0 0 12px var(--color-accent-glow);transition:transform var(--motion-base) var(--ease-spring)}.masthead__brand[data-astro-cid-dmqsi53g]:hover .masthead__mark[data-astro-cid-dmqsi53g]{transform:rotate(135deg)}.masthead__word[data-astro-cid-dmqsi53g]{line-height:1}.masthead__nav[data-astro-cid-dmqsi53g]{display:flex;gap:var(--space-6)}.masthead__nav[data-astro-cid-dmqsi53g] a[data-astro-cid-dmqsi53g]{color:var(--color-text-soft);background:none;text-decoration:none;font-size:var(--text-sm);font-weight:var(--font-weight-medium);transition:color var(--motion-fast) var(--ease-out);padding:var(--space-3) var(--space-2);margin:calc(-1 * var(--space-3)) calc(-1 * var(--space-2))}.masthead__nav[data-astro-cid-dmqsi53g] a[data-astro-cid-dmqsi53g]:hover{color:var(--color-accent);background:none}.colophon[data-astro-cid-dmqsi53g]{margin-top:var(--space-section);padding:var(--space-9) 0 var(--space-7);border-top:1px solid var(--color-rule)}.colophon__grid[data-astro-cid-dmqsi53g]{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,2fr);gap:var(--space-9);align-items:start}.colophon__brand[data-astro-cid-dmqsi53g]{display:inline-flex;align-items:center;gap:var(--space-2);text-decoration:none;background:none;color:var(--color-text);font-weight:var(--font-weight-semibold);font-size:var(--text-lg)}.colophon__brand[data-astro-cid-dmqsi53g]:hover{color:var(--color-text);background:none}.colophon__mark[data-astro-cid-dmqsi53g]{display:inline-block;width:10px;height:10px;background:var(--color-accent);border-radius:2px;transform:rotate(45deg)}.colophon__tagline[data-astro-cid-dmqsi53g]{margin-top:var(--space-3);font-size:var(--text-sm);color:var(--color-text-muted);max-width:32ch}.colophon__cols[data-astro-cid-dmqsi53g]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-7)}.colophon__cols[data-astro-cid-dmqsi53g] ul[data-astro-cid-dmqsi53g]{list-style:none;padding:0;margin:var(--space-3) 0 0}.colophon__cols[data-astro-cid-dmqsi53g] li[data-astro-cid-dmqsi53g]{margin-top:var(--space-2);font-size:var(--text-sm)}.colophon__cols[data-astro-cid-dmqsi53g] a[data-astro-cid-dmqsi53g]{color:var(--color-text-soft);background:none;font-size:var(--text-sm)}.colophon__cols[data-astro-cid-dmqsi53g] a[data-astro-cid-dmqsi53g]:hover{color:var(--color-accent);background:none}.colophon__legal[data-astro-cid-dmqsi53g]{margin-top:var(--space-9);padding-top:var(--space-5);border-top:1px solid var(--color-rule);display:flex;justify-content:space-between;gap:var(--space-5);font-size:var(--text-xs);color:var(--color-text-muted);flex-wrap:wrap}@media (max-width: 720px){.colophon__grid[data-astro-cid-dmqsi53g]{grid-template-columns:1fr;gap:var(--space-7)}.colophon__cols[data-astro-cid-dmqsi53g]{grid-template-columns:repeat(2,1fr);gap:var(--space-6)}}
