@font-face{font-family:Newsreader;font-style:italic;font-weight:300 600;font-display:swap;src:url(/fonts/newsreader-italic-300_600-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader;font-style:italic;font-weight:300 600;font-display:swap;src:url(/fonts/newsreader-italic-300_600-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/newsreader-normal-300_700-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/newsreader-normal-300_700-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Franklin;font-style:italic;font-weight:400 600;font-display:swap;src:url(/fonts/librefranklin-italic-400_600-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Libre Franklin;font-style:italic;font-weight:400 600;font-display:swap;src:url(/fonts/librefranklin-italic-400_600-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Franklin;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/librefranklin-normal-300_700-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Libre Franklin;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/librefranklin-normal-300_700-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper: #FBF8F3;--surface: #FFFFFF;--surface-sunk: #F3ECE0;--tint-accent: #E0ECEA;--ink: #211C16;--ink-soft: #3E372D;--muted: #6E6456;--faint: #7A7164;--border: #E4DCCD;--border-strong: #D8CDB8;--accent: #15635E;--accent-hover: #0E4B47;--accent-on: #FFFFFF;--focus-ring: #15635E;--bg: var(--paper);--fg: var(--ink);--fg-muted: var(--muted);--link: var(--accent);--link-hover: var(--accent-hover);--font-serif: "Newsreader", Georgia, "Times New Roman", serif;--font-sans: "Libre Franklin", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono: ui-monospace, "SF Mono", "SFMono-Regular", Menlo, Consolas, monospace;--text-xs: .78rem;--text-sm: .875rem;--text-base: clamp(1.0625rem, 1rem + .31vw, 1.1875rem);--text-lg: clamp(1.25rem, 1.18rem + .34vw, 1.375rem);--text-xl: clamp(1.5rem, 1.36rem + .7vw, 1.75rem);--text-2xl: clamp(1.875rem, 1.6rem + 1.3vw, 2.375rem);--text-3xl: clamp(2.25rem, 1.85rem + 2vw, 3.125rem);--text-display: clamp(2.75rem, 2rem + 3.6vw, 4.25rem);--leading-tight: 1.12;--leading-snug: 1.28;--leading-body: 1.72;--leading-ui: 1.45;--weight-light: 300;--weight-regular: 400;--weight-medium: 500;--weight-semibold:600;--weight-bold: 700;--tracking-tight: -.018em;--tracking-normal: 0;--tracking-wide: .02em;--tracking-caps: .12em;--measure: 42rem;--measure-narrow: 34rem;--wrap: 72rem;--wrap-wide: 80rem;--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;--space-10: 8rem;--radius-sm: 3px;--radius-md: 6px;--radius-lg: 10px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(33, 28, 22, .05);--shadow-md: 0 6px 20px -8px rgba(33, 28, 22, .12);--shadow-lg: 0 16px 40px -16px rgba(33, 28, 22, .16);--ease: cubic-bezier(.22, .61, .36, 1);--dur-fast: .12s;--dur: .2s;--dur-slow: .36s}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;color-scheme:light}html,body{margin:0}body{background:var(--bg);color:var(--fg);font-family:var(--font-serif);font-size:var(--text-base);line-height:var(--leading-body);font-weight:var(--weight-regular);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:var(--font-serif);color:var(--ink);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);text-wrap:balance;margin:0}h1{font-size:var(--text-3xl);line-height:var(--leading-tight);font-weight:var(--weight-bold)}h2{font-size:var(--text-2xl);line-height:var(--leading-snug);margin:var(--space-7) 0 var(--space-4)}h3{font-size:var(--text-xl);line-height:var(--leading-snug);font-weight:var(--weight-semibold);margin:var(--space-6) 0 var(--space-3)}p{margin:0 0 var(--space-5);max-width:var(--measure);text-wrap:pretty}.lead{font-size:var(--text-lg);line-height:1.55;color:var(--muted);font-weight:var(--weight-regular)}.eyebrow{font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--accent)}.meta{font-family:var(--font-sans);font-size:var(--text-sm);letter-spacing:var(--tracking-wide);color:var(--faint);line-height:var(--leading-ui)}a{color:var(--link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em;text-decoration-color:color-mix(in srgb,var(--accent) 35%,transparent);transition:color var(--dur) var(--ease),text-decoration-color var(--dur) var(--ease)}a:hover{color:var(--link-hover);text-decoration-color:var(--accent-hover)}blockquote{margin:var(--space-6) 0;padding:var(--space-2) 0 var(--space-2) var(--space-5);border-left:2px solid var(--accent);font-size:var(--text-lg);line-height:1.5;font-style:italic;color:var(--ink-soft)}code,pre,kbd,samp{font-family:var(--font-mono)}:not(pre)>code{font-size:.86em;background:var(--surface-sunk);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.1em .38em;color:var(--ink-soft)}pre{font-size:.9rem;line-height:1.6;background:var(--surface-sunk);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5);overflow-x:auto;max-width:var(--measure)}pre code{background:none;border:0;padding:0}ul,ol{max-width:var(--measure);padding-left:1.4em;margin:0 0 var(--space-5)}li{margin-bottom:var(--space-2)}figcaption{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--faint);margin-top:var(--space-2)}hr{border:0;height:1px;background:var(--border);margin:var(--space-7) 0}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:var(--radius-sm)}.app{min-height:100vh;display:flex;flex-direction:column}.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:var(--space-5)}.prose{max-width:var(--measure)}.site-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:saturate(1.1) blur(8px);border-bottom:1px solid var(--border)}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);height:66px}.brand{display:inline-flex;align-items:center;gap:var(--space-3);text-decoration:none}.brand:hover{text-decoration:none}.brand__mark{display:block;width:26px;height:26px}.brand__name{font-family:var(--font-serif);font-weight:var(--weight-semibold);font-size:1.32rem;letter-spacing:-.01em;color:var(--ink);white-space:nowrap}.brand__name .dot{color:var(--accent)}.nav{display:flex;align-items:center;gap:var(--space-5)}.nav a{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wide);color:var(--ink-soft);padding:4px 0;border-bottom:2px solid transparent;text-decoration:none;transition:color var(--dur) var(--ease)}.nav a:hover{color:var(--accent)}.nav a[data-active]{color:var(--ink);border-bottom-color:var(--accent)}.hero{padding-block:var(--space-9) var(--space-7)}.hero__title{font-size:var(--text-display);line-height:var(--leading-tight);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight);max-width:15ch;margin:var(--space-4) 0 var(--space-5)}.hero__dek{font-size:var(--text-lg);color:var(--muted);max-width:48ch;line-height:1.5;margin:0 0 var(--space-6)}.hero__actions{display:flex;gap:var(--space-4);flex-wrap:wrap}.horizon{height:1px;background:var(--border)}.btn{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);line-height:1;cursor:pointer;padding:.78em 1.3em;border-radius:var(--radius-md);border:1px solid transparent;text-decoration:none;white-space:nowrap;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease)}.btn:hover{text-decoration:none}.btn--primary{background:var(--accent);color:var(--accent-on)}.btn--primary:hover{background:var(--accent-hover);color:var(--accent-on)}.btn--ghost{background:transparent;color:var(--ink);border-color:var(--border-strong)}.btn--ghost:hover{border-color:var(--ink-soft);color:var(--ink)}.btn--text{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);color:var(--accent);text-decoration:none;white-space:nowrap}.btn--text:hover{color:var(--accent-hover)}.tag{display:inline-block;font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--accent);background:var(--tint-accent);border-radius:var(--radius-pill);padding:.3em .85em}.section{padding-block:var(--space-8)}.section__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-6);padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.section__head h2{font-size:var(--text-2xl);margin:0}.section__intro{color:var(--muted);max-width:var(--measure);margin:0 0 var(--space-6)}.article-list{display:flex;flex-direction:column}.article-item{display:block;padding:var(--space-6) 0;border-bottom:1px solid var(--border);text-decoration:none}.article-item:hover{text-decoration:none}.article-item:first-child{padding-top:0}.article-item__title{font-size:var(--text-xl);color:var(--ink);margin:var(--space-2) 0;transition:color var(--dur) var(--ease)}.article-item:hover .article-item__title{color:var(--accent)}.article-item__dek{color:var(--muted);margin:0;max-width:var(--measure)}.article-item--feature .article-item__title{font-size:var(--text-2xl)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-5);list-style:none;padding:0;margin:0;max-width:none}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3);box-shadow:var(--shadow-sm);text-decoration:none;transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),transform var(--dur) var(--ease)}.card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md);transform:translateY(-2px);text-decoration:none}.card__title{font-size:var(--text-lg);color:var(--ink);margin:0}.card__body{color:var(--muted);margin:0;max-width:none}.card__foot{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--accent);margin-top:auto}.article-head{padding-block:var(--space-7) var(--space-6)}.backlink{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--accent);display:inline-flex;gap:6px;margin-bottom:var(--space-5);text-decoration:none}.backlink:hover{color:var(--accent-hover)}.article-head__title{font-size:var(--text-3xl);line-height:1.08;margin:var(--space-4) 0;max-width:18ch}.article-head__dek{font-size:var(--text-lg);color:var(--muted);max-width:var(--measure);line-height:1.5;margin:0 0 var(--space-5)}.byline{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.byline__dot{width:4px;height:4px;border-radius:50%;background:var(--border-strong)}.article-body{padding-bottom:var(--space-8)}.article-body p{font-size:var(--text-base);line-height:var(--leading-body);margin:0 0 1.4em}.article-body h2{font-size:var(--text-2xl);margin:var(--space-7) 0 var(--space-4)}.article-body h3{margin:var(--space-6) 0 var(--space-3)}.article-body blockquote{margin:var(--space-6) 0;padding:var(--space-2) 0 var(--space-2) var(--space-5);border-left:2px solid var(--accent);font-size:var(--text-lg);font-style:italic;color:var(--ink-soft);line-height:1.5}.article-body ul,.article-body ol{padding-left:1.4em;margin:0 0 var(--space-5)}.article-body li{margin-bottom:var(--space-2)}.site-footer{background:var(--surface-sunk);border-top:1px solid var(--border);margin-top:auto;padding-block:var(--space-8)}.site-footer__cols{display:flex;flex-wrap:wrap;gap:var(--space-7) var(--space-9)}.site-footer__col h4{font-family:var(--font-sans);font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--faint);font-weight:var(--weight-semibold);margin:0 0 var(--space-4)}.site-footer__col a{display:block;font-family:var(--font-sans);font-size:var(--text-sm);color:var(--ink-soft);margin-bottom:var(--space-3);text-decoration:none}.site-footer__col a:hover{color:var(--accent)}.site-footer__fine{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--faint);margin-top:var(--space-7);max-width:none}@media(max-width:640px){.site-header__inner{height:auto;flex-wrap:wrap;padding-block:var(--space-3);gap:var(--space-3) var(--space-4)}.nav{width:100%;gap:var(--space-6)}}@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}
