:root{--paper:#faf6ef;--paper-2:#f3ede1;--card:#fffdf8;--ink:#2b2620;--ink-soft:#6d6459;--ink-faint:#7a6f63;--moss:#5d7a5a;--moss-strong:#4a6348;--moss-tint:#e9efe6;--moss-deep:#38503a;--lullawick:#f79a32;--lullawick-tint:#fdf0dd;--skiplisten:#15b6cf;--skiplisten-tint:#e2f5f9;--line:#2b26201f;--line-2:#2b262033;--shadow-soft:0 2px 6px #2b26200d, 0 12px 32px #2b262012;--shadow-lift:0 4px 10px #2b262012, 0 18px 44px #2b26201a;--font-display:"Bricolage Grotesque", system-ui, sans-serif;--font-body:"Karla", system-ui, sans-serif;--text-sm:.875rem;--text-base:1rem;--text-md:1.125rem;--text-lg:1.3rem;--text-xl:1.6rem;--radius:18px;--radius-sm:10px;--maxw:1080px;color-scheme:light}*,:before,:after{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:radial-gradient(1000px 640px at 76% 140px, var(--moss-tint) 0%, transparent 65%), radial-gradient(900px 600px at 8% 24%, #f6ecd9 0%, transparent 62%), radial-gradient(880px 580px at 94% 56%, #ecf0e5 0%, transparent 62%), radial-gradient(900px 600px at 14% 88%, #f6ecd9 0%, transparent 62%), var(--paper);color:var(--ink);font-family:var(--font-body);font-size:var(--text-md);-webkit-font-smoothing:antialiased;margin:0;line-height:1.65}body:after{content:"";pointer-events:none;z-index:999;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}img,svg{max-width:100%;display:block}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.015em;text-wrap:balance;margin:0 0 .5em;font-weight:600;line-height:1.12}h1{font-size:clamp(2.4rem,5.4vw,3.9rem)}h2{font-size:clamp(1.7rem,3.2vw,2.4rem)}h3{font-size:var(--text-lg)}p{text-wrap:pretty;margin:0 0 1em}a{color:var(--moss-strong);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--moss-deep)}.lead{font-size:clamp(var(--text-md), 1.6vw, var(--text-lg));color:var(--ink-soft);max-width:58ch}.eyebrow{font-family:var(--font-body);font-size:var(--text-sm);letter-spacing:.14em;text-transform:uppercase;color:var(--moss-strong);margin:0 0 .9em;font-weight:700}.container{max-width:var(--maxw);margin-inline:auto;padding-inline:clamp(20px,5vw,40px)}section{padding-block:clamp(56px,8vw,104px);scroll-margin-top:90px}.btn{border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--text-base);cursor:pointer;border:1px solid #0000;align-items:center;gap:.5em;padding:.8em 1.5em;font-weight:700;text-decoration:none;transition:background .18s,border-color .18s,transform .18s;display:inline-flex}.btn--primary{background:var(--moss);color:#fdfcf8}.btn--primary:hover{background:var(--moss-strong);color:#fdfcf8;transform:translateY(-2px)}.btn--ghost{border-color:var(--line-2);color:var(--ink)}.btn--ghost:hover{border-color:var(--moss);color:var(--moss-deep)}.btn:focus-visible,a:focus-visible{outline:2px solid var(--moss);outline-offset:3px;border-radius:4px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:clamp(24px,3vw,36px)}.badge{font-size:var(--text-sm);border-radius:999px;padding:.3em .85em;font-weight:700;display:inline-block}.reveal{opacity:1;transform:none}@media (prefers-reduced-motion:no-preference){.js .reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(14px)}.js .reveal.is-visible{opacity:1;transform:none}}.prose{max-width:68ch}.prose h2{font-size:var(--text-xl);margin-top:2em}.prose ul{padding-left:1.2em}.prose li{margin-bottom:.4em}.prose .meta{color:var(--ink-faint);font-size:var(--text-sm)}.site-header[data-astro-cid-ju4pidww]{z-index:10;background:color-mix(in srgb, var(--paper) 88%, transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);position:sticky;top:0}.site-header__inner[data-astro-cid-ju4pidww]{justify-content:space-between;align-items:center;padding-block:14px;display:flex}.brand[data-astro-cid-ju4pidww]{color:var(--ink);align-items:center;gap:9px;text-decoration:none;display:inline-flex}.brand__mark[data-astro-cid-ju4pidww]{color:var(--moss)}.brand__name[data-astro-cid-ju4pidww]{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:-.01em;font-weight:650}.site-header[data-astro-cid-ju4pidww] nav[data-astro-cid-ju4pidww]{align-items:center;gap:clamp(14px,2.5vw,28px);display:flex}.site-header[data-astro-cid-ju4pidww] nav[data-astro-cid-ju4pidww] a[data-astro-cid-ju4pidww]{color:var(--ink-soft);font-weight:500;text-decoration:none}.site-header[data-astro-cid-ju4pidww] nav[data-astro-cid-ju4pidww] a[data-astro-cid-ju4pidww]:hover{color:var(--moss-deep)}@media (width<=640px){.site-header[data-astro-cid-ju4pidww] nav[data-astro-cid-ju4pidww] a[data-astro-cid-ju4pidww].nav-secondary{display:none}.site-header[data-astro-cid-ju4pidww] nav[data-astro-cid-ju4pidww] a[data-astro-cid-ju4pidww]{padding-block:10px}.site-footer__nav[data-astro-cid-ju4pidww] a[data-astro-cid-ju4pidww]{padding-block:10px;display:inline-block}}.site-footer[data-astro-cid-ju4pidww]{border-top:1px solid var(--line);background:var(--paper-2);padding-block:26px 16px}.site-footer__inner[data-astro-cid-ju4pidww]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-bottom:12px;display:flex}.site-footer__brand[data-astro-cid-ju4pidww]{flex-wrap:wrap;align-items:center;gap:32px;display:flex}.brand--footer[data-astro-cid-ju4pidww] .brand__name[data-astro-cid-ju4pidww]{font-size:var(--text-md)}.site-footer__nav[data-astro-cid-ju4pidww]{flex-wrap:wrap;gap:22px;display:flex}.site-footer__nav[data-astro-cid-ju4pidww] a[data-astro-cid-ju4pidww]{color:var(--ink-soft);font-size:var(--text-base);text-decoration:none}.site-footer__nav[data-astro-cid-ju4pidww] a[data-astro-cid-ju4pidww]:hover{color:var(--moss-deep);text-decoration:underline}.fine[data-astro-cid-ju4pidww]{color:var(--ink-faint);font-size:var(--text-sm);margin:0}.copyright[data-astro-cid-ju4pidww]{border-top:1px solid var(--line);padding-top:12px}
