:root{color-scheme:light dark;--color-ground:#f1f4f2;--color-surface:#fff;--color-sunken:#e4eae7;--color-ink:#0e1a17;--color-rule:#c9d4d0;--color-rule-strong:#a9b8b3;--color-accent:#0d5645;--color-accent-hover:#0a4235;--color-accent-soft:#dceae4;--color-accent-on:#fff;--color-signal:#8a4b0b;--color-signal-soft:#f4e8d8;--color-inverse-ground:#0b1512;--color-inverse-ink:#e6edea;--color-inverse-rule:#24332e;--color-inverse-accent:#58c4a2;--text-strong:var(--color-ink);--text-body:color-mix(in srgb, var(--color-ink) 88%, transparent);--text-muted:color-mix(in srgb, var(--color-ink) 74%, transparent);--text-quiet:color-mix(in srgb, var(--color-ink) 62%, transparent);--font-display:var(--font-display-family), "Iowan Old Style", "Charter", Cambria, Georgia, "Times New Roman", serif;--font-sans:var(--font-sans-family), ui-sans-serif, system-ui, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--fs-display:clamp(2.5rem, 1.6rem + 3.6vw, 4rem);--fs-h1:clamp(2.125rem, 1.5rem + 2.6vw, 3.25rem);--fs-h2:clamp(1.625rem, 1.3rem + 1.4vw, 2.125rem);--fs-h3:clamp(1.25rem, 1.1rem + .6vw, 1.5rem);--fs-h4:1.125rem;--fs-lede:clamp(1.125rem, 1.05rem + .35vw, 1.3125rem);--fs-body:1.0625rem;--fs-sm:.9375rem;--fs-xs:.8125rem;--fs-eyebrow:.75rem;--lh-display:1.04;--lh-heading:1.14;--lh-lede:1.5;--lh-body:1.62;--lh-tight:1.3;--tr-display:-.02em;--tr-heading:-.015em;--tr-body:0;--tr-eyebrow:.11em;--tr-numeral:.01em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;--container-max:1180px;--container-narrow:760px;--container-pad:2rem;--container-pad-mobile:1.25rem;--measure-prose:68ch;--header-height:68px;--section-pad:clamp(3.5rem, 6vw, 6rem);--radius-sm:3px;--radius-md:4px;--radius-lg:6px;--radius-pill:999px;--hairline:1px;--shadow-hover:0 1px 2px color-mix(in srgb, var(--color-ink) 8%, transparent), 0 8px 24px color-mix(in srgb, var(--color-ink) 6%, transparent);--shadow-none:none;--ease:cubic-bezier(.2, 0, .2, 1);--duration:.16s;--focus-ring:2px;--focus-offset:3px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-ground:#0a1311;--color-surface:#101b18;--color-sunken:#060d0c;--color-ink:#e6edea;--color-rule:#22322d;--color-rule-strong:#36493f;--color-accent:#58c4a2;--color-accent-hover:#7bd5b9;--color-accent-soft:#12302a;--color-accent-on:#06201a;--color-signal:#e0a55f;--color-signal-soft:#2b2113;--color-inverse-ground:#16221f;--color-inverse-ink:#eef3f1;--color-inverse-rule:#2c3d37;--color-inverse-accent:#7bd5b9;--shadow-hover:0 1px 2px #0006, 0 8px 24px #00000059}}:root[data-theme=dark]{--color-ground:#0a1311;--color-surface:#101b18;--color-sunken:#060d0c;--color-ink:#e6edea;--color-rule:#22322d;--color-rule-strong:#36493f;--color-accent:#58c4a2;--color-accent-hover:#7bd5b9;--color-accent-soft:#12302a;--color-accent-on:#06201a;--color-signal:#e0a55f;--color-signal-soft:#2b2113;--color-inverse-ground:#16221f;--color-inverse-ink:#eef3f1;--color-inverse-rule:#2c3d37;--color-inverse-accent:#7bd5b9;--shadow-hover:0 1px 2px #0006, 0 8px 24px #00000059}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + var(--space-4))}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{background:var(--color-ground);min-height:100vh;color:var(--text-body);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);font-weight:var(--weight-regular);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-variant-numeric:tabular-nums lining-nums;margin:0}h1,h2,h3,h4,h5,h6{color:var(--text-strong);font-family:var(--font-display);font-weight:var(--weight-semibold);line-height:var(--lh-heading);letter-spacing:var(--tr-heading);text-wrap:balance;margin:0}h1{font-size:var(--fs-h1);line-height:var(--lh-display);letter-spacing:var(--tr-display)}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3)}h4{font-size:var(--fs-h4)}p,ul,ol,dl,figure,blockquote,pre,table{margin:0}img,svg,video{max-width:100%;height:auto;display:block}a{color:var(--color-accent);text-underline-offset:.18em;text-decoration:underline 1px;text-decoration-color:color-mix(in srgb, var(--color-accent) 40%, transparent);transition:color var(--duration) var(--ease), text-decoration-color var(--duration) var(--ease)}a:hover{color:var(--color-accent-hover);text-decoration-color:currentColor}:focus-visible{outline:var(--focus-ring) solid var(--color-accent);outline-offset:var(--focus-offset);border-radius:var(--radius-sm)}:focus:not(:focus-visible){outline:none}::selection{background:color-mix(in srgb, var(--color-accent) 24%, transparent);color:var(--text-strong)}hr{border:0;border-top:var(--hairline) solid var(--color-rule);margin:var(--space-6) 0}strong,b{font-weight:var(--weight-semibold);color:var(--text-strong)}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:.92em}button,input,select,textarea{font:inherit;color:inherit}.container{width:100%;max-width:var(--container-max);padding-inline:var(--container-pad);margin-inline:auto}.container-narrow{width:100%;max-width:var(--container-narrow);padding-inline:var(--container-pad);margin-inline:auto}@media (width<=640px){.container,.container-narrow{padding-inline:var(--container-pad-mobile)}}.section{padding-block:var(--section-pad)}.section+.section{border-top:var(--hairline) solid var(--color-rule)}.stack>*+*{margin-top:var(--space-4)}.stack-lg>*+*{margin-top:var(--space-6)}.skip-link{left:var(--space-4);top:calc(var(--space-4) * -6);z-index:100;background:var(--color-accent);color:var(--color-accent-on);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--weight-medium);transition:top var(--duration) var(--ease);text-decoration:none;position:absolute}.skip-link:focus{top:var(--space-4);color:var(--color-accent-on)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{align-items:center;gap:var(--space-3);margin:0 0 var(--space-4);font-family:var(--font-sans);font-size:var(--fs-eyebrow);font-weight:var(--weight-semibold);letter-spacing:var(--tr-eyebrow);text-transform:uppercase;color:var(--color-signal);display:flex}.eyebrow:after{content:"";height:var(--hairline);background:var(--color-rule);flex:1}.eyebrow-num{font-variant-numeric:tabular-nums;color:var(--text-quiet)}.lede{font-size:var(--fs-lede);line-height:var(--lh-lede);color:var(--text-muted);text-wrap:pretty;max-width:62ch}.lede-strong{color:var(--text-body)}.btn{justify-content:center;align-items:center;gap:var(--space-2);border:var(--hairline) solid transparent;border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--weight-medium);cursor:pointer;transition:background-color var(--duration) var(--ease), border-color var(--duration) var(--ease), color var(--duration) var(--ease);padding:.72rem 1.35rem;line-height:1.25;text-decoration:none;display:inline-flex}.btn-primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-on)}.btn-primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover);color:var(--color-accent-on);text-decoration:none}.btn-secondary{border-color:var(--color-rule-strong);color:var(--text-strong);background:0 0}.btn-secondary:hover{border-color:var(--color-accent);color:var(--color-accent);text-decoration:none}.btn-group{gap:var(--space-3);flex-wrap:wrap;display:flex}.link-arrow{align-items:center;gap:var(--space-2);font-size:var(--fs-sm);font-weight:var(--weight-medium);text-decoration:none;display:inline-flex}.link-arrow:after{content:"";width:.75rem;height:var(--hairline);transition:width var(--duration) var(--ease);background:currentColor}.link-arrow:hover:after{width:1.25rem}.site-header{z-index:50;background:color-mix(in srgb, var(--color-ground) 92%, transparent);backdrop-filter:saturate(1.4)blur(8px);border-bottom:var(--hairline) solid var(--color-rule);position:sticky;top:0}.site-header__inner{justify-content:space-between;align-items:center;gap:var(--space-5);min-height:var(--header-height);display:flex}.brand{align-items:center;gap:var(--space-3);color:var(--text-strong);text-decoration:none;display:inline-flex}.brand:hover{color:var(--text-strong);text-decoration:none}.brand__mark{border:var(--hairline) solid var(--color-rule-strong);border-radius:var(--radius-sm);width:34px;height:34px;font-family:var(--font-sans);font-size:.6875rem;font-weight:var(--weight-semibold);letter-spacing:.06em;color:var(--color-accent);background:var(--color-surface);place-items:center;display:grid}.brand__name{font-family:var(--font-display);font-size:1.0625rem;font-weight:var(--weight-semibold);letter-spacing:var(--tr-heading)}.brand__suffix{color:var(--text-quiet);font-weight:var(--weight-regular)}.site-nav{align-items:center;gap:var(--space-5);display:flex}.site-nav__link{font-size:var(--fs-sm);font-weight:var(--weight-medium);color:var(--text-muted);padding-block:var(--space-2);border-bottom:2px solid #0000;text-decoration:none}.site-nav__link:hover,.site-nav__link[aria-current=page]{color:var(--text-strong);border-bottom-color:var(--color-accent);text-decoration:none}.header-actions{align-items:center;gap:var(--space-3);display:flex}.theme-toggle{border:var(--hairline) solid var(--color-rule);border-radius:var(--radius-pill);width:34px;height:34px;color:var(--text-muted);cursor:pointer;transition:border-color var(--duration) var(--ease), color var(--duration) var(--ease);background:0 0;place-items:center;padding:0;display:grid}.theme-toggle:hover{border-color:var(--color-accent);color:var(--color-accent)}.theme-toggle__sun,:root[data-theme=dark] .theme-toggle__moon{display:none}:root[data-theme=dark] .theme-toggle__sun{display:block}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .theme-toggle__moon{display:none}:root:not([data-theme=light]) .theme-toggle__sun{display:block}}@media (width<=900px){.site-nav{gap:var(--space-4)}.brand__suffix{display:none}}@media (width<=720px){.site-header__inner{padding-block:var(--space-3);flex-wrap:wrap}.site-nav{gap:var(--space-4);width:100%;padding-bottom:var(--space-1);border-top:var(--hairline) solid var(--color-rule);padding-top:var(--space-2);order:3;overflow-x:auto}.site-nav__link{white-space:nowrap}}.hero{border-bottom:var(--hairline) solid var(--color-rule);padding-block:clamp(3rem,7vw,6rem) clamp(3rem,6vw,5rem)}.hero__grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;gap:clamp(2rem,5vw,4.5rem);display:grid}.hero__title{font-size:var(--fs-display);letter-spacing:var(--tr-display);line-height:var(--lh-display);max-width:15ch}.hero__lede{margin-top:var(--space-5);font-size:var(--fs-lede);line-height:var(--lh-lede);color:var(--text-muted);max-width:52ch}.hero__actions{margin-top:var(--space-6)}.close-figure{border:var(--hairline) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-5)}.close-figure__label{font-size:var(--fs-eyebrow);font-weight:var(--weight-semibold);letter-spacing:var(--tr-eyebrow);text-transform:uppercase;color:var(--text-quiet)}.close-grid{margin-block:var(--space-4);grid-template-columns:repeat(7,1fr);gap:5px;display:grid}.close-grid__cell{aspect-ratio:1;background:var(--color-sunken);border-radius:2px}.close-grid__cell--work{background:color-mix(in srgb, var(--color-accent) 22%, var(--color-sunken))}.close-grid__cell--target{background:var(--color-accent)}.close-figure__caption{font-size:var(--fs-xs);color:var(--text-quiet);line-height:1.5}@media (width<=860px){.hero__grid{grid-template-columns:minmax(0,1fr)}.hero__title{max-width:20ch}}.section-head{margin-bottom:var(--space-7);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:clamp(1.5rem,4vw,4rem);display:grid}.section-head__title{font-size:var(--fs-h2);max-width:18ch}.section-head__note{color:var(--text-muted);max-width:48ch}@media (width<=780px){.section-head{grid-template-columns:minmax(0,1fr);align-items:start}}.card-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));display:grid}.card{gap:var(--space-3);padding:var(--space-5);background:var(--color-surface);border:var(--hairline) solid var(--color-rule);border-radius:var(--radius-md);transition:border-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease), transform var(--duration) var(--ease);flex-direction:column;display:flex}.card:hover{border-color:var(--color-rule-strong);box-shadow:var(--shadow-hover)}.card__order{font-size:var(--fs-xs);font-variant-numeric:tabular-nums;letter-spacing:var(--tr-numeral);color:var(--text-quiet)}.card__title{font-size:var(--fs-h4);font-family:var(--font-display);line-height:var(--lh-tight)}.card__title a{color:inherit;text-decoration:none}.card__title a:hover{color:var(--color-accent)}.card--linked{position:relative}.card--linked .card__title a:after{content:"";border-radius:var(--radius-md);position:absolute;inset:0}.card__body{font-size:var(--fs-sm);color:var(--text-muted);margin:0;line-height:1.58}.card__foot{padding-top:var(--space-3);color:var(--color-accent);margin-top:auto}.ruled-list{border-top:var(--hairline) solid var(--color-rule);margin:0;padding:0;list-style:none}.ruled-list>li{gap:var(--space-3);padding-block:var(--space-4);border-bottom:var(--hairline) solid var(--color-rule);grid-template-columns:2.25rem minmax(0,1fr);align-items:baseline;display:grid}.ruled-list__index{font-size:var(--fs-xs);font-variant-numeric:tabular-nums;color:var(--color-accent);font-weight:var(--weight-medium)}.ruled-list__text{color:var(--text-body)}.spec{border-top:var(--hairline) solid var(--color-rule)}.spec__row{padding-block:var(--space-6);border-bottom:var(--hairline) solid var(--color-rule);grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(1.5rem,4vw,3.5rem);display:grid}.spec__heading{font-size:var(--fs-h3);font-family:var(--font-display);top:calc(var(--header-height) + var(--space-5));align-self:start;position:sticky}.spec__index{font-family:var(--font-sans);font-size:var(--fs-eyebrow);font-weight:var(--weight-semibold);letter-spacing:var(--tr-eyebrow);text-transform:uppercase;color:var(--text-quiet);margin-bottom:var(--space-2);display:block}.spec__body{color:var(--text-body);max-width:var(--measure-prose);text-wrap:pretty}@media (width<=780px){.spec__row{gap:var(--space-4);grid-template-columns:minmax(0,1fr)}.spec__heading{position:static}}.prose{max-width:var(--measure-prose);color:var(--text-body)}.prose>*+*{margin-top:var(--space-4)}.prose h2{margin-top:var(--space-7);font-size:var(--fs-h2);padding-top:var(--space-5);border-top:var(--hairline) solid var(--color-rule)}.prose h3{margin-top:var(--space-6);font-size:var(--fs-h3)}.prose h4{margin-top:var(--space-5)}.prose ul,.prose ol{padding-left:1.35rem}.prose li+li{margin-top:var(--space-2)}.prose li::marker{color:var(--color-accent)}.prose blockquote{margin-block:var(--space-5);padding:var(--space-4) var(--space-5);border-left:2px solid var(--color-accent);background:var(--color-surface);border-radius:0 var(--radius-md) var(--radius-md) 0;color:var(--text-muted)}.prose table{border-collapse:collapse;width:100%;font-size:var(--fs-sm);display:block;overflow-x:auto}.prose th,.prose td{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:var(--hairline) solid var(--color-rule);vertical-align:top}.prose th{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:var(--tr-eyebrow);color:var(--text-quiet);font-weight:var(--weight-semibold);border-bottom-color:var(--color-rule-strong)}.prose pre{padding:var(--space-4);border:var(--hairline) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface);overflow-x:auto}.prose img{border-radius:var(--radius-md);border:var(--hairline) solid var(--color-rule)}.page-head{padding-block:clamp(2.5rem, 5vw, 4.5rem) var(--space-7);border-bottom:var(--hairline) solid var(--color-rule)}.page-head__title{max-width:20ch}.page-head__lede{margin-top:var(--space-5)}.meta-row{align-items:center;gap:var(--space-2) var(--space-4);font-size:var(--fs-xs);color:var(--text-quiet);letter-spacing:var(--tr-numeral);flex-wrap:wrap;display:flex}.meta-row__sep{background:var(--color-rule-strong);border-radius:50%;width:3px;height:3px}.tag{border:var(--hairline) solid var(--color-rule);border-radius:var(--radius-sm);font-size:var(--fs-eyebrow);letter-spacing:var(--tr-eyebrow);text-transform:uppercase;font-weight:var(--weight-semibold);color:var(--text-muted);background:var(--color-surface);padding:.2rem .55rem;display:inline-block}.breadcrumbs{padding-block:var(--space-4);border-bottom:var(--hairline) solid var(--color-rule);font-size:var(--fs-xs)}.breadcrumbs ol{align-items:center;gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs a{color:var(--text-quiet);text-decoration:none}.breadcrumbs a:hover{color:var(--color-accent);text-decoration:underline}.breadcrumbs [aria-current=page]{color:var(--text-muted)}.breadcrumbs li+li:before{content:"/";margin-right:var(--space-2);color:var(--color-rule-strong)}.faq{border-top:var(--hairline) solid var(--color-rule)}.faq__item{border-bottom:var(--hairline) solid var(--color-rule);padding-block:var(--space-5)}.faq__q{font-size:var(--fs-h4);font-family:var(--font-display);margin-bottom:var(--space-3)}.faq__a{color:var(--text-muted);max-width:var(--measure-prose)}.band{background:var(--color-inverse-ground);color:var(--color-inverse-ink);border-radius:var(--radius-lg);padding:clamp(2rem,5vw,3.5rem)}.band h2,.band h3{color:var(--color-inverse-ink)}.band p{color:color-mix(in srgb, var(--color-inverse-ink) 78%, transparent);max-width:52ch}.band .btn-primary{background:var(--color-inverse-accent);border-color:var(--color-inverse-accent);color:#06201a}.band .btn-primary:hover{background:color-mix(in srgb, var(--color-inverse-accent) 85%, #fff);border-color:color-mix(in srgb, var(--color-inverse-accent) 85%, #fff);color:#06201a}.band .btn-secondary{border-color:color-mix(in srgb, var(--color-inverse-ink) 32%, transparent);color:var(--color-inverse-ink)}.band .btn-secondary:hover{border-color:var(--color-inverse-accent);color:var(--color-inverse-accent)}.band :focus-visible{outline-color:var(--color-inverse-accent)}.band__grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:clamp(1.5rem,4vw,3rem);display:grid}@media (width<=780px){.band__grid{grid-template-columns:minmax(0,1fr)}}.site-footer{margin-top:var(--space-8);border-top:var(--hairline) solid var(--color-rule);padding-block:var(--space-7) var(--space-6);background:var(--color-sunken)}.site-footer__grid{gap:var(--space-6);grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr));display:grid}.site-footer__title{font-size:var(--fs-eyebrow);font-family:var(--font-sans);font-weight:var(--weight-semibold);letter-spacing:var(--tr-eyebrow);text-transform:uppercase;color:var(--text-quiet);margin-bottom:var(--space-3)}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li+li{margin-top:var(--space-2)}.site-footer a{font-size:var(--fs-sm);color:var(--text-muted);text-decoration:none}.site-footer a:hover{color:var(--color-accent);text-decoration:underline}.site-footer__blurb{font-size:var(--fs-sm);color:var(--text-muted);max-width:42ch;margin-top:var(--space-3)}.site-footer__legal{margin-top:var(--space-7);padding-top:var(--space-4);border-top:var(--hairline) solid var(--color-rule);gap:var(--space-2) var(--space-5);font-size:var(--fs-xs);color:var(--text-quiet);flex-wrap:wrap;justify-content:space-between;display:flex}@media (width<=780px){.site-footer__grid{gap:var(--space-5);grid-template-columns:minmax(0,1fr)}}.facts{border-top:var(--hairline) solid var(--color-rule);margin:0}.facts__row{gap:var(--space-4);padding-block:var(--space-4);border-bottom:var(--hairline) solid var(--color-rule);grid-template-columns:minmax(0,1fr) minmax(0,2.2fr);display:grid}.facts dt{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:var(--tr-eyebrow);font-weight:var(--weight-semibold);color:var(--text-quiet)}.facts dd{color:var(--text-body);margin:0}@media (width<=640px){.facts__row{gap:var(--space-2);grid-template-columns:minmax(0,1fr)}}.empty-state{padding:var(--space-6);border:var(--hairline) dashed var(--color-rule-strong);border-radius:var(--radius-md);color:var(--text-quiet);font-size:var(--fs-sm);text-align:center}
