.subscribe-modal[hidden]{display:none!important}.subscribe-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.25rem}.subscribe-modal-backdrop{position:absolute;inset:0;background:#11111173;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.subscribe-modal-panel{position:relative;background:var(--bg);border:1px solid var(--line-strong);border-radius:4px;max-width:460px;width:100%;padding:2.25rem 2rem 2rem;box-shadow:0 30px 60px -20px #11111140}.subscribe-modal-close{position:absolute;top:.65rem;right:.9rem;background:transparent;border:0;cursor:pointer;font-size:1.6rem;line-height:1;color:var(--muted);padding:.25rem .5rem}.subscribe-modal-close:hover{color:var(--ink)}.subscribe-modal-eyebrow{font-family:var(--mono);text-transform:uppercase;letter-spacing:.16em;font-size:.7rem;color:var(--muted);margin:0 0 .5rem}.subscribe-modal-title{font-family:var(--serif);font-size:1.65rem;line-height:1.15;letter-spacing:-.015em;color:var(--ink);margin:0 0 .75rem;font-weight:700}.subscribe-modal-body{margin:0 0 1.25rem;color:var(--ink-soft);line-height:1.55;font-size:.98rem}.subscribe-form{display:grid;gap:.85rem}.subscribe-field{display:grid;gap:.3rem}.subscribe-field-label{font-family:var(--mono);font-size:.68rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-weight:500}.subscribe-field input{font-family:var(--serif);font-size:1rem;padding:.65rem .75rem;border:1px solid var(--line-strong);border-radius:2px;background:var(--bg);color:var(--ink);width:100%}.subscribe-field input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent-strong)}.subscribe-form-message{margin:0;min-height:1.2rem;font-size:.88rem;color:var(--muted)}.subscribe-form-message.is-error{color:#b3261e}.subscribe-form-message.is-success{color:var(--accent-strong)}.subscribe-form-submit{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.7rem 1rem;font-family:var(--mono);font-size:.74rem;text-transform:uppercase;letter-spacing:.14em;font-weight:500;background:var(--ink);color:var(--paper);border:1px solid var(--ink);border-radius:2px;cursor:pointer;transition:background .15s,border-color .15s}.subscribe-form-submit:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong)}.subscribe-form-submit:disabled{opacity:.6;cursor:progress}:root{--content-width: 720px;--wide-width: 1184px;--gutter: 1.5rem;--ink: #111111;--ink-soft: #2e2e2e;--muted: #6b6b6b;--line: #e8e6e1;--line-strong: #c9c6bf;--bg: #ffffff;--surface: #fafaf7;--paper: #fafaf7;--accent: #6db391;--accent-strong: #4f9277;--accent-bg: #e6f1ea;--accent-soft: #eef5f0;--warm-bg: #f4f1ea;--header-height: 84px;--serif: "Source Serif 4", "Iowan Old Style", Georgia, "Times New Roman", serif;--mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;padding:0;font-family:var(--serif);color:var(--ink-soft);background:var(--bg);line-height:1.65;font-size:17px;font-feature-settings:"kern" 1,"liga" 1,"onum" 1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:1.5px;text-underline-offset:.18em;transition:text-decoration-color .15s ease,color .15s ease}a:hover{color:var(--accent-strong);text-decoration-color:var(--accent-strong)}::selection{background:var(--accent);color:#fff}.mono{font-family:var(--mono);text-transform:uppercase;letter-spacing:.14em;font-size:.7rem;font-weight:500;color:var(--muted)}.site-header{position:sticky;top:0;z-index:50;background:#ffffffd9;backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);border-bottom:1px solid var(--line)}.site-header:after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:1px;background:var(--line)}.site-header-inner{max-width:var(--wide-width);margin:0 auto;height:var(--header-height);padding:0 var(--gutter);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2.5rem}.brand{display:inline-flex;align-items:center;gap:.7rem;color:var(--ink);text-decoration:none;line-height:1}.brand:hover{color:var(--ink);text-decoration:none}.brand:hover .brand-bookmark{transform:translateY(-1px)}.brand-bookmark{width:28px;height:auto;color:var(--accent);display:block;flex-shrink:0;transition:transform .2s ease}.brand-text-group{display:inline-flex;flex-direction:column;gap:2px}.brand-wordmark{font-family:var(--serif);font-weight:700;font-size:1.4rem;letter-spacing:-.005em;line-height:1}.brand-meta{font-family:var(--mono);font-size:.62rem;text-transform:uppercase;letter-spacing:.2em;color:var(--muted)}.site-nav{display:flex;gap:1.75rem;justify-content:center;align-items:center}.site-nav a{font-family:var(--serif);font-size:.98rem;font-weight:500;color:var(--ink-soft);text-decoration:none;position:relative;padding:.25rem 0}.site-nav a:after{content:"";position:absolute;left:50%;right:50%;bottom:-2px;height:1.5px;background:var(--accent);transition:left .2s ease,right .2s ease}.site-nav a:hover{color:var(--ink)}.site-nav a:hover:after{left:0;right:0}.site-cta{display:flex;align-items:center;gap:.5rem}.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem .95rem;font-family:var(--mono);font-size:.72rem;font-weight:500;text-transform:uppercase;letter-spacing:.14em;text-decoration:none;border-radius:2px;transition:background .15s,color .15s,border-color .15s}.btn-outline{color:var(--ink);border:1px solid var(--ink);background:transparent}.btn-outline:hover{background:var(--ink);color:var(--paper)}.btn-solid{background:var(--ink);color:var(--paper);border:1px solid var(--ink)}.btn-solid:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.btn-ghost{color:var(--ink-soft);border:1px solid transparent}.btn-ghost:hover{color:var(--ink);border-color:var(--line-strong)}.site-main{max-width:var(--content-width);margin:0 auto;padding:4rem var(--gutter) 6rem}.site-main.wide{max-width:var(--wide-width)}h1,h2,h3,h4,h5{font-family:var(--serif);color:var(--ink);font-weight:700;line-height:1.12}h1{font-size:clamp(2.4rem,4.6vw,3.4rem);letter-spacing:-.022em;margin:0 0 .6rem;font-weight:800}h2{font-size:1.75rem;letter-spacing:-.015em;margin:3.25rem 0 1rem;scroll-margin-top:6rem;font-weight:700}h3{font-size:1.25rem;margin:2.25rem 0 .6rem;scroll-margin-top:6rem;font-weight:700;color:var(--ink)}p{margin:1.05rem 0}table{border-collapse:collapse;width:100%;margin:2rem 0;font-size:.95rem;font-variant-numeric:tabular-nums;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}th,td{border-bottom:1px solid var(--line);padding:.7rem .85rem;text-align:left;vertical-align:top}th{font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;font-weight:500;color:var(--ink);background:transparent;border-bottom:2px solid var(--ink);padding-top:.55rem;padding-bottom:.55rem}tbody tr:last-child td{border-bottom:none}blockquote{margin:2rem 0;padding:.5rem 0 .5rem 1.5rem;border-left:2px solid var(--accent);color:var(--ink-soft);font-size:1.08rem}.site-footer{margin-top:6rem;border-top:1px solid var(--line-strong);background:var(--surface)}.site-footer-inner{max-width:var(--wide-width);margin:0 auto;padding:3.5rem var(--gutter) 2rem;display:grid;grid-template-columns:1.4fr 2fr;gap:3.5rem}.footer-colophon p{margin:0}.footer-statement{color:var(--ink-soft);max-width:38ch;line-height:1.6;margin-top:.5rem!important}.footer-heading{font-family:var(--mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.18em;color:var(--muted);font-weight:500;margin:0 0 .75rem}.footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.footer-nav a{display:block;color:var(--ink-soft);font-size:.98rem;padding:.2rem 0;text-decoration:none}.footer-nav a:hover{color:var(--accent-strong);text-decoration:underline;text-decoration-color:var(--accent)}.footer-fineprint{max-width:var(--wide-width);margin:0 auto;padding:1.25rem var(--gutter);border-top:1px solid var(--line);color:var(--muted);font-family:var(--mono);font-size:.68rem;text-transform:uppercase;letter-spacing:.16em;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}@media(max-width:820px){.site-header-inner{grid-template-columns:auto 1fr;gap:1rem;height:70px}.site-nav{display:none}h1{font-size:2.1rem}h2{font-size:1.45rem}.site-footer-inner{grid-template-columns:1fr;gap:2rem}}
