:root{--cream:#faf6ef;--cream-deep:#f1eadc;--ink:#2b2118;--ink-soft:#5c4a3a;--amber:#8a5209;--amber-bright:#a9690f;--line:#e3d8c3;--font-head:"Fraunces", Georgia, "Times New Roman", serif;--font-body:"Public Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--measure:70ch;--wide:1180px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--cream);color:var(--ink);font-family:var(--font-body);margin:0;font-size:1.125rem;line-height:1.7}@media (width<=640px){body{font-size:1.0625rem}}img{max-width:100%;height:auto}a{color:var(--amber);text-underline-offset:.15em}a:hover{color:var(--ink)}h1,h2,h3,h4{font-family:var(--font-head);color:var(--ink);text-wrap:balance;font-weight:600;line-height:1.2}h1{margin:0 0 .5em;font-size:clamp(2rem,4vw,3rem)}h2{margin:2em 0 .6em;font-size:clamp(1.5rem,2.6vw,2rem)}h3{margin:1.6em 0 .5em;font-size:1.3rem}.wrap{width:min(100% - 32px, var(--wide));margin-inline:auto}.narrow{width:min(100% - 32px, var(--measure));margin-inline:auto}.skip{position:absolute;left:-9999px}.skip:focus{background:var(--ink);color:var(--cream);z-index:10;padding:8px 12px;top:16px;left:16px}.site-header{border-bottom:1px solid var(--line);background:var(--cream)}.site-header .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-block:14px;display:flex}.logo img{width:auto;height:44px;display:block}.nav{flex-wrap:wrap;gap:4px 22px;font-size:1rem;display:flex}.nav a{color:var(--ink);font-weight:500;text-decoration:none}.nav a:hover,.nav a[aria-current=page]{color:var(--amber);text-decoration:underline}.site-footer{background:var(--ink);color:var(--cream);margin-top:80px;font-size:.95rem}.site-footer .wrap{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:32px;padding-block:48px 32px;display:grid}.site-footer h2{color:var(--cream);margin:0 0 10px;font-size:1.05rem}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{margin:4px 0}.site-footer a{color:var(--cream)}.site-footer .legal{opacity:.8;border-top:1px solid #faf6ef33;grid-column:1/-1;padding-top:20px}.crumbs{color:var(--ink-soft);margin:28px 0 12px;font-size:.9rem}.crumbs a{color:var(--ink-soft)}.byline{color:var(--ink-soft);margin:0 0 24px;font-size:.95rem}.prose{width:min(100% - 32px, var(--measure));margin-inline:auto}.prose>:first-child{margin-top:0}.prose p,.prose ul,.prose ol{margin:0 0 1.1em}.prose li{margin:.3em 0}.prose img{border-radius:8px;margin:24px auto;display:block}.prose table{border-collapse:collapse;width:100%;margin:24px 0;font-size:.95rem;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--line);vertical-align:top;text-align:left;padding:8px 10px}.prose thead td,.prose th,.prose tr:first-child td[bgcolor]{background:var(--cream-deep)}.prose td p{margin:0}.prose blockquote{border-left:4px solid var(--amber);color:var(--ink-soft);margin:24px 0;padding:4px 20px}.prose details{border:1px solid var(--line);background:#fff8;border-radius:8px;margin:12px 0;padding:10px 16px}.prose summary{cursor:pointer;font-weight:600}.hero-image{width:min(100% - 32px,980px);margin:0 auto 32px}.hero-image img{aspect-ratio:3/2;object-fit:cover;border-radius:12px;width:100%;display:block}.cards{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:28px;margin:24px 0 0;padding:0;list-style:none;display:grid}.card a{color:inherit;text-decoration:none;display:block}.card img{aspect-ratio:3/2;object-fit:cover;background:var(--cream-deep);border-radius:10px;width:100%;display:block}.card h3{margin:14px 0 6px;font-size:1.2rem}.card a:hover h3{color:var(--amber);text-decoration:underline}.card p{color:var(--ink-soft);margin:0;font-size:.95rem}.btn{background:var(--amber);color:var(--cream);border-radius:6px;padding:12px 22px;font-weight:600;text-decoration:none;display:inline-block}.btn:hover{background:var(--ink);color:var(--cream)}.btn.ghost{color:var(--ink);border:1px solid var(--ink);background:0 0}.btn.ghost:hover{background:var(--ink);color:var(--cream)}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;display:flex}.section-head h2{margin-bottom:0}
