:root { color-scheme: light; --paper:#f5f3ec; --ink:#203d37; --muted:#63706a; --line:#d9ded2; --accent:#b6c8ab; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial,Helvetica,sans-serif; font-size:16px; line-height:1.65; }
a { color:inherit; text-underline-offset:5px; }
a:focus-visible { outline:2px solid var(--ink); outline-offset:5px; }
.wrap { width:min(1060px,calc(100% - 64px)); margin-inline:auto; }
.site-header { display:flex; align-items:center; justify-content:space-between; min-height:106px; border-bottom:1px solid var(--line); }
.wordmark { font-size:24px; font-weight:700; letter-spacing:-1px; text-decoration:none; }
.dot { color:#7a9569; }
nav { display:flex; gap:32px; font-size:14px; }
nav a { text-decoration:none; }
nav a:hover { text-decoration:underline; }
.intro { max-width:760px; padding:86px 0 90px; }
.eyebrow { margin:0 0 20px; font-size:11px; font-weight:600; letter-spacing:2px; color:var(--muted); }
h1,h2,h3 { font-family:Georgia,'Times New Roman',serif; font-weight:400; line-height:1.1; }
h1 { margin:0 0 30px; font-size:clamp(46px,7.6vw,86px); letter-spacing:-3px; }
h1 em { font-weight:400; }
.lede { max-width:530px; margin:0 0 30px; font-size:18px; color:var(--muted); }
.text-link { display:inline-flex; align-items:center; gap:18px; font-size:13px; font-weight:600; text-decoration:none; }
.text-link:hover { text-decoration:underline; }
.text-link span { font-size:19px; }
.notes-section { padding-bottom:70px; scroll-margin-top:30px; }
.section-heading { display:flex; align-items:center; justify-content:space-between; padding-top:24px; border-top:1px solid var(--line); margin-bottom:30px; }
.section-heading h2 { margin:0; font-size:29px; }
.section-heading>span { font-size:11px; letter-spacing:2px; color:var(--muted); }
.cards { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.card { display:flex; flex-direction:column; min-height:320px; padding:34px; background:#edf0e5; border:1px solid #e0e5d7; border-radius:3px; }
.card:nth-child(2) { background:#f0eee5; border-color:#e4e0d3; }
.card .eyebrow { font-size:10px; letter-spacing:1.4px; }
.card h3 { margin:0 0 16px; max-width:370px; font-size:31px; letter-spacing:-.6px; }
.card h3 a { text-decoration:none; }
.card h3 a:hover { text-decoration:underline; }
.card>p:not(.eyebrow) { margin:0 0 26px; color:var(--muted); font-size:14px; }
.card>.text-link { margin-top:auto; }
.closing { display:flex; align-items:center; gap:26px; padding:32px 0 52px; }
.small-mark { font-size:55px; line-height:1; color:#76916b; }
.closing p { margin:0; font-size:17px; }
.closing p span { font-size:13px; color:var(--muted); }
.site-footer { display:flex; justify-content:space-between; gap:20px; padding:24px 0 38px; border-top:1px solid var(--line); color:var(--muted); font-size:11px; }
.article { max-width:720px; padding:65px 0 85px; }
.article h1 { font-size:clamp(38px,6vw,60px); letter-spacing:-1.8px; margin-bottom:30px; }
.article h2 { font-size:29px; margin-top:38px; }
.article p { color:#4d5e56; margin:0 0 22px; }
.article .lede { font-size:20px; }
.article .text-link { margin-top:25px; }
@media(max-width:640px) {
  .wrap { width:calc(100% - 40px); }
  .site-header { min-height:84px; }
  nav { gap:20px; }
  .intro { padding:62px 0; }
  h1 { letter-spacing:-1.8px; }
  .cards { grid-template-columns:1fr; }
  .card { padding:27px; min-height:300px; }
  .card h3 { font-size:29px; }
  .section-heading h2 { font-size:25px; }
  .closing { align-items:flex-start; gap:18px; }
  .small-mark { font-size:42px; }
  .site-footer { flex-direction:column; gap:5px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
