@font-face{font-family:Fraunces;src:url(/_astro/Fraunces-variable.BFiHWXHe.woff2) format("woff2-variations");font-weight:100 900;font-display:optional}@font-face{font-family:Public Sans;src:url(/_astro/PublicSans-variable.CfmHDoBS.woff2) format("woff2-variations");font-weight:100 900;font-display:optional}@font-face{font-family:Space Grotesk;src:url(/_astro/SpaceGrotesk-variable.BLl_DBSD.woff2) format("woff2-variations");font-weight:300 700;font-display:optional}@font-face{font-family:IBM Plex Sans;src:url(/_astro/IBMPlexSans-variable.GLwZqOF-.woff2) format("woff2-variations");font-weight:100 700;font-display:optional}@font-face{font-family:Newsreader;src:url(/_astro/Newsreader-variable.CNMQXzKu.woff2) format("woff2-variations");font-weight:200 800;font-display:optional}@font-face{font-family:Manrope;src:url(/_astro/Manrope-variable.Dz3WzVT_.woff2) format("woff2-variations");font-weight:200 800;font-display:optional}:root,[data-brand=hartwell]{--bg: #faf8f4;--surface: #ffffff;--surface-2: #f6e7e4;--ink: #1d2533;--muted: #5a6478;--accent: #9e3530;--on-accent: #ffffff;--border: #e4ded2;--border-strong: #667084;--success: #1f6b4c;--warning: #8a5a00;--danger: #b3261e;--font-display: "Fraunces", Georgia, "Times New Roman", serif;--font-body: "Public Sans", "Helvetica Neue", Arial, sans-serif;--radius: 4px;--radius-sm: 2px;--radius-lg: 10px;--shadow-1: 0 1px 2px rgb(29 37 51 / .05), 0 4px 16px rgb(29 37 51 / .06);--shadow-2: 0 2px 4px rgb(29 37 51 / .07), 0 12px 32px rgb(29 37 51 / .1)}[data-brand=hartwell][data-theme=dark]{--bg: #13161c;--surface: #1b202a;--surface-2: #3a2725;--ink: #ece9e3;--muted: #a4abb9;--accent: #e8998b;--on-accent: #23120f;--border: #2c333f;--border-strong: #5a6578;--success: #7dd1a5;--warning: #e5c06b;--danger: #f08c7e;--shadow-1: 0 1px 2px rgb(0 0 0 / .4), 0 4px 16px rgb(0 0 0 / .35);--shadow-2: 0 2px 4px rgb(0 0 0 / .5), 0 12px 32px rgb(0 0 0 / .45)}[data-brand=calder]{--bg: #f6f8f8;--surface: #ffffff;--surface-2: #e1efec;--ink: #152226;--muted: #4e5f66;--accent: #0c6b5f;--on-accent: #ffffff;--border: #dce4e4;--border-strong: #5d6e75;--success: #1b6e48;--warning: #8a5a00;--danger: #b3261e;--font-display: "Space Grotesk", "Helvetica Neue", Arial, sans-serif;--font-body: "IBM Plex Sans", "Helvetica Neue", Arial, sans-serif;--radius: 6px;--radius-sm: 4px;--radius-lg: 12px;--shadow-1: 0 1px 2px rgb(21 34 38 / .05), 0 4px 16px rgb(21 34 38 / .06);--shadow-2: 0 2px 4px rgb(21 34 38 / .07), 0 12px 32px rgb(21 34 38 / .1)}[data-brand=calder][data-theme=dark]{--bg: #0e1315;--surface: #161d1f;--surface-2: #173230;--ink: #e7eceb;--muted: #9daeaf;--accent: #6fcdba;--on-accent: #0a1f1b;--border: #283234;--border-strong: #5b6d71;--success: #82d3a8;--warning: #e5c06b;--danger: #f08c7e;--shadow-1: 0 1px 2px rgb(0 0 0 / .4), 0 4px 16px rgb(0 0 0 / .35);--shadow-2: 0 2px 4px rgb(0 0 0 / .5), 0 12px 32px rgb(0 0 0 / .45)}[data-brand=dunmore]{--bg: #f4f6f8;--surface: #ffffff;--surface-2: #f4e5dc;--ink: #151f2b;--muted: #4e5c6e;--accent: #a03e14;--on-accent: #ffffff;--border: #dbe1e8;--border-strong: #5a6a7c;--success: #1f6b4c;--warning: #8a5a00;--danger: #b3261e;--font-display: "Newsreader", Georgia, "Times New Roman", serif;--font-body: "Manrope", "Helvetica Neue", Arial, sans-serif;--radius: 2px;--radius-sm: 2px;--radius-lg: 6px;--shadow-1: 0 1px 2px rgb(21 31 43 / .05), 0 4px 16px rgb(21 31 43 / .06);--shadow-2: 0 2px 4px rgb(21 31 43 / .07), 0 12px 32px rgb(21 31 43 / .1)}[data-brand=dunmore][data-theme=dark]{--bg: #111419;--surface: #191d24;--surface-2: #38251c;--ink: #e9ecf1;--muted: #9da8b7;--accent: #ef9668;--on-accent: #2a1206;--border: #2b323c;--border-strong: #5c6a7e;--success: #7dd1a5;--warning: #e5c06b;--danger: #f08c7e;--shadow-1: 0 1px 2px rgb(0 0 0 / .4), 0 4px 16px rgb(0 0 0 / .35);--shadow-2: 0 2px 4px rgb(0 0 0 / .5), 0 12px 32px rgb(0 0 0 / .45)}:root{--maxw: 76rem;--header-h: 4rem;--speed-fast: .15s;--speed-ui: .22s;--ease-out: cubic-bezier(.22, .61, .36, 1);--ease-in: cubic-bezier(.55, .06, .68, .19);color-scheme:light dark}[data-theme=light]{color-scheme:light}[data-theme=dark]{color-scheme:dark}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 1rem)}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:1rem;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:clip}img,svg,video,canvas{display:block;max-width:100%;height:auto}input,button,textarea,select{font:inherit;color:inherit}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{text-decoration-thickness:2px}h1,h2,h3,h4{font-family:var(--font-display);font-weight:560;line-height:1.12;letter-spacing:-.015em;text-wrap:balance}h1{font-size:clamp(2.4rem,5vw,3.9rem)}h2{font-size:clamp(1.7rem,3.2vw,2.5rem)}h3{font-size:1.25rem;letter-spacing:-.01em}p{text-wrap:pretty}::selection{background:var(--accent);color:var(--on-accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}ul.list-plain,ol.list-plain{list-style:none;margin:0;padding:0}.skip-link{position:absolute;left:1rem;top:-3rem;z-index:100;background:var(--accent);color:var(--on-accent);padding:.6rem 1rem;border-radius:var(--radius);font-weight:600;text-decoration:none;transition:top var(--speed-fast) var(--ease-out)}.skip-link:focus-visible{top:.75rem}.container{max-width:var(--maxw);margin-inline:auto;padding-inline:1.5rem}.section{padding-block:4.5rem}.section-tight{padding-block:3rem}.section-head{max-width:46rem;margin-bottom:2.2rem}.section-head p{color:var(--muted);margin-top:.6rem;font-size:1.06rem}.eyebrow{color:var(--accent);font-weight:700;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase}.page-head{padding-block:3.5rem 2rem;border-bottom:1px solid var(--border)}.page-head .lede{color:var(--muted);font-size:1.12rem;max-width:52ch;margin-top:.9rem}main{min-height:60vh}.grid{display:grid;gap:1.1rem}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:1023px){.grid-3,.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:639px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.btn{display:inline-flex;align-items:center;gap:.5rem;border-radius:var(--radius);padding:.68rem 1.15rem;font-size:.95rem;font-weight:600;line-height:1.2;white-space:nowrap;text-decoration:none;border:1.5px solid transparent;background:transparent;cursor:pointer;transition:background-color var(--speed-fast) var(--ease-out),border-color var(--speed-fast) var(--ease-out),transform var(--speed-fast) var(--ease-out)}.btn:active{transform:scale(.98)}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:hover{filter:brightness(1.08)}[data-theme=dark] .btn-primary:hover{filter:brightness(1.12)}.btn-ghost{border-color:var(--border-strong);color:var(--ink);background:transparent}.btn-ghost:hover{background:var(--surface-2);border-color:var(--accent)}.btn-quiet{color:var(--accent);padding-inline:.4rem}.btn-quiet:hover{text-decoration:underline;text-underline-offset:4px}.btn[disabled],.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;transform:none}.chip{display:inline-flex;align-items:center;gap:.4rem;border:1.5px solid var(--border-strong);border-radius:999px;padding:.34rem .85rem;font-size:.85rem;font-weight:500;color:var(--ink);background:transparent;cursor:pointer;white-space:nowrap;transition:background-color var(--speed-fast) var(--ease-out),border-color var(--speed-fast) var(--ease-out),color var(--speed-fast) var(--ease-out)}.chip:hover{border-color:var(--accent)}.chip[aria-pressed=true],.chip[aria-checked=true]{background:var(--surface-2);border-color:var(--accent);color:var(--accent);font-weight:600}.chip .chip-count{color:var(--muted);font-variant-numeric:tabular-nums}.chip[aria-pressed=true] .chip-count,.chip[aria-checked=true] .chip-count{color:var(--accent)}.tag{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);background:var(--surface-2);border-radius:999px;padding:.18rem .6rem}.card{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);padding:1.35rem;position:relative}.card-link{text-decoration:none;color:inherit;display:block;height:100%}.card-link:hover{border-color:var(--border-strong);box-shadow:var(--shadow-1)}.card-link h3{color:var(--ink);margin-top:.55rem}.card-link:hover h3{color:var(--accent)}.card p{color:var(--muted);font-size:.93rem;margin-top:.45rem}.card .meta{color:var(--muted);font-size:.82rem;display:flex;gap:1rem;flex-wrap:wrap;margin-top:.8rem}.site-header{position:sticky;top:0;z-index:50;background:var(--bg);border-bottom:1px solid var(--border);height:var(--header-h)}.site-header .bar{display:flex;align-items:center;gap:1.6rem;height:var(--header-h)}.wordmark{font-family:var(--font-display);font-weight:620;font-size:1.16rem;letter-spacing:-.01em;color:var(--ink);text-decoration:none;white-space:nowrap}.wordmark .dot{color:var(--accent)}.site-nav{display:flex;gap:1.4rem}.site-nav a{color:var(--muted);text-decoration:none;font-size:.93rem;font-weight:500;padding-block:.35rem;white-space:nowrap}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--ink)}.site-nav a[aria-current=page]{box-shadow:inset 0 -2px 0 var(--accent)}.header-tools{margin-left:auto;display:flex;align-items:center;gap:.65rem}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--radius);border:1.5px solid var(--border);background:transparent;color:var(--ink);cursor:pointer;transition:border-color var(--speed-fast) var(--ease-out),background-color var(--speed-fast) var(--ease-out)}.icon-btn:hover{border-color:var(--border-strong);background:var(--surface-2)}.menu-panel{position:fixed;inset:var(--header-h) 0 0 0;background:var(--bg);z-index:40;padding:1.5rem;display:none;flex-direction:column;gap:.25rem;border-top:1px solid var(--border);overflow-y:auto}.menu-panel[data-open=true]{display:flex}.menu-panel a{color:var(--ink);text-decoration:none;font-family:var(--font-display);font-size:1.45rem;font-weight:560;padding:.65rem 0;border-bottom:1px solid var(--border)}.menu-backdrop{position:fixed;inset:0;z-index:30;background:#0006;border:0;display:none}.menu-backdrop[data-open=true]{display:block}@media(min-width:1024px){.menu-toggle,.menu-panel,.menu-backdrop{display:none!important}}@media(max-width:1023px){.site-nav,.header-cta-desktop{display:none}}@media(max-width:480px){.header-cta{display:none}}@media(max-width:389px){.wordmark{font-size:.98rem;letter-spacing:-.015em}.site-header .bar{gap:1rem}.header-tools{gap:.5rem}}.site-footer{border-top:1px solid var(--border);margin-top:5rem;background:var(--surface)}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:2rem;padding-block:3.2rem 2rem}@media(max-width:1023px){.footer-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:639px){.footer-grid{grid-template-columns:1fr}}.footer-brand p{color:var(--muted);font-size:.9rem;margin-top:.7rem;max-width:30ch}.site-footer h2{font-size:.85rem;font-family:var(--font-body);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.8rem}.site-footer ul{list-style:none;margin:0;padding:0}.site-footer li+li{margin-top:.45rem}.site-footer li a{color:var(--ink);text-decoration:none;font-size:.92rem}.site-footer li a:hover{color:var(--accent);text-decoration:underline}.footer-legal{border-top:1px solid var(--border);padding-block:1.1rem;color:var(--muted);font-size:.84rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.stat-band{display:flex;gap:2.4rem;flex-wrap:wrap;border-top:1px solid var(--border);padding-top:1.4rem}.stat-n{font-family:var(--font-display);font-size:clamp(1.7rem,2.4vw,2.2rem);font-weight:600;line-height:1.05;display:block;font-variant-numeric:tabular-nums}.stat-l{color:var(--muted);font-size:.85rem}.field{display:flex;flex-direction:column;gap:.35rem}.field label{font-weight:600;font-size:.92rem}.field .hint{color:var(--muted);font-size:.82rem}.input,.field input,.field select,.field textarea{border:1.5px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);padding:.6rem .8rem;color:var(--ink);width:100%}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible,.input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.field .error{color:var(--danger);font-size:.84rem;font-weight:600}.form-note{color:var(--muted);font-size:.85rem}.status-panel{background:var(--surface);border:1.5px solid var(--success);border-radius:var(--radius);padding:1.4rem}.table-wrap{overflow-x:auto;border:1.5px solid var(--border);border-radius:var(--radius);background:var(--surface)}table.data{border-collapse:collapse;width:100%;font-size:.92rem}table.data th,table.data td{text-align:left;padding:.7rem 1rem;border-bottom:1px solid var(--border)}table.data th{font-weight:600;color:var(--muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.06em}table.data tr:last-child td{border-bottom:0}table.data td{font-variant-numeric:tabular-nums}@media(max-width:639px){table.data.stacks-cards thead{display:none}table.data.stacks-cards tr{display:block;border-bottom:1px solid var(--border);padding:.6rem 0}table.data.stacks-cards td{display:flex;justify-content:space-between;gap:1rem;border:0;padding:.3rem 1rem}table.data.stacks-cards td:before{content:attr(data-th);color:var(--muted);font-weight:600}}details.acc{border:1.5px solid var(--border);border-radius:var(--radius);background:var(--surface)}details.acc+details.acc{margin-top:.6rem}details.acc summary{cursor:pointer;list-style:none;padding:.95rem 1.15rem;font-weight:600;display:flex;justify-content:space-between;align-items:center;gap:1rem}details.acc summary::-webkit-details-marker{display:none}details.acc summary:after{content:"";width:.65rem;height:.65rem;border-right:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(45deg);transition:transform var(--speed-ui) var(--ease-out);flex-shrink:0}details.acc[open] summary:after{transform:rotate(225deg)}details.acc .acc-body{padding:0 1.15rem 1.1rem;color:var(--muted)}.tabs{display:flex;gap:.25rem;border-bottom:2px solid var(--border);flex-wrap:wrap}.tabs [role=tab]{border:0;background:transparent;padding:.7rem 1.05rem;font-weight:600;font-size:.95rem;color:var(--muted);cursor:pointer;box-shadow:inset 0 -2px 0 transparent;white-space:nowrap}.tabs [role=tab][aria-selected=true]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--accent)}.tabs [role=tab]:hover{color:var(--ink)}.chart-wrap{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);padding:1.2rem}.chart-wrap figcaption{color:var(--muted);font-size:.84rem;margin-top:.7rem}.chart-point{cursor:pointer}.chart-tooltip{position:fixed;z-index:60;background:var(--ink);color:var(--bg);border-radius:var(--radius);padding:.45rem .7rem;font-size:.82rem;pointer-events:none;opacity:0;transition:opacity var(--speed-fast) var(--ease-out);max-width:16rem}.chart-tooltip[data-show=true]{opacity:1}.demo-pill{position:fixed;right:1rem;bottom:1rem;z-index:70;background:var(--surface);border:1.5px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);padding:.8rem;width:15.5rem;font-size:.85rem}.demo-pill h2{font-family:var(--font-body);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:.55rem}.demo-pill .row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.5rem}.demo-pill select{border:1.5px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);padding:.25rem .4rem;font-size:.82rem}.demo-pill .pill-close{position:absolute;top:.4rem;right:.4rem}.demo-pill-toggle{position:fixed;right:1rem;bottom:1rem;z-index:70}@media(max-width:1023px){.demo-pill-toggle[data-waiting],.demo-pill[data-waiting]{display:none}}.demo-pill-toggle{margin-bottom:1rem}.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:3rem;align-items:center;padding-block:4.2rem 3.4rem;min-height:min(calc(100svh - var(--header-h)),960px)}.hero-art,.hero-art-canvas{position:relative}.hero-art svg{width:100%;height:auto}.hero-art{--space-hero-ctrl: .75rem}.hero-art-row{display:flex;justify-content:flex-end;align-items:center;margin-top:var(--space-hero-ctrl);padding-right:var(--space-hero-ctrl)}@media(max-width:1023px){.hero{grid-template-columns:1fr;gap:2rem;padding-block:2.8rem 2.4rem;min-height:0}.hero-art{--space-hero-ctrl: .55rem}}@view-transition{navigation:auto}@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}}.reveal{opacity:0;transform:translateY(14px);transition:opacity .3s var(--ease-out),transform .3s var(--ease-out)}.reveal.in-view{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}@media print{.site-header,.site-footer,.demo-pill,.demo-pill-toggle,.skip-link,.chart-tooltip{display:none!important}body{background:#fff;color:#000}.reveal{opacity:1;transform:none}main{min-height:0}a{color:#000;text-decoration:none}.section{padding-block:1.2rem}}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}[data-demo]:after{content:none}.mt-0{margin-top:0}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.6rem}.mt-4{margin-top:2.4rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.6rem}.flex{display:flex}.wrap-flex{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center}.muted{color:var(--muted)}.small{font-size:.88rem}.center{text-align:center}
