:root{--bg:#FFFFFF;--paper:#F8F6F1;--ink:#2B1B10;--ink2:#5A4330;--rule:#6B4A2B;--head:#6B4A2B;--accent:#7A2E1F;--accent-ink:#FBF3E2;
  --display:'IM Fell English SC','Iowan Old Style',Georgia,serif;--italic:'IM Fell English',Georgia,serif;--body:'EB Garamond',Garamond,Georgia,serif}
@media (prefers-color-scheme:dark){:root{--bg:#1C140E;--paper:#271C14;--ink:#EEDFC2;--ink2:#C4AE8C;--rule:#A07C52;--head:#D2AE7E;--accent:#D9845F;--accent-ink:#1C140E}}
*{box-sizing:border-box}
html{background:#66623A url("img/leaf-tile.svg") repeat;background-size:220px}
body{margin:0;color:var(--ink);font-family:var(--body);font-size:19px;line-height:1.55}
.frame{max-width:1100px;margin:clamp(12px,3vw,40px) auto;background:var(--bg);border:3px double var(--rule);box-shadow:0 0 0 3px #3E2E1C,0 10px 30px rgba(0,0,0,.35)}
.wrap{padding:clamp(20px,4vw,56px) clamp(16px,4vw,56px)}
header{text-align:center;border-bottom:3px double var(--rule);padding-bottom:22px}
header img{width:110px;height:auto}
@media (prefers-color-scheme:dark){header img{filter:invert(1) sepia(.35) brightness(1.05)}}
h1{font-family:var(--display);font-weight:400;font-size:clamp(44px,8vw,84px);line-height:1;margin:8px 0 6px;color:var(--head)}
.motto{font-family:var(--italic);font-style:italic;font-size:clamp(20px,2.6vw,26px);margin:0}
.lede{max-width:60ch;margin:14px auto 0;color:var(--ink2)}
h2{font-family:var(--display);font-weight:400;font-size:clamp(28px,4vw,40px);color:var(--head);margin:34px 0 12px}
.title{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:28px;align-items:center;border:3px double var(--rule);background:var(--paper);padding:clamp(14px,2.4vw,26px)}
@media (max-width:760px){.title{grid-template-columns:1fr}}
.walnut{padding:14px;background:linear-gradient(135deg,#5A3A22,#3B2616 45%,#2A1A0E);box-shadow:0 6px 14px rgba(0,0,0,.16),0 1px 3px rgba(0,0,0,.2)}
.walnut img{display:block;width:100%;height:auto}
.title h3{font-family:var(--display);font-weight:400;font-size:clamp(28px,3.4vw,38px);line-height:1.08;margin:0 0 8px;color:var(--head)}
.title p{margin:0 0 12px}
.btn{display:inline-block;min-height:44px;padding:9px 20px;background:var(--accent);color:var(--accent-ink);text-decoration:none;font-family:var(--display);letter-spacing:.05em;font-size:18px}
.btn:focus-visible{outline:3px solid var(--rule);outline-offset:2px}
.tm{font-size:.35em;vertical-align:top;position:relative;top:.15em;margin-left:.05em;font-family:var(--body)}
.note{font-size:14px;color:var(--ink2)}
.about{max-width:68ch}
footer{border-top:3px double var(--rule);margin-top:36px;padding-top:16px;font-size:15px;color:var(--ink2);text-align:center}
footer a{color:inherit}
a{color:var(--accent)}
.top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--rule);padding-bottom:10px;margin-bottom:22px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--head);font-family:var(--display);font-size:22px}
.brand img{width:40px;height:auto}
@media (prefers-color-scheme:dark){.brand img{filter:invert(1) sepia(.35) brightness(1.05)}}
nav.main{display:flex;flex-wrap:wrap;gap:4px 18px;font-family:var(--display);font-size:17px}
nav.main a{color:var(--ink);text-decoration:none;padding:8px 0}
nav.main a:hover,nav.main a[aria-current="page"]{color:var(--accent)}
.btn.ghost{background:transparent;color:var(--accent);border:2px solid var(--accent)}
.row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.eyebrow{font-family:var(--display);letter-spacing:.16em;font-size:14px;color:var(--accent);text-transform:uppercase}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:18px;margin-top:12px}
.cards div{border-top:1px solid var(--rule);padding-top:8px}
.cards h3{font-family:var(--body);font-weight:500;font-size:22px;margin:0 0 4px;color:var(--head)}
.cards p{margin:0;font-size:17px}
.latin{border:3px double var(--rule);background:var(--paper);padding:16px 20px;margin:14px 0}
.latin .w{font-family:var(--italic);font-size:30px;color:var(--head)}
.latin dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 14px;margin:10px 0 0}
.latin dt{font-style:italic;color:var(--ink2)} .latin dd{margin:0}
.flow{counter-reset:f;list-style:none;padding:0;display:grid;gap:12px}
.flow li{counter-increment:f;position:relative;padding-left:48px}
.flow li::before{content:counter(f);position:absolute;left:0;top:0;width:34px;height:34px;border:2px solid var(--rule);display:grid;place-items:center;font-family:var(--display);color:var(--head)}
.src{font-size:15px} .src li{margin:4px 0}
sup a{text-decoration:none;font-size:13px}
.prose{max-width:72ch}
.prose p{margin:0 0 14px}
